@public-ui/components 2.0.1 → 2.0.3

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 (581) hide show
  1. package/custom-elements.json +1 -15
  2. package/dist/cjs/{InternalUnderlinedAccessKey-db20fe4c.js → InternalUnderlinedAccessKey-6642b2c7.js} +1 -1
  3. package/dist/cjs/{InternalUnderlinedAccessKey-db20fe4c.js.map → InternalUnderlinedAccessKey-6642b2c7.js.map} +1 -1
  4. package/dist/cjs/{a11y.tipps-5093e030.js → a11y.tipps-a9c5bee3.js} +1 -1
  5. package/dist/cjs/{a11y.tipps-5093e030.js.map → a11y.tipps-a9c5bee3.js.map} +1 -1
  6. package/dist/cjs/access-key-41cf20c4.js +4 -0
  7. package/dist/cjs/{access-key-08e22c70.js.map → access-key-41cf20c4.js.map} +1 -1
  8. package/dist/cjs/{align-floating-elements-dca98687.js → align-floating-elements-656b8edb.js} +1 -1
  9. package/dist/cjs/align-floating-elements-656b8edb.js.map +1 -0
  10. package/dist/cjs/{alignment-da95c567.js → alignment-33970e77.js} +1 -1
  11. package/dist/cjs/{alignment-da95c567.js.map → alignment-33970e77.js.map} +1 -1
  12. package/dist/cjs/alternative-button-link-role-85dd7d3a.js +4 -0
  13. package/dist/cjs/{alternative-button-link-role-46c7e9ff.js.map → alternative-button-link-role-85dd7d3a.js.map} +1 -1
  14. package/dist/cjs/{app-globals-dbba0fd7.js → app-globals-99df1ec2.js} +1 -1
  15. package/dist/cjs/{app-globals-dbba0fd7.js.map → app-globals-99df1ec2.js.map} +1 -1
  16. package/dist/cjs/{associated.controller-665c978d.js → associated.controller-476bc975.js} +1 -1
  17. package/dist/cjs/{associated.controller-665c978d.js.map → associated.controller-476bc975.js.map} +1 -1
  18. package/dist/cjs/{color-f3eb202a.js → color-9547694e.js} +1 -1
  19. package/dist/cjs/{color-f3eb202a.js.map → color-9547694e.js.map} +1 -1
  20. package/dist/cjs/{controller-318aaac7.js → controller-aad33907.js} +1 -1
  21. package/dist/cjs/{controller-318aaac7.js.map → controller-aad33907.js.map} +1 -1
  22. package/dist/cjs/{controller-8f3bdef3.js → controller-b2299d8a.js} +1 -1
  23. package/dist/cjs/{controller-8f3bdef3.js.map → controller-b2299d8a.js.map} +1 -1
  24. package/dist/cjs/{controller-644ec366.js → controller-cbff0599.js} +1 -1
  25. package/dist/cjs/{controller-644ec366.js.map → controller-cbff0599.js.map} +1 -1
  26. package/dist/cjs/{controller-3a053b42.js → controller-d0ce6c05.js} +1 -1
  27. package/dist/cjs/{controller-3a053b42.js.map → controller-d0ce6c05.js.map} +1 -1
  28. package/dist/cjs/{controller-5a5b8671.js → controller-fe8411e5.js} +1 -1
  29. package/dist/cjs/{controller-5a5b8671.js.map → controller-fe8411e5.js.map} +1 -1
  30. package/dist/cjs/{controller-icon-870a91fe.js → controller-icon-ecb716a5.js} +1 -1
  31. package/dist/cjs/{controller-icon-870a91fe.js.map → controller-icon-ecb716a5.js.map} +1 -1
  32. package/dist/cjs/custom-class-80a19309.js +4 -0
  33. package/dist/cjs/{custom-class-fe018ec9.js.map → custom-class-80a19309.js.map} +1 -1
  34. package/dist/cjs/{dev.utils-dd133f0a.js → dev.utils-4be23d2e.js} +1 -1
  35. package/dist/cjs/dev.utils-4be23d2e.js.map +1 -0
  36. package/dist/cjs/devtools-f550a928.js +4 -0
  37. package/dist/cjs/devtools-f550a928.js.map +1 -0
  38. package/dist/cjs/has-closer-fcae7da6.js +4 -0
  39. package/dist/cjs/{has-closer-e0792c7f.js.map → has-closer-fcae7da6.js.map} +1 -1
  40. package/dist/cjs/hide-label-b7ee1c01.js +4 -0
  41. package/dist/cjs/{hide-label-69a12ef6.js.map → hide-label-b7ee1c01.js.map} +1 -1
  42. package/dist/cjs/i18n-8fb14ebf.js +4 -0
  43. package/dist/cjs/i18n-8fb14ebf.js.map +1 -0
  44. package/dist/cjs/{icons-7d782feb.js → icons-5cf7c0e6.js} +1 -1
  45. package/dist/cjs/{icons-7d782feb.js.map → icons-5cf7c0e6.js.map} +1 -1
  46. package/dist/cjs/image-source-8aa35f38.js +4 -0
  47. package/dist/cjs/{image-source-9b7df5ba.js.map → image-source-8aa35f38.js.map} +1 -1
  48. package/dist/cjs/{index-814a048a.js → index-2f27254e.js} +1 -1
  49. package/dist/cjs/index-2f27254e.js.map +1 -0
  50. package/dist/cjs/index-3145a30d.js +4 -0
  51. package/dist/cjs/index-3145a30d.js.map +1 -0
  52. package/dist/cjs/index.cjs.js +1 -1
  53. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-alert-wc_2.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-button-wc_2.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-button-wc_2.cjs.entry.js.map +1 -1
  67. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  72. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-link-button.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-link-wc.cjs.entry.js.map +1 -1
  93. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-link.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-modal.cjs.entry.js.map +1 -1
  98. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-progress.cjs.entry.js.map +1 -1
  103. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  110. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  112. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  113. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  114. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  117. package/dist/cjs/kolibri.cjs.js +1 -1
  118. package/dist/cjs/kolibri.cjs.js.map +1 -1
  119. package/dist/cjs/{label-1ffb616a.js → label-945b341f.js} +1 -1
  120. package/dist/cjs/{label-1ffb616a.js.map → label-945b341f.js.map} +1 -1
  121. package/dist/cjs/loader.cjs.js +1 -1
  122. package/dist/cjs/open-882be22c.js +4 -0
  123. package/dist/cjs/{open-4fe1ba4b.js.map → open-882be22c.js.map} +1 -1
  124. package/dist/cjs/{prop.validators-85dcd797.js → prop.validators-461024d1.js} +1 -1
  125. package/dist/cjs/{prop.validators-85dcd797.js.map → prop.validators-461024d1.js.map} +1 -1
  126. package/dist/cjs/rows-ad9a160c.js +4 -0
  127. package/dist/cjs/{rows-e1b2cbc4.js.map → rows-ad9a160c.js.map} +1 -1
  128. package/dist/cjs/show-9f618ffc.js +4 -0
  129. package/dist/cjs/{show-5514164d.js.map → show-9f618ffc.js.map} +1 -1
  130. package/dist/cjs/{suggestions-c6f511ef.js → suggestions-9885b2f9.js} +1 -1
  131. package/dist/cjs/{suggestions-c6f511ef.js.map → suggestions-9885b2f9.js.map} +1 -1
  132. package/dist/cjs/{tab-index-9a2f9acd.js → tab-index-5ab3d038.js} +1 -1
  133. package/dist/cjs/{tab-index-9a2f9acd.js.map → tab-index-5ab3d038.js.map} +1 -1
  134. package/dist/cjs/{tooltip-align-231659b9.js → tooltip-align-a996d985.js} +1 -1
  135. package/dist/cjs/{tooltip-align-231659b9.js.map → tooltip-align-a996d985.js.map} +1 -1
  136. package/dist/cjs/{validation-fb5cac9f.js → validation-045dfb7f.js} +1 -1
  137. package/dist/cjs/{validation-fb5cac9f.js.map → validation-045dfb7f.js.map} +1 -1
  138. package/dist/cjs/{validation-ffe8a5ab.js → validation-91e840dd.js} +1 -1
  139. package/dist/cjs/{validation-ffe8a5ab.js.map → validation-91e840dd.js.map} +1 -1
  140. package/dist/components/align-floating-elements.js +1 -1
  141. package/dist/components/align-floating-elements.js.map +1 -1
  142. package/dist/components/color.js +1 -1
  143. package/dist/components/component.js +1 -1
  144. package/dist/components/component15.js +1 -1
  145. package/dist/components/component2.js +1 -1
  146. package/dist/components/component3.js +1 -1
  147. package/dist/components/component3.js.map +1 -1
  148. package/dist/components/component4.js +1 -1
  149. package/dist/components/component5.js +1 -1
  150. package/dist/components/component6.js +1 -1
  151. package/dist/components/component9.js +1 -1
  152. package/dist/components/component9.js.map +1 -1
  153. package/dist/components/controller.js +1 -1
  154. package/dist/components/controller2.js +1 -1
  155. package/dist/components/controller4.js +1 -1
  156. package/dist/components/devtools.js +1 -1
  157. package/dist/components/devtools.js.map +1 -1
  158. package/dist/components/has-closer.js +1 -1
  159. package/dist/components/i18n.js +1 -1
  160. package/dist/components/i18n.js.map +1 -1
  161. package/dist/components/image-source.js +1 -1
  162. package/dist/components/kol-form.js +1 -1
  163. package/dist/components/kol-form.js.map +1 -1
  164. package/dist/components/kol-image.js +1 -1
  165. package/dist/components/kol-input-checkbox.js +1 -1
  166. package/dist/components/kol-input-color.js +1 -1
  167. package/dist/components/kol-input-date.js +1 -1
  168. package/dist/components/kol-input-email.js +1 -1
  169. package/dist/components/kol-input-file.js +1 -1
  170. package/dist/components/kol-input-number.js +1 -1
  171. package/dist/components/kol-input-text.js +1 -1
  172. package/dist/components/kol-kolibri.js +1 -1
  173. package/dist/components/kol-link-button.js +1 -1
  174. package/dist/components/kol-link-button.js.map +1 -1
  175. package/dist/components/kol-modal.js +1 -1
  176. package/dist/components/kol-modal.js.map +1 -1
  177. package/dist/components/kol-nav.js +1 -1
  178. package/dist/components/kol-progress.js +1 -1
  179. package/dist/components/kol-progress.js.map +1 -1
  180. package/dist/components/kol-quote.js +1 -1
  181. package/dist/components/kol-symbol.js +1 -1
  182. package/dist/components/kol-table.js +1 -1
  183. package/dist/components/kol-table.js.map +1 -1
  184. package/dist/components/kol-textarea.js +1 -1
  185. package/dist/components/label.js +1 -1
  186. package/dist/components/open.js +1 -1
  187. package/dist/components/prop.validators.js +1 -1
  188. package/dist/components/prop.validators.js.map +1 -1
  189. package/dist/components/shadow2.js +1 -1
  190. package/dist/components/shadow2.js.map +1 -1
  191. package/dist/components/show.js +1 -1
  192. package/dist/components/suggestions.js +1 -1
  193. package/dist/components/tab-index.js +1 -1
  194. package/dist/esm/{InternalUnderlinedAccessKey-e3698cee.js → InternalUnderlinedAccessKey-3d146073.js} +1 -1
  195. package/dist/esm/{InternalUnderlinedAccessKey-e3698cee.js.map → InternalUnderlinedAccessKey-3d146073.js.map} +1 -1
  196. package/dist/esm/{a11y.tipps-f367a979.js → a11y.tipps-2a54fd3e.js} +1 -1
  197. package/dist/esm/{a11y.tipps-f367a979.js.map → a11y.tipps-2a54fd3e.js.map} +1 -1
  198. package/dist/esm/{access-key-d70aa275.js → access-key-65ff36eb.js} +1 -1
  199. package/dist/esm/{access-key-d70aa275.js.map → access-key-65ff36eb.js.map} +1 -1
  200. package/dist/esm/{align-floating-elements-cadb5c5b.js → align-floating-elements-e1edfaae.js} +1 -1
  201. package/dist/esm/align-floating-elements-e1edfaae.js.map +1 -0
  202. package/dist/esm/{alignment-493b6c84.js → alignment-3ca6c7b4.js} +1 -1
  203. package/dist/esm/{alignment-493b6c84.js.map → alignment-3ca6c7b4.js.map} +1 -1
  204. package/dist/esm/alternative-button-link-role-03c7dc90.js +4 -0
  205. package/dist/esm/{alternative-button-link-role-0fc029bf.js.map → alternative-button-link-role-03c7dc90.js.map} +1 -1
  206. package/dist/esm/{app-globals-f7f4352c.js → app-globals-b4b6e633.js} +1 -1
  207. package/dist/esm/{app-globals-f7f4352c.js.map → app-globals-b4b6e633.js.map} +1 -1
  208. package/dist/esm/{associated.controller-700d5133.js → associated.controller-4abb0353.js} +1 -1
  209. package/dist/esm/{associated.controller-700d5133.js.map → associated.controller-4abb0353.js.map} +1 -1
  210. package/dist/esm/{color-afc2e34f.js → color-2aa7218a.js} +1 -1
  211. package/dist/esm/{color-afc2e34f.js.map → color-2aa7218a.js.map} +1 -1
  212. package/dist/esm/{controller-6e772d91.js → controller-34abd025.js} +1 -1
  213. package/dist/esm/{controller-6e772d91.js.map → controller-34abd025.js.map} +1 -1
  214. package/dist/esm/{controller-ae07d1c7.js → controller-7cdc3635.js} +1 -1
  215. package/dist/esm/{controller-ae07d1c7.js.map → controller-7cdc3635.js.map} +1 -1
  216. package/dist/esm/{controller-17eb7878.js → controller-b209b2d8.js} +1 -1
  217. package/dist/esm/{controller-17eb7878.js.map → controller-b209b2d8.js.map} +1 -1
  218. package/dist/esm/{controller-60b830eb.js → controller-d02635bf.js} +1 -1
  219. package/dist/esm/{controller-60b830eb.js.map → controller-d02635bf.js.map} +1 -1
  220. package/dist/esm/{controller-e23535f2.js → controller-fe294c60.js} +1 -1
  221. package/dist/esm/{controller-e23535f2.js.map → controller-fe294c60.js.map} +1 -1
  222. package/dist/esm/{controller-icon-01cabd99.js → controller-icon-5be90e84.js} +1 -1
  223. package/dist/esm/{controller-icon-01cabd99.js.map → controller-icon-5be90e84.js.map} +1 -1
  224. package/dist/esm/custom-class-c7f11511.js +4 -0
  225. package/dist/esm/{custom-class-603a7fda.js.map → custom-class-c7f11511.js.map} +1 -1
  226. package/dist/esm/{dev.utils-da51d5d8.js → dev.utils-a1ddacb2.js} +1 -1
  227. package/dist/esm/dev.utils-a1ddacb2.js.map +1 -0
  228. package/dist/esm/devtools-f30e7098.js +4 -0
  229. package/dist/esm/devtools-f30e7098.js.map +1 -0
  230. package/dist/esm/{has-closer-091d5cc7.js → has-closer-213e1f60.js} +1 -1
  231. package/dist/esm/{has-closer-091d5cc7.js.map → has-closer-213e1f60.js.map} +1 -1
  232. package/dist/esm/{hide-label-e711f812.js → hide-label-12ff810a.js} +1 -1
  233. package/dist/esm/{hide-label-e711f812.js.map → hide-label-12ff810a.js.map} +1 -1
  234. package/dist/esm/i18n-565c326b.js +4 -0
  235. package/dist/esm/i18n-565c326b.js.map +1 -0
  236. package/dist/esm/{icons-1ad89985.js → icons-5c4d2e57.js} +1 -1
  237. package/dist/esm/{icons-1ad89985.js.map → icons-5c4d2e57.js.map} +1 -1
  238. package/dist/esm/{image-source-f76f6ad4.js → image-source-fc1918e2.js} +1 -1
  239. package/dist/esm/{image-source-f76f6ad4.js.map → image-source-fc1918e2.js.map} +1 -1
  240. package/dist/esm/index-5dfe6d77.js +4 -0
  241. package/dist/esm/index-5dfe6d77.js.map +1 -0
  242. package/dist/esm/index-b99a7aa5.js +4 -0
  243. package/dist/esm/index-b99a7aa5.js.map +1 -0
  244. package/dist/esm/index.js +1 -1
  245. package/dist/esm/kol-abbr.entry.js +1 -1
  246. package/dist/esm/kol-accordion.entry.js +1 -1
  247. package/dist/esm/kol-alert-wc_2.entry.js +1 -1
  248. package/dist/esm/kol-alert.entry.js +1 -1
  249. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  250. package/dist/esm/kol-avatar.entry.js +1 -1
  251. package/dist/esm/kol-badge.entry.js +1 -1
  252. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  253. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  254. package/dist/esm/kol-button-group.entry.js +1 -1
  255. package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
  256. package/dist/esm/kol-button-link.entry.js +1 -1
  257. package/dist/esm/kol-button-wc_2.entry.js +1 -1
  258. package/dist/esm/kol-button-wc_2.entry.js.map +1 -1
  259. package/dist/esm/kol-button.entry.js +1 -1
  260. package/dist/esm/kol-card.entry.js +1 -1
  261. package/dist/esm/kol-details.entry.js +1 -1
  262. package/dist/esm/kol-form.entry.js +1 -1
  263. package/dist/esm/kol-form.entry.js.map +1 -1
  264. package/dist/esm/kol-heading.entry.js +1 -1
  265. package/dist/esm/kol-icon.entry.js +1 -1
  266. package/dist/esm/kol-image.entry.js +1 -1
  267. package/dist/esm/kol-indented-text.entry.js +1 -1
  268. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  269. package/dist/esm/kol-input-color.entry.js +1 -1
  270. package/dist/esm/kol-input-date.entry.js +1 -1
  271. package/dist/esm/kol-input-email.entry.js +1 -1
  272. package/dist/esm/kol-input-file.entry.js +1 -1
  273. package/dist/esm/kol-input-number.entry.js +1 -1
  274. package/dist/esm/kol-input-password.entry.js +1 -1
  275. package/dist/esm/kol-input-radio.entry.js +1 -1
  276. package/dist/esm/kol-input-range.entry.js +1 -1
  277. package/dist/esm/kol-input-text.entry.js +1 -1
  278. package/dist/esm/kol-input.entry.js +1 -1
  279. package/dist/esm/kol-kolibri.entry.js +1 -1
  280. package/dist/esm/kol-link-button.entry.js +1 -1
  281. package/dist/esm/kol-link-button.entry.js.map +1 -1
  282. package/dist/esm/kol-link-group.entry.js +1 -1
  283. package/dist/esm/kol-link-wc.entry.js +1 -1
  284. package/dist/esm/kol-link-wc.entry.js.map +1 -1
  285. package/dist/esm/kol-link.entry.js +1 -1
  286. package/dist/esm/kol-link.entry.js.map +1 -1
  287. package/dist/esm/kol-logo.entry.js +1 -1
  288. package/dist/esm/kol-modal.entry.js +1 -1
  289. package/dist/esm/kol-modal.entry.js.map +1 -1
  290. package/dist/esm/kol-nav.entry.js +1 -1
  291. package/dist/esm/kol-pagination.entry.js +1 -1
  292. package/dist/esm/kol-popover-wc.entry.js +1 -1
  293. package/dist/esm/kol-progress.entry.js +1 -1
  294. package/dist/esm/kol-progress.entry.js.map +1 -1
  295. package/dist/esm/kol-quote.entry.js +1 -1
  296. package/dist/esm/kol-select.entry.js +1 -1
  297. package/dist/esm/kol-skip-nav.entry.js +1 -1
  298. package/dist/esm/kol-span-wc.entry.js +1 -1
  299. package/dist/esm/kol-span.entry.js +1 -1
  300. package/dist/esm/kol-spin.entry.js +1 -1
  301. package/dist/esm/kol-split-button.entry.js +1 -1
  302. package/dist/esm/kol-symbol.entry.js +1 -1
  303. package/dist/esm/kol-table.entry.js +1 -1
  304. package/dist/esm/kol-table.entry.js.map +1 -1
  305. package/dist/esm/kol-tabs.entry.js +1 -1
  306. package/dist/esm/kol-textarea.entry.js +1 -1
  307. package/dist/esm/kol-toast-container.entry.js +1 -1
  308. package/dist/esm/kol-version.entry.js +1 -1
  309. package/dist/esm/kolibri.js +1 -1
  310. package/dist/esm/kolibri.js.map +1 -1
  311. package/dist/esm/{label-8ddb917e.js → label-5f92bb62.js} +1 -1
  312. package/dist/esm/{label-8ddb917e.js.map → label-5f92bb62.js.map} +1 -1
  313. package/dist/esm/loader.js +1 -1
  314. package/dist/esm/{open-0bdcff02.js → open-215a7ce8.js} +1 -1
  315. package/dist/esm/{open-0bdcff02.js.map → open-215a7ce8.js.map} +1 -1
  316. package/dist/esm/{prop.validators-f887ad3b.js → prop.validators-c9100bb0.js} +1 -1
  317. package/dist/esm/{prop.validators-f887ad3b.js.map → prop.validators-c9100bb0.js.map} +1 -1
  318. package/dist/esm/{rows-77cd583c.js → rows-5e4dff0c.js} +1 -1
  319. package/dist/esm/{rows-77cd583c.js.map → rows-5e4dff0c.js.map} +1 -1
  320. package/dist/esm/{show-8341c904.js → show-509c0941.js} +1 -1
  321. package/dist/esm/{show-8341c904.js.map → show-509c0941.js.map} +1 -1
  322. package/dist/esm/{suggestions-40d68773.js → suggestions-9923bbe2.js} +1 -1
  323. package/dist/esm/{suggestions-40d68773.js.map → suggestions-9923bbe2.js.map} +1 -1
  324. package/dist/esm/{tab-index-2206620f.js → tab-index-4eba9292.js} +1 -1
  325. package/dist/esm/{tab-index-2206620f.js.map → tab-index-4eba9292.js.map} +1 -1
  326. package/dist/esm/{tooltip-align-00398d75.js → tooltip-align-36b445e5.js} +1 -1
  327. package/dist/esm/{tooltip-align-00398d75.js.map → tooltip-align-36b445e5.js.map} +1 -1
  328. package/dist/esm/{validation-503191a4.js → validation-406b3d9a.js} +1 -1
  329. package/dist/esm/{validation-503191a4.js.map → validation-406b3d9a.js.map} +1 -1
  330. package/dist/esm/validation-7eedde02.js +4 -0
  331. package/dist/esm/{validation-34db9bcf.js.map → validation-7eedde02.js.map} +1 -1
  332. package/dist/kolibri/InternalUnderlinedAccessKey-3d146073.js +4 -0
  333. package/dist/kolibri/{a11y.tipps-f367a979.js → a11y.tipps-2a54fd3e.js} +1 -1
  334. package/dist/kolibri/access-key-65ff36eb.js +4 -0
  335. package/dist/kolibri/{align-floating-elements-cadb5c5b.js → align-floating-elements-e1edfaae.js} +1 -1
  336. package/dist/kolibri/{align-floating-elements-cadb5c5b.js.map → align-floating-elements-e1edfaae.js.map} +1 -1
  337. package/dist/kolibri/alignment-3ca6c7b4.js +4 -0
  338. package/dist/kolibri/alternative-button-link-role-03c7dc90.js +4 -0
  339. package/dist/kolibri/app-globals-b4b6e633.js +4 -0
  340. package/dist/kolibri/{associated.controller-700d5133.js → associated.controller-4abb0353.js} +1 -1
  341. package/dist/kolibri/{color-afc2e34f.js → color-2aa7218a.js} +1 -1
  342. package/dist/kolibri/{controller-6e772d91.js → controller-34abd025.js} +1 -1
  343. package/dist/kolibri/{controller-ae07d1c7.js → controller-7cdc3635.js} +1 -1
  344. package/dist/kolibri/{controller-17eb7878.js → controller-b209b2d8.js} +1 -1
  345. package/dist/kolibri/{controller-60b830eb.js → controller-d02635bf.js} +1 -1
  346. package/dist/kolibri/{controller-e23535f2.js → controller-fe294c60.js} +1 -1
  347. package/dist/kolibri/{controller-icon-01cabd99.js → controller-icon-5be90e84.js} +1 -1
  348. package/dist/kolibri/custom-class-c7f11511.js +4 -0
  349. package/dist/kolibri/{dev.utils-da51d5d8.js → dev.utils-a1ddacb2.js} +1 -1
  350. package/dist/kolibri/dev.utils-a1ddacb2.js.map +1 -0
  351. package/dist/kolibri/devtools-f30e7098.js +4 -0
  352. package/dist/kolibri/devtools-f30e7098.js.map +1 -0
  353. package/dist/kolibri/has-closer-213e1f60.js +4 -0
  354. package/dist/kolibri/{has-closer-091d5cc7.js.map → has-closer-213e1f60.js.map} +1 -1
  355. package/dist/kolibri/hide-label-12ff810a.js +4 -0
  356. package/dist/kolibri/i18n-565c326b.js +4 -0
  357. package/dist/kolibri/i18n-565c326b.js.map +1 -0
  358. package/dist/kolibri/{icons-1ad89985.js → icons-5c4d2e57.js} +1 -1
  359. package/dist/kolibri/image-source-fc1918e2.js +4 -0
  360. package/dist/kolibri/index-5dfe6d77.js +5 -0
  361. package/dist/kolibri/index-5dfe6d77.js.map +1 -0
  362. package/dist/kolibri/{index-9fc5c44a.js → index-b99a7aa5.js} +1 -1
  363. package/dist/kolibri/index-b99a7aa5.js.map +1 -0
  364. package/dist/kolibri/index.esm.js +1 -1
  365. package/dist/kolibri/kol-abbr.entry.js +1 -1
  366. package/dist/kolibri/kol-accordion.entry.js +1 -1
  367. package/dist/kolibri/kol-alert-wc_2.entry.js +1 -1
  368. package/dist/kolibri/kol-alert.entry.js +1 -1
  369. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  370. package/dist/kolibri/kol-avatar.entry.js +1 -1
  371. package/dist/kolibri/kol-badge.entry.js +1 -1
  372. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  373. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  374. package/dist/kolibri/kol-button-group.entry.js +1 -1
  375. package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
  376. package/dist/kolibri/kol-button-link.entry.js +1 -1
  377. package/dist/kolibri/kol-button-wc_2.entry.js +1 -1
  378. package/dist/kolibri/kol-button-wc_2.entry.js.map +1 -1
  379. package/dist/kolibri/kol-button.entry.js +1 -1
  380. package/dist/kolibri/kol-card.entry.js +1 -1
  381. package/dist/kolibri/kol-details.entry.js +1 -1
  382. package/dist/kolibri/kol-form.entry.js +1 -1
  383. package/dist/kolibri/kol-form.entry.js.map +1 -1
  384. package/dist/kolibri/kol-heading.entry.js +1 -1
  385. package/dist/kolibri/kol-icon.entry.js +1 -1
  386. package/dist/kolibri/kol-image.entry.js +1 -1
  387. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  388. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  389. package/dist/kolibri/kol-input-color.entry.js +1 -1
  390. package/dist/kolibri/kol-input-date.entry.js +1 -1
  391. package/dist/kolibri/kol-input-email.entry.js +1 -1
  392. package/dist/kolibri/kol-input-file.entry.js +1 -1
  393. package/dist/kolibri/kol-input-number.entry.js +1 -1
  394. package/dist/kolibri/kol-input-password.entry.js +1 -1
  395. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  396. package/dist/kolibri/kol-input-range.entry.js +1 -1
  397. package/dist/kolibri/kol-input-text.entry.js +1 -1
  398. package/dist/kolibri/kol-input.entry.js +1 -1
  399. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  400. package/dist/kolibri/kol-link-button.entry.js +1 -1
  401. package/dist/kolibri/kol-link-button.entry.js.map +1 -1
  402. package/dist/kolibri/kol-link-group.entry.js +1 -1
  403. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  404. package/dist/kolibri/kol-link-wc.entry.js.map +1 -1
  405. package/dist/kolibri/kol-link.entry.js +1 -1
  406. package/dist/kolibri/kol-link.entry.js.map +1 -1
  407. package/dist/kolibri/kol-logo.entry.js +1 -1
  408. package/dist/kolibri/kol-modal.entry.js +1 -1
  409. package/dist/kolibri/kol-modal.entry.js.map +1 -1
  410. package/dist/kolibri/kol-nav.entry.js +1 -1
  411. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  412. package/dist/kolibri/kol-pagination.entry.js +1 -1
  413. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  414. package/dist/kolibri/kol-progress.entry.js +1 -1
  415. package/dist/kolibri/kol-progress.entry.js.map +1 -1
  416. package/dist/kolibri/kol-quote.entry.js +1 -1
  417. package/dist/kolibri/kol-select.entry.js +1 -1
  418. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  419. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  420. package/dist/kolibri/kol-span.entry.js +1 -1
  421. package/dist/kolibri/kol-spin.entry.js +1 -1
  422. package/dist/kolibri/kol-split-button.entry.js +1 -1
  423. package/dist/kolibri/kol-symbol.entry.js +1 -1
  424. package/dist/kolibri/kol-table.entry.js +1 -1
  425. package/dist/kolibri/kol-table.entry.js.map +1 -1
  426. package/dist/kolibri/kol-tabs.entry.js +1 -1
  427. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  428. package/dist/kolibri/kol-textarea.entry.js +1 -1
  429. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  430. package/dist/kolibri/kol-version.entry.js +1 -1
  431. package/dist/kolibri/kolibri.esm.js +1 -1
  432. package/dist/kolibri/kolibri.esm.js.map +1 -1
  433. package/dist/kolibri/{label-8ddb917e.js → label-5f92bb62.js} +1 -1
  434. package/dist/kolibri/open-215a7ce8.js +4 -0
  435. package/dist/kolibri/{prop.validators-f887ad3b.js → prop.validators-c9100bb0.js} +1 -1
  436. package/dist/kolibri/rows-5e4dff0c.js +4 -0
  437. package/dist/kolibri/show-509c0941.js +4 -0
  438. package/dist/kolibri/{suggestions-40d68773.js → suggestions-9923bbe2.js} +1 -1
  439. package/dist/kolibri/tab-index-4eba9292.js +4 -0
  440. package/dist/kolibri/{tab-index-2206620f.js.map → tab-index-4eba9292.js.map} +1 -1
  441. package/dist/kolibri/tooltip-align-36b445e5.js +4 -0
  442. package/dist/kolibri/{validation-503191a4.js → validation-406b3d9a.js} +1 -1
  443. package/dist/kolibri/validation-7eedde02.js +4 -0
  444. package/dist/types/components/form/component.d.ts +4 -0
  445. package/dist/types/components/form/types.d.ts +2 -1
  446. package/dist/types/components/link/component.d.ts +0 -2
  447. package/dist/types/components/link/shadow.d.ts +0 -1
  448. package/dist/types/components/link/types.d.ts +0 -1
  449. package/dist/types/components/link-button/component.d.ts +0 -1
  450. package/dist/types/components/table/component.d.ts +0 -1
  451. package/dist/types/components.d.ts +10 -24
  452. package/dist/types/i18n.d.ts +1 -1
  453. package/dist/types/locales/de.d.ts +2 -8
  454. package/dist/types/locales/en.d.ts +2 -8
  455. package/dist/types/types/button-link-text.d.ts +0 -1
  456. package/dist/types/types/props/error-list.d.ts +9 -0
  457. package/dist/types/utils/dev.utils.d.ts +2 -2
  458. package/doc/abbr.md +1 -1
  459. package/doc/accordion.md +1 -1
  460. package/doc/alert.md +1 -1
  461. package/doc/avatar.md +1 -1
  462. package/doc/badge.md +1 -1
  463. package/doc/breadcrumb.md +1 -1
  464. package/doc/button-group.md +1 -1
  465. package/doc/button-link.md +1 -1
  466. package/doc/button.md +1 -1
  467. package/doc/card.md +1 -1
  468. package/doc/details.md +1 -1
  469. package/doc/form.md +22 -5
  470. package/doc/heading.md +1 -1
  471. package/doc/icon.md +1 -1
  472. package/doc/indented-text.md +1 -1
  473. package/doc/input-checkbox.md +1 -1
  474. package/doc/input-color.md +1 -1
  475. package/doc/input-date.md +1 -1
  476. package/doc/input-email.md +1 -1
  477. package/doc/input-file.md +1 -1
  478. package/doc/input-number.md +1 -1
  479. package/doc/input-password.md +1 -1
  480. package/doc/input-radio.md +1 -1
  481. package/doc/input-range.md +1 -1
  482. package/doc/input-text.md +1 -1
  483. package/doc/link-button.md +17 -18
  484. package/doc/link-group.md +1 -1
  485. package/doc/link.md +17 -16
  486. package/doc/nav.md +1 -1
  487. package/doc/pagination.md +1 -1
  488. package/doc/quote.md +1 -1
  489. package/doc/select.md +1 -1
  490. package/doc/skip-nav.md +1 -1
  491. package/doc/span.md +1 -1
  492. package/doc/split-button.md +1 -1
  493. package/doc/table.md +3 -1
  494. package/doc/tabs.md +1 -1
  495. package/doc/textarea.md +1 -1
  496. package/doc/toaster.md +7 -1
  497. package/doc/tooltip.md +1 -1
  498. package/doc/version.md +1 -1
  499. package/package.json +1 -1
  500. package/vscode-custom-data.json +0 -8
  501. package/dist/cjs/access-key-08e22c70.js +0 -4
  502. package/dist/cjs/align-floating-elements-dca98687.js.map +0 -1
  503. package/dist/cjs/alternative-button-link-role-46c7e9ff.js +0 -4
  504. package/dist/cjs/custom-class-fe018ec9.js +0 -4
  505. package/dist/cjs/dev.utils-dd133f0a.js.map +0 -1
  506. package/dist/cjs/devtools-59e9f930.js +0 -4
  507. package/dist/cjs/devtools-59e9f930.js.map +0 -1
  508. package/dist/cjs/has-closer-e0792c7f.js +0 -4
  509. package/dist/cjs/hide-label-69a12ef6.js +0 -4
  510. package/dist/cjs/i18n-9b1797b5.js +0 -4
  511. package/dist/cjs/i18n-9b1797b5.js.map +0 -1
  512. package/dist/cjs/image-source-9b7df5ba.js +0 -4
  513. package/dist/cjs/index-814a048a.js.map +0 -1
  514. package/dist/cjs/index-de77e597.js +0 -5
  515. package/dist/cjs/index-de77e597.js.map +0 -1
  516. package/dist/cjs/open-4fe1ba4b.js +0 -4
  517. package/dist/cjs/rows-e1b2cbc4.js +0 -4
  518. package/dist/cjs/show-5514164d.js +0 -4
  519. package/dist/esm/align-floating-elements-cadb5c5b.js.map +0 -1
  520. package/dist/esm/alternative-button-link-role-0fc029bf.js +0 -4
  521. package/dist/esm/custom-class-603a7fda.js +0 -4
  522. package/dist/esm/dev.utils-da51d5d8.js.map +0 -1
  523. package/dist/esm/devtools-308d0386.js +0 -4
  524. package/dist/esm/devtools-308d0386.js.map +0 -1
  525. package/dist/esm/i18n-d92de40a.js +0 -4
  526. package/dist/esm/i18n-d92de40a.js.map +0 -1
  527. package/dist/esm/index-6ea18cec.js +0 -5
  528. package/dist/esm/index-6ea18cec.js.map +0 -1
  529. package/dist/esm/index-9fc5c44a.js +0 -4
  530. package/dist/esm/index-9fc5c44a.js.map +0 -1
  531. package/dist/esm/validation-34db9bcf.js +0 -4
  532. package/dist/kolibri/InternalUnderlinedAccessKey-e3698cee.js +0 -4
  533. package/dist/kolibri/access-key-d70aa275.js +0 -4
  534. package/dist/kolibri/alignment-493b6c84.js +0 -4
  535. package/dist/kolibri/alternative-button-link-role-0fc029bf.js +0 -4
  536. package/dist/kolibri/app-globals-f7f4352c.js +0 -4
  537. package/dist/kolibri/custom-class-603a7fda.js +0 -4
  538. package/dist/kolibri/dev.utils-da51d5d8.js.map +0 -1
  539. package/dist/kolibri/devtools-308d0386.js +0 -4
  540. package/dist/kolibri/devtools-308d0386.js.map +0 -1
  541. package/dist/kolibri/has-closer-091d5cc7.js +0 -4
  542. package/dist/kolibri/hide-label-e711f812.js +0 -4
  543. package/dist/kolibri/i18n-d92de40a.js +0 -4
  544. package/dist/kolibri/i18n-d92de40a.js.map +0 -1
  545. package/dist/kolibri/image-source-f76f6ad4.js +0 -4
  546. package/dist/kolibri/index-6ea18cec.js +0 -5
  547. package/dist/kolibri/index-6ea18cec.js.map +0 -1
  548. package/dist/kolibri/index-9fc5c44a.js.map +0 -1
  549. package/dist/kolibri/open-0bdcff02.js +0 -4
  550. package/dist/kolibri/rows-77cd583c.js +0 -4
  551. package/dist/kolibri/show-8341c904.js +0 -4
  552. package/dist/kolibri/tab-index-2206620f.js +0 -4
  553. package/dist/kolibri/tooltip-align-00398d75.js +0 -4
  554. package/dist/kolibri/validation-34db9bcf.js +0 -4
  555. /package/dist/kolibri/{InternalUnderlinedAccessKey-e3698cee.js.map → InternalUnderlinedAccessKey-3d146073.js.map} +0 -0
  556. /package/dist/kolibri/{a11y.tipps-f367a979.js.map → a11y.tipps-2a54fd3e.js.map} +0 -0
  557. /package/dist/kolibri/{access-key-d70aa275.js.map → access-key-65ff36eb.js.map} +0 -0
  558. /package/dist/kolibri/{alignment-493b6c84.js.map → alignment-3ca6c7b4.js.map} +0 -0
  559. /package/dist/kolibri/{alternative-button-link-role-0fc029bf.js.map → alternative-button-link-role-03c7dc90.js.map} +0 -0
  560. /package/dist/kolibri/{app-globals-f7f4352c.js.map → app-globals-b4b6e633.js.map} +0 -0
  561. /package/dist/kolibri/{associated.controller-700d5133.js.map → associated.controller-4abb0353.js.map} +0 -0
  562. /package/dist/kolibri/{color-afc2e34f.js.map → color-2aa7218a.js.map} +0 -0
  563. /package/dist/kolibri/{controller-6e772d91.js.map → controller-34abd025.js.map} +0 -0
  564. /package/dist/kolibri/{controller-ae07d1c7.js.map → controller-7cdc3635.js.map} +0 -0
  565. /package/dist/kolibri/{controller-17eb7878.js.map → controller-b209b2d8.js.map} +0 -0
  566. /package/dist/kolibri/{controller-60b830eb.js.map → controller-d02635bf.js.map} +0 -0
  567. /package/dist/kolibri/{controller-e23535f2.js.map → controller-fe294c60.js.map} +0 -0
  568. /package/dist/kolibri/{controller-icon-01cabd99.js.map → controller-icon-5be90e84.js.map} +0 -0
  569. /package/dist/kolibri/{custom-class-603a7fda.js.map → custom-class-c7f11511.js.map} +0 -0
  570. /package/dist/kolibri/{hide-label-e711f812.js.map → hide-label-12ff810a.js.map} +0 -0
  571. /package/dist/kolibri/{icons-1ad89985.js.map → icons-5c4d2e57.js.map} +0 -0
  572. /package/dist/kolibri/{image-source-f76f6ad4.js.map → image-source-fc1918e2.js.map} +0 -0
  573. /package/dist/kolibri/{label-8ddb917e.js.map → label-5f92bb62.js.map} +0 -0
  574. /package/dist/kolibri/{open-0bdcff02.js.map → open-215a7ce8.js.map} +0 -0
  575. /package/dist/kolibri/{prop.validators-f887ad3b.js.map → prop.validators-c9100bb0.js.map} +0 -0
  576. /package/dist/kolibri/{rows-77cd583c.js.map → rows-5e4dff0c.js.map} +0 -0
  577. /package/dist/kolibri/{show-8341c904.js.map → show-509c0941.js.map} +0 -0
  578. /package/dist/kolibri/{suggestions-40d68773.js.map → suggestions-9923bbe2.js.map} +0 -0
  579. /package/dist/kolibri/{tooltip-align-00398d75.js.map → tooltip-align-36b445e5.js.map} +0 -0
  580. /package/dist/kolibri/{validation-503191a4.js.map → validation-406b3d9a.js.map} +0 -0
  581. /package/dist/kolibri/{validation-34db9bcf.js.map → validation-7eedde02.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"prop.validators.js","mappings":"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","names":["this","o","y","c","f","rgba","hex","score","patchTheme","patchThemeTag"],"sources":["../../node_modules/.pnpm/loglevel@1.8.1/node_modules/loglevel/lib/loglevel.js","../../node_modules/.pnpm/adopted-style-sheets@1.1.2/node_modules/adopted-style-sheets/dist/index.mjs","src/components/modal/service.ts","src/utils/validator.ts","src/utils/reuse.ts","src/utils/dev.utils.ts","src/utils/a11y.tipps.ts","../../node_modules/.pnpm/query-selector-all-shadow-root@0.0.3/node_modules/query-selector-all-shadow-root/esm/index.js","../../node_modules/.pnpm/query-selector-shadow-root@0.0.3/node_modules/query-selector-shadow-root/esm/index.js","../../node_modules/.pnpm/rgba-convert@0.3.0/node_modules/rgba-convert/index.js","../../node_modules/.pnpm/wcag-contrast@3.0.0/node_modules/wcag-contrast/dist/index.m.js","src/utils/prop.validators.ts"],"sourcesContent":["/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods(level, loggerName) {\n /*jshint validthis:true */\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, loggerName);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName, level, loggerName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this, level, loggerName);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, level, loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, defaultLevel, factory) {\n var self = this;\n var currentLevel;\n defaultLevel = defaultLevel == null ? \"WARN\" : defaultLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var location = cookie.indexOf(\n encodeURIComponent(storageKey) + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(cookie.slice(location))[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n return currentLevel;\n };\n\n self.setLevel = function (level, persist) {\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n currentLevel = level;\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(level);\n }\n replaceLoggingMethods.call(self, level, name);\n if (typeof console === undefinedType && level < self.levels.SILENT) {\n return \"No console available for logging\";\n }\n } else {\n throw \"log.setLevel() called with invalid level: \" + level;\n }\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = level;\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n self.setLevel(defaultLevel, false);\n clearPersistedLevel();\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n // Initialize with the right level\n var initialLevel = getPersistedLevel();\n if (initialLevel == null) {\n initialLevel = defaultLevel;\n }\n self.setLevel(initialLevel, false);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n var defaultLogger = new Logger();\n\n var _loggersByName = {};\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name, defaultLogger.getLevel(), defaultLogger.methodFactory);\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","import y from\"loglevel\";const N=(e,t)=>s=>s(e,t),P=(e,t)=>s=>s(e,t,{append:!1}),o=typeof window==\"object\"?window:typeof global==\"object\"?global:typeof self==\"object\"?self:{};let p=!0,T=!1;const D=/^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/,I=e=>typeof e==\"string\"&&D.test(e),g=e=>{if(I(e)===!1)throw new Error(`[Theming] The theme identifier \"${typeof e==\"string\"?e:\"\"}\" (Type: ${typeof e}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`)},A=(e,t,s,a)=>{a=a??{},a.append=a.append??!1,g(e),p===!0&&T===!1&&(T=!0,y.warn(`[Theming] The theme process is locked. This means that the theme \"${e}\" should not be patched.\n\n\timport { register } from 'adopted-style-sheets';\n\timport { defineCustomElements } from '...';\n\timport { THEME } from '...';\n\n\tregister(THEME, defineCustomElements)\n\t.then(() => {\n\t\t// run your app or website\n\t})\n\t.catch(console.warn);`)),(typeof o.A11yUi!=\"object\"||o.A11yUi===null)&&(o.A11yUi={}),typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&(typeof o.A11yUi.Themes!=\"object\"||o.A11yUi.Themes===null)&&(o.A11yUi.Themes={}),typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Themes==\"object\"&&o.A11yUi.Themes!==null&&(typeof o.A11yUi.Themes[e]!=\"object\"||o.A11yUi.Themes[e]===null)&&(o.A11yUi.Themes[e]={}),typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Themes==\"object\"&&o.A11yUi.Themes!==null&&typeof o.A11yUi.Themes[e]==\"object\"&&o.A11yUi.Themes[e]!==null&&(a.append&&typeof o.A11yUi.Themes[e][t]==\"string\"?o.A11yUi.Themes[e][t]+=s:o.A11yUi.Themes[e][t]=s)},b=(e,t,s)=>(g(e),typeof t==\"object\"&&t!==null&&Object.getOwnPropertyNames(t).forEach(a=>{const r=t[a];typeof r==\"string\"&&r.length>0&&A(e,a,r,s)}),e),U=e=>{if(e instanceof HTMLElement){if(typeof e.dataset.theme==\"string\")return e;{let t=e.parentNode;for(;t instanceof ShadowRoot;)t=t.host;return U(t)}}else return null},E=(e={})=>e.themeEncroachCss===\"false\"||e.themeReset===\"true\"?!1:{mode:e.themeEncroachCssMode===\"after\"||e.themeEncroachCssMode===\"before\"?e.themeEncroachCssMode:\"before\"},w=()=>typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Theme==\"object\"&&o.A11yUi.Theme!==null&&typeof o.A11yUi.Theme.cache==\"boolean\"&&typeof o.A11yUi.Theme.encroachCss==\"object\"&&o.A11yUi.Theme.encroachCss!==null&&typeof o.A11yUi.Theme.encroachCss.mode==\"string\"&&typeof o.A11yUi.Theme.name==\"string\",z=()=>!(typeof o.A11yUi==\"object\"&&o.A11yUi!==null)||!(typeof o.A11yUi.Theme==\"object\"&&o.A11yUi.Theme!==null)||o.A11yUi.Theme.name!==\"default\",S=e=>{if(w())return o.A11yUi.Theme;{const t={cache:!0,encroachCss:E(),loglevel:\"silent\",name:null},s=U(e);return s instanceof HTMLElement&&(t.cache=s.dataset.themeCache!==\"false\",t.encroachCss=E(s.dataset),t.loglevel=s.dataset.themeLoglevel===\"debug\"?s.dataset.themeLoglevel:\"silent\",t.name=s.dataset.theme||null),t}},x=e=>S(e).name,Y=(e,t)=>({cache:t.cache!==!1,detect:t.detect===\"auto\"?\"auto\":\"fixed\",encroachCss:t.encroachCss===!1?!1:typeof t.encroachCss==\"object\"&&t.encroachCss!=null&&(t.encroachCss.mode===\"after\"||t.encroachCss.mode===\"before\")?t.encroachCss:{mode:\"before\"},loglevel:t.loglevel===\"debug\"?t.loglevel:\"silent\",name:typeof t.name==\"string\"?t.name:e}),k=(e,t)=>{w()===!1&&z()&&typeof t==\"object\"&&t!==null&&(t=Y(e,t),t.detect===\"fixed\"?(t.name===null&&typeof e==\"string\"&&(t.name=e),e===t.name&&((typeof o.A11yUi!=\"object\"||o.A11yUi===null)&&(o.A11yUi={}),o.A11yUi.Theme=t,y.info(`[Theming] Theme \"${e}\" was set as default theme.`))):y.warn(\"[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode.\"))};let j=!1;const _=(e,t,s={})=>{j===!1&&(j=!0,p=!1),typeof e==\"function\"?e=new Set([e]):Array.isArray(e)&&(e=new Set(e)),e instanceof Set&&e.forEach(r=>{typeof r==\"function\"&&r.length===1?k(r(b),{cache:s.theme?.cache,detect:s.theme?.detect,encroachCss:s.theme?.encroachCss,name:s.theme?.name}):y.error(\"[Theming] Es wurde versucht eine nicht kompatibles Theme zu laden.\")}),p=!0,typeof t==\"function\"?t=new Set([t]):Array.isArray(t)&&(t=new Set(t));const a=[];return t.forEach(r=>{const n=r();n instanceof Promise&&a.push(n)}),Promise.all(a)},l=class{constructor(e,t){this.store=this.createStore(e,t)}static getInstance(e,t){let s=l.instances.get(e);return s===void 0&&(s=new l(t,e),l.instances.set(e,s)),s}createStore(e,t){return Object.defineProperty(e,t,{enumerable:!1,value:{},writable:!1}),e[t]}recursiveSetItem(e,t,s,a=l.options){let r=typeof s==\"object\"&&s!==null?{}:s;if(Object.defineProperty(e,t,{enumerable:a.enumerable===!0,get:()=>r,set:a.immutable===!0?void 0:n=>r=n}),typeof s==\"object\"&&s!==null)for(const[n,i]of Object.entries(s))this.recursiveSetItem(e[t],n,i,a)}setItem(e,t,s=l.options){return this.recursiveSetItem(this.store,e,t,s),this}getItem(e){return Array.isArray(e)?e.map(t=>this.getItem(t)):this.store[e]}};let u=l;u.options={enumerable:!1,immutable:!1},u.instances=new Map;const c=new Map,C=[],v=new Set,h=new Map,B=/--[^;]+/g,G=/:/;(typeof o.A11yUi!=\"object\"||o.A11yUi===null)&&(o.A11yUi={CSS_STYLE_CACHE:h,HYDRATED_HISTORY:C,STYLING_TASK_QUEUE:c});const K=(e,t)=>{let s=t.match(B);if(Array.isArray(s)){s=s.filter(r=>G.test(r));const a=document.createElement(\"style\");a.innerHTML=`.${e} {${s.join(\";\")}}`,document.querySelector(\"head\")?.appendChild(a)}v.add(e)},d=(e,t)=>typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Themes==\"object\"&&o.A11yUi.Themes!==null&&typeof o.A11yUi.Themes[e]==\"object\"&&o.A11yUi.Themes[e]!==null&&typeof o.A11yUi.Themes[e][t]==\"string\"?o.A11yUi.Themes[e][t].replace(/\\r?\\n/g,\"\"):\"\",q=e=>{for(const t of Array.from(e.childNodes))if(t instanceof HTMLStyleElement&&t.tagName===\"STYLE\")e.removeChild(t);else break},F=(e,t)=>{try{const s=[];t.forEach(a=>{const r=new CSSStyleSheet;r.replaceSync(a),s.push(r)}),e.adoptedStyleSheets=s}catch{t.reverse().forEach(s=>{const a=document.createElement(\"style\");a.innerHTML=s,e.insertBefore(a,e.firstChild)})}},Q=(e,t,s)=>{if(s!==!1){const a=[...Array.from(e.childNodes).filter(n=>n instanceof HTMLStyleElement&&n.tagName===\"STYLE\")];let r;try{r=[...Array.from(e.adoptedStyleSheets)]}catch{r=[]}s?.mode===\"before\"?(a.reverse().forEach(n=>t.unshift(n.innerHTML)),r.reverse().forEach(n=>t.unshift(Array.from(n.cssRules).map(i=>i.cssText).join(\"\")))):s?.mode===\"after\"&&(a.forEach(n=>t.push(n.innerHTML)),r.forEach(n=>t.push(Array.from(n.cssRules).map(i=>i.cssText).join(\"\"))))}},L=(e,t,s)=>{const a=t.name||\"default\";let r;try{if(e.shadowRoot===null)throw new Error(\"ShadowRoot is null\");r=e.shadowRoot}catch{r=e}if(h.get(a)?.has(e.tagName))M(e,r,h.get(a)?.get(e.tagName),s);else{const n=d(a,\"PROPERTIES\"),i=d(a,\"GLOBAL\"),H=d(a,e.tagName);v.has(a)===!1&&K(a,i);const m=[n,i,H];Q(r,m,t.encroachCss),t.loglevel===\"debug\"&&console.log(e.tagName,m),t.cache===!0&&(h.has(a)===!1&&h.set(a,new Map),h.get(a)?.set(e.tagName,m)),M(e,r,m,s)}},M=(e,t,s,a)=>{q(t),F(t,s),e.style.display=a},$=e=>{e.loglevel===\"debug\"&&C.push({timestamp:Date.now(),numberOfTasks:c.size})},J=(e,t)=>{c.set(e,{styleDisplay:e.style.display?`${e.style.display}`:null,themeDetails:t})},V=(e,t)=>{J(e,t),$(t)},W=e=>{c.delete(e)},O=(e,t)=>{W(e),$(t)},R=e=>{const t=setTimeout(()=>{if(clearTimeout(t),c.has(e)&&e.classList.contains(\"hydrated\")){const{styleDisplay:s,themeDetails:a}=c.get(e);L(e,a,s),O(e,a)}else R(e)},25)},X=e=>{for(const t of e)if(c.has(t.target)&&t.target.classList.contains(\"hydrated\")){const{styleDisplay:s,themeDetails:a}=c.get(t.target);L(t.target,a,s),O(t.target,a)}},Z={attributes:!0,attributeFilter:[\"class\"],childList:!1,subtree:!1};let f;try{f=new MutationObserver(X)}catch{f=null}const ee=(e,t)=>{V(e,t),f?f.observe(e,Z):R(e),e.style.display=\"none\"};class te{constructor(t,s,a){this.createTheme=(r,n)=>P(r,n),this.createTranslation=(r,n)=>N(r,n),this.Prefix=t,this.Key=Object.getOwnPropertyNames(s),this.Tag=Object.getOwnPropertyNames(a)}}export{u as RobustStore,o as STORE,te as Theme,x as getTheme,S as getThemeDetails,b as patchTheme,A as patchThemeTag,_ as register,ee as setThemeStyle};\n","import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\ttry {\n\t\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t/**\n\t\t\t * Try is needed for SSR.\n\t\t\t * - no HTMLElement is available\n\t\t\t * - no ShadowRoot is available\n\t\t\t */\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","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","import { isObject } from './validator';\n\nexport const propagateFocus = <H extends HTMLElement, R extends HTMLElement>(host?: H, ref?: R) => {\n\tif (isObject(host) && host) {\n\t\thost.focus = (ops: FocusOptions) => ref?.focus(ops);\n\t}\n};\n\nconst PROCESS_ENVS = ['development', 'production', 'test'] as const;\ntype ProcessEnv = (typeof PROCESS_ENVS)[number];\nexport let processEnv: ProcessEnv = 'development';\ntry {\n\tprocessEnv = process.env.NODE_ENV as ProcessEnv;\n} catch (e) {\n\tprocessEnv = 'production';\n}\n\n/**\n * This function is used to handle the slot content by\n * moving a DOM element to a defined slot element.\n */\nexport const handleSlotContent = (hostRef: HTMLElement, slotRef: HTMLElement, slotName: string) => {\n\tif (hostRef && slotRef && typeof slotName === 'string') {\n\t\tconst content = hostRef.querySelector(`[slot=\"${slotName}\"]`);\n\t\tif (content) {\n\t\t\tslotRef.appendChild(content);\n\t\t}\n\t}\n};\n\n/**\n * This function is used to check if a label is an empty string.\n * @param label The label of the slot\n * @returns True if the label is an empty string\n */\nexport const showExpertSlot = (label: unknown) => label === '';\n","import { ModalService } from '../components/modal/service';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\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 getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nconst KoliBri: Record<string, unknown> = {};\nObject.defineProperty(window, 'KoliBri', {\n\tget: function () {\n\t\treturn KoliBri;\n\t},\n});\nexport const initKoliBri = (): void => {\n\tif (KoliBri.Modal === undefined) {\n\t\tconst Modal = new ModalService();\n\t\tObject.defineProperty(KoliBri, 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 2.0.1\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { KoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getWindow().KoliBri === undefined) {\n\t\tObject.defineProperty(window, 'KoliBri', {\n\t\t\tget: function () {\n\t\t\t\treturn KoliBri;\n\t\t\t},\n\t\t});\n\t}\n\tif (KoliBri.adviceShown !== true) {\n\t\tObject.defineProperty(KoliBri, 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n","import { Log } from './dev.utils';\n\ntype HintOptions = {\n\tdetails?: unknown[];\n\tforce?: boolean;\n};\n\nconst a11yCache: Set<string> = new Set();\nexport const a11yHint = (msg: string, options?: HintOptions): void => {\n\tif (a11yCache.has(msg) === false || !!options?.force) {\n\t\ta11yCache.add(msg);\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `✋ a11y`,\n\t\t\toverwriteStyle: '; background-color: #09f',\n\t\t});\n\t}\n};\n\n// const deprecatedCache: Set<string> = new Set();\n// export const deprecatedHint = (msg: string, options?: HintOptions): void => {\n// \tif (deprecatedCache.has(msg) === false || !!options?.force) {\n// \t\tdeprecatedCache.add(msg);\n// \t\tLog.warn(([msg] as unknown[]).concat(options?.details || []), {\n// \t\t\tclassifier: `🔥 deprecated`,\n// \t\t\toverwriteStyle: '; background-color: #f00',\n// \t\t});\n// \t}\n// };\n\nconst devCache: Set<string> = new Set();\nexport const devHint = (msg: string, options?: HintOptions): void => {\n\tif (devCache.has(msg) === false || !!options?.force) {\n\t\tdevCache.add(msg);\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `💻 dev`,\n\t\t\toverwriteStyle: '; background-color: #f09',\n\t\t});\n\t}\n};\nexport const devWarning = (msg: string, options?: HintOptions): void => {\n\tif (devCache.has(msg) === false || !!options?.force) {\n\t\tdevCache.add(msg);\n\t\tLog.warn(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `💻 dev`,\n\t\t\toverwriteStyle: '; background-color: #f09',\n\t\t});\n\t}\n};\n\nconst featureCache: Set<string> = new Set();\nexport const featureHint = (msg: string, done = false, options?: HintOptions): void => {\n\tif (featureCache.has(msg) === false || !!options?.force) {\n\t\tfeatureCache.add(msg);\n\t\tmsg += done === true ? ' ✅' : '';\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `🌟 feature`,\n\t\t\toverwriteStyle: '; background-color: #309',\n\t\t});\n\t}\n};\ndevHint(\n\t`Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!`\n);\n\nconst uiUxCache: Set<string> = new Set();\nexport const uiUxHint = (msg: string, options?: HintOptions): void => {\n\tif (uiUxCache.has(msg) === false || !!options?.force) {\n\t\tuiUxCache.add(msg);\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `📑 ui/ux`,\n\t\t\toverwriteStyle: '; background-color: #060;',\n\t\t});\n\t}\n};\n\nexport const a11yHintDisabled = (): void => {\n\ta11yHint(\n\t\t`\"Disabled\" schränkt die Zugänglichkeit und Sichtbarkeit ein. Wir empfehlen aus Sicht der Barrierefreiheit readonly- statt disabled-Attribut zu verwenden.\\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae`\n\t);\n};\n\nexport const a11yHintLabelingLandmarks = (value: unknown): void => {\n\tif (typeof value !== 'string' || value === '') {\n\t\ta11yHint(\n\t\t\t`Manche Strukturelemente, wie bspw. der nav-Tag, können mehrfach in einer Webseite verwendet werden. Damit die gleichnamigen Strukturelemente voneinander unterschieden werden können, ist es erforderlich ein Aria-Label zu setzen.\\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns`\n\t\t);\n\t}\n};\n\nexport const uiUxHintMillerscheZahl = (className: string, length = 8): void => {\n\tif (length > 7) {\n\t\tuiUxHint(\n\t\t\t`[${className}] Innerhalb von Navigationsstrukturen wird empfohlen nicht mehr als 7 Menüpunkte zu verwenden.\n\nLinks:\n- https://de.ryte.com/wiki/Millersche_Zahl\n- https://de.wikipedia.org/wiki/Millersche_Zahl`\n\t\t);\n\t}\n};\n","const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\n\nimport { Generic, patchTheme, patchThemeTag } from 'adopted-style-sheets';\n\nimport { Stringified } from '../types/common';\nimport { StencilUnknown } from '../types/unknown';\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimentalMode, Log } from './dev.utils';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimentalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: StencilUnknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<StencilUnknown>(value);\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}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (&#8216;).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}
1
+ {"file":"prop.validators.js","mappings":"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","names":["this","o","y","c","f","rgba","hex","score","patchTheme","patchThemeTag"],"sources":["../../node_modules/.pnpm/loglevel@1.8.1/node_modules/loglevel/lib/loglevel.js","../../node_modules/.pnpm/adopted-style-sheets@1.1.3/node_modules/adopted-style-sheets/dist/index.mjs","src/components/modal/service.ts","src/utils/validator.ts","src/utils/reuse.ts","src/utils/dev.utils.ts","src/utils/a11y.tipps.ts","../../node_modules/.pnpm/query-selector-all-shadow-root@0.0.3/node_modules/query-selector-all-shadow-root/esm/index.js","../../node_modules/.pnpm/query-selector-shadow-root@0.0.3/node_modules/query-selector-shadow-root/esm/index.js","../../node_modules/.pnpm/rgba-convert@0.3.0/node_modules/rgba-convert/index.js","../../node_modules/.pnpm/wcag-contrast@3.0.0/node_modules/wcag-contrast/dist/index.m.js","src/utils/prop.validators.ts"],"sourcesContent":["/*\n* loglevel - https://github.com/pimterry/loglevel\n*\n* Copyright (c) 2013 Tim Perry\n* Licensed under the MIT license.\n*/\n(function (root, definition) {\n \"use strict\";\n if (typeof define === 'function' && define.amd) {\n define(definition);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = definition();\n } else {\n root.log = definition();\n }\n}(this, function () {\n \"use strict\";\n\n // Slightly dubious tricks to cut down minimized file size\n var noop = function() {};\n var undefinedType = \"undefined\";\n var isIE = (typeof window !== undefinedType) && (typeof window.navigator !== undefinedType) && (\n /Trident\\/|MSIE /.test(window.navigator.userAgent)\n );\n\n var logMethods = [\n \"trace\",\n \"debug\",\n \"info\",\n \"warn\",\n \"error\"\n ];\n\n // Cross-browser bind equivalent that works at least back to IE6\n function bindMethod(obj, methodName) {\n var method = obj[methodName];\n if (typeof method.bind === 'function') {\n return method.bind(obj);\n } else {\n try {\n return Function.prototype.bind.call(method, obj);\n } catch (e) {\n // Missing bind shim or IE8 + Modernizr, fallback to wrapping\n return function() {\n return Function.prototype.apply.apply(method, [obj, arguments]);\n };\n }\n }\n }\n\n // Trace() doesn't print the message in IE, so for that case we need to wrap it\n function traceForIE() {\n if (console.log) {\n if (console.log.apply) {\n console.log.apply(console, arguments);\n } else {\n // In old IE, native console methods themselves don't have apply().\n Function.prototype.apply.apply(console.log, [console, arguments]);\n }\n }\n if (console.trace) console.trace();\n }\n\n // Build the best logging method possible for this env\n // Wherever possible we want to bind, not wrap, to preserve stack traces\n function realMethod(methodName) {\n if (methodName === 'debug') {\n methodName = 'log';\n }\n\n if (typeof console === undefinedType) {\n return false; // No method possible, for now - fixed later by enableLoggingWhenConsoleArrives\n } else if (methodName === 'trace' && isIE) {\n return traceForIE;\n } else if (console[methodName] !== undefined) {\n return bindMethod(console, methodName);\n } else if (console.log !== undefined) {\n return bindMethod(console, 'log');\n } else {\n return noop;\n }\n }\n\n // These private functions always need `this` to be set properly\n\n function replaceLoggingMethods(level, loggerName) {\n /*jshint validthis:true */\n for (var i = 0; i < logMethods.length; i++) {\n var methodName = logMethods[i];\n this[methodName] = (i < level) ?\n noop :\n this.methodFactory(methodName, level, loggerName);\n }\n\n // Define log.log as an alias for log.debug\n this.log = this.debug;\n }\n\n // In old IE versions, the console isn't present until you first open it.\n // We build realMethod() replacements here that regenerate logging methods\n function enableLoggingWhenConsoleArrives(methodName, level, loggerName) {\n return function () {\n if (typeof console !== undefinedType) {\n replaceLoggingMethods.call(this, level, loggerName);\n this[methodName].apply(this, arguments);\n }\n };\n }\n\n // By default, we use closely bound real methods wherever possible, and\n // otherwise we wait for a console to appear, and then try again.\n function defaultMethodFactory(methodName, level, loggerName) {\n /*jshint validthis:true */\n return realMethod(methodName) ||\n enableLoggingWhenConsoleArrives.apply(this, arguments);\n }\n\n function Logger(name, defaultLevel, factory) {\n var self = this;\n var currentLevel;\n defaultLevel = defaultLevel == null ? \"WARN\" : defaultLevel;\n\n var storageKey = \"loglevel\";\n if (typeof name === \"string\") {\n storageKey += \":\" + name;\n } else if (typeof name === \"symbol\") {\n storageKey = undefined;\n }\n\n function persistLevelIfPossible(levelNum) {\n var levelName = (logMethods[levelNum] || 'silent').toUpperCase();\n\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage[storageKey] = levelName;\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=\" + levelName + \";\";\n } catch (ignore) {}\n }\n\n function getPersistedLevel() {\n var storedLevel;\n\n if (typeof window === undefinedType || !storageKey) return;\n\n try {\n storedLevel = window.localStorage[storageKey];\n } catch (ignore) {}\n\n // Fallback to cookies if local storage gives us nothing\n if (typeof storedLevel === undefinedType) {\n try {\n var cookie = window.document.cookie;\n var location = cookie.indexOf(\n encodeURIComponent(storageKey) + \"=\");\n if (location !== -1) {\n storedLevel = /^([^;]+)/.exec(cookie.slice(location))[1];\n }\n } catch (ignore) {}\n }\n\n // If the stored level is not valid, treat it as if nothing was stored.\n if (self.levels[storedLevel] === undefined) {\n storedLevel = undefined;\n }\n\n return storedLevel;\n }\n\n function clearPersistedLevel() {\n if (typeof window === undefinedType || !storageKey) return;\n\n // Use localStorage if available\n try {\n window.localStorage.removeItem(storageKey);\n return;\n } catch (ignore) {}\n\n // Use session cookie as fallback\n try {\n window.document.cookie =\n encodeURIComponent(storageKey) + \"=; expires=Thu, 01 Jan 1970 00:00:00 UTC\";\n } catch (ignore) {}\n }\n\n /*\n *\n * Public logger API - see https://github.com/pimterry/loglevel for details\n *\n */\n\n self.name = name;\n\n self.levels = { \"TRACE\": 0, \"DEBUG\": 1, \"INFO\": 2, \"WARN\": 3,\n \"ERROR\": 4, \"SILENT\": 5};\n\n self.methodFactory = factory || defaultMethodFactory;\n\n self.getLevel = function () {\n return currentLevel;\n };\n\n self.setLevel = function (level, persist) {\n if (typeof level === \"string\" && self.levels[level.toUpperCase()] !== undefined) {\n level = self.levels[level.toUpperCase()];\n }\n if (typeof level === \"number\" && level >= 0 && level <= self.levels.SILENT) {\n currentLevel = level;\n if (persist !== false) { // defaults to true\n persistLevelIfPossible(level);\n }\n replaceLoggingMethods.call(self, level, name);\n if (typeof console === undefinedType && level < self.levels.SILENT) {\n return \"No console available for logging\";\n }\n } else {\n throw \"log.setLevel() called with invalid level: \" + level;\n }\n };\n\n self.setDefaultLevel = function (level) {\n defaultLevel = level;\n if (!getPersistedLevel()) {\n self.setLevel(level, false);\n }\n };\n\n self.resetLevel = function () {\n self.setLevel(defaultLevel, false);\n clearPersistedLevel();\n };\n\n self.enableAll = function(persist) {\n self.setLevel(self.levels.TRACE, persist);\n };\n\n self.disableAll = function(persist) {\n self.setLevel(self.levels.SILENT, persist);\n };\n\n // Initialize with the right level\n var initialLevel = getPersistedLevel();\n if (initialLevel == null) {\n initialLevel = defaultLevel;\n }\n self.setLevel(initialLevel, false);\n }\n\n /*\n *\n * Top-level API\n *\n */\n\n var defaultLogger = new Logger();\n\n var _loggersByName = {};\n defaultLogger.getLogger = function getLogger(name) {\n if ((typeof name !== \"symbol\" && typeof name !== \"string\") || name === \"\") {\n throw new TypeError(\"You must supply a name when creating a logger.\");\n }\n\n var logger = _loggersByName[name];\n if (!logger) {\n logger = _loggersByName[name] = new Logger(\n name, defaultLogger.getLevel(), defaultLogger.methodFactory);\n }\n return logger;\n };\n\n // Grab the current global log variable in case of overwrite\n var _log = (typeof window !== undefinedType) ? window.log : undefined;\n defaultLogger.noConflict = function() {\n if (typeof window !== undefinedType &&\n window.log === defaultLogger) {\n window.log = _log;\n }\n\n return defaultLogger;\n };\n\n defaultLogger.getLoggers = function getLoggers() {\n return _loggersByName;\n };\n\n // ES6 default export, for compatibility\n defaultLogger['default'] = defaultLogger;\n\n return defaultLogger;\n}));\n","import y from\"loglevel\";const N=(e,t)=>s=>s(e,t),P=(e,t)=>s=>s(e,t,{append:!1}),o=typeof window==\"object\"?window:typeof global==\"object\"?global:typeof self==\"object\"?self:{};let p=!0,T=!1;const D=/^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/,I=e=>typeof e==\"string\"&&D.test(e),g=e=>{if(I(e)===!1)throw new Error(`[Theming] The theme identifier \"${typeof e==\"string\"?e:\"\"}\" (Type: ${typeof e}) is not valid. Please use only follow this pattern: /^[a-z][a-z0-9]{1,}(-[a-z0-9]+)?$/`)},A=(e,t,s,a)=>{a=a??{},a.append=a.append??!1,g(e),p===!0&&T===!1&&(T=!0,y.warn(`[Theming] The theme process is locked. This means that the theme \"${e}\" should not be patched.\n\n\timport { register } from 'adopted-style-sheets';\n\timport { defineCustomElements } from '...';\n\timport { THEME } from '...';\n\n\tregister(THEME, defineCustomElements)\n\t.then(() => {\n\t\t// run your app or website\n\t})\n\t.catch(console.warn);`)),(typeof o.A11yUi!=\"object\"||o.A11yUi===null)&&(o.A11yUi={}),typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&(typeof o.A11yUi.Themes!=\"object\"||o.A11yUi.Themes===null)&&(o.A11yUi.Themes={}),typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Themes==\"object\"&&o.A11yUi.Themes!==null&&(typeof o.A11yUi.Themes[e]!=\"object\"||o.A11yUi.Themes[e]===null)&&(o.A11yUi.Themes[e]={}),typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Themes==\"object\"&&o.A11yUi.Themes!==null&&typeof o.A11yUi.Themes[e]==\"object\"&&o.A11yUi.Themes[e]!==null&&(a.append&&typeof o.A11yUi.Themes[e][t]==\"string\"?o.A11yUi.Themes[e][t]+=s:o.A11yUi.Themes[e][t]=s)},b=(e,t,s)=>(g(e),typeof t==\"object\"&&t!==null&&Object.getOwnPropertyNames(t).forEach(a=>{const r=t[a];typeof r==\"string\"&&r.length>0&&A(e,a,r,s)}),e),U=e=>{if(e instanceof HTMLElement){if(typeof e.dataset.theme==\"string\")return e;{let t=e.parentNode;for(;t instanceof ShadowRoot;)t=t.host;return U(t)}}else return null},E=(e={})=>e.themeEncroachCss===\"false\"||e.themeReset===\"true\"?!1:{mode:e.themeEncroachCssMode===\"after\"||e.themeEncroachCssMode===\"before\"?e.themeEncroachCssMode:\"before\"},w=()=>typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Theme==\"object\"&&o.A11yUi.Theme!==null&&typeof o.A11yUi.Theme.cache==\"boolean\"&&typeof o.A11yUi.Theme.encroachCss==\"object\"&&o.A11yUi.Theme.encroachCss!==null&&typeof o.A11yUi.Theme.encroachCss.mode==\"string\"&&typeof o.A11yUi.Theme.name==\"string\",z=()=>!(typeof o.A11yUi==\"object\"&&o.A11yUi!==null)||!(typeof o.A11yUi.Theme==\"object\"&&o.A11yUi.Theme!==null)||o.A11yUi.Theme.name!==\"default\",S=e=>{if(w())return o.A11yUi.Theme;{const t={cache:!0,encroachCss:E(),loglevel:\"silent\",name:null},s=U(e);return s instanceof HTMLElement&&(t.cache=s.dataset.themeCache!==\"false\",t.encroachCss=E(s.dataset),t.loglevel=s.dataset.themeLoglevel===\"debug\"?s.dataset.themeLoglevel:\"silent\",t.name=s.dataset.theme||null),t}},x=e=>S(e).name,Y=(e,t)=>({cache:t.cache!==!1,detect:t.detect===\"auto\"?\"auto\":\"fixed\",encroachCss:t.encroachCss===!1?!1:typeof t.encroachCss==\"object\"&&t.encroachCss!=null&&(t.encroachCss.mode===\"after\"||t.encroachCss.mode===\"before\")?t.encroachCss:{mode:\"before\"},loglevel:t.loglevel===\"debug\"?t.loglevel:\"silent\",name:typeof t.name==\"string\"?t.name:e}),k=(e,t)=>{w()===!1&&z()&&typeof t==\"object\"&&t!==null&&(t=Y(e,t),t.detect===\"fixed\"?(t.name===null&&typeof e==\"string\"&&(t.name=e),e===t.name&&((typeof o.A11yUi!=\"object\"||o.A11yUi===null)&&(o.A11yUi={}),o.A11yUi.Theme=t,y.info(`[Theming] Theme \"${e}\" was set as default theme.`))):y.warn(\"[Theming] The presetting of theme options is only relevant by using 'fixed' detection mode.\"))};let j=!1;const _=(e,t,s={})=>{j===!1&&(j=!0,p=!1),typeof e==\"function\"?e=new Set([e]):Array.isArray(e)&&(e=new Set(e)),e instanceof Set&&e.forEach(r=>{typeof r==\"function\"&&r.length===1?k(r(b),{cache:s.theme?.cache,detect:s.theme?.detect,encroachCss:s.theme?.encroachCss,name:s.theme?.name}):y.error(\"[Theming] Es wurde versucht eine nicht kompatibles Theme zu laden.\")}),p=!0,typeof t==\"function\"?t=new Set([t]):Array.isArray(t)&&(t=new Set(t));const a=[];return t.forEach(r=>{const n=r();n instanceof Promise&&a.push(n)}),Promise.all(a)},l=class{constructor(e,t){this.store=this.createStore(e,t)}static getInstance(e,t){let s=l.instances.get(e);return s===void 0&&(s=new l(t,e),l.instances.set(e,s)),s}createStore(e,t){return Object.defineProperty(e,t,{enumerable:!1,value:{},writable:!1}),e[t]}recursiveSetItem(e,t,s,a=l.options){let r=typeof s==\"object\"&&s!==null?{}:s;if(Object.defineProperty(e,t,{enumerable:a.enumerable===!0,get:()=>r,set:a.immutable===!0?void 0:n=>r=n}),typeof s==\"object\"&&s!==null)for(const[n,i]of Object.entries(s))this.recursiveSetItem(e[t],n,i,a)}setItem(e,t,s=l.options){return this.recursiveSetItem(this.store,e,t,s),this}getItem(e){return Array.isArray(e)?e.map(t=>this.getItem(t)):this.store[e]}};let u=l;u.options={enumerable:!1,immutable:!1},u.instances=new Map;const c=new Map,C=[],v=new Set,h=new Map,B=/--[^;]+/g,G=/:/;(typeof o.A11yUi!=\"object\"||o.A11yUi===null)&&(o.A11yUi={CSS_STYLE_CACHE:h,HYDRATED_HISTORY:C,STYLING_TASK_QUEUE:c});const K=(e,t)=>{let s=t.match(B);if(Array.isArray(s)){s=s.filter(r=>G.test(r));const a=document.createElement(\"style\");a.innerHTML=`.${e} {${s.join(\";\")}}`,document.querySelector(\"head\")?.appendChild(a)}v.add(e)},d=(e,t)=>typeof o.A11yUi==\"object\"&&o.A11yUi!==null&&typeof o.A11yUi.Themes==\"object\"&&o.A11yUi.Themes!==null&&typeof o.A11yUi.Themes[e]==\"object\"&&o.A11yUi.Themes[e]!==null&&typeof o.A11yUi.Themes[e][t]==\"string\"?o.A11yUi.Themes[e][t].replace(/\\r?\\n/g,\"\"):\"\",q=e=>{for(const t of Array.from(e.childNodes))if(t instanceof HTMLStyleElement&&t.tagName===\"STYLE\")e.removeChild(t);else break},F=(e,t)=>{try{const s=[];t.forEach(a=>{const r=new CSSStyleSheet;r.replaceSync(a),s.push(r)}),e.adoptedStyleSheets=s}catch{t.reverse().forEach(s=>{const a=document.createElement(\"style\");a.innerHTML=s,e.insertBefore(a,e.firstChild)})}},Q=(e,t,s)=>{if(s!==!1){const a=[...Array.from(e.childNodes).filter(n=>n instanceof HTMLStyleElement&&n.tagName===\"STYLE\")];let r;try{r=[...Array.from(e.adoptedStyleSheets)]}catch{r=[]}s?.mode===\"before\"?(a.reverse().forEach(n=>t.unshift(n.innerHTML)),r.reverse().forEach(n=>t.unshift(Array.from(n.cssRules).map(i=>i.cssText).join(\"\")))):s?.mode===\"after\"&&(a.forEach(n=>t.push(n.innerHTML)),r.forEach(n=>t.push(Array.from(n.cssRules).map(i=>i.cssText).join(\"\"))))}},L=(e,t,s)=>{const a=t.name||\"default\";let r;try{if(e.shadowRoot===null)throw new Error(\"ShadowRoot is null\");r=e.shadowRoot}catch{r=e}if(h.get(a)?.has(e.tagName))M(e,r,h.get(a)?.get(e.tagName),s);else{const n=d(a,\"PROPERTIES\"),i=d(a,\"GLOBAL\"),H=d(a,e.tagName);v.has(a)===!1&&K(a,i);const m=[n,i,H];Q(r,m,t.encroachCss),t.loglevel===\"debug\"&&console.log(e.tagName,m),t.cache===!0&&(h.has(a)===!1&&h.set(a,new Map),h.get(a)?.set(e.tagName,m)),M(e,r,m,s)}},M=(e,t,s,a)=>{q(t),F(t,s),e.style.display=a},$=e=>{e.loglevel===\"debug\"&&C.push({timestamp:Date.now(),numberOfTasks:c.size})},J=(e,t)=>{c.set(e,{styleDisplay:e.style.display?`${e.style.display}`:null,themeDetails:t})},V=(e,t)=>{J(e,t),$(t)},W=e=>{c.delete(e)},O=(e,t)=>{W(e),$(t)},R=e=>{const t=setTimeout(()=>{if(clearTimeout(t),c.has(e)&&e.classList.contains(\"hydrated\")){const{styleDisplay:s,themeDetails:a}=c.get(e);L(e,a,s),O(e,a)}else R(e)},25)},X=e=>{for(const t of e)if(c.has(t.target)&&t.target.classList.contains(\"hydrated\")){const{styleDisplay:s,themeDetails:a}=c.get(t.target);L(t.target,a,s),O(t.target,a)}},Z={attributes:!0,attributeFilter:[\"class\"],childList:!1,subtree:!1};let f;try{f=new MutationObserver(X)}catch{f=null}const ee=(e,t)=>{V(e,t),f?f.observe(e,Z):R(e),e.style.display=\"none\"};class te{constructor(t,s,a){this.createTheme=(r,n)=>P(r,n),this.createTranslation=(r,n)=>N(r,n),this.Prefix=t,this.Key=Object.getOwnPropertyNames(s),this.Tag=Object.getOwnPropertyNames(a)}}export{u as RobustStore,o as STORE,te as Theme,x as getTheme,S as getThemeDetails,b as patchTheme,A as patchThemeTag,_ as register,ee as setThemeStyle};\n","import { getDocument, Log } from '../../utils/dev.utils';\n\ntype ModalContext = {\n\tactiveElement?: HTMLElement;\n};\n\ntype LockedElementContext = {\n\ttabIndex?: string;\n};\n\n/**\n * The modal service is only working client-side!\n */\nexport class ModalService {\n\tprivate lockedElements: Map<HTMLElement, LockedElementContext> = new Map();\n\tprivate modalStack: Map<HTMLElement, ModalContext> = new Map();\n\n\tprivate lockElement(htmlElement: HTMLElement) {\n\t\tconst tabIndex: string | null = htmlElement.getAttribute('tabindex');\n\t\tif (\n\t\t\thtmlElement instanceof HTMLAnchorElement ||\n\t\t\thtmlElement instanceof HTMLButtonElement ||\n\t\t\thtmlElement instanceof HTMLInputElement ||\n\t\t\thtmlElement instanceof HTMLSelectElement ||\n\t\t\thtmlElement instanceof HTMLTextAreaElement ||\n\t\t\ttypeof tabIndex === 'string' ||\n\t\t\thtmlElement.dataset.kolModal !== undefined\n\t\t) {\n\t\t\tif (typeof tabIndex === 'string') {\n\t\t\t\tthis.lockedElements.set(htmlElement, {\n\t\t\t\t\ttabIndex,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.lockedElements.set(htmlElement, {});\n\t\t\t}\n\t\t\thtmlElement.setAttribute('tabindex', '-1');\n\t\t\thtmlElement.setAttribute('aria-hidden', 'true');\n\t\t\thtmlElement.style.userSelect = 'none';\n\t\t}\n\t}\n\n\tprivate unlockElement(value: LockedElementContext, htmlElement: HTMLElement) {\n\t\tif (typeof value.tabIndex === 'string') {\n\t\t\thtmlElement.setAttribute('tabindex', value.tabIndex);\n\t\t} else {\n\t\t\thtmlElement.removeAttribute('tabindex');\n\t\t}\n\t\thtmlElement.removeAttribute('aria-hidden');\n\t\thtmlElement.style.userSelect = 'unset';\n\t\tthis.lockedElements.delete(htmlElement);\n\t}\n\n\tprivate unlockLockedElements(lockedElements: Map<HTMLElement, LockedElementContext>) {\n\t\tlockedElements.forEach(this.unlockElement.bind(this));\n\t}\n\n\tprivate lockFocus(hostElement: HTMLElement | ShadowRoot | null, excludeElement?: HTMLElement) {\n\t\ttry {\n\t\t\tif (hostElement !== excludeElement && (hostElement instanceof HTMLElement || hostElement instanceof ShadowRoot)) {\n\t\t\t\tif (hostElement instanceof HTMLElement) {\n\t\t\t\t\tthis.lockElement(hostElement);\n\t\t\t\t\tthis.lockFocus(hostElement.shadowRoot, excludeElement);\n\t\t\t\t}\n\t\t\t\tfor (let i = 0; i < hostElement.children.length; i++) {\n\t\t\t\t\tthis.lockFocus(hostElement.children[i] as HTMLElement, excludeElement);\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t/**\n\t\t\t * Try is needed for SSR.\n\t\t\t * - no HTMLElement is available\n\t\t\t * - no ShadowRoot is available\n\t\t\t */\n\t\t}\n\t}\n\n\tprivate renderModalIfExists(activeElement?: HTMLElement) {\n\t\tif (activeElement instanceof HTMLElement) {\n\t\t\tif (this.lockedElements.has(activeElement)) {\n\t\t\t\tthis.unlockElement(this.lockedElements.get(activeElement) as LockedElementContext, activeElement);\n\t\t\t}\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tactiveElement.focus();\n\t\t\t}, 500);\n\t\t}\n\t\tthis.unlockLockedElements(this.lockedElements);\n\t\tif (this.modalStack.size > 0) {\n\t\t\tconst modalKeys = Array.from(this.modalStack.keys());\n\t\t\tconst modalRef = modalKeys[modalKeys.length - 1] as HTMLElement & {\n\t\t\t\t_activeElement: HTMLElement | null; // typo sugger\n\t\t\t};\n\t\t\tthis.modalStack.forEach((_value: ModalContext, htmlElement: HTMLElement) => {\n\t\t\t\tif (modalRef === htmlElement) {\n\t\t\t\t\thtmlElement.style.display = 'inline';\n\t\t\t\t} else {\n\t\t\t\t\thtmlElement.style.display = `none`;\n\t\t\t\t}\n\t\t\t});\n\t\t\tgetDocument().body.style.maxHeight = '100vh';\n\t\t\tgetDocument().body.style.overflow = 'hidden';\n\t\t\tthis.lockFocus(getDocument().body, modalRef);\n\t\t} else {\n\t\t\tgetDocument().body.style.maxHeight = 'unset';\n\t\t\tgetDocument().body.style.overflow = 'unset';\n\t\t}\n\t}\n\n\tpublic openModal(modalRef: HTMLElement, activeElement?: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tthis.modalStack.set(modalRef, {\n\t\t\t\tactiveElement,\n\t\t\t});\n\t\t\tthis.renderModalIfExists();\n\t\t}\n\t}\n\n\tpublic closeModal(modalRef: HTMLElement): void {\n\t\tif (modalRef instanceof HTMLElement === false) {\n\t\t\tLog.warn(`[KolModalService] Die DOM-Referenz des Modals ist nicht valide.`);\n\t\t} else {\n\t\t\tconst activeElement = this.modalStack.get(modalRef)?.activeElement;\n\t\t\tthis.modalStack.delete(modalRef);\n\t\t\tthis.renderModalIfExists(activeElement);\n\t\t}\n\t}\n}\n","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","import { isObject } from './validator';\n\nexport const propagateFocus = <H extends HTMLElement, R extends HTMLElement>(host?: H, ref?: R) => {\n\tif (isObject(host) && host) {\n\t\thost.focus = (ops: FocusOptions) => ref?.focus(ops);\n\t}\n};\n\nconst PROCESS_ENVS = ['development', 'production', 'test'] as const;\ntype ProcessEnv = (typeof PROCESS_ENVS)[number];\nexport let processEnv: ProcessEnv = 'development';\ntry {\n\tprocessEnv = process.env.NODE_ENV as ProcessEnv;\n} catch (e) {\n\tprocessEnv = 'production';\n}\n\n/**\n * This function is used to handle the slot content by\n * moving a DOM element to a defined slot element.\n */\nexport const handleSlotContent = (hostRef: HTMLElement, slotRef: HTMLElement, slotName: string) => {\n\tif (hostRef && slotRef && typeof slotName === 'string') {\n\t\tconst content = hostRef.querySelector(`[slot=\"${slotName}\"]`);\n\t\tif (content) {\n\t\t\tslotRef.appendChild(content);\n\t\t}\n\t}\n};\n\n/**\n * This function is used to check if a label is an empty string.\n * @param label The label of the slot\n * @returns True if the label is an empty string\n */\nexport const showExpertSlot = (label: unknown) => label === '';\n","import { ModalService } from '../components/modal/service';\nimport { processEnv } from './reuse';\n\nlet WINDOW: Window | null = null;\nlet DOCUMENT: Document | null = null;\n\nexport const configKoliBri = (window: Window): void => {\n\tif (window instanceof Window) {\n\t\tWINDOW = window;\n\t\tif (WINDOW.document instanceof Document) {\n\t\t\tDOCUMENT = window.document;\n\t\t} else {\n\t\t\tconsole.warn(`The given Window has no valid Document.`);\n\t\t}\n\t} else {\n\t\tconsole.warn(`The given Window is not valid.`);\n\t}\n};\n\nexport const getWindow = (): Window => (WINDOW || typeof window === 'undefined' ? (null as unknown as Window) : window);\nexport const getDocument = (): Document => (DOCUMENT || typeof getWindow().document === 'undefined' ? (null as unknown as Document) : getWindow().document);\n\nlet META_CONFIG: string | null = null;\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 getExperimentalMode = (): boolean => EXPERIMENTAL_MODE === true;\nexport const getColorContrastAnalysis = (): boolean => COLOR_CONTRAST_ANALYSIS === true;\n\ntype LogShield = {\n\tlabel: string;\n\tstyle: string;\n};\n\ntype LogShieldOptions = {\n\tclassifier?: string;\n\tforceLog?: boolean;\n\toverwriteStyle?: string;\n};\n\nexport class Log {\n\tprivate static shield: LogShield = {\n\t\tlabel: '%cKoliBri',\n\t\tstyle: 'color: white; background: #666; font-weight: bold; padding: .25em .5em; border-radius: 3px; border: 1px solid #000',\n\t};\n\n\tprivate static mapToArray(msg: unknown | unknown[]): unknown[] {\n\t\treturn Array.isArray(msg) ? msg : [msg];\n\t}\n\n\tprivate static handleClassifier(classifier?: string): string {\n\t\tif (typeof classifier === 'string' && classifier.length > 0) {\n\t\t\treturn `${Log.shield.label} | ${classifier}`;\n\t\t} else {\n\t\t\treturn Log.shield.label;\n\t\t}\n\t}\n\n\tprivate static getShield(options?: LogShieldOptions): string[] {\n\t\treturn [Log.handleClassifier(options?.classifier), `${Log.shield.style};${options?.overwriteStyle || ''}`];\n\t}\n\n\tpublic static debug(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.debug(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static info(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.info(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static trace(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.trace(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static warn(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.warn(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static error(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tconsole.error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n\n\tpublic static throw(msg: unknown | unknown[], options?: LogShieldOptions): void {\n\t\tif (DEV_MODE || options?.forceLog === true) {\n\t\t\tthrow new Error(...Log.getShield(options), ...Log.mapToArray(msg));\n\t\t}\n\t}\n}\n\nconst initMeta = (): void => {\n\tif (DEV_MODE === null && EXPERIMENTAL_MODE === null && COLOR_CONTRAST_ANALYSIS === null) {\n\t\tconst meta = getDocument().querySelector('meta[name=\"kolibri\"]');\n\t\tif (meta && meta.hasAttribute('content')) {\n\t\t\tMETA_CONFIG = meta.getAttribute('content');\n\t\t\tif (typeof META_CONFIG === 'string') {\n\t\t\t\tDEV_MODE = META_CONFIG.includes('dev-mode=true');\n\t\t\t\tEXPERIMENTAL_MODE = META_CONFIG.includes('experimental-mode=true');\n\t\t\t\tCOLOR_CONTRAST_ANALYSIS = META_CONFIG.includes('color-contrast-analysis=true');\n\t\t\t}\n\t\t}\n\t} else {\n\t\tconsole.warn(`You can only initialize DEV_MODE and COLOR_CONTRAST_ANALYSIS once.`);\n\t}\n};\n\nconst getKoliBri = (): Record<string, unknown> => {\n\tlet kolibri = getWindow().KoliBri;\n\tif (kolibri === undefined) {\n\t\tkolibri = {};\n\t\tObject.defineProperty(getWindow(), 'KoliBri', {\n\t\t\tvalue: kolibri,\n\t\t\twritable: false,\n\t\t});\n\t}\n\treturn kolibri;\n};\n\nexport const initKoliBri = (): void => {\n\tif (getKoliBri().Modal === undefined) {\n\t\tconst Modal = new ModalService();\n\t\tObject.defineProperty(getKoliBri(), 'Modal', {\n\t\t\tget: function (): ModalService {\n\t\t\t\treturn Modal;\n\t\t\t},\n\t\t});\n\t\tinitMeta();\n\t\tLog.debug(\n\t\t\t`\n\t,--. ,--. ,--. ,--. ,-----. ,--.\n\t| .' / ,---. | | \\`--' | |) /_ ,--.--. \\`--'\n\t| . ' | .-. | | | ,--. | .-. \\\\ | .--' ,--.\n\t| |\\\\ \\\\ | '-' | | | | | | '--' / | | | |\n\t\\`--' \\`--´ \\`---´ \\`--' \\`--' \\`------´ \\`--' \\`--'\n\t🚹 The accessible HTML-Standard | 👉 https://public-ui.github.io | 2.0.3\n\t\t`,\n\t\t\t{\n\t\t\t\tforceLog: true,\n\t\t\t}\n\t\t);\n\t} else {\n\t\tconsole.warn(`You can only initialize KoliBri once.`);\n\t}\n};\nexport { getKoliBri };\n\nexport const renderDevAdvice = (): void => {\n\tif (getKoliBri().adviceShown !== true) {\n\t\tObject.defineProperty(getKoliBri(), 'adviceShown', {\n\t\t\tget: function () {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t});\n\t\tLog.debug(\n\t\t\t`\nYou are using the KoliBri component library. If you have any suggestions for improvement or find a problem, please contact us:\n\nTicket: https://github.com/public-ui/kolibri/issues/new/choose (for privacy reasons, please use email)\nEmail: kolibri@itzbund.de\n`\n\t\t);\n\t}\n};\n\nlet nonce = (): string => Math.floor(Math.random() * 16777215).toString(16);\n\nif (processEnv === 'test') {\n\tnonce = (): string => 'nonce';\n}\n\nexport { nonce };\n","import { Log } from './dev.utils';\n\ntype HintOptions = {\n\tdetails?: unknown[];\n\tforce?: boolean;\n};\n\nconst a11yCache: Set<string> = new Set();\nexport const a11yHint = (msg: string, options?: HintOptions): void => {\n\tif (a11yCache.has(msg) === false || !!options?.force) {\n\t\ta11yCache.add(msg);\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `✋ a11y`,\n\t\t\toverwriteStyle: '; background-color: #09f',\n\t\t});\n\t}\n};\n\n// const deprecatedCache: Set<string> = new Set();\n// export const deprecatedHint = (msg: string, options?: HintOptions): void => {\n// \tif (deprecatedCache.has(msg) === false || !!options?.force) {\n// \t\tdeprecatedCache.add(msg);\n// \t\tLog.warn(([msg] as unknown[]).concat(options?.details || []), {\n// \t\t\tclassifier: `🔥 deprecated`,\n// \t\t\toverwriteStyle: '; background-color: #f00',\n// \t\t});\n// \t}\n// };\n\nconst devCache: Set<string> = new Set();\nexport const devHint = (msg: string, options?: HintOptions): void => {\n\tif (devCache.has(msg) === false || !!options?.force) {\n\t\tdevCache.add(msg);\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `💻 dev`,\n\t\t\toverwriteStyle: '; background-color: #f09',\n\t\t});\n\t}\n};\nexport const devWarning = (msg: string, options?: HintOptions): void => {\n\tif (devCache.has(msg) === false || !!options?.force) {\n\t\tdevCache.add(msg);\n\t\tLog.warn(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `💻 dev`,\n\t\t\toverwriteStyle: '; background-color: #f09',\n\t\t});\n\t}\n};\n\nconst featureCache: Set<string> = new Set();\nexport const featureHint = (msg: string, done = false, options?: HintOptions): void => {\n\tif (featureCache.has(msg) === false || !!options?.force) {\n\t\tfeatureCache.add(msg);\n\t\tmsg += done === true ? ' ✅' : '';\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `🌟 feature`,\n\t\t\toverwriteStyle: '; background-color: #309',\n\t\t});\n\t}\n};\ndevHint(\n\t`Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!`\n);\n\nconst uiUxCache: Set<string> = new Set();\nexport const uiUxHint = (msg: string, options?: HintOptions): void => {\n\tif (uiUxCache.has(msg) === false || !!options?.force) {\n\t\tuiUxCache.add(msg);\n\t\tLog.debug(([msg] as unknown[]).concat(options?.details || []), {\n\t\t\tclassifier: `📑 ui/ux`,\n\t\t\toverwriteStyle: '; background-color: #060;',\n\t\t});\n\t}\n};\n\nexport const a11yHintDisabled = (): void => {\n\ta11yHint(\n\t\t`\"Disabled\" schränkt die Zugänglichkeit und Sichtbarkeit ein. Wir empfehlen aus Sicht der Barrierefreiheit readonly- statt disabled-Attribut zu verwenden.\\n- https://uxdesign.cc/is-it-ok-to-grey-out-disabled-buttons-8afa74a0fae`\n\t);\n};\n\nexport const a11yHintLabelingLandmarks = (value: unknown): void => {\n\tif (typeof value !== 'string' || value === '') {\n\t\ta11yHint(\n\t\t\t`Manche Strukturelemente, wie bspw. der nav-Tag, können mehrfach in einer Webseite verwendet werden. Damit die gleichnamigen Strukturelemente voneinander unterschieden werden können, ist es erforderlich ein Aria-Label zu setzen.\\n- https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/Navigation_Role#accessibility_concerns`\n\t\t);\n\t}\n};\n\nexport const uiUxHintMillerscheZahl = (className: string, length = 8): void => {\n\tif (length > 7) {\n\t\tuiUxHint(\n\t\t\t`[${className}] Innerhalb von Navigationsstrukturen wird empfohlen nicht mehr als 7 Menüpunkte zu verwenden.\n\nLinks:\n- https://de.ryte.com/wiki/Millersche_Zahl\n- https://de.wikipedia.org/wiki/Millersche_Zahl`\n\t\t);\n\t}\n};\n","const pushNodes = (set, domNodes) => {\n domNodes.forEach((domNode) => {\n if (set.has(domNode) === false) {\n set.add(domNode);\n }\n });\n};\nexport const querySelectorAll = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n const domNodes = new Set();\n pushNodes(domNodes, node.querySelectorAll(selector));\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n pushNodes(domNodes, querySelectorAll(selector, shadowRoot));\n }\n else {\n pushNodes(domNodes, querySelectorAll(selector, nodeList[i]));\n }\n }\n return Array.from(domNodes);\n }\n else {\n throw new Error(`The parameter document for the method querySelectorAll is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","export const querySelector = (selector, node = document) => {\n if (node instanceof Document ||\n node instanceof HTMLElement ||\n node instanceof ShadowRoot) {\n let domNode = node.querySelector(selector);\n if (domNode === null) {\n const nodeList = node.querySelectorAll('[class*=\"hydrated\"]');\n for (let i = 0; i < nodeList.length; i++) {\n const shadowRoot = nodeList[i].shadowRoot;\n if (typeof shadowRoot === \"object\" && shadowRoot !== null) {\n domNode = querySelector(selector, shadowRoot);\n }\n else {\n domNode = querySelector(selector, nodeList[i]);\n }\n if (domNode !== null) {\n break;\n }\n }\n }\n return domNode;\n }\n else {\n throw new Error(`The parameter document for the method querySelector is not type of Document, HTMLElement or ShadowRoot.`);\n }\n};\n//# sourceMappingURL=index.js.map","\nmodule.exports = arr\nmodule.exports.arr = arr\nmodule.exports.obj = obj\nmodule.exports.css = css\nmodule.exports.hex = hex\nmodule.exports.num = num\n\nfunction arr(data) {\n var a = parse(data)\n if (a.length == 3) {\n return a.concat(255)\n } else {\n a[3] = Math.round(a[3])\n return a\n }\n}\n\nfunction obj(data) {\n var a = parse(data)\n return {\n r: a[0],\n g: a[1],\n b: a[2],\n a: a.length == 3\n ? 255\n : Math.round(a[3])\n }\n}\n\nfunction css(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n\n return a[3] == 255\n ? 'rgb(' + a[0] + ', ' + a[1] + ', ' + a[2] + ')'\n : a[3] == 0\n ? 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', 0)'\n : 'rgba(' + a[0] + ', ' + a[1] + ', ' + a[2] + ', ' + String(a[3] / 255).substr(1) + ')'\n}\n\nfunction hex(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n var opaque = a[3] == 255\n var r = num2hex(a[0])\n var g = num2hex(a[1])\n var b = num2hex(a[2])\n var a = num2hex(Math.round(a[3]))\n var is = isshort(r, g, b, a)\n if (opaque) {\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0)\n : '#' + r + g + b\n }\n return is\n ? '#' + r.charAt(0) + g.charAt(0) + b.charAt(0) + a.charAt(0)\n : '#' + r + g + b + a\n}\n\nfunction num(data) {\n var a = parse(data)\n if (a.length == 3) a.push(255)\n else a[3] = Math.round(a[3])\n return ((a[3] << 24) >>> 0 | a[0] << 16 | a[1] << 8 | a[2]) >>> 0\n}\n\nfunction parse(data) {\n if (typeof data == 'string') {\n data = data.toLowerCase()\n return name(data)\n || hex3(data)\n || hex6(data)\n || rgb(data)\n || rgba(data)\n || [0, 0, 0, 255]\n }\n return object(data)\n || array(data)\n || number(data)\n || [0, 0, 0, 255]\n}\n\nfunction num2hex(num) {\n var s = num.toString(16)\n return s.length == 1\n ? '0' + s\n : s\n}\n\nfunction isshort(r, g, b, a) {\n var h = ['ff', '00', '11', '22', '33', '44', '55', '66',\n '77', '88', '99', 'aa', 'bb', 'cc', 'dd', 'ee']\n return h.indexOf(r) != -1\n && h.indexOf(g) != -1\n && h.indexOf(b) != -1\n && h.indexOf(a) != -1\n}\n\nfunction name(str) {\n if (str == 'red') return [255, 0, 0]\n if (str == 'green') return [0, 255, 0]\n if (str == 'blue') return [0, 0, 255]\n if (str == 'black') return [0, 0, 0]\n if (str == 'white') return [255, 255, 255]\n if (str == 'cyan') return [0, 255, 255]\n if (str == 'gray') return [128, 128, 128]\n if (str == 'grey') return [128, 128, 128]\n if (str == 'magenta') return [255, 0, 255]\n // ok, not the real css `pink` but my personal `magenta` alias\n // `pink` is simpler than `fuchsia`, whatever...\n if (str == 'pink') return [255, 0, 255]\n if (str == 'yellow') return [255, 255, 0]\n}\n\nfunction hex2num(str) {\n return str.length == 1\n ? parseInt(str + str, 16)\n : parseInt(str, 16)\n}\n\nfunction hex3(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 3 || l == 4) {\n var r = hex2num(s[0])\n var g = hex2num(s[1])\n var b = hex2num(s[2])\n var a = l == 3\n ? 255\n : hex2num(s[3])\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction hex6(str) {\n var s = str.replace(/^#/,'')\n var l = s.length\n if (l == 6 || l == 8) {\n var r = hex2num(s.slice(0, 2))\n var g = hex2num(s.slice(2, 4))\n var b = hex2num(s.slice(4, 6))\n var a = l == 6\n ? 255\n : hex2num(s.slice(6, 8))\n\n if (isNaN(r) || isNaN(g) || isNaN(b) || isNaN(a)) return\n\n return [r, g, b, a]\n }\n}\n\nfunction getnum(val, integer) {\n if (typeof val != 'number') return -1\n if (integer === true && Math.floor(val) !== val) return -1\n return val >= 0 && val <= 255\n ? val\n : -1\n}\n\nfunction object(obj) {\n if (Object.prototype.toString.call(obj) === '[object Object]'\n && Object.getPrototypeOf(obj) === Object.getPrototypeOf({})) {\n var r = getnum(obj.r != undefined ? obj.r : obj.red != undefined ? obj.red : 0, true)\n var g = getnum(obj.g != undefined ? obj.g : obj.green != undefined ? obj.green : 0, true)\n var b = getnum(obj.b != undefined ? obj.b : obj.blue != undefined ? obj.blue : 0, true)\n var a = getnum(obj.a != undefined ? obj.a : obj.alpha != undefined ? obj.alpha : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction array(arr) {\n if (Array.isArray(arr) && (arr.length == 3 || arr.length == 4)) {\n var r = getnum(arr[0], true)\n var g = getnum(arr[1], true)\n var b = getnum(arr[2], true)\n var a = getnum(arr[3] != undefined ? arr[3] : 255, true)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n\nfunction number(num) {\n if (typeof num == 'number' && Math.floor(num) == num && num <= 4294967295 && num >= 0) {\n var a = num >> 24 & 255\n var r = num >> 16 & 255\n var g = num >> 8 & 255\n var b = num & 255\n return [r, g, b, a]\n }\n}\n\nfunction rgb(str) {\n if (str.substr(0, 4) == 'rgb(') {\n str = str.match(/^rgb\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n if (r != -1 && g != -1 && b != -1) {\n return [r, g, b, 255]\n }\n }\n}\n\nfunction rgba(str) {\n if (str.substr(0, 5) == 'rgba(') {\n str = str.match(/^rgba\\(([^)]+)\\)/)[1]\n var t = str.split(/ *, */).map(Number)\n var r = getnum(t[0], true)\n var g = getnum(t[1], true)\n var b = getnum(t[2], true)\n var a = getnum(t[3] * 255)\n if (r != -1 && g != -1 && b != -1 && a != -1) {\n return [r, g, b, a]\n }\n }\n}\n","var n=.2126,r=.7152,t=.0722,e=1/12.92;function u(n){return Math.pow((n+.055)/1.055,2.4)}function a(a){var i=a[0]/255,c=a[1]/255,o=a[2]/255,s=i<=.03928?i*e:u(i),f=c<=.03928?c*e:u(c),l=o<=.03928?o*e:u(o);return s*n+f*r+l*t}function i(n){var r=255;8===(n=n.replace(/^#/,\"\")).length&&(r=parseInt(n.slice(6,8),16),n=n.substring(0,6)),4===n.length&&(r=parseInt(n.slice(3,4).repeat(2),16),n=n.substring(0,3)),3===n.length&&(n=n[0]+n[0]+n[1]+n[1]+n[2]+n[2]);var t=parseInt(n,16);return[t>>16,t>>8&255,255&t,r]}function c(n,r){return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function o(n,r){return c(a(n),a(r))}function s(n,r){return o(i(n),i(r))}function f(n){return n>=7?\"AAA\":n>=4.5?\"AA\":n>=3?\"AA Large\":\"Fail\"}export{c as luminance,o as rgb,s as hex,f as score};\n//# sourceMappingURL=index.m.js.map\n","import { querySelectorAll } from 'query-selector-all-shadow-root';\nimport { querySelector } from 'query-selector-shadow-root';\nimport rgba from 'rgba-convert';\nimport { hex, score } from 'wcag-contrast';\n\nimport { Generic, patchTheme, patchThemeTag } from 'adopted-style-sheets';\n\nimport { Stringified } from '../types/common';\nimport { StencilUnknown } from '../types/unknown';\nimport { devHint } from './a11y.tipps';\nimport { getDocument, getExperimentalMode, Log } from './dev.utils';\n\n// https://regex101.com/r/lSYLO9/1\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines komplexer Objekte\n * der String \"[object Object]\" an die Web Component übergeben wird. Um den Neben-\n * effekt abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nconst OBJECT_OBJECT = /\\[object Object\\]/;\nexport const objectObjectHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && OBJECT_OBJECT.test(value)) {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei Stencil kann es vorkommen, dass bei der Übergabe eines leeren Array's\n * ein leerer String an die Web Component übergeben wird. Um den Nebeneffekt\n * abzufangen, wird dieser Fall abgefangen und nicht ausgeführt.\n */\nexport const emptyStringByArrayHandler = (value: unknown, cb: () => void): void => {\n\tif (typeof value === 'string' && value === '') {\n\t\treturn;\n\t}\n\tcb();\n};\n\n/**\n * Bei interaktiven HTML-Elementen kommt es vor, dass der Event an einem nicht\n * interaktiven HTML-Element \"lostriggert\" und dann den DOM-Baum hoch propagiert.\n * Zu unterschiedlichen Zeitpunkten sind an dem einen Event somit immer unterschiedliche\n * HTML-Elemente.\n * Damit wir das \"richtige\" interaktive HTML-Element an das Event binden, setzen\n * wir das Target explizit und stoppen die Propagation.\n */\nexport const setEventTarget = (event: Event, target?: HTMLElement): void => {\n\tif (getExperimentalMode()) {\n\t\tLog.debug([event, target]);\n\t\tLog.debug(`↑ We propagate the (submit) event to this target.`);\n\t}\n\tObject.defineProperty(event, 'target', {\n\t\tvalue: target,\n\t\twritable: false,\n\t});\n};\n\nconst patchState = (component: Generic.Element.Component): void => {\n\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\tconst beforePatch = hooks.get('beforePatch') as Generic.Element.NextStateHooksCallback;\n\t\tif (typeof beforePatch === 'function') {\n\t\t\tbeforePatch(component.nextState?.get(key), component.nextState as Map<string, unknown>, component, key);\n\t\t}\n\t});\n\t/**\n\t * Wenn in beforePatch Methoden die Änderung verworfen wird,\n\t * muss auch nicht der State aktualisiert und neu gerendert\n\t * werden.\n\t */\n\tif ((component.nextState as Map<string, unknown>)?.size > 0) {\n\t\tcomponent.state = {\n\t\t\t...component.state,\n\t\t\t...Object.fromEntries(component.nextState as Map<string, unknown>),\n\t\t};\n\t\tdelete component.nextState;\n\n\t\tcomponent.nextHooks?.forEach((hooks, key) => {\n\t\t\tconst afterPatch = hooks.get('afterPatch') as Generic.Element.StateHooksCallback;\n\t\t\tif (typeof afterPatch === 'function') {\n\t\t\t\tafterPatch(component.state[key], component.state, component, key);\n\t\t\t}\n\t\t});\n\t}\n\tdelete component.nextHooks;\n};\n\ntype SetStateHooks = {\n\tafterPatch?: Generic.Element.StateHooksCallback;\n\tbeforePatch?: Generic.Element.NextStateHooksCallback;\n};\n\nexport const setState = <T>(component: Generic.Element.Component, propName: string, value?: T | null | undefined, hooks: SetStateHooks = {}): void => {\n\tif (component.nextHooks === undefined) {\n\t\tcomponent.nextHooks = new Map();\n\t}\n\tif (component.nextState === undefined) {\n\t\tcomponent.nextState = new Map();\n\t}\n\tif (component.nextState.get(propName) !== value) {\n\t\tconst nextHooks = component.nextHooks.get(propName);\n\t\tif (nextHooks instanceof Map === false) {\n\t\t\tcomponent.nextHooks.set(propName, new Map());\n\t\t}\n\t\tif (typeof hooks.afterPatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('afterPatch', hooks.afterPatch);\n\t\t}\n\t\tif (typeof hooks.beforePatch === 'function') {\n\t\t\tcomponent.nextHooks.get(propName)?.set('beforePatch', hooks.beforePatch);\n\t\t}\n\t\tcomponent.nextState.set(propName, value);\n\t\t/**\n\t\t * Muss erstmal in sync bleiben, da sonst der\n\t\t * Tooltip nicht korrekt ausgerichtet wird.\n\t\t */\n\t\t// if (component.hydrated === true || processEnv !== 'test') {\n\t\t// clearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// component.timeout = setTimeout(() => {\n\t\t// \tclearTimeout(component.timeout as NodeJS.Timeout);\n\t\t// \tpatchState(component);\n\t\t// }, 50);\n\t\t// } else {\n\t\tpatchState(component);\n\t\t// }\n\t}\n};\n\nconst logWarn = (component: Generic.Element.Component, propName: string, value: unknown, requiredGeneric: Set<string | null | undefined>): void => {\n\tdevHint(\n\t\t`[${component.constructor.name}] Der Property-Wert (${value as string}) für '${propName}' ist nicht valide. Folgende Werte sind erlaubt: ${Array.from(\n\t\t\trequiredGeneric\n\t\t).join(', ')}`\n\t);\n};\n\nexport type WatchOptions = {\n\tdefaultValue?: unknown;\n\thooks?: SetStateHooks;\n\trequired?: boolean;\n};\n\nexport type WatchBooleanOptions = WatchOptions & {\n\tdefaultValue?: boolean | null;\n};\n\nexport type WatchStringOptions = WatchOptions & {\n\tdefaultValue?: string | null;\n\tmaxLength?: number;\n\tminLength?: number;\n};\n\nexport type WatchNumberOptions = WatchOptions & {\n\tdefaultValue?: number | null;\n\tmin?: number;\n\tmax?: number;\n};\n\nexport function watchValidator<T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\tvalidationFunction: (value?: T) => boolean,\n\trequiredGeneric: Set<string | null | undefined>,\n\tvalue?: T,\n\toptions: WatchOptions = {}\n): void {\n\tif (validationFunction(value)) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert VALIDE ist.\n\t\t */\n\t\tsetState(component, propName, value, options.hooks);\n\t} else if ((value === undefined || value === null) && !options.required) {\n\t\t/**\n\t\t * Triff zu, wenn der Wert entweder ...\n\t\t * - UNDEFINED oder NULL\n\t\t * - und NICHT REQUIRED\n\t\t * ... ist.\n\t\t */\n\t\tsetState(component, propName, options.defaultValue, options.hooks);\n\t} else {\n\t\t/**\n\t\t * Triff zu, wenn der Wert NICHT valide ist.\n\t\t */\n\t\tif (!options.required) {\n\t\t\trequiredGeneric.add(null);\n\t\t}\n\t\tlogWarn(component, propName, value, requiredGeneric);\n\t}\n}\n\nexport const watchBoolean = (component: Generic.Element.Component, propName: string, value?: boolean, options?: WatchBooleanOptions): void => {\n\twatchValidator(component, propName, (value): boolean => typeof value === 'boolean', new Set(['Boolean {true, false}']), value, options);\n};\n\nexport const watchString = (component: Generic.Element.Component, propName: string, value?: string, options: WatchStringOptions = {}): void => {\n\tconst minLength = typeof options.minLength === 'number' ? options?.minLength : 0;\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'string' && value.length >= minLength && (typeof options?.maxLength === 'undefined' || value.length <= options.maxLength),\n\t\tnew Set([`String`]),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchNumber = (component: Generic.Element.Component, propName: string, value?: number, options?: WatchNumberOptions): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value): boolean =>\n\t\t\ttypeof value === 'number' &&\n\t\t\t(typeof options?.min === 'undefined' || (typeof options?.min === 'number' && value >= options.min)) &&\n\t\t\t(typeof options?.max === 'undefined' || (typeof options?.max === 'number' && value <= options.max)),\n\t\tnew Set(['Number']),\n\t\tvalue,\n\t\toptions\n\t);\n};\n\nexport const watchJsonArrayString = <T>(\n\tcomponent: Generic.Element.Component,\n\tpropName: string,\n\titemValidation: (item: T) => boolean,\n\tvalue?: Stringified<T[]>,\n\tarrayValidation: (items: T[]) => boolean = (items: T[]) => items === items, // nochmal hirnen\n\toptions: WatchOptions = {}\n): void => {\n\temptyStringByArrayHandler(value, () => {\n\t\tobjectObjectHandler(value, () => {\n\t\t\tif (typeof value === 'undefined') {\n\t\t\t\tvalue = [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<T[]>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\tif (Array.isArray(value)) {\n\t\t\t\t\tconst invalid = value.find((item: T) => !itemValidation(item));\n\t\t\t\t\tif (invalid === undefined && arrayValidation(value)) {\n\t\t\t\t\t\tsetState(component, propName, value, options.hooks);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tobjectObjectHandler(invalid, () => {\n\t\t\t\t\t\t\tLog.debug(invalid);\n\t\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\t\t\tLog.debug(value);\n\t\t\t\t\t\tthrow new Error(`↑ Das Schema für das Property (_options) ist nicht valide. Der Wert wird nicht geändert.`);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t/**\n\t\t\t\t * TODO: Wir haben einen Known-Bug beim Propergieren von Zeichenkettenliste (string[]).\n\t\t\t\t */\n\t\t\t\tLog.debug(error);\n\t\t\t\t// devHint(`Known bug: Zeichenkettenliste (string[])`);\n\t\t\t}\n\t\t});\n\t});\n};\n\nconst BOOLEAN = /^(true|false)$/;\nconst INTEGER = /^-?(0|[1-9]\\d*)$/;\nconst FLOAT = /^-?(0.|[1-9]\\d*.)\\d*[1-9]$/;\nexport const mapString2Unknown = (value: StencilUnknown) => {\n\tconst typeStr = typeof value;\n\tconst oldValue = `${value as string}`;\n\tif (typeof value === 'string') {\n\t\tif (BOOLEAN.test(value)) {\n\t\t\tvalue = value === 'true';\n\t\t} else if (INTEGER.test(value)) {\n\t\t\tvalue = parseInt(value);\n\t\t} else if (FLOAT.test(value)) {\n\t\t\tvalue = parseFloat(value);\n\t\t} else if (JSON_CHARS.test(value)) {\n\t\t\ttry {\n\t\t\t\tvalue = parseJson<StencilUnknown>(value);\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}\n\t}\n\tif (typeStr !== typeof value) {\n\t\tdevHint(`You have used a stringified property value (${oldValue} to ${JSON.stringify(value)}) which type switched from ${typeStr} to ${typeof value}!`);\n\t}\n\treturn value;\n};\n\nexport const stringifyJson = (value: unknown): string => {\n\ttry {\n\t\treturn JSON.stringify(value).replace(/\"/g, \"'\");\n\t} catch (error) {\n\t\tLog.warn(['stringifyJson', value]);\n\t\tLog.error(`↑ Das JSON konnte nicht in einen String umgewandelt werden. Es wird ein stringifizierbares JSON erwartet.`);\n\t\tthrow new Error();\n\t}\n};\n\nconst JSON_CHARS = /^[{[]/; // string starts with { or [\nexport const parseJson = <T>(value: unknown): T => {\n\tif (typeof value === 'string') {\n\t\ttry {\n\t\t\t// \"null\", \"true\", \"false\", \"0\" works too\n\t\t\treturn JSON.parse(value);\n\t\t} catch (error) {\n\t\t\tif (JSON_CHARS.test(value)) {\n\t\t\t\ttry {\n\t\t\t\t\treturn JSON.parse(value.replace(/'/g, '\"'));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tLog.warn(['parseJson', value]);\n\t\t\t\t\tLog.error(`↑ Der JSON-String konnte nicht geparsed werden. Achten Sie darauf, dass einfache Anführungszeichen im Text maskiert werden (&#8216;).`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tthrow new Error();\n};\n\nexport const mapBoolean2String = (value?: boolean): string | undefined => {\n\treturn typeof value === 'boolean' ? (value === true ? 'true' : 'false') : undefined;\n};\n\nexport const mapStringOrBoolean2String = (value?: string | boolean): string | undefined => {\n\treturn typeof value === 'string' ? value : mapBoolean2String(value);\n};\n\nexport const koliBriQuerySelector = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T | null =>\n\tquerySelector<T>(selector, node || getDocument());\n\nexport const koliBriQuerySelectorAll = <T extends Element>(selector: string, node?: Document | HTMLElement | ShadowRoot): T[] =>\n\tquerySelectorAll<T>(selector, node || getDocument());\n\ninterface A11yColorContrast {\n\tbackgroundColor: string;\n\tcolor: string;\n\tdomNode: HTMLElement | HTMLSlotElement;\n\tlevel: string;\n\tscore: number;\n}\n\nlet DEFAULT_COLOR_CONTRAST: A11yColorContrast | null = null;\nconst getDefaultColorContrast = (): A11yColorContrast => {\n\tDEFAULT_COLOR_CONTRAST = DEFAULT_COLOR_CONTRAST || {\n\t\tbackgroundColor: '#00000000',\n\t\tcolor: '#00000000',\n\t\tdomNode: getDocument().body,\n\t\tlevel: 'Fail',\n\t\tscore: 1,\n\t};\n\treturn DEFAULT_COLOR_CONTRAST;\n};\n\nconst TRANSPARENT_REGEXP = /(\\d+, ){3}0\\)/;\nexport const koliBriA11yColorContrast = (domNode: HTMLElement, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tconst computedStyle = getComputedStyle(domNode);\n\tconst hexBG: string = TRANSPARENT_REGEXP.test(computedStyle.backgroundColor) ? a11yColorContrast.backgroundColor : rgba.hex(computedStyle.backgroundColor);\n\tconst hexC: string = TRANSPARENT_REGEXP.test(computedStyle.color) ? a11yColorContrast.color : rgba.hex(computedStyle.color);\n\tconst diff = hex(hexBG, hexC);\n\tconst contrast = {\n\t\tbackgroundColor: hexBG,\n\t\tcolor: hexC,\n\t\tdomNode: domNode,\n\t\tlevel: score(diff),\n\t\tscore: diff,\n\t};\n\tif (diff < 4.5) {\n\t\tLog.error([\n\t\t\t'Color-Contrast-Error',\n\t\t\t{\n\t\t\t\tbackgroundColor: contrast.backgroundColor,\n\t\t\t\tcolor: contrast.color,\n\t\t\t\tlevel: contrast.level,\n\t\t\t\tscore: contrast.score,\n\t\t\t},\n\t\t\tcontrast.domNode,\n\t\t]);\n\t}\n\treturn contrast;\n};\n\nexport const koliBriQuerySelectorColors = (selector: string, a11yColorContrast: A11yColorContrast = getDefaultColorContrast()): A11yColorContrast => {\n\tif (a11yColorContrast.domNode instanceof HTMLElement) {\n\t\ta11yColorContrast = koliBriA11yColorContrast(a11yColorContrast.domNode, a11yColorContrast);\n\t}\n\tconst selectedNode: HTMLElement | null = a11yColorContrast.domNode.querySelector<HTMLElement>(selector);\n\tif (selectedNode === null) {\n\t\tconst nodeList: NodeListOf<HTMLElement> = a11yColorContrast.domNode.querySelectorAll<HTMLElement>('[class=\"hydrated\"]');\n\t\tfor (let i = 0; i < nodeList.length; i++) {\n\t\t\t// const shadowRoot: ShadowRoot = nodeList[i].shadowRoot as ShadowRoot;\n\t\t\t// if (typeof shadowRoot === 'object' && shadowRoot !== null) {\n\t\t\t// a11yColorContrast.domNode = shadowRoot;\n\t\t\t// a11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// } else {\n\t\t\ta11yColorContrast.domNode = nodeList[i];\n\t\t\ta11yColorContrast = koliBriQuerySelectorColors(selector, a11yColorContrast);\n\t\t\t// }\n\t\t\tif (a11yColorContrast.domNode !== null) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn a11yColorContrast;\n\t} else {\n\t\treturn koliBriA11yColorContrast(selectedNode, a11yColorContrast);\n\t}\n};\n\nexport class KoliBriUtils {\n\tprivate static executionLock = false;\n\tprivate static cache = new Map<Element, A11yColorContrast>();\n\tpublic static queryHtmlElementColors(targetNode: HTMLElement, a11yColorContrast: A11yColorContrast, recursion = false, log = true): A11yColorContrast | null {\n\t\tlet returnValue = null;\n\t\tif (recursion === true || KoliBriUtils.executionLock === false) {\n\t\t\tif (recursion === false) {\n\t\t\t\tKoliBriUtils.cache.clear();\n\t\t\t\tKoliBriUtils.cache.set(a11yColorContrast.domNode, a11yColorContrast);\n\t\t\t\tKoliBriUtils.executionLock = true;\n\t\t\t\tif (log === true) {\n\t\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis started...`);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Log.debug(a11yColorContrast.domNode);\n\t\t\tif (targetNode === a11yColorContrast.domNode) {\n\t\t\t\treturnValue = a11yColorContrast;\n\t\t\t} else {\n\t\t\t\tconst children: Set<Element> = new Set<Element>();\n\t\t\t\tif (a11yColorContrast.domNode.shadowRoot) {\n\t\t\t\t\tconst shadowChildren = a11yColorContrast.domNode.shadowRoot.children;\n\t\t\t\t\tfor (let i = 0; i < shadowChildren.length; i++) {\n\t\t\t\t\t\tchildren.add(shadowChildren[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst slotElement: HTMLSlotElement = a11yColorContrast.domNode as HTMLSlotElement;\n\t\t\t\tif (typeof slotElement.assignedNodes === 'function') {\n\t\t\t\t\tconst slotChildren = slotElement.assignedNodes();\n\t\t\t\t\tfor (let i = 0; i < slotChildren.length; i++) {\n\t\t\t\t\t\tif (slotChildren[i] instanceof HTMLElement) {\n\t\t\t\t\t\t\tchildren.add(slotChildren[i] as HTMLElement);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst domChildren = a11yColorContrast.domNode.children;\n\t\t\t\tfor (let i = 0; i < domChildren.length; i++) {\n\t\t\t\t\tchildren.add(domChildren[i]);\n\t\t\t\t}\n\t\t\t\tconst arrayChildren = Array.from(children);\n\t\t\t\tfor (let i = 0; i < arrayChildren.length; i++) {\n\t\t\t\t\tlet colorContrast: A11yColorContrast | undefined = KoliBriUtils.cache.get(arrayChildren[i]);\n\t\t\t\t\tif (colorContrast === undefined) {\n\t\t\t\t\t\tcolorContrast = koliBriA11yColorContrast(arrayChildren[i] as HTMLElement, a11yColorContrast);\n\t\t\t\t\t}\n\t\t\t\t\tKoliBriUtils.cache.set(arrayChildren[i], colorContrast);\n\t\t\t\t\tconst colors: A11yColorContrast | null = KoliBriUtils.queryHtmlElementColors(targetNode, colorContrast, true, false);\n\t\t\t\t\tif (colors !== null) {\n\t\t\t\t\t\treturnValue = colors;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tLog.debug(`[KoliBriUtils] Call aborted because a color contrast analysis is currently being executed.`);\n\t\t}\n\t\tif (recursion === false) {\n\t\t\tif (log === true) {\n\t\t\t\tLog.debug(`[KoliBriUtils] Color contrast analysis finished (${KoliBriUtils.cache.size} DOM elements are analysed).`);\n\t\t\t}\n\t\t\tKoliBriUtils.executionLock = false;\n\t\t\tKoliBriUtils.cache.clear();\n\t\t}\n\t\treturn returnValue;\n\t}\n}\n\nexport class KoliBriDevHelper {\n\tpublic static readonly patchTheme = patchTheme;\n\tpublic static readonly patchThemeTag = patchThemeTag;\n\tpublic static readonly querySelector = koliBriQuerySelector;\n\tpublic static readonly querySelectorAll = koliBriQuerySelectorAll;\n\tpublic static readonly stringifyJson = stringifyJson;\n}\n"],"version":3}