@xpadev-net/niconicomments
    Preparing search index...

    Class default

    Index

    Constructors

    Properties

    enableLegacyPiP: boolean
    showCollision: boolean
    showCommentCount: boolean
    showFPS: boolean
    default: typeof default = NiconiComments
    FlashComment: {
        class: typeof FlashComment;
        condition: (
            comment: {
                content: string;
                date: number;
                date_usec: number;
                id: number;
                is_my_post: boolean;
                layer: number;
                mail: string[];
                owner: boolean;
                premium: boolean;
                user_id: number;
                vpos: number;
            },
        ) => boolean;
    } = ...

    Type Declaration

    • class: typeof FlashComment
    • condition: (
          comment: {
              content: string;
              date: number;
              date_usec: number;
              id: number;
              is_my_post: boolean;
              layer: number;
              mail: string[];
              owner: boolean;
              premium: boolean;
              user_id: number;
              vpos: number;
          },
      ) => boolean
    internal: internal = internal
    typeGuard: {
        comment: {
            color: (
                i: unknown,
            ) => i is
                | "white"
                | "red"
                | "pink"
                | "orange"
                | "yellow"
                | "green"
                | "cyan"
                | "blue"
                | "purple"
                | "black"
                | "white2"
                | "niconicowhite"
                | "red2"
                | "truered"
                | "pink2"
                | "orange2"
                | "passionorange"
                | "yellow2"
                | "madyellow"
                | "green2"
                | "elementalgreen"
                | "cyan2"
                | "blue2"
                | "marinblue"
                | "purple2"
                | "nobleviolet"
                | "black2";
            colorCode: (i: unknown) => i is string;
            colorCodeAllowAlpha: (i: unknown) => i is string;
            command: {
                key: (i: unknown) => i is "full" | "ender" | "_live" | "invisible";
            };
            font: (
                i: unknown,
            ) => i is "defont" | "mincho" | "gothic" | "gulim" | "simsun";
            loc: (i: unknown) => i is "ue" | "naka" | "shita";
            size: (i: unknown) => i is "big" | "medium" | "small";
        };
        config: { initOptions: (item: unknown) => item is Partial<BaseOptions> };
        formatted: {
            comment: (
                i: unknown,
            ) => i is {
                content: string;
                date: number;
                date_usec: number;
                id: number;
                is_my_post: boolean;
                layer: number;
                mail: string[];
                owner: boolean;
                premium: boolean;
                user_id: number;
                vpos: number;
            };
            comments: (
                i: unknown,
            ) => i is {
                content: string;
                date: number;
                date_usec: number;
                id: number;
                is_my_post: boolean;
                layer: number;
                mail: string[];
                owner: boolean;
                premium: boolean;
                user_id: number;
                vpos: number;
            }[];
            legacyComment: (
                i: unknown,
            ) => i is {
                content: string;
                date: number;
                date_usec: number;
                id: number;
                mail: string[];
                owner: boolean;
                premium: boolean;
                vpos: number;
            };
            legacyComments: (
                i: unknown,
            ) => i is {
                content: string;
                date: number;
                date_usec: number;
                id: number;
                mail: string[];
                owner: boolean;
                premium: boolean;
                vpos: number;
            }[];
        };
        internal: {
            CommentMeasuredContentItem: (
                i: unknown,
            ) => i is
                | {
                    char: string;
                    charWidth: number;
                    count: number;
                    font?: "defont"
                    | "gulim"
                    | "simsun";
                    isButton?: boolean;
                    type: "spacer";
                }
                | (
                    ({ type: "spacer"; char: string; charWidth: number; isButton?: boolean | undefined; font?: "defont" | "gulim" | "simsun" | undefined; count: number; } | { type: "text"; content: string; slicedContent: string[]; isButton?: boolean | undefined; font?: "defont" | ... 2 more ... | undefined; width?: number[] | undefined...
                );
            CommentMeasuredContentItemArray: (
                i: unknown,
            ) => i is (
                | {
                    char: string;
                    charWidth: number;
                    count: number;
                    font?: "defont"
                    | "gulim"
                    | "simsun";
                    isButton?: boolean;
                    type: "spacer";
                }
                | (
                    ({ type: "spacer"; char: string; charWidth: number; isButton?: boolean | undefined; font?: "defont" | "gulim" | "simsun" | undefined; count: number; } | { type: "text"; content: string; slicedContent: string[]; isButton?: boolean | undefined; font?: "defont" | ... 2 more ... | undefined; width?: number[] | undefined...
                )
            )[];
            HTML5Fonts: (i: unknown) => i is "defont" | "mincho" | "gothic";
            MeasureInput: (
                i: unknown,
            ) => i is {
                charSize: number;
                content: (
                    | {
                        char: string;
                        charWidth: number;
                        count: number;
                        font?: "defont"
                        | "gulim"
                        | "simsun";
                        isButton?: boolean;
                        type: "spacer";
                    }
                    | {
                        content: string;
                        font?: "defont"
                        | "gulim"
                        | "simsun";
                        isButton?: boolean;
                        slicedContent: string[];
                        type: "text";
                        width?: number[];
                    }
                )[];
                font: "defont"
                | "mincho"
                | "gothic"
                | "gulim"
                | "simsun";
                lineCount: number;
                lineHeight: number;
            };
            MultiConfigItem: <T>(i: unknown) => i is MultiConfigItem<T>;
        };
        legacy: {
            apiChat: (
                i: unknown,
            ) => i is {
                anonymity: number;
                content: string;
                date: number;
                date_usec: number;
                deleted: number;
                mail: string;
                nicoru: number;
                no: number;
                premium: number;
                thread: string;
                user_id: string;
                vpos: number;
            };
            apiGlobalNumRes: (i: unknown) => i is { num_res: number; thread: string };
            apiLeaf: (i: unknown) => i is { count: number; thread: string };
            apiPing: (i: unknown) => i is { content: string };
            apiThread: (
                i: unknown,
            ) => i is {
                resultcode: number;
                revision: number;
                server_time: number;
                thread: string;
                ticket: string;
            };
            rawApiResponses: (
                i: unknown,
            ) => i is (
                | {
                    chat: {
                        anonymity: number;
                        content: string;
                        date: number;
                        date_usec: number;
                        deleted: number;
                        mail: string;
                        nicoru: number;
                        no: number;
                        premium: number;
                        thread: string;
                        user_id: string;
                        vpos: number;
                    };
                }
                | { [key: string]: unknown }
            )[];
        };
        legacyOwner: { comments: (i: unknown) => i is string };
        nicoScript: {
            range: { target: (i: unknown) => i is "コメ" | "投コメ" | "全" };
            replace: {
                condition: (i: unknown) => i is "部分一致" | "完全一致";
                range: (i: unknown) => i is "全" | "単";
                target: (i: unknown) => i is "コメ" | "投コメ" | "全" | "含まない" | "含む";
            };
        };
        owner: {
            comment: (
                i: unknown,
            ) => i is { command: string; comment: string; time: string };
            comments: (
                i: unknown,
            ) => i is { command: string; comment: string; time: string }[];
        };
        v1: {
            comment: (
                i: unknown,
            ) => i is {
                body: string;
                commands: string[];
                id: string;
                isMyPost: boolean;
                isPremium: boolean;
                nicoruCount: number;
                nicoruId: string | null;
                no: number;
                postedAt: string;
                score: number;
                source: string;
                userId: string;
                vposMs: number;
            };
            comments: (
                i: unknown,
            ) => i is {
                body: string;
                commands: string[];
                id: string;
                isMyPost: boolean;
                isPremium: boolean;
                nicoruCount: number;
                nicoruId: string | null;
                no: number;
                postedAt: string;
                score: number;
                source: string;
                userId: string;
                vposMs: number;
            }[];
            thread: (
                i: unknown,
            ) => i is {
                commentCount: number;
                comments: {
                    body: string;
                    commands: string[];
                    id: string;
                    isMyPost: boolean;
                    isPremium: boolean;
                    nicoruCount: number;
                    nicoruId: string | null;
                    no: number;
                    postedAt: string;
                    score: number;
                    source: string;
                    userId: string;
                    vposMs: number;
                }[];
                fork: string;
                id: unknown;
            };
            threads: (
                i: unknown,
            ) => i is {
                commentCount: number;
                comments: {
                    body: string;
                    commands: string[];
                    id: string;
                    isMyPost: boolean;
                    isPremium: boolean;
                    nicoruCount: number;
                    nicoruId: string | null;
                    no: number;
                    postedAt: string;
                    score: number;
                    source: string;
                    userId: string;
                    vposMs: number;
                }[];
                fork: string;
                id: unknown;
            }[];
        };
        xml2js: {
            chat: (
                i: unknown,
            ) => i is {
                chat: {
                    _: string;
                    $: {
                        date: string;
                        date_usec: string;
                        mail: string;
                        no?: string;
                        owner: string;
                        premium: string;
                        user_id?: string;
                        vpos: string;
                    };
                }[];
            };
            chatItem: (
                i: unknown,
            ) => i is {
                _: string;
                $: {
                    date: string;
                    date_usec: string;
                    mail: string;
                    no?: string;
                    owner: string;
                    premium: string;
                    user_id?: string;
                    vpos: string;
                };
            };
            packet: (
                i: unknown,
            ) => i is {
                packet: {
                    chat: {
                        _: string;
                        $: {
                            date: string;
                            date_usec: string;
                            mail: string;
                            no?: string;
                            owner: string;
                            premium: string;
                            user_id?: string;
                            vpos: string;
                        };
                    }[];
                };
            };
        };
        xmlDocument: (i: unknown) => i is XMLDocument;
    } = typeGuard

    Methods

    • 動的にコメント追加する ※すでに存在するコメントの位置はvposに関係なく更新されません

      Parameters

      • ...rawComments: {
            content: string;
            date: number;
            date_usec: number;
            id: number;
            is_my_post: boolean;
            layer: number;
            mail: string[];
            owner: boolean;
            premium: boolean;
            user_id: number;
            vpos: number;
        }[]

        コメントデータ

      Returns void

    • キャンバスを消去する

      Returns void

    • @ボタンの呼び出し用

      Parameters

      • vpos: number

        再生位置

      • pos: Position

        カーソルの位置

      Returns void

    • Releases this instance's module-scoped registration. Call this when the instance is no longer used to avoid spurious multi-instance warnings on future constructions.

      Returns void

    • キャンバスを描画する

      Parameters

      • vpos: number

        動画の現在位置の100倍 ニコニコから吐き出されるコメントの位置情報は主にこれ

      • forceRendering: boolean = false

        キャッシュを使用せずに再描画を強制するか

      • Optionalcursor: Position

        カーソルの位置

      Returns boolean

      再描画されたか