vasille-web 3.1.3 → 3.1.4

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.
@@ -1,4 +1,4 @@
1
- import type { StyleProps } from "../src/spec/css.d.ts";
1
+ import type { StyleProps } from "../spec/css.d.ts";
2
2
 
3
3
  export {
4
4
  ref,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vasille-web",
3
- "version": "3.1.3",
3
+ "version": "3.1.4",
4
4
  "description": "The first Developer eXperience Orientated web front-end framework.",
5
5
  "main": "index.js",
6
6
  "types": "./index.d.ts",
package/spec/css.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import type {ObsoletePropertiesHyphen, StandardPropertiesHyphen, VendorPropertiesHyphen} from "csstype";
2
+
3
+ export type RawStyleProps = StandardPropertiesHyphen<string | number | number[], string> &
4
+ VendorPropertiesHyphen<string | number | number[], string> &
5
+ ObsoletePropertiesHyphen<string | number | number[], string> &
6
+ {[variable: `--${string}`]: string};
7
+ export type StyleProps = {[K in keyof RawStyleProps]: RawStyleProps[K] | RawStyleProps[K][] };
package/spec/html.d.ts ADDED
@@ -0,0 +1,1062 @@
1
+ export type EventHandler<T> = (ev: T) => any;
2
+
3
+ export interface Tag<Attrs, Events> {
4
+ attrs: Attrs;
5
+ events: Events;
6
+ }
7
+
8
+ type TagEvents = {
9
+ [K in keyof HTMLElementEventMap]: EventHandler<HTMLElementEventMap[K]> | undefined;
10
+ };
11
+
12
+ interface TagAttrs {
13
+ id: string;
14
+ accesskey: string;
15
+ autocapitalize: "off" | "none" | "on" | "sentences" | "words" | "characters";
16
+ autofocus: "" | boolean;
17
+ contenteditable: "true" | "false" | "" | boolean;
18
+ dir: "ltr" | "rtl" | "auto";
19
+ draggable: "true" | "false" | "" | boolean;
20
+ enterkeyhint: "enter" | "done" | "go" | "next" | "previous" | "search" | "send";
21
+ hidden: "until-found" | "hidden" | "" | boolean;
22
+ inert: boolean;
23
+ inputmode: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
24
+ is: string;
25
+ itemid: string;
26
+ itemprop: string;
27
+ itemref: string;
28
+ itemscope: boolean;
29
+ itemtype: string;
30
+ lang: string;
31
+ nonce: string;
32
+ spellcheck: "true" | "false" | "" | boolean;
33
+ tabindex: number;
34
+ title: string;
35
+ translate: "yes" | "no" | "" | boolean;
36
+ }
37
+
38
+ interface MediaTagAttrs extends TagAttrs {
39
+ src: string;
40
+ crossorigin: "anonymous" | "use-credentials" | "" | boolean;
41
+ preload: "none" | "metadata" | "auto";
42
+ autoplay: boolean;
43
+ loop: boolean;
44
+ muted: boolean;
45
+ controls: boolean;
46
+ }
47
+
48
+ type MediaEvents = {
49
+ [K in keyof HTMLMediaElementEventMap]: EventHandler<HTMLMediaElementEventMap[K]> | undefined;
50
+ };
51
+
52
+ type VideoEvents = {
53
+ [K in keyof HTMLVideoElementEventMap]: EventHandler<HTMLVideoElementEventMap[K]> | undefined;
54
+ };
55
+
56
+ interface BaseAttrs extends TagAttrs {
57
+ href: string;
58
+ target: string;
59
+ }
60
+
61
+ interface LinkAttrs extends TagAttrs {
62
+ href: string;
63
+ crossorigin: "anonymous" | "use-credentials" | "" | boolean;
64
+ rel: string;
65
+ media: string;
66
+ integrity: string;
67
+ hreflang: string;
68
+ type: string;
69
+ referrerpolicy: string;
70
+ sizes: string;
71
+ imagesrcset: string;
72
+ imagesizes: string;
73
+ as: string;
74
+ blocking: boolean;
75
+ color: string;
76
+ }
77
+
78
+ interface MetaAttrs extends TagAttrs {
79
+ name: string;
80
+ "http-equiv": string;
81
+ content: string;
82
+ charset: string;
83
+ media: string;
84
+ }
85
+
86
+ interface StyleAttrs extends TagAttrs {
87
+ media: string;
88
+ blocking: string;
89
+ }
90
+
91
+ type BodyEvents = {
92
+ [K in keyof HTMLBodyElementEventMap]: EventHandler<HTMLBodyElementEventMap[K]> | undefined;
93
+ };
94
+
95
+ interface BlockQuoteAttrs extends TagAttrs {
96
+ cite: string;
97
+ }
98
+
99
+ interface OlAttrs extends TagAttrs {
100
+ reversed: boolean;
101
+ start: number;
102
+ type: "1" | "a" | "A" | "i" | "I";
103
+ }
104
+
105
+ interface AAttrs extends TagAttrs {
106
+ href: string;
107
+ target: string;
108
+ download: string;
109
+ ping: string;
110
+ hreflang: string;
111
+ type: string;
112
+ referrerpolicy: string;
113
+ }
114
+
115
+ interface QAttrs extends TagAttrs {
116
+ cite: string;
117
+ }
118
+
119
+ interface DataAttr extends TagAttrs {
120
+ value: string;
121
+ }
122
+
123
+ interface BdoAttrs extends TagAttrs {
124
+ dir: "ltr" | "rtl";
125
+ }
126
+
127
+ interface SourceAttrs extends TagAttrs {
128
+ type: string;
129
+ src: string;
130
+ srcset: string;
131
+ sizes: string;
132
+ media: string;
133
+ width: number;
134
+ height: number;
135
+ }
136
+
137
+ interface ImgAttrs extends TagAttrs {
138
+ alt: string;
139
+ src: string;
140
+ srcset: string;
141
+ sizes: string;
142
+ crossorigin: "anonymous" | "use-credentials" | "" | boolean;
143
+ usemap: string;
144
+ ismap: string;
145
+ width: number;
146
+ height: number;
147
+ referrerpolicy: string;
148
+ decoding: string;
149
+ loading: string;
150
+ }
151
+
152
+ interface IframeAttrs extends TagAttrs {
153
+ src: string;
154
+ srcdoc: string;
155
+ name: string;
156
+ sandbox: string;
157
+ allow: string;
158
+ allowfullscreen: string;
159
+ width: number;
160
+ height: number;
161
+ referrerpolicy: string;
162
+ loading: string;
163
+ }
164
+
165
+ interface EmbedAttrs extends TagAttrs {
166
+ src: string;
167
+ type: string;
168
+ width: number;
169
+ height: number;
170
+ }
171
+
172
+ interface ObjectAttrs extends TagAttrs {
173
+ data: string;
174
+ type: string;
175
+ name: string;
176
+ form: string;
177
+ width: number;
178
+ height: number;
179
+ }
180
+
181
+ interface ParamAttrs extends TagAttrs {
182
+ name: string;
183
+ value: string;
184
+ }
185
+
186
+ interface VideoAttrs extends MediaTagAttrs {
187
+ poster: string;
188
+ playsinline: boolean;
189
+ width: number;
190
+ height: number;
191
+ }
192
+
193
+ interface TrackAttrs extends TagAttrs {
194
+ kind: string;
195
+ src: string;
196
+ srclang: string;
197
+ label: string;
198
+ defautl: boolean;
199
+ }
200
+
201
+ interface MapAttrs extends TagAttrs {
202
+ name: string;
203
+ }
204
+
205
+ interface AreaAttrs extends TagAttrs {
206
+ alt: string;
207
+ coords: string;
208
+ shape: string;
209
+ href: string;
210
+ target: string;
211
+ download: string;
212
+ ping: string;
213
+ rel: string;
214
+ referrerpolicy: string;
215
+ }
216
+
217
+ interface ColAttrs extends TagAttrs {
218
+ span: number;
219
+ }
220
+
221
+ interface TdAttrs extends TagAttrs {
222
+ colspan: number;
223
+ rowspan: number;
224
+ headers: string;
225
+ }
226
+
227
+ interface ThAttrs extends TdAttrs {
228
+ scope: string;
229
+ abbr: string;
230
+ }
231
+
232
+ interface FormAttrs extends TagAttrs {
233
+ "accept-charset": string;
234
+ action: string;
235
+ autocomplete: string;
236
+ enctype: string;
237
+ method: string;
238
+ name: string;
239
+ novalidate: string;
240
+ target: string;
241
+ rel: string;
242
+ }
243
+
244
+ interface LabelAttrs extends TagAttrs {
245
+ for: string;
246
+ }
247
+
248
+ interface InputAttrs extends TagAttrs {
249
+ accept: string;
250
+ alt: string;
251
+ autocomplete: boolean;
252
+ checked: boolean;
253
+ dirname: string;
254
+ disabled: boolean;
255
+ form: string;
256
+ formaction: string;
257
+ formenctype: string;
258
+ formmethod: string;
259
+ formnovalidate: string;
260
+ formtarget: string;
261
+ height: number;
262
+ list: string;
263
+ max: number;
264
+ maxlength: number;
265
+ min: number;
266
+ minlength: number;
267
+ multiple: boolean;
268
+ name: string;
269
+ pattern: string;
270
+ placeholder: string;
271
+ readonly: string;
272
+ required: string;
273
+ size: number;
274
+ src: string;
275
+ step: string;
276
+ type: string;
277
+ width: number;
278
+ }
279
+
280
+ interface ButtonAttrs extends TagAttrs {
281
+ disabled: boolean;
282
+ form: string;
283
+ formaction: string;
284
+ formenctype: string;
285
+ formmethod: string;
286
+ formnovalidate: string;
287
+ formtarget: string;
288
+ name: string;
289
+ type: string;
290
+ value: string;
291
+ }
292
+
293
+ interface SelectAttrs extends TagAttrs {
294
+ autocomplete: boolean;
295
+ disabled: boolean;
296
+ form: string;
297
+ multiple: boolean;
298
+ name: string;
299
+ required: boolean;
300
+ size: number;
301
+ }
302
+
303
+ interface OptgroupAttrs extends TagAttrs {
304
+ disabled: boolean;
305
+ label: string;
306
+ }
307
+
308
+ interface OptionAttrs extends TagAttrs {
309
+ disabled: boolean;
310
+ label: string;
311
+ selected: boolean;
312
+ value: string;
313
+ }
314
+
315
+ interface TextareaAttrs extends TagAttrs {
316
+ autocomplete: boolean;
317
+ cols: number;
318
+ dirname: string;
319
+ disabled: boolean;
320
+ form: string;
321
+ maxlength: number;
322
+ minlength: number;
323
+ name: string;
324
+ placeholder: string;
325
+ readonly: boolean;
326
+ required: boolean;
327
+ rows: number;
328
+ wrap: string;
329
+ }
330
+
331
+ interface OutputAttrs extends TagAttrs {
332
+ for: string;
333
+ form: string;
334
+ name: string;
335
+ }
336
+
337
+ interface ProgressAttrs extends TagAttrs {
338
+ value: number;
339
+ max: number;
340
+ }
341
+
342
+ interface MeterAttrs extends TagAttrs {
343
+ value: number;
344
+ min: number;
345
+ max: number;
346
+ low: number;
347
+ high: number;
348
+ optimum: number;
349
+ }
350
+
351
+ interface FieldsetAttrs extends TagAttrs {
352
+ disabled: boolean;
353
+ form: string;
354
+ name: string;
355
+ }
356
+
357
+ interface DetailsAttrs extends TagAttrs {
358
+ open: boolean;
359
+ }
360
+
361
+ export interface HtmlTagMap {
362
+ a: Tag<AAttrs, TagEvents>;
363
+ abbr: Tag<TagAttrs, TagEvents>;
364
+ address: Tag<TagAttrs, TagEvents>;
365
+ area: Tag<AreaAttrs, TagEvents>;
366
+ article: Tag<TagAttrs, TagEvents>;
367
+ aside: Tag<TagAttrs, TagEvents>;
368
+ audio: Tag<MediaTagAttrs, MediaEvents>;
369
+ b: Tag<TagAttrs, TagEvents>;
370
+ base: Tag<BaseAttrs, TagEvents>;
371
+ bdi: Tag<TagAttrs, TagEvents>;
372
+ bdo: Tag<BdoAttrs, TagEvents>;
373
+ blockquote: Tag<BlockQuoteAttrs, TagEvents>;
374
+ body: Tag<TagAttrs, BodyEvents>;
375
+ br: Tag<TagAttrs, TagEvents>;
376
+ button: Tag<ButtonAttrs, TagEvents>;
377
+ canvas: Tag<TagAttrs, TagEvents>;
378
+ caption: Tag<TagAttrs, TagEvents>;
379
+ cite: Tag<TagAttrs, TagEvents>;
380
+ code: Tag<TagAttrs, TagEvents>;
381
+ col: Tag<ColAttrs, TagEvents>;
382
+ colgroup: Tag<ColAttrs, TagEvents>;
383
+ data: Tag<DataAttr, TagEvents>;
384
+ datalist: Tag<TagAttrs, TagEvents>;
385
+ dd: Tag<TagAttrs, TagEvents>;
386
+ del: Tag<TagAttrs, TagEvents>;
387
+ details: Tag<DetailsAttrs, TagEvents>;
388
+ dfn: Tag<TagAttrs, TagEvents>;
389
+ dialog: Tag<TagAttrs, TagEvents>;
390
+ dir: Tag<TagAttrs, TagEvents>;
391
+ div: Tag<TagAttrs, TagEvents>;
392
+ dl: Tag<TagAttrs, TagEvents>;
393
+ dt: Tag<TagAttrs, TagEvents>;
394
+ em: Tag<TagAttrs, TagEvents>;
395
+ embed: Tag<EmbedAttrs, TagEvents>;
396
+ fieldset: Tag<FieldsetAttrs, TagEvents>;
397
+ figcaption: Tag<TagAttrs, TagEvents>;
398
+ figure: Tag<TagAttrs, TagEvents>;
399
+ font: Tag<TagAttrs, TagEvents>;
400
+ footer: Tag<TagAttrs, TagEvents>;
401
+ form: Tag<FormAttrs, TagEvents>;
402
+ frame: Tag<TagAttrs, TagEvents>;
403
+ frameset: Tag<TagAttrs, TagEvents>;
404
+ h1: Tag<TagAttrs, TagEvents>;
405
+ h2: Tag<TagAttrs, TagEvents>;
406
+ h3: Tag<TagAttrs, TagEvents>;
407
+ h4: Tag<TagAttrs, TagEvents>;
408
+ h5: Tag<TagAttrs, TagEvents>;
409
+ h6: Tag<TagAttrs, TagEvents>;
410
+ head: Tag<TagAttrs, TagEvents>;
411
+ header: Tag<TagAttrs, TagEvents>;
412
+ hgroup: Tag<TagAttrs, TagEvents>;
413
+ hr: Tag<TagAttrs, TagEvents>;
414
+ html: Tag<TagAttrs, TagEvents>;
415
+ i: Tag<TagAttrs, TagEvents>;
416
+ iframe: Tag<IframeAttrs, TagEvents>;
417
+ img: Tag<ImgAttrs, TagEvents>;
418
+ input: Tag<InputAttrs, TagEvents>;
419
+ ins: Tag<TagAttrs, TagEvents>;
420
+ kbd: Tag<TagAttrs, TagEvents>;
421
+ label: Tag<LabelAttrs, TagEvents>;
422
+ legend: Tag<TagAttrs, TagEvents>;
423
+ li: Tag<TagAttrs, TagEvents>;
424
+ link: Tag<LinkAttrs, TagEvents>;
425
+ main: Tag<TagAttrs, TagEvents>;
426
+ map: Tag<MapAttrs, TagEvents>;
427
+ mark: Tag<TagAttrs, TagEvents>;
428
+ marquee: Tag<TagAttrs, TagEvents>;
429
+ menu: Tag<TagAttrs, TagEvents>;
430
+ meta: Tag<MetaAttrs, TagEvents>;
431
+ meter: Tag<MeterAttrs, TagEvents>;
432
+ nav: Tag<TagAttrs, TagEvents>;
433
+ noscript: Tag<TagAttrs, TagEvents>;
434
+ object: Tag<ObjectAttrs, TagEvents>;
435
+ ol: Tag<OlAttrs, TagEvents>;
436
+ optgroup: Tag<OptgroupAttrs, TagEvents>;
437
+ option: Tag<OptionAttrs, TagEvents>;
438
+ output: Tag<OutputAttrs, TagEvents>;
439
+ p: Tag<TagAttrs, TagEvents>;
440
+ param: Tag<ParamAttrs, TagEvents>;
441
+ picture: Tag<TagAttrs, TagEvents>;
442
+ pre: Tag<TagAttrs, TagEvents>;
443
+ progress: Tag<ProgressAttrs, TagEvents>;
444
+ q: Tag<QAttrs, TagEvents>;
445
+ rp: Tag<TagAttrs, TagEvents>;
446
+ rt: Tag<TagAttrs, TagEvents>;
447
+ ruby: Tag<TagAttrs, TagEvents>;
448
+ s: Tag<TagAttrs, TagEvents>;
449
+ samp: Tag<TagAttrs, TagEvents>;
450
+ script: Tag<TagAttrs, TagEvents>;
451
+ section: Tag<TagAttrs, TagEvents>;
452
+ select: Tag<SelectAttrs, TagEvents>;
453
+ slot: Tag<TagAttrs, TagEvents>;
454
+ small: Tag<TagAttrs, TagEvents>;
455
+ source: Tag<SourceAttrs, TagEvents>;
456
+ span: Tag<TagAttrs, TagEvents>;
457
+ strong: Tag<TagAttrs, TagEvents>;
458
+ style: Tag<StyleAttrs, TagEvents>;
459
+ sub: Tag<TagAttrs, TagEvents>;
460
+ summary: Tag<TagAttrs, TagEvents>;
461
+ sup: Tag<TagAttrs, TagEvents>;
462
+ table: Tag<TagAttrs, TagEvents>;
463
+ tbody: Tag<TagAttrs, TagEvents>;
464
+ td: Tag<TdAttrs, TagEvents>;
465
+ template: Tag<TagAttrs, TagEvents>;
466
+ textarea: Tag<TextareaAttrs, TagEvents>;
467
+ tfoot: Tag<TagAttrs, TagEvents>;
468
+ th: Tag<ThAttrs, TagEvents>;
469
+ thead: Tag<TagAttrs, TagEvents>;
470
+ time: Tag<TagAttrs, TagEvents>;
471
+ title: Tag<TagAttrs, TagEvents>;
472
+ tr: Tag<TagAttrs, TagEvents>;
473
+ track: Tag<TrackAttrs, TagEvents>;
474
+ u: Tag<TagAttrs, TagEvents>;
475
+ ul: Tag<TagAttrs, TagEvents>;
476
+ var: Tag<TagAttrs, TagEvents>;
477
+ video: Tag<VideoAttrs, VideoEvents>;
478
+ wbr: Tag<TagAttrs, TagEvents>;
479
+ }
480
+
481
+ type HtmlOrSvgTag = HTMLElement | SVGElement;
482
+
483
+ export interface HtmlAndSvgEvents {
484
+ onabort?: ((this: HtmlOrSvgTag, ev: UIEvent) => any) | null;
485
+ onanimationcancel?: ((this: HtmlOrSvgTag, ev: AnimationEvent) => any) | null;
486
+ onanimationend?: ((this: HtmlOrSvgTag, ev: AnimationEvent) => any) | null;
487
+ onanimationiteration?: ((this: HtmlOrSvgTag, ev: AnimationEvent) => any) | null;
488
+ onanimationstart?: ((this: HtmlOrSvgTag, ev: AnimationEvent) => any) | null;
489
+ onauxclick?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
490
+ onblur?: ((this: HtmlOrSvgTag, ev: FocusEvent) => any) | null;
491
+ oncanplay?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
492
+ oncanplaythrough?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
493
+ onchange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
494
+ onclick?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
495
+ onclose?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
496
+ oncontextmenu?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
497
+ oncopy?: ((this: HtmlOrSvgTag, ev: ClipboardEvent) => any) | null;
498
+ oncut?: ((this: HtmlOrSvgTag, ev: ClipboardEvent) => any) | null;
499
+ oncuechange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
500
+ ondblclick?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
501
+ ondrag?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
502
+ ondragend?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
503
+ ondragenter?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
504
+ ondragleave?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
505
+ ondragover?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
506
+ ondragstart?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
507
+ ondrop?: ((this: HtmlOrSvgTag, ev: DragEvent) => any) | null;
508
+ ondurationchange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
509
+ onemptied?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
510
+ onended?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
511
+ onerror?: ((event: Event | string, source?: string, lineno?: number, colno?: number, error?: Error) => any) | null;
512
+ onfocus?: ((this: HtmlOrSvgTag, ev: FocusEvent) => any) | null;
513
+ onformdata?: ((this: HtmlOrSvgTag, ev: FormDataEvent) => any) | null;
514
+ onfullscreenchange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
515
+ onfullscreenerror?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
516
+ ongotpointercapture?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
517
+ oninput?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
518
+ oninvalid?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
519
+ onkeydown?: ((this: HtmlOrSvgTag, ev: KeyboardEvent) => any) | null;
520
+ onkeypress?: ((this: HtmlOrSvgTag, ev: KeyboardEvent) => any) | null;
521
+ onkeyup?: ((this: HtmlOrSvgTag, ev: KeyboardEvent) => any) | null;
522
+ onload?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
523
+ onloadeddata?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
524
+ onloadedmetadata?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
525
+ onloadstart?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
526
+ onlostpointercapture?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
527
+ onmousedown?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
528
+ onmouseenter?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
529
+ onmouseleave?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
530
+ onmousemove?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
531
+ onmouseout?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
532
+ onmouseover?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
533
+ onmouseup?: ((this: HtmlOrSvgTag, ev: MouseEvent) => any) | null;
534
+ onpaste?: ((this: HtmlOrSvgTag, ev: ClipboardEvent) => any) | null;
535
+ onpause?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
536
+ onplay?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
537
+ onplaying?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
538
+ onpointercancel?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
539
+ onpointerdown?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
540
+ onpointerenter?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
541
+ onpointerleave?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
542
+ onpointermove?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
543
+ onpointerout?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
544
+ onpointerover?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
545
+ onpointerup?: ((this: HtmlOrSvgTag, ev: PointerEvent) => any) | null;
546
+ onprogress?: ((this: HtmlOrSvgTag, ev: ProgressEvent) => any) | null;
547
+ onratechange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
548
+ onreset?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
549
+ onresize?: ((this: HtmlOrSvgTag, ev: UIEvent) => any) | null;
550
+ onscroll?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
551
+ onseeked?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
552
+ onseeking?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
553
+ onselect?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
554
+ onselectionchange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
555
+ onselectstart?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
556
+ onstalled?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
557
+ onsubmit?: ((this: HtmlOrSvgTag, ev: SubmitEvent) => any) | null;
558
+ onsuspend?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
559
+ ontimeupdate?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
560
+ ontoggle?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
561
+ ontouchcancel?: ((this: HtmlOrSvgTag, ev: TouchEvent) => any) | null | undefined;
562
+ ontouchend?: ((this: HtmlOrSvgTag, ev: TouchEvent) => any) | null | undefined;
563
+ ontouchmove?: ((this: HtmlOrSvgTag, ev: TouchEvent) => any) | null | undefined;
564
+ ontouchstart?: ((this: HtmlOrSvgTag, ev: TouchEvent) => any) | null | undefined;
565
+ ontransitioncancel?: ((this: HtmlOrSvgTag, ev: TransitionEvent) => any) | null;
566
+ ontransitionend?: ((this: HtmlOrSvgTag, ev: TransitionEvent) => any) | null;
567
+ ontransitionrun?: ((this: HtmlOrSvgTag, ev: TransitionEvent) => any) | null;
568
+ ontransitionstart?: ((this: HtmlOrSvgTag, ev: TransitionEvent) => any) | null;
569
+ onvolumechange?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
570
+ onwaiting?: ((this: HtmlOrSvgTag, ev: Event) => any) | null;
571
+ onwheel?: ((this: HtmlOrSvgTag, ev: WheelEvent) => any) | null;
572
+ }
573
+
574
+ interface HtmlTag extends HtmlAndSvgEvents {
575
+ autofocus?: boolean;
576
+ className?: string;
577
+ nonce?: string | undefined;
578
+ tabIndex?: number;
579
+ accessKey?: string;
580
+ autocapitalize?: string;
581
+ dir?: string;
582
+ draggable?: boolean;
583
+ hidden?: boolean;
584
+ innerText?: string;
585
+ lang?: string;
586
+ outerText?: string;
587
+ spellcheck?: boolean;
588
+ title?: string;
589
+ translate?: boolean;
590
+ }
591
+
592
+ interface AnchorTag extends HtmlTag {
593
+ download: string;
594
+ hreflang: string;
595
+ ping: string;
596
+ referrerPolicy: string;
597
+ rel: string;
598
+ target: string;
599
+ text: string;
600
+ type: string;
601
+ }
602
+
603
+ interface AreaTag extends HtmlTag {
604
+ alt: string;
605
+ coords: string;
606
+ download: string;
607
+ ping: string;
608
+ referrerPolicy: string;
609
+ rel: string;
610
+ shape: string;
611
+ target: string;
612
+ }
613
+
614
+ interface MediaTag extends HtmlTag {
615
+ autoplay?: boolean;
616
+ controls?: boolean;
617
+ crossOrigin?: string | null;
618
+ currentTime?: number;
619
+ defaultMuted?: boolean;
620
+ defaultPlaybackRate?: number;
621
+ disableRemotePlayback?: boolean;
622
+ loop?: boolean;
623
+ muted?: boolean;
624
+ onencrypted?: ((this: HTMLMediaElement, ev: MediaEncryptedEvent) => any) | null;
625
+ onwaitingforkey?: ((this: HTMLMediaElement, ev: Event) => any) | null;
626
+ playbackRate?: number;
627
+ preload?: "none" | "metadata" | "auto" | "";
628
+ src?: string;
629
+ srcObject?: MediaProvider | null;
630
+ volume?: number;
631
+ }
632
+
633
+ interface BaseTag extends HtmlTag {
634
+ href: string;
635
+ target: string;
636
+ }
637
+
638
+ interface QuoteTag extends HtmlTag {
639
+ cite: string;
640
+ }
641
+
642
+ interface ButtonTag extends HtmlTag {
643
+ disabled: boolean;
644
+ formAction: string;
645
+ formEnctype: string;
646
+ formMethod: string;
647
+ formNoValidate: boolean;
648
+ formTarget: string;
649
+ name: string;
650
+ type: string;
651
+ value: string;
652
+ }
653
+
654
+ interface CanvasTag extends HtmlTag {
655
+ height: number;
656
+ width: number;
657
+ }
658
+
659
+ interface TableColTag extends HtmlTag {
660
+ span: number;
661
+ }
662
+
663
+ interface DataTag extends HtmlTag {
664
+ value: string;
665
+ }
666
+
667
+ interface ModTag extends HtmlTag {
668
+ cite: string;
669
+ dateTime: string;
670
+ }
671
+
672
+ interface DetailsTag extends HtmlTag {
673
+ open: boolean;
674
+ }
675
+
676
+ interface EmbedTag extends HtmlTag {
677
+ height: string;
678
+ src: string;
679
+ type: string;
680
+ width: string;
681
+ }
682
+
683
+ interface FieldSetTag extends HtmlTag {
684
+ disabled: boolean;
685
+ name: string;
686
+ }
687
+
688
+ interface FormTag extends HtmlTag {
689
+ acceptCharset: string;
690
+ action: string;
691
+ autocomplete: string;
692
+ encoding: string;
693
+ enctype: string;
694
+ method: string;
695
+ name: string;
696
+ noValidate: boolean;
697
+ target: string;
698
+ }
699
+
700
+ interface IFrameTag extends HtmlTag {
701
+ allow: string;
702
+ allowFullscreen: boolean;
703
+ height: string;
704
+ name: string;
705
+ referrerPolicy: ReferrerPolicy;
706
+ src: string;
707
+ srcdoc: string;
708
+ width: string;
709
+ }
710
+
711
+ interface ImageTag extends HtmlTag {
712
+ alt: string;
713
+ crossOrigin: string | null;
714
+ decoding: "async" | "sync" | "auto";
715
+ height: number;
716
+ isMap: boolean;
717
+ loading: string;
718
+ referrerPolicy: string;
719
+ sizes: string;
720
+ src: string;
721
+ srcset: string;
722
+ useMap: string;
723
+ width: number;
724
+ }
725
+
726
+ interface InputTag extends HtmlTag {
727
+ accept: string;
728
+ alt: string;
729
+ autocomplete: string;
730
+ capture: string;
731
+ checked: boolean;
732
+ defaultChecked: boolean;
733
+ defaultValue: string;
734
+ dirName: string;
735
+ disabled: boolean;
736
+ files: FileList | null;
737
+ formAction: string;
738
+ formEnctype: string;
739
+ formMethod: string;
740
+ formNoValidate: boolean;
741
+ formTarget: string;
742
+ height: number;
743
+ indeterminate: boolean;
744
+ max: string;
745
+ maxLength: number;
746
+ min: string;
747
+ minLength: number;
748
+ multiple: boolean;
749
+ name: string;
750
+ pattern: string;
751
+ placeholder: string;
752
+ readOnly: boolean;
753
+ required: boolean;
754
+ selectionDirection: "forward" | "backward" | "none" | null;
755
+ selectionEnd: number | null;
756
+ selectionStart: number | null;
757
+ size: number;
758
+ src: string;
759
+ step: string;
760
+ type: string;
761
+ value: string;
762
+ valueAsDate: Date | null;
763
+ valueAsNumber: number;
764
+ webkitdirectory: boolean;
765
+ width: number;
766
+ }
767
+
768
+ interface LabelTag extends HtmlTag {
769
+ htmlFor: string;
770
+ }
771
+
772
+ interface LITag extends HtmlTag {
773
+ value: number;
774
+ }
775
+
776
+ interface LinkTag extends HtmlTag {
777
+ as: string;
778
+ crossOrigin: string | null;
779
+ disabled: boolean;
780
+ href: string;
781
+ hreflang: string;
782
+ imageSizes: string;
783
+ imageSrcset: string;
784
+ integrity: string;
785
+ media: string;
786
+ referrerPolicy: string;
787
+ rel: string;
788
+ type: string;
789
+ }
790
+
791
+ interface MapTag extends HtmlTag {
792
+ name: string;
793
+ }
794
+
795
+ interface MeterTag extends HtmlTag {
796
+ high: number;
797
+ low: number;
798
+ max: number;
799
+ min: number;
800
+ optimum: number;
801
+ value: number;
802
+ }
803
+
804
+ interface ObjectTag extends HtmlTag {
805
+ data: string;
806
+ height: string;
807
+ name: string;
808
+ type: string;
809
+ useMap: string;
810
+ width: string;
811
+ }
812
+
813
+ interface OListTag extends HtmlTag {
814
+ reversed: boolean;
815
+ start: number;
816
+ type: string;
817
+ }
818
+
819
+ interface OptGroupTag extends HtmlTag {
820
+ disabled: boolean;
821
+ label: string;
822
+ }
823
+
824
+ interface OptionTag extends HtmlTag {
825
+ defaultSelected: boolean;
826
+ disabled: boolean;
827
+ label: string;
828
+ selected: boolean;
829
+ text: string;
830
+ value: string;
831
+ }
832
+
833
+ interface OutputTag extends HtmlTag {
834
+ defaultValue: string;
835
+ name: string;
836
+ value: string;
837
+ }
838
+
839
+ interface ParamTag extends HtmlTag {
840
+ name: string;
841
+ value: string;
842
+ }
843
+
844
+ interface ProgressTag extends HtmlTag {
845
+ max: number;
846
+ value: number;
847
+ }
848
+
849
+ interface ScriptTag extends HtmlTag {
850
+ async: boolean;
851
+ crossOrigin: string | null;
852
+ defer: boolean;
853
+ integrity: string;
854
+ noModule: boolean;
855
+ referrerPolicy: string;
856
+ src: string;
857
+ text: string;
858
+ type: string;
859
+ }
860
+
861
+ interface SelectTag extends HtmlTag {
862
+ autocomplete: string;
863
+ disabled: boolean;
864
+ length: number;
865
+ multiple: boolean;
866
+ name: string;
867
+ required: boolean;
868
+ selectedIndex: number;
869
+ size: number;
870
+ value: string;
871
+ }
872
+
873
+ interface SlotTag extends HtmlTag {
874
+ name: string;
875
+ }
876
+
877
+ interface SourceTag extends HtmlTag {
878
+ media: string;
879
+ sizes: string;
880
+ src: string;
881
+ srcset: string;
882
+ type: string;
883
+ }
884
+
885
+ interface StyleTag extends HtmlTag {
886
+ media: string;
887
+ }
888
+
889
+ interface TableTag extends HtmlTag {
890
+ caption: HTMLTableCaptionElement | null;
891
+ tFoot: HTMLTableSectionElement | null;
892
+ tHead: HTMLTableSectionElement | null;
893
+ }
894
+
895
+ interface TableCellTag extends HtmlTag {
896
+ abbr: string;
897
+ colSpan: number;
898
+ headers: string;
899
+ rowSpan: number;
900
+ scope: string;
901
+ }
902
+
903
+ interface TextAreaTag extends HtmlTag {
904
+ autocomplete: string;
905
+ cols: number;
906
+ defaultValue: string;
907
+ dirName: string;
908
+ disabled: boolean;
909
+ maxLength: number;
910
+ minLength: number;
911
+ name: string;
912
+ placeholder: string;
913
+ readOnly: boolean;
914
+ required: boolean;
915
+ rows: number;
916
+ selectionDirection: "forward" | "backward" | "none";
917
+ selectionEnd: number;
918
+ selectionStart: number;
919
+ value: string;
920
+ wrap: string;
921
+ }
922
+
923
+ interface TimeTag extends HtmlTag {
924
+ dateTime: string;
925
+ }
926
+
927
+ interface TitleTag extends HtmlTag {
928
+ text: string;
929
+ }
930
+
931
+ interface TrackTag extends HtmlTag {
932
+ default: boolean;
933
+ kind: string;
934
+ label: string;
935
+ src: string;
936
+ srclang: string;
937
+ }
938
+
939
+ interface VideoTag extends MediaTag {
940
+ disablePictureInPicture?: boolean;
941
+ height?: number;
942
+ onenterpictureinpicture?: ((this: HTMLVideoElement, ev: Event) => any) | null;
943
+ onleavepictureinpicture?: ((this: HTMLVideoElement, ev: Event) => any) | null;
944
+ playsInline?: boolean;
945
+ poster?: string;
946
+ width?: number;
947
+ }
948
+
949
+ export interface TagNameMap {
950
+ a: AnchorTag;
951
+ abbr: HtmlTag;
952
+ address: HtmlTag;
953
+ area: AreaTag;
954
+ article: HtmlTag;
955
+ aside: HtmlTag;
956
+ audio: MediaTag;
957
+ b: HtmlTag;
958
+ base: BaseTag;
959
+ bdi: HtmlTag;
960
+ bdo: HtmlTag;
961
+ blockquote: QuoteTag;
962
+ body: HtmlTag;
963
+ br: HtmlTag;
964
+ button: ButtonTag;
965
+ canvas: CanvasTag;
966
+ caption: HtmlTag;
967
+ cite: HtmlTag;
968
+ code: HtmlTag;
969
+ col: TableColTag;
970
+ colgroup: TableColTag;
971
+ data: DataTag;
972
+ datalist: HtmlTag;
973
+ dd: HtmlTag;
974
+ del: ModTag;
975
+ details: DetailsTag;
976
+ dfn: HtmlTag;
977
+ dialog: HtmlTag;
978
+ div: HtmlTag;
979
+ dl: HtmlTag;
980
+ dt: HtmlTag;
981
+ em: HtmlTag;
982
+ embed: EmbedTag;
983
+ fieldset: FieldSetTag;
984
+ figcaption: HtmlTag;
985
+ figure: HtmlTag;
986
+ footer: HtmlTag;
987
+ form: FormTag;
988
+ h1: HtmlTag;
989
+ h2: HtmlTag;
990
+ h3: HtmlTag;
991
+ h4: HtmlTag;
992
+ h5: HtmlTag;
993
+ h6: HtmlTag;
994
+ head: HtmlTag;
995
+ header: HtmlTag;
996
+ hgroup: HtmlTag;
997
+ hr: HtmlTag;
998
+ html: HtmlTag;
999
+ i: HtmlTag;
1000
+ iframe: IFrameTag;
1001
+ img: ImageTag;
1002
+ input: InputTag;
1003
+ ins: ModTag;
1004
+ kbd: HtmlTag;
1005
+ label: LabelTag;
1006
+ legend: HtmlTag;
1007
+ li: LITag;
1008
+ link: LinkTag;
1009
+ main: HtmlTag;
1010
+ map: MapTag;
1011
+ mark: HtmlTag;
1012
+ menu: HtmlTag;
1013
+ meta: HtmlTag;
1014
+ meter: MeterTag;
1015
+ nav: HtmlTag;
1016
+ noscript: HtmlTag;
1017
+ object: ObjectTag;
1018
+ ol: OListTag;
1019
+ optgroup: OptGroupTag;
1020
+ option: OptionTag;
1021
+ output: OutputTag;
1022
+ p: HtmlTag;
1023
+ param: ParamTag;
1024
+ picture: HtmlTag;
1025
+ pre: HtmlTag;
1026
+ progress: ProgressTag;
1027
+ q: QuoteTag;
1028
+ rp: HtmlTag;
1029
+ rt: HtmlTag;
1030
+ ruby: HtmlTag;
1031
+ s: HtmlTag;
1032
+ samp: HtmlTag;
1033
+ script: ScriptTag;
1034
+ section: HtmlTag;
1035
+ select: SelectTag;
1036
+ slot: SlotTag;
1037
+ small: HtmlTag;
1038
+ source: SourceTag;
1039
+ span: HtmlTag;
1040
+ strong: HtmlTag;
1041
+ style: StyleTag;
1042
+ sub: HtmlTag;
1043
+ summary: HtmlTag;
1044
+ sup: HtmlTag;
1045
+ table: TableTag;
1046
+ tbody: HtmlTag;
1047
+ td: TableCellTag;
1048
+ template: HtmlTag;
1049
+ textarea: TextAreaTag;
1050
+ tfoot: HtmlTag;
1051
+ th: TableCellTag;
1052
+ thead: HtmlTag;
1053
+ time: TimeTag;
1054
+ title: TitleTag;
1055
+ tr: HtmlTag;
1056
+ track: TrackTag;
1057
+ u: HtmlTag;
1058
+ ul: HtmlTag;
1059
+ var: HtmlTag;
1060
+ video: VideoTag;
1061
+ wbr: HtmlTag;
1062
+ }
package/types/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { StyleProps } from "./spec/css.js";
1
+ import { StyleProps } from "../spec/css.js";
2
2
  export { compose, Debug, Delay, Else, ElseIf, For, If, Slot, Watch, awaited, store, } from "vasille-dx";
3
3
  export type { ref, bind, calculate, forward, arrayModel, setModel, mapModel, reactiveObject, value, watch, } from "vasille-dx";
4
4
  export type { theme, tablet, dark, mobile, laptop, prefersLight, prefersDark, setMobileMaxWidth, setTabletMaxWidth, setLaptopMaxWidth, } from "vasille-css";
@@ -1,5 +1,5 @@
1
- import type { RawStyleProps } from "./spec/css.d.ts";
2
- import type { HtmlTagMap } from "./spec/html.d.ts";
1
+ import type { RawStyleProps } from "../spec/css.d.ts";
2
+ import type { HtmlTagMap } from "../spec/html.d.ts";
3
3
  type prefixedObject<T, P extends string> = {
4
4
  [K in keyof T as K extends string ? `${P}${K}` : never]?: T[K];
5
5
  };