@fictjs/runtime 0.0.3 → 0.0.5
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/README.md +1 -1
- package/dist/index.cjs +761 -707
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +889 -858
- package/dist/index.d.ts +889 -858
- package/dist/index.dev.js +765 -710
- package/dist/index.dev.js.map +1 -1
- package/dist/index.js +758 -708
- package/dist/index.js.map +1 -1
- package/dist/jsx-dev-runtime.d.cts +671 -0
- package/dist/jsx-dev-runtime.d.ts +671 -0
- package/dist/slim.cjs +119 -37
- package/dist/slim.cjs.map +1 -1
- package/dist/slim.d.cts +31 -4
- package/dist/slim.d.ts +31 -4
- package/dist/slim.js +117 -38
- package/dist/slim.js.map +1 -1
- package/package.json +2 -2
- package/src/binding.ts +49 -31
- package/src/index.ts +3 -0
- package/src/scope.ts +55 -0
- package/src/slim.ts +1 -0
|
@@ -0,0 +1,671 @@
|
|
|
1
|
+
/** Fict Virtual Node - represents a component or element in the virtual tree */
|
|
2
|
+
interface FictVNode {
|
|
3
|
+
/** Element type: tag name, Fragment symbol, or component function */
|
|
4
|
+
type: string | symbol | ((props: Record<string, unknown>) => FictNode);
|
|
5
|
+
/** Props passed to the element/component */
|
|
6
|
+
props: Record<string, unknown> | null;
|
|
7
|
+
/** Optional key for list rendering optimization */
|
|
8
|
+
key?: string | undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Fict Node - represents any renderable value
|
|
12
|
+
* This type covers all possible values that can appear in JSX
|
|
13
|
+
*/
|
|
14
|
+
type FictNode = FictVNode | FictNode[] | Node | string | number | boolean | null | undefined;
|
|
15
|
+
|
|
16
|
+
declare const Fragment: unique symbol;
|
|
17
|
+
declare function jsx(type: string | typeof Fragment | ((props: Record<string, unknown>) => FictNode), props: Record<string, unknown>, key?: string): FictNode;
|
|
18
|
+
declare const jsxs: typeof jsx;
|
|
19
|
+
declare const jsxDEV: typeof jsx;
|
|
20
|
+
declare namespace JSX {
|
|
21
|
+
type Element = FictNode;
|
|
22
|
+
interface IntrinsicElements {
|
|
23
|
+
html: HTMLAttributes<HTMLHtmlElement>;
|
|
24
|
+
head: HTMLAttributes<HTMLHeadElement>;
|
|
25
|
+
body: HTMLAttributes<HTMLBodyElement>;
|
|
26
|
+
title: HTMLAttributes<HTMLTitleElement>;
|
|
27
|
+
meta: MetaHTMLAttributes<HTMLMetaElement>;
|
|
28
|
+
link: LinkHTMLAttributes<HTMLLinkElement>;
|
|
29
|
+
style: StyleHTMLAttributes<HTMLStyleElement>;
|
|
30
|
+
script: ScriptHTMLAttributes<HTMLScriptElement>;
|
|
31
|
+
noscript: HTMLAttributes<HTMLElement>;
|
|
32
|
+
div: HTMLAttributes<HTMLDivElement>;
|
|
33
|
+
span: HTMLAttributes<HTMLSpanElement>;
|
|
34
|
+
main: HTMLAttributes<HTMLElement>;
|
|
35
|
+
header: HTMLAttributes<HTMLElement>;
|
|
36
|
+
footer: HTMLAttributes<HTMLElement>;
|
|
37
|
+
section: HTMLAttributes<HTMLElement>;
|
|
38
|
+
article: HTMLAttributes<HTMLElement>;
|
|
39
|
+
aside: HTMLAttributes<HTMLElement>;
|
|
40
|
+
nav: HTMLAttributes<HTMLElement>;
|
|
41
|
+
address: HTMLAttributes<HTMLElement>;
|
|
42
|
+
h1: HTMLAttributes<HTMLHeadingElement>;
|
|
43
|
+
h2: HTMLAttributes<HTMLHeadingElement>;
|
|
44
|
+
h3: HTMLAttributes<HTMLHeadingElement>;
|
|
45
|
+
h4: HTMLAttributes<HTMLHeadingElement>;
|
|
46
|
+
h5: HTMLAttributes<HTMLHeadingElement>;
|
|
47
|
+
h6: HTMLAttributes<HTMLHeadingElement>;
|
|
48
|
+
hgroup: HTMLAttributes<HTMLElement>;
|
|
49
|
+
p: HTMLAttributes<HTMLParagraphElement>;
|
|
50
|
+
blockquote: BlockquoteHTMLAttributes<HTMLQuoteElement>;
|
|
51
|
+
pre: HTMLAttributes<HTMLPreElement>;
|
|
52
|
+
figure: HTMLAttributes<HTMLElement>;
|
|
53
|
+
figcaption: HTMLAttributes<HTMLElement>;
|
|
54
|
+
hr: HTMLAttributes<HTMLHRElement>;
|
|
55
|
+
br: HTMLAttributes<HTMLBRElement>;
|
|
56
|
+
wbr: HTMLAttributes<HTMLElement>;
|
|
57
|
+
a: AnchorHTMLAttributes<HTMLAnchorElement>;
|
|
58
|
+
abbr: HTMLAttributes<HTMLElement>;
|
|
59
|
+
b: HTMLAttributes<HTMLElement>;
|
|
60
|
+
bdi: HTMLAttributes<HTMLElement>;
|
|
61
|
+
bdo: HTMLAttributes<HTMLElement>;
|
|
62
|
+
cite: HTMLAttributes<HTMLElement>;
|
|
63
|
+
code: HTMLAttributes<HTMLElement>;
|
|
64
|
+
data: DataHTMLAttributes<HTMLDataElement>;
|
|
65
|
+
dfn: HTMLAttributes<HTMLElement>;
|
|
66
|
+
em: HTMLAttributes<HTMLElement>;
|
|
67
|
+
i: HTMLAttributes<HTMLElement>;
|
|
68
|
+
kbd: HTMLAttributes<HTMLElement>;
|
|
69
|
+
mark: HTMLAttributes<HTMLElement>;
|
|
70
|
+
q: QuoteHTMLAttributes<HTMLQuoteElement>;
|
|
71
|
+
rp: HTMLAttributes<HTMLElement>;
|
|
72
|
+
rt: HTMLAttributes<HTMLElement>;
|
|
73
|
+
ruby: HTMLAttributes<HTMLElement>;
|
|
74
|
+
s: HTMLAttributes<HTMLElement>;
|
|
75
|
+
samp: HTMLAttributes<HTMLElement>;
|
|
76
|
+
small: HTMLAttributes<HTMLElement>;
|
|
77
|
+
strong: HTMLAttributes<HTMLElement>;
|
|
78
|
+
sub: HTMLAttributes<HTMLElement>;
|
|
79
|
+
sup: HTMLAttributes<HTMLElement>;
|
|
80
|
+
time: TimeHTMLAttributes<HTMLTimeElement>;
|
|
81
|
+
u: HTMLAttributes<HTMLElement>;
|
|
82
|
+
var: HTMLAttributes<HTMLElement>;
|
|
83
|
+
ul: HTMLAttributes<HTMLUListElement>;
|
|
84
|
+
ol: OlHTMLAttributes<HTMLOListElement>;
|
|
85
|
+
li: LiHTMLAttributes<HTMLLIElement>;
|
|
86
|
+
dl: HTMLAttributes<HTMLDListElement>;
|
|
87
|
+
dt: HTMLAttributes<HTMLElement>;
|
|
88
|
+
dd: HTMLAttributes<HTMLElement>;
|
|
89
|
+
menu: HTMLAttributes<HTMLMenuElement>;
|
|
90
|
+
table: TableHTMLAttributes<HTMLTableElement>;
|
|
91
|
+
caption: HTMLAttributes<HTMLTableCaptionElement>;
|
|
92
|
+
colgroup: ColgroupHTMLAttributes<HTMLTableColElement>;
|
|
93
|
+
col: ColHTMLAttributes<HTMLTableColElement>;
|
|
94
|
+
thead: HTMLAttributes<HTMLTableSectionElement>;
|
|
95
|
+
tbody: HTMLAttributes<HTMLTableSectionElement>;
|
|
96
|
+
tfoot: HTMLAttributes<HTMLTableSectionElement>;
|
|
97
|
+
tr: HTMLAttributes<HTMLTableRowElement>;
|
|
98
|
+
th: ThHTMLAttributes<HTMLTableCellElement>;
|
|
99
|
+
td: TdHTMLAttributes<HTMLTableCellElement>;
|
|
100
|
+
form: FormHTMLAttributes<HTMLFormElement>;
|
|
101
|
+
fieldset: FieldsetHTMLAttributes<HTMLFieldSetElement>;
|
|
102
|
+
legend: HTMLAttributes<HTMLLegendElement>;
|
|
103
|
+
label: LabelHTMLAttributes<HTMLLabelElement>;
|
|
104
|
+
input: InputHTMLAttributes<HTMLInputElement>;
|
|
105
|
+
button: ButtonHTMLAttributes<HTMLButtonElement>;
|
|
106
|
+
select: SelectHTMLAttributes<HTMLSelectElement>;
|
|
107
|
+
datalist: HTMLAttributes<HTMLDataListElement>;
|
|
108
|
+
optgroup: OptgroupHTMLAttributes<HTMLOptGroupElement>;
|
|
109
|
+
option: OptionHTMLAttributes<HTMLOptionElement>;
|
|
110
|
+
textarea: TextareaHTMLAttributes<HTMLTextAreaElement>;
|
|
111
|
+
output: OutputHTMLAttributes<HTMLOutputElement>;
|
|
112
|
+
progress: ProgressHTMLAttributes<HTMLProgressElement>;
|
|
113
|
+
meter: MeterHTMLAttributes<HTMLMeterElement>;
|
|
114
|
+
details: DetailsHTMLAttributes<HTMLDetailsElement>;
|
|
115
|
+
summary: HTMLAttributes<HTMLElement>;
|
|
116
|
+
dialog: DialogHTMLAttributes<HTMLDialogElement>;
|
|
117
|
+
img: ImgHTMLAttributes<HTMLImageElement>;
|
|
118
|
+
picture: HTMLAttributes<HTMLPictureElement>;
|
|
119
|
+
source: SourceHTMLAttributes<HTMLSourceElement>;
|
|
120
|
+
audio: AudioVideoHTMLAttributes<HTMLAudioElement>;
|
|
121
|
+
video: AudioVideoHTMLAttributes<HTMLVideoElement>;
|
|
122
|
+
track: TrackHTMLAttributes<HTMLTrackElement>;
|
|
123
|
+
map: MapHTMLAttributes<HTMLMapElement>;
|
|
124
|
+
area: AreaHTMLAttributes<HTMLAreaElement>;
|
|
125
|
+
iframe: IframeHTMLAttributes<HTMLIFrameElement>;
|
|
126
|
+
embed: EmbedHTMLAttributes<HTMLEmbedElement>;
|
|
127
|
+
object: ObjectHTMLAttributes<HTMLObjectElement>;
|
|
128
|
+
param: ParamHTMLAttributes<HTMLParamElement>;
|
|
129
|
+
canvas: CanvasHTMLAttributes<HTMLCanvasElement>;
|
|
130
|
+
svg: SVGAttributes<SVGSVGElement>;
|
|
131
|
+
path: SVGAttributes<SVGPathElement>;
|
|
132
|
+
circle: SVGAttributes<SVGCircleElement>;
|
|
133
|
+
rect: SVGAttributes<SVGRectElement>;
|
|
134
|
+
line: SVGAttributes<SVGLineElement>;
|
|
135
|
+
polyline: SVGAttributes<SVGPolylineElement>;
|
|
136
|
+
polygon: SVGAttributes<SVGPolygonElement>;
|
|
137
|
+
ellipse: SVGAttributes<SVGEllipseElement>;
|
|
138
|
+
g: SVGAttributes<SVGGElement>;
|
|
139
|
+
defs: SVGAttributes<SVGDefsElement>;
|
|
140
|
+
use: SVGAttributes<SVGUseElement>;
|
|
141
|
+
text: SVGAttributes<SVGTextElement>;
|
|
142
|
+
tspan: SVGAttributes<SVGTSpanElement>;
|
|
143
|
+
template: HTMLAttributes<HTMLTemplateElement>;
|
|
144
|
+
slot: SlotHTMLAttributes<HTMLSlotElement>;
|
|
145
|
+
portal: HTMLAttributes<HTMLElement>;
|
|
146
|
+
}
|
|
147
|
+
interface ElementChildrenAttribute {
|
|
148
|
+
children: unknown;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
interface HTMLAttributes<T> {
|
|
152
|
+
children?: FictNode | FictNode[];
|
|
153
|
+
key?: string | number;
|
|
154
|
+
id?: string;
|
|
155
|
+
class?: string;
|
|
156
|
+
style?: string | Record<string, string | number>;
|
|
157
|
+
title?: string;
|
|
158
|
+
lang?: string;
|
|
159
|
+
dir?: 'ltr' | 'rtl' | 'auto';
|
|
160
|
+
hidden?: boolean | 'hidden' | 'until-found';
|
|
161
|
+
tabIndex?: number;
|
|
162
|
+
draggable?: boolean | 'true' | 'false';
|
|
163
|
+
contentEditable?: boolean | 'true' | 'false' | 'inherit';
|
|
164
|
+
spellCheck?: boolean | 'true' | 'false';
|
|
165
|
+
translate?: 'yes' | 'no';
|
|
166
|
+
inert?: boolean;
|
|
167
|
+
popover?: 'auto' | 'manual';
|
|
168
|
+
autofocus?: boolean;
|
|
169
|
+
slot?: string;
|
|
170
|
+
accessKey?: string;
|
|
171
|
+
onClick?: (e: MouseEvent) => void;
|
|
172
|
+
onDblClick?: (e: MouseEvent) => void;
|
|
173
|
+
onMouseDown?: (e: MouseEvent) => void;
|
|
174
|
+
onMouseUp?: (e: MouseEvent) => void;
|
|
175
|
+
onMouseMove?: (e: MouseEvent) => void;
|
|
176
|
+
onMouseEnter?: (e: MouseEvent) => void;
|
|
177
|
+
onMouseLeave?: (e: MouseEvent) => void;
|
|
178
|
+
onMouseOver?: (e: MouseEvent) => void;
|
|
179
|
+
onMouseOut?: (e: MouseEvent) => void;
|
|
180
|
+
onContextMenu?: (e: MouseEvent) => void;
|
|
181
|
+
onInput?: (e: InputEvent) => void;
|
|
182
|
+
onChange?: (e: Event) => void;
|
|
183
|
+
onSubmit?: (e: SubmitEvent) => void;
|
|
184
|
+
onReset?: (e: Event) => void;
|
|
185
|
+
onKeyDown?: (e: KeyboardEvent) => void;
|
|
186
|
+
onKeyUp?: (e: KeyboardEvent) => void;
|
|
187
|
+
onKeyPress?: (e: KeyboardEvent) => void;
|
|
188
|
+
onFocus?: (e: FocusEvent) => void;
|
|
189
|
+
onBlur?: (e: FocusEvent) => void;
|
|
190
|
+
onScroll?: (e: Event) => void;
|
|
191
|
+
onWheel?: (e: WheelEvent) => void;
|
|
192
|
+
onLoad?: (e: Event) => void;
|
|
193
|
+
onError?: (e: Event) => void;
|
|
194
|
+
onDrag?: (e: DragEvent) => void;
|
|
195
|
+
onDragStart?: (e: DragEvent) => void;
|
|
196
|
+
onDragEnd?: (e: DragEvent) => void;
|
|
197
|
+
onDragEnter?: (e: DragEvent) => void;
|
|
198
|
+
onDragLeave?: (e: DragEvent) => void;
|
|
199
|
+
onDragOver?: (e: DragEvent) => void;
|
|
200
|
+
onDrop?: (e: DragEvent) => void;
|
|
201
|
+
onTouchStart?: (e: TouchEvent) => void;
|
|
202
|
+
onTouchMove?: (e: TouchEvent) => void;
|
|
203
|
+
onTouchEnd?: (e: TouchEvent) => void;
|
|
204
|
+
onTouchCancel?: (e: TouchEvent) => void;
|
|
205
|
+
onAnimationStart?: (e: AnimationEvent) => void;
|
|
206
|
+
onAnimationEnd?: (e: AnimationEvent) => void;
|
|
207
|
+
onAnimationIteration?: (e: AnimationEvent) => void;
|
|
208
|
+
onTransitionEnd?: (e: TransitionEvent) => void;
|
|
209
|
+
onPointerDown?: (e: PointerEvent) => void;
|
|
210
|
+
onPointerUp?: (e: PointerEvent) => void;
|
|
211
|
+
onPointerMove?: (e: PointerEvent) => void;
|
|
212
|
+
onPointerEnter?: (e: PointerEvent) => void;
|
|
213
|
+
onPointerLeave?: (e: PointerEvent) => void;
|
|
214
|
+
onPointerOver?: (e: PointerEvent) => void;
|
|
215
|
+
onPointerOut?: (e: PointerEvent) => void;
|
|
216
|
+
onPointerCancel?: (e: PointerEvent) => void;
|
|
217
|
+
ref?: ((el: T | null) => void) | {
|
|
218
|
+
current: T | null;
|
|
219
|
+
};
|
|
220
|
+
role?: string;
|
|
221
|
+
'aria-hidden'?: boolean | 'true' | 'false';
|
|
222
|
+
'aria-label'?: string;
|
|
223
|
+
'aria-labelledby'?: string;
|
|
224
|
+
'aria-describedby'?: string;
|
|
225
|
+
'aria-live'?: 'off' | 'polite' | 'assertive';
|
|
226
|
+
'aria-atomic'?: boolean | 'true' | 'false';
|
|
227
|
+
'aria-busy'?: boolean | 'true' | 'false';
|
|
228
|
+
'aria-current'?: boolean | 'true' | 'false' | 'page' | 'step' | 'location' | 'date' | 'time';
|
|
229
|
+
'aria-disabled'?: boolean | 'true' | 'false';
|
|
230
|
+
'aria-expanded'?: boolean | 'true' | 'false';
|
|
231
|
+
'aria-haspopup'?: boolean | 'true' | 'false' | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';
|
|
232
|
+
'aria-pressed'?: boolean | 'true' | 'false' | 'mixed';
|
|
233
|
+
'aria-selected'?: boolean | 'true' | 'false';
|
|
234
|
+
'aria-checked'?: boolean | 'true' | 'false' | 'mixed';
|
|
235
|
+
'aria-controls'?: string;
|
|
236
|
+
'aria-owns'?: string;
|
|
237
|
+
'aria-activedescendant'?: string;
|
|
238
|
+
'aria-valuemin'?: number;
|
|
239
|
+
'aria-valuemax'?: number;
|
|
240
|
+
'aria-valuenow'?: number;
|
|
241
|
+
'aria-valuetext'?: string;
|
|
242
|
+
'aria-orientation'?: 'horizontal' | 'vertical';
|
|
243
|
+
'aria-readonly'?: boolean | 'true' | 'false';
|
|
244
|
+
'aria-required'?: boolean | 'true' | 'false';
|
|
245
|
+
'aria-invalid'?: boolean | 'true' | 'false' | 'grammar' | 'spelling';
|
|
246
|
+
'aria-errormessage'?: string;
|
|
247
|
+
'aria-modal'?: boolean | 'true' | 'false';
|
|
248
|
+
'aria-placeholder'?: string;
|
|
249
|
+
'aria-sort'?: 'none' | 'ascending' | 'descending' | 'other';
|
|
250
|
+
'aria-colcount'?: number;
|
|
251
|
+
'aria-colindex'?: number;
|
|
252
|
+
'aria-colspan'?: number;
|
|
253
|
+
'aria-rowcount'?: number;
|
|
254
|
+
'aria-rowindex'?: number;
|
|
255
|
+
'aria-rowspan'?: number;
|
|
256
|
+
'aria-setsize'?: number;
|
|
257
|
+
'aria-posinset'?: number;
|
|
258
|
+
'aria-level'?: number;
|
|
259
|
+
'aria-multiselectable'?: boolean | 'true' | 'false';
|
|
260
|
+
'aria-autocomplete'?: 'none' | 'inline' | 'list' | 'both';
|
|
261
|
+
'aria-details'?: string;
|
|
262
|
+
'aria-keyshortcuts'?: string;
|
|
263
|
+
'aria-roledescription'?: string;
|
|
264
|
+
[key: `data-${string}`]: string | number | boolean | undefined;
|
|
265
|
+
}
|
|
266
|
+
interface AnchorHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
267
|
+
href?: string;
|
|
268
|
+
target?: '_self' | '_blank' | '_parent' | '_top' | string;
|
|
269
|
+
rel?: string;
|
|
270
|
+
download?: boolean | string;
|
|
271
|
+
hreflang?: string;
|
|
272
|
+
type?: string;
|
|
273
|
+
referrerPolicy?: ReferrerPolicy;
|
|
274
|
+
ping?: string;
|
|
275
|
+
}
|
|
276
|
+
interface ButtonHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
277
|
+
type?: 'button' | 'submit' | 'reset';
|
|
278
|
+
disabled?: boolean;
|
|
279
|
+
name?: string;
|
|
280
|
+
value?: string;
|
|
281
|
+
form?: string;
|
|
282
|
+
formAction?: string;
|
|
283
|
+
formEncType?: string;
|
|
284
|
+
formMethod?: string;
|
|
285
|
+
formNoValidate?: boolean;
|
|
286
|
+
formTarget?: string;
|
|
287
|
+
popovertarget?: string;
|
|
288
|
+
popovertargetaction?: 'show' | 'hide' | 'toggle';
|
|
289
|
+
}
|
|
290
|
+
interface InputHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
291
|
+
type?: string;
|
|
292
|
+
value?: string | number | readonly string[];
|
|
293
|
+
defaultValue?: string | number | readonly string[];
|
|
294
|
+
checked?: boolean;
|
|
295
|
+
defaultChecked?: boolean;
|
|
296
|
+
disabled?: boolean;
|
|
297
|
+
placeholder?: string;
|
|
298
|
+
name?: string;
|
|
299
|
+
form?: string;
|
|
300
|
+
required?: boolean;
|
|
301
|
+
readonly?: boolean;
|
|
302
|
+
multiple?: boolean;
|
|
303
|
+
min?: number | string;
|
|
304
|
+
max?: number | string;
|
|
305
|
+
minLength?: number;
|
|
306
|
+
maxLength?: number;
|
|
307
|
+
step?: number | string;
|
|
308
|
+
pattern?: string;
|
|
309
|
+
size?: number;
|
|
310
|
+
accept?: string;
|
|
311
|
+
capture?: boolean | 'user' | 'environment';
|
|
312
|
+
list?: string;
|
|
313
|
+
autoComplete?: string;
|
|
314
|
+
autoCapitalize?: string;
|
|
315
|
+
inputMode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';
|
|
316
|
+
enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';
|
|
317
|
+
height?: number | string;
|
|
318
|
+
width?: number | string;
|
|
319
|
+
alt?: string;
|
|
320
|
+
src?: string;
|
|
321
|
+
formAction?: string;
|
|
322
|
+
formEncType?: string;
|
|
323
|
+
formMethod?: string;
|
|
324
|
+
formNoValidate?: boolean;
|
|
325
|
+
formTarget?: string;
|
|
326
|
+
}
|
|
327
|
+
interface FormHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
328
|
+
action?: string;
|
|
329
|
+
method?: 'get' | 'post' | 'dialog';
|
|
330
|
+
encType?: string;
|
|
331
|
+
target?: string;
|
|
332
|
+
name?: string;
|
|
333
|
+
noValidate?: boolean;
|
|
334
|
+
autoComplete?: 'on' | 'off';
|
|
335
|
+
acceptCharset?: string;
|
|
336
|
+
}
|
|
337
|
+
interface ImgHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
338
|
+
src?: string;
|
|
339
|
+
alt?: string;
|
|
340
|
+
width?: number | string;
|
|
341
|
+
height?: number | string;
|
|
342
|
+
srcSet?: string;
|
|
343
|
+
sizes?: string;
|
|
344
|
+
loading?: 'eager' | 'lazy';
|
|
345
|
+
decoding?: 'async' | 'auto' | 'sync';
|
|
346
|
+
crossOrigin?: 'anonymous' | 'use-credentials';
|
|
347
|
+
referrerPolicy?: ReferrerPolicy;
|
|
348
|
+
useMap?: string;
|
|
349
|
+
isMap?: boolean;
|
|
350
|
+
fetchPriority?: 'auto' | 'high' | 'low';
|
|
351
|
+
}
|
|
352
|
+
interface TextareaHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
353
|
+
value?: string | number;
|
|
354
|
+
defaultValue?: string;
|
|
355
|
+
disabled?: boolean;
|
|
356
|
+
placeholder?: string;
|
|
357
|
+
name?: string;
|
|
358
|
+
form?: string;
|
|
359
|
+
required?: boolean;
|
|
360
|
+
readonly?: boolean;
|
|
361
|
+
rows?: number;
|
|
362
|
+
cols?: number;
|
|
363
|
+
minLength?: number;
|
|
364
|
+
maxLength?: number;
|
|
365
|
+
wrap?: 'hard' | 'soft' | 'off';
|
|
366
|
+
autoComplete?: string;
|
|
367
|
+
}
|
|
368
|
+
interface SelectHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
369
|
+
value?: string | number | readonly string[];
|
|
370
|
+
defaultValue?: string | number | readonly string[];
|
|
371
|
+
disabled?: boolean;
|
|
372
|
+
name?: string;
|
|
373
|
+
form?: string;
|
|
374
|
+
required?: boolean;
|
|
375
|
+
multiple?: boolean;
|
|
376
|
+
size?: number;
|
|
377
|
+
autoComplete?: string;
|
|
378
|
+
}
|
|
379
|
+
interface OptionHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
380
|
+
value?: string | number;
|
|
381
|
+
disabled?: boolean;
|
|
382
|
+
selected?: boolean;
|
|
383
|
+
label?: string;
|
|
384
|
+
}
|
|
385
|
+
interface OptgroupHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
386
|
+
disabled?: boolean;
|
|
387
|
+
label?: string;
|
|
388
|
+
}
|
|
389
|
+
interface LabelHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
390
|
+
for?: string;
|
|
391
|
+
htmlFor?: string;
|
|
392
|
+
form?: string;
|
|
393
|
+
}
|
|
394
|
+
interface FieldsetHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
395
|
+
disabled?: boolean;
|
|
396
|
+
name?: string;
|
|
397
|
+
form?: string;
|
|
398
|
+
}
|
|
399
|
+
interface OutputHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
400
|
+
for?: string;
|
|
401
|
+
htmlFor?: string;
|
|
402
|
+
form?: string;
|
|
403
|
+
name?: string;
|
|
404
|
+
}
|
|
405
|
+
interface ProgressHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
406
|
+
value?: number | string;
|
|
407
|
+
max?: number | string;
|
|
408
|
+
}
|
|
409
|
+
interface MeterHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
410
|
+
value?: number | string;
|
|
411
|
+
min?: number | string;
|
|
412
|
+
max?: number | string;
|
|
413
|
+
low?: number | string;
|
|
414
|
+
high?: number | string;
|
|
415
|
+
optimum?: number | string;
|
|
416
|
+
}
|
|
417
|
+
interface TableHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
418
|
+
cellPadding?: number | string;
|
|
419
|
+
cellSpacing?: number | string;
|
|
420
|
+
border?: number | string;
|
|
421
|
+
}
|
|
422
|
+
interface ThHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
423
|
+
colSpan?: number;
|
|
424
|
+
rowSpan?: number;
|
|
425
|
+
scope?: 'row' | 'col' | 'rowgroup' | 'colgroup';
|
|
426
|
+
abbr?: string;
|
|
427
|
+
headers?: string;
|
|
428
|
+
}
|
|
429
|
+
interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
430
|
+
colSpan?: number;
|
|
431
|
+
rowSpan?: number;
|
|
432
|
+
headers?: string;
|
|
433
|
+
}
|
|
434
|
+
interface ColHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
435
|
+
span?: number;
|
|
436
|
+
}
|
|
437
|
+
interface ColgroupHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
438
|
+
span?: number;
|
|
439
|
+
}
|
|
440
|
+
interface OlHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
441
|
+
start?: number;
|
|
442
|
+
reversed?: boolean;
|
|
443
|
+
type?: '1' | 'a' | 'A' | 'i' | 'I';
|
|
444
|
+
}
|
|
445
|
+
interface LiHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
446
|
+
value?: number;
|
|
447
|
+
}
|
|
448
|
+
interface AudioVideoHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
449
|
+
src?: string;
|
|
450
|
+
controls?: boolean;
|
|
451
|
+
autoPlay?: boolean;
|
|
452
|
+
loop?: boolean;
|
|
453
|
+
muted?: boolean;
|
|
454
|
+
preload?: 'none' | 'metadata' | 'auto';
|
|
455
|
+
crossOrigin?: 'anonymous' | 'use-credentials';
|
|
456
|
+
poster?: string;
|
|
457
|
+
width?: number | string;
|
|
458
|
+
height?: number | string;
|
|
459
|
+
playsInline?: boolean;
|
|
460
|
+
disableRemotePlayback?: boolean;
|
|
461
|
+
onPlay?: (e: Event) => void;
|
|
462
|
+
onPause?: (e: Event) => void;
|
|
463
|
+
onEnded?: (e: Event) => void;
|
|
464
|
+
onTimeUpdate?: (e: Event) => void;
|
|
465
|
+
onVolumeChange?: (e: Event) => void;
|
|
466
|
+
onSeeking?: (e: Event) => void;
|
|
467
|
+
onSeeked?: (e: Event) => void;
|
|
468
|
+
onLoadedData?: (e: Event) => void;
|
|
469
|
+
onLoadedMetadata?: (e: Event) => void;
|
|
470
|
+
onCanPlay?: (e: Event) => void;
|
|
471
|
+
onCanPlayThrough?: (e: Event) => void;
|
|
472
|
+
onWaiting?: (e: Event) => void;
|
|
473
|
+
onPlaying?: (e: Event) => void;
|
|
474
|
+
onProgress?: (e: Event) => void;
|
|
475
|
+
onDurationChange?: (e: Event) => void;
|
|
476
|
+
onRateChange?: (e: Event) => void;
|
|
477
|
+
onStalled?: (e: Event) => void;
|
|
478
|
+
onSuspend?: (e: Event) => void;
|
|
479
|
+
onEmptied?: (e: Event) => void;
|
|
480
|
+
}
|
|
481
|
+
interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
482
|
+
src?: string;
|
|
483
|
+
srcSet?: string;
|
|
484
|
+
sizes?: string;
|
|
485
|
+
type?: string;
|
|
486
|
+
media?: string;
|
|
487
|
+
width?: number | string;
|
|
488
|
+
height?: number | string;
|
|
489
|
+
}
|
|
490
|
+
interface TrackHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
491
|
+
src?: string;
|
|
492
|
+
srcLang?: string;
|
|
493
|
+
label?: string;
|
|
494
|
+
kind?: 'subtitles' | 'captions' | 'descriptions' | 'chapters' | 'metadata';
|
|
495
|
+
default?: boolean;
|
|
496
|
+
}
|
|
497
|
+
interface IframeHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
498
|
+
src?: string;
|
|
499
|
+
srcDoc?: string;
|
|
500
|
+
name?: string;
|
|
501
|
+
width?: number | string;
|
|
502
|
+
height?: number | string;
|
|
503
|
+
allow?: string;
|
|
504
|
+
allowFullScreen?: boolean;
|
|
505
|
+
sandbox?: string;
|
|
506
|
+
loading?: 'eager' | 'lazy';
|
|
507
|
+
referrerPolicy?: ReferrerPolicy;
|
|
508
|
+
}
|
|
509
|
+
interface EmbedHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
510
|
+
src?: string;
|
|
511
|
+
type?: string;
|
|
512
|
+
width?: number | string;
|
|
513
|
+
height?: number | string;
|
|
514
|
+
}
|
|
515
|
+
interface ObjectHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
516
|
+
data?: string;
|
|
517
|
+
type?: string;
|
|
518
|
+
name?: string;
|
|
519
|
+
width?: number | string;
|
|
520
|
+
height?: number | string;
|
|
521
|
+
form?: string;
|
|
522
|
+
useMap?: string;
|
|
523
|
+
}
|
|
524
|
+
interface ParamHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
525
|
+
name?: string;
|
|
526
|
+
value?: string;
|
|
527
|
+
}
|
|
528
|
+
interface CanvasHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
529
|
+
width?: number | string;
|
|
530
|
+
height?: number | string;
|
|
531
|
+
}
|
|
532
|
+
interface MapHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
533
|
+
name?: string;
|
|
534
|
+
}
|
|
535
|
+
interface AreaHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
536
|
+
alt?: string;
|
|
537
|
+
coords?: string;
|
|
538
|
+
href?: string;
|
|
539
|
+
hreflang?: string;
|
|
540
|
+
download?: boolean | string;
|
|
541
|
+
rel?: string;
|
|
542
|
+
shape?: 'rect' | 'circle' | 'poly' | 'default';
|
|
543
|
+
target?: string;
|
|
544
|
+
referrerPolicy?: ReferrerPolicy;
|
|
545
|
+
ping?: string;
|
|
546
|
+
}
|
|
547
|
+
interface DetailsHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
548
|
+
open?: boolean;
|
|
549
|
+
onToggle?: (e: Event) => void;
|
|
550
|
+
}
|
|
551
|
+
interface DialogHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
552
|
+
open?: boolean;
|
|
553
|
+
onClose?: (e: Event) => void;
|
|
554
|
+
onCancel?: (e: Event) => void;
|
|
555
|
+
}
|
|
556
|
+
interface BlockquoteHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
557
|
+
cite?: string;
|
|
558
|
+
}
|
|
559
|
+
interface QuoteHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
560
|
+
cite?: string;
|
|
561
|
+
}
|
|
562
|
+
interface TimeHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
563
|
+
dateTime?: string;
|
|
564
|
+
}
|
|
565
|
+
interface DataHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
566
|
+
value?: string;
|
|
567
|
+
}
|
|
568
|
+
interface MetaHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
569
|
+
name?: string;
|
|
570
|
+
content?: string;
|
|
571
|
+
httpEquiv?: string;
|
|
572
|
+
charSet?: string;
|
|
573
|
+
property?: string;
|
|
574
|
+
}
|
|
575
|
+
interface LinkHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
576
|
+
href?: string;
|
|
577
|
+
rel?: string;
|
|
578
|
+
type?: string;
|
|
579
|
+
media?: string;
|
|
580
|
+
as?: string;
|
|
581
|
+
crossOrigin?: 'anonymous' | 'use-credentials';
|
|
582
|
+
referrerPolicy?: ReferrerPolicy;
|
|
583
|
+
sizes?: string;
|
|
584
|
+
hreflang?: string;
|
|
585
|
+
integrity?: string;
|
|
586
|
+
fetchPriority?: 'auto' | 'high' | 'low';
|
|
587
|
+
disabled?: boolean;
|
|
588
|
+
}
|
|
589
|
+
interface StyleHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
590
|
+
media?: string;
|
|
591
|
+
nonce?: string;
|
|
592
|
+
blocking?: string;
|
|
593
|
+
}
|
|
594
|
+
interface ScriptHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
595
|
+
src?: string;
|
|
596
|
+
type?: string;
|
|
597
|
+
async?: boolean;
|
|
598
|
+
defer?: boolean;
|
|
599
|
+
crossOrigin?: 'anonymous' | 'use-credentials';
|
|
600
|
+
integrity?: string;
|
|
601
|
+
noModule?: boolean;
|
|
602
|
+
nonce?: string;
|
|
603
|
+
referrerPolicy?: ReferrerPolicy;
|
|
604
|
+
fetchPriority?: 'auto' | 'high' | 'low';
|
|
605
|
+
blocking?: string;
|
|
606
|
+
}
|
|
607
|
+
interface SlotHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
608
|
+
name?: string;
|
|
609
|
+
onSlotchange?: (e: Event) => void;
|
|
610
|
+
}
|
|
611
|
+
interface SVGAttributes<T> extends HTMLAttributes<T> {
|
|
612
|
+
viewBox?: string;
|
|
613
|
+
xmlns?: string;
|
|
614
|
+
xmlnsXlink?: string;
|
|
615
|
+
fill?: string;
|
|
616
|
+
stroke?: string;
|
|
617
|
+
strokeWidth?: string | number;
|
|
618
|
+
strokeLinecap?: 'butt' | 'round' | 'square';
|
|
619
|
+
strokeLinejoin?: 'miter' | 'round' | 'bevel';
|
|
620
|
+
strokeDasharray?: string;
|
|
621
|
+
strokeDashoffset?: string | number;
|
|
622
|
+
strokeOpacity?: string | number;
|
|
623
|
+
fillOpacity?: string | number;
|
|
624
|
+
opacity?: string | number;
|
|
625
|
+
transform?: string;
|
|
626
|
+
transformOrigin?: string;
|
|
627
|
+
clipPath?: string;
|
|
628
|
+
mask?: string;
|
|
629
|
+
filter?: string;
|
|
630
|
+
d?: string;
|
|
631
|
+
cx?: string | number;
|
|
632
|
+
cy?: string | number;
|
|
633
|
+
r?: string | number;
|
|
634
|
+
rx?: string | number;
|
|
635
|
+
ry?: string | number;
|
|
636
|
+
x?: string | number;
|
|
637
|
+
y?: string | number;
|
|
638
|
+
x1?: string | number;
|
|
639
|
+
y1?: string | number;
|
|
640
|
+
x2?: string | number;
|
|
641
|
+
y2?: string | number;
|
|
642
|
+
width?: string | number;
|
|
643
|
+
height?: string | number;
|
|
644
|
+
points?: string;
|
|
645
|
+
pathLength?: string | number;
|
|
646
|
+
textAnchor?: 'start' | 'middle' | 'end';
|
|
647
|
+
dominantBaseline?: string;
|
|
648
|
+
dx?: string | number;
|
|
649
|
+
dy?: string | number;
|
|
650
|
+
fontSize?: string | number;
|
|
651
|
+
fontFamily?: string;
|
|
652
|
+
fontWeight?: string | number;
|
|
653
|
+
href?: string;
|
|
654
|
+
xlinkHref?: string;
|
|
655
|
+
gradientUnits?: 'userSpaceOnUse' | 'objectBoundingBox';
|
|
656
|
+
gradientTransform?: string;
|
|
657
|
+
spreadMethod?: 'pad' | 'reflect' | 'repeat';
|
|
658
|
+
offset?: string | number;
|
|
659
|
+
stopColor?: string;
|
|
660
|
+
stopOpacity?: string | number;
|
|
661
|
+
clipPathUnits?: 'userSpaceOnUse' | 'objectBoundingBox';
|
|
662
|
+
maskUnits?: 'userSpaceOnUse' | 'objectBoundingBox';
|
|
663
|
+
maskContentUnits?: 'userSpaceOnUse' | 'objectBoundingBox';
|
|
664
|
+
preserveAspectRatio?: string;
|
|
665
|
+
markerStart?: string;
|
|
666
|
+
markerMid?: string;
|
|
667
|
+
markerEnd?: string;
|
|
668
|
+
vectorEffect?: string;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
export { Fragment, JSX, jsx, jsxDEV, jsxs };
|