@xpadev-net/niconicomments 0.2.56 → 0.2.58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.en.md +53 -53
- package/README.md +50 -50
- package/dist/bundle.d.ts +439 -367
- package/dist/bundle.js +407 -110
- package/package.json +30 -28
package/dist/bundle.d.ts
CHANGED
|
@@ -1,14 +1,55 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
type ButtonList = {
|
|
3
|
+
left: ButtonPartLeft;
|
|
4
|
+
middle: ButtonPartMiddle[];
|
|
5
|
+
right: ButtonPartRight;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
type ButtonPartLeft = {
|
|
9
|
+
type: "left";
|
|
10
|
+
left: number;
|
|
11
|
+
top: number;
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
type ButtonPartMiddle = {
|
|
17
|
+
type: "middle";
|
|
18
|
+
left: number;
|
|
19
|
+
top: number;
|
|
20
|
+
width: number;
|
|
21
|
+
height: number;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
type ButtonPartRight = {
|
|
25
|
+
type: "right";
|
|
26
|
+
right: number;
|
|
27
|
+
top: number;
|
|
28
|
+
height: number;
|
|
29
|
+
};
|
|
30
|
+
|
|
2
31
|
type Canvas = HTMLCanvasElement;
|
|
3
32
|
type Context2D = CanvasRenderingContext2D;
|
|
4
33
|
|
|
34
|
+
type DefaultCommand = {
|
|
35
|
+
color?: string;
|
|
36
|
+
size?: CommentSize;
|
|
37
|
+
font?: CommentFont;
|
|
38
|
+
loc?: CommentLoc;
|
|
39
|
+
};
|
|
40
|
+
|
|
5
41
|
declare class BaseComment implements IComment {
|
|
6
42
|
protected readonly context: Context2D;
|
|
7
43
|
protected cacheKey: string;
|
|
8
44
|
comment: FormattedCommentWithSize;
|
|
45
|
+
pos: {
|
|
46
|
+
x: number;
|
|
47
|
+
y: number;
|
|
48
|
+
};
|
|
9
49
|
posY: number;
|
|
10
50
|
readonly pluginName: string;
|
|
11
51
|
image?: Canvas | null;
|
|
52
|
+
buttonImage?: Canvas | null;
|
|
12
53
|
constructor(comment: FormattedComment, context: Context2D);
|
|
13
54
|
get invisible(): boolean;
|
|
14
55
|
get loc(): CommentLoc;
|
|
@@ -27,11 +68,11 @@ declare class BaseComment implements IComment {
|
|
|
27
68
|
protected parseContent(comment: string): ParseContentResult;
|
|
28
69
|
protected measureText(comment: MeasureTextInput): MeasureTextResult;
|
|
29
70
|
protected convertComment(comment: FormattedComment): FormattedCommentWithSize;
|
|
30
|
-
draw(vpos: number, showCollision: boolean,
|
|
31
|
-
protected _draw(posX: number, posY: number): void;
|
|
71
|
+
draw(vpos: number, showCollision: boolean, cursor?: Position): void;
|
|
72
|
+
protected _draw(posX: number, posY: number, cursor?: Position): void;
|
|
32
73
|
protected _drawRectColor(posX: number, posY: number): void;
|
|
33
74
|
protected _drawBackgroundColor(posX: number, posY: number): void;
|
|
34
|
-
protected _drawDebugInfo(posX: number, posY: number
|
|
75
|
+
protected _drawDebugInfo(posX: number, posY: number): void;
|
|
35
76
|
protected _drawCollision(posX: number, posY: number, showCollision: boolean): void;
|
|
36
77
|
protected getTextImage(): Canvas | null;
|
|
37
78
|
protected _generateTextImage(): Canvas;
|
|
@@ -40,18 +81,22 @@ declare class BaseComment implements IComment {
|
|
|
40
81
|
image: Canvas;
|
|
41
82
|
context: Context2D;
|
|
42
83
|
};
|
|
84
|
+
protected getButtonImage(posX: number, posY: number, cursor?: Position): Canvas | undefined;
|
|
85
|
+
isHovered(cursor?: Position, posX?: number, posY?: number): boolean;
|
|
43
86
|
}
|
|
44
87
|
|
|
45
88
|
declare class FlashComment extends BaseComment {
|
|
46
89
|
private _globalScale;
|
|
47
90
|
readonly pluginName: string;
|
|
91
|
+
buttonImage: Canvas;
|
|
92
|
+
protected buttonContext: Context2D;
|
|
48
93
|
constructor(comment: FormattedComment, context: Context2D);
|
|
49
94
|
get content(): string;
|
|
50
95
|
set content(input: string);
|
|
51
96
|
convertComment(comment: FormattedComment): FormattedCommentWithSize;
|
|
52
97
|
getCommentSize(parsedData: FormattedCommentWithFont): FormattedCommentWithSize;
|
|
53
98
|
parseCommandAndNicoscript(comment: FormattedComment): FormattedCommentWithFont;
|
|
54
|
-
parseContent(input: string): {
|
|
99
|
+
parseContent(input: string, button?: ButtonParams): {
|
|
55
100
|
content: CommentContentItem[];
|
|
56
101
|
lineCount: number;
|
|
57
102
|
lineOffset: number;
|
|
@@ -60,6 +105,12 @@ declare class FlashComment extends BaseComment {
|
|
|
60
105
|
private _measureContent;
|
|
61
106
|
_drawCollision(posX: number, posY: number, showCollision: boolean): void;
|
|
62
107
|
_generateTextImage(): Canvas;
|
|
108
|
+
getButtonImage(posX: number, posY: number, cursor?: Position): HTMLCanvasElement | undefined;
|
|
109
|
+
isHovered(_cursor?: Position, _posX?: number, _posY?: number): boolean;
|
|
110
|
+
protected _setupCanvas(image: Canvas, context: Context2D): {
|
|
111
|
+
image: HTMLCanvasElement;
|
|
112
|
+
context: CanvasRenderingContext2D;
|
|
113
|
+
};
|
|
63
114
|
}
|
|
64
115
|
|
|
65
116
|
declare class HTML5Comment extends BaseComment {
|
|
@@ -80,6 +131,8 @@ declare class HTML5Comment extends BaseComment {
|
|
|
80
131
|
private _processResizeX;
|
|
81
132
|
_drawCollision(posX: number, posY: number, showCollision: boolean): void;
|
|
82
133
|
_generateTextImage(): Canvas;
|
|
134
|
+
getButtonImage(): undefined;
|
|
135
|
+
isHovered(): boolean;
|
|
83
136
|
}
|
|
84
137
|
|
|
85
138
|
type index_d$3_BaseComment = BaseComment;
|
|
@@ -92,145 +145,152 @@ declare namespace index_d$3 {
|
|
|
92
145
|
export { index_d$3_BaseComment as BaseComment, index_d$3_FlashComment as FlashComment, index_d$3_HTML5Comment as HTML5Comment };
|
|
93
146
|
}
|
|
94
147
|
|
|
95
|
-
type ConfigItem<T> = T | MultiConfigItem<T>;
|
|
96
|
-
type MultiConfigItem<T> = { html5: T; flash: T };
|
|
97
|
-
type ConfigSizeItem<T> = { big: T; medium: T; small: T };
|
|
98
|
-
type ConfigResizedItem<T> = { default: T; resized: T };
|
|
99
|
-
|
|
100
|
-
type CommentStageSize = {
|
|
101
|
-
width: number;
|
|
102
|
-
fullWidth: number;
|
|
103
|
-
height: number;
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
type FlashCharList = {
|
|
107
|
-
[key in "simsunStrong" | "simsunWeak" | "gulim" | "gothic"]: string;
|
|
108
|
-
};
|
|
109
|
-
type FlashMode = "xp" | "vista";
|
|
110
|
-
type FlashScriptChar = {
|
|
111
|
-
[key in "super" | "sub"]: string;
|
|
112
|
-
};
|
|
113
|
-
type FontList = {
|
|
114
|
-
[key in "gulim" | "simsun"]: string;
|
|
115
|
-
};
|
|
116
|
-
type LineCounts = {
|
|
117
|
-
[key in "default" | "resized" | "doubleResized"]: ConfigSizeItem<number>;
|
|
118
|
-
};
|
|
119
|
-
type TypeDoubleResizeMaxWidth = {
|
|
120
|
-
[key in "full" | "normal"]: number;
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
type BaseConfig = {
|
|
124
|
-
cacheAge: number;
|
|
125
|
-
canvasHeight: number;
|
|
126
|
-
canvasWidth: number;
|
|
127
|
-
collisionRange: { [key in "left" | "right"]: number };
|
|
128
|
-
colors: { [key: string]: string };
|
|
129
|
-
commentDrawPadding: number;
|
|
130
|
-
commentDrawRange: number;
|
|
131
|
-
commentScale: ConfigItem<number>;
|
|
132
|
-
CommentStageSize: ConfigItem<CommentStageSize>;
|
|
133
|
-
commentYMarginBottom: ConfigSizeItem<number>;
|
|
134
|
-
commentYOffset: ConfigSizeItem<ConfigResizedItem<number>>;
|
|
135
|
-
commentYPaddingTop: ConfigResizedItem<number>;
|
|
136
|
-
contextFillLiveOpacity: number;
|
|
137
|
-
contextLineWidth: number;
|
|
138
|
-
contextStrokeColor: string;
|
|
139
|
-
contextStrokeInversionColor: string;
|
|
140
|
-
contextStrokeOpacity: number;
|
|
141
|
-
doubleResizeMaxWidth: ConfigItem<TypeDoubleResizeMaxWidth>;
|
|
142
|
-
flashChar: FlashCharList;
|
|
143
|
-
FlashMode: FlashMode;
|
|
144
|
-
FlashScriptChar: FlashScriptChar;
|
|
145
|
-
flashThreshold: number;
|
|
146
|
-
font: FontList;
|
|
147
|
-
fonts: PlatformFont;
|
|
148
|
-
fontSize: ConfigItem<ConfigSizeItem<ConfigResizedItem<number>>>;
|
|
149
|
-
fpsInterval: number;
|
|
150
|
-
hiResCommentCorrection: number;
|
|
151
|
-
lineCounts: ConfigItem<LineCounts>;
|
|
152
|
-
lineHeight: ConfigItem<ConfigSizeItem<ConfigResizedItem<number>>>;
|
|
153
|
-
minFontSize: number;
|
|
154
|
-
sameCAGap: number;
|
|
155
|
-
sameCAMinScore: number;
|
|
156
|
-
sameCARange: number;
|
|
157
|
-
sameCATimestampRange: number;
|
|
158
|
-
letterSpacing: number;
|
|
159
|
-
scriptCharOffset: number;
|
|
160
|
-
plugins: IPluginConstructor[];
|
|
161
|
-
commentPlugins: {
|
|
162
|
-
class: typeof BaseComment;
|
|
163
|
-
condition: (comment: FormattedComment) => boolean;
|
|
164
|
-
}[];
|
|
165
|
-
commentLimit: number | undefined;
|
|
166
|
-
hideCommentOrder: "asc" | "desc";
|
|
167
|
-
lineBreakCount: { [key in CommentSize]: number };
|
|
168
|
-
nakaCommentSpeedOffset: number;
|
|
169
|
-
|
|
170
|
-
|
|
148
|
+
type ConfigItem<T> = T | MultiConfigItem<T>;
|
|
149
|
+
type MultiConfigItem<T> = { html5: T; flash: T };
|
|
150
|
+
type ConfigSizeItem<T> = { big: T; medium: T; small: T };
|
|
151
|
+
type ConfigResizedItem<T> = { default: T; resized: T };
|
|
152
|
+
|
|
153
|
+
type CommentStageSize = {
|
|
154
|
+
width: number;
|
|
155
|
+
fullWidth: number;
|
|
156
|
+
height: number;
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
type FlashCharList = {
|
|
160
|
+
[key in "simsunStrong" | "simsunWeak" | "gulim" | "gothic"]: string;
|
|
161
|
+
};
|
|
162
|
+
type FlashMode = "xp" | "vista";
|
|
163
|
+
type FlashScriptChar = {
|
|
164
|
+
[key in "super" | "sub"]: string;
|
|
165
|
+
};
|
|
166
|
+
type FontList = {
|
|
167
|
+
[key in "gulim" | "simsun"]: string;
|
|
168
|
+
};
|
|
169
|
+
type LineCounts = {
|
|
170
|
+
[key in "default" | "resized" | "doubleResized"]: ConfigSizeItem<number>;
|
|
171
|
+
};
|
|
172
|
+
type TypeDoubleResizeMaxWidth = {
|
|
173
|
+
[key in "full" | "normal"]: number;
|
|
174
|
+
};
|
|
175
|
+
|
|
176
|
+
type BaseConfig = {
|
|
177
|
+
cacheAge: number;
|
|
178
|
+
canvasHeight: number;
|
|
179
|
+
canvasWidth: number;
|
|
180
|
+
collisionRange: { [key in "left" | "right"]: number };
|
|
181
|
+
colors: { [key: string]: string };
|
|
182
|
+
commentDrawPadding: number;
|
|
183
|
+
commentDrawRange: number;
|
|
184
|
+
commentScale: ConfigItem<number>;
|
|
185
|
+
CommentStageSize: ConfigItem<CommentStageSize>;
|
|
186
|
+
commentYMarginBottom: ConfigSizeItem<number>;
|
|
187
|
+
commentYOffset: ConfigSizeItem<ConfigResizedItem<number>>;
|
|
188
|
+
commentYPaddingTop: ConfigResizedItem<number>;
|
|
189
|
+
contextFillLiveOpacity: number;
|
|
190
|
+
contextLineWidth: number;
|
|
191
|
+
contextStrokeColor: string;
|
|
192
|
+
contextStrokeInversionColor: string;
|
|
193
|
+
contextStrokeOpacity: number;
|
|
194
|
+
doubleResizeMaxWidth: ConfigItem<TypeDoubleResizeMaxWidth>;
|
|
195
|
+
flashChar: FlashCharList;
|
|
196
|
+
FlashMode: FlashMode;
|
|
197
|
+
FlashScriptChar: FlashScriptChar;
|
|
198
|
+
flashThreshold: number;
|
|
199
|
+
font: FontList;
|
|
200
|
+
fonts: PlatformFont;
|
|
201
|
+
fontSize: ConfigItem<ConfigSizeItem<ConfigResizedItem<number>>>;
|
|
202
|
+
fpsInterval: number;
|
|
203
|
+
hiResCommentCorrection: number;
|
|
204
|
+
lineCounts: ConfigItem<LineCounts>;
|
|
205
|
+
lineHeight: ConfigItem<ConfigSizeItem<ConfigResizedItem<number>>>;
|
|
206
|
+
minFontSize: number;
|
|
207
|
+
sameCAGap: number;
|
|
208
|
+
sameCAMinScore: number;
|
|
209
|
+
sameCARange: number;
|
|
210
|
+
sameCATimestampRange: number;
|
|
211
|
+
letterSpacing: number;
|
|
212
|
+
scriptCharOffset: number;
|
|
213
|
+
plugins: IPluginConstructor[];
|
|
214
|
+
commentPlugins: {
|
|
215
|
+
class: typeof BaseComment;
|
|
216
|
+
condition: (comment: FormattedComment) => boolean;
|
|
217
|
+
}[];
|
|
218
|
+
commentLimit: number | undefined;
|
|
219
|
+
hideCommentOrder: "asc" | "desc";
|
|
220
|
+
lineBreakCount: { [key in CommentSize]: number };
|
|
221
|
+
nakaCommentSpeedOffset: number;
|
|
222
|
+
atButtonPadding: number;
|
|
223
|
+
atButtonRadius: number;
|
|
224
|
+
};
|
|
225
|
+
|
|
171
226
|
type Config = Partial<BaseConfig>;
|
|
172
227
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
type
|
|
189
|
-
|
|
190
|
-
interface
|
|
191
|
-
type: "
|
|
192
|
-
}
|
|
193
|
-
type
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
interface
|
|
203
|
-
type: "
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
|
217
|
-
|
|
|
218
|
-
|
|
|
219
|
-
|
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
228
|
+
type Position = {
|
|
229
|
+
x: number;
|
|
230
|
+
y: number;
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
interface CommentEventBase {
|
|
234
|
+
type: CommentEventName;
|
|
235
|
+
timeStamp: number;
|
|
236
|
+
vpos: number;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
interface SeekDisableEvent extends CommentEventBase {
|
|
240
|
+
type: "seekDisable";
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
type SeekDisableEventHandler = (event: SeekDisableEvent) => unknown;
|
|
244
|
+
|
|
245
|
+
interface SeekEnableEvent extends CommentEventBase {
|
|
246
|
+
type: "seekEnable";
|
|
247
|
+
}
|
|
248
|
+
type SeekEnableEventHandler = (event: SeekEnableEvent) => unknown;
|
|
249
|
+
|
|
250
|
+
interface CommentDisableEvent extends CommentEventBase {
|
|
251
|
+
type: "commentDisable";
|
|
252
|
+
}
|
|
253
|
+
type CommentDisableEventHandler = (
|
|
254
|
+
event: CommentDisableEvent,
|
|
255
|
+
) => unknown;
|
|
256
|
+
|
|
257
|
+
interface CommentEnableEvent extends CommentEventBase {
|
|
258
|
+
type: "commentEnable";
|
|
259
|
+
}
|
|
260
|
+
type CommentEnableEventHandler = (event: CommentEnableEvent) => unknown;
|
|
261
|
+
|
|
262
|
+
interface JumpEvent extends CommentEventBase {
|
|
263
|
+
type: "jump";
|
|
264
|
+
to: string;
|
|
265
|
+
message?: string;
|
|
266
|
+
}
|
|
267
|
+
type JumpEventHandler = (event: JumpEvent) => unknown;
|
|
268
|
+
|
|
269
|
+
type CommentEventName =
|
|
270
|
+
| "seekDisable"
|
|
271
|
+
| "seekEnable"
|
|
272
|
+
| "commentDisable"
|
|
273
|
+
| "commentEnable"
|
|
274
|
+
| "jump";
|
|
275
|
+
type CommentEventHandler =
|
|
276
|
+
| SeekDisableEventHandler
|
|
277
|
+
| SeekEnableEventHandler
|
|
278
|
+
| CommentDisableEventHandler
|
|
279
|
+
| CommentEnableEventHandler
|
|
280
|
+
| JumpEventHandler;
|
|
281
|
+
interface CommentEventHandlerMap {
|
|
282
|
+
seekDisable: SeekDisableEventHandler;
|
|
283
|
+
seekEnable: SeekEnableEventHandler;
|
|
284
|
+
commentDisable: CommentDisableEventHandler;
|
|
285
|
+
commentEnable: CommentEnableEventHandler;
|
|
286
|
+
jump: JumpEventHandler;
|
|
287
|
+
}
|
|
288
|
+
interface CommentEventMap {
|
|
289
|
+
seekDisable: SeekDisableEvent;
|
|
290
|
+
seekEnable: SeekEnableEvent;
|
|
291
|
+
commentDisable: CommentDisableEvent;
|
|
292
|
+
commentEnable: CommentEnableEvent;
|
|
293
|
+
jump: JumpEvent;
|
|
234
294
|
}
|
|
235
295
|
|
|
236
296
|
type Platform =
|
|
@@ -262,6 +322,7 @@ type FormattedComment = {
|
|
|
262
322
|
mail: string[];
|
|
263
323
|
user_id: number;
|
|
264
324
|
layer: number;
|
|
325
|
+
is_my_post: boolean;
|
|
265
326
|
};
|
|
266
327
|
type FormattedLegacyComment = {
|
|
267
328
|
id: number;
|
|
@@ -377,22 +438,24 @@ interface IComment {
|
|
|
377
438
|
mail: string[];
|
|
378
439
|
content: string;
|
|
379
440
|
image?: Canvas | null;
|
|
380
|
-
draw: (vpos: number, showCollision: boolean,
|
|
441
|
+
draw: (vpos: number, showCollision: boolean, cursor?: Position) => void;
|
|
442
|
+
isHovered: (cursor?: Position, posX?: number, posY?: number) => boolean;
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
interface IPluginConstructor {
|
|
446
|
+
id: string;
|
|
447
|
+
new (Canvas: Canvas, comments: IComment[]): IPlugin;
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
interface IPlugin {
|
|
451
|
+
draw?: (vpos: number) => void;
|
|
452
|
+
addComments?: (comments: IComment[]) => void;
|
|
453
|
+
transformComments?: (comments: IComment[]) => IComment[];
|
|
381
454
|
}
|
|
382
455
|
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
}
|
|
387
|
-
|
|
388
|
-
interface IPlugin {
|
|
389
|
-
draw(vpos: number): void;
|
|
390
|
-
addComments(comments: IComment[]): void;
|
|
391
|
-
}
|
|
392
|
-
|
|
393
|
-
type IPluginList = {
|
|
394
|
-
instance: IPlugin;
|
|
395
|
-
canvas: HTMLCanvasElement;
|
|
456
|
+
type IPluginList = {
|
|
457
|
+
instance: IPlugin;
|
|
458
|
+
canvas: HTMLCanvasElement;
|
|
396
459
|
}[];
|
|
397
460
|
|
|
398
461
|
type InputFormatType =
|
|
@@ -441,208 +504,219 @@ type inputFormatType = InputFormatType;
|
|
|
441
504
|
*/
|
|
442
505
|
type inputFormat = InputFormat;
|
|
443
506
|
|
|
444
|
-
type FormattedCommentWithFont = {
|
|
445
|
-
id: number;
|
|
446
|
-
vpos: number;
|
|
447
|
-
date: number;
|
|
448
|
-
date_usec: number;
|
|
449
|
-
owner: boolean;
|
|
450
|
-
premium: boolean;
|
|
451
|
-
mail: string[];
|
|
452
|
-
user_id: number;
|
|
453
|
-
layer: number;
|
|
454
|
-
loc: CommentLoc;
|
|
455
|
-
size: CommentSize;
|
|
456
|
-
fontSize: number;
|
|
457
|
-
font: CommentFont;
|
|
458
|
-
color: string;
|
|
459
|
-
strokeColor?: string;
|
|
460
|
-
wakuColor?: string;
|
|
461
|
-
fillColor?: string;
|
|
462
|
-
full: boolean;
|
|
463
|
-
ender: boolean;
|
|
464
|
-
_live: boolean;
|
|
465
|
-
long: number;
|
|
466
|
-
invisible: boolean;
|
|
467
|
-
content: CommentContentItem[];
|
|
468
|
-
rawContent: string;
|
|
469
|
-
flash: boolean;
|
|
470
|
-
lineCount: number;
|
|
471
|
-
lineOffset: number;
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
type
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
type
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
type
|
|
530
|
-
type
|
|
531
|
-
type
|
|
532
|
-
type
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
};
|
|
555
|
-
type
|
|
556
|
-
|
|
557
|
-
start: number;
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
type
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
507
|
+
type FormattedCommentWithFont = {
|
|
508
|
+
id: number;
|
|
509
|
+
vpos: number;
|
|
510
|
+
date: number;
|
|
511
|
+
date_usec: number;
|
|
512
|
+
owner: boolean;
|
|
513
|
+
premium: boolean;
|
|
514
|
+
mail: string[];
|
|
515
|
+
user_id: number;
|
|
516
|
+
layer: number;
|
|
517
|
+
loc: CommentLoc;
|
|
518
|
+
size: CommentSize;
|
|
519
|
+
fontSize: number;
|
|
520
|
+
font: CommentFont;
|
|
521
|
+
color: string;
|
|
522
|
+
strokeColor?: string;
|
|
523
|
+
wakuColor?: string;
|
|
524
|
+
fillColor?: string;
|
|
525
|
+
full: boolean;
|
|
526
|
+
ender: boolean;
|
|
527
|
+
_live: boolean;
|
|
528
|
+
long: number;
|
|
529
|
+
invisible: boolean;
|
|
530
|
+
content: CommentContentItem[];
|
|
531
|
+
rawContent: string;
|
|
532
|
+
flash: boolean;
|
|
533
|
+
lineCount: number;
|
|
534
|
+
lineOffset: number;
|
|
535
|
+
is_my_post: boolean;
|
|
536
|
+
button?: ButtonParams;
|
|
537
|
+
};
|
|
538
|
+
type FormattedCommentWithSize = FormattedCommentWithFont & {
|
|
539
|
+
height: number;
|
|
540
|
+
width: number;
|
|
541
|
+
lineHeight: number;
|
|
542
|
+
resized: boolean;
|
|
543
|
+
resizedX: boolean;
|
|
544
|
+
resizedY: boolean;
|
|
545
|
+
content: CommentMeasuredContentItem[];
|
|
546
|
+
charSize: number;
|
|
547
|
+
scale: number;
|
|
548
|
+
scaleX: number;
|
|
549
|
+
buttonObjects?: ButtonList;
|
|
550
|
+
};
|
|
551
|
+
type ParseContentResult = {
|
|
552
|
+
content: CommentContentItem[];
|
|
553
|
+
lineCount: number;
|
|
554
|
+
lineOffset: number;
|
|
555
|
+
};
|
|
556
|
+
type ParseCommandAndNicoScriptResult = {
|
|
557
|
+
flash: boolean;
|
|
558
|
+
loc: CommentLoc;
|
|
559
|
+
size: CommentSize;
|
|
560
|
+
fontSize: number;
|
|
561
|
+
color: string;
|
|
562
|
+
strokeColor?: string;
|
|
563
|
+
wakuColor?: string;
|
|
564
|
+
fillColor?: string;
|
|
565
|
+
font: CommentFont;
|
|
566
|
+
full: boolean;
|
|
567
|
+
ender: boolean;
|
|
568
|
+
_live: boolean;
|
|
569
|
+
invisible: boolean;
|
|
570
|
+
long: number;
|
|
571
|
+
button?: ButtonParams;
|
|
572
|
+
};
|
|
573
|
+
type CommentContentItem = {
|
|
574
|
+
content: string;
|
|
575
|
+
slicedContent: string[];
|
|
576
|
+
isButton?: boolean;
|
|
577
|
+
font?: CommentFlashFont;
|
|
578
|
+
width?: number[];
|
|
579
|
+
};
|
|
580
|
+
type CommentMeasuredContentItem = CommentContentItem & {
|
|
581
|
+
width: number[];
|
|
582
|
+
};
|
|
583
|
+
type CommentFlashFontParsed =
|
|
584
|
+
| "gothic"
|
|
585
|
+
| "gulim"
|
|
586
|
+
| "simsunStrong"
|
|
587
|
+
| "simsunWeak";
|
|
588
|
+
type CommentContentIndex = {
|
|
589
|
+
index: number;
|
|
590
|
+
font: CommentFlashFontParsed;
|
|
591
|
+
};
|
|
592
|
+
type CommentFont = "defont" | "mincho" | "gothic" | "gulim" | "simsun";
|
|
593
|
+
type CommentFlashFont = "defont" | "gulim" | "simsun";
|
|
594
|
+
type CommentSize = "big" | "medium" | "small";
|
|
595
|
+
type CommentLoc = "ue" | "naka" | "shita";
|
|
596
|
+
type Collision = { [key in CollisionPos]: CollisionItem };
|
|
597
|
+
type Timeline = { [key: number]: IComment[] };
|
|
598
|
+
type CollisionPos = "ue" | "shita" | "right" | "left";
|
|
599
|
+
type CollisionItem = { [p: number]: IComment[] };
|
|
600
|
+
type NicoScript = {
|
|
601
|
+
reverse: NicoScriptReverse[];
|
|
602
|
+
ban: NicoScriptBan[];
|
|
603
|
+
default: NicoScriptDefault[];
|
|
604
|
+
replace: NicoScriptReplace[];
|
|
605
|
+
seekDisable: NicoScriptSeekDisable[];
|
|
606
|
+
jump: NicoScriptJump[];
|
|
607
|
+
};
|
|
608
|
+
type NicoScriptSeekDisable = {
|
|
609
|
+
start: number;
|
|
610
|
+
end: number;
|
|
611
|
+
};
|
|
612
|
+
type NicoScriptJump = {
|
|
613
|
+
start: number;
|
|
614
|
+
end?: number;
|
|
615
|
+
to: string;
|
|
616
|
+
message?: string;
|
|
617
|
+
};
|
|
618
|
+
type NicoScriptReverse = {
|
|
619
|
+
target: NicoScriptReverseTarget;
|
|
620
|
+
start: number;
|
|
621
|
+
end: number;
|
|
622
|
+
};
|
|
623
|
+
type NicoScriptReverseTarget = "コメ" | "投コメ" | "全";
|
|
624
|
+
type NicoScriptReplace = {
|
|
625
|
+
start: number;
|
|
626
|
+
long: number | undefined;
|
|
627
|
+
keyword: string;
|
|
628
|
+
replace: string;
|
|
629
|
+
range: NicoScriptReplaceRange;
|
|
630
|
+
target: NicoScriptReplaceTarget;
|
|
631
|
+
condition: NicoScriptReplaceCondition;
|
|
632
|
+
color: string | undefined;
|
|
633
|
+
size: CommentSize | undefined;
|
|
634
|
+
font: CommentFont | undefined;
|
|
635
|
+
loc: CommentLoc | undefined;
|
|
636
|
+
no: number;
|
|
637
|
+
};
|
|
638
|
+
type NicoScriptReplaceRange = "単" | "全";
|
|
639
|
+
type NicoScriptReplaceTarget =
|
|
640
|
+
| "コメ"
|
|
641
|
+
| "投コメ"
|
|
642
|
+
| "全"
|
|
643
|
+
| "含まない"
|
|
644
|
+
| "含む";
|
|
645
|
+
type NicoScriptReplaceCondition = "完全一致" | "部分一致";
|
|
646
|
+
type NicoScriptBan = {
|
|
647
|
+
start: number;
|
|
648
|
+
end: number;
|
|
649
|
+
};
|
|
650
|
+
type NicoScriptDefault = {
|
|
651
|
+
start: number;
|
|
652
|
+
long: number | undefined;
|
|
653
|
+
color: string | undefined;
|
|
654
|
+
size: CommentSize | undefined;
|
|
655
|
+
font: CommentFont | undefined;
|
|
656
|
+
loc: CommentLoc | undefined;
|
|
657
|
+
};
|
|
658
|
+
type MeasureTextResult = {
|
|
659
|
+
width: number;
|
|
660
|
+
height: number;
|
|
661
|
+
resized: boolean;
|
|
662
|
+
resizedX: boolean;
|
|
663
|
+
resizedY: boolean;
|
|
664
|
+
fontSize: number;
|
|
665
|
+
lineHeight: number;
|
|
666
|
+
content: CommentMeasuredContentItem[];
|
|
667
|
+
charSize: number;
|
|
668
|
+
scaleX: number;
|
|
669
|
+
scale: number;
|
|
670
|
+
};
|
|
671
|
+
|
|
672
|
+
type ButtonParams = {
|
|
673
|
+
message: {
|
|
674
|
+
before: string;
|
|
675
|
+
body: string;
|
|
676
|
+
after: string;
|
|
677
|
+
}; //表示するボタンの内容
|
|
678
|
+
commentMessage: string; //コメントの内容
|
|
679
|
+
commentMail: string[]; //コメントのコマンド → 未指定時は色のみ継承
|
|
680
|
+
commentVisible: boolean; //コメントを投稿するか
|
|
681
|
+
limit: number; //ボタンの使用上限
|
|
682
|
+
local: boolean; //ローカルコメントか
|
|
683
|
+
hidden: boolean; //通常のコメントのように表示するか
|
|
684
|
+
};
|
|
685
|
+
|
|
686
|
+
type ParsedCommand = {
|
|
687
|
+
loc: CommentLoc | undefined;
|
|
688
|
+
size: CommentSize | undefined;
|
|
689
|
+
fontSize: number | undefined;
|
|
690
|
+
color: string | undefined;
|
|
691
|
+
strokeColor?: string;
|
|
692
|
+
wakuColor?: string;
|
|
693
|
+
fillColor?: string;
|
|
694
|
+
font: CommentFont | undefined;
|
|
695
|
+
full: boolean;
|
|
696
|
+
ender: boolean;
|
|
697
|
+
_live: boolean;
|
|
698
|
+
invisible: boolean;
|
|
699
|
+
long: number | undefined;
|
|
700
|
+
button?: ButtonParams;
|
|
701
|
+
};
|
|
702
|
+
|
|
703
|
+
type MeasureTextInput = FormattedCommentWithFont & {
|
|
704
|
+
resized?: boolean;
|
|
705
|
+
resizedY?: boolean;
|
|
706
|
+
resizedX?: boolean;
|
|
707
|
+
lineHeight?: number;
|
|
708
|
+
charSize?: number;
|
|
709
|
+
scale: number;
|
|
710
|
+
};
|
|
711
|
+
|
|
712
|
+
type MeasureInput = {
|
|
713
|
+
font: CommentFont;
|
|
714
|
+
content: CommentContentItem[];
|
|
715
|
+
lineHeight: number;
|
|
716
|
+
charSize: number;
|
|
717
|
+
lineCount: number;
|
|
718
|
+
};
|
|
719
|
+
|
|
646
720
|
type ValueOf<T> = T[keyof T];
|
|
647
721
|
|
|
648
722
|
declare let imageCache: {
|
|
@@ -970,13 +1044,6 @@ declare const hex2rgb: (hex: string) => number[];
|
|
|
970
1044
|
declare const hex2rgba: (hex: string) => number[];
|
|
971
1045
|
declare const getStrokeColor: (comment: FormattedCommentWithSize) => string;
|
|
972
1046
|
|
|
973
|
-
type DefaultCommand = {
|
|
974
|
-
color?: string;
|
|
975
|
-
size?: CommentSize;
|
|
976
|
-
font?: CommentFont;
|
|
977
|
-
loc?: CommentLoc;
|
|
978
|
-
};
|
|
979
|
-
|
|
980
1047
|
declare const isLineBreakResize: (comment: MeasureTextInput) => boolean;
|
|
981
1048
|
declare const getDefaultCommand: (vpos: number) => DefaultCommand;
|
|
982
1049
|
declare const parseCommandAndNicoScript: (comment: FormattedComment) => ParseCommandAndNicoScriptResult;
|
|
@@ -1000,6 +1067,8 @@ declare const getConfig: <T>(input: ConfigItem<T>, isFlash?: boolean) => T;
|
|
|
1000
1067
|
declare const getFlashFontIndex: (part: string) => CommentContentIndex[];
|
|
1001
1068
|
declare const getFlashFontName: (font: CommentFlashFontParsed) => CommentFlashFont;
|
|
1002
1069
|
declare const parseContent: (content: string) => CommentContentItem[];
|
|
1070
|
+
declare const getButtonParts: (comment: FormattedCommentWithSize) => FormattedCommentWithSize;
|
|
1071
|
+
declare const buildAtButtonComment: (comment: FormattedCommentWithSize, vpos: number) => FormattedComment | undefined;
|
|
1003
1072
|
|
|
1004
1073
|
declare const getLineHeight: (fontSize: CommentSize, isFlash: boolean, resized?: boolean) => number;
|
|
1005
1074
|
declare const getCharSize: (fontSize: CommentSize, isFlash: boolean) => number;
|
|
@@ -1018,7 +1087,9 @@ declare const nativeSort: <T>(getter: (input: T) => number) => (a: T, b: T) => 1
|
|
|
1018
1087
|
|
|
1019
1088
|
declare const index_d_ArrayEqual: typeof ArrayEqual;
|
|
1020
1089
|
declare const index_d_ArrayPush: typeof ArrayPush;
|
|
1090
|
+
declare const index_d_buildAtButtonComment: typeof buildAtButtonComment;
|
|
1021
1091
|
declare const index_d_changeCALayer: typeof changeCALayer;
|
|
1092
|
+
declare const index_d_getButtonParts: typeof getButtonParts;
|
|
1022
1093
|
declare const index_d_getCharSize: typeof getCharSize;
|
|
1023
1094
|
declare const index_d_getConfig: typeof getConfig;
|
|
1024
1095
|
declare const index_d_getDefaultCommand: typeof getDefaultCommand;
|
|
@@ -1043,7 +1114,7 @@ declare const index_d_parseFont: typeof parseFont;
|
|
|
1043
1114
|
declare const index_d_processFixedComment: typeof processFixedComment;
|
|
1044
1115
|
declare const index_d_processMovableComment: typeof processMovableComment;
|
|
1045
1116
|
declare namespace index_d {
|
|
1046
|
-
export { index_d_ArrayEqual as ArrayEqual, index_d_ArrayPush as ArrayPush, index_d_changeCALayer as changeCALayer, index_d_getCharSize as getCharSize, index_d_getConfig as getConfig, index_d_getDefaultCommand as getDefaultCommand, index_d_getFlashFontIndex as getFlashFontIndex, index_d_getFlashFontName as getFlashFontName, index_d_getFontSizeAndScale as getFontSizeAndScale, index_d_getLineHeight as getLineHeight, index_d_getPosX as getPosX, index_d_getPosY as getPosY, index_d_getStrokeColor as getStrokeColor, index_d_hex2rgb as hex2rgb, index_d_hex2rgba as hex2rgba, index_d_isBanActive as isBanActive, index_d_isFlashComment as isFlashComment, index_d_isLineBreakResize as isLineBreakResize, index_d_isReverseActive as isReverseActive, index_d_measure as measure, index_d_nativeSort as nativeSort, index_d_parseCommandAndNicoScript as parseCommandAndNicoScript, index_d_parseContent as parseContent, index_d_parseFont as parseFont, index_d_processFixedComment as processFixedComment, index_d_processMovableComment as processMovableComment };
|
|
1117
|
+
export { index_d_ArrayEqual as ArrayEqual, index_d_ArrayPush as ArrayPush, index_d_buildAtButtonComment as buildAtButtonComment, index_d_changeCALayer as changeCALayer, index_d_getButtonParts as getButtonParts, index_d_getCharSize as getCharSize, index_d_getConfig as getConfig, index_d_getDefaultCommand as getDefaultCommand, index_d_getFlashFontIndex as getFlashFontIndex, index_d_getFlashFontName as getFlashFontName, index_d_getFontSizeAndScale as getFontSizeAndScale, index_d_getLineHeight as getLineHeight, index_d_getPosX as getPosX, index_d_getPosY as getPosY, index_d_getStrokeColor as getStrokeColor, index_d_hex2rgb as hex2rgb, index_d_hex2rgba as hex2rgba, index_d_isBanActive as isBanActive, index_d_isFlashComment as isFlashComment, index_d_isLineBreakResize as isLineBreakResize, index_d_isReverseActive as isReverseActive, index_d_measure as measure, index_d_nativeSort as nativeSort, index_d_parseCommandAndNicoScript as parseCommandAndNicoScript, index_d_parseContent as parseContent, index_d_parseFont as parseFont, index_d_processFixedComment as processFixedComment, index_d_processMovableComment as processMovableComment };
|
|
1047
1118
|
}
|
|
1048
1119
|
|
|
1049
1120
|
declare const definition: {
|
|
@@ -1140,7 +1211,7 @@ declare class NiconiComments {
|
|
|
1140
1211
|
private getCommentPos;
|
|
1141
1212
|
private sortComment;
|
|
1142
1213
|
addComments(...rawComments: FormattedComment[]): void;
|
|
1143
|
-
drawCanvas(vpos: number, forceRendering?: boolean): boolean;
|
|
1214
|
+
drawCanvas(vpos: number, forceRendering?: boolean, cursor?: Position): boolean;
|
|
1144
1215
|
private _drawVideo;
|
|
1145
1216
|
private _drawComments;
|
|
1146
1217
|
private _drawCollision;
|
|
@@ -1149,6 +1220,7 @@ declare class NiconiComments {
|
|
|
1149
1220
|
addEventListener<K extends keyof CommentEventHandlerMap>(eventName: K, handler: CommentEventHandlerMap[K]): void;
|
|
1150
1221
|
removeEventListener<K extends keyof CommentEventHandlerMap>(eventName: K, handler: CommentEventHandlerMap[K]): void;
|
|
1151
1222
|
clear(): void;
|
|
1223
|
+
click(vpos: number, pos: Position): void;
|
|
1152
1224
|
}
|
|
1153
1225
|
|
|
1154
|
-
export { type ApiChat, type ApiGlobalNumRes, type ApiLeaf, type ApiPing, type ApiThread, type BaseConfig, type BaseOptions, type Canvas, type Collision, type CollisionItem, type CollisionPos, type CommentContentIndex, type CommentContentItem, type CommentDisableEvent, type CommentDisableEventHandler, type CommentEnableEvent, type CommentEnableEventHandler, type CommentEventBase, type CommentEventHandler, type CommentEventHandlerMap, type CommentEventMap, type CommentEventName, type CommentFlashFont, type CommentFlashFontParsed, type CommentFont, type CommentLoc, type CommentMeasuredContentItem, type CommentSize, type CommentStageSize, type Config, type ConfigItem, type Context2D, type FlashMode, type FlashScriptChar, type FontItem, type FormattedComment, type FormattedCommentWithFont, type FormattedCommentWithSize, type FormattedLegacyComment, type HTML5Fonts, type IComment, type IPlugin, type IPluginConstructor, type IPluginList, type InputFormat, type InputFormatType, type JumpEvent, type JumpEventHandler, type MeasureInput, type MeasureTextInput, type MeasureTextResult, type MultiConfigItem, type NicoScript, type NicoScriptReplace, type NicoScriptReplaceCondition, type NicoScriptReplaceRange, type NicoScriptReplaceTarget, type NicoScriptReverseTarget, type Options, type OwnerComment, type ParseCommandAndNicoScriptResult, type ParseContentResult, type ParsedCommand, type Platform, type PlatformFont, type RawApiResponse, type SeekDisableEvent, type SeekDisableEventHandler, type SeekEnableEvent, type SeekEnableEventHandler, type Timeline, type V1Comment, type V1Thread, type ValueOf, NiconiComments as default, type formattedComment, type formattedLegacyComment, type inputFormat, type inputFormatType, type ownerComment, type rawApiResponse, type v1Thread };
|
|
1226
|
+
export { type ApiChat, type ApiGlobalNumRes, type ApiLeaf, type ApiPing, type ApiThread, type BaseConfig, type BaseOptions, type ButtonList, type ButtonParams, type ButtonPartLeft, type ButtonPartMiddle, type ButtonPartRight, type Canvas, type Collision, type CollisionItem, type CollisionPos, type CommentContentIndex, type CommentContentItem, type CommentDisableEvent, type CommentDisableEventHandler, type CommentEnableEvent, type CommentEnableEventHandler, type CommentEventBase, type CommentEventHandler, type CommentEventHandlerMap, type CommentEventMap, type CommentEventName, type CommentFlashFont, type CommentFlashFontParsed, type CommentFont, type CommentLoc, type CommentMeasuredContentItem, type CommentSize, type CommentStageSize, type Config, type ConfigItem, type Context2D, type DefaultCommand, type FlashMode, type FlashScriptChar, type FontItem, type FormattedComment, type FormattedCommentWithFont, type FormattedCommentWithSize, type FormattedLegacyComment, type HTML5Fonts, type IComment, type IPlugin, type IPluginConstructor, type IPluginList, type InputFormat, type InputFormatType, type JumpEvent, type JumpEventHandler, type MeasureInput, type MeasureTextInput, type MeasureTextResult, type MultiConfigItem, type NicoScript, type NicoScriptReplace, type NicoScriptReplaceCondition, type NicoScriptReplaceRange, type NicoScriptReplaceTarget, type NicoScriptReverseTarget, type Options, type OwnerComment, type ParseCommandAndNicoScriptResult, type ParseContentResult, type ParsedCommand, type Platform, type PlatformFont, type Position, type RawApiResponse, type SeekDisableEvent, type SeekDisableEventHandler, type SeekEnableEvent, type SeekEnableEventHandler, type Timeline, type V1Comment, type V1Thread, type ValueOf, NiconiComments as default, type formattedComment, type formattedLegacyComment, type inputFormat, type inputFormatType, type ownerComment, type rawApiResponse, type v1Thread };
|