@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 Select
|
|
6
6
|
* @description
|
|
7
7
|
*/
|
|
@@ -11,10 +11,18 @@ export interface SelectProps {
|
|
|
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
|
* Identifies the currently active child element (e.g., for autocomplete suggestions or composite widgets).
|
|
20
28
|
*/
|
|
@@ -119,10 +127,22 @@ export interface SelectProps {
|
|
|
119
127
|
* Indicates whether the element is hidden
|
|
120
128
|
*/
|
|
121
129
|
autofocus?: boolean | null | undefined;
|
|
130
|
+
/**
|
|
131
|
+
* CSS class names
|
|
132
|
+
*/
|
|
133
|
+
className?: string;
|
|
134
|
+
/**
|
|
135
|
+
* Whether the element is editable
|
|
136
|
+
*/
|
|
137
|
+
contentEditable?: boolean | "true" | "false" | "inherit";
|
|
122
138
|
/**
|
|
123
139
|
* Indicates whether the element can be edited in place
|
|
124
140
|
*/
|
|
125
141
|
contenteditable?: 'true' | 'false' | 'inherit' | boolean | null | undefined;
|
|
142
|
+
/**
|
|
143
|
+
* Mapping of data-* attributes to their values (e.g., {"test":"value"} -> data-test="value")
|
|
144
|
+
*/
|
|
145
|
+
'data-attributes'?: Record<string, string> | null | undefined;
|
|
126
146
|
/**
|
|
127
147
|
* Represents the text direction of the element
|
|
128
148
|
*/
|
|
@@ -143,6 +163,10 @@ export interface SelectProps {
|
|
|
143
163
|
* Indicates whether the element is hidden
|
|
144
164
|
*/
|
|
145
165
|
hidden?: boolean | null | undefined;
|
|
166
|
+
/**
|
|
167
|
+
* Unique identifier
|
|
168
|
+
*/
|
|
169
|
+
id?: string;
|
|
146
170
|
/**
|
|
147
171
|
* 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
|
|
148
172
|
*/
|
|
@@ -187,6 +211,10 @@ export interface SelectProps {
|
|
|
187
211
|
* Represents the CSS inline style of the element
|
|
188
212
|
*/
|
|
189
213
|
style?: string | null | undefined;
|
|
214
|
+
/**
|
|
215
|
+
* Tab order position
|
|
216
|
+
*/
|
|
217
|
+
tabIndex?: number;
|
|
190
218
|
/**
|
|
191
219
|
* Represents a tab order of the element
|
|
192
220
|
*/
|
|
@@ -216,9 +244,26 @@ export class Select {
|
|
|
216
244
|
if (props.children !== undefined) {
|
|
217
245
|
this.setChildren(props.children);
|
|
218
246
|
}
|
|
247
|
+
if (props.accessKey !== undefined) {
|
|
248
|
+
this.element.setAttribute('accessKey', String(props.accessKey));
|
|
249
|
+
}
|
|
219
250
|
if (props.accesskey !== undefined) {
|
|
220
251
|
this.element.setAttribute('accesskey', String(props.accesskey));
|
|
221
252
|
}
|
|
253
|
+
if (props['alpine-attributes'] !== undefined) {
|
|
254
|
+
const __map = props['alpine-attributes'];
|
|
255
|
+
if (__map !== null && __map !== undefined) {
|
|
256
|
+
for (const __k in __map) {
|
|
257
|
+
const __v = (__map as any)[__k];
|
|
258
|
+
let __attr = __k;
|
|
259
|
+
if (__k.startsWith('@')) { __attr = 'x-on:' + __k.slice(1); }
|
|
260
|
+
else if (__k.startsWith(':')) { __attr = 'x-bind:' + __k.slice(1); }
|
|
261
|
+
else if (__k.startsWith('.')) { __attr = 'x-model' + __k; }
|
|
262
|
+
else if (!__k.startsWith('x-') && ['show','text','html','if','for','cloak','init','data','effect','ignore','ref','transition','teleport'].includes(__k)) { __attr = 'x-' + __k; }
|
|
263
|
+
this.element.setAttribute(__attr, String(__v));
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
222
267
|
if (props['aria-activedescendant'] !== undefined) {
|
|
223
268
|
this.element.setAttribute('aria-activedescendant', String(props['aria-activedescendant']));
|
|
224
269
|
}
|
|
@@ -297,9 +342,23 @@ export class Select {
|
|
|
297
342
|
if (props.autofocus !== undefined) {
|
|
298
343
|
this.element.setAttribute('autofocus', String(props.autofocus));
|
|
299
344
|
}
|
|
345
|
+
if (props.className !== undefined) {
|
|
346
|
+
this.element.setAttribute('className', String(props.className));
|
|
347
|
+
}
|
|
348
|
+
if (props.contentEditable !== undefined) {
|
|
349
|
+
this.element.setAttribute('contentEditable', String(props.contentEditable));
|
|
350
|
+
}
|
|
300
351
|
if (props.contenteditable !== undefined) {
|
|
301
352
|
this.setContenteditable(props.contenteditable);
|
|
302
353
|
}
|
|
354
|
+
if (props['data-attributes'] !== undefined) {
|
|
355
|
+
const __map = props['data-attributes'];
|
|
356
|
+
if (__map !== null && __map !== undefined) {
|
|
357
|
+
for (const __k in __map) {
|
|
358
|
+
this.element.setAttribute(`data-${__k}`, String((__map as any)[__k]));
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
}
|
|
303
362
|
if (props.dir !== undefined) {
|
|
304
363
|
this.setDir(props.dir);
|
|
305
364
|
}
|
|
@@ -315,6 +374,9 @@ export class Select {
|
|
|
315
374
|
if (props.hidden !== undefined) {
|
|
316
375
|
this.element.setAttribute('hidden', String(props.hidden));
|
|
317
376
|
}
|
|
377
|
+
if (props.id !== undefined) {
|
|
378
|
+
this.element.setAttribute('id', String(props.id));
|
|
379
|
+
}
|
|
318
380
|
if (props.inputmode !== undefined) {
|
|
319
381
|
this.setInputmode(props.inputmode);
|
|
320
382
|
}
|
|
@@ -348,6 +410,9 @@ export class Select {
|
|
|
348
410
|
if (props.style !== undefined) {
|
|
349
411
|
this.element.setAttribute('style', String(props.style));
|
|
350
412
|
}
|
|
413
|
+
if (props.tabIndex !== undefined) {
|
|
414
|
+
this.element.setAttribute('tabIndex', String(props.tabIndex));
|
|
415
|
+
}
|
|
351
416
|
if (props.tabindex !== undefined) {
|
|
352
417
|
this.element.setAttribute('tabindex', String(props.tabindex));
|
|
353
418
|
}
|
|
@@ -359,6 +424,15 @@ export class Select {
|
|
|
359
424
|
}
|
|
360
425
|
}
|
|
361
426
|
|
|
427
|
+
setAccessKey(value: string): this {
|
|
428
|
+
if (value === null || value === undefined) {
|
|
429
|
+
this.element.removeAttribute('accessKey');
|
|
430
|
+
} else {
|
|
431
|
+
this.element.setAttribute('accessKey', String(value));
|
|
432
|
+
}
|
|
433
|
+
return this;
|
|
434
|
+
}
|
|
435
|
+
|
|
362
436
|
setAccesskey(value: string | null | undefined): this {
|
|
363
437
|
if (value === null || value === undefined) {
|
|
364
438
|
this.element.removeAttribute('accesskey');
|
|
@@ -368,6 +442,25 @@ export class Select {
|
|
|
368
442
|
return this;
|
|
369
443
|
}
|
|
370
444
|
|
|
445
|
+
setAlpineAttributes(value: string | null | undefined): this {
|
|
446
|
+
if (value === null || value === undefined) {
|
|
447
|
+
// Remove all x-* Alpine attributes (best-effort)
|
|
448
|
+
for (const __a of Array.from(this.element.attributes)) {
|
|
449
|
+
if ((__a as Attr).name.startsWith('x-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
|
|
450
|
+
}
|
|
451
|
+
} else {
|
|
452
|
+
for (const __k in value as Record<string, string>) {
|
|
453
|
+
let __attr = __k;
|
|
454
|
+
if (__k.startsWith('@')) { __attr = 'x-on:' + __k.slice(1); }
|
|
455
|
+
else if (__k.startsWith(':')) { __attr = 'x-bind:' + __k.slice(1); }
|
|
456
|
+
else if (__k.startsWith('.')) { __attr = 'x-model' + __k; }
|
|
457
|
+
else if (!__k.startsWith('x-') && ['show','text','html','if','for','cloak','init','data','effect','ignore','ref','transition','teleport'].includes(__k)) { __attr = 'x-' + __k; }
|
|
458
|
+
this.element.setAttribute(__attr, String((value as any)[__k]));
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
return this;
|
|
462
|
+
}
|
|
463
|
+
|
|
371
464
|
setAriaActivedescendant(value: string | null | undefined): this {
|
|
372
465
|
if (value === null || value === undefined) {
|
|
373
466
|
this.element.removeAttribute('aria-activedescendant');
|
|
@@ -602,6 +695,24 @@ export class Select {
|
|
|
602
695
|
return this;
|
|
603
696
|
}
|
|
604
697
|
|
|
698
|
+
setClassName(value: string): this {
|
|
699
|
+
if (value === null || value === undefined) {
|
|
700
|
+
this.element.removeAttribute('className');
|
|
701
|
+
} else {
|
|
702
|
+
this.element.setAttribute('className', String(value));
|
|
703
|
+
}
|
|
704
|
+
return this;
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
setContentEditable(value: boolean | "true" | "false" | "inherit"): this {
|
|
708
|
+
if (value === true) {
|
|
709
|
+
this.element.setAttribute('contentEditable', '');
|
|
710
|
+
} else {
|
|
711
|
+
this.element.removeAttribute('contentEditable');
|
|
712
|
+
}
|
|
713
|
+
return this;
|
|
714
|
+
}
|
|
715
|
+
|
|
605
716
|
setContenteditable(value: 'true' | 'false' | 'inherit' | boolean | null | undefined): this {
|
|
606
717
|
if (value === null || value === undefined) {
|
|
607
718
|
this.element.removeAttribute('contenteditable');
|
|
@@ -611,6 +722,20 @@ export class Select {
|
|
|
611
722
|
return this;
|
|
612
723
|
}
|
|
613
724
|
|
|
725
|
+
setDataAttributes(value: Record<string, string>): this {
|
|
726
|
+
if (value === null || value === undefined) {
|
|
727
|
+
// Remove all data-* attributes (best-effort)
|
|
728
|
+
for (const __a of Array.from(this.element.attributes)) {
|
|
729
|
+
if ((__a as Attr).name.startsWith('data-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
|
|
730
|
+
}
|
|
731
|
+
} else {
|
|
732
|
+
for (const __k in value as Record<string, string>) {
|
|
733
|
+
this.element.setAttribute(`data-${__k}`, String((value as any)[__k]));
|
|
734
|
+
}
|
|
735
|
+
}
|
|
736
|
+
return this;
|
|
737
|
+
}
|
|
738
|
+
|
|
614
739
|
setDir(value: 'ltr' | 'rtl' | 'auto' | null | undefined): this {
|
|
615
740
|
if (value === null || value === undefined) {
|
|
616
741
|
this.element.removeAttribute('dir');
|
|
@@ -656,6 +781,15 @@ export class Select {
|
|
|
656
781
|
return this;
|
|
657
782
|
}
|
|
658
783
|
|
|
784
|
+
setId(value: string): this {
|
|
785
|
+
if (value === null || value === undefined) {
|
|
786
|
+
this.element.removeAttribute('id');
|
|
787
|
+
} else {
|
|
788
|
+
this.element.setAttribute('id', String(value));
|
|
789
|
+
}
|
|
790
|
+
return this;
|
|
791
|
+
}
|
|
792
|
+
|
|
659
793
|
setInputmode(value: 'none' | 'text' | 'decimal' | 'numeric' | 'email' | 'tel' | 'url' | 'search' | null | undefined): this {
|
|
660
794
|
if (value === null || value === undefined) {
|
|
661
795
|
this.element.removeAttribute('inputmode');
|
|
@@ -755,6 +889,15 @@ export class Select {
|
|
|
755
889
|
return this;
|
|
756
890
|
}
|
|
757
891
|
|
|
892
|
+
setTabIndex(value: number): this {
|
|
893
|
+
if (value === null || value === undefined) {
|
|
894
|
+
this.element.removeAttribute('tabIndex');
|
|
895
|
+
} else {
|
|
896
|
+
this.element.setAttribute('tabIndex', String(value));
|
|
897
|
+
}
|
|
898
|
+
return this;
|
|
899
|
+
}
|
|
900
|
+
|
|
758
901
|
setTabindex(value: number | null | undefined): this {
|
|
759
902
|
if (value === null || value === undefined) {
|
|
760
903
|
this.element.removeAttribute('tabindex');
|