@typesafe-html5/typescript 0.2.61 → 0.2.72
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/build-all.mjs +54 -0
- package/dist/block/article/article.js +465 -0
- package/dist/block/article/article.js.map +7 -0
- package/dist/block/aside/aside.js +476 -0
- package/dist/block/aside/aside.js.map +7 -0
- package/dist/block/audio/audio.js +454 -0
- package/dist/block/audio/audio.js.map +7 -0
- package/dist/block/blockquote/blockquote.js +476 -0
- package/dist/block/blockquote/blockquote.js.map +7 -0
- package/dist/block/body/body.js +378 -0
- package/dist/block/body/body.js.map +7 -0
- package/dist/block/canvas/canvas.js +487 -0
- package/dist/block/canvas/canvas.js.map +7 -0
- package/dist/block/caption/caption.js +465 -0
- package/dist/block/caption/caption.js.map +7 -0
- package/dist/block/colgroup/colgroup.js +190 -0
- package/dist/block/colgroup/colgroup.js.map +7 -0
- package/dist/block/datalist/datalist.js +465 -0
- package/dist/block/datalist/datalist.js.map +7 -0
- package/dist/block/dd/dd.js +422 -0
- package/dist/block/dd/dd.js.map +7 -0
- package/dist/block/del/del.js +487 -0
- package/dist/block/del/del.js.map +7 -0
- package/dist/block/details/details.js +520 -0
- package/dist/block/details/details.js.map +7 -0
- package/dist/block/dialog/dialog.js +520 -0
- package/dist/block/dialog/dialog.js.map +7 -0
- package/dist/block/div/div.js +520 -0
- package/dist/block/div/div.js.map +7 -0
- package/dist/block/dl/dl.js +465 -0
- package/dist/block/dl/dl.js.map +7 -0
- package/dist/block/dt/dt.js +422 -0
- package/dist/block/dt/dt.js.map +7 -0
- package/dist/block/embed/embed.js +333 -0
- package/dist/block/embed/embed.js.map +7 -0
- package/dist/block/fieldset/fieldset.js +509 -0
- package/dist/block/fieldset/fieldset.js.map +7 -0
- package/dist/block/figcaption/figcaption.js +465 -0
- package/dist/block/figcaption/figcaption.js.map +7 -0
- package/dist/block/figure/figure.js +465 -0
- package/dist/block/figure/figure.js.map +7 -0
- package/dist/block/footer/footer.js +476 -0
- package/dist/block/footer/footer.js.map +7 -0
- package/dist/block/form/form.js +443 -0
- package/dist/block/form/form.js.map +7 -0
- package/dist/block/h1/h1.js +454 -0
- package/dist/block/h1/h1.js.map +7 -0
- package/dist/block/h2/h2.js +454 -0
- package/dist/block/h2/h2.js.map +7 -0
- package/dist/block/h3/h3.js +454 -0
- package/dist/block/h3/h3.js.map +7 -0
- package/dist/block/h4/h4.js +454 -0
- package/dist/block/h4/h4.js.map +7 -0
- package/dist/block/h5/h5.js +454 -0
- package/dist/block/h5/h5.js.map +7 -0
- package/dist/block/h6/h6.js +454 -0
- package/dist/block/h6/h6.js.map +7 -0
- package/dist/block/header/header.js +322 -0
- package/dist/block/header/header.js.map +7 -0
- package/dist/block/hgroup/hgroup.js +465 -0
- package/dist/block/hgroup/hgroup.js.map +7 -0
- package/dist/block/hr/hr.js +169 -0
- package/dist/block/hr/hr.js.map +7 -0
- package/dist/block/html/html.js +92 -0
- package/dist/block/html/html.js.map +7 -0
- package/dist/block/iframe/iframe.js +465 -0
- package/dist/block/iframe/iframe.js.map +7 -0
- package/dist/block/ins/ins.js +487 -0
- package/dist/block/ins/ins.js.map +7 -0
- package/dist/block/legend/legend.js +465 -0
- package/dist/block/legend/legend.js.map +7 -0
- package/dist/block/li/li.js +488 -0
- package/dist/block/li/li.js.map +7 -0
- package/dist/block/main/main.js +444 -0
- package/dist/block/main/main.js.map +7 -0
- package/dist/block/map/map.js +476 -0
- package/dist/block/map/map.js.map +7 -0
- package/dist/block/menu/menu.js +498 -0
- package/dist/block/menu/menu.js.map +7 -0
- package/dist/block/nav/nav.js +455 -0
- package/dist/block/nav/nav.js.map +7 -0
- package/dist/block/noscript/noscript.js +311 -0
- package/dist/block/noscript/noscript.js.map +7 -0
- package/dist/block/object/object.js +542 -0
- package/dist/block/object/object.js.map +7 -0
- package/dist/block/ol/ol.js +542 -0
- package/dist/block/ol/ol.js.map +7 -0
- package/dist/block/optgroup/optgroup.js +476 -0
- package/dist/block/optgroup/optgroup.js.map +7 -0
- package/dist/block/option/option.js +542 -0
- package/dist/block/option/option.js.map +7 -0
- package/dist/block/p/p.js +465 -0
- package/dist/block/p/p.js.map +7 -0
- package/dist/block/picture/picture.js +465 -0
- package/dist/block/picture/picture.js.map +7 -0
- package/dist/block/pre/pre.js +465 -0
- package/dist/block/pre/pre.js.map +7 -0
- package/dist/block/section/section.js +487 -0
- package/dist/block/section/section.js.map +7 -0
- package/dist/block/summary/summary.js +466 -0
- package/dist/block/summary/summary.js.map +7 -0
- package/dist/block/table/table.js +509 -0
- package/dist/block/table/table.js.map +7 -0
- package/dist/block/tbody/tbody.js +465 -0
- package/dist/block/tbody/tbody.js.map +7 -0
- package/dist/block/td/td.js +575 -0
- package/dist/block/td/td.js.map +7 -0
- package/dist/block/template/template.js +465 -0
- package/dist/block/template/template.js.map +7 -0
- package/dist/block/tfoot/tfoot.js +465 -0
- package/dist/block/tfoot/tfoot.js.map +7 -0
- package/dist/block/th/th.js +586 -0
- package/dist/block/th/th.js.map +7 -0
- package/dist/block/thead/thead.js +465 -0
- package/dist/block/thead/thead.js.map +7 -0
- package/dist/block/tr/tr.js +586 -0
- package/dist/block/tr/tr.js.map +7 -0
- package/dist/block/ul/ul.js +509 -0
- package/dist/block/ul/ul.js.map +7 -0
- package/dist/block/video/video.js +575 -0
- package/dist/block/video/video.js.map +7 -0
- package/dist/index.js +48830 -0
- package/dist/index.js.map +7 -0
- package/dist/inline/a/a.js +586 -0
- package/dist/inline/a/a.js.map +7 -0
- package/dist/inline/abbr/abbr.js +454 -0
- package/dist/inline/abbr/abbr.js.map +7 -0
- package/dist/inline/address/address.js +443 -0
- package/dist/inline/address/address.js.map +7 -0
- package/dist/inline/b/b.js +465 -0
- package/dist/inline/b/b.js.map +7 -0
- package/dist/inline/bdi/bdi.js +454 -0
- package/dist/inline/bdi/bdi.js.map +7 -0
- package/dist/inline/bdo/bdo.js +465 -0
- package/dist/inline/bdo/bdo.js.map +7 -0
- package/dist/inline/button/button.js +685 -0
- package/dist/inline/button/button.js.map +7 -0
- package/dist/inline/cite/cite.js +465 -0
- package/dist/inline/cite/cite.js.map +7 -0
- package/dist/inline/code/code.js +465 -0
- package/dist/inline/code/code.js.map +7 -0
- package/dist/inline/data/data.js +476 -0
- package/dist/inline/data/data.js.map +7 -0
- package/dist/inline/dfn/dfn.js +465 -0
- package/dist/inline/dfn/dfn.js.map +7 -0
- package/dist/inline/em/em.js +465 -0
- package/dist/inline/em/em.js.map +7 -0
- package/dist/inline/i/i.js +465 -0
- package/dist/inline/i/i.js.map +7 -0
- package/dist/inline/img/img.js +399 -0
- package/dist/inline/img/img.js.map +7 -0
- package/dist/inline/input/input.js +938 -0
- package/dist/inline/input/input.js.map +7 -0
- package/dist/inline/kbd/kbd.js +465 -0
- package/dist/inline/kbd/kbd.js.map +7 -0
- package/dist/inline/label/label.js +487 -0
- package/dist/inline/label/label.js.map +7 -0
- package/dist/inline/mark/mark.js +465 -0
- package/dist/inline/mark/mark.js.map +7 -0
- package/dist/inline/meter/meter.js +498 -0
- package/dist/inline/meter/meter.js.map +7 -0
- package/dist/inline/output/output.js +410 -0
- package/dist/inline/output/output.js.map +7 -0
- package/dist/inline/progress/progress.js +454 -0
- package/dist/inline/progress/progress.js.map +7 -0
- package/dist/inline/q/q.js +476 -0
- package/dist/inline/q/q.js.map +7 -0
- package/dist/inline/rp/rp.js +465 -0
- package/dist/inline/rp/rp.js.map +7 -0
- package/dist/inline/rt/rt.js +465 -0
- package/dist/inline/rt/rt.js.map +7 -0
- package/dist/inline/ruby/ruby.js +465 -0
- package/dist/inline/ruby/ruby.js.map +7 -0
- package/dist/inline/s/s.js +465 -0
- package/dist/inline/s/s.js.map +7 -0
- package/dist/inline/samp/samp.js +465 -0
- package/dist/inline/samp/samp.js.map +7 -0
- package/dist/inline/select/select.js +674 -0
- package/dist/inline/select/select.js.map +7 -0
- package/dist/inline/slot/slot.js +476 -0
- package/dist/inline/slot/slot.js.map +7 -0
- package/dist/inline/small/small.js +465 -0
- package/dist/inline/small/small.js.map +7 -0
- package/dist/inline/span/span.js +465 -0
- package/dist/inline/span/span.js.map +7 -0
- package/dist/inline/strong/strong.js +465 -0
- package/dist/inline/strong/strong.js.map +7 -0
- package/dist/inline/sub/sub.js +465 -0
- package/dist/inline/sub/sub.js.map +7 -0
- package/dist/inline/sup/sup.js +465 -0
- package/dist/inline/sup/sup.js.map +7 -0
- package/dist/inline/svg/svg.js +542 -0
- package/dist/inline/svg/svg.js.map +7 -0
- package/dist/inline/textarea/textarea.js +718 -0
- package/dist/inline/textarea/textarea.js.map +7 -0
- package/dist/inline/time/time.js +476 -0
- package/dist/inline/time/time.js.map +7 -0
- package/dist/inline/u/u.js +465 -0
- package/dist/inline/u/u.js.map +7 -0
- package/dist/inline/var/var.js +465 -0
- package/dist/inline/var/var.js.map +7 -0
- package/dist/void/area/area.js +388 -0
- package/dist/void/area/area.js.map +7 -0
- package/dist/void/base/base.js +37 -0
- package/dist/void/base/base.js.map +7 -0
- package/dist/void/br/br.js +135 -0
- package/dist/void/br/br.js.map +7 -0
- package/dist/void/col/col.js +135 -0
- package/dist/void/col/col.js.map +7 -0
- package/dist/void/head/head.js +37 -0
- package/dist/void/head/head.js.map +7 -0
- package/dist/void/link/link.js +213 -0
- package/dist/void/link/link.js.map +7 -0
- package/dist/void/meta/meta.js +147 -0
- package/dist/void/meta/meta.js.map +7 -0
- package/dist/void/param/param.js +146 -0
- package/dist/void/param/param.js.map +7 -0
- package/dist/void/script/script.js +213 -0
- package/dist/void/script/script.js.map +7 -0
- package/dist/void/source/source.js +168 -0
- package/dist/void/source/source.js.map +7 -0
- package/dist/void/style/style.js +147 -0
- package/dist/void/style/style.js.map +7 -0
- package/dist/void/title/title.js +37 -0
- package/dist/void/title/title.js.map +7 -0
- package/dist/void/track/track.js +190 -0
- package/dist/void/track/track.js.map +7 -0
- package/dist/void/wbr/wbr.js +124 -0
- package/dist/void/wbr/wbr.js.map +7 -0
- package/package.json +4 -4
- package/src/block/article/article.ts +649 -0
- package/{block → src/block}/aside/aside.ts +144 -1
- package/{block → src/block}/audio/audio.ts +128 -1
- package/src/block/blockquote/blockquote.ts +665 -0
- package/{block → src/block}/body/body.ts +91 -1
- package/{block → src/block}/canvas/canvas.ts +144 -1
- package/src/block/caption/caption.ts +649 -0
- package/{block → src/block}/colgroup/colgroup.ts +96 -1
- package/src/block/datalist/datalist.ts +649 -0
- package/{block/dialog/dialog.ts → src/block/dd/dd.ts} +114 -88
- package/{block → src/block}/del/del.ts +144 -1
- package/src/block/details/details.ts +729 -0
- package/src/block/dialog/dialog.ts +729 -0
- package/src/block/div/div.ts +729 -0
- package/src/block/dl/dl.ts +649 -0
- package/{block/details/details.ts → src/block/dt/dt.ts} +114 -88
- package/{block → src/block}/embed/embed.ts +144 -1
- package/{block → src/block}/fieldset/fieldset.ts +144 -1
- package/src/block/figcaption/figcaption.ts +649 -0
- package/src/block/figure/figure.ts +649 -0
- package/src/block/footer/footer.ts +665 -0
- package/{block → src/block}/form/form.ts +132 -5
- package/src/block/h1/h1.ts +633 -0
- package/src/block/h2/h2.ts +633 -0
- package/src/block/h3/h3.ts +633 -0
- package/src/block/h4/h4.ts +633 -0
- package/src/block/h5/h5.ts +633 -0
- package/src/block/h6/h6.ts +633 -0
- package/{block → src/block}/header/header.ts +144 -1
- package/src/block/hgroup/hgroup.ts +649 -0
- package/{block → src/block}/hr/hr.ts +59 -1
- package/{block → src/block}/html/html.ts +27 -1
- package/{block → src/block}/iframe/iframe.ts +112 -1
- package/{block → src/block}/ins/ins.ts +144 -1
- package/src/block/legend/legend.ts +649 -0
- package/{block → src/block}/li/li.ts +107 -1
- package/{block/div/div.ts → src/block/main/main.ts} +112 -54
- package/src/block/map/map.ts +665 -0
- package/{block → src/block}/menu/menu.ts +144 -1
- package/{block → src/block}/nav/nav.ts +107 -1
- package/{block → src/block}/noscript/noscript.ts +144 -1
- package/{block → src/block}/object/object.ts +144 -1
- package/{block → src/block}/ol/ol.ts +144 -1
- package/{block → src/block}/optgroup/optgroup.ts +144 -1
- package/{block → src/block}/option/option.ts +144 -1
- package/src/block/p/p.ts +649 -0
- package/src/block/picture/picture.ts +649 -0
- package/src/block/pre/pre.ts +649 -0
- package/{block → src/block}/section/section.ts +144 -1
- package/{block → src/block}/summary/summary.ts +107 -1
- package/{block → src/block}/table/table.ts +144 -1
- package/src/block/tbody/tbody.ts +649 -0
- package/{block → src/block}/td/td.ts +144 -1
- package/src/block/template/template.ts +649 -0
- package/src/block/tfoot/tfoot.ts +649 -0
- package/{block → src/block}/th/th.ts +144 -1
- package/src/block/thead/thead.ts +649 -0
- package/{block → src/block}/tr/tr.ts +144 -1
- package/{block → src/block}/ul/ul.ts +144 -1
- package/{block → src/block}/video/video.ts +144 -1
- package/{inline → src/inline}/a/a.ts +144 -1
- package/src/inline/abbr/abbr.ts +633 -0
- package/src/inline/address/address.ts +617 -0
- package/src/inline/b/b.ts +649 -0
- package/src/inline/bdi/bdi.ts +633 -0
- package/src/inline/bdo/bdo.ts +649 -0
- package/{inline → src/inline}/button/button.ts +145 -2
- package/src/inline/cite/cite.ts +649 -0
- package/src/inline/code/code.ts +649 -0
- package/src/inline/data/data.ts +665 -0
- package/src/inline/dfn/dfn.ts +649 -0
- package/src/inline/em/em.ts +649 -0
- package/src/inline/i/i.ts +649 -0
- package/{inline → src/inline}/img/img.ts +112 -1
- package/{inline → src/inline}/input/input.ts +145 -2
- package/src/inline/kbd/kbd.ts +649 -0
- package/{inline → src/inline}/label/label.ts +144 -1
- package/src/inline/mark/mark.ts +649 -0
- package/{inline → src/inline}/meter/meter.ts +144 -1
- package/{inline → src/inline}/output/output.ts +144 -1
- package/{inline → src/inline}/progress/progress.ts +144 -1
- package/src/inline/q/q.ts +665 -0
- package/src/inline/rp/rp.ts +649 -0
- package/src/inline/rt/rt.ts +649 -0
- package/src/inline/ruby/ruby.ts +649 -0
- package/src/inline/s/s.ts +649 -0
- package/src/inline/samp/samp.ts +649 -0
- package/{inline → src/inline}/select/select.ts +144 -1
- package/src/inline/slot/slot.ts +665 -0
- package/src/inline/small/small.ts +649 -0
- package/src/inline/span/span.ts +649 -0
- package/src/inline/strong/strong.ts +649 -0
- package/src/inline/sub/sub.ts +649 -0
- package/src/inline/sup/sup.ts +649 -0
- package/{inline → src/inline}/svg/svg.ts +144 -1
- package/{inline → src/inline}/textarea/textarea.ts +144 -1
- package/src/inline/time/time.ts +665 -0
- package/src/inline/u/u.ts +649 -0
- package/src/inline/var/var.ts +649 -0
- package/{void → src/void}/area/area.ts +144 -1
- package/{void → src/void}/base/base.ts +1 -1
- package/src/void/br/br.ts +172 -0
- package/src/void/col/col.ts +172 -0
- package/{void → src/void}/head/head.ts +1 -1
- package/{void → src/void}/link/link.ts +59 -1
- package/{void → src/void}/meta/meta.ts +59 -1
- package/src/void/param/param.ts +188 -0
- package/{void → src/void}/script/script.ts +59 -1
- package/src/void/source/source.ts +220 -0
- package/{void → src/void}/style/style.ts +59 -1
- package/{void → src/void}/title/title.ts +1 -1
- package/{void → src/void}/track/track.ts +96 -1
- package/src/void/wbr/wbr.ts +156 -0
- package/block/article/article.ts +0 -506
- package/block/blockquote/blockquote.ts +0 -522
- package/block/caption/caption.ts +0 -506
- package/block/datalist/datalist.ts +0 -506
- package/block/dd/dd.ts +0 -506
- package/block/dl/dl.ts +0 -506
- package/block/dt/dt.ts +0 -506
- package/block/figcaption/figcaption.ts +0 -506
- package/block/figure/figure.ts +0 -506
- package/block/footer/footer.ts +0 -522
- package/block/h1/h1.ts +0 -490
- package/block/h2/h2.ts +0 -490
- package/block/h3/h3.ts +0 -490
- package/block/h4/h4.ts +0 -490
- package/block/h5/h5.ts +0 -490
- package/block/h6/h6.ts +0 -490
- package/block/hgroup/hgroup.ts +0 -506
- package/block/legend/legend.ts +0 -506
- package/block/main/main.ts +0 -538
- package/block/map/map.ts +0 -522
- package/block/p/p.ts +0 -506
- package/block/picture/picture.ts +0 -506
- package/block/pre/pre.ts +0 -506
- package/block/tbody/tbody.ts +0 -506
- package/block/template/template.ts +0 -506
- package/block/tfoot/tfoot.ts +0 -506
- package/block/thead/thead.ts +0 -506
- package/inline/abbr/abbr.ts +0 -490
- package/inline/address/address.ts +0 -474
- package/inline/b/b.ts +0 -506
- package/inline/bdi/bdi.ts +0 -490
- package/inline/bdo/bdo.ts +0 -506
- package/inline/cite/cite.ts +0 -506
- package/inline/code/code.ts +0 -506
- package/inline/data/data.ts +0 -522
- package/inline/dfn/dfn.ts +0 -506
- package/inline/em/em.ts +0 -506
- package/inline/i/i.ts +0 -506
- package/inline/kbd/kbd.ts +0 -506
- package/inline/mark/mark.ts +0 -506
- package/inline/q/q.ts +0 -522
- package/inline/rp/rp.ts +0 -506
- package/inline/rt/rt.ts +0 -506
- package/inline/ruby/ruby.ts +0 -506
- package/inline/s/s.ts +0 -506
- package/inline/samp/samp.ts +0 -506
- package/inline/slot/slot.ts +0 -522
- package/inline/small/small.ts +0 -506
- package/inline/span/span.ts +0 -506
- package/inline/strong/strong.ts +0 -506
- package/inline/sub/sub.ts +0 -506
- package/inline/sup/sup.ts +0 -506
- package/inline/time/time.ts +0 -522
- package/inline/u/u.ts +0 -506
- package/inline/var/var.ts +0 -506
- package/void/br/br.ts +0 -77
- package/void/col/col.ts +0 -77
- package/void/param/param.ts +0 -93
- package/void/source/source.ts +0 -125
- package/void/wbr/wbr.ts +0 -61
- /package/{index.ts → src/index.ts} +0 -0
- /package/{tsconfig.json → src/tsconfig.json} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* THIS FILE IS AUTOGENERATED. DO NOT EDIT IT.
|
|
3
3
|
*
|
|
4
|
-
* @generated
|
|
4
|
+
* @generated January 2, 2026 15:45:45
|
|
5
5
|
* @component Option
|
|
6
6
|
* @description
|
|
7
7
|
*/
|
|
@@ -11,10 +11,18 @@ export interface OptionProps {
|
|
|
11
11
|
* Child content or elements
|
|
12
12
|
*/
|
|
13
13
|
children?: string | HTMLElement | (string | HTMLElement)[];
|
|
14
|
+
/**
|
|
15
|
+
* Keyboard shortcut to activate or focus the element
|
|
16
|
+
*/
|
|
17
|
+
accessKey?: string;
|
|
14
18
|
/**
|
|
15
19
|
* specifies a shortcut key (or keys) to activate or focus an element
|
|
16
20
|
*/
|
|
17
21
|
accesskey?: string | null | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Mapping of Alpine.js directives (shorthand or full) to their values (e.g., {@click: "do()"} or {"x-on:click":"do()"})
|
|
24
|
+
*/
|
|
25
|
+
'alpine-attributes'?: Record<string, string> | null | undefined;
|
|
18
26
|
/**
|
|
19
27
|
* Indicates whether assistive technologies should present the entire region as a whole when changes occur.
|
|
20
28
|
*/
|
|
@@ -79,10 +87,22 @@ export interface OptionProps {
|
|
|
79
87
|
* Represents the autocapitalize behavior of the element
|
|
80
88
|
*/
|
|
81
89
|
autocapitalize?: 'none' | 'sentences' | 'words' | 'characters' | null | undefined;
|
|
90
|
+
/**
|
|
91
|
+
* CSS class names
|
|
92
|
+
*/
|
|
93
|
+
className?: string;
|
|
94
|
+
/**
|
|
95
|
+
* Whether the element is editable
|
|
96
|
+
*/
|
|
97
|
+
contentEditable?: boolean | "true" | "false" | "inherit";
|
|
82
98
|
/**
|
|
83
99
|
* Indicates whether the element can be edited in place
|
|
84
100
|
*/
|
|
85
101
|
contenteditable?: 'true' | 'false' | 'inherit' | boolean | null | undefined;
|
|
102
|
+
/**
|
|
103
|
+
* Mapping of data-* attributes to their values (e.g., {"test":"value"} -> data-test="value")
|
|
104
|
+
*/
|
|
105
|
+
'data-attributes'?: Record<string, string> | null | undefined;
|
|
86
106
|
/**
|
|
87
107
|
* Represents the text direction of the element
|
|
88
108
|
*/
|
|
@@ -99,6 +119,10 @@ export interface OptionProps {
|
|
|
99
119
|
* Indicates whether the element is hidden
|
|
100
120
|
*/
|
|
101
121
|
hidden?: boolean | null | undefined;
|
|
122
|
+
/**
|
|
123
|
+
* Unique identifier
|
|
124
|
+
*/
|
|
125
|
+
id?: string;
|
|
102
126
|
/**
|
|
103
127
|
* used to specify the data entry mode for an input. It helps guide on-screen keyboards (especially on mobile devices) to show the appropriate layout for the expected input type
|
|
104
128
|
*/
|
|
@@ -135,6 +159,10 @@ export interface OptionProps {
|
|
|
135
159
|
* Represents the CSS inline style of the element
|
|
136
160
|
*/
|
|
137
161
|
style?: string | null | undefined;
|
|
162
|
+
/**
|
|
163
|
+
* Tab order position
|
|
164
|
+
*/
|
|
165
|
+
tabIndex?: number;
|
|
138
166
|
/**
|
|
139
167
|
* Represents a tab order of the element
|
|
140
168
|
*/
|
|
@@ -168,9 +196,26 @@ export class Option {
|
|
|
168
196
|
if (props.children !== undefined) {
|
|
169
197
|
this.setChildren(props.children);
|
|
170
198
|
}
|
|
199
|
+
if (props.accessKey !== undefined) {
|
|
200
|
+
this.element.setAttribute('accessKey', String(props.accessKey));
|
|
201
|
+
}
|
|
171
202
|
if (props.accesskey !== undefined) {
|
|
172
203
|
this.element.setAttribute('accesskey', String(props.accesskey));
|
|
173
204
|
}
|
|
205
|
+
if (props['alpine-attributes'] !== undefined) {
|
|
206
|
+
const __map = props['alpine-attributes'];
|
|
207
|
+
if (__map !== null && __map !== undefined) {
|
|
208
|
+
for (const __k in __map) {
|
|
209
|
+
const __v = (__map as any)[__k];
|
|
210
|
+
let __attr = __k;
|
|
211
|
+
if (__k.startsWith('@')) { __attr = 'x-on:' + __k.slice(1); }
|
|
212
|
+
else if (__k.startsWith(':')) { __attr = 'x-bind:' + __k.slice(1); }
|
|
213
|
+
else if (__k.startsWith('.')) { __attr = 'x-model' + __k; }
|
|
214
|
+
else if (!__k.startsWith('x-') && ['show','text','html','if','for','cloak','init','data','effect','ignore','ref','transition','teleport'].includes(__k)) { __attr = 'x-' + __k; }
|
|
215
|
+
this.element.setAttribute(__attr, String(__v));
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
174
219
|
if (props['aria-atomic'] !== undefined) {
|
|
175
220
|
this.setAriaAtomic(props['aria-atomic']);
|
|
176
221
|
}
|
|
@@ -219,9 +264,23 @@ export class Option {
|
|
|
219
264
|
if (props.autocapitalize !== undefined) {
|
|
220
265
|
this.setAutocapitalize(props.autocapitalize);
|
|
221
266
|
}
|
|
267
|
+
if (props.className !== undefined) {
|
|
268
|
+
this.element.setAttribute('className', String(props.className));
|
|
269
|
+
}
|
|
270
|
+
if (props.contentEditable !== undefined) {
|
|
271
|
+
this.element.setAttribute('contentEditable', String(props.contentEditable));
|
|
272
|
+
}
|
|
222
273
|
if (props.contenteditable !== undefined) {
|
|
223
274
|
this.setContenteditable(props.contenteditable);
|
|
224
275
|
}
|
|
276
|
+
if (props['data-attributes'] !== undefined) {
|
|
277
|
+
const __map = props['data-attributes'];
|
|
278
|
+
if (__map !== null && __map !== undefined) {
|
|
279
|
+
for (const __k in __map) {
|
|
280
|
+
this.element.setAttribute(`data-${__k}`, String((__map as any)[__k]));
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
225
284
|
if (props.dir !== undefined) {
|
|
226
285
|
this.setDir(props.dir);
|
|
227
286
|
}
|
|
@@ -234,6 +293,9 @@ export class Option {
|
|
|
234
293
|
if (props.hidden !== undefined) {
|
|
235
294
|
this.element.setAttribute('hidden', String(props.hidden));
|
|
236
295
|
}
|
|
296
|
+
if (props.id !== undefined) {
|
|
297
|
+
this.element.setAttribute('id', String(props.id));
|
|
298
|
+
}
|
|
237
299
|
if (props.inputmode !== undefined) {
|
|
238
300
|
this.setInputmode(props.inputmode);
|
|
239
301
|
}
|
|
@@ -261,6 +323,9 @@ export class Option {
|
|
|
261
323
|
if (props.style !== undefined) {
|
|
262
324
|
this.element.setAttribute('style', String(props.style));
|
|
263
325
|
}
|
|
326
|
+
if (props.tabIndex !== undefined) {
|
|
327
|
+
this.element.setAttribute('tabIndex', String(props.tabIndex));
|
|
328
|
+
}
|
|
264
329
|
if (props.tabindex !== undefined) {
|
|
265
330
|
this.element.setAttribute('tabindex', String(props.tabindex));
|
|
266
331
|
}
|
|
@@ -275,6 +340,15 @@ export class Option {
|
|
|
275
340
|
}
|
|
276
341
|
}
|
|
277
342
|
|
|
343
|
+
setAccessKey(value: string): this {
|
|
344
|
+
if (value === null || value === undefined) {
|
|
345
|
+
this.element.removeAttribute('accessKey');
|
|
346
|
+
} else {
|
|
347
|
+
this.element.setAttribute('accessKey', String(value));
|
|
348
|
+
}
|
|
349
|
+
return this;
|
|
350
|
+
}
|
|
351
|
+
|
|
278
352
|
setAccesskey(value: string | null | undefined): this {
|
|
279
353
|
if (value === null || value === undefined) {
|
|
280
354
|
this.element.removeAttribute('accesskey');
|
|
@@ -284,6 +358,25 @@ export class Option {
|
|
|
284
358
|
return this;
|
|
285
359
|
}
|
|
286
360
|
|
|
361
|
+
setAlpineAttributes(value: string | null | undefined): this {
|
|
362
|
+
if (value === null || value === undefined) {
|
|
363
|
+
// Remove all x-* Alpine attributes (best-effort)
|
|
364
|
+
for (const __a of Array.from(this.element.attributes)) {
|
|
365
|
+
if ((__a as Attr).name.startsWith('x-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
|
|
366
|
+
}
|
|
367
|
+
} else {
|
|
368
|
+
for (const __k in value as Record<string, string>) {
|
|
369
|
+
let __attr = __k;
|
|
370
|
+
if (__k.startsWith('@')) { __attr = 'x-on:' + __k.slice(1); }
|
|
371
|
+
else if (__k.startsWith(':')) { __attr = 'x-bind:' + __k.slice(1); }
|
|
372
|
+
else if (__k.startsWith('.')) { __attr = 'x-model' + __k; }
|
|
373
|
+
else if (!__k.startsWith('x-') && ['show','text','html','if','for','cloak','init','data','effect','ignore','ref','transition','teleport'].includes(__k)) { __attr = 'x-' + __k; }
|
|
374
|
+
this.element.setAttribute(__attr, String((value as any)[__k]));
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
return this;
|
|
378
|
+
}
|
|
379
|
+
|
|
287
380
|
setAriaAtomic(value: 'false' | 'true' | boolean | null | undefined): this {
|
|
288
381
|
if (value === null || value === undefined) {
|
|
289
382
|
this.element.removeAttribute('aria-atomic');
|
|
@@ -428,6 +521,24 @@ export class Option {
|
|
|
428
521
|
return this;
|
|
429
522
|
}
|
|
430
523
|
|
|
524
|
+
setClassName(value: string): this {
|
|
525
|
+
if (value === null || value === undefined) {
|
|
526
|
+
this.element.removeAttribute('className');
|
|
527
|
+
} else {
|
|
528
|
+
this.element.setAttribute('className', String(value));
|
|
529
|
+
}
|
|
530
|
+
return this;
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
setContentEditable(value: boolean | "true" | "false" | "inherit"): this {
|
|
534
|
+
if (value === true) {
|
|
535
|
+
this.element.setAttribute('contentEditable', '');
|
|
536
|
+
} else {
|
|
537
|
+
this.element.removeAttribute('contentEditable');
|
|
538
|
+
}
|
|
539
|
+
return this;
|
|
540
|
+
}
|
|
541
|
+
|
|
431
542
|
setContenteditable(value: 'true' | 'false' | 'inherit' | boolean | null | undefined): this {
|
|
432
543
|
if (value === null || value === undefined) {
|
|
433
544
|
this.element.removeAttribute('contenteditable');
|
|
@@ -437,6 +548,20 @@ export class Option {
|
|
|
437
548
|
return this;
|
|
438
549
|
}
|
|
439
550
|
|
|
551
|
+
setDataAttributes(value: Record<string, string>): this {
|
|
552
|
+
if (value === null || value === undefined) {
|
|
553
|
+
// Remove all data-* attributes (best-effort)
|
|
554
|
+
for (const __a of Array.from(this.element.attributes)) {
|
|
555
|
+
if ((__a as Attr).name.startsWith('data-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
|
|
556
|
+
}
|
|
557
|
+
} else {
|
|
558
|
+
for (const __k in value as Record<string, string>) {
|
|
559
|
+
this.element.setAttribute(`data-${__k}`, String((value as any)[__k]));
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
return this;
|
|
563
|
+
}
|
|
564
|
+
|
|
440
565
|
setDir(value: 'ltr' | 'rtl' | 'auto' | null | undefined): this {
|
|
441
566
|
if (value === null || value === undefined) {
|
|
442
567
|
this.element.removeAttribute('dir');
|
|
@@ -473,6 +598,15 @@ export class Option {
|
|
|
473
598
|
return this;
|
|
474
599
|
}
|
|
475
600
|
|
|
601
|
+
setId(value: string): this {
|
|
602
|
+
if (value === null || value === undefined) {
|
|
603
|
+
this.element.removeAttribute('id');
|
|
604
|
+
} else {
|
|
605
|
+
this.element.setAttribute('id', String(value));
|
|
606
|
+
}
|
|
607
|
+
return this;
|
|
608
|
+
}
|
|
609
|
+
|
|
476
610
|
setInputmode(value: 'none' | 'text' | 'decimal' | 'numeric' | 'email' | 'tel' | 'url' | 'search' | null | undefined): this {
|
|
477
611
|
if (value === null || value === undefined) {
|
|
478
612
|
this.element.removeAttribute('inputmode');
|
|
@@ -554,6 +688,15 @@ export class Option {
|
|
|
554
688
|
return this;
|
|
555
689
|
}
|
|
556
690
|
|
|
691
|
+
setTabIndex(value: number): this {
|
|
692
|
+
if (value === null || value === undefined) {
|
|
693
|
+
this.element.removeAttribute('tabIndex');
|
|
694
|
+
} else {
|
|
695
|
+
this.element.setAttribute('tabIndex', String(value));
|
|
696
|
+
}
|
|
697
|
+
return this;
|
|
698
|
+
}
|
|
699
|
+
|
|
557
700
|
setTabindex(value: number | null | undefined): this {
|
|
558
701
|
if (value === null || value === undefined) {
|
|
559
702
|
this.element.removeAttribute('tabindex');
|