@public-ui/components 2.1.0 → 2.1.1

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 (860) hide show
  1. package/custom-elements.json +161 -6
  2. package/dist/cjs/{InternalUnderlinedAccessKey-a5b060e1.js → InternalUnderlinedAccessKey-f87fa594.js} +1 -1
  3. package/dist/cjs/{InternalUnderlinedAccessKey-a5b060e1.js.map → InternalUnderlinedAccessKey-f87fa594.js.map} +1 -1
  4. package/dist/cjs/access-key-d9482ed4.js +4 -0
  5. package/dist/cjs/{access-key-29c8f473.js.map → access-key-d9482ed4.js.map} +1 -1
  6. package/dist/cjs/{align-716634b6.js → align-1d1ae10e.js} +1 -1
  7. package/dist/cjs/{align-716634b6.js.map → align-1d1ae10e.js.map} +1 -1
  8. package/dist/cjs/alternative-button-link-role-58fda916.js +4 -0
  9. package/dist/cjs/{alternative-button-link-role-91c25ec3.js.map → alternative-button-link-role-58fda916.js.map} +1 -1
  10. package/dist/cjs/{app-globals-4f5190d8.js → app-globals-695ac478.js} +1 -1
  11. package/dist/cjs/{app-globals-4f5190d8.js.map → app-globals-695ac478.js.map} +1 -1
  12. package/dist/cjs/{associated.controller-3ba641a8.js → associated.controller-db13ec2f.js} +1 -1
  13. package/dist/cjs/associated.controller-db13ec2f.js.map +1 -0
  14. package/dist/cjs/{color-ed9292d8.js → color-5ac8da0f.js} +1 -1
  15. package/dist/cjs/{color-ed9292d8.js.map → color-5ac8da0f.js.map} +1 -1
  16. package/dist/cjs/component-names-42fa2334.js +4 -0
  17. package/dist/cjs/component-names-42fa2334.js.map +1 -0
  18. package/dist/cjs/{controller-3b2e3d4d.js → controller-271ad590.js} +1 -1
  19. package/dist/cjs/{controller-3b2e3d4d.js.map → controller-271ad590.js.map} +1 -1
  20. package/dist/cjs/{controller-411155c7.js → controller-5622a3e9.js} +1 -1
  21. package/dist/cjs/controller-5622a3e9.js.map +1 -0
  22. package/dist/cjs/{controller-4d211a58.js → controller-67b887ec.js} +1 -1
  23. package/dist/cjs/{controller-4d211a58.js.map → controller-67b887ec.js.map} +1 -1
  24. package/dist/cjs/{controller-98af2f0b.js → controller-82eef547.js} +1 -1
  25. package/dist/cjs/controller-82eef547.js.map +1 -0
  26. package/dist/cjs/{controller-95705083.js → controller-d75f1d88.js} +1 -1
  27. package/dist/cjs/controller-d75f1d88.js.map +1 -0
  28. package/dist/cjs/{controller-icon-dea18467.js → controller-icon-15956fae.js} +1 -1
  29. package/dist/cjs/{controller-icon-dea18467.js.map → controller-icon-15956fae.js.map} +1 -1
  30. package/dist/cjs/custom-class-1994e33e.js +4 -0
  31. package/dist/cjs/{custom-class-8298d456.js.map → custom-class-1994e33e.js.map} +1 -1
  32. package/dist/cjs/{dev.utils-b48ac291.js → dev.utils-498cc263.js} +1 -1
  33. package/dist/cjs/{dev.utils-b48ac291.js.map → dev.utils-498cc263.js.map} +1 -1
  34. package/dist/cjs/{devtools-d68258e5.js → devtools-016f59a8.js} +1 -1
  35. package/dist/cjs/{devtools-d68258e5.js.map → devtools-016f59a8.js.map} +1 -1
  36. package/dist/cjs/disabled-318b393f.js +4 -0
  37. package/dist/cjs/{disabled-67c674b5.js.map → disabled-318b393f.js.map} +1 -1
  38. package/dist/cjs/events-221fcb43.js.map +1 -1
  39. package/dist/cjs/{form-field-msg-2e2600d7.js → form-field-msg-6ba64b89.js} +1 -1
  40. package/dist/cjs/{form-field-msg-2e2600d7.js.map → form-field-msg-6ba64b89.js.map} +1 -1
  41. package/dist/cjs/has-closer-faa130b3.js +4 -0
  42. package/dist/cjs/{has-closer-ff878289.js.map → has-closer-faa130b3.js.map} +1 -1
  43. package/dist/cjs/hide-label-c79c6f73.js +4 -0
  44. package/dist/cjs/{hide-label-5d971414.js.map → hide-label-c79c6f73.js.map} +1 -1
  45. package/dist/cjs/href-957fccf1.js +4 -0
  46. package/dist/cjs/{href-add3090a.js.map → href-957fccf1.js.map} +1 -1
  47. package/dist/cjs/i18n-b5784b80.js +4 -0
  48. package/dist/cjs/i18n-b5784b80.js.map +1 -0
  49. package/dist/cjs/i18n-f89af010.js +4 -0
  50. package/dist/cjs/i18n-f89af010.js.map +1 -0
  51. package/dist/cjs/{icons-1c0ab99c.js → icons-1978226b.js} +1 -1
  52. package/dist/cjs/{icons-1c0ab99c.js.map → icons-1978226b.js.map} +1 -1
  53. package/dist/cjs/image-source-c6404daf.js +4 -0
  54. package/dist/cjs/{image-source-83159d74.js.map → image-source-c6404daf.js.map} +1 -1
  55. package/dist/cjs/{index-b30289da.js → index-a7c75949.js} +1 -1
  56. package/dist/cjs/{index-b30289da.js.map → index-a7c75949.js.map} +1 -1
  57. package/dist/cjs/{index-fb60429b.js → index-cadfb221.js} +1 -1
  58. package/dist/cjs/index-cadfb221.js.map +1 -0
  59. package/dist/cjs/index.cjs.js +1 -1
  60. package/dist/cjs/index.cjs.js.map +1 -1
  61. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-abbr.cjs.entry.js.map +1 -1
  63. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-accordion.cjs.entry.js.map +1 -1
  65. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  71. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-breadcrumb.cjs.entry.js.map +1 -1
  73. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-button-link.cjs.entry.js.map +1 -1
  77. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-card.cjs.entry.js.map +1 -1
  81. package/dist/cjs/kol-combobox.cjs.entry.js +4 -0
  82. package/dist/cjs/kol-combobox.cjs.entry.js.map +1 -0
  83. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  87. package/dist/cjs/kol-heading-wc.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-indented-text.cjs.entry.js.map +1 -1
  94. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  95. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  96. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  98. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  100. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  102. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  108. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-kolibri.cjs.entry.js.map +1 -1
  117. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  119. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  121. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-logo.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  127. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  129. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  130. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  131. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  132. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  133. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  134. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  136. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  137. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  138. package/dist/cjs/kol-skip-nav.cjs.entry.js.map +1 -1
  139. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  140. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  141. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  142. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  143. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  144. package/dist/cjs/kol-split-button.cjs.entry.js.map +1 -1
  145. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  146. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
  148. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js.map +1 -1
  150. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  151. package/dist/cjs/kol-table-stateless.cjs.entry.js.map +1 -1
  152. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  153. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  154. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  155. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  156. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  157. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  158. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  159. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  160. package/dist/cjs/kol-toolbar.cjs.entry.js +4 -0
  161. package/dist/cjs/kol-toolbar.cjs.entry.js.map +1 -0
  162. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  163. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  164. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  165. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  166. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  167. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  168. package/dist/cjs/kol-version.cjs.entry.js.map +1 -1
  169. package/dist/cjs/kolibri.cjs.js +1 -1
  170. package/dist/cjs/{label-23abf417.js → label-16722e9b.js} +1 -1
  171. package/dist/cjs/{label-23abf417.js.map → label-16722e9b.js.map} +1 -1
  172. package/dist/cjs/loader.cjs.js +1 -1
  173. package/dist/cjs/open-8775b5e7.js +4 -0
  174. package/dist/cjs/{open-a2cab99b.js.map → open-8775b5e7.js.map} +1 -1
  175. package/dist/cjs/prop.validators-6b697585.js +4 -0
  176. package/dist/cjs/prop.validators-6b697585.js.map +1 -0
  177. package/dist/cjs/rows-39d12076.js +4 -0
  178. package/dist/cjs/{rows-d2f243a5.js.map → rows-39d12076.js.map} +1 -1
  179. package/dist/cjs/show-2b20f5b3.js +4 -0
  180. package/dist/cjs/{show-8898a23d.js.map → show-2b20f5b3.js.map} +1 -1
  181. package/dist/cjs/{suggestions-8bd45259.js → suggestions-0e654c20.js} +1 -1
  182. package/dist/cjs/{suggestions-8bd45259.js.map → suggestions-0e654c20.js.map} +1 -1
  183. package/dist/cjs/{tab-index-0e013513.js → tab-index-a6c5cbc2.js} +1 -1
  184. package/dist/cjs/{tab-index-0e013513.js.map → tab-index-a6c5cbc2.js.map} +1 -1
  185. package/dist/cjs/{table-data-foot-5fe6c5bf.js → table-data-foot-2db3eba1.js} +1 -1
  186. package/dist/cjs/{table-data-foot-5fe6c5bf.js.map → table-data-foot-2db3eba1.js.map} +1 -1
  187. package/dist/cjs/{toaster-143bd150.js → toaster-c316603f.js} +1 -1
  188. package/dist/cjs/{toaster-143bd150.js.map → toaster-c316603f.js.map} +1 -1
  189. package/dist/cjs/{toaster-de2cd2c8.js → toaster-f1318681.js} +1 -1
  190. package/dist/cjs/{toaster-de2cd2c8.js.map → toaster-f1318681.js.map} +1 -1
  191. package/dist/cjs/tooltip-align-7465d6f9.js +4 -0
  192. package/dist/cjs/{tooltip-align-b968ab9c.js.map → tooltip-align-7465d6f9.js.map} +1 -1
  193. package/dist/cjs/{validation-3cdd4d53.js → validation-6f56784a.js} +1 -1
  194. package/dist/cjs/{validation-3cdd4d53.js.map → validation-6f56784a.js.map} +1 -1
  195. package/dist/cjs/{validation-80c0b59f.js → validation-aa1f8285.js} +1 -1
  196. package/dist/cjs/{validation-80c0b59f.js.map → validation-aa1f8285.js.map} +1 -1
  197. package/dist/components/associated.controller.js +1 -1
  198. package/dist/components/associated.controller.js.map +1 -1
  199. package/dist/components/component-names.js +1 -1
  200. package/dist/components/component-names.js.map +1 -1
  201. package/dist/components/controller2.js +1 -1
  202. package/dist/components/controller2.js.map +1 -1
  203. package/dist/components/controller3.js +1 -1
  204. package/dist/components/controller3.js.map +1 -1
  205. package/dist/components/controller5.js +1 -1
  206. package/dist/components/controller5.js.map +1 -1
  207. package/dist/components/dev.utils2.js +1 -1
  208. package/dist/components/dev.utils2.js.map +1 -1
  209. package/dist/components/devtools.js +1 -1
  210. package/dist/components/events.js.map +1 -1
  211. package/dist/components/i18n.js +1 -1
  212. package/dist/components/i18n.js.map +1 -1
  213. package/dist/components/i18n2.js +1 -1
  214. package/dist/components/i18n2.js.map +1 -1
  215. package/dist/components/index.js +1 -1
  216. package/dist/components/index.js.map +1 -1
  217. package/dist/components/kol-abbr.js.map +1 -1
  218. package/dist/components/kol-accordion.js.map +1 -1
  219. package/dist/components/kol-badge.js.map +1 -1
  220. package/dist/components/kol-breadcrumb.js.map +1 -1
  221. package/dist/components/kol-button-link.js.map +1 -1
  222. package/dist/components/kol-card.js.map +1 -1
  223. package/dist/components/kol-combobox.d.ts +11 -0
  224. package/dist/components/kol-combobox.js +4 -0
  225. package/dist/components/kol-combobox.js.map +1 -0
  226. package/dist/components/kol-details.js +1 -1
  227. package/dist/components/kol-details.js.map +1 -1
  228. package/dist/components/kol-form.js +1 -1
  229. package/dist/components/kol-form.js.map +1 -1
  230. package/dist/components/kol-icon.js.map +1 -1
  231. package/dist/components/kol-indented-text.js.map +1 -1
  232. package/dist/components/kol-input-checkbox.js +1 -1
  233. package/dist/components/kol-input-checkbox.js.map +1 -1
  234. package/dist/components/kol-input-color.js +1 -1
  235. package/dist/components/kol-input-color.js.map +1 -1
  236. package/dist/components/kol-input-date.js +1 -1
  237. package/dist/components/kol-input-date.js.map +1 -1
  238. package/dist/components/kol-input-email.js +1 -1
  239. package/dist/components/kol-input-email.js.map +1 -1
  240. package/dist/components/kol-input-file.js +1 -1
  241. package/dist/components/kol-input-file.js.map +1 -1
  242. package/dist/components/kol-input-number.js +1 -1
  243. package/dist/components/kol-input-number.js.map +1 -1
  244. package/dist/components/kol-input-password.js +1 -1
  245. package/dist/components/kol-input-password.js.map +1 -1
  246. package/dist/components/kol-input-radio.js +1 -1
  247. package/dist/components/kol-input-radio.js.map +1 -1
  248. package/dist/components/kol-input-range.js +1 -1
  249. package/dist/components/kol-input-range.js.map +1 -1
  250. package/dist/components/kol-input-text.js +1 -1
  251. package/dist/components/kol-input-text.js.map +1 -1
  252. package/dist/components/kol-kolibri.js.map +1 -1
  253. package/dist/components/kol-link-button.js.map +1 -1
  254. package/dist/components/kol-link-group.js.map +1 -1
  255. package/dist/components/kol-logo.js.map +1 -1
  256. package/dist/components/kol-modal.js.map +1 -1
  257. package/dist/components/kol-nav.js +1 -1
  258. package/dist/components/kol-nav.js.map +1 -1
  259. package/dist/components/kol-pagination.js.map +1 -1
  260. package/dist/components/kol-progress.js.map +1 -1
  261. package/dist/components/kol-select.js +1 -1
  262. package/dist/components/kol-select.js.map +1 -1
  263. package/dist/components/kol-skip-nav.js +1 -1
  264. package/dist/components/kol-skip-nav.js.map +1 -1
  265. package/dist/components/kol-span-wc.js +1 -1
  266. package/dist/components/kol-span.js +1 -1
  267. package/dist/components/kol-spin.js +1 -1
  268. package/dist/components/kol-spin.js.map +1 -1
  269. package/dist/components/kol-split-button.js +1 -1
  270. package/dist/components/kol-split-button.js.map +1 -1
  271. package/dist/components/kol-symbol.js +1 -1
  272. package/dist/components/kol-table-stateful.js +1 -1
  273. package/dist/components/kol-table-stateful.js.map +1 -1
  274. package/dist/components/kol-table-stateless-wc.js +1 -1
  275. package/dist/components/kol-table-stateless-wc.js.map +1 -1
  276. package/dist/components/kol-table-stateless.js +1 -1
  277. package/dist/components/kol-table-stateless.js.map +1 -1
  278. package/dist/components/kol-table.js +1 -1
  279. package/dist/components/kol-table.js.map +1 -1
  280. package/dist/components/kol-tabs.js +1 -1
  281. package/dist/components/kol-tabs.js.map +1 -1
  282. package/dist/components/kol-textarea.js +1 -1
  283. package/dist/components/kol-textarea.js.map +1 -1
  284. package/dist/components/kol-toast-container.js +1 -1
  285. package/dist/components/kol-toast-container.js.map +1 -1
  286. package/dist/components/kol-toolbar.d.ts +11 -0
  287. package/dist/components/kol-toolbar.js +4 -0
  288. package/dist/components/kol-toolbar.js.map +1 -0
  289. package/dist/components/kol-tooltip-wc.js +1 -1
  290. package/dist/components/kol-tree-item-wc.js +1 -1
  291. package/dist/components/kol-tree-item.js +1 -1
  292. package/dist/components/kol-tree-wc.js +1 -1
  293. package/dist/components/kol-tree.js +1 -1
  294. package/dist/components/kol-version.js +1 -1
  295. package/dist/components/kol-version.js.map +1 -1
  296. package/dist/components/prop.validators.js +1 -1
  297. package/dist/components/prop.validators.js.map +1 -1
  298. package/dist/components/table-data-foot.js +1 -1
  299. package/dist/esm/{InternalUnderlinedAccessKey-7fd49f04.js → InternalUnderlinedAccessKey-761081d1.js} +1 -1
  300. package/dist/esm/{InternalUnderlinedAccessKey-7fd49f04.js.map → InternalUnderlinedAccessKey-761081d1.js.map} +1 -1
  301. package/dist/esm/{access-key-04ca8172.js → access-key-2088944e.js} +1 -1
  302. package/dist/esm/{access-key-04ca8172.js.map → access-key-2088944e.js.map} +1 -1
  303. package/dist/esm/{align-fc528dec.js → align-d1a156ea.js} +1 -1
  304. package/dist/esm/{align-fc528dec.js.map → align-d1a156ea.js.map} +1 -1
  305. package/dist/esm/alternative-button-link-role-d488ee62.js +4 -0
  306. package/dist/esm/{alternative-button-link-role-97826181.js.map → alternative-button-link-role-d488ee62.js.map} +1 -1
  307. package/dist/esm/{app-globals-d78b8e64.js → app-globals-0a6bae96.js} +1 -1
  308. package/dist/esm/{app-globals-d78b8e64.js.map → app-globals-0a6bae96.js.map} +1 -1
  309. package/dist/esm/{associated.controller-b0ff2f30.js → associated.controller-78cca038.js} +1 -1
  310. package/dist/esm/associated.controller-78cca038.js.map +1 -0
  311. package/dist/esm/{color-5129ba78.js → color-7b8f14f1.js} +1 -1
  312. package/dist/esm/{color-5129ba78.js.map → color-7b8f14f1.js.map} +1 -1
  313. package/dist/esm/{component-names-ed22f86e.js → component-names-791b1799.js} +1 -1
  314. package/dist/esm/component-names-791b1799.js.map +1 -0
  315. package/dist/esm/{controller-3340473e.js → controller-6dbe7400.js} +1 -1
  316. package/dist/esm/{controller-3340473e.js.map → controller-6dbe7400.js.map} +1 -1
  317. package/dist/esm/{controller-04329990.js → controller-79aeabea.js} +1 -1
  318. package/dist/esm/{controller-04329990.js.map → controller-79aeabea.js.map} +1 -1
  319. package/dist/esm/{controller-423fae71.js → controller-7b7973c3.js} +1 -1
  320. package/dist/esm/controller-7b7973c3.js.map +1 -0
  321. package/dist/esm/{controller-942cc80a.js → controller-a9d47674.js} +1 -1
  322. package/dist/esm/controller-a9d47674.js.map +1 -0
  323. package/dist/esm/{controller-af9c691f.js → controller-e9be8fce.js} +1 -1
  324. package/dist/esm/controller-e9be8fce.js.map +1 -0
  325. package/dist/esm/{controller-icon-b040c27e.js → controller-icon-94ae3b11.js} +1 -1
  326. package/dist/esm/{controller-icon-b040c27e.js.map → controller-icon-94ae3b11.js.map} +1 -1
  327. package/dist/esm/custom-class-f0577c87.js +4 -0
  328. package/dist/esm/{custom-class-f88bc94b.js.map → custom-class-f0577c87.js.map} +1 -1
  329. package/dist/esm/{dev.utils-37559a2c.js → dev.utils-60f0cf1e.js} +1 -1
  330. package/dist/esm/{dev.utils-37559a2c.js.map → dev.utils-60f0cf1e.js.map} +1 -1
  331. package/dist/esm/{devtools-a2ed4171.js → devtools-e7ed3a43.js} +1 -1
  332. package/dist/esm/{devtools-a2ed4171.js.map → devtools-e7ed3a43.js.map} +1 -1
  333. package/dist/esm/{disabled-fbc49ac0.js → disabled-8359b1c0.js} +1 -1
  334. package/dist/esm/{disabled-fbc49ac0.js.map → disabled-8359b1c0.js.map} +1 -1
  335. package/dist/esm/events-29e84d75.js.map +1 -1
  336. package/dist/esm/{form-field-msg-244f6083.js → form-field-msg-5b00ea20.js} +1 -1
  337. package/dist/esm/{form-field-msg-244f6083.js.map → form-field-msg-5b00ea20.js.map} +1 -1
  338. package/dist/esm/{has-closer-f9cf9bc4.js → has-closer-c660ab7d.js} +1 -1
  339. package/dist/esm/{has-closer-f9cf9bc4.js.map → has-closer-c660ab7d.js.map} +1 -1
  340. package/dist/esm/{hide-label-c461d8fe.js → hide-label-80a2c6d3.js} +1 -1
  341. package/dist/esm/{hide-label-c461d8fe.js.map → hide-label-80a2c6d3.js.map} +1 -1
  342. package/dist/esm/{href-7d17954a.js → href-c781430c.js} +1 -1
  343. package/dist/esm/{href-7d17954a.js.map → href-c781430c.js.map} +1 -1
  344. package/dist/esm/i18n-9eed57c7.js +4 -0
  345. package/dist/esm/i18n-9eed57c7.js.map +1 -0
  346. package/dist/esm/i18n-a7081f2c.js +4 -0
  347. package/dist/esm/i18n-a7081f2c.js.map +1 -0
  348. package/dist/esm/{icons-d2e01be4.js → icons-652ffedc.js} +1 -1
  349. package/dist/esm/{icons-d2e01be4.js.map → icons-652ffedc.js.map} +1 -1
  350. package/dist/esm/{image-source-36b5abe9.js → image-source-4e353998.js} +1 -1
  351. package/dist/esm/{image-source-36b5abe9.js.map → image-source-4e353998.js.map} +1 -1
  352. package/dist/esm/{index-3fbcceca.js → index-40be4caf.js} +1 -1
  353. package/dist/esm/index-40be4caf.js.map +1 -0
  354. package/dist/esm/{index-a55b574c.js → index-b84ec40b.js} +1 -1
  355. package/dist/esm/{index-a55b574c.js.map → index-b84ec40b.js.map} +1 -1
  356. package/dist/esm/index.js +1 -1
  357. package/dist/esm/index.js.map +1 -1
  358. package/dist/esm/kol-abbr.entry.js +1 -1
  359. package/dist/esm/kol-abbr.entry.js.map +1 -1
  360. package/dist/esm/kol-accordion.entry.js +1 -1
  361. package/dist/esm/kol-accordion.entry.js.map +1 -1
  362. package/dist/esm/kol-alert-wc.entry.js +1 -1
  363. package/dist/esm/kol-alert.entry.js +1 -1
  364. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  365. package/dist/esm/kol-avatar.entry.js +1 -1
  366. package/dist/esm/kol-badge.entry.js +1 -1
  367. package/dist/esm/kol-badge.entry.js.map +1 -1
  368. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  369. package/dist/esm/kol-breadcrumb.entry.js.map +1 -1
  370. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  371. package/dist/esm/kol-button-group.entry.js +1 -1
  372. package/dist/esm/kol-button-link.entry.js +1 -1
  373. package/dist/esm/kol-button-link.entry.js.map +1 -1
  374. package/dist/esm/kol-button-wc.entry.js +1 -1
  375. package/dist/esm/kol-button.entry.js +1 -1
  376. package/dist/esm/kol-card.entry.js +1 -1
  377. package/dist/esm/kol-card.entry.js.map +1 -1
  378. package/dist/esm/kol-combobox.entry.js +4 -0
  379. package/dist/esm/kol-combobox.entry.js.map +1 -0
  380. package/dist/esm/kol-details.entry.js +1 -1
  381. package/dist/esm/kol-details.entry.js.map +1 -1
  382. package/dist/esm/kol-form.entry.js +1 -1
  383. package/dist/esm/kol-form.entry.js.map +1 -1
  384. package/dist/esm/kol-heading-wc.entry.js +1 -1
  385. package/dist/esm/kol-heading.entry.js +1 -1
  386. package/dist/esm/kol-icon.entry.js +1 -1
  387. package/dist/esm/kol-icon.entry.js.map +1 -1
  388. package/dist/esm/kol-image.entry.js +1 -1
  389. package/dist/esm/kol-indented-text.entry.js +1 -1
  390. package/dist/esm/kol-indented-text.entry.js.map +1 -1
  391. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  392. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  393. package/dist/esm/kol-input-color.entry.js +1 -1
  394. package/dist/esm/kol-input-color.entry.js.map +1 -1
  395. package/dist/esm/kol-input-date.entry.js +1 -1
  396. package/dist/esm/kol-input-date.entry.js.map +1 -1
  397. package/dist/esm/kol-input-email.entry.js +1 -1
  398. package/dist/esm/kol-input-email.entry.js.map +1 -1
  399. package/dist/esm/kol-input-file.entry.js +1 -1
  400. package/dist/esm/kol-input-file.entry.js.map +1 -1
  401. package/dist/esm/kol-input-number.entry.js +1 -1
  402. package/dist/esm/kol-input-number.entry.js.map +1 -1
  403. package/dist/esm/kol-input-password.entry.js +1 -1
  404. package/dist/esm/kol-input-password.entry.js.map +1 -1
  405. package/dist/esm/kol-input-radio.entry.js +1 -1
  406. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  407. package/dist/esm/kol-input-range.entry.js +1 -1
  408. package/dist/esm/kol-input-range.entry.js.map +1 -1
  409. package/dist/esm/kol-input-text.entry.js +1 -1
  410. package/dist/esm/kol-input-text.entry.js.map +1 -1
  411. package/dist/esm/kol-input.entry.js +1 -1
  412. package/dist/esm/kol-kolibri.entry.js +1 -1
  413. package/dist/esm/kol-kolibri.entry.js.map +1 -1
  414. package/dist/esm/kol-link-button.entry.js +1 -1
  415. package/dist/esm/kol-link-button.entry.js.map +1 -1
  416. package/dist/esm/kol-link-group.entry.js +1 -1
  417. package/dist/esm/kol-link-group.entry.js.map +1 -1
  418. package/dist/esm/kol-link-wc.entry.js +1 -1
  419. package/dist/esm/kol-link.entry.js +1 -1
  420. package/dist/esm/kol-logo.entry.js +1 -1
  421. package/dist/esm/kol-logo.entry.js.map +1 -1
  422. package/dist/esm/kol-modal.entry.js +1 -1
  423. package/dist/esm/kol-modal.entry.js.map +1 -1
  424. package/dist/esm/kol-nav.entry.js +1 -1
  425. package/dist/esm/kol-nav.entry.js.map +1 -1
  426. package/dist/esm/kol-pagination.entry.js +1 -1
  427. package/dist/esm/kol-pagination.entry.js.map +1 -1
  428. package/dist/esm/kol-popover-wc.entry.js +1 -1
  429. package/dist/esm/kol-progress.entry.js +1 -1
  430. package/dist/esm/kol-progress.entry.js.map +1 -1
  431. package/dist/esm/kol-quote.entry.js +1 -1
  432. package/dist/esm/kol-select.entry.js +1 -1
  433. package/dist/esm/kol-select.entry.js.map +1 -1
  434. package/dist/esm/kol-skip-nav.entry.js +1 -1
  435. package/dist/esm/kol-skip-nav.entry.js.map +1 -1
  436. package/dist/esm/kol-span-wc.entry.js +1 -1
  437. package/dist/esm/kol-span.entry.js +1 -1
  438. package/dist/esm/kol-spin.entry.js +1 -1
  439. package/dist/esm/kol-spin.entry.js.map +1 -1
  440. package/dist/esm/kol-split-button.entry.js +1 -1
  441. package/dist/esm/kol-split-button.entry.js.map +1 -1
  442. package/dist/esm/kol-symbol.entry.js +1 -1
  443. package/dist/esm/kol-table-stateful.entry.js +1 -1
  444. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  445. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  446. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  447. package/dist/esm/kol-table-stateless.entry.js +1 -1
  448. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  449. package/dist/esm/kol-table.entry.js +1 -1
  450. package/dist/esm/kol-table.entry.js.map +1 -1
  451. package/dist/esm/kol-tabs.entry.js +1 -1
  452. package/dist/esm/kol-tabs.entry.js.map +1 -1
  453. package/dist/esm/kol-textarea.entry.js +1 -1
  454. package/dist/esm/kol-textarea.entry.js.map +1 -1
  455. package/dist/esm/kol-toast-container.entry.js +1 -1
  456. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  457. package/dist/esm/kol-toolbar.entry.js +4 -0
  458. package/dist/esm/kol-toolbar.entry.js.map +1 -0
  459. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  460. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  461. package/dist/esm/kol-tree-item.entry.js +1 -1
  462. package/dist/esm/kol-tree-wc.entry.js +1 -1
  463. package/dist/esm/kol-tree.entry.js +1 -1
  464. package/dist/esm/kol-version.entry.js +1 -1
  465. package/dist/esm/kol-version.entry.js.map +1 -1
  466. package/dist/esm/kolibri.js +1 -1
  467. package/dist/esm/{label-e56ffdc6.js → label-af70fdc5.js} +1 -1
  468. package/dist/esm/{label-e56ffdc6.js.map → label-af70fdc5.js.map} +1 -1
  469. package/dist/esm/loader.js +1 -1
  470. package/dist/esm/{open-deacfbd7.js → open-c3666632.js} +1 -1
  471. package/dist/esm/{open-deacfbd7.js.map → open-c3666632.js.map} +1 -1
  472. package/dist/esm/prop.validators-28badc7d.js +4 -0
  473. package/dist/esm/prop.validators-28badc7d.js.map +1 -0
  474. package/dist/esm/{rows-005ad248.js → rows-7ae440b2.js} +1 -1
  475. package/dist/esm/{rows-005ad248.js.map → rows-7ae440b2.js.map} +1 -1
  476. package/dist/esm/show-5f532097.js +4 -0
  477. package/dist/esm/{show-34226103.js.map → show-5f532097.js.map} +1 -1
  478. package/dist/esm/{suggestions-d97a6ab9.js → suggestions-26f089e6.js} +1 -1
  479. package/dist/esm/{suggestions-d97a6ab9.js.map → suggestions-26f089e6.js.map} +1 -1
  480. package/dist/esm/{tab-index-2cbc1ad1.js → tab-index-4c88df26.js} +1 -1
  481. package/dist/esm/{tab-index-2cbc1ad1.js.map → tab-index-4c88df26.js.map} +1 -1
  482. package/dist/esm/{table-data-foot-ed56b062.js → table-data-foot-8bae51b6.js} +1 -1
  483. package/dist/esm/{table-data-foot-ed56b062.js.map → table-data-foot-8bae51b6.js.map} +1 -1
  484. package/dist/esm/{toaster-b6d0fa6b.js → toaster-0d476f08.js} +1 -1
  485. package/dist/esm/{toaster-b6d0fa6b.js.map → toaster-0d476f08.js.map} +1 -1
  486. package/dist/esm/{toaster-18d16ce1.js → toaster-d95de236.js} +1 -1
  487. package/dist/esm/{toaster-18d16ce1.js.map → toaster-d95de236.js.map} +1 -1
  488. package/dist/esm/tooltip-align-0c6ee8c8.js +4 -0
  489. package/dist/esm/{tooltip-align-c13a7aa7.js.map → tooltip-align-0c6ee8c8.js.map} +1 -1
  490. package/dist/esm/{validation-c2d11c8c.js → validation-97f17c5a.js} +1 -1
  491. package/dist/esm/{validation-c2d11c8c.js.map → validation-97f17c5a.js.map} +1 -1
  492. package/dist/esm/{validation-561836d9.js → validation-d30fdb06.js} +1 -1
  493. package/dist/esm/{validation-561836d9.js.map → validation-d30fdb06.js.map} +1 -1
  494. package/dist/kolibri/{InternalUnderlinedAccessKey-7fd49f04.js → InternalUnderlinedAccessKey-761081d1.js} +1 -1
  495. package/dist/kolibri/access-key-2088944e.js +4 -0
  496. package/dist/kolibri/{align-fc528dec.js → align-d1a156ea.js} +1 -1
  497. package/dist/kolibri/alternative-button-link-role-d488ee62.js +4 -0
  498. package/dist/kolibri/app-globals-0a6bae96.js +4 -0
  499. package/dist/kolibri/{associated.controller-b0ff2f30.js → associated.controller-78cca038.js} +1 -1
  500. package/dist/kolibri/{associated.controller-b0ff2f30.js.map → associated.controller-78cca038.js.map} +1 -1
  501. package/dist/kolibri/{color-5129ba78.js → color-7b8f14f1.js} +1 -1
  502. package/dist/kolibri/{component-names-ed22f86e.js → component-names-791b1799.js} +1 -1
  503. package/dist/kolibri/component-names-791b1799.js.map +1 -0
  504. package/dist/kolibri/controller-6dbe7400.js +4 -0
  505. package/dist/kolibri/{controller-04329990.js → controller-79aeabea.js} +1 -1
  506. package/dist/kolibri/controller-7b7973c3.js +4 -0
  507. package/dist/kolibri/controller-7b7973c3.js.map +1 -0
  508. package/dist/kolibri/{controller-942cc80a.js → controller-a9d47674.js} +1 -1
  509. package/dist/kolibri/{controller-942cc80a.js.map → controller-a9d47674.js.map} +1 -1
  510. package/dist/kolibri/{controller-af9c691f.js → controller-e9be8fce.js} +1 -1
  511. package/dist/kolibri/controller-e9be8fce.js.map +1 -0
  512. package/dist/kolibri/{controller-icon-b040c27e.js → controller-icon-94ae3b11.js} +1 -1
  513. package/dist/kolibri/custom-class-f0577c87.js +4 -0
  514. package/dist/kolibri/{dev.utils-37559a2c.js → dev.utils-60f0cf1e.js} +1 -1
  515. package/dist/kolibri/{dev.utils-37559a2c.js.map → dev.utils-60f0cf1e.js.map} +1 -1
  516. package/dist/kolibri/{devtools-a2ed4171.js → devtools-e7ed3a43.js} +1 -1
  517. package/dist/kolibri/{disabled-fbc49ac0.js → disabled-8359b1c0.js} +1 -1
  518. package/dist/kolibri/events-29e84d75.js.map +1 -1
  519. package/dist/kolibri/form-field-msg-5b00ea20.js +4 -0
  520. package/dist/kolibri/has-closer-c660ab7d.js +4 -0
  521. package/dist/kolibri/hide-label-80a2c6d3.js +4 -0
  522. package/dist/kolibri/href-c781430c.js +4 -0
  523. package/dist/kolibri/i18n-9eed57c7.js +4 -0
  524. package/dist/kolibri/i18n-9eed57c7.js.map +1 -0
  525. package/dist/kolibri/i18n-a7081f2c.js +4 -0
  526. package/dist/kolibri/i18n-a7081f2c.js.map +1 -0
  527. package/dist/kolibri/{icons-d2e01be4.js → icons-652ffedc.js} +1 -1
  528. package/dist/kolibri/image-source-4e353998.js +4 -0
  529. package/dist/kolibri/{index-3fbcceca.js → index-40be4caf.js} +2 -2
  530. package/dist/kolibri/index-40be4caf.js.map +1 -0
  531. package/dist/kolibri/{index-a55b574c.js → index-b84ec40b.js} +1 -1
  532. package/dist/kolibri/index.esm.js +1 -1
  533. package/dist/kolibri/index.esm.js.map +1 -1
  534. package/dist/kolibri/kol-abbr.entry.js +1 -1
  535. package/dist/kolibri/kol-abbr.entry.js.map +1 -1
  536. package/dist/kolibri/kol-accordion.entry.js +1 -1
  537. package/dist/kolibri/kol-accordion.entry.js.map +1 -1
  538. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  539. package/dist/kolibri/kol-alert.entry.js +1 -1
  540. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  541. package/dist/kolibri/kol-avatar.entry.js +1 -1
  542. package/dist/kolibri/kol-badge.entry.js +1 -1
  543. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  544. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  545. package/dist/kolibri/kol-breadcrumb.entry.js.map +1 -1
  546. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  547. package/dist/kolibri/kol-button-group.entry.js +1 -1
  548. package/dist/kolibri/kol-button-link.entry.js +1 -1
  549. package/dist/kolibri/kol-button-link.entry.js.map +1 -1
  550. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  551. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  552. package/dist/kolibri/kol-button.entry.js +1 -1
  553. package/dist/kolibri/kol-card.entry.js +1 -1
  554. package/dist/kolibri/kol-card.entry.js.map +1 -1
  555. package/dist/kolibri/kol-combobox.entry.js +4 -0
  556. package/dist/kolibri/kol-combobox.entry.js.map +1 -0
  557. package/dist/kolibri/kol-details.entry.js +1 -1
  558. package/dist/kolibri/kol-details.entry.js.map +1 -1
  559. package/dist/kolibri/kol-form.entry.js +1 -1
  560. package/dist/kolibri/kol-form.entry.js.map +1 -1
  561. package/dist/kolibri/kol-heading-wc.entry.js +1 -1
  562. package/dist/kolibri/kol-heading.entry.js +1 -1
  563. package/dist/kolibri/kol-icon.entry.js +1 -1
  564. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  565. package/dist/kolibri/kol-image.entry.js +1 -1
  566. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  567. package/dist/kolibri/kol-indented-text.entry.js.map +1 -1
  568. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  569. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  570. package/dist/kolibri/kol-input-color.entry.js +1 -1
  571. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  572. package/dist/kolibri/kol-input-date.entry.js +1 -1
  573. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  574. package/dist/kolibri/kol-input-email.entry.js +1 -1
  575. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  576. package/dist/kolibri/kol-input-file.entry.js +1 -1
  577. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  578. package/dist/kolibri/kol-input-number.entry.js +1 -1
  579. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  580. package/dist/kolibri/kol-input-password.entry.js +1 -1
  581. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  582. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  583. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  584. package/dist/kolibri/kol-input-range.entry.js +1 -1
  585. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  586. package/dist/kolibri/kol-input-text.entry.js +1 -1
  587. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  588. package/dist/kolibri/kol-input.entry.js +1 -1
  589. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  590. package/dist/kolibri/kol-kolibri.entry.js.map +1 -1
  591. package/dist/kolibri/kol-link-button.entry.js +1 -1
  592. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  593. package/dist/kolibri/kol-link-group.entry.js +1 -1
  594. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  595. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  596. package/dist/kolibri/kol-link.entry.js +1 -1
  597. package/dist/kolibri/kol-logo.entry.js +1 -1
  598. package/dist/kolibri/kol-logo.entry.js.map +1 -1
  599. package/dist/kolibri/kol-modal.entry.js +1 -1
  600. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  601. package/dist/kolibri/kol-nav.entry.js +1 -1
  602. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  603. package/dist/kolibri/kol-pagination.entry.js +1 -1
  604. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  605. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  606. package/dist/kolibri/kol-progress.entry.js +1 -1
  607. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  608. package/dist/kolibri/kol-quote.entry.js +1 -1
  609. package/dist/kolibri/kol-select.entry.js +1 -1
  610. package/dist/kolibri/kol-select.entry.js.map +1 -1
  611. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  612. package/dist/kolibri/kol-skip-nav.entry.js.map +1 -1
  613. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  614. package/dist/kolibri/kol-span.entry.js +1 -1
  615. package/dist/kolibri/kol-spin.entry.js +1 -1
  616. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  617. package/dist/kolibri/kol-split-button.entry.js +1 -1
  618. package/dist/kolibri/kol-split-button.entry.js.map +1 -1
  619. package/dist/kolibri/kol-symbol.entry.js +1 -1
  620. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  621. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  622. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  623. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  624. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  625. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  626. package/dist/kolibri/kol-table.entry.js +1 -1
  627. package/dist/kolibri/kol-table.entry.js.map +1 -1
  628. package/dist/kolibri/kol-tabs.entry.js +1 -1
  629. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  630. package/dist/kolibri/kol-textarea.entry.js +1 -1
  631. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  632. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  633. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  634. package/dist/kolibri/kol-toolbar.entry.js +4 -0
  635. package/dist/kolibri/kol-toolbar.entry.js.map +1 -0
  636. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  637. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  638. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  639. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  640. package/dist/kolibri/kol-tree.entry.js +1 -1
  641. package/dist/kolibri/kol-version.entry.js +1 -1
  642. package/dist/kolibri/kol-version.entry.js.map +1 -1
  643. package/dist/kolibri/kolibri.esm.js +1 -1
  644. package/dist/kolibri/kolibri.esm.js.map +1 -1
  645. package/dist/kolibri/{label-e56ffdc6.js → label-af70fdc5.js} +1 -1
  646. package/dist/kolibri/open-c3666632.js +4 -0
  647. package/dist/kolibri/prop.validators-28badc7d.js +4 -0
  648. package/dist/kolibri/prop.validators-28badc7d.js.map +1 -0
  649. package/dist/kolibri/rows-7ae440b2.js +4 -0
  650. package/dist/kolibri/show-5f532097.js +4 -0
  651. package/dist/kolibri/{suggestions-d97a6ab9.js → suggestions-26f089e6.js} +1 -1
  652. package/dist/kolibri/tab-index-4c88df26.js +4 -0
  653. package/dist/kolibri/{tab-index-2cbc1ad1.js.map → tab-index-4c88df26.js.map} +1 -1
  654. package/dist/kolibri/table-data-foot-8bae51b6.js +4 -0
  655. package/dist/kolibri/{table-data-foot-ed56b062.js.map → table-data-foot-8bae51b6.js.map} +1 -1
  656. package/dist/kolibri/{toaster-b6d0fa6b.js → toaster-0d476f08.js} +1 -1
  657. package/dist/kolibri/{toaster-18d16ce1.js → toaster-d95de236.js} +1 -1
  658. package/dist/kolibri/tooltip-align-0c6ee8c8.js +4 -0
  659. package/dist/kolibri/validation-97f17c5a.js +4 -0
  660. package/dist/kolibri/validation-d30fdb06.js +4 -0
  661. package/dist/types/components/@deprecated/input/controller.d.ts +6 -6
  662. package/dist/types/components/combobox/controller.d.ts +13 -0
  663. package/dist/types/components/combobox/shadow.d.ts +66 -0
  664. package/dist/types/components/input-password/controller.d.ts +0 -3
  665. package/dist/types/components/input-radio/controller.d.ts +1 -1
  666. package/dist/types/components/input-radio/{component.d.ts → shadow.d.ts} +2 -0
  667. package/dist/types/components/link-button/{component.d.ts → shadow.d.ts} +1 -1
  668. package/dist/types/components/link-button/test/html.mock.d.ts +2 -0
  669. package/dist/types/components/link-group/test/html.mock.d.ts +2 -0
  670. package/dist/types/components/modal/test/html.mock.d.ts +1 -0
  671. package/dist/types/components/nav/test/html.mock.d.ts +2 -0
  672. package/dist/types/components/pagination/test/html.mock.d.ts +2 -0
  673. package/dist/types/components/select/test/html.mock.d.ts +2 -0
  674. package/dist/types/components/skip-nav/test/html.mock.d.ts +2 -0
  675. package/dist/types/components/split-button/{component.d.ts → shadow.d.ts} +2 -2
  676. package/dist/types/components/split-button/test/html.mock.d.ts +2 -0
  677. package/dist/types/components/table-stateless/component.d.ts +8 -1
  678. package/dist/types/components/table-stateless/shadow.d.ts +2 -1
  679. package/dist/types/components/tabs/test/html.mock.d.ts +2 -0
  680. package/dist/types/components/textarea/test/html.mock.d.ts +2 -0
  681. package/dist/types/components/toolbar/shadow.d.ts +19 -0
  682. package/dist/types/components/toolbar/test/html.mock.d.ts +2 -0
  683. package/dist/types/components.d.ts +229 -6
  684. package/dist/types/core/component-names.d.ts +1 -0
  685. package/dist/types/core/i18n.d.ts +4 -1
  686. package/dist/types/i18n.d.ts +1 -3
  687. package/dist/types/index.d.ts +1 -1
  688. package/dist/types/locales/de.d.ts +3 -0
  689. package/dist/types/locales/en.d.ts +3 -0
  690. package/dist/types/schema/components/combobox.d.ts +32 -0
  691. package/dist/types/schema/components/index.d.ts +1 -1
  692. package/dist/types/schema/components/select.d.ts +2 -2
  693. package/dist/types/schema/components/split-button.d.ts +2 -2
  694. package/dist/types/schema/components/table.d.ts +0 -3
  695. package/dist/types/schema/components/tableStateless.d.ts +4 -3
  696. package/dist/types/schema/components/textarea.d.ts +2 -2
  697. package/dist/types/schema/components/toolbar.d.ts +10 -0
  698. package/dist/types/schema/enums/events.d.ts +1 -0
  699. package/dist/types/schema/index.d.ts +1 -1
  700. package/dist/types/schema/props/index.d.ts +1 -1
  701. package/dist/types/schema/props/table-callbacks.d.ts +2 -0
  702. package/dist/types/schema/props/table-selection.d.ts +7 -0
  703. package/dist/types/schema/props/toolbar-items.d.ts +8 -0
  704. package/dist/types/schema/tag-names.d.ts +42 -41
  705. package/dist/types/schema/types/table.d.ts +6 -0
  706. package/dist/types/schema/utils/a11y.tipps.d.ts +1 -0
  707. package/dist/types/utils/events.d.ts +1 -1
  708. package/doc/button-link.md +23 -0
  709. package/doc/button.md +23 -0
  710. package/doc/combobox.md +100 -0
  711. package/doc/input-checkbox.md +23 -0
  712. package/doc/input-date.md +24 -0
  713. package/doc/input-email.md +24 -0
  714. package/doc/input-file.md +24 -0
  715. package/doc/input-number.md +24 -0
  716. package/doc/input-password.md +24 -0
  717. package/doc/input-radio.md +23 -1
  718. package/doc/input-range.md +26 -0
  719. package/doc/input-text.md +26 -0
  720. package/doc/link-button.md +17 -17
  721. package/doc/select.md +24 -0
  722. package/doc/table-stateless.md +44 -11
  723. package/doc/textarea.md +24 -0
  724. package/doc/toolbar.md +84 -0
  725. package/package.json +1 -1
  726. package/vscode-custom-data.json +111 -3
  727. package/dist/cjs/access-key-29c8f473.js +0 -4
  728. package/dist/cjs/alternative-button-link-role-91c25ec3.js +0 -4
  729. package/dist/cjs/associated.controller-3ba641a8.js.map +0 -1
  730. package/dist/cjs/component-names-21d7915c.js +0 -4
  731. package/dist/cjs/component-names-21d7915c.js.map +0 -1
  732. package/dist/cjs/controller-411155c7.js.map +0 -1
  733. package/dist/cjs/controller-95705083.js.map +0 -1
  734. package/dist/cjs/controller-98af2f0b.js.map +0 -1
  735. package/dist/cjs/custom-class-8298d456.js +0 -4
  736. package/dist/cjs/disabled-67c674b5.js +0 -4
  737. package/dist/cjs/has-closer-ff878289.js +0 -4
  738. package/dist/cjs/hide-label-5d971414.js +0 -4
  739. package/dist/cjs/href-add3090a.js +0 -4
  740. package/dist/cjs/i18n-4f73c04e.js +0 -4
  741. package/dist/cjs/i18n-4f73c04e.js.map +0 -1
  742. package/dist/cjs/i18n-ac90ee57.js +0 -4
  743. package/dist/cjs/i18n-ac90ee57.js.map +0 -1
  744. package/dist/cjs/image-source-83159d74.js +0 -4
  745. package/dist/cjs/index-fb60429b.js.map +0 -1
  746. package/dist/cjs/open-a2cab99b.js +0 -4
  747. package/dist/cjs/prop.validators-5eb93968.js +0 -4
  748. package/dist/cjs/prop.validators-5eb93968.js.map +0 -1
  749. package/dist/cjs/rows-d2f243a5.js +0 -4
  750. package/dist/cjs/show-8898a23d.js +0 -4
  751. package/dist/cjs/tooltip-align-b968ab9c.js +0 -4
  752. package/dist/esm/alternative-button-link-role-97826181.js +0 -4
  753. package/dist/esm/associated.controller-b0ff2f30.js.map +0 -1
  754. package/dist/esm/component-names-ed22f86e.js.map +0 -1
  755. package/dist/esm/controller-423fae71.js.map +0 -1
  756. package/dist/esm/controller-942cc80a.js.map +0 -1
  757. package/dist/esm/controller-af9c691f.js.map +0 -1
  758. package/dist/esm/custom-class-f88bc94b.js +0 -4
  759. package/dist/esm/i18n-0c047df5.js +0 -4
  760. package/dist/esm/i18n-0c047df5.js.map +0 -1
  761. package/dist/esm/i18n-37baa421.js +0 -4
  762. package/dist/esm/i18n-37baa421.js.map +0 -1
  763. package/dist/esm/index-3fbcceca.js.map +0 -1
  764. package/dist/esm/prop.validators-29d576d2.js +0 -4
  765. package/dist/esm/prop.validators-29d576d2.js.map +0 -1
  766. package/dist/esm/show-34226103.js +0 -4
  767. package/dist/esm/tooltip-align-c13a7aa7.js +0 -4
  768. package/dist/kolibri/access-key-04ca8172.js +0 -4
  769. package/dist/kolibri/alternative-button-link-role-97826181.js +0 -4
  770. package/dist/kolibri/app-globals-d78b8e64.js +0 -4
  771. package/dist/kolibri/component-names-ed22f86e.js.map +0 -1
  772. package/dist/kolibri/controller-3340473e.js +0 -4
  773. package/dist/kolibri/controller-423fae71.js +0 -4
  774. package/dist/kolibri/controller-423fae71.js.map +0 -1
  775. package/dist/kolibri/controller-af9c691f.js.map +0 -1
  776. package/dist/kolibri/custom-class-f88bc94b.js +0 -4
  777. package/dist/kolibri/form-field-msg-244f6083.js +0 -4
  778. package/dist/kolibri/has-closer-f9cf9bc4.js +0 -4
  779. package/dist/kolibri/hide-label-c461d8fe.js +0 -4
  780. package/dist/kolibri/href-7d17954a.js +0 -4
  781. package/dist/kolibri/i18n-0c047df5.js +0 -4
  782. package/dist/kolibri/i18n-0c047df5.js.map +0 -1
  783. package/dist/kolibri/i18n-37baa421.js +0 -4
  784. package/dist/kolibri/i18n-37baa421.js.map +0 -1
  785. package/dist/kolibri/image-source-36b5abe9.js +0 -4
  786. package/dist/kolibri/index-3fbcceca.js.map +0 -1
  787. package/dist/kolibri/open-deacfbd7.js +0 -4
  788. package/dist/kolibri/prop.validators-29d576d2.js +0 -4
  789. package/dist/kolibri/prop.validators-29d576d2.js.map +0 -1
  790. package/dist/kolibri/rows-005ad248.js +0 -4
  791. package/dist/kolibri/show-34226103.js +0 -4
  792. package/dist/kolibri/tab-index-2cbc1ad1.js +0 -4
  793. package/dist/kolibri/table-data-foot-ed56b062.js +0 -4
  794. package/dist/kolibri/tooltip-align-c13a7aa7.js +0 -4
  795. package/dist/kolibri/validation-561836d9.js +0 -4
  796. package/dist/kolibri/validation-c2d11c8c.js +0 -4
  797. /package/dist/kolibri/{InternalUnderlinedAccessKey-7fd49f04.js.map → InternalUnderlinedAccessKey-761081d1.js.map} +0 -0
  798. /package/dist/kolibri/{access-key-04ca8172.js.map → access-key-2088944e.js.map} +0 -0
  799. /package/dist/kolibri/{align-fc528dec.js.map → align-d1a156ea.js.map} +0 -0
  800. /package/dist/kolibri/{alternative-button-link-role-97826181.js.map → alternative-button-link-role-d488ee62.js.map} +0 -0
  801. /package/dist/kolibri/{app-globals-d78b8e64.js.map → app-globals-0a6bae96.js.map} +0 -0
  802. /package/dist/kolibri/{color-5129ba78.js.map → color-7b8f14f1.js.map} +0 -0
  803. /package/dist/kolibri/{controller-3340473e.js.map → controller-6dbe7400.js.map} +0 -0
  804. /package/dist/kolibri/{controller-04329990.js.map → controller-79aeabea.js.map} +0 -0
  805. /package/dist/kolibri/{controller-icon-b040c27e.js.map → controller-icon-94ae3b11.js.map} +0 -0
  806. /package/dist/kolibri/{custom-class-f88bc94b.js.map → custom-class-f0577c87.js.map} +0 -0
  807. /package/dist/kolibri/{devtools-a2ed4171.js.map → devtools-e7ed3a43.js.map} +0 -0
  808. /package/dist/kolibri/{disabled-fbc49ac0.js.map → disabled-8359b1c0.js.map} +0 -0
  809. /package/dist/kolibri/{form-field-msg-244f6083.js.map → form-field-msg-5b00ea20.js.map} +0 -0
  810. /package/dist/kolibri/{has-closer-f9cf9bc4.js.map → has-closer-c660ab7d.js.map} +0 -0
  811. /package/dist/kolibri/{hide-label-c461d8fe.js.map → hide-label-80a2c6d3.js.map} +0 -0
  812. /package/dist/kolibri/{href-7d17954a.js.map → href-c781430c.js.map} +0 -0
  813. /package/dist/kolibri/{icons-d2e01be4.js.map → icons-652ffedc.js.map} +0 -0
  814. /package/dist/kolibri/{image-source-36b5abe9.js.map → image-source-4e353998.js.map} +0 -0
  815. /package/dist/kolibri/{index-a55b574c.js.map → index-b84ec40b.js.map} +0 -0
  816. /package/dist/kolibri/{label-e56ffdc6.js.map → label-af70fdc5.js.map} +0 -0
  817. /package/dist/kolibri/{open-deacfbd7.js.map → open-c3666632.js.map} +0 -0
  818. /package/dist/kolibri/{rows-005ad248.js.map → rows-7ae440b2.js.map} +0 -0
  819. /package/dist/kolibri/{show-34226103.js.map → show-5f532097.js.map} +0 -0
  820. /package/dist/kolibri/{suggestions-d97a6ab9.js.map → suggestions-26f089e6.js.map} +0 -0
  821. /package/dist/kolibri/{toaster-b6d0fa6b.js.map → toaster-0d476f08.js.map} +0 -0
  822. /package/dist/kolibri/{toaster-18d16ce1.js.map → toaster-d95de236.js.map} +0 -0
  823. /package/dist/kolibri/{tooltip-align-c13a7aa7.js.map → tooltip-align-0c6ee8c8.js.map} +0 -0
  824. /package/dist/kolibri/{validation-c2d11c8c.js.map → validation-97f17c5a.js.map} +0 -0
  825. /package/dist/kolibri/{validation-561836d9.js.map → validation-d30fdb06.js.map} +0 -0
  826. /package/dist/types/components/abbr/{component.d.ts → shadow.d.ts} +0 -0
  827. /package/dist/types/components/accordion/{component.d.ts → shadow.d.ts} +0 -0
  828. /package/dist/types/components/badge/{component.d.ts → shadow.d.ts} +0 -0
  829. /package/dist/types/components/breadcrumb/{component.d.ts → shadow.d.ts} +0 -0
  830. /package/dist/types/components/button-link/{component.d.ts → shadow.d.ts} +0 -0
  831. /package/dist/types/components/card/{component.d.ts → shadow.d.ts} +0 -0
  832. /package/dist/types/components/details/{component.d.ts → shadow.d.ts} +0 -0
  833. /package/dist/types/components/form/{component.d.ts → shadow.d.ts} +0 -0
  834. /package/dist/types/components/icon/{component.d.ts → shadow.d.ts} +0 -0
  835. /package/dist/types/components/indented-text/{component.d.ts → shadow.d.ts} +0 -0
  836. /package/dist/types/components/input-checkbox/{component.d.ts → shadow.d.ts} +0 -0
  837. /package/dist/types/components/input-color/{component.d.ts → shadow.d.ts} +0 -0
  838. /package/dist/types/components/input-date/{component.d.ts → shadow.d.ts} +0 -0
  839. /package/dist/types/components/input-email/{component.d.ts → shadow.d.ts} +0 -0
  840. /package/dist/types/components/input-file/{component.d.ts → shadow.d.ts} +0 -0
  841. /package/dist/types/components/input-number/{component.d.ts → shadow.d.ts} +0 -0
  842. /package/dist/types/components/input-password/{component.d.ts → shadow.d.ts} +0 -0
  843. /package/dist/types/components/input-range/{component.d.ts → shadow.d.ts} +0 -0
  844. /package/dist/types/components/input-text/{component.d.ts → shadow.d.ts} +0 -0
  845. /package/dist/types/components/kolibri/{component.d.ts → shadow.d.ts} +0 -0
  846. /package/dist/types/components/link-group/{component.d.ts → shadow.d.ts} +0 -0
  847. /package/dist/types/components/logo/{component.d.ts → shadow.d.ts} +0 -0
  848. /package/dist/types/components/modal/{component.d.ts → shadow.d.ts} +0 -0
  849. /package/dist/types/components/nav/{component.d.ts → shadow.d.ts} +0 -0
  850. /package/dist/types/components/pagination/{component.d.ts → shadow.d.ts} +0 -0
  851. /package/dist/types/components/progress/{component.d.ts → shadow.d.ts} +0 -0
  852. /package/dist/types/components/select/{component.d.ts → shadow.d.ts} +0 -0
  853. /package/dist/types/components/skip-nav/{component.d.ts → shadow.d.ts} +0 -0
  854. /package/dist/types/components/spin/{component.d.ts → shadow.d.ts} +0 -0
  855. /package/dist/types/components/table/{component.d.ts → shadow.d.ts} +0 -0
  856. /package/dist/types/components/table-stateful/{component.d.ts → shadow.d.ts} +0 -0
  857. /package/dist/types/components/tabs/{component.d.ts → shadow.d.ts} +0 -0
  858. /package/dist/types/components/textarea/{component.d.ts → shadow.d.ts} +0 -0
  859. /package/dist/types/components/toaster/{component.d.ts → shadow.d.ts} +0 -0
  860. /package/dist/types/components/version/{component.d.ts → shadow.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events.js";import{A as AssociatedInputController}from"./associated.controller.js";import{b as watchBoolean,w as watchValidator,d as watchString,c as a11yHintDisabled,a as a11yHint,q as devHint,s as setState,o as objectObjectHandler,p as parseJson}from"./prop.validators.js";import{v as validateTooltipAlign}from"./tooltip-align.js";import{v as validateHideLabel}from"./hide-label.js";import{a as validateLabelWithExpertSlot}from"./label.js";import{v as validateTabIndex}from"./tab-index.js";const validateAdjustHeight=(t,o)=>{watchBoolean(t,"_adjustHeight",o)},validateHideError=(t,o,e)=>{watchBoolean(t,"_hideError",o,e)},validateMsg=(t,o)=>{watchValidator(t,"_msg",(t=>"object"==typeof t),new Set(["Object"]),o)},validateTouched=(t,o)=>{watchBoolean(t,"_touched",o)},getRenderStates=t=>{var o,e;const i=Boolean("error"===(null===(o=t._msg)||void 0===o?void 0:o._type)&&t._msg._description&&(null===(e=t._msg._description)||void 0===e?void 0:e.length)>0)&&!0===t._touched,n="string"==typeof t._hint&&t._hint.length>0,a=[];return!0===i&&a.push(`${t._id}-error`),!0===n&&a.push(`${t._id}-hint`),{hasError:i,hasHint:n,ariaDescribedBy:a}};class ControlledInputController extends AssociatedInputController{constructor(t,o,e){super(t,o,e),this.component=t}validateAlert(t){watchBoolean(this.component,"_alert",t)}validateTouched(t){validateTouched(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class InputController extends ControlledInputController{constructor(t,o,e){super(t,o,e),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this),onInput:this.onInput.bind(this)},this.component=t}validateAccessKey(t){watchString(this.component,"_accessKey",t)}validateAdjustHeight(t){validateAdjustHeight(this.component,t)}validateDisabled(t){watchBoolean(this.component,"_disabled",t),!0===t&&a11yHintDisabled()}validateTooltipAlign(t){validateTooltipAlign(this.component,t)}validateError(t){const o=t?{_description:t,_type:"error"}:void 0;this.validateMsg(o)}validateHideError(t){validateHideError(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&a11yHint("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(t){validateHideLabel(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&a11yHint("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(t){watchString(this.component,"_hint",t)}validateId(t){watchString(this.component,"_id",t,{hooks:{afterPatch:()=>{this.setAttribute("id",this.formAssociated,this.component.state._id)}},minLength:1}),""!==t&&void 0!==t||devHint("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){validateLabelWithExpertSlot(this.component,t,{required:!0})}validateMsg(t){validateMsg(this.component,t)}validateOn(t){"object"==typeof t&&setState(this.component,"_on",t)}validateSmartButton(t){objectObjectHandler(t,(()=>{try{t=parseJson(t)}catch(t){}setState(this.component,"_smartButton",t)}))}validateTabIndex(t){validateTabIndex(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.validateMsg(this.component._msg),this.validateDisabled(this.component._disabled),this.validateHideError(this.component._hideError),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex)}onBlur(t){var o;this.component._alert=!0,this.component._touched=!0,stopPropagation(t),tryToDispatchKoliBriEvent("blur",this.host),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onBlur)&&this.component._on.onBlur(t)}onChange(t){var o;const e=t.target.value;tryToDispatchKoliBriEvent("change",this.host,e),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onChange)&&this.component._on.onChange(t,e),this.valueChangeListeners.forEach((t=>t(e)))}onInput(t,o=!0){var e;const i=t.target.value;stopPropagation(t),tryToDispatchKoliBriEvent("input",this.host,i),o&&this.setFormAssociatedValue(i),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onInput)&&this.component._on.onInput(t,i)}onClick(t){var o;stopPropagation(t),tryToDispatchKoliBriEvent("click",this.host),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onClick)&&this.component._on.onClick(t)}onFocus(t){var o;this.component._alert=!0,stopPropagation(t),tryToDispatchKoliBriEvent("focus",this.host),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onFocus)&&this.component._on.onFocus(t)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}export{InputController as I,getRenderStates as g};
4
+ import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events.js";import{A as AssociatedInputController}from"./associated.controller.js";import{b as watchBoolean,w as watchValidator,d as watchString,c as a11yHintDisabled,a as a11yHint,q as devHint,s as setState,o as objectObjectHandler,p as parseJson}from"./prop.validators.js";import{v as validateTooltipAlign}from"./tooltip-align.js";import{v as validateHideLabel}from"./hide-label.js";import{a as validateLabelWithExpertSlot}from"./label.js";import{v as validateTabIndex}from"./tab-index.js";const validateAdjustHeight=(t,o)=>{watchBoolean(t,"_adjustHeight",o)},validateHideError=(t,o,e)=>{watchBoolean(t,"_hideError",o,e)},validateMsg=(t,o)=>{watchValidator(t,"_msg",(t=>"object"==typeof t),new Set(["Object"]),o)},validateTouched=(t,o)=>{watchBoolean(t,"_touched",o)};class ControlledInputController extends AssociatedInputController{constructor(t,o,e){super(t,o,e),this.component=t}validateAlert(t){watchBoolean(this.component,"_alert",t)}validateTouched(t){validateTouched(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAlert(this.component._alert),this.validateTouched(this.component._touched)}}class InputController extends ControlledInputController{constructor(t,o,e){super(t,o,e),this.valueChangeListeners=[],this.onFacade={onBlur:this.onBlur.bind(this),onChange:this.onChange.bind(this),onClick:this.onClick.bind(this),onFocus:this.onFocus.bind(this),onInput:this.onInput.bind(this)},this.component=t}validateAccessKey(t){watchString(this.component,"_accessKey",t)}validateAdjustHeight(t){validateAdjustHeight(this.component,t)}validateDisabled(t){watchBoolean(this.component,"_disabled",t),!0===t&&a11yHintDisabled()}validateTooltipAlign(t){validateTooltipAlign(this.component,t)}validateError(t){const o=t?{_description:t,_type:"error"}:void 0;this.validateMsg(o)}validateHideError(t){validateHideError(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideError&&a11yHint("Property hide-error for inputs: Only use when the error message is shown outside of the input component.")}}})}validateHideLabel(t){validateHideLabel(this.component,t,{hooks:{afterPatch:()=>{this.component.state._hideLabel&&a11yHint("Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.")}}})}validateHint(t){watchString(this.component,"_hint",t)}validateId(t){watchString(this.component,"_id",t,{hooks:{afterPatch:()=>{this.setAttribute("id",this.formAssociated,this.component.state._id)}},minLength:1}),""!==t&&void 0!==t||devHint("Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.")}validateLabel(t){validateLabelWithExpertSlot(this.component,t,{required:!0})}validateMsg(t){validateMsg(this.component,t)}validateOn(t){"object"==typeof t&&setState(this.component,"_on",t)}validateSmartButton(t){objectObjectHandler(t,(()=>{try{t=parseJson(t)}catch(t){}setState(this.component,"_smartButton",t)}))}validateTabIndex(t){validateTabIndex(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateAccessKey(this.component._accessKey),this.validateAdjustHeight(this.component._adjustHeight),this.validateError(this.component._error),this.validateMsg(this.component._msg),this.validateDisabled(this.component._disabled),this.validateHideError(this.component._hideError),this.validateHideLabel(this.component._hideLabel),this.validateHint(this.component._hint),this.validateId(this.component._id),this.validateLabel(this.component._label),this.validateSmartButton(this.component._smartButton),this.validateOn(this.component._on),this.validateTabIndex(this.component._tabIndex)}onBlur(t){var o;this.component._alert=!0,this.component._touched=!0,stopPropagation(t),tryToDispatchKoliBriEvent("blur",this.host),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onBlur)&&this.component._on.onBlur(t)}onChange(t,o){var e;o=null!=o?o:t.target.value,tryToDispatchKoliBriEvent("change",this.host,o),"function"==typeof(null===(e=this.component._on)||void 0===e?void 0:e.onChange)&&this.component._on.onChange(t,o),this.valueChangeListeners.forEach((t=>t(o)))}onInput(t,o=!0,e){var i;e=null!=e?e:t.target.value,stopPropagation(t),tryToDispatchKoliBriEvent("input",this.host,e),o&&this.setFormAssociatedValue(e),"function"==typeof(null===(i=this.component._on)||void 0===i?void 0:i.onInput)&&this.component._on.onInput(t,e)}onClick(t){var o;stopPropagation(t),tryToDispatchKoliBriEvent("click",this.host),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onClick)&&this.component._on.onClick(t)}onFocus(t){var o;this.component._alert=!0,stopPropagation(t),tryToDispatchKoliBriEvent("focus",this.host),"function"==typeof(null===(o=this.component._on)||void 0===o?void 0:o.onFocus)&&this.component._on.onFocus(t)}addValueChangeListener(t){this.valueChangeListeners.push(t)}}const getRenderStates=t=>{var o,e;const i=Boolean("error"===(null===(o=t._msg)||void 0===o?void 0:o._type)&&t._msg._description&&(null===(e=t._msg._description)||void 0===e?void 0:e.length)>0)&&!0===t._touched,n="string"==typeof t._hint&&t._hint.length>0,a=[];return!0===i&&a.push(`${t._id}-error`),!0===n&&a.push(`${t._id}-hint`),{hasError:i,hasHint:n,ariaDescribedBy:a}};export{InputController as I,getRenderStates as g,validateMsg as v};
@@ -1 +1 @@
1
- {"file":"controller2.js","mappings":"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","names":[],"sources":["src/schema/props/adjust-height.ts","src/schema/props/hide-error.ts","src/schema/props/msg.ts","src/schema/props/touched.ts","src/components/input/controller.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type AdjustHeightPropType = boolean;\n\n/**\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: AdjustHeightPropType;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: AdjustHeightPropType): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HideErrorPropType = boolean;\n\n/**\n * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n */\nexport type PropHideError = {\n\thideError: HideErrorPropType;\n};\n\n/* validator */\nexport const validateHideError = (component: Generic.Element.Component, value?: HideErrorPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hideError', value, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\nimport type { AlertProps } from '../components';\nimport { watchValidator } from '../utils';\n\n/* types */\nexport type MsgPropType = AlertProps & {\n\t_description: string;\n};\n\n/**\n * Defines the properties for a message rendered as Alert component.\n */\nexport type PropMsg = {\n\tmsg: MsgPropType;\n};\n/* validator */\nexport const validateMsg = (component: Generic.Element.Component, value?: MsgPropType): void => {\n\twatchValidator(component, `_msg`, (value) => typeof value === 'object', new Set(['Object']), value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type TouchedPropType = boolean;\n\n/**\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: TouchedPropType;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: TouchedPropType): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import type { MsgPropType, TouchedPropType } from '../../schema';\n\n/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_msg?: MsgPropType;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: TouchedPropType;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst isMessageValidError = Boolean(state._msg?._type === 'error' && state._msg._description && state._msg._description?.length > 0);\n\tconst hasError = isMessageValidError && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasError === true) {\n\t\tariaDescribedBy.push(`${state._id}-error`);\n\t}\n\tif (hasHint === true) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { validateTouched, watchBoolean } from '../../schema';\n\nimport { AssociatedInputController } from './associated.controller';\n\nimport type { Props, Watches } from './types';\nexport class ControlledInputController extends AssociatedInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tAdjustHeightPropType,\n\tButtonProps,\n\tHideErrorPropType,\n\tInputTypeOnDefault,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tTooltipAlignPropType,\n} from '../../../schema';\nimport {\n\ta11yHint,\n\ta11yHintDisabled,\n\tdevHint,\n\tobjectObjectHandler,\n\tparseJson,\n\tsetState,\n\tvalidateAdjustHeight,\n\tvalidateHideError,\n\tvalidateHideLabel,\n\tvalidateLabelWithExpertSlot,\n\tvalidateMsg,\n\tvalidateTabIndex,\n\twatchBoolean,\n\twatchString,\n\tvalidateTooltipAlign,\n} from '../../../schema';\n\nimport { stopPropagation, tryToDispatchKoliBriEvent } from '../../../utils/events';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\n\nimport type { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport type { Props, Watches } from './types';\n\ntype ValueChangeListener = (value: string) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this.component, '_accessKey', value);\n\t}\n\n\tpublic validateAdjustHeight(value?: AdjustHeightPropType): void {\n\t\tvalidateAdjustHeight(this.component, value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this.component, value);\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\tpublic validateError(value?: string): void {\n\t\tconst message: MsgPropType | undefined = value\n\t\t\t? {\n\t\t\t\t\t_description: value,\n\t\t\t\t\t_type: 'error',\n\t\t\t\t}\n\t\t\t: undefined;\n\t\tthis.validateMsg(message);\n\t}\n\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tvalidateHideError(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideError) {\n\t\t\t\t\t\ta11yHint('Property hide-error for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideLabel) {\n\t\t\t\t\t\ta11yHint('Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('id', this.formAssociated, this.component.state._id as string);\n\t\t\t\t},\n\t\t\t},\n\t\t\tminLength: 1,\n\t\t});\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this.component, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tpublic validateMsg(value?: MsgPropType): void {\n\t\tvalidateMsg(this.component, value);\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateError(this.component._error);\n\t\tthis.validateMsg(this.component._msg);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideError(this.component._hideError);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tthis.component._touched = true;\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('blur', this.host);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\tprotected onChange(event: Event): void {\n\t\tconst value = (event.target as HTMLInputElement).value;\n\n\t\t// Event handling\n\t\ttryToDispatchKoliBriEvent('change', this.host, value);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\n\t\t/**\n\t\t * TODO: Was ist das?\n\t\t */\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t}\n\n\tprotected onInput(event: Event, shouldSetFormAssociatedValue = true): void {\n\t\tconst value = (event.target as HTMLInputElement).value;\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('input', this.host, value);\n\n\t\t// Static form handling\n\t\tif (shouldSetFormAssociatedValue) {\n\t\t\tthis.setFormAssociatedValue(value);\n\t\t}\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onInput === 'function') {\n\t\t\tthis.component._on.onInput(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('click', this.host);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.component._alert = true;\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('focus', this.host);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t\tonInput: this.onInput.bind(this),\n\t};\n}\n"],"version":3}
1
+ {"file":"controller2.js","mappings":"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","names":[],"sources":["src/schema/props/adjust-height.ts","src/schema/props/hide-error.ts","src/schema/props/msg.ts","src/schema/props/touched.ts","src/components/input-adapter-leanup/controller.ts","src/components/@deprecated/input/controller.ts","src/components/input/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type AdjustHeightPropType = boolean;\n\n/**\n * Adjusts the height of the element to its content.\n */\nexport type PropAdjustHeight = {\n\tadjustHeight: AdjustHeightPropType;\n};\n\n/* validator */\nexport const validateAdjustHeight = (component: Generic.Element.Component, value?: AdjustHeightPropType): void => {\n\twatchBoolean(component, '_adjustHeight', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HideErrorPropType = boolean;\n\n/**\n * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n */\nexport type PropHideError = {\n\thideError: HideErrorPropType;\n};\n\n/* validator */\nexport const validateHideError = (component: Generic.Element.Component, value?: HideErrorPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hideError', value, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\nimport type { AlertProps } from '../components';\nimport { watchValidator } from '../utils';\n\n/* types */\nexport type MsgPropType = AlertProps & {\n\t_description: string;\n};\n\n/**\n * Defines the properties for a message rendered as Alert component.\n */\nexport type PropMsg = {\n\tmsg: MsgPropType;\n};\n/* validator */\nexport const validateMsg = (component: Generic.Element.Component, value?: MsgPropType): void => {\n\twatchValidator(component, `_msg`, (value) => typeof value === 'object', new Set(['Object']), value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type TouchedPropType = boolean;\n\n/**\n * Shows if the input was touched by a user.\n */\nexport type PropTouched = {\n\ttouched: TouchedPropType;\n};\n\n/* validator */\nexport const validateTouched = (component: Generic.Element.Component, value?: TouchedPropType): void => {\n\twatchBoolean(component, '_touched', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { validateTouched, watchBoolean } from '../../schema';\n\nimport { AssociatedInputController } from './associated.controller';\n\nimport type { Props, Watches } from './types';\nexport class ControlledInputController extends AssociatedInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAlert(value?: boolean): void {\n\t\twatchBoolean(this.component, '_alert', value);\n\t}\n\n\tpublic validateTouched(value?: boolean): void {\n\t\tvalidateTouched(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAlert(this.component._alert);\n\t\tthis.validateTouched(this.component._touched);\n\t}\n}\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tAdjustHeightPropType,\n\tButtonProps,\n\tHideErrorPropType,\n\tInputTypeOnDefault,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tStencilUnknown,\n\tTooltipAlignPropType,\n} from '../../../schema';\nimport {\n\ta11yHint,\n\ta11yHintDisabled,\n\tdevHint,\n\tobjectObjectHandler,\n\tparseJson,\n\tsetState,\n\tvalidateAdjustHeight,\n\tvalidateHideError,\n\tvalidateHideLabel,\n\tvalidateLabelWithExpertSlot,\n\tvalidateMsg,\n\tvalidateTabIndex,\n\twatchBoolean,\n\twatchString,\n\tvalidateTooltipAlign,\n} from '../../../schema';\n\nimport { stopPropagation, tryToDispatchKoliBriEvent } from '../../../utils/events';\nimport { ControlledInputController } from '../../input-adapter-leanup/controller';\n\nimport type { Props as AdapterProps } from '../../input-adapter-leanup/types';\nimport type { Props, Watches } from './types';\n\ntype ValueChangeListener = (value: StencilUnknown) => void;\n\nexport class InputController extends ControlledInputController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props & AdapterProps;\n\n\tprivate readonly valueChangeListeners: ValueChangeListener[] = [];\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAccessKey(value?: string): void {\n\t\twatchString(this.component, '_accessKey', value);\n\t}\n\n\tpublic validateAdjustHeight(value?: AdjustHeightPropType): void {\n\t\tvalidateAdjustHeight(this.component, value);\n\t}\n\n\tpublic validateDisabled(value?: boolean): void {\n\t\twatchBoolean(this.component, '_disabled', value);\n\t\tif (value === true) {\n\t\t\ta11yHintDisabled();\n\t\t}\n\t}\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this.component, value);\n\t}\n\n\t/**\n\t * @deprecated\n\t */\n\tpublic validateError(value?: string): void {\n\t\tconst message: MsgPropType | undefined = value\n\t\t\t? {\n\t\t\t\t\t_description: value,\n\t\t\t\t\t_type: 'error',\n\t\t\t\t}\n\t\t\t: undefined;\n\t\tthis.validateMsg(message);\n\t}\n\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tvalidateHideError(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideError) {\n\t\t\t\t\t\ta11yHint('Property hide-error for inputs: Only use when the error message is shown outside of the input component.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tvalidateHideLabel(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tif (this.component.state._hideLabel) {\n\t\t\t\t\t\ta11yHint('Property hide-label for inputs: Only use for exceptions like search inputs that are clearly identifiable by their context.');\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateHint(value?: string): void {\n\t\twatchString(this.component, '_hint', value);\n\t}\n\n\tpublic validateId(value?: string): void {\n\t\twatchString(this.component, '_id', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('id', this.formAssociated, this.component.state._id as string);\n\t\t\t\t},\n\t\t\t},\n\t\t\tminLength: 1,\n\t\t});\n\t\tif (value === '' || typeof value === 'undefined') {\n\t\t\tdevHint(`Eine eindeutige ID an den Eingabefeldern ist nicht zwingend erforderlich, könnte aber für die E2E-Tests relevant sein.`);\n\t\t}\n\t}\n\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tvalidateLabelWithExpertSlot(this.component, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\tpublic validateMsg(value?: MsgPropType): void {\n\t\tvalidateMsg(this.component, value);\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tif (typeof value === 'object') {\n\t\t\tsetState(this.component, '_on', value);\n\t\t}\n\t}\n\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tobjectObjectHandler(value, () => {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<ButtonProps>(value as string);\n\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t} catch (e) {\n\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t}\n\t\t\tsetState(this.component, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic validateTabIndex(value?: number): void {\n\t\tvalidateTabIndex(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAccessKey(this.component._accessKey);\n\t\tthis.validateAdjustHeight(this.component._adjustHeight);\n\t\tthis.validateError(this.component._error);\n\t\tthis.validateMsg(this.component._msg);\n\t\tthis.validateDisabled(this.component._disabled);\n\t\tthis.validateHideError(this.component._hideError);\n\t\tthis.validateHideLabel(this.component._hideLabel);\n\t\tthis.validateHint(this.component._hint);\n\t\tthis.validateId(this.component._id);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateSmartButton(this.component._smartButton);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateTabIndex(this.component._tabIndex);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\tthis.component._alert = true;\n\t\tthis.component._touched = true;\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('blur', this.host);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onBlur === 'function') {\n\t\t\tthis.component._on.onBlur(event);\n\t\t}\n\t}\n\n\t/**\n\t * @param event - The original event object\n\t * @param value - Optional value. Taken from event if not defined.\n\t */\n\tprotected onChange(event: Event, value?: StencilUnknown): void {\n\t\tvalue = value ?? (event.target as HTMLInputElement).value;\n\n\t\t// Event handling\n\t\ttryToDispatchKoliBriEvent('change', this.host, value);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onChange === 'function') {\n\t\t\t/**\n\t\t\t * TODO\n\t\t\t * Value-Handling muss für InputDate und InputNumber optimiert werden\n\t\t\t * - value\n\t\t\t * - valueAsNumber\n\t\t\t * - valueAsDate\n\t\t\t */\n\t\t\tthis.component._on.onChange(event, value);\n\t\t}\n\n\t\t/**\n\t\t * TODO: Was ist das?\n\t\t */\n\t\tthis.valueChangeListeners.forEach((listener) => listener(value));\n\t}\n\n\t/**\n\t * @param event - The original event object\n\t * @param shouldSetFormAssociatedValue - Set to false when setting form associated value is not desired.\n\t * @param value - Optional value. Taken from event if not defined.\n\t */\n\tprotected onInput(event: Event, shouldSetFormAssociatedValue = true, value?: StencilUnknown): void {\n\t\tvalue = value ?? (event.target as HTMLInputElement).value;\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('input', this.host, value);\n\n\t\t// Static form handling\n\t\tif (shouldSetFormAssociatedValue) {\n\t\t\tthis.setFormAssociatedValue(value);\n\t\t}\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onInput === 'function') {\n\t\t\tthis.component._on.onInput(event, value);\n\t\t}\n\t}\n\n\tprotected onClick(event: Event): void {\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('click', this.host);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onClick === 'function') {\n\t\t\tthis.component._on.onClick(event);\n\t\t}\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.component._alert = true;\n\n\t\t// Event handling\n\t\tstopPropagation(event);\n\t\ttryToDispatchKoliBriEvent('focus', this.host);\n\n\t\t// Callback\n\t\tif (typeof this.component._on?.onFocus === 'function') {\n\t\t\tthis.component._on.onFocus(event);\n\t\t}\n\t}\n\n\tpublic addValueChangeListener(listener: ValueChangeListener) {\n\t\tthis.valueChangeListeners.push(listener);\n\t}\n\n\t/**\n\t * Hinweis: In der Subklasse 'InputPasswordController'\n\t * werden die Methoden onBlur und onFocus\n\t * überschrieben.\n\t * Es werden somit zunächst die Methoden der\n\t * Subklasse ausgeführt und danach die der\n\t * Oberklassen.\n\t */\n\tpublic readonly onFacade = {\n\t\tonBlur: this.onBlur.bind(this),\n\t\tonChange: this.onChange.bind(this),\n\t\tonClick: this.onClick.bind(this),\n\t\tonFocus: this.onFocus.bind(this),\n\t\tonInput: this.onInput.bind(this),\n\t};\n}\n","import type { MsgPropType, TouchedPropType } from '../../schema';\n\n/**\n * Berechnet in Abhängigkeit des Component-State, wie die\n * aria-describedby-Attributs gesetzt werden sollen.\n *\n * @param state State der Component\n * @returns Render-States\n */\nexport const getRenderStates = (state: {\n\t_msg?: MsgPropType;\n\t_hint?: string;\n\t_id: string;\n\t_touched?: TouchedPropType;\n}): {\n\thasError: boolean;\n\thasHint: boolean;\n\tariaDescribedBy: string[];\n} => {\n\tconst isMessageValidError = Boolean(state._msg?._type === 'error' && state._msg._description && state._msg._description?.length > 0);\n\tconst hasError = isMessageValidError && state._touched === true;\n\tconst hasHint = typeof state._hint === 'string' && state._hint.length > 0;\n\n\tconst ariaDescribedBy: string[] = [];\n\tif (hasError === true) {\n\t\tariaDescribedBy.push(`${state._id}-error`);\n\t}\n\tif (hasHint === true) {\n\t\tariaDescribedBy.push(`${state._id}-hint`);\n\t}\n\treturn { hasError, hasHint, ariaDescribedBy };\n};\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{I as InputController}from"./controller2.js";import{a as a11yHint,i as watchJsonArrayString,b as watchBoolean,w as watchValidator,y as mapString2Unknown,s as setState}from"./prop.validators.js";import{b as hasEnoughReadableChars,c as containsOnlyNumbers}from"./label.js";const validateInputSelectOptions=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===hasEnoughReadableChars(t.label,3)&&!1===containsOnlyNumbers(t.label)&&a11yHint(`Ein abweichendes Aria-Label (${t.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===validateInputSelectOptions(t)));if("number"==typeof t.label)return!0}return!1},validateOptions=(t,e,o={})=>{watchJsonArrayString(t,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),e,void 0,o)},validateOptionsWithOptgroup=(t,e,o={})=>{watchJsonArrayString(t,"_options",validateInputSelectOptions,e,void 0,o)},validateRequired=(t,e)=>{watchBoolean(t,"_required",e)},orientationOptions=["horizontal","vertical"],fillKeyOptionMap=(t,e,o="")=>{e.forEach(((e,a)=>{const i=`${o}-${a}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?fillKeyOptionMap(t,e.options,i):t.set(i,e))}))};class InputCheckboxRadioController extends InputController{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){validateRequired(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class InputRadioController extends InputCheckboxRadioController{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.afterPatchOptions=(t,e,o,a)=>{"_value"===a&&this.setFormAssociatedValue(t)},this.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;Array.isArray(o)&&o.length>0&&(this.keyOptionMap.clear(),fillKeyOptionMap(this.keyOptionMap,o))},this.component=t}validateOrientation(t){watchValidator(this.component,"_orientation",(t=>"string"==typeof t&&orientationOptions.includes(t)),new Set([`Orientation {${orientationOptions.join(", ")}`]),t,{defaultValue:"vertical"})}validateOptions(t){validateOptions(this.component,t,{hooks:{afterPatch:this.afterPatchOptions}})}validateValue(t){t=mapString2Unknown(t),t=Array.isArray(t)?t[0]:t,setState(this.component,"_value",t,{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions})}componentWillLoad(){super.componentWillLoad(),this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options),this.validateValue(this.component._value)}}export{InputCheckboxRadioController as I,InputRadioController as a,fillKeyOptionMap as f,validateOptionsWithOptgroup as v};
4
+ import{I as InputController}from"./controller2.js";import{a as a11yHint,i as watchJsonArrayString,b as watchBoolean,w as watchValidator,y as mapString2Unknown,s as setState}from"./prop.validators.js";import{b as hasEnoughReadableChars,c as containsOnlyNumbers}from"./label.js";const validateInputSelectOptions=t=>{if("object"==typeof t&&null!==t){if("string"==typeof t.label&&t.label.length>0)return t.disabled=!0===t.disabled,t.label=`${t.label}`.trim(),!1===hasEnoughReadableChars(t.label,3)&&!1===containsOnlyNumbers(t.label)&&a11yHint(`Ein abweichendes Aria-Label (${t.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`),!Array.isArray(t.options)||void 0===t.options.find((t=>!1===validateInputSelectOptions(t)));if("number"==typeof t.label)return!0}return!1},validateOptions=(t,e,o={})=>{watchJsonArrayString(t,"_options",(t=>"object"==typeof t&&null!==t&&"string"==typeof t.label&&t.label.length>0),e,void 0,o)},validateOptionsWithOptgroup=(t,e,o={})=>{watchJsonArrayString(t,"_options",validateInputSelectOptions,e,void 0,o)},validateRequired=(t,e)=>{watchBoolean(t,"_required",e)},orientationOptions=["horizontal","vertical"],fillKeyOptionMap=(t,e,o="")=>{e.forEach(((e,a)=>{const i=`${o}-${a}`;"object"==typeof e&&null!==e&&"string"==typeof e.label&&e.label.length>0&&(Array.isArray(e.options)?fillKeyOptionMap(t,e.options,i):t.set(i,e))}))};class InputCheckboxRadioController extends InputController{constructor(t,e,o){super(t,e,o),this.component=t}validateRequired(t){validateRequired(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateRequired(this.component._required)}}class InputRadioController extends InputCheckboxRadioController{constructor(t,e,o){super(t,e,o),this.keyOptionMap=new Map,this.getOptionByKey=t=>this.keyOptionMap.get(t),this.afterPatchOptions=(t,e,o,a)=>{"_value"===a&&this.setFormAssociatedValue(t)},this.beforePatchOptions=(t,e)=>{const o=e.has("_options")?e.get("_options"):this.component.state._options;Array.isArray(o)&&o.length>0&&(this.keyOptionMap.clear(),fillKeyOptionMap(this.keyOptionMap,o))},this.component=t}validateOrientation(t){watchValidator(this.component,"_orientation",(t=>"string"==typeof t&&orientationOptions.includes(t)),new Set([`Orientation {${orientationOptions.join(", ")}`]),t,{defaultValue:"vertical"})}validateOptions(t){validateOptions(this.component,t,{hooks:{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions}})}validateValue(t){t=mapString2Unknown(t),t=Array.isArray(t)?t[0]:t,setState(this.component,"_value",t,{afterPatch:this.afterPatchOptions,beforePatch:this.beforePatchOptions})}componentWillLoad(){super.componentWillLoad(),this.validateOrientation(this.component._orientation),this.validateOptions(this.component._options),this.validateValue(this.component._value)}}export{InputCheckboxRadioController as I,InputRadioController as a,fillKeyOptionMap as f,validateOptionsWithOptgroup as v};
@@ -1 +1 @@
1
- {"file":"controller3.js","mappings":"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","names":[],"sources":["src/schema/validators/options.ts","src/schema/props/options.ts","src/schema/props/required.ts","src/schema/types/orientation.ts","src/components/input-radio/controller.ts"],"sourcesContent":["import { containsOnlyNumbers, hasEnoughReadableChars } from '../props';\nimport { a11yHint } from '../utils';\n\nimport type { Optgroup, SelectOption } from '../types';\nexport const validateInputSelectOptions = <T>(option: SelectOption<T>): boolean => {\n\tif (typeof option === 'object' && option !== null) {\n\t\tif (typeof option.label === 'string' && option.label.length > 0) {\n\t\t\toption.disabled = option.disabled === true;\n\t\t\toption.label = `${option.label}`.trim();\n\t\t\tif (hasEnoughReadableChars(option.label, 3) === false && containsOnlyNumbers(option.label) === false) {\n\t\t\t\ta11yHint(\n\t\t\t\t\t`Ein abweichendes Aria-Label (${option.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`,\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\treturn (\n\t\t\t\t\t(option as Optgroup<T>).options.find((item) => {\n\t\t\t\t\t\treturn validateInputSelectOptions(item) === false;\n\t\t\t\t\t}) === undefined\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn true;\n\t\t} else if (typeof option.label === 'number') {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { Optgroup, Option, StencilUnknown } from '../types';\nimport type { Stringified } from '../types/common';\nimport type { WatchOptions } from '../utils';\nimport { watchJsonArrayString } from '../utils';\nimport { validateInputSelectOptions } from '../validators';\n\n/* types */\n\nexport type OptionsPropType = Stringified<Option<StencilUnknown>[]>;\nexport type OptionsWithOptgroupPropType = Stringified<(Option<StencilUnknown> | Optgroup<StencilUnknown>)[]>;\n\n/**\n * Options the user can choose from.\n */\nexport type PropOptions = {\n\toptions: OptionsPropType;\n};\n\n/**\n * Options the user can choose from, also supporting Optgroup.\n */\nexport type PropOptionsWithOptgroup = {\n\toptions: OptionsWithOptgroupPropType;\n};\n\n/* validators */\n\nexport const validateOptions = (component: Generic.Element.Component, value: OptionsPropType | undefined, options: WatchOptions = {}): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_options',\n\t\t(item: Option<StencilUnknown>) => typeof item === 'object' && item !== null && typeof item.label === 'string' && item.label.length > 0,\n\t\tvalue,\n\t\tundefined,\n\t\toptions,\n\t);\n};\n\nexport const validateOptionsWithOptgroup = (\n\tcomponent: Generic.Element.Component,\n\tvalue: OptionsWithOptgroupPropType | undefined,\n\toptions: WatchOptions = {},\n) => {\n\twatchJsonArrayString(component, '_options', validateInputSelectOptions, value, undefined, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\ntype RequiredPropType = boolean;\n\n/**\n * Makes the input element required.\n */\nexport type PropRequired = {\n\trequired: RequiredPropType;\n};\n\n/* validator */\nexport const validateRequired = (component: Generic.Element.Component, value?: RequiredPropType): void => {\n\twatchBoolean(component, '_required', value);\n};\n","export const orientationOptions = ['horizontal', 'vertical'] as const;\nexport type Orientation = (typeof orientationOptions)[number];\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tInputRadioProps,\n\tInputRadioWatches,\n\tOptgroup,\n\tOption,\n\tOptionsPropType,\n\tOrientation,\n\tPropLabelWithExpertSlot,\n\tSelectOption,\n\tStencilUnknown,\n\tStringified,\n\tW3CInputValue,\n} from '../../schema';\nimport { mapString2Unknown, orientationOptions, setState, validateOptions, validateRequired, watchValidator } from '../../schema';\n\nimport { InputController } from '../@deprecated/input/controller';\n\nexport const fillKeyOptionMap = <T>(keyOptionMap: Map<string, Option<T>>, options: SelectOption<T>[], preKey = ''): void => {\n\toptions.forEach((option, index) => {\n\t\tconst key = `${preKey}-${index}`;\n\t\tif (typeof option === 'object' && option !== null && typeof option.label === 'string' && option.label.length > 0) {\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\tfillKeyOptionMap(keyOptionMap, (option as Optgroup<T>).options, key);\n\t\t\t} else {\n\t\t\t\tkeyOptionMap.set(key, option as Option<T>);\n\t\t\t}\n\t\t}\n\t});\n};\n\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\trequired: boolean;\n};\ntype InputCheckboxRadioProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputCheckboxRadioWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputCheckboxRadioController extends InputController implements InputCheckboxRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputCheckboxRadioProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputCheckboxRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\tvalidateRequired(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateRequired(this.component._required);\n\t}\n}\n\nexport class InputRadioController extends InputCheckboxRadioController implements InputRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputRadioProps;\n\tprivate readonly keyOptionMap = new Map<string, Option<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & InputRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): Option<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprotected readonly afterPatchOptions = (value: unknown, _state: Record<string, unknown>, _component: Generic.Element.Component, key: string): void => {\n\t\tif (key === '_value') {\n\t\t\tthis.setFormAssociatedValue(value as string);\n\t\t}\n\t};\n\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_orientation',\n\t\t\t(value): boolean => typeof value === 'string' && orientationOptions.includes(value),\n\t\t\tnew Set([`Orientation {${orientationOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: 'vertical',\n\t\t\t},\n\t\t);\n\t}\n\n\tpublic validateOptions(value?: OptionsPropType): void {\n\t\tvalidateOptions(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\t},\n\t\t});\n\t}\n\n\tprotected readonly beforePatchOptions = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst options = nextState.has('_options') ? nextState.get('_options') : this.component.state._options;\n\t\tif (Array.isArray(options) && options.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, options as SelectOption<W3CInputValue>[]);\n\t\t}\n\t};\n\n\tpublic validateValue(value?: Stringified<StencilUnknown>): void {\n\t\tvalue = mapString2Unknown(value);\n\t\tvalue = Array.isArray(value) ? (value[0] as StencilUnknown) : value;\n\t\tsetState(this.component, '_value', value, {\n\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateOrientation(this.component._orientation);\n\t\tthis.validateOptions(this.component._options);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"version":3}
1
+ {"file":"controller3.js","mappings":"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","names":[],"sources":["src/schema/validators/options.ts","src/schema/props/options.ts","src/schema/props/required.ts","src/schema/types/orientation.ts","src/components/input-radio/controller.ts"],"sourcesContent":["import { containsOnlyNumbers, hasEnoughReadableChars } from '../props';\nimport { a11yHint } from '../utils';\n\nimport type { Optgroup, SelectOption } from '../types';\nexport const validateInputSelectOptions = <T>(option: SelectOption<T>): boolean => {\n\tif (typeof option === 'object' && option !== null) {\n\t\tif (typeof option.label === 'string' && option.label.length > 0) {\n\t\t\toption.disabled = option.disabled === true;\n\t\t\toption.label = `${option.label}`.trim();\n\t\t\tif (hasEnoughReadableChars(option.label, 3) === false && containsOnlyNumbers(option.label) === false) {\n\t\t\t\ta11yHint(\n\t\t\t\t\t`Ein abweichendes Aria-Label (${option.label}) ist nicht barrierefrei. Ein abweichendes Aria-Label sollte aus mindestens drei lesbaren Zeichen bestehen.`,\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\treturn (\n\t\t\t\t\t(option as Optgroup<T>).options.find((item) => {\n\t\t\t\t\t\treturn validateInputSelectOptions(item) === false;\n\t\t\t\t\t}) === undefined\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn true;\n\t\t} else if (typeof option.label === 'number') {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type { Optgroup, Option, StencilUnknown } from '../types';\nimport type { Stringified } from '../types/common';\nimport type { WatchOptions } from '../utils';\nimport { watchJsonArrayString } from '../utils';\nimport { validateInputSelectOptions } from '../validators';\n\n/* types */\n\nexport type OptionsPropType = Stringified<Option<StencilUnknown>[]>;\nexport type OptionsWithOptgroupPropType = Stringified<(Option<StencilUnknown> | Optgroup<StencilUnknown>)[]>;\n\n/**\n * Options the user can choose from.\n */\nexport type PropOptions = {\n\toptions: OptionsPropType;\n};\n\n/**\n * Options the user can choose from, also supporting Optgroup.\n */\nexport type PropOptionsWithOptgroup = {\n\toptions: OptionsWithOptgroupPropType;\n};\n\n/* validators */\n\nexport const validateOptions = (component: Generic.Element.Component, value: OptionsPropType | undefined, options: WatchOptions = {}): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_options',\n\t\t(item: Option<StencilUnknown>) => typeof item === 'object' && item !== null && typeof item.label === 'string' && item.label.length > 0,\n\t\tvalue,\n\t\tundefined,\n\t\toptions,\n\t);\n};\n\nexport const validateOptionsWithOptgroup = (\n\tcomponent: Generic.Element.Component,\n\tvalue: OptionsWithOptgroupPropType | undefined,\n\toptions: WatchOptions = {},\n) => {\n\twatchJsonArrayString(component, '_options', validateInputSelectOptions, value, undefined, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\ntype RequiredPropType = boolean;\n\n/**\n * Makes the input element required.\n */\nexport type PropRequired = {\n\trequired: RequiredPropType;\n};\n\n/* validator */\nexport const validateRequired = (component: Generic.Element.Component, value?: RequiredPropType): void => {\n\twatchBoolean(component, '_required', value);\n};\n","export const orientationOptions = ['horizontal', 'vertical'] as const;\nexport type Orientation = (typeof orientationOptions)[number];\n","import type { Generic } from 'adopted-style-sheets';\n\nimport type {\n\tInputRadioProps,\n\tInputRadioWatches,\n\tOptgroup,\n\tOption,\n\tOptionsPropType,\n\tOrientation,\n\tPropLabelWithExpertSlot,\n\tSelectOption,\n\tStencilUnknown,\n\tStringified,\n\tW3CInputValue,\n} from '../../schema';\nimport { mapString2Unknown, orientationOptions, setState, validateOptions, validateRequired, watchValidator } from '../../schema';\n\nimport { InputController } from '../@deprecated/input/controller';\n\nexport const fillKeyOptionMap = <T>(keyOptionMap: Map<string, Option<T>>, options: SelectOption<T>[], preKey = ''): void => {\n\toptions.forEach((option, index) => {\n\t\tconst key = `${preKey}-${index}`;\n\t\tif (typeof option === 'object' && option !== null && typeof option.label === 'string' && option.label.length > 0) {\n\t\t\tif (Array.isArray((option as Optgroup<T>).options)) {\n\t\t\t\tfillKeyOptionMap(keyOptionMap, (option as Optgroup<T>).options, key);\n\t\t\t} else {\n\t\t\t\tkeyOptionMap.set(key, option as Option<T>);\n\t\t\t}\n\t\t}\n\t});\n};\n\ntype RequiredProps = PropLabelWithExpertSlot;\ntype OptionalProps = {\n\trequired: boolean;\n};\ntype InputCheckboxRadioProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputCheckboxRadioWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputCheckboxRadioController extends InputController implements InputCheckboxRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputCheckboxRadioProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputCheckboxRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\tvalidateRequired(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateRequired(this.component._required);\n\t}\n}\n\nexport class InputRadioController extends InputCheckboxRadioController implements InputRadioWatches {\n\tprotected readonly component: Generic.Element.Component & InputRadioProps;\n\tprivate readonly keyOptionMap = new Map<string, Option<W3CInputValue>>();\n\n\tpublic constructor(component: Generic.Element.Component & InputRadioProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic readonly getOptionByKey = (key: string): Option<W3CInputValue> | undefined => this.keyOptionMap.get(key);\n\n\tprotected readonly afterPatchOptions = (value: unknown, _state: Record<string, unknown>, _component: Generic.Element.Component, key: string): void => {\n\t\tif (key === '_value') {\n\t\t\tthis.setFormAssociatedValue(value as string);\n\t\t}\n\t};\n\n\tpublic validateOrientation(value?: Orientation): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_orientation',\n\t\t\t(value): boolean => typeof value === 'string' && orientationOptions.includes(value),\n\t\t\tnew Set([`Orientation {${orientationOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: 'vertical',\n\t\t\t},\n\t\t);\n\t}\n\n\tprotected readonly beforePatchOptions = (_value: unknown, nextState: Map<string, unknown>): void => {\n\t\tconst options = nextState.has('_options') ? nextState.get('_options') : this.component.state._options;\n\t\tif (Array.isArray(options) && options.length > 0) {\n\t\t\tthis.keyOptionMap.clear();\n\t\t\tfillKeyOptionMap(this.keyOptionMap, options as SelectOption<W3CInputValue>[]);\n\t\t}\n\t};\n\n\tpublic validateOptions(value?: OptionsPropType): void {\n\t\tvalidateOptions(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateValue(value?: Stringified<StencilUnknown>): void {\n\t\tvalue = mapString2Unknown(value);\n\t\tvalue = Array.isArray(value) ? (value[0] as StencilUnknown) : value;\n\t\tsetState(this.component, '_value', value, {\n\t\t\tafterPatch: this.afterPatchOptions,\n\t\t\tbeforePatch: this.beforePatchOptions,\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateOrientation(this.component._orientation);\n\t\tthis.validateOptions(this.component._options);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{I as InputIconController}from"./controller-icon.js";import{b as watchBoolean,w as watchValidator,x as watchNumber,d as watchString}from"./prop.validators.js";const validateHasCounter=(t,e)=>{watchBoolean(t,"_hasCounter",e)};class InputPasswordController extends InputIconController{constructor(t,e,o){super(t,e,o),this.component=t}validateAutoComplete(t){watchValidator(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){validateHasCounter(this.component,t)}validateMaxLength(t){watchNumber(this.component,"_maxLength",t,{min:0})}validatePattern(t){watchString(this.component,"_pattern",t)}validatePlaceholder(t){watchString(this.component,"_placeholder",t)}validateReadOnly(t){watchBoolean(this.component,"_readOnly",t)}validateRequired(t){watchBoolean(this.component,"_required",t)}validateValue(t){watchString(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateValue(this.component._value)}onBlur(t){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(t)}onFocus(t){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(t)}}export{InputPasswordController as I,validateHasCounter as v};
4
+ import{I as InputIconController}from"./controller-icon.js";import{b as watchBoolean,w as watchValidator,x as watchNumber,d as watchString}from"./prop.validators.js";const validateHasCounter=(t,e)=>{watchBoolean(t,"_hasCounter",e)};class InputPasswordController extends InputIconController{constructor(t,e,a){super(t,e,a),this.component=t}validateAutoComplete(t){watchValidator(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){validateHasCounter(this.component,t)}validateMaxLength(t){watchNumber(this.component,"_maxLength",t,{min:0})}validatePattern(t){watchString(this.component,"_pattern",t)}validatePlaceholder(t){watchString(this.component,"_placeholder",t)}validateReadOnly(t){watchBoolean(this.component,"_readOnly",t)}validateRequired(t){watchBoolean(this.component,"_required",t)}validateValue(t){watchString(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateValue(this.component._value)}}export{InputPasswordController as I,validateHasCounter as v};
@@ -1 +1 @@
1
- {"file":"controller5.js","mappings":"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","names":[],"sources":["src/schema/props/has-counter.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HasCounterPropType = boolean;\n\n/**\n * Shows the character count on the lower border of the input.\n */\nexport type PropHasCounter = {\n\thasCounter: HasCounterPropType;\n};\n\n/* validator */\nexport const validateHasCounter = (component: Generic.Element.Component, value?: HasCounterPropType): void => {\n\twatchBoolean(component, '_hasCounter', value);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\tprivate placeholderCache?: string;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\t/**\n\t\t * Beim Screenreader NVDA wird der Placeholder mit\n\t\t * vorgelesen. Somit kann es vorkommen, dass das\n\t\t * Label und der Placeholder vorgelesen werden.\n\t\t *\n\t\t * Aufgrund dessen, dass das Label immer vorgelesen\n\t\t * werden muss, kann das zusätzliche Vorlesen des\n\t\t * Placeholders störend sein.\n\t\t *\n\t\t * Damit beim Fokussieren das \"doppelte\" vorlesen\n\t\t * vermieden werden kann, wird der Placeholder für\n\t\t * den fokussierten Feldstatus entfernt.\n\t\t *\n\t\t * Hinweis: Für alle Nutzenden müssen die all dar-\n\t\t * gestellten Inhalte, also auch der Place-\n\t\t * holder, gleichermaßen zugänglich sein.\n\t\t * Das oben beschriebene Handling erfüllt\n\t\t * diese Anforderung nicht.\n\t\t */\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: this.placeholderCache,\n\t\t};\n\t\tthis.placeholderCache = undefined;\n\t\tsuper.onBlur(event);\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.placeholderCache = this.component.state._placeholder as string;\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: undefined,\n\t\t};\n\t\tsuper.onFocus(event);\n\t}\n}\n"],"version":3}
1
+ {"file":"controller5.js","mappings":";;;;;;MAea,kBAAkB,GAAG,CAAC,SAAoC,EAAE,KAA0B;IAClG,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AAC/C;;MCXa,uBAAwB,SAAQ,mBAAmB;IAG/D,YAAmB,SAAyD,EAAE,IAAY,EAAE,IAAkB;QAC7G,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;IAEM,oBAAoB,CAAC,KAAsB;QACjD,cAAc,CACb,IAAI,CAAC,SAAS,EACd,eAAe,EACf,CAAC,KAAK,KAAc,OAAO,KAAK,KAAK,QAAQ,KAAK,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EACpF,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,EACrB,KAAK,CACL,CAAC;KACF;IAEM,kBAAkB,CAAC,KAAe;QACxC,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;KAC1C;IAEM,iBAAiB,CAAC,KAAc;QACtC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE;YAChD,GAAG,EAAE,CAAC;SACN,CAAC,CAAC;KACH;IAEM,eAAe,CAAC,KAAc;QACpC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;KAC/C;IAEM,mBAAmB,CAAC,KAAc;QACxC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;KACnD;IAEM,gBAAgB,CAAC,KAAe;QACtC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;KACjD;IAEM,gBAAgB,CAAC,KAAe;QACtC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;KACjD;IAEM,aAAa,CAAC,KAAc;QAClC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC;KACnE;IAEM,iBAAiB;QACvB,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACxD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;KAC1C;;;;;","names":[],"sources":["src/schema/props/has-counter.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HasCounterPropType = boolean;\n\n/**\n * Shows the character count on the lower border of the input.\n */\nexport type PropHasCounter = {\n\thasCounter: HasCounterPropType;\n};\n\n/* validator */\nexport const validateHasCounter = (component: Generic.Element.Component, value?: HasCounterPropType): void => {\n\twatchBoolean(component, '_hasCounter', value);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{L as Log,g as getDocument,s as setDevMode,b as setExperimentalMode,c as setColorContrastAnalysis,d as getWindow}from"./dev.utils.js";import{p as processEnv}from"./reuse.js";const initMeta=()=>{const e=getDocument().querySelector('meta[name="kolibri"]');if(e&&e.hasAttribute("content")){const t=e.getAttribute("content");"string"==typeof t&&(setDevMode(t.includes("dev-mode=true")),setExperimentalMode(t.includes("experimental-mode=true")),setColorContrastAnalysis(t.includes("color-contrast-analysis=true")))}},getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e},initKoliBri=()=>{initMeta(),Log.debug("\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n`--' `--´ `---´ `--' `--' `------´ `--' `--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 2.1.0\n\t",{forceLog:!0})},renderDevAdvice=()=>{!0!==getKoliBri().adviceShown&&(Object.defineProperty(getKoliBri(),"adviceShown",{get:function(){return!0}}),Log.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let nonce=()=>Math.floor(16777215*Math.random()).toString(16);"test"===processEnv&&(nonce=()=>"nonce");export{initKoliBri as i,nonce as n,renderDevAdvice as r};
4
+ import{L as Log,g as getDocument,s as setDevMode,b as setExperimentalMode,c as setColorContrastAnalysis,d as getWindow}from"./dev.utils.js";import{p as processEnv}from"./reuse.js";const initMeta=()=>{const e=getDocument().querySelector('meta[name="kolibri"]');if(e&&e.hasAttribute("content")){const t=e.getAttribute("content");"string"==typeof t&&(setDevMode(t.includes("dev-mode=true")),setExperimentalMode(t.includes("experimental-mode=true")),setColorContrastAnalysis(t.includes("color-contrast-analysis=true")))}},getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e},initKoliBri=()=>{initMeta(),Log.debug("\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | `--' | |) /_ ,--.--. `--'\n| . ' | .-. | | | ,--. | .-. \\ | .--' ,--.\n| |\\ \\ | '-' | | | | | | '--' / | | | |\n`--' `--´ `---´ `--' `--' `------´ `--' `--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 2.1.1\n\t",{forceLog:!0})},renderDevAdvice=()=>{!0!==getKoliBri().adviceShown&&(Object.defineProperty(getKoliBri(),"adviceShown",{get:function(){return!0}}),Log.debug("\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n"))};let nonce=()=>Math.floor(16777215*Math.random()).toString(16);"test"===processEnv&&(nonce=()=>"nonce");export{initKoliBri as i,nonce as n,renderDevAdvice as r};
@@ -1 +1 @@
1
- {"file":"dev.utils2.js","mappings":";;;;;;AAIA,MAAM,QAAQ,GAAG;IAChB,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IACjE,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAChC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9C,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAChE,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC,CAAC;SAC3E;KACD;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG;IAClB,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE;YAC7C,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,KAAK;SACf,CAAC,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;MAIW,WAAW,GAAG;IAC1B,QAAQ,EAAE,CAAC;IACX,GAAG,CAAC,KAAK,CACR;;;;;;;EAOA,EACA;QACC,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH,EAAE;MAEW,eAAe,GAAG;IAC9B,IAAI,UAAU,EAAE,CAAC,WAAW,KAAK,IAAI,EAAE;QACtC,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE;YAClD,GAAG,EAAE;gBACJ,OAAO,IAAI,CAAC;aACZ;SACD,CAAC,CAAC;QACH,GAAG,CAAC,KAAK,CACR;;;;;CAKF,CACE,CAAC;KACF;AACF,EAAE;IAEE,KAAK,GAAG,MAAc,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;AAE5E,IAAI,UAAU,KAAK,MAAM,EAAE;IAC1B,KAAK,GAAG,MAAc,OAAO,CAAC;AAC/B;;;;","names":[],"sources":["src/utils/dev.utils.ts"],"sourcesContent":["import { Log, getDocument, processEnv, setColorContrastAnalysis, setDevMode, setExperimentalMode } from '../schema';\n\nimport { getWindow } from '../schema';\n\nconst initMeta = (): void => {\n\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\tif (meta && meta.hasAttribute('content')) {\n\t\tconst content = meta.getAttribute('content');\n\t\tif (typeof content === 'string') {\n\t\t\tsetDevMode(content.includes('dev-mode=true'));\n\t\t\tsetExperimentalMode(content.includes('experimental-mode=true'));\n\t\t\tsetColorContrastAnalysis(content.includes('color-contrast-analysis=true'));\n\t\t}\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport { getKoliBri };\n\nexport const initKoliBri = (): void => {\n\tinitMeta();\n\tLog.debug(\n\t\t`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 2.1.0\n\t`,\n\t\t{\n\t\t\tforceLog: true,\n\t\t},\n\t);\n};\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`,\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"version":3}
1
+ {"file":"dev.utils2.js","mappings":";;;;;;AAIA,MAAM,QAAQ,GAAG;IAChB,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;IACjE,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAChC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9C,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAChE,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC,CAAC;SAC3E;KACD;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG;IAClB,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,KAAK,SAAS,EAAE;QAC1B,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE;YAC7C,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,KAAK;SACf,CAAC,CAAC;KACH;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;MAIW,WAAW,GAAG;IAC1B,QAAQ,EAAE,CAAC;IACX,GAAG,CAAC,KAAK,CACR;;;;;;;EAOA,EACA;QACC,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH,EAAE;MAEW,eAAe,GAAG;IAC9B,IAAI,UAAU,EAAE,CAAC,WAAW,KAAK,IAAI,EAAE;QACtC,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE;YAClD,GAAG,EAAE;gBACJ,OAAO,IAAI,CAAC;aACZ;SACD,CAAC,CAAC;QACH,GAAG,CAAC,KAAK,CACR;;;;;CAKF,CACE,CAAC;KACF;AACF,EAAE;IAEE,KAAK,GAAG,MAAc,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;AAE5E,IAAI,UAAU,KAAK,MAAM,EAAE;IAC1B,KAAK,GAAG,MAAc,OAAO,CAAC;AAC/B;;;;","names":[],"sources":["src/utils/dev.utils.ts"],"sourcesContent":["import { Log, getDocument, processEnv, setColorContrastAnalysis, setDevMode, setExperimentalMode } from '../schema';\n\nimport { getWindow } from '../schema';\n\nconst initMeta = (): void => {\n\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\tif (meta && meta.hasAttribute('content')) {\n\t\tconst content = meta.getAttribute('content');\n\t\tif (typeof content === 'string') {\n\t\t\tsetDevMode(content.includes('dev-mode=true'));\n\t\t\tsetExperimentalMode(content.includes('experimental-mode=true'));\n\t\t\tsetColorContrastAnalysis(content.includes('color-contrast-analysis=true'));\n\t\t}\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport { getKoliBri };\n\nexport const initKoliBri = (): void => {\n\tinitMeta();\n\tLog.debug(\n\t\t`\n,--. ,--. ,--. ,--. ,-----. ,--.\n| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 2.1.1\n\t`,\n\t\t{\n\t\t\tforceLog: true,\n\t\t},\n\t);\n};\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`,\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{i as initKoliBri,r as renderDevAdvice}from"./dev.utils2.js";import{e as getDevMode,g as getDocument,L as Log,a as getExperimentalMode,f as getColorContrastAnalysis,d as getWindow}from"./dev.utils.js";import{B as KoliBriUtils,C as koliBriA11yColorContrast,A as koliBriQuerySelector,D as koliBriQuerySelectorAll,E as koliBriQuerySelectorColors,p as parseJson,F as stringifyJson}from"./prop.validators.js";const getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e};function prototypeKoliBri(e,t){try{Object.defineProperty(getKoliBri(),e,{get:function(){return t}})}catch(t){Log.debug(`KoliBri property ${e} is already bind.`)}}const metaModeLog=(e,t)=>Log.debug(`${e} ${t?"":"not "}activated`),initialize=()=>{if(initKoliBri(),getDevMode()){renderDevAdvice(),prototypeKoliBri("a11yColorContrast",koliBriA11yColorContrast),prototypeKoliBri("querySelector",koliBriQuerySelector),prototypeKoliBri("querySelectorAll",koliBriQuerySelectorAll),prototypeKoliBri("querySelectorColors",koliBriQuerySelectorColors),prototypeKoliBri("utils",(function(){return KoliBriUtils})),prototypeKoliBri("parseJson",parseJson),prototypeKoliBri("stringifyJson",stringifyJson);const e=getDocument().body,t=getDocument().createElement("svg");if(t.setAttribute("aria-label","KoliBri-DevTools"),t.setAttribute("xmlns","http://www.w3.org/2000/svg"),t.setAttribute("role","toolbar"),t.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),t.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',getDocument().body.appendChild(t),metaModeLog("Development mode",getDevMode()),metaModeLog("Experimental mode",getExperimentalMode()),metaModeLog("Color contrast analysis",getColorContrastAnalysis()),getColorContrastAnalysis()){const t=setTimeout((()=>{clearTimeout(t),setInterval((()=>{KoliBriUtils.queryHtmlElementColors(getDocument().createElement("div"),koliBriA11yColorContrast(e),!1,!1)}),1e4)}),2500)}}};export{initialize};
4
+ import{i as initKoliBri,r as renderDevAdvice}from"./dev.utils2.js";import{e as getDevMode,g as getDocument,L as Log,a as getExperimentalMode,f as getColorContrastAnalysis,d as getWindow}from"./dev.utils.js";import{C as KoliBriUtils,D as koliBriA11yColorContrast,B as koliBriQuerySelector,E as koliBriQuerySelectorAll,F as koliBriQuerySelectorColors,p as parseJson,G as stringifyJson}from"./prop.validators.js";const getKoliBri=()=>{let e=getWindow().KoliBri;return void 0===e&&(e={},Object.defineProperty(getWindow(),"KoliBri",{value:e,writable:!1})),e};function prototypeKoliBri(e,t){try{Object.defineProperty(getKoliBri(),e,{get:function(){return t}})}catch(t){Log.debug(`KoliBri property ${e} is already bind.`)}}const metaModeLog=(e,t)=>Log.debug(`${e} ${t?"":"not "}activated`),initialize=()=>{if(initKoliBri(),getDevMode()){renderDevAdvice(),prototypeKoliBri("a11yColorContrast",koliBriA11yColorContrast),prototypeKoliBri("querySelector",koliBriQuerySelector),prototypeKoliBri("querySelectorAll",koliBriQuerySelectorAll),prototypeKoliBri("querySelectorColors",koliBriQuerySelectorColors),prototypeKoliBri("utils",(function(){return KoliBriUtils})),prototypeKoliBri("parseJson",parseJson),prototypeKoliBri("stringifyJson",stringifyJson);const e=getDocument().body,t=getDocument().createElement("svg");if(t.setAttribute("aria-label","KoliBri-DevTools"),t.setAttribute("xmlns","http://www.w3.org/2000/svg"),t.setAttribute("role","toolbar"),t.setAttribute("style","position: fixed;color: black;font-size: 200%;bottom: 0.25rem;right: 0.25rem;"),t.innerHTML='<svg\n xmlns="http://www.w3.org/2000/svg"\n width="50"\n height="50"\n viewBox="0 0 600 600"\n>\n <path d="M353 322L213 304V434L353 322Z" fill="#047" />\n <path d="M209 564V304L149 434L209 564Z" fill="#047" />\n <path d="M357 316L417 250L361 210L275 244L357 316Z" fill="#047" />\n <path d="M353 318L35 36L213 300L353 318Z" fill="#047" />\n <path d="M329 218L237 92L250 222L272 241L329 218Z" fill="#047" />\n <path d="M391 286L565 272L421 252L391 286Z" fill="#047" />\n</svg>',getDocument().body.appendChild(t),metaModeLog("Development mode",getDevMode()),metaModeLog("Experimental mode",getExperimentalMode()),metaModeLog("Color contrast analysis",getColorContrastAnalysis()),getColorContrastAnalysis()){const t=setTimeout((()=>{clearTimeout(t),setInterval((()=>{KoliBriUtils.queryHtmlElementColors(getDocument().createElement("div"),koliBriA11yColorContrast(e),!1,!1)}),1e4)}),2500)}}};export{initialize};
@@ -1 +1 @@
1
- {"file":"events.js","mappings":";;;SAGgB,eAAe,CAAC,KAAY;IAC3C,KAAK,CAAC,wBAAwB,EAAE,CAAC;IACjC,KAAK,CAAC,eAAe,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAI,IAAsB,EAAE,MAAS;IAC/D,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;QAC5C,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,MAAM;KACd,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAI,MAAmB,EAAE,IAAsB,EAAE,MAAU;IACvF,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC;AACjB,CAAC;SAEe,yBAAyB,CAAI,IAAsB,EAAE,MAAoB,EAAE,MAAU;IACpG,MAAM,IAAI,oBAAoB,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;SAEe,gCAAgC,CAAC,KAAY;IAC5D,KAAK,CAAC,cAAc,EAAE,CAAC;IACvB,eAAe,CAAC,KAAK,CAAC,CAAC;AACxB;;;;","names":[],"sources":["src/utils/events.ts"],"sourcesContent":["// TODO: Should be synchronized with enums/events.ts\ntype KoliBriEventType = 'blur' | 'change' | 'click' | 'focus' | 'input' | 'toggle';\n\nexport function stopPropagation(event: Event): void {\n\tevent.stopImmediatePropagation();\n\tevent.stopPropagation();\n}\n\nfunction createKoliBriEvent<T>(type: KoliBriEventType, detail: T): CustomEvent {\n\tconst event = new CustomEvent(`kol-${type}`, {\n\t\tbubbles: true,\n\t\tcancelable: true,\n\t\tcomposed: true,\n\t\tdetail: detail,\n\t});\n\treturn event;\n}\n\nfunction dispatchKoliBriEvent<T>(target: EventTarget, type: KoliBriEventType, detail?: T): boolean {\n\tconst dispatch = target.dispatchEvent(createKoliBriEvent(type, detail));\n\treturn dispatch;\n}\n\nexport function tryToDispatchKoliBriEvent<T>(type: KoliBriEventType, target?: EventTarget, detail?: T): void {\n\ttarget && dispatchKoliBriEvent(target, type, detail);\n}\n\nexport function preventDefaultAndStopPropagation(event: Event) {\n\tevent.preventDefault();\n\tstopPropagation(event);\n}\n"],"version":3}
1
+ {"file":"events.js","mappings":";;;SAGgB,eAAe,CAAC,KAAY;IAC3C,KAAK,CAAC,wBAAwB,EAAE,CAAC;IACjC,KAAK,CAAC,eAAe,EAAE,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAI,IAAsB,EAAE,MAAS;IAC/D,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;QAC5C,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,MAAM;KACd,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAI,MAAmB,EAAE,IAAsB,EAAE,MAAU;IACvF,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IACxE,OAAO,QAAQ,CAAC;AACjB,CAAC;SAEe,yBAAyB,CAAI,IAAsB,EAAE,MAAoB,EAAE,MAAU;IACpG,MAAM,IAAI,oBAAoB,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;SAEe,gCAAgC,CAAC,KAAY;IAC5D,KAAK,CAAC,cAAc,EAAE,CAAC;IACvB,eAAe,CAAC,KAAK,CAAC,CAAC;AACxB;;;;","names":[],"sources":["src/utils/events.ts"],"sourcesContent":["// TODO: Should be synchronized with enums/events.ts\ntype KoliBriEventType = 'blur' | 'change' | 'click' | 'focus' | 'input' | 'toggle' | 'selection-change';\n\nexport function stopPropagation(event: Event): void {\n\tevent.stopImmediatePropagation();\n\tevent.stopPropagation();\n}\n\nfunction createKoliBriEvent<T>(type: KoliBriEventType, detail: T): CustomEvent {\n\tconst event = new CustomEvent(`kol-${type}`, {\n\t\tbubbles: true,\n\t\tcancelable: true,\n\t\tcomposed: true,\n\t\tdetail: detail,\n\t});\n\treturn event;\n}\n\nfunction dispatchKoliBriEvent<T>(target: EventTarget, type: KoliBriEventType, detail?: T): boolean {\n\tconst dispatch = target.dispatchEvent(createKoliBriEvent(type, detail));\n\treturn dispatch;\n}\n\nexport function tryToDispatchKoliBriEvent<T>(type: KoliBriEventType, target?: EventTarget, detail?: T): void {\n\ttarget && dispatchKoliBriEvent(target, type, detail);\n}\n\nexport function preventDefaultAndStopPropagation(event: Event) {\n\tevent.preventDefault();\n\tstopPropagation(event);\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- const replaceAll=function(e,n,t){return e.split(n).join(t)};class I18nService{constructor(e){this.resourceMap=new Map,this.language=null!=e?e:"de"}addTranslations(e){Array.isArray(e)?e=new Set(e):"function"==typeof e&&(e=new Set([e])),void 0!==e&&e.forEach((e=>e(((e,n)=>{let t=this.resourceMap.get(e);return t||(t=new Map,this.resourceMap.set(e,t)),Object.entries(n).forEach((([e,n])=>{n&&t.set(e,n)})),e}))))}setLanguage(e){this.language=e}translate(e,n){var t;let i=null===(t=this.resourceMap.get(this.language))||void 0===t?void 0:t.get(e);return i?(null==n?void 0:n.placeholders)&&Object.entries(n.placeholders).forEach((([e,n])=>{i=replaceAll(i,`{{${e}}}`,n)})):i=e,i}}let i18n;const getI18nInstance=()=>{if(!(i18n instanceof I18nService))throw new Error("i18n not initialized yet");return i18n},initializeI18n=(e,n)=>{i18n=new I18nService(e),i18n.addTranslations(n)};export{getI18nInstance as g,initializeI18n as i};
4
+ const locale_de={error:"Fehler",warning:"Warnung",info:"Hinweis",success:"Erfolg",message:"Nachricht",close:"Schließen","form-description":"Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.",of:"von",characters:"Zeichen",new:"Neu","no-entries":"Es sind keine Einträge vorhanden.","change-order":"Sortierung von {{colLabel}} ändern","action-running":"Aktion wird ausgeführt...","action-done":"Aktion abgeschlossen",pagination:"Paginierung","page-first":"Direkt zur ersten Seite","page-back":"Eine Seite zurück","page-next":"Eine Seite weiter","page-last":"Direkt zur letzten Seite","entries-per-site":"Einträge pro Seite",page:"Seite","page-current":"Seite {{page}}","page-selected":"Seite {{page}} ist ausgewählt","page-per-site":"{{entries}} Einträge pro Seite","nav-maximize":"Navigation maximieren","nav-minimize":"Navigation minimieren","logo-description":"Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}","open-link-in-tab":"Öffnet in neuem Tab.","kolibri-logo":"Logo von KoliBri","table-pagination-label":"Paginierung für die Tabelle {{label}}","avatar-alt":"Avatar von {{name}}","split-button-dropdown-label-open":"Optionen anzeigen","split-button-dropdown-label-close":"Optionen schließen","toast-close-all":"Alle schließen","error-list":"Fehlerliste","error-list-message":"Bitte korrigieren Sie folgende Fehler:",version:"Versionsnummer","table-visible-range":"Einträge {{start}} bis {{end}} von {{total}}",dropdown:"Auswahlliste","nav-label-open":"Untermenü zu {{label}} öffnen","nav-label-close":"Untermenü zu {{label}} schließen"},locale_en={error:"Error",warning:"Warning",info:"Note",success:"Success",message:"Message",close:"Close","form-description":"Form fields marked with an asterisk (*) are mandatory.",of:"of",characters:"characters",new:"New","no-entries":"No entries available.","change-order":"Change order of {{colLabel}}","action-running":"Action is running...","action-done":"Action done",pagination:"Pagination","page-first":"Directly to the first page","page-back":"One page back","page-next":"One page further","page-last":"Directly to the last page","entries-per-site":"Entries per page",page:"Page","page-current":"Page {{page}}","page-selected":"Page {{page}} is selected","page-per-site":"{{entries}} entries per page","nav-maximize":"Maximize navigation","nav-minimize":"Minimize navigation","logo-description":"Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}","open-link-in-tab":"Opens in new tab.","kolibri-logo":"KoliBri logo","table-pagination-label":"Pagination for table {{label}}","avatar-alt":"Avatar of {{name}}","split-button-dropdown-label-open":"Show options","split-button-dropdown-label-close":"Hide options","toast-close-all":"Close all","error-list":"Error list","error-list-message":"Please correct the following errors",version:"Version number","table-visible-range":"Entries {{start}} to {{end}} of {{total}}",dropdown:"Dropdown","nav-label-open":"Submenu for {{label}} open","nav-label-close":"Submenu for {{label}} close"},mapLocaleKeys=e=>Object.keys(e).reduce(((n,a)=>(n[`kol-${a}`]=e[a],n)),{}),TRANSLATIONS=new Set([e=>e("en",mapLocaleKeys(locale_en)),e=>e("de",mapLocaleKeys(locale_de))]),replaceAll=function(e,n,a){return e.split(n).join(a)};class I18nService{constructor(e){this.resourceMap=new Map,this.language=null!=e?e:"de"}addTranslations(e){Array.isArray(e)?e=new Set(e):"function"==typeof e&&(e=new Set([e])),void 0!==e&&e.forEach((e=>e(((e,n)=>{let a=this.resourceMap.get(e);return a||(a=new Map,this.resourceMap.set(e,a)),Object.entries(n).forEach((([e,n])=>{n&&a.set(e,n)})),e}))))}setLanguage(e){this.language=e}translate(e,n){var a;let i=null===(a=this.resourceMap.get(this.language))||void 0===a?void 0:a.get(e);return i?(null==n?void 0:n.placeholders)&&Object.entries(n.placeholders).forEach((([e,n])=>{i=replaceAll(i,`{{${e}}}`,n)})):i=e,i}}let i18n;const getI18nInstance=()=>i18n,initializeI18n=(e,n=TRANSLATIONS)=>(i18n=new I18nService(e),i18n.addTranslations(n),i18n);export{getI18nInstance as g,initializeI18n as i};
@@ -1 +1 @@
1
- {"file":"i18n.js","mappings":";;;AAUA,MAAM,UAAU,GAAG,UAAU,IAAY,EAAE,MAAc,EAAE,WAAmB;IAC7E,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAC7C,CAAC,CAAC;MAIW,WAAW;IAIvB,YAAmB,eAA+C;QAH1D,gBAAW,GAAG,IAAI,GAAG,EAA4C,CAAC;QAIzE,IAAI,CAAC,QAAQ,GAAG,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,IAAI,CAAC;KACxC;IAOM,eAAe,CACrB,YAGiF;QAEjF,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAChC,YAAY,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;SACrC;aAAM,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;YAC9C,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;SACvC;QAED,IAAI,YAAY,KAAK,SAAS,EAAE;YAC/B,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,KACtB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACN,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,SAAS,EAAE;oBACf,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;oBACtC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;iBACnC;gBAED,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAChC,IAAI,CAAC,EAAE;wBACN,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;qBACpB;iBACD,CAAC,CAAC;gBACH,OAAO,CAAC,CAAC;aACT,CAAC,CACF,CAAC;SACF;KACD;IAMM,WAAW,CAAC,GAAkC;QACpD,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;KACpB;IAQM,SAAS,CAAC,GAAW,EAAE,OAA6B;;QAC1D,IAAI,MAAM,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,0CAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,MAAM,EAAE;YACX,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,EAAE;gBAC1B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACnD,MAAM,GAAG,UAAU,CAAC,MAAO,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;iBAC5C,CAAC,CAAC;aACH;SACD;aAAM;YACN,MAAM,GAAG,GAAG,CAAC;SACb;QACD,OAAO,MAAM,CAAC;KACd;CACD;AAED,IAAI,IAAiB,CAAC;MAET,eAAe,GAAG;IAC9B,IAAI,EAAE,IAAI,YAAY,WAAW,CAAC,EAAE;QACnC,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;KAC5C;IACD,OAAO,IAAI,CAAC;AACb,EAAE;MAEW,cAAc,GAAG,CAC7B,GAAkC,EAClC,YAGiF;IAEjF,IAAI,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;AACpC;;;;","names":[],"sources":["src/core/i18n.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\ninterface ITranslationOptions {\n\t/**\n\t * Placeholders to insert into the text. Replacing {{key}} with the specified value if the \"key\".\n\t */\n\tplaceholders?: { [K: string]: string };\n}\n\n// String.replaceAll should be used but is only available with ECMAScript 2021.\nconst replaceAll = function (text: string, search: string, replacement: string) {\n\treturn text.split(search).join(replacement);\n};\n\ntype Resources = Map<string, string>;\n\nexport class I18nService {\n\tprivate resourceMap = new Map<Generic.I18n.Locale.ISO_639_1, Resources>();\n\tlanguage: Generic.I18n.Locale.ISO_639_1;\n\n\tpublic constructor(initialLanguage?: Generic.I18n.Locale.ISO_639_1) {\n\t\tthis.language = initialLanguage ?? 'de';\n\t}\n\n\t/**\n\t * Adds a resource bundle for the specified language.\n\t * @param lng the language the bundle is for\n\t * @param translationMap the translations of the given language\n\t */\n\tpublic addTranslations(\n\t\ttranslations?:\n\t\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>\n\t\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>[]\n\t\t\t| Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>>,\n\t) {\n\t\tif (Array.isArray(translations)) {\n\t\t\ttranslations = new Set(translations);\n\t\t} else if (typeof translations === 'function') {\n\t\t\ttranslations = new Set([translations]);\n\t\t}\n\n\t\tif (translations !== undefined) {\n\t\t\ttranslations.forEach((t) =>\n\t\t\t\tt((l, t) => {\n\t\t\t\t\tlet resources = this.resourceMap.get(l);\n\t\t\t\t\tif (!resources) {\n\t\t\t\t\t\tresources = new Map<string, string>();\n\t\t\t\t\t\tthis.resourceMap.set(l, resources);\n\t\t\t\t\t}\n\n\t\t\t\t\tObject.entries(t).forEach(([k, v]) => {\n\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\tresources.set(k, v);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\treturn l;\n\t\t\t\t}),\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Set the current language.\n\t * @param lng the language the bundle is for\n\t */\n\tpublic setLanguage(lng: Generic.I18n.Locale.ISO_639_1) {\n\t\tthis.language = lng;\n\t}\n\n\t/**\n\t * Determines a human-readable translated text for the given resource key.\n\t * @param key the resource key\n\t * @param options optional translation parameters\n\t * @returns the translated text\n\t */\n\tpublic translate(key: string, options?: ITranslationOptions) {\n\t\tlet result = this.resourceMap.get(this.language)?.get(key);\n\t\tif (result) {\n\t\t\tif (options?.placeholders) {\n\t\t\t\tObject.entries(options.placeholders).forEach(([k, v]) => {\n\t\t\t\t\tresult = replaceAll(result!, `{{${k}}}`, v);\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tresult = key;\n\t\t}\n\t\treturn result;\n\t}\n}\n\nlet i18n: I18nService;\n\nexport const getI18nInstance = () => {\n\tif (!(i18n instanceof I18nService)) {\n\t\tthrow new Error('i18n not initialized yet');\n\t}\n\treturn i18n;\n};\n\nexport const initializeI18n = (\n\tlng: Generic.I18n.Locale.ISO_639_1,\n\ttranslations?:\n\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>\n\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>[]\n\t\t| Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>>,\n) => {\n\ti18n = new I18nService(lng);\n\ti18n.addTranslations(translations);\n};\n"],"version":3}
1
+ {"file":"i18n.js","mappings":"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","names":[],"sources":["src/locales/de.ts","src/locales/en.ts","src/core/i18n.ts"],"sourcesContent":["export default {\n\terror: 'Fehler',\n\twarning: 'Warnung',\n\tinfo: 'Hinweis',\n\tsuccess: 'Erfolg',\n\tmessage: 'Nachricht',\n\tclose: 'Schließen',\n\t'form-description': 'Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.',\n\tof: 'von',\n\tcharacters: 'Zeichen',\n\tnew: 'Neu',\n\t'no-entries': 'Es sind keine Einträge vorhanden.',\n\t'change-order': 'Sortierung von {{colLabel}} ändern',\n\t'action-running': 'Aktion wird ausgeführt...',\n\t'action-done': 'Aktion abgeschlossen',\n\tpagination: 'Paginierung',\n\t'page-first': 'Direkt zur ersten Seite',\n\t'page-back': 'Eine Seite zurück',\n\t'page-next': 'Eine Seite weiter',\n\t'page-last': 'Direkt zur letzten Seite',\n\t'entries-per-site': 'Einträge pro Seite',\n\tpage: 'Seite',\n\t'page-current': 'Seite {{page}}',\n\t'page-selected': 'Seite {{page}} ist ausgewählt',\n\t'page-per-site': '{{entries}} Einträge pro Seite',\n\t'nav-maximize': 'Navigation maximieren',\n\t'nav-minimize': 'Navigation minimieren',\n\t'logo-description': 'Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}',\n\t'open-link-in-tab': 'Öffnet in neuem Tab.',\n\t'kolibri-logo': 'Logo von KoliBri',\n\t'table-pagination-label': 'Paginierung für die Tabelle {{label}}',\n\t'avatar-alt': 'Avatar von {{name}}',\n\t'split-button-dropdown-label-open': 'Optionen anzeigen',\n\t'split-button-dropdown-label-close': 'Optionen schließen',\n\t'toast-close-all': 'Alle schließen',\n\t'error-list': 'Fehlerliste',\n\t'error-list-message': 'Bitte korrigieren Sie folgende Fehler:',\n\tversion: 'Versionsnummer',\n\t'table-visible-range': 'Einträge {{start}} bis {{end}} von {{total}}',\n\tdropdown: 'Auswahlliste',\n\t'nav-label-open': 'Untermenü zu {{label}} öffnen',\n\t'nav-label-close': 'Untermenü zu {{label}} schließen',\n};\n","export default {\n\terror: 'Error',\n\twarning: 'Warning',\n\tinfo: 'Note',\n\tsuccess: 'Success',\n\tmessage: 'Message',\n\tclose: 'Close',\n\t'form-description': 'Form fields marked with an asterisk (*) are mandatory.',\n\tof: 'of',\n\tcharacters: 'characters',\n\tnew: 'New',\n\t'no-entries': 'No entries available.',\n\t'change-order': 'Change order of {{colLabel}}',\n\t'action-running': 'Action is running...',\n\t'action-done': 'Action done',\n\tpagination: 'Pagination',\n\t'page-first': 'Directly to the first page',\n\t'page-back': 'One page back',\n\t'page-next': 'One page further',\n\t'page-last': 'Directly to the last page',\n\t'entries-per-site': 'Entries per page',\n\tpage: 'Page',\n\t'page-current': 'Page {{page}}',\n\t'page-selected': 'Page {{page}} is selected',\n\t'page-per-site': '{{entries}} entries per page',\n\t'nav-maximize': 'Maximize navigation',\n\t'nav-minimize': 'Minimize navigation',\n\t'logo-description': 'Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}',\n\t'open-link-in-tab': 'Opens in new tab.',\n\t'kolibri-logo': 'KoliBri logo',\n\t'table-pagination-label': 'Pagination for table {{label}}',\n\t'avatar-alt': 'Avatar of {{name}}',\n\t'split-button-dropdown-label-open': 'Show options',\n\t'split-button-dropdown-label-close': 'Hide options',\n\t'toast-close-all': 'Close all',\n\t'error-list': 'Error list',\n\t'error-list-message': 'Please correct the following errors',\n\tversion: 'Version number',\n\t'table-visible-range': 'Entries {{start}} to {{end}} of {{total}}',\n\tdropdown: 'Dropdown',\n\t'nav-label-open': 'Submenu for {{label}} open',\n\t'nav-label-close': 'Submenu for {{label}} close',\n};\n","import type { Generic } from 'adopted-style-sheets';\nimport locale_de from '../locales/de';\nimport locale_en from '../locales/en';\n\nexport type ResourcePrefix = 'Kol';\nexport type ComponentKeys = keyof typeof locale_de;\n\nconst mapLocaleKeys = (locale: { [K in ComponentKeys]: string }) =>\n\t(Object.keys(locale) as ComponentKeys[]).reduce((a, c) => ((a[`${'kol'}-${c}`] = locale[c]), a), {} as Generic.I18n.Map<ResourcePrefix, ComponentKeys>);\n\nconst TRANSLATIONS = new Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, ResourcePrefix, ComponentKeys>>([\n\t(t: (language: 'en', translationMap: Generic.I18n.Map<ResourcePrefix, ComponentKeys>) => Generic.I18n.Locale.ISO_639_1) => t('en', mapLocaleKeys(locale_en)),\n\t(t: (language: 'de', translationMap: Generic.I18n.Map<ResourcePrefix, ComponentKeys>) => Generic.I18n.Locale.ISO_639_1) => t('de', mapLocaleKeys(locale_de)),\n]);\n\ninterface ITranslationOptions {\n\t/**\n\t * Placeholders to insert into the text. Replacing {{key}} with the specified value if the \"key\".\n\t */\n\tplaceholders?: { [K: string]: string };\n}\n\n// String.replaceAll should be used but is only available with ECMAScript 2021.\nconst replaceAll = function (text: string, search: string, replacement: string) {\n\treturn text.split(search).join(replacement);\n};\n\ntype Resources = Map<string, string>;\n\nexport class I18nService {\n\tprivate resourceMap = new Map<Generic.I18n.Locale.ISO_639_1, Resources>();\n\tlanguage: Generic.I18n.Locale.ISO_639_1;\n\n\tpublic constructor(initialLanguage?: Generic.I18n.Locale.ISO_639_1) {\n\t\tthis.language = initialLanguage ?? 'de';\n\t}\n\n\t/**\n\t * Adds a resource bundle for the specified language.\n\t * @param lng the language the bundle is for\n\t * @param translationMap the translations of the given language\n\t */\n\tpublic addTranslations(\n\t\ttranslations?:\n\t\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>\n\t\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>[]\n\t\t\t| Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>>,\n\t) {\n\t\tif (Array.isArray(translations)) {\n\t\t\ttranslations = new Set(translations);\n\t\t} else if (typeof translations === 'function') {\n\t\t\ttranslations = new Set([translations]);\n\t\t}\n\n\t\tif (translations !== undefined) {\n\t\t\ttranslations.forEach((t) =>\n\t\t\t\tt((l, t) => {\n\t\t\t\t\tlet resources = this.resourceMap.get(l);\n\t\t\t\t\tif (!resources) {\n\t\t\t\t\t\tresources = new Map<string, string>();\n\t\t\t\t\t\tthis.resourceMap.set(l, resources);\n\t\t\t\t\t}\n\n\t\t\t\t\tObject.entries(t).forEach(([k, v]) => {\n\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\tresources.set(k, v);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\treturn l;\n\t\t\t\t}),\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Set the current language.\n\t * @param lng the language the bundle is for\n\t */\n\tpublic setLanguage(lng: Generic.I18n.Locale.ISO_639_1) {\n\t\tthis.language = lng;\n\t}\n\n\t/**\n\t * Determines a human-readable translated text for the given resource key.\n\t * @param key the resource key\n\t * @param options optional translation parameters\n\t * @returns the translated text\n\t */\n\tpublic translate(key: string, options?: ITranslationOptions) {\n\t\tlet result = this.resourceMap.get(this.language)?.get(key);\n\t\tif (result) {\n\t\t\tif (options?.placeholders) {\n\t\t\t\tObject.entries(options.placeholders).forEach(([k, v]) => {\n\t\t\t\t\tresult = replaceAll(result!, `{{${k}}}`, v);\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tresult = key;\n\t\t}\n\t\treturn result;\n\t}\n}\n\nlet i18n: I18nService;\n\nexport const getI18nInstance = () => {\n\treturn i18n;\n};\n\nexport const initializeI18n = (\n\tlng: Generic.I18n.Locale.ISO_639_1,\n\ttranslations:\n\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>\n\t\t| Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>[]\n\t\t| Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>> = TRANSLATIONS,\n) => {\n\ti18n = new I18nService(lng);\n\ti18n.addTranslations(translations);\n\treturn i18n;\n};\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{g as getI18nInstance}from"./i18n.js";import{p as processEnv}from"./reuse.js";const locale_de={error:"Fehler",warning:"Warnung",info:"Hinweis",success:"Erfolg",message:"Nachricht",close:"Schließen","form-description":"Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.",of:"von",characters:"Zeichen",new:"Neu","no-entries":"Es sind keine Einträge vorhanden.","change-order":"Sortierung von {{colLabel}} ändern","action-running":"Aktion wird ausgeführt...","action-done":"Aktion abgeschlossen",pagination:"Paginierung","page-first":"Direkt zur ersten Seite","page-back":"Eine Seite zurück","page-next":"Eine Seite weiter","page-last":"Direkt zur letzten Seite","entries-per-site":"Einträge pro Seite",page:"Seite","page-current":"Seite {{page}}","page-selected":"Seite {{page}} ist ausgewählt","page-per-site":"{{entries}} Einträge pro Seite","nav-maximize":"Navigation maximieren","nav-minimize":"Navigation minimieren","logo-description":"Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}","open-link-in-tab":"Öffnet in neuem Tab.","kolibri-logo":"Logo von KoliBri","table-pagination-label":"Paginierung für die Tabelle {{label}}","avatar-alt":"Avatar von {{name}}","split-button-dropdown-label-open":"Optionen anzeigen","split-button-dropdown-label-close":"Optionen schließen","toast-close-all":"Alle schließen","error-list":"Fehlerliste","error-list-message":"Bitte korrigieren Sie folgende Fehler:",version:"Versionsnummer","table-visible-range":"Einträge {{start}} bis {{end}} von {{total}}"},locale_en={error:"Error",warning:"Warning",info:"Note",success:"Success",message:"Message",close:"Close","form-description":"Form fields marked with an asterisk (*) are mandatory.",of:"of",characters:"characters",new:"New","no-entries":"No entries available.","change-order":"Change order of {{colLabel}}","action-running":"Action is running...","action-done":"Action done",pagination:"Pagination","page-first":"Directly to the first page","page-back":"One page back","page-next":"One page further","page-last":"Directly to the last page","entries-per-site":"Entries per page",page:"Page","page-current":"Page {{page}}","page-selected":"Page {{page}} is selected","page-per-site":"{{entries}} entries per page","nav-maximize":"Maximize navigation","nav-minimize":"Minimize navigation","logo-description":"Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}","open-link-in-tab":"Opens in new tab.","kolibri-logo":"KoliBri logo","table-pagination-label":"Pagination for table {{label}}","avatar-alt":"Avatar of {{name}}","split-button-dropdown-label-open":"Show options","split-button-dropdown-label-close":"Hide options","toast-close-all":"Close all","error-list":"Error list","error-list-message":"Please correct the following errors",version:"Version number","table-visible-range":"Entries {{start}} to {{end}} of {{total}}"},mapLocaleKeys=e=>Object.keys(e).reduce(((n,a)=>(n[`kol-${a}`]=e[a],n)),{}),translations=new Set([e=>e("en",mapLocaleKeys(locale_en)),e=>e("de",mapLocaleKeys(locale_de))]);let translate=(e,n)=>{const a=getI18nInstance();let t=a.translate(e,n);return t===e&&(a.addTranslations(translations),t=a.translate(e,n)),t};"test"===processEnv&&(translate=e=>e);export{translate as t};
4
+ import{g as getI18nInstance,i as initializeI18n}from"./i18n.js";import{p as processEnv}from"./reuse.js";let translate=(t,e)=>{var n;return(null!==(n=getI18nInstance())&&void 0!==n?n:initializeI18n("de")).translate(t,e)};"test"===processEnv&&(translate=t=>t);export{translate as t};
@@ -1 +1 @@
1
- {"file":"i18n2.js","mappings":"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","names":[],"sources":["src/locales/de.ts","src/locales/en.ts","src/i18n.ts"],"sourcesContent":["export default {\n\terror: 'Fehler',\n\twarning: 'Warnung',\n\tinfo: 'Hinweis',\n\tsuccess: 'Erfolg',\n\tmessage: 'Nachricht',\n\tclose: 'Schließen',\n\t'form-description': 'Formular-Felder, die mit einem Sternchen (*) gekennzeichnet sind, sind Pflichtangaben.',\n\tof: 'von',\n\tcharacters: 'Zeichen',\n\tnew: 'Neu',\n\t'no-entries': 'Es sind keine Einträge vorhanden.',\n\t'change-order': 'Sortierung von {{colLabel}} ändern',\n\t'action-running': 'Aktion wird ausgeführt...',\n\t'action-done': 'Aktion abgeschlossen',\n\tpagination: 'Paginierung',\n\t'page-first': 'Direkt zur ersten Seite',\n\t'page-back': 'Eine Seite zurück',\n\t'page-next': 'Eine Seite weiter',\n\t'page-last': 'Direkt zur letzten Seite',\n\t'entries-per-site': 'Einträge pro Seite',\n\tpage: 'Seite',\n\t'page-current': 'Seite {{page}}',\n\t'page-selected': 'Seite {{page}} ist ausgewählt',\n\t'page-per-site': '{{entries}} Einträge pro Seite',\n\t'nav-maximize': 'Navigation maximieren',\n\t'nav-minimize': 'Navigation minimieren',\n\t'logo-description': 'Logo {{orgShort}}. Bundesadler mit Flaggenstab und Schriftzug {{orgLong}}',\n\t'open-link-in-tab': 'Öffnet in neuem Tab.',\n\t'kolibri-logo': 'Logo von KoliBri',\n\t'table-pagination-label': 'Paginierung für die Tabelle {{label}}',\n\t'avatar-alt': 'Avatar von {{name}}',\n\t'split-button-dropdown-label-open': 'Optionen anzeigen',\n\t'split-button-dropdown-label-close': 'Optionen schließen',\n\t'toast-close-all': 'Alle schließen',\n\t'error-list': 'Fehlerliste',\n\t'error-list-message': 'Bitte korrigieren Sie folgende Fehler:',\n\tversion: 'Versionsnummer',\n\t'table-visible-range': 'Einträge {{start}} bis {{end}} von {{total}}',\n};\n","export default {\n\terror: 'Error',\n\twarning: 'Warning',\n\tinfo: 'Note',\n\tsuccess: 'Success',\n\tmessage: 'Message',\n\tclose: 'Close',\n\t'form-description': 'Form fields marked with an asterisk (*) are mandatory.',\n\tof: 'of',\n\tcharacters: 'characters',\n\tnew: 'New',\n\t'no-entries': 'No entries available.',\n\t'change-order': 'Change order of {{colLabel}}',\n\t'action-running': 'Action is running...',\n\t'action-done': 'Action done',\n\tpagination: 'Pagination',\n\t'page-first': 'Directly to the first page',\n\t'page-back': 'One page back',\n\t'page-next': 'One page further',\n\t'page-last': 'Directly to the last page',\n\t'entries-per-site': 'Entries per page',\n\tpage: 'Page',\n\t'page-current': 'Page {{page}}',\n\t'page-selected': 'Page {{page}} is selected',\n\t'page-per-site': '{{entries}} entries per page',\n\t'nav-maximize': 'Maximize navigation',\n\t'nav-minimize': 'Minimize navigation',\n\t'logo-description': 'Logo {{orgShort}}. Federal eagle with flag staff and lettering {{orgLong}}',\n\t'open-link-in-tab': 'Opens in new tab.',\n\t'kolibri-logo': 'KoliBri logo',\n\t'table-pagination-label': 'Pagination for table {{label}}',\n\t'avatar-alt': 'Avatar of {{name}}',\n\t'split-button-dropdown-label-open': 'Show options',\n\t'split-button-dropdown-label-close': 'Hide options',\n\t'toast-close-all': 'Close all',\n\t'error-list': 'Error list',\n\t'error-list-message': 'Please correct the following errors',\n\tversion: 'Version number',\n\t'table-visible-range': 'Entries {{start}} to {{end}} of {{total}}',\n};\n","import { processEnv } from './schema';\nimport type { Generic } from 'adopted-style-sheets';\nimport { getI18nInstance } from './core/i18n';\nimport locale_de from './locales/de';\nimport locale_en from './locales/en';\n\ntype ResourcePrefix = 'Kol';\ntype ComponentKeys = keyof typeof locale_de;\n\nconst mapLocaleKeys = (locale: { [K in ComponentKeys]: string }) =>\n\t(Object.keys(locale) as ComponentKeys[]).reduce((a, c) => ((a[`${'kol'}-${c}`] = locale[c]), a), {} as Generic.I18n.Map<ResourcePrefix, ComponentKeys>);\n\nconst translations = new Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, ResourcePrefix, ComponentKeys>>([\n\t(t: (language: 'en', translationMap: Generic.I18n.Map<ResourcePrefix, ComponentKeys>) => Generic.I18n.Locale.ISO_639_1) => t('en', mapLocaleKeys(locale_en)),\n\t(t: (language: 'de', translationMap: Generic.I18n.Map<ResourcePrefix, ComponentKeys>) => Generic.I18n.Locale.ISO_639_1) => t('de', mapLocaleKeys(locale_de)),\n]);\n\ntype Options = {\n\tcount?: number;\n\tplaceholders?: { [K: string]: string };\n};\n\nexport let translate = (key: `${Lowercase<ResourcePrefix>}-${Lowercase<ComponentKeys>}`, options?: Options) => {\n\tconst i18n = getI18nInstance();\n\tlet text = i18n.translate(key, options);\n\tif (text === key) {\n\t\ti18n.addTranslations(translations);\n\t\ttext = i18n.translate(key, options);\n\t}\n\treturn text;\n};\n\nif (processEnv === 'test') {\n\ttranslate = (key): string => key;\n}\n"],"version":3}
1
+ {"file":"i18n2.js","mappings":";;;;;;IASW,SAAS,GAAG,CAAC,GAA+D,EAAE,OAAiB;;IACzG,MAAM,IAAI,GAAG,MAAA,eAAe,EAAE,mCAAI,cAAc,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACrC,EAAE;AAEF,IAAI,UAAU,KAAK,MAAM,EAAE;IAC1B,SAAS,GAAG,CAAC,GAAG,KAAa,GAAG,CAAC;AAClC;;;;","names":[],"sources":["src/i18n.ts"],"sourcesContent":["import type { ComponentKeys, ResourcePrefix } from './core/i18n';\nimport { getI18nInstance, initializeI18n } from './core/i18n';\nimport { processEnv } from './schema';\n\ntype Options = {\n\tcount?: number;\n\tplaceholders?: { [K: string]: string };\n};\n\nexport let translate = (key: `${Lowercase<ResourcePrefix>}-${Lowercase<ComponentKeys>}`, options?: Options) => {\n\tconst i18n = getI18nInstance() ?? initializeI18n('de');\n\treturn i18n.translate(key, options);\n};\n\nif (processEnv === 'test') {\n\ttranslate = (key): string => key;\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{t as te,e as ee,j,_}from"./prop.validators.js";export{K as KoliBriDevHelper}from"./prop.validators.js";import{setMode}from"@stencil/core/internal/client";export{getAssetPath,setAssetPath,setNonce,setPlatformOptions}from"@stencil/core/internal/client";import{L as Log}from"./dev.utils.js";import{p as processEnv}from"./reuse.js";export{s as setCurrentLocation}from"./ariaCurrentService.js";import{s as setCustomTagNames,K as KolToastContainerTag}from"./component-names.js";import{i as initializeI18n}from"./i18n.js";export{c as BUNDESAEMTER,e as BUNDESANSTALTEN,a as BUNDESMINISTERIEN,f as BUND_LOGO_TEXT_MAP,b as Bundesamt,d as Bundesanstalt,B as Bundesministerium}from"./bund.js";var KeyEnum,TagEnum;!function(t){t[t.error=0]="error",t[t.warning=1]="warning",t[t.info=2]="info",t[t.success=3]="success",t[t.message=4]="message",t[t.close=5]="close",t[t["form-description"]=6]="form-description",t[t.of=7]="of",t[t.characters=8]="characters",t[t.new=9]="new",t[t["no-entries"]=10]="no-entries",t[t["change-order"]=11]="change-order",t[t["action-running"]=12]="action-running",t[t["action-done"]=13]="action-done",t[t["page-first"]=14]="page-first",t[t["page-back"]=15]="page-back",t[t["page-next"]=16]="page-next",t[t["page-last"]=17]="page-last",t[t["entries-per-site"]=18]="entries-per-site",t[t["page-current"]=19]="page-current",t[t["page-selected"]=20]="page-selected",t[t["page-per-site"]=21]="page-per-site",t[t["logo-description"]=22]="logo-description",t[t["open-link-in-tab"]=23]="open-link-in-tab",t[t["kolibri-logo"]=24]="kolibri-logo"}(KeyEnum||(KeyEnum={})),function(t){t[t.abbr=0]="abbr",t[t.accordion=1]="accordion",t[t["accordion-group"]=2]="accordion-group",t[t.alert=3]="alert",t[t.avatar=4]="avatar",t[t.badge=5]="badge",t[t.breadcrumb=6]="breadcrumb",t[t.button=7]="button",t[t["button-group"]=8]="button-group",t[t["button-link"]=9]="button-link",t[t.card=10]="card",t[t.details=11]="details",t[t.form=12]="form",t[t.heading=13]="heading",t[t.icon=14]="icon",t[t.image=15]="image",t[t["indented-text"]=16]="indented-text",t[t["input-checkbox"]=17]="input-checkbox",t[t["input-color"]=18]="input-color",t[t["input-date"]=19]="input-date",t[t["input-email"]=20]="input-email",t[t["input-file"]=21]="input-file",t[t["input-number"]=22]="input-number",t[t["input-password"]=23]="input-password",t[t["input-radio"]=24]="input-radio",t[t["input-range"]=25]="input-range",t[t["input-text"]=26]="input-text",t[t.kolibri=27]="kolibri",t[t.link=28]="link",t[t["link-button"]=29]="link-button",t[t["link-group"]=30]="link-group",t[t.logo=31]="logo",t[t.modal=32]="modal",t[t.nav=33]="nav",t[t.pagination=34]="pagination",t[t.progress=35]="progress",t[t.select=36]="select",t[t.separator=37]="separator",t[t["skip-nav"]=38]="skip-nav",t[t.spin=39]="spin",t[t["split-button"]=40]="split-button",t[t.symbol=41]="symbol",t[t.table=42]="table",t[t["table-stateless"]=43]="table-stateless",t[t["table-stateful"]=44]="table-stateful",t[t.tabs=45]="tabs",t[t.textarea=46]="textarea",t[t["toast-container"]=47]="toast-container",t[t.toolbar=48]="toolbar",t[t.tooltip=49]="tooltip",t[t.tree=50]="tree",t[t["tree-item"]=51]="tree-item"}(TagEnum||(TagEnum={}));const KoliBri=new te("kol",KeyEnum,TagEnum);setMode((t=>{try{t.shadowRoot instanceof ShadowRoot&&ee(t,j(t))}catch(t){}return"default"})),import("./devtools.js").then((t=>{"object"==typeof t&&null!==t&&"function"==typeof t.initialize&&t.initialize()})).catch((t=>{Log.error(t)})),"development"===processEnv&&import("./index2.js");const globalFn=()=>{},appGlobalScript=globalFn,globalScripts=appGlobalScript;let initialized=!1;const bootstrap=async(t,e,o)=>{var n,i;initializeI18n(null!==(i=null===(n=null==o?void 0:o.translation)||void 0===n?void 0:n.name)&&void 0!==i?i:"de",null==o?void 0:o.translations),(null==o?void 0:o.transformTagName)&&setCustomTagNames(null==o?void 0:o.transformTagName);const a=await _(t,e,o);return initialized=!0,a},register=bootstrap,isInitialized=()=>initialized;class ToasterService{constructor(t,e){this.document=t,this.options=e,this.toastContainerElement=this.document.createElement(KolToastContainerTag),this.document.body.prepend(this.toastContainerElement)}static getInstance(t,e){if(!isInitialized())throw new Error("Toaster: Call KoliBri bootstrap/register method first.");let o=this.instances.get(t);return o||(o=new ToasterService(t,e),this.instances.set(t,o)),o}dispose(){const t=this.toastContainerElement;t?(this.toastContainerElement=void 0,t.remove()):console.warn("Toaster service is already disposed.")}enqueue(t){var e,o;if(this.toastContainerElement&&"function"==typeof this.toastContainerElement.enqueue)return!t.alertVariant&&(null===(e=this.options)||void 0===e?void 0:e.defaultAlertVariant)&&(t.alertVariant=null===(o=this.options)||void 0===o?void 0:o.defaultAlertVariant),this.toastContainerElement.enqueue(t)}closeAll(){this.toastContainerElement&&"function"==typeof this.toastContainerElement.closeAll&&this.toastContainerElement.closeAll()}}ToasterService.instances=new Map,globalScripts();export{KoliBri,ToasterService,bootstrap,register};
4
+ import{t as te,e as ee,j,_}from"./prop.validators.js";export{K as KoliBriDevHelper}from"./prop.validators.js";import{setMode}from"@stencil/core/internal/client";export{getAssetPath,setAssetPath,setNonce,setPlatformOptions}from"@stencil/core/internal/client";import{L as Log}from"./dev.utils.js";import{p as processEnv}from"./reuse.js";export{s as setCurrentLocation}from"./ariaCurrentService.js";import{s as setCustomTagNames,K as KolToastContainerTag}from"./component-names.js";import{i as initializeI18n}from"./i18n.js";export{c as BUNDESAEMTER,e as BUNDESANSTALTEN,a as BUNDESMINISTERIEN,f as BUND_LOGO_TEXT_MAP,b as Bundesamt,d as Bundesanstalt,B as Bundesministerium}from"./bund.js";var KeyEnum,TagEnum;!function(t){t[t.error=0]="error",t[t.warning=1]="warning",t[t.info=2]="info",t[t.success=3]="success",t[t.message=4]="message",t[t.close=5]="close",t[t["form-description"]=6]="form-description",t[t.of=7]="of",t[t.characters=8]="characters",t[t.new=9]="new",t[t["no-entries"]=10]="no-entries",t[t["change-order"]=11]="change-order",t[t["action-running"]=12]="action-running",t[t["action-done"]=13]="action-done",t[t["page-first"]=14]="page-first",t[t["page-back"]=15]="page-back",t[t["page-next"]=16]="page-next",t[t["page-last"]=17]="page-last",t[t["entries-per-site"]=18]="entries-per-site",t[t["page-current"]=19]="page-current",t[t["page-selected"]=20]="page-selected",t[t["page-per-site"]=21]="page-per-site",t[t["logo-description"]=22]="logo-description",t[t["open-link-in-tab"]=23]="open-link-in-tab",t[t["kolibri-logo"]=24]="kolibri-logo"}(KeyEnum||(KeyEnum={})),function(t){t[t.abbr=0]="abbr",t[t.accordion=1]="accordion",t[t["accordion-group"]=2]="accordion-group",t[t.alert=3]="alert",t[t.avatar=4]="avatar",t[t.badge=5]="badge",t[t.breadcrumb=6]="breadcrumb",t[t.button=7]="button",t[t["button-group"]=8]="button-group",t[t["button-link"]=9]="button-link",t[t.card=10]="card",t[t.combobox=11]="combobox",t[t.details=12]="details",t[t.form=13]="form",t[t.heading=14]="heading",t[t.icon=15]="icon",t[t.image=16]="image",t[t["indented-text"]=17]="indented-text",t[t["input-checkbox"]=18]="input-checkbox",t[t["input-color"]=19]="input-color",t[t["input-date"]=20]="input-date",t[t["input-email"]=21]="input-email",t[t["input-file"]=22]="input-file",t[t["input-number"]=23]="input-number",t[t["input-password"]=24]="input-password",t[t["input-radio"]=25]="input-radio",t[t["input-range"]=26]="input-range",t[t["input-text"]=27]="input-text",t[t.kolibri=28]="kolibri",t[t.link=29]="link",t[t["link-button"]=30]="link-button",t[t["link-group"]=31]="link-group",t[t.logo=32]="logo",t[t.modal=33]="modal",t[t.nav=34]="nav",t[t.pagination=35]="pagination",t[t.progress=36]="progress",t[t.select=37]="select",t[t.separator=38]="separator",t[t["skip-nav"]=39]="skip-nav",t[t.spin=40]="spin",t[t["split-button"]=41]="split-button",t[t.symbol=42]="symbol",t[t.table=43]="table",t[t["table-stateless"]=44]="table-stateless",t[t["table-stateful"]=45]="table-stateful",t[t.tabs=46]="tabs",t[t.textarea=47]="textarea",t[t["toast-container"]=48]="toast-container",t[t.toolbar=49]="toolbar",t[t.tooltip=50]="tooltip",t[t.tree=51]="tree",t[t["tree-item"]=52]="tree-item"}(TagEnum||(TagEnum={}));const KoliBri=new te("kol",KeyEnum,TagEnum);setMode((t=>{try{t.shadowRoot instanceof ShadowRoot&&ee(t,j(t))}catch(t){}return"default"})),import("./devtools.js").then((t=>{"object"==typeof t&&null!==t&&"function"==typeof t.initialize&&t.initialize()})).catch((t=>{Log.error(t)})),"development"===processEnv&&import("./index2.js");const globalFn=()=>{},appGlobalScript=globalFn,globalScripts=appGlobalScript;let initialized=!1;const bootstrap=async(t,e,o)=>{var n,i;initializeI18n(null!==(i=null===(n=null==o?void 0:o.translation)||void 0===n?void 0:n.name)&&void 0!==i?i:"de",null==o?void 0:o.translations),(null==o?void 0:o.transformTagName)&&setCustomTagNames(null==o?void 0:o.transformTagName);const a=await _(t,e,o);return initialized=!0,a},register=bootstrap,isInitialized=()=>initialized;class ToasterService{constructor(t,e){this.document=t,this.options=e,this.toastContainerElement=this.document.createElement(KolToastContainerTag),this.document.body.prepend(this.toastContainerElement)}static getInstance(t,e){if(!isInitialized())throw new Error("Toaster: Call KoliBri bootstrap/register method first.");let o=this.instances.get(t);return o||(o=new ToasterService(t,e),this.instances.set(t,o)),o}dispose(){const t=this.toastContainerElement;t?(this.toastContainerElement=void 0,t.remove()):console.warn("Toaster service is already disposed.")}enqueue(t){var e,o;if(this.toastContainerElement&&"function"==typeof this.toastContainerElement.enqueue)return!t.alertVariant&&(null===(e=this.options)||void 0===e?void 0:e.defaultAlertVariant)&&(t.alertVariant=null===(o=this.options)||void 0===o?void 0:o.defaultAlertVariant),this.toastContainerElement.enqueue(t)}closeAll(){this.toastContainerElement&&"function"==typeof this.toastContainerElement.closeAll&&this.toastContainerElement.closeAll()}}ToasterService.instances=new Map,globalScripts();export{KoliBri,ToasterService,bootstrap,register};
@@ -1 +1 @@
1
- {"file":"index.js","mappings":"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","names":["Theme","setThemeStyle","getThemeDetails","coreRegister"],"sources":["src/schema/i18n-keys.ts","src/schema/tag-names.ts","src/schema/index.ts","src/global/script.ts","@stencil/core/internal/app-globals","src/core/bootstrap.ts","src/components/toaster/toaster.tsx"],"sourcesContent":["export enum KeyEnum {\n\t'error',\n\t'warning',\n\t'info',\n\t'success',\n\t'message',\n\t'close',\n\t'form-description',\n\t'of',\n\t'characters',\n\t'new',\n\t'no-entries',\n\t'change-order',\n\t'action-running',\n\t'action-done',\n\t'page-first',\n\t'page-back',\n\t'page-next',\n\t'page-last',\n\t'entries-per-site',\n\t'page-current',\n\t'page-selected',\n\t'page-per-site',\n\t'logo-description',\n\t'open-link-in-tab',\n\t'kolibri-logo',\n}\n","export enum TagEnum {\n\t'abbr',\n\t'accordion',\n\t'accordion-group', // TODO: github pr link\n\t'alert',\n\t'avatar',\n\t'badge',\n\t'breadcrumb',\n\t'button',\n\t'button-group',\n\t'button-link',\n\t'card',\n\t'details',\n\t'form',\n\t'heading',\n\t'icon',\n\t'image',\n\t'indented-text',\n\t'input-checkbox',\n\t'input-color',\n\t'input-date',\n\t'input-email',\n\t'input-file',\n\t'input-number',\n\t'input-password',\n\t'input-radio',\n\t'input-range',\n\t'input-text',\n\t'kolibri',\n\t'link',\n\t'link-button',\n\t'link-group',\n\t'logo',\n\t'modal',\n\t'nav',\n\t'pagination',\n\t'progress',\n\t'select',\n\t'separator', // TODO: github pr link\n\t'skip-nav',\n\t'spin',\n\t'split-button',\n\t'symbol',\n\t'table',\n\t'table-stateless',\n\t'table-stateful',\n\t'tabs',\n\t'textarea',\n\t'toast-container',\n\t'toolbar', // TODO: github pr link\n\t'tooltip',\n\t'tree',\n\t'tree-item',\n}\n","import { Theme } from 'adopted-style-sheets';\n\nimport { KeyEnum } from './i18n-keys';\nimport { TagEnum } from './tag-names';\n\nexport const KoliBri = new Theme<'kol', keyof typeof KeyEnum, keyof typeof TagEnum>('kol', KeyEnum, TagEnum);\n\nexport * from './components';\n// export * from './enums'; only for internal use\nexport * from './props';\nexport * from './types';\nexport * from './utils';\nexport * from './validators';\n","import { getThemeDetails, setThemeStyle } from 'adopted-style-sheets';\n\nimport { Log, processEnv } from '../schema';\nimport { setMode } from '@stencil/core';\n\nsetMode((elm) => {\n\ttry {\n\t\tif (elm.shadowRoot instanceof ShadowRoot) {\n\t\t\tsetThemeStyle(elm, getThemeDetails(elm));\n\t\t}\n\t} catch (error) {\n\t\t/**\n\t\t * Try is needed for SSR.\n\t\t * - no HTMLElement is available\n\t\t * - no ShadowRoot is available\n\t\t */\n\t}\n\treturn 'default';\n});\n\nimport('./devtools')\n\t.then((devTools) => {\n\t\tif (typeof devTools === 'object' && devTools !== null && typeof devTools.initialize === 'function') {\n\t\t\tdevTools.initialize();\n\t\t}\n\t})\n\t.catch((error) => {\n\t\tLog.error(error);\n\t});\n\n/* Import scripts necessary for the development server, i.e. the /dev/*.html files. Only include in development environment. */\nif (processEnv === 'development') {\n\timport('../dev');\n}\n","import appGlobalScript from '/home/runner/work/kolibri/kolibri/packages/components/src/global/script.ts';\nexport const globalScripts = appGlobalScript;\n","import type { Generic, LoaderCallback, RegisterOptions } from 'adopted-style-sheets';\nimport { register as coreRegister } from 'adopted-style-sheets';\nimport { initializeI18n } from './i18n';\nimport { setCustomTagNames } from './component-names';\n\nlet initialized = false;\n\ntype KoliBriOptions = RegisterOptions & {\n\ttransformTagName?: (tagName: string) => string;\n};\n\nexport const bootstrap = async (\n\tthemes:\n\t\t| Generic.Theming.RegisterPatch<string, string, string>\n\t\t| Generic.Theming.RegisterPatch<string, string, string>[]\n\t\t| Set<Generic.Theming.RegisterPatch<string, string, string>>,\n\tloaders: LoaderCallback | LoaderCallback[] | Set<LoaderCallback>,\n\toptions?: KoliBriOptions,\n): Promise<void[]> => {\n\tinitializeI18n(options?.translation?.name ?? 'de', options?.translations);\n\tif (options?.transformTagName) {\n\t\tsetCustomTagNames(options?.transformTagName);\n\t}\n\tconst coreRegisterReturnValue = await coreRegister(themes, loaders, options);\n\tinitialized = true;\n\n\treturn coreRegisterReturnValue;\n};\n\nexport const register = bootstrap;\nexport const isInitialized = () => initialized;\n","import type { Toast, ToasterOptions } from '../../schema';\nimport { KolToastContainerTag } from '../../core/component-names';\nimport { isInitialized } from '../../core/bootstrap';\n\nexport class ToasterService {\n\tprivate static readonly instances: Map<Document, ToasterService> = new Map<Document, ToasterService>();\n\n\tprivate toastContainerElement?: HTMLKolToastContainerElement;\n\n\tprivate constructor(\n\t\tprivate readonly document: Document,\n\t\tprivate readonly options?: ToasterOptions,\n\t) {\n\t\tthis.toastContainerElement = this.document.createElement(KolToastContainerTag);\n\t\tthis.document.body.prepend(this.toastContainerElement);\n\t}\n\n\t/**\n\t * Get a toaster for the specified document environment. Each environment has exactly one instance of the service.\n\t */\n\tpublic static getInstance(document: Document, options?: ToasterOptions): ToasterService {\n\t\tif (!isInitialized()) {\n\t\t\tthrow new Error('Toaster: Call KoliBri bootstrap/register method first.');\n\t\t}\n\n\t\tlet instance = this.instances.get(document);\n\t\tif (!instance) {\n\t\t\tinstance = new ToasterService(document, options);\n\t\t\tthis.instances.set(document, instance);\n\t\t}\n\t\treturn instance;\n\t}\n\n\tpublic dispose() {\n\t\tconst element = this.toastContainerElement;\n\t\tif (element) {\n\t\t\tthis.toastContainerElement = undefined;\n\t\t\telement.remove();\n\t\t} else {\n\t\t\tconsole.warn('Toaster service is already disposed.');\n\t\t}\n\t}\n\n\tpublic enqueue(toast: Toast): Promise<() => void> | undefined {\n\t\t/**\n\t\t * We need this condition for SSR. The toast container is not rendered on the server,\n\t\t * so we can't enqueue toasts.\n\t\t */\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.enqueue === 'function') {\n\t\t\tif (!toast.alertVariant && this.options?.defaultAlertVariant) {\n\t\t\t\ttoast.alertVariant = this.options?.defaultAlertVariant;\n\t\t\t}\n\n\t\t\treturn this.toastContainerElement.enqueue(toast);\n\t\t}\n\t}\n\n\tpublic closeAll(): void {\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.closeAll === 'function') {\n\t\t\tvoid this.toastContainerElement.closeAll();\n\t\t}\n\t}\n}\n"],"version":3}
1
+ {"file":"index.js","mappings":"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","names":["Theme","setThemeStyle","getThemeDetails","coreRegister"],"sources":["src/schema/i18n-keys.ts","src/schema/tag-names.ts","src/schema/index.ts","src/global/script.ts","@stencil/core/internal/app-globals","src/core/bootstrap.ts","src/components/toaster/toaster.tsx"],"sourcesContent":["export enum KeyEnum {\n\t'error',\n\t'warning',\n\t'info',\n\t'success',\n\t'message',\n\t'close',\n\t'form-description',\n\t'of',\n\t'characters',\n\t'new',\n\t'no-entries',\n\t'change-order',\n\t'action-running',\n\t'action-done',\n\t'page-first',\n\t'page-back',\n\t'page-next',\n\t'page-last',\n\t'entries-per-site',\n\t'page-current',\n\t'page-selected',\n\t'page-per-site',\n\t'logo-description',\n\t'open-link-in-tab',\n\t'kolibri-logo',\n}\n","export enum TagEnum {\n\t'abbr',\n\t'accordion',\n\t'accordion-group', // TODO: github pr link\n\t'alert',\n\t'avatar',\n\t'badge',\n\t'breadcrumb',\n\t'button',\n\t'button-group',\n\t'button-link',\n\t'card',\n\t'combobox',\n\t'details',\n\t'form',\n\t'heading',\n\t'icon',\n\t'image',\n\t'indented-text',\n\t'input-checkbox',\n\t'input-color',\n\t'input-date',\n\t'input-email',\n\t'input-file',\n\t'input-number',\n\t'input-password',\n\t'input-radio',\n\t'input-range',\n\t'input-text',\n\t'kolibri',\n\t'link',\n\t'link-button',\n\t'link-group',\n\t'logo',\n\t'modal',\n\t'nav',\n\t'pagination',\n\t'progress',\n\t'select',\n\t'separator', // TODO: github pr link\n\t'skip-nav',\n\t'spin',\n\t'split-button',\n\t'symbol',\n\t'table',\n\t'table-stateless',\n\t'table-stateful',\n\t'tabs',\n\t'textarea',\n\t'toast-container',\n\t'toolbar', // TODO: github pr link\n\t'tooltip',\n\t'tree',\n\t'tree-item',\n}\n","import { Theme } from 'adopted-style-sheets';\n\nimport { KeyEnum } from './i18n-keys';\nimport { TagEnum } from './tag-names';\n\nexport const KoliBri = new Theme<'kol', keyof typeof KeyEnum, keyof typeof TagEnum>('kol', KeyEnum, TagEnum);\n\nexport * from './components';\n// export * from './enums'; only for internal use\nexport * from './props';\nexport * from './types';\nexport * from './utils';\nexport * from './validators';\n","import { getThemeDetails, setThemeStyle } from 'adopted-style-sheets';\n\nimport { Log, processEnv } from '../schema';\nimport { setMode } from '@stencil/core';\n\nsetMode((elm) => {\n\ttry {\n\t\tif (elm.shadowRoot instanceof ShadowRoot) {\n\t\t\tsetThemeStyle(elm, getThemeDetails(elm));\n\t\t}\n\t} catch (error) {\n\t\t/**\n\t\t * Try is needed for SSR.\n\t\t * - no HTMLElement is available\n\t\t * - no ShadowRoot is available\n\t\t */\n\t}\n\treturn 'default';\n});\n\nimport('./devtools')\n\t.then((devTools) => {\n\t\tif (typeof devTools === 'object' && devTools !== null && typeof devTools.initialize === 'function') {\n\t\t\tdevTools.initialize();\n\t\t}\n\t})\n\t.catch((error) => {\n\t\tLog.error(error);\n\t});\n\n/* Import scripts necessary for the development server, i.e. the /dev/*.html files. Only include in development environment. */\nif (processEnv === 'development') {\n\timport('../dev');\n}\n","import appGlobalScript from '/home/runner/work/kolibri/kolibri/packages/components/src/global/script.ts';\nexport const globalScripts = appGlobalScript;\n","import type { Generic, LoaderCallback, RegisterOptions } from 'adopted-style-sheets';\nimport { register as coreRegister } from 'adopted-style-sheets';\nimport { initializeI18n } from './i18n';\nimport { setCustomTagNames } from './component-names';\n\nlet initialized = false;\n\ntype KoliBriOptions = RegisterOptions & {\n\ttransformTagName?: (tagName: string) => string;\n};\n\nexport const bootstrap = async (\n\tthemes:\n\t\t| Generic.Theming.RegisterPatch<string, string, string>\n\t\t| Generic.Theming.RegisterPatch<string, string, string>[]\n\t\t| Set<Generic.Theming.RegisterPatch<string, string, string>>,\n\tloaders: LoaderCallback | LoaderCallback[] | Set<LoaderCallback>,\n\toptions?: KoliBriOptions,\n): Promise<void[]> => {\n\tinitializeI18n(options?.translation?.name ?? 'de', options?.translations);\n\tif (options?.transformTagName) {\n\t\tsetCustomTagNames(options?.transformTagName);\n\t}\n\tconst coreRegisterReturnValue = await coreRegister(themes, loaders, options);\n\tinitialized = true;\n\n\treturn coreRegisterReturnValue;\n};\n\nexport const register = bootstrap;\nexport const isInitialized = () => initialized;\n","import type { Toast, ToasterOptions } from '../../schema';\nimport { KolToastContainerTag } from '../../core/component-names';\nimport { isInitialized } from '../../core/bootstrap';\n\nexport class ToasterService {\n\tprivate static readonly instances: Map<Document, ToasterService> = new Map<Document, ToasterService>();\n\n\tprivate toastContainerElement?: HTMLKolToastContainerElement;\n\n\tprivate constructor(\n\t\tprivate readonly document: Document,\n\t\tprivate readonly options?: ToasterOptions,\n\t) {\n\t\tthis.toastContainerElement = this.document.createElement(KolToastContainerTag);\n\t\tthis.document.body.prepend(this.toastContainerElement);\n\t}\n\n\t/**\n\t * Get a toaster for the specified document environment. Each environment has exactly one instance of the service.\n\t */\n\tpublic static getInstance(document: Document, options?: ToasterOptions): ToasterService {\n\t\tif (!isInitialized()) {\n\t\t\tthrow new Error('Toaster: Call KoliBri bootstrap/register method first.');\n\t\t}\n\n\t\tlet instance = this.instances.get(document);\n\t\tif (!instance) {\n\t\t\tinstance = new ToasterService(document, options);\n\t\t\tthis.instances.set(document, instance);\n\t\t}\n\t\treturn instance;\n\t}\n\n\tpublic dispose() {\n\t\tconst element = this.toastContainerElement;\n\t\tif (element) {\n\t\t\tthis.toastContainerElement = undefined;\n\t\t\telement.remove();\n\t\t} else {\n\t\t\tconsole.warn('Toaster service is already disposed.');\n\t\t}\n\t}\n\n\tpublic enqueue(toast: Toast): Promise<() => void> | undefined {\n\t\t/**\n\t\t * We need this condition for SSR. The toast container is not rendered on the server,\n\t\t * so we can't enqueue toasts.\n\t\t */\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.enqueue === 'function') {\n\t\t\tif (!toast.alertVariant && this.options?.defaultAlertVariant) {\n\t\t\t\ttoast.alertVariant = this.options?.defaultAlertVariant;\n\t\t\t}\n\n\t\t\treturn this.toastContainerElement.enqueue(toast);\n\t\t}\n\t}\n\n\tpublic closeAll(): void {\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.closeAll === 'function') {\n\t\t\tvoid this.toastContainerElement.closeAll();\n\t\t}\n\t}\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"kol-abbr.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,orIAAorI,CAAC;AAC7sI,6BAAe,eAAe;;MCkBjBA,SAAO;;;;;QACF,UAAK,GAAG,KAAK,EAAE,CAAC;;6BAwBqB,KAAK;qBAQvB;YACnC,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,KAAK;SACpB;;IAjCM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,UAAU,IAErB,gFAAuB,IAAI,CAAC,KAAK,EAAE,IAAI,EAAC,YAAY,EAAC,QAAQ,EAAC,GAAG,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IACzF,6DAAM,KAAK,EAAC,EAAE,IACb,8DAAQ,CACF,CACD,EACP,EAAC,eAAe,qDAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAoB,CAC3G,EACN;KACF;IAgCM,aAAa,CAAC,KAAqB;QACzC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAGM,oBAAoB,CAAC,KAA4B;QACvD,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAClC;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAbbr"],"sources":["src/components/abbr/style.scss?tag=kol-abbr&mode=default&encapsulation=shadow","src/components/abbr/component.tsx"],"sourcesContent":["@import '../@shared/mixins';\n@import '../style';\n\n@layer kol-component {\n\t:host {\n\t\tfont-size: rem(16);\n\t}\n\n\t:host > abbr {\n\t\tcursor: help;\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { validateLabel, validateTooltipAlign } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport { nonce } from '../../utils/dev.utils';\nimport { KolTooltipWcTag } from '../../core/component-names';\n\nimport type { AbbrAPI, AbbrStates, LabelPropType, TooltipAlignPropType } from '../../schema';\n\n/**\n * @slot - Der Begriff, der erläutert werden soll.\n */\n@Component({\n\ttag: 'kol-abbr',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAbbr implements AbbrAPI {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-abbr\">\n\t\t\t\t{/* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */}\n\t\t\t\t<abbr aria-labelledby={this.nonce} role=\"definition\" tabindex=\"0\" title={this.state._label}>\n\t\t\t\t\t<span title=\"\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t</abbr>\n\t\t\t\t<KolTooltipWcTag _align={this.state._tooltipAlign} _id={this.nonce} _label={this.state._label}></KolTooltipWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Die State-Parameter repräsentieren den inneren State\n\t * einer Komponente.\n\t *\n\t * @see: https://stenciljs.com/docs/state\n\t */\n\t@State() public state: AbbrStates = {\n\t\t_label: '', // ⚠ required\n\t\t_tooltipAlign: 'top',\n\t};\n\n\t/**\n\t * Die Watch-Methoden dienen der Möglichkeit zur\n\t * Validierung der Werte eines Properties und\n\t * dem Mapping dessen auf einen anderen internen\n\t * State-Typ.\n\t *\n\t * @see: https://stenciljs.com/docs/properties#prop-validation\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-abbr.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,orIAAorI,CAAC;AAC7sI,6BAAe,eAAe;;MCkBjBA,SAAO;;;;;QACF,UAAK,GAAG,KAAK,EAAE,CAAC;;6BAwBqB,KAAK;qBAQvB;YACnC,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,KAAK;SACpB;;IAjCM,MAAM;QACZ,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,UAAU,IAErB,gFAAuB,IAAI,CAAC,KAAK,EAAE,IAAI,EAAC,YAAY,EAAC,QAAQ,EAAC,GAAG,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IACzF,6DAAM,KAAK,EAAC,EAAE,IACb,8DAAQ,CACF,CACD,EACP,EAAC,eAAe,qDAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAoB,CAC3G,EACN;KACF;IAgCM,aAAa,CAAC,KAAqB;QACzC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACd,CAAC,CAAC;KACH;IAGM,oBAAoB,CAAC,KAA4B;QACvD,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;KAClC;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolAbbr"],"sources":["src/components/abbr/style.scss?tag=kol-abbr&mode=default&encapsulation=shadow","src/components/abbr/shadow.tsx"],"sourcesContent":["@import '../@shared/mixins';\n@import '../style';\n\n@layer kol-component {\n\t:host {\n\t\tfont-size: rem(16);\n\t}\n\n\t:host > abbr {\n\t\tcursor: help;\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { validateLabel, validateTooltipAlign } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\n\nimport { nonce } from '../../utils/dev.utils';\nimport { KolTooltipWcTag } from '../../core/component-names';\n\nimport type { AbbrAPI, AbbrStates, LabelPropType, TooltipAlignPropType } from '../../schema';\n\n/**\n * @slot - Der Begriff, der erläutert werden soll.\n */\n@Component({\n\ttag: 'kol-abbr',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolAbbr implements AbbrAPI {\n\tprivate readonly nonce = nonce();\n\n\tpublic render(): JSX.Element {\n\t\treturn (\n\t\t\t<Host class=\"kol-abbr\">\n\t\t\t\t{/* eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex */}\n\t\t\t\t<abbr aria-labelledby={this.nonce} role=\"definition\" tabindex=\"0\" title={this.state._label}>\n\t\t\t\t\t<span title=\"\">\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</span>\n\t\t\t\t</abbr>\n\t\t\t\t<KolTooltipWcTag _align={this.state._tooltipAlign} _id={this.nonce} _label={this.state._label}></KolTooltipWcTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: LabelPropType;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Die State-Parameter repräsentieren den inneren State\n\t * einer Komponente.\n\t *\n\t * @see: https://stenciljs.com/docs/state\n\t */\n\t@State() public state: AbbrStates = {\n\t\t_label: '', // ⚠ required\n\t\t_tooltipAlign: 'top',\n\t};\n\n\t/**\n\t * Die Watch-Methoden dienen der Möglichkeit zur\n\t * Validierung der Werte eines Properties und\n\t * dem Mapping dessen auf einen anderen internen\n\t * State-Typ.\n\t *\n\t * @see: https://stenciljs.com/docs/properties#prop-validation\n\t */\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_tooltipAlign')\n\tpublic validateTooltipAlign(value?: TooltipAlignPropType): void {\n\t\tvalidateTooltipAlign(this, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateTooltipAlign(this._tooltipAlign);\n\t}\n}\n"],"version":3}