@public-ui/components 1.7.15 → 1.7.16

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 (636) hide show
  1. package/custom-elements.json +1 -1
  2. package/dist/cjs/{a11y.tipps-448db2c0.js → a11y.tipps-bd449d8f.js} +1 -1
  3. package/dist/cjs/{a11y.tipps-448db2c0.js.map → a11y.tipps-bd449d8f.js.map} +1 -1
  4. package/dist/cjs/align-a8382c2d.js +4 -0
  5. package/dist/cjs/{align-806255e3.js.map → align-a8382c2d.js.map} +1 -1
  6. package/dist/cjs/{alignment-b708b3e5.js → alignment-3dc1be8a.js} +1 -1
  7. package/dist/cjs/{alignment-b708b3e5.js.map → alignment-3dc1be8a.js.map} +1 -1
  8. package/dist/cjs/{app-globals-2d68f57c.js → app-globals-75e5e6b9.js} +1 -1
  9. package/dist/cjs/{app-globals-2d68f57c.js.map → app-globals-75e5e6b9.js.map} +1 -1
  10. package/dist/cjs/aria-current-86dc3c8f.js +4 -0
  11. package/dist/cjs/{aria-current-991d67c0.js.map → aria-current-86dc3c8f.js.map} +1 -1
  12. package/dist/cjs/{associated.controller-598aaf95.js → associated.controller-e583ef2c.js} +1 -1
  13. package/dist/cjs/{associated.controller-598aaf95.js.map → associated.controller-e583ef2c.js.map} +1 -1
  14. package/dist/cjs/{color-b92069aa.js → color-cccb0f7f.js} +1 -1
  15. package/dist/cjs/{color-b92069aa.js.map → color-cccb0f7f.js.map} +1 -1
  16. package/dist/cjs/{controller-0a8985c7.js → controller-67bdfa63.js} +1 -1
  17. package/dist/cjs/{controller-0a8985c7.js.map → controller-67bdfa63.js.map} +1 -1
  18. package/dist/cjs/controller-a44ea733.js +4 -0
  19. package/dist/cjs/controller-a44ea733.js.map +1 -0
  20. package/dist/cjs/{controller-5a4590b3.js → controller-ad83264f.js} +1 -1
  21. package/dist/cjs/{controller-5a4590b3.js.map → controller-ad83264f.js.map} +1 -1
  22. package/dist/cjs/{controller-19caccf3.js → controller-de595e53.js} +1 -1
  23. package/dist/cjs/{controller-19caccf3.js.map → controller-de595e53.js.map} +1 -1
  24. package/dist/cjs/{controller-0d92b282.js → controller-e7bf77b4.js} +1 -1
  25. package/dist/cjs/controller-e7bf77b4.js.map +1 -0
  26. package/dist/cjs/{controller-icon-45f11305.js → controller-icon-5cfc9873.js} +1 -1
  27. package/dist/cjs/{controller-icon-45f11305.js.map → controller-icon-5cfc9873.js.map} +1 -1
  28. package/dist/cjs/{custom-class-94e5c92c.js → custom-class-6151c106.js} +1 -1
  29. package/dist/cjs/{custom-class-94e5c92c.js.map → custom-class-6151c106.js.map} +1 -1
  30. package/dist/cjs/{dev.utils-98ac4a2d.js → dev.utils-8ff2366d.js} +1 -1
  31. package/dist/cjs/{dev.utils-98ac4a2d.js.map → dev.utils-8ff2366d.js.map} +1 -1
  32. package/dist/cjs/{devtools-d7852b93.js → devtools-b76dac0a.js} +1 -1
  33. package/dist/cjs/{devtools-d7852b93.js.map → devtools-b76dac0a.js.map} +1 -1
  34. package/dist/cjs/events-e348a615.js.map +1 -1
  35. package/dist/cjs/{form-field-msg-a28f4da0.js → form-field-msg-cee9a7a7.js} +1 -1
  36. package/dist/cjs/{form-field-msg-a28f4da0.js.map → form-field-msg-cee9a7a7.js.map} +1 -1
  37. package/dist/cjs/has-closer-cd8d0ef8.js +4 -0
  38. package/dist/cjs/{has-closer-4da29289.js.map → has-closer-cd8d0ef8.js.map} +1 -1
  39. package/dist/cjs/hide-label-f6851215.js +4 -0
  40. package/dist/cjs/{hide-label-9fff222f.js.map → hide-label-f6851215.js.map} +1 -1
  41. package/dist/cjs/i18n-c3fa5bd7.js.map +1 -1
  42. package/dist/cjs/{icons-e8722437.js → icons-f4634847.js} +1 -1
  43. package/dist/cjs/{icons-e8722437.js.map → icons-f4634847.js.map} +1 -1
  44. package/dist/cjs/image-source-a9ea5150.js +4 -0
  45. package/dist/cjs/{image-source-7fc06095.js.map → image-source-a9ea5150.js.map} +1 -1
  46. package/dist/cjs/index-8606e84d.js +4 -0
  47. package/dist/cjs/index-8606e84d.js.map +1 -0
  48. package/dist/cjs/index.cjs.js +1 -1
  49. package/dist/cjs/index.cjs.js.map +1 -1
  50. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-alert-wc_3.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-alert-wc_3.cjs.entry.js.map +1 -1
  54. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-avatar.cjs.entry.js.map +1 -1
  58. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-button-link-text-switch.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-details.cjs.entry.js.map +1 -1
  68. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-form.cjs.entry.js.map +1 -1
  70. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-icon-font-awesome.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-icon-icofont.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-adapter-leanup.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-adapter-leanup.cjs.entry.js.map +1 -1
  78. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-checkbox.cjs.entry.js.map +1 -1
  80. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-input-color.cjs.entry.js.map +1 -1
  82. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  84. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-input-email.cjs.entry.js.map +1 -1
  86. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-input-file.cjs.entry.js.map +1 -1
  88. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  89. package/dist/cjs/kol-input-number.cjs.entry.js.map +1 -1
  90. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-input-password.cjs.entry.js.map +1 -1
  92. package/dist/cjs/kol-input-radio-group.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-input-radio.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-input-range.cjs.entry.js.map +1 -1
  97. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-input-text.cjs.entry.js.map +1 -1
  99. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-link-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  106. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  109. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  110. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  112. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  114. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-select.cjs.entry.js.map +1 -1
  117. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-span-wc_2.cjs.entry.js +1 -1
  119. package/dist/cjs/kol-span-wc_2.cjs.entry.js.map +1 -1
  120. package/dist/cjs/kol-span.cjs.entry.js +1 -1
  121. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  122. package/dist/cjs/kol-spin.cjs.entry.js.map +1 -1
  123. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  124. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  125. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  126. package/dist/cjs/kol-table.cjs.entry.js.map +1 -1
  127. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  128. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  129. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  130. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  131. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  132. package/dist/cjs/kol-toast-container.cjs.entry.js.map +1 -1
  133. package/dist/cjs/kol-toast.cjs.entry.js +1 -1
  134. package/dist/cjs/kol-toast.cjs.entry.js.map +1 -1
  135. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  136. package/dist/cjs/kolibri.cjs.js +1 -1
  137. package/dist/cjs/kolibri.cjs.js.map +1 -1
  138. package/dist/cjs/{label-17a3b4c1.js → label-69b85954.js} +1 -1
  139. package/dist/cjs/{label-17a3b4c1.js.map → label-69b85954.js.map} +1 -1
  140. package/dist/cjs/loader.cjs.js +1 -1
  141. package/dist/cjs/open-b73d464a.js +4 -0
  142. package/dist/cjs/{open-724e898f.js.map → open-b73d464a.js.map} +1 -1
  143. package/dist/cjs/{prop.validators-758924a9.js → prop.validators-3b868b6c.js} +1 -1
  144. package/dist/cjs/{prop.validators-758924a9.js.map → prop.validators-3b868b6c.js.map} +1 -1
  145. package/dist/cjs/rows-b9f39e03.js +4 -0
  146. package/dist/cjs/{rows-8e3ab8be.js.map → rows-b9f39e03.js.map} +1 -1
  147. package/dist/cjs/show-42935746.js +4 -0
  148. package/dist/cjs/{show-971b8e62.js.map → show-42935746.js.map} +1 -1
  149. package/dist/cjs/{suggestions-241644e6.js → suggestions-dd01db02.js} +1 -1
  150. package/dist/cjs/{suggestions-241644e6.js.map → suggestions-dd01db02.js.map} +1 -1
  151. package/dist/cjs/{tab-index-2f8cea1d.js → tab-index-f8d25f52.js} +1 -1
  152. package/dist/cjs/{tab-index-2f8cea1d.js.map → tab-index-f8d25f52.js.map} +1 -1
  153. package/dist/cjs/{tooltip-align-ead03b1a.js → tooltip-align-4afe6430.js} +1 -1
  154. package/dist/cjs/{tooltip-align-ead03b1a.js.map → tooltip-align-4afe6430.js.map} +1 -1
  155. package/dist/cjs/{validation-1907a1b9.js → validation-3be135dd.js} +1 -1
  156. package/dist/cjs/{validation-1907a1b9.js.map → validation-3be135dd.js.map} +1 -1
  157. package/dist/cjs/{validation-2971571e.js → validation-f6dd44d4.js} +1 -1
  158. package/dist/cjs/{validation-2971571e.js.map → validation-f6dd44d4.js.map} +1 -1
  159. package/dist/components/align.js.map +1 -1
  160. package/dist/components/color.js.map +1 -1
  161. package/dist/components/component14.js +1 -1
  162. package/dist/components/component14.js.map +1 -1
  163. package/dist/components/component15.js.map +1 -1
  164. package/dist/components/component16.js +1 -1
  165. package/dist/components/component16.js.map +1 -1
  166. package/dist/components/component2.js +1 -1
  167. package/dist/components/component2.js.map +1 -1
  168. package/dist/components/component4.js.map +1 -1
  169. package/dist/components/component5.js.map +1 -1
  170. package/dist/components/component6.js.map +1 -1
  171. package/dist/components/controller-icon.js.map +1 -1
  172. package/dist/components/controller.js +1 -1
  173. package/dist/components/controller.js.map +1 -1
  174. package/dist/components/controller2.js.map +1 -1
  175. package/dist/components/controller3.js.map +1 -1
  176. package/dist/components/controller4.js.map +1 -1
  177. package/dist/components/events.js.map +1 -1
  178. package/dist/components/i18n.js.map +1 -1
  179. package/dist/components/index.js.map +1 -1
  180. package/dist/components/kol-avatar.js +1 -1
  181. package/dist/components/kol-avatar.js.map +1 -1
  182. package/dist/components/kol-details.js.map +1 -1
  183. package/dist/components/kol-form.js +1 -1
  184. package/dist/components/kol-form.js.map +1 -1
  185. package/dist/components/kol-input-adapter-leanup.js +1 -1
  186. package/dist/components/kol-input-adapter-leanup.js.map +1 -1
  187. package/dist/components/kol-input-checkbox.js +1 -1
  188. package/dist/components/kol-input-checkbox.js.map +1 -1
  189. package/dist/components/kol-input-color.js +1 -1
  190. package/dist/components/kol-input-color.js.map +1 -1
  191. package/dist/components/kol-input-date.js +1 -1
  192. package/dist/components/kol-input-date.js.map +1 -1
  193. package/dist/components/kol-input-email.js +1 -1
  194. package/dist/components/kol-input-email.js.map +1 -1
  195. package/dist/components/kol-input-file.js +1 -1
  196. package/dist/components/kol-input-file.js.map +1 -1
  197. package/dist/components/kol-input-number.js +1 -1
  198. package/dist/components/kol-input-number.js.map +1 -1
  199. package/dist/components/kol-input-password.js +1 -1
  200. package/dist/components/kol-input-password.js.map +1 -1
  201. package/dist/components/kol-input-range.js +1 -1
  202. package/dist/components/kol-input-range.js.map +1 -1
  203. package/dist/components/kol-input-text.js +1 -1
  204. package/dist/components/kol-input-text.js.map +1 -1
  205. package/dist/components/kol-link-group.js +1 -1
  206. package/dist/components/kol-link-group.js.map +1 -1
  207. package/dist/components/kol-nav.js +1 -1
  208. package/dist/components/kol-nav.js.map +1 -1
  209. package/dist/components/kol-spin.js +1 -1
  210. package/dist/components/kol-spin.js.map +1 -1
  211. package/dist/components/kol-table.js +1 -1
  212. package/dist/components/kol-table.js.map +1 -1
  213. package/dist/components/kol-tabs.js.map +1 -1
  214. package/dist/components/kol-textarea.js +1 -1
  215. package/dist/components/kol-textarea.js.map +1 -1
  216. package/dist/components/kol-toast-container.js.map +1 -1
  217. package/dist/components/kol-toast.js +1 -1
  218. package/dist/components/kol-toast.js.map +1 -1
  219. package/dist/components/prop.validators.js +1 -1
  220. package/dist/components/prop.validators.js.map +1 -1
  221. package/dist/components/tab-index.js.map +1 -1
  222. package/dist/components/validation.js.map +1 -1
  223. package/dist/esm/{a11y.tipps-c347026d.js → a11y.tipps-1cea6b3d.js} +1 -1
  224. package/dist/esm/{a11y.tipps-c347026d.js.map → a11y.tipps-1cea6b3d.js.map} +1 -1
  225. package/dist/esm/{align-27e2835c.js → align-a007e3db.js} +1 -1
  226. package/dist/esm/{align-27e2835c.js.map → align-a007e3db.js.map} +1 -1
  227. package/dist/esm/{alignment-68533fed.js → alignment-7cf13a42.js} +1 -1
  228. package/dist/esm/{alignment-68533fed.js.map → alignment-7cf13a42.js.map} +1 -1
  229. package/dist/esm/{app-globals-e20bbaae.js → app-globals-33e2d739.js} +1 -1
  230. package/dist/esm/{app-globals-e20bbaae.js.map → app-globals-33e2d739.js.map} +1 -1
  231. package/dist/esm/{aria-current-237ef298.js → aria-current-9675e9d1.js} +1 -1
  232. package/dist/esm/{aria-current-237ef298.js.map → aria-current-9675e9d1.js.map} +1 -1
  233. package/dist/esm/{associated.controller-2a2dee1c.js → associated.controller-c4487875.js} +1 -1
  234. package/dist/esm/{associated.controller-2a2dee1c.js.map → associated.controller-c4487875.js.map} +1 -1
  235. package/dist/esm/{color-04abfc7c.js → color-0f13235a.js} +1 -1
  236. package/dist/esm/{color-04abfc7c.js.map → color-0f13235a.js.map} +1 -1
  237. package/dist/esm/{controller-f5ed829a.js → controller-213a22e8.js} +1 -1
  238. package/dist/esm/{controller-f5ed829a.js.map → controller-213a22e8.js.map} +1 -1
  239. package/dist/esm/{controller-b7599521.js → controller-2e3afee2.js} +1 -1
  240. package/dist/esm/{controller-b7599521.js.map → controller-2e3afee2.js.map} +1 -1
  241. package/dist/esm/{controller-89bb64c9.js → controller-86b9d0e8.js} +1 -1
  242. package/dist/esm/{controller-89bb64c9.js.map → controller-86b9d0e8.js.map} +1 -1
  243. package/dist/esm/{controller-53b416bc.js → controller-9b0595a1.js} +1 -1
  244. package/dist/esm/controller-9b0595a1.js.map +1 -0
  245. package/dist/esm/controller-b6a485f1.js +4 -0
  246. package/dist/esm/controller-b6a485f1.js.map +1 -0
  247. package/dist/esm/{controller-icon-f9f90b78.js → controller-icon-90a5af99.js} +1 -1
  248. package/dist/esm/{controller-icon-f9f90b78.js.map → controller-icon-90a5af99.js.map} +1 -1
  249. package/dist/esm/{custom-class-e90f6244.js → custom-class-9470f26b.js} +1 -1
  250. package/dist/esm/{custom-class-e90f6244.js.map → custom-class-9470f26b.js.map} +1 -1
  251. package/dist/esm/{dev.utils-11981c6e.js → dev.utils-8d5cefe9.js} +1 -1
  252. package/dist/esm/{dev.utils-11981c6e.js.map → dev.utils-8d5cefe9.js.map} +1 -1
  253. package/dist/esm/{devtools-dc1528b0.js → devtools-8368d254.js} +1 -1
  254. package/dist/esm/{devtools-dc1528b0.js.map → devtools-8368d254.js.map} +1 -1
  255. package/dist/esm/events-fa760b68.js.map +1 -1
  256. package/dist/esm/form-field-msg-d2bbb1a6.js +4 -0
  257. package/dist/esm/{form-field-msg-1b112ab3.js.map → form-field-msg-d2bbb1a6.js.map} +1 -1
  258. package/dist/esm/{has-closer-d5bb4e12.js → has-closer-a9be38af.js} +1 -1
  259. package/dist/esm/{has-closer-d5bb4e12.js.map → has-closer-a9be38af.js.map} +1 -1
  260. package/dist/esm/{hide-label-c9ce8fc8.js → hide-label-d39d4679.js} +1 -1
  261. package/dist/esm/{hide-label-c9ce8fc8.js.map → hide-label-d39d4679.js.map} +1 -1
  262. package/dist/esm/i18n-fddf0324.js.map +1 -1
  263. package/dist/esm/{icons-e0d64894.js → icons-1e78352d.js} +1 -1
  264. package/dist/esm/{icons-e0d64894.js.map → icons-1e78352d.js.map} +1 -1
  265. package/dist/esm/{image-source-112a2adf.js → image-source-20111f07.js} +1 -1
  266. package/dist/esm/{image-source-112a2adf.js.map → image-source-20111f07.js.map} +1 -1
  267. package/dist/esm/index-c1d028ba.js +4 -0
  268. package/dist/esm/index-c1d028ba.js.map +1 -0
  269. package/dist/esm/index.js +1 -1
  270. package/dist/esm/index.js.map +1 -1
  271. package/dist/esm/kol-abbr.entry.js +1 -1
  272. package/dist/esm/kol-accordion.entry.js +1 -1
  273. package/dist/esm/kol-alert-wc_3.entry.js +1 -1
  274. package/dist/esm/kol-alert-wc_3.entry.js.map +1 -1
  275. package/dist/esm/kol-alert.entry.js +1 -1
  276. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  277. package/dist/esm/kol-avatar.entry.js +1 -1
  278. package/dist/esm/kol-avatar.entry.js.map +1 -1
  279. package/dist/esm/kol-badge.entry.js +1 -1
  280. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  281. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  282. package/dist/esm/kol-button-group.entry.js +1 -1
  283. package/dist/esm/kol-button-link-text-switch.entry.js +1 -1
  284. package/dist/esm/kol-button-link.entry.js +1 -1
  285. package/dist/esm/kol-button.entry.js +1 -1
  286. package/dist/esm/kol-card.entry.js +1 -1
  287. package/dist/esm/kol-details.entry.js +1 -1
  288. package/dist/esm/kol-details.entry.js.map +1 -1
  289. package/dist/esm/kol-form.entry.js +1 -1
  290. package/dist/esm/kol-form.entry.js.map +1 -1
  291. package/dist/esm/kol-heading.entry.js +1 -1
  292. package/dist/esm/kol-icon-font-awesome.entry.js +1 -1
  293. package/dist/esm/kol-icon-icofont.entry.js +1 -1
  294. package/dist/esm/kol-icon.entry.js +1 -1
  295. package/dist/esm/kol-image.entry.js +1 -1
  296. package/dist/esm/kol-indented-text.entry.js +1 -1
  297. package/dist/esm/kol-input-adapter-leanup.entry.js +1 -1
  298. package/dist/esm/kol-input-adapter-leanup.entry.js.map +1 -1
  299. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  300. package/dist/esm/kol-input-checkbox.entry.js.map +1 -1
  301. package/dist/esm/kol-input-color.entry.js +1 -1
  302. package/dist/esm/kol-input-color.entry.js.map +1 -1
  303. package/dist/esm/kol-input-date.entry.js +1 -1
  304. package/dist/esm/kol-input-date.entry.js.map +1 -1
  305. package/dist/esm/kol-input-email.entry.js +1 -1
  306. package/dist/esm/kol-input-email.entry.js.map +1 -1
  307. package/dist/esm/kol-input-file.entry.js +1 -1
  308. package/dist/esm/kol-input-file.entry.js.map +1 -1
  309. package/dist/esm/kol-input-number.entry.js +1 -1
  310. package/dist/esm/kol-input-number.entry.js.map +1 -1
  311. package/dist/esm/kol-input-password.entry.js +1 -1
  312. package/dist/esm/kol-input-password.entry.js.map +1 -1
  313. package/dist/esm/kol-input-radio-group.entry.js +1 -1
  314. package/dist/esm/kol-input-radio.entry.js +1 -1
  315. package/dist/esm/kol-input-radio.entry.js.map +1 -1
  316. package/dist/esm/kol-input-range.entry.js +1 -1
  317. package/dist/esm/kol-input-range.entry.js.map +1 -1
  318. package/dist/esm/kol-input-text.entry.js +1 -1
  319. package/dist/esm/kol-input-text.entry.js.map +1 -1
  320. package/dist/esm/kol-input.entry.js +1 -1
  321. package/dist/esm/kol-kolibri.entry.js +1 -1
  322. package/dist/esm/kol-link-button.entry.js +1 -1
  323. package/dist/esm/kol-link-group.entry.js +1 -1
  324. package/dist/esm/kol-link-group.entry.js.map +1 -1
  325. package/dist/esm/kol-link-wc.entry.js +1 -1
  326. package/dist/esm/kol-link.entry.js +1 -1
  327. package/dist/esm/kol-logo.entry.js +1 -1
  328. package/dist/esm/kol-modal.entry.js +1 -1
  329. package/dist/esm/kol-nav.entry.js +1 -1
  330. package/dist/esm/kol-nav.entry.js.map +1 -1
  331. package/dist/esm/kol-pagination.entry.js +1 -1
  332. package/dist/esm/kol-pagination.entry.js.map +1 -1
  333. package/dist/esm/kol-popover-wc.entry.js +1 -1
  334. package/dist/esm/kol-progress.entry.js +1 -1
  335. package/dist/esm/kol-quote.entry.js +1 -1
  336. package/dist/esm/kol-select.entry.js +1 -1
  337. package/dist/esm/kol-select.entry.js.map +1 -1
  338. package/dist/esm/kol-skip-nav.entry.js +1 -1
  339. package/dist/esm/kol-span-wc_2.entry.js +1 -1
  340. package/dist/esm/kol-span-wc_2.entry.js.map +1 -1
  341. package/dist/esm/kol-span.entry.js +1 -1
  342. package/dist/esm/kol-spin.entry.js +1 -1
  343. package/dist/esm/kol-spin.entry.js.map +1 -1
  344. package/dist/esm/kol-split-button.entry.js +1 -1
  345. package/dist/esm/kol-symbol.entry.js +1 -1
  346. package/dist/esm/kol-table.entry.js +1 -1
  347. package/dist/esm/kol-table.entry.js.map +1 -1
  348. package/dist/esm/kol-tabs.entry.js +1 -1
  349. package/dist/esm/kol-tabs.entry.js.map +1 -1
  350. package/dist/esm/kol-textarea.entry.js +1 -1
  351. package/dist/esm/kol-textarea.entry.js.map +1 -1
  352. package/dist/esm/kol-toast-container.entry.js +1 -1
  353. package/dist/esm/kol-toast-container.entry.js.map +1 -1
  354. package/dist/esm/kol-toast.entry.js +1 -1
  355. package/dist/esm/kol-toast.entry.js.map +1 -1
  356. package/dist/esm/kol-version.entry.js +1 -1
  357. package/dist/esm/kolibri.js +1 -1
  358. package/dist/esm/kolibri.js.map +1 -1
  359. package/dist/esm/{label-0cc3ee5d.js → label-9ebba50f.js} +1 -1
  360. package/dist/esm/{label-0cc3ee5d.js.map → label-9ebba50f.js.map} +1 -1
  361. package/dist/esm/loader.js +1 -1
  362. package/dist/esm/{open-3bbdba74.js → open-156f7856.js} +1 -1
  363. package/dist/esm/{open-3bbdba74.js.map → open-156f7856.js.map} +1 -1
  364. package/dist/esm/{prop.validators-9d76278b.js → prop.validators-8c5a4551.js} +1 -1
  365. package/dist/esm/{prop.validators-9d76278b.js.map → prop.validators-8c5a4551.js.map} +1 -1
  366. package/dist/esm/{rows-ae2f4e8f.js → rows-22867ad4.js} +1 -1
  367. package/dist/esm/{rows-ae2f4e8f.js.map → rows-22867ad4.js.map} +1 -1
  368. package/dist/esm/{show-f887a36f.js → show-8545ccae.js} +1 -1
  369. package/dist/esm/{show-f887a36f.js.map → show-8545ccae.js.map} +1 -1
  370. package/dist/esm/{suggestions-f706f5bc.js → suggestions-8938bb98.js} +1 -1
  371. package/dist/esm/{suggestions-f706f5bc.js.map → suggestions-8938bb98.js.map} +1 -1
  372. package/dist/esm/{tab-index-9fa47228.js → tab-index-42e01244.js} +1 -1
  373. package/dist/esm/{tab-index-9fa47228.js.map → tab-index-42e01244.js.map} +1 -1
  374. package/dist/esm/{tooltip-align-e243c82c.js → tooltip-align-d0553e7f.js} +1 -1
  375. package/dist/esm/{tooltip-align-e243c82c.js.map → tooltip-align-d0553e7f.js.map} +1 -1
  376. package/dist/esm/{validation-e0cdfc8e.js → validation-4822efd5.js} +1 -1
  377. package/dist/esm/{validation-e0cdfc8e.js.map → validation-4822efd5.js.map} +1 -1
  378. package/dist/esm/validation-697ec9e5.js +4 -0
  379. package/dist/esm/{validation-81a932fa.js.map → validation-697ec9e5.js.map} +1 -1
  380. package/dist/kolibri/{a11y.tipps-c347026d.js → a11y.tipps-1cea6b3d.js} +1 -1
  381. package/dist/kolibri/a11y.tipps-1cea6b3d.js.map +1 -0
  382. package/dist/kolibri/align-a007e3db.js +4 -0
  383. package/dist/kolibri/alignment-7cf13a42.js +4 -0
  384. package/dist/kolibri/{alignment-68533fed.js.map → alignment-7cf13a42.js.map} +1 -1
  385. package/dist/kolibri/app-globals-33e2d739.js +4 -0
  386. package/dist/kolibri/{aria-current-237ef298.js → aria-current-9675e9d1.js} +1 -1
  387. package/dist/kolibri/{aria-current-237ef298.js.map → aria-current-9675e9d1.js.map} +1 -1
  388. package/dist/kolibri/{associated.controller-2a2dee1c.js → associated.controller-c4487875.js} +1 -1
  389. package/dist/kolibri/{associated.controller-2a2dee1c.js.map → associated.controller-c4487875.js.map} +1 -1
  390. package/dist/kolibri/{color-04abfc7c.js → color-0f13235a.js} +1 -1
  391. package/dist/kolibri/{color-04abfc7c.js.map → color-0f13235a.js.map} +1 -1
  392. package/dist/kolibri/{controller-f5ed829a.js → controller-213a22e8.js} +1 -1
  393. package/dist/kolibri/{controller-f5ed829a.js.map → controller-213a22e8.js.map} +1 -1
  394. package/dist/kolibri/{controller-b7599521.js → controller-2e3afee2.js} +1 -1
  395. package/dist/kolibri/controller-2e3afee2.js.map +1 -0
  396. package/dist/kolibri/{controller-89bb64c9.js → controller-86b9d0e8.js} +1 -1
  397. package/dist/kolibri/controller-86b9d0e8.js.map +1 -0
  398. package/dist/kolibri/{controller-53b416bc.js → controller-9b0595a1.js} +1 -1
  399. package/dist/kolibri/controller-9b0595a1.js.map +1 -0
  400. package/dist/kolibri/controller-b6a485f1.js +4 -0
  401. package/dist/kolibri/controller-b6a485f1.js.map +1 -0
  402. package/dist/kolibri/{controller-icon-f9f90b78.js → controller-icon-90a5af99.js} +1 -1
  403. package/dist/kolibri/{controller-icon-f9f90b78.js.map → controller-icon-90a5af99.js.map} +1 -1
  404. package/dist/kolibri/{custom-class-e90f6244.js → custom-class-9470f26b.js} +1 -1
  405. package/dist/kolibri/{custom-class-e90f6244.js.map → custom-class-9470f26b.js.map} +1 -1
  406. package/dist/kolibri/{dev.utils-11981c6e.js → dev.utils-8d5cefe9.js} +1 -1
  407. package/dist/kolibri/{dev.utils-11981c6e.js.map → dev.utils-8d5cefe9.js.map} +1 -1
  408. package/dist/kolibri/{devtools-dc1528b0.js → devtools-8368d254.js} +1 -1
  409. package/dist/kolibri/events-fa760b68.js.map +1 -1
  410. package/dist/kolibri/form-field-msg-d2bbb1a6.js +4 -0
  411. package/dist/kolibri/has-closer-a9be38af.js +4 -0
  412. package/dist/kolibri/{has-closer-d5bb4e12.js.map → has-closer-a9be38af.js.map} +1 -1
  413. package/dist/kolibri/hide-label-d39d4679.js +4 -0
  414. package/dist/kolibri/i18n-fddf0324.js.map +1 -1
  415. package/dist/kolibri/icons-1e78352d.js +4 -0
  416. package/dist/kolibri/{icons-e0d64894.js.map → icons-1e78352d.js.map} +1 -1
  417. package/dist/kolibri/image-source-20111f07.js +4 -0
  418. package/dist/kolibri/index-c1d028ba.js +5 -0
  419. package/dist/kolibri/index-c1d028ba.js.map +1 -0
  420. package/dist/kolibri/index.esm.js +1 -1
  421. package/dist/kolibri/index.esm.js.map +1 -1
  422. package/dist/kolibri/kol-abbr.entry.js +1 -1
  423. package/dist/kolibri/kol-accordion.entry.js +1 -1
  424. package/dist/kolibri/kol-alert-wc_3.entry.js +1 -1
  425. package/dist/kolibri/kol-alert-wc_3.entry.js.map +1 -1
  426. package/dist/kolibri/kol-alert.entry.js +1 -1
  427. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  428. package/dist/kolibri/kol-avatar.entry.js +1 -1
  429. package/dist/kolibri/kol-avatar.entry.js.map +1 -1
  430. package/dist/kolibri/kol-badge.entry.js +1 -1
  431. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  432. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  433. package/dist/kolibri/kol-button-group.entry.js +1 -1
  434. package/dist/kolibri/kol-button-link-text-switch.entry.js +1 -1
  435. package/dist/kolibri/kol-button-link.entry.js +1 -1
  436. package/dist/kolibri/kol-button.entry.js +1 -1
  437. package/dist/kolibri/kol-card.entry.js +1 -1
  438. package/dist/kolibri/kol-card.entry.js.map +1 -1
  439. package/dist/kolibri/kol-details.entry.js +1 -1
  440. package/dist/kolibri/kol-details.entry.js.map +1 -1
  441. package/dist/kolibri/kol-form.entry.js +1 -1
  442. package/dist/kolibri/kol-form.entry.js.map +1 -1
  443. package/dist/kolibri/kol-heading.entry.js +1 -1
  444. package/dist/kolibri/kol-icon-font-awesome.entry.js +1 -1
  445. package/dist/kolibri/kol-icon-icofont.entry.js +1 -1
  446. package/dist/kolibri/kol-icon.entry.js +1 -1
  447. package/dist/kolibri/kol-image.entry.js +1 -1
  448. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  449. package/dist/kolibri/kol-input-adapter-leanup.entry.js +1 -1
  450. package/dist/kolibri/kol-input-adapter-leanup.entry.js.map +1 -1
  451. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  452. package/dist/kolibri/kol-input-checkbox.entry.js.map +1 -1
  453. package/dist/kolibri/kol-input-color.entry.js +1 -1
  454. package/dist/kolibri/kol-input-color.entry.js.map +1 -1
  455. package/dist/kolibri/kol-input-date.entry.js +1 -1
  456. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  457. package/dist/kolibri/kol-input-email.entry.js +1 -1
  458. package/dist/kolibri/kol-input-email.entry.js.map +1 -1
  459. package/dist/kolibri/kol-input-file.entry.js +1 -1
  460. package/dist/kolibri/kol-input-file.entry.js.map +1 -1
  461. package/dist/kolibri/kol-input-number.entry.js +1 -1
  462. package/dist/kolibri/kol-input-number.entry.js.map +1 -1
  463. package/dist/kolibri/kol-input-password.entry.js +1 -1
  464. package/dist/kolibri/kol-input-password.entry.js.map +1 -1
  465. package/dist/kolibri/kol-input-radio-group.entry.js +1 -1
  466. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  467. package/dist/kolibri/kol-input-radio.entry.js.map +1 -1
  468. package/dist/kolibri/kol-input-range.entry.js +1 -1
  469. package/dist/kolibri/kol-input-range.entry.js.map +1 -1
  470. package/dist/kolibri/kol-input-text.entry.js +1 -1
  471. package/dist/kolibri/kol-input-text.entry.js.map +1 -1
  472. package/dist/kolibri/kol-input.entry.js +1 -1
  473. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  474. package/dist/kolibri/kol-link-button.entry.js +1 -1
  475. package/dist/kolibri/kol-link-group.entry.js +1 -1
  476. package/dist/kolibri/kol-link-group.entry.js.map +1 -1
  477. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  478. package/dist/kolibri/kol-link.entry.js +1 -1
  479. package/dist/kolibri/kol-logo.entry.js +1 -1
  480. package/dist/kolibri/kol-modal.entry.js +1 -1
  481. package/dist/kolibri/kol-nav.entry.js +1 -1
  482. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  483. package/dist/kolibri/kol-pagination.entry.js +1 -1
  484. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  485. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  486. package/dist/kolibri/kol-progress.entry.js +1 -1
  487. package/dist/kolibri/kol-quote.entry.js +1 -1
  488. package/dist/kolibri/kol-select.entry.js +1 -1
  489. package/dist/kolibri/kol-select.entry.js.map +1 -1
  490. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  491. package/dist/kolibri/kol-span-wc_2.entry.js +1 -1
  492. package/dist/kolibri/kol-span-wc_2.entry.js.map +1 -1
  493. package/dist/kolibri/kol-span.entry.js +1 -1
  494. package/dist/kolibri/kol-spin.entry.js +1 -1
  495. package/dist/kolibri/kol-spin.entry.js.map +1 -1
  496. package/dist/kolibri/kol-split-button.entry.js +1 -1
  497. package/dist/kolibri/kol-symbol.entry.js +1 -1
  498. package/dist/kolibri/kol-table.entry.js +1 -1
  499. package/dist/kolibri/kol-table.entry.js.map +1 -1
  500. package/dist/kolibri/kol-tabs.entry.js +1 -1
  501. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  502. package/dist/kolibri/kol-textarea.entry.js +1 -1
  503. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  504. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  505. package/dist/kolibri/kol-toast-container.entry.js.map +1 -1
  506. package/dist/kolibri/kol-toast.entry.js +1 -1
  507. package/dist/kolibri/kol-toast.entry.js.map +1 -1
  508. package/dist/kolibri/kol-version.entry.js +1 -1
  509. package/dist/kolibri/kolibri.esm.js +1 -1
  510. package/dist/kolibri/kolibri.esm.js.map +1 -1
  511. package/dist/kolibri/label-9ebba50f.js +4 -0
  512. package/dist/kolibri/open-156f7856.js +4 -0
  513. package/dist/kolibri/{prop.validators-9d76278b.js → prop.validators-8c5a4551.js} +1 -1
  514. package/dist/kolibri/{prop.validators-9d76278b.js.map → prop.validators-8c5a4551.js.map} +1 -1
  515. package/dist/kolibri/rows-22867ad4.js +4 -0
  516. package/dist/kolibri/show-8545ccae.js +4 -0
  517. package/dist/kolibri/{suggestions-f706f5bc.js → suggestions-8938bb98.js} +1 -1
  518. package/dist/kolibri/tab-index-42e01244.js +4 -0
  519. package/dist/kolibri/{tab-index-9fa47228.js.map → tab-index-42e01244.js.map} +1 -1
  520. package/dist/kolibri/tooltip-align-d0553e7f.js +4 -0
  521. package/dist/kolibri/validation-4822efd5.js +4 -0
  522. package/dist/kolibri/{validation-e0cdfc8e.js.map → validation-4822efd5.js.map} +1 -1
  523. package/dist/kolibri/validation-697ec9e5.js +4 -0
  524. package/dist/kolibri/{validation-81a932fa.js.map → validation-697ec9e5.js.map} +1 -1
  525. package/dist/types/components/@deprecated/input/controller.d.ts +2 -0
  526. package/dist/types/components/input-email/component.d.ts +1 -0
  527. package/dist/types/components/input-file/component.d.ts +1 -0
  528. package/dist/types/components/input-password/component.d.ts +1 -0
  529. package/dist/types/components/input-text/component.d.ts +2 -2
  530. package/dist/types/types/input/types.d.ts +4 -1
  531. package/dist/types/utils/events.d.ts +1 -1
  532. package/dist/types/utils/prop.validators.d.ts +1 -1
  533. package/dist/types/utils/reuse.d.ts +1 -1
  534. package/doc/abbr.md +1 -1
  535. package/doc/accordion.md +1 -1
  536. package/doc/alert.md +1 -1
  537. package/doc/avatar.md +1 -1
  538. package/doc/badge.md +1 -1
  539. package/doc/breadcrumb.md +1 -1
  540. package/doc/button-group.md +1 -1
  541. package/doc/button-link.md +1 -1
  542. package/doc/button.md +1 -1
  543. package/doc/card.md +1 -1
  544. package/doc/details.md +1 -1
  545. package/doc/form.md +1 -1
  546. package/doc/heading.md +1 -1
  547. package/doc/icon-font-awesome.md +1 -1
  548. package/doc/icon-icofont.md +1 -1
  549. package/doc/icon.md +1 -1
  550. package/doc/indented-text.md +1 -1
  551. package/doc/input-adapter-leanup.md +1 -1
  552. package/doc/input-checkbox.md +2 -2
  553. package/doc/input-color.md +2 -2
  554. package/doc/input-date.md +2 -2
  555. package/doc/input-email.md +2 -2
  556. package/doc/input-file.md +2 -2
  557. package/doc/input-number.md +2 -2
  558. package/doc/input-password.md +2 -2
  559. package/doc/input-radio-group.md +19 -19
  560. package/doc/input-radio.md +22 -22
  561. package/doc/input-range.md +26 -26
  562. package/doc/input-text.md +2 -2
  563. package/doc/link-button.md +1 -1
  564. package/doc/link-group.md +1 -1
  565. package/doc/link.md +1 -1
  566. package/doc/nav.md +1 -1
  567. package/doc/pagination.md +1 -1
  568. package/doc/quote.md +1 -1
  569. package/doc/select.md +27 -27
  570. package/doc/skip-nav.md +1 -1
  571. package/doc/span.md +1 -1
  572. package/doc/split-button.md +1 -1
  573. package/doc/table.md +1 -1
  574. package/doc/tabs.md +1 -1
  575. package/doc/textarea.md +26 -26
  576. package/doc/toast.md +1 -1
  577. package/doc/toaster.md +1 -1
  578. package/doc/tooltip.md +1 -1
  579. package/doc/version.md +1 -1
  580. package/package.json +1 -1
  581. package/dist/cjs/align-806255e3.js +0 -4
  582. package/dist/cjs/aria-current-991d67c0.js +0 -4
  583. package/dist/cjs/controller-0401f50c.js +0 -4
  584. package/dist/cjs/controller-0401f50c.js.map +0 -1
  585. package/dist/cjs/controller-0d92b282.js.map +0 -1
  586. package/dist/cjs/has-closer-4da29289.js +0 -4
  587. package/dist/cjs/hide-label-9fff222f.js +0 -4
  588. package/dist/cjs/image-source-7fc06095.js +0 -4
  589. package/dist/cjs/index-faf3b01d.js +0 -4
  590. package/dist/cjs/index-faf3b01d.js.map +0 -1
  591. package/dist/cjs/open-724e898f.js +0 -4
  592. package/dist/cjs/rows-8e3ab8be.js +0 -4
  593. package/dist/cjs/show-971b8e62.js +0 -4
  594. package/dist/esm/controller-02c1d5f0.js +0 -4
  595. package/dist/esm/controller-02c1d5f0.js.map +0 -1
  596. package/dist/esm/controller-53b416bc.js.map +0 -1
  597. package/dist/esm/form-field-msg-1b112ab3.js +0 -4
  598. package/dist/esm/index-7cc6aa47.js +0 -4
  599. package/dist/esm/index-7cc6aa47.js.map +0 -1
  600. package/dist/esm/validation-81a932fa.js +0 -4
  601. package/dist/kolibri/a11y.tipps-c347026d.js.map +0 -1
  602. package/dist/kolibri/align-27e2835c.js +0 -4
  603. package/dist/kolibri/alignment-68533fed.js +0 -4
  604. package/dist/kolibri/app-globals-e20bbaae.js +0 -4
  605. package/dist/kolibri/controller-02c1d5f0.js +0 -4
  606. package/dist/kolibri/controller-02c1d5f0.js.map +0 -1
  607. package/dist/kolibri/controller-53b416bc.js.map +0 -1
  608. package/dist/kolibri/controller-89bb64c9.js.map +0 -1
  609. package/dist/kolibri/controller-b7599521.js.map +0 -1
  610. package/dist/kolibri/form-field-msg-1b112ab3.js +0 -4
  611. package/dist/kolibri/has-closer-d5bb4e12.js +0 -4
  612. package/dist/kolibri/hide-label-c9ce8fc8.js +0 -4
  613. package/dist/kolibri/icons-e0d64894.js +0 -4
  614. package/dist/kolibri/image-source-112a2adf.js +0 -4
  615. package/dist/kolibri/index-7cc6aa47.js +0 -5
  616. package/dist/kolibri/index-7cc6aa47.js.map +0 -1
  617. package/dist/kolibri/label-0cc3ee5d.js +0 -4
  618. package/dist/kolibri/open-3bbdba74.js +0 -4
  619. package/dist/kolibri/rows-ae2f4e8f.js +0 -4
  620. package/dist/kolibri/show-f887a36f.js +0 -4
  621. package/dist/kolibri/tab-index-9fa47228.js +0 -4
  622. package/dist/kolibri/tooltip-align-e243c82c.js +0 -4
  623. package/dist/kolibri/validation-81a932fa.js +0 -4
  624. package/dist/kolibri/validation-e0cdfc8e.js +0 -4
  625. /package/dist/kolibri/{align-27e2835c.js.map → align-a007e3db.js.map} +0 -0
  626. /package/dist/kolibri/{app-globals-e20bbaae.js.map → app-globals-33e2d739.js.map} +0 -0
  627. /package/dist/kolibri/{devtools-dc1528b0.js.map → devtools-8368d254.js.map} +0 -0
  628. /package/dist/kolibri/{form-field-msg-1b112ab3.js.map → form-field-msg-d2bbb1a6.js.map} +0 -0
  629. /package/dist/kolibri/{hide-label-c9ce8fc8.js.map → hide-label-d39d4679.js.map} +0 -0
  630. /package/dist/kolibri/{image-source-112a2adf.js.map → image-source-20111f07.js.map} +0 -0
  631. /package/dist/kolibri/{label-0cc3ee5d.js.map → label-9ebba50f.js.map} +0 -0
  632. /package/dist/kolibri/{open-3bbdba74.js.map → open-156f7856.js.map} +0 -0
  633. /package/dist/kolibri/{rows-ae2f4e8f.js.map → rows-22867ad4.js.map} +0 -0
  634. /package/dist/kolibri/{show-f887a36f.js.map → show-8545ccae.js.map} +0 -0
  635. /package/dist/kolibri/{suggestions-f706f5bc.js.map → suggestions-8938bb98.js.map} +0 -0
  636. /package/dist/kolibri/{tooltip-align-e243c82c.js.map → tooltip-align-d0553e7f.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"validation-e0cdfc8e.js","mappings":";;;;;MAIa,iBAAiB,GAAG,CAAC,SAAoC,EAAE,KAAc;IACrF,cAAc,CACb,SAAS,EACT,QAAQ,EACR,CAAC,KAAK;QACL,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,CAAC;KAC7D,EACD,IAAI,GAAG,CAAC,CAAC,8BAA8B,CAAC,CAAC,EACzC,KAAK,EACL;QAEC,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH;;;;","names":[],"sources":["src/components/heading/validation.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nexport const watchHeadingLevel = (component: Generic.Element.Component, value?: number): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_level',\n\t\t(value): boolean => {\n\t\t\treturn typeof value === 'number' && 0 <= value && value <= 6;\n\t\t},\n\t\tnew Set(['Number {0, 1, 2, 3, 4, 5, 6}']),\n\t\tvalue,\n\t\t{\n\t\t\t// TODO: options not in the validator\n\t\t\tdefaultValue: 1,\n\t\t\trequired: true,\n\t\t}\n\t);\n};\n"],"version":3}
1
+ {"file":"validation-4822efd5.js","mappings":";;;;;MAIa,iBAAiB,GAAG,CAAC,SAAoC,EAAE,KAAc;IACrF,cAAc,CACb,SAAS,EACT,QAAQ,EACR,CAAC,KAAK;QACL,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC,CAAC;KAC7D,EACD,IAAI,GAAG,CAAC,CAAC,8BAA8B,CAAC,CAAC,EACzC,KAAK,EACL;QAEC,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,IAAI;KACd,CACD,CAAC;AACH;;;;","names":[],"sources":["src/components/heading/validation.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nexport const watchHeadingLevel = (component: Generic.Element.Component, value?: number): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_level',\n\t\t(value): boolean => {\n\t\t\treturn typeof value === 'number' && 0 <= value && value <= 6;\n\t\t},\n\t\tnew Set(['Number {0, 1, 2, 3, 4, 5, 6}']),\n\t\tvalue,\n\t\t{\n\t\t\t// TODO: options not in the validator\n\t\t\tdefaultValue: 1,\n\t\t\trequired: true,\n\t\t},\n\t);\n};\n"],"version":3}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{c as uiUxHintMillerscheZahl}from"./a11y.tipps-1cea6b3d.js";import{c as watchJsonArrayString}from"./prop.validators-8c5a4551.js";const watchNavLinks=(t,a,s)=>{watchJsonArrayString(a,"_links",(t=>"object"==typeof t&&("string"==typeof t._href||"string"==typeof t._label)),s),uiUxHintMillerscheZahl(t,a.state._links.length)};export{watchNavLinks as w};
@@ -1 +1 @@
1
- {"file":"validation-81a932fa.js","mappings":";;;;;;MAUa,aAAa,GAAG,CAC5B,SAAiB,EACjB,SAIC,EACD,KAAsC;IAEtC,oBAAoB,CACnB,SAAS,EACT,QAAQ,EACR,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,QAAQ,KAAK,OAAQ,IAAiB,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAQ,IAAkB,CAAC,MAAM,KAAK,QAAQ,CAAC,EACtI,KAAK,CACL,CAAC;IACF,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAClE;;;;","names":[],"sources":["src/components/nav/validation.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { Stringified } from '../../types/common';\nimport { HrefProp } from '../../types/props/href';\nimport { LabelProp } from '../../types/props/label';\nimport { uiUxHintMillerscheZahl } from '../../utils/a11y.tipps';\nimport { watchJsonArrayString } from '../../utils/prop.validators';\n\ntype HrefOrLabelProp = HrefProp | LabelProp;\n\nexport const watchNavLinks = (\n\tclassName: string,\n\tcomponent: Generic.Element.Component & {\n\t\tstate: {\n\t\t\t_links: HrefOrLabelProp[];\n\t\t};\n\t},\n\tvalue?: Stringified<HrefOrLabelProp[]>\n): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_links',\n\t\t(link) => typeof link === 'object' && (typeof (link as HrefProp)._href === 'string' || typeof (link as LabelProp)._label === 'string'),\n\t\tvalue\n\t);\n\tuiUxHintMillerscheZahl(className, component.state._links.length);\n};\n"],"version":3}
1
+ {"file":"validation-697ec9e5.js","mappings":";;;;;;MAUa,aAAa,GAAG,CAC5B,SAAiB,EACjB,SAIC,EACD,KAAsC;IAEtC,oBAAoB,CACnB,SAAS,EACT,QAAQ,EACR,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,QAAQ,KAAK,OAAQ,IAAiB,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAQ,IAAkB,CAAC,MAAM,KAAK,QAAQ,CAAC,EACtI,KAAK,CACL,CAAC;IACF,sBAAsB,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAClE;;;;","names":[],"sources":["src/components/nav/validation.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { Stringified } from '../../types/common';\nimport { HrefProp } from '../../types/props/href';\nimport { LabelProp } from '../../types/props/label';\nimport { uiUxHintMillerscheZahl } from '../../utils/a11y.tipps';\nimport { watchJsonArrayString } from '../../utils/prop.validators';\n\ntype HrefOrLabelProp = HrefProp | LabelProp;\n\nexport const watchNavLinks = (\n\tclassName: string,\n\tcomponent: Generic.Element.Component & {\n\t\tstate: {\n\t\t\t_links: HrefOrLabelProp[];\n\t\t};\n\t},\n\tvalue?: Stringified<HrefOrLabelProp[]>,\n): void => {\n\twatchJsonArrayString(\n\t\tcomponent,\n\t\t'_links',\n\t\t(link) => typeof link === 'object' && (typeof (link as HrefProp)._href === 'string' || typeof (link as LabelProp)._label === 'string'),\n\t\tvalue,\n\t);\n\tuiUxHintMillerscheZahl(className, component.state._links.length);\n};\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{L as e}from"./dev.utils-11981c6e.js";const i=new Set,o=(n,o)=>{(!1===i.has(n)||(null==o?void 0:o.force))&&(i.add(n),e.debug([n].concat((null==o?void 0:o.details)||[]),{classifier:"✋ a11y",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #09f"}))},n=new Set,r=(i,o)=>{(!1===n.has(i)||(null==o?void 0:o.force))&&(n.add(i),e.warn([i].concat((null==o?void 0:o.details)||[]),{classifier:"🔥 deprecated",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #f00"}))},l=new Set,t=(i,n)=>{(!1===l.has(i)||(null==n?void 0:n.force))&&(l.add(i),e.debug([i].concat((null==n?void 0:n.details)||[]),{classifier:"💻 dev",forceLog:!!(null==n?void 0:n.force),overwriteStyle:"; background-color: #f09"}))},s=(i,n)=>{(!1===l.has(i)||(null==n?void 0:n.force))&&(l.add(i),e.warn([i].concat((null==n?void 0:n.details)||[]),{classifier:"⚠️ dev",forceLog:!!(null==n?void 0:n.force),overwriteStyle:"; background-color: #f09"}))},d=new Set,a=(i,n=!1,o)=>{(!1===d.has(i)||(null==o?void 0:o.force))&&(d.add(i),i+=!0===n?" ✅":"",e.debug([i].concat((null==o?void 0:o.details)||[]),{classifier:"🌟 feature",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #309"}))};t("Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!");const c=new Set,v=(i,n)=>{(!1===c.has(i)||(null==n?void 0:n.force))&&(c.add(i),e.debug([i].concat((null==n?void 0:n.details)||[]),{classifier:"📑 ui/ux",forceLog:!!(null==n?void 0:n.force),overwriteStyle:"; background-color: #060;"}))},u=()=>{o('"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')},f=e=>{"string"==typeof e&&""!==e||o("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")},g=(e,i=8)=>{i>7&&v(`[${e}] 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`)};export{o as a,f as b,g as c,t as d,r as e,a as f,u as g,s as h,v as u};
4
+ import{L as e}from"./dev.utils-8d5cefe9.js";const i=new Set,o=(n,o)=>{(!1===i.has(n)||(null==o?void 0:o.force))&&(i.add(n),e.debug([n].concat((null==o?void 0:o.details)||[]),{classifier:"✋ a11y",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #09f"}))},n=new Set,r=(i,o)=>{(!1===n.has(i)||(null==o?void 0:o.force))&&(n.add(i),e.warn([i].concat((null==o?void 0:o.details)||[]),{classifier:"🔥 deprecated",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #f00"}))},l=new Set,t=(i,n)=>{(!1===l.has(i)||(null==n?void 0:n.force))&&(l.add(i),e.debug([i].concat((null==n?void 0:n.details)||[]),{classifier:"💻 dev",forceLog:!!(null==n?void 0:n.force),overwriteStyle:"; background-color: #f09"}))},s=(i,n)=>{(!1===l.has(i)||(null==n?void 0:n.force))&&(l.add(i),e.warn([i].concat((null==n?void 0:n.details)||[]),{classifier:"⚠️ dev",forceLog:!!(null==n?void 0:n.force),overwriteStyle:"; background-color: #f09"}))},d=new Set,a=(i,n=!1,o)=>{(!1===d.has(i)||(null==o?void 0:o.force))&&(d.add(i),i+=!0===n?" ✅":"",e.debug([i].concat((null==o?void 0:o.details)||[]),{classifier:"🌟 feature",forceLog:!!(null==o?void 0:o.force),overwriteStyle:"; background-color: #309"}))};t("Wir freuen uns über jedes Feedback, Kommentare, Screenshots oder Demo-Links von einer auf KoliBri-basierenden Anwendung (kolibri@itzbund.de). Vielen Dank!");const c=new Set,v=(i,n)=>{(!1===c.has(i)||(null==n?void 0:n.force))&&(c.add(i),e.debug([i].concat((null==n?void 0:n.details)||[]),{classifier:"📑 ui/ux",forceLog:!!(null==n?void 0:n.force),overwriteStyle:"; background-color: #060;"}))},u=()=>{o('"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')},f=e=>{"string"==typeof e&&""!==e||o("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")},g=(e,i=8)=>{i>7&&v(`[${e}] 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`)};export{o as a,f as b,g as c,t as d,r as e,a as f,u as g,s as h,v as u};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["a11yCache","Set","a11yHint","msg","options","has","force","add","Log","debug","concat","details","classifier","forceLog","overwriteStyle","deprecatedCache","deprecatedHint","warn","devCache","devHint","devWarning","featureCache","featureHint","done","uiUxCache","uiUxHint","a11yHintDisabled","a11yHintLabelingLandmarks","value","uiUxHintMillerscheZahl","className","length"],"sources":["src/utils/a11y.tipps.ts"],"sourcesContent":["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\tforceLog: !!options?.force,\n\t\t\toverwriteStyle: '; background-color: #09f',\n\t\t});\n\t}\n};\n\nconst deprecatedCache: Set<string> = new Set();\nexport 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\tforceLog: !!options?.force,\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\tforceLog: !!options?.force,\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\tforceLog: !!options?.force,\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\tforceLog: !!options?.force,\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\tforceLog: !!options?.force,\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"],"mappings":";;;4CAOA,MAAMA,EAAyB,IAAIC,I,MACtBC,EAAW,CAACC,EAAaC,KACrC,GAAIJ,EAAUK,IAAIF,KAAS,UAAWC,IAAO,MAAPA,SAAO,SAAPA,EAASE,OAAO,CACrDN,EAAUO,IAAIJ,GACdK,EAAIC,MAAO,CAACN,GAAmBO,QAAON,IAAO,MAAPA,SAAO,SAAPA,EAASO,UAAW,IAAK,CAC9DC,WAAY,SACZC,YAAYT,IAAO,MAAPA,SAAO,SAAPA,EAASE,OACrBQ,eAAgB,4B,GAKnB,MAAMC,EAA+B,IAAId,I,MAC5Be,EAAiB,CAACb,EAAaC,KAC3C,GAAIW,EAAgBV,IAAIF,KAAS,UAAWC,IAAO,MAAPA,SAAO,SAAPA,EAASE,OAAO,CAC3DS,EAAgBR,IAAIJ,GACpBK,EAAIS,KAAM,CAACd,GAAmBO,QAAON,IAAO,MAAPA,SAAO,SAAPA,EAASO,UAAW,IAAK,CAC7DC,WAAY,gBACZC,YAAYT,IAAO,MAAPA,SAAO,SAAPA,EAASE,OACrBQ,eAAgB,4B,GAKnB,MAAMI,EAAwB,IAAIjB,I,MACrBkB,EAAU,CAAChB,EAAaC,KACpC,GAAIc,EAASb,IAAIF,KAAS,UAAWC,IAAO,MAAPA,SAAO,SAAPA,EAASE,OAAO,CACpDY,EAASX,IAAIJ,GACbK,EAAIC,MAAO,CAACN,GAAmBO,QAAON,IAAO,MAAPA,SAAO,SAAPA,EAASO,UAAW,IAAK,CAC9DC,WAAY,SACZC,YAAYT,IAAO,MAAPA,SAAO,SAAPA,EAASE,OACrBQ,eAAgB,4B,SAINM,EAAa,CAACjB,EAAaC,KACvC,GAAIc,EAASb,IAAIF,KAAS,UAAWC,IAAO,MAAPA,SAAO,SAAPA,EAASE,OAAO,CACpDY,EAASX,IAAIJ,GACbK,EAAIS,KAAM,CAACd,GAAmBO,QAAON,IAAO,MAAPA,SAAO,SAAPA,EAASO,UAAW,IAAK,CAC7DC,WAAY,SACZC,YAAYT,IAAO,MAAPA,SAAO,SAAPA,EAASE,OACrBQ,eAAgB,4B,GAKnB,MAAMO,EAA4B,IAAIpB,I,MACzBqB,EAAc,CAACnB,EAAaoB,EAAO,MAAOnB,KACtD,GAAIiB,EAAahB,IAAIF,KAAS,UAAWC,IAAO,MAAPA,SAAO,SAAPA,EAASE,OAAO,CACxDe,EAAad,IAAIJ,GACjBA,GAAOoB,IAAS,KAAO,KAAO,GAC9Bf,EAAIC,MAAO,CAACN,GAAmBO,QAAON,IAAO,MAAPA,SAAO,SAAPA,EAASO,UAAW,IAAK,CAC9DC,WAAY,aACZC,YAAYT,IAAO,MAAPA,SAAO,SAAPA,EAASE,OACrBQ,eAAgB,4B,GAInBK,EACC,8JAGD,MAAMK,EAAyB,IAAIvB,I,MACtBwB,EAAW,CAACtB,EAAaC,KACrC,GAAIoB,EAAUnB,IAAIF,KAAS,UAAWC,IAAO,MAAPA,SAAO,SAAPA,EAASE,OAAO,CACrDkB,EAAUjB,IAAIJ,GACdK,EAAIC,MAAO,CAACN,GAAmBO,QAAON,IAAO,MAAPA,SAAO,SAAPA,EAASO,UAAW,IAAK,CAC9DC,WAAY,WACZC,YAAYT,IAAO,MAAPA,SAAO,SAAPA,EAASE,OACrBQ,eAAgB,6B,SAKNY,EAAmB,KAC/BxB,EACC,qOACA,E,MAGWyB,EAA6BC,IACzC,UAAWA,IAAU,UAAYA,IAAU,GAAI,CAC9C1B,EACC,sV,SAKU2B,EAAyB,CAACC,EAAmBC,EAAS,KAClE,GAAIA,EAAS,EAAG,CACfN,EACC,IAAIK,yM"}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{v as a}from"./alignment-7cf13a42.js";const n=(n,o)=>{a(n,"_align",o)};export{n as v};
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{w as t}from"./prop.validators-8c5a4551.js";const o=new Set(['"left", "right"']),e=new Set(['"bottom", "top"']),s=new Set([...o,...e]),a=(o,e,a)=>{t(o,e,(t=>"bottom"===t||"left"===t||"right"===t||"top"===t),s,a,{defaultValue:"top"})};export{a as v};
@@ -1 +1 @@
1
- {"version":3,"names":["AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES","Set","AVAILABLE_VERTICAL_ALIGNMENT_VALUES","AVAILABLE_ALIGNMENT_VALUES","validateAlignment","component","propName","value","watchValidator","defaultValue"],"sources":["src/utils/validators/alignment.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { AlignPropType } from '../../types/props/align';\nimport { watchValidator } from '../prop.validators';\n\nconst AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES = new Set(['\"left\", \"right\"']);\n// export const validateHorizontalAlignment = (component: Generic.Element.Component, propName: string, value?: HorizontalAlignment): void => {\n// \twatchValidator(component, propName, (value) => value === 'left' || value === 'right', AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES, value);\n// };\n\nconst AVAILABLE_VERTICAL_ALIGNMENT_VALUES = new Set(['\"bottom\", \"top\"']);\n// export const validateVertivalAlignment = (component: Generic.Element.Component, propName: string, value?: VerticalAlignment): void => {\n// \twatchValidator(component, propName, (value) => value === 'top' || value === 'bottom', AVAILABLE_VERTICAL_ALIGNMENT_VALUES, value);\n// };\n\nconst AVAILABLE_ALIGNMENT_VALUES = new Set([...AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES, ...AVAILABLE_VERTICAL_ALIGNMENT_VALUES]);\nexport const validateAlignment = (component: Generic.Element.Component, propName: string, value?: AlignPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value) => value === 'bottom' || value === 'left' || value === 'right' || value === 'top',\n\t\tAVAILABLE_ALIGNMENT_VALUES,\n\t\tvalue,\n\t\t{ defaultValue: 'top' }\n\t);\n};\n"],"mappings":";;;kDAKA,MAAMA,EAAwC,IAAIC,IAAI,CAAC,oBAKvD,MAAMC,EAAsC,IAAID,IAAI,CAAC,oBAKrD,MAAME,EAA6B,IAAIF,IAAI,IAAID,KAA0CE,I,MAC5EE,EAAoB,CAACC,EAAsCC,EAAkBC,KACzFC,EACCH,EACAC,GACCC,GAAUA,IAAU,UAAYA,IAAU,QAAUA,IAAU,SAAWA,IAAU,OACpFJ,EACAI,EACA,CAAEE,aAAc,OAChB,S"}
1
+ {"version":3,"names":["AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES","Set","AVAILABLE_VERTICAL_ALIGNMENT_VALUES","AVAILABLE_ALIGNMENT_VALUES","validateAlignment","component","propName","value","watchValidator","defaultValue"],"sources":["src/utils/validators/alignment.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { AlignPropType } from '../../types/props/align';\nimport { watchValidator } from '../prop.validators';\n\nconst AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES = new Set(['\"left\", \"right\"']);\n// export const validateHorizontalAlignment = (component: Generic.Element.Component, propName: string, value?: HorizontalAlignment): void => {\n// \twatchValidator(component, propName, (value) => value === 'left' || value === 'right', AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES, value);\n// };\n\nconst AVAILABLE_VERTICAL_ALIGNMENT_VALUES = new Set(['\"bottom\", \"top\"']);\n// export const validateVertivalAlignment = (component: Generic.Element.Component, propName: string, value?: VerticalAlignment): void => {\n// \twatchValidator(component, propName, (value) => value === 'top' || value === 'bottom', AVAILABLE_VERTICAL_ALIGNMENT_VALUES, value);\n// };\n\nconst AVAILABLE_ALIGNMENT_VALUES = new Set([...AVAILABLE_HORIZONTAL_ALIGNMENT_VALUES, ...AVAILABLE_VERTICAL_ALIGNMENT_VALUES]);\nexport const validateAlignment = (component: Generic.Element.Component, propName: string, value?: AlignPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value) => value === 'bottom' || value === 'left' || value === 'right' || value === 'top',\n\t\tAVAILABLE_ALIGNMENT_VALUES,\n\t\tvalue,\n\t\t{ defaultValue: 'top' },\n\t);\n};\n"],"mappings":";;;kDAKA,MAAMA,EAAwC,IAAIC,IAAI,CAAC,oBAKvD,MAAMC,EAAsC,IAAID,IAAI,CAAC,oBAKrD,MAAME,EAA6B,IAAIF,IAAI,IAAID,KAA0CE,I,MAC5EE,EAAoB,CAACC,EAAsCC,EAAkBC,KACzFC,EACCH,EACAC,GACCC,GAAUA,IAAU,UAAYA,IAAU,QAAUA,IAAU,SAAWA,IAAU,OACpFJ,EACAI,EACA,CAAEE,aAAc,OAChB,S"}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * KoliBri - The accessible HTML-Standard
3
+ */
4
+ import{a as o}from"./index-c1d028ba.js";import{e as t,j as e}from"./index-117bd1aa.js";import{L as s}from"./dev.utils-8d5cefe9.js";import{p as i}from"./reuse-d79ab469.js";o((o=>(o.shadowRoot instanceof ShadowRoot&&t(o,e(o)),"default"))),import("./devtools-8368d254.js").then((o=>{"object"==typeof o&&null!==o&&"function"==typeof o.initialize&&o.initialize()})).catch((o=>{s.error(o)})),i&&import("./index-0e51998c.js");const r=()=>{},a=r,f=a;export{f as g};
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{d as a,w as t}from"./prop.validators-9d76278b.js";const o=(t,e)=>{a(t,"_role",e)},s=(t,e)=>{a(t,"_ariaControls",e)},e=(a,e,o)=>{t(a,e,(a=>"date"===a||"location"===a||"page"===a||"step"===a||"time"===a||!0===a||!1===a),new Set(["String {data, location, page, step, time}","boolean"]),o)},r=(a,t)=>{e(a,"_ariaCurrent",t)},n=(a,t)=>{e(a,"_listenAriaCurrent",t)};export{r as a,n as b,o as c,s as v};
4
+ import{d as a,w as t}from"./prop.validators-8c5a4551.js";const o=(t,e)=>{a(t,"_role",e)},s=(t,e)=>{a(t,"_ariaControls",e)},e=(a,e,o)=>{t(a,e,(a=>"date"===a||"location"===a||"page"===a||"step"===a||"time"===a||!0===a||!1===a),new Set(["String {data, location, page, step, time}","boolean"]),o)},r=(a,t)=>{e(a,"_ariaCurrent",t)},n=(a,t)=>{e(a,"_listenAriaCurrent",t)};export{r as a,n as b,o as c,s as v};
@@ -1 +1 @@
1
- {"version":3,"names":["validateAlternativeButtonLinkRole","component","value","watchString","validateAriaControls","validate","propName","watchValidator","Set","validateAriaCurrent","validateListenAriaCurrent"],"sources":["src/types/props/alternative-button-link-role.ts","src/types/props/aria-controls.ts","src/types/props/aria-current.ts"],"sourcesContent":["/* types */\nimport type { Generic } from 'adopted-style-sheets';\nimport { watchString } from '../../utils/prop.validators';\n\nexport type AlternativeButtonLinkRolePropType = 'button' | 'link' | 'tab';\n\n/**\n * Defines the role of the components primary element.\n */\nexport type PropAlternativeButtonLinkRole = {\n\trole: AlternativeButtonLinkRolePropType;\n};\n\n/* validator */\nexport const validateAlternativeButtonLinkRole = (component: Generic.Element.Component, value?: AlternativeButtonLinkRolePropType) => {\n\twatchString(component, '_role', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString } from '../../utils/prop.validators';\n\n/* types */\n/**\n * Defines which elements are being controlled. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n * @deprecated\n */\ntype AriaControlsPropType = string;\n\n/**\n * @deprecated\n */\nexport type PropAriaControls = {\n\tariaControls: AriaControlsPropType;\n};\n\n/* validator */\nexport const validateAriaControls = (component: Generic.Element.Component, value?: AriaControlsPropType): void => {\n\twatchString(component, '_ariaControls', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\n/* types */\n/**\n * Marks the element as the selected in a group of related elements. Can be one of the following: `date` | `location` | `page` | `step` | `time` | `true`.\n * (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n */\nexport type AriaCurrentPropType = 'date' | 'location' | 'page' | 'step' | 'time' | boolean;\n\n/**\n * @deprecated use `PropListenAriaCurrent` instead\n */\nexport type PropAriaCurrent = {\n\t/**\n\t * @deprecated use `listenAriaCurrent` instead\n\t */\n\tariaCurrent: AriaCurrentPropType;\n};\n\nexport type PropListenAriaCurrent = {\n\tlistenAriaCurrent: AriaCurrentPropType;\n};\n\n/* validator */\nconst validate = (component: Generic.Element.Component, propName: string, value?: AriaCurrentPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value) => value === 'date' || value === 'location' || value === 'page' || value === 'step' || value === 'time' || value === true || value === false,\n\t\tnew Set(['String {data, location, page, step, time}', 'boolean']),\n\t\tvalue\n\t);\n};\nexport const validateAriaCurrent = (component: Generic.Element.Component, value?: AriaCurrentPropType): void => {\n\tvalidate(component, '_ariaCurrent', value);\n};\nexport const validateListenAriaCurrent = (component: Generic.Element.Component, value?: AriaCurrentPropType): void => {\n\tvalidate(component, '_listenAriaCurrent', value);\n};\n"],"mappings":";;;+DAcaA,EAAoC,CAACC,EAAsCC,KACvFC,EAAYF,EAAW,QAASC,EAAM,E,MCI1BE,EAAuB,CAACH,EAAsCC,KAC1EC,EAAYF,EAAW,gBAAiBC,EAAM,ECM/C,MAAMG,EAAW,CAACJ,EAAsCK,EAAkBJ,KACzEK,EACCN,EACAK,GACCJ,GAAUA,IAAU,QAAUA,IAAU,YAAcA,IAAU,QAAUA,IAAU,QAAUA,IAAU,QAAUA,IAAU,MAAQA,IAAU,OAC/I,IAAIM,IAAI,CAAC,4CAA6C,YACtDN,EACA,E,MAEWO,EAAsB,CAACR,EAAsCC,KACzEG,EAASJ,EAAW,eAAgBC,EAAM,E,MAE9BQ,EAA4B,CAACT,EAAsCC,KAC/EG,EAASJ,EAAW,qBAAsBC,EAAM,S"}
1
+ {"version":3,"names":["validateAlternativeButtonLinkRole","component","value","watchString","validateAriaControls","validate","propName","watchValidator","Set","validateAriaCurrent","validateListenAriaCurrent"],"sources":["src/types/props/alternative-button-link-role.ts","src/types/props/aria-controls.ts","src/types/props/aria-current.ts"],"sourcesContent":["/* types */\nimport type { Generic } from 'adopted-style-sheets';\nimport { watchString } from '../../utils/prop.validators';\n\nexport type AlternativeButtonLinkRolePropType = 'button' | 'link' | 'tab';\n\n/**\n * Defines the role of the components primary element.\n */\nexport type PropAlternativeButtonLinkRole = {\n\trole: AlternativeButtonLinkRolePropType;\n};\n\n/* validator */\nexport const validateAlternativeButtonLinkRole = (component: Generic.Element.Component, value?: AlternativeButtonLinkRolePropType) => {\n\twatchString(component, '_role', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString } from '../../utils/prop.validators';\n\n/* types */\n/**\n * Defines which elements are being controlled. (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-controls)\n * @deprecated\n */\ntype AriaControlsPropType = string;\n\n/**\n * @deprecated\n */\nexport type PropAriaControls = {\n\tariaControls: AriaControlsPropType;\n};\n\n/* validator */\nexport const validateAriaControls = (component: Generic.Element.Component, value?: AriaControlsPropType): void => {\n\twatchString(component, '_ariaControls', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\n/* types */\n/**\n * Marks the element as the selected in a group of related elements. Can be one of the following: `date` | `location` | `page` | `step` | `time` | `true`.\n * (https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-current)\n */\nexport type AriaCurrentPropType = 'date' | 'location' | 'page' | 'step' | 'time' | boolean;\n\n/**\n * @deprecated use `PropListenAriaCurrent` instead\n */\nexport type PropAriaCurrent = {\n\t/**\n\t * @deprecated use `listenAriaCurrent` instead\n\t */\n\tariaCurrent: AriaCurrentPropType;\n};\n\nexport type PropListenAriaCurrent = {\n\tlistenAriaCurrent: AriaCurrentPropType;\n};\n\n/* validator */\nconst validate = (component: Generic.Element.Component, propName: string, value?: AriaCurrentPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\tpropName,\n\t\t(value) => value === 'date' || value === 'location' || value === 'page' || value === 'step' || value === 'time' || value === true || value === false,\n\t\tnew Set(['String {data, location, page, step, time}', 'boolean']),\n\t\tvalue,\n\t);\n};\nexport const validateAriaCurrent = (component: Generic.Element.Component, value?: AriaCurrentPropType): void => {\n\tvalidate(component, '_ariaCurrent', value);\n};\nexport const validateListenAriaCurrent = (component: Generic.Element.Component, value?: AriaCurrentPropType): void => {\n\tvalidate(component, '_listenAriaCurrent', value);\n};\n"],"mappings":";;;+DAcaA,EAAoC,CAACC,EAAsCC,KACvFC,EAAYF,EAAW,QAASC,EAAM,E,MCI1BE,EAAuB,CAACH,EAAsCC,KAC1EC,EAAYF,EAAW,gBAAiBC,EAAM,ECM/C,MAAMG,EAAW,CAACJ,EAAsCK,EAAkBJ,KACzEK,EACCN,EACAK,GACCJ,GAAUA,IAAU,QAAUA,IAAU,YAAcA,IAAU,QAAUA,IAAU,QAAUA,IAAU,QAAUA,IAAU,MAAQA,IAAU,OAC/I,IAAIM,IAAI,CAAC,4CAA6C,YACtDN,EACA,E,MAEWO,EAAsB,CAACR,EAAsCC,KACzEG,EAASJ,EAAW,eAAgBC,EAAM,E,MAE9BQ,EAA4B,CAACT,EAAsCC,KAC/EG,EAASJ,EAAW,qBAAsBC,EAAM,S"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{d as t}from"./prop.validators-9d76278b.js";import{d as e,h as i}from"./a11y.tipps-c347026d.js";import{a as s}from"./dev.utils-11981c6e.js";const a=(e,s,i)=>{t(e,"_name",s,i)},o=t=>"KOL-BUTTON"===t||"KOL-INPUT-CHECKBOX"===t||"KOL-INPUT-COLOR"===t||"KOL-INPUT-DATE"===t||"KOL-INPUT-EMAIL"===t||"KOL-INPUT-FILE"===t||"KOL-INPUT-NUMBER"===t||"KOL-INPUT-PASSWORD"===t||"KOL-INPUT-RADIO"===t||"KOL-INPUT-RANGE"===t||"KOL-INPUT-TEXT"===t||"KOL-SELECT"===t||"KOL-TEXTAREA"===t;class n{constructor(t,i,a){var r,n,l;if(this.experimentalMode=s(),this.setFormAssociatedValue=t=>{var s;const i=null===(s=this.formAssociated)||void 0===s?void 0:s.getAttribute("name");null!==i&&""!==i||e(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const o=this.tryToStringifyValue(t);this.syncValue(t,o,this.formAssociated),this.syncValue(t,o,this.syncToOwnInput)},this.component=t,this.host=this.findHostWithShadowRoot(a),this.type=i,this.experimentalMode&&o(null===(r=this.host)||void 0===r?void 0:r.tagName)){switch(null===(n=this.host)||void 0===n||n.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.type){case"button":case"color":case"date":case"email":case"file":case"number":case"password":case"radio":case"range":case"text":this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type",this.type);break;case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("aria-hidden","true"),this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(l=this.host)||void 0===l||l.appendChild(this.formAssociated)}}findHostWithShadowRoot(t){for(;null===(null==t?void 0:t.shadowRoot)&&t!==document.body;)(t=null==t?void 0:t.parentNode).host&&(t=t.host);return t}setAttribute(t,e,s){if(this.experimentalMode)try{if("boolean"!=typeof(s="object"==typeof s&&null!==s?JSON.stringify(s):s)&&"number"!=typeof s&&"string"!=typeof s)throw new Error("Invalid value type: "+typeof s);null==e||e.setAttribute(t,`${s}`)}catch(s){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return i(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,s){if(s)switch(this.type){case"file":s.files=t;break;case"select":s.querySelectorAll("option").forEach((t=>{s.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),s.appendChild(t)}}));break;default:"string"==typeof e?(s.setAttribute("value",e),s.value=e):(s.removeAttribute("value"),s.value="")}}validateName(t){a(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&e("Ein Name am Eingabefeldern oder Schalter ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.")}validateSyncValueBySelector(t){if(this.experimentalMode&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}componentWillLoad(){this.validateName(this.component._name),this.validateSyncValueBySelector(this.component._syncValueBySelector)}}export{n as A};
4
+ import{d as t}from"./prop.validators-8c5a4551.js";import{d as e,h as i}from"./a11y.tipps-1cea6b3d.js";import{a as s}from"./dev.utils-8d5cefe9.js";const a=(e,s,i)=>{t(e,"_name",s,i)},o=t=>"KOL-BUTTON"===t||"KOL-INPUT-CHECKBOX"===t||"KOL-INPUT-COLOR"===t||"KOL-INPUT-DATE"===t||"KOL-INPUT-EMAIL"===t||"KOL-INPUT-FILE"===t||"KOL-INPUT-NUMBER"===t||"KOL-INPUT-PASSWORD"===t||"KOL-INPUT-RADIO"===t||"KOL-INPUT-RANGE"===t||"KOL-INPUT-TEXT"===t||"KOL-SELECT"===t||"KOL-TEXTAREA"===t;class n{constructor(t,i,a){var r,n,l;if(this.experimentalMode=s(),this.setFormAssociatedValue=t=>{var s;const i=null===(s=this.formAssociated)||void 0===s?void 0:s.getAttribute("name");null!==i&&""!==i||e(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);const o=this.tryToStringifyValue(t);this.syncValue(t,o,this.formAssociated),this.syncValue(t,o,this.syncToOwnInput)},this.component=t,this.host=this.findHostWithShadowRoot(a),this.type=i,this.experimentalMode&&o(null===(r=this.host)||void 0===r?void 0:r.tagName)){switch(null===(n=this.host)||void 0===n||n.querySelectorAll("input,select,textarea").forEach((t=>{var e;null===(e=this.host)||void 0===e||e.removeChild(t)})),this.type){case"button":case"color":case"date":case"email":case"file":case"number":case"password":case"radio":case"range":case"text":this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type",this.type);break;case"select":this.formAssociated=document.createElement("select"),this.formAssociated.setAttribute("multiple","");break;case"textarea":this.formAssociated=document.createElement("textarea");break;default:this.formAssociated=document.createElement("input"),this.formAssociated.setAttribute("type","hidden")}this.formAssociated.setAttribute("aria-hidden","true"),this.formAssociated.setAttribute("data-form-associated",""),this.formAssociated.setAttribute("hidden",""),null===(l=this.host)||void 0===l||l.appendChild(this.formAssociated)}}findHostWithShadowRoot(t){for(;null===(null==t?void 0:t.shadowRoot)&&t!==document.body;)(t=null==t?void 0:t.parentNode).host&&(t=t.host);return t}setAttribute(t,e,s){if(this.experimentalMode)try{if("boolean"!=typeof(s="object"==typeof s&&null!==s?JSON.stringify(s):s)&&"number"!=typeof s&&"string"!=typeof s)throw new Error("Invalid value type: "+typeof s);null==e||e.setAttribute(t,`${s}`)}catch(s){null==e||e.removeAttribute(t)}}tryToStringifyValue(t){try{return"object"==typeof t&&null!==t?JSON.stringify(t).toString():null==t?null:t.toString()}catch(t){return i(`The form field raw value is not able to stringify! ${t}`),""}}syncValue(t,e,s){if(s)switch(this.type){case"file":s.files=t;break;case"select":s.querySelectorAll("option").forEach((t=>{s.removeChild(t)})),Array.isArray(t)&&t.forEach((t=>{const e=this.tryToStringifyValue(t);if("string"==typeof e){const t=document.createElement("option");t.setAttribute("value",e),t.setAttribute("selected",""),s.appendChild(t)}}));break;default:"string"==typeof e?(s.setAttribute("value",e),s.value=e):(s.removeAttribute("value"),s.value="")}}validateName(t){a(this.component,t,{hooks:{afterPatch:()=>{this.setAttribute("name",this.formAssociated,this.component.state._name)}}}),void 0===t&&e("Ein Name am Eingabefeldern oder Schalter ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.")}validateSyncValueBySelector(t){if(this.experimentalMode&&"string"==typeof t){const e=document.querySelector(t);e&&(this.syncToOwnInput=e)}}componentWillLoad(){this.validateName(this.component._name),this.validateSyncValueBySelector(this.component._syncValueBySelector)}}export{n as A};
@@ -1 +1 @@
1
- {"version":3,"names":["validateName","component","value","options","watchString","isAssociatedTagName","name","AssociatedInputController","constructor","type","host","this","experimentalMode","getExperimentalMode","setFormAssociatedValue","rawValue","_a","formAssociated","getAttribute","devHint","strValue","tryToStringifyValue","syncValue","syncToOwnInput","findHostWithShadowRoot","tagName","_b","querySelectorAll","forEach","el","removeChild","document","createElement","setAttribute","_c","appendChild","shadowRoot","body","parentNode","qualifiedName","element","JSON","stringify","Error","e","removeAttribute","toString","undefined","devWarning","associatedElement","files","Array","isArray","rawValueItem","strValueItem","option","hooks","afterPatch","state","_name","validateSyncValueBySelector","input","querySelector","componentWillLoad","_syncValueBySelector"],"sources":["src/types/props/name.ts","src/components/input-adapter-leanup/associated.controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString, WatchStringOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type NamePropType = string;\n\n/**\n * Defines the technical name of an input field.\n */\nexport type PropName = {\n\tname: NamePropType;\n};\n\n/* validator */\nexport const validateName = (component: Generic.Element.Component, value?: NamePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_name', value, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { NamePropType, validateName } from '../../types/props/name';\nimport { PropSyncValueBySelector, SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { StencilUnknown } from '../../types/unknown';\nimport { devHint, devWarning } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tname: string;\n} & PropSyncValueBySelector;\ntype Props = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype Watches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\ntype HTMLInputFileElement = HTMLInputElement & {\n\tfiles: FileList;\n};\n\nconst isAssociatedTagName = (name?: string): boolean =>\n\tname === 'KOL-BUTTON' ||\n\tname === 'KOL-INPUT-CHECKBOX' ||\n\tname === 'KOL-INPUT-COLOR' ||\n\tname === 'KOL-INPUT-DATE' ||\n\tname === 'KOL-INPUT-EMAIL' ||\n\tname === 'KOL-INPUT-FILE' ||\n\tname === 'KOL-INPUT-NUMBER' ||\n\tname === 'KOL-INPUT-PASSWORD' ||\n\tname === 'KOL-INPUT-RADIO' ||\n\tname === 'KOL-INPUT-RANGE' ||\n\tname === 'KOL-INPUT-TEXT' ||\n\tname === 'KOL-SELECT' ||\n\tname === 'KOL-TEXTAREA';\n\nexport class AssociatedInputController implements Watches {\n\tprivate readonly experimentalMode = getExperimentalMode();\n\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly type: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, type: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.host = this.findHostWithShadowRoot(host);\n\t\tthis.type = type;\n\n\t\tif (this.experimentalMode && isAssociatedTagName(this.host?.tagName)) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'button':\n\t\t\t\tcase 'color':\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'email':\n\t\t\t\tcase 'file':\n\t\t\t\tcase 'number':\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'range':\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', this.type);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'checkbox': // Checkbox use default case\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\t/**\n\t * The associated elements must not reside within the ShadowRoot and must\n\t * reside as children in the host to be recognized by native forms.\n\t */\n\tprivate findHostWithShadowRoot(host?: HTMLElement): HTMLElement | undefined {\n\t\twhile (host?.shadowRoot === null && host !== document.body) {\n\t\t\thost = host?.parentNode as HTMLElement;\n\t\t\tif ((host as unknown as ShadowRoot).host) {\n\t\t\t\thost = (host as unknown as ShadowRoot).host as HTMLElement;\n\t\t\t}\n\t\t}\n\t\treturn host;\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (this.experimentalMode) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(\n\t\trawValue: StencilUnknown,\n\t\tstrValue: string | null,\n\t\tassociatedElement?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement\n\t) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'file':\n\t\t\t\t\t(associatedElement as HTMLInputFileElement).files = rawValue as FileList;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateName(value?: NamePropType): void {\n\t\tvalidateName(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`Ein Name am Eingabefeldern oder Schalter ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.`\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tif (this.experimentalMode && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t}\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["validateName","component","value","options","watchString","isAssociatedTagName","name","AssociatedInputController","constructor","type","host","this","experimentalMode","getExperimentalMode","setFormAssociatedValue","rawValue","_a","formAssociated","getAttribute","devHint","strValue","tryToStringifyValue","syncValue","syncToOwnInput","findHostWithShadowRoot","tagName","_b","querySelectorAll","forEach","el","removeChild","document","createElement","setAttribute","_c","appendChild","shadowRoot","body","parentNode","qualifiedName","element","JSON","stringify","Error","e","removeAttribute","toString","undefined","devWarning","associatedElement","files","Array","isArray","rawValueItem","strValueItem","option","hooks","afterPatch","state","_name","validateSyncValueBySelector","input","querySelector","componentWillLoad","_syncValueBySelector"],"sources":["src/types/props/name.ts","src/components/input-adapter-leanup/associated.controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchString, WatchStringOptions } from '../../utils/prop.validators';\n\n/* types */\nexport type NamePropType = string;\n\n/**\n * Defines the technical name of an input field.\n */\nexport type PropName = {\n\tname: NamePropType;\n};\n\n/* validator */\nexport const validateName = (component: Generic.Element.Component, value?: NamePropType, options?: WatchStringOptions): void => {\n\twatchString(component, '_name', value, options);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { NamePropType, validateName } from '../../types/props/name';\nimport { PropSyncValueBySelector, SyncValueBySelectorPropType } from '../../types/props/sync-value-by-selector';\nimport { StencilUnknown } from '../../types/unknown';\nimport { devHint, devWarning } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tname: string;\n} & PropSyncValueBySelector;\ntype Props = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype Watches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\ntype HTMLInputFileElement = HTMLInputElement & {\n\tfiles: FileList;\n};\n\nconst isAssociatedTagName = (name?: string): boolean =>\n\tname === 'KOL-BUTTON' ||\n\tname === 'KOL-INPUT-CHECKBOX' ||\n\tname === 'KOL-INPUT-COLOR' ||\n\tname === 'KOL-INPUT-DATE' ||\n\tname === 'KOL-INPUT-EMAIL' ||\n\tname === 'KOL-INPUT-FILE' ||\n\tname === 'KOL-INPUT-NUMBER' ||\n\tname === 'KOL-INPUT-PASSWORD' ||\n\tname === 'KOL-INPUT-RADIO' ||\n\tname === 'KOL-INPUT-RANGE' ||\n\tname === 'KOL-INPUT-TEXT' ||\n\tname === 'KOL-SELECT' ||\n\tname === 'KOL-TEXTAREA';\n\nexport class AssociatedInputController implements Watches {\n\tprivate readonly experimentalMode = getExperimentalMode();\n\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprotected readonly type: string;\n\tprotected readonly host?: HTMLElement;\n\n\tpublic readonly formAssociated?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\tpublic syncToOwnInput?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\n\tpublic constructor(component: Generic.Element.Component & Props, type: string, host?: HTMLElement) {\n\t\tthis.component = component;\n\t\tthis.host = this.findHostWithShadowRoot(host);\n\t\tthis.type = type;\n\n\t\tif (this.experimentalMode && isAssociatedTagName(this.host?.tagName)) {\n\t\t\tthis.host?.querySelectorAll('input,select,textarea').forEach((el) => {\n\t\t\t\tthis.host?.removeChild(el);\n\t\t\t});\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'button':\n\t\t\t\tcase 'color':\n\t\t\t\tcase 'date':\n\t\t\t\tcase 'email':\n\t\t\t\tcase 'file':\n\t\t\t\tcase 'number':\n\t\t\t\tcase 'password':\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'range':\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', this.type);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\tthis.formAssociated = document.createElement('select');\n\t\t\t\t\tthis.formAssociated.setAttribute('multiple', '');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'textarea':\n\t\t\t\t\tthis.formAssociated = document.createElement('textarea');\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'checkbox': // Checkbox use default case\n\t\t\t\tdefault:\n\t\t\t\t\tthis.formAssociated = document.createElement('input');\n\t\t\t\t\tthis.formAssociated.setAttribute('type', 'hidden');\n\t\t\t}\n\t\t\tthis.formAssociated.setAttribute('aria-hidden', 'true');\n\t\t\tthis.formAssociated.setAttribute('data-form-associated', '');\n\t\t\tthis.formAssociated.setAttribute('hidden', '');\n\t\t\tthis.host?.appendChild(this.formAssociated);\n\t\t}\n\t}\n\n\t/**\n\t * The associated elements must not reside within the ShadowRoot and must\n\t * reside as children in the host to be recognized by native forms.\n\t */\n\tprivate findHostWithShadowRoot(host?: HTMLElement): HTMLElement | undefined {\n\t\twhile (host?.shadowRoot === null && host !== document.body) {\n\t\t\thost = host?.parentNode as HTMLElement;\n\t\t\tif ((host as unknown as ShadowRoot).host) {\n\t\t\t\thost = (host as unknown as ShadowRoot).host as HTMLElement;\n\t\t\t}\n\t\t}\n\t\treturn host;\n\t}\n\n\tprotected setAttribute(qualifiedName: string, element?: HTMLElement, value?: string | number | boolean) {\n\t\tif (this.experimentalMode) {\n\t\t\ttry {\n\t\t\t\tvalue = typeof value === 'object' && value !== null ? JSON.stringify(value) : value;\n\t\t\t\tif (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') {\n\t\t\t\t\telement?.setAttribute(qualifiedName, `${value as string}`);\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Invalid value type: ${typeof value}`);\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\telement?.removeAttribute(qualifiedName);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * We need to stringify the value, for the setAttribute method.\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes\n\t * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes#value\n\t *\n\t * TODO: It is possible that the value are a cyclic object value. So we need a custom\n\t * JSON.stringify method from outside to convert it to string.\n\t */\n\tprivate tryToStringifyValue(value: StencilUnknown): string | null {\n\t\ttry {\n\t\t\treturn typeof value === 'object' && value !== null ? JSON.stringify(value).toString() : value === null || value === undefined ? null : value.toString();\n\t\t} catch (e) {\n\t\t\tdevWarning(`The form field raw value is not able to stringify! ${e as string}`);\n\t\t\treturn '';\n\t\t}\n\t}\n\n\t/**\n\t * We try to support native form-associated custom elements.\n\t *\n\t * @see https://github.com/public-ui/kolibri/discussions/2821\n\t */\n\tpublic readonly setFormAssociatedValue = (rawValue: StencilUnknown) => {\n\t\tconst name = this.formAssociated?.getAttribute('name');\n\t\tif (name === null || name === '') {\n\t\t\tdevHint(` The form field (${this.type}) must have a name attribute to be form-associated. Please define the _name attribute.`);\n\t\t}\n\t\tconst strValue = this.tryToStringifyValue(rawValue);\n\t\tthis.syncValue(rawValue, strValue, this.formAssociated);\n\t\tthis.syncValue(rawValue, strValue, this.syncToOwnInput);\n\t};\n\n\tprivate syncValue(\n\t\trawValue: StencilUnknown,\n\t\tstrValue: string | null,\n\t\tassociatedElement?: HTMLButtonElement | HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement,\n\t) {\n\t\tif (associatedElement) {\n\t\t\tswitch (this.type) {\n\t\t\t\tcase 'file':\n\t\t\t\t\t(associatedElement as HTMLInputFileElement).files = rawValue as FileList;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'select':\n\t\t\t\t\t(associatedElement as HTMLSelectElement).querySelectorAll('option').forEach((el) => {\n\t\t\t\t\t\t(associatedElement as HTMLSelectElement).removeChild(el);\n\t\t\t\t\t});\n\t\t\t\t\tif (Array.isArray(rawValue)) {\n\t\t\t\t\t\trawValue.forEach((rawValueItem) => {\n\t\t\t\t\t\t\tconst strValueItem = this.tryToStringifyValue(rawValueItem as string);\n\t\t\t\t\t\t\tif (typeof strValueItem === 'string') {\n\t\t\t\t\t\t\t\tconst option = document.createElement('option');\n\t\t\t\t\t\t\t\toption.setAttribute('value', strValueItem);\n\t\t\t\t\t\t\t\toption.setAttribute('selected', '');\n\t\t\t\t\t\t\t\t(associatedElement as HTMLSelectElement).appendChild(option);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tif (typeof strValue === 'string') {\n\t\t\t\t\t\tassociatedElement.setAttribute('value', strValue);\n\t\t\t\t\t\tassociatedElement.value = strValue;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tassociatedElement.removeAttribute('value');\n\t\t\t\t\t\tassociatedElement.value = '';\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic validateName(value?: NamePropType): void {\n\t\tvalidateName(this.component, value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: () => {\n\t\t\t\t\tthis.setAttribute('name', this.formAssociated, this.component.state._name as string);\n\t\t\t\t},\n\t\t\t},\n\t\t});\n\t\tif (typeof value === 'undefined') {\n\t\t\tdevHint(\n\t\t\t\t`Ein Name am Eingabefeldern oder Schalter ist nicht zwingend erforderlich, kann aber für die Autocomplete-Funktion und für das statische Versenden des Eingabefeldes relevant sein.`,\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tif (this.experimentalMode && typeof value === 'string') {\n\t\t\tconst input = document.querySelector(value) as HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement;\n\t\t\tif (input /* SSR instanceof HTMLInputElement */) {\n\t\t\t\tthis.syncToOwnInput = input;\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateName(this.component._name);\n\t\tthis.validateSyncValueBySelector(this.component._syncValueBySelector);\n\t}\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as e,b as r,w as a}from"./prop.validators-9d76278b.js";import{a as t}from"./a11y.tipps-c347026d.js";var n={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},l=n,o=s,i={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function s(e){var r,a,o=[],t=1;if("string"==typeof e)if(e=e.toLowerCase(),l[e])o=l[e].slice(),a="rgb";else if("transparent"===e)t=0,a="rgb",o=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var n=e.slice(1);t=1,(g=n.length)<=4?(o=[parseInt(n[0]+n[0],16),parseInt(n[1]+n[1],16),parseInt(n[2]+n[2],16)],4===g&&(t=parseInt(n[3]+n[3],16)/255)):(o=[parseInt(n[0]+n[1],16),parseInt(n[2]+n[3],16),parseInt(n[4]+n[5],16)],8===g&&(t=parseInt(n[6]+n[7],16)/255)),o[0]||(o[0]=0),o[1]||(o[1]=0),o[2]||(o[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],u="rgb"===s;a=n=s.replace(/a$/,"");var g="cmyk"===n?4:"gray"===n?1:3;o=r[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===g?parseFloat(e)/100:"rgb"===n?255*parseFloat(e)/100:parseFloat(e);if("h"===n[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==i[e])return i[e]}return parseFloat(e)})),s===n&&o.push(1),t=u||void 0===o[g]?1:o[g],o=o.slice(0,g)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(o=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),a=e.match(/([a-z])/gi).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(o=[e[0],e[1],e[2]],a="rgb",t=4===e.length?e[3]:1):e instanceof Object&&(null!=e.r||null!=e.red||null!=e.R?(a="rgb",o=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",o=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),t=e.a||e.alpha||e.opacity||1,null!=e.opacity&&(t/=100)):(a="rgb",o=[e>>>16,(65280&e)>>>8,255&e]);return{space:a,values:o,alpha:t}}var u=o,g=function(e){var r;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var a=u(e);if(!a.space)return[];var o=[0,0,0],t="h"===a.space[0]?[360,100,100]:[255,255,255];return(r=Array(3))[0]=Math.min(Math.max(a.values[0],o[0]),t[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),t[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),t[2]),"h"===a.space[0]&&(r=f(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function f(e){var r,a,o,t,n,l=e[0]/360,i=e[1]/100,s=e[2]/100,u=0;if(0===i)return[n=255*s,n,n];for(r=2*s-(a=s<.5?s*(1+i):s+i-s*i),t=[0,0,0];u<3;)(o=l+1/3*-(u-1))<0?o++:o>1&&o--,n=6*o<1?r+6*(a-r)*o:2*o<1?a:3*o<2?r+(a-r)*(2/3-o)*6:r,t[u++]=255*n;return t}const d=g,c=(e,r,a)=>(299*e+587*r+114*a)/1e3>=128?-1:1,p=(a,o,t,n=1)=>{const l=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],i=r(e.hex(`rgba(${a.join(",")},1)`),e.hex(`rgba(${l.join(",")},1)`)),s=l[0]+l[1]+l[2];return 0===s||765===s||i>t?{background:a,foreground:l,contrast:i}:p(a,l,t,n)},h=new Map,y=(e,r,a,o=1)=>{if(h.has(e))return h.get(e);const t=p(e,r,a,o);return h.set(e,t),t},b=(r,a=7)=>{let o=[0,0,0,1],t=[255,255,255,1];"string"==typeof r?(o=d(r),t=o):"object"==typeof r&&null!==r&&"string"==typeof r.background&&"string"==typeof r.foreground&&(o=d(r.background),t="string"==typeof r.foreground?d(r.foreground):o);const n=c(o[0],o[1],o[2]),l=y([o[0],o[1],o[2]],[t[0],t[1],t[2]],a,n);return t=[...l.foreground,1],{background:e.hex(`rgba(${o.join(",")})`),foreground:e.hex(`rgba(${t.join(",")})`),contrast:l.contrast}},v=/^#((\d|[a-f]){8}|(\d|[a-f]){6}|(\d|[a-f]){3,4})$/i;function m(e){return v.test(e)}function k(e){if(e.startsWith("{"))try{const r=JSON.parse(e);if(M(r))return{type:"ColorPair",value:r};if($(r))return{type:"DeprecatedColorPair",value:r}}catch(e){return{type:null,value:null}}return{type:null,value:null}}function w(e){if(e)if("string"==typeof e){if(m(e))return{type:"string",valid:!0,value:e};{const r=k(e);if(r.value)return{type:r.type,valid:!0,value:r.value}}}else{const r=e;if(M(r))return{type:"ColorPair",valid:!0,value:r};const a=e;if($(a))return{type:"DeprecatedColorPair",valid:!0,value:a}}return{type:null,valid:!1,value:""}}function M(e){return!("object"!=typeof e||!e||"string"!=typeof e.backgroundColor||!("string"==typeof e.foregroundColor||e.foregroundColor&&"string"==typeof e.foregroundColor.primary&&"string"==typeof e.foregroundColor.secondary&&"string"==typeof e.foregroundColor.neutral))}function $(e){return"object"==typeof e&&e&&"string"==typeof e.backgroundColor&&"string"==typeof e.color}function C(e){const r=w(e);switch(r.type){case null:return!1;case"string":case"ColorPair":case"DeprecatedColorPair":return r.valid}}const q=(e,r,o)=>{a(e,"_color",C,new Set(["rgb in hex","ColorPair"]),r,o)},P=e=>{var r;let a;const o=w(e);switch(o.type){case"string":a=b(o.value);break;case"ColorPair":case"DeprecatedColorPair":{const e=o.value,t=o.value;let n="";t.color?n=t.color:"string"==typeof e.foregroundColor?n=e.foregroundColor:(null===(r=e.foregroundColor)||void 0===r?void 0:r.primary)&&(n=e.foregroundColor.primary),n&&"string"==typeof n||(n="#fff"),a=b({background:e.backgroundColor,foreground:n});break}case null:console.warn(`_color was empty or invalid (${JSON.stringify(e)})`),a=b({background:"#000",foreground:"#000"})}return a.contrast<7&&t(`[KolBadge] The contrast of ${a.contrast} (≥7, AAA) is to low, between the color pair ${a.background} and ${a.foreground}.`),{backgroundColor:a.background,foregroundColor:a.foreground}};export{d as c,P as h,q as v};
4
+ import{r as e,b as r,w as a}from"./prop.validators-8c5a4551.js";import{a as t}from"./a11y.tipps-1cea6b3d.js";var n={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},l=n,o=s,i={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function s(e){var r,a,o=[],t=1;if("string"==typeof e)if(e=e.toLowerCase(),l[e])o=l[e].slice(),a="rgb";else if("transparent"===e)t=0,a="rgb",o=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var n=e.slice(1);t=1,(g=n.length)<=4?(o=[parseInt(n[0]+n[0],16),parseInt(n[1]+n[1],16),parseInt(n[2]+n[2],16)],4===g&&(t=parseInt(n[3]+n[3],16)/255)):(o=[parseInt(n[0]+n[1],16),parseInt(n[2]+n[3],16),parseInt(n[4]+n[5],16)],8===g&&(t=parseInt(n[6]+n[7],16)/255)),o[0]||(o[0]=0),o[1]||(o[1]=0),o[2]||(o[2]=0),a="rgb"}else if(r=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var s=r[1],u="rgb"===s;a=n=s.replace(/a$/,"");var g="cmyk"===n?4:"gray"===n?1:3;o=r[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(e,r){if(/%$/.test(e))return r===g?parseFloat(e)/100:"rgb"===n?255*parseFloat(e)/100:parseFloat(e);if("h"===n[r]){if(/deg$/.test(e))return parseFloat(e);if(void 0!==i[e])return i[e]}return parseFloat(e)})),s===n&&o.push(1),t=u||void 0===o[g]?1:o[g],o=o.slice(0,g)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(o=e.match(/([0-9]+)/g).map((function(e){return parseFloat(e)})),a=e.match(/([a-z])/gi).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(o=[e[0],e[1],e[2]],a="rgb",t=4===e.length?e[3]:1):e instanceof Object&&(null!=e.r||null!=e.red||null!=e.R?(a="rgb",o=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(a="hsl",o=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),t=e.a||e.alpha||e.opacity||1,null!=e.opacity&&(t/=100)):(a="rgb",o=[e>>>16,(65280&e)>>>8,255&e]);return{space:a,values:o,alpha:t}}var u=o,g=function(e){var r;Array.isArray(e)&&e.raw&&(e=String.raw.apply(null,arguments));var a=u(e);if(!a.space)return[];var o=[0,0,0],t="h"===a.space[0]?[360,100,100]:[255,255,255];return(r=Array(3))[0]=Math.min(Math.max(a.values[0],o[0]),t[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),t[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),t[2]),"h"===a.space[0]&&(r=f(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function f(e){var r,a,o,t,n,l=e[0]/360,i=e[1]/100,s=e[2]/100,u=0;if(0===i)return[n=255*s,n,n];for(r=2*s-(a=s<.5?s*(1+i):s+i-s*i),t=[0,0,0];u<3;)(o=l+1/3*-(u-1))<0?o++:o>1&&o--,n=6*o<1?r+6*(a-r)*o:2*o<1?a:3*o<2?r+(a-r)*(2/3-o)*6:r,t[u++]=255*n;return t}const c=g,d=(e,r,a)=>(299*e+587*r+114*a)/1e3>=128?-1:1,p=(a,o,t,n=1)=>{const l=[Math.max(Math.min(Math.round(o[0]+n*Math.max(1,o[0]/100)),255),0),Math.max(Math.min(Math.round(o[1]+n*Math.max(1,o[1]/100)),255),0),Math.max(Math.min(Math.round(o[2]+n*Math.max(1,o[2]/100)),255),0)],i=r(e.hex(`rgba(${a.join(",")},1)`),e.hex(`rgba(${l.join(",")},1)`)),s=l[0]+l[1]+l[2];return 0===s||765===s||i>t?{background:a,foreground:l,contrast:i}:p(a,l,t,n)},h=new Map,y=(e,r,a,o=1)=>{if(h.has(e))return h.get(e);const t=p(e,r,a,o);return h.set(e,t),t},b=(r,a=7)=>{let o=[0,0,0,1],t=[255,255,255,1];"string"==typeof r?(o=c(r),t=o):"object"==typeof r&&null!==r&&"string"==typeof r.background&&"string"==typeof r.foreground&&(o=c(r.background),t="string"==typeof r.foreground?c(r.foreground):o);const n=d(o[0],o[1],o[2]),l=y([o[0],o[1],o[2]],[t[0],t[1],t[2]],a,n);return t=[...l.foreground,1],{background:e.hex(`rgba(${o.join(",")})`),foreground:e.hex(`rgba(${t.join(",")})`),contrast:l.contrast}},v=/^#((\d|[a-f]){8}|(\d|[a-f]){6}|(\d|[a-f]){3,4})$/i;function m(e){return v.test(e)}function k(e){if(e.startsWith("{"))try{const r=JSON.parse(e);if(M(r))return{type:"ColorPair",value:r};if($(r))return{type:"DeprecatedColorPair",value:r}}catch(e){return{type:null,value:null}}return{type:null,value:null}}function w(e){if(e)if("string"==typeof e){if(m(e))return{type:"string",valid:!0,value:e};{const r=k(e);if(r.value)return{type:r.type,valid:!0,value:r.value}}}else{const r=e;if(M(r))return{type:"ColorPair",valid:!0,value:r};const a=e;if($(a))return{type:"DeprecatedColorPair",valid:!0,value:a}}return{type:null,valid:!1,value:""}}function M(e){return!("object"!=typeof e||!e||"string"!=typeof e.backgroundColor||!("string"==typeof e.foregroundColor||e.foregroundColor&&"string"==typeof e.foregroundColor.primary&&"string"==typeof e.foregroundColor.secondary&&"string"==typeof e.foregroundColor.neutral))}function $(e){return"object"==typeof e&&e&&"string"==typeof e.backgroundColor&&"string"==typeof e.color}function C(e){const r=w(e);switch(r.type){case null:return!1;case"string":case"ColorPair":case"DeprecatedColorPair":return r.valid}}const q=(e,r,o)=>{a(e,"_color",C,new Set(["rgb in hex","ColorPair"]),r,o)},P=e=>{var r;let a;const o=w(e);switch(o.type){case"string":a=b(o.value);break;case"ColorPair":case"DeprecatedColorPair":{const e=o.value,t=o.value;let n="";t.color?n=t.color:"string"==typeof e.foregroundColor?n=e.foregroundColor:(null===(r=e.foregroundColor)||void 0===r?void 0:r.primary)&&(n=e.foregroundColor.primary),n&&"string"==typeof n||(n="#fff"),a=b({background:e.backgroundColor,foreground:n});break}case null:console.warn(`_color was empty or invalid (${JSON.stringify(e)})`),a=b({background:"#000",foreground:"#000"})}return a.contrast<7&&t(`[KolBadge] The contrast of ${a.contrast} (≥7, AAA) is to low, between the color pair ${a.background} and ${a.foreground}.`),{backgroundColor:a.background,foregroundColor:a.foreground}};export{c,P as h,q as v};
@@ -1 +1 @@
1
- {"version":3,"names":["colorName","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","names","require$$0","colorParse","parse","baseHues","cstr","m","parts","alpha","space","toLowerCase","slice","test","base","size","length","isShort","parseInt","exec","name","isRGB","replace","trim","split","map","x","i","parseFloat","undefined","push","match","value","join","isNaN","Array","isArray","Object","r","R","g","G","b","B","h","hue","H","s","saturation","S","l","lightness","L","brightness","a","opacity","values","colorRgba","rgba","color","raw","String","apply","arguments","parsed","min","max","Math","hsl2rgb","hsl","t1","t2","t3","rgb","val","getContrastYIQ","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","round","contrast","hex","rgbaConvert","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorContrast","HEX_REGEX","isHexString","isColorObjectString","startsWith","JSON","isValidColorPair","type","isValidDeprecatedColorPair","error","typeOfColor","valid","colorObject","asColorPair","asDeprecatedColorPair","backgroundColor","foregroundColor","primary","secondary","neutral","validatorFunction","valueType","validateColor","component","options","watchValidator","Set","handleColorChange","_a","console","warn","stringify","a11yHint"],"sources":["../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../node_modules/.pnpm/color-parse@1.4.3/node_modules/color-parse/index.js","../../node_modules/.pnpm/color-rgba@2.4.0/node_modules/color-rgba/index.js","src/components/badge/contrast.ts","src/types/props/color.ts"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/**\n * @module color-parse\n */\n\n'use strict'\n\nvar names = require('color-name')\n\nmodule.exports = parse\n\n/**\n * Base hues\n * http://dev.w3.org/csswg/css-color/#typedef-named-hue\n */\n//FIXME: use external hue detector\nvar baseHues = {\n\tred: 0,\n\torange: 60,\n\tyellow: 120,\n\tgreen: 180,\n\tblue: 240,\n\tpurple: 300\n}\n\n/**\n * Parse color from the string passed\n *\n * @return {Object} A space indicator `space`, an array `values` and `alpha`\n */\nfunction parse(cstr) {\n\tvar m, parts = [], alpha = 1, space\n\n\tif (typeof cstr === 'string') {\n\t\tcstr = cstr.toLowerCase();\n\n\t\t//keyword\n\t\tif (names[cstr]) {\n\t\t\tparts = names[cstr].slice()\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//reserved words\n\t\telse if (cstr === 'transparent') {\n\t\t\talpha = 0\n\t\t\tspace = 'rgb'\n\t\t\tparts = [0, 0, 0]\n\t\t}\n\n\t\t//hex\n\t\telse if (/^#[A-Fa-f0-9]+$/.test(cstr)) {\n\t\t\tvar base = cstr.slice(1)\n\t\t\tvar size = base.length\n\t\t\tvar isShort = size <= 4\n\t\t\talpha = 1\n\n\t\t\tif (isShort) {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[0], 16),\n\t\t\t\t\tparseInt(base[1] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[2], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 4) {\n\t\t\t\t\talpha = parseInt(base[3] + base[3], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[3], 16),\n\t\t\t\t\tparseInt(base[4] + base[5], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 8) {\n\t\t\t\t\talpha = parseInt(base[6] + base[7], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!parts[0]) parts[0] = 0\n\t\t\tif (!parts[1]) parts[1] = 0\n\t\t\tif (!parts[2]) parts[2] = 0\n\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//color space\n\t\telse if (m = /^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(cstr)) {\n\t\t\tvar name = m[1]\n\t\t\tvar isRGB = name === 'rgb'\n\t\t\tvar base = name.replace(/a$/, '')\n\t\t\tspace = base\n\t\t\tvar size = base === 'cmyk' ? 4 : base === 'gray' ? 1 : 3\n\t\t\tparts = m[2].trim()\n\t\t\t\t.split(/\\s*[,\\/]\\s*|\\s+/)\n\t\t\t\t.map(function (x, i) {\n\t\t\t\t\t//<percentage>\n\t\t\t\t\tif (/%$/.test(x)) {\n\t\t\t\t\t\t//alpha\n\t\t\t\t\t\tif (i === size) return parseFloat(x) / 100\n\t\t\t\t\t\t//rgb\n\t\t\t\t\t\tif (base === 'rgb') return parseFloat(x) * 255 / 100\n\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t}\n\t\t\t\t\t//hue\n\t\t\t\t\telse if (base[i] === 'h') {\n\t\t\t\t\t\t//<deg>\n\t\t\t\t\t\tif (/deg$/.test(x)) {\n\t\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//<base-hue>\n\t\t\t\t\t\telse if (baseHues[x] !== undefined) {\n\t\t\t\t\t\t\treturn baseHues[x]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t})\n\n\t\t\tif (name === base) parts.push(1)\n\t\t\talpha = (isRGB) ? 1 : (parts[size] === undefined) ? 1 : parts[size]\n\t\t\tparts = parts.slice(0, size)\n\t\t}\n\n\t\t//named channels case\n\t\telse if (cstr.length > 10 && /[0-9](?:\\s|\\/)/.test(cstr)) {\n\t\t\tparts = cstr.match(/([0-9]+)/g).map(function (value) {\n\t\t\t\treturn parseFloat(value)\n\t\t\t})\n\n\t\t\tspace = cstr.match(/([a-z])/ig).join('').toLowerCase()\n\t\t}\n\t}\n\n\t//numeric case\n\telse if (!isNaN(cstr)) {\n\t\tspace = 'rgb'\n\t\tparts = [cstr >>> 16, (cstr & 0x00ff00) >>> 8, cstr & 0x0000ff]\n\t}\n\n\t//array-like\n\telse if (Array.isArray(cstr) || cstr.length) {\n\t\tparts = [cstr[0], cstr[1], cstr[2]]\n\t\tspace = 'rgb'\n\t\talpha = cstr.length === 4 ? cstr[3] : 1\n\t}\n\n\t//object case - detects css cases of rgb and hsl\n\telse if (cstr instanceof Object) {\n\t\tif (cstr.r != null || cstr.red != null || cstr.R != null) {\n\t\t\tspace = 'rgb'\n\t\t\tparts = [\n\t\t\t\tcstr.r || cstr.red || cstr.R || 0,\n\t\t\t\tcstr.g || cstr.green || cstr.G || 0,\n\t\t\t\tcstr.b || cstr.blue || cstr.B || 0\n\t\t\t]\n\t\t}\n\t\telse {\n\t\t\tspace = 'hsl'\n\t\t\tparts = [\n\t\t\t\tcstr.h || cstr.hue || cstr.H || 0,\n\t\t\t\tcstr.s || cstr.saturation || cstr.S || 0,\n\t\t\t\tcstr.l || cstr.lightness || cstr.L || cstr.b || cstr.brightness\n\t\t\t]\n\t\t}\n\n\t\talpha = cstr.a || cstr.alpha || cstr.opacity || 1\n\n\t\tif (cstr.opacity != null) alpha /= 100\n\t}\n\n\treturn {\n\t\tspace: space,\n\t\tvalues: parts,\n\t\talpha: alpha\n\t}\n}\n","/** @module color-rgba */\r\n\r\n'use strict'\r\n\r\nvar parse = require('color-parse')\r\n\r\nmodule.exports = function rgba (color) {\r\n\t// template literals\r\n\tif (Array.isArray(color) && color.raw) color = String.raw.apply(null, arguments)\r\n\r\n\tvar values, i, l\r\n\r\n\t//attempt to parse non-array arguments\r\n\tvar parsed = parse(color)\r\n\r\n\tif (!parsed.space) return []\r\n\r\n\tvar min = [0,0,0], max = parsed.space[0] === 'h' ? [360,100,100] : [255,255,255]\r\n\r\n\tvalues = Array(3)\r\n\tvalues[0] = Math.min(Math.max(parsed.values[0], min[0]), max[0])\r\n\tvalues[1] = Math.min(Math.max(parsed.values[1], min[1]), max[1])\r\n\tvalues[2] = Math.min(Math.max(parsed.values[2], min[2]), max[2])\r\n\r\n\tif (parsed.space[0] === 'h') values = hsl2rgb(values)\r\n\r\n\tvalues.push(Math.min(Math.max(parsed.alpha, 0), 1))\r\n\r\n\treturn values\r\n}\r\n\r\n\r\n// excerpt from color-space/hsl\r\nfunction hsl2rgb(hsl) {\r\n\tvar h = hsl[0]/360, s = hsl[1]/100, l = hsl[2]/100, t1, t2, t3, rgb, val, i=0;\r\n\r\n\tif (s === 0) return val = l * 255, [val, val, val];\r\n\r\n\tt2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n\tt1 = 2 * l - t2;\r\n\r\n\trgb = [0, 0, 0];\r\n\tfor (;i<3;) {\r\n\t\tt3 = h + 1 / 3 * - (i - 1);\r\n\t\tt3 < 0 ? t3++ : t3 > 1 && t3--;\r\n\t\tval = 6 * t3 < 1 ? t1 + (t2 - t1) * 6 * t3 :\r\n\t\t2 * t3 < 1 ? t2 :\r\n\t\t3 * t3 < 2 ? t1 + (t2 - t1) * (2 / 3 - t3) * 6 :\r\n\t\tt1;\r\n\t\trgb[i++] = val * 255;\r\n\t}\r\n\r\n\treturn rgb;\r\n}\r\n","import { RGB } from 'color-convert/conversions';\nimport { hex } from 'wcag-contrast';\n\nimport { colorRgba } from './color-rgba';\nimport { rgbaConvert } from './rgba-convert';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { ColorContrast, createContrastColorPair } from '../../components/badge/contrast';\nimport { a11yHint } from '../../utils/a11y.tipps';\nimport { WatchOptions, watchValidator } from '../../utils/prop.validators';\nimport { Stringified } from '../common';\n\n/* types */\ntype CharacteristicColors = {\n\tprimary: string;\n\tsecondary: string;\n\tneutral: string;\n};\n\n/**\n * Defines the backgroundColor and foregroundColor.\n */\nexport type ColorPair = {\n\tbackgroundColor: string;\n\tforegroundColor: Stringified<CharacteristicColors>;\n};\n\n/**\n * @deprecated\n */\ntype DeprecatedColorPair = {\n\tbackgroundColor: string;\n\t/**\n\t * @deprecated Please use `foregroundColor` instead of `color`.\n\t */\n\tcolor: string;\n};\n\nexport type PropColor = ColorPair | DeprecatedColorPair;\n\ntype typeOfColorType = 'string' | 'ColorPair' | 'DeprecatedColorPair' | null;\n\nconst HEX_REGEX = /^#((\\d|[a-f]){8}|(\\d|[a-f]){6}|(\\d|[a-f]){3,4})$/i;\nfunction isHexString(value: string): boolean {\n\treturn HEX_REGEX.test(value);\n}\n/* checks if the string is valid JSON and if the resulting object is a valid ColorPair or DeprecatedColorPair and returns it, or null if invalid. */\nfunction isColorObjectString(value: string): { type: typeOfColorType; value: PropColor | null } {\n\tif (value.startsWith('{')) {\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(value) as unknown;\n\t\t\tif (isValidColorPair(parsed as ColorPair)) return { type: 'ColorPair', value: parsed as ColorPair };\n\t\t\tif (isValidDeprecatedColorPair(parsed as DeprecatedColorPair)) return { type: 'DeprecatedColorPair', value: parsed as DeprecatedColorPair };\n\t\t} catch (error) {\n\t\t\treturn { type: null, value: null };\n\t\t}\n\t}\n\treturn { type: null, value: null };\n}\n\nfunction typeOfColor(value?: unknown): { type: typeOfColorType; valid: boolean; value: PropColor | string } {\n\tif (value) {\n\t\tif (typeof value === 'string') {\n\t\t\tif (isHexString(value)) return { type: 'string', valid: true, value: value };\n\t\t\telse {\n\t\t\t\tconst colorObject = isColorObjectString(value);\n\t\t\t\tif (colorObject.value) return { type: colorObject.type, valid: true, value: colorObject.value };\n\t\t\t}\n\t\t} else {\n\t\t\tconst asColorPair = value as ColorPair;\n\t\t\tif (isValidColorPair(asColorPair)) return { type: 'ColorPair', valid: true, value: asColorPair };\n\t\t\tconst asDeprecatedColorPair = value as DeprecatedColorPair;\n\t\t\tif (isValidDeprecatedColorPair(asDeprecatedColorPair)) return { type: 'DeprecatedColorPair', valid: true, value: asDeprecatedColorPair };\n\t\t}\n\t}\n\treturn { type: null, valid: false, value: '' };\n}\n\n/* validate different color options */\nfunction isValidColorPair(value: ColorPair): boolean {\n\treturn !!(\n\t\ttypeof value === 'object' &&\n\t\tvalue &&\n\t\ttypeof value.backgroundColor === 'string' &&\n\t\t(typeof value.foregroundColor === 'string' ||\n\t\t\t(value.foregroundColor &&\n\t\t\t\ttypeof value.foregroundColor.primary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.secondary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.neutral === 'string'))\n\t);\n}\nfunction isValidDeprecatedColorPair(value: DeprecatedColorPair): boolean {\n\treturn typeof value === 'object' && value && typeof value.backgroundColor === 'string' && typeof value.color === 'string';\n}\n\nfunction validatorFunction(value?: Stringified<PropColor>): boolean {\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase null:\n\t\t\treturn false;\n\t\tcase 'string':\n\t\tcase 'ColorPair':\n\t\tcase 'DeprecatedColorPair':\n\t\t\treturn valueType.valid;\n\t}\n}\n\n/* validator */\nexport const validateColor = (component: Generic.Element.Component, value?: Stringified<PropColor>, options?: WatchOptions): void => {\n\twatchValidator(component, '_color', validatorFunction, new Set(['rgb in hex', 'ColorPair']), value, options);\n};\n\nexport const handleColorChange = (value: unknown): ColorPair => {\n\tlet colorContrast: ColorContrast<string>;\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase 'string':\n\t\t\tcolorContrast = createContrastColorPair(valueType.value as string);\n\t\t\tbreak;\n\t\tcase 'ColorPair':\n\t\tcase 'DeprecatedColorPair': {\n\t\t\tconst asColorPair = valueType.value as ColorPair;\n\t\t\tconst asDeprecatedColorPair = valueType.value as DeprecatedColorPair;\n\t\t\tlet foreground = '';\n\t\t\tif (asDeprecatedColorPair.color) foreground = asDeprecatedColorPair.color;\n\t\t\telse {\n\t\t\t\tif (typeof asColorPair.foregroundColor === 'string') foreground = asColorPair.foregroundColor;\n\t\t\t\telse if (asColorPair.foregroundColor?.primary) foreground = asColorPair.foregroundColor.primary;\n\t\t\t}\n\t\t\tif (!foreground || typeof foreground !== 'string') foreground = '#fff';\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: asColorPair.backgroundColor,\n\t\t\t\tforeground,\n\t\t\t});\n\t\t\tbreak;\n\t\t}\n\t\tcase null:\n\t\t\tconsole.warn(`_color was empty or invalid (${JSON.stringify(value)})`);\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: '#000',\n\t\t\t\tforeground: '#000',\n\t\t\t});\n\t}\n\n\tif (colorContrast.contrast < 7) {\n\t\ta11yHint(\n\t\t\t`[KolBadge] The contrast of ${colorContrast.contrast} (≥7, AAA) is to low, between the color pair ${colorContrast.background} and ${colorContrast.foreground}.`\n\t\t);\n\t}\n\treturn {\n\t\tbackgroundColor: colorContrast.background,\n\t\tforegroundColor: colorContrast.foreground,\n\t};\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["colorName","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","names","require$$0","colorParse","parse","baseHues","cstr","m","parts","alpha","space","toLowerCase","slice","test","base","size","length","isShort","parseInt","exec","name","isRGB","replace","trim","split","map","x","i","parseFloat","undefined","push","match","value","join","isNaN","Array","isArray","Object","r","R","g","G","b","B","h","hue","H","s","saturation","S","l","lightness","L","brightness","a","opacity","values","colorRgba","rgba","color","raw","String","apply","arguments","parsed","min","max","Math","hsl2rgb","hsl","t1","t2","t3","rgb","val","getContrastYIQ","yiq","calcColorContrast","baseColor","contrastColor","ratio","dir","round","contrast","hex","rgbaConvert","summe","background","foreground","cache","Map","getColorContrast","has","get","set","createContrastColorPair","contrastRatio","colorContrast","HEX_REGEX","isHexString","isColorObjectString","startsWith","JSON","isValidColorPair","type","isValidDeprecatedColorPair","error","typeOfColor","valid","colorObject","asColorPair","asDeprecatedColorPair","backgroundColor","foregroundColor","primary","secondary","neutral","validatorFunction","valueType","validateColor","component","options","watchValidator","Set","handleColorChange","_a","console","warn","stringify","a11yHint"],"sources":["../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../node_modules/.pnpm/color-parse@1.4.3/node_modules/color-parse/index.js","../../node_modules/.pnpm/color-rgba@2.4.0/node_modules/color-rgba/index.js","src/components/badge/contrast.ts","src/types/props/color.ts"],"sourcesContent":["'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/**\n * @module color-parse\n */\n\n'use strict'\n\nvar names = require('color-name')\n\nmodule.exports = parse\n\n/**\n * Base hues\n * http://dev.w3.org/csswg/css-color/#typedef-named-hue\n */\n//FIXME: use external hue detector\nvar baseHues = {\n\tred: 0,\n\torange: 60,\n\tyellow: 120,\n\tgreen: 180,\n\tblue: 240,\n\tpurple: 300\n}\n\n/**\n * Parse color from the string passed\n *\n * @return {Object} A space indicator `space`, an array `values` and `alpha`\n */\nfunction parse(cstr) {\n\tvar m, parts = [], alpha = 1, space\n\n\tif (typeof cstr === 'string') {\n\t\tcstr = cstr.toLowerCase();\n\n\t\t//keyword\n\t\tif (names[cstr]) {\n\t\t\tparts = names[cstr].slice()\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//reserved words\n\t\telse if (cstr === 'transparent') {\n\t\t\talpha = 0\n\t\t\tspace = 'rgb'\n\t\t\tparts = [0, 0, 0]\n\t\t}\n\n\t\t//hex\n\t\telse if (/^#[A-Fa-f0-9]+$/.test(cstr)) {\n\t\t\tvar base = cstr.slice(1)\n\t\t\tvar size = base.length\n\t\t\tvar isShort = size <= 4\n\t\t\talpha = 1\n\n\t\t\tif (isShort) {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[0], 16),\n\t\t\t\t\tparseInt(base[1] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[2], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 4) {\n\t\t\t\t\talpha = parseInt(base[3] + base[3], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tparts = [\n\t\t\t\t\tparseInt(base[0] + base[1], 16),\n\t\t\t\t\tparseInt(base[2] + base[3], 16),\n\t\t\t\t\tparseInt(base[4] + base[5], 16)\n\t\t\t\t]\n\t\t\t\tif (size === 8) {\n\t\t\t\t\talpha = parseInt(base[6] + base[7], 16) / 255\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!parts[0]) parts[0] = 0\n\t\t\tif (!parts[1]) parts[1] = 0\n\t\t\tif (!parts[2]) parts[2] = 0\n\n\t\t\tspace = 'rgb'\n\t\t}\n\n\t\t//color space\n\t\telse if (m = /^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\\s*\\(([^\\)]*)\\)/.exec(cstr)) {\n\t\t\tvar name = m[1]\n\t\t\tvar isRGB = name === 'rgb'\n\t\t\tvar base = name.replace(/a$/, '')\n\t\t\tspace = base\n\t\t\tvar size = base === 'cmyk' ? 4 : base === 'gray' ? 1 : 3\n\t\t\tparts = m[2].trim()\n\t\t\t\t.split(/\\s*[,\\/]\\s*|\\s+/)\n\t\t\t\t.map(function (x, i) {\n\t\t\t\t\t//<percentage>\n\t\t\t\t\tif (/%$/.test(x)) {\n\t\t\t\t\t\t//alpha\n\t\t\t\t\t\tif (i === size) return parseFloat(x) / 100\n\t\t\t\t\t\t//rgb\n\t\t\t\t\t\tif (base === 'rgb') return parseFloat(x) * 255 / 100\n\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t}\n\t\t\t\t\t//hue\n\t\t\t\t\telse if (base[i] === 'h') {\n\t\t\t\t\t\t//<deg>\n\t\t\t\t\t\tif (/deg$/.test(x)) {\n\t\t\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//<base-hue>\n\t\t\t\t\t\telse if (baseHues[x] !== undefined) {\n\t\t\t\t\t\t\treturn baseHues[x]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn parseFloat(x)\n\t\t\t\t})\n\n\t\t\tif (name === base) parts.push(1)\n\t\t\talpha = (isRGB) ? 1 : (parts[size] === undefined) ? 1 : parts[size]\n\t\t\tparts = parts.slice(0, size)\n\t\t}\n\n\t\t//named channels case\n\t\telse if (cstr.length > 10 && /[0-9](?:\\s|\\/)/.test(cstr)) {\n\t\t\tparts = cstr.match(/([0-9]+)/g).map(function (value) {\n\t\t\t\treturn parseFloat(value)\n\t\t\t})\n\n\t\t\tspace = cstr.match(/([a-z])/ig).join('').toLowerCase()\n\t\t}\n\t}\n\n\t//numeric case\n\telse if (!isNaN(cstr)) {\n\t\tspace = 'rgb'\n\t\tparts = [cstr >>> 16, (cstr & 0x00ff00) >>> 8, cstr & 0x0000ff]\n\t}\n\n\t//array-like\n\telse if (Array.isArray(cstr) || cstr.length) {\n\t\tparts = [cstr[0], cstr[1], cstr[2]]\n\t\tspace = 'rgb'\n\t\talpha = cstr.length === 4 ? cstr[3] : 1\n\t}\n\n\t//object case - detects css cases of rgb and hsl\n\telse if (cstr instanceof Object) {\n\t\tif (cstr.r != null || cstr.red != null || cstr.R != null) {\n\t\t\tspace = 'rgb'\n\t\t\tparts = [\n\t\t\t\tcstr.r || cstr.red || cstr.R || 0,\n\t\t\t\tcstr.g || cstr.green || cstr.G || 0,\n\t\t\t\tcstr.b || cstr.blue || cstr.B || 0\n\t\t\t]\n\t\t}\n\t\telse {\n\t\t\tspace = 'hsl'\n\t\t\tparts = [\n\t\t\t\tcstr.h || cstr.hue || cstr.H || 0,\n\t\t\t\tcstr.s || cstr.saturation || cstr.S || 0,\n\t\t\t\tcstr.l || cstr.lightness || cstr.L || cstr.b || cstr.brightness\n\t\t\t]\n\t\t}\n\n\t\talpha = cstr.a || cstr.alpha || cstr.opacity || 1\n\n\t\tif (cstr.opacity != null) alpha /= 100\n\t}\n\n\treturn {\n\t\tspace: space,\n\t\tvalues: parts,\n\t\talpha: alpha\n\t}\n}\n","/** @module color-rgba */\r\n\r\n'use strict'\r\n\r\nvar parse = require('color-parse')\r\n\r\nmodule.exports = function rgba (color) {\r\n\t// template literals\r\n\tif (Array.isArray(color) && color.raw) color = String.raw.apply(null, arguments)\r\n\r\n\tvar values, i, l\r\n\r\n\t//attempt to parse non-array arguments\r\n\tvar parsed = parse(color)\r\n\r\n\tif (!parsed.space) return []\r\n\r\n\tvar min = [0,0,0], max = parsed.space[0] === 'h' ? [360,100,100] : [255,255,255]\r\n\r\n\tvalues = Array(3)\r\n\tvalues[0] = Math.min(Math.max(parsed.values[0], min[0]), max[0])\r\n\tvalues[1] = Math.min(Math.max(parsed.values[1], min[1]), max[1])\r\n\tvalues[2] = Math.min(Math.max(parsed.values[2], min[2]), max[2])\r\n\r\n\tif (parsed.space[0] === 'h') values = hsl2rgb(values)\r\n\r\n\tvalues.push(Math.min(Math.max(parsed.alpha, 0), 1))\r\n\r\n\treturn values\r\n}\r\n\r\n\r\n// excerpt from color-space/hsl\r\nfunction hsl2rgb(hsl) {\r\n\tvar h = hsl[0]/360, s = hsl[1]/100, l = hsl[2]/100, t1, t2, t3, rgb, val, i=0;\r\n\r\n\tif (s === 0) return val = l * 255, [val, val, val];\r\n\r\n\tt2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n\tt1 = 2 * l - t2;\r\n\r\n\trgb = [0, 0, 0];\r\n\tfor (;i<3;) {\r\n\t\tt3 = h + 1 / 3 * - (i - 1);\r\n\t\tt3 < 0 ? t3++ : t3 > 1 && t3--;\r\n\t\tval = 6 * t3 < 1 ? t1 + (t2 - t1) * 6 * t3 :\r\n\t\t2 * t3 < 1 ? t2 :\r\n\t\t3 * t3 < 2 ? t1 + (t2 - t1) * (2 / 3 - t3) * 6 :\r\n\t\tt1;\r\n\t\trgb[i++] = val * 255;\r\n\t}\r\n\r\n\treturn rgb;\r\n}\r\n","import { RGB } from 'color-convert/conversions';\nimport { hex } from 'wcag-contrast';\n\nimport { colorRgba } from './color-rgba';\nimport { rgbaConvert } from './rgba-convert';\n\ntype RGBA = [number, number, number, number];\n\n// const calcColor = (color: RGBA, diff: number): RGBA => [\n// Math.max(Math.min(Math.round(color[0] + (color[0] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[1] + (color[1] / 100 + 1) * diff), 255), 0),\n// Math.max(Math.min(Math.round(color[2] + (color[2] / 100 + 1) * diff), 255), 0),\n// color[3],\n// ];\n\n// const relativeLuminanceFormel = (c: number): number => {\n// if (c <= 0.03928) {\n// return c / 12.92;\n// } else {\n// return ((c + 0.055) / 1.055) ** 2.4;\n// }\n// };\n// // https://www.w3.org/TR/WCAG20/#contrast-ratiodef\n// const relativeLuminance = (r: number, g: number, b: number): number => {\n// return (\n// 0.2126 * relativeLuminanceFormel(r) + 0.7152 * relativeLuminanceFormel(g) + 0.0722 * relativeLuminanceFormel(b)\n// );\n// };\n\n// https://css-tricks.com/snippets/javascript/random-hex-color/\n// const randomColor = () => Math.floor(Math.random() * 16777215).toString(16);\n\n// https://24ways.org/2010/calculating-color-contrast/\n// ts-prune-ignore-next\nexport const getContrastYIQ = (r: number, g: number, b: number): number => {\n\tconst yiq = (r * 299 + g * 587 + b * 114) / 1000;\n\treturn yiq >= 128 ? -1 : 1;\n};\n\ntype ColorPair<T> = {\n\tbackground: T;\n\tforeground: T;\n};\n\nexport type ColorContrast<T> = ColorPair<T> & {\n\tcontrast: number;\n};\n\n// ts-prune-ignore-next\nexport const calcColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tconst color: RGB = [\n\t\tMath.max(Math.min(Math.round(contrastColor[0] + dir * Math.max(1, contrastColor[0] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[1] + dir * Math.max(1, contrastColor[1] / 100)), 255), 0),\n\t\tMath.max(Math.min(Math.round(contrastColor[2] + dir * Math.max(1, contrastColor[2] / 100)), 255), 0),\n\t];\n\tconst contrast = hex(rgbaConvert.hex(`rgba(${baseColor.join(',')},1)`), rgbaConvert.hex(`rgba(${color.join(',')},1)`));\n\tconst summe = color[0] + color[1] + color[2];\n\tif (summe === 0 || summe === 765 || contrast > ratio) {\n\t\treturn {\n\t\t\tbackground: baseColor,\n\t\t\tforeground: color,\n\t\t\tcontrast,\n\t\t};\n\t} else {\n\t\treturn calcColorContrast(baseColor, color, ratio, dir);\n\t}\n};\n\nconst cache: Map<unknown, ColorContrast<RGB>> = new Map();\n\n// ts-prune-ignore-next\nexport const getColorContrast = (baseColor: RGB, contrastColor: RGB, ratio: number, dir = 1): ColorContrast<RGB> => {\n\tif (cache.has(baseColor)) {\n\t\treturn cache.get(baseColor) as ColorContrast<RGB>;\n\t}\n\tconst color = calcColorContrast(baseColor, contrastColor, ratio, dir);\n\tcache.set(baseColor, color);\n\treturn color;\n};\n\nexport const createContrastColorPair = (color: string | ColorPair<string>, contrastRatio = 7): ColorContrast<string> => {\n\tlet baseColor: RGBA = [0, 0, 0, 1];\n\tlet contrastColor: RGBA = [255, 255, 255, 1];\n\tif (typeof color === 'string') {\n\t\tbaseColor = colorRgba(color);\n\t\tcontrastColor = baseColor;\n\t} else if (typeof color === 'object' && color !== null && typeof color.background === 'string' && typeof color.foreground === 'string') {\n\t\tbaseColor = colorRgba(color.background);\n\t\tif (typeof color.foreground === 'string') {\n\t\t\tcontrastColor = colorRgba(color.foreground);\n\t\t} else {\n\t\t\tcontrastColor = baseColor;\n\t\t}\n\t}\n\tconst yiq = getContrastYIQ(baseColor[0], baseColor[1], baseColor[2]);\n\tconst colorContrast = getColorContrast(\n\t\t[baseColor[0], baseColor[1], baseColor[2]],\n\t\t[contrastColor[0], contrastColor[1], contrastColor[2]],\n\t\tcontrastRatio,\n\t\tyiq,\n\t);\n\tcontrastColor = [...colorContrast.foreground, 1];\n\n\treturn {\n\t\tbackground: rgbaConvert.hex(`rgba(${baseColor.join(',')})`),\n\t\tforeground: rgbaConvert.hex(`rgba(${contrastColor.join(',')})`),\n\t\tcontrast: colorContrast.contrast,\n\t};\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { ColorContrast, createContrastColorPair } from '../../components/badge/contrast';\nimport { a11yHint } from '../../utils/a11y.tipps';\nimport { WatchOptions, watchValidator } from '../../utils/prop.validators';\nimport { Stringified } from '../common';\n\n/* types */\ntype CharacteristicColors = {\n\tprimary: string;\n\tsecondary: string;\n\tneutral: string;\n};\n\n/**\n * Defines the backgroundColor and foregroundColor.\n */\nexport type ColorPair = {\n\tbackgroundColor: string;\n\tforegroundColor: Stringified<CharacteristicColors>;\n};\n\n/**\n * @deprecated\n */\ntype DeprecatedColorPair = {\n\tbackgroundColor: string;\n\t/**\n\t * @deprecated Please use `foregroundColor` instead of `color`.\n\t */\n\tcolor: string;\n};\n\nexport type PropColor = ColorPair | DeprecatedColorPair;\n\ntype typeOfColorType = 'string' | 'ColorPair' | 'DeprecatedColorPair' | null;\n\nconst HEX_REGEX = /^#((\\d|[a-f]){8}|(\\d|[a-f]){6}|(\\d|[a-f]){3,4})$/i;\nfunction isHexString(value: string): boolean {\n\treturn HEX_REGEX.test(value);\n}\n/* checks if the string is valid JSON and if the resulting object is a valid ColorPair or DeprecatedColorPair and returns it, or null if invalid. */\nfunction isColorObjectString(value: string): { type: typeOfColorType; value: PropColor | null } {\n\tif (value.startsWith('{')) {\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(value) as unknown;\n\t\t\tif (isValidColorPair(parsed as ColorPair)) return { type: 'ColorPair', value: parsed as ColorPair };\n\t\t\tif (isValidDeprecatedColorPair(parsed as DeprecatedColorPair)) return { type: 'DeprecatedColorPair', value: parsed as DeprecatedColorPair };\n\t\t} catch (error) {\n\t\t\treturn { type: null, value: null };\n\t\t}\n\t}\n\treturn { type: null, value: null };\n}\n\nfunction typeOfColor(value?: unknown): { type: typeOfColorType; valid: boolean; value: PropColor | string } {\n\tif (value) {\n\t\tif (typeof value === 'string') {\n\t\t\tif (isHexString(value)) return { type: 'string', valid: true, value: value };\n\t\t\telse {\n\t\t\t\tconst colorObject = isColorObjectString(value);\n\t\t\t\tif (colorObject.value) return { type: colorObject.type, valid: true, value: colorObject.value };\n\t\t\t}\n\t\t} else {\n\t\t\tconst asColorPair = value as ColorPair;\n\t\t\tif (isValidColorPair(asColorPair)) return { type: 'ColorPair', valid: true, value: asColorPair };\n\t\t\tconst asDeprecatedColorPair = value as DeprecatedColorPair;\n\t\t\tif (isValidDeprecatedColorPair(asDeprecatedColorPair)) return { type: 'DeprecatedColorPair', valid: true, value: asDeprecatedColorPair };\n\t\t}\n\t}\n\treturn { type: null, valid: false, value: '' };\n}\n\n/* validate different color options */\nfunction isValidColorPair(value: ColorPair): boolean {\n\treturn !!(\n\t\ttypeof value === 'object' &&\n\t\tvalue &&\n\t\ttypeof value.backgroundColor === 'string' &&\n\t\t(typeof value.foregroundColor === 'string' ||\n\t\t\t(value.foregroundColor &&\n\t\t\t\ttypeof value.foregroundColor.primary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.secondary === 'string' &&\n\t\t\t\ttypeof value.foregroundColor.neutral === 'string'))\n\t);\n}\nfunction isValidDeprecatedColorPair(value: DeprecatedColorPair): boolean {\n\treturn typeof value === 'object' && value && typeof value.backgroundColor === 'string' && typeof value.color === 'string';\n}\n\nfunction validatorFunction(value?: Stringified<PropColor>): boolean {\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase null:\n\t\t\treturn false;\n\t\tcase 'string':\n\t\tcase 'ColorPair':\n\t\tcase 'DeprecatedColorPair':\n\t\t\treturn valueType.valid;\n\t}\n}\n\n/* validator */\nexport const validateColor = (component: Generic.Element.Component, value?: Stringified<PropColor>, options?: WatchOptions): void => {\n\twatchValidator(component, '_color', validatorFunction, new Set(['rgb in hex', 'ColorPair']), value, options);\n};\n\nexport const handleColorChange = (value: unknown): ColorPair => {\n\tlet colorContrast: ColorContrast<string>;\n\tconst valueType = typeOfColor(value);\n\tswitch (valueType.type) {\n\t\tcase 'string':\n\t\t\tcolorContrast = createContrastColorPair(valueType.value as string);\n\t\t\tbreak;\n\t\tcase 'ColorPair':\n\t\tcase 'DeprecatedColorPair': {\n\t\t\tconst asColorPair = valueType.value as ColorPair;\n\t\t\tconst asDeprecatedColorPair = valueType.value as DeprecatedColorPair;\n\t\t\tlet foreground = '';\n\t\t\tif (asDeprecatedColorPair.color) foreground = asDeprecatedColorPair.color;\n\t\t\telse {\n\t\t\t\tif (typeof asColorPair.foregroundColor === 'string') foreground = asColorPair.foregroundColor;\n\t\t\t\telse if (asColorPair.foregroundColor?.primary) foreground = asColorPair.foregroundColor.primary;\n\t\t\t}\n\t\t\tif (!foreground || typeof foreground !== 'string') foreground = '#fff';\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: asColorPair.backgroundColor,\n\t\t\t\tforeground,\n\t\t\t});\n\t\t\tbreak;\n\t\t}\n\t\tcase null:\n\t\t\tconsole.warn(`_color was empty or invalid (${JSON.stringify(value)})`);\n\t\t\tcolorContrast = createContrastColorPair({\n\t\t\t\tbackground: '#000',\n\t\t\t\tforeground: '#000',\n\t\t\t});\n\t}\n\n\tif (colorContrast.contrast < 7) {\n\t\ta11yHint(\n\t\t\t`[KolBadge] The contrast of ${colorContrast.contrast} (≥7, AAA) is to low, between the color pair ${colorContrast.background} and ${colorContrast.foreground}.`,\n\t\t);\n\t}\n\treturn {\n\t\tbackgroundColor: colorContrast.background,\n\t\tforegroundColor: colorContrast.foreground,\n\t};\n};\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{v as s,I as t}from"./controller-b7599521.js";import{v as e}from"./suggestions-f706f5bc.js";import{w as i}from"./prop.validators-9d76278b.js";class r extends t{constructor(t,s,o){super(t,s,o),this.component=t}validateList(){}validateSuggestions(t){e(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions||this.component._list)}}class a extends r{constructor(t,s,o){super(t,s,o),this.hasError=!1,this.component=t}validateType(t){i(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(t){s(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{r as I,a};
4
+ import{v as s,I as t}from"./controller-2e3afee2.js";import{v as e}from"./suggestions-8938bb98.js";import{w as i}from"./prop.validators-8c5a4551.js";class a extends t{constructor(t,s,e){super(t,s,e),this.component=t}validateList(){}validateSuggestions(t){e(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateSuggestions(this.component._suggestions||this.component._list)}}class r extends a{constructor(t,s,e){super(t,s,e),this.hasError=!1,this.component=t}validateType(t){i(this.component,"_type",(t=>"string"==typeof t&&("text"===t||"search"===t||"url"===t||"tel"===t)),new Set(["String {text, search, url, tel}"]),t)}validateHasCounter(t){s(this.component,t)}componentWillLoad(){super.componentWillLoad(),this.validateType(this.component._type),this.validateHasCounter(this.component._hasCounter)}}export{a as I,r as a};
@@ -1 +1 @@
1
- {"version":3,"names":["InputTextEmailController","InputPasswordController","constructor","component","name","host","super","this","validateList","validateSuggestions","value","componentWillLoad","_suggestions","_list","InputTextController","hasError","validateType","watchValidator","Set","validateHasCounter","_type","_hasCounter"],"sources":["src/components/input-text/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { Stringified } from '../../types/common';\nimport { InputTextType } from '../../types/input/control/text';\nimport { validateHasCounter } from '../../types/props/has-counter';\nimport { PropLabelWithExpertSlot } from '../../types/props/label';\nimport { PropSuggestions, SuggestionsPropType, validateSuggestions } from '../../types/props/suggestions';\nimport { watchValidator } from '../../utils/prop.validators';\nimport { InputPasswordController } from '../input-password/controller';\nimport { Props as InputTextProps, Watches as InputTextWatches } from './types';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tid: string;\n\tlist: Stringified<string[]>;\n} & PropLabelWithExpertSlot &\n\tPropSuggestions;\ntype InputTextEmailProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputTextEmailWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputTextEmailController extends InputPasswordController implements InputTextEmailWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextEmailProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextEmailProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @deprecated remains to satisfy `Watches` interface\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tpublic validateList(): void {}\n\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tvalidateSuggestions(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateSuggestions(this.component._suggestions || this.component._list);\n\t}\n}\n\nexport class InputTextController extends InputTextEmailController implements InputTextWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextProps;\n\n\tpublic hasError = false;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateType(value?: InputTextType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'text' || value === 'search' || value === 'url' || value === 'tel'),\n\t\t\tnew Set(['String {text, search, url, tel}']),\n\t\t\tvalue\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t}\n}\n"],"mappings":";;;0JAoBaA,UAAiCC,EAG7C,WAAAC,CAAmBC,EAA4DC,EAAcC,GAC5FC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAOX,YAAAK,GAAY,CAEZ,mBAAAC,CAAoBC,GAC1BD,EAAoBF,KAAKJ,UAAWO,E,CAG9B,iBAAAC,GACNL,MAAMK,oBACNJ,KAAKE,oBAAoBF,KAAKJ,UAAUS,cAAgBL,KAAKJ,UAAUU,M,QAI5DC,UAA4Bd,EAKxC,WAAAE,CAAmBC,EAAuDC,EAAcC,GACvFC,MAAMH,EAAWC,EAAMC,GAHjBE,KAAAQ,SAAW,MAIjBR,KAAKJ,UAAYA,C,CAGX,YAAAa,CAAaN,GACnBO,EACCV,KAAKJ,UACL,SACCO,UAA0BA,IAAU,WAAaA,IAAU,QAAUA,IAAU,UAAYA,IAAU,OAASA,IAAU,QACzH,IAAIQ,IAAI,CAAC,oCACTR,E,CAIK,kBAAAS,CAAmBT,GACzBS,EAAmBZ,KAAKJ,UAAWO,E,CAG7B,iBAAAC,GACNL,MAAMK,oBACNJ,KAAKS,aAAaT,KAAKJ,UAAUiB,OACjCb,KAAKY,mBAAmBZ,KAAKJ,UAAUkB,Y"}
1
+ {"version":3,"names":["InputTextEmailController","InputPasswordController","constructor","component","name","host","super","this","validateList","validateSuggestions","value","componentWillLoad","_suggestions","_list","InputTextController","hasError","validateType","watchValidator","Set","validateHasCounter","_type","_hasCounter"],"sources":["src/components/input-text/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { Stringified } from '../../types/common';\nimport { InputTextType } from '../../types/input/control/text';\nimport { validateHasCounter } from '../../types/props/has-counter';\nimport { PropLabelWithExpertSlot } from '../../types/props/label';\nimport { PropSuggestions, SuggestionsPropType, validateSuggestions } from '../../types/props/suggestions';\nimport { watchValidator } from '../../utils/prop.validators';\nimport { InputPasswordController } from '../input-password/controller';\nimport { Props as InputTextProps, Watches as InputTextWatches } from './types';\n\ntype RequiredProps = NonNullable<unknown>;\ntype OptionalProps = {\n\tid: string;\n\tlist: Stringified<string[]>;\n} & PropLabelWithExpertSlot &\n\tPropSuggestions;\ntype InputTextEmailProps = Generic.Element.Members<RequiredProps, OptionalProps>;\ntype InputTextEmailWatches = Generic.Element.Watchers<RequiredProps, OptionalProps>;\n\nexport class InputTextEmailController extends InputPasswordController implements InputTextEmailWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextEmailProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextEmailProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\t/**\n\t * @deprecated remains to satisfy `Watches` interface\n\t */\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tpublic validateList(): void {}\n\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tvalidateSuggestions(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateSuggestions(this.component._suggestions || this.component._list);\n\t}\n}\n\nexport class InputTextController extends InputTextEmailController implements InputTextWatches {\n\tprotected readonly component: Generic.Element.Component & InputTextProps;\n\n\tpublic hasError = false;\n\n\tpublic constructor(component: Generic.Element.Component & InputTextProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateType(value?: InputTextType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'text' || value === 'search' || value === 'url' || value === 'tel'),\n\t\t\tnew Set(['String {text, search, url, tel}']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t}\n}\n"],"mappings":";;;0JAoBaA,UAAiCC,EAG7C,WAAAC,CAAmBC,EAA4DC,EAAcC,GAC5FC,MAAMH,EAAWC,EAAMC,GACvBE,KAAKJ,UAAYA,C,CAOX,YAAAK,GAAY,CAEZ,mBAAAC,CAAoBC,GAC1BD,EAAoBF,KAAKJ,UAAWO,E,CAG9B,iBAAAC,GACNL,MAAMK,oBACNJ,KAAKE,oBAAoBF,KAAKJ,UAAUS,cAAgBL,KAAKJ,UAAUU,M,QAI5DC,UAA4Bd,EAKxC,WAAAE,CAAmBC,EAAuDC,EAAcC,GACvFC,MAAMH,EAAWC,EAAMC,GAHjBE,KAAAQ,SAAW,MAIjBR,KAAKJ,UAAYA,C,CAGX,YAAAa,CAAaN,GACnBO,EACCV,KAAKJ,UACL,SACCO,UAA0BA,IAAU,WAAaA,IAAU,QAAUA,IAAU,UAAYA,IAAU,OAASA,IAAU,QACzH,IAAIQ,IAAI,CAAC,oCACTR,E,CAIK,kBAAAS,CAAmBT,GACzBS,EAAmBZ,KAAKJ,UAAWO,E,CAG7B,iBAAAC,GACNL,MAAMK,oBACNJ,KAAKS,aAAaT,KAAKJ,UAAUiB,OACjCb,KAAKY,mBAAmBZ,KAAKJ,UAAUkB,Y"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{a as t,w as s,e as i,d as e}from"./prop.validators-9d76278b.js";import{I as a}from"./controller-icon-f9f90b78.js";const h=(e,o)=>{t(e,"_hasCounter",o)};class o extends a{constructor(t,e,o){super(t,e,o),this.component=t}validateAutoComplete(t){s(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){h(this.component,t)}validateMaxLength(t){i(this.component,"_maxLength",t,{min:0})}validatePattern(t){e(this.component,"_pattern",t)}validatePlaceholder(t){e(this.component,"_placeholder",t)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e)}validateSize(t){i(this.component,"_size",t,{min:1})}validateValue(t){e(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(t){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(t)}onFocus(t){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(t)}}export{o as I,h as v};
4
+ import{a as t,w as s,e as i,d as e}from"./prop.validators-8c5a4551.js";import{I as a}from"./controller-icon-90a5af99.js";const h=(e,o)=>{t(e,"_hasCounter",o)};class o extends a{constructor(t,e,o){super(t,e,o),this.component=t}validateAutoComplete(t){s(this.component,"_autoComplete",(t=>"string"==typeof t&&("on"===t||"off"===t)),new Set(["on | off"]),t)}validateHasCounter(t){h(this.component,t)}validateMaxLength(t){i(this.component,"_maxLength",t,{min:0})}validatePattern(t){e(this.component,"_pattern",t)}validatePlaceholder(t){e(this.component,"_placeholder",t)}validateReadOnly(e){t(this.component,"_readOnly",e)}validateRequired(e){t(this.component,"_required",e)}validateSize(t){i(this.component,"_size",t,{min:1})}validateValue(t){e(this.component,"_value",t),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateHasCounter(this.component._hasCounter),this.validateMaxLength(this.component._maxLength),this.validatePattern(this.component._pattern),this.validatePlaceholder(this.component._placeholder),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateSize(this.component._size),this.validateValue(this.component._value)}onBlur(t){this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:this.placeholderCache}),this.placeholderCache=void 0,super.onBlur(t)}onFocus(t){this.placeholderCache=this.component.state._placeholder,this.component.state=Object.assign(Object.assign({},this.component.state),{_placeholder:void 0}),super.onFocus(t)}}export{o as I,h as v};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["validateHasCounter","component","value","watchBoolean","InputPasswordController","InputIconController","constructor","name","host","super","this","validateAutoComplete","watchValidator","Set","validateMaxLength","watchNumber","min","validatePattern","watchString","validatePlaceholder","validateReadOnly","validateRequired","validateSize","validateValue","setFormAssociatedValue","state","_value","componentWillLoad","_autoComplete","_hasCounter","_maxLength","_pattern","_placeholder","_readOnly","_required","_size","onBlur","event","Object","assign","placeholderCache","undefined","onFocus"],"sources":["src/types/props/has-counter.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../../utils/prop.validators';\n\n/* types */\nexport type HasCounterPropType = boolean;\n\n/**\n * Shows the character count on the lower border of the input.\n */\nexport type PropHasCounter = {\n\thasCounter: HasCounterPropType;\n};\n\n/* validator */\nexport const validateHasCounter = (component: Generic.Element.Component, value?: HasCounterPropType): void => {\n\twatchBoolean(component, '_hasCounter', value);\n};\n","import type { Generic } from 'adopted-style-sheets';\n\nimport { InputTypeOnOff } from '../../types/input/types';\nimport { validateHasCounter } from '../../types/props/has-counter';\nimport { watchBoolean, watchNumber, watchString, watchValidator } from '../../utils/prop.validators';\nimport { InputIconController } from '../@deprecated/input/controller-icon';\nimport { Props, Watches } from './types';\n\nexport class InputPasswordController extends InputIconController implements Watches {\n\tprotected readonly component: Generic.Element.Component & Props;\n\tprivate placeholderCache?: string;\n\n\tpublic constructor(component: Generic.Element.Component & Props, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_autoComplete',\n\t\t\t(value): boolean => typeof value === 'string' && (value === 'on' || value === 'off'),\n\t\t\tnew Set(['on | off']),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateHasCounter(value?: boolean): void {\n\t\tvalidateHasCounter(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateSize(value?: number): void {\n\t\twatchNumber(this.component, '_size', value, {\n\t\t\tmin: 1,\n\t\t});\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value);\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateSize(this.component._size);\n\t\tthis.validateValue(this.component._value);\n\t}\n\n\tprotected onBlur(event: Event): void {\n\t\t/**\n\t\t * Beim Screenreader NVDA wird der Placeholder mit\n\t\t * vorgelesen. Somit kann es vorkommen, dass das\n\t\t * Label und der Placeholder vorgelesen werden.\n\t\t *\n\t\t * Aufgrund dessen, dass das Label immer vorgelesen\n\t\t * werden muss, kann das zusätzliche Vorlesen des\n\t\t * Placeholders störend sein.\n\t\t *\n\t\t * Damit beim Fokussieren das \"doppelte\" vorlesen\n\t\t * vermieden werden kann, wird der Placeholder für\n\t\t * den fokussierten Feldstatus entfernt.\n\t\t *\n\t\t * Hinweis: Für alle Nutzenden müssen die all dar-\n\t\t * gestellten Inhalte, also auch der Place-\n\t\t * holder, gleichermaßen zugänglich sein.\n\t\t * Das oben beschriebene Handling erfüllt\n\t\t * diese Anforderung nicht.\n\t\t */\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: this.placeholderCache,\n\t\t};\n\t\tthis.placeholderCache = undefined;\n\t\tsuper.onBlur(event);\n\t}\n\n\tprotected onFocus(event: Event): void {\n\t\tthis.placeholderCache = this.component.state._placeholder as string;\n\t\tthis.component.state = {\n\t\t\t...this.component.state,\n\t\t\t_placeholder: undefined,\n\t\t};\n\t\tsuper.onFocus(event);\n\t}\n}\n"],"mappings":";;;+HAeaA,EAAqB,CAACC,EAAsCC,KACxEC,EAAaF,EAAW,cAAeC,EAAM,E,MCRjCE,UAAgCC,EAI5C,WAAAC,CAAmBL,EAA8CM,EAAcC,GAC9EC,MAAMR,EAAWM,EAAMC,GACvBE,KAAKT,UAAYA,C,CAGX,oBAAAU,CAAqBT,GAC3BU,EACCF,KAAKT,UACL,iBACCC,UAA0BA,IAAU,WAAaA,IAAU,MAAQA,IAAU,QAC9E,IAAIW,IAAI,CAAC,aACTX,E,CAIK,kBAAAF,CAAmBE,GACzBF,EAAmBU,KAAKT,UAAWC,E,CAG7B,iBAAAY,CAAkBZ,GACxBa,EAAYL,KAAKT,UAAW,aAAcC,EAAO,CAChDc,IAAK,G,CAIA,eAAAC,CAAgBf,GACtBgB,EAAYR,KAAKT,UAAW,WAAYC,E,CAGlC,mBAAAiB,CAAoBjB,GAC1BgB,EAAYR,KAAKT,UAAW,eAAgBC,E,CAGtC,gBAAAkB,CAAiBlB,GACvBC,EAAaO,KAAKT,UAAW,YAAaC,E,CAGpC,gBAAAmB,CAAiBnB,GACvBC,EAAaO,KAAKT,UAAW,YAAaC,E,CAGpC,YAAAoB,CAAapB,GACnBa,EAAYL,KAAKT,UAAW,QAASC,EAAO,CAC3Cc,IAAK,G,CAIA,aAAAO,CAAcrB,GACpBgB,EAAYR,KAAKT,UAAW,SAAUC,GACtCQ,KAAKc,uBAAuBd,KAAKT,UAAUwB,MAAMC,O,CAG3C,iBAAAC,GACNlB,MAAMkB,oBACNjB,KAAKC,qBAAqBD,KAAKT,UAAU2B,eACzClB,KAAKV,mBAAmBU,KAAKT,UAAU4B,aACvCnB,KAAKI,kBAAkBJ,KAAKT,UAAU6B,YACtCpB,KAAKO,gBAAgBP,KAAKT,UAAU8B,UACpCrB,KAAKS,oBAAoBT,KAAKT,UAAU+B,cACxCtB,KAAKU,iBAAiBV,KAAKT,UAAUgC,WACrCvB,KAAKW,iBAAiBX,KAAKT,UAAUiC,WACrCxB,KAAKY,aAAaZ,KAAKT,UAAUkC,OACjCzB,KAAKa,cAAcb,KAAKT,UAAUyB,O,CAGzB,MAAAU,CAAOC,GAoBhB3B,KAAKT,UAAUwB,MAAKa,OAAAC,OAAAD,OAAAC,OAAA,GAChB7B,KAAKT,UAAUwB,OAAK,CACvBO,aAActB,KAAK8B,mBAEpB9B,KAAK8B,iBAAmBC,UACxBhC,MAAM2B,OAAOC,E,CAGJ,OAAAK,CAAQL,GACjB3B,KAAK8B,iBAAmB9B,KAAKT,UAAUwB,MAAMO,aAC7CtB,KAAKT,UAAUwB,MAAKa,OAAAC,OAAAD,OAAAC,OAAA,GAChB7B,KAAKT,UAAUwB,OAAK,CACvBO,aAAcS,YAEfhC,MAAMiC,QAAQL,E"}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{d as e}from"./a11y.tipps-c347026d.js";import{a as o}from"./dev.utils-11981c6e.js";import{f as t,K as n}from"./prop.validators-9d76278b.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},s=(a={})=>{var s,r;const l=i(a.form);if(l instanceof HTMLElement){const a=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:l});if("FORM"===l.tagName)t(a,l),l.dispatchEvent(a),o()&&!1===l.noValidate&&e("If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.",{force:!0}),"function"==typeof l.requestSubmit&&l.requestSubmit();else if("KOL-FORM"===l.tagName){t(a,n.querySelector("form",l));const e=l;"function"==typeof(null===(s=e._on)||void 0===s?void 0:s.onSubmit)&&(null===(r=e._on)||void 0===r||r.onSubmit(a))}}};export{f as a,s as p};
4
+ import{d as e}from"./a11y.tipps-1cea6b3d.js";import{a as o}from"./dev.utils-8d5cefe9.js";import{f as t,K as n}from"./prop.validators-8c5a4551.js";const i=t=>{for(o()&&(e("↓ Search form element start."),console.log(t));t instanceof HTMLElement&&"FORM"!==t.tagName&&"KOL-FORM"!==t.tagName;)t=t.parentElement instanceof HTMLElement?t.parentElement:t.parentNode instanceof ShadowRoot?t.parentNode.host:null,o()&&console.log(t);return o()&&e("↑ Search form element finished."),t},f=(e={})=>{var o,a;const s=i(e.form);if(s instanceof HTMLElement){const e=new Event("reset",{bubbles:!0,cancelable:!0});if("FORM"===s.tagName)t(e,s),s.dispatchEvent(e);else if("KOL-FORM"===s.tagName){t(e,n.querySelector("form",s));const i=s;"function"==typeof(null===(o=i._on)||void 0===o?void 0:o.onReset)&&(null===(a=i._on)||void 0===a||a.onReset(e))}}},s=(a={})=>{var s,r;const f=i(a.form);if(f instanceof HTMLElement){const a=new SubmitEvent("submit",{bubbles:!0,cancelable:!0,submitter:f});if("FORM"===f.tagName)t(a,f),f.dispatchEvent(a),o()&&!1===f.noValidate&&e("If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.",{force:!0}),"function"==typeof f.requestSubmit&&f.requestSubmit();else if("KOL-FORM"===f.tagName){t(a,n.querySelector("form",f));const e=f;"function"==typeof(null===(s=e._on)||void 0===s?void 0:s.onSubmit)&&(null===(r=e._on)||void 0===r||r.onSubmit(a))}}};export{f as a,s as p};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["searchFormElement","el","getExperimentalMode","devHint","console","log","HTMLElement","tagName","parentElement","parentNode","ShadowRoot","host","propagateResetEventToForm","options","form","event","Event","bubbles","cancelable","setEventTarget","dispatchEvent","KoliBriDevHelper","querySelector","kolForm","_a","_on","onReset","_b","propagateSubmitEventToForm","SubmitEvent","submitter","noValidate","force","requestSubmit","onSubmit"],"sources":["src/components/form/controller.ts"],"sourcesContent":["import { devHint } from '../../utils/a11y.tipps';\nimport { getExperimentalMode } from '../../utils/dev.utils';\nimport { KoliBriDevHelper, setEventTarget } from '../../utils/prop.validators';\nimport { Props } from './types';\n\nconst searchFormElement = (el?: HTMLElement | ParentNode | null): HTMLElement | ParentNode | null | undefined => {\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↓ Search form element start.`);\n\t\tconsole.log(el);\n\t}\n\twhile (el instanceof HTMLElement && el.tagName !== 'FORM' && el.tagName !== 'KOL-FORM') {\n\t\tif (el.parentElement instanceof HTMLElement) {\n\t\t\tel = el.parentElement;\n\t\t} else if (el.parentNode instanceof ShadowRoot) {\n\t\t\tel = el.parentNode.host;\n\t\t} else {\n\t\t\tel = null;\n\t\t}\n\t\tif (getExperimentalMode()) {\n\t\t\tconsole.log(el);\n\t\t}\n\t}\n\tif (getExperimentalMode()) {\n\t\tdevHint(`↑ Search form element finished.`);\n\t}\n\treturn el;\n};\n\nexport const propagateResetEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {},\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new Event('reset', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t});\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as Props;\n\t\t\tif (typeof kolForm._on?.onReset === 'function') {\n\t\t\t\ttypeof kolForm._on?.onReset(event);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexport const propagateSubmitEventToForm = (\n\toptions: {\n\t\tform?: HTMLElement | ParentNode | null;\n\t\tref?: HTMLElement;\n\t} = {},\n): void => {\n\tconst form = searchFormElement(options.form);\n\tif (form instanceof HTMLElement) {\n\t\tconst event = new SubmitEvent('submit', {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t\tsubmitter: form,\n\t\t});\n\t\t/**\n\t\t * TODO: Wenn Formular-Action (nicht Ajax oder JS) verwendet wird,\n\t\t * dann müssen wir das Event an das HTMLFormElement innerhalb\n\t\t * der HTMLKolFormElements propagieren, wenn kein onSubmit\n\t\t * gesetzt wurde.\n\t\t *\n\t\t * TODO: Form-associated custom elements:\n\t\t * - https://web.dev/more-capable-form-controls/\n\t\t * - https://github.com/public-ui/kolibri/issues/946\n\t\t */\n\t\tif (form.tagName === 'FORM') {\n\t\t\tsetEventTarget(event, form);\n\t\t\tform.dispatchEvent(event);\n\t\t\tif (getExperimentalMode() && (form as HTMLFormElement).noValidate === false) {\n\t\t\t\tdevHint(`If you have not focusable or hidden form fields in your form, you should enable noValidate for your form.`, {\n\t\t\t\t\tforce: true,\n\t\t\t\t});\n\t\t\t\t// (form as HTMLFormElement).noValidate = true; do not make this implicit\n\t\t\t}\n\t\t\tif (typeof (form as HTMLFormElement).requestSubmit === 'function') {\n\t\t\t\t// See https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/requestSubmit\n\t\t\t\t(form as HTMLFormElement).requestSubmit();\n\t\t\t}\n\t\t} else if (form.tagName === 'KOL-FORM') {\n\t\t\tsetEventTarget(event, KoliBriDevHelper.querySelector('form', form) as HTMLFormElement);\n\t\t\tconst kolForm = form as Props;\n\t\t\tif (typeof kolForm._on?.onSubmit === 'function') {\n\t\t\t\tkolForm._on?.onSubmit(event);\n\t\t\t}\n\t\t}\n\t}\n};\n"],"mappings":";;;kJAKA,MAAMA,EAAqBC,IAC1B,GAAIC,IAAuB,CAC1BC,EAAQ,gCACRC,QAAQC,IAAIJ,E,CAEb,MAAOA,aAAcK,aAAeL,EAAGM,UAAY,QAAUN,EAAGM,UAAY,WAAY,CACvF,GAAIN,EAAGO,yBAAyBF,YAAa,CAC5CL,EAAKA,EAAGO,a,MACF,GAAIP,EAAGQ,sBAAsBC,WAAY,CAC/CT,EAAKA,EAAGQ,WAAWE,I,KACb,CACNV,EAAK,I,CAEN,GAAIC,IAAuB,CAC1BE,QAAQC,IAAIJ,E,EAGd,GAAIC,IAAuB,CAC1BC,EAAQ,kC,CAET,OAAOF,CAAE,E,MAGGW,EAA4B,CACxCC,EAGI,M,QAEJ,MAAMC,EAAOd,EAAkBa,EAAQC,MACvC,GAAIA,aAAgBR,YAAa,CAChC,MAAMS,EAAQ,IAAIC,MAAM,QAAS,CAChCC,QAAS,KACTC,WAAY,OAEb,GAAIJ,EAAKP,UAAY,OAAQ,CAC5BY,EAAeJ,EAAOD,GACtBA,EAAKM,cAAcL,E,MACb,GAAID,EAAKP,UAAY,WAAY,CACvCY,EAAeJ,EAAOM,EAAiBC,cAAc,OAAQR,IAC7D,MAAMS,EAAUT,EAChB,WAAWU,EAAAD,EAAQE,OAAG,MAAAD,SAAA,SAAAA,EAAEE,WAAY,WAAY,SACxCC,EAAAJ,EAAQE,OAAG,MAAAE,SAAA,SAAAA,EAAED,QAAQX,G,WAMnBa,EAA6B,CACzCf,EAGI,M,QAEJ,MAAMC,EAAOd,EAAkBa,EAAQC,MACvC,GAAIA,aAAgBR,YAAa,CAChC,MAAMS,EAAQ,IAAIc,YAAY,SAAU,CACvCZ,QAAS,KACTC,WAAY,KACZY,UAAWhB,IAYZ,GAAIA,EAAKP,UAAY,OAAQ,CAC5BY,EAAeJ,EAAOD,GACtBA,EAAKM,cAAcL,GACnB,GAAIb,KAA0BY,EAAyBiB,aAAe,MAAO,CAC5E5B,EAAQ,4GAA6G,CACpH6B,MAAO,M,CAIT,UAAYlB,EAAyBmB,gBAAkB,WAAY,CAEjEnB,EAAyBmB,e,OAErB,GAAInB,EAAKP,UAAY,WAAY,CACvCY,EAAeJ,EAAOM,EAAiBC,cAAc,OAAQR,IAC7D,MAAMS,EAAUT,EAChB,WAAWU,EAAAD,EAAQE,OAAG,MAAAD,SAAA,SAAAA,EAAEU,YAAa,WAAY,EAChDP,EAAAJ,EAAQE,OAAG,MAAAE,SAAA,SAAAA,EAAEO,SAASnB,E"}