@public-ui/components 2.1.5 → 2.1.6

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 (647) hide show
  1. package/custom-elements.json +6 -1
  2. package/dist/cjs/{InternalUnderlinedAccessKey-7d7480c5.js → InternalUnderlinedAccessKey-4a8f0b9d.js} +1 -1
  3. package/dist/cjs/{InternalUnderlinedAccessKey-7d7480c5.js.map → InternalUnderlinedAccessKey-4a8f0b9d.js.map} +1 -1
  4. package/dist/cjs/access-key-12589f9b.js +4 -0
  5. package/dist/cjs/{access-key-651fa517.js.map → access-key-12589f9b.js.map} +1 -1
  6. package/dist/cjs/{align-e658dfb3.js → align-cf181773.js} +1 -1
  7. package/dist/cjs/{align-e658dfb3.js.map → align-cf181773.js.map} +1 -1
  8. package/dist/cjs/align-floating-elements-e55859b9.js +4 -0
  9. package/dist/cjs/align-floating-elements-e55859b9.js.map +1 -0
  10. package/dist/cjs/app-globals-df6581a7.js +4 -0
  11. package/dist/cjs/{app-globals-01de1543.js.map → app-globals-df6581a7.js.map} +1 -1
  12. package/dist/cjs/{aria-expanded-42fcd7e7.js → aria-expanded-8331b8d6.js} +1 -1
  13. package/dist/cjs/{aria-expanded-42fcd7e7.js.map → aria-expanded-8331b8d6.js.map} +1 -1
  14. package/dist/cjs/{associated.controller-1a15290a.js → associated.controller-98098f66.js} +1 -1
  15. package/dist/cjs/associated.controller-98098f66.js.map +1 -0
  16. package/dist/cjs/clsx-dd4d6dd1.js +4 -0
  17. package/dist/cjs/clsx-dd4d6dd1.js.map +1 -0
  18. package/dist/cjs/{color-252ad7e8.js → color-e9f9368d.js} +1 -1
  19. package/dist/cjs/{color-252ad7e8.js.map → color-e9f9368d.js.map} +1 -1
  20. package/dist/cjs/common-1ab929ac.js +4 -0
  21. package/dist/cjs/common-1ab929ac.js.map +1 -0
  22. package/dist/cjs/{controller-6585b2bb.js → controller-195131e7.js} +1 -1
  23. package/dist/cjs/{controller-6585b2bb.js.map → controller-195131e7.js.map} +1 -1
  24. package/dist/cjs/{controller-0b373a9e.js → controller-6f51903f.js} +1 -1
  25. package/dist/cjs/{controller-0b373a9e.js.map → controller-6f51903f.js.map} +1 -1
  26. package/dist/cjs/{controller-8cdc4ac5.js → controller-99650aa7.js} +1 -1
  27. package/dist/cjs/{controller-8cdc4ac5.js.map → controller-99650aa7.js.map} +1 -1
  28. package/dist/cjs/{controller-900785e0.js → controller-c859dca1.js} +1 -1
  29. package/dist/cjs/{controller-900785e0.js.map → controller-c859dca1.js.map} +1 -1
  30. package/dist/cjs/{controller-90d8c997.js → controller-dbb37c4c.js} +1 -1
  31. package/dist/cjs/{controller-90d8c997.js.map → controller-dbb37c4c.js.map} +1 -1
  32. package/dist/cjs/controller-icon-38a32576.js +4 -0
  33. package/dist/cjs/{controller-icon-8ff705be.js.map → controller-icon-38a32576.js.map} +1 -1
  34. package/dist/cjs/custom-class-5a76b8cc.js +4 -0
  35. package/dist/cjs/{custom-class-70eaa1d7.js.map → custom-class-5a76b8cc.js.map} +1 -1
  36. package/dist/cjs/dev.utils-58fde089.js +4 -0
  37. package/dist/cjs/dev.utils-58fde089.js.map +1 -0
  38. package/dist/cjs/{dev.utils-761c7626.js → dev.utils-abeba982.js} +1 -1
  39. package/dist/cjs/{dev.utils-761c7626.js.map → dev.utils-abeba982.js.map} +1 -1
  40. package/dist/cjs/{devtools-dfffcaed.js → devtools-36edd41c.js} +1 -1
  41. package/dist/cjs/{devtools-dfffcaed.js.map → devtools-36edd41c.js.map} +1 -1
  42. package/dist/cjs/disabled-4f7a7b7e.js +4 -0
  43. package/dist/cjs/{disabled-c6505268.js.map → disabled-4f7a7b7e.js.map} +1 -1
  44. package/dist/cjs/events-a0477b5a.js +4 -0
  45. package/dist/cjs/{events-14ad81c3.js.map → events-a0477b5a.js.map} +1 -1
  46. package/dist/cjs/{form-field-msg-b21d6d81.js → form-field-msg-04819cdb.js} +1 -1
  47. package/dist/cjs/{form-field-msg-b21d6d81.js.map → form-field-msg-04819cdb.js.map} +1 -1
  48. package/dist/cjs/has-closer-354720e1.js +4 -0
  49. package/dist/cjs/{has-closer-7819610c.js.map → has-closer-354720e1.js.map} +1 -1
  50. package/dist/cjs/hide-label-7e4f3ef4.js +4 -0
  51. package/dist/cjs/{hide-label-c2417fe3.js.map → hide-label-7e4f3ef4.js.map} +1 -1
  52. package/dist/cjs/href-87a51631.js +4 -0
  53. package/dist/cjs/{href-54273ea2.js.map → href-87a51631.js.map} +1 -1
  54. package/dist/cjs/{i18n-2207af53.js → i18n-e623dc7e.js} +1 -1
  55. package/dist/cjs/{i18n-2207af53.js.map → i18n-e623dc7e.js.map} +1 -1
  56. package/dist/cjs/icons-3f3e0089.js +4 -0
  57. package/dist/cjs/{icons-30925600.js.map → icons-3f3e0089.js.map} +1 -1
  58. package/dist/cjs/image-source-7ee44fb4.js +4 -0
  59. package/dist/cjs/{image-source-d836d9d6.js.map → image-source-7ee44fb4.js.map} +1 -1
  60. package/dist/cjs/index-489d4e74.js +4 -0
  61. package/dist/cjs/index-489d4e74.js.map +1 -0
  62. package/dist/cjs/index.cjs.js +1 -1
  63. package/dist/cjs/index.cjs.js.map +1 -1
  64. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-badge.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-breadcrumb.cjs.entry.js +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-wc.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-button-wc.cjs.entry.js.map +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-combobox.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-combobox.cjs.entry.js.map +1 -1
  82. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-drawer.cjs.entry.js.map +1 -1
  85. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-heading-wc.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-icon.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-indented-text-wc.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  101. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  105. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  107. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-input.cjs.entry.js.map +1 -1
  114. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  119. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  120. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  123. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  125. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  127. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  129. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  130. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  131. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  132. package/dist/cjs/kol-span-wc.cjs.entry.js.map +1 -1
  133. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  134. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  135. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  136. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  137. package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
  138. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  139. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js.map +1 -1
  140. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  141. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  142. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  143. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  144. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  145. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  146. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  147. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  148. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  149. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  150. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  151. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  152. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  153. package/dist/cjs/kolibri.cjs.js +1 -1
  154. package/dist/cjs/kolibri.cjs.js.map +1 -1
  155. package/dist/cjs/{label-c3e352c8.js → label-5ba50d8b.js} +1 -1
  156. package/dist/cjs/{label-c3e352c8.js.map → label-5ba50d8b.js.map} +1 -1
  157. package/dist/cjs/loader.cjs.js +1 -1
  158. package/dist/cjs/open-f0d79417.js +4 -0
  159. package/dist/cjs/{open-b72a9d97.js.map → open-f0d79417.js.map} +1 -1
  160. package/dist/cjs/{prop.validators-476ef807.js → prop.validators-37113ad1.js} +1 -1
  161. package/dist/cjs/{prop.validators-476ef807.js.map → prop.validators-37113ad1.js.map} +1 -1
  162. package/dist/cjs/reuse-50a5792c.js +4 -0
  163. package/dist/cjs/reuse-50a5792c.js.map +1 -0
  164. package/dist/cjs/rows-4c48715e.js +4 -0
  165. package/dist/cjs/{rows-961f5d2e.js.map → rows-4c48715e.js.map} +1 -1
  166. package/dist/cjs/show-b03b7745.js +4 -0
  167. package/dist/cjs/{show-72e27def.js.map → show-b03b7745.js.map} +1 -1
  168. package/dist/cjs/{suggestions-c4836222.js → suggestions-3dbb61f0.js} +1 -1
  169. package/dist/cjs/{suggestions-c4836222.js.map → suggestions-3dbb61f0.js.map} +1 -1
  170. package/dist/cjs/{tab-index-a2eea6a0.js → tab-index-621163bf.js} +1 -1
  171. package/dist/cjs/{tab-index-a2eea6a0.js.map → tab-index-621163bf.js.map} +1 -1
  172. package/dist/cjs/tooltip-align-18f90f3f.js +4 -0
  173. package/dist/cjs/{tooltip-align-ddef1b9d.js.map → tooltip-align-18f90f3f.js.map} +1 -1
  174. package/dist/cjs/{unique-nav-labels-e8b42978.js → unique-nav-labels-b12ecac7.js} +1 -1
  175. package/dist/cjs/{unique-nav-labels-e8b42978.js.map → unique-nav-labels-b12ecac7.js.map} +1 -1
  176. package/dist/cjs/{validation-dbc5028a.js → validation-c5bb8a53.js} +1 -1
  177. package/dist/cjs/{validation-dbc5028a.js.map → validation-c5bb8a53.js.map} +1 -1
  178. package/dist/cjs/{validation-d73ffd53.js → validation-ccf9173b.js} +1 -1
  179. package/dist/cjs/{validation-d73ffd53.js.map → validation-ccf9173b.js.map} +1 -1
  180. package/dist/components/align-floating-elements.js +1 -1
  181. package/dist/components/align-floating-elements.js.map +1 -1
  182. package/dist/components/associated.controller.js.map +1 -1
  183. package/dist/components/clsx.js +4 -0
  184. package/dist/components/clsx.js.map +1 -0
  185. package/dist/components/common.js +4 -0
  186. package/dist/components/common.js.map +1 -0
  187. package/dist/components/controller-icon.js +1 -1
  188. package/dist/components/dev.utils.js +1 -1
  189. package/dist/components/dev.utils.js.map +1 -1
  190. package/dist/components/devtools.js +1 -1
  191. package/dist/components/events2.js +1 -1
  192. package/dist/components/icons.js +1 -1
  193. package/dist/components/index.js +1 -1
  194. package/dist/components/index.js.map +1 -1
  195. package/dist/components/kol-badge.js +1 -1
  196. package/dist/components/kol-badge.js.map +1 -1
  197. package/dist/components/kol-combobox.js +1 -1
  198. package/dist/components/kol-combobox.js.map +1 -1
  199. package/dist/components/kol-drawer.js +1 -1
  200. package/dist/components/kol-drawer.js.map +1 -1
  201. package/dist/components/kol-icon.js +1 -1
  202. package/dist/components/kol-icon.js.map +1 -1
  203. package/dist/components/kol-input-checkbox.js +1 -1
  204. package/dist/components/kol-input-checkbox.js.map +1 -1
  205. package/dist/components/kol-input.js +1 -1
  206. package/dist/components/kol-input.js.map +1 -1
  207. package/dist/components/kol-pagination.js +1 -1
  208. package/dist/components/kol-span-wc.js +1 -1
  209. package/dist/components/kol-span-wc.js.map +1 -1
  210. package/dist/components/kol-table-stateful.js +1 -1
  211. package/dist/components/kol-table-stateful.js.map +1 -1
  212. package/dist/components/prop.validators.js +1 -1
  213. package/dist/components/reuse.js +1 -1
  214. package/dist/components/reuse.js.map +1 -1
  215. package/dist/esm/{InternalUnderlinedAccessKey-daf44245.js → InternalUnderlinedAccessKey-7f6b445a.js} +1 -1
  216. package/dist/esm/{InternalUnderlinedAccessKey-daf44245.js.map → InternalUnderlinedAccessKey-7f6b445a.js.map} +1 -1
  217. package/dist/esm/{access-key-08edd3a7.js → access-key-6ced3097.js} +1 -1
  218. package/dist/esm/{access-key-08edd3a7.js.map → access-key-6ced3097.js.map} +1 -1
  219. package/dist/esm/{align-6c0a2935.js → align-89a65800.js} +1 -1
  220. package/dist/esm/{align-6c0a2935.js.map → align-89a65800.js.map} +1 -1
  221. package/dist/esm/align-floating-elements-42e5ff04.js +4 -0
  222. package/dist/esm/align-floating-elements-42e5ff04.js.map +1 -0
  223. package/dist/esm/{app-globals-0e5a9064.js → app-globals-da826fa9.js} +1 -1
  224. package/dist/esm/{app-globals-0e5a9064.js.map → app-globals-da826fa9.js.map} +1 -1
  225. package/dist/esm/{aria-expanded-172cb88c.js → aria-expanded-c2a03d43.js} +1 -1
  226. package/dist/esm/{aria-expanded-172cb88c.js.map → aria-expanded-c2a03d43.js.map} +1 -1
  227. package/dist/esm/{associated.controller-ebcb5051.js → associated.controller-a2335f21.js} +1 -1
  228. package/dist/esm/associated.controller-a2335f21.js.map +1 -0
  229. package/dist/esm/clsx-09a06a12.js +4 -0
  230. package/dist/esm/clsx-09a06a12.js.map +1 -0
  231. package/dist/esm/{color-0c20a722.js → color-52b1b536.js} +1 -1
  232. package/dist/esm/{color-0c20a722.js.map → color-52b1b536.js.map} +1 -1
  233. package/dist/esm/common-54bf85ba.js +4 -0
  234. package/dist/esm/common-54bf85ba.js.map +1 -0
  235. package/dist/esm/{controller-618eff75.js → controller-6d4582e2.js} +1 -1
  236. package/dist/esm/{controller-618eff75.js.map → controller-6d4582e2.js.map} +1 -1
  237. package/dist/esm/{controller-4d109eb9.js → controller-9685f029.js} +1 -1
  238. package/dist/esm/{controller-4d109eb9.js.map → controller-9685f029.js.map} +1 -1
  239. package/dist/esm/{controller-fd9ca791.js → controller-a3b04811.js} +1 -1
  240. package/dist/esm/{controller-fd9ca791.js.map → controller-a3b04811.js.map} +1 -1
  241. package/dist/esm/{controller-b8b885e1.js → controller-aa6c0837.js} +1 -1
  242. package/dist/esm/{controller-b8b885e1.js.map → controller-aa6c0837.js.map} +1 -1
  243. package/dist/esm/{controller-13997e91.js → controller-c311c73b.js} +1 -1
  244. package/dist/esm/{controller-13997e91.js.map → controller-c311c73b.js.map} +1 -1
  245. package/dist/esm/controller-icon-0c8dba65.js +4 -0
  246. package/dist/esm/{controller-icon-1fda7e70.js.map → controller-icon-0c8dba65.js.map} +1 -1
  247. package/dist/esm/custom-class-2d443ea5.js +4 -0
  248. package/dist/esm/{custom-class-8e412ac4.js.map → custom-class-2d443ea5.js.map} +1 -1
  249. package/dist/esm/{dev.utils-500c6d3b.js → dev.utils-6191a11c.js} +1 -1
  250. package/dist/esm/{dev.utils-500c6d3b.js.map → dev.utils-6191a11c.js.map} +1 -1
  251. package/dist/esm/dev.utils-fab45cbc.js +4 -0
  252. package/dist/esm/dev.utils-fab45cbc.js.map +1 -0
  253. package/dist/esm/{devtools-2fdf8bab.js → devtools-ddbbee70.js} +1 -1
  254. package/dist/esm/{devtools-2fdf8bab.js.map → devtools-ddbbee70.js.map} +1 -1
  255. package/dist/esm/disabled-d5b4a883.js +4 -0
  256. package/dist/esm/{disabled-ecc9abfc.js.map → disabled-d5b4a883.js.map} +1 -1
  257. package/dist/esm/events-9570402d.js +4 -0
  258. package/dist/esm/{events-2b67c17a.js.map → events-9570402d.js.map} +1 -1
  259. package/dist/esm/{form-field-msg-5a565fe7.js → form-field-msg-3f2124a8.js} +1 -1
  260. package/dist/esm/{form-field-msg-5a565fe7.js.map → form-field-msg-3f2124a8.js.map} +1 -1
  261. package/dist/esm/{has-closer-5575cc91.js → has-closer-67035624.js} +1 -1
  262. package/dist/esm/{has-closer-5575cc91.js.map → has-closer-67035624.js.map} +1 -1
  263. package/dist/esm/{hide-label-e6a77887.js → hide-label-6424f890.js} +1 -1
  264. package/dist/esm/{hide-label-e6a77887.js.map → hide-label-6424f890.js.map} +1 -1
  265. package/dist/esm/{href-74f1c87f.js → href-e8c05473.js} +1 -1
  266. package/dist/esm/{href-74f1c87f.js.map → href-e8c05473.js.map} +1 -1
  267. package/dist/esm/i18n-6d848180.js +4 -0
  268. package/dist/esm/{i18n-59fb5a46.js.map → i18n-6d848180.js.map} +1 -1
  269. package/dist/esm/icons-bd60f3a5.js +4 -0
  270. package/dist/esm/{icons-05788852.js.map → icons-bd60f3a5.js.map} +1 -1
  271. package/dist/esm/{image-source-d770a708.js → image-source-c68f09bf.js} +1 -1
  272. package/dist/esm/{image-source-d770a708.js.map → image-source-c68f09bf.js.map} +1 -1
  273. package/dist/esm/index-8a349081.js +4 -0
  274. package/dist/esm/index-8a349081.js.map +1 -0
  275. package/dist/esm/index.js +1 -1
  276. package/dist/esm/index.js.map +1 -1
  277. package/dist/esm/kol-abbr.entry.js +1 -1
  278. package/dist/esm/kol-accordion.entry.js +1 -1
  279. package/dist/esm/kol-alert-wc.entry.js +1 -1
  280. package/dist/esm/kol-alert.entry.js +1 -1
  281. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  282. package/dist/esm/kol-avatar.entry.js +1 -1
  283. package/dist/esm/kol-badge.entry.js +1 -1
  284. package/dist/esm/kol-badge.entry.js.map +1 -1
  285. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  286. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  287. package/dist/esm/kol-button-group.entry.js +1 -1
  288. package/dist/esm/kol-button-link.entry.js +1 -1
  289. package/dist/esm/kol-button-wc.entry.js +1 -1
  290. package/dist/esm/kol-button-wc.entry.js.map +1 -1
  291. package/dist/esm/kol-button.entry.js +1 -1
  292. package/dist/esm/kol-card.entry.js +1 -1
  293. package/dist/esm/kol-combobox.entry.js +1 -1
  294. package/dist/esm/kol-combobox.entry.js.map +1 -1
  295. package/dist/esm/kol-details.entry.js +1 -1
  296. package/dist/esm/kol-drawer.entry.js +1 -1
  297. package/dist/esm/kol-drawer.entry.js.map +1 -1
  298. package/dist/esm/kol-form.entry.js +1 -1
  299. package/dist/esm/kol-heading-wc.entry.js +1 -1
  300. package/dist/esm/kol-heading.entry.js +1 -1
  301. package/dist/esm/kol-icon.entry.js +1 -1
  302. package/dist/esm/kol-icon.entry.js.map +1 -1
  303. package/dist/esm/kol-image.entry.js +1 -1
  304. package/dist/esm/kol-indented-text-wc.entry.js +1 -1
  305. package/dist/esm/kol-indented-text.entry.js +1 -1
  306. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  307. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  308. package/dist/esm/kol-input-color.entry.js +1 -1
  309. package/dist/esm/kol-input-color.entry.js.map +1 -1
  310. package/dist/esm/kol-input-date.entry.js +1 -1
  311. package/dist/esm/kol-input-date.entry.js.map +1 -1
  312. package/dist/esm/kol-input-email.entry.js +1 -1
  313. package/dist/esm/kol-input-email.entry.js.map +1 -1
  314. package/dist/esm/kol-input-file.entry.js +1 -1
  315. package/dist/esm/kol-input-file.entry.js.map +1 -1
  316. package/dist/esm/kol-input-number.entry.js +1 -1
  317. package/dist/esm/kol-input-number.entry.js.map +1 -1
  318. package/dist/esm/kol-input-password.entry.js +1 -1
  319. package/dist/esm/kol-input-password.entry.js.map +1 -1
  320. package/dist/esm/kol-input-radio.entry.js +1 -1
  321. package/dist/esm/kol-input-range.entry.js +1 -1
  322. package/dist/esm/kol-input-range.entry.js.map +1 -1
  323. package/dist/esm/kol-input-text.entry.js +1 -1
  324. package/dist/esm/kol-input-text.entry.js.map +1 -1
  325. package/dist/esm/kol-input.entry.js +1 -1
  326. package/dist/esm/kol-input.entry.js.map +1 -1
  327. package/dist/esm/kol-kolibri.entry.js +1 -1
  328. package/dist/esm/kol-link-button.entry.js +1 -1
  329. package/dist/esm/kol-link-group.entry.js +1 -1
  330. package/dist/esm/kol-link-wc.entry.js +1 -1
  331. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  332. package/dist/esm/kol-link.entry.js +1 -1
  333. package/dist/esm/kol-logo.entry.js +1 -1
  334. package/dist/esm/kol-modal.entry.js +1 -1
  335. package/dist/esm/kol-nav.entry.js +1 -1
  336. package/dist/esm/kol-pagination.entry.js +1 -1
  337. package/dist/esm/kol-pagination.entry.js.map +1 -1
  338. package/dist/esm/kol-popover-wc.entry.js +1 -1
  339. package/dist/esm/kol-progress.entry.js +1 -1
  340. package/dist/esm/kol-quote.entry.js +1 -1
  341. package/dist/esm/kol-select.entry.js +1 -1
  342. package/dist/esm/kol-select.entry.js.map +1 -1
  343. package/dist/esm/kol-skip-nav.entry.js +1 -1
  344. package/dist/esm/kol-span-wc.entry.js +1 -1
  345. package/dist/esm/kol-span-wc.entry.js.map +1 -1
  346. package/dist/esm/kol-spin.entry.js +1 -1
  347. package/dist/esm/kol-split-button.entry.js +1 -1
  348. package/dist/esm/kol-symbol.entry.js +1 -1
  349. package/dist/esm/kol-table-stateful.entry.js +1 -1
  350. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  351. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  352. package/dist/esm/kol-table-stateless-wc.entry.js.map +1 -1
  353. package/dist/esm/kol-table-stateless.entry.js +1 -1
  354. package/dist/esm/kol-table.entry.js +1 -1
  355. package/dist/esm/kol-tabs.entry.js +1 -1
  356. package/dist/esm/kol-textarea.entry.js +1 -1
  357. package/dist/esm/kol-textarea.entry.js.map +1 -1
  358. package/dist/esm/kol-toast-container.entry.js +1 -1
  359. package/dist/esm/kol-toolbar.entry.js +1 -1
  360. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  361. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  362. package/dist/esm/kol-tree-item.entry.js +1 -1
  363. package/dist/esm/kol-tree-wc.entry.js +1 -1
  364. package/dist/esm/kol-tree.entry.js +1 -1
  365. package/dist/esm/kol-version.entry.js +1 -1
  366. package/dist/esm/kolibri.js +1 -1
  367. package/dist/esm/kolibri.js.map +1 -1
  368. package/dist/esm/{label-20475610.js → label-37acddfe.js} +1 -1
  369. package/dist/esm/{label-20475610.js.map → label-37acddfe.js.map} +1 -1
  370. package/dist/esm/loader.js +1 -1
  371. package/dist/esm/{open-5b527658.js → open-8e6f0bcd.js} +1 -1
  372. package/dist/esm/{open-5b527658.js.map → open-8e6f0bcd.js.map} +1 -1
  373. package/dist/esm/{prop.validators-db70e3c4.js → prop.validators-f89d26b4.js} +1 -1
  374. package/dist/esm/{prop.validators-db70e3c4.js.map → prop.validators-f89d26b4.js.map} +1 -1
  375. package/dist/esm/reuse-523ba2ac.js +4 -0
  376. package/dist/esm/reuse-523ba2ac.js.map +1 -0
  377. package/dist/esm/{rows-62e776e0.js → rows-9afeef27.js} +1 -1
  378. package/dist/esm/{rows-62e776e0.js.map → rows-9afeef27.js.map} +1 -1
  379. package/dist/esm/{show-bd1ff7bd.js → show-d234ff64.js} +1 -1
  380. package/dist/esm/{show-bd1ff7bd.js.map → show-d234ff64.js.map} +1 -1
  381. package/dist/esm/{suggestions-bca6edb5.js → suggestions-1d994338.js} +1 -1
  382. package/dist/esm/{suggestions-bca6edb5.js.map → suggestions-1d994338.js.map} +1 -1
  383. package/dist/esm/{tab-index-48c227c3.js → tab-index-a117f598.js} +1 -1
  384. package/dist/esm/{tab-index-48c227c3.js.map → tab-index-a117f598.js.map} +1 -1
  385. package/dist/esm/{tooltip-align-6e87b293.js → tooltip-align-b217e9d0.js} +1 -1
  386. package/dist/esm/{tooltip-align-6e87b293.js.map → tooltip-align-b217e9d0.js.map} +1 -1
  387. package/dist/esm/{unique-nav-labels-29aef441.js → unique-nav-labels-768d04e9.js} +1 -1
  388. package/dist/esm/{unique-nav-labels-29aef441.js.map → unique-nav-labels-768d04e9.js.map} +1 -1
  389. package/dist/esm/{validation-3c161fb5.js → validation-381a4169.js} +1 -1
  390. package/dist/esm/{validation-3c161fb5.js.map → validation-381a4169.js.map} +1 -1
  391. package/dist/esm/{validation-e2c07abd.js → validation-80318b2c.js} +1 -1
  392. package/dist/esm/{validation-e2c07abd.js.map → validation-80318b2c.js.map} +1 -1
  393. package/dist/kolibri/InternalUnderlinedAccessKey-7f6b445a.js +4 -0
  394. package/dist/kolibri/access-key-6ced3097.js +4 -0
  395. package/dist/kolibri/align-89a65800.js +4 -0
  396. package/dist/kolibri/align-floating-elements-42e5ff04.js +4 -0
  397. package/dist/kolibri/align-floating-elements-42e5ff04.js.map +1 -0
  398. package/dist/kolibri/{app-globals-0e5a9064.js → app-globals-da826fa9.js} +1 -1
  399. package/dist/kolibri/{aria-expanded-172cb88c.js → aria-expanded-c2a03d43.js} +1 -1
  400. package/dist/kolibri/{associated.controller-ebcb5051.js → associated.controller-a2335f21.js} +1 -1
  401. package/dist/kolibri/associated.controller-a2335f21.js.map +1 -0
  402. package/dist/kolibri/clsx-09a06a12.js +4 -0
  403. package/dist/kolibri/clsx-09a06a12.js.map +1 -0
  404. package/dist/kolibri/{color-0c20a722.js → color-52b1b536.js} +1 -1
  405. package/dist/kolibri/common-54bf85ba.js +4 -0
  406. package/dist/kolibri/common-54bf85ba.js.map +1 -0
  407. package/dist/kolibri/{controller-618eff75.js → controller-6d4582e2.js} +1 -1
  408. package/dist/kolibri/{controller-4d109eb9.js → controller-9685f029.js} +1 -1
  409. package/dist/kolibri/{controller-fd9ca791.js → controller-a3b04811.js} +1 -1
  410. package/dist/kolibri/{controller-b8b885e1.js → controller-aa6c0837.js} +1 -1
  411. package/dist/kolibri/{controller-13997e91.js → controller-c311c73b.js} +1 -1
  412. package/dist/kolibri/controller-icon-0c8dba65.js +4 -0
  413. package/dist/kolibri/{controller-icon-1fda7e70.js.map → controller-icon-0c8dba65.js.map} +1 -1
  414. package/dist/kolibri/custom-class-2d443ea5.js +4 -0
  415. package/dist/kolibri/{dev.utils-500c6d3b.js → dev.utils-6191a11c.js} +1 -1
  416. package/dist/kolibri/dev.utils-fab45cbc.js +4 -0
  417. package/dist/kolibri/dev.utils-fab45cbc.js.map +1 -0
  418. package/dist/kolibri/devtools-ddbbee70.js +4 -0
  419. package/dist/kolibri/{devtools-2fdf8bab.js.map → devtools-ddbbee70.js.map} +1 -1
  420. package/dist/kolibri/{disabled-ecc9abfc.js → disabled-d5b4a883.js} +1 -1
  421. package/dist/kolibri/events-9570402d.js +4 -0
  422. package/dist/kolibri/{events-2b67c17a.js.map → events-9570402d.js.map} +1 -1
  423. package/dist/kolibri/{form-field-msg-5a565fe7.js → form-field-msg-3f2124a8.js} +1 -1
  424. package/dist/kolibri/has-closer-67035624.js +4 -0
  425. package/dist/kolibri/hide-label-6424f890.js +4 -0
  426. package/dist/kolibri/href-e8c05473.js +4 -0
  427. package/dist/kolibri/i18n-6d848180.js +4 -0
  428. package/dist/kolibri/icons-bd60f3a5.js +4 -0
  429. package/dist/kolibri/{icons-05788852.js.map → icons-bd60f3a5.js.map} +1 -1
  430. package/dist/kolibri/image-source-c68f09bf.js +4 -0
  431. package/dist/kolibri/index-8a349081.js +5 -0
  432. package/dist/kolibri/index-8a349081.js.map +1 -0
  433. package/dist/kolibri/index.esm.js +1 -1
  434. package/dist/kolibri/index.esm.js.map +1 -1
  435. package/dist/kolibri/kol-abbr.entry.js +1 -1
  436. package/dist/kolibri/kol-accordion.entry.js +1 -1
  437. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  438. package/dist/kolibri/kol-alert.entry.js +1 -1
  439. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  440. package/dist/kolibri/kol-avatar.entry.js +1 -1
  441. package/dist/kolibri/kol-badge.entry.js +1 -1
  442. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  443. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  444. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  445. package/dist/kolibri/kol-button-group.entry.js +1 -1
  446. package/dist/kolibri/kol-button-link.entry.js +1 -1
  447. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  448. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  449. package/dist/kolibri/kol-button.entry.js +1 -1
  450. package/dist/kolibri/kol-card.entry.js +1 -1
  451. package/dist/kolibri/kol-combobox.entry.js +1 -1
  452. package/dist/kolibri/kol-combobox.entry.js.map +1 -1
  453. package/dist/kolibri/kol-details.entry.js +1 -1
  454. package/dist/kolibri/kol-drawer.entry.js +1 -1
  455. package/dist/kolibri/kol-drawer.entry.js.map +1 -1
  456. package/dist/kolibri/kol-form.entry.js +1 -1
  457. package/dist/kolibri/kol-heading-wc.entry.js +1 -1
  458. package/dist/kolibri/kol-heading.entry.js +1 -1
  459. package/dist/kolibri/kol-icon.entry.js +1 -1
  460. package/dist/kolibri/kol-icon.entry.js.map +1 -1
  461. package/dist/kolibri/kol-image.entry.js +1 -1
  462. package/dist/kolibri/kol-indented-text-wc.entry.js +1 -1
  463. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  464. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  465. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  466. package/dist/kolibri/kol-input-color.entry.js +1 -1
  467. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  468. package/dist/kolibri/kol-input-date.entry.js +1 -1
  469. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  470. package/dist/kolibri/kol-input-email.entry.js +1 -1
  471. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  472. package/dist/kolibri/kol-input-file.entry.js +1 -1
  473. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  474. package/dist/kolibri/kol-input-number.entry.js +1 -1
  475. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  476. package/dist/kolibri/kol-input-password.entry.js +1 -1
  477. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  478. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  479. package/dist/kolibri/kol-input-range.entry.js +1 -1
  480. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  481. package/dist/kolibri/kol-input-text.entry.js +1 -1
  482. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  483. package/dist/kolibri/kol-input.entry.js +1 -1
  484. package/dist/kolibri/kol-input.entry.js.map +1 -1
  485. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  486. package/dist/kolibri/kol-link-button.entry.js +1 -1
  487. package/dist/kolibri/kol-link-group.entry.js +1 -1
  488. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  489. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  490. package/dist/kolibri/kol-link.entry.js +1 -1
  491. package/dist/kolibri/kol-logo.entry.js +1 -1
  492. package/dist/kolibri/kol-modal.entry.js +1 -1
  493. package/dist/kolibri/kol-nav.entry.js +1 -1
  494. package/dist/kolibri/kol-pagination.entry.js +1 -1
  495. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  496. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  497. package/dist/kolibri/kol-progress.entry.js +1 -1
  498. package/dist/kolibri/kol-quote.entry.js +1 -1
  499. package/dist/kolibri/kol-select.entry.js +1 -1
  500. package/dist/kolibri/kol-select.entry.js.map +1 -1
  501. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  502. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  503. package/dist/kolibri/kol-span-wc.entry.js.map +1 -1
  504. package/dist/kolibri/kol-spin.entry.js +1 -1
  505. package/dist/kolibri/kol-split-button.entry.js +1 -1
  506. package/dist/kolibri/kol-symbol.entry.js +1 -1
  507. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  508. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  509. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  510. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  511. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  512. package/dist/kolibri/kol-table.entry.js +1 -1
  513. package/dist/kolibri/kol-tabs.entry.js +1 -1
  514. package/dist/kolibri/kol-textarea.entry.js +1 -1
  515. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  516. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  517. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  518. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  519. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  520. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  521. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  522. package/dist/kolibri/kol-tree.entry.js +1 -1
  523. package/dist/kolibri/kol-version.entry.js +1 -1
  524. package/dist/kolibri/kolibri.esm.js +1 -1
  525. package/dist/kolibri/kolibri.esm.js.map +1 -1
  526. package/dist/kolibri/label-37acddfe.js +4 -0
  527. package/dist/kolibri/open-8e6f0bcd.js +4 -0
  528. package/dist/kolibri/{prop.validators-db70e3c4.js → prop.validators-f89d26b4.js} +1 -1
  529. package/dist/kolibri/reuse-523ba2ac.js +4 -0
  530. package/dist/kolibri/reuse-523ba2ac.js.map +1 -0
  531. package/dist/kolibri/rows-9afeef27.js +4 -0
  532. package/dist/kolibri/show-d234ff64.js +4 -0
  533. package/dist/kolibri/{suggestions-bca6edb5.js → suggestions-1d994338.js} +1 -1
  534. package/dist/kolibri/{tab-index-48c227c3.js → tab-index-a117f598.js} +1 -1
  535. package/dist/kolibri/tooltip-align-b217e9d0.js +4 -0
  536. package/dist/kolibri/unique-nav-labels-768d04e9.js +4 -0
  537. package/dist/kolibri/{validation-3c161fb5.js → validation-381a4169.js} +1 -1
  538. package/dist/kolibri/validation-80318b2c.js +4 -0
  539. package/dist/loader/index.d.ts +3 -0
  540. package/dist/types/components/combobox/shadow.d.ts +8 -2
  541. package/dist/types/components.d.ts +1 -0
  542. package/dist/types/core/bootstrap.d.ts +2 -0
  543. package/dist/types/schema/components/input-password.d.ts +1 -1
  544. package/dist/types/schema/utils/dev.utils.d.ts +3 -3
  545. package/dist/types/schema/utils/reuse.d.ts +0 -1
  546. package/dist/types/stencil-public-runtime.d.ts +0 -2
  547. package/doc/combobox.md +10 -0
  548. package/package.json +1 -1
  549. package/dist/cjs/access-key-651fa517.js +0 -4
  550. package/dist/cjs/align-floating-elements-b889cd30.js +0 -4
  551. package/dist/cjs/align-floating-elements-b889cd30.js.map +0 -1
  552. package/dist/cjs/app-globals-01de1543.js +0 -4
  553. package/dist/cjs/associated.controller-1a15290a.js.map +0 -1
  554. package/dist/cjs/controller-icon-8ff705be.js +0 -4
  555. package/dist/cjs/custom-class-70eaa1d7.js +0 -4
  556. package/dist/cjs/dev.utils-3e595d38.js +0 -4
  557. package/dist/cjs/dev.utils-3e595d38.js.map +0 -1
  558. package/dist/cjs/disabled-c6505268.js +0 -4
  559. package/dist/cjs/events-14ad81c3.js +0 -4
  560. package/dist/cjs/has-closer-7819610c.js +0 -4
  561. package/dist/cjs/hide-label-c2417fe3.js +0 -4
  562. package/dist/cjs/href-54273ea2.js +0 -4
  563. package/dist/cjs/icons-30925600.js +0 -4
  564. package/dist/cjs/image-source-d836d9d6.js +0 -4
  565. package/dist/cjs/index-2151744b.js +0 -4
  566. package/dist/cjs/index-2151744b.js.map +0 -1
  567. package/dist/cjs/open-b72a9d97.js +0 -4
  568. package/dist/cjs/reuse-daa2baf3.js +0 -4
  569. package/dist/cjs/reuse-daa2baf3.js.map +0 -1
  570. package/dist/cjs/rows-961f5d2e.js +0 -4
  571. package/dist/cjs/show-72e27def.js +0 -4
  572. package/dist/cjs/tooltip-align-ddef1b9d.js +0 -4
  573. package/dist/esm/align-floating-elements-e596c0fa.js +0 -4
  574. package/dist/esm/align-floating-elements-e596c0fa.js.map +0 -1
  575. package/dist/esm/associated.controller-ebcb5051.js.map +0 -1
  576. package/dist/esm/controller-icon-1fda7e70.js +0 -4
  577. package/dist/esm/custom-class-8e412ac4.js +0 -4
  578. package/dist/esm/dev.utils-1ca991a2.js +0 -4
  579. package/dist/esm/dev.utils-1ca991a2.js.map +0 -1
  580. package/dist/esm/disabled-ecc9abfc.js +0 -4
  581. package/dist/esm/events-2b67c17a.js +0 -4
  582. package/dist/esm/i18n-59fb5a46.js +0 -4
  583. package/dist/esm/icons-05788852.js +0 -4
  584. package/dist/esm/index-022cbbb8.js +0 -4
  585. package/dist/esm/index-022cbbb8.js.map +0 -1
  586. package/dist/esm/reuse-108ee8f5.js +0 -4
  587. package/dist/esm/reuse-108ee8f5.js.map +0 -1
  588. package/dist/kolibri/InternalUnderlinedAccessKey-daf44245.js +0 -4
  589. package/dist/kolibri/access-key-08edd3a7.js +0 -4
  590. package/dist/kolibri/align-6c0a2935.js +0 -4
  591. package/dist/kolibri/align-floating-elements-e596c0fa.js +0 -4
  592. package/dist/kolibri/align-floating-elements-e596c0fa.js.map +0 -1
  593. package/dist/kolibri/associated.controller-ebcb5051.js.map +0 -1
  594. package/dist/kolibri/controller-icon-1fda7e70.js +0 -4
  595. package/dist/kolibri/custom-class-8e412ac4.js +0 -4
  596. package/dist/kolibri/dev.utils-1ca991a2.js +0 -4
  597. package/dist/kolibri/dev.utils-1ca991a2.js.map +0 -1
  598. package/dist/kolibri/devtools-2fdf8bab.js +0 -4
  599. package/dist/kolibri/events-2b67c17a.js +0 -4
  600. package/dist/kolibri/has-closer-5575cc91.js +0 -4
  601. package/dist/kolibri/hide-label-e6a77887.js +0 -4
  602. package/dist/kolibri/href-74f1c87f.js +0 -4
  603. package/dist/kolibri/i18n-59fb5a46.js +0 -4
  604. package/dist/kolibri/icons-05788852.js +0 -4
  605. package/dist/kolibri/image-source-d770a708.js +0 -4
  606. package/dist/kolibri/index-022cbbb8.js +0 -5
  607. package/dist/kolibri/index-022cbbb8.js.map +0 -1
  608. package/dist/kolibri/label-20475610.js +0 -4
  609. package/dist/kolibri/open-5b527658.js +0 -4
  610. package/dist/kolibri/reuse-108ee8f5.js +0 -4
  611. package/dist/kolibri/reuse-108ee8f5.js.map +0 -1
  612. package/dist/kolibri/rows-62e776e0.js +0 -4
  613. package/dist/kolibri/show-bd1ff7bd.js +0 -4
  614. package/dist/kolibri/tooltip-align-6e87b293.js +0 -4
  615. package/dist/kolibri/unique-nav-labels-29aef441.js +0 -4
  616. package/dist/kolibri/validation-e2c07abd.js +0 -4
  617. /package/dist/kolibri/{InternalUnderlinedAccessKey-daf44245.js.map → InternalUnderlinedAccessKey-7f6b445a.js.map} +0 -0
  618. /package/dist/kolibri/{access-key-08edd3a7.js.map → access-key-6ced3097.js.map} +0 -0
  619. /package/dist/kolibri/{align-6c0a2935.js.map → align-89a65800.js.map} +0 -0
  620. /package/dist/kolibri/{app-globals-0e5a9064.js.map → app-globals-da826fa9.js.map} +0 -0
  621. /package/dist/kolibri/{aria-expanded-172cb88c.js.map → aria-expanded-c2a03d43.js.map} +0 -0
  622. /package/dist/kolibri/{color-0c20a722.js.map → color-52b1b536.js.map} +0 -0
  623. /package/dist/kolibri/{controller-618eff75.js.map → controller-6d4582e2.js.map} +0 -0
  624. /package/dist/kolibri/{controller-4d109eb9.js.map → controller-9685f029.js.map} +0 -0
  625. /package/dist/kolibri/{controller-fd9ca791.js.map → controller-a3b04811.js.map} +0 -0
  626. /package/dist/kolibri/{controller-b8b885e1.js.map → controller-aa6c0837.js.map} +0 -0
  627. /package/dist/kolibri/{controller-13997e91.js.map → controller-c311c73b.js.map} +0 -0
  628. /package/dist/kolibri/{custom-class-8e412ac4.js.map → custom-class-2d443ea5.js.map} +0 -0
  629. /package/dist/kolibri/{dev.utils-500c6d3b.js.map → dev.utils-6191a11c.js.map} +0 -0
  630. /package/dist/kolibri/{disabled-ecc9abfc.js.map → disabled-d5b4a883.js.map} +0 -0
  631. /package/dist/kolibri/{form-field-msg-5a565fe7.js.map → form-field-msg-3f2124a8.js.map} +0 -0
  632. /package/dist/kolibri/{has-closer-5575cc91.js.map → has-closer-67035624.js.map} +0 -0
  633. /package/dist/kolibri/{hide-label-e6a77887.js.map → hide-label-6424f890.js.map} +0 -0
  634. /package/dist/kolibri/{href-74f1c87f.js.map → href-e8c05473.js.map} +0 -0
  635. /package/dist/kolibri/{i18n-59fb5a46.js.map → i18n-6d848180.js.map} +0 -0
  636. /package/dist/kolibri/{image-source-d770a708.js.map → image-source-c68f09bf.js.map} +0 -0
  637. /package/dist/kolibri/{label-20475610.js.map → label-37acddfe.js.map} +0 -0
  638. /package/dist/kolibri/{open-5b527658.js.map → open-8e6f0bcd.js.map} +0 -0
  639. /package/dist/kolibri/{prop.validators-db70e3c4.js.map → prop.validators-f89d26b4.js.map} +0 -0
  640. /package/dist/kolibri/{rows-62e776e0.js.map → rows-9afeef27.js.map} +0 -0
  641. /package/dist/kolibri/{show-bd1ff7bd.js.map → show-d234ff64.js.map} +0 -0
  642. /package/dist/kolibri/{suggestions-bca6edb5.js.map → suggestions-1d994338.js.map} +0 -0
  643. /package/dist/kolibri/{tab-index-48c227c3.js.map → tab-index-a117f598.js.map} +0 -0
  644. /package/dist/kolibri/{tooltip-align-6e87b293.js.map → tooltip-align-b217e9d0.js.map} +0 -0
  645. /package/dist/kolibri/{unique-nav-labels-29aef441.js.map → unique-nav-labels-768d04e9.js.map} +0 -0
  646. /package/dist/kolibri/{validation-3c161fb5.js.map → validation-381a4169.js.map} +0 -0
  647. /package/dist/kolibri/{validation-e2c07abd.js.map → validation-80318b2c.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"associated.controller.js","mappings":"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","names":[],"sources":["src/schema/props/name.ts","src/components/input-adapter-leanup/associated.controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchStringOptions } from '../utils';\nimport { watchString } from '../utils';\n\n/* types */\nexport type NamePropType = string;\n\n/**\n * Defines the technical name of an input field.\n */\nexport type PropName = {\n\tname: NamePropType;\n};\n\n/* validator */\nexport const validateName = (component: Generic.Element.Component, value?: NamePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_name', value, options);\n};\n","import type { NamePropType, PropSyncValueBySelector, StencilUnknown, SyncValueBySelectorPropType } from '../../schema';\nimport { devHint, devWarning, getExperimentalMode, validateName } from '../../schema';\n\nimport type { Generic } from 'adopted-style-sheets';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tname: string;\n} & PropSyncValueBySelector;\ntype Props = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype Watches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\ntype HTMLInputFileElement = HTMLInputElement & {\n\tfiles: FileList;\n};\n\nconst isAssociatedTagName = (name?: string): boolean =>\n\tname === 'KOL-BUTTON' ||\n\tname === 'KOL-COMBOBOX' ||\n\tname === 'KOL-INPUT-CHECKBOX' ||\n\tname === 'KOL-INPUT-COLOR' ||\n\tname === 'KOL-INPUT-DATE' ||\n\tname === 'KOL-INPUT-EMAIL' ||\n\tname === 'KOL-INPUT-FILE' ||\n\tname === 'KOL-INPUT-NUMBER' ||\n\tname === 'KOL-INPUT-PASSWORD' ||\n\tname === 'KOL-INPUT-RADIO' ||\n\tname === 'KOL-INPUT-RANGE' ||\n\tname === 'KOL-INPUT-TEXT' ||\n\tname === 'KOL-SELECT' ||\n\tname === 'KOL-TEXTAREA';\n\nexport class AssociatedInputController implements Watches {\n\tprivate readonly experimentalMode = getExperimentalMode();\n\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly type: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, type: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.host = this.findHostWithShadowRoot(host);\n\t\tthis.type = type;\n\n\t\tif (this.experimentalMode && isAssociatedTagName(this.host?.tagName)) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'button':\n\t\t\t\tcase 'color':\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'email':\n\t\t\t\tcase 'file':\n\t\t\t\tcase 'number':\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'range':\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', this.type);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'checkbox': // Checkbox use default case\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\t/**\n\t * The associated elements must not reside within the ShadowRoot and must\n\t * reside as children in the host to be recognized by native forms.\n\t */\n\tprivate findHostWithShadowRoot(host?: HTMLElement): HTMLElement | undefined {\n\t\twhile (host?.shadowRoot === null && host !== document.body) {\n\t\t\thost = host?.parentNode as HTMLElement;\n\t\t\tif ((host as unknown as ShadowRoot).host) {\n\t\t\t\thost = (host as unknown as ShadowRoot).host as HTMLElement;\n\t\t\t}\n\t\t}\n\t\treturn host;\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (this.experimentalMode) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(\n\t\trawValue: StencilUnknown,\n\t\tstrValue: string | null,\n\t\tassociatedElement?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement,\n\t) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'file':\n\t\t\t\t\t(associatedElement as HTMLInputFileElement).files = rawValue as FileList;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'radio':\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.setAttribute('checked', '');\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateName(value?: NamePropType): void {\n\t\tvalidateName(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`A name on input fields or switches is not strictly required, but it might be relevant for the autocomplete function and for the static submission of the input field.`,\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tif (this.experimentalMode && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t}\n}\n"],"version":3}
1
+ {"file":"associated.controller.js","mappings":"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","names":[],"sources":["src/schema/props/name.ts","src/components/input-adapter-leanup/associated.controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchStringOptions } from '../utils';\nimport { watchString } from '../utils';\n\n/* types */\nexport type NamePropType = string;\n\n/**\n * Defines the technical name of an input field.\n */\nexport type PropName = {\n\tname: NamePropType;\n};\n\n/* validator */\nexport const validateName = (component: Generic.Element.Component, value?: NamePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_name', value, options);\n};\n","import type { NamePropType, PropSyncValueBySelector, StencilUnknown, SyncValueBySelectorPropType } from '../../schema';\nimport { devHint, devWarning, getExperimentalMode, validateName } from '../../schema';\n\nimport type { Generic } from 'adopted-style-sheets';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tname: string;\n} & PropSyncValueBySelector;\ntype Props = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype Watches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\ntype HTMLInputFileElement = HTMLInputElement & {\n\tfiles: FileList;\n};\n\nconst isAssociatedTagName = (name?: string): boolean =>\n\tname === 'KOL-BUTTON' ||\n\tname === 'KOL-COMBOBOX' ||\n\tname === 'KOL-INPUT-CHECKBOX' ||\n\tname === 'KOL-INPUT-COLOR' ||\n\tname === 'KOL-INPUT-DATE' ||\n\tname === 'KOL-INPUT-EMAIL' ||\n\tname === 'KOL-INPUT-FILE' ||\n\tname === 'KOL-INPUT-NUMBER' ||\n\tname === 'KOL-INPUT-PASSWORD' ||\n\tname === 'KOL-INPUT-RADIO' ||\n\tname === 'KOL-INPUT-RANGE' ||\n\tname === 'KOL-INPUT-TEXT' ||\n\tname === 'KOL-SELECT' ||\n\tname === 'KOL-TEXTAREA';\n\nexport class AssociatedInputController implements Watches {\n\tprivate readonly experimentalMode = getExperimentalMode();\n\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly type: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, type: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.host = this.findHostWithShadowRoot(host);\n\t\tthis.type = type;\n\n\t\tif (this.experimentalMode && isAssociatedTagName(this.host?.tagName)) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'button':\n\t\t\t\tcase 'color':\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'email':\n\t\t\t\tcase 'file':\n\t\t\t\tcase 'number':\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'range':\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', this.type);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'checkbox': // Checkbox use default case\n\t\t\t\tcase 'combobox': // Combobox uses default case\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\t/**\n\t * The associated elements must not reside within the ShadowRoot and must\n\t * reside as children in the host to be recognized by native forms.\n\t */\n\tprivate findHostWithShadowRoot(host?: HTMLElement): HTMLElement | undefined {\n\t\twhile (host?.shadowRoot === null && host !== document.body) {\n\t\t\thost = host?.parentNode as HTMLElement;\n\t\t\tif ((host as unknown as ShadowRoot).host) {\n\t\t\t\thost = (host as unknown as ShadowRoot).host as HTMLElement;\n\t\t\t}\n\t\t}\n\t\treturn host;\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (this.experimentalMode) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(\n\t\trawValue: StencilUnknown,\n\t\tstrValue: string | null,\n\t\tassociatedElement?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement,\n\t) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'file':\n\t\t\t\t\t(associatedElement as HTMLInputFileElement).files = rawValue as FileList;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'radio':\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.setAttribute('checked', '');\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateName(value?: NamePropType): void {\n\t\tvalidateName(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`A name on input fields or switches is not strictly required, but it might be relevant for the autocomplete function and for the static submission of the input field.`,\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tif (this.experimentalMode && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t}\n}\n"],"version":3}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f)}else for(f in e)e[f]&&(n&&(n+=" "),n+=f);return n}function clsx(){for(var e,t,f=0,n="",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}export{clsx as c};
@@ -0,0 +1 @@
1
+ {"file":"clsx.js","mappings":";;;AAAA,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAQ,SAAS,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;;;;","names":[],"sources":["../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs"],"sourcesContent":["function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;"],"version":3}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ const isObject=t=>"object"==typeof t&&null!==t,isString=(t,e=0)=>"string"==typeof t&&t.length>=e,isStyle=t=>{if("object"!=typeof t||null===t)return isString(t,1);for(const e in t)if(!1===isString(e,1))return!1;return!0},STATE_CHANGE_EVENT=new Event("StateChange");export{STATE_CHANGE_EVENT as S,isStyle as a,isObject as b,isString as i};
@@ -0,0 +1 @@
1
+ {"file":"common.js","mappings":";;;MAAa,QAAQ,GAAG,CAAC,KAAc,KAAc,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,KAAK;MAEpF,QAAQ,GAAG,CAAC,KAAc,EAAE,SAAS,GAAG,CAAC,KAAc,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,UAAU;MAE9G,OAAO,GAAG,CAAC,KAA8B;IACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;QAChD,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE;YAC7B,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,EAAE;gBACpC,OAAO,KAAK,CAAC;aACb;SACD;KACD;SAAM;QACN,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;KAC1B;IACD,OAAO,IAAI,CAAC;AACb,EAAE;MAKW,kBAAkB,GAAG,IAAI,KAAK,CAAC,aAAa;;;;","names":[],"sources":["src/schema/validators/common.ts"],"sourcesContent":["export const isObject = (value: unknown): boolean => typeof value === 'object' && value !== null;\n\nexport const isString = (value: unknown, minLength = 0): boolean => typeof value === 'string' && value.length >= minLength;\n\nexport const isStyle = (style?: Record<string, string>): boolean => {\n\tif (typeof style === 'object' && style !== null) {\n\t\tfor (const property in style) {\n\t\t\tif (isString(property, 1) === false) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t} else {\n\t\treturn isString(style, 1);\n\t}\n\treturn true;\n};\n\n/**\n * Fix event instance for state changes.\n */\nexport const STATE_CHANGE_EVENT = new Event('StateChange');\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{i as isIcon}from"./icons.js";import{g as objectObjectHandler,p as parseJson,w as watchValidator}from"./prop.validators.js";import{i as isString}from"./reuse.js";const beforePatchIcons=(o,t)=>{const n=o;"object"==typeof n&&null!==n&&(isString(n.right,1)&&(n.right={icon:n.right}),isString(n.left,1)&&(n.left={icon:n.left}),t.set("_icons",n))};class InputIconController extends InputController{constructor(o,t,n){super(o,t,n),this.component=o}validateIcon(o){this.validateIcons(o)}validateIcons(o){objectObjectHandler(o,(()=>{try{o=parseJson(o)}catch(o){}watchValidator(this.component,"_icons",(o=>"object"==typeof o&&null!==o&&(isString(o.left,1)||isIcon(o.left)||isString(o.right,1)||isIcon(o.right))),new Set(["KoliBriHorizontalIcon"]),o,{hooks:{beforePatch:beforePatchIcons},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons||this.component._icon)}}export{InputIconController as I};
4
+ import{I as InputController}from"./controller2.js";import{i as isIcon}from"./icons.js";import{g as objectObjectHandler,p as parseJson,w as watchValidator}from"./prop.validators.js";import{i as isString}from"./common.js";const beforePatchIcons=(o,t)=>{const n=o;"object"==typeof n&&null!==n&&(isString(n.right,1)&&(n.right={icon:n.right}),isString(n.left,1)&&(n.left={icon:n.left}),t.set("_icons",n))};class InputIconController extends InputController{constructor(o,t,n){super(o,t,n),this.component=o}validateIcon(o){this.validateIcons(o)}validateIcons(o){objectObjectHandler(o,(()=>{try{o=parseJson(o)}catch(o){}watchValidator(this.component,"_icons",(o=>"object"==typeof o&&null!==o&&(isString(o.left,1)||isIcon(o.left)||isString(o.right,1)||isIcon(o.right))),new Set(["KoliBriHorizontalIcon"]),o,{hooks:{beforePatch:beforePatchIcons},required:!0})}))}componentWillLoad(){super.componentWillLoad(),this.validateIcons(this.component._icons||this.component._icon)}}export{InputIconController as I};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- const getWindow=()=>"undefined"==typeof window?null:window,getDocument=()=>void 0===getWindow().document?null:getWindow().document;let DEV_MODE=null,EXPERIMENTAL_MODE=null,COLOR_CONTRAST_ANALYSIS=null;const getDevMode=()=>!0===DEV_MODE,setDevMode=e=>{DEV_MODE=e},getExperimentalMode=()=>!0===EXPERIMENTAL_MODE,setExperimentalMode=e=>{EXPERIMENTAL_MODE=e},getColorContrastAnalysis=()=>!0===COLOR_CONTRAST_ANALYSIS,setColorContrastAnalysis=e=>{COLOR_CONTRAST_ANALYSIS=e},LOG_STYLE="color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000",mapToArray=e=>Array.isArray(e)?e:[e],getLogLabel=e=>`%c${e}`,handleClassifier=(e,o)=>"string"==typeof o&&o.length>0?`${getLogLabel(e)} | ${o}`:getLogLabel(e),getShield=(e,o)=>[handleClassifier(e,null==o?void 0:o.classifier),`${LOG_STYLE};${(null==o?void 0:o.overwriteStyle)||""}`],isDevModeOrForceLog=(e,o)=>e()||!0===o;class Logger{constructor(e,o){this.label=e,this.devMode=o}debug(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.debug(...getShield(this.label,o),...mapToArray(e))}info(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.info(...getShield(this.label,o),...mapToArray(e))}trace(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.trace(...getShield(this.label,o),...mapToArray(e))}warn(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.warn(...getShield(this.label,o),...mapToArray(e))}error(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.error(...getShield(this.label,o),...mapToArray(e))}throw(e,o){if(isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog))throw new Error(...getShield(this.label,o),...mapToArray(e))}}const Log=new Logger("KoliBri",getDevMode);export{Log as L,getExperimentalMode as a,setExperimentalMode as b,setColorContrastAnalysis as c,getWindow as d,getDevMode as e,getColorContrastAnalysis as f,getDocument as g,setDevMode as s};
4
+ const getWindow=()=>"undefined"==typeof window?null:window,getDocument=()=>void 0===getWindow().document?null:getWindow().document;let DEV_MODE=!1,EXPERIMENTAL_MODE=!1,COLOR_CONTRAST_ANALYSIS=!1;const getDevMode=()=>!0===DEV_MODE,setDevMode=e=>{DEV_MODE=!0===e},getExperimentalMode=()=>!0===EXPERIMENTAL_MODE,setExperimentalMode=e=>{EXPERIMENTAL_MODE=!0===e},getColorContrastAnalysis=()=>!0===COLOR_CONTRAST_ANALYSIS,setColorContrastAnalysis=e=>{COLOR_CONTRAST_ANALYSIS=!0===e},LOG_STYLE="color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000",mapToArray=e=>Array.isArray(e)?e:[e],getLogLabel=e=>`%c${e}`,handleClassifier=(e,o)=>"string"==typeof o&&o.length>0?`${getLogLabel(e)} | ${o}`:getLogLabel(e),getShield=(e,o)=>[handleClassifier(e,null==o?void 0:o.classifier),`${LOG_STYLE};${(null==o?void 0:o.overwriteStyle)||""}`],isDevModeOrForceLog=(e,o)=>e()||!0===o;class Logger{constructor(e,o){this.label=e,this.devMode=o}debug(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.debug(...getShield(this.label,o),...mapToArray(e))}info(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.info(...getShield(this.label,o),...mapToArray(e))}trace(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.trace(...getShield(this.label,o),...mapToArray(e))}warn(e,o){isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog)&&console.warn(...getShield(this.label,o),...mapToArray(e))}error(e,o){console.error(...getShield(this.label,o),...mapToArray(e))}throw(e,o){if(isDevModeOrForceLog(this.devMode,null==o?void 0:o.forceLog))throw new Error(...getShield(this.label,o),...mapToArray(e))}}const Log=new Logger("KoliBri",getDevMode);export{Log as L,getExperimentalMode as a,setExperimentalMode as b,setColorContrastAnalysis as c,getWindow as d,getDevMode as e,getColorContrastAnalysis as f,getDocument as g,setDevMode as s};
@@ -1 +1 @@
1
- {"file":"dev.utils.js","mappings":"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","names":[],"sources":["src/schema/utils/dev.utils.ts"],"sourcesContent":["/* eslint-disable no-console */\n\ntype GetModeFn = () => boolean;\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const setWindow = (value: Window): void => {\n\tWINDOW = value;\n};\n\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\nexport const setDocument = (value: Document): void => {\n\tDOCUMENT = value;\n};\n\nlet DEV_MODE: boolean | null = null;\nlet EXPERIMENTAL_MODE: boolean | null = null;\nlet COLOR_CONTRAST_ANALYSIS: boolean | null = null;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const setDevMode = (value: boolean): void => {\n\tDEV_MODE = value;\n};\n\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const setExperimentalMode = (value: boolean): void => {\n\tEXPERIMENTAL_MODE = value;\n};\n\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\nexport const setColorContrastAnalysis = (value: boolean): void => {\n\tCOLOR_CONTRAST_ANALYSIS = value;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nconst LOG_STYLE = 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000';\n\nconst mapToArray = (msg: unknown | unknown[]): unknown[] => {\n\treturn Array.isArray(msg) ? msg : [msg];\n};\n\nconst getLogLabel = (label: string): string => {\n\treturn `%c${label}`;\n};\n\nconst handleClassifier = (label: string, classifier?: string): string => {\n\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\treturn `${getLogLabel(label)} | ${classifier}`;\n\t} else {\n\t\treturn getLogLabel(label);\n\t}\n};\n\nconst getShield = (label: string, options?: LogShieldOptions): string[] => {\n\treturn [handleClassifier(label, options?.classifier), `${LOG_STYLE};${options?.overwriteStyle || ''}`];\n};\n\nconst isDevModeOrForceLog = (devMode: GetModeFn, forceLog?: boolean): boolean => devMode() || forceLog === true;\n\nexport class Logger {\n\tpublic constructor(\n\t\tprivate readonly label: string,\n\t\tprivate readonly devMode: GetModeFn,\n\t) {}\n\n\tpublic debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.debug(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.info(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.trace(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.warn(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.error(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tthrow new Error(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n}\n\nexport const Log = new Logger('KoliBri', getDevMode);\n"],"version":3}
1
+ {"file":"dev.utils.js","mappings":"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","names":[],"sources":["src/schema/utils/dev.utils.ts"],"sourcesContent":["/* eslint-disable no-console */\n\ntype GetModeFn = () => boolean;\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const setWindow = (value: Window): void => {\n\tWINDOW = value;\n};\n\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\nexport const setDocument = (value: Document): void => {\n\tDOCUMENT = value;\n};\n\nlet DEV_MODE: boolean = false;\nlet EXPERIMENTAL_MODE: boolean = false;\nlet COLOR_CONTRAST_ANALYSIS: boolean = false;\n\nexport const getDevMode = (): boolean => DEV_MODE === true;\nexport const setDevMode = (mode: boolean): void => {\n\tDEV_MODE = mode === true;\n};\n\nexport const getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const setExperimentalMode = (mode: boolean): void => {\n\tEXPERIMENTAL_MODE = mode === true;\n};\n\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\nexport const setColorContrastAnalysis = (mode: boolean): void => {\n\tCOLOR_CONTRAST_ANALYSIS = mode === true;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nconst LOG_STYLE = 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000';\n\nconst mapToArray = (msg: unknown | unknown[]): unknown[] => {\n\treturn Array.isArray(msg) ? msg : [msg];\n};\n\nconst getLogLabel = (label: string): string => {\n\treturn `%c${label}`;\n};\n\nconst handleClassifier = (label: string, classifier?: string): string => {\n\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\treturn `${getLogLabel(label)} | ${classifier}`;\n\t} else {\n\t\treturn getLogLabel(label);\n\t}\n};\n\nconst getShield = (label: string, options?: LogShieldOptions): string[] => {\n\treturn [handleClassifier(label, options?.classifier), `${LOG_STYLE};${options?.overwriteStyle || ''}`];\n};\n\nconst isDevModeOrForceLog = (devMode: GetModeFn, forceLog?: boolean): boolean => devMode() || forceLog === true;\n\nexport class Logger {\n\tpublic constructor(\n\t\tprivate readonly label: string,\n\t\tprivate readonly devMode: GetModeFn,\n\t) {}\n\n\tpublic debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.debug(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.info(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.trace(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tconsole.warn(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tconsole.error(...getShield(this.label, options), ...mapToArray(msg));\n\t}\n\n\tpublic throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (isDevModeOrForceLog(this.devMode, options?.forceLog)) {\n\t\t\tthrow new Error(...getShield(this.label, options), ...mapToArray(msg));\n\t\t}\n\t}\n}\n\nexport const Log = new Logger('KoliBri', getDevMode);\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{C as KoliBriUtils,D as koliBriA11yColorContrast,B as koliBriQuerySelector,E as koliBriQuerySelectorAll,F as koliBriQuerySelectorColors,p as parseJson,H 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 koliBriA11yColorContrast,B as koliBriQuerySelector,D as koliBriQuerySelectorAll,E as koliBriQuerySelectorColors,F as KoliBriUtils,p as parseJson,H 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,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{w as watchValidator,A as emptyStringByArrayHandler,g as objectObjectHandler,p as parseJson,b as setState}from"./prop.validators.js";import{b as isObject}from"./reuse.js";const validateTableCallbacks=(e,a)=>{watchValidator(e,"_on",(e=>"object"==typeof e&&null!==e),new Set(["TableCallbacksPropType {Events.onSort, Events.onSelectionChange}"]),a)},validateTableStatefulCallbacks=(e,a)=>{watchValidator(e,"_on",(e=>"object"==typeof e&&null!==e),new Set(["TableStatefulCallbacksPropType {Events.onSelectionChange}"]),a)},validateTableData=(e,a,t)=>{emptyStringByArrayHandler(a,(()=>{objectObjectHandler(a,(()=>{void 0===a&&(a=[]);try{a=parseJson(a)}catch(e){}Array.isArray(a)&&a.every((e=>"object"==typeof e&&null!==e))&&setState(e,"_data",a,t)}))}))},validateTableDataFoot=(e,a,t)=>{emptyStringByArrayHandler(a,(()=>{objectObjectHandler(a,(()=>{void 0===a&&(a=[]);try{a=parseJson(a)}catch(e){}Array.isArray(a)&&a.every((e=>"object"==typeof e&&null!==e))&&setState(e,"_dataFoot",a,t)}))}))},validateTableSelection=(e,a)=>{(e=>e&&isObject(e)&&"function"==typeof e.label&&(!e.selectedKeys||Array.isArray(e.selectedKeys)))("string"==typeof a?(()=>{try{return parseJson(a)}catch(e){return}})():a)&&setState(e,"_selection",a)};var Events;!function(e){e.onBlur="onBlur",e.onChange="onChange",e.onClick="onClick",e.onDblClick="onDblClick",e.onFocus="onFocus",e.onInput="onInput",e.onKeyDown="onKeyDown",e.onKeyPress="onKeyPress",e.onKeyUp="onKeyUp",e.onMouseDown="onMouseDown",e.onMouseMove="onMouseMove",e.onMouseOut="onMouseOut",e.onMouseOver="onMouseOver",e.onMouseUp="onMouseUp",e.onReset="onReset",e.onSelect="onSelect",e.onSort="onSort",e.onSelectionChange="onSelectionChange",e.onSubmit="onSubmit"}(Events||(Events={}));export{Events as E,validateTableDataFoot as a,validateTableSelection as b,validateTableStatefulCallbacks as c,validateTableCallbacks as d,validateTableData as v};
4
+ import{w as watchValidator,A as emptyStringByArrayHandler,g as objectObjectHandler,p as parseJson,b as setState}from"./prop.validators.js";import{b as isObject}from"./common.js";const validateTableCallbacks=(e,a)=>{watchValidator(e,"_on",(e=>"object"==typeof e&&null!==e),new Set(["TableCallbacksPropType {Events.onSort, Events.onSelectionChange}"]),a)},validateTableStatefulCallbacks=(e,a)=>{watchValidator(e,"_on",(e=>"object"==typeof e&&null!==e),new Set(["TableStatefulCallbacksPropType {Events.onSelectionChange}"]),a)},validateTableData=(e,a,t)=>{emptyStringByArrayHandler(a,(()=>{objectObjectHandler(a,(()=>{void 0===a&&(a=[]);try{a=parseJson(a)}catch(e){}Array.isArray(a)&&a.every((e=>"object"==typeof e&&null!==e))&&setState(e,"_data",a,t)}))}))},validateTableDataFoot=(e,a,t)=>{emptyStringByArrayHandler(a,(()=>{objectObjectHandler(a,(()=>{void 0===a&&(a=[]);try{a=parseJson(a)}catch(e){}Array.isArray(a)&&a.every((e=>"object"==typeof e&&null!==e))&&setState(e,"_dataFoot",a,t)}))}))},validateTableSelection=(e,a)=>{(e=>e&&isObject(e)&&"function"==typeof e.label&&(!e.selectedKeys||Array.isArray(e.selectedKeys)))("string"==typeof a?(()=>{try{return parseJson(a)}catch(e){return}})():a)&&setState(e,"_selection",a)};var Events;!function(e){e.onBlur="onBlur",e.onChange="onChange",e.onClick="onClick",e.onDblClick="onDblClick",e.onFocus="onFocus",e.onInput="onInput",e.onKeyDown="onKeyDown",e.onKeyPress="onKeyPress",e.onKeyUp="onKeyUp",e.onMouseDown="onMouseDown",e.onMouseMove="onMouseMove",e.onMouseOut="onMouseOut",e.onMouseOver="onMouseOver",e.onMouseUp="onMouseUp",e.onReset="onReset",e.onSelect="onSelect",e.onSort="onSort",e.onSelectionChange="onSelectionChange",e.onSubmit="onSubmit"}(Events||(Events={}));export{Events as E,validateTableDataFoot as a,validateTableSelection as b,validateTableStatefulCallbacks as c,validateTableCallbacks as d,validateTableData as v};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{g as objectObjectHandler,p as parseJson,w as watchValidator}from"./prop.validators.js";import{i as isString,a as isStyle,b as isObject}from"./reuse.js";const mapCustomIcon=(t,o,e)=>{isObject(e)?t[o]=e:isString(e,1)&&(t[o]={icon:e})},mapIconProp2State=t=>{let o={};return isString(t,1)?o={left:{icon:t}}:"object"==typeof t&&null!==t&&(mapCustomIcon(o,"top",t.top),mapCustomIcon(o,"right",t.right),mapCustomIcon(o,"bottom",t.bottom),mapCustomIcon(o,"left",t.left)),o},beforePatchIcon=t=>{var o,e,i;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icons")){const o=null===(e=t.nextState)||void 0===e?void 0:e.get("_icons");null===(i=t.nextState)||void 0===i||i.set("_icons",mapIconProp2State(o))}},isIcon=t=>"object"==typeof t&&null!==t&&(void 0===t.style||isStyle(t.style))&&(void 0===t.label||isString(t.label))&&isString(t.icon,1),validateIcons=(t,o,e={})=>{objectObjectHandler(o,(()=>{var i;try{o=parseJson(o)}catch(t){}watchValidator(t,"_icons",(t=>{const o="object"==typeof t&&null!==t&&0===Object.keys(t).length;return null===t||o||isString(t,1)||"object"==typeof t&&null!==t&&(isString(t.left,1)||isIcon(t.left)||isString(t.right,1)||isIcon(t.right)||isString(t.top,1)||isIcon(t.top)||isString(t.bottom,1)||isIcon(t.bottom))}),new Set(["KoliBriIcon"]),o,Object.assign(Object.assign({},e),{defaultValue:{},hooks:{afterPatch:null===(i=e.hooks)||void 0===i?void 0:i.afterPatch,beforePatch:(t,o,i,n)=>{var s,a;"function"==typeof(null===(s=e.hooks)||void 0===s?void 0:s.beforePatch)&&(null===(a=e.hooks)||void 0===a||a.beforePatch(t,o,i,n)),beforePatchIcon(i)}}}))}))};export{isIcon as i,validateIcons as v};
4
+ import{g as objectObjectHandler,p as parseJson,w as watchValidator}from"./prop.validators.js";import{i as isString,a as isStyle,b as isObject}from"./common.js";const mapCustomIcon=(t,o,i)=>{isObject(i)?t[o]=i:isString(i,1)&&(t[o]={icon:i})},mapIconProp2State=t=>{let o={};return isString(t,1)?o={left:{icon:t}}:"object"==typeof t&&null!==t&&(mapCustomIcon(o,"top",t.top),mapCustomIcon(o,"right",t.right),mapCustomIcon(o,"bottom",t.bottom),mapCustomIcon(o,"left",t.left)),o},beforePatchIcon=t=>{var o,i,e;if(null===(o=t.nextState)||void 0===o?void 0:o.has("_icons")){const o=null===(i=t.nextState)||void 0===i?void 0:i.get("_icons");null===(e=t.nextState)||void 0===e||e.set("_icons",mapIconProp2State(o))}},isIcon=t=>"object"==typeof t&&null!==t&&(void 0===t.style||isStyle(t.style))&&(void 0===t.label||isString(t.label))&&isString(t.icon,1),validateIcons=(t,o,i={})=>{objectObjectHandler(o,(()=>{var e;try{o=parseJson(o)}catch(t){}watchValidator(t,"_icons",(t=>{const o="object"==typeof t&&null!==t&&0===Object.keys(t).length;return null===t||o||isString(t,1)||"object"==typeof t&&null!==t&&(isString(t.left,1)||isIcon(t.left)||isString(t.right,1)||isIcon(t.right)||isString(t.top,1)||isIcon(t.top)||isString(t.bottom,1)||isIcon(t.bottom))}),new Set(["KoliBriIcon"]),o,Object.assign(Object.assign({},i),{defaultValue:{},hooks:{afterPatch:null===(e=i.hooks)||void 0===e?void 0:e.afterPatch,beforePatch:(t,o,e,n)=>{var s,a;"function"==typeof(null===(s=i.hooks)||void 0===s?void 0:s.beforePatch)&&(null===(a=i.hooks)||void 0===a||a.beforePatch(t,o,e,n)),beforePatchIcon(e)}}}))}))};export{isIcon as i,validateIcons as v};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{o as oe,s as se,j,G}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";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.drawer=13]="drawer",t[t.form=14]="form",t[t.heading=15]="heading",t[t.icon=16]="icon",t[t.image=17]="image",t[t["indented-text"]=18]="indented-text",t[t["input-checkbox"]=19]="input-checkbox",t[t["input-color"]=20]="input-color",t[t["input-date"]=21]="input-date",t[t["input-email"]=22]="input-email",t[t["input-file"]=23]="input-file",t[t["input-number"]=24]="input-number",t[t["input-password"]=25]="input-password",t[t["input-radio"]=26]="input-radio",t[t["input-range"]=27]="input-range",t[t["input-text"]=28]="input-text",t[t.kolibri=29]="kolibri",t[t.link=30]="link",t[t["link-button"]=31]="link-button",t[t["link-group"]=32]="link-group",t[t.logo=33]="logo",t[t.modal=34]="modal",t[t.nav=35]="nav",t[t.pagination=36]="pagination",t[t.progress=37]="progress",t[t.select=38]="select",t[t.separator=39]="separator",t[t["skip-nav"]=40]="skip-nav",t[t.spin=41]="spin",t[t["split-button"]=42]="split-button",t[t.symbol=43]="symbol",t[t.table=44]="table",t[t["table-stateless"]=45]="table-stateless",t[t["table-stateful"]=46]="table-stateful",t[t.tabs=47]="tabs",t[t.textarea=48]="textarea",t[t["toast-container"]=49]="toast-container",t[t.toolbar=50]="toolbar",t[t.tooltip=51]="tooltip",t[t.tree=52]="tree",t[t["tree-item"]=53]="tree-item"}(TagEnum||(TagEnum={}));const KoliBri=new oe("kol",KeyEnum,TagEnum);setMode((t=>{try{t.shadowRoot instanceof ShadowRoot&&se(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)}));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 G(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()):Log.warn("Toaster service is already disposed.",{forceLog:!0})}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(t=!1){this.toastContainerElement&&"function"==typeof this.toastContainerElement.closeAll&&this.toastContainerElement.closeAll(t)}}ToasterService.instances=new Map,globalScripts();export{KoliBri,ToasterService,bootstrap,register};
4
+ import{o as oe,s as se,j,G}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,s as setDevMode}from"./dev.utils.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.drawer=13]="drawer",t[t.form=14]="form",t[t.heading=15]="heading",t[t.icon=16]="icon",t[t.image=17]="image",t[t["indented-text"]=18]="indented-text",t[t["input-checkbox"]=19]="input-checkbox",t[t["input-color"]=20]="input-color",t[t["input-date"]=21]="input-date",t[t["input-email"]=22]="input-email",t[t["input-file"]=23]="input-file",t[t["input-number"]=24]="input-number",t[t["input-password"]=25]="input-password",t[t["input-radio"]=26]="input-radio",t[t["input-range"]=27]="input-range",t[t["input-text"]=28]="input-text",t[t.kolibri=29]="kolibri",t[t.link=30]="link",t[t["link-button"]=31]="link-button",t[t["link-group"]=32]="link-group",t[t.logo=33]="logo",t[t.modal=34]="modal",t[t.nav=35]="nav",t[t.pagination=36]="pagination",t[t.progress=37]="progress",t[t.select=38]="select",t[t.separator=39]="separator",t[t["skip-nav"]=40]="skip-nav",t[t.spin=41]="spin",t[t["split-button"]=42]="split-button",t[t.symbol=43]="symbol",t[t.table=44]="table",t[t["table-stateless"]=45]="table-stateless",t[t["table-stateful"]=46]="table-stateful",t[t.tabs=47]="tabs",t[t.textarea=48]="textarea",t[t["toast-container"]=49]="toast-container",t[t.toolbar=50]="toolbar",t[t.tooltip=51]="tooltip",t[t.tree=52]="tree",t[t["tree-item"]=53]="tree-item"}(TagEnum||(TagEnum={}));const KoliBri=new oe("kol",KeyEnum,TagEnum);setMode((t=>{try{t.shadowRoot instanceof ShadowRoot&&se(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)}));const globalFn=()=>{},appGlobalScript=globalFn,globalScripts=appGlobalScript;let initialized=!1;const bootstrap=async(t,e,o)=>{var n,i;setDevMode("development"===(null==o?void 0:o.environment)),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 G(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()):Log.warn("Toaster service is already disposed.",{forceLog:!0})}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(t=!1){this.toastContainerElement&&"function"==typeof this.toastContainerElement.closeAll&&this.toastContainerElement.closeAll(t)}}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'combobox',\n\t'details',\n\t'drawer',\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';\nexport * from './interfaces';\n","import { getThemeDetails, setThemeStyle } from 'adopted-style-sheets';\n\nimport { Log } 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","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 { Log } 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\tLog.warn('Toaster service is already disposed.', { forceLog: true });\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(immediate: boolean = false): void {\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.closeAll === 'function') {\n\t\t\tvoid this.toastContainerElement.closeAll(immediate);\n\t\t}\n\t}\n}\n"],"version":3}
1
+ {"file":"index.js","mappings":";;;;;;;;;;;;;AAAA,IAAY,OA0BX;AA1BD,WAAY,OAAO;IAClB,uCAAO,CAAA;IACP,2CAAS,CAAA;IACT,qCAAM,CAAA;IACN,2CAAS,CAAA;IACT,2CAAS,CAAA;IACT,uCAAO,CAAA;IACP,6DAAkB,CAAA;IAClB,iCAAI,CAAA;IACJ,iDAAY,CAAA;IACZ,mCAAK,CAAA;IACL,kDAAY,CAAA;IACZ,sDAAc,CAAA;IACd,0DAAgB,CAAA;IAChB,oDAAa,CAAA;IACb,kDAAY,CAAA;IACZ,gDAAW,CAAA;IACX,gDAAW,CAAA;IACX,gDAAW,CAAA;IACX,8DAAkB,CAAA;IAClB,sDAAc,CAAA;IACd,wDAAe,CAAA;IACf,wDAAe,CAAA;IACf,8DAAkB,CAAA;IAClB,8DAAkB,CAAA;IAClB,sDAAc,CAAA;AACf,CAAC,EA1BW,OAAO,KAAP,OAAO;;ACAnB,IAAY,OAuDX;AAvDD,WAAY,OAAO;IAClB,qCAAM,CAAA;IACN,+CAAW,CAAA;IACX,2DAAiB,CAAA;IACjB,uCAAO,CAAA;IACP,yCAAQ,CAAA;IACR,uCAAO,CAAA;IACP,iDAAY,CAAA;IACZ,yCAAQ,CAAA;IACR,qDAAc,CAAA;IACd,mDAAa,CAAA;IACb,sCAAM,CAAA;IACN,8CAAU,CAAA;IACV,4CAAS,CAAA;IACT,0CAAQ,CAAA;IACR,sCAAM,CAAA;IACN,4CAAS,CAAA;IACT,sCAAM,CAAA;IACN,wCAAO,CAAA;IACP,wDAAe,CAAA;IACf,0DAAgB,CAAA;IAChB,oDAAa,CAAA;IACb,kDAAY,CAAA;IACZ,oDAAa,CAAA;IACb,kDAAY,CAAA;IACZ,sDAAc,CAAA;IACd,0DAAgB,CAAA;IAChB,oDAAa,CAAA;IACb,oDAAa,CAAA;IACb,kDAAY,CAAA;IACZ,4CAAS,CAAA;IACT,sCAAM,CAAA;IACN,oDAAa,CAAA;IACb,kDAAY,CAAA;IACZ,sCAAM,CAAA;IACN,wCAAO,CAAA;IACP,oCAAK,CAAA;IACL,kDAAY,CAAA;IACZ,8CAAU,CAAA;IACV,0CAAQ,CAAA;IACR,gDAAW,CAAA;IACX,8CAAU,CAAA;IACV,sCAAM,CAAA;IACN,sDAAc,CAAA;IACd,0CAAQ,CAAA;IACR,wCAAO,CAAA;IACP,4DAAiB,CAAA;IACjB,0DAAgB,CAAA;IAChB,sCAAM,CAAA;IACN,8CAAU,CAAA;IACV,4DAAiB,CAAA;IACjB,4CAAS,CAAA;IACT,4CAAS,CAAA;IACT,sCAAM,CAAA;IACN,gDAAW,CAAA;AACZ,CAAC,EAvDW,OAAO,KAAP,OAAO;;MCKN,OAAO,GAAG,IAAIA,EAAK,CAAoD,KAAK,EAAE,OAAO,EAAE,OAAO;;ACA3G,OAAO,CAAC,CAAC,GAAG;IACX,IAAI;QACH,IAAI,GAAG,CAAC,UAAU,YAAY,UAAU,EAAE;YACzCC,EAAa,CAAC,GAAG,EAAEC,CAAe,CAAC,GAAG,CAAC,CAAC,CAAC;SACzC;KACD;IAAC,OAAO,KAAK,EAAE;KAMf;IACD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,eAAY,CAAC;KAClB,IAAI,CAAC,CAAC,QAAQ;IACd,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;QACnG,QAAQ,CAAC,UAAU,EAAE,CAAC;KACtB;AACF,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAK;IACZ,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;;;;AC3BG,MAAM,aAAa,GAAG,eAAe;;ACkB5C,IAAI,WAAW,GAAG,KAAK,CAAC;MAEX,SAAS,GAAG,OACxB,MAG6D,EAC7D,OAAgE,EAChE,OAAwB;;IAExB,UAAU,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,MAAK,aAAa,CAAC,CAAC;IAEnD,cAAc,CAAC,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,0CAAE,IAAI,mCAAI,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,CAAC;IAC1E,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,EAAE;QAC9B,iBAAiB,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,CAAC,CAAC;KAC7C;IACD,MAAM,uBAAuB,GAAG,MAAMC,CAAY,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7E,WAAW,GAAG,IAAI,CAAC;IAEnB,OAAO,uBAAuB,CAAC;AAChC,EAAE;MAEW,QAAQ,GAAG,UAAU;AAC3B,MAAM,aAAa,GAAG,MAAM,WAAW;;MCrCjC,cAAc;IAK1B,YACkB,QAAkB,EAClB,OAAwB;QADxB,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAiB;QAEzC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC/E,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;KACvD;IAKM,OAAO,WAAW,CAAC,QAAkB,EAAE,OAAwB;QACrE,IAAI,CAAC,aAAa,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;SAC1E;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,EAAE;YACd,QAAQ,GAAG,IAAI,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SACvC;QACD,OAAO,QAAQ,CAAC;KAChB;IAEM,OAAO;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC;QAC3C,IAAI,OAAO,EAAE;YACZ,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;YACvC,OAAO,CAAC,MAAM,EAAE,CAAC;SACjB;aAAM;YACN,GAAG,CAAC,IAAI,CAAC,sCAAsC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;SACrE;KACD;IAEM,OAAO,CAAC,KAAY;;QAK1B,IAAI,IAAI,CAAC,qBAAqB,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,KAAK,UAAU,EAAE;YAC3F,IAAI,CAAC,KAAK,CAAC,YAAY,KAAI,MAAA,IAAI,CAAC,OAAO,0CAAE,mBAAmB,CAAA,EAAE;gBAC7D,KAAK,CAAC,YAAY,GAAG,MAAA,IAAI,CAAC,OAAO,0CAAE,mBAAmB,CAAC;aACvD;YAED,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACjD;KACD;IAEM,QAAQ,CAAC,YAAqB,KAAK;QACzC,IAAI,IAAI,CAAC,qBAAqB,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,KAAK,UAAU,EAAE;YAC5F,KAAK,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;SACpD;KACD;;AAxDuB,wBAAS,GAAkC,IAAI,GAAG,EAA4B;;;;;;","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'drawer',\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';\nexport * from './interfaces';\n","import { getThemeDetails, setThemeStyle } from 'adopted-style-sheets';\n\nimport { Log } 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","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 { setDevMode } from '../schema';\nimport { setCustomTagNames } from './component-names';\nimport { initializeI18n } from './i18n';\n\ntype Environment = 'development' | 'production';\n\ntype KoliBriOptions = RegisterOptions & {\n\t/**\n\t * The environment in which the application is running.\n\t */\n\tenvironment?: Environment;\n\t/**\n\t * This option allows you to transform the component tag names.\n\t */\n\ttransformTagName?: (tagName: string) => string;\n};\n\nlet initialized = false;\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\tsetDevMode(options?.environment === 'development');\n\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 { Log } 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\tLog.warn('Toaster service is already disposed.', { forceLog: true });\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(immediate: boolean = false): void {\n\t\tif (this.toastContainerElement && typeof this.toastContainerElement.closeAll === 'function') {\n\t\t\tvoid this.toastContainerElement.closeAll(immediate);\n\t\t}\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{c as KolButtonWcTag,g as KolSpanWcTag}from"./component-names.js";import{n as nonce}from"./dev.utils2.js";import{h as handleColorChange,v as validateColor}from"./color.js";import{f as featureHint,g as objectObjectHandler,p as parseJson,b as setState}from"./prop.validators.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n /* :host implicitly inherits font-size, e.g. for usage in headlines */\n :host > span {\n display: inline-flex;\n place-items: center;\n /* Visible with forced colors */\n outline: transparent solid 1px;\n }\n :host > span > .kol-button-wc button {\n color: inherit;\n }\n}",KolBadgeDefaultStyle0=defaultStyleCss;featureHint("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const KolBadge$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.bgColorStr="#000",this.colorStr="#fff",this.id=nonce(),this.handleColorChange=n=>{const t=handleColorChange(n);this.bgColorStr=t.backgroundColor,this.colorStr=t.foregroundColor},this._color="#000",this._icons=void 0,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"}}}renderSmartButton(n){return h(KolButtonWcTag,{_ariaControls:this.id,_customClass:n._customClass,_disabled:n._disabled,_hideLabel:!0,_icons:n._icons,_id:n._id,_label:n._label,_on:n._on,_tooltipAlign:n._tooltipAlign,_variant:n._variant})}render(){const n="object"==typeof this.state._smartButton&&null!==this.state._smartButton;return h(Host,{key:"0b334746c26463bbc697f08077e165e56b34a97f",class:"kol-badge"},h("span",{key:"83210f467b224cb691d844a0311f4a31a1ad6e79",class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},h(KolSpanWcTag,{key:"d5a3248d67baa494d9671e0da7de918511af084b",id:n?this.id:void 0,_allowMarkdown:!0,_icons:this._icons,_label:this._label}),n&&this.renderSmartButton(this.state._smartButton)))}validateColor(n){validateColor(this,n,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(n){objectObjectHandler(n,(()=>{try{n=parseJson(n)}catch(n){}setState(this,"_smartButton",n)}))}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}static get style(){return{default:KolBadgeDefaultStyle0}}},[33,"kol-badge",{_color:[1],_icons:[1],_label:[1],_smartButton:[1,"_smart-button"],state:[32]},void 0,{_color:["validateColor"],_smartButton:["validateSmartButton"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-badge"].forEach((n=>{if("kol-badge"===n)customElements.get(n)||customElements.define(n,KolBadge$1)}))}const KolBadge=KolBadge$1,defineCustomElement=defineCustomElement$1;export{KolBadge,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{c as KolButtonWcTag,g as KolSpanWcTag}from"./component-names.js";import{n as nonce}from"./dev.utils2.js";import{h as handleColorChange,v as validateColor}from"./color.js";import{f as featureHint,g as objectObjectHandler,p as parseJson,b as setState}from"./prop.validators.js";const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n /* :host implicitly inherits font-size, e.g. for usage in headlines */\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n :host > span {\n display: inline-flex;\n place-items: center;\n /* Visible with forced colors */\n outline: transparent solid 1px;\n }\n :host > span > .kol-button-wc button {\n color: inherit;\n }\n}",KolBadgeDefaultStyle0=defaultStyleCss;featureHint("[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).");const KolBadge$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.bgColorStr="#000",this.colorStr="#fff",this.id=nonce(),this.handleColorChange=n=>{const t=handleColorChange(n);this.bgColorStr=t.backgroundColor,this.colorStr=t.foregroundColor},this._color="#000",this._icons=void 0,this._label=void 0,this._smartButton=void 0,this.state={_color:{backgroundColor:"#000",foregroundColor:"#fff"}}}renderSmartButton(n){return h(KolButtonWcTag,{_ariaControls:this.id,_customClass:n._customClass,_disabled:n._disabled,_hideLabel:!0,_icons:n._icons,_id:n._id,_label:n._label,_on:n._on,_tooltipAlign:n._tooltipAlign,_variant:n._variant})}render(){const n="object"==typeof this.state._smartButton&&null!==this.state._smartButton;return h(Host,{key:"0b334746c26463bbc697f08077e165e56b34a97f",class:"kol-badge"},h("span",{key:"83210f467b224cb691d844a0311f4a31a1ad6e79",class:{"smart-button":"object"==typeof this.state._smartButton&&null!==this.state._smartButton},style:{backgroundColor:this.bgColorStr,color:this.colorStr}},h(KolSpanWcTag,{key:"d5a3248d67baa494d9671e0da7de918511af084b",id:n?this.id:void 0,_allowMarkdown:!0,_icons:this._icons,_label:this._label}),n&&this.renderSmartButton(this.state._smartButton)))}validateColor(n){validateColor(this,n,{defaultValue:"#000",hooks:{beforePatch:this.handleColorChange}})}validateSmartButton(n){objectObjectHandler(n,(()=>{try{n=parseJson(n)}catch(n){}setState(this,"_smartButton",n)}))}componentWillLoad(){this.validateColor(this._color),this.validateSmartButton(this._smartButton)}static get watchers(){return{_color:["validateColor"],_smartButton:["validateSmartButton"]}}static get style(){return{default:KolBadgeDefaultStyle0}}},[33,"kol-badge",{_color:[1],_icons:[1],_label:[1],_smartButton:[1,"_smart-button"],state:[32]},void 0,{_color:["validateColor"],_smartButton:["validateSmartButton"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-badge"].forEach((n=>{if("kol-badge"===n)customElements.get(n)||customElements.define(n,KolBadge$1)}))}const KolBadge=KolBadge$1,defineCustomElement=defineCustomElement$1;export{KolBadge,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-badge.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,gyIAAgyI,CAAC;AACzzI,8BAAe,eAAe;;ACQ9B,WAAW,CAAC,qEAAqE,CAAC,CAAC;MAStEA,UAAQ;;;;;QACZ,eAAU,GAAG,MAAM,CAAC;QACpB,aAAQ,GAAG,MAAM,CAAC;QACT,OAAE,GAAG,KAAK,EAAE,CAAC;QAkEtB,sBAAiB,GAAG,CAAC,KAAc;YAC1C,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,eAAe,CAAC;YAC5C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,eAAyB,CAAC;SACpD,CAAC;sBA5B+C,MAAM;;;;qBAiBlB;YACpC,MAAM,EAAE;gBACP,eAAe,EAAE,MAAM;gBACvB,eAAe,EAAE,MAAM;aACvB;SACD;;IA9DO,iBAAiB,CAAC,KAAkB;QAC3C,QACC,EAAC,cAAc,IACd,aAAa,EAAE,IAAI,CAAC,EAAE,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,UAAU,EAAE,IAAI,EAChB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GACP,EACjB;KACF;IAEM,MAAM;QACZ,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;QACvG,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,WAAW,IACtB,6DACC,KAAK,EAAE;gBACN,cAAc,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI;aAC/F,EACD,KAAK,EAAE;gBACN,eAAe,EAAE,IAAI,CAAC,UAAU;gBAChC,KAAK,EAAE,IAAI,CAAC,QAAQ;aACpB,IAED,EAAC,YAAY,qDAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,cAAc,QAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAiB,EAC/H,cAAc,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,YAA2B,CAAC,CAC3E,CACD,EACN;KACF;IAoCM,aAAa,CAAC,KAA8B;QAClD,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,YAAY,EAAE,MAAM;YACpB,KAAK,EAAE;gBACN,WAAW,EAAE,IAAI,CAAC,iBAAiB;aACnC;SACD,CAAC,CAAC;KACH;IAGM,mBAAmB,CAAC,KAA4B;QACtD,mBAAmB,CAAC,KAAK,EAAE;YAC1B,IAAI;gBACH,KAAK,GAAG,SAAS,CAAc,KAAe,CAAC,CAAC;aAEhD;YAAC,OAAO,CAAC,EAAE;aAEX;YACD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;SACtC,CAAC,CAAC;KACH;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolBadge"],"sources":["src/components/badge/style.scss?tag=kol-badge&mode=default&encapsulation=shadow","src/components/badge/shadow.tsx"],"sourcesContent":["@import '../@shared/mixins';\n@import '../style';\n\n@layer kol-component {\n\t/* :host implicitly inherits font-size, e.g. for usage in headlines */\n\n\t:host > span {\n\t\tdisplay: inline-flex;\n\t\tplace-items: center;\n\t\t/* Visible with forced colors */\n\t\toutline: transparent solid 1px;\n\t}\n\n\t:host > span > .kol-button-wc button {\n\t\tcolor: inherit;\n\t}\n}\n","import type { BadgeAPI, BadgeStates, ButtonProps, KoliBriIconsProp, LabelPropType, PropColor, Stringified } from '../../schema';\nimport { featureHint, handleColorChange, objectObjectHandler, parseJson, setState, validateColor } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { KolSpanWcTag } from '../../core/component-names';\n\nimport { nonce } from '../../utils/dev.utils';\n\nimport type { JSX } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements BadgeAPI {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\tprivate readonly id = nonce();\n\n\tprivate renderSmartButton(props: ButtonProps): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\t_ariaControls={this.id}\n\t\t\t\t_customClass={props._customClass}\n\t\t\t\t_disabled={props._disabled}\n\t\t\t\t_hideLabel={true}\n\t\t\t\t_icons={props._icons}\n\t\t\t\t_id={props._id}\n\t\t\t\t_label={props._label}\n\t\t\t\t_on={props._on}\n\t\t\t\t_tooltipAlign={props._tooltipAlign}\n\t\t\t\t_variant={props._variant}\n\t\t\t></KolButtonWcTag>\n\t\t);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst hasSmartButton = typeof this.state._smartButton === 'object' && this.state._smartButton !== null;\n\t\treturn (\n\t\t\t<Host class=\"kol-badge\">\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolSpanWcTag id={hasSmartButton ? this.id : undefined} _allowMarkdown _icons={this._icons} _label={this._label}></KolSpanWcTag>\n\t\t\t\t\t{hasSmartButton && this.renderSmartButton(this.state._smartButton as ButtonProps)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the backgroundColor and foregroundColor.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: Stringified<KoliBriIconsProp>;\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 * Allows to add a button with an arbitrary action within the element (_hide-label only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t@State() public state: BadgeStates = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_smartButton')\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, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-badge.js","mappings":";;;;;;;;;AAAA,MAAM,eAAe,GAAG,i3IAAi3I,CAAC;AAC14I,8BAAe,eAAe;;ACQ9B,WAAW,CAAC,qEAAqE,CAAC,CAAC;MAStEA,UAAQ;;;;;QACZ,eAAU,GAAG,MAAM,CAAC;QACpB,aAAQ,GAAG,MAAM,CAAC;QACT,OAAE,GAAG,KAAK,EAAE,CAAC;QAkEtB,sBAAiB,GAAG,CAAC,KAAc;YAC1C,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,eAAe,CAAC;YAC5C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,eAAyB,CAAC;SACpD,CAAC;sBA5B+C,MAAM;;;;qBAiBlB;YACpC,MAAM,EAAE;gBACP,eAAe,EAAE,MAAM;gBACvB,eAAe,EAAE,MAAM;aACvB;SACD;;IA9DO,iBAAiB,CAAC,KAAkB;QAC3C,QACC,EAAC,cAAc,IACd,aAAa,EAAE,IAAI,CAAC,EAAE,EACtB,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,UAAU,EAAE,IAAI,EAChB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,GAAG,EAAE,KAAK,CAAC,GAAG,EACd,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GACP,EACjB;KACF;IAEM,MAAM;QACZ,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;QACvG,QACC,EAAC,IAAI,qDAAC,KAAK,EAAC,WAAW,IACtB,6DACC,KAAK,EAAE;gBACN,cAAc,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,IAAI;aAC/F,EACD,KAAK,EAAE;gBACN,eAAe,EAAE,IAAI,CAAC,UAAU;gBAChC,KAAK,EAAE,IAAI,CAAC,QAAQ;aACpB,IAED,EAAC,YAAY,qDAAC,EAAE,EAAE,cAAc,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS,EAAE,cAAc,QAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAiB,EAC/H,cAAc,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,YAA2B,CAAC,CAC3E,CACD,EACN;KACF;IAoCM,aAAa,CAAC,KAA8B;QAClD,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;YAC1B,YAAY,EAAE,MAAM;YACpB,KAAK,EAAE;gBACN,WAAW,EAAE,IAAI,CAAC,iBAAiB;aACnC;SACD,CAAC,CAAC;KACH;IAGM,mBAAmB,CAAC,KAA4B;QACtD,mBAAmB,CAAC,KAAK,EAAE;YAC1B,IAAI;gBACH,KAAK,GAAG,SAAS,CAAc,KAAe,CAAC,CAAC;aAEhD;YAAC,OAAO,CAAC,EAAE;aAEX;YACD,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;SACtC,CAAC,CAAC;KACH;IAEM,iBAAiB;QACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KAC5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["KolBadge"],"sources":["src/components/badge/style.scss?tag=kol-badge&mode=default&encapsulation=shadow","src/components/badge/shadow.tsx"],"sourcesContent":["@import '../@shared/mixins';\n@import '../style';\n\n@layer kol-component {\n\t/* :host implicitly inherits font-size, e.g. for usage in headlines */\n\t:host {\n\t\tfont-size: rem(16);\n\t}\n\n\t:host > span {\n\t\tdisplay: inline-flex;\n\t\tplace-items: center;\n\t\t/* Visible with forced colors */\n\t\toutline: transparent solid 1px;\n\t}\n\n\t:host > span > .kol-button-wc button {\n\t\tcolor: inherit;\n\t}\n}\n","import type { BadgeAPI, BadgeStates, ButtonProps, KoliBriIconsProp, LabelPropType, PropColor, Stringified } from '../../schema';\nimport { featureHint, handleColorChange, objectObjectHandler, parseJson, setState, validateColor } from '../../schema';\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { KolSpanWcTag } from '../../core/component-names';\n\nimport { nonce } from '../../utils/dev.utils';\n\nimport type { JSX } from '@stencil/core';\nimport { KolButtonWcTag } from '../../core/component-names';\nfeatureHint(`[KolBadge] Optimierung des _color-Properties (rgba, rgb, hex usw.).`);\n\n@Component({\n\ttag: 'kol-badge',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolBadge implements BadgeAPI {\n\tprivate bgColorStr = '#000';\n\tprivate colorStr = '#fff';\n\tprivate readonly id = nonce();\n\n\tprivate renderSmartButton(props: ButtonProps): JSX.Element {\n\t\treturn (\n\t\t\t<KolButtonWcTag\n\t\t\t\t_ariaControls={this.id}\n\t\t\t\t_customClass={props._customClass}\n\t\t\t\t_disabled={props._disabled}\n\t\t\t\t_hideLabel={true}\n\t\t\t\t_icons={props._icons}\n\t\t\t\t_id={props._id}\n\t\t\t\t_label={props._label}\n\t\t\t\t_on={props._on}\n\t\t\t\t_tooltipAlign={props._tooltipAlign}\n\t\t\t\t_variant={props._variant}\n\t\t\t></KolButtonWcTag>\n\t\t);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst hasSmartButton = typeof this.state._smartButton === 'object' && this.state._smartButton !== null;\n\t\treturn (\n\t\t\t<Host class=\"kol-badge\">\n\t\t\t\t<span\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t'smart-button': typeof this.state._smartButton === 'object' && this.state._smartButton !== null,\n\t\t\t\t\t}}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: this.bgColorStr,\n\t\t\t\t\t\tcolor: this.colorStr,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<KolSpanWcTag id={hasSmartButton ? this.id : undefined} _allowMarkdown _icons={this._icons} _label={this._label}></KolSpanWcTag>\n\t\t\t\t\t{hasSmartButton && this.renderSmartButton(this.state._smartButton as ButtonProps)}\n\t\t\t\t</span>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t/**\n\t * Defines the backgroundColor and foregroundColor.\n\t */\n\t@Prop() public _color?: Stringified<PropColor> = '#000';\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: Stringified<KoliBriIconsProp>;\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 * Allows to add a button with an arbitrary action within the element (_hide-label only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t@State() public state: BadgeStates = {\n\t\t_color: {\n\t\t\tbackgroundColor: '#000',\n\t\t\tforegroundColor: '#fff',\n\t\t},\n\t};\n\n\tprivate handleColorChange = (value: unknown) => {\n\t\tconst colorPair = handleColorChange(value);\n\t\tthis.bgColorStr = colorPair.backgroundColor;\n\t\tthis.colorStr = colorPair.foregroundColor as string;\n\t};\n\n\t@Watch('_color')\n\tpublic validateColor(value?: Stringified<PropColor>): void {\n\t\tvalidateColor(this, value, {\n\t\t\tdefaultValue: '#000',\n\t\t\thooks: {\n\t\t\t\tbeforePatch: this.handleColorChange,\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_smartButton')\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, '_smartButton', value);\n\t\t});\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateColor(this._color);\n\t\tthis.validateSmartButton(this._smartButton);\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host,Fragment}from"@stencil/core/internal/client";import{n as nonce}from"./dev.utils2.js";import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events.js";import{I as InputIconController}from"./controller-icon.js";import{v as validateSuggestions}from"./suggestions.js";import{c as watchBoolean,e as watchString}from"./prop.validators.js";import{v as validateMsg,g as getRenderStates}from"./controller2.js";import{k as KolInputWcTag,e as KolIconTag}from"./component-names.js";import{I as InternalUnderlinedAccessKey}from"./InternalUnderlinedAccessKey.js";import{t as translate}from"./i18n2.js";import{s as showExpertSlot,c as propagateFocus}from"./reuse.js";class ComboboxController extends InputIconController{constructor(e,t,n){super(e,t,n),this.component=e}validateSuggestions(e){validateSuggestions(this.component,e)}validateRequired(e){watchBoolean(this.component,"_required",e)}validateValue(e){watchString(this.component,"_value",e)}validateMsg(e){validateMsg(this.component,e)}validatePlaceholder(e){watchString(this.component,"_placeholder",e)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions),this.validateRequired(this.component._required),this.validateValue(this.component._value),this.validatePlaceholder(this.component._placeholder)}}const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n .required label > span::after,\n .required legend > span::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n input,\n textarea {\n cursor: text;\n }\n input[type=checkbox],\n input[type=color],\n input[type=file],\n input[type=radio],\n input[type=range],\n label,\n option,\n select {\n cursor: pointer;\n }\n /* input[type='checkbox'], */\n /* input[type='radio'], */\n /* input[type='range'], */\n input[type=color],\n input[type=date],\n input[type=datetime-local],\n input[type=email],\n input[type=file],\n input[type=month],\n input[type=number],\n input[type=password],\n input[type=search],\n input[type=tel],\n input[type=text],\n input[type=time],\n input[type=url],\n input[type=week],\n select,\n select[multiple] option,\n textarea {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n width: 100%;\n }\n /* needed hack for vertical alignment */\n input[type=file] {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 10) 0.5em;\n }\n /* needed hack for vertical alignment */\n select[multiple] option {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 2) 0.5em;\n }\n}\n@layer kol-component {\n .kol-input {\n display: grid;\n }\n .kol-input .input-slot {\n flex-grow: 1;\n }\n input:not([type=checkbox], [type=radio]),\n select:not([multiple], [size]) {\n height: 2.75em;\n }\n input:focus,\n option:focus,\n select:focus,\n textarea:focus {\n outline: 0;\n }\n .input {\n display: flex;\n align-items: center;\n }\n .input > .kol-icon {\n display: grid;\n height: var(--a11y-min-size);\n place-items: center;\n }\n .kol-input.required .input-tooltip .span-label::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .combobox {\n position: relative;\n }\n .combobox.disabled, .combobox.disabled * {\n cursor: not-allowed !important;\n }\n .combobox.disabled {\n opacity: 0.5;\n outline: none;\n }\n .combobox__group {\n display: inline-flex;\n align-items: center;\n cursor: pointer;\n }\n .combobox__input {\n flex-grow: 1;\n }\n .combobox__listbox {\n display: block;\n position: absolute;\n list-style-type: none;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 2;\n background-color: white;\n max-height: calc(250rem / var(--kolibri-root-font-size, 16));\n }\n}",KolComboboxDefaultStyle0=defaultStyleCss,KolCombobox$1=proxyCustomElement(class extends HTMLElement{async getValue(){return this.state._value}selectOption(e,t){var n;this.controller.onFacade.onInput(e,!0,t),this.controller.onFacade.onChange(e,t),this.controller.setFormAssociatedValue(t),this.state._value=t,null===(n=this.ref)||void 0===n||n.focus()}onInput(e){const t=e.target;this.state._value=t.value,this.controller.onFacade.onInput(e),this.setFilteredSuggestionsByQuery(t.value),this._focusedOptionIndex=-1}handleKeyDownDropdown(e){1===e.key.length&&/[a-z0-9]/i.test(e.key)&&(this._isOpen=!0,this.focusSuggestionStartingWith(e.key))}setFilteredSuggestionsByQuery(e){""===e.trim()?this._filteredSuggestions=[...this._suggestions]:(this._filteredSuggestions=this._suggestions.filter((t=>t.toLowerCase().includes(e.toLowerCase()))),this._isOpen=this._filteredSuggestions&&this._filteredSuggestions.length>0)}moveFocus(e){if(!this._filteredSuggestions)return;let t=this._focusedOptionIndex+e;t>=this._filteredSuggestions.length&&(t=0),t<0&&(t=this._filteredSuggestions.length-1),this.focusOption(t)}focusOption(e){if(this._focusedOptionIndex=e,this.refSuggestions){const t=this.refSuggestions[e];null==t||t.focus()}}focusSuggestionStartingWith(e){const t=e.toLowerCase(),n=Array.isArray(this._filteredSuggestions)&&this._filteredSuggestions.length>0&&this._filteredSuggestions.findIndex((e=>e.toLowerCase().startsWith(t)));"number"==typeof n&&this.focusOption(n)}render(){const e=showExpertSlot(this.state._label),{ariaDescribedBy:t}=getRenderStates(this.state);return h(Host,{key:"1152548ec37450afa0a2f0febc181cd47aa5763a",class:"kol-combobox"},h("div",{key:"44b22f52b41ba0966a34d78640b6fb4f2f9eaf67",class:`combobox ${!0===this.state._disabled?"disabled":""} `},h(KolInputWcTag,{key:"3ad621df9bcc30796264d466e25ac3c49c47c41d",_accessKey:this.state._accessKey,_disabled:this.state._disabled,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icons:this.state._icons,_id:this.state._id,_label:this.state._label,_msg:this.state._msg,_required:this.state._required,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched,role:"presentation"},h("span",{key:"f72d2f867f23a75f797b716a3fcc0a6631666a44",slot:"label"},e?h("slot",{name:"expert"}):"string"==typeof this.state._accessKey?h(Fragment,null,h(InternalUnderlinedAccessKey,{accessKey:this.state._accessKey,label:this.state._label})," ",h("span",{class:"access-key-hint","aria-hidden":"true"},this.state._accessKey)):h("span",null,this.state._label)),h("div",{key:"2d0fb751ecf1494ee7bc19717651eb119000de03",slot:"input"},h("div",{key:"671cca0562f708df81cc3184a928525f19d22043",class:"combobox__group"},h("input",Object.assign({key:"ec6a7451591d74cdf8b004e2da45f6dced84c55f",ref:this.catchRef,class:"combobox__input",type:"text",role:"combobox","aria-autocomplete":"both","aria-expanded":this._isOpen?"true":"false","aria-controls":"listbox",value:this.state._value,accessKey:this.state._accessKey,"aria-describedby":t.length>0?t.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,"aria-labelledby":this.state._id,"aria-activedescendant":this._isOpen&&this._focusedOptionIndex>=0?`option-${this._focusedOptionIndex}`:void 0,autoCapitalize:"off",autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,name:this.state._name,required:this.state._required,spellcheck:"false"},this.controller.onFacade,{onInput:this.onInput.bind(this),onClick:this.toggleListbox.bind(this),onChange:this.onChange.bind(this),placeholder:this.state._placeholder})),h("span",{key:"64c05c0163cda6e266010e6319ef5ff2c2834048",class:{combobox__icon:!0}},h(KolIconTag,{key:"26221707bc765f3c0dd6a1d9be33768453694d4f",_icons:"codicon codicon-triangle-down",_label:translate("kol-dropdown"),onClick:this.toggleListbox.bind(this)}))),this._isOpen&&!(!0===this.state._disabled)&&h("ul",{key:"069b526a726fa264bc6b5ae6cde1623c5380db20",role:"listbox","aria-label":"",class:{combobox__listbox:!0},onKeyDown:this.handleKeyDownDropdown.bind(this)},Array.isArray(this._filteredSuggestions)&&this._filteredSuggestions.length>0&&this._filteredSuggestions.map(((e,t)=>h("li",{id:`option-${t}`,key:`-${t}`,ref:e=>{e&&(this.refSuggestions[t]=e)},"data-index":t,tabIndex:0,role:"option","aria-selected":this.state._value===e,onClick:t=>{this.selectOption(t,e),this.toggleListbox()},onMouseOver:()=>{this.focusOption(t)},onFocus:()=>{this.focusOption(t)},class:"combobox__item",onKeyDown:t=>{"Enter"!==t.key&&"NumpadEnter"!==t.key||(this.selectOption(t,e),this.toggleListbox(),t.preventDefault())}},e))))))))}handleKeyDown(e){const t=(t,n)=>{var i;e.preventDefault(),void 0!==t&&(this._isOpen=t,t||null===(i=this.ref)||void 0===i||i.focus()),null==n||n()};switch(e.key){case"Down":case"ArrowDown":t(!0,(()=>this.moveFocus(1)));break;case"Up":case"ArrowUp":t(!0,(()=>this.moveFocus(-1)));break;case"Esc":case"Escape":t(!1);break;case"NumpadEnter":case"Enter":this.toggleListbox();break;case"Home":t(void 0,(()=>{this._isOpen&&this.focusOption(0)}));break;case"End":t(void 0,(()=>{this._isOpen&&this.focusOption(this._filteredSuggestions?this._filteredSuggestions.length-1:0)}));break;case"PageUp":t(void 0,(()=>this._isOpen&&this.moveFocus(-10)));break;case"PageDown":t(void 0,(()=>this._isOpen&&this.moveFocus(10)))}}handleWindowClick(e){null==this.host||this.host.contains(e.target)||(this._isOpen=!1)}constructor(){super(),this.__registerHost(),this.__attachShadow(),this.refSuggestions=[],this._focusedOptionIndex=-1,this.toggleListbox=()=>{if(!0===this.state._disabled)this._isOpen=!1;else if(this._isOpen=!this._isOpen,this._isOpen&&Array.isArray(this._filteredSuggestions)&&this._filteredSuggestions.length>0){const e=this._filteredSuggestions.findIndex((e=>e===this.state._value));this._focusedOptionIndex=e>=0?e:0,this.focusOption(this._focusedOptionIndex)}},this.catchRef=e=>{this.ref=e,propagateFocus(this.host,this.ref)},this._isOpen=!1,this._filteredSuggestions=void 0,this._accessKey=void 0,this._placeholder=void 0,this._alert=!0,this._disabled=!1,this._hideError=!1,this._hideLabel=!1,this._hint="",this._icons=void 0,this._id=void 0,this._label=void 0,this._msg=void 0,this._name=void 0,this._on=void 0,this._suggestions=void 0,this._required=!1,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._value=void 0,this.state={_hasValue:!1,_hideError:!1,_id:`id-${nonce()}`,_label:"",_suggestions:[],_value:""},this.controller=new ComboboxController(this,"select",this.host),this.onInput=this.onInput.bind(this)}validatePlaceholder(e){this.controller.validatePlaceholder(e)}validateAccessKey(e){this.controller.validateAccessKey(e)}validateAlert(e){this.controller.validateAlert(e)}validateDisabled(e){this.controller.validateDisabled(e)}validateHideError(e){this.controller.validateHideError(e)}validateHideLabel(e){this.controller.validateHideLabel(e)}validateHint(e){this.controller.validateHint(e)}validateIcons(e){this.controller.validateIcons(e)}validateId(e){this.controller.validateId(e)}validateLabel(e){this.controller.validateLabel(e)}validateMsg(e){this.controller.validateMsg(e)}validateName(e){this.controller.validateName(e)}validateOn(e){this.controller.validateOn(e)}validateSuggestions(e){this.controller.validateSuggestions(e)}validateRequired(e){this.controller.validateRequired(e)}validateSyncValueBySelector(e){this.controller.validateSyncValueBySelector(e)}validateTabIndex(e){this.controller.validateTabIndex(e)}validateTouched(e){this.controller.validateTouched(e)}validateValue(e){this.controller.validateValue(e),this.controller.setFormAssociatedValue(e)}componentWillLoad(){this.refSuggestions=[],this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((e=>this.state._hasValue=!!e)),this._filteredSuggestions=this.state._suggestions}onChange(e){var t;stopPropagation(e),tryToDispatchKoliBriEvent("change",this.host,this._value),this.controller.setFormAssociatedValue(this._value),"function"!=typeof(null===(t=this.state._on)||void 0===t?void 0:t.onChange)||this._isOpen||this.state._on.onChange(e,this._value)}get host(){return this}static get watchers(){return{_placeholder:["validatePlaceholder"],_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_suggestions:["validateSuggestions"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}static get style(){return{default:KolComboboxDefaultStyle0}}},[33,"kol-combobox",{_accessKey:[1,"_access-key"],_placeholder:[1],_alert:[1540],_disabled:[4],_hideError:[1540,"_hide-error"],_hideLabel:[4,"_hide-label"],_hint:[1],_icons:[1],_id:[1],_label:[1],_msg:[16],_name:[1],_on:[16],_suggestions:[16],_required:[4],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_touched:[1540],_value:[1025],_isOpen:[32],_filteredSuggestions:[32],state:[32],getValue:[64]},[[0,"keydown","handleKeyDown"],[8,"click","handleWindowClick"]],{_placeholder:["validatePlaceholder"],_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_suggestions:["validateSuggestions"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-combobox"].forEach((e=>{if("kol-combobox"===e)customElements.get(e)||customElements.define(e,KolCombobox$1)}))}const KolCombobox=KolCombobox$1,defineCustomElement=defineCustomElement$1;export{KolCombobox,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host,Fragment}from"@stencil/core/internal/client";import{n as nonce}from"./dev.utils2.js";import{s as stopPropagation,t as tryToDispatchKoliBriEvent}from"./events.js";import{I as InputIconController}from"./controller-icon.js";import{v as validateSuggestions}from"./suggestions.js";import{c as watchBoolean,e as watchString}from"./prop.validators.js";import{v as validateMsg,g as getRenderStates}from"./controller2.js";import{k as KolInputWcTag,e as KolIconTag}from"./component-names.js";import{I as InternalUnderlinedAccessKey}from"./InternalUnderlinedAccessKey.js";import{t as translate}from"./i18n2.js";import{c as clsx}from"./clsx.js";import{s as showExpertSlot}from"./reuse.js";class ComboboxController extends InputIconController{constructor(e,t,n){super(e,t,n),this.component=e}validateSuggestions(e){validateSuggestions(this.component,e)}validateRequired(e){watchBoolean(this.component,"_required",e)}validateValue(e){watchString(this.component,"_value",e)}validateMsg(e){validateMsg(this.component,e)}validatePlaceholder(e){watchString(this.component,"_placeholder",e)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions),this.validateRequired(this.component._required),this.validateValue(this.component._value),this.validatePlaceholder(this.component._placeholder)}}const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-global {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: 44px;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n color: black;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /*\n * All interactive elements should have a minimum size of 44px.\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n [role=button],\n button:not([role=link]),\n .kol-input .input {\n min-height: var(--a11y-min-size);\n min-width: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n }\n}\n/**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n.visually-hidden {\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n height: 1px;\n overflow: hidden;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n border: none;\n margin: 0;\n padding: 0;\n width: 100%; /* 100% needed for custom width from outside */\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n cursor: not-allowed;\n opacity: 0.5;\n outline: none;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n}\n@layer kol-component {\n .required label > span::after,\n .required legend > span::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n input,\n textarea {\n cursor: text;\n }\n input[type=checkbox],\n input[type=color],\n input[type=file],\n input[type=radio],\n input[type=range],\n label,\n option,\n select {\n cursor: pointer;\n }\n /* input[type='checkbox'], */\n /* input[type='radio'], */\n /* input[type='range'], */\n input[type=color],\n input[type=date],\n input[type=datetime-local],\n input[type=email],\n input[type=file],\n input[type=month],\n input[type=number],\n input[type=password],\n input[type=search],\n input[type=tel],\n input[type=text],\n input[type=time],\n input[type=url],\n input[type=week],\n select,\n select[multiple] option,\n textarea {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n width: 100%;\n }\n /* needed hack for vertical alignment */\n input[type=file] {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 10) 0.5em;\n }\n /* needed hack for vertical alignment */\n select[multiple] option {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 2) 0.5em;\n }\n}\n@layer kol-component {\n .kol-input {\n display: grid;\n }\n .kol-input .input-slot {\n flex-grow: 1;\n }\n input:not([type=checkbox], [type=radio]),\n select:not([multiple], [size]) {\n height: 2.75em;\n }\n input:focus,\n option:focus,\n select:focus,\n textarea:focus {\n outline: 0;\n }\n .input {\n display: flex;\n align-items: center;\n }\n .input > .kol-icon {\n display: grid;\n height: var(--a11y-min-size);\n place-items: center;\n }\n .kol-input.required .input-tooltip .span-label::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n :host {\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n .combobox {\n position: relative;\n }\n .combobox--disabled, .combobox--disabled * {\n cursor: not-allowed !important;\n }\n .combobox--disabled {\n opacity: 0.5;\n outline: none;\n }\n .combobox__group {\n display: inline-flex;\n align-items: center;\n cursor: pointer;\n }\n .combobox__input {\n flex-grow: 1;\n }\n .combobox__icon {\n align-items: center;\n cursor: pointer;\n display: flex;\n height: var(--a11y-min-size);\n width: var(--a11y-min-size);\n }\n .combobox__listbox {\n display: block;\n position: absolute;\n list-style-type: none;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 2;\n background-color: white;\n max-height: calc(250rem / var(--kolibri-root-font-size, 16));\n }\n .combobox__item {\n cursor: pointer;\n }\n .combobox__listbox--cursor-hidden .combobox__item {\n cursor: none !important;\n }\n}",KolComboboxDefaultStyle0=defaultStyleCss,KolCombobox$1=proxyCustomElement(class extends HTMLElement{async getValue(){return this.state._value}async kolFocus(){var e;null===(e=this.refInput)||void 0===e||e.focus()}selectOption(e,t){var n;this.controller.onFacade.onInput(e,!0,t),this.controller.onFacade.onChange(e,t),this.controller.setFormAssociatedValue(t),this.state._value=t,null===(n=this.refInput)||void 0===n||n.focus()}onInput(e){const t=e.target;this.state._value=t.value,this.controller.onFacade.onInput(e),this.setFilteredSuggestionsByQuery(t.value),this._focusedOptionIndex=-1}handleKeyDownDropdown(e){1===e.key.length&&/[a-z0-9]/i.test(e.key)&&(this._isOpen=!0,this.focusSuggestionStartingWith(e.key))}setFilteredSuggestionsByQuery(e){""===e.trim()?this._filteredSuggestions=[...this._suggestions]:(this._filteredSuggestions=this._suggestions.filter((t=>t.toLowerCase().includes(e.toLowerCase()))),this._isOpen=this._filteredSuggestions&&this._filteredSuggestions.length>0)}moveFocus(e){if(!this._filteredSuggestions)return;let t=this._focusedOptionIndex+e;t>=this._filteredSuggestions.length&&(t=0),t<0&&(t=this._filteredSuggestions.length-1),this.focusOption(t)}focusOption(e){if(this._focusedOptionIndex=e,this.refSuggestions){const t=this.refSuggestions[e];null==t||t.focus()}}focusSuggestionStartingWith(e){const t=e.toLowerCase(),n=Array.isArray(this._filteredSuggestions)&&this._filteredSuggestions.length>0&&this._filteredSuggestions.findIndex((e=>e.toLowerCase().startsWith(t)));"number"==typeof n&&this.focusOption(n)}render(){const e=showExpertSlot(this.state._label),{ariaDescribedBy:t}=getRenderStates(this.state);return h(Host,{key:"ad2e6079db035e072922be35f12f93f5c43ecc1c",class:"kol-combobox"},h("div",{key:"1035ba725b3df577de2c50d0917907757054c536",class:clsx("combobox",this.state._disabled&&"combobox--disabled")},h(KolInputWcTag,{key:"dc10ed8acfe369819696cee9b29f036ddad6f254",_accessKey:this.state._accessKey,_disabled:this.state._disabled,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icons:this.state._icons,_id:this.state._id,_label:this.state._label,_msg:this.state._msg,_required:this.state._required,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched,onClick:()=>{var e;return null===(e=this.refInput)||void 0===e?void 0:e.focus()},role:"presentation"},h("span",{key:"ea0fabaec418b83f6b88b3d970fd7cb9bbd0e4d5",slot:"label"},e?h("slot",{name:"expert"}):"string"==typeof this.state._accessKey?h(Fragment,null,h(InternalUnderlinedAccessKey,{accessKey:this.state._accessKey,label:this.state._label})," ",h("span",{class:"access-key-hint","aria-hidden":"true"},this.state._accessKey)):h("span",null,this.state._label)),h("div",{key:"8149740fdd7e5966e878eadf0998564fdb8924a4",slot:"input"},h("div",{key:"7c38ddeaef0057b73441c80474a2b619134e4c29",class:"combobox__group"},h("input",Object.assign({key:"81ca199dd0e5b0807b20ec5e715eed97c29df1ed",ref:this.catchRef,class:"combobox__input",type:"text",role:"combobox","aria-autocomplete":"both","aria-expanded":this._isOpen?"true":"false","aria-controls":"listbox",value:this.state._value,accessKey:this.state._accessKey,"aria-describedby":t.length>0?t.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,"aria-labelledby":this.state._id,"aria-activedescendant":this._isOpen&&this._focusedOptionIndex>=0?`option-${this._focusedOptionIndex}`:void 0,autoCapitalize:"off",autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,name:this.state._name,required:this.state._required,spellcheck:"false"},this.controller.onFacade,{onInput:this.onInput.bind(this),onChange:this.onChange.bind(this),placeholder:this.state._placeholder})),h("button",{key:"0735c6adc90721906e366b9a49f4df5f2f233413",tabindex:"-1",class:"combobox__icon",onClick:this.toggleListbox.bind(this),disabled:this.state._disabled},h(KolIconTag,{key:"c005e595be16099e4b8c067ebc05d7872392db7d",_icons:"codicon codicon-triangle-down",_label:translate("kol-dropdown")}))),this._isOpen&&!(!0===this.state._disabled)&&h("ul",{key:"cef8e4974a0c459d8e91066e023a851e9c93e6c7",role:"listbox",class:clsx("combobox__listbox",this.blockSuggestionMouseOver&&"combobox__listbox--cursor-hidden"),onKeyDown:this.handleKeyDownDropdown.bind(this)},Array.isArray(this._filteredSuggestions)&&this._filteredSuggestions.length>0&&this._filteredSuggestions.map(((e,t)=>h("li",{id:`option-${t}`,key:`-${t}`,ref:e=>{e&&(this.refSuggestions[t]=e)},"data-index":t,tabIndex:-1,role:"option","aria-selected":this.state._value===e,onClick:t=>{this.selectOption(t,e),this.toggleListbox()},onMouseOver:()=>{this.blockSuggestionMouseOver||this.focusOption(t)},onFocus:()=>{this.focusOption(t)},class:"combobox__item",onKeyDown:t=>{"Enter"!==t.key&&"NumpadEnter"!==t.key||(this.selectOption(t,e),this.toggleListbox(),t.preventDefault())}},e))))))))}handleKeyDown(e){var t,n;const i=(t,n)=>{var i;e.preventDefault(),void 0!==t&&(this._isOpen=t,t||null===(i=this.refInput)||void 0===i||i.focus()),null==n||n()};switch(e.key){case"Down":case"ArrowDown":this.blockSuggestionMouseOver=!0,i(!0,(()=>this.moveFocus(1)));break;case"Up":case"ArrowUp":this.blockSuggestionMouseOver=!0,i(!0,(()=>this.moveFocus(-1)));break;case"Tab":this._isOpen&&(this._isOpen=!this._isOpen,null===(t=this.refInput)||void 0===t||t.focus());break;case"Esc":case"Escape":i(!1),null===(n=this.refInput)||void 0===n||n.focus();break;case"NumpadEnter":case"Enter":this.toggleListbox();break;case"Home":this.blockSuggestionMouseOver=!0,i(void 0,(()=>{this._isOpen&&this.focusOption(0)}));break;case"End":this.blockSuggestionMouseOver=!0,i(void 0,(()=>{this._isOpen&&this.focusOption(this._filteredSuggestions?this._filteredSuggestions.length-1:0)}));break;case"PageUp":this.blockSuggestionMouseOver=!0,i(void 0,(()=>this._isOpen&&this.moveFocus(-10)));break;case"PageDown":this.blockSuggestionMouseOver=!0,i(void 0,(()=>this._isOpen&&this.moveFocus(10)))}}handleWindowClick(e){null==this.host||this.host.contains(e.target)||(this._isOpen=!1)}constructor(){super(),this.__registerHost(),this.__attachShadow(),this.refSuggestions=[],this._focusedOptionIndex=-1,this.toggleListbox=()=>{var e;if(!0===this.state._disabled)this._isOpen=!1;else if(this._isOpen=!this._isOpen,null===(e=this.refInput)||void 0===e||e.focus(),this._isOpen&&Array.isArray(this._filteredSuggestions)&&this._filteredSuggestions.length>0){const e=this._filteredSuggestions.findIndex((e=>e===this.state._value));this._focusedOptionIndex=e>=0?e:0,this.focusOption(this._focusedOptionIndex)}},this.catchRef=e=>{this.refInput=e},this.blockSuggestionMouseOver=!1,this._isOpen=!1,this._filteredSuggestions=void 0,this._accessKey=void 0,this._placeholder=void 0,this._alert=!0,this._disabled=!1,this._hideError=!1,this._hideLabel=!1,this._hint="",this._icons=void 0,this._id=void 0,this._label=void 0,this._msg=void 0,this._name=void 0,this._on=void 0,this._suggestions=void 0,this._required=!1,this._syncValueBySelector=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._value=void 0,this.state={_hasValue:!1,_hideError:!1,_id:`id-${nonce()}`,_label:"",_suggestions:[],_value:""},this.controller=new ComboboxController(this,"combobox",this.host),this.onInput=this.onInput.bind(this)}validatePlaceholder(e){this.controller.validatePlaceholder(e)}validateAccessKey(e){this.controller.validateAccessKey(e)}validateAlert(e){this.controller.validateAlert(e)}validateDisabled(e){this.controller.validateDisabled(e)}validateHideError(e){this.controller.validateHideError(e)}validateHideLabel(e){this.controller.validateHideLabel(e)}validateHint(e){this.controller.validateHint(e)}validateIcons(e){this.controller.validateIcons(e)}validateId(e){this.controller.validateId(e)}validateLabel(e){this.controller.validateLabel(e)}validateMsg(e){this.controller.validateMsg(e)}validateName(e){this.controller.validateName(e)}validateOn(e){this.controller.validateOn(e)}validateSuggestions(e){this.controller.validateSuggestions(e)}validateRequired(e){this.controller.validateRequired(e)}validateSyncValueBySelector(e){this.controller.validateSyncValueBySelector(e)}validateTabIndex(e){this.controller.validateTabIndex(e)}validateTouched(e){this.controller.validateTouched(e)}validateValue(e){this.controller.validateValue(e),this.controller.setFormAssociatedValue(e)}componentWillLoad(){this.refSuggestions=[],this._alert=!0===this._alert,this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener((e=>this.state._hasValue=!!e)),this._filteredSuggestions=this.state._suggestions}handleMouseEvent(){this.blockSuggestionMouseOver=!1}handleFocusOut(){setTimeout((()=>{var e;(null===(e=this.host)||void 0===e?void 0:e.contains(document.activeElement))||this.onBlur()}),0)}handleWindowBlur(){this.onBlur()}onBlur(){var e;this._isOpen&&(this._isOpen=!this._isOpen,null===(e=this.refInput)||void 0===e||e.focus())}onChange(e){var t;stopPropagation(e),tryToDispatchKoliBriEvent("change",this.host,this.state._value),this.controller.setFormAssociatedValue(this.state._value),"function"!=typeof(null===(t=this.state._on)||void 0===t?void 0:t.onChange)||this._isOpen||this.state._on.onChange(e,this.state._value)}get host(){return this}static get watchers(){return{_placeholder:["validatePlaceholder"],_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_suggestions:["validateSuggestions"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}}static get style(){return{default:KolComboboxDefaultStyle0}}},[33,"kol-combobox",{_accessKey:[1,"_access-key"],_placeholder:[1],_alert:[1540],_disabled:[4],_hideError:[1540,"_hide-error"],_hideLabel:[4,"_hide-label"],_hint:[1],_icons:[1],_id:[1],_label:[1],_msg:[16],_name:[1],_on:[16],_suggestions:[16],_required:[4],_syncValueBySelector:[1,"_sync-value-by-selector"],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_touched:[1540],_value:[1025],blockSuggestionMouseOver:[32],_isOpen:[32],_filteredSuggestions:[32],state:[32],getValue:[64],kolFocus:[64]},[[0,"keydown","handleKeyDown"],[8,"click","handleWindowClick"],[1,"mousemove","handleMouseEvent"],[8,"focusout","handleFocusOut"],[8,"blur","handleWindowBlur"]],{_placeholder:["validatePlaceholder"],_accessKey:["validateAccessKey"],_alert:["validateAlert"],_disabled:["validateDisabled"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_suggestions:["validateSuggestions"],_required:["validateRequired"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_value:["validateValue"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-combobox"].forEach((e=>{if("kol-combobox"===e)customElements.get(e)||customElements.define(e,KolCombobox$1)}))}const KolCombobox=KolCombobox$1,defineCustomElement=defineCustomElement$1;export{KolCombobox,defineCustomElement};