@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.
Files changed (405) hide show
  1. package/build-all.mjs +54 -0
  2. package/dist/block/article/article.js +465 -0
  3. package/dist/block/article/article.js.map +7 -0
  4. package/dist/block/aside/aside.js +476 -0
  5. package/dist/block/aside/aside.js.map +7 -0
  6. package/dist/block/audio/audio.js +454 -0
  7. package/dist/block/audio/audio.js.map +7 -0
  8. package/dist/block/blockquote/blockquote.js +476 -0
  9. package/dist/block/blockquote/blockquote.js.map +7 -0
  10. package/dist/block/body/body.js +378 -0
  11. package/dist/block/body/body.js.map +7 -0
  12. package/dist/block/canvas/canvas.js +487 -0
  13. package/dist/block/canvas/canvas.js.map +7 -0
  14. package/dist/block/caption/caption.js +465 -0
  15. package/dist/block/caption/caption.js.map +7 -0
  16. package/dist/block/colgroup/colgroup.js +190 -0
  17. package/dist/block/colgroup/colgroup.js.map +7 -0
  18. package/dist/block/datalist/datalist.js +465 -0
  19. package/dist/block/datalist/datalist.js.map +7 -0
  20. package/dist/block/dd/dd.js +422 -0
  21. package/dist/block/dd/dd.js.map +7 -0
  22. package/dist/block/del/del.js +487 -0
  23. package/dist/block/del/del.js.map +7 -0
  24. package/dist/block/details/details.js +520 -0
  25. package/dist/block/details/details.js.map +7 -0
  26. package/dist/block/dialog/dialog.js +520 -0
  27. package/dist/block/dialog/dialog.js.map +7 -0
  28. package/dist/block/div/div.js +520 -0
  29. package/dist/block/div/div.js.map +7 -0
  30. package/dist/block/dl/dl.js +465 -0
  31. package/dist/block/dl/dl.js.map +7 -0
  32. package/dist/block/dt/dt.js +422 -0
  33. package/dist/block/dt/dt.js.map +7 -0
  34. package/dist/block/embed/embed.js +333 -0
  35. package/dist/block/embed/embed.js.map +7 -0
  36. package/dist/block/fieldset/fieldset.js +509 -0
  37. package/dist/block/fieldset/fieldset.js.map +7 -0
  38. package/dist/block/figcaption/figcaption.js +465 -0
  39. package/dist/block/figcaption/figcaption.js.map +7 -0
  40. package/dist/block/figure/figure.js +465 -0
  41. package/dist/block/figure/figure.js.map +7 -0
  42. package/dist/block/footer/footer.js +476 -0
  43. package/dist/block/footer/footer.js.map +7 -0
  44. package/dist/block/form/form.js +443 -0
  45. package/dist/block/form/form.js.map +7 -0
  46. package/dist/block/h1/h1.js +454 -0
  47. package/dist/block/h1/h1.js.map +7 -0
  48. package/dist/block/h2/h2.js +454 -0
  49. package/dist/block/h2/h2.js.map +7 -0
  50. package/dist/block/h3/h3.js +454 -0
  51. package/dist/block/h3/h3.js.map +7 -0
  52. package/dist/block/h4/h4.js +454 -0
  53. package/dist/block/h4/h4.js.map +7 -0
  54. package/dist/block/h5/h5.js +454 -0
  55. package/dist/block/h5/h5.js.map +7 -0
  56. package/dist/block/h6/h6.js +454 -0
  57. package/dist/block/h6/h6.js.map +7 -0
  58. package/dist/block/header/header.js +322 -0
  59. package/dist/block/header/header.js.map +7 -0
  60. package/dist/block/hgroup/hgroup.js +465 -0
  61. package/dist/block/hgroup/hgroup.js.map +7 -0
  62. package/dist/block/hr/hr.js +169 -0
  63. package/dist/block/hr/hr.js.map +7 -0
  64. package/dist/block/html/html.js +92 -0
  65. package/dist/block/html/html.js.map +7 -0
  66. package/dist/block/iframe/iframe.js +465 -0
  67. package/dist/block/iframe/iframe.js.map +7 -0
  68. package/dist/block/ins/ins.js +487 -0
  69. package/dist/block/ins/ins.js.map +7 -0
  70. package/dist/block/legend/legend.js +465 -0
  71. package/dist/block/legend/legend.js.map +7 -0
  72. package/dist/block/li/li.js +488 -0
  73. package/dist/block/li/li.js.map +7 -0
  74. package/dist/block/main/main.js +444 -0
  75. package/dist/block/main/main.js.map +7 -0
  76. package/dist/block/map/map.js +476 -0
  77. package/dist/block/map/map.js.map +7 -0
  78. package/dist/block/menu/menu.js +498 -0
  79. package/dist/block/menu/menu.js.map +7 -0
  80. package/dist/block/nav/nav.js +455 -0
  81. package/dist/block/nav/nav.js.map +7 -0
  82. package/dist/block/noscript/noscript.js +311 -0
  83. package/dist/block/noscript/noscript.js.map +7 -0
  84. package/dist/block/object/object.js +542 -0
  85. package/dist/block/object/object.js.map +7 -0
  86. package/dist/block/ol/ol.js +542 -0
  87. package/dist/block/ol/ol.js.map +7 -0
  88. package/dist/block/optgroup/optgroup.js +476 -0
  89. package/dist/block/optgroup/optgroup.js.map +7 -0
  90. package/dist/block/option/option.js +542 -0
  91. package/dist/block/option/option.js.map +7 -0
  92. package/dist/block/p/p.js +465 -0
  93. package/dist/block/p/p.js.map +7 -0
  94. package/dist/block/picture/picture.js +465 -0
  95. package/dist/block/picture/picture.js.map +7 -0
  96. package/dist/block/pre/pre.js +465 -0
  97. package/dist/block/pre/pre.js.map +7 -0
  98. package/dist/block/section/section.js +487 -0
  99. package/dist/block/section/section.js.map +7 -0
  100. package/dist/block/summary/summary.js +466 -0
  101. package/dist/block/summary/summary.js.map +7 -0
  102. package/dist/block/table/table.js +509 -0
  103. package/dist/block/table/table.js.map +7 -0
  104. package/dist/block/tbody/tbody.js +465 -0
  105. package/dist/block/tbody/tbody.js.map +7 -0
  106. package/dist/block/td/td.js +575 -0
  107. package/dist/block/td/td.js.map +7 -0
  108. package/dist/block/template/template.js +465 -0
  109. package/dist/block/template/template.js.map +7 -0
  110. package/dist/block/tfoot/tfoot.js +465 -0
  111. package/dist/block/tfoot/tfoot.js.map +7 -0
  112. package/dist/block/th/th.js +586 -0
  113. package/dist/block/th/th.js.map +7 -0
  114. package/dist/block/thead/thead.js +465 -0
  115. package/dist/block/thead/thead.js.map +7 -0
  116. package/dist/block/tr/tr.js +586 -0
  117. package/dist/block/tr/tr.js.map +7 -0
  118. package/dist/block/ul/ul.js +509 -0
  119. package/dist/block/ul/ul.js.map +7 -0
  120. package/dist/block/video/video.js +575 -0
  121. package/dist/block/video/video.js.map +7 -0
  122. package/dist/index.js +48830 -0
  123. package/dist/index.js.map +7 -0
  124. package/dist/inline/a/a.js +586 -0
  125. package/dist/inline/a/a.js.map +7 -0
  126. package/dist/inline/abbr/abbr.js +454 -0
  127. package/dist/inline/abbr/abbr.js.map +7 -0
  128. package/dist/inline/address/address.js +443 -0
  129. package/dist/inline/address/address.js.map +7 -0
  130. package/dist/inline/b/b.js +465 -0
  131. package/dist/inline/b/b.js.map +7 -0
  132. package/dist/inline/bdi/bdi.js +454 -0
  133. package/dist/inline/bdi/bdi.js.map +7 -0
  134. package/dist/inline/bdo/bdo.js +465 -0
  135. package/dist/inline/bdo/bdo.js.map +7 -0
  136. package/dist/inline/button/button.js +685 -0
  137. package/dist/inline/button/button.js.map +7 -0
  138. package/dist/inline/cite/cite.js +465 -0
  139. package/dist/inline/cite/cite.js.map +7 -0
  140. package/dist/inline/code/code.js +465 -0
  141. package/dist/inline/code/code.js.map +7 -0
  142. package/dist/inline/data/data.js +476 -0
  143. package/dist/inline/data/data.js.map +7 -0
  144. package/dist/inline/dfn/dfn.js +465 -0
  145. package/dist/inline/dfn/dfn.js.map +7 -0
  146. package/dist/inline/em/em.js +465 -0
  147. package/dist/inline/em/em.js.map +7 -0
  148. package/dist/inline/i/i.js +465 -0
  149. package/dist/inline/i/i.js.map +7 -0
  150. package/dist/inline/img/img.js +399 -0
  151. package/dist/inline/img/img.js.map +7 -0
  152. package/dist/inline/input/input.js +938 -0
  153. package/dist/inline/input/input.js.map +7 -0
  154. package/dist/inline/kbd/kbd.js +465 -0
  155. package/dist/inline/kbd/kbd.js.map +7 -0
  156. package/dist/inline/label/label.js +487 -0
  157. package/dist/inline/label/label.js.map +7 -0
  158. package/dist/inline/mark/mark.js +465 -0
  159. package/dist/inline/mark/mark.js.map +7 -0
  160. package/dist/inline/meter/meter.js +498 -0
  161. package/dist/inline/meter/meter.js.map +7 -0
  162. package/dist/inline/output/output.js +410 -0
  163. package/dist/inline/output/output.js.map +7 -0
  164. package/dist/inline/progress/progress.js +454 -0
  165. package/dist/inline/progress/progress.js.map +7 -0
  166. package/dist/inline/q/q.js +476 -0
  167. package/dist/inline/q/q.js.map +7 -0
  168. package/dist/inline/rp/rp.js +465 -0
  169. package/dist/inline/rp/rp.js.map +7 -0
  170. package/dist/inline/rt/rt.js +465 -0
  171. package/dist/inline/rt/rt.js.map +7 -0
  172. package/dist/inline/ruby/ruby.js +465 -0
  173. package/dist/inline/ruby/ruby.js.map +7 -0
  174. package/dist/inline/s/s.js +465 -0
  175. package/dist/inline/s/s.js.map +7 -0
  176. package/dist/inline/samp/samp.js +465 -0
  177. package/dist/inline/samp/samp.js.map +7 -0
  178. package/dist/inline/select/select.js +674 -0
  179. package/dist/inline/select/select.js.map +7 -0
  180. package/dist/inline/slot/slot.js +476 -0
  181. package/dist/inline/slot/slot.js.map +7 -0
  182. package/dist/inline/small/small.js +465 -0
  183. package/dist/inline/small/small.js.map +7 -0
  184. package/dist/inline/span/span.js +465 -0
  185. package/dist/inline/span/span.js.map +7 -0
  186. package/dist/inline/strong/strong.js +465 -0
  187. package/dist/inline/strong/strong.js.map +7 -0
  188. package/dist/inline/sub/sub.js +465 -0
  189. package/dist/inline/sub/sub.js.map +7 -0
  190. package/dist/inline/sup/sup.js +465 -0
  191. package/dist/inline/sup/sup.js.map +7 -0
  192. package/dist/inline/svg/svg.js +542 -0
  193. package/dist/inline/svg/svg.js.map +7 -0
  194. package/dist/inline/textarea/textarea.js +718 -0
  195. package/dist/inline/textarea/textarea.js.map +7 -0
  196. package/dist/inline/time/time.js +476 -0
  197. package/dist/inline/time/time.js.map +7 -0
  198. package/dist/inline/u/u.js +465 -0
  199. package/dist/inline/u/u.js.map +7 -0
  200. package/dist/inline/var/var.js +465 -0
  201. package/dist/inline/var/var.js.map +7 -0
  202. package/dist/void/area/area.js +388 -0
  203. package/dist/void/area/area.js.map +7 -0
  204. package/dist/void/base/base.js +37 -0
  205. package/dist/void/base/base.js.map +7 -0
  206. package/dist/void/br/br.js +135 -0
  207. package/dist/void/br/br.js.map +7 -0
  208. package/dist/void/col/col.js +135 -0
  209. package/dist/void/col/col.js.map +7 -0
  210. package/dist/void/head/head.js +37 -0
  211. package/dist/void/head/head.js.map +7 -0
  212. package/dist/void/link/link.js +213 -0
  213. package/dist/void/link/link.js.map +7 -0
  214. package/dist/void/meta/meta.js +147 -0
  215. package/dist/void/meta/meta.js.map +7 -0
  216. package/dist/void/param/param.js +146 -0
  217. package/dist/void/param/param.js.map +7 -0
  218. package/dist/void/script/script.js +213 -0
  219. package/dist/void/script/script.js.map +7 -0
  220. package/dist/void/source/source.js +168 -0
  221. package/dist/void/source/source.js.map +7 -0
  222. package/dist/void/style/style.js +147 -0
  223. package/dist/void/style/style.js.map +7 -0
  224. package/dist/void/title/title.js +37 -0
  225. package/dist/void/title/title.js.map +7 -0
  226. package/dist/void/track/track.js +190 -0
  227. package/dist/void/track/track.js.map +7 -0
  228. package/dist/void/wbr/wbr.js +124 -0
  229. package/dist/void/wbr/wbr.js.map +7 -0
  230. package/package.json +4 -4
  231. package/src/block/article/article.ts +649 -0
  232. package/{block → src/block}/aside/aside.ts +144 -1
  233. package/{block → src/block}/audio/audio.ts +128 -1
  234. package/src/block/blockquote/blockquote.ts +665 -0
  235. package/{block → src/block}/body/body.ts +91 -1
  236. package/{block → src/block}/canvas/canvas.ts +144 -1
  237. package/src/block/caption/caption.ts +649 -0
  238. package/{block → src/block}/colgroup/colgroup.ts +96 -1
  239. package/src/block/datalist/datalist.ts +649 -0
  240. package/{block/dialog/dialog.ts → src/block/dd/dd.ts} +114 -88
  241. package/{block → src/block}/del/del.ts +144 -1
  242. package/src/block/details/details.ts +729 -0
  243. package/src/block/dialog/dialog.ts +729 -0
  244. package/src/block/div/div.ts +729 -0
  245. package/src/block/dl/dl.ts +649 -0
  246. package/{block/details/details.ts → src/block/dt/dt.ts} +114 -88
  247. package/{block → src/block}/embed/embed.ts +144 -1
  248. package/{block → src/block}/fieldset/fieldset.ts +144 -1
  249. package/src/block/figcaption/figcaption.ts +649 -0
  250. package/src/block/figure/figure.ts +649 -0
  251. package/src/block/footer/footer.ts +665 -0
  252. package/{block → src/block}/form/form.ts +132 -5
  253. package/src/block/h1/h1.ts +633 -0
  254. package/src/block/h2/h2.ts +633 -0
  255. package/src/block/h3/h3.ts +633 -0
  256. package/src/block/h4/h4.ts +633 -0
  257. package/src/block/h5/h5.ts +633 -0
  258. package/src/block/h6/h6.ts +633 -0
  259. package/{block → src/block}/header/header.ts +144 -1
  260. package/src/block/hgroup/hgroup.ts +649 -0
  261. package/{block → src/block}/hr/hr.ts +59 -1
  262. package/{block → src/block}/html/html.ts +27 -1
  263. package/{block → src/block}/iframe/iframe.ts +112 -1
  264. package/{block → src/block}/ins/ins.ts +144 -1
  265. package/src/block/legend/legend.ts +649 -0
  266. package/{block → src/block}/li/li.ts +107 -1
  267. package/{block/div/div.ts → src/block/main/main.ts} +112 -54
  268. package/src/block/map/map.ts +665 -0
  269. package/{block → src/block}/menu/menu.ts +144 -1
  270. package/{block → src/block}/nav/nav.ts +107 -1
  271. package/{block → src/block}/noscript/noscript.ts +144 -1
  272. package/{block → src/block}/object/object.ts +144 -1
  273. package/{block → src/block}/ol/ol.ts +144 -1
  274. package/{block → src/block}/optgroup/optgroup.ts +144 -1
  275. package/{block → src/block}/option/option.ts +144 -1
  276. package/src/block/p/p.ts +649 -0
  277. package/src/block/picture/picture.ts +649 -0
  278. package/src/block/pre/pre.ts +649 -0
  279. package/{block → src/block}/section/section.ts +144 -1
  280. package/{block → src/block}/summary/summary.ts +107 -1
  281. package/{block → src/block}/table/table.ts +144 -1
  282. package/src/block/tbody/tbody.ts +649 -0
  283. package/{block → src/block}/td/td.ts +144 -1
  284. package/src/block/template/template.ts +649 -0
  285. package/src/block/tfoot/tfoot.ts +649 -0
  286. package/{block → src/block}/th/th.ts +144 -1
  287. package/src/block/thead/thead.ts +649 -0
  288. package/{block → src/block}/tr/tr.ts +144 -1
  289. package/{block → src/block}/ul/ul.ts +144 -1
  290. package/{block → src/block}/video/video.ts +144 -1
  291. package/{inline → src/inline}/a/a.ts +144 -1
  292. package/src/inline/abbr/abbr.ts +633 -0
  293. package/src/inline/address/address.ts +617 -0
  294. package/src/inline/b/b.ts +649 -0
  295. package/src/inline/bdi/bdi.ts +633 -0
  296. package/src/inline/bdo/bdo.ts +649 -0
  297. package/{inline → src/inline}/button/button.ts +145 -2
  298. package/src/inline/cite/cite.ts +649 -0
  299. package/src/inline/code/code.ts +649 -0
  300. package/src/inline/data/data.ts +665 -0
  301. package/src/inline/dfn/dfn.ts +649 -0
  302. package/src/inline/em/em.ts +649 -0
  303. package/src/inline/i/i.ts +649 -0
  304. package/{inline → src/inline}/img/img.ts +112 -1
  305. package/{inline → src/inline}/input/input.ts +145 -2
  306. package/src/inline/kbd/kbd.ts +649 -0
  307. package/{inline → src/inline}/label/label.ts +144 -1
  308. package/src/inline/mark/mark.ts +649 -0
  309. package/{inline → src/inline}/meter/meter.ts +144 -1
  310. package/{inline → src/inline}/output/output.ts +144 -1
  311. package/{inline → src/inline}/progress/progress.ts +144 -1
  312. package/src/inline/q/q.ts +665 -0
  313. package/src/inline/rp/rp.ts +649 -0
  314. package/src/inline/rt/rt.ts +649 -0
  315. package/src/inline/ruby/ruby.ts +649 -0
  316. package/src/inline/s/s.ts +649 -0
  317. package/src/inline/samp/samp.ts +649 -0
  318. package/{inline → src/inline}/select/select.ts +144 -1
  319. package/src/inline/slot/slot.ts +665 -0
  320. package/src/inline/small/small.ts +649 -0
  321. package/src/inline/span/span.ts +649 -0
  322. package/src/inline/strong/strong.ts +649 -0
  323. package/src/inline/sub/sub.ts +649 -0
  324. package/src/inline/sup/sup.ts +649 -0
  325. package/{inline → src/inline}/svg/svg.ts +144 -1
  326. package/{inline → src/inline}/textarea/textarea.ts +144 -1
  327. package/src/inline/time/time.ts +665 -0
  328. package/src/inline/u/u.ts +649 -0
  329. package/src/inline/var/var.ts +649 -0
  330. package/{void → src/void}/area/area.ts +144 -1
  331. package/{void → src/void}/base/base.ts +1 -1
  332. package/src/void/br/br.ts +172 -0
  333. package/src/void/col/col.ts +172 -0
  334. package/{void → src/void}/head/head.ts +1 -1
  335. package/{void → src/void}/link/link.ts +59 -1
  336. package/{void → src/void}/meta/meta.ts +59 -1
  337. package/src/void/param/param.ts +188 -0
  338. package/{void → src/void}/script/script.ts +59 -1
  339. package/src/void/source/source.ts +220 -0
  340. package/{void → src/void}/style/style.ts +59 -1
  341. package/{void → src/void}/title/title.ts +1 -1
  342. package/{void → src/void}/track/track.ts +96 -1
  343. package/src/void/wbr/wbr.ts +156 -0
  344. package/block/article/article.ts +0 -506
  345. package/block/blockquote/blockquote.ts +0 -522
  346. package/block/caption/caption.ts +0 -506
  347. package/block/datalist/datalist.ts +0 -506
  348. package/block/dd/dd.ts +0 -506
  349. package/block/dl/dl.ts +0 -506
  350. package/block/dt/dt.ts +0 -506
  351. package/block/figcaption/figcaption.ts +0 -506
  352. package/block/figure/figure.ts +0 -506
  353. package/block/footer/footer.ts +0 -522
  354. package/block/h1/h1.ts +0 -490
  355. package/block/h2/h2.ts +0 -490
  356. package/block/h3/h3.ts +0 -490
  357. package/block/h4/h4.ts +0 -490
  358. package/block/h5/h5.ts +0 -490
  359. package/block/h6/h6.ts +0 -490
  360. package/block/hgroup/hgroup.ts +0 -506
  361. package/block/legend/legend.ts +0 -506
  362. package/block/main/main.ts +0 -538
  363. package/block/map/map.ts +0 -522
  364. package/block/p/p.ts +0 -506
  365. package/block/picture/picture.ts +0 -506
  366. package/block/pre/pre.ts +0 -506
  367. package/block/tbody/tbody.ts +0 -506
  368. package/block/template/template.ts +0 -506
  369. package/block/tfoot/tfoot.ts +0 -506
  370. package/block/thead/thead.ts +0 -506
  371. package/inline/abbr/abbr.ts +0 -490
  372. package/inline/address/address.ts +0 -474
  373. package/inline/b/b.ts +0 -506
  374. package/inline/bdi/bdi.ts +0 -490
  375. package/inline/bdo/bdo.ts +0 -506
  376. package/inline/cite/cite.ts +0 -506
  377. package/inline/code/code.ts +0 -506
  378. package/inline/data/data.ts +0 -522
  379. package/inline/dfn/dfn.ts +0 -506
  380. package/inline/em/em.ts +0 -506
  381. package/inline/i/i.ts +0 -506
  382. package/inline/kbd/kbd.ts +0 -506
  383. package/inline/mark/mark.ts +0 -506
  384. package/inline/q/q.ts +0 -522
  385. package/inline/rp/rp.ts +0 -506
  386. package/inline/rt/rt.ts +0 -506
  387. package/inline/ruby/ruby.ts +0 -506
  388. package/inline/s/s.ts +0 -506
  389. package/inline/samp/samp.ts +0 -506
  390. package/inline/slot/slot.ts +0 -522
  391. package/inline/small/small.ts +0 -506
  392. package/inline/span/span.ts +0 -506
  393. package/inline/strong/strong.ts +0 -506
  394. package/inline/sub/sub.ts +0 -506
  395. package/inline/sup/sup.ts +0 -506
  396. package/inline/time/time.ts +0 -522
  397. package/inline/u/u.ts +0 -506
  398. package/inline/var/var.ts +0 -506
  399. package/void/br/br.ts +0 -77
  400. package/void/col/col.ts +0 -77
  401. package/void/param/param.ts +0 -93
  402. package/void/source/source.ts +0 -125
  403. package/void/wbr/wbr.ts +0 -61
  404. /package/{index.ts → src/index.ts} +0 -0
  405. /package/{tsconfig.json → src/tsconfig.json} +0 -0
@@ -1,16 +1,20 @@
1
1
  /**
2
2
  * THIS FILE IS AUTOGENERATED. DO NOT EDIT IT.
3
3
  *
4
- * @generated December 28, 2025 12:26:31
5
- * @component Details
4
+ * @generated January 2, 2026 15:45:45
5
+ * @component Dt
6
6
  * @description
7
7
  */
8
8
 
9
- export interface DetailsProps {
9
+ export interface DtProps {
10
10
  /**
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
  */
@@ -35,14 +39,6 @@ export interface DetailsProps {
35
39
  * References an element that provides additional details about the current element.
36
40
  */
37
41
  'aria-details'?: string | null | undefined;
38
- /**
39
- * Indicates whether a collapsible UI element is expanded (true) or collapsed (false).
40
- */
41
- 'aria-expanded'?: 'false' | 'true' | 'undefined' | boolean | null | undefined;
42
- /**
43
- * Indicates that an element has an associated popup menu, listbox, tree, grid, or dialog.
44
- */
45
- 'aria-haspopup'?: 'false' | 'true' | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog' | boolean | null | undefined;
46
42
  /**
47
43
  * Indicates whether the element is exposed to an accessibility API. Use with caution on interactive elements. Set to true only on decorative elements such as icons, or when nav isnt visible
48
44
  */
@@ -51,10 +47,6 @@ export interface DetailsProps {
51
47
  * Defines keyboard shortcuts available for the element.
52
48
  */
53
49
  'aria-keyshortcuts'?: string | null | undefined;
54
- /**
55
- * Defines a string value that labels the current element for assistive technologies.
56
- */
57
- 'aria-label'?: string | null | undefined;
58
50
  /**
59
51
  * Identifies the element(s) that labels the current element. Value is a list of IDs separated by a space
60
52
  */
@@ -63,10 +55,6 @@ export interface DetailsProps {
63
55
  * Defines how updates to the element should be announced to screen readers.
64
56
  */
65
57
  'aria-live'?: 'off' | 'polite' | 'assertive' | null | undefined;
66
- /**
67
- * Indicates whether a toggle button is pressed (true, false, or mixed).
68
- */
69
- 'aria-pressed'?: 'false' | 'true' | 'mixed' | 'undefined' | boolean | null | undefined;
70
58
  /**
71
59
  * Indicates what content changes should be announced in a live region.
72
60
  */
@@ -83,10 +71,22 @@ export interface DetailsProps {
83
71
  * Indicates whether the element is hidden
84
72
  */
85
73
  autofocus?: boolean | null | undefined;
74
+ /**
75
+ * CSS class names
76
+ */
77
+ className?: string;
78
+ /**
79
+ * Whether the element is editable
80
+ */
81
+ contentEditable?: boolean | "true" | "false" | "inherit";
86
82
  /**
87
83
  * Indicates whether the element can be edited in place
88
84
  */
89
85
  contenteditable?: 'true' | 'false' | 'inherit' | boolean | null | undefined;
86
+ /**
87
+ * Mapping of data-* attributes to their values (e.g., {"test":"value"} -> data-test="value")
88
+ */
89
+ 'data-attributes'?: Record<string, string> | null | undefined;
90
90
  /**
91
91
  * Represents the text direction of the element
92
92
  */
@@ -99,6 +99,10 @@ export interface DetailsProps {
99
99
  * Indicates whether the element is hidden
100
100
  */
101
101
  hidden?: boolean | null | undefined;
102
+ /**
103
+ * Unique identifier
104
+ */
105
+ id?: string;
102
106
  /**
103
107
  * 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
108
  */
@@ -107,10 +111,6 @@ export interface DetailsProps {
107
111
  * Specifies the primary language for the element's content
108
112
  */
109
113
  lang?: string | null | undefined;
110
- /**
111
- * When present, it specifies that the details should be visible (open) to the user.
112
- */
113
- open?: boolean | null | undefined;
114
114
  /**
115
115
  *
116
116
  */
@@ -131,6 +131,10 @@ export interface DetailsProps {
131
131
  * Represents the CSS inline style of the element
132
132
  */
133
133
  style?: string | null | undefined;
134
+ /**
135
+ * Tab order position
136
+ */
137
+ tabIndex?: number;
134
138
  /**
135
139
  * Represents a tab order of the element
136
140
  */
@@ -146,20 +150,23 @@ export interface DetailsProps {
146
150
  }
147
151
 
148
152
  /**
149
- * Details -
153
+ * Dt -
150
154
  */
151
- export class Details {
155
+ export class Dt {
152
156
  private element: HTMLElement;
153
157
 
154
- constructor(props: DetailsProps = {}) {
155
- this.element = document.createElement('details');
158
+ constructor(props: DtProps = {}) {
159
+ this.element = document.createElement('dt');
156
160
  this.applyProps(props);
157
161
  }
158
162
 
159
- private applyProps(props: DetailsProps): void {
163
+ private applyProps(props: DtProps): void {
160
164
  if (props.children !== undefined) {
161
165
  this.setChildren(props.children);
162
166
  }
167
+ if (props.accessKey !== undefined) {
168
+ this.element.setAttribute('accessKey', String(props.accessKey));
169
+ }
163
170
  if (props.accesskey !== undefined) {
164
171
  this.element.setAttribute('accesskey', String(props.accesskey));
165
172
  }
@@ -178,30 +185,18 @@ export class Details {
178
185
  if (props['aria-details'] !== undefined) {
179
186
  this.element.setAttribute('aria-details', String(props['aria-details']));
180
187
  }
181
- if (props['aria-expanded'] !== undefined) {
182
- this.setAriaExpanded(props['aria-expanded']);
183
- }
184
- if (props['aria-haspopup'] !== undefined) {
185
- this.setAriaHaspopup(props['aria-haspopup']);
186
- }
187
188
  if (props['aria-hidden'] !== undefined) {
188
189
  this.setAriaHidden(props['aria-hidden']);
189
190
  }
190
191
  if (props['aria-keyshortcuts'] !== undefined) {
191
192
  this.element.setAttribute('aria-keyshortcuts', String(props['aria-keyshortcuts']));
192
193
  }
193
- if (props['aria-label'] !== undefined) {
194
- this.element.setAttribute('aria-label', String(props['aria-label']));
195
- }
196
194
  if (props['aria-labelledby'] !== undefined) {
197
195
  this.element.setAttribute('aria-labelledby', String(props['aria-labelledby']));
198
196
  }
199
197
  if (props['aria-live'] !== undefined) {
200
198
  this.setAriaLive(props['aria-live']);
201
199
  }
202
- if (props['aria-pressed'] !== undefined) {
203
- this.setAriaPressed(props['aria-pressed']);
204
- }
205
200
  if (props['aria-relevant'] !== undefined) {
206
201
  this.setAriaRelevant(props['aria-relevant']);
207
202
  }
@@ -214,9 +209,23 @@ export class Details {
214
209
  if (props.autofocus !== undefined) {
215
210
  this.element.setAttribute('autofocus', String(props.autofocus));
216
211
  }
212
+ if (props.className !== undefined) {
213
+ this.element.setAttribute('className', String(props.className));
214
+ }
215
+ if (props.contentEditable !== undefined) {
216
+ this.element.setAttribute('contentEditable', String(props.contentEditable));
217
+ }
217
218
  if (props.contenteditable !== undefined) {
218
219
  this.setContenteditable(props.contenteditable);
219
220
  }
221
+ if (props['data-attributes'] !== undefined) {
222
+ const __map = props['data-attributes'];
223
+ if (__map !== null && __map !== undefined) {
224
+ for (const __k in __map) {
225
+ this.element.setAttribute(`data-${__k}`, String((__map as any)[__k]));
226
+ }
227
+ }
228
+ }
220
229
  if (props.dir !== undefined) {
221
230
  this.setDir(props.dir);
222
231
  }
@@ -226,15 +235,15 @@ export class Details {
226
235
  if (props.hidden !== undefined) {
227
236
  this.element.setAttribute('hidden', String(props.hidden));
228
237
  }
238
+ if (props.id !== undefined) {
239
+ this.element.setAttribute('id', String(props.id));
240
+ }
229
241
  if (props.inputmode !== undefined) {
230
242
  this.setInputmode(props.inputmode);
231
243
  }
232
244
  if (props.lang !== undefined) {
233
245
  this.element.setAttribute('lang', String(props.lang));
234
246
  }
235
- if (props.open !== undefined) {
236
- this.element.setAttribute('open', String(props.open));
237
- }
238
247
  if (props.popover !== undefined) {
239
248
  this.setPopover(props.popover);
240
249
  }
@@ -250,6 +259,9 @@ export class Details {
250
259
  if (props.style !== undefined) {
251
260
  this.element.setAttribute('style', String(props.style));
252
261
  }
262
+ if (props.tabIndex !== undefined) {
263
+ this.element.setAttribute('tabIndex', String(props.tabIndex));
264
+ }
253
265
  if (props.tabindex !== undefined) {
254
266
  this.element.setAttribute('tabindex', String(props.tabindex));
255
267
  }
@@ -261,6 +273,15 @@ export class Details {
261
273
  }
262
274
  }
263
275
 
276
+ setAccessKey(value: string): this {
277
+ if (value === null || value === undefined) {
278
+ this.element.removeAttribute('accessKey');
279
+ } else {
280
+ this.element.setAttribute('accessKey', String(value));
281
+ }
282
+ return this;
283
+ }
284
+
264
285
  setAccesskey(value: string | null | undefined): this {
265
286
  if (value === null || value === undefined) {
266
287
  this.element.removeAttribute('accesskey');
@@ -315,24 +336,6 @@ export class Details {
315
336
  return this;
316
337
  }
317
338
 
318
- setAriaExpanded(value: 'false' | 'true' | 'undefined' | boolean | null | undefined): this {
319
- if (value === null || value === undefined) {
320
- this.element.removeAttribute('aria-expanded');
321
- } else {
322
- this.element.setAttribute('aria-expanded', String(value));
323
- }
324
- return this;
325
- }
326
-
327
- setAriaHaspopup(value: 'false' | 'true' | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog' | boolean | null | undefined): this {
328
- if (value === null || value === undefined) {
329
- this.element.removeAttribute('aria-haspopup');
330
- } else {
331
- this.element.setAttribute('aria-haspopup', String(value));
332
- }
333
- return this;
334
- }
335
-
336
339
  setAriaHidden(value: 'false' | 'true' | boolean | null | undefined): this {
337
340
  if (value === null || value === undefined) {
338
341
  this.element.removeAttribute('aria-hidden');
@@ -351,15 +354,6 @@ export class Details {
351
354
  return this;
352
355
  }
353
356
 
354
- setAriaLabel(value: string | null | undefined): this {
355
- if (value === null || value === undefined) {
356
- this.element.removeAttribute('aria-label');
357
- } else {
358
- this.element.setAttribute('aria-label', String(value));
359
- }
360
- return this;
361
- }
362
-
363
357
  setAriaLabelledby(value: string | null | undefined): this {
364
358
  if (value === null || value === undefined) {
365
359
  this.element.removeAttribute('aria-labelledby');
@@ -378,15 +372,6 @@ export class Details {
378
372
  return this;
379
373
  }
380
374
 
381
- setAriaPressed(value: 'false' | 'true' | 'mixed' | 'undefined' | boolean | null | undefined): this {
382
- if (value === null || value === undefined) {
383
- this.element.removeAttribute('aria-pressed');
384
- } else {
385
- this.element.setAttribute('aria-pressed', String(value));
386
- }
387
- return this;
388
- }
389
-
390
375
  setAriaRelevant(value: 'additions' | 'removals' | 'text' | 'all' | 'additions text' | null | undefined): this {
391
376
  if (value === null || value === undefined) {
392
377
  this.element.removeAttribute('aria-relevant');
@@ -423,6 +408,24 @@ export class Details {
423
408
  return this;
424
409
  }
425
410
 
411
+ setClassName(value: string): this {
412
+ if (value === null || value === undefined) {
413
+ this.element.removeAttribute('className');
414
+ } else {
415
+ this.element.setAttribute('className', String(value));
416
+ }
417
+ return this;
418
+ }
419
+
420
+ setContentEditable(value: boolean | "true" | "false" | "inherit"): this {
421
+ if (value === true) {
422
+ this.element.setAttribute('contentEditable', '');
423
+ } else {
424
+ this.element.removeAttribute('contentEditable');
425
+ }
426
+ return this;
427
+ }
428
+
426
429
  setContenteditable(value: 'true' | 'false' | 'inherit' | boolean | null | undefined): this {
427
430
  if (value === null || value === undefined) {
428
431
  this.element.removeAttribute('contenteditable');
@@ -432,6 +435,20 @@ export class Details {
432
435
  return this;
433
436
  }
434
437
 
438
+ setDataAttributes(value: Record<string, string>): this {
439
+ if (value === null || value === undefined) {
440
+ // Remove all data-* attributes (best-effort)
441
+ for (const __a of Array.from(this.element.attributes)) {
442
+ if ((__a as Attr).name.startsWith('data-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
443
+ }
444
+ } else {
445
+ for (const __k in value as Record<string, string>) {
446
+ this.element.setAttribute(`data-${__k}`, String((value as any)[__k]));
447
+ }
448
+ }
449
+ return this;
450
+ }
451
+
435
452
  setDir(value: 'ltr' | 'rtl' | 'auto' | null | undefined): this {
436
453
  if (value === null || value === undefined) {
437
454
  this.element.removeAttribute('dir');
@@ -459,6 +476,15 @@ export class Details {
459
476
  return this;
460
477
  }
461
478
 
479
+ setId(value: string): this {
480
+ if (value === null || value === undefined) {
481
+ this.element.removeAttribute('id');
482
+ } else {
483
+ this.element.setAttribute('id', String(value));
484
+ }
485
+ return this;
486
+ }
487
+
462
488
  setInputmode(value: 'none' | 'text' | 'decimal' | 'numeric' | 'email' | 'tel' | 'url' | 'search' | null | undefined): this {
463
489
  if (value === null || value === undefined) {
464
490
  this.element.removeAttribute('inputmode');
@@ -477,15 +503,6 @@ export class Details {
477
503
  return this;
478
504
  }
479
505
 
480
- setOpen(value: boolean | null | undefined): this {
481
- if (value === true) {
482
- this.element.setAttribute('open', '');
483
- } else {
484
- this.element.removeAttribute('open');
485
- }
486
- return this;
487
- }
488
-
489
506
  setPopover(value: 'auto' | 'hint' | 'manual' | null | undefined): this {
490
507
  if (value === null || value === undefined) {
491
508
  this.element.removeAttribute('popover');
@@ -531,6 +548,15 @@ export class Details {
531
548
  return this;
532
549
  }
533
550
 
551
+ setTabIndex(value: number): this {
552
+ if (value === null || value === undefined) {
553
+ this.element.removeAttribute('tabIndex');
554
+ } else {
555
+ this.element.setAttribute('tabIndex', String(value));
556
+ }
557
+ return this;
558
+ }
559
+
534
560
  setTabindex(value: number | null | undefined): this {
535
561
  if (value === null || value === undefined) {
536
562
  this.element.removeAttribute('tabindex');
@@ -1,16 +1,24 @@
1
1
  /**
2
2
  * THIS FILE IS AUTOGENERATED. DO NOT EDIT IT.
3
3
  *
4
- * @generated December 28, 2025 12:26:31
4
+ * @generated January 2, 2026 15:45:45
5
5
  * @component Embed
6
6
  * @description
7
7
  */
8
8
 
9
9
  export interface EmbedProps {
10
+ /**
11
+ * Keyboard shortcut to activate or focus the element
12
+ */
13
+ accessKey?: string;
10
14
  /**
11
15
  * specifies a shortcut key (or keys) to activate or focus an element
12
16
  */
13
17
  accesskey?: string | null | undefined;
18
+ /**
19
+ * Mapping of Alpine.js directives (shorthand or full) to their values (e.g., {@click: "do()"} or {"x-on:click":"do()"})
20
+ */
21
+ 'alpine-attributes'?: Record<string, string> | null | undefined;
14
22
  /**
15
23
  * Represents the autocapitalize behavior of the element
16
24
  */
@@ -19,10 +27,22 @@ export interface EmbedProps {
19
27
  * Indicates whether the element is hidden
20
28
  */
21
29
  autofocus?: boolean | null | undefined;
30
+ /**
31
+ * CSS class names
32
+ */
33
+ className?: string;
34
+ /**
35
+ * Whether the element is editable
36
+ */
37
+ contentEditable?: boolean | "true" | "false" | "inherit";
22
38
  /**
23
39
  * Indicates whether the element can be edited in place
24
40
  */
25
41
  contenteditable?: 'true' | 'false' | 'inherit' | boolean | null | undefined;
42
+ /**
43
+ * Mapping of data-* attributes to their values (e.g., {"test":"value"} -> data-test="value")
44
+ */
45
+ 'data-attributes'?: Record<string, string> | null | undefined;
26
46
  /**
27
47
  * Represents the text direction of the element
28
48
  */
@@ -39,6 +59,10 @@ export interface EmbedProps {
39
59
  * Indicates whether the element is hidden
40
60
  */
41
61
  hidden?: boolean | null | undefined;
62
+ /**
63
+ * Unique identifier
64
+ */
65
+ id?: string;
42
66
  /**
43
67
  * 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
44
68
  */
@@ -59,6 +83,10 @@ export interface EmbedProps {
59
83
  * Represents the CSS inline style of the element
60
84
  */
61
85
  style?: string | null | undefined;
86
+ /**
87
+ * Tab order position
88
+ */
89
+ tabIndex?: number;
62
90
  /**
63
91
  * Represents a tab order of the element
64
92
  */
@@ -93,18 +121,49 @@ export class Embed {
93
121
  }
94
122
 
95
123
  private applyProps(props: EmbedProps): void {
124
+ if (props.accessKey !== undefined) {
125
+ this.element.setAttribute('accessKey', String(props.accessKey));
126
+ }
96
127
  if (props.accesskey !== undefined) {
97
128
  this.element.setAttribute('accesskey', String(props.accesskey));
98
129
  }
130
+ if (props['alpine-attributes'] !== undefined) {
131
+ const __map = props['alpine-attributes'];
132
+ if (__map !== null && __map !== undefined) {
133
+ for (const __k in __map) {
134
+ const __v = (__map as any)[__k];
135
+ let __attr = __k;
136
+ if (__k.startsWith('@')) { __attr = 'x-on:' + __k.slice(1); }
137
+ else if (__k.startsWith(':')) { __attr = 'x-bind:' + __k.slice(1); }
138
+ else if (__k.startsWith('.')) { __attr = 'x-model' + __k; }
139
+ else if (!__k.startsWith('x-') && ['show','text','html','if','for','cloak','init','data','effect','ignore','ref','transition','teleport'].includes(__k)) { __attr = 'x-' + __k; }
140
+ this.element.setAttribute(__attr, String(__v));
141
+ }
142
+ }
143
+ }
99
144
  if (props.autocapitalize !== undefined) {
100
145
  this.setAutocapitalize(props.autocapitalize);
101
146
  }
102
147
  if (props.autofocus !== undefined) {
103
148
  this.element.setAttribute('autofocus', String(props.autofocus));
104
149
  }
150
+ if (props.className !== undefined) {
151
+ this.element.setAttribute('className', String(props.className));
152
+ }
153
+ if (props.contentEditable !== undefined) {
154
+ this.element.setAttribute('contentEditable', String(props.contentEditable));
155
+ }
105
156
  if (props.contenteditable !== undefined) {
106
157
  this.setContenteditable(props.contenteditable);
107
158
  }
159
+ if (props['data-attributes'] !== undefined) {
160
+ const __map = props['data-attributes'];
161
+ if (__map !== null && __map !== undefined) {
162
+ for (const __k in __map) {
163
+ this.element.setAttribute(`data-${__k}`, String((__map as any)[__k]));
164
+ }
165
+ }
166
+ }
108
167
  if (props.dir !== undefined) {
109
168
  this.setDir(props.dir);
110
169
  }
@@ -117,6 +176,9 @@ export class Embed {
117
176
  if (props.hidden !== undefined) {
118
177
  this.element.setAttribute('hidden', String(props.hidden));
119
178
  }
179
+ if (props.id !== undefined) {
180
+ this.element.setAttribute('id', String(props.id));
181
+ }
120
182
  if (props.inputmode !== undefined) {
121
183
  this.setInputmode(props.inputmode);
122
184
  }
@@ -132,6 +194,9 @@ export class Embed {
132
194
  if (props.style !== undefined) {
133
195
  this.element.setAttribute('style', String(props.style));
134
196
  }
197
+ if (props.tabIndex !== undefined) {
198
+ this.element.setAttribute('tabIndex', String(props.tabIndex));
199
+ }
135
200
  if (props.tabindex !== undefined) {
136
201
  this.element.setAttribute('tabindex', String(props.tabindex));
137
202
  }
@@ -149,6 +214,15 @@ export class Embed {
149
214
  }
150
215
  }
151
216
 
217
+ setAccessKey(value: string): this {
218
+ if (value === null || value === undefined) {
219
+ this.element.removeAttribute('accessKey');
220
+ } else {
221
+ this.element.setAttribute('accessKey', String(value));
222
+ }
223
+ return this;
224
+ }
225
+
152
226
  setAccesskey(value: string | null | undefined): this {
153
227
  if (value === null || value === undefined) {
154
228
  this.element.removeAttribute('accesskey');
@@ -158,6 +232,25 @@ export class Embed {
158
232
  return this;
159
233
  }
160
234
 
235
+ setAlpineAttributes(value: string | null | undefined): this {
236
+ if (value === null || value === undefined) {
237
+ // Remove all x-* Alpine attributes (best-effort)
238
+ for (const __a of Array.from(this.element.attributes)) {
239
+ if ((__a as Attr).name.startsWith('x-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
240
+ }
241
+ } else {
242
+ for (const __k in value as Record<string, string>) {
243
+ let __attr = __k;
244
+ if (__k.startsWith('@')) { __attr = 'x-on:' + __k.slice(1); }
245
+ else if (__k.startsWith(':')) { __attr = 'x-bind:' + __k.slice(1); }
246
+ else if (__k.startsWith('.')) { __attr = 'x-model' + __k; }
247
+ else if (!__k.startsWith('x-') && ['show','text','html','if','for','cloak','init','data','effect','ignore','ref','transition','teleport'].includes(__k)) { __attr = 'x-' + __k; }
248
+ this.element.setAttribute(__attr, String((value as any)[__k]));
249
+ }
250
+ }
251
+ return this;
252
+ }
253
+
161
254
  setAutocapitalize(value: 'none' | 'sentences' | 'words' | 'characters' | null | undefined): this {
162
255
  if (value === null || value === undefined) {
163
256
  this.element.removeAttribute('autocapitalize');
@@ -176,6 +269,24 @@ export class Embed {
176
269
  return this;
177
270
  }
178
271
 
272
+ setClassName(value: string): this {
273
+ if (value === null || value === undefined) {
274
+ this.element.removeAttribute('className');
275
+ } else {
276
+ this.element.setAttribute('className', String(value));
277
+ }
278
+ return this;
279
+ }
280
+
281
+ setContentEditable(value: boolean | "true" | "false" | "inherit"): this {
282
+ if (value === true) {
283
+ this.element.setAttribute('contentEditable', '');
284
+ } else {
285
+ this.element.removeAttribute('contentEditable');
286
+ }
287
+ return this;
288
+ }
289
+
179
290
  setContenteditable(value: 'true' | 'false' | 'inherit' | boolean | null | undefined): this {
180
291
  if (value === null || value === undefined) {
181
292
  this.element.removeAttribute('contenteditable');
@@ -185,6 +296,20 @@ export class Embed {
185
296
  return this;
186
297
  }
187
298
 
299
+ setDataAttributes(value: Record<string, string>): this {
300
+ if (value === null || value === undefined) {
301
+ // Remove all data-* attributes (best-effort)
302
+ for (const __a of Array.from(this.element.attributes)) {
303
+ if ((__a as Attr).name.startsWith('data-')) { (this.element as HTMLElement).removeAttribute((__a as Attr).name); }
304
+ }
305
+ } else {
306
+ for (const __k in value as Record<string, string>) {
307
+ this.element.setAttribute(`data-${__k}`, String((value as any)[__k]));
308
+ }
309
+ }
310
+ return this;
311
+ }
312
+
188
313
  setDir(value: 'ltr' | 'rtl' | 'auto' | null | undefined): this {
189
314
  if (value === null || value === undefined) {
190
315
  this.element.removeAttribute('dir');
@@ -221,6 +346,15 @@ export class Embed {
221
346
  return this;
222
347
  }
223
348
 
349
+ setId(value: string): this {
350
+ if (value === null || value === undefined) {
351
+ this.element.removeAttribute('id');
352
+ } else {
353
+ this.element.setAttribute('id', String(value));
354
+ }
355
+ return this;
356
+ }
357
+
224
358
  setInputmode(value: 'none' | 'text' | 'decimal' | 'numeric' | 'email' | 'tel' | 'url' | 'search' | null | undefined): this {
225
359
  if (value === null || value === undefined) {
226
360
  this.element.removeAttribute('inputmode');
@@ -266,6 +400,15 @@ export class Embed {
266
400
  return this;
267
401
  }
268
402
 
403
+ setTabIndex(value: number): this {
404
+ if (value === null || value === undefined) {
405
+ this.element.removeAttribute('tabIndex');
406
+ } else {
407
+ this.element.setAttribute('tabIndex', String(value));
408
+ }
409
+ return this;
410
+ }
411
+
269
412
  setTabindex(value: number | null | undefined): this {
270
413
  if (value === null || value === undefined) {
271
414
  this.element.removeAttribute('tabindex');