@public-ui/components 3.0.2-d721ede5369345abe032367b7d05a7c5a20dca9b.0 → 3.0.2-ec3e6ae7179dfaa0a4a69b756cd5422dd81d0065.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 (433) hide show
  1. package/custom-elements.json +78 -1
  2. package/dist/cjs/{Alert-733f9c9a.js → Alert-8bc32380.js} +1 -1
  3. package/dist/cjs/{Alert-733f9c9a.js.map → Alert-8bc32380.js.map} +1 -1
  4. package/dist/cjs/{Collapsible-39f04392.js → Collapsible-b44e5af9.js} +1 -1
  5. package/dist/cjs/{Collapsible-39f04392.js.map → Collapsible-b44e5af9.js.map} +1 -1
  6. package/dist/cjs/{CustomSuggestionsOptionsGroup-e1b3d59a.js → CustomSuggestionsOptionsGroup-a37693e2.js} +1 -1
  7. package/dist/cjs/{CustomSuggestionsOptionsGroup-e1b3d59a.js.map → CustomSuggestionsOptionsGroup-a37693e2.js.map} +1 -1
  8. package/dist/cjs/{FieldControlStateWrapper-55e9f29c.js → FieldControlStateWrapper-7da5b52f.js} +1 -1
  9. package/dist/cjs/{FieldControlStateWrapper-55e9f29c.js.map → FieldControlStateWrapper-7da5b52f.js.map} +1 -1
  10. package/dist/cjs/{Heading-8b4da934.js → Heading-d3ea8013.js} +1 -1
  11. package/dist/cjs/{Heading-8b4da934.js.map → Heading-d3ea8013.js.map} +1 -1
  12. package/dist/cjs/Icon-962a765c.js +4 -0
  13. package/dist/cjs/{Icon-b5637598.js.map → Icon-962a765c.js.map} +1 -1
  14. package/dist/cjs/{Input-0e3fa3e7.js → Input-ca8d1294.js} +1 -1
  15. package/dist/cjs/{Input-0e3fa3e7.js.map → Input-ca8d1294.js.map} +1 -1
  16. package/dist/cjs/{InputStateWrapper-dabd1632.js → InputStateWrapper-9a6bdee7.js} +1 -1
  17. package/dist/cjs/{InputStateWrapper-dabd1632.js.map → InputStateWrapper-9a6bdee7.js.map} +1 -1
  18. package/dist/cjs/{InternalUnderlinedBadgeText-930eede9.js → InternalUnderlinedBadgeText-a21de817.js} +1 -1
  19. package/dist/cjs/{InternalUnderlinedBadgeText-930eede9.js.map → InternalUnderlinedBadgeText-a21de817.js.map} +1 -1
  20. package/dist/cjs/{Span-256e06ce.js → Span-0729a633.js} +1 -1
  21. package/dist/cjs/{Span-256e06ce.js.map → Span-0729a633.js.map} +1 -1
  22. package/dist/cjs/align-floating-elements-8ddb8593.js +4 -0
  23. package/dist/cjs/align-floating-elements-8ddb8593.js.map +1 -0
  24. package/dist/cjs/{app-globals-c9c91a91.js → app-globals-498c8e5d.js} +1 -1
  25. package/dist/cjs/{app-globals-c9c91a91.js.map → app-globals-498c8e5d.js.map} +1 -1
  26. package/dist/cjs/{associated.controller-103272e2.js → associated.controller-7b651bde.js} +1 -1
  27. package/dist/cjs/{associated.controller-103272e2.js.map → associated.controller-7b651bde.js.map} +1 -1
  28. package/dist/cjs/{bootstrap-a35cdb5f.js → bootstrap-0ea93cf5.js} +1 -1
  29. package/dist/cjs/{bootstrap-a35cdb5f.js.map → bootstrap-0ea93cf5.js.map} +1 -1
  30. package/dist/cjs/component-names-1cb5b7ce.js +4 -0
  31. package/dist/cjs/component-names-1cb5b7ce.js.map +1 -0
  32. package/dist/cjs/{controller-c2619bc8.js → controller-6e8d48d9.js} +1 -1
  33. package/dist/cjs/{controller-c2619bc8.js.map → controller-6e8d48d9.js.map} +1 -1
  34. package/dist/cjs/{controller-b85b16a2.js → controller-75a14bc0.js} +1 -1
  35. package/dist/cjs/{controller-b85b16a2.js.map → controller-75a14bc0.js.map} +1 -1
  36. package/dist/cjs/{controller-9911e89c.js → controller-85174c2d.js} +1 -1
  37. package/dist/cjs/{controller-9911e89c.js.map → controller-85174c2d.js.map} +1 -1
  38. package/dist/cjs/{controller-470f6fe7.js → controller-f3071725.js} +1 -1
  39. package/dist/cjs/{controller-470f6fe7.js.map → controller-f3071725.js.map} +1 -1
  40. package/dist/cjs/{controller-icon-03cf1054.js → controller-icon-76065fe6.js} +1 -1
  41. package/dist/cjs/{controller-icon-03cf1054.js.map → controller-icon-76065fe6.js.map} +1 -1
  42. package/dist/cjs/{dev.utils-71d7b5ae.js → dev.utils-5066df9a.js} +1 -1
  43. package/dist/cjs/{dev.utils-71d7b5ae.js.map → dev.utils-5066df9a.js.map} +1 -1
  44. package/dist/cjs/{devtools-23be223d.js → devtools-9fcaa5e3.js} +1 -1
  45. package/dist/cjs/{devtools-23be223d.js.map → devtools-9fcaa5e3.js.map} +1 -1
  46. package/dist/cjs/{getRenderStates-e7566e7e.js → getRenderStates-327f2448.js} +1 -1
  47. package/dist/cjs/{getRenderStates-e7566e7e.js.map → getRenderStates-327f2448.js.map} +1 -1
  48. package/dist/cjs/index-30a22e52.js +4 -0
  49. package/dist/cjs/{index-8c157970.js.map → index-30a22e52.js.map} +1 -1
  50. package/dist/cjs/index.cjs.js +1 -1
  51. package/dist/cjs/kol-abbr.cjs.entry.js +1 -1
  52. package/dist/cjs/kol-accordion.cjs.entry.js +1 -1
  53. package/dist/cjs/kol-alert-wc.cjs.entry.js +1 -1
  54. package/dist/cjs/kol-alert.cjs.entry.js +1 -1
  55. package/dist/cjs/kol-avatar-wc.cjs.entry.js +1 -1
  56. package/dist/cjs/kol-avatar.cjs.entry.js +1 -1
  57. package/dist/cjs/kol-badge.cjs.entry.js +1 -1
  58. package/dist/cjs/kol-breadcrumb.cjs.entry.js +1 -1
  59. package/dist/cjs/kol-button-link.cjs.entry.js +1 -1
  60. package/dist/cjs/kol-button-wc.cjs.entry.js +1 -1
  61. package/dist/cjs/kol-button.cjs.entry.js +1 -1
  62. package/dist/cjs/kol-card-wc.cjs.entry.js +1 -1
  63. package/dist/cjs/kol-card.cjs.entry.js +1 -1
  64. package/dist/cjs/kol-combobox.cjs.entry.js +1 -1
  65. package/dist/cjs/kol-details.cjs.entry.js +1 -1
  66. package/dist/cjs/kol-drawer.cjs.entry.js +1 -1
  67. package/dist/cjs/kol-form.cjs.entry.js +1 -1
  68. package/dist/cjs/kol-heading.cjs.entry.js +1 -1
  69. package/dist/cjs/kol-icon.cjs.entry.js +1 -1
  70. package/dist/cjs/kol-image.cjs.entry.js +1 -1
  71. package/dist/cjs/kol-input-checkbox.cjs.entry.js +1 -1
  72. package/dist/cjs/kol-input-color.cjs.entry.js +1 -1
  73. package/dist/cjs/kol-input-date.cjs.entry.js +1 -1
  74. package/dist/cjs/kol-input-email.cjs.entry.js +1 -1
  75. package/dist/cjs/kol-input-file.cjs.entry.js +1 -1
  76. package/dist/cjs/kol-input-number.cjs.entry.js +1 -1
  77. package/dist/cjs/kol-input-password.cjs.entry.js +1 -1
  78. package/dist/cjs/kol-input-radio.cjs.entry.js +1 -1
  79. package/dist/cjs/kol-input-range.cjs.entry.js +1 -1
  80. package/dist/cjs/kol-input-text.cjs.entry.js +1 -1
  81. package/dist/cjs/kol-kolibri.cjs.entry.js +1 -1
  82. package/dist/cjs/kol-link-button.cjs.entry.js +1 -1
  83. package/dist/cjs/kol-link-wc.cjs.entry.js +1 -1
  84. package/dist/cjs/kol-link.cjs.entry.js +1 -1
  85. package/dist/cjs/kol-modal.cjs.entry.js +1 -1
  86. package/dist/cjs/kol-nav.cjs.entry.js +1 -1
  87. package/dist/cjs/kol-nav.cjs.entry.js.map +1 -1
  88. package/dist/cjs/kol-pagination-wc.cjs.entry.js +4 -0
  89. package/dist/cjs/kol-pagination-wc.cjs.entry.js.map +1 -0
  90. package/dist/cjs/kol-pagination.cjs.entry.js +1 -1
  91. package/dist/cjs/kol-pagination.cjs.entry.js.map +1 -1
  92. package/dist/cjs/kol-popover-button-wc.cjs.entry.js +1 -1
  93. package/dist/cjs/kol-popover-button.cjs.entry.js +1 -1
  94. package/dist/cjs/kol-popover-button.cjs.entry.js.map +1 -1
  95. package/dist/cjs/kol-popover-wc.cjs.entry.js +1 -1
  96. package/dist/cjs/kol-progress.cjs.entry.js +1 -1
  97. package/dist/cjs/kol-quote.cjs.entry.js +1 -1
  98. package/dist/cjs/kol-select.cjs.entry.js +1 -1
  99. package/dist/cjs/kol-single-select.cjs.entry.js +1 -1
  100. package/dist/cjs/kol-skip-nav.cjs.entry.js +1 -1
  101. package/dist/cjs/kol-spin.cjs.entry.js +1 -1
  102. package/dist/cjs/kol-split-button.cjs.entry.js +1 -1
  103. package/dist/cjs/kol-table-settings-wc.cjs.entry.js +1 -1
  104. package/dist/cjs/kol-table-stateful.cjs.entry.js +1 -1
  105. package/dist/cjs/kol-table-stateful.cjs.entry.js.map +1 -1
  106. package/dist/cjs/kol-table-stateless-wc.cjs.entry.js +1 -1
  107. package/dist/cjs/kol-table-stateless.cjs.entry.js +1 -1
  108. package/dist/cjs/kol-table-stateless.cjs.entry.js.map +1 -1
  109. package/dist/cjs/kol-tabs.cjs.entry.js +1 -1
  110. package/dist/cjs/kol-textarea.cjs.entry.js +1 -1
  111. package/dist/cjs/kol-toast-container.cjs.entry.js +1 -1
  112. package/dist/cjs/kol-toolbar.cjs.entry.js +1 -1
  113. package/dist/cjs/kol-tooltip-wc.cjs.entry.js +1 -1
  114. package/dist/cjs/kol-tree-item-wc.cjs.entry.js +1 -1
  115. package/dist/cjs/kol-tree-item.cjs.entry.js +1 -1
  116. package/dist/cjs/kol-tree-wc.cjs.entry.js +1 -1
  117. package/dist/cjs/kol-tree.cjs.entry.js +1 -1
  118. package/dist/cjs/kol-version.cjs.entry.js +1 -1
  119. package/dist/cjs/kolibri.cjs.js +1 -1
  120. package/dist/cjs/loader.cjs.js +1 -1
  121. package/dist/cjs/test-component.cjs.entry.js +1 -1
  122. package/dist/components/align-floating-elements.js +1 -1
  123. package/dist/components/align-floating-elements.js.map +1 -1
  124. package/dist/components/component-names.js +1 -1
  125. package/dist/components/component-names.js.map +1 -1
  126. package/dist/components/kol-card-wc.js +1 -1
  127. package/dist/components/kol-nav.js +1 -1
  128. package/dist/components/kol-nav.js.map +1 -1
  129. package/dist/components/kol-pagination-wc.d.ts +11 -0
  130. package/dist/components/kol-pagination-wc.js +4 -0
  131. package/dist/components/kol-pagination-wc.js.map +1 -0
  132. package/dist/components/kol-pagination.js +1 -1
  133. package/dist/components/kol-pagination.js.map +1 -1
  134. package/dist/components/kol-popover-button-wc.js +1 -1
  135. package/dist/components/kol-popover-button.js +1 -1
  136. package/dist/components/kol-popover-button.js.map +1 -1
  137. package/dist/components/kol-popover-wc.js +1 -1
  138. package/dist/components/kol-progress.js +1 -1
  139. package/dist/components/kol-quote.js +1 -1
  140. package/dist/components/kol-select.js +1 -1
  141. package/dist/components/kol-single-select.js +1 -1
  142. package/dist/components/kol-skip-nav.js +1 -1
  143. package/dist/components/kol-spin.js +1 -1
  144. package/dist/components/kol-split-button.js +1 -1
  145. package/dist/components/kol-table-settings-wc.js +1 -1
  146. package/dist/components/kol-table-stateful.js +1 -1
  147. package/dist/components/kol-table-stateful.js.map +1 -1
  148. package/dist/components/kol-table-stateless-wc.js +1 -1
  149. package/dist/components/kol-table-stateless.js +1 -1
  150. package/dist/components/kol-table-stateless.js.map +1 -1
  151. package/dist/components/kol-tabs.js +1 -1
  152. package/dist/components/kol-textarea.js +1 -1
  153. package/dist/components/kol-toast-container.js +1 -1
  154. package/dist/components/kol-toolbar.js +1 -1
  155. package/dist/components/kol-tooltip-wc.js +1 -1
  156. package/dist/components/kol-tree-item-wc.js +1 -1
  157. package/dist/components/kol-tree-item.js +1 -1
  158. package/dist/components/kol-tree-wc.js +1 -1
  159. package/dist/components/kol-tree.js +1 -1
  160. package/dist/components/kol-version.js +1 -1
  161. package/dist/esm/{Alert-bea534f9.js → Alert-958f3398.js} +1 -1
  162. package/dist/esm/{Alert-bea534f9.js.map → Alert-958f3398.js.map} +1 -1
  163. package/dist/esm/{Collapsible-1510d0ad.js → Collapsible-4b9d502b.js} +1 -1
  164. package/dist/esm/{Collapsible-1510d0ad.js.map → Collapsible-4b9d502b.js.map} +1 -1
  165. package/dist/esm/{CustomSuggestionsOptionsGroup-ecfb3933.js → CustomSuggestionsOptionsGroup-9d4c69f2.js} +1 -1
  166. package/dist/esm/{CustomSuggestionsOptionsGroup-ecfb3933.js.map → CustomSuggestionsOptionsGroup-9d4c69f2.js.map} +1 -1
  167. package/dist/esm/{FieldControlStateWrapper-78f71063.js → FieldControlStateWrapper-1f7082e1.js} +1 -1
  168. package/dist/esm/{FieldControlStateWrapper-78f71063.js.map → FieldControlStateWrapper-1f7082e1.js.map} +1 -1
  169. package/dist/esm/{Heading-0a6e428a.js → Heading-f5d7afdb.js} +1 -1
  170. package/dist/esm/{Heading-0a6e428a.js.map → Heading-f5d7afdb.js.map} +1 -1
  171. package/dist/esm/Icon-5bcd50c0.js +4 -0
  172. package/dist/esm/{Icon-5ed61d01.js.map → Icon-5bcd50c0.js.map} +1 -1
  173. package/dist/esm/Input-8997c5d8.js +4 -0
  174. package/dist/esm/{Input-c1657cf4.js.map → Input-8997c5d8.js.map} +1 -1
  175. package/dist/esm/{InputStateWrapper-54e926f1.js → InputStateWrapper-8c4f75b0.js} +1 -1
  176. package/dist/esm/{InputStateWrapper-54e926f1.js.map → InputStateWrapper-8c4f75b0.js.map} +1 -1
  177. package/dist/esm/InternalUnderlinedBadgeText-b1cb6f38.js +4 -0
  178. package/dist/esm/{InternalUnderlinedBadgeText-1f0b9da7.js.map → InternalUnderlinedBadgeText-b1cb6f38.js.map} +1 -1
  179. package/dist/esm/{Span-4dcea6ad.js → Span-df9a9997.js} +1 -1
  180. package/dist/esm/{Span-4dcea6ad.js.map → Span-df9a9997.js.map} +1 -1
  181. package/dist/esm/align-floating-elements-9459ccc3.js +4 -0
  182. package/dist/esm/align-floating-elements-9459ccc3.js.map +1 -0
  183. package/dist/esm/{app-globals-7bc87cc4.js → app-globals-d408b24c.js} +1 -1
  184. package/dist/esm/{app-globals-7bc87cc4.js.map → app-globals-d408b24c.js.map} +1 -1
  185. package/dist/esm/{associated.controller-22684481.js → associated.controller-4237c28d.js} +1 -1
  186. package/dist/esm/{associated.controller-22684481.js.map → associated.controller-4237c28d.js.map} +1 -1
  187. package/dist/esm/{bootstrap-dcdb1765.js → bootstrap-53ed580c.js} +1 -1
  188. package/dist/esm/{bootstrap-dcdb1765.js.map → bootstrap-53ed580c.js.map} +1 -1
  189. package/dist/esm/component-names-0657b355.js +4 -0
  190. package/dist/esm/component-names-0657b355.js.map +1 -0
  191. package/dist/esm/{controller-cf01f031.js → controller-235b6c3b.js} +1 -1
  192. package/dist/esm/{controller-cf01f031.js.map → controller-235b6c3b.js.map} +1 -1
  193. package/dist/esm/{controller-be61e935.js → controller-6008ca3f.js} +1 -1
  194. package/dist/esm/{controller-be61e935.js.map → controller-6008ca3f.js.map} +1 -1
  195. package/dist/esm/{controller-09fe6dc6.js → controller-af457692.js} +1 -1
  196. package/dist/esm/{controller-09fe6dc6.js.map → controller-af457692.js.map} +1 -1
  197. package/dist/esm/{controller-bcc5eeef.js → controller-d0a9cae2.js} +1 -1
  198. package/dist/esm/{controller-bcc5eeef.js.map → controller-d0a9cae2.js.map} +1 -1
  199. package/dist/esm/{controller-icon-64049794.js → controller-icon-b08c2823.js} +1 -1
  200. package/dist/esm/{controller-icon-64049794.js.map → controller-icon-b08c2823.js.map} +1 -1
  201. package/dist/esm/{dev.utils-2d90fdc8.js → dev.utils-5283c49a.js} +1 -1
  202. package/dist/esm/{dev.utils-2d90fdc8.js.map → dev.utils-5283c49a.js.map} +1 -1
  203. package/dist/esm/{devtools-d59f3183.js → devtools-2b094e3e.js} +1 -1
  204. package/dist/esm/{devtools-d59f3183.js.map → devtools-2b094e3e.js.map} +1 -1
  205. package/dist/esm/{getRenderStates-d255cc7a.js → getRenderStates-816ef7d2.js} +1 -1
  206. package/dist/esm/{getRenderStates-d255cc7a.js.map → getRenderStates-816ef7d2.js.map} +1 -1
  207. package/dist/esm/index-8eb636a7.js +4 -0
  208. package/dist/esm/{index-4d380356.js.map → index-8eb636a7.js.map} +1 -1
  209. package/dist/esm/index.js +1 -1
  210. package/dist/esm/kol-abbr.entry.js +1 -1
  211. package/dist/esm/kol-accordion.entry.js +1 -1
  212. package/dist/esm/kol-alert-wc.entry.js +1 -1
  213. package/dist/esm/kol-alert.entry.js +1 -1
  214. package/dist/esm/kol-avatar-wc.entry.js +1 -1
  215. package/dist/esm/kol-avatar.entry.js +1 -1
  216. package/dist/esm/kol-badge.entry.js +1 -1
  217. package/dist/esm/kol-breadcrumb.entry.js +1 -1
  218. package/dist/esm/kol-button-link.entry.js +1 -1
  219. package/dist/esm/kol-button-wc.entry.js +1 -1
  220. package/dist/esm/kol-button.entry.js +1 -1
  221. package/dist/esm/kol-card-wc.entry.js +1 -1
  222. package/dist/esm/kol-card.entry.js +1 -1
  223. package/dist/esm/kol-combobox.entry.js +1 -1
  224. package/dist/esm/kol-details.entry.js +1 -1
  225. package/dist/esm/kol-drawer.entry.js +1 -1
  226. package/dist/esm/kol-form.entry.js +1 -1
  227. package/dist/esm/kol-heading.entry.js +1 -1
  228. package/dist/esm/kol-icon.entry.js +1 -1
  229. package/dist/esm/kol-image.entry.js +1 -1
  230. package/dist/esm/kol-input-checkbox.entry.js +1 -1
  231. package/dist/esm/kol-input-color.entry.js +1 -1
  232. package/dist/esm/kol-input-date.entry.js +1 -1
  233. package/dist/esm/kol-input-email.entry.js +1 -1
  234. package/dist/esm/kol-input-file.entry.js +1 -1
  235. package/dist/esm/kol-input-number.entry.js +1 -1
  236. package/dist/esm/kol-input-password.entry.js +1 -1
  237. package/dist/esm/kol-input-radio.entry.js +1 -1
  238. package/dist/esm/kol-input-range.entry.js +1 -1
  239. package/dist/esm/kol-input-text.entry.js +1 -1
  240. package/dist/esm/kol-kolibri.entry.js +1 -1
  241. package/dist/esm/kol-link-button.entry.js +1 -1
  242. package/dist/esm/kol-link-wc.entry.js +1 -1
  243. package/dist/esm/kol-link.entry.js +1 -1
  244. package/dist/esm/kol-modal.entry.js +1 -1
  245. package/dist/esm/kol-nav.entry.js +1 -1
  246. package/dist/esm/kol-nav.entry.js.map +1 -1
  247. package/dist/esm/kol-pagination-wc.entry.js +4 -0
  248. package/dist/esm/kol-pagination-wc.entry.js.map +1 -0
  249. package/dist/esm/kol-pagination.entry.js +1 -1
  250. package/dist/esm/kol-pagination.entry.js.map +1 -1
  251. package/dist/esm/kol-popover-button-wc.entry.js +1 -1
  252. package/dist/esm/kol-popover-button.entry.js +1 -1
  253. package/dist/esm/kol-popover-button.entry.js.map +1 -1
  254. package/dist/esm/kol-popover-wc.entry.js +1 -1
  255. package/dist/esm/kol-progress.entry.js +1 -1
  256. package/dist/esm/kol-quote.entry.js +1 -1
  257. package/dist/esm/kol-select.entry.js +1 -1
  258. package/dist/esm/kol-single-select.entry.js +1 -1
  259. package/dist/esm/kol-skip-nav.entry.js +1 -1
  260. package/dist/esm/kol-spin.entry.js +1 -1
  261. package/dist/esm/kol-split-button.entry.js +1 -1
  262. package/dist/esm/kol-table-settings-wc.entry.js +1 -1
  263. package/dist/esm/kol-table-stateful.entry.js +1 -1
  264. package/dist/esm/kol-table-stateful.entry.js.map +1 -1
  265. package/dist/esm/kol-table-stateless-wc.entry.js +1 -1
  266. package/dist/esm/kol-table-stateless.entry.js +1 -1
  267. package/dist/esm/kol-table-stateless.entry.js.map +1 -1
  268. package/dist/esm/kol-tabs.entry.js +1 -1
  269. package/dist/esm/kol-textarea.entry.js +1 -1
  270. package/dist/esm/kol-toast-container.entry.js +1 -1
  271. package/dist/esm/kol-toolbar.entry.js +1 -1
  272. package/dist/esm/kol-tooltip-wc.entry.js +1 -1
  273. package/dist/esm/kol-tree-item-wc.entry.js +1 -1
  274. package/dist/esm/kol-tree-item.entry.js +1 -1
  275. package/dist/esm/kol-tree-wc.entry.js +1 -1
  276. package/dist/esm/kol-tree.entry.js +1 -1
  277. package/dist/esm/kol-version.entry.js +1 -1
  278. package/dist/esm/kolibri.js +1 -1
  279. package/dist/esm/loader.js +1 -1
  280. package/dist/esm/test-component.entry.js +1 -1
  281. package/dist/kolibri/{Alert-bea534f9.js → Alert-958f3398.js} +1 -1
  282. package/dist/kolibri/{Collapsible-1510d0ad.js → Collapsible-4b9d502b.js} +1 -1
  283. package/dist/kolibri/{CustomSuggestionsOptionsGroup-ecfb3933.js → CustomSuggestionsOptionsGroup-9d4c69f2.js} +1 -1
  284. package/dist/kolibri/{FieldControlStateWrapper-78f71063.js → FieldControlStateWrapper-1f7082e1.js} +1 -1
  285. package/dist/kolibri/{Heading-0a6e428a.js → Heading-f5d7afdb.js} +1 -1
  286. package/dist/kolibri/Icon-5bcd50c0.js +4 -0
  287. package/dist/kolibri/{Input-c1657cf4.js → Input-8997c5d8.js} +1 -1
  288. package/dist/kolibri/{InputStateWrapper-54e926f1.js → InputStateWrapper-8c4f75b0.js} +1 -1
  289. package/dist/kolibri/InternalUnderlinedBadgeText-b1cb6f38.js +4 -0
  290. package/dist/kolibri/Span-df9a9997.js +4 -0
  291. package/dist/kolibri/{Span-4dcea6ad.js.map → Span-df9a9997.js.map} +1 -1
  292. package/dist/kolibri/align-floating-elements-9459ccc3.js +4 -0
  293. package/dist/kolibri/align-floating-elements-9459ccc3.js.map +1 -0
  294. package/dist/kolibri/app-globals-d408b24c.js +4 -0
  295. package/dist/kolibri/{app-globals-7bc87cc4.js.map → app-globals-d408b24c.js.map} +1 -1
  296. package/dist/kolibri/{associated.controller-22684481.js → associated.controller-4237c28d.js} +1 -1
  297. package/dist/kolibri/{bootstrap-dcdb1765.js → bootstrap-53ed580c.js} +1 -1
  298. package/dist/kolibri/component-names-0657b355.js +4 -0
  299. package/dist/kolibri/component-names-0657b355.js.map +1 -0
  300. package/dist/kolibri/{controller-cf01f031.js → controller-235b6c3b.js} +1 -1
  301. package/dist/kolibri/{controller-be61e935.js → controller-6008ca3f.js} +1 -1
  302. package/dist/kolibri/controller-af457692.js +4 -0
  303. package/dist/kolibri/{controller-bcc5eeef.js → controller-d0a9cae2.js} +1 -1
  304. package/dist/kolibri/{controller-icon-64049794.js → controller-icon-b08c2823.js} +1 -1
  305. package/dist/kolibri/{dev.utils-2d90fdc8.js → dev.utils-5283c49a.js} +1 -1
  306. package/dist/kolibri/{devtools-d59f3183.js → devtools-2b094e3e.js} +1 -1
  307. package/dist/kolibri/{getRenderStates-d255cc7a.js → getRenderStates-816ef7d2.js} +1 -1
  308. package/dist/kolibri/{index-4d380356.js → index-8eb636a7.js} +2 -2
  309. package/dist/kolibri/{index-4d380356.js.map → index-8eb636a7.js.map} +1 -1
  310. package/dist/kolibri/index.esm.js +1 -1
  311. package/dist/kolibri/kol-abbr.entry.js +1 -1
  312. package/dist/kolibri/kol-accordion.entry.js +1 -1
  313. package/dist/kolibri/kol-alert-wc.entry.js +1 -1
  314. package/dist/kolibri/kol-alert.entry.js +1 -1
  315. package/dist/kolibri/kol-avatar-wc.entry.js +1 -1
  316. package/dist/kolibri/kol-avatar.entry.js +1 -1
  317. package/dist/kolibri/kol-badge.entry.js +1 -1
  318. package/dist/kolibri/kol-breadcrumb.entry.js +1 -1
  319. package/dist/kolibri/kol-button-link.entry.js +1 -1
  320. package/dist/kolibri/kol-button-wc.entry.js +1 -1
  321. package/dist/kolibri/kol-button.entry.js +1 -1
  322. package/dist/kolibri/kol-card-wc.entry.js +1 -1
  323. package/dist/kolibri/kol-card.entry.js +1 -1
  324. package/dist/kolibri/kol-combobox.entry.js +1 -1
  325. package/dist/kolibri/kol-details.entry.js +1 -1
  326. package/dist/kolibri/kol-drawer.entry.js +1 -1
  327. package/dist/kolibri/kol-form.entry.js +1 -1
  328. package/dist/kolibri/kol-heading.entry.js +1 -1
  329. package/dist/kolibri/kol-icon.entry.js +1 -1
  330. package/dist/kolibri/kol-image.entry.js +1 -1
  331. package/dist/kolibri/kol-input-checkbox.entry.js +1 -1
  332. package/dist/kolibri/kol-input-color.entry.js +1 -1
  333. package/dist/kolibri/kol-input-date.entry.js +1 -1
  334. package/dist/kolibri/kol-input-email.entry.js +1 -1
  335. package/dist/kolibri/kol-input-file.entry.js +1 -1
  336. package/dist/kolibri/kol-input-number.entry.js +1 -1
  337. package/dist/kolibri/kol-input-password.entry.js +1 -1
  338. package/dist/kolibri/kol-input-radio.entry.js +1 -1
  339. package/dist/kolibri/kol-input-range.entry.js +1 -1
  340. package/dist/kolibri/kol-input-text.entry.js +1 -1
  341. package/dist/kolibri/kol-kolibri.entry.js +1 -1
  342. package/dist/kolibri/kol-link-button.entry.js +1 -1
  343. package/dist/kolibri/kol-link-wc.entry.js +1 -1
  344. package/dist/kolibri/kol-link.entry.js +1 -1
  345. package/dist/kolibri/kol-modal.entry.js +1 -1
  346. package/dist/kolibri/kol-nav.entry.js +1 -1
  347. package/dist/kolibri/kol-nav.entry.js.map +1 -1
  348. package/dist/kolibri/kol-pagination-wc.entry.js +4 -0
  349. package/dist/kolibri/kol-pagination-wc.entry.js.map +1 -0
  350. package/dist/kolibri/kol-pagination.entry.js +1 -1
  351. package/dist/kolibri/kol-pagination.entry.js.map +1 -1
  352. package/dist/kolibri/kol-popover-button-wc.entry.js +1 -1
  353. package/dist/kolibri/kol-popover-button.entry.js +1 -1
  354. package/dist/kolibri/kol-popover-button.entry.js.map +1 -1
  355. package/dist/kolibri/kol-popover-wc.entry.js +1 -1
  356. package/dist/kolibri/kol-progress.entry.js +1 -1
  357. package/dist/kolibri/kol-quote.entry.js +1 -1
  358. package/dist/kolibri/kol-select.entry.js +1 -1
  359. package/dist/kolibri/kol-single-select.entry.js +1 -1
  360. package/dist/kolibri/kol-skip-nav.entry.js +1 -1
  361. package/dist/kolibri/kol-spin.entry.js +1 -1
  362. package/dist/kolibri/kol-split-button.entry.js +1 -1
  363. package/dist/kolibri/kol-table-settings-wc.entry.js +1 -1
  364. package/dist/kolibri/kol-table-stateful.entry.js +1 -1
  365. package/dist/kolibri/kol-table-stateful.entry.js.map +1 -1
  366. package/dist/kolibri/kol-table-stateless-wc.entry.js +1 -1
  367. package/dist/kolibri/kol-table-stateless-wc.entry.js.map +1 -1
  368. package/dist/kolibri/kol-table-stateless.entry.js +1 -1
  369. package/dist/kolibri/kol-table-stateless.entry.js.map +1 -1
  370. package/dist/kolibri/kol-tabs.entry.js +1 -1
  371. package/dist/kolibri/kol-textarea.entry.js +1 -1
  372. package/dist/kolibri/kol-toast-container.entry.js +1 -1
  373. package/dist/kolibri/kol-toolbar.entry.js +1 -1
  374. package/dist/kolibri/kol-tooltip-wc.entry.js +1 -1
  375. package/dist/kolibri/kol-tree-item-wc.entry.js +1 -1
  376. package/dist/kolibri/kol-tree-item-wc.entry.js.map +1 -1
  377. package/dist/kolibri/kol-tree-item.entry.js +1 -1
  378. package/dist/kolibri/kol-tree-wc.entry.js +1 -1
  379. package/dist/kolibri/kol-tree.entry.js +1 -1
  380. package/dist/kolibri/kol-version.entry.js +1 -1
  381. package/dist/kolibri/kolibri.esm.js +1 -1
  382. package/dist/kolibri/kolibri.esm.js.map +1 -1
  383. package/dist/kolibri/test-component.entry.js +1 -1
  384. package/dist/types/components/pagination/component.d.ts +46 -0
  385. package/dist/types/components/pagination/shadow.d.ts +2 -32
  386. package/dist/types/components.d.ts +101 -0
  387. package/dist/types/core/component-names.d.ts +1 -0
  388. package/doc/pagination.md +1 -1
  389. package/package.json +5 -1
  390. package/postinstall.js +38 -0
  391. package/vscode-custom-data.json +63 -0
  392. package/dist/cjs/Icon-b5637598.js +0 -4
  393. package/dist/cjs/align-floating-elements-7e50809a.js +0 -4
  394. package/dist/cjs/align-floating-elements-7e50809a.js.map +0 -1
  395. package/dist/cjs/component-names-f5f2ca3a.js +0 -4
  396. package/dist/cjs/component-names-f5f2ca3a.js.map +0 -1
  397. package/dist/cjs/index-8c157970.js +0 -4
  398. package/dist/esm/Icon-5ed61d01.js +0 -4
  399. package/dist/esm/Input-c1657cf4.js +0 -4
  400. package/dist/esm/InternalUnderlinedBadgeText-1f0b9da7.js +0 -4
  401. package/dist/esm/align-floating-elements-526ce555.js +0 -4
  402. package/dist/esm/align-floating-elements-526ce555.js.map +0 -1
  403. package/dist/esm/component-names-553d8bfa.js +0 -4
  404. package/dist/esm/component-names-553d8bfa.js.map +0 -1
  405. package/dist/esm/index-4d380356.js +0 -4
  406. package/dist/kolibri/Icon-5ed61d01.js +0 -4
  407. package/dist/kolibri/InternalUnderlinedBadgeText-1f0b9da7.js +0 -4
  408. package/dist/kolibri/Span-4dcea6ad.js +0 -4
  409. package/dist/kolibri/align-floating-elements-526ce555.js +0 -4
  410. package/dist/kolibri/align-floating-elements-526ce555.js.map +0 -1
  411. package/dist/kolibri/app-globals-7bc87cc4.js +0 -4
  412. package/dist/kolibri/component-names-553d8bfa.js +0 -4
  413. package/dist/kolibri/component-names-553d8bfa.js.map +0 -1
  414. package/dist/kolibri/controller-09fe6dc6.js +0 -4
  415. /package/dist/kolibri/{Alert-bea534f9.js.map → Alert-958f3398.js.map} +0 -0
  416. /package/dist/kolibri/{Collapsible-1510d0ad.js.map → Collapsible-4b9d502b.js.map} +0 -0
  417. /package/dist/kolibri/{CustomSuggestionsOptionsGroup-ecfb3933.js.map → CustomSuggestionsOptionsGroup-9d4c69f2.js.map} +0 -0
  418. /package/dist/kolibri/{FieldControlStateWrapper-78f71063.js.map → FieldControlStateWrapper-1f7082e1.js.map} +0 -0
  419. /package/dist/kolibri/{Heading-0a6e428a.js.map → Heading-f5d7afdb.js.map} +0 -0
  420. /package/dist/kolibri/{Icon-5ed61d01.js.map → Icon-5bcd50c0.js.map} +0 -0
  421. /package/dist/kolibri/{Input-c1657cf4.js.map → Input-8997c5d8.js.map} +0 -0
  422. /package/dist/kolibri/{InputStateWrapper-54e926f1.js.map → InputStateWrapper-8c4f75b0.js.map} +0 -0
  423. /package/dist/kolibri/{InternalUnderlinedBadgeText-1f0b9da7.js.map → InternalUnderlinedBadgeText-b1cb6f38.js.map} +0 -0
  424. /package/dist/kolibri/{associated.controller-22684481.js.map → associated.controller-4237c28d.js.map} +0 -0
  425. /package/dist/kolibri/{bootstrap-dcdb1765.js.map → bootstrap-53ed580c.js.map} +0 -0
  426. /package/dist/kolibri/{controller-cf01f031.js.map → controller-235b6c3b.js.map} +0 -0
  427. /package/dist/kolibri/{controller-be61e935.js.map → controller-6008ca3f.js.map} +0 -0
  428. /package/dist/kolibri/{controller-09fe6dc6.js.map → controller-af457692.js.map} +0 -0
  429. /package/dist/kolibri/{controller-bcc5eeef.js.map → controller-d0a9cae2.js.map} +0 -0
  430. /package/dist/kolibri/{controller-icon-64049794.js.map → controller-icon-b08c2823.js.map} +0 -0
  431. /package/dist/kolibri/{dev.utils-2d90fdc8.js.map → dev.utils-5283c49a.js.map} +0 -0
  432. /package/dist/kolibri/{devtools-d59f3183.js.map → devtools-2b094e3e.js.map} +0 -0
  433. /package/dist/kolibri/{getRenderStates-d255cc7a.js.map → getRenderStates-816ef7d2.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["paginationPositionPropTypeOptions","validatePaginationPosition","component","value","watchValidator","includes","Set","join","defaultValue","defaultStyleCss","KolTableStatefulDefaultStyle0","PAGINATION_OPTIONS","paginationValidator","KolTableStateful","this","catchRef","ref","tableWcRef","sortData","showPagination","pageStartSlice","pageEndSlice","disableSort","handlePagination","onClick","event","page","_a","state","_pagination","_on","setState","Object","assign","_page","onChangePage","onChangePageSize","pageSize","_pageSize","onSelectionChange","stopPropagation","updateSortedData","_data","sortedData","length","sort","a","b","index","data","result","compareFn","direction","_allowMultiSort","_dataFoot","_headers","horizontal","vertical","_label","_minWidth","_max","_sortedData","_paginationPosition","validateAllowMultiSort","validateData","validateTableData","afterPatch","setTimeout","validateDataFoot","validateTableDataFoot","changeCellSort","headerCell","key","findIndex","settings","splice","push","label","validateHeaders","emptyStringByArrayHandler","objectObjectHandler","parseJson","e","hooks","beforePatch","nextValue","applySort","headers","hasSortedCells","forEach","cell","sortDirection","_b","_c","_d","devHint","validateLabel","required","validateMinWidth","watchString","undefined","validateSelection","validateTableSelection","validateOn","validateTableStatefulCallbacks","validateTableSettings","validatePagination","componentDidLoad","addEventListener","KolEvent","selectionChange","disconnectedCallback","removeEventListener","componentWillLoad","_selection","_tableSettings","selectDisplayedData","slice","renderPagination","position","translate","placeholders","h","class","start","toString","end","total","Array","isArray","KolPaginationTag","_boundaryCount","_customClass","_pageSizeOptions","_siblingCount","_tooltipAlign","getHeaderCellSortState","find","handleSort","flat","getSelectedData","selectedKeys","selection","keyPropertyName","filter","item","multiple","handleSelectionChange","selectedData","Callback","host","dispatchDomEvent","getSelection","render","displayedData","paginationTop","paginationBottom","headerCells","map","row","_f","_e","column","Host","KolTableStatelessWcTag","_headerCells","onSort","_","payload"],"sources":["src/schema/props/pagination-position.ts","src/components/table-stateful/style.scss?tag=kol-table-stateful&mode=default&encapsulation=shadow","src/components/table-stateful/shadow.tsx"],"sourcesContent":["/* types */\nimport type { Generic } from 'adopted-style-sheets';\nimport { watchValidator } from '../utils/prop.validators';\n\nconst paginationPositionPropTypeOptions = ['top', 'bottom', 'both'] as const;\nexport type PaginationPositionPropType = (typeof paginationPositionPropTypeOptions)[number];\n\n/**\n * Defines which position should be used for presentation.\n */\nexport type PropPaginationPosition = {\n\tpaginationPosition: PaginationPositionPropType;\n};\n\n/* validator */\nexport const validatePaginationPosition = (component: Generic.Element.Component, value?: PaginationPositionPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t`_paginationPosition`,\n\t\t(value) => typeof value === 'string' && paginationPositionPropTypeOptions.includes(value),\n\t\tnew Set([`PaginationPositionPropType {${paginationPositionPropTypeOptions.join(', ')}`]),\n\t\tvalue,\n\t\t{\n\t\t\tdefaultValue: 'bottom',\n\t\t},\n\t);\n};\n","@use '../../styles/global' as *;\n@use '../../styles/kol-alert-mixin' as *;\n@use '../@shared/kol-button-mixin' as *;\n@use '../@shared/kol-popover-button-mixin' as *;\n@use '../@shared/kol-table-stateless-mixin' as *;\n@use '../@shared/mixins' as *;\n\n@include kol-alert;\n@include kol-button-styles('kol-button');\n@include kol-popover-button-styles;\n@include kol-table-stateless-styles;\n\n@layer kol-component {\n\t.kol-table-stateful {\n\t\t&__pagination,\n\t\t&__pagination-wrapper {\n\t\t\tdisplay: grid;\n\t\t\tplace-items: center;\n\n\t\t\t@media (min-width: 1024px) {\n\t\t\t\tgrid-auto-flow: column;\n\t\t\t}\n\t\t}\n\t}\n\n\t.kol-pagination {\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\n\t\t@media (min-width: 1024px) {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t@media (max-width: 1024px) {\n\t\t\tflex-direction: column;\n\t\t}\n\t}\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-tabindex */\nimport type { JSX } from '@stencil/core';\nimport { Component, Element, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport { KolPaginationTag, KolTableStatelessWcTag } from '../../core/component-names';\nimport { translate } from '../../i18n';\nimport type {\n\tKoliBriDataCompareFn,\n\tKoliBriPaginationButtonCallbacks,\n\tKoliBriSortDirection,\n\tKoliBriTableDataType,\n\tKoliBriTableHeaderCellWithLogic,\n\tKoliBriTableHeaders,\n\tKoliBriTablePaginationProps,\n\tLabelPropType,\n\tPaginationPositionPropType,\n\tSortEventPayload,\n\tStringified,\n\tTableAPI,\n\tTableDataFootPropType,\n\tTableDataPropType,\n\tTableHeaderCells,\n\tTableSelectionPropType,\n\tTableStatefulCallbacksPropType,\n\tTableStates,\n} from '../../schema';\nimport {\n\tdevHint,\n\temptyStringByArrayHandler,\n\tobjectObjectHandler,\n\tparseJson,\n\tsetState,\n\tvalidateLabel,\n\tvalidatePaginationPosition,\n\tvalidateTableData,\n\tvalidateTableDataFoot,\n\tvalidateTableSelection,\n\tvalidateTableStatefulCallbacks,\n\twatchString,\n\twatchValidator,\n} from '../../schema';\nimport { Callback } from '../../schema/enums';\nimport type { MinWidthPropType } from '../../schema/props/min-width';\nimport { dispatchDomEvent, KolEvent } from '../../utils/events';\nimport type { TableSettingsPropType } from '../../schema/props/table-settings';\nimport { validateTableSettings } from '../../schema/props/table-settings';\n\nconst PAGINATION_OPTIONS = [10, 20, 50, 100];\n\nconst paginationValidator = (value: unknown) => value === true || value === '' /* true */ || (typeof value === 'object' && value !== null);\n\ntype SortData = {\n\tlabel: string;\n\tkey: string;\n\tcompareFn: KoliBriDataCompareFn;\n\tdirection: KoliBriSortDirection;\n};\n\n@Component({\n\ttag: 'kol-table-stateful',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolTableStateful implements TableAPI {\n\t@Element() private readonly host?: HTMLKolTableStatelessWcElement;\n\tprivate tableWcRef?: HTMLKolTableStatelessWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolTableStatelessWcElement) => {\n\t\tthis.tableWcRef = ref;\n\t};\n\n\tprivate sortData: SortData[] = [];\n\tprivate showPagination = false;\n\tprivate pageStartSlice = 0;\n\tprivate pageEndSlice = 10;\n\tprivate disableSort = false;\n\n\t/**\n\t * Defines whether to allow multi sort.\n\t */\n\t@Prop() public _allowMultiSort?: boolean;\n\n\t/**\n\t * Defines the primary table data.\n\t */\n\t@Prop() public _data!: Stringified<KoliBriTableDataType[]>;\n\n\t/**\n\t * Defines the data for the table footer.\n\t */\n\t@Prop() public _dataFoot?: Stringified<KoliBriTableDataType[]>;\n\n\t/**\n\t * Defines the horizontal and vertical table headers.\n\t */\n\t@Prop() public _headers!: Stringified<KoliBriTableHeaders>;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Defines the table min-width (CSS width values).\n\t */\n\t@Prop() public _minWidth!: MinWidthPropType;\n\n\t/**\n\t * Defines whether to show the data distributed over multiple pages.\n\t */\n\t@Prop() public _pagination?: boolean | Stringified<KoliBriTablePaginationProps>;\n\t/**\n\t * Controls the position of the pagination.\n\t */\n\t@Prop() public _paginationPosition?: PaginationPositionPropType = 'bottom';\n\t/**\n\t * Defines how rows can be selected and the current selection.\n\t */\n\t@Prop() public _selection?: TableSelectionPropType;\n\t/**\n\t * Defines the callback functions for table events.\n\t */\n\t@Prop() public _on?: TableStatefulCallbacksPropType;\n\n\t/**\n\t * Defines the table settings including column visibility, order and width.\n\t */\n\t@Prop() public _tableSettings?: TableSettingsPropType;\n\n\t@State() public state: TableStates = {\n\t\t_allowMultiSort: false,\n\t\t_data: [],\n\t\t_dataFoot: [],\n\t\t_headers: {\n\t\t\thorizontal: [],\n\t\t\tvertical: [],\n\t\t},\n\t\t_label: '', // ⚠ required\n\t\t_minWidth: 'auto',\n\t\t_pagination: {\n\t\t\t_page: 1,\n\t\t\t_pageSize: 10,\n\t\t\t_max: 0,\n\t\t},\n\t\t_sortedData: [],\n\t\t_paginationPosition: 'bottom',\n\t};\n\n\t@Watch('_allowMultiSort')\n\tpublic validateAllowMultiSort(value?: boolean): void {\n\t\twatchValidator(this, '_allowMultiSort', () => true, new Set(['boolean']), value, {\n\t\t\tdefaultValue: false,\n\t\t});\n\t}\n\n\t@Watch('_data')\n\tpublic validateData(value?: TableDataPropType): void {\n\t\tvalidateTableData(this, value, {\n\t\t\tafterPatch: () => {\n\t\t\t\t// TODO: kein guter Hack (endless loop)\n\t\t\t\tsetTimeout(this.updateSortedData);\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_dataFoot')\n\tpublic validateDataFoot(value?: TableDataFootPropType): void {\n\t\tvalidateTableDataFoot(this, value, {\n\t\t\tafterPatch: () => {\n\t\t\t\tsetTimeout(this.updateSortedData);\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_paginationPosition')\n\tpublic validatePaginationPosition(value?: PaginationPositionPropType): void {\n\t\tvalidatePaginationPosition(this, value);\n\t}\n\n\t/**\n\t * Handles sorting logic for table columns.\n\t * If multi-sort is enabled (`_allowMultiSort`), multiple columns can be sorted at once.\n\t * Otherwise, sorting is cleared when switching between columns.\n\t */\n\tprivate changeCellSort(headerCell: KoliBriTableHeaderCellWithLogic) {\n\t\tif (typeof headerCell.compareFn === 'function') {\n\t\t\tif (!this.state._allowMultiSort && headerCell.key !== this.sortData[0]?.key) {\n\t\t\t\t// clear when another column is sorted and multi sort is not allowed\n\t\t\t\tthis.sortData = [];\n\t\t\t}\n\n\t\t\tconst index = this.sortData.findIndex((value) => value.key === headerCell.key);\n\t\t\tif (index >= 0) {\n\t\t\t\tconst settings = this.sortData[index];\n\t\t\t\tswitch (settings.direction) {\n\t\t\t\t\tcase 'ASC':\n\t\t\t\t\t\tsettings.direction = 'DESC';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'DESC':\n\t\t\t\t\t\tthis.sortData.splice(index, 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsettings.direction = 'ASC';\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if (headerCell.key) {\n\t\t\t\tthis.sortData.push({\n\t\t\t\t\tlabel: headerCell.label,\n\t\t\t\t\tkey: headerCell.key,\n\t\t\t\t\tcompareFn: headerCell.compareFn,\n\t\t\t\t\tdirection: 'ASC',\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tthis.updateSortedData();\n\t\t}\n\t}\n\n\t@Watch('_headers')\n\tpublic validateHeaders(value?: Stringified<KoliBriTableHeaders>): void {\n\t\t/**\n\t\t * - es darf maximal ein Header als primary markiert werden (last win)\n\t\t * - der primary-Header entscheidet implizit über _order und _orientation\n\t\t * - primary-Headers müssen das key-Property setzen\n\t\t * - nicht primary-Headers müssen das key-Property nicht setzen (wird ignoriert)\n\t\t * - _order: wird durch den primary-Header geregelt\n\t\t * - _orientation: wird durch den primary-Header geregelt\n\t\t * - sobald ein Header sortierbar ist, darf es nur noch entweder horizontale\n\t\t * oder vertikale Header geben, aber nicht mehr beides\n\t\t */\n\t\temptyStringByArrayHandler(value, () => {\n\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<KoliBriTableHeaders>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\twatchValidator(this, '_headers', (value): boolean => typeof value === 'object' && value !== null, new Set(['KoliBriTableHeaders']), value, {\n\t\t\t\t\thooks: {\n\t\t\t\t\t\tbeforePatch: (nextValue: unknown) => {\n\t\t\t\t\t\t\tconst applySort = (headers: KoliBriTableHeaderCellWithLogic[]) => {\n\t\t\t\t\t\t\t\tlet hasSortedCells = false;\n\t\t\t\t\t\t\t\theaders.forEach((cell) => {\n\t\t\t\t\t\t\t\t\tconst key = cell.key;\n\t\t\t\t\t\t\t\t\tif (!key) {\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tconst sortDirection = cell.sortDirection;\n\t\t\t\t\t\t\t\t\tif (sortDirection === 'ASC' || sortDirection === 'DESC') {\n\t\t\t\t\t\t\t\t\t\tif (typeof cell.compareFn === 'function') {\n\t\t\t\t\t\t\t\t\t\t\tif (this.state._allowMultiSort || this.sortData.length === 0) {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.sortData.push({ label: cell.label, key, compareFn: cell.compareFn, direction: sortDirection });\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\thasSortedCells = true;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tif (hasSortedCells) {\n\t\t\t\t\t\t\t\t\tsetTimeout(() => this.updateSortedData());\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\tconst headers: KoliBriTableHeaders = nextValue as KoliBriTableHeaders;\n\t\t\t\t\t\t\theaders.horizontal?.forEach(applySort);\n\t\t\t\t\t\t\theaders.vertical?.forEach(applySort);\n\n\t\t\t\t\t\t\tif (headers.horizontal && headers.vertical && headers.horizontal?.length > 0 && headers.vertical?.length > 0) {\n\t\t\t\t\t\t\t\tthis.disableSort = true;\n\t\t\t\t\t\t\t\tdevHint(\n\t\t\t\t\t\t\t\t\t`Table: You can not sort the table data, if horizontal and vertical headers are defined at the same time. (https://github.com/public-ui/kolibri/issues/2372)`,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_minWidth')\n\tpublic validateMinWidth(value?: string): void {\n\t\twatchString(this, '_minWidth', value, {\n\t\t\tdefaultValue: undefined,\n\t\t});\n\t}\n\n\t@Watch('_selection')\n\tpublic validateSelection(value?: TableSelectionPropType): void {\n\t\tvalidateTableSelection(this, value);\n\t}\n\t@Watch('_on')\n\tpublic validateOn(value?: TableStatefulCallbacksPropType): void {\n\t\tvalidateTableStatefulCallbacks(this, value);\n\t}\n\n\t@Watch('_tableSettings')\n\tpublic validateTableSettings(value?: TableSettingsPropType): void {\n\t\tvalidateTableSettings(this, value);\n\t}\n\n\tprivate readonly handlePagination: KoliBriPaginationButtonCallbacks = {\n\t\tonClick: (event: Event, page: number) => {\n\t\t\tif (typeof this.state._pagination._on?.onClick === 'function') {\n\t\t\t\tthis.state._pagination._on.onClick(event, page);\n\t\t\t}\n\t\t\tsetState(this, '_pagination', {\n\t\t\t\t...this.state._pagination,\n\t\t\t\t_page: page,\n\t\t\t});\n\t\t},\n\t\tonChangePage: (event: Event, page: number) => {\n\t\t\tif (typeof this.state._pagination._on?.onChangePage === 'function') {\n\t\t\t\tthis.state._pagination._on.onChangePage(event, page);\n\t\t\t}\n\t\t\tsetState(this, '_pagination', {\n\t\t\t\t...this.state._pagination,\n\t\t\t\t_page: page,\n\t\t\t});\n\t\t},\n\t\tonChangePageSize: (event: Event, pageSize: number) => {\n\t\t\tif (typeof this.state._pagination._on?.onChangePageSize === 'function') {\n\t\t\t\tthis.state._pagination._on.onChangePageSize(event, pageSize);\n\t\t\t}\n\t\t\tsetState(this, '_pagination', {\n\t\t\t\t...this.state._pagination,\n\t\t\t\t_pageSize: pageSize,\n\t\t\t});\n\t\t\tsetState(this, '_pageSize', pageSize);\n\t\t},\n\t};\n\n\t@Watch('_pagination')\n\tpublic validatePagination(value?: boolean | Stringified<KoliBriTablePaginationProps>): void {\n\t\ttry {\n\t\t\tvalue = parseJson<boolean | KoliBriTablePaginationProps>(value);\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch (e) {\n\t\t\t// value behält den ursprünglichen Wert\n\t\t}\n\n\t\tthis.showPagination = paginationValidator(value);\n\n\t\twatchValidator<boolean | Stringified<KoliBriTablePaginationProps>>(\n\t\t\tthis,\n\t\t\t'_pagination',\n\t\t\tpaginationValidator,\n\t\t\tnew Set(['boolean', 'KoliBriTablePagination']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: {\n\t\t\t\t\t_page: 1,\n\t\t\t\t\t_pageSize: 10,\n\t\t\t\t\t_max: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t}\n\n\tprivate onSelectionChange = (event: Event): void => {\n\t\t/* Stop propagation for selectionChange event from table-stateless component because table-stateful emits its own selectionChange event. */\n\t\tevent.stopPropagation();\n\t};\n\n\tpublic componentDidLoad(): void {\n\t\tthis.tableWcRef?.addEventListener(KolEvent.selectionChange, this.onSelectionChange);\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tthis.tableWcRef?.removeEventListener(KolEvent.selectionChange, this.onSelectionChange);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAllowMultiSort(this._allowMultiSort);\n\t\tthis.validateData(this._data);\n\t\tthis.validateDataFoot(this._dataFoot);\n\t\tthis.validateHeaders(this._headers);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateMinWidth(this._minWidth);\n\t\tthis.validateOn(this._on);\n\t\tthis.validatePagination(this._pagination);\n\t\tthis.validatePaginationPosition(this._paginationPosition);\n\t\tthis.validateSelection(this._selection);\n\t\tthis.validateTableSettings(this._tableSettings);\n\t}\n\n\tprivate selectDisplayedData(data: KoliBriTableDataType[], pageSize: number, page: number): KoliBriTableDataType[] {\n\t\tif (typeof pageSize === 'number' && pageSize > 0 && typeof page === 'number' && page > 0) {\n\t\t\tthis.pageStartSlice = pageSize * (page - 1);\n\t\t\tthis.pageEndSlice = pageSize * page > data.length ? data.length : pageSize * page;\n\t\t\treturn data.slice(this.pageStartSlice, this.pageEndSlice);\n\t\t} else {\n\t\t\tthis.pageStartSlice = 0;\n\t\t\tthis.pageEndSlice = data.length;\n\t\t\treturn data;\n\t\t}\n\t}\n\n\tprivate updateSortedData = () => {\n\t\tif (this.disableSort) {\n\t\t\tsetState(this, '_sortedData', this.state._data);\n\t\t\treturn;\n\t\t}\n\n\t\tconst sortedData: KoliBriTableDataType[] = [...this.state._data];\n\t\tif (this.sortData.length > 0) {\n\t\t\tsortedData.sort((a: KoliBriTableDataType, b: KoliBriTableDataType) => {\n\t\t\t\tfor (let index = 0; index < this.sortData.length; index++) {\n\t\t\t\t\tconst data = this.sortData[index];\n\t\t\t\t\tconst result = data.compareFn(a, b);\n\t\t\t\t\tif (result !== 0) {\n\t\t\t\t\t\treturn data.direction === 'ASC' ? result : -result;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn 0;\n\t\t\t});\n\t\t}\n\t\tsetState(this, '_sortedData', sortedData);\n\t};\n\n\t/**\n\t * Renders the pagination controls for the table, showing the current visible data range\n\t * and providing navigation between different pages.\n\t *\n\t * @returns {JSX.Element} The rendered pagination controls including page range and navigation.\n\t */\n\tprivate renderPagination(position: 'top' | 'bottom'): JSX.Element {\n\t\tconst label = translate('kol-table-pagination-label', {\n\t\t\tplaceholders: {\n\t\t\t\tlabel: `${this.state._label} (${translate(`kol-pagination-position-${position}`)})`,\n\t\t\t},\n\t\t});\n\t\treturn (\n\t\t\t<div class={`kol-table-stateful__pagination kol-table-stateful__pagination--${this.state._paginationPosition}`}>\n\t\t\t\t<span>\n\t\t\t\t\t{translate('kol-table-visible-range', {\n\t\t\t\t\t\tplaceholders: {\n\t\t\t\t\t\t\tstart: this.pageEndSlice > 0 ? (this.pageStartSlice + 1).toString() : '0',\n\t\t\t\t\t\t\tend: this.pageEndSlice.toString(),\n\t\t\t\t\t\t\ttotal:\n\t\t\t\t\t\t\t\tthis.state._pagination && this.state._pagination._max > 0\n\t\t\t\t\t\t\t\t\t? this.state._pagination._max.toString()\n\t\t\t\t\t\t\t\t\t: Array.isArray(this.state._data)\n\t\t\t\t\t\t\t\t\t\t? this.state._data.length.toString()\n\t\t\t\t\t\t\t\t\t\t: '0',\n\t\t\t\t\t\t},\n\t\t\t\t\t})}\n\t\t\t\t</span>\n\t\t\t\t<div class=\"kol-table-stateful__pagination-wrapper\">\n\t\t\t\t\t<KolPaginationTag\n\t\t\t\t\t\tclass=\"test\"\n\t\t\t\t\t\t_boundaryCount={this.state._pagination._boundaryCount}\n\t\t\t\t\t\t_customClass={this.state._pagination._customClass}\n\t\t\t\t\t\t_on={this.handlePagination}\n\t\t\t\t\t\t_page={this.state._pagination._page}\n\t\t\t\t\t\t_pageSize={this.state._pagination._pageSize}\n\t\t\t\t\t\t_pageSizeOptions={this.state._pagination._pageSizeOptions || PAGINATION_OPTIONS}\n\t\t\t\t\t\t_siblingCount={this.state._pagination._siblingCount}\n\t\t\t\t\t\t_tooltipAlign=\"bottom\"\n\t\t\t\t\t\t_max={this.state._pagination._max || this.state._pagination._max || this.state._data.length}\n\t\t\t\t\t\t_label={label}\n\t\t\t\t\t></KolPaginationTag>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate getHeaderCellSortState(headerCell: KoliBriTableHeaderCellWithLogic): KoliBriSortDirection | undefined {\n\t\tif (!this.disableSort && typeof headerCell.compareFn === 'function') {\n\t\t\tif (headerCell.key) {\n\t\t\t\tconst data = this.sortData.find((value) => value.key === headerCell.key);\n\t\t\t\tif (data?.direction) {\n\t\t\t\t\treturn data.direction;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn 'NOS';\n\t\t}\n\t}\n\n\tprivate handleSort({ key }: SortEventPayload) {\n\t\tconst headerCell = [...(this.state._headers.horizontal || []).flat(), ...(this.state._headers.vertical || []).flat()].find((cell) => cell.key === key);\n\t\tif (headerCell) {\n\t\t\tthis.changeCellSort(headerCell);\n\t\t}\n\t}\n\n\tprivate getSelectedData(selectedKeys: string[] | string): null | KoliBriTableDataType | KoliBriTableDataType[] {\n\t\tconst selection = this.state._selection;\n\t\tif (selection) {\n\t\t\tconst keyPropertyName = selection.keyPropertyName ?? 'id';\n\t\t\tconst data = this.state._sortedData.filter((item) => selectedKeys.includes(item[keyPropertyName] as string));\n\t\t\tif (selection?.multiple === false) {\n\t\t\t\treturn data[0];\n\t\t\t}\n\n\t\t\tif (keyPropertyName) return data;\n\t\t}\n\t\treturn null;\n\t}\n\tprivate handleSelectionChange(event: Event, value: string[] | string): void {\n\t\tconst selection = this.state._selection;\n\t\tif (selection)\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_selection: {\n\t\t\t\t\t...selection,\n\t\t\t\t\tselectedKeys: typeof value === 'object' ? value : [value],\n\t\t\t\t},\n\t\t\t};\n\t\tconst selectedData = this.getSelectedData(value);\n\n\t\tif (typeof this.state._on?.[Callback.onSelectionChange] === 'function') {\n\t\t\tthis.state._on[Callback.onSelectionChange](event, selectedData);\n\t\t}\n\t\tif (this.host) {\n\t\t\tdispatchDomEvent(this.host, KolEvent.selectionChange, selectedData);\n\t\t}\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getSelection(): Promise<KoliBriTableDataType[] | KoliBriTableDataType | null> {\n\t\tconst selectedKeys: string[] = this.state._selection?.selectedKeys || [];\n\t\treturn this.getSelectedData(selectedKeys);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst displayedData: KoliBriTableDataType[] = this.selectDisplayedData(\n\t\t\tthis.state._sortedData,\n\t\t\tthis.showPagination ? (this.state._pagination?._pageSize ?? 10) : this.state._sortedData.length,\n\t\t\tthis.state._pagination._page || 1,\n\t\t);\n\t\tconst paginationTop = this._paginationPosition === 'top' || this._paginationPosition === 'both' ? this.renderPagination('top') : null;\n\t\tconst paginationBottom = this._paginationPosition === 'bottom' || this._paginationPosition === 'both' ? this.renderPagination('bottom') : null;\n\n\t\tconst headerCells: TableHeaderCells = {\n\t\t\thorizontal: this.state._headers.horizontal?.map((row) => row.map((cell) => ({ ...cell, sortDirection: this.getHeaderCellSortState(cell) }))) ?? [],\n\t\t\tvertical: this.state._headers.vertical?.map((column) => column.map((cell) => ({ ...cell, sortDirection: this.getHeaderCellSortState(cell) }))) ?? [],\n\t\t};\n\t\treturn (\n\t\t\t<Host class=\"kol-table-stateful\">\n\t\t\t\t{this.pageEndSlice > 0 && this.showPagination && paginationTop}\n\t\t\t\t<KolTableStatelessWcTag\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_data={displayedData}\n\t\t\t\t\t_headerCells={headerCells}\n\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t_dataFoot={this.state._dataFoot}\n\t\t\t\t\t_minWidth={this.state._minWidth}\n\t\t\t\t\t_on={{\n\t\t\t\t\t\tonSort: (_: MouseEvent, payload: SortEventPayload) => {\n\t\t\t\t\t\t\tthis.handleSort(payload);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonSelectionChange: (event: Event, value: string[] | string) => {\n\t\t\t\t\t\t\tthis.handleSelectionChange(event, value);\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t\t_selection={this.state._selection}\n\t\t\t\t\t_tableSettings={this.state._tableSettings}\n\t\t\t\t/>\n\t\t\t\t{this.pageEndSlice > 0 && this.showPagination && paginationBottom}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["paginationPositionPropTypeOptions","validatePaginationPosition","component","value","watchValidator","includes","Set","join","defaultValue","defaultStyleCss","KolTableStatefulDefaultStyle0","PAGINATION_OPTIONS","paginationValidator","KolTableStateful","this","catchRef","ref","tableWcRef","sortData","showPagination","pageStartSlice","pageEndSlice","disableSort","handlePagination","onClick","event","page","_a","state","_pagination","_on","setState","Object","assign","_page","onChangePage","onChangePageSize","pageSize","_pageSize","onSelectionChange","stopPropagation","updateSortedData","_data","sortedData","length","sort","a","b","index","data","result","compareFn","direction","_allowMultiSort","_dataFoot","_headers","horizontal","vertical","_label","_minWidth","_max","_sortedData","_paginationPosition","validateAllowMultiSort","validateData","validateTableData","afterPatch","setTimeout","validateDataFoot","validateTableDataFoot","changeCellSort","headerCell","key","findIndex","settings","splice","push","label","validateHeaders","emptyStringByArrayHandler","objectObjectHandler","parseJson","e","hooks","beforePatch","nextValue","applySort","headers","hasSortedCells","forEach","cell","sortDirection","_b","_c","_d","devHint","validateLabel","required","validateMinWidth","watchString","undefined","validateSelection","validateTableSelection","validateOn","validateTableStatefulCallbacks","validateTableSettings","validatePagination","componentDidLoad","addEventListener","KolEvent","selectionChange","disconnectedCallback","removeEventListener","componentWillLoad","_selection","_tableSettings","selectDisplayedData","slice","renderPagination","position","translate","placeholders","h","class","start","toString","end","total","Array","isArray","KolPaginationWcTag","_boundaryCount","_customClass","_pageSizeOptions","_siblingCount","_tooltipAlign","getHeaderCellSortState","find","handleSort","flat","getSelectedData","selectedKeys","selection","keyPropertyName","filter","item","multiple","handleSelectionChange","selectedData","Callback","host","dispatchDomEvent","getSelection","render","displayedData","paginationTop","paginationBottom","headerCells","map","row","_f","_e","column","Host","KolTableStatelessWcTag","_headerCells","onSort","_","payload"],"sources":["src/schema/props/pagination-position.ts","src/components/table-stateful/style.scss?tag=kol-table-stateful&mode=default&encapsulation=shadow","src/components/table-stateful/shadow.tsx"],"sourcesContent":["/* types */\nimport type { Generic } from 'adopted-style-sheets';\nimport { watchValidator } from '../utils/prop.validators';\n\nconst paginationPositionPropTypeOptions = ['top', 'bottom', 'both'] as const;\nexport type PaginationPositionPropType = (typeof paginationPositionPropTypeOptions)[number];\n\n/**\n * Defines which position should be used for presentation.\n */\nexport type PropPaginationPosition = {\n\tpaginationPosition: PaginationPositionPropType;\n};\n\n/* validator */\nexport const validatePaginationPosition = (component: Generic.Element.Component, value?: PaginationPositionPropType): void => {\n\twatchValidator(\n\t\tcomponent,\n\t\t`_paginationPosition`,\n\t\t(value) => typeof value === 'string' && paginationPositionPropTypeOptions.includes(value),\n\t\tnew Set([`PaginationPositionPropType {${paginationPositionPropTypeOptions.join(', ')}`]),\n\t\tvalue,\n\t\t{\n\t\t\tdefaultValue: 'bottom',\n\t\t},\n\t);\n};\n","@use '../../styles/global' as *;\n@use '../../styles/kol-alert-mixin' as *;\n@use '../@shared/kol-button-mixin' as *;\n@use '../@shared/kol-popover-button-mixin' as *;\n@use '../@shared/kol-table-stateless-mixin' as *;\n@use '../@shared/mixins' as *;\n@use '../@shared/kol-pagination-mixin' as *;\n\n@include kol-alert;\n@include kol-button-styles('kol-button');\n@include kol-popover-button-styles;\n@include kol-table-stateless-styles;\n@include kol-pagination-styles;\n\n@layer kol-component {\n\t.kol-table-stateful {\n\t\t&__pagination,\n\t\t&__pagination-wrapper {\n\t\t\tdisplay: grid;\n\t\t\tplace-items: center;\n\n\t\t\t@media (min-width: 1024px) {\n\t\t\t\tgrid-auto-flow: column;\n\t\t\t}\n\t\t}\n\t}\n\n\t.kol-pagination {\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\n\t\t@media (min-width: 1024px) {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t@media (max-width: 1024px) {\n\t\t\tflex-direction: column;\n\t\t}\n\t}\n}\n","/* eslint-disable jsx-a11y/no-noninteractive-tabindex */\nimport type { JSX } from '@stencil/core';\nimport { Component, Element, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport { KolPaginationWcTag, KolTableStatelessWcTag } from '../../core/component-names';\nimport { translate } from '../../i18n';\nimport type {\n\tKoliBriDataCompareFn,\n\tKoliBriPaginationButtonCallbacks,\n\tKoliBriSortDirection,\n\tKoliBriTableDataType,\n\tKoliBriTableHeaderCellWithLogic,\n\tKoliBriTableHeaders,\n\tKoliBriTablePaginationProps,\n\tLabelPropType,\n\tPaginationPositionPropType,\n\tSortEventPayload,\n\tStringified,\n\tTableAPI,\n\tTableDataFootPropType,\n\tTableDataPropType,\n\tTableHeaderCells,\n\tTableSelectionPropType,\n\tTableStatefulCallbacksPropType,\n\tTableStates,\n} from '../../schema';\nimport {\n\tdevHint,\n\temptyStringByArrayHandler,\n\tobjectObjectHandler,\n\tparseJson,\n\tsetState,\n\tvalidateLabel,\n\tvalidatePaginationPosition,\n\tvalidateTableData,\n\tvalidateTableDataFoot,\n\tvalidateTableSelection,\n\tvalidateTableStatefulCallbacks,\n\twatchString,\n\twatchValidator,\n} from '../../schema';\nimport { Callback } from '../../schema/enums';\nimport type { MinWidthPropType } from '../../schema/props/min-width';\nimport { dispatchDomEvent, KolEvent } from '../../utils/events';\nimport type { TableSettingsPropType } from '../../schema/props/table-settings';\nimport { validateTableSettings } from '../../schema/props/table-settings';\n\nconst PAGINATION_OPTIONS = [10, 20, 50, 100];\n\nconst paginationValidator = (value: unknown) => value === true || value === '' /* true */ || (typeof value === 'object' && value !== null);\n\ntype SortData = {\n\tlabel: string;\n\tkey: string;\n\tcompareFn: KoliBriDataCompareFn;\n\tdirection: KoliBriSortDirection;\n};\n\n@Component({\n\ttag: 'kol-table-stateful',\n\tstyleUrls: {\n\t\tdefault: './style.scss',\n\t},\n\tshadow: true,\n})\nexport class KolTableStateful implements TableAPI {\n\t@Element() private readonly host?: HTMLKolTableStatelessWcElement;\n\tprivate tableWcRef?: HTMLKolTableStatelessWcElement;\n\n\tprivate readonly catchRef = (ref?: HTMLKolTableStatelessWcElement) => {\n\t\tthis.tableWcRef = ref;\n\t};\n\n\tprivate sortData: SortData[] = [];\n\tprivate showPagination = false;\n\tprivate pageStartSlice = 0;\n\tprivate pageEndSlice = 10;\n\tprivate disableSort = false;\n\n\t/**\n\t * Defines whether to allow multi sort.\n\t */\n\t@Prop() public _allowMultiSort?: boolean;\n\n\t/**\n\t * Defines the primary table data.\n\t */\n\t@Prop() public _data!: Stringified<KoliBriTableDataType[]>;\n\n\t/**\n\t * Defines the data for the table footer.\n\t */\n\t@Prop() public _dataFoot?: Stringified<KoliBriTableDataType[]>;\n\n\t/**\n\t * Defines the horizontal and vertical table headers.\n\t */\n\t@Prop() public _headers!: Stringified<KoliBriTableHeaders>;\n\n\t/**\n\t * Defines the visible or semantic label of the component (e.g. aria-label, label, headline, caption, summary, etc.).\n\t */\n\t@Prop() public _label!: string;\n\n\t/**\n\t * Defines the table min-width (CSS width values).\n\t */\n\t@Prop() public _minWidth!: MinWidthPropType;\n\n\t/**\n\t * Defines whether to show the data distributed over multiple pages.\n\t */\n\t@Prop() public _pagination?: boolean | Stringified<KoliBriTablePaginationProps>;\n\t/**\n\t * Controls the position of the pagination.\n\t */\n\t@Prop() public _paginationPosition?: PaginationPositionPropType = 'bottom';\n\t/**\n\t * Defines how rows can be selected and the current selection.\n\t */\n\t@Prop() public _selection?: TableSelectionPropType;\n\t/**\n\t * Defines the callback functions for table events.\n\t */\n\t@Prop() public _on?: TableStatefulCallbacksPropType;\n\n\t/**\n\t * Defines the table settings including column visibility, order and width.\n\t */\n\t@Prop() public _tableSettings?: TableSettingsPropType;\n\n\t@State() public state: TableStates = {\n\t\t_allowMultiSort: false,\n\t\t_data: [],\n\t\t_dataFoot: [],\n\t\t_headers: {\n\t\t\thorizontal: [],\n\t\t\tvertical: [],\n\t\t},\n\t\t_label: '', // ⚠ required\n\t\t_minWidth: 'auto',\n\t\t_pagination: {\n\t\t\t_page: 1,\n\t\t\t_pageSize: 10,\n\t\t\t_max: 0,\n\t\t},\n\t\t_sortedData: [],\n\t\t_paginationPosition: 'bottom',\n\t};\n\n\t@Watch('_allowMultiSort')\n\tpublic validateAllowMultiSort(value?: boolean): void {\n\t\twatchValidator(this, '_allowMultiSort', () => true, new Set(['boolean']), value, {\n\t\t\tdefaultValue: false,\n\t\t});\n\t}\n\n\t@Watch('_data')\n\tpublic validateData(value?: TableDataPropType): void {\n\t\tvalidateTableData(this, value, {\n\t\t\tafterPatch: () => {\n\t\t\t\t// TODO: kein guter Hack (endless loop)\n\t\t\t\tsetTimeout(this.updateSortedData);\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_dataFoot')\n\tpublic validateDataFoot(value?: TableDataFootPropType): void {\n\t\tvalidateTableDataFoot(this, value, {\n\t\t\tafterPatch: () => {\n\t\t\t\tsetTimeout(this.updateSortedData);\n\t\t\t},\n\t\t});\n\t}\n\n\t@Watch('_paginationPosition')\n\tpublic validatePaginationPosition(value?: PaginationPositionPropType): void {\n\t\tvalidatePaginationPosition(this, value);\n\t}\n\n\t/**\n\t * Handles sorting logic for table columns.\n\t * If multi-sort is enabled (`_allowMultiSort`), multiple columns can be sorted at once.\n\t * Otherwise, sorting is cleared when switching between columns.\n\t */\n\tprivate changeCellSort(headerCell: KoliBriTableHeaderCellWithLogic) {\n\t\tif (typeof headerCell.compareFn === 'function') {\n\t\t\tif (!this.state._allowMultiSort && headerCell.key !== this.sortData[0]?.key) {\n\t\t\t\t// clear when another column is sorted and multi sort is not allowed\n\t\t\t\tthis.sortData = [];\n\t\t\t}\n\n\t\t\tconst index = this.sortData.findIndex((value) => value.key === headerCell.key);\n\t\t\tif (index >= 0) {\n\t\t\t\tconst settings = this.sortData[index];\n\t\t\t\tswitch (settings.direction) {\n\t\t\t\t\tcase 'ASC':\n\t\t\t\t\t\tsettings.direction = 'DESC';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'DESC':\n\t\t\t\t\t\tthis.sortData.splice(index, 1);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsettings.direction = 'ASC';\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if (headerCell.key) {\n\t\t\t\tthis.sortData.push({\n\t\t\t\t\tlabel: headerCell.label,\n\t\t\t\t\tkey: headerCell.key,\n\t\t\t\t\tcompareFn: headerCell.compareFn,\n\t\t\t\t\tdirection: 'ASC',\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tthis.updateSortedData();\n\t\t}\n\t}\n\n\t@Watch('_headers')\n\tpublic validateHeaders(value?: Stringified<KoliBriTableHeaders>): void {\n\t\t/**\n\t\t * - es darf maximal ein Header als primary markiert werden (last win)\n\t\t * - der primary-Header entscheidet implizit über _order und _orientation\n\t\t * - primary-Headers müssen das key-Property setzen\n\t\t * - nicht primary-Headers müssen das key-Property nicht setzen (wird ignoriert)\n\t\t * - _order: wird durch den primary-Header geregelt\n\t\t * - _orientation: wird durch den primary-Header geregelt\n\t\t * - sobald ein Header sortierbar ist, darf es nur noch entweder horizontale\n\t\t * oder vertikale Header geben, aber nicht mehr beides\n\t\t */\n\t\temptyStringByArrayHandler(value, () => {\n\t\t\tobjectObjectHandler(value, () => {\n\t\t\t\ttry {\n\t\t\t\t\tvalue = parseJson<KoliBriTableHeaders>(value);\n\t\t\t\t\t// eslint-disable-next-line no-empty\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// value behält den ursprünglichen Wert\n\t\t\t\t}\n\t\t\t\twatchValidator(this, '_headers', (value): boolean => typeof value === 'object' && value !== null, new Set(['KoliBriTableHeaders']), value, {\n\t\t\t\t\thooks: {\n\t\t\t\t\t\tbeforePatch: (nextValue: unknown) => {\n\t\t\t\t\t\t\tconst applySort = (headers: KoliBriTableHeaderCellWithLogic[]) => {\n\t\t\t\t\t\t\t\tlet hasSortedCells = false;\n\t\t\t\t\t\t\t\theaders.forEach((cell) => {\n\t\t\t\t\t\t\t\t\tconst key = cell.key;\n\t\t\t\t\t\t\t\t\tif (!key) {\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tconst sortDirection = cell.sortDirection;\n\t\t\t\t\t\t\t\t\tif (sortDirection === 'ASC' || sortDirection === 'DESC') {\n\t\t\t\t\t\t\t\t\t\tif (typeof cell.compareFn === 'function') {\n\t\t\t\t\t\t\t\t\t\t\tif (this.state._allowMultiSort || this.sortData.length === 0) {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.sortData.push({ label: cell.label, key, compareFn: cell.compareFn, direction: sortDirection });\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\thasSortedCells = true;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tif (hasSortedCells) {\n\t\t\t\t\t\t\t\t\tsetTimeout(() => this.updateSortedData());\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\tconst headers: KoliBriTableHeaders = nextValue as KoliBriTableHeaders;\n\t\t\t\t\t\t\theaders.horizontal?.forEach(applySort);\n\t\t\t\t\t\t\theaders.vertical?.forEach(applySort);\n\n\t\t\t\t\t\t\tif (headers.horizontal && headers.vertical && headers.horizontal?.length > 0 && headers.vertical?.length > 0) {\n\t\t\t\t\t\t\t\tthis.disableSort = true;\n\t\t\t\t\t\t\t\tdevHint(\n\t\t\t\t\t\t\t\t\t`Table: You can not sort the table data, if horizontal and vertical headers are defined at the same time. (https://github.com/public-ui/kolibri/issues/2372)`,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t@Watch('_label')\n\tpublic validateLabel(value?: LabelPropType): void {\n\t\tvalidateLabel(this, value, {\n\t\t\trequired: true,\n\t\t});\n\t}\n\n\t@Watch('_minWidth')\n\tpublic validateMinWidth(value?: string): void {\n\t\twatchString(this, '_minWidth', value, {\n\t\t\tdefaultValue: undefined,\n\t\t});\n\t}\n\n\t@Watch('_selection')\n\tpublic validateSelection(value?: TableSelectionPropType): void {\n\t\tvalidateTableSelection(this, value);\n\t}\n\t@Watch('_on')\n\tpublic validateOn(value?: TableStatefulCallbacksPropType): void {\n\t\tvalidateTableStatefulCallbacks(this, value);\n\t}\n\n\t@Watch('_tableSettings')\n\tpublic validateTableSettings(value?: TableSettingsPropType): void {\n\t\tvalidateTableSettings(this, value);\n\t}\n\n\tprivate readonly handlePagination: KoliBriPaginationButtonCallbacks = {\n\t\tonClick: (event: Event, page: number) => {\n\t\t\tif (typeof this.state._pagination._on?.onClick === 'function') {\n\t\t\t\tthis.state._pagination._on.onClick(event, page);\n\t\t\t}\n\t\t\tsetState(this, '_pagination', {\n\t\t\t\t...this.state._pagination,\n\t\t\t\t_page: page,\n\t\t\t});\n\t\t},\n\t\tonChangePage: (event: Event, page: number) => {\n\t\t\tif (typeof this.state._pagination._on?.onChangePage === 'function') {\n\t\t\t\tthis.state._pagination._on.onChangePage(event, page);\n\t\t\t}\n\t\t\tsetState(this, '_pagination', {\n\t\t\t\t...this.state._pagination,\n\t\t\t\t_page: page,\n\t\t\t});\n\t\t},\n\t\tonChangePageSize: (event: Event, pageSize: number) => {\n\t\t\tif (typeof this.state._pagination._on?.onChangePageSize === 'function') {\n\t\t\t\tthis.state._pagination._on.onChangePageSize(event, pageSize);\n\t\t\t}\n\t\t\tsetState(this, '_pagination', {\n\t\t\t\t...this.state._pagination,\n\t\t\t\t_pageSize: pageSize,\n\t\t\t});\n\t\t\tsetState(this, '_pageSize', pageSize);\n\t\t},\n\t};\n\n\t@Watch('_pagination')\n\tpublic validatePagination(value?: boolean | Stringified<KoliBriTablePaginationProps>): void {\n\t\ttry {\n\t\t\tvalue = parseJson<boolean | KoliBriTablePaginationProps>(value);\n\t\t\t// eslint-disable-next-line no-empty\n\t\t} catch (e) {\n\t\t\t// value behält den ursprünglichen Wert\n\t\t}\n\n\t\tthis.showPagination = paginationValidator(value);\n\n\t\twatchValidator<boolean | Stringified<KoliBriTablePaginationProps>>(\n\t\t\tthis,\n\t\t\t'_pagination',\n\t\t\tpaginationValidator,\n\t\t\tnew Set(['boolean', 'KoliBriTablePagination']),\n\t\t\tvalue,\n\t\t\t{\n\t\t\t\tdefaultValue: {\n\t\t\t\t\t_page: 1,\n\t\t\t\t\t_pageSize: 10,\n\t\t\t\t\t_max: 0,\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t}\n\n\tprivate onSelectionChange = (event: Event): void => {\n\t\t/* Stop propagation for selectionChange event from table-stateless component because table-stateful emits its own selectionChange event. */\n\t\tevent.stopPropagation();\n\t};\n\n\tpublic componentDidLoad(): void {\n\t\tthis.tableWcRef?.addEventListener(KolEvent.selectionChange, this.onSelectionChange);\n\t}\n\n\tpublic disconnectedCallback(): void {\n\t\tthis.tableWcRef?.removeEventListener(KolEvent.selectionChange, this.onSelectionChange);\n\t}\n\n\tpublic componentWillLoad(): void {\n\t\tthis.validateAllowMultiSort(this._allowMultiSort);\n\t\tthis.validateData(this._data);\n\t\tthis.validateDataFoot(this._dataFoot);\n\t\tthis.validateHeaders(this._headers);\n\t\tthis.validateLabel(this._label);\n\t\tthis.validateMinWidth(this._minWidth);\n\t\tthis.validateOn(this._on);\n\t\tthis.validatePagination(this._pagination);\n\t\tthis.validatePaginationPosition(this._paginationPosition);\n\t\tthis.validateSelection(this._selection);\n\t\tthis.validateTableSettings(this._tableSettings);\n\t}\n\n\tprivate selectDisplayedData(data: KoliBriTableDataType[], pageSize: number, page: number): KoliBriTableDataType[] {\n\t\tif (typeof pageSize === 'number' && pageSize > 0 && typeof page === 'number' && page > 0) {\n\t\t\tthis.pageStartSlice = pageSize * (page - 1);\n\t\t\tthis.pageEndSlice = pageSize * page > data.length ? data.length : pageSize * page;\n\t\t\treturn data.slice(this.pageStartSlice, this.pageEndSlice);\n\t\t} else {\n\t\t\tthis.pageStartSlice = 0;\n\t\t\tthis.pageEndSlice = data.length;\n\t\t\treturn data;\n\t\t}\n\t}\n\n\tprivate updateSortedData = () => {\n\t\tif (this.disableSort) {\n\t\t\tsetState(this, '_sortedData', this.state._data);\n\t\t\treturn;\n\t\t}\n\n\t\tconst sortedData: KoliBriTableDataType[] = [...this.state._data];\n\t\tif (this.sortData.length > 0) {\n\t\t\tsortedData.sort((a: KoliBriTableDataType, b: KoliBriTableDataType) => {\n\t\t\t\tfor (let index = 0; index < this.sortData.length; index++) {\n\t\t\t\t\tconst data = this.sortData[index];\n\t\t\t\t\tconst result = data.compareFn(a, b);\n\t\t\t\t\tif (result !== 0) {\n\t\t\t\t\t\treturn data.direction === 'ASC' ? result : -result;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn 0;\n\t\t\t});\n\t\t}\n\t\tsetState(this, '_sortedData', sortedData);\n\t};\n\n\t/**\n\t * Renders the pagination controls for the table, showing the current visible data range\n\t * and providing navigation between different pages.\n\t *\n\t * @returns {JSX.Element} The rendered pagination controls including page range and navigation.\n\t */\n\tprivate renderPagination(position: 'top' | 'bottom'): JSX.Element {\n\t\tconst label = translate('kol-table-pagination-label', {\n\t\t\tplaceholders: {\n\t\t\t\tlabel: `${this.state._label} (${translate(`kol-pagination-position-${position}`)})`,\n\t\t\t},\n\t\t});\n\t\treturn (\n\t\t\t<div class={`kol-table-stateful__pagination kol-table-stateful__pagination--${this.state._paginationPosition}`}>\n\t\t\t\t<span>\n\t\t\t\t\t{translate('kol-table-visible-range', {\n\t\t\t\t\t\tplaceholders: {\n\t\t\t\t\t\t\tstart: this.pageEndSlice > 0 ? (this.pageStartSlice + 1).toString() : '0',\n\t\t\t\t\t\t\tend: this.pageEndSlice.toString(),\n\t\t\t\t\t\t\ttotal:\n\t\t\t\t\t\t\t\tthis.state._pagination && this.state._pagination._max > 0\n\t\t\t\t\t\t\t\t\t? this.state._pagination._max.toString()\n\t\t\t\t\t\t\t\t\t: Array.isArray(this.state._data)\n\t\t\t\t\t\t\t\t\t\t? this.state._data.length.toString()\n\t\t\t\t\t\t\t\t\t\t: '0',\n\t\t\t\t\t\t},\n\t\t\t\t\t})}\n\t\t\t\t</span>\n\t\t\t\t<div class=\"kol-table-stateful__pagination-wrapper\">\n\t\t\t\t\t<KolPaginationWcTag\n\t\t\t\t\t\tclass=\"test\"\n\t\t\t\t\t\t_boundaryCount={this.state._pagination._boundaryCount}\n\t\t\t\t\t\t_customClass={this.state._pagination._customClass}\n\t\t\t\t\t\t_on={this.handlePagination}\n\t\t\t\t\t\t_page={this.state._pagination._page}\n\t\t\t\t\t\t_pageSize={this.state._pagination._pageSize}\n\t\t\t\t\t\t_pageSizeOptions={this.state._pagination._pageSizeOptions || PAGINATION_OPTIONS}\n\t\t\t\t\t\t_siblingCount={this.state._pagination._siblingCount}\n\t\t\t\t\t\t_tooltipAlign=\"bottom\"\n\t\t\t\t\t\t_max={this.state._pagination._max || this.state._pagination._max || this.state._data.length}\n\t\t\t\t\t\t_label={label}\n\t\t\t\t\t></KolPaginationWcTag>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate getHeaderCellSortState(headerCell: KoliBriTableHeaderCellWithLogic): KoliBriSortDirection | undefined {\n\t\tif (!this.disableSort && typeof headerCell.compareFn === 'function') {\n\t\t\tif (headerCell.key) {\n\t\t\t\tconst data = this.sortData.find((value) => value.key === headerCell.key);\n\t\t\t\tif (data?.direction) {\n\t\t\t\t\treturn data.direction;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn 'NOS';\n\t\t}\n\t}\n\n\tprivate handleSort({ key }: SortEventPayload) {\n\t\tconst headerCell = [...(this.state._headers.horizontal || []).flat(), ...(this.state._headers.vertical || []).flat()].find((cell) => cell.key === key);\n\t\tif (headerCell) {\n\t\t\tthis.changeCellSort(headerCell);\n\t\t}\n\t}\n\n\tprivate getSelectedData(selectedKeys: string[] | string): null | KoliBriTableDataType | KoliBriTableDataType[] {\n\t\tconst selection = this.state._selection;\n\t\tif (selection) {\n\t\t\tconst keyPropertyName = selection.keyPropertyName ?? 'id';\n\t\t\tconst data = this.state._sortedData.filter((item) => selectedKeys.includes(item[keyPropertyName] as string));\n\t\t\tif (selection?.multiple === false) {\n\t\t\t\treturn data[0];\n\t\t\t}\n\n\t\t\tif (keyPropertyName) return data;\n\t\t}\n\t\treturn null;\n\t}\n\tprivate handleSelectionChange(event: Event, value: string[] | string): void {\n\t\tconst selection = this.state._selection;\n\t\tif (selection)\n\t\t\tthis.state = {\n\t\t\t\t...this.state,\n\t\t\t\t_selection: {\n\t\t\t\t\t...selection,\n\t\t\t\t\tselectedKeys: typeof value === 'object' ? value : [value],\n\t\t\t\t},\n\t\t\t};\n\t\tconst selectedData = this.getSelectedData(value);\n\n\t\tif (typeof this.state._on?.[Callback.onSelectionChange] === 'function') {\n\t\t\tthis.state._on[Callback.onSelectionChange](event, selectedData);\n\t\t}\n\t\tif (this.host) {\n\t\t\tdispatchDomEvent(this.host, KolEvent.selectionChange, selectedData);\n\t\t}\n\t}\n\n\t@Method()\n\t// eslint-disable-next-line @typescript-eslint/require-await\n\tpublic async getSelection(): Promise<KoliBriTableDataType[] | KoliBriTableDataType | null> {\n\t\tconst selectedKeys: string[] = this.state._selection?.selectedKeys || [];\n\t\treturn this.getSelectedData(selectedKeys);\n\t}\n\n\tpublic render(): JSX.Element {\n\t\tconst displayedData: KoliBriTableDataType[] = this.selectDisplayedData(\n\t\t\tthis.state._sortedData,\n\t\t\tthis.showPagination ? (this.state._pagination?._pageSize ?? 10) : this.state._sortedData.length,\n\t\t\tthis.state._pagination._page || 1,\n\t\t);\n\t\tconst paginationTop = this._paginationPosition === 'top' || this._paginationPosition === 'both' ? this.renderPagination('top') : null;\n\t\tconst paginationBottom = this._paginationPosition === 'bottom' || this._paginationPosition === 'both' ? this.renderPagination('bottom') : null;\n\n\t\tconst headerCells: TableHeaderCells = {\n\t\t\thorizontal: this.state._headers.horizontal?.map((row) => row.map((cell) => ({ ...cell, sortDirection: this.getHeaderCellSortState(cell) }))) ?? [],\n\t\t\tvertical: this.state._headers.vertical?.map((column) => column.map((cell) => ({ ...cell, sortDirection: this.getHeaderCellSortState(cell) }))) ?? [],\n\t\t};\n\t\treturn (\n\t\t\t<Host class=\"kol-table-stateful\">\n\t\t\t\t{this.pageEndSlice > 0 && this.showPagination && paginationTop}\n\t\t\t\t<KolTableStatelessWcTag\n\t\t\t\t\tref={this.catchRef}\n\t\t\t\t\t_data={displayedData}\n\t\t\t\t\t_headerCells={headerCells}\n\t\t\t\t\t_label={this.state._label}\n\t\t\t\t\t_dataFoot={this.state._dataFoot}\n\t\t\t\t\t_minWidth={this.state._minWidth}\n\t\t\t\t\t_on={{\n\t\t\t\t\t\tonSort: (_: MouseEvent, payload: SortEventPayload) => {\n\t\t\t\t\t\t\tthis.handleSort(payload);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonSelectionChange: (event: Event, value: string[] | string) => {\n\t\t\t\t\t\t\tthis.handleSelectionChange(event, value);\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t\t_selection={this.state._selection}\n\t\t\t\t\t_tableSettings={this.state._tableSettings}\n\t\t\t\t/>\n\t\t\t\t{this.pageEndSlice > 0 && this.showPagination && paginationBottom}\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * KoliBri - The accessible HTML-Standard
3
3
  */
4
- import{r as t,h as e,F as n,g as i}from"./index-4d380356.js";import{c as r}from"./clsx-09a06a12.js";import{e as o,a,b as l,w as s}from"./component-names-553d8bfa.js";import{t as c}from"./i18n-260f0fe9.js";import{M as u,o as d,k as f,w as h,l as v}from"./index-ebe5a881.js";import{C as b}from"./keyboard-2483c6de.js";import{n as _}from"./dev.utils-2d90fdc8.js";import{d as p,K as y}from"./events-bad0a075.js";import{v as j,a as k,e as m,b as w,d as g}from"./table-settings-c12356ed.js";import{b as S,r as A,a as O,f as $,i as x,S as C}from"./isArray-7a60fa7f.js";import{i as D}from"./isObject-ffcbbb76.js";import{v as M}from"./label-bf9966d0.js";import"./i18n-45224cc3.js";const W=(e,t)=>{u(t,(()=>{d(t,(()=>{try{t=f(t)}catch(e){}h(e,"_headerCells",(e=>"object"==typeof e&&null!==e&&(void 0===e.horizontal||Array.isArray(e.horizontal)&&void 0===e.horizontal.find((e=>!Array.isArray(e))))&&(void 0===e.vertical||Array.isArray(e.vertical)&&void 0===e.vertical.find((e=>!Array.isArray(e))))&&!0),new Set(["TableHeaderCellsPropType"]),t)}))}))};var F="[object AsyncFunction]",P="[object Function]",T="[object GeneratorFunction]",E="[object Proxy]";function K(e){if(!D(e))return!1;var t=S(e);return t==P||t==T||t==F||t==E}var R=A["__core-js_shared__"];const H=R;var I=function(){var e=/[^.]+$/.exec(H&&H.keys&&H.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function N(e){return!!I&&I in e}var z=Function.prototype,B=z.toString;function U(e){if(null!=e){try{return B.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var L=/[\\^$.*+?()[\]{}|]/g,V=/^\[object .+?Constructor\]$/,q=Function.prototype,G=Object.prototype,J=q.toString,Q=G.hasOwnProperty,X=RegExp("^"+J.call(Q).replace(L,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Y(e){return!(!D(e)||N(e))&&(K(e)?X:V).test(U(e))}function Z(e,t){return null==e?void 0:e[t]}function tt(e,t){var n=Z(e,t);return Y(n)?n:void 0}var et=tt(A,"WeakMap");const nt=et;var it=9007199254740991,rt=/^(?:0|[1-9]\d*)$/;function ot(e,t){var n=typeof e;return!!(t=null==t?it:t)&&("number"==n||"symbol"!=n&&rt.test(e))&&e>-1&&e%1==0&&e<t}function at(e,t){return e===t||e!=e&&t!=t}var lt=9007199254740991;function st(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=lt}function ct(e){return null!=e&&st(e.length)&&!K(e)}var ut=Object.prototype;function dt(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||ut)}function ft(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}var ht="[object Arguments]";function vt(e){return O(e)&&S(e)==ht}var bt=Object.prototype,_t=bt.hasOwnProperty,pt=bt.propertyIsEnumerable,yt=vt(function(){return arguments}())?vt:function(e){return O(e)&&_t.call(e,"callee")&&!pt.call(e,"callee")};const jt=yt;function kt(){return!1}var mt="object"==typeof exports&&exports&&!exports.nodeType&&exports,wt=mt&&"object"==typeof module&&module&&!module.nodeType&&module,gt=wt&&wt.exports===mt,St=gt?A.Buffer:void 0,At=St?St.isBuffer:void 0,Ot=At||kt;const $t=Ot;var xt="[object Arguments]",Ct="[object Array]",Dt="[object Boolean]",Mt="[object Date]",Wt="[object Error]",Ft="[object Function]",Pt="[object Map]",Tt="[object Number]",Et="[object Object]",Kt="[object RegExp]",Rt="[object Set]",Ht="[object String]",It="[object WeakMap]",Nt="[object ArrayBuffer]",zt="[object DataView]",Bt="[object Float32Array]",Ut="[object Float64Array]",Lt="[object Int8Array]",Vt="[object Int16Array]",qt="[object Int32Array]",Gt="[object Uint8Array]",Jt="[object Uint8ClampedArray]",Qt="[object Uint16Array]",Xt="[object Uint32Array]",Yt={};function Zt(e){return O(e)&&st(e.length)&&!!Yt[S(e)]}function te(e){return function(t){return e(t)}}Yt[Bt]=Yt[Ut]=Yt[Lt]=Yt[Vt]=Yt[qt]=Yt[Gt]=Yt[Jt]=Yt[Qt]=Yt[Xt]=!0,Yt[xt]=Yt[Ct]=Yt[Nt]=Yt[Dt]=Yt[zt]=Yt[Mt]=Yt[Wt]=Yt[Ft]=Yt[Pt]=Yt[Tt]=Yt[Et]=Yt[Kt]=Yt[Rt]=Yt[Ht]=Yt[It]=!1;var ee="object"==typeof exports&&exports&&!exports.nodeType&&exports,ne=ee&&"object"==typeof module&&module&&!module.nodeType&&module,ie=ne&&ne.exports===ee,re=ie&&$.process,oe=function(){try{var e=ne&&ne.require&&ne.require("util").types;return e||re&&re.binding&&re.binding("util")}catch(e){}}();const ae=oe;var le=oe&&oe.isTypedArray,se=le?te(le):Zt;const ce=se;var ue=Object.prototype,de=ue.hasOwnProperty;function fe(e,t){var n=x(e),i=!n&&jt(e),a=!n&&!i&&$t(e),r=!n&&!i&&!a&&ce(e),o=n||i||a||r,l=o?ft(e.length,String):[],s=l.length;for(var c in e)!t&&!de.call(e,c)||o&&("length"==c||a&&("offset"==c||"parent"==c)||r&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||ot(c,s))||l.push(c);return l}function he(e,t){return function(n){return e(t(n))}}var ve=he(Object.keys,Object);const be=ve;var _e=Object.prototype,pe=_e.hasOwnProperty;function ye(e){if(!dt(e))return be(e);var t=[];for(var n in Object(e))pe.call(e,n)&&"constructor"!=n&&t.push(n);return t}function je(e){return ct(e)?fe(e):ye(e)}var ke=tt(Object,"create");const me=ke;function we(){this.__data__=me?me(null):{},this.size=0}function ge(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Se="__lodash_hash_undefined__",Ae=Object.prototype,Oe=Ae.hasOwnProperty;function $e(e){var t=this.__data__;if(me){var n=t[e];return n===Se?void 0:n}return Oe.call(t,e)?t[e]:void 0}var xe=Object.prototype,Ce=xe.hasOwnProperty;function De(e){var t=this.__data__;return me?void 0!==t[e]:Ce.call(t,e)}var Me="__lodash_hash_undefined__";function We(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=me&&void 0===t?Me:t,this}function Fe(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Pe(){this.__data__=[],this.size=0}function Te(e,t){for(var n=e.length;n--;)if(at(e[n][0],t))return n;return-1}Fe.prototype.clear=we,Fe.prototype.delete=ge,Fe.prototype.get=$e,Fe.prototype.has=De,Fe.prototype.set=We;var Ee=Array.prototype,Ke=Ee.splice;function Re(e){var t=this.__data__,n=Te(t,e);return!(n<0)&&(n==t.length-1?t.pop():Ke.call(t,n,1),--this.size,!0)}function He(e){var t=this.__data__,n=Te(t,e);return n<0?void 0:t[n][1]}function Ie(e){return Te(this.__data__,e)>-1}function Ne(e,t){var n=this.__data__,i=Te(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}function ze(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}ze.prototype.clear=Pe,ze.prototype.delete=Re,ze.prototype.get=He,ze.prototype.has=Ie,ze.prototype.set=Ne;var Be=tt(A,"Map");const Ue=Be;function Le(){this.size=0,this.__data__={hash:new Fe,map:new(Ue||ze),string:new Fe}}function Ve(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function qe(e,t){var n=e.__data__;return Ve(t)?n["string"==typeof t?"string":"hash"]:n.map}function Ge(e){var t=qe(this,e).delete(e);return this.size-=t?1:0,t}function Je(e){return qe(this,e).get(e)}function Qe(e){return qe(this,e).has(e)}function Xe(e,t){var n=qe(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}function Ye(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Ze(e,t){for(var n=-1,i=t.length,a=e.length;++n<i;)e[a+n]=t[n];return e}function tn(){this.__data__=new ze,this.size=0}function en(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function nn(e){return this.__data__.get(e)}function rn(e){return this.__data__.has(e)}Ye.prototype.clear=Le,Ye.prototype.delete=Ge,Ye.prototype.get=Je,Ye.prototype.has=Qe,Ye.prototype.set=Xe;var on=200;function an(e,t){var n=this.__data__;if(n instanceof ze){var i=n.__data__;if(!Ue||i.length<on-1)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Ye(i)}return n.set(e,t),this.size=n.size,this}function ln(e){var t=this.__data__=new ze(e);this.size=t.size}function sn(e,t){for(var n=-1,i=null==e?0:e.length,a=0,r=[];++n<i;){var o=e[n];t(o,n,e)&&(r[a++]=o)}return r}function cn(){return[]}ln.prototype.clear=tn,ln.prototype.delete=en,ln.prototype.get=nn,ln.prototype.has=rn,ln.prototype.set=an;var un=Object.prototype,dn=un.propertyIsEnumerable,fn=Object.getOwnPropertySymbols,hn=fn?function(e){return null==e?[]:(e=Object(e),sn(fn(e),(function(t){return dn.call(e,t)})))}:cn;const vn=hn;function bn(e,t,n){var i=t(e);return x(e)?i:Ze(i,n(e))}function _n(e){return bn(e,je,vn)}var pn=tt(A,"DataView");const yn=pn;var jn=tt(A,"Promise");const kn=jn;var mn=tt(A,"Set");const wn=mn;var gn="[object Map]",Sn="[object Object]",An="[object Promise]",On="[object Set]",$n="[object WeakMap]",xn="[object DataView]",Cn=U(yn),Dn=U(Ue),Mn=U(kn),Wn=U(wn),Fn=U(nt),Pn=S;(yn&&Pn(new yn(new ArrayBuffer(1)))!=xn||Ue&&Pn(new Ue)!=gn||kn&&Pn(kn.resolve())!=An||wn&&Pn(new wn)!=On||nt&&Pn(new nt)!=$n)&&(Pn=function(e){var t=S(e),n=t==Sn?e.constructor:void 0,i=n?U(n):"";if(i)switch(i){case Cn:return xn;case Dn:return gn;case Mn:return An;case Wn:return On;case Fn:return $n}return t});const Tn=Pn;var En=A.Uint8Array;const Kn=En;var Rn="__lodash_hash_undefined__";function Hn(e){return this.__data__.set(e,Rn),this}function In(e){return this.__data__.has(e)}function Nn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Ye;++t<n;)this.add(e[t])}function zn(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}function Bn(e,t){return e.has(t)}Nn.prototype.add=Nn.prototype.push=Hn,Nn.prototype.has=In;var Un=1,Ln=2;function Vn(e,t,n,i,a,r){var o=n&Un,l=e.length,s=t.length;if(l!=s&&!(o&&s>l))return!1;var c=r.get(e),d=r.get(t);if(c&&d)return c==t&&d==e;var h=-1,u=!0,b=n&Ln?new Nn:void 0;for(r.set(e,t),r.set(t,e);++h<l;){var v=e[h],_=t[h];if(i)var f=o?i(_,v,h,t,e,r):i(v,_,h,e,t,r);if(void 0!==f){if(f)continue;u=!1;break}if(b){if(!zn(t,(function(e,t){if(!Bn(b,t)&&(v===e||a(v,e,n,i,r)))return b.push(t)}))){u=!1;break}}else if(v!==_&&!a(v,_,n,i,r)){u=!1;break}}return r.delete(e),r.delete(t),u}function qn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,i){n[++t]=[i,e]})),n}function Gn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}var Jn=1,Qn=2,Xn="[object Boolean]",Yn="[object Date]",Zn="[object Error]",ti="[object Map]",ei="[object Number]",ni="[object RegExp]",ii="[object Set]",ri="[object String]",oi="[object Symbol]",ai="[object ArrayBuffer]",li="[object DataView]",si=C?C.prototype:void 0,ci=si?si.valueOf:void 0;function ui(e,t,n,i,a,r,o){switch(n){case li:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case ai:return!(e.byteLength!=t.byteLength||!r(new Kn(e),new Kn(t)));case Xn:case Yn:case ei:return at(+e,+t);case Zn:return e.name==t.name&&e.message==t.message;case ni:case ri:return e==t+"";case ti:var l=qn;case ii:var s=i&Jn;if(l||(l=Gn),e.size!=t.size&&!s)return!1;var c=o.get(e);if(c)return c==t;i|=Qn,o.set(e,t);var d=Vn(l(e),l(t),i,a,r,o);return o.delete(e),d;case oi:if(ci)return ci.call(e)==ci.call(t)}return!1}var di=1,fi=Object.prototype,hi=fi.hasOwnProperty;function vi(e,t,n,i,a,r){var o=n&di,l=_n(e),s=l.length;if(s!=_n(t).length&&!o)return!1;for(var c=s;c--;){var d=l[c];if(!(o?d in t:hi.call(t,d)))return!1}var h=r.get(e),u=r.get(t);if(h&&u)return h==t&&u==e;var b=!0;r.set(e,t),r.set(t,e);for(var v=o;++c<s;){var _=e[d=l[c]],f=t[d];if(i)var p=o?i(f,_,d,t,e,r):i(_,f,d,e,t,r);if(!(void 0===p?_===f||a(_,f,n,i,r):p)){b=!1;break}v||(v="constructor"==d)}if(b&&!v){var y=e.constructor,g=t.constructor;y==g||!("constructor"in e)||!("constructor"in t)||"function"==typeof y&&y instanceof y&&"function"==typeof g&&g instanceof g||(b=!1)}return r.delete(e),r.delete(t),b}var bi=1,_i="[object Arguments]",pi="[object Array]",yi="[object Object]",ji=Object.prototype,ki=ji.hasOwnProperty;function mi(e,t,n,i,a,r){var o=x(e),l=x(t),s=o?pi:Tn(e),c=l?pi:Tn(t),d=(s=s==_i?yi:s)==yi,h=(c=c==_i?yi:c)==yi,u=s==c;if(u&&$t(e)){if(!$t(t))return!1;o=!0,d=!1}if(u&&!d)return r||(r=new ln),o||ce(e)?Vn(e,t,n,i,a,r):ui(e,t,s,n,i,a,r);if(!(n&bi)){var b=d&&ki.call(e,"__wrapped__"),v=h&&ki.call(t,"__wrapped__");if(b||v){var _=b?e.value():e,f=v?t.value():t;return r||(r=new ln),a(_,f,n,i,r)}}return!!u&&(r||(r=new ln),vi(e,t,n,i,a,r))}function wi(e,t,n,i,a){return e===t||(null==e||null==t||!O(e)&&!O(t)?e!=e&&t!=t:mi(e,t,n,i,wi,a))}function gi(e,t){return wi(e,t)}const Si=/^\d+(\.\d+)?([a-z]+|%)?$/,Ai=(e,t,n)=>{h(e,"_minWidth",(e=>"string"==typeof e&&Si.test(e)),new Set(["String","/^\\d+(\\.\\d+)?([a-z]+|%)?$/"]),t,n)},Oi=class{constructor(n){t(this,n),this.horizontal=!0,this.cellsToRenderTimeouts=new Map,this.dataToKeyMap=new Map,this.checkboxRefs=[],this.renderTableRow=(t,n,i,a=!1)=>{var o,l;let s=String(n);return this.horizontal&&(null===(o=t[0])||void 0===o?void 0:o.data)&&(s=null!==(l=this.getDataKey(t[0].data))&&void 0!==l?l:s),e("tr",{class:r("kol-table__row",{"kol-table__row--body":!a,"kol-table__row--footer":a}),key:`row-${s}`},this.renderSelectionCell(t,n),t.map(((e,t)=>this.renderTableCell(e,n,t,i))))},this.renderTableCell=(t,n,i,a)=>{const o=this.getColumnSettings(t);if(o&&!o.visible)return"";let l=`${n}-${i}-${t.label}`;if(t.data){const e=this.getDataKey(t.data);l=e?`${e}-${this.horizontal?i:n}`:l}return t.headerCell?this.renderHeadingCell(t,n,i,a):e("td",{key:`cell-${l}`,class:r("kol-table__cell kol-table__cell--body",{[`kol-table__cell--align-${t.textAlign}`]:t.textAlign}),colSpan:t.colSpan,rowSpan:t.rowSpan,style:{textAlign:t.textAlign,width:(null==o?void 0:o.width)?`${o.width}ch`:t.width},ref:"function"==typeof t.render?e=>{this.cellRender(t,e)}:void 0},"function"!=typeof t.render?t.label:"")},this.state={_data:[],_headerCells:{horizontal:[],vertical:[]},_label:"",_minWidth:"auto"},this.tableDivElementHasScrollbar=!1,this.previousHeaderCells=void 0,this._data=void 0,this._dataFoot=void 0,this._headerCells=void 0,this._label=void 0,this._minWidth=void 0,this._on=void 0,this._selection=void 0,this._tableSettings=void 0}validateData(e){j(this,e,{beforePatch:e=>{this.updateDataToKeyMap(e)}})}validateDataFoot(e){k(this,e)}validateHeaderCells(e){W(this,e),gi(this.previousHeaderCells,this.state._headerCells)||this.initializeTableSettings(),this.previousHeaderCells=this.state._headerCells}validateLabel(e){M(this,e,{required:!0})}validateMinWidth(e){Ai(this,e)}validateOn(e){m(this,e)}validateSelection(e){w(this,e)}validateTableSettings(e){g(this,e)}handleKeyDown(e){var t;if("ArrowUp"===e.key||"ArrowDown"===e.key){const n=null===(t=this.tableDivElement)||void 0===t?void 0:t.querySelector(":focus");let i=this.checkboxRefs.indexOf(n);i>-1&&(e.preventDefault(),"ArrowDown"===e.key?(i=(i+1)%this.checkboxRefs.length,this.checkboxRefs[i].focus()):"ArrowUp"===e.key&&(e.preventDefault(),i=(i+this.checkboxRefs.length-1)%this.checkboxRefs.length,this.checkboxRefs[i].focus()))}}componentDidRender(){this.checkDivElementScrollbar()}componentDidLoad(){this.tableDivElement&&ResizeObserver&&(this.tableDivElementResizeObserver=new ResizeObserver(this.checkDivElementScrollbar.bind(this)),this.tableDivElementResizeObserver.observe(this.tableDivElement))}handleSettingsChange(e){v(this,"_tableSettings",e.detail)}disconnectedCallback(){var e;null===(e=this.tableDivElementResizeObserver)||void 0===e||e.disconnect()}checkDivElementScrollbar(){this.tableDivElement&&(this.tableDivElementHasScrollbar=this.tableDivElement.scrollWidth>this.tableDivElement.clientWidth)}updateDataToKeyMap(e){e.forEach((e=>{this.dataToKeyMap.has(e)||this.dataToKeyMap.set(e,_())})),this.dataToKeyMap.forEach(((t,n)=>{e.includes(n)||this.dataToKeyMap.delete(n)}))}getDataKey(e){return this.dataToKeyMap.get(e)}cellRender(e,t){t&&(clearTimeout(this.cellsToRenderTimeouts.get(t)),this.cellsToRenderTimeouts.set(t,setTimeout((()=>{if("function"==typeof e.render){const n=e.render(t,e,e.data,this.state._data);"string"==typeof n&&(t.textContent=n)}}))))}getNumberOfCols(e,t){let n=0;return e.forEach((e=>{let t=0;Array.isArray(e)&&e.forEach((e=>{var n;return t+=null!==(n=e.colSpan)&&void 0!==n?n:1})),n<t&&(n=t)})),0===n&&(n=t.length),n}getNumberOfRows(e,t){var n;let i=0;return e.forEach((e=>{let t=0;Array.isArray(e)&&e.forEach((e=>{var n;return t+=null!==(n=e.rowSpan)&&void 0!==n?n:1})),i<t&&(i=t)})),0===i?i=t.length:i-=(null===(n=this.state._dataFoot)||void 0===n?void 0:n.length)||0,i}getThePrimaryHeadersWithKeysIfExists(e){const t=[];return e.forEach((e=>{e.forEach((e=>{"string"==typeof e.key&&t.push(e)}))})),t}getPrimaryHeaders(e){var t,n;let i=this.getThePrimaryHeadersWithKeysIfExists(null!==(t=e.horizontal)&&void 0!==t?t:[]);return this.horizontal=!0,0===i.length&&(i=this.getThePrimaryHeadersWithKeysIfExists(null!==(n=e.vertical)&&void 0!==n?n:[]),i.length>0&&(this.horizontal=!1)),i}getColumnPositionMap(){var e;const t=new Map;return null===(e=this.state._tableSettings)||void 0===e||e.columns.forEach((e=>{t.set(e.key,e.position)})),t}sortByColumnPosition(e){const t=this.getColumnPositionMap();return[...e].sort(((e,n)=>{var i,a,r,o;return(null!==(a=t.get(null!==(i=e.key)&&void 0!==i?i:""))&&void 0!==a?a:Number.MAX_SAFE_INTEGER)-(null!==(o=t.get(null!==(r=n.key)&&void 0!==r?r:""))&&void 0!==o?o:Number.MAX_SAFE_INTEGER)}))}createDataField(e,t,n){var i;t.horizontal=Array.isArray(null==t?void 0:t.horizontal)?t.horizontal:[],t.vertical=Array.isArray(null==t?void 0:t.vertical)?t.vertical:[];const a=this.getPrimaryHeaders(t),r=this.getNumberOfCols(t.horizontal,e);let o=this.getNumberOfRows(t.vertical,e),l=0;n&&(l=o,o+=(null===(i=this.state._dataFoot)||void 0===i?void 0:i.length)||0);const s=[],d=[],h=[];t.vertical.forEach(((e,t)=>{d[t]=0,h[t]=[]}));const u=this.sortByColumnPosition(a);for(let i=l;i<o;i++){const a=[];t.vertical.forEach(((e,t)=>{let n=0;if(h[t].forEach((e=>n+=e)),n<=i){const r=e[i-n+d[t]];if("object"==typeof r){a.push(Object.assign(Object.assign({},r),{headerCell:!0,data:{}}));let e=1;if("number"==typeof r.rowSpan&&r.rowSpan>1&&(e=r.rowSpan),h[t].push(e),"number"==typeof r.colSpan&&r.colSpan>1)for(let n=1;n<r.colSpan;n++)h[t+n].push(e);d[t]++}}}));for(let t=0;t<r;t++)if(!0===this.horizontal){const r=n&&this.state._dataFoot?this.state._dataFoot[i-l]:e[i];"object"==typeof u[t]&&null!==u[t]&&"string"==typeof u[t].key&&"object"==typeof r&&null!==r&&a.push(Object.assign(Object.assign({},u[t]),{colSpan:void 0,data:r,label:r[u[t].key],rowSpan:void 0}))}else"object"==typeof u[i]&&null!==u[i]&&"string"==typeof u[i].key&&"object"==typeof e[t]&&null!==e[t]&&a.push(Object.assign(Object.assign({},u[i]),{colSpan:void 0,data:e[t],label:e[t][u[i].key],rowSpan:void 0}));s.push(a)}if(0===e.length){let e=0,n=0;Array.isArray(t.horizontal)&&t.horizontal.length>0&&t.horizontal[0].forEach((t=>{e+=t.colSpan||1})),Array.isArray(t.vertical)&&t.vertical.length>0&&(e-=t.vertical.length,t.vertical[0].forEach((e=>{n+=e.rowSpan||1})));const i={colSpan:e,label:c("kol-no-entries"),render:void 0,rowSpan:Math.max(n,1)};0===s.length?s.push([i]):s[0].push(i)}return s}handleSelectionChangeCallbackAndEvent(e,t){var n;"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n[b.onSelectionChange])&&this.state._on[b.onSelectionChange](e,t),this.host&&p(this.host,y.selectionChange,t)}initializeTableSettings(){if(this._tableSettings)return;const e=this.getPrimaryHeaders(this.state._headerCells);this.state._tableSettings||(this.state._tableSettings={columns:[]}),this.state._tableSettings.columns=e.filter((e=>e.key)).map(((e,t)=>{var n;return{key:null!==(n=e.key)&&void 0!==n?n:_(),label:e.label,position:t,visible:!0}}))}componentWillLoad(){this.validateData(this._data),this.validateDataFoot(this._dataFoot),this.validateHeaderCells(this._headerCells),this.validateLabel(this._label),this.validateMinWidth(this._minWidth),this.validateOn(this._on),this.validateSelection(this._selection),this.validateTableSettings(this._tableSettings)}renderSelectionCell(t,n){var i,l,s;const c=this.state._selection;if(!c)return"";const d=this.getSelectionKeyPropertyName(),h=null===(i=t[0])||void 0===i?void 0:i.data;if(!h)return"";const u=h[d],b=c.multiple||void 0===c.multiple,v=null===(l=null==c?void 0:c.selectedKeys)||void 0===l?void 0:l.includes(u),_=null===(s=null==c?void 0:c.disabledKeys)||void 0===s?void 0:s.includes(u),f=c.label(h),p={name:"selection",checked:v,disabled:_,id:u,"aria-label":f};return e("td",{key:`tbody-${n}-selection`,class:"kol-table__cell kol-table__cell--selection"},e("div",{class:r("kol-table__selection",{"kol-table__selection--checked":v})},b?e("label",{class:r("kol-table__selection-label",{"kol-table__selection-label--disabled":_})},e(o,{class:"kol-table__selection-icon",_icons:"codicon "+(v?"codicon-check":""),_label:""}),e("input",Object.assign({class:r("kol-table__selection-input kol-table__selection-input--checkbox"),ref:e=>e&&this.checkboxRefs.push(e)},p,{type:"checkbox",onInput:e=>{var t,n;const i=v?null===(n=null==c?void 0:c.selectedKeys)||void 0===n?void 0:n.filter((e=>e!==u)):[...null!==(t=null==c?void 0:c.selectedKeys)&&void 0!==t?t:[],u];this.handleSelectionChangeCallbackAndEvent(e,null!=i?i:[])}}))):e("label",{class:"kol-table__selection-label"},e("input",Object.assign({class:r("kol-table__selection-input kol-table__selection-input--radio")},p,{type:"radio",onInput:e=>{this.handleSelectionChangeCallbackAndEvent(e,u)}}))),e(a,{"aria-hidden":"true",class:"kol-table__selection-input-tooltip",_align:"right",_id:`${u}-label`,_label:f})))}getColumnSettings(e){var t;return null===(t=this.state._tableSettings)||void 0===t?void 0:t.columns.find((t=>t.key===e.key))}getSelectionKeyPropertyName(){var e,t;return null!==(t=null===(e=this.state._selection)||void 0===e?void 0:e.keyPropertyName)&&void 0!==t?t:"id"}getDataWithSelectionEnabled(){const e=this.getSelectionKeyPropertyName();return this.state._data.filter((t=>{var n,i;return!(null===(i=null===(n=this.state._selection)||void 0===n?void 0:n.disabledKeys)||void 0===i?void 0:i.includes(t[e]))}))}getSelectedKeysWithoutDisabledKeys(){var e,t;return null===(t=null===(e=this.state._selection)||void 0===e?void 0:e.selectedKeys)||void 0===t?void 0:t.filter((e=>{var t,n;return!(null===(n=null===(t=this.state._selection)||void 0===t?void 0:t.disabledKeys)||void 0===n?void 0:n.includes(e))}))}getSelectedKeysWithDisabledKeysOnly(){var e,t;return null===(t=null===(e=this.state._selection)||void 0===e?void 0:e.selectedKeys)||void 0===t?void 0:t.filter((e=>{var t,n;return null===(n=null===(t=this.state._selection)||void 0===t?void 0:t.disabledKeys)||void 0===n?void 0:n.includes(e)}))}getRevertedSelection(e){var t;const n=this.getSelectionKeyPropertyName(),i=null!==(t=this.getSelectedKeysWithDisabledKeysOnly())&&void 0!==t?t:[];return e&&i.push(...this.getDataWithSelectionEnabled().map((e=>null==e?void 0:e[n]))),i}getTableMinWidth(){var e,t;const n=null!==(t=null===(e=this.state._tableSettings)||void 0===e?void 0:e.columns.filter((e=>e.visible)).reduce(((e,t)=>{var n;return e+(null!==(n=t.width)&&void 0!==n?n:0)}),0))&&void 0!==t?t:0;return"auto"===this.state._minWidth?`${n}ch`:`max(${this.state._minWidth}, ${n}ch)`}renderHeadingSelectionCell(){var t,n;const i=this.state._selection;if(!i||!i.multiple&&void 0!==i.multiple)return e("th",{class:"kol-table__cell kol-table__cell--header",key:"thead-0"});const l=null!==(n=null===(t=this.getSelectedKeysWithoutDisabledKeys())||void 0===t?void 0:t.length)&&void 0!==n?n:0,s=l===this.getDataWithSelectionEnabled().length,d=0!==l&&!s;let h="kol-table-selection-indeterminate";s&&!d&&(h="kol-table-selection-none"),0===l&&(h="kol-table-selection-all");const u=c(h);return e("th",{key:"thead-0-selection",class:"kol-table__cell kol-table__cell--header"},e("div",{class:r("kol-table__selection",{"kol-table__selection--indeterminate":d,"kol-table__selection--checked":s})},e("label",{class:"kol-table__selection-label"},e(o,{class:"kol-table__selection-icon",_icons:"codicon "+(d?"codicon-remove":s?"codicon-check":""),_label:""}),e("input",{class:r("kol-table__selection-input kol-table__selection-input--checkbox"),"data-testid":"selection-checkbox-all",ref:e=>e&&this.checkboxRefs.push(e),name:"selection",checked:s&&!d,indeterminate:d,"aria-label":u,type:"checkbox",onInput:e=>{this.handleSelectionChangeCallbackAndEvent(e,this.getRevertedSelection(!s))}})),e(a,{"aria-hidden":"true",class:"kol-table__selection-input-tooltip",_align:"right",_id:`${h}-label`,_label:u})))}renderHeaderTdCell(){return e(n,null,Array.isArray(this.state._headerCells.horizontal)&&this.state._headerCells.horizontal.length>0&&Array.isArray(this.state._headerCells.vertical)&&this.state._headerCells.vertical.length>0&&Array.isArray(this.state._headerCells.horizontal)&&e("td",{"aria-hidden":"true",colSpan:this.state._headerCells.vertical.length,rowSpan:this.state._headerCells.horizontal.length}))}renderHeadingCell(t,n,i,a){const o=this.getColumnSettings(t);if(o&&!o.visible)return"";let s,c="codicon codicon-fold";if(t.sortDirection)switch(t.sortDirection){case"ASC":c="codicon codicon-chevron-up",s="ascending";break;case"DESC":c="codicon codicon-chevron-down",s="descending"}const d=a?"row":"number"==typeof t.colSpan&&t.colSpan>1?"colgroup":"col";return e("th",{key:`${n}-${i}-${t.label}`,class:r("kol-table__cell kol-table__cell--header",{[`kol-table__cell--align-${t.textAlign}`]:t.textAlign,[`kol-table__cell--${s}`]:s}),scope:d,colSpan:t.colSpan,rowSpan:t.rowSpan,style:{width:(null==o?void 0:o.width)?`${o.width}ch`:t.width},"aria-sort":s,"data-sort":`sort-${t.sortDirection}`},t.sortDirection?e(l,{class:"kol-table__sort-button",exportparts:"icon",_icons:{right:c},_label:t.label,_on:{onClick:e=>{var n;"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n.onSort)&&t.key&&t.sortDirection&&this.state._on.onSort(e,{key:t.key,currentSortDirection:t.sortDirection}),this.host&&p(this.host,y.sort,{key:t.key,currentSortDirection:t.sortDirection})}}}):t.label)}renderSpacer(t,n){var i,a;const o=(null===(i=this.state._headerCells.vertical)||void 0===i?void 0:i.length)||0,l=null===(a=null==n?void 0:n[0])||void 0===a?void 0:a.reduce(((e,t)=>e+(t.colSpan||1)),0),s=this.state._selection?1:0;return e("tr",{"aria-hidden":"true",class:r("kol-table__spacer",`kol-table__spacer--${t}`)},e("td",{class:r(`kol-table__spacer-line kol-table__spacer-line--${t}`),colSpan:o+l+s}))}renderFoot(){if(!this.state._dataFoot||0===this.state._dataFoot.length)return null;const t=this.createDataField(this.state._dataFoot,this.state._headerCells,!0);return e("tfoot",{class:"kol-table__footer"},[this.renderSpacer("foot",t),t.map(((e,t)=>this.renderTableRow(e,t,!0,!0)))])}render(){var t;const n=this.createDataField(this.state._data,this.state._headerCells);this.checkboxRefs=[];const i=null===(t=this.state._headerCells.horizontal)||void 0===t?void 0:t.map((e=>this.sortByColumnPosition(e)));return e("div",{key:"55c1614208608e7206bfde32af951f066267b629",class:"kol-table"},e(s,{key:"a6a176a7a90d134c6c99fae76b14d0dd6523a88b",_tableSettings:this.state._tableSettings}),e("div",{key:"7d1498c5925016efc03772480936bfd2d8d9bd27",ref:e=>this.tableDivElement=e,class:"kol-table__scroll-container",tabindex:this.tableDivElementHasScrollbar?"-1":void 0},e("table",{key:"41097ebc50e0913333e017d43206778c031add65",class:"kol-table__table",style:{minWidth:this.getTableMinWidth()}},e("div",{key:"f0539b67aa7c7ef1271a67dd22c741e4a6f60d4e",class:"kol-table__focus-element",tabindex:this.tableDivElementHasScrollbar?"0":void 0,"aria-describedby":"caption"}," "),e("caption",{key:"7199792f023995a8964efaa2b9f11b79780717b1",class:"kol-table__caption",id:"caption"},this.state._label),Array.isArray(i)&&e("thead",{key:"86242ee062afb71d654b7e64698dca8178012bc3",class:"kol-table__head"},[i.map(((t,n)=>e("tr",{class:"kol-table__head-row",key:`thead-${n}`},this.state._selection&&this.renderHeadingSelectionCell(),0===n&&this.renderHeaderTdCell(),Array.isArray(t)&&t.map(((e,t)=>this.renderHeadingCell(e,n,t,!1)))))),this.renderSpacer("head",i)]),e("tbody",{key:"b7866fe3430029ea01b05d747ea49e42c577d10c",class:"kol-table__body"},n.map(((e,t)=>this.renderTableRow(e,t,!0)))),this.renderFoot())))}get host(){return i(this)}static get watchers(){return{_data:["validateData"],_dataFoot:["validateDataFoot"],_headerCells:["validateHeaderCells"],_label:["validateLabel"],_minWidth:["validateMinWidth"],_on:["validateOn"],_selection:["validateSelection"],_tableSettings:["validateTableSettings"]}}};export{Oi as kol_table_stateless_wc};
4
+ import{r as t,h as e,F as n,g as i}from"./index-8eb636a7.js";import{c as r}from"./clsx-09a06a12.js";import{e as a,a as o,b as l,w as s}from"./component-names-0657b355.js";import{t as c}from"./i18n-260f0fe9.js";import{M as u,o as d,k as f,w as h,l as v}from"./index-ebe5a881.js";import{C as b}from"./keyboard-2483c6de.js";import{n as _}from"./dev.utils-5283c49a.js";import{d as p,K as y}from"./events-bad0a075.js";import{v as j,a as k,e as m,b as w,d as g}from"./table-settings-c12356ed.js";import{b as S,r as A,a as O,f as $,i as x,S as C}from"./isArray-7a60fa7f.js";import{i as D}from"./isObject-ffcbbb76.js";import{v as M}from"./label-bf9966d0.js";import"./i18n-45224cc3.js";const W=(e,t)=>{u(t,(()=>{d(t,(()=>{try{t=f(t)}catch(e){}h(e,"_headerCells",(e=>"object"==typeof e&&null!==e&&(void 0===e.horizontal||Array.isArray(e.horizontal)&&void 0===e.horizontal.find((e=>!Array.isArray(e))))&&(void 0===e.vertical||Array.isArray(e.vertical)&&void 0===e.vertical.find((e=>!Array.isArray(e))))&&!0),new Set(["TableHeaderCellsPropType"]),t)}))}))};var F="[object AsyncFunction]",P="[object Function]",T="[object GeneratorFunction]",E="[object Proxy]";function K(e){if(!D(e))return!1;var t=S(e);return t==P||t==T||t==F||t==E}var R=A["__core-js_shared__"];const H=R;var I=function(){var e=/[^.]+$/.exec(H&&H.keys&&H.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function N(e){return!!I&&I in e}var z=Function.prototype,B=z.toString;function U(e){if(null!=e){try{return B.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var L=/[\\^$.*+?()[\]{}|]/g,V=/^\[object .+?Constructor\]$/,q=Function.prototype,G=Object.prototype,J=q.toString,Q=G.hasOwnProperty,X=RegExp("^"+J.call(Q).replace(L,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Y(e){return!(!D(e)||N(e))&&(K(e)?X:V).test(U(e))}function Z(e,t){return null==e?void 0:e[t]}function tt(e,t){var n=Z(e,t);return Y(n)?n:void 0}var et=tt(A,"WeakMap");const nt=et;var it=9007199254740991,rt=/^(?:0|[1-9]\d*)$/;function at(e,t){var n=typeof e;return!!(t=null==t?it:t)&&("number"==n||"symbol"!=n&&rt.test(e))&&e>-1&&e%1==0&&e<t}function ot(e,t){return e===t||e!=e&&t!=t}var lt=9007199254740991;function st(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=lt}function ct(e){return null!=e&&st(e.length)&&!K(e)}var ut=Object.prototype;function dt(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||ut)}function ft(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}var ht="[object Arguments]";function vt(e){return O(e)&&S(e)==ht}var bt=Object.prototype,_t=bt.hasOwnProperty,pt=bt.propertyIsEnumerable,yt=vt(function(){return arguments}())?vt:function(e){return O(e)&&_t.call(e,"callee")&&!pt.call(e,"callee")};const jt=yt;function kt(){return!1}var mt="object"==typeof exports&&exports&&!exports.nodeType&&exports,wt=mt&&"object"==typeof module&&module&&!module.nodeType&&module,gt=wt&&wt.exports===mt,St=gt?A.Buffer:void 0,At=St?St.isBuffer:void 0,Ot=At||kt;const $t=Ot;var xt="[object Arguments]",Ct="[object Array]",Dt="[object Boolean]",Mt="[object Date]",Wt="[object Error]",Ft="[object Function]",Pt="[object Map]",Tt="[object Number]",Et="[object Object]",Kt="[object RegExp]",Rt="[object Set]",Ht="[object String]",It="[object WeakMap]",Nt="[object ArrayBuffer]",zt="[object DataView]",Bt="[object Float32Array]",Ut="[object Float64Array]",Lt="[object Int8Array]",Vt="[object Int16Array]",qt="[object Int32Array]",Gt="[object Uint8Array]",Jt="[object Uint8ClampedArray]",Qt="[object Uint16Array]",Xt="[object Uint32Array]",Yt={};function Zt(e){return O(e)&&st(e.length)&&!!Yt[S(e)]}function te(e){return function(t){return e(t)}}Yt[Bt]=Yt[Ut]=Yt[Lt]=Yt[Vt]=Yt[qt]=Yt[Gt]=Yt[Jt]=Yt[Qt]=Yt[Xt]=!0,Yt[xt]=Yt[Ct]=Yt[Nt]=Yt[Dt]=Yt[zt]=Yt[Mt]=Yt[Wt]=Yt[Ft]=Yt[Pt]=Yt[Tt]=Yt[Et]=Yt[Kt]=Yt[Rt]=Yt[Ht]=Yt[It]=!1;var ee="object"==typeof exports&&exports&&!exports.nodeType&&exports,ne=ee&&"object"==typeof module&&module&&!module.nodeType&&module,ie=ne&&ne.exports===ee,re=ie&&$.process,ae=function(){try{var e=ne&&ne.require&&ne.require("util").types;return e||re&&re.binding&&re.binding("util")}catch(e){}}();const oe=ae;var le=ae&&ae.isTypedArray,se=le?te(le):Zt;const ce=se;var ue=Object.prototype,de=ue.hasOwnProperty;function fe(e,t){var n=x(e),i=!n&&jt(e),a=!n&&!i&&$t(e),r=!n&&!i&&!a&&ce(e),o=n||i||a||r,l=o?ft(e.length,String):[],s=l.length;for(var c in e)!t&&!de.call(e,c)||o&&("length"==c||a&&("offset"==c||"parent"==c)||r&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||at(c,s))||l.push(c);return l}function he(e,t){return function(n){return e(t(n))}}var ve=he(Object.keys,Object);const be=ve;var _e=Object.prototype,pe=_e.hasOwnProperty;function ye(e){if(!dt(e))return be(e);var t=[];for(var n in Object(e))pe.call(e,n)&&"constructor"!=n&&t.push(n);return t}function je(e){return ct(e)?fe(e):ye(e)}var ke=tt(Object,"create");const me=ke;function we(){this.__data__=me?me(null):{},this.size=0}function ge(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Se="__lodash_hash_undefined__",Ae=Object.prototype,Oe=Ae.hasOwnProperty;function $e(e){var t=this.__data__;if(me){var n=t[e];return n===Se?void 0:n}return Oe.call(t,e)?t[e]:void 0}var xe=Object.prototype,Ce=xe.hasOwnProperty;function De(e){var t=this.__data__;return me?void 0!==t[e]:Ce.call(t,e)}var Me="__lodash_hash_undefined__";function We(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=me&&void 0===t?Me:t,this}function Fe(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Pe(){this.__data__=[],this.size=0}function Te(e,t){for(var n=e.length;n--;)if(ot(e[n][0],t))return n;return-1}Fe.prototype.clear=we,Fe.prototype.delete=ge,Fe.prototype.get=$e,Fe.prototype.has=De,Fe.prototype.set=We;var Ee=Array.prototype,Ke=Ee.splice;function Re(e){var t=this.__data__,n=Te(t,e);return!(n<0)&&(n==t.length-1?t.pop():Ke.call(t,n,1),--this.size,!0)}function He(e){var t=this.__data__,n=Te(t,e);return n<0?void 0:t[n][1]}function Ie(e){return Te(this.__data__,e)>-1}function Ne(e,t){var n=this.__data__,i=Te(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}function ze(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}ze.prototype.clear=Pe,ze.prototype.delete=Re,ze.prototype.get=He,ze.prototype.has=Ie,ze.prototype.set=Ne;var Be=tt(A,"Map");const Ue=Be;function Le(){this.size=0,this.__data__={hash:new Fe,map:new(Ue||ze),string:new Fe}}function Ve(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}function qe(e,t){var n=e.__data__;return Ve(t)?n["string"==typeof t?"string":"hash"]:n.map}function Ge(e){var t=qe(this,e).delete(e);return this.size-=t?1:0,t}function Je(e){return qe(this,e).get(e)}function Qe(e){return qe(this,e).has(e)}function Xe(e,t){var n=qe(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}function Ye(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}function Ze(e,t){for(var n=-1,i=t.length,a=e.length;++n<i;)e[a+n]=t[n];return e}function tn(){this.__data__=new ze,this.size=0}function en(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function nn(e){return this.__data__.get(e)}function rn(e){return this.__data__.has(e)}Ye.prototype.clear=Le,Ye.prototype.delete=Ge,Ye.prototype.get=Je,Ye.prototype.has=Qe,Ye.prototype.set=Xe;var an=200;function on(e,t){var n=this.__data__;if(n instanceof ze){var i=n.__data__;if(!Ue||i.length<an-1)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Ye(i)}return n.set(e,t),this.size=n.size,this}function ln(e){var t=this.__data__=new ze(e);this.size=t.size}function sn(e,t){for(var n=-1,i=null==e?0:e.length,a=0,r=[];++n<i;){var o=e[n];t(o,n,e)&&(r[a++]=o)}return r}function cn(){return[]}ln.prototype.clear=tn,ln.prototype.delete=en,ln.prototype.get=nn,ln.prototype.has=rn,ln.prototype.set=on;var un=Object.prototype,dn=un.propertyIsEnumerable,fn=Object.getOwnPropertySymbols,hn=fn?function(e){return null==e?[]:(e=Object(e),sn(fn(e),(function(t){return dn.call(e,t)})))}:cn;const vn=hn;function bn(e,t,n){var i=t(e);return x(e)?i:Ze(i,n(e))}function _n(e){return bn(e,je,vn)}var pn=tt(A,"DataView");const yn=pn;var jn=tt(A,"Promise");const kn=jn;var mn=tt(A,"Set");const wn=mn;var gn="[object Map]",Sn="[object Object]",An="[object Promise]",On="[object Set]",$n="[object WeakMap]",xn="[object DataView]",Cn=U(yn),Dn=U(Ue),Mn=U(kn),Wn=U(wn),Fn=U(nt),Pn=S;(yn&&Pn(new yn(new ArrayBuffer(1)))!=xn||Ue&&Pn(new Ue)!=gn||kn&&Pn(kn.resolve())!=An||wn&&Pn(new wn)!=On||nt&&Pn(new nt)!=$n)&&(Pn=function(e){var t=S(e),n=t==Sn?e.constructor:void 0,i=n?U(n):"";if(i)switch(i){case Cn:return xn;case Dn:return gn;case Mn:return An;case Wn:return On;case Fn:return $n}return t});const Tn=Pn;var En=A.Uint8Array;const Kn=En;var Rn="__lodash_hash_undefined__";function Hn(e){return this.__data__.set(e,Rn),this}function In(e){return this.__data__.has(e)}function Nn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Ye;++t<n;)this.add(e[t])}function zn(e,t){for(var n=-1,i=null==e?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}function Bn(e,t){return e.has(t)}Nn.prototype.add=Nn.prototype.push=Hn,Nn.prototype.has=In;var Un=1,Ln=2;function Vn(e,t,n,i,a,r){var o=n&Un,l=e.length,s=t.length;if(l!=s&&!(o&&s>l))return!1;var c=r.get(e),d=r.get(t);if(c&&d)return c==t&&d==e;var h=-1,u=!0,b=n&Ln?new Nn:void 0;for(r.set(e,t),r.set(t,e);++h<l;){var v=e[h],_=t[h];if(i)var f=o?i(_,v,h,t,e,r):i(v,_,h,e,t,r);if(void 0!==f){if(f)continue;u=!1;break}if(b){if(!zn(t,(function(e,t){if(!Bn(b,t)&&(v===e||a(v,e,n,i,r)))return b.push(t)}))){u=!1;break}}else if(v!==_&&!a(v,_,n,i,r)){u=!1;break}}return r.delete(e),r.delete(t),u}function qn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,i){n[++t]=[i,e]})),n}function Gn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}var Jn=1,Qn=2,Xn="[object Boolean]",Yn="[object Date]",Zn="[object Error]",ti="[object Map]",ei="[object Number]",ni="[object RegExp]",ii="[object Set]",ri="[object String]",ai="[object Symbol]",oi="[object ArrayBuffer]",li="[object DataView]",si=C?C.prototype:void 0,ci=si?si.valueOf:void 0;function ui(e,t,n,i,a,r,o){switch(n){case li:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case oi:return!(e.byteLength!=t.byteLength||!r(new Kn(e),new Kn(t)));case Xn:case Yn:case ei:return ot(+e,+t);case Zn:return e.name==t.name&&e.message==t.message;case ni:case ri:return e==t+"";case ti:var l=qn;case ii:var s=i&Jn;if(l||(l=Gn),e.size!=t.size&&!s)return!1;var c=o.get(e);if(c)return c==t;i|=Qn,o.set(e,t);var d=Vn(l(e),l(t),i,a,r,o);return o.delete(e),d;case ai:if(ci)return ci.call(e)==ci.call(t)}return!1}var di=1,fi=Object.prototype,hi=fi.hasOwnProperty;function vi(e,t,n,i,a,r){var o=n&di,l=_n(e),s=l.length;if(s!=_n(t).length&&!o)return!1;for(var c=s;c--;){var d=l[c];if(!(o?d in t:hi.call(t,d)))return!1}var h=r.get(e),u=r.get(t);if(h&&u)return h==t&&u==e;var b=!0;r.set(e,t),r.set(t,e);for(var v=o;++c<s;){var _=e[d=l[c]],f=t[d];if(i)var p=o?i(f,_,d,t,e,r):i(_,f,d,e,t,r);if(!(void 0===p?_===f||a(_,f,n,i,r):p)){b=!1;break}v||(v="constructor"==d)}if(b&&!v){var y=e.constructor,g=t.constructor;y==g||!("constructor"in e)||!("constructor"in t)||"function"==typeof y&&y instanceof y&&"function"==typeof g&&g instanceof g||(b=!1)}return r.delete(e),r.delete(t),b}var bi=1,_i="[object Arguments]",pi="[object Array]",yi="[object Object]",ji=Object.prototype,ki=ji.hasOwnProperty;function mi(e,t,n,i,a,r){var o=x(e),l=x(t),s=o?pi:Tn(e),c=l?pi:Tn(t),d=(s=s==_i?yi:s)==yi,h=(c=c==_i?yi:c)==yi,u=s==c;if(u&&$t(e)){if(!$t(t))return!1;o=!0,d=!1}if(u&&!d)return r||(r=new ln),o||ce(e)?Vn(e,t,n,i,a,r):ui(e,t,s,n,i,a,r);if(!(n&bi)){var b=d&&ki.call(e,"__wrapped__"),v=h&&ki.call(t,"__wrapped__");if(b||v){var _=b?e.value():e,f=v?t.value():t;return r||(r=new ln),a(_,f,n,i,r)}}return!!u&&(r||(r=new ln),vi(e,t,n,i,a,r))}function wi(e,t,n,i,a){return e===t||(null==e||null==t||!O(e)&&!O(t)?e!=e&&t!=t:mi(e,t,n,i,wi,a))}function gi(e,t){return wi(e,t)}const Si=/^\d+(\.\d+)?([a-z]+|%)?$/,Ai=(e,t,n)=>{h(e,"_minWidth",(e=>"string"==typeof e&&Si.test(e)),new Set(["String","/^\\d+(\\.\\d+)?([a-z]+|%)?$/"]),t,n)},Oi=class{constructor(n){t(this,n),this.horizontal=!0,this.cellsToRenderTimeouts=new Map,this.dataToKeyMap=new Map,this.checkboxRefs=[],this.renderTableRow=(t,n,i,a=!1)=>{var o,l;let s=String(n);return this.horizontal&&(null===(o=t[0])||void 0===o?void 0:o.data)&&(s=null!==(l=this.getDataKey(t[0].data))&&void 0!==l?l:s),e("tr",{class:r("kol-table__row",{"kol-table__row--body":!a,"kol-table__row--footer":a}),key:`row-${s}`},this.renderSelectionCell(t,n),t.map(((e,t)=>this.renderTableCell(e,n,t,i))))},this.renderTableCell=(t,n,i,a)=>{const o=this.getColumnSettings(t);if(o&&!o.visible)return"";let l=`${n}-${i}-${t.label}`;if(t.data){const e=this.getDataKey(t.data);l=e?`${e}-${this.horizontal?i:n}`:l}return t.headerCell?this.renderHeadingCell(t,n,i,a):e("td",{key:`cell-${l}`,class:r("kol-table__cell kol-table__cell--body",{[`kol-table__cell--align-${t.textAlign}`]:t.textAlign}),colSpan:t.colSpan,rowSpan:t.rowSpan,style:{textAlign:t.textAlign,width:(null==o?void 0:o.width)?`${o.width}ch`:t.width},ref:"function"==typeof t.render?e=>{this.cellRender(t,e)}:void 0},"function"!=typeof t.render?t.label:"")},this.state={_data:[],_headerCells:{horizontal:[],vertical:[]},_label:"",_minWidth:"auto"},this.tableDivElementHasScrollbar=!1,this.previousHeaderCells=void 0,this._data=void 0,this._dataFoot=void 0,this._headerCells=void 0,this._label=void 0,this._minWidth=void 0,this._on=void 0,this._selection=void 0,this._tableSettings=void 0}validateData(e){j(this,e,{beforePatch:e=>{this.updateDataToKeyMap(e)}})}validateDataFoot(e){k(this,e)}validateHeaderCells(e){W(this,e),gi(this.previousHeaderCells,this.state._headerCells)||this.initializeTableSettings(),this.previousHeaderCells=this.state._headerCells}validateLabel(e){M(this,e,{required:!0})}validateMinWidth(e){Ai(this,e)}validateOn(e){m(this,e)}validateSelection(e){w(this,e)}validateTableSettings(e){g(this,e)}handleKeyDown(e){var t;if("ArrowUp"===e.key||"ArrowDown"===e.key){const n=null===(t=this.tableDivElement)||void 0===t?void 0:t.querySelector(":focus");let i=this.checkboxRefs.indexOf(n);i>-1&&(e.preventDefault(),"ArrowDown"===e.key?(i=(i+1)%this.checkboxRefs.length,this.checkboxRefs[i].focus()):"ArrowUp"===e.key&&(e.preventDefault(),i=(i+this.checkboxRefs.length-1)%this.checkboxRefs.length,this.checkboxRefs[i].focus()))}}componentDidRender(){this.checkDivElementScrollbar()}componentDidLoad(){this.tableDivElement&&ResizeObserver&&(this.tableDivElementResizeObserver=new ResizeObserver(this.checkDivElementScrollbar.bind(this)),this.tableDivElementResizeObserver.observe(this.tableDivElement))}handleSettingsChange(e){v(this,"_tableSettings",e.detail)}disconnectedCallback(){var e;null===(e=this.tableDivElementResizeObserver)||void 0===e||e.disconnect()}checkDivElementScrollbar(){this.tableDivElement&&(this.tableDivElementHasScrollbar=this.tableDivElement.scrollWidth>this.tableDivElement.clientWidth)}updateDataToKeyMap(e){e.forEach((e=>{this.dataToKeyMap.has(e)||this.dataToKeyMap.set(e,_())})),this.dataToKeyMap.forEach(((t,n)=>{e.includes(n)||this.dataToKeyMap.delete(n)}))}getDataKey(e){return this.dataToKeyMap.get(e)}cellRender(e,t){t&&(clearTimeout(this.cellsToRenderTimeouts.get(t)),this.cellsToRenderTimeouts.set(t,setTimeout((()=>{if("function"==typeof e.render){const n=e.render(t,e,e.data,this.state._data);"string"==typeof n&&(t.textContent=n)}}))))}getNumberOfCols(e,t){let n=0;return e.forEach((e=>{let t=0;Array.isArray(e)&&e.forEach((e=>{var n;return t+=null!==(n=e.colSpan)&&void 0!==n?n:1})),n<t&&(n=t)})),0===n&&(n=t.length),n}getNumberOfRows(e,t){var n;let i=0;return e.forEach((e=>{let t=0;Array.isArray(e)&&e.forEach((e=>{var n;return t+=null!==(n=e.rowSpan)&&void 0!==n?n:1})),i<t&&(i=t)})),0===i?i=t.length:i-=(null===(n=this.state._dataFoot)||void 0===n?void 0:n.length)||0,i}getThePrimaryHeadersWithKeysIfExists(e){const t=[];return e.forEach((e=>{e.forEach((e=>{"string"==typeof e.key&&t.push(e)}))})),t}getPrimaryHeaders(e){var t,n;let i=this.getThePrimaryHeadersWithKeysIfExists(null!==(t=e.horizontal)&&void 0!==t?t:[]);return this.horizontal=!0,0===i.length&&(i=this.getThePrimaryHeadersWithKeysIfExists(null!==(n=e.vertical)&&void 0!==n?n:[]),i.length>0&&(this.horizontal=!1)),i}getColumnPositionMap(){var e;const t=new Map;return null===(e=this.state._tableSettings)||void 0===e||e.columns.forEach((e=>{t.set(e.key,e.position)})),t}sortByColumnPosition(e){const t=this.getColumnPositionMap();return[...e].sort(((e,n)=>{var i,a,r,o;return(null!==(a=t.get(null!==(i=e.key)&&void 0!==i?i:""))&&void 0!==a?a:Number.MAX_SAFE_INTEGER)-(null!==(o=t.get(null!==(r=n.key)&&void 0!==r?r:""))&&void 0!==o?o:Number.MAX_SAFE_INTEGER)}))}createDataField(e,t,n){var i;t.horizontal=Array.isArray(null==t?void 0:t.horizontal)?t.horizontal:[],t.vertical=Array.isArray(null==t?void 0:t.vertical)?t.vertical:[];const a=this.getPrimaryHeaders(t),r=this.getNumberOfCols(t.horizontal,e);let o=this.getNumberOfRows(t.vertical,e),l=0;n&&(l=o,o+=(null===(i=this.state._dataFoot)||void 0===i?void 0:i.length)||0);const s=[],d=[],h=[];t.vertical.forEach(((e,t)=>{d[t]=0,h[t]=[]}));const u=this.sortByColumnPosition(a);for(let i=l;i<o;i++){const a=[];t.vertical.forEach(((e,t)=>{let n=0;if(h[t].forEach((e=>n+=e)),n<=i){const r=e[i-n+d[t]];if("object"==typeof r){a.push(Object.assign(Object.assign({},r),{headerCell:!0,data:{}}));let e=1;if("number"==typeof r.rowSpan&&r.rowSpan>1&&(e=r.rowSpan),h[t].push(e),"number"==typeof r.colSpan&&r.colSpan>1)for(let n=1;n<r.colSpan;n++)h[t+n].push(e);d[t]++}}}));for(let t=0;t<r;t++)if(!0===this.horizontal){const r=n&&this.state._dataFoot?this.state._dataFoot[i-l]:e[i];"object"==typeof u[t]&&null!==u[t]&&"string"==typeof u[t].key&&"object"==typeof r&&null!==r&&a.push(Object.assign(Object.assign({},u[t]),{colSpan:void 0,data:r,label:r[u[t].key],rowSpan:void 0}))}else"object"==typeof u[i]&&null!==u[i]&&"string"==typeof u[i].key&&"object"==typeof e[t]&&null!==e[t]&&a.push(Object.assign(Object.assign({},u[i]),{colSpan:void 0,data:e[t],label:e[t][u[i].key],rowSpan:void 0}));s.push(a)}if(0===e.length){let e=0,n=0;Array.isArray(t.horizontal)&&t.horizontal.length>0&&t.horizontal[0].forEach((t=>{e+=t.colSpan||1})),Array.isArray(t.vertical)&&t.vertical.length>0&&(e-=t.vertical.length,t.vertical[0].forEach((e=>{n+=e.rowSpan||1})));const i={colSpan:e,label:c("kol-no-entries"),render:void 0,rowSpan:Math.max(n,1)};0===s.length?s.push([i]):s[0].push(i)}return s}handleSelectionChangeCallbackAndEvent(e,t){var n;"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n[b.onSelectionChange])&&this.state._on[b.onSelectionChange](e,t),this.host&&p(this.host,y.selectionChange,t)}initializeTableSettings(){if(this._tableSettings)return;const e=this.getPrimaryHeaders(this.state._headerCells);this.state._tableSettings||(this.state._tableSettings={columns:[]}),this.state._tableSettings.columns=e.filter((e=>e.key)).map(((e,t)=>{var n;return{key:null!==(n=e.key)&&void 0!==n?n:_(),label:e.label,position:t,visible:!0}}))}componentWillLoad(){this.validateData(this._data),this.validateDataFoot(this._dataFoot),this.validateHeaderCells(this._headerCells),this.validateLabel(this._label),this.validateMinWidth(this._minWidth),this.validateOn(this._on),this.validateSelection(this._selection),this.validateTableSettings(this._tableSettings)}renderSelectionCell(t,n){var i,l,s;const c=this.state._selection;if(!c)return"";const d=this.getSelectionKeyPropertyName(),h=null===(i=t[0])||void 0===i?void 0:i.data;if(!h)return"";const u=h[d],b=c.multiple||void 0===c.multiple,v=null===(l=null==c?void 0:c.selectedKeys)||void 0===l?void 0:l.includes(u),_=null===(s=null==c?void 0:c.disabledKeys)||void 0===s?void 0:s.includes(u),f=c.label(h),p={name:"selection",checked:v,disabled:_,id:u,"aria-label":f};return e("td",{key:`tbody-${n}-selection`,class:"kol-table__cell kol-table__cell--selection"},e("div",{class:r("kol-table__selection",{"kol-table__selection--checked":v})},b?e("label",{class:r("kol-table__selection-label",{"kol-table__selection-label--disabled":_})},e(a,{class:"kol-table__selection-icon",_icons:"codicon "+(v?"codicon-check":""),_label:""}),e("input",Object.assign({class:r("kol-table__selection-input kol-table__selection-input--checkbox"),ref:e=>e&&this.checkboxRefs.push(e)},p,{type:"checkbox",onInput:e=>{var t,n;const i=v?null===(n=null==c?void 0:c.selectedKeys)||void 0===n?void 0:n.filter((e=>e!==u)):[...null!==(t=null==c?void 0:c.selectedKeys)&&void 0!==t?t:[],u];this.handleSelectionChangeCallbackAndEvent(e,null!=i?i:[])}}))):e("label",{class:"kol-table__selection-label"},e("input",Object.assign({class:r("kol-table__selection-input kol-table__selection-input--radio")},p,{type:"radio",onInput:e=>{this.handleSelectionChangeCallbackAndEvent(e,u)}}))),e(o,{"aria-hidden":"true",class:"kol-table__selection-input-tooltip",_align:"right",_id:`${u}-label`,_label:f})))}getColumnSettings(e){var t;return null===(t=this.state._tableSettings)||void 0===t?void 0:t.columns.find((t=>t.key===e.key))}getSelectionKeyPropertyName(){var e,t;return null!==(t=null===(e=this.state._selection)||void 0===e?void 0:e.keyPropertyName)&&void 0!==t?t:"id"}getDataWithSelectionEnabled(){const e=this.getSelectionKeyPropertyName();return this.state._data.filter((t=>{var n,i;return!(null===(i=null===(n=this.state._selection)||void 0===n?void 0:n.disabledKeys)||void 0===i?void 0:i.includes(t[e]))}))}getSelectedKeysWithoutDisabledKeys(){var e,t;return null===(t=null===(e=this.state._selection)||void 0===e?void 0:e.selectedKeys)||void 0===t?void 0:t.filter((e=>{var t,n;return!(null===(n=null===(t=this.state._selection)||void 0===t?void 0:t.disabledKeys)||void 0===n?void 0:n.includes(e))}))}getSelectedKeysWithDisabledKeysOnly(){var e,t;return null===(t=null===(e=this.state._selection)||void 0===e?void 0:e.selectedKeys)||void 0===t?void 0:t.filter((e=>{var t,n;return null===(n=null===(t=this.state._selection)||void 0===t?void 0:t.disabledKeys)||void 0===n?void 0:n.includes(e)}))}getRevertedSelection(e){var t;const n=this.getSelectionKeyPropertyName(),i=null!==(t=this.getSelectedKeysWithDisabledKeysOnly())&&void 0!==t?t:[];return e&&i.push(...this.getDataWithSelectionEnabled().map((e=>null==e?void 0:e[n]))),i}getTableMinWidth(){var e,t;const n=null!==(t=null===(e=this.state._tableSettings)||void 0===e?void 0:e.columns.filter((e=>e.visible)).reduce(((e,t)=>{var n;return e+(null!==(n=t.width)&&void 0!==n?n:0)}),0))&&void 0!==t?t:0;return"auto"===this.state._minWidth?`${n}ch`:`max(${this.state._minWidth}, ${n}ch)`}renderHeadingSelectionCell(){var t,n;const i=this.state._selection;if(!i||!i.multiple&&void 0!==i.multiple)return e("th",{class:"kol-table__cell kol-table__cell--header",key:"thead-0"});const l=null!==(n=null===(t=this.getSelectedKeysWithoutDisabledKeys())||void 0===t?void 0:t.length)&&void 0!==n?n:0,s=l===this.getDataWithSelectionEnabled().length,d=0!==l&&!s;let h="kol-table-selection-indeterminate";s&&!d&&(h="kol-table-selection-none"),0===l&&(h="kol-table-selection-all");const u=c(h);return e("th",{key:"thead-0-selection",class:"kol-table__cell kol-table__cell--header"},e("div",{class:r("kol-table__selection",{"kol-table__selection--indeterminate":d,"kol-table__selection--checked":s})},e("label",{class:"kol-table__selection-label"},e(a,{class:"kol-table__selection-icon",_icons:"codicon "+(d?"codicon-remove":s?"codicon-check":""),_label:""}),e("input",{class:r("kol-table__selection-input kol-table__selection-input--checkbox"),"data-testid":"selection-checkbox-all",ref:e=>e&&this.checkboxRefs.push(e),name:"selection",checked:s&&!d,indeterminate:d,"aria-label":u,type:"checkbox",onInput:e=>{this.handleSelectionChangeCallbackAndEvent(e,this.getRevertedSelection(!s))}})),e(o,{"aria-hidden":"true",class:"kol-table__selection-input-tooltip",_align:"right",_id:`${h}-label`,_label:u})))}renderHeaderTdCell(){return e(n,null,Array.isArray(this.state._headerCells.horizontal)&&this.state._headerCells.horizontal.length>0&&Array.isArray(this.state._headerCells.vertical)&&this.state._headerCells.vertical.length>0&&Array.isArray(this.state._headerCells.horizontal)&&e("td",{"aria-hidden":"true",colSpan:this.state._headerCells.vertical.length,rowSpan:this.state._headerCells.horizontal.length}))}renderHeadingCell(t,n,i,a){const o=this.getColumnSettings(t);if(o&&!o.visible)return"";let s,c="codicon codicon-fold";if(t.sortDirection)switch(t.sortDirection){case"ASC":c="codicon codicon-chevron-up",s="ascending";break;case"DESC":c="codicon codicon-chevron-down",s="descending"}const d=a?"row":"number"==typeof t.colSpan&&t.colSpan>1?"colgroup":"col";return e("th",{key:`${n}-${i}-${t.label}`,class:r("kol-table__cell kol-table__cell--header",{[`kol-table__cell--align-${t.textAlign}`]:t.textAlign,[`kol-table__cell--${s}`]:s}),scope:d,colSpan:t.colSpan,rowSpan:t.rowSpan,style:{width:(null==o?void 0:o.width)?`${o.width}ch`:t.width},"aria-sort":s,"data-sort":`sort-${t.sortDirection}`},t.sortDirection?e(l,{class:"kol-table__sort-button",exportparts:"icon",_icons:{right:c},_label:t.label,_on:{onClick:e=>{var n;"function"==typeof(null===(n=this.state._on)||void 0===n?void 0:n.onSort)&&t.key&&t.sortDirection&&this.state._on.onSort(e,{key:t.key,currentSortDirection:t.sortDirection}),this.host&&p(this.host,y.sort,{key:t.key,currentSortDirection:t.sortDirection})}}}):t.label)}renderSpacer(t,n){var i,a;const o=(null===(i=this.state._headerCells.vertical)||void 0===i?void 0:i.length)||0,l=null===(a=null==n?void 0:n[0])||void 0===a?void 0:a.reduce(((e,t)=>e+(t.colSpan||1)),0),s=this.state._selection?1:0;return e("tr",{"aria-hidden":"true",class:r("kol-table__spacer",`kol-table__spacer--${t}`)},e("td",{class:r(`kol-table__spacer-line kol-table__spacer-line--${t}`),colSpan:o+l+s}))}renderFoot(){if(!this.state._dataFoot||0===this.state._dataFoot.length)return null;const t=this.createDataField(this.state._dataFoot,this.state._headerCells,!0);return e("tfoot",{class:"kol-table__footer"},[this.renderSpacer("foot",t),t.map(((e,t)=>this.renderTableRow(e,t,!0,!0)))])}render(){var t;const n=this.createDataField(this.state._data,this.state._headerCells);this.checkboxRefs=[];const i=null===(t=this.state._headerCells.horizontal)||void 0===t?void 0:t.map((e=>this.sortByColumnPosition(e)));return e("div",{key:"f92f7edfb1a80b38b7476b865a88ec00ccf148a4",class:"kol-table"},e(s,{key:"72a74645988055bcf63ea1bc3a4c17fd7d96d84c",_tableSettings:this.state._tableSettings}),e("div",{key:"a07c76c567176466725723967c7114184fa3a943",ref:e=>this.tableDivElement=e,class:"kol-table__scroll-container",tabindex:this.tableDivElementHasScrollbar?"-1":void 0},e("table",{key:"fe59d86376e811e243a0b139f8d03457ecbf7a68",class:"kol-table__table",style:{minWidth:this.getTableMinWidth()}},e("div",{key:"4d2a65e294d3441fcad1787e98892af10a138240",class:"kol-table__focus-element",tabindex:this.tableDivElementHasScrollbar?"0":void 0,"aria-describedby":"caption"}," "),e("caption",{key:"f2047a7ab866facad40b2af173df7cda8ac4e34c",class:"kol-table__caption",id:"caption"},this.state._label),Array.isArray(i)&&e("thead",{key:"83fa6857e64afe3ad8cb85c72f75aae5ce0d691b",class:"kol-table__head"},[i.map(((t,n)=>e("tr",{class:"kol-table__head-row",key:`thead-${n}`},this.state._selection&&this.renderHeadingSelectionCell(),0===n&&this.renderHeaderTdCell(),Array.isArray(t)&&t.map(((e,t)=>this.renderHeadingCell(e,n,t,!1)))))),this.renderSpacer("head",i)]),e("tbody",{key:"46a6ee2c0bfdad97fc95741ef1022fe04fb7115c",class:"kol-table__body"},n.map(((e,t)=>this.renderTableRow(e,t,!0)))),this.renderFoot())))}get host(){return i(this)}static get watchers(){return{_data:["validateData"],_dataFoot:["validateDataFoot"],_headerCells:["validateHeaderCells"],_label:["validateLabel"],_minWidth:["validateMinWidth"],_on:["validateOn"],_selection:["validateSelection"],_tableSettings:["validateTableSettings"]}}};export{Oi as kol_table_stateless_wc};