@public-ui/components 2.2.19 → 2.2.20-3e68a967427d721cf5890286bc87047a988f4113.0

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 (345) hide show
  1. package/custom-elements.json +1 -1
  2. package/dist/cjs/{Alert-90c90047.js → Alert-7199189d.js} +1 -1
  3. package/dist/cjs/{Alert-90c90047.js.map → Alert-7199189d.js.map} +1 -1
  4. package/dist/cjs/{Collapsible-8beab019.js → Collapsible-66a741e7.js} +1 -1
  5. package/dist/cjs/{Collapsible-8beab019.js.map → Collapsible-66a741e7.js.map} +1 -1
  6. package/dist/cjs/{FormFieldMsg-f3e3ce68.js → FormFieldMsg-28829d0c.js} +1 -1
  7. package/dist/cjs/{FormFieldMsg-f3e3ce68.js.map → FormFieldMsg-28829d0c.js.map} +1 -1
  8. package/dist/cjs/{InternalUnderlinedBadgeText-65879888.js → InternalUnderlinedBadgeText-a320e8f2.js} +1 -1
  9. package/dist/cjs/{InternalUnderlinedBadgeText-65879888.js.map → InternalUnderlinedBadgeText-a320e8f2.js.map} +1 -1
  10. package/dist/cjs/align-floating-elements-1fa314b6.js +4 -0
  11. package/dist/cjs/align-floating-elements-1fa314b6.js.map +1 -0
  12. package/dist/cjs/{app-globals-b6d7f55c.js → app-globals-7941349e.js} +1 -1
  13. package/dist/cjs/{app-globals-b6d7f55c.js.map → app-globals-7941349e.js.map} +1 -1
  14. package/dist/cjs/{controller-0e387955.js → controller-6de58b29.js} +1 -1
  15. package/dist/cjs/{controller-0e387955.js.map → controller-6de58b29.js.map} +1 -1
  16. package/dist/cjs/{controller-3ccdb106.js → controller-d816f008.js} +1 -1
  17. package/dist/cjs/{controller-3ccdb106.js.map → controller-d816f008.js.map} +1 -1
  18. package/dist/cjs/debounce-80a7f9a5.js +4 -0
  19. package/dist/cjs/debounce-80a7f9a5.js.map +1 -0
  20. package/dist/cjs/{dev.utils-a8dca824.js → dev.utils-ededfb8b.js} +1 -1
  21. package/dist/cjs/{dev.utils-a8dca824.js.map → dev.utils-ededfb8b.js.map} +1 -1
  22. package/dist/cjs/{devtools-b7f17fa3.js → devtools-b583e558.js} +1 -1
  23. package/dist/cjs/{devtools-b7f17fa3.js.map → devtools-b583e558.js.map} +1 -1
  24. package/dist/cjs/index-9d484f34.js +4 -0
  25. package/dist/cjs/index-9d484f34.js.map +1 -0
  26. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  27. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  28. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  29. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  30. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  31. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  32. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  33. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  34. package/dist/cjs/kol-button-group-wc.cjs.entry.js +1 -1
  35. package/dist/cjs/kol-button-group.cjs.entry.js +1 -1
  36. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  37. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  38. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  39. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  40. package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
  41. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  42. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  43. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  44. package/dist/cjs/kol-heading-wc.cjs.entry.js +1 -1
  45. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  46. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  47. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  48. package/dist/cjs/kol-indented-text-wc.cjs.entry.js +1 -1
  49. package/dist/cjs/kol-indented-text.cjs.entry.js +1 -1
  50. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  51. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-input-date.cjs.entry.js.map +1 -1
  54. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-input.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-link-group.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-logo.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-popover-button.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-select-wc.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-single-select.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-span-wc.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-symbol.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-table.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  88. package/dist/cjs/kol-tabs.cjs.entry.js.map +1 -1
  89. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  90. package/dist/cjs/kol-textarea.cjs.entry.js.map +1 -1
  91. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  92. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-tooltip-wc.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  100. package/dist/cjs/kolibri.cjs.js +1 -1
  101. package/dist/cjs/loader.cjs.js +1 -1
  102. package/dist/cjs/test-component.cjs.entry.js +1 -1
  103. package/dist/components/align-floating-elements.js +1 -1
  104. package/dist/components/align-floating-elements.js.map +1 -1
  105. package/dist/components/controller5.js.map +1 -1
  106. package/dist/components/debounce.js +1 -1
  107. package/dist/components/debounce.js.map +1 -1
  108. package/dist/components/kol-input-date.js +1 -1
  109. package/dist/components/kol-input-date.js.map +1 -1
  110. package/dist/components/kol-tabs.js +1 -1
  111. package/dist/components/kol-tabs.js.map +1 -1
  112. package/dist/components/kol-textarea.js +1 -1
  113. package/dist/components/kol-textarea.js.map +1 -1
  114. package/dist/components/kol-tooltip-wc.js +1 -1
  115. package/dist/components/kol-tooltip-wc.js.map +1 -1
  116. package/dist/esm/{Alert-a144a0c6.js → Alert-f3589084.js} +1 -1
  117. package/dist/esm/{Alert-a144a0c6.js.map → Alert-f3589084.js.map} +1 -1
  118. package/dist/esm/{Collapsible-e36ebe40.js → Collapsible-0b921923.js} +1 -1
  119. package/dist/esm/{Collapsible-e36ebe40.js.map → Collapsible-0b921923.js.map} +1 -1
  120. package/dist/esm/{FormFieldMsg-3ed117ac.js → FormFieldMsg-b76ec116.js} +1 -1
  121. package/dist/esm/{FormFieldMsg-3ed117ac.js.map → FormFieldMsg-b76ec116.js.map} +1 -1
  122. package/dist/esm/InternalUnderlinedBadgeText-59efa92b.js +4 -0
  123. package/dist/esm/{InternalUnderlinedBadgeText-9f73fba4.js.map → InternalUnderlinedBadgeText-59efa92b.js.map} +1 -1
  124. package/dist/esm/align-floating-elements-9b9ebf60.js +4 -0
  125. package/dist/esm/align-floating-elements-9b9ebf60.js.map +1 -0
  126. package/dist/esm/{app-globals-ac5602d3.js → app-globals-80afa250.js} +1 -1
  127. package/dist/esm/{app-globals-ac5602d3.js.map → app-globals-80afa250.js.map} +1 -1
  128. package/dist/esm/{controller-fdb21ded.js → controller-40a4c91a.js} +1 -1
  129. package/dist/esm/{controller-fdb21ded.js.map → controller-40a4c91a.js.map} +1 -1
  130. package/dist/esm/{controller-7cbec86e.js → controller-429d8db6.js} +1 -1
  131. package/dist/esm/{controller-7cbec86e.js.map → controller-429d8db6.js.map} +1 -1
  132. package/dist/esm/debounce-3d5168e5.js +4 -0
  133. package/dist/esm/debounce-3d5168e5.js.map +1 -0
  134. package/dist/esm/{dev.utils-49eee6de.js → dev.utils-c2ccfc9f.js} +1 -1
  135. package/dist/esm/{dev.utils-49eee6de.js.map → dev.utils-c2ccfc9f.js.map} +1 -1
  136. package/dist/esm/{devtools-1c10ed6d.js → devtools-4c884be1.js} +1 -1
  137. package/dist/esm/{devtools-1c10ed6d.js.map → devtools-4c884be1.js.map} +1 -1
  138. package/dist/esm/index-92d11de6.js +4 -0
  139. package/dist/esm/index-92d11de6.js.map +1 -0
  140. package/dist/esm/kol-abbr.entry.js +1 -1
  141. package/dist/esm/kol-accordion.entry.js +1 -1
  142. package/dist/esm/kol-alert-wc.entry.js +1 -1
  143. package/dist/esm/kol-alert.entry.js +1 -1
  144. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  145. package/dist/esm/kol-avatar.entry.js +1 -1
  146. package/dist/esm/kol-badge.entry.js +1 -1
  147. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  148. package/dist/esm/kol-button-group-wc.entry.js +1 -1
  149. package/dist/esm/kol-button-group.entry.js +1 -1
  150. package/dist/esm/kol-button-link.entry.js +1 -1
  151. package/dist/esm/kol-button-wc.entry.js +1 -1
  152. package/dist/esm/kol-button.entry.js +1 -1
  153. package/dist/esm/kol-card.entry.js +1 -1
  154. package/dist/esm/kol-combobox.entry.js +1 -1
  155. package/dist/esm/kol-details.entry.js +1 -1
  156. package/dist/esm/kol-drawer.entry.js +1 -1
  157. package/dist/esm/kol-form.entry.js +1 -1
  158. package/dist/esm/kol-heading-wc.entry.js +1 -1
  159. package/dist/esm/kol-heading.entry.js +1 -1
  160. package/dist/esm/kol-icon.entry.js +1 -1
  161. package/dist/esm/kol-image.entry.js +1 -1
  162. package/dist/esm/kol-indented-text-wc.entry.js +1 -1
  163. package/dist/esm/kol-indented-text.entry.js +1 -1
  164. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  165. package/dist/esm/kol-input-color.entry.js +1 -1
  166. package/dist/esm/kol-input-date.entry.js +1 -1
  167. package/dist/esm/kol-input-date.entry.js.map +1 -1
  168. package/dist/esm/kol-input-email.entry.js +1 -1
  169. package/dist/esm/kol-input-file.entry.js +1 -1
  170. package/dist/esm/kol-input-number.entry.js +1 -1
  171. package/dist/esm/kol-input-password.entry.js +1 -1
  172. package/dist/esm/kol-input-radio.entry.js +1 -1
  173. package/dist/esm/kol-input-range.entry.js +1 -1
  174. package/dist/esm/kol-input-text.entry.js +1 -1
  175. package/dist/esm/kol-input.entry.js +1 -1
  176. package/dist/esm/kol-kolibri.entry.js +1 -1
  177. package/dist/esm/kol-link-button.entry.js +1 -1
  178. package/dist/esm/kol-link-group.entry.js +1 -1
  179. package/dist/esm/kol-link-wc.entry.js +1 -1
  180. package/dist/esm/kol-link.entry.js +1 -1
  181. package/dist/esm/kol-logo.entry.js +1 -1
  182. package/dist/esm/kol-modal.entry.js +1 -1
  183. package/dist/esm/kol-nav.entry.js +1 -1
  184. package/dist/esm/kol-pagination.entry.js +1 -1
  185. package/dist/esm/kol-popover-button.entry.js +1 -1
  186. package/dist/esm/kol-popover-wc.entry.js +1 -1
  187. package/dist/esm/kol-progress.entry.js +1 -1
  188. package/dist/esm/kol-quote.entry.js +1 -1
  189. package/dist/esm/kol-select-wc.entry.js +1 -1
  190. package/dist/esm/kol-select.entry.js +1 -1
  191. package/dist/esm/kol-single-select.entry.js +1 -1
  192. package/dist/esm/kol-skip-nav.entry.js +1 -1
  193. package/dist/esm/kol-span-wc.entry.js +1 -1
  194. package/dist/esm/kol-spin.entry.js +1 -1
  195. package/dist/esm/kol-split-button.entry.js +1 -1
  196. package/dist/esm/kol-symbol.entry.js +1 -1
  197. package/dist/esm/kol-table-stateful.entry.js +1 -1
  198. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  199. package/dist/esm/kol-table-stateless.entry.js +1 -1
  200. package/dist/esm/kol-table.entry.js +1 -1
  201. package/dist/esm/kol-tabs.entry.js +1 -1
  202. package/dist/esm/kol-tabs.entry.js.map +1 -1
  203. package/dist/esm/kol-textarea.entry.js +1 -1
  204. package/dist/esm/kol-textarea.entry.js.map +1 -1
  205. package/dist/esm/kol-toast-container.entry.js +1 -1
  206. package/dist/esm/kol-toolbar.entry.js +1 -1
  207. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  208. package/dist/esm/kol-tooltip-wc.entry.js.map +1 -1
  209. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  210. package/dist/esm/kol-tree-item.entry.js +1 -1
  211. package/dist/esm/kol-tree-wc.entry.js +1 -1
  212. package/dist/esm/kol-tree.entry.js +1 -1
  213. package/dist/esm/kol-version.entry.js +1 -1
  214. package/dist/esm/kolibri.js +1 -1
  215. package/dist/esm/loader.js +1 -1
  216. package/dist/esm/test-component.entry.js +1 -1
  217. package/dist/kolibri/{Alert-a144a0c6.js → Alert-f3589084.js} +1 -1
  218. package/dist/kolibri/{Collapsible-e36ebe40.js → Collapsible-0b921923.js} +1 -1
  219. package/dist/kolibri/FormFieldMsg-b76ec116.js +4 -0
  220. package/dist/kolibri/{InternalUnderlinedBadgeText-9f73fba4.js → InternalUnderlinedBadgeText-59efa92b.js} +1 -1
  221. package/dist/kolibri/align-floating-elements-9b9ebf60.js +4 -0
  222. package/dist/kolibri/align-floating-elements-9b9ebf60.js.map +1 -0
  223. package/dist/kolibri/app-globals-80afa250.js +4 -0
  224. package/dist/kolibri/{app-globals-ac5602d3.js.map → app-globals-80afa250.js.map} +1 -1
  225. package/dist/kolibri/controller-40a4c91a.js +4 -0
  226. package/dist/kolibri/{controller-7cbec86e.js → controller-429d8db6.js} +1 -1
  227. package/dist/kolibri/controller-429d8db6.js.map +1 -0
  228. package/dist/kolibri/debounce-3d5168e5.js +4 -0
  229. package/dist/kolibri/debounce-3d5168e5.js.map +1 -0
  230. package/dist/kolibri/{dev.utils-49eee6de.js → dev.utils-c2ccfc9f.js} +1 -1
  231. package/dist/kolibri/{devtools-1c10ed6d.js → devtools-4c884be1.js} +1 -1
  232. package/dist/kolibri/{index-efad7e81.js → index-92d11de6.js} +1 -1
  233. package/dist/kolibri/index-92d11de6.js.map +1 -0
  234. package/dist/kolibri/kol-abbr.entry.js +1 -1
  235. package/dist/kolibri/kol-accordion.entry.js +1 -1
  236. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  237. package/dist/kolibri/kol-alert.entry.js +1 -1
  238. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  239. package/dist/kolibri/kol-avatar.entry.js +1 -1
  240. package/dist/kolibri/kol-badge.entry.js +1 -1
  241. package/dist/kolibri/kol-badge.entry.js.map +1 -1
  242. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  243. package/dist/kolibri/kol-button-group-wc.entry.js +1 -1
  244. package/dist/kolibri/kol-button-group.entry.js +1 -1
  245. package/dist/kolibri/kol-button-link.entry.js +1 -1
  246. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  247. package/dist/kolibri/kol-button-wc.entry.js.map +1 -1
  248. package/dist/kolibri/kol-button.entry.js +1 -1
  249. package/dist/kolibri/kol-card.entry.js +1 -1
  250. package/dist/kolibri/kol-combobox.entry.js +1 -1
  251. package/dist/kolibri/kol-details.entry.js +1 -1
  252. package/dist/kolibri/kol-drawer.entry.js +1 -1
  253. package/dist/kolibri/kol-form.entry.js +1 -1
  254. package/dist/kolibri/kol-heading-wc.entry.js +1 -1
  255. package/dist/kolibri/kol-heading.entry.js +1 -1
  256. package/dist/kolibri/kol-icon.entry.js +1 -1
  257. package/dist/kolibri/kol-image.entry.js +1 -1
  258. package/dist/kolibri/kol-indented-text-wc.entry.js +1 -1
  259. package/dist/kolibri/kol-indented-text.entry.js +1 -1
  260. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  261. package/dist/kolibri/kol-input-color.entry.js +1 -1
  262. package/dist/kolibri/kol-input-date.entry.js +1 -1
  263. package/dist/kolibri/kol-input-date.entry.js.map +1 -1
  264. package/dist/kolibri/kol-input-email.entry.js +1 -1
  265. package/dist/kolibri/kol-input-file.entry.js +1 -1
  266. package/dist/kolibri/kol-input-number.entry.js +1 -1
  267. package/dist/kolibri/kol-input-password.entry.js +1 -1
  268. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  269. package/dist/kolibri/kol-input-range.entry.js +1 -1
  270. package/dist/kolibri/kol-input-text.entry.js +1 -1
  271. package/dist/kolibri/kol-input.entry.js +1 -1
  272. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  273. package/dist/kolibri/kol-link-button.entry.js +1 -1
  274. package/dist/kolibri/kol-link-group.entry.js +1 -1
  275. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  276. package/dist/kolibri/kol-link.entry.js +1 -1
  277. package/dist/kolibri/kol-logo.entry.js +1 -1
  278. package/dist/kolibri/kol-modal.entry.js +1 -1
  279. package/dist/kolibri/kol-nav.entry.js +1 -1
  280. package/dist/kolibri/kol-pagination.entry.js +1 -1
  281. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  282. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  283. package/dist/kolibri/kol-progress.entry.js +1 -1
  284. package/dist/kolibri/kol-quote.entry.js +1 -1
  285. package/dist/kolibri/kol-select-wc.entry.js +1 -1
  286. package/dist/kolibri/kol-select.entry.js +1 -1
  287. package/dist/kolibri/kol-single-select.entry.js +1 -1
  288. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  289. package/dist/kolibri/kol-span-wc.entry.js +1 -1
  290. package/dist/kolibri/kol-spin.entry.js +1 -1
  291. package/dist/kolibri/kol-split-button.entry.js +1 -1
  292. package/dist/kolibri/kol-symbol.entry.js +1 -1
  293. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  294. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  295. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  296. package/dist/kolibri/kol-table.entry.js +1 -1
  297. package/dist/kolibri/kol-tabs.entry.js +1 -1
  298. package/dist/kolibri/kol-tabs.entry.js.map +1 -1
  299. package/dist/kolibri/kol-textarea.entry.js +1 -1
  300. package/dist/kolibri/kol-textarea.entry.js.map +1 -1
  301. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  302. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  303. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  304. package/dist/kolibri/kol-tooltip-wc.entry.js.map +1 -1
  305. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  306. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  307. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  308. package/dist/kolibri/kol-tree.entry.js +1 -1
  309. package/dist/kolibri/kol-version.entry.js +1 -1
  310. package/dist/kolibri/kolibri.esm.js +1 -1
  311. package/dist/kolibri/test-component.entry.js +1 -1
  312. package/dist/types/components/input-password/controller.d.ts +1 -1
  313. package/dist/types/components/textarea/controller.d.ts +1 -1
  314. package/dist/types/components/tooltip/component.d.ts +3 -2
  315. package/dist/types/utils/debounce.d.ts +1 -0
  316. package/package.json +3 -3
  317. package/dist/cjs/align-floating-elements-e703b6f9.js +0 -4
  318. package/dist/cjs/align-floating-elements-e703b6f9.js.map +0 -1
  319. package/dist/cjs/debounce-f7b62668.js +0 -4
  320. package/dist/cjs/debounce-f7b62668.js.map +0 -1
  321. package/dist/cjs/index-98986106.js +0 -4
  322. package/dist/cjs/index-98986106.js.map +0 -1
  323. package/dist/esm/InternalUnderlinedBadgeText-9f73fba4.js +0 -4
  324. package/dist/esm/align-floating-elements-a7a489c8.js +0 -4
  325. package/dist/esm/align-floating-elements-a7a489c8.js.map +0 -1
  326. package/dist/esm/debounce-b7245613.js +0 -4
  327. package/dist/esm/debounce-b7245613.js.map +0 -1
  328. package/dist/esm/index-efad7e81.js +0 -4
  329. package/dist/esm/index-efad7e81.js.map +0 -1
  330. package/dist/kolibri/FormFieldMsg-3ed117ac.js +0 -4
  331. package/dist/kolibri/align-floating-elements-a7a489c8.js +0 -4
  332. package/dist/kolibri/align-floating-elements-a7a489c8.js.map +0 -1
  333. package/dist/kolibri/app-globals-ac5602d3.js +0 -4
  334. package/dist/kolibri/controller-7cbec86e.js.map +0 -1
  335. package/dist/kolibri/controller-fdb21ded.js +0 -4
  336. package/dist/kolibri/debounce-b7245613.js +0 -4
  337. package/dist/kolibri/debounce-b7245613.js.map +0 -1
  338. package/dist/kolibri/index-efad7e81.js.map +0 -1
  339. /package/dist/kolibri/{Alert-a144a0c6.js.map → Alert-f3589084.js.map} +0 -0
  340. /package/dist/kolibri/{Collapsible-e36ebe40.js.map → Collapsible-0b921923.js.map} +0 -0
  341. /package/dist/kolibri/{FormFieldMsg-3ed117ac.js.map → FormFieldMsg-b76ec116.js.map} +0 -0
  342. /package/dist/kolibri/{InternalUnderlinedBadgeText-9f73fba4.js.map → InternalUnderlinedBadgeText-59efa92b.js.map} +0 -0
  343. /package/dist/kolibri/{controller-fdb21ded.js.map → controller-40a4c91a.js.map} +0 -0
  344. /package/dist/kolibri/{dev.utils-49eee6de.js.map → dev.utils-c2ccfc9f.js.map} +0 -0
  345. /package/dist/kolibri/{devtools-1c10ed6d.js.map → devtools-4c884be1.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"controller5.js","mappings":"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","names":[],"sources":["src/schema/props/variant/password-variant.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nconst PasswordVariantPropTypeOptions = ['default', 'visibility-toggle'] as const;\nexport type PasswordVariantPropType = (typeof PasswordVariantPropTypeOptions)[number];\n\n/**\n * Defines the different variants for displaying the password input.\n */\nexport type PropPasswordVariant = {\n\tvariant: PasswordVariantPropType;\n};\n\n/* validator */\nexport const validatePasswordVariant = (component: Generic.Element.Component, value?: PasswordVariantPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_variant',\n\t\t(value) => typeof value === 'string' && PasswordVariantPropTypeOptions.includes(value),\n\t\tnew Set(PasswordVariantPropTypeOptions),\n\t\tvalue,\n\t);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { setState, validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\nimport type { PasswordVariantPropType } from '../../schema/props/variant/password-variant';\nimport { validatePasswordVariant } from '../../schema/props/variant/password-variant';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\nimport { debounce } from 'lodash-es';\n\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprotected afterSyncCharCounter = () => {\n\t\tif (typeof this.component._value === 'string') {\n\t\t\tthis.component.state._currentLength = this.component._value.length;\n\t\t\tthis.component.state._currentLengthDebounced = this.component._value.length;\n\t\t}\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\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateVariant(value?: PasswordVariantPropType): void {\n\t\tvalidatePasswordVariant(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant);\n\t}\n\n\tpublic readonly updateCurrentLengthDebounced = debounce((length: number) => {\n\t\tsetState(this.component, '_currentLengthDebounced', length);\n\t}, 500);\n}\n"],"version":3}
1
+ {"file":"controller5.js","mappings":"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","names":[],"sources":["src/schema/props/variant/password-variant.ts","src/components/input-password/controller.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchValidator } from '../../utils/prop.validators';\n\nconst PasswordVariantPropTypeOptions = ['default', 'visibility-toggle'] as const;\nexport type PasswordVariantPropType = (typeof PasswordVariantPropTypeOptions)[number];\n\n/**\n * Defines the different variants for displaying the password input.\n */\nexport type PropPasswordVariant = {\n\tvariant: PasswordVariantPropType;\n};\n\n/* validator */\nexport const validatePasswordVariant = (component: Generic.Element.Component, value?: PasswordVariantPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t'_variant',\n\t\t(value) => typeof value === 'string' && PasswordVariantPropTypeOptions.includes(value),\n\t\tnew Set(PasswordVariantPropTypeOptions),\n\t\tvalue,\n\t);\n};\n","import type { InputPasswordProps, InputPasswordWatches, InputTypeOnOff } from '../../schema';\nimport { setState, validateHasCounter, watchBoolean, watchNumber, watchString, watchValidator } from '../../schema';\nimport type { PasswordVariantPropType } from '../../schema/props/variant/password-variant';\nimport { validatePasswordVariant } from '../../schema/props/variant/password-variant';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\nimport { debounce } from '../../utils/debounce';\n\nexport class InputPasswordController extends InputIconController implements InputPasswordWatches {\n\tprotected readonly component: Generic.Element.Component & InputPasswordProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputPasswordProps, name: string, host?: HTMLElement) {\n\t\tsuper(component, name, host);\n\t\tthis.component = component;\n\t}\n\n\tprotected afterSyncCharCounter = () => {\n\t\tif (typeof this.component._value === 'string') {\n\t\t\tthis.component.state._currentLength = this.component._value.length;\n\t\t\tthis.component.state._currentLengthDebounced = this.component._value.length;\n\t\t}\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\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateVariant(value?: PasswordVariantPropType): void {\n\t\tvalidatePasswordVariant(this.component, value);\n\t}\n\n\tpublic validateMaxLength(value?: number): void {\n\t\twatchNumber(this.component, '_maxLength', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t\tmin: 0,\n\t\t});\n\t}\n\n\tpublic validatePattern(value?: string): void {\n\t\twatchString(this.component, '_pattern', value);\n\t}\n\n\tpublic validatePlaceholder(value?: string): void {\n\t\twatchString(this.component, '_placeholder', value);\n\t}\n\n\tpublic validateReadOnly(value?: boolean): void {\n\t\twatchBoolean(this.component, '_readOnly', value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateValue(value?: string): void {\n\t\twatchString(this.component, '_value', value, {\n\t\t\thooks: {\n\t\t\t\tafterPatch: this.afterSyncCharCounter,\n\t\t\t},\n\t\t});\n\n\t\tthis.setFormAssociatedValue(this.component.state._value as string);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tsuper.componentWillLoad();\n\t\tthis.validateAutoComplete(this.component._autoComplete);\n\t\tthis.validateHasCounter(this.component._hasCounter);\n\t\tthis.validateMaxLength(this.component._maxLength);\n\t\tthis.validatePattern(this.component._pattern);\n\t\tthis.validatePlaceholder(this.component._placeholder);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateValue(this.component._value);\n\t\tthis.validateVariant(this.component._variant);\n\t}\n\n\tpublic readonly updateCurrentLengthDebounced = debounce((length: number) => {\n\t\tsetState(this.component, '_currentLengthDebounced', length);\n\t}, 500);\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{j as watchBoolean}from"./index2.js";const validateHasCounter=(t,e,o)=>{watchBoolean(t,"_hasCounter",e,o)};var freeGlobal="object"==typeof global&&global&&global.Object===Object&&global;const freeGlobal$1=freeGlobal;var freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root=freeGlobal$1||freeSelf||Function("return this")();const root$1=root;var Symbol=root$1.Symbol;const Symbol$1=Symbol;var objectProto$1=Object.prototype,hasOwnProperty=objectProto$1.hasOwnProperty,nativeObjectToString$1=objectProto$1.toString,symToStringTag$1=Symbol$1?Symbol$1.toStringTag:void 0;function getRawTag(t){var e=hasOwnProperty.call(t,symToStringTag$1),o=t[symToStringTag$1];try{t[symToStringTag$1]=void 0;var r=!0}catch(t){}var n=nativeObjectToString$1.call(t);return r&&(e?t[symToStringTag$1]=o:delete t[symToStringTag$1]),n}var objectProto=Object.prototype,nativeObjectToString=objectProto.toString;function objectToString(t){return nativeObjectToString.call(t)}var nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$1?Symbol$1.toStringTag:void 0;function baseGetTag(t){return null==t?void 0===t?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(t)?getRawTag(t):objectToString(t)}function isObjectLike(t){return null!=t&&"object"==typeof t}var symbolTag="[object Symbol]";function isSymbol(t){return"symbol"==typeof t||isObjectLike(t)&&baseGetTag(t)==symbolTag}var reWhitespace=/\s/;function trimmedEndIndex(t){for(var e=t.length;e--&&reWhitespace.test(t.charAt(e)););return e}var reTrimStart=/^\s+/;function baseTrim(t){return t?t.slice(0,trimmedEndIndex(t)+1).replace(reTrimStart,""):t}function isObject(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}var NAN=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(t){if("number"==typeof t)return t;if(isSymbol(t))return NAN;if(isObject(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=isObject(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=baseTrim(t);var o=reIsBinary.test(t);return o||reIsOctal.test(t)?freeParseInt(t.slice(2),o?2:8):reIsBadHex.test(t)?NAN:+t}var now=function(){return root$1.Date.now()};const now$1=now;var FUNC_ERROR_TEXT="Expected a function",nativeMax=Math.max,nativeMin=Math.min;function debounce(t,e,o){var r,n,i,a,c,u,l=0,s=!1,f=!1,b=!0;if("function"!=typeof t)throw new TypeError(FUNC_ERROR_TEXT);function g(e){var o=r,i=n;return r=n=void 0,l=e,a=t.apply(i,o)}function v(t){var o=t-u;return void 0===u||o>=e||o<0||f&&t-l>=i}function T(){var t=now$1();if(v(t))return m(t);c=setTimeout(T,function(t){var o=e-(t-u);return f?nativeMin(o,i-(t-l)):o}(t))}function m(t){return c=void 0,b&&r?g(t):(r=n=void 0,a)}function y(){var t=now$1(),o=v(t);if(r=arguments,n=this,u=t,o){if(void 0===c)return function(t){return l=t,c=setTimeout(T,e),s?g(t):a}(u);if(f)return clearTimeout(c),c=setTimeout(T,e),g(u)}return void 0===c&&(c=setTimeout(T,e)),a}return e=toNumber(e)||0,isObject(o)&&(s=!!o.leading,i=(f="maxWait"in o)?nativeMax(toNumber(o.maxWait)||0,e):i,b="trailing"in o?!!o.trailing:b),y.cancel=function(){void 0!==c&&clearTimeout(c),l=0,r=u=n=c=void 0},y.flush=function(){return void 0===c?a:m(now$1())},y}export{debounce as d,validateHasCounter as v};
4
+ import{j as watchBoolean}from"./index2.js";const validateHasCounter=(e,o,a)=>{watchBoolean(e,"_hasCounter",o,a)},debounce=(e,o=0)=>{let a;return(...t)=>{a&&clearTimeout(a),a=setTimeout(()=>{a=void 0,e(...t)},o)}};export{debounce as d,validateHasCounter as v};
@@ -1 +1 @@
1
- {"file":"debounce.js","mappings":"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","names":["freeGlobal","root","objectProto","nativeObjectToString","symToStringTag","Symbol","now"],"sources":["src/schema/props/has-counter.ts","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_freeGlobal.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_root.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_Symbol.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_getRawTag.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_objectToString.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_baseGetTag.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/isObjectLike.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/isSymbol.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_trimmedEndIndex.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/_baseTrim.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/isObject.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/toNumber.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/now.js","../../node_modules/.pnpm/lodash-es@4.17.22/node_modules/lodash-es/debounce.js"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HasCounterPropType = boolean;\n\n/**\n * Shows the character count on the lower border of the input.\n */\nexport type PropHasCounter = {\n\thasCounter: HasCounterPropType;\n};\n\n/* validator */\nexport const validateHasCounter = (component: Generic.Element.Component, value?: HasCounterPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hasCounter', value, options);\n};\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nexport default trimmedEndIndex;\n","import trimmedEndIndex from './_trimmedEndIndex.js';\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nexport default baseTrim;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseTrim from './_baseTrim.js';\nimport isObject from './isObject.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nexport default toNumber;\n","import root from './_root.js';\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nexport default now;\n","import isObject from './isObject.js';\nimport now from './now.js';\nimport toNumber from './toNumber.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nexport default debounce;\n"],"version":3}
1
+ {"file":"debounce.js","mappings":";;;;;MAgBa,kBAAkB,GAAG,CAAC,SAAoC,EAAE,KAA0B,EAAE,OAA6B;IACjI,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACxD;;MClBa,QAAQ,GAAG,CAAyB,QAAiC,EAAE,IAAI,GAAG,CAAC;IAC3F,IAAI,SAAoD,CAAC;IAEzD,OAAO,CAAC,GAAG,IAAU;QACpB,IAAI,SAAS,EAAE;YACd,YAAY,CAAC,SAAS,CAAC,CAAC;SACxB;QAED,SAAS,GAAG,UAAU,CAAC;YACtB,SAAS,GAAG,SAAS,CAAC;YACtB,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;SAClB,EAAE,IAAI,CAAC,CAAC;KACT,CAAC;AACH;;;;","names":[],"sources":["src/schema/props/has-counter.ts","src/utils/debounce.ts"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport type { WatchBooleanOptions } from '../utils';\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type HasCounterPropType = boolean;\n\n/**\n * Shows the character count on the lower border of the input.\n */\nexport type PropHasCounter = {\n\thasCounter: HasCounterPropType;\n};\n\n/* validator */\nexport const validateHasCounter = (component: Generic.Element.Component, value?: HasCounterPropType, options?: WatchBooleanOptions): void => {\n\twatchBoolean(component, '_hasCounter', value, options);\n};\n","export const debounce = <Args extends unknown[]>(callback: (...args: Args) => void, wait = 0) => {\n\tlet timeoutId: ReturnType<typeof setTimeout> | undefined;\n\n\treturn (...args: Args): void => {\n\t\tif (timeoutId) {\n\t\t\tclearTimeout(timeoutId);\n\t\t}\n\n\t\ttimeoutId = setTimeout(() => {\n\t\t\ttimeoutId = undefined;\n\t\t\tcallback(...args);\n\t\t}, wait);\n\t};\n};\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host,Fragment}from"@stencil/core/internal/client";import{j as watchBoolean,w as watchValidator,l as setState,D as watchNumber,J as buildBadgeTextString,N as deprecatedHint,C as showExpertSlot}from"./index2.js";import{k as KolInputTag}from"./component-names.js";import{n as nonce}from"./dev.utils.js";import{p as propagateSubmitEventToForm}from"./controller.js";import{g as getRenderStates}from"./controller2.js";import{I as InternalUnderlinedBadgeText}from"./InternalUnderlinedBadgeText.js";import{I as InputIconController}from"./controller-icon.js";import{v as validateSuggestions}from"./suggestions.js";const validateReadOnly=(t,e)=>{watchBoolean(t,"_readOnly",e)},inputDateTypeOptions=["date","datetime-local","month","time","week"];class InputDateController extends InputIconController{constructor(t,e,n){super(t,e,n),this.validateIso8601=(t,e,n)=>watchValidator(this.component,t,t=>null==t||""===t||this.validateDateString(t),new Set(["Date","string{ISO-8601}"]),InputDateController.tryParseToString(e,this.component._type,this.component._step),{hooks:{afterPatch:t=>{"string"==typeof t&&n&&n(t)}}}),this.component=t}validateAutoComplete(t){watchValidator(this.component,"_autoComplete",t=>"string"==typeof t&&("on"===t||"off"===t),new Set(["on | off"]),t)}validateSuggestions(t){validateSuggestions(this.component,t)}static tryParseToString(t,e,n){if("string"==typeof t||null===t)return t;if("object"==typeof t&&t instanceof Date){const i=t.getFullYear(),a=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),l=String(t.getMinutes()).padStart(2,"0"),r=String(t.getSeconds()).padStart(2,"0"),d=[i,a,o].join("-"),h=[s,l,r].join(":");switch(e){case"date":return d;case"datetime-local":return`${d}T${h}`;case"month":return`${i}-${a}`;case"time":return void 0===n||"60"===String(n)?`${s}:${l}`:h;case"week":return`${i}-W${this.getWeekNumberOfDate(t)}`}}}static getWeekNumberOfDate(t){const e=new Date(t),n=(e.getDay()+6)%7;e.setDate(e.getDate()-n+3);const i=e.valueOf();e.setMonth(0,1),4!==e.getDay()&&e.setMonth(0,1+(4-e.getDay()+7)%7);return(1+Math.ceil((i-e.valueOf())/6048e5)).toString().padStart(2,"0")}validateDateString(t){switch(this.component._type){case"date":return InputDateController.isoDateRegex.test(t);case"datetime-local":return InputDateController.isoLocalDateTimeRegex.test(t);case"month":return InputDateController.isoMonthRegex.test(t);case"time":return InputDateController.isoTimeRegex.test(t);case"week":return InputDateController.isoWeekRegex.test(t);default:return!1}}onBlur(t){super.onBlur(t),!!t.target.value!=!!this.component._value&&(this.component._value=t.target.value)}validateMax(t){const e=null!=t||"date"!==this.component._type&&"month"!==this.component._type&&"datetime-local"!==this.component._type?t:InputDateController.DEFAULT_MAX_DATE;this.validateIso8601("_max",e)}validateMin(t){this.validateIso8601("_min",t)}validateOn(t){setState(this.component,"_on",Object.assign(Object.assign({},t),{onChange:(e,n)=>{!!n!=!!this.component._value&&(this.component._value=n),(null==t?void 0:t.onChange)&&t.onChange(e,n)}}))}validateReadOnly(t){validateReadOnly(this.component,t)}validateRequired(t){watchBoolean(this.component,"_required",t)}validateStep(t){watchNumber(this.component,"_step",t)}validateType(t){watchValidator(this.component,"_type",t=>"string"==typeof t&&inputDateTypeOptions.includes(t),new Set([`String {${inputDateTypeOptions.join(", ")}`]),t)}validateValue(t){this.validateValueEx(t)}validateValueEx(t,e){this.validateIso8601("_value",t,e),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateMax(this.component._max),this.validateMin(this.component._min),this.validateLabel(this.component._label),this.validateSuggestions(this.component._suggestions),this.validateOn(this.component._on),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateStep(this.component._step),this.validateType(this.component._type),this.validateValue(this.component._value)}}InputDateController.isoDateRegex=/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])/,InputDateController.isoLocalDateTimeRegex=/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])[T ][0-2]\d:[0-5]\d(:[0-5]\d(?:\.\d+)?)?/,InputDateController.isoMonthRegex=/^\d{4}-([0]\d|1[0-2])/,InputDateController.isoTimeRegex=/^[0-2]\d:[0-5]\d(:[0-5]\d(?:\.\d+)?)?/,InputDateController.isoWeekRegex=/^\d{4}-W(?:[0-4]\d|5[0-3])$/,InputDateController.DEFAULT_MAX_DATE=new Date(9999,11,31,23,59,59);const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, unset);\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip-wc .tooltip-floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip-wc .tooltip-floating.show {\n animation-name: showTooltip;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .required label > span::after,\n .required legend > span::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n input,\n textarea {\n cursor: text;\n }\n input[type=checkbox],\n input[type=color],\n input[type=file],\n input[type=radio],\n input[type=range],\n label,\n option,\n select {\n cursor: pointer;\n }\n /* input[type='checkbox'], */\n /* input[type='radio'], */\n /* input[type='range'], */\n input[type=color],\n input[type=date],\n input[type=datetime-local],\n input[type=email],\n input[type=file],\n input[type=month],\n input[type=number],\n input[type=password],\n input[type=search],\n input[type=tel],\n input[type=text],\n input[type=time],\n input[type=url],\n input[type=week],\n option,\n select,\n textarea {\n background-color: transparent;\n width: 100%;\n }\n /* needed hack for vertical alignment */\n input[type=file] {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 10) 0.5em;\n }\n /* needed hack for vertical alignment */\n select[multiple] option {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 2) 0.5em;\n }\n}\n@layer kol-component {\n .kol-alert-wc {\n display: grid;\n }\n .kol-alert-wc .heading {\n display: flex;\n place-items: center;\n }\n .kol-alert-wc .heading > div {\n flex-grow: 1;\n }\n .close {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n .kol-input {\n display: grid;\n }\n .kol-input .input-slot {\n flex-grow: 1;\n }\n input:focus,\n option:focus,\n select:focus,\n textarea:focus {\n outline: 0;\n }\n .input {\n background-color: white;\n display: flex;\n align-items: center;\n cursor: pointer;\n }\n button:not([role=link]) {\n min-height: auto;\n }\n .input > .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input.required .input-tooltip .span-label::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n /**\n * Workaround for detecting focus state of the native date input's calendar icon.\n * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n * This should be replaced once native focus detection for the icon is available.\n */\n :host input[type=date],\n :host input[type=datetime-local],\n :host input[type=month],\n :host input[type=time],\n :host input[type=week] {\n content: \"native-icon-focused\";\n }\n :host input[type=date]:focus-visible,\n :host input[type=datetime-local]:focus-visible,\n :host input[type=month]:focus-visible,\n :host input[type=time]:focus-visible,\n :host input[type=week]:focus-visible {\n content: \"native-icon-not-focused\";\n }\n}",KolInputDateDefaultStyle0=defaultStyleCss,KolInputDate$1=proxyCustomElement(class extends HTMLElement{async getValue(){var t;return this.inputRef&&this.remapValue(null===(t=this.inputRef)||void 0===t?void 0:t.value)}async focus(){await this.kolFocus()}async kolFocus(){var t;null===(t=this.inputRef)||void 0===t||t.focus()}async reset(){this.state=Object.assign(Object.assign({},this.state),{_value:null}),this.controller.setFormAssociatedValue(""),this.inputRef&&(this.inputRef.value="")}setInitialValueType(t){t instanceof Date?this._initialValueType="Date":this._initialValueType="string"==typeof t?"String":null}remapValue(t){return"Date"===this._initialValueType?new Date(t):t}render(){const{ariaDescribedBy:t}=getRenderStates(this.state),e=Array.isArray(this.state._suggestions)&&this.state._suggestions.length>0,n=showExpertSlot(this.state._label);return h(Host,{key:"93a52554eed96378874b23f733dbfa90b6b2690e",class:{"kol-input-date":!0,"has-value":this.state._hasValue}},h(KolInputTag,{key:"8f7095710635d668bb98fb64858848d368141e3e",class:{[this.state._type]:!0,"hide-label":!!this.state._hideLabel},_accessKey:this.state._accessKey,_alert:this.showAsAlert(),_disabled:this.state._disabled,_msg:this.state._msg,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icons:this.state._icons,_id:this.state._id,_label:this.state._label,_suggestions:this.state._suggestions,_readOnly:this.state._readOnly,_required:this.state._required,_shortKey:this.state._shortKey,_smartButton:this.state._smartButton,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched},h("span",{key:"81a03a1c6fcfc2d8d10c4e064b08159f3845661d",slot:"label"},n?h("slot",{name:"expert"}):"string"==typeof this.state._accessKey||"string"==typeof this.state._shortKey?h(Fragment,null,h(InternalUnderlinedBadgeText,{badgeText:buildBadgeTextString(this.state._accessKey,this.state._shortKey),label:this.state._label})," ",h("kbd",{class:"badge-text-hint","aria-hidden":"true"},buildBadgeTextString(this.state._accessKey||this.state._shortKey))):h("span",null,this.state._label)),h("div",{key:"4fe71eae4be0f17cad1fe1b7bf0bb403423644dc",slot:"input"},h("input",Object.assign({key:"c3db6eda3830887bf9b9a632304899c8efd19ebb",ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-keyshortcuts":this.state._shortKey,"aria-describedby":t.length>0?t.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,autoCapitalize:"off",autoComplete:this.state._autoComplete,autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,list:e?`${this.state._id}-list`:void 0,max:this.state._max,min:this.state._min,name:this.state._name,readOnly:this.state._readOnly,required:this.state._required,step:this.state._step,type:this.state._type,value:this.state._value||void 0},this.controller.onFacade,{onKeyDown:this.onKeyDown,onBlur:t=>{this.controller.onFacade.onBlur(t),this.inputHasFocus=!1},onFocus:t=>{this.controller.onFacade.onFocus(t),this.inputHasFocus=!0},onChange:this.onChange,onInput:this.onInput})))))}constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=t=>{this.inputRef=t},this.onChange=t=>{const e=t.target.value,n=this.remapValue(e);this.controller.onFacade.onChange(t,n)},this.onInput=t=>{const e=t.target.value,n=this.remapValue(e);this.controller.onFacade.onInput(t,!0,n)},this.isNativeCalendarIconFocused=()=>{if(!this.inputRef||"undefined"==typeof window||"function"!=typeof window.getComputedStyle)return!1;return window.getComputedStyle(this.inputRef).content.includes("native-icon-focused")},this.onKeyDown=t=>{"Enter"!==t.code&&"NumpadEnter"!==t.code||this.isNativeCalendarIconFocused()||propagateSubmitEventToForm({form:this.host,ref:this.inputRef})},this._initialValueType=null,this._accessKey=void 0,this._alert=void 0,this._autoComplete=void 0,this._disabled=!1,this._error=void 0,this._hideError=!1,this._hideLabel=!1,this._hint="",this._icons=void 0,this._id=void 0,this._label=void 0,this._max=void 0,this._min=void 0,this._msg=void 0,this._name=void 0,this._on=void 0,this._readOnly=!1,this._required=!1,this._shortKey=void 0,this._smartButton=void 0,this._suggestions=void 0,this._syncValueBySelector=void 0,this._step=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._type="date",this._value=void 0,this.state={_autoComplete:"off",_hasValue:!1,_hideError:!1,_id:`id-${nonce()}`,_label:"",_suggestions:[],_type:"datetime-local"},this.inputHasFocus=!1,this.controller=new InputDateController(this,"date",this.host)}showAsAlert(){return void 0===this.state._alert?Boolean(this.state._touched)&&!this.inputHasFocus:this.state._alert}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateAutoComplete(t){this.controller.validateAutoComplete(t)}validateDisabled(t){this.controller.validateDisabled(t)}validateError(t){this.controller.validateError(t)}validateHideError(t){this.controller.validateHideError(t)}validateHideLabel(t){this.controller.validateHideLabel(t)}validateHint(t){this.controller.validateHint(t)}validateIcons(t){this.controller.validateIcons(t)}validateId(t){this.controller.validateId(t)}validateLabel(t){this.controller.validateLabel(t)}validateMax(t){this.controller.validateMax(t)}validateMin(t){this.controller.validateMin(t)}validateMsg(t){this.controller.validateMsg(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validateReadOnly(t){this.controller.validateReadOnly(t)}validateRequired(t){this.controller.validateRequired(t)}validateShortKey(t){this.controller.validateShortKey(t)}validateSmartButton(t){this.controller.validateSmartButton(t)}validateSuggestions(t){this.controller.validateSuggestions(t)}validateStep(t){this.controller.validateStep(t)}validateSyncValueBySelector(t){this.controller.validateSyncValueBySelector(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateType(t){this.controller.validateType(t)}validateValue(t){t instanceof Date&&deprecatedHint("Date type will be removed in v3. Use `Iso8601` instead."),this.controller.validateValueEx(t),void 0!==t&&this.setInitialValueType(t)}componentWillLoad(){void 0!==this._value&&this.setInitialValueType(this._value),this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener(t=>this.state._hasValue=!!t)}static get delegatesFocus(){return!0}get host(){return this}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_max:["validateMax"],_min:["validateMin"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_shortKey:["validateShortKey"],_smartButton:["validateSmartButton"],_suggestions:["validateSuggestions"],_step:["validateStep"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"]}}static get style(){return{default:KolInputDateDefaultStyle0}}},[49,"kol-input-date",{_accessKey:[1,"_access-key"],_alert:[1540],_autoComplete:[1,"_auto-complete"],_disabled:[4],_error:[1],_hideError:[1540,"_hide-error"],_hideLabel:[4,"_hide-label"],_hint:[1],_icons:[1],_id:[1],_label:[1],_max:[1],_min:[1],_msg:[1],_name:[1],_on:[16],_readOnly:[4,"_read-only"],_required:[4],_shortKey:[1,"_short-key"],_smartButton:[1,"_smart-button"],_suggestions:[1],_syncValueBySelector:[1,"_sync-value-by-selector"],_step:[2],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_touched:[1540],_type:[1],_value:[1025],_initialValueType:[32],state:[32],inputHasFocus:[32],getValue:[64],focus:[64],kolFocus:[64],reset:[64]},void 0,{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_max:["validateMax"],_min:["validateMin"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_shortKey:["validateShortKey"],_smartButton:["validateSmartButton"],_suggestions:["validateSuggestions"],_step:["validateStep"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-input-date"].forEach(t=>{if("kol-input-date"===t)customElements.get(t)||customElements.define(t,KolInputDate$1)})}const KolInputDate=KolInputDate$1,defineCustomElement=defineCustomElement$1;export{KolInputDate,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host,Fragment}from"@stencil/core/internal/client";import{j as watchBoolean,w as watchValidator,l as setState,D as watchNumber,J as buildBadgeTextString,N as deprecatedHint,C as showExpertSlot}from"./index2.js";import{k as KolInputTag}from"./component-names.js";import{n as nonce}from"./dev.utils.js";import{p as propagateSubmitEventToForm}from"./controller.js";import{g as getRenderStates}from"./controller2.js";import{I as InternalUnderlinedBadgeText}from"./InternalUnderlinedBadgeText.js";import{I as InputIconController}from"./controller-icon.js";import{v as validateSuggestions}from"./suggestions.js";const validateReadOnly=(t,e)=>{watchBoolean(t,"_readOnly",e)},inputDateTypeOptions=["date","datetime-local","month","time","week"];class InputDateController extends InputIconController{constructor(t,e,n){super(t,e,n),this.validateIso8601=(t,e,n)=>watchValidator(this.component,t,t=>null==t||""===t||this.validateDateString(t),new Set(["Date","string{ISO-8601}"]),InputDateController.tryParseToString(e,this.component._type,this.component._step),{hooks:{afterPatch:t=>{"string"==typeof t&&n&&n(t)}}}),this.component=t}validateAutoComplete(t){watchValidator(this.component,"_autoComplete",t=>"string"==typeof t&&("on"===t||"off"===t),new Set(["on | off"]),t)}validateSuggestions(t){validateSuggestions(this.component,t)}static tryParseToString(t,e,n){if("string"==typeof t||null===t)return t;if("object"==typeof t&&t instanceof Date){const i=t.getFullYear(),a=String(t.getMonth()+1).padStart(2,"0"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),l=String(t.getMinutes()).padStart(2,"0"),r=String(t.getSeconds()).padStart(2,"0"),d=[i,a,o].join("-"),h=[s,l,r].join(":");switch(e){case"date":return d;case"datetime-local":return`${d}T${h}`;case"month":return`${i}-${a}`;case"time":return void 0===n||"60"===String(n)?`${s}:${l}`:h;case"week":return`${i}-W${this.getWeekNumberOfDate(t)}`}}}static getWeekNumberOfDate(t){const e=new Date(t),n=(e.getDay()+6)%7;e.setDate(e.getDate()-n+3);const i=e.valueOf();e.setMonth(0,1),4!==e.getDay()&&e.setMonth(0,1+(4-e.getDay()+7)%7);return(1+Math.ceil((i-e.valueOf())/6048e5)).toString().padStart(2,"0")}validateDateString(t){switch(this.component._type){case"date":return InputDateController.isoDateRegex.test(t);case"datetime-local":return InputDateController.isoLocalDateTimeRegex.test(t);case"month":return InputDateController.isoMonthRegex.test(t);case"time":return InputDateController.isoTimeRegex.test(t);case"week":return InputDateController.isoWeekRegex.test(t);default:return!1}}onBlur(t){super.onBlur(t),!!t.target.value!=!!this.component._value&&(this.component._value=t.target.value)}validateMax(t){const e=null!=t||"date"!==this.component._type&&"month"!==this.component._type&&"datetime-local"!==this.component._type?t:InputDateController.DEFAULT_MAX_DATE;this.validateIso8601("_max",e)}validateMin(t){this.validateIso8601("_min",t)}validateOn(t){setState(this.component,"_on",Object.assign(Object.assign({},t),{onChange:(e,n)=>{!!n!=!!this.component._value&&(this.component._value=n),(null==t?void 0:t.onChange)&&t.onChange(e,n)}}))}validateReadOnly(t){validateReadOnly(this.component,t)}validateRequired(t){watchBoolean(this.component,"_required",t)}validateStep(t){watchNumber(this.component,"_step",t)}validateType(t){watchValidator(this.component,"_type",t=>"string"==typeof t&&inputDateTypeOptions.includes(t),new Set([`String {${inputDateTypeOptions.join(", ")}`]),t)}validateValue(t){this.validateValueEx(t)}validateValueEx(t,e){this.validateIso8601("_value",t,e),this.setFormAssociatedValue(this.component.state._value)}componentWillLoad(){super.componentWillLoad(),this.validateAutoComplete(this.component._autoComplete),this.validateMax(this.component._max),this.validateMin(this.component._min),this.validateLabel(this.component._label),this.validateSuggestions(this.component._suggestions),this.validateOn(this.component._on),this.validateReadOnly(this.component._readOnly),this.validateRequired(this.component._required),this.validateStep(this.component._step),this.validateType(this.component._type),this.validateValue(this.component._value)}}InputDateController.isoDateRegex=/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])/,InputDateController.isoLocalDateTimeRegex=/^\d{4}-([0]\d|1[0-2])-([0-2]\d|3[01])[T ][0-2]\d:[0-5]\d(:[0-5]\d(?:\.\d+)?)?/,InputDateController.isoMonthRegex=/^\d{4}-([0]\d|1[0-2])/,InputDateController.isoTimeRegex=/^[0-2]\d:[0-5]\d(:[0-5]\d(?:\.\d+)?)?/,InputDateController.isoWeekRegex=/^\d{4}-W(?:[0-4]\d|5[0-3])$/,InputDateController.DEFAULT_MAX_DATE=new Date(9999,11,31,23,59,59);const defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, unset);\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip-wc .tooltip-floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip-wc .tooltip-floating.show {\n animation-name: showTooltip;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n .required label > span::after,\n .required legend > span::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n input,\n textarea {\n cursor: text;\n }\n input[type=checkbox],\n input[type=color],\n input[type=file],\n input[type=radio],\n input[type=range],\n label,\n option,\n select {\n cursor: pointer;\n }\n /* input[type='checkbox'], */\n /* input[type='radio'], */\n /* input[type='range'], */\n input[type=color],\n input[type=date],\n input[type=datetime-local],\n input[type=email],\n input[type=file],\n input[type=month],\n input[type=number],\n input[type=password],\n input[type=search],\n input[type=tel],\n input[type=text],\n input[type=time],\n input[type=url],\n input[type=week],\n option,\n select,\n textarea {\n background-color: transparent;\n width: 100%;\n }\n /* needed hack for vertical alignment */\n input[type=file] {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 10) 0.5em;\n }\n /* needed hack for vertical alignment */\n select[multiple] option {\n padding: calc((var(--a11y-min-size) - (16rem / var(--kolibri-root-font-size, 16))) / 2) 0.5em;\n }\n}\n@layer kol-component {\n .kol-alert-wc {\n display: grid;\n }\n .kol-alert-wc .heading {\n display: flex;\n place-items: center;\n }\n .kol-alert-wc .heading > div {\n flex-grow: 1;\n }\n .close {\n /* Visible with forced colors */\n outline: transparent solid calc(1rem / var(--kolibri-root-font-size, 16));\n }\n}\n@layer kol-component {\n .kol-input {\n display: grid;\n }\n .kol-input .input-slot {\n flex-grow: 1;\n }\n input:focus,\n option:focus,\n select:focus,\n textarea:focus {\n outline: 0;\n }\n .input {\n background-color: white;\n display: flex;\n align-items: center;\n cursor: pointer;\n }\n button:not([role=link]) {\n min-height: auto;\n }\n .input > .kol-icon {\n display: grid;\n place-items: center;\n }\n .kol-input.required .input-tooltip .span-label::after {\n content: \"*\";\n }\n}\n@layer kol-component {\n /**\n * Workaround for detecting focus state of the native date input's calendar icon.\n * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n * This should be replaced once native focus detection for the icon is available.\n */\n :host input[type=date],\n :host input[type=datetime-local],\n :host input[type=month],\n :host input[type=time],\n :host input[type=week] {\n content: \"native-icon-focused\";\n }\n :host input[type=date]:focus-visible,\n :host input[type=datetime-local]:focus-visible,\n :host input[type=month]:focus-visible,\n :host input[type=time]:focus-visible,\n :host input[type=week]:focus-visible {\n content: \"native-icon-not-focused\";\n }\n .input {\n cursor: text;\n }\n .input input::-webkit-calendar-picker-indicator {\n cursor: pointer;\n }\n}",KolInputDateDefaultStyle0=defaultStyleCss,KolInputDate$1=proxyCustomElement(class extends HTMLElement{async getValue(){var t;return this.inputRef&&this.remapValue(null===(t=this.inputRef)||void 0===t?void 0:t.value)}async focus(){await this.kolFocus()}async kolFocus(){var t;null===(t=this.inputRef)||void 0===t||t.focus()}async reset(){this.state=Object.assign(Object.assign({},this.state),{_value:null}),this.controller.setFormAssociatedValue(""),this.inputRef&&(this.inputRef.value="")}setInitialValueType(t){t instanceof Date?this._initialValueType="Date":this._initialValueType="string"==typeof t?"String":null}remapValue(t){return"Date"===this._initialValueType?new Date(t):t}render(){const{ariaDescribedBy:t}=getRenderStates(this.state),e=Array.isArray(this.state._suggestions)&&this.state._suggestions.length>0,n=showExpertSlot(this.state._label);return h(Host,{key:"93a52554eed96378874b23f733dbfa90b6b2690e",class:{"kol-input-date":!0,"has-value":this.state._hasValue}},h(KolInputTag,{key:"8f7095710635d668bb98fb64858848d368141e3e",class:{[this.state._type]:!0,"hide-label":!!this.state._hideLabel},_accessKey:this.state._accessKey,_alert:this.showAsAlert(),_disabled:this.state._disabled,_msg:this.state._msg,_hideError:this.state._hideError,_hideLabel:this.state._hideLabel,_hint:this.state._hint,_icons:this.state._icons,_id:this.state._id,_label:this.state._label,_suggestions:this.state._suggestions,_readOnly:this.state._readOnly,_required:this.state._required,_shortKey:this.state._shortKey,_smartButton:this.state._smartButton,_tooltipAlign:this._tooltipAlign,_touched:this.state._touched},h("span",{key:"81a03a1c6fcfc2d8d10c4e064b08159f3845661d",slot:"label"},n?h("slot",{name:"expert"}):"string"==typeof this.state._accessKey||"string"==typeof this.state._shortKey?h(Fragment,null,h(InternalUnderlinedBadgeText,{badgeText:buildBadgeTextString(this.state._accessKey,this.state._shortKey),label:this.state._label})," ",h("kbd",{class:"badge-text-hint","aria-hidden":"true"},buildBadgeTextString(this.state._accessKey||this.state._shortKey))):h("span",null,this.state._label)),h("div",{key:"4fe71eae4be0f17cad1fe1b7bf0bb403423644dc",slot:"input"},h("input",Object.assign({key:"c3db6eda3830887bf9b9a632304899c8efd19ebb",ref:this.catchRef,title:"",accessKey:this.state._accessKey,"aria-keyshortcuts":this.state._shortKey,"aria-describedby":t.length>0?t.join(" "):void 0,"aria-label":this.state._hideLabel&&"string"==typeof this.state._label?this.state._label:void 0,autoCapitalize:"off",autoComplete:this.state._autoComplete,autoCorrect:"off",disabled:this.state._disabled,id:this.state._id,list:e?`${this.state._id}-list`:void 0,max:this.state._max,min:this.state._min,name:this.state._name,readOnly:this.state._readOnly,required:this.state._required,step:this.state._step,type:this.state._type,value:this.state._value||void 0},this.controller.onFacade,{onKeyDown:this.onKeyDown,onBlur:t=>{this.controller.onFacade.onBlur(t),this.inputHasFocus=!1},onFocus:t=>{this.controller.onFacade.onFocus(t),this.inputHasFocus=!0},onChange:this.onChange,onInput:this.onInput})))))}constructor(){super(),this.__registerHost(),this.__attachShadow(),this.catchRef=t=>{this.inputRef=t},this.onChange=t=>{const e=t.target.value,n=this.remapValue(e);this.controller.onFacade.onChange(t,n)},this.onInput=t=>{const e=t.target.value,n=this.remapValue(e);this.controller.onFacade.onInput(t,!0,n)},this.isNativeCalendarIconFocused=()=>{if(!this.inputRef||"undefined"==typeof window||"function"!=typeof window.getComputedStyle)return!1;return window.getComputedStyle(this.inputRef).content.includes("native-icon-focused")},this.onKeyDown=t=>{"Enter"!==t.code&&"NumpadEnter"!==t.code||this.isNativeCalendarIconFocused()||propagateSubmitEventToForm({form:this.host,ref:this.inputRef})},this._initialValueType=null,this._accessKey=void 0,this._alert=void 0,this._autoComplete=void 0,this._disabled=!1,this._error=void 0,this._hideError=!1,this._hideLabel=!1,this._hint="",this._icons=void 0,this._id=void 0,this._label=void 0,this._max=void 0,this._min=void 0,this._msg=void 0,this._name=void 0,this._on=void 0,this._readOnly=!1,this._required=!1,this._shortKey=void 0,this._smartButton=void 0,this._suggestions=void 0,this._syncValueBySelector=void 0,this._step=void 0,this._tabIndex=void 0,this._tooltipAlign="top",this._touched=!1,this._type="date",this._value=void 0,this.state={_autoComplete:"off",_hasValue:!1,_hideError:!1,_id:`id-${nonce()}`,_label:"",_suggestions:[],_type:"datetime-local"},this.inputHasFocus=!1,this.controller=new InputDateController(this,"date",this.host)}showAsAlert(){return void 0===this.state._alert?Boolean(this.state._touched)&&!this.inputHasFocus:this.state._alert}validateAccessKey(t){this.controller.validateAccessKey(t)}validateAlert(t){this.controller.validateAlert(t)}validateAutoComplete(t){this.controller.validateAutoComplete(t)}validateDisabled(t){this.controller.validateDisabled(t)}validateError(t){this.controller.validateError(t)}validateHideError(t){this.controller.validateHideError(t)}validateHideLabel(t){this.controller.validateHideLabel(t)}validateHint(t){this.controller.validateHint(t)}validateIcons(t){this.controller.validateIcons(t)}validateId(t){this.controller.validateId(t)}validateLabel(t){this.controller.validateLabel(t)}validateMax(t){this.controller.validateMax(t)}validateMin(t){this.controller.validateMin(t)}validateMsg(t){this.controller.validateMsg(t)}validateName(t){this.controller.validateName(t)}validateOn(t){this.controller.validateOn(t)}validateReadOnly(t){this.controller.validateReadOnly(t)}validateRequired(t){this.controller.validateRequired(t)}validateShortKey(t){this.controller.validateShortKey(t)}validateSmartButton(t){this.controller.validateSmartButton(t)}validateSuggestions(t){this.controller.validateSuggestions(t)}validateStep(t){this.controller.validateStep(t)}validateSyncValueBySelector(t){this.controller.validateSyncValueBySelector(t)}validateTabIndex(t){this.controller.validateTabIndex(t)}validateTouched(t){this.controller.validateTouched(t)}validateType(t){this.controller.validateType(t)}validateValue(t){t instanceof Date&&deprecatedHint("Date type will be removed in v3. Use `Iso8601` instead."),this.controller.validateValueEx(t),void 0!==t&&this.setInitialValueType(t)}componentWillLoad(){void 0!==this._value&&this.setInitialValueType(this._value),this._touched=!0===this._touched,this.controller.componentWillLoad(),this.state._hasValue=!!this.state._value,this.controller.addValueChangeListener(t=>this.state._hasValue=!!t)}static get delegatesFocus(){return!0}get host(){return this}static get watchers(){return{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_max:["validateMax"],_min:["validateMin"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_shortKey:["validateShortKey"],_smartButton:["validateSmartButton"],_suggestions:["validateSuggestions"],_step:["validateStep"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"]}}static get style(){return{default:KolInputDateDefaultStyle0}}},[49,"kol-input-date",{_accessKey:[1,"_access-key"],_alert:[1540],_autoComplete:[1,"_auto-complete"],_disabled:[4],_error:[1],_hideError:[1540,"_hide-error"],_hideLabel:[4,"_hide-label"],_hint:[1],_icons:[1],_id:[1],_label:[1],_max:[1],_min:[1],_msg:[1],_name:[1],_on:[16],_readOnly:[4,"_read-only"],_required:[4],_shortKey:[1,"_short-key"],_smartButton:[1,"_smart-button"],_suggestions:[1],_syncValueBySelector:[1,"_sync-value-by-selector"],_step:[2],_tabIndex:[2,"_tab-index"],_tooltipAlign:[1,"_tooltip-align"],_touched:[1540],_type:[1],_value:[1025],_initialValueType:[32],state:[32],inputHasFocus:[32],getValue:[64],focus:[64],kolFocus:[64],reset:[64]},void 0,{_accessKey:["validateAccessKey"],_alert:["validateAlert"],_autoComplete:["validateAutoComplete"],_disabled:["validateDisabled"],_error:["validateError"],_hideError:["validateHideError"],_hideLabel:["validateHideLabel"],_hint:["validateHint"],_icons:["validateIcons"],_id:["validateId"],_label:["validateLabel"],_max:["validateMax"],_min:["validateMin"],_msg:["validateMsg"],_name:["validateName"],_on:["validateOn"],_readOnly:["validateReadOnly"],_required:["validateRequired"],_shortKey:["validateShortKey"],_smartButton:["validateSmartButton"],_suggestions:["validateSuggestions"],_step:["validateStep"],_syncValueBySelector:["validateSyncValueBySelector"],_tabIndex:["validateTabIndex"],_touched:["validateTouched"],_type:["validateType"],_value:["validateValue"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-input-date"].forEach(t=>{if("kol-input-date"===t)customElements.get(t)||customElements.define(t,KolInputDate$1)})}const KolInputDate=KolInputDate$1,defineCustomElement=defineCustomElement$1;export{KolInputDate,defineCustomElement};
@@ -1 +1 @@
1
- {"file":"kol-input-date.js","mappings":"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","names":["KolInputDate"],"sources":["src/schema/props/read-only.ts","src/schema/types/input/control/number.ts","src/components/input-date/controller.ts","src/components/input-date/style.scss?tag=kol-input-date&mode=default&encapsulation=shadow","src/components/input-date/shadow.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type ReadOnlyPropType = boolean;\n\n/**\n * Makes the input element read only.\n */\nexport type PropReadOnly = {\n\treadOnly: ReadOnlyPropType;\n};\n\n/* validator */\nexport const validateReadOnly = (component: Generic.Element.Component, value?: ReadOnlyPropType): void => {\n\twatchBoolean(component, '_readOnly', value);\n};\n","import type { ButtonProps } from '../../../components';\nimport type { PropHorizontalIcons } from '../../../props';\nimport type { Stringified } from '../../common';\nimport type { InputTypeOnDefault, InputTypeOnOff } from '../types';\n\nexport const inputDateTypeOptions = ['date', 'datetime-local', 'month', 'time', 'week'] as const;\nexport type InputDateType = (typeof inputDateTypeOptions)[number];\n\nexport type OptionalInputProps<T> = {\n\taccessKey: string;\n\talert: boolean;\n\tautoComplete: InputTypeOnOff;\n\tdisabled: boolean;\n\terror: string;\n\thideLabel: boolean;\n\thint: string;\n\tmax: T;\n\tmin: T;\n\tname: string;\n\ton: InputTypeOnDefault;\n\treadOnly: boolean;\n\trequired: boolean;\n\tsmartButton: Stringified<ButtonProps>;\n\tstep: number;\n\ttabIndex: number;\n\ttouched: boolean;\n\tvalue: T | null;\n} & PropHorizontalIcons;\n","import type {\n\tInputDateProps,\n\tInputDateType,\n\tInputDateWatches,\n\tInputTypeOnDefault,\n\tInputTypeOnOff,\n\tIso8601,\n\tReadOnlyPropType,\n\tSuggestionsPropType,\n} from '../../schema';\nimport { inputDateTypeOptions, setState, validateReadOnly, validateSuggestions, watchBoolean, watchNumber, watchValidator } from '../../schema';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\n\nexport class InputDateController extends InputIconController implements InputDateWatches {\n\t// test: https://regex101.com/r/NTVh4L/1\n\tprivate static readonly isoDateRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])/;\n\tprivate static readonly isoLocalDateTimeRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])[T ][0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoMonthRegex = /^\\d{4}-([0]\\d|1[0-2])/;\n\tprivate static readonly isoTimeRegex = /^[0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoWeekRegex = /^\\d{4}-W(?:[0-4]\\d|5[0-3])$/;\n\n\tprivate static readonly DEFAULT_MAX_DATE = new Date(9999, 11, 31, 23, 59, 59);\n\n\tprotected readonly component: Generic.Element.Component & InputDateProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputDateProps, 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 validateSuggestions(value?: SuggestionsPropType): void {\n\t\tvalidateSuggestions(this.component, value);\n\t}\n\n\tpublic static tryParseToString(value: Iso8601 | Date | null | undefined, type?: InputDateType, step?: string | number): string | null | undefined {\n\t\tif (typeof value === 'string' || value === null) {\n\t\t\treturn value;\n\t\t}\n\n\t\tif (typeof value === 'object' && value instanceof Date) {\n\t\t\tconst formattedYear = value.getFullYear();\n\t\t\tconst formattedMonth = String(value.getMonth() + 1).padStart(2, '0');\n\t\t\tconst formattedDay = String(value.getDate()).padStart(2, '0');\n\t\t\tconst formattedHours = String(value.getHours()).padStart(2, '0');\n\t\t\tconst formattedMinutes = String(value.getMinutes()).padStart(2, '0');\n\t\t\tconst formattedSeconds = String(value.getSeconds()).padStart(2, '0');\n\n\t\t\tconst formattedDate = [formattedYear, formattedMonth, formattedDay].join('-');\n\t\t\tconst formattedTimeWithSeconds = [formattedHours, formattedMinutes, formattedSeconds].join(':');\n\n\t\t\tswitch (type) {\n\t\t\t\tcase 'date':\n\t\t\t\t\treturn formattedDate;\n\t\t\t\tcase 'datetime-local':\n\t\t\t\t\treturn `${formattedDate}T${formattedTimeWithSeconds}`;\n\t\t\t\tcase 'month':\n\t\t\t\t\treturn `${formattedYear}-${formattedMonth}`;\n\t\t\t\tcase 'time':\n\t\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/time#using_the_step_attribute\n\t\t\t\t\tif (step === undefined || String(step) === '60') {\n\t\t\t\t\t\treturn `${formattedHours}:${formattedMinutes}`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn formattedTimeWithSeconds;\n\t\t\t\t\t}\n\t\t\t\tcase 'week':\n\t\t\t\t\treturn `${formattedYear}-W${this.getWeekNumberOfDate(value)}`;\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic getWeekNumberOfDate(date: Date): string {\n\t\tconst copiedDate = new Date(date);\n\n\t\t// ISO week date weeks start on Monday, so correct the day number\n\t\tconst nDay = (copiedDate.getDay() + 6) % 7;\n\n\t\t// ISO 8601 states that week 1 is the week with the first Thursday of that year\n\t\t// Set the target date to the Thursday in the target week\n\t\tcopiedDate.setDate(copiedDate.getDate() - nDay + 3);\n\n\t\t// Store the millisecond value of the target date\n\t\tconst n1stThursday = copiedDate.valueOf();\n\n\t\t// Set the target to the first Thursday of the year\n\t\t// First, set the target to January 1st\n\t\tcopiedDate.setMonth(0, 1);\n\n\t\t// Not a Thursday? Correct the date to the next Thursday\n\t\tif (copiedDate.getDay() !== 4) {\n\t\t\tcopiedDate.setMonth(0, 1 + ((4 - copiedDate.getDay() + 7) % 7));\n\t\t}\n\n\t\t// The week number is the number of weeks between the first Thursday of the year\n\t\t// and the Thursday in the target week (604800000 = 7 * 24 * 3600 * 1000)\n\t\tconst dayOfYear = 1 + Math.ceil((n1stThursday - copiedDate.valueOf()) / 604800000);\n\n\t\treturn dayOfYear.toString().padStart(2, '0');\n\t}\n\n\tprivate validateDateString(value: string): boolean {\n\t\tswitch (this.component._type) {\n\t\t\tcase 'date':\n\t\t\t\treturn InputDateController.isoDateRegex.test(value);\n\t\t\tcase 'datetime-local':\n\t\t\t\treturn InputDateController.isoLocalDateTimeRegex.test(value);\n\t\t\tcase 'month':\n\t\t\t\treturn InputDateController.isoMonthRegex.test(value);\n\t\t\tcase 'time':\n\t\t\t\treturn InputDateController.isoTimeRegex.test(value);\n\t\t\tcase 'week':\n\t\t\t\treturn InputDateController.isoWeekRegex.test(value);\n\t\t\tdefault:\n\t\t\t\treturn false;\n\t\t}\n\t}\n\n\tprivate readonly validateIso8601 = (propName: string, value?: Date | Iso8601 | null, afterPatch?: (v: string) => void) => {\n\t\treturn watchValidator(\n\t\t\tthis.component,\n\t\t\tpropName,\n\t\t\t(value): boolean => value === undefined || value === null || value === '' || this.validateDateString(value),\n\t\t\tnew Set(['Date', 'string{ISO-8601}']),\n\t\t\tInputDateController.tryParseToString(value, this.component._type, this.component._step),\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\t\tif (typeof value === 'string' && afterPatch) {\n\t\t\t\t\t\t\tafterPatch(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t};\n\n\tprotected onBlur(event: Event): void {\n\t\tsuper.onBlur(event);\n\n\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\tif (!!(event.target as HTMLInputElement).value !== !!this.component._value) {\n\t\t\tthis.component._value = (event.target as HTMLInputElement).value as Iso8601;\n\t\t}\n\t}\n\n\tpublic validateMax(value?: Iso8601 | Date): void {\n\t\tconst ensuredValue =\n\t\t\t(value === undefined || value === null) &&\n\t\t\t(this.component._type === 'date' || this.component._type === 'month' || this.component._type === 'datetime-local')\n\t\t\t\t? InputDateController.DEFAULT_MAX_DATE\n\t\t\t\t: value;\n\n\t\tthis.validateIso8601('_max', ensuredValue);\n\t}\n\n\tpublic validateMin(value?: Iso8601 | Date): void {\n\t\tthis.validateIso8601('_min', value);\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault) {\n\t\tsetState(this.component, '_on', {\n\t\t\t...value,\n\t\t\tonChange: (e: Event, v: unknown) => {\n\t\t\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\t\t\tif (!!v !== !!this.component._value) {\n\t\t\t\t\tthis.component._value = v as Iso8601;\n\t\t\t\t}\n\n\t\t\t\tif (value?.onChange) {\n\t\t\t\t\tvalue.onChange(e, v);\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateReadOnly(value?: ReadOnlyPropType): void {\n\t\tvalidateReadOnly(this.component, value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateStep(value?: number): void {\n\t\twatchNumber(this.component, '_step', value);\n\t}\n\n\tpublic validateType(value?: InputDateType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && inputDateTypeOptions.includes(value),\n\t\t\tnew Set([`String {${inputDateTypeOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateValue(value?: Iso8601 | Date | null): void {\n\t\tthis.validateValueEx(value);\n\t}\n\n\t/**\n\t * Overload of validate value. Extends by an after patch callback function.\n\t */\n\tpublic validateValueEx(value?: Iso8601 | Date | null, afterPatch?: (v: string) => void): void {\n\t\tthis.validateIso8601('_value', value, afterPatch);\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.validateMax(this.component._max);\n\t\tthis.validateMin(this.component._min);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateSuggestions(this.component._suggestions);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateStep(this.component._step);\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@use '../style' as *;\n@use '../input-line' as *;\n\n@layer kol-component {\n\t/**\n\t * Workaround for detecting focus state of the native date input's calendar icon.\n\t * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n\t * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n\t * This should be replaced once native focus detection for the icon is available.\n\t */\n\t:host {\n\t\tinput[type='date'],\n\t\tinput[type='datetime-local'],\n\t\tinput[type='month'],\n\t\tinput[type='time'],\n\t\tinput[type='week'] {\n\t\t\tcontent: 'native-icon-focused';\n\t\t}\n\n\t\tinput[type='date']:focus-visible,\n\t\tinput[type='datetime-local']:focus-visible,\n\t\tinput[type='month']:focus-visible,\n\t\tinput[type='time']:focus-visible,\n\t\tinput[type='week']:focus-visible {\n\t\t\tcontent: 'native-icon-not-focused';\n\t\t}\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { Component, Element, Fragment, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport type {\n\tButtonProps,\n\tFocusableElement,\n\tHideErrorPropType,\n\tIconsHorizontalPropType,\n\tIdPropType,\n\tInputDateAPI,\n\tInputDateStates,\n\tInputDateType,\n\tInputTypeOnDefault,\n\tInputTypeOnOff,\n\tIso8601,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tNamePropType,\n\tReadOnlyPropType,\n\tShortKeyPropType,\n\tStringified,\n\tSuggestionsPropType,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\nimport { buildBadgeTextString, deprecatedHint, showExpertSlot } from '../../schema';\n\nimport { KolInputTag } from '../../core/component-names';\nimport { nonce } from '../../utils/dev.utils';\nimport { propagateSubmitEventToForm } from '../form/controller';\nimport { getRenderStates } from '../input/controller';\nimport { InternalUnderlinedBadgeText } from '../span/InternalUnderlinedBadgeText';\nimport { InputDateController } from './controller';\n\n/**\n * @slot - Die Beschriftung des Eingabefeldes.\n */\n@Component({\n\ttag: 'kol-input-date',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: {\n\t\tdelegatesFocus: true,\n\t},\n})\nexport class KolInputDate implements InputDateAPI, FocusableElement {\n\t@Element() private readonly host?: HTMLKolInputDateElement;\n\tprivate inputRef?: HTMLInputElement;\n\n\t@State() private _initialValueType: 'Date' | 'String' | null = null;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.inputRef = ref;\n\t};\n\n\t/**\n\t * Returns the selected date.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<string | Date | undefined> {\n\t\treturn this.inputRef && this.remapValue(this.inputRef?.value);\n\t}\n\n\t/**\n\t * @deprecated Use kolFocus instead.\n\t */\n\t@Method()\n\tpublic async focus() {\n\t\tawait this.kolFocus();\n\t}\n\n\t/**\n\t * Focuses the date input.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async kolFocus() {\n\t\tthis.inputRef?.focus();\n\t}\n\n\t/**\n\t * Clears the value and resets the input.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async reset() {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_value: null,\n\t\t};\n\t\tthis.controller.setFormAssociatedValue('');\n\n\t\t// Setting the state value might not trigger a state change and rerender if the previous value is already an empty string,\n\t\t// which can occur during an incomplete input. Directly setting the DOM property \"forces\" a reset of the native element.\n\t\tif (this.inputRef) {\n\t\t\tthis.inputRef.value = '';\n\t\t}\n\t}\n\n\tprivate setInitialValueType(value: Iso8601 | Date | null) {\n\t\tif (value instanceof Date) {\n\t\t\tthis._initialValueType = 'Date';\n\t\t} else if (typeof value === 'string') {\n\t\t\tthis._initialValueType = 'String';\n\t\t} else {\n\t\t\tthis._initialValueType = null;\n\t\t}\n\t}\n\tprivate remapValue(newValue: string): Date | string {\n\t\treturn this._initialValueType === 'Date' ? new Date(newValue) : newValue;\n\t}\n\n\tprivate readonly onChange = (event: Event) => {\n\t\tconst newValue = (event.target as HTMLInputElement).value;\n\t\tconst remappedValue = this.remapValue(newValue);\n\t\tthis.controller.onFacade.onChange(event, remappedValue);\n\t};\n\n\tprivate readonly onInput = (event: Event) => {\n\t\tconst newValue = (event.target as HTMLInputElement).value;\n\t\tconst remappedValue = this.remapValue(newValue);\n\t\tthis.controller.onFacade.onInput(event, true, remappedValue);\n\t};\n\n\tprivate readonly isNativeCalendarIconFocused = (): boolean => {\n\t\tif (!this.inputRef || typeof window === 'undefined' || typeof window.getComputedStyle !== 'function') {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst computedStyle = window.getComputedStyle(this.inputRef);\n\t\treturn computedStyle.content.includes('native-icon-focused');\n\t};\n\n\tprivate readonly onKeyDown = (event: KeyboardEvent) => {\n\t\tif ((event.code === 'Enter' || event.code === 'NumpadEnter') && !this.isNativeCalendarIconFocused()) {\n\t\t\tpropagateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.inputRef,\n\t\t\t});\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst hasSuggestions = Array.isArray(this.state._suggestions) && this.state._suggestions.length > 0;\n\t\tconst hasExpertSlot = showExpertSlot(this.state._label);\n\n\t\treturn (\n\t\t\t<Host class={{ 'kol-input-date': true, 'has-value': this.state._hasValue }}>\n\t\t\t\t<KolInputTag\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._type]: true,\n\t\t\t\t\t\t'hide-label': !!this.state._hideLabel,\n\t\t\t\t\t}}\n\t\t\t\t\t_accessKey={this.state._accessKey}\n\t\t\t\t\t_alert={this.showAsAlert()}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_msg={this.state._msg}\n\t\t\t\t\t_hideError={this.state._hideError}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_icons={this.state._icons}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t_suggestions={this.state._suggestions}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_shortKey={this.state._shortKey}\n\t\t\t\t\t_smartButton={this.state._smartButton}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t{hasExpertSlot ? (\n\t\t\t\t\t\t\t<slot name=\"expert\"></slot>\n\t\t\t\t\t\t) : typeof this.state._accessKey === 'string' || typeof this.state._shortKey === 'string' ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<InternalUnderlinedBadgeText badgeText={buildBadgeTextString(this.state._accessKey, this.state._shortKey)} label={this.state._label} />{' '}\n\t\t\t\t\t\t\t\t<kbd class=\"badge-text-hint\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t{buildBadgeTextString(this.state._accessKey || this.state._shortKey)}\n\t\t\t\t\t\t\t\t</kbd>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span>{this.state._label}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\t\taria-keyshortcuts={this.state._shortKey}\n\t\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-label={this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined}\n\t\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\t\tautoComplete={this.state._autoComplete}\n\t\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tlist={hasSuggestions ? `${this.state._id}-list` : undefined}\n\t\t\t\t\t\t\tmax={this.state._max}\n\t\t\t\t\t\t\tmin={this.state._min}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\t\tstep={this.state._step}\n\t\t\t\t\t\t\ttype={this.state._type}\n\t\t\t\t\t\t\tvalue={this.state._value || undefined}\n\t\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\t\tonKeyDown={this.onKeyDown}\n\t\t\t\t\t\t\tonBlur={(event) => {\n\t\t\t\t\t\t\t\tthis.controller.onFacade.onBlur(event);\n\t\t\t\t\t\t\t\tthis.inputHasFocus = false;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonFocus={(event) => {\n\t\t\t\t\t\t\t\tthis.controller.onFacade.onFocus(event);\n\t\t\t\t\t\t\t\tthis.inputHasFocus = true;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t\t\tonInput={this.onInput}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</KolInputTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputDateController;\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component’s interactive element.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Defines whether the screen-readers should read out the notification.\n\t * @deprecated Will be removed in v3. Use automatic behaviour instead.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean;\n\n\t/**\n\t * Defines whether the input can be auto-completed.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Defines the error message text.\n\t * @deprecated Will be removed in v3. Use `msg` instead.\n\t */\n\t@Prop() public _error?: string;\n\n\t/**\n\t * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n\t * @TODO: Change type back to `HideErrorPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _hideError?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the hint text.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsHorizontalPropType;\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the largest possible input value.\n\t */\n\t@Prop() public _max?: Iso8601 | Date;\n\n\t/**\n\t * Defines the smallest possible input value.\n\t */\n\t@Prop() public _min?: Iso8601 | Date;\n\n\t/**\n\t * Defines the properties for a message rendered as Alert component.\n\t */\n\t@Prop() public _msg?: Stringified<MsgPropType>;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Makes the input element read only.\n\t * @TODO: Change type back to `ReadOnlyPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _readOnly?: boolean = false;\n\n\t/**\n\t * Makes the input element required.\n\t * @TODO: Change type back to `RequiredPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _required?: boolean = false;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Allows to add a button with an arbitrary action within the element (_hide-label only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t/**\n\t * Suggestions to provide for the input.\n\t */\n\t@Prop() public _suggestions?: SuggestionsPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines the step size for value changes.\n\t */\n\t@Prop() public _step?: number;\n\n\t/**\n\t * Defines which tab-index the primary element of the component has. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Shows if the input was touched by a user.\n\t * @TODO: Change type back to `TouchedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type: InputDateType = 'date';\n\n\t/**\n\t * Defines the value of the input.\n\t */\n\t@Prop({ mutable: true }) public _value?: Iso8601 | Date | null;\n\n\t@State() public state: InputDateStates = {\n\t\t_autoComplete: 'off',\n\t\t_hasValue: false,\n\t\t_hideError: false,\n\t\t_id: `id-${nonce()}`,\n\t\t_label: '', // ⚠ required\n\t\t_suggestions: [],\n\t\t_type: 'datetime-local',\n\t};\n\n\t@State() private inputHasFocus = false;\n\n\tpublic constructor() {\n\t\tthis.controller = new InputDateController(this, 'date', this.host);\n\t}\n\n\tprivate showAsAlert(): boolean {\n\t\tif (this.state._alert === undefined) {\n\t\t\treturn Boolean(this.state._touched) && !this.inputHasFocus;\n\t\t}\n\t\treturn this.state._alert;\n\t}\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t@Watch('_autoComplete')\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\tthis.controller.validateAutoComplete(value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t@Watch('_hideError')\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tthis.controller.validateHideError(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: IconsHorizontalPropType): void {\n\t\tthis.controller.validateIcons(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tthis.controller.validateLabel(value);\n\t}\n\n\t@Watch('_max')\n\tpublic validateMax(value?: Iso8601 | Date): void {\n\t\tthis.controller.validateMax(value);\n\t}\n\n\t@Watch('_min')\n\tpublic validateMin(value?: Iso8601 | Date): void {\n\t\tthis.controller.validateMin(value);\n\t}\n\n\t@Watch('_msg')\n\tpublic validateMsg(value?: Stringified<MsgPropType>): void {\n\t\tthis.controller.validateMsg(value);\n\t}\n\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: ReadOnlyPropType): void {\n\t\tthis.controller.validateReadOnly(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_shortKey')\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tthis.controller.validateShortKey(value);\n\t}\n\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(value);\n\t}\n\n\t@Watch('_suggestions')\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tthis.controller.validateSuggestions(value);\n\t}\n\n\t@Watch('_step')\n\tpublic validateStep(value?: number): void {\n\t\tthis.controller.validateStep(value);\n\t}\n\n\t@Watch('_syncValueBySelector')\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tthis.controller.validateSyncValueBySelector(value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: InputDateType): void {\n\t\tthis.controller.validateType(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: Iso8601 | Date | null): void {\n\t\tif (value instanceof Date) {\n\t\t\tdeprecatedHint('Date type will be removed in v3. Use `Iso8601` instead.');\n\t\t}\n\t\tthis.controller.validateValueEx(value);\n\t\tif (value !== undefined) this.setInitialValueType(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tif (this._value !== undefined) this.setInitialValueType(this._value);\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t}\n}\n"],"version":3}
1
+ {"file":"kol-input-date.js","mappings":"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","names":["KolInputDate"],"sources":["src/schema/props/read-only.ts","src/schema/types/input/control/number.ts","src/components/input-date/controller.ts","src/components/input-date/style.scss?tag=kol-input-date&mode=default&encapsulation=shadow","src/components/input-date/shadow.tsx"],"sourcesContent":["import type { Generic } from 'adopted-style-sheets';\n\nimport { watchBoolean } from '../utils';\n\n/* types */\nexport type ReadOnlyPropType = boolean;\n\n/**\n * Makes the input element read only.\n */\nexport type PropReadOnly = {\n\treadOnly: ReadOnlyPropType;\n};\n\n/* validator */\nexport const validateReadOnly = (component: Generic.Element.Component, value?: ReadOnlyPropType): void => {\n\twatchBoolean(component, '_readOnly', value);\n};\n","import type { ButtonProps } from '../../../components';\nimport type { PropHorizontalIcons } from '../../../props';\nimport type { Stringified } from '../../common';\nimport type { InputTypeOnDefault, InputTypeOnOff } from '../types';\n\nexport const inputDateTypeOptions = ['date', 'datetime-local', 'month', 'time', 'week'] as const;\nexport type InputDateType = (typeof inputDateTypeOptions)[number];\n\nexport type OptionalInputProps<T> = {\n\taccessKey: string;\n\talert: boolean;\n\tautoComplete: InputTypeOnOff;\n\tdisabled: boolean;\n\terror: string;\n\thideLabel: boolean;\n\thint: string;\n\tmax: T;\n\tmin: T;\n\tname: string;\n\ton: InputTypeOnDefault;\n\treadOnly: boolean;\n\trequired: boolean;\n\tsmartButton: Stringified<ButtonProps>;\n\tstep: number;\n\ttabIndex: number;\n\ttouched: boolean;\n\tvalue: T | null;\n} & PropHorizontalIcons;\n","import type {\n\tInputDateProps,\n\tInputDateType,\n\tInputDateWatches,\n\tInputTypeOnDefault,\n\tInputTypeOnOff,\n\tIso8601,\n\tReadOnlyPropType,\n\tSuggestionsPropType,\n} from '../../schema';\nimport { inputDateTypeOptions, setState, validateReadOnly, validateSuggestions, watchBoolean, watchNumber, watchValidator } from '../../schema';\n\nimport { InputIconController } from '../@deprecated/input/controller-icon';\n\nimport type { Generic } from 'adopted-style-sheets';\n\nexport class InputDateController extends InputIconController implements InputDateWatches {\n\t// test: https://regex101.com/r/NTVh4L/1\n\tprivate static readonly isoDateRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])/;\n\tprivate static readonly isoLocalDateTimeRegex = /^\\d{4}-([0]\\d|1[0-2])-([0-2]\\d|3[01])[T ][0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoMonthRegex = /^\\d{4}-([0]\\d|1[0-2])/;\n\tprivate static readonly isoTimeRegex = /^[0-2]\\d:[0-5]\\d(:[0-5]\\d(?:\\.\\d+)?)?/;\n\tprivate static readonly isoWeekRegex = /^\\d{4}-W(?:[0-4]\\d|5[0-3])$/;\n\n\tprivate static readonly DEFAULT_MAX_DATE = new Date(9999, 11, 31, 23, 59, 59);\n\n\tprotected readonly component: Generic.Element.Component & InputDateProps;\n\n\tpublic constructor(component: Generic.Element.Component & InputDateProps, 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 validateSuggestions(value?: SuggestionsPropType): void {\n\t\tvalidateSuggestions(this.component, value);\n\t}\n\n\tpublic static tryParseToString(value: Iso8601 | Date | null | undefined, type?: InputDateType, step?: string | number): string | null | undefined {\n\t\tif (typeof value === 'string' || value === null) {\n\t\t\treturn value;\n\t\t}\n\n\t\tif (typeof value === 'object' && value instanceof Date) {\n\t\t\tconst formattedYear = value.getFullYear();\n\t\t\tconst formattedMonth = String(value.getMonth() + 1).padStart(2, '0');\n\t\t\tconst formattedDay = String(value.getDate()).padStart(2, '0');\n\t\t\tconst formattedHours = String(value.getHours()).padStart(2, '0');\n\t\t\tconst formattedMinutes = String(value.getMinutes()).padStart(2, '0');\n\t\t\tconst formattedSeconds = String(value.getSeconds()).padStart(2, '0');\n\n\t\t\tconst formattedDate = [formattedYear, formattedMonth, formattedDay].join('-');\n\t\t\tconst formattedTimeWithSeconds = [formattedHours, formattedMinutes, formattedSeconds].join(':');\n\n\t\t\tswitch (type) {\n\t\t\t\tcase 'date':\n\t\t\t\t\treturn formattedDate;\n\t\t\t\tcase 'datetime-local':\n\t\t\t\t\treturn `${formattedDate}T${formattedTimeWithSeconds}`;\n\t\t\t\tcase 'month':\n\t\t\t\t\treturn `${formattedYear}-${formattedMonth}`;\n\t\t\t\tcase 'time':\n\t\t\t\t\t// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/time#using_the_step_attribute\n\t\t\t\t\tif (step === undefined || String(step) === '60') {\n\t\t\t\t\t\treturn `${formattedHours}:${formattedMinutes}`;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn formattedTimeWithSeconds;\n\t\t\t\t\t}\n\t\t\t\tcase 'week':\n\t\t\t\t\treturn `${formattedYear}-W${this.getWeekNumberOfDate(value)}`;\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic getWeekNumberOfDate(date: Date): string {\n\t\tconst copiedDate = new Date(date);\n\n\t\t// ISO week date weeks start on Monday, so correct the day number\n\t\tconst nDay = (copiedDate.getDay() + 6) % 7;\n\n\t\t// ISO 8601 states that week 1 is the week with the first Thursday of that year\n\t\t// Set the target date to the Thursday in the target week\n\t\tcopiedDate.setDate(copiedDate.getDate() - nDay + 3);\n\n\t\t// Store the millisecond value of the target date\n\t\tconst n1stThursday = copiedDate.valueOf();\n\n\t\t// Set the target to the first Thursday of the year\n\t\t// First, set the target to January 1st\n\t\tcopiedDate.setMonth(0, 1);\n\n\t\t// Not a Thursday? Correct the date to the next Thursday\n\t\tif (copiedDate.getDay() !== 4) {\n\t\t\tcopiedDate.setMonth(0, 1 + ((4 - copiedDate.getDay() + 7) % 7));\n\t\t}\n\n\t\t// The week number is the number of weeks between the first Thursday of the year\n\t\t// and the Thursday in the target week (604800000 = 7 * 24 * 3600 * 1000)\n\t\tconst dayOfYear = 1 + Math.ceil((n1stThursday - copiedDate.valueOf()) / 604800000);\n\n\t\treturn dayOfYear.toString().padStart(2, '0');\n\t}\n\n\tprivate validateDateString(value: string): boolean {\n\t\tswitch (this.component._type) {\n\t\t\tcase 'date':\n\t\t\t\treturn InputDateController.isoDateRegex.test(value);\n\t\t\tcase 'datetime-local':\n\t\t\t\treturn InputDateController.isoLocalDateTimeRegex.test(value);\n\t\t\tcase 'month':\n\t\t\t\treturn InputDateController.isoMonthRegex.test(value);\n\t\t\tcase 'time':\n\t\t\t\treturn InputDateController.isoTimeRegex.test(value);\n\t\t\tcase 'week':\n\t\t\t\treturn InputDateController.isoWeekRegex.test(value);\n\t\t\tdefault:\n\t\t\t\treturn false;\n\t\t}\n\t}\n\n\tprivate readonly validateIso8601 = (propName: string, value?: Date | Iso8601 | null, afterPatch?: (v: string) => void) => {\n\t\treturn watchValidator(\n\t\t\tthis.component,\n\t\t\tpropName,\n\t\t\t(value): boolean => value === undefined || value === null || value === '' || this.validateDateString(value),\n\t\t\tnew Set(['Date', 'string{ISO-8601}']),\n\t\t\tInputDateController.tryParseToString(value, this.component._type, this.component._step),\n\t\t\t{\n\t\t\t\thooks: {\n\t\t\t\t\tafterPatch: (value) => {\n\t\t\t\t\t\tif (typeof value === 'string' && afterPatch) {\n\t\t\t\t\t\t\tafterPatch(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t};\n\n\tprotected onBlur(event: Event): void {\n\t\tsuper.onBlur(event);\n\n\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\tif (!!(event.target as HTMLInputElement).value !== !!this.component._value) {\n\t\t\tthis.component._value = (event.target as HTMLInputElement).value as Iso8601;\n\t\t}\n\t}\n\n\tpublic validateMax(value?: Iso8601 | Date): void {\n\t\tconst ensuredValue =\n\t\t\t(value === undefined || value === null) &&\n\t\t\t(this.component._type === 'date' || this.component._type === 'month' || this.component._type === 'datetime-local')\n\t\t\t\t? InputDateController.DEFAULT_MAX_DATE\n\t\t\t\t: value;\n\n\t\tthis.validateIso8601('_max', ensuredValue);\n\t}\n\n\tpublic validateMin(value?: Iso8601 | Date): void {\n\t\tthis.validateIso8601('_min', value);\n\t}\n\n\tpublic validateOn(value?: InputTypeOnDefault) {\n\t\tsetState(this.component, '_on', {\n\t\t\t...value,\n\t\t\tonChange: (e: Event, v: unknown) => {\n\t\t\t\t// set the value here when the value is switched between blank and set (or vice versa) to enable value resets via setting null as value.\n\t\t\t\tif (!!v !== !!this.component._value) {\n\t\t\t\t\tthis.component._value = v as Iso8601;\n\t\t\t\t}\n\n\t\t\t\tif (value?.onChange) {\n\t\t\t\t\tvalue.onChange(e, v);\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\t}\n\n\tpublic validateReadOnly(value?: ReadOnlyPropType): void {\n\t\tvalidateReadOnly(this.component, value);\n\t}\n\n\tpublic validateRequired(value?: boolean): void {\n\t\twatchBoolean(this.component, '_required', value);\n\t}\n\n\tpublic validateStep(value?: number): void {\n\t\twatchNumber(this.component, '_step', value);\n\t}\n\n\tpublic validateType(value?: InputDateType): void {\n\t\twatchValidator(\n\t\t\tthis.component,\n\t\t\t'_type',\n\t\t\t(value): boolean => typeof value === 'string' && inputDateTypeOptions.includes(value),\n\t\t\tnew Set([`String {${inputDateTypeOptions.join(', ')}`]),\n\t\t\tvalue,\n\t\t);\n\t}\n\n\tpublic validateValue(value?: Iso8601 | Date | null): void {\n\t\tthis.validateValueEx(value);\n\t}\n\n\t/**\n\t * Overload of validate value. Extends by an after patch callback function.\n\t */\n\tpublic validateValueEx(value?: Iso8601 | Date | null, afterPatch?: (v: string) => void): void {\n\t\tthis.validateIso8601('_value', value, afterPatch);\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.validateMax(this.component._max);\n\t\tthis.validateMin(this.component._min);\n\t\tthis.validateLabel(this.component._label);\n\t\tthis.validateSuggestions(this.component._suggestions);\n\t\tthis.validateOn(this.component._on);\n\t\tthis.validateReadOnly(this.component._readOnly);\n\t\tthis.validateRequired(this.component._required);\n\t\tthis.validateStep(this.component._step);\n\t\tthis.validateType(this.component._type);\n\t\tthis.validateValue(this.component._value);\n\t}\n}\n","@use '../style' as *;\n@use '../input-line' as *;\n\n@layer kol-component {\n\t/**\n\t * Workaround for detecting focus state of the native date input's calendar icon.\n\t * The `:focus-visible` pseudo class does not work on the icon itself, but only on the input element.\n\t * By using the `content` property we can detect whether the icon is focused by inspecting the computed style in JS.\n\t * This should be replaced once native focus detection for the icon is available.\n\t */\n\t:host {\n\t\tinput[type='date'],\n\t\tinput[type='datetime-local'],\n\t\tinput[type='month'],\n\t\tinput[type='time'],\n\t\tinput[type='week'] {\n\t\t\tcontent: 'native-icon-focused';\n\t\t}\n\n\t\tinput[type='date']:focus-visible,\n\t\tinput[type='datetime-local']:focus-visible,\n\t\tinput[type='month']:focus-visible,\n\t\tinput[type='time']:focus-visible,\n\t\tinput[type='week']:focus-visible {\n\t\t\tcontent: 'native-icon-not-focused';\n\t\t}\n\t}\n\n\t.input {\n\t\tcursor: text;\n\n\t\tinput::-webkit-calendar-picker-indicator {\n\t\t\tcursor: pointer;\n\t\t}\n\t}\n}\n","import type { JSX } from '@stencil/core';\nimport { Component, Element, Fragment, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport type {\n\tButtonProps,\n\tFocusableElement,\n\tHideErrorPropType,\n\tIconsHorizontalPropType,\n\tIdPropType,\n\tInputDateAPI,\n\tInputDateStates,\n\tInputDateType,\n\tInputTypeOnDefault,\n\tInputTypeOnOff,\n\tIso8601,\n\tLabelWithExpertSlotPropType,\n\tMsgPropType,\n\tNamePropType,\n\tReadOnlyPropType,\n\tShortKeyPropType,\n\tStringified,\n\tSuggestionsPropType,\n\tSyncValueBySelectorPropType,\n\tTooltipAlignPropType,\n} from '../../schema';\nimport { buildBadgeTextString, deprecatedHint, showExpertSlot } from '../../schema';\n\nimport { KolInputTag } from '../../core/component-names';\nimport { nonce } from '../../utils/dev.utils';\nimport { propagateSubmitEventToForm } from '../form/controller';\nimport { getRenderStates } from '../input/controller';\nimport { InternalUnderlinedBadgeText } from '../span/InternalUnderlinedBadgeText';\nimport { InputDateController } from './controller';\n\n/**\n * @slot - Die Beschriftung des Eingabefeldes.\n */\n@Component({\n\ttag: 'kol-input-date',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: {\n\t\tdelegatesFocus: true,\n\t},\n})\nexport class KolInputDate implements InputDateAPI, FocusableElement {\n\t@Element() private readonly host?: HTMLKolInputDateElement;\n\tprivate inputRef?: HTMLInputElement;\n\n\t@State() private _initialValueType: 'Date' | 'String' | null = null;\n\n\tprivate readonly catchRef = (ref?: HTMLInputElement) => {\n\t\tthis.inputRef = ref;\n\t};\n\n\t/**\n\t * Returns the selected date.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getValue(): Promise<string | Date | undefined> {\n\t\treturn this.inputRef && this.remapValue(this.inputRef?.value);\n\t}\n\n\t/**\n\t * @deprecated Use kolFocus instead.\n\t */\n\t@Method()\n\tpublic async focus() {\n\t\tawait this.kolFocus();\n\t}\n\n\t/**\n\t * Focuses the date input.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async kolFocus() {\n\t\tthis.inputRef?.focus();\n\t}\n\n\t/**\n\t * Clears the value and resets the input.\n\t */\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async reset() {\n\t\tthis.state = {\n\t\t\t...this.state,\n\t\t\t_value: null,\n\t\t};\n\t\tthis.controller.setFormAssociatedValue('');\n\n\t\t// Setting the state value might not trigger a state change and rerender if the previous value is already an empty string,\n\t\t// which can occur during an incomplete input. Directly setting the DOM property \"forces\" a reset of the native element.\n\t\tif (this.inputRef) {\n\t\t\tthis.inputRef.value = '';\n\t\t}\n\t}\n\n\tprivate setInitialValueType(value: Iso8601 | Date | null) {\n\t\tif (value instanceof Date) {\n\t\t\tthis._initialValueType = 'Date';\n\t\t} else if (typeof value === 'string') {\n\t\t\tthis._initialValueType = 'String';\n\t\t} else {\n\t\t\tthis._initialValueType = null;\n\t\t}\n\t}\n\tprivate remapValue(newValue: string): Date | string {\n\t\treturn this._initialValueType === 'Date' ? new Date(newValue) : newValue;\n\t}\n\n\tprivate readonly onChange = (event: Event) => {\n\t\tconst newValue = (event.target as HTMLInputElement).value;\n\t\tconst remappedValue = this.remapValue(newValue);\n\t\tthis.controller.onFacade.onChange(event, remappedValue);\n\t};\n\n\tprivate readonly onInput = (event: Event) => {\n\t\tconst newValue = (event.target as HTMLInputElement).value;\n\t\tconst remappedValue = this.remapValue(newValue);\n\t\tthis.controller.onFacade.onInput(event, true, remappedValue);\n\t};\n\n\tprivate readonly isNativeCalendarIconFocused = (): boolean => {\n\t\tif (!this.inputRef || typeof window === 'undefined' || typeof window.getComputedStyle !== 'function') {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst computedStyle = window.getComputedStyle(this.inputRef);\n\t\treturn computedStyle.content.includes('native-icon-focused');\n\t};\n\n\tprivate readonly onKeyDown = (event: KeyboardEvent) => {\n\t\tif ((event.code === 'Enter' || event.code === 'NumpadEnter') && !this.isNativeCalendarIconFocused()) {\n\t\t\tpropagateSubmitEventToForm({\n\t\t\t\tform: this.host,\n\t\t\t\tref: this.inputRef,\n\t\t\t});\n\t\t}\n\t};\n\n\tpublic render(): JSX.Element {\n\t\tconst { ariaDescribedBy } = getRenderStates(this.state);\n\t\tconst hasSuggestions = Array.isArray(this.state._suggestions) && this.state._suggestions.length > 0;\n\t\tconst hasExpertSlot = showExpertSlot(this.state._label);\n\n\t\treturn (\n\t\t\t<Host class={{ 'kol-input-date': true, 'has-value': this.state._hasValue }}>\n\t\t\t\t<KolInputTag\n\t\t\t\t\tclass={{\n\t\t\t\t\t\t[this.state._type]: true,\n\t\t\t\t\t\t'hide-label': !!this.state._hideLabel,\n\t\t\t\t\t}}\n\t\t\t\t\t_accessKey={this.state._accessKey}\n\t\t\t\t\t_alert={this.showAsAlert()}\n\t\t\t\t\t_disabled={this.state._disabled}\n\t\t\t\t\t_msg={this.state._msg}\n\t\t\t\t\t_hideError={this.state._hideError}\n\t\t\t\t\t_hideLabel={this.state._hideLabel}\n\t\t\t\t\t_hint={this.state._hint}\n\t\t\t\t\t_icons={this.state._icons}\n\t\t\t\t\t_id={this.state._id}\n\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t_suggestions={this.state._suggestions}\n\t\t\t\t\t_readOnly={this.state._readOnly}\n\t\t\t\t\t_required={this.state._required}\n\t\t\t\t\t_shortKey={this.state._shortKey}\n\t\t\t\t\t_smartButton={this.state._smartButton}\n\t\t\t\t\t_tooltipAlign={this._tooltipAlign}\n\t\t\t\t\t_touched={this.state._touched}\n\t\t\t\t>\n\t\t\t\t\t<span slot=\"label\">\n\t\t\t\t\t\t{hasExpertSlot ? (\n\t\t\t\t\t\t\t<slot name=\"expert\"></slot>\n\t\t\t\t\t\t) : typeof this.state._accessKey === 'string' || typeof this.state._shortKey === 'string' ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<InternalUnderlinedBadgeText badgeText={buildBadgeTextString(this.state._accessKey, this.state._shortKey)} label={this.state._label} />{' '}\n\t\t\t\t\t\t\t\t<kbd class=\"badge-text-hint\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t{buildBadgeTextString(this.state._accessKey || this.state._shortKey)}\n\t\t\t\t\t\t\t\t</kbd>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span>{this.state._label}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</span>\n\t\t\t\t\t<div slot=\"input\">\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t\t\taccessKey={this.state._accessKey}\n\t\t\t\t\t\t\taria-keyshortcuts={this.state._shortKey}\n\t\t\t\t\t\t\taria-describedby={ariaDescribedBy.length > 0 ? ariaDescribedBy.join(' ') : undefined}\n\t\t\t\t\t\t\taria-label={this.state._hideLabel && typeof this.state._label === 'string' ? this.state._label : undefined}\n\t\t\t\t\t\t\tautoCapitalize=\"off\"\n\t\t\t\t\t\t\tautoComplete={this.state._autoComplete}\n\t\t\t\t\t\t\tautoCorrect=\"off\"\n\t\t\t\t\t\t\tdisabled={this.state._disabled}\n\t\t\t\t\t\t\tid={this.state._id}\n\t\t\t\t\t\t\tlist={hasSuggestions ? `${this.state._id}-list` : undefined}\n\t\t\t\t\t\t\tmax={this.state._max}\n\t\t\t\t\t\t\tmin={this.state._min}\n\t\t\t\t\t\t\tname={this.state._name}\n\t\t\t\t\t\t\treadOnly={this.state._readOnly}\n\t\t\t\t\t\t\trequired={this.state._required}\n\t\t\t\t\t\t\tstep={this.state._step}\n\t\t\t\t\t\t\ttype={this.state._type}\n\t\t\t\t\t\t\tvalue={this.state._value || undefined}\n\t\t\t\t\t\t\t{...this.controller.onFacade}\n\t\t\t\t\t\t\tonKeyDown={this.onKeyDown}\n\t\t\t\t\t\t\tonBlur={(event) => {\n\t\t\t\t\t\t\t\tthis.controller.onFacade.onBlur(event);\n\t\t\t\t\t\t\t\tthis.inputHasFocus = false;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonFocus={(event) => {\n\t\t\t\t\t\t\t\tthis.controller.onFacade.onFocus(event);\n\t\t\t\t\t\t\t\tthis.inputHasFocus = true;\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonChange={this.onChange}\n\t\t\t\t\t\t\tonInput={this.onInput}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</KolInputTag>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\tprivate readonly controller: InputDateController;\n\n\t/**\n\t * Defines the key combination that can be used to trigger or focus the component’s interactive element.\n\t */\n\t@Prop() public _accessKey?: string;\n\n\t/**\n\t * Defines whether the screen-readers should read out the notification.\n\t * @deprecated Will be removed in v3. Use automatic behaviour instead.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _alert?: boolean;\n\n\t/**\n\t * Defines whether the input can be auto-completed.\n\t */\n\t@Prop() public _autoComplete?: InputTypeOnOff;\n\n\t/**\n\t * Makes the element not focusable and ignore all events.\n\t * @TODO: Change type back to `DisabledPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _disabled?: boolean = false;\n\n\t/**\n\t * Defines the error message text.\n\t * @deprecated Will be removed in v3. Use `msg` instead.\n\t */\n\t@Prop() public _error?: string;\n\n\t/**\n\t * Hides the error message but leaves it in the DOM for the input's aria-describedby.\n\t * @TODO: Change type back to `HideErrorPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _hideError?: boolean = false;\n\n\t/**\n\t * Hides the caption by default and displays the caption text with a tooltip when the\n\t * interactive element is focused or the mouse is over it.\n\t * @TODO: Change type back to `HideLabelPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _hideLabel?: boolean = false;\n\n\t/**\n\t * Defines the hint text.\n\t */\n\t@Prop() public _hint?: string = '';\n\n\t/**\n\t * Defines the icon classnames (e.g. `_icons=\"fa-solid fa-user\"`).\n\t */\n\t@Prop() public _icons?: IconsHorizontalPropType;\n\n\t/**\n\t * Defines the internal ID of the primary component element.\n\t */\n\t@Prop() public _id?: IdPropType;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.). Set to `false` to enable the expert slot.\n\t */\n\t@Prop() public _label!: LabelWithExpertSlotPropType;\n\n\t/**\n\t * Defines the largest possible input value.\n\t */\n\t@Prop() public _max?: Iso8601 | Date;\n\n\t/**\n\t * Defines the smallest possible input value.\n\t */\n\t@Prop() public _min?: Iso8601 | Date;\n\n\t/**\n\t * Defines the properties for a message rendered as Alert component.\n\t */\n\t@Prop() public _msg?: Stringified<MsgPropType>;\n\n\t/**\n\t * Defines the technical name of an input field.\n\t */\n\t@Prop() public _name?: NamePropType;\n\n\t/**\n\t * Gibt die EventCallback-Funktionen für das Input-Event an.\n\t */\n\t@Prop() public _on?: InputTypeOnDefault;\n\n\t/**\n\t * Makes the input element read only.\n\t * @TODO: Change type back to `ReadOnlyPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _readOnly?: boolean = false;\n\n\t/**\n\t * Makes the input element required.\n\t * @TODO: Change type back to `RequiredPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop() public _required?: boolean = false;\n\n\t/**\n\t * Adds a visual shortcut hint after the label and instructs the screen reader to read the shortcut aloud.\n\t */\n\t@Prop() public _shortKey?: ShortKeyPropType;\n\n\t/**\n\t * Allows to add a button with an arbitrary action within the element (_hide-label only).\n\t */\n\t@Prop() public _smartButton?: Stringified<ButtonProps>;\n\n\t/**\n\t * Suggestions to provide for the input.\n\t */\n\t@Prop() public _suggestions?: SuggestionsPropType;\n\n\t/**\n\t * Selector for synchronizing the value with another input element.\n\t * @internal\n\t */\n\t@Prop() public _syncValueBySelector?: SyncValueBySelectorPropType;\n\n\t/**\n\t * Defines the step size for value changes.\n\t */\n\t@Prop() public _step?: number;\n\n\t/**\n\t * Defines which tab-index the primary element of the component has. (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex)\n\t */\n\t@Prop() public _tabIndex?: number;\n\n\t/**\n\t * Defines where to show the Tooltip preferably: top, right, bottom or left.\n\t */\n\t@Prop() public _tooltipAlign?: TooltipAlignPropType = 'top';\n\n\t/**\n\t * Shows if the input was touched by a user.\n\t * @TODO: Change type back to `TouchedPropType` after Stencil#4663 has been resolved.\n\t */\n\t@Prop({ mutable: true, reflect: true }) public _touched?: boolean = false;\n\n\t/**\n\t * Defines either the type of the component or of the components interactive element.\n\t */\n\t@Prop() public _type: InputDateType = 'date';\n\n\t/**\n\t * Defines the value of the input.\n\t */\n\t@Prop({ mutable: true }) public _value?: Iso8601 | Date | null;\n\n\t@State() public state: InputDateStates = {\n\t\t_autoComplete: 'off',\n\t\t_hasValue: false,\n\t\t_hideError: false,\n\t\t_id: `id-${nonce()}`,\n\t\t_label: '', // ⚠ required\n\t\t_suggestions: [],\n\t\t_type: 'datetime-local',\n\t};\n\n\t@State() private inputHasFocus = false;\n\n\tpublic constructor() {\n\t\tthis.controller = new InputDateController(this, 'date', this.host);\n\t}\n\n\tprivate showAsAlert(): boolean {\n\t\tif (this.state._alert === undefined) {\n\t\t\treturn Boolean(this.state._touched) && !this.inputHasFocus;\n\t\t}\n\t\treturn this.state._alert;\n\t}\n\n\t@Watch('_accessKey')\n\tpublic validateAccessKey(value?: string): void {\n\t\tthis.controller.validateAccessKey(value);\n\t}\n\n\t@Watch('_alert')\n\tpublic validateAlert(value?: boolean): void {\n\t\tthis.controller.validateAlert(value);\n\t}\n\n\t@Watch('_autoComplete')\n\tpublic validateAutoComplete(value?: InputTypeOnOff): void {\n\t\tthis.controller.validateAutoComplete(value);\n\t}\n\n\t@Watch('_disabled')\n\tpublic validateDisabled(value?: boolean): void {\n\t\tthis.controller.validateDisabled(value);\n\t}\n\n\t@Watch('_error')\n\tpublic validateError(value?: string): void {\n\t\tthis.controller.validateError(value);\n\t}\n\n\t@Watch('_hideError')\n\tpublic validateHideError(value?: HideErrorPropType): void {\n\t\tthis.controller.validateHideError(value);\n\t}\n\n\t@Watch('_hideLabel')\n\tpublic validateHideLabel(value?: boolean): void {\n\t\tthis.controller.validateHideLabel(value);\n\t}\n\n\t@Watch('_hint')\n\tpublic validateHint(value?: string): void {\n\t\tthis.controller.validateHint(value);\n\t}\n\n\t@Watch('_icons')\n\tpublic validateIcons(value?: IconsHorizontalPropType): void {\n\t\tthis.controller.validateIcons(value);\n\t}\n\n\t@Watch('_id')\n\tpublic validateId(value?: string): void {\n\t\tthis.controller.validateId(value);\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelWithExpertSlotPropType): void {\n\t\tthis.controller.validateLabel(value);\n\t}\n\n\t@Watch('_max')\n\tpublic validateMax(value?: Iso8601 | Date): void {\n\t\tthis.controller.validateMax(value);\n\t}\n\n\t@Watch('_min')\n\tpublic validateMin(value?: Iso8601 | Date): void {\n\t\tthis.controller.validateMin(value);\n\t}\n\n\t@Watch('_msg')\n\tpublic validateMsg(value?: Stringified<MsgPropType>): void {\n\t\tthis.controller.validateMsg(value);\n\t}\n\n\t@Watch('_name')\n\tpublic validateName(value?: string): void {\n\t\tthis.controller.validateName(value);\n\t}\n\n\t@Watch('_on')\n\tpublic validateOn(value?: InputTypeOnDefault): void {\n\t\tthis.controller.validateOn(value);\n\t}\n\n\t@Watch('_readOnly')\n\tpublic validateReadOnly(value?: ReadOnlyPropType): void {\n\t\tthis.controller.validateReadOnly(value);\n\t}\n\n\t@Watch('_required')\n\tpublic validateRequired(value?: boolean): void {\n\t\tthis.controller.validateRequired(value);\n\t}\n\n\t@Watch('_shortKey')\n\tpublic validateShortKey(value?: ShortKeyPropType): void {\n\t\tthis.controller.validateShortKey(value);\n\t}\n\n\t@Watch('_smartButton')\n\tpublic validateSmartButton(value?: ButtonProps | string): void {\n\t\tthis.controller.validateSmartButton(value);\n\t}\n\n\t@Watch('_suggestions')\n\tpublic validateSuggestions(value?: SuggestionsPropType): void {\n\t\tthis.controller.validateSuggestions(value);\n\t}\n\n\t@Watch('_step')\n\tpublic validateStep(value?: number): void {\n\t\tthis.controller.validateStep(value);\n\t}\n\n\t@Watch('_syncValueBySelector')\n\tpublic validateSyncValueBySelector(value?: SyncValueBySelectorPropType): void {\n\t\tthis.controller.validateSyncValueBySelector(value);\n\t}\n\n\t@Watch('_tabIndex')\n\tpublic validateTabIndex(value?: number): void {\n\t\tthis.controller.validateTabIndex(value);\n\t}\n\n\t@Watch('_touched')\n\tpublic validateTouched(value?: boolean): void {\n\t\tthis.controller.validateTouched(value);\n\t}\n\n\t@Watch('_type')\n\tpublic validateType(value?: InputDateType): void {\n\t\tthis.controller.validateType(value);\n\t}\n\n\t@Watch('_value')\n\tpublic validateValue(value?: Iso8601 | Date | null): void {\n\t\tif (value instanceof Date) {\n\t\t\tdeprecatedHint('Date type will be removed in v3. Use `Iso8601` instead.');\n\t\t}\n\t\tthis.controller.validateValueEx(value);\n\t\tif (value !== undefined) this.setInitialValueType(value);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tif (this._value !== undefined) this.setInitialValueType(this._value);\n\t\tthis._touched = this._touched === true;\n\t\tthis.controller.componentWillLoad();\n\n\t\tthis.state._hasValue = !!this.state._value;\n\t\tthis.controller.addValueChangeListener((v) => (this.state._hasValue = !!v));\n\t}\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{w as watchValidator,F as devHint,h as featureHint,L as Log,l as setState,D as watchNumber,x as watchJsonArrayString,y as uiUxHintMillerscheZahl,Q as koliBriQuerySelector}from"./index2.js";import{t as translate}from"./i18n2.js";import{c as KolButtonWcTag}from"./component-names.js";import{K as KeyboardKey}from"./keyboard.js";import{a as validateAlign}from"./align.js";import{v as validateLabel}from"./label.js";const tabBehaviorPropTypeOptions=["select-automatic","select-manual"],validateTabBehavior=(t,e)=>{watchValidator(t,"_behavior",t=>"string"==typeof t&&tabBehaviorPropTypeOptions.includes(t),new Set([`KoliBriTabBehavior {${tabBehaviorPropTypeOptions.join(", ")}`]),e)},defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, unset);\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip-wc .tooltip-floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip-wc .tooltip-floating.show {\n animation-name: showTooltip;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host > div {\n display: grid;\n }\n .tabs-button-group {\n display: flex;\n flex-wrap: wrap;\n }\n .tabs-button-group button {\n border-bottom-color: transparent;\n display: block;\n border-bottom-style: solid;\n }\n div.grid,\n div[role=tabpanel] {\n height: 100%;\n }\n :host > .tabs-align-right {\n display: grid;\n grid-template-columns: 1fr auto;\n }\n :host > .tabs-align-right .tabs-button-group {\n order: 2;\n flex-direction: column;\n }\n :host > .tabs-align-right .tabs-button-group .kol-button-wc {\n width: 100%;\n }\n :host > .tabs-align-left {\n display: grid;\n grid-template-columns: auto 1fr;\n }\n :host > .tabs-align-left .tabs-button-group {\n order: 0;\n flex-direction: column;\n }\n :host > .tabs-align-left .tabs-button-group .kol-button-wc {\n width: 100%;\n }\n :host > .tabs-align-bottom {\n display: grid;\n grid-template-rows: 1fr auto;\n }\n :host > .tabs-align-bottom .tabs-button-group {\n order: 2;\n }\n :host > .tabs-align-bottom .tabs-button-group > div {\n display: flex;\n margin: 0 1em;\n }\n :host > .tabs-align-bottom .tabs-button-group > div > div:first-child {\n margin: 0 1em 0 0;\n }\n :host > .tabs-align-top {\n display: grid;\n grid-template-rows: auto 1fr;\n }\n :host > .tabs-align-top .tabs-button-group {\n order: 0;\n }\n :host > .tabs-align-top .tabs-button-group > div {\n display: flex;\n }\n :host > .tabs-align-top .tabs-button-group > div > div {\n margin: 0 1em;\n }\n :host > .tabs-align-top .tabs-button-group > div > div:first-child {\n margin: 0 1em 0 0;\n }\n}",KolTabsDefaultStyle0=defaultStyleCss,KolTabs$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.onCreateLabel=`${translate("kol-new")} …`,this.showCreateTab=!1,this.nextPossibleTabIndex=(t,e,n=1)=>{const a=e+n;return a<t.length?t[a]._disabled?this.nextPossibleTabIndex(t,e,n+1):a:e},this.prevPossibleTabIndex=(t,e,n=1)=>{const a=e-n;return a>=0?t[a]._disabled?this.prevPossibleTabIndex(t,e,n+1):a:e},this.onKeyDown=t=>{switch(t.key){case KeyboardKey.ArrowRight:this.goToNextTab(t);break;case KeyboardKey.ArrowLeft:this.goToPreviousTab(t);break;case KeyboardKey.Space:case KeyboardKey.Enter:this.activateFocusedTab(t)}},this.onClickSelect=(t,e)=>{this.selectNextTabEvent(t,e)},this.onMouseDown=t=>{t.preventDefault(),t.stopPropagation()},this.callbacks={onClick:this.onClickSelect,onMouseDown:this.onMouseDown},this.catchTabPanelHost=t=>{this.tabPanelHost=t},this.selectNextNotDisabledTab=(t,e,n=!0,a)=>{if(t>e.length-1&&(t=e.length-1),t<0&&(t=0),Array.isArray(e)&&e[t]&&e[t]._disabled){if(!0===n){if(t<e.length-1)return this.selectNextNotDisabledTab(t+1,e,!0,a||t);t=a||t,n=!1}if(!1===n){if(t>0)return this.selectNextNotDisabledTab(t-1,e,!1,a||t);devHint("[KolTabs] All tabs are disabled, and therefore no tab can be displayed.")}}return t},this.syncSelectedAndTabs=(t,e,n,a)=>{let o,i;o="_selected"===a?t:this.state._selected,i="_tabs"===a?t:this.state._tabs,i.length>0&&e.set("_selected",this.selectNextNotDisabledTab(o,i))},this.refreshTabPanels=()=>{var t,e,n,a;if(this.tabPanelHost){for(;this.tabPanelHost.firstChild;)this.tabPanelHost.removeChild(this.tabPanelHost.firstChild);for(let o=0;o<(null===(t=this.state._tabs)||void 0===t?void 0:t.length);o++){const t=document.createElement("div");t.setAttribute("aria-labelledby",`${this.state._label.replace(/\s/g,"-")}-tab-${o}`),t.setAttribute("id",`tabpanel-${o}`),t.setAttribute("role","tabpanel"),t.setAttribute("hidden","");const i=document.createElement("slot");i.setAttribute("name",`tabpanel-slot-${o}`),t.appendChild(i),null===(e=this.tabPanelHost)||void 0===e||e.appendChild(t),"undefined"!=typeof HTMLCollection&&(null===(n=this.host)||void 0===n?void 0:n.children)instanceof HTMLCollection&&(null===(a=this.host)||void 0===a?void 0:a.children[o])&&this.host.children[o].setAttribute("slot",`tabpanel-slot-${o}`)}this.updateVisiblePanel()}},this.updateVisiblePanel=()=>{this.tabPanelHost&&Array.from(this.tabPanelHost.children).forEach((t,e)=>{e===this.state._selected?t.removeAttribute("hidden"):t.setAttribute("hidden","")})},this.onCreate=t=>{var e,n;t.preventDefault(),t.stopPropagation(),"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onCreate)&&(null===(n=this.state._on)||void 0===n||n.onCreate(t))},this.onBlur=()=>{this.currentFocusIndex=void 0},this._align="top",this._behavior=void 0,this._label=void 0,this._on=void 0,this._selected=0,this._tabs=void 0,this.state={_align:"top",_label:"",_selected:0,_tabs:[]}}getCurrentFocusIndex(){return"number"==typeof this.currentFocusIndex?this.currentFocusIndex:this.state._selected}getKeyboardTabChangeMode(){return"select-manual"===this._behavior?"selectFocusOnly":"activateCompletely"}goToNextTab(t){const e=this.nextPossibleTabIndex(this.state._tabs,this.getCurrentFocusIndex());this.selectNextTabEvent(t,e,this.getKeyboardTabChangeMode())}goToPreviousTab(t){const e=this.prevPossibleTabIndex(this.state._tabs,this.getCurrentFocusIndex());this.selectNextTabEvent(t,e,this.getKeyboardTabChangeMode())}activateFocusedTab(t){"number"==typeof this.currentFocusIndex&&this.onSelect(t,this.currentFocusIndex)}selectNextTabEvent(t,e,n="activateCompletely"){var a,o;if(this.currentFocusIndex=e,this.focusTabById(e),"activateCompletely"===n){this._selected=e;null===(o=null===(a=this.state._tabs[e]._on)||void 0===a?void 0:a.onSelect)||void 0===o||o.call(a,t,e),this.onSelect(t,e)}}renderButtonGroup(){return h("div",{"aria-label":this.state._label,class:"tabs-button-group kol-button-group-wc",role:"tablist",onKeyDown:this.onKeyDown,onBlur:this.onBlur},this.state._tabs.map((t,e)=>h(KolButtonWcTag,{_disabled:t._disabled,_icons:t._icons,_hideLabel:t._hideLabel,_label:t._label,_on:this.callbacks,_tabIndex:this.state._selected===e?0:-1,_tooltipAlign:t._tooltipAlign,_variant:this.state._selected===e?"custom":void 0,_customClass:this.state._selected===e?"selected":void 0,_ariaControls:`tabpanel-${e}`,_ariaSelected:this.state._selected===e,_id:`${this.state._label.replace(/\s/g,"-")}-tab-${e}`,_role:"tab",_value:e})),this.showCreateTab&&h(KolButtonWcTag,{class:"create-button",_label:this.onCreateLabel,_on:{onClick:this.onCreate}}))}render(){return h(Host,{key:"a3968a8ef448170295b32cd87f99c38b6f0b2b23",class:"kol-tabs"},h("div",{key:"208a4c4daa5a68fd7bd3637ded3fa513b0e4f418",ref:t=>{this.tabPanelsElement=t},class:{[`tabs-align-${this.state._align}`]:!0}},this.renderButtonGroup(),h("div",{key:"b7455389653d13113ea488f361a32f7b0edcfa83",class:"tabs-content",ref:this.catchTabPanelHost})))}validateAlign(t){validateAlign(this,t)}validateBehavior(t){validateTabBehavior(this,t)}validateLabel(t){validateLabel(this,t,{required:!0})}validateOn(t){if("object"==typeof t&&null!==t){featureHint("[KolTabs] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const e={};"function"!=typeof t.onCreate&&"object"!=typeof t.onCreate||("object"==typeof t.onCreate?("string"==typeof t.onCreate.label&&t.onCreate.label.length>0?this.onCreateLabel=t.onCreate.label:Log.debug("[KolTabs] The label text for New in {\n onCreate: {\n label: string (!),\n callback: Function\n }\n} is not set correctly."),"function"==typeof t.onCreate.callback?e.onCreate=t.onCreate.callback:Log.debug("[KolTabs] The onCreate callback function for New in {\n onCreate: {\n label: string,\n callback: Function (!)\n }\n} is not set correctly.")):e.onCreate=t.onCreate,this.showCreateTab="function"==typeof e.onCreate),"function"==typeof t.onSelect&&(e.onSelect=t.onSelect),setState(this,"_on",e)}}validateSelected(t){watchNumber(this,"_selected",t,{hooks:{beforePatch:this.syncSelectedAndTabs}})}validateTabs(t){watchJsonArrayString(this,"_tabs",t=>"object"==typeof t&&null!==t&&"string"==typeof t._label&&t._label.length>0,t,void 0,{hooks:{beforePatch:this.syncSelectedAndTabs,afterPatch:this.refreshTabPanels}}),uiUxHintMillerscheZahl("KolTabs",this.state._tabs.length)}componentWillLoad(){this.validateAlign(this._align),this.validateLabel(this._label),this.validateOn(this._on),this.validateSelected(this._selected),this.validateTabs(this._tabs),this.validateBehavior(this._behavior)}componentDidRender(){this.refreshTabPanels()}focusTabById(t){if(this.tabPanelsElement){const e=koliBriQuerySelector(`button#${this.state._label.replace(/\s/g,"-")}-tab-${t}`,this.tabPanelsElement);null==e||e.focus()}}onSelect(t,e){var n,a;null===(a=null===(n=this._on)||void 0===n?void 0:n.onSelect)||void 0===a||a.call(n,t,e),this.focusTabById(e)}get host(){return this}static get watchers(){return{_align:["validateAlign"],_behavior:["validateBehavior"],_label:["validateLabel"],_on:["validateOn"],_selected:["validateSelected"],_tabs:["validateTabs"]}}static get style(){return{default:KolTabsDefaultStyle0}}},[33,"kol-tabs",{_align:[1],_behavior:[1],_label:[1],_on:[16],_selected:[1538],_tabs:[1],state:[32]},void 0,{_align:["validateAlign"],_behavior:["validateBehavior"],_label:["validateLabel"],_on:["validateOn"],_selected:["validateSelected"],_tabs:["validateTabs"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tabs"].forEach(t=>{if("kol-tabs"===t)customElements.get(t)||customElements.define(t,KolTabs$1)})}const KolTabs=KolTabs$1,defineCustomElement=defineCustomElement$1;export{KolTabs,defineCustomElement};
4
+ import{proxyCustomElement,HTMLElement,h,Host}from"@stencil/core/internal/client";import{w as watchValidator,F as devHint,h as featureHint,L as Log,l as setState,D as watchNumber,x as watchJsonArrayString,y as uiUxHintMillerscheZahl,Q as koliBriQuerySelector}from"./index2.js";import{t as translate}from"./i18n2.js";import{c as KolButtonWcTag}from"./component-names.js";import{K as KeyboardKey}from"./keyboard.js";import{a as validateAlign}from"./align.js";import{v as validateLabel}from"./label.js";const tabBehaviorPropTypeOptions=["select-automatic","select-manual"],validateTabBehavior=(t,e)=>{watchValidator(t,"_behavior",t=>"string"==typeof t&&tabBehaviorPropTypeOptions.includes(t),new Set([`KoliBriTabBehavior {${tabBehaviorPropTypeOptions.join(", ")}`]),e)},defaultStyleCss="/*\n * This file contains all rules for accessibility.\n */\n@layer kol-a11y {\n :host {\n /*\n * Minimum size of interactive elements.\n */\n --a11y-min-size: calc(44rem / var(--kolibri-root-font-size, 16));\n color: black;\n /*\n * No element should be used without a background and font color whose contrast ratio has\n * not been checked. By initially setting the background color to white and the font color\n * to black, the contrast ratio is ensured and explicit adjustment is forced.\n */\n background-color: white;\n /*\n * Verdana is an accessible font that can be used without requiring additional loading time.\n */\n font-family: Verdana;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n * {\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n hyphens: auto;\n /*\n * This rule enables the word dividing for all texts. That is important for high zoom levels.\n */\n word-break: break-word;\n }\n /*\n * All interactive elements should have a minimum size of rem(44).\n */\n /* input:not([type='checkbox'], [type='radio'], [type='range']), */\n /* option, */\n /* select, */\n /* textarea, */\n button,\n .kol-input .input {\n min-width: var(--a11y-min-size);\n min-height: var(--a11y-min-size);\n }\n /*\n * Some interactive elements should not inherit the font-family and font-size.\n */\n a,\n button,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n input,\n option,\n select,\n textarea {\n /*\n * All elements should inherit the font family from his parent element.\n */\n font-family: inherit;\n /*\n * All elements should inherit the font size from his parent element.\n */\n font-size: inherit;\n /*\n * Letter spacing is required for all texts.\n */\n letter-spacing: inherit;\n /*\n * Word spacing is required for all texts.\n */\n word-spacing: inherit;\n }\n /**\n * Sometimes we need the semantic element for accessibility reasons,\n * but we don't want to show it.\n *\n * - https://www.a11yproject.com/posts/how-to-hide-content/\n */\n .visually-hidden {\n position: fixed;\n top: 0;\n left: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n white-space: nowrap;\n clip-path: inset(50%);\n }\n}\n@layer kol-global {\n /*\n * Dieses CSS stellt sicher, dass der Standard-Style\n * von A und Button resettet werden.\n */\n :is(a, button) {\n background-color: transparent;\n width: 100%; /* 100% needed for custom width from outside */\n margin: 0;\n padding: 0;\n border: none;\n }\n /*\n * Ensure elements with hidden attribute to be actually not visible\n * @see https://meowni.ca/hidden.is.a.lie.html\n */\n [hidden] {\n display: none !important;\n }\n}\n@layer kol-global {\n :host {\n /*\n * The max-width is needed to prevent the table from overflowing the\n * parent node, if the table is wider than the parent node.\n */\n max-width: 100%;\n font-size: calc(16rem / var(--kolibri-root-font-size, 16));\n }\n * {\n /*\n * We prefer to box-sizing: border-box for all elements.\n */\n box-sizing: border-box;\n }\n /* KolSpan is a layout component with icons in all directions and a label text in the middle. */\n .kol-span-wc {\n display: grid;\n place-items: center;\n }\n /* The sub span in KolSpan is the horizontal span with icon left and right and the label text in the middle. */\n .kol-span-wc > span {\n display: flex;\n place-items: center;\n }\n a,\n button {\n cursor: pointer;\n }\n /* This is the text label. */\n .hide-label > .kol-span-wc > span > span {\n display: none;\n }\n /* Reset browser agent style. */\n button:disabled {\n color: unset;\n }\n .disabled label,\n .disabled:focus-within label,\n [aria-disabled=true],\n [aria-disabled=true]:focus,\n [disabled],\n [disabled]:focus {\n opacity: 0.5;\n outline: none;\n cursor: not-allowed;\n }\n [aria-disabled=true]:focus .kol-span-wc,\n [disabled]:focus .kol-span-wc {\n outline: none !important;\n }\n .badge-text-hint {\n color: black;\n background-color: lightgray;\n }\n}\n@layer kol-component {\n :host {\n display: block;\n }\n}\n@layer kol-component {\n .kol-tooltip-wc {\n display: contents;\n }\n .kol-tooltip-wc .tooltip-floating {\n opacity: 0;\n display: none;\n position: fixed;\n /* Avoid layout interference - see https://floating-ui.com/docs/computePosition */\n top: 0;\n left: 0;\n /* Can be used to specify the tooltip-width from the outside. Unset by default. */\n width: var(--kol-tooltip-width, unset);\n max-width: 90vw;\n max-height: 90vh;\n animation-direction: normal;\n /* Can be used to specify the animation duration from the outside. 250ms by default. */\n animation-duration: var(--kolibri-tooltip-animation-duration, 250ms);\n animation-fill-mode: forwards;\n animation-iteration-count: 1;\n animation-timing-function: ease-in;\n }\n .kol-tooltip-wc .tooltip-floating.hide {\n animation-name: hideTooltip;\n }\n .kol-tooltip-wc .tooltip-floating.show {\n animation-name: showTooltip;\n }\n /* Shared between content and arrow */\n .kol-tooltip-wc .tooltip-area {\n color: #000;\n background-color: #fff;\n }\n .kol-tooltip-wc .tooltip-arrow {\n transform: rotate(45deg);\n position: absolute;\n z-index: 999;\n width: calc(10rem / var(--kolibri-root-font-size, 16));\n height: calc(10rem / var(--kolibri-root-font-size, 16));\n }\n .kol-tooltip-wc .tooltip-content {\n position: relative;\n z-index: 1000;\n }\n @keyframes hideTooltip {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n display: none;\n }\n }\n @keyframes showTooltip {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n }\n}\n@layer kol-component {\n :host > div {\n display: grid;\n }\n .tabs-button-group {\n display: flex;\n flex-wrap: wrap;\n }\n .tabs-button-group button {\n border-bottom-color: transparent;\n display: block;\n border-bottom-style: solid;\n }\n div.grid,\n div[role=tabpanel] {\n height: 100%;\n }\n :host > .tabs-align-right {\n display: grid;\n grid-template-columns: 1fr auto;\n }\n :host > .tabs-align-right .tabs-button-group {\n order: 2;\n flex-direction: column;\n }\n :host > .tabs-align-right .tabs-button-group .kol-button-wc {\n width: 100%;\n }\n :host > .tabs-align-left {\n display: grid;\n grid-template-columns: auto 1fr;\n }\n :host > .tabs-align-left .tabs-button-group {\n order: 0;\n flex-direction: column;\n }\n :host > .tabs-align-left .tabs-button-group .kol-button-wc {\n width: 100%;\n }\n :host > .tabs-align-bottom {\n display: grid;\n grid-template-rows: 1fr auto;\n }\n :host > .tabs-align-bottom .tabs-button-group {\n order: 2;\n }\n :host > .tabs-align-bottom .tabs-button-group > div {\n display: flex;\n margin: 0 1em;\n }\n :host > .tabs-align-bottom .tabs-button-group > div > div:first-child {\n margin: 0 1em 0 0;\n }\n :host > .tabs-align-top {\n display: grid;\n grid-template-rows: auto 1fr;\n }\n :host > .tabs-align-top .tabs-button-group {\n order: 0;\n }\n :host > .tabs-align-top .tabs-button-group > div {\n display: flex;\n }\n :host > .tabs-align-top .tabs-button-group > div > div {\n margin: 0 1em;\n }\n :host > .tabs-align-top .tabs-button-group > div > div:first-child {\n margin: 0 1em 0 0;\n }\n}",KolTabsDefaultStyle0=defaultStyleCss,KolTabs$1=proxyCustomElement(class extends HTMLElement{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.onCreateLabel=`${translate("kol-new")} …`,this.showCreateTab=!1,this.nextPossibleTabIndex=(t,e,n=1)=>{const a=e+n;return a<t.length?t[a]._disabled?this.nextPossibleTabIndex(t,e,n+1):a:e},this.prevPossibleTabIndex=(t,e,n=1)=>{const a=e-n;return a>=0?t[a]._disabled?this.prevPossibleTabIndex(t,e,n+1):a:e},this.onKeyDown=t=>{switch(t.key){case KeyboardKey.ArrowRight:this.goToNextTab(t);break;case KeyboardKey.ArrowLeft:this.goToPreviousTab(t);break;case KeyboardKey.Space:case KeyboardKey.Enter:this.activateFocusedTab(t)}},this.onClickSelect=(t,e)=>{this.selectNextTabEvent(t,e)},this.onMouseDown=t=>{t.preventDefault(),t.stopPropagation()},this.callbacks={onClick:this.onClickSelect,onMouseDown:this.onMouseDown},this.catchTabPanelHost=t=>{this.tabPanelHost=t},this.selectNextNotDisabledTab=(t,e,n=!0,a)=>{if(t>e.length-1&&(t=e.length-1),t<0&&(t=0),Array.isArray(e)&&e[t]&&e[t]._disabled){if(!0===n){if(t<e.length-1)return this.selectNextNotDisabledTab(t+1,e,!0,a||t);t=a||t,n=!1}if(!1===n){if(t>0)return this.selectNextNotDisabledTab(t-1,e,!1,a||t);devHint("[KolTabs] All tabs are disabled, and therefore no tab can be displayed.")}}return t},this.syncSelectedAndTabs=(t,e,n,a)=>{let o,i;o="_selected"===a?t:this.state._selected,i="_tabs"===a?t:this.state._tabs,i.length>0&&e.set("_selected",this.selectNextNotDisabledTab(o,i))},this.refreshTabPanels=()=>{var t,e,n,a;if(this.tabPanelHost){for(;this.tabPanelHost.firstChild;)this.tabPanelHost.removeChild(this.tabPanelHost.firstChild);for(let o=0;o<(null===(t=this.state._tabs)||void 0===t?void 0:t.length);o++){const t=document.createElement("div");t.setAttribute("aria-labelledby",`${this.state._label.replace(/\s/g,"-")}-tab-${o}`),t.setAttribute("id",`tabpanel-${o}`),t.setAttribute("role","tabpanel"),t.setAttribute("hidden",""),t.setAttribute("tabindex","0");const i=document.createElement("slot");i.setAttribute("name",`tabpanel-slot-${o}`),t.appendChild(i),null===(e=this.tabPanelHost)||void 0===e||e.appendChild(t),"undefined"!=typeof HTMLCollection&&(null===(n=this.host)||void 0===n?void 0:n.children)instanceof HTMLCollection&&(null===(a=this.host)||void 0===a?void 0:a.children[o])&&this.host.children[o].setAttribute("slot",`tabpanel-slot-${o}`)}this.updateVisiblePanel()}},this.updateVisiblePanel=()=>{this.tabPanelHost&&Array.from(this.tabPanelHost.children).forEach((t,e)=>{e===this.state._selected?t.removeAttribute("hidden"):t.setAttribute("hidden","")})},this.onCreate=t=>{var e,n;t.preventDefault(),t.stopPropagation(),"function"==typeof(null===(e=this.state._on)||void 0===e?void 0:e.onCreate)&&(null===(n=this.state._on)||void 0===n||n.onCreate(t))},this.onBlur=()=>{this.currentFocusIndex=void 0},this._align="top",this._behavior=void 0,this._label=void 0,this._on=void 0,this._selected=0,this._tabs=void 0,this.state={_align:"top",_label:"",_selected:0,_tabs:[]}}getCurrentFocusIndex(){return"number"==typeof this.currentFocusIndex?this.currentFocusIndex:this.state._selected}getKeyboardTabChangeMode(){return"select-manual"===this._behavior?"selectFocusOnly":"activateCompletely"}goToNextTab(t){const e=this.nextPossibleTabIndex(this.state._tabs,this.getCurrentFocusIndex());this.selectNextTabEvent(t,e,this.getKeyboardTabChangeMode())}goToPreviousTab(t){const e=this.prevPossibleTabIndex(this.state._tabs,this.getCurrentFocusIndex());this.selectNextTabEvent(t,e,this.getKeyboardTabChangeMode())}activateFocusedTab(t){"number"==typeof this.currentFocusIndex&&this.onSelect(t,this.currentFocusIndex)}selectNextTabEvent(t,e,n="activateCompletely"){var a,o;if(this.currentFocusIndex=e,this.focusTabById(e),"activateCompletely"===n){this._selected=e;null===(o=null===(a=this.state._tabs[e]._on)||void 0===a?void 0:a.onSelect)||void 0===o||o.call(a,t,e),this.onSelect(t,e)}}renderButtonGroup(){return h("div",{"aria-label":this.state._label,class:"tabs-button-group kol-button-group-wc",role:"tablist",onKeyDown:this.onKeyDown,onBlur:this.onBlur},this.state._tabs.map((t,e)=>h(KolButtonWcTag,{_disabled:t._disabled,_icons:t._icons,_hideLabel:t._hideLabel,_label:t._label,_on:this.callbacks,_tabIndex:this.state._selected===e?0:-1,_tooltipAlign:t._tooltipAlign,_variant:this.state._selected===e?"custom":void 0,_customClass:this.state._selected===e?"selected":void 0,_ariaControls:`tabpanel-${e}`,_ariaSelected:this.state._selected===e,_id:`${this.state._label.replace(/\s/g,"-")}-tab-${e}`,_role:"tab",_value:e})),this.showCreateTab&&h(KolButtonWcTag,{class:"create-button",_label:this.onCreateLabel,_on:{onClick:this.onCreate}}))}render(){return h(Host,{key:"a3968a8ef448170295b32cd87f99c38b6f0b2b23",class:"kol-tabs"},h("div",{key:"208a4c4daa5a68fd7bd3637ded3fa513b0e4f418",ref:t=>{this.tabPanelsElement=t},class:{[`tabs-align-${this.state._align}`]:!0}},this.renderButtonGroup(),h("div",{key:"b7455389653d13113ea488f361a32f7b0edcfa83",class:"tabs-content",ref:this.catchTabPanelHost})))}validateAlign(t){validateAlign(this,t)}validateBehavior(t){validateTabBehavior(this,t)}validateLabel(t){validateLabel(this,t,{required:!0})}validateOn(t){if("object"==typeof t&&null!==t){featureHint("[KolTabs] Prüfen, wie man auch einen EventCallback einzeln ändern kann.");const e={};"function"!=typeof t.onCreate&&"object"!=typeof t.onCreate||("object"==typeof t.onCreate?("string"==typeof t.onCreate.label&&t.onCreate.label.length>0?this.onCreateLabel=t.onCreate.label:Log.debug("[KolTabs] The label text for New in {\n onCreate: {\n label: string (!),\n callback: Function\n }\n} is not set correctly."),"function"==typeof t.onCreate.callback?e.onCreate=t.onCreate.callback:Log.debug("[KolTabs] The onCreate callback function for New in {\n onCreate: {\n label: string,\n callback: Function (!)\n }\n} is not set correctly.")):e.onCreate=t.onCreate,this.showCreateTab="function"==typeof e.onCreate),"function"==typeof t.onSelect&&(e.onSelect=t.onSelect),setState(this,"_on",e)}}validateSelected(t){watchNumber(this,"_selected",t,{hooks:{beforePatch:this.syncSelectedAndTabs}})}validateTabs(t){watchJsonArrayString(this,"_tabs",t=>"object"==typeof t&&null!==t&&"string"==typeof t._label&&t._label.length>0,t,void 0,{hooks:{beforePatch:this.syncSelectedAndTabs,afterPatch:this.refreshTabPanels}}),uiUxHintMillerscheZahl("KolTabs",this.state._tabs.length)}componentWillLoad(){this.validateAlign(this._align),this.validateLabel(this._label),this.validateOn(this._on),this.validateSelected(this._selected),this.validateTabs(this._tabs),this.validateBehavior(this._behavior)}componentDidRender(){this.refreshTabPanels()}focusTabById(t){if(this.tabPanelsElement){const e=koliBriQuerySelector(`button#${this.state._label.replace(/\s/g,"-")}-tab-${t}`,this.tabPanelsElement);null==e||e.focus()}}onSelect(t,e){var n,a;null===(a=null===(n=this._on)||void 0===n?void 0:n.onSelect)||void 0===a||a.call(n,t,e),this.focusTabById(e)}get host(){return this}static get watchers(){return{_align:["validateAlign"],_behavior:["validateBehavior"],_label:["validateLabel"],_on:["validateOn"],_selected:["validateSelected"],_tabs:["validateTabs"]}}static get style(){return{default:KolTabsDefaultStyle0}}},[33,"kol-tabs",{_align:[1],_behavior:[1],_label:[1],_on:[16],_selected:[1538],_tabs:[1],state:[32]},void 0,{_align:["validateAlign"],_behavior:["validateBehavior"],_label:["validateLabel"],_on:["validateOn"],_selected:["validateSelected"],_tabs:["validateTabs"]}]);function defineCustomElement$1(){if("undefined"==typeof customElements)return;["kol-tabs"].forEach(t=>{if("kol-tabs"===t)customElements.get(t)||customElements.define(t,KolTabs$1)})}const KolTabs=KolTabs$1,defineCustomElement=defineCustomElement$1;export{KolTabs,defineCustomElement};