@sme.up/ketchup 10.3.8 → 10.3.9

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 (311) hide show
  1. package/dist/cjs/{f-button-bfafefb3.js → f-button-c084046d.js} +1 -1
  2. package/dist/cjs/{f-cell-9a77e09a.js → f-cell-2e939ef8.js} +12 -8
  3. package/dist/cjs/{f-checkbox-aaa6d45c.js → f-checkbox-e59d6bda.js} +3 -3
  4. package/dist/cjs/{f-chip-f1b14141.js → f-chip-b0b4b0d9.js} +2 -2
  5. package/dist/cjs/{f-image-db10b066.js → f-image-7457eb26.js} +18 -15
  6. package/dist/cjs/{f-object-field-7c1ea180.js → f-object-field-db5613ef.js} +3 -3
  7. package/dist/cjs/{f-paginator-utils-49cf707b.js → f-paginator-utils-2fcf4642.js} +2 -2
  8. package/dist/cjs/{f-text-field-f5b2163a.js → f-text-field-ee6120c5.js} +60 -3
  9. package/dist/cjs/index.cjs.js +1 -1
  10. package/dist/cjs/ketchup.cjs.js +1 -1
  11. package/dist/cjs/kup-accordion.cjs.entry.js +2 -2
  12. package/dist/cjs/kup-activity-timeline.cjs.entry.js +3 -3
  13. package/dist/cjs/kup-autocomplete_30.cjs.entry.js +429 -206
  14. package/dist/cjs/kup-box.cjs.entry.js +10 -10
  15. package/dist/cjs/kup-calendar.cjs.entry.js +4 -4
  16. package/dist/cjs/kup-card-list.cjs.entry.js +1 -1
  17. package/dist/cjs/kup-cell.cjs.entry.js +8 -8
  18. package/dist/cjs/kup-custom-task-list-header_4.cjs.entry.js +7 -7
  19. package/dist/cjs/kup-dashboard.cjs.entry.js +5 -5
  20. package/dist/cjs/{kup-data-table-helper-63e5d7a2.js → kup-data-table-helper-0705294e.js} +1 -1
  21. package/dist/cjs/kup-drawer.cjs.entry.js +1 -1
  22. package/dist/cjs/kup-echart.cjs.entry.js +1 -1
  23. package/dist/cjs/kup-editor.cjs.entry.js +1 -1
  24. package/dist/cjs/kup-family-tree.cjs.entry.js +3 -3
  25. package/dist/cjs/kup-gantt_10.cjs.entry.js +23 -23
  26. package/dist/cjs/kup-grid.cjs.entry.js +1 -1
  27. package/dist/cjs/kup-htm.cjs.entry.js +6 -3
  28. package/dist/cjs/kup-iframe.cjs.entry.js +1 -1
  29. package/dist/cjs/kup-input-panel.cjs.entry.js +79 -24
  30. package/dist/cjs/kup-lazy.cjs.entry.js +12 -12
  31. package/dist/cjs/kup-magic-box.cjs.entry.js +5 -5
  32. package/dist/cjs/{kup-manager-15f30f03.js → kup-manager-0ce9fd30.js} +18 -6
  33. package/dist/cjs/kup-nav-bar.cjs.entry.js +2 -2
  34. package/dist/cjs/kup-numeric-picker.cjs.entry.js +4 -4
  35. package/dist/cjs/kup-object-field.cjs.entry.js +6 -6
  36. package/dist/cjs/kup-pdf.cjs.entry.js +2 -2
  37. package/dist/cjs/kup-planner-renderer.cjs.entry.js +2 -2
  38. package/dist/cjs/kup-planner.cjs.entry.js +4 -4
  39. package/dist/cjs/kup-probe.cjs.entry.js +2 -2
  40. package/dist/cjs/kup-qlik.cjs.entry.js +2 -2
  41. package/dist/cjs/kup-snackbar.cjs.entry.js +4 -4
  42. package/dist/cjs/kup-txt.cjs.entry.js +2 -2
  43. package/dist/cjs/kup-typography-list.cjs.entry.js +2 -2
  44. package/dist/cjs/kup-typography.cjs.entry.js +4 -4
  45. package/dist/cjs/loader.cjs.js +1 -1
  46. package/dist/collection/components/kup-card/standard/kup-card-standard.js +5 -2
  47. package/dist/collection/components/kup-data-table/kup-data-table.js +231 -118
  48. package/dist/collection/components/kup-date-picker/kup-date-picker.js +8 -8
  49. package/dist/collection/components/kup-file-upload/kup-file-upload-declarations.js +3 -0
  50. package/dist/collection/components/kup-file-upload/kup-file-upload.css +9 -0
  51. package/dist/collection/components/kup-file-upload/kup-file-upload.js +101 -27
  52. package/dist/collection/components/kup-form/kup-form.js +2 -2
  53. package/dist/collection/components/kup-htm/kup-htm.css +0 -3
  54. package/dist/collection/components/kup-htm/kup-htm.js +4 -1
  55. package/dist/collection/components/kup-image-list/kup-image-list.js +3 -3
  56. package/dist/collection/components/kup-input-panel/kup-input-panel-declarations.js +1 -0
  57. package/dist/collection/components/kup-input-panel/kup-input-panel.css +9 -0
  58. package/dist/collection/components/kup-input-panel/kup-input-panel.js +89 -15
  59. package/dist/collection/components/kup-lazy/kup-lazy.js +11 -11
  60. package/dist/collection/components/kup-magic-box/kup-magic-box.js +3 -3
  61. package/dist/collection/components/kup-nav-bar/kup-nav-bar.js +1 -1
  62. package/dist/collection/components/kup-numeric-picker/kup-numeric-picker.js +1 -1
  63. package/dist/collection/components/kup-object-field/kup-object-field.js +1 -1
  64. package/dist/collection/components/kup-pdf/kup-pdf.js +1 -1
  65. package/dist/collection/components/kup-planner/kup-planner.js +1 -1
  66. package/dist/collection/components/kup-planner/utils/custom-task-list-header.js +2 -2
  67. package/dist/collection/components/kup-planner/utils/kup-gantt/kup-gantt.js +2 -2
  68. package/dist/collection/components/kup-planner/utils/kup-gantt-calendar/kup-gantt-calendar.js +2 -2
  69. package/dist/collection/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.js +3 -3
  70. package/dist/collection/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.js +5 -5
  71. package/dist/collection/components/kup-planner/utils/kup-planner-renderer.js +2 -2
  72. package/dist/collection/components/kup-planner/utils/kup-switcher/kup-switcher.js +1 -1
  73. package/dist/collection/components/kup-planner/utils/kup-task-gantt/kup-task-gantt.js +2 -2
  74. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list-header.js +7 -7
  75. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list-table.js +1 -1
  76. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list.js +1 -1
  77. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-standard-tooltip.js +1 -1
  78. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-tooltip.js +1 -1
  79. package/dist/collection/components/kup-planner/utils/kup-vertical-scroll/kup-vertical-scroll.js +2 -2
  80. package/dist/collection/components/kup-probe/kup-probe.js +1 -1
  81. package/dist/collection/components/kup-progress-bar/kup-progress-bar.js +1 -1
  82. package/dist/collection/components/kup-qlik/kup-qlik.js +1 -1
  83. package/dist/collection/components/kup-rating/kup-rating.js +1 -1
  84. package/dist/collection/components/kup-snackbar/kup-snackbar.js +1 -1
  85. package/dist/collection/components/kup-spinner/kup-spinner.js +34 -34
  86. package/dist/collection/components/kup-switch/kup-switch.js +1 -1
  87. package/dist/collection/components/kup-text-field/kup-text-field-declarations.js +1 -0
  88. package/dist/collection/components/kup-text-field/kup-text-field.js +27 -4
  89. package/dist/collection/components/kup-time-picker/kup-time-picker.js +1 -1
  90. package/dist/collection/components/kup-txt/kup-txt.js +1 -1
  91. package/dist/collection/components/kup-typography/kup-typography.js +2 -2
  92. package/dist/collection/components/kup-typography-list/kup-typography-list.js +1 -1
  93. package/dist/collection/f-components/f-cell/f-cell.js +5 -1
  94. package/dist/collection/f-components/f-checkbox/f-checkbox.js +1 -1
  95. package/dist/collection/f-components/f-image/f-image.js +18 -15
  96. package/dist/collection/f-components/f-text-field/f-text-field.js +55 -1
  97. package/dist/collection/managers/kup-data/kup-data.js +4 -3
  98. package/dist/collection/managers/kup-language/kup-language-declarations.js +2 -0
  99. package/dist/collection/managers/kup-theme/kup-theme-declarations.js +5 -0
  100. package/dist/collection/utils/cell-utils.js +1 -1
  101. package/dist/collection/utils/kup-column-menu/kup-column-menu-declarations.js +2 -0
  102. package/dist/collection/utils/kup-column-menu/kup-column-menu.js +57 -7
  103. package/dist/components/index.js +1 -1
  104. package/dist/components/kup-accordion.js +2 -2
  105. package/dist/components/kup-activity-timeline.js +2 -2
  106. package/dist/components/kup-autocomplete.js +1 -1
  107. package/dist/components/kup-badge.js +1 -1
  108. package/dist/components/kup-box.js +1 -1
  109. package/dist/components/kup-button-list.js +1 -1
  110. package/dist/components/kup-button.js +1 -1
  111. package/dist/components/kup-calendar.js +2 -2
  112. package/dist/components/kup-card-list.js +3 -3
  113. package/dist/components/kup-card.js +1 -1
  114. package/dist/components/kup-cell.js +2 -2
  115. package/dist/components/kup-chart.js +1 -1
  116. package/dist/components/kup-checkbox.js +1 -1
  117. package/dist/components/kup-chip.js +1 -1
  118. package/dist/components/kup-color-picker.js +1 -1
  119. package/dist/components/kup-combobox.js +1 -1
  120. package/dist/components/kup-custom-task-list-header.js +1 -1
  121. package/dist/components/kup-dashboard.js +2 -2
  122. package/dist/components/kup-data-table.js +1 -1
  123. package/dist/components/kup-date-picker.js +1 -1
  124. package/dist/components/kup-dialog.js +1 -1
  125. package/dist/components/kup-drawer.js +2 -2
  126. package/dist/components/kup-dropdown-button.js +1 -1
  127. package/dist/components/kup-echart.js +1 -1
  128. package/dist/components/kup-editor.js +1 -1
  129. package/dist/components/kup-family-tree.js +3 -3
  130. package/dist/components/kup-file-upload.js +1 -1
  131. package/dist/components/kup-form.js +1 -1
  132. package/dist/components/kup-gantt-calendar.js +1 -1
  133. package/dist/components/kup-gantt.js +1 -1
  134. package/dist/components/kup-gauge.js +1 -1
  135. package/dist/components/kup-grid-renderer.js +1 -1
  136. package/dist/components/kup-grid.js +1 -1
  137. package/dist/components/kup-horizontal-scroll.js +1 -1
  138. package/dist/components/kup-htm.js +7 -4
  139. package/dist/components/kup-iframe.js +2 -2
  140. package/dist/components/kup-image-list.js +1 -1
  141. package/dist/components/kup-image.js +1 -1
  142. package/dist/components/kup-input-panel.js +75 -19
  143. package/dist/components/kup-lazy.js +13 -13
  144. package/dist/components/kup-list.js +1 -1
  145. package/dist/components/kup-magic-box.js +7 -7
  146. package/dist/components/kup-nav-bar.js +3 -3
  147. package/dist/components/kup-numeric-picker.js +3 -3
  148. package/dist/components/kup-object-field.js +3 -3
  149. package/dist/components/kup-pdf.js +3 -3
  150. package/dist/components/kup-planner-renderer.js +1 -1
  151. package/dist/components/kup-planner.js +17 -17
  152. package/dist/components/kup-probe.js +3 -3
  153. package/dist/components/kup-progress-bar.js +1 -1
  154. package/dist/components/kup-qlik.js +3 -3
  155. package/dist/components/kup-radio.js +1 -1
  156. package/dist/components/kup-rating.js +1 -1
  157. package/dist/components/kup-snackbar.js +3 -3
  158. package/dist/components/kup-spinner.js +1 -1
  159. package/dist/components/kup-standard-tooltip.js +1 -1
  160. package/dist/components/kup-switch.js +1 -1
  161. package/dist/components/kup-switcher.js +1 -1
  162. package/dist/components/kup-tab-bar.js +1 -1
  163. package/dist/components/kup-task-gantt.js +1 -1
  164. package/dist/components/kup-task-list-header.js +1 -1
  165. package/dist/components/kup-task-list-table.js +1 -1
  166. package/dist/components/kup-task-list.js +1 -1
  167. package/dist/components/kup-text-field.js +1 -1
  168. package/dist/components/kup-time-picker.js +1 -1
  169. package/dist/components/kup-toolbar.js +1 -1
  170. package/dist/components/kup-tooltip.js +1 -1
  171. package/dist/components/kup-tree.js +1 -1
  172. package/dist/components/kup-txt.js +3 -3
  173. package/dist/components/kup-typography-list.js +3 -3
  174. package/dist/components/kup-typography.js +4 -4
  175. package/dist/components/kup-vertical-scroll.js +1 -1
  176. package/dist/components/{p-168b2e98.js → p-23d0f0c7.js} +1 -1
  177. package/dist/components/{p-d5573b9a.js → p-2670bfd5.js} +13 -13
  178. package/dist/components/{p-f0de2fa5.js → p-5b1056e4.js} +7 -7
  179. package/dist/components/{p-57069e5c.js → p-767fcf91.js} +1 -1
  180. package/dist/components/{p-5aea1707.js → p-7e706919.js} +509 -217
  181. package/dist/components/{p-fbaf1165.js → p-85852162.js} +18 -6
  182. package/dist/components/{p-46440124.js → p-89b9a949.js} +2 -2
  183. package/dist/components/{p-47eafd24.js → p-9a502c5d.js} +2 -2
  184. package/dist/components/{p-bba3ee8c.js → p-9a617844.js} +3 -3
  185. package/dist/components/{p-73b82fab.js → p-9d13f3da.js} +4 -4
  186. package/dist/components/{p-f836c3ed.js → p-aa882232.js} +2 -2
  187. package/dist/components/{p-91cbfbb1.js → p-b057cba1.js} +2 -2
  188. package/dist/components/{p-78086e86.js → p-bbb25c58.js} +1 -1
  189. package/dist/components/{p-96d517a7.js → p-bdecbc93.js} +5 -5
  190. package/dist/components/{p-7fa7072d.js → p-cbc6b3d5.js} +2 -2
  191. package/dist/components/{p-75cc2a0e.js → p-cde4d6c3.js} +2 -2
  192. package/dist/components/{p-e74c4841.js → p-d9bec7c8.js} +2 -2
  193. package/dist/components/{p-7b80651f.js → p-dc1ce1b4.js} +1 -1
  194. package/dist/components/{p-0886650d.js → p-e72fb07b.js} +2 -2
  195. package/dist/components/{p-dbfe7218.js → p-f9afe0c9.js} +15 -15
  196. package/dist/esm/{f-button-3c8f4506.js → f-button-6298565d.js} +1 -1
  197. package/dist/esm/{f-cell-0a43dfd3.js → f-cell-b3f0782c.js} +12 -8
  198. package/dist/esm/{f-checkbox-5cdd1cad.js → f-checkbox-191ec2e7.js} +3 -3
  199. package/dist/esm/{f-chip-d5f27ee2.js → f-chip-3ed440ef.js} +2 -2
  200. package/dist/esm/{f-image-a2ecd7c3.js → f-image-96ea1421.js} +18 -15
  201. package/dist/esm/{f-object-field-6f759bf9.js → f-object-field-23935da4.js} +3 -3
  202. package/dist/esm/{f-paginator-utils-6d124369.js → f-paginator-utils-a9d5c2d3.js} +2 -2
  203. package/dist/esm/{f-text-field-86dd8534.js → f-text-field-4934ff74.js} +60 -3
  204. package/dist/esm/index.js +1 -1
  205. package/dist/esm/ketchup.js +1 -1
  206. package/dist/esm/kup-accordion.entry.js +2 -2
  207. package/dist/esm/kup-activity-timeline.entry.js +3 -3
  208. package/dist/esm/kup-autocomplete_30.entry.js +429 -206
  209. package/dist/esm/kup-box.entry.js +10 -10
  210. package/dist/esm/kup-calendar.entry.js +4 -4
  211. package/dist/esm/kup-card-list.entry.js +1 -1
  212. package/dist/esm/kup-cell.entry.js +8 -8
  213. package/dist/esm/kup-custom-task-list-header_4.entry.js +7 -7
  214. package/dist/esm/kup-dashboard.entry.js +5 -5
  215. package/dist/esm/{kup-data-table-helper-7d5e4260.js → kup-data-table-helper-de9421a0.js} +1 -1
  216. package/dist/esm/kup-drawer.entry.js +1 -1
  217. package/dist/esm/kup-echart.entry.js +1 -1
  218. package/dist/esm/kup-editor.entry.js +1 -1
  219. package/dist/esm/kup-family-tree.entry.js +3 -3
  220. package/dist/esm/kup-gantt_10.entry.js +23 -23
  221. package/dist/esm/kup-grid.entry.js +1 -1
  222. package/dist/esm/kup-htm.entry.js +6 -3
  223. package/dist/esm/kup-iframe.entry.js +1 -1
  224. package/dist/esm/kup-input-panel.entry.js +79 -24
  225. package/dist/esm/kup-lazy.entry.js +12 -12
  226. package/dist/esm/kup-magic-box.entry.js +5 -5
  227. package/dist/esm/{kup-manager-2b06d829.js → kup-manager-5c23bae7.js} +18 -6
  228. package/dist/esm/kup-nav-bar.entry.js +2 -2
  229. package/dist/esm/kup-numeric-picker.entry.js +4 -4
  230. package/dist/esm/kup-object-field.entry.js +6 -6
  231. package/dist/esm/kup-pdf.entry.js +2 -2
  232. package/dist/esm/kup-planner-renderer.entry.js +2 -2
  233. package/dist/esm/kup-planner.entry.js +4 -4
  234. package/dist/esm/kup-probe.entry.js +2 -2
  235. package/dist/esm/kup-qlik.entry.js +2 -2
  236. package/dist/esm/kup-snackbar.entry.js +4 -4
  237. package/dist/esm/kup-txt.entry.js +2 -2
  238. package/dist/esm/kup-typography-list.entry.js +2 -2
  239. package/dist/esm/kup-typography.entry.js +4 -4
  240. package/dist/esm/loader.js +1 -1
  241. package/dist/ketchup/index.esm.js +1 -1
  242. package/dist/ketchup/ketchup.esm.js +1 -1
  243. package/dist/ketchup/{p-179d9c32.entry.js → p-001755a5.entry.js} +1 -1
  244. package/dist/ketchup/{p-a186678f.js → p-02e22635.js} +1 -1
  245. package/dist/ketchup/p-03d049e3.js +21 -0
  246. package/dist/ketchup/p-0bb6bfb4.entry.js +1 -0
  247. package/dist/ketchup/{p-fd855732.entry.js → p-137158e4.entry.js} +1 -1
  248. package/dist/ketchup/{p-b1a9f499.entry.js → p-143617b6.entry.js} +1 -1
  249. package/dist/ketchup/{p-e5022c5b.entry.js → p-27f26f4b.entry.js} +1 -1
  250. package/dist/ketchup/{p-f9c3699f.entry.js → p-29af64ff.entry.js} +1 -1
  251. package/dist/ketchup/{p-8a95b2a0.entry.js → p-33a6e698.entry.js} +1 -1
  252. package/dist/ketchup/{p-74035126.entry.js → p-424c2f64.entry.js} +1 -1
  253. package/dist/ketchup/{p-d022b77e.entry.js → p-4632e407.entry.js} +2 -2
  254. package/dist/ketchup/{p-0a93321f.entry.js → p-6741f3f6.entry.js} +1 -1
  255. package/dist/ketchup/p-687b7642.entry.js +8 -0
  256. package/dist/ketchup/{p-beacc7fd.entry.js → p-68835d71.entry.js} +1 -1
  257. package/dist/ketchup/{p-39472246.entry.js → p-6c1e1780.entry.js} +1 -1
  258. package/dist/ketchup/{p-2f626d6c.entry.js → p-6ce64af5.entry.js} +1 -1
  259. package/dist/ketchup/{p-1015f35b.entry.js → p-7775e947.entry.js} +1 -1
  260. package/dist/ketchup/p-7d25580b.entry.js +1 -0
  261. package/dist/ketchup/{p-2bb6c663.js → p-95346c81.js} +1 -1
  262. package/dist/ketchup/{p-b1371652.js → p-a3394095.js} +1 -1
  263. package/dist/ketchup/{p-a301cd89.entry.js → p-a76b0d93.entry.js} +1 -1
  264. package/dist/ketchup/{p-425fab24.entry.js → p-ae1f69c7.entry.js} +1 -1
  265. package/dist/ketchup/{p-98fb85e5.entry.js → p-b47dc6ac.entry.js} +1 -1
  266. package/dist/ketchup/{p-00963efe.entry.js → p-b509455c.entry.js} +1 -1
  267. package/dist/ketchup/{p-d83f2153.entry.js → p-b67d94a0.entry.js} +1 -1
  268. package/dist/ketchup/{p-3f7fec03.entry.js → p-bc75c526.entry.js} +1 -1
  269. package/dist/ketchup/{p-f9d6a629.entry.js → p-c3eca951.entry.js} +2 -2
  270. package/dist/ketchup/{p-4c8480a1.entry.js → p-cc9d71a7.entry.js} +1 -1
  271. package/dist/ketchup/p-cc9db65d.js +1 -0
  272. package/dist/ketchup/p-cf5e1d07.js +1 -0
  273. package/dist/ketchup/{p-43246def.js → p-da273b4d.js} +1 -1
  274. package/dist/ketchup/p-da5d5eea.js +1 -0
  275. package/dist/ketchup/p-dba5100a.entry.js +1 -0
  276. package/dist/ketchup/{p-4f380f49.entry.js → p-dc425c68.entry.js} +1 -1
  277. package/dist/ketchup/p-e18d9110.entry.js +1 -0
  278. package/dist/ketchup/{p-9432bc02.entry.js → p-e755042e.entry.js} +1 -1
  279. package/dist/ketchup/{p-b5575d63.entry.js → p-ec66f939.entry.js} +1 -1
  280. package/dist/ketchup/{p-e6cad40c.entry.js → p-ece991ba.entry.js} +1 -1
  281. package/dist/ketchup/{p-9f9428d1.js → p-ef3112d4.js} +1 -1
  282. package/dist/ketchup/{p-bf5abe49.entry.js → p-f3319227.entry.js} +1 -1
  283. package/dist/ketchup/{p-045e7306.entry.js → p-f7da2ca7.entry.js} +1 -1
  284. package/dist/ketchup/{p-c4224227.js → p-ff735e62.js} +1 -1
  285. package/dist/types/components/kup-data-table/kup-data-table-declarations.d.ts +1 -0
  286. package/dist/types/components/kup-data-table/kup-data-table.d.ts +2 -0
  287. package/dist/types/components/kup-file-upload/kup-file-upload-declarations.d.ts +4 -1
  288. package/dist/types/components/kup-file-upload/kup-file-upload.d.ts +4 -2
  289. package/dist/types/components/kup-htm/kup-htm.d.ts +1 -0
  290. package/dist/types/components/kup-input-panel/kup-input-panel-declarations.d.ts +1 -0
  291. package/dist/types/components/kup-input-panel/kup-input-panel.d.ts +5 -0
  292. package/dist/types/components/kup-text-field/kup-text-field-declarations.d.ts +1 -0
  293. package/dist/types/components/kup-text-field/kup-text-field.d.ts +5 -0
  294. package/dist/types/components.d.ts +23 -2
  295. package/dist/types/f-components/f-cell/f-cell.d.ts +5 -0
  296. package/dist/types/f-components/f-text-field/f-text-field-declarations.d.ts +1 -0
  297. package/dist/types/managers/kup-data/kup-data-declarations.d.ts +1 -0
  298. package/dist/types/managers/kup-language/kup-language-declarations.d.ts +3 -1
  299. package/dist/types/utils/cell-utils.d.ts +1 -0
  300. package/dist/types/utils/kup-column-menu/kup-column-menu-declarations.d.ts +3 -1
  301. package/dist/types/utils/kup-column-menu/kup-column-menu.d.ts +3 -2
  302. package/package.json +1 -1
  303. package/dist/ketchup/p-17f69e68.entry.js +0 -1
  304. package/dist/ketchup/p-3cab6420.js +0 -1
  305. package/dist/ketchup/p-4d3ae43b.entry.js +0 -8
  306. package/dist/ketchup/p-514a0dfd.js +0 -1
  307. package/dist/ketchup/p-5f35bc3e.js +0 -1
  308. package/dist/ketchup/p-62b0efc0.js +0 -21
  309. package/dist/ketchup/p-68929471.entry.js +0 -1
  310. package/dist/ketchup/p-a34c1e3c.entry.js +0 -1
  311. package/dist/ketchup/p-e5f2da82.entry.js +0 -1
@@ -1,5 +1,5 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, f as forceUpdate, h as h$1, d as Host, F as Fragment$1 } from './p-ef8cbd35.js';
2
- import { b as KupThemeIconValues, I as ItemsDisplayMode, e as KupLanguageGeneric, a as KupComponentSizing, k as kupManagerInstance, d as KupDynamicPositionPlacement, f as editableTypes, h as kupTypes, F as FCellClasses, i as FCellTypes, c as KupThemeColorValues, C as CHIAdapter, R as RADAdapter, j as CMBandACPAdapter, l as KupTagNames, m as FCellShapes, n as getCellValueForDisplay, o as fullWidthFieldsComps, p as autoCenterComps, q as FCellEvents, r as isForceUppercase, t as isForceLowercase, u as KupDebugCategory, v as adaptContentToDisplayMode, w as FCellPadding, x as fillString, y as KupCardBuiltInClockElements, z as KupCardCSSClasses, A as KupLanguageTotals, B as KupLanguageColumn, D as KupDataNewColumnTypes, E as KupCardSubEvents, G as KupCardIds, H as KupLanguageRow, J as KupLanguageSearch, L as getColumnByName, M as KupObjects, N as formatToNumber, O as Filters, P as getValueForDisplay, Q as getValueForDisplay2, S as KupData, T as compareCell, U as TotalMode, V as getRegExpFromString, W as CHKAdapter, X as SWTAdapter, Y as SortMode, Z as GroupLabelDisplayMode, _ as SelectionMode, $ as KupLanguageGrouping, a0 as KupLanguageCheckbox, a1 as FILTER_ANALYZER, a2 as KupLanguagePage, a3 as addColumnValueFromRow, a4 as KupGlobalFilterMode, g as getProps, s as setProps, a5 as TotalLabel, a6 as isNegativeNumber, a7 as KupPointerEventTypes, a8 as kupDynamicPositionAttribute, a9 as identify, aa as KupListProps, ab as KupCardFamily, ac as KupListRole, ad as KupLanguageUpload, ae as LoadMoreMode, af as PaginatorPos, ag as ShowGrid, ah as kupDraggableColumnAttr, ai as kupDragActiveAttr, aj as KupDragEffect, ak as kupDraggableCellAttr, al as KupDropEventTypes, am as DataTableAreasEnum, an as TypesToDuplicate, ao as FixedCellsClasses, ap as FixedCellsCSSVarsBase, aq as KupLanguageFontsize, ar as KupLanguageDensity, as as KupLanguageGrid, at as KupDataTableProps, au as UseAsValue, av as iconColumn, aw as keyColumn, ax as fieldColumn, ay as getSizeOfInputElement, az as KupCardProps } from './p-fbaf1165.js';
2
+ import { b as KupThemeIconValues, I as ItemsDisplayMode, e as KupLanguageGeneric, a as KupComponentSizing, k as kupManagerInstance, d as KupDynamicPositionPlacement, f as editableTypes, h as kupTypes, F as FCellClasses, i as FCellTypes, c as KupThemeColorValues, C as CHIAdapter, R as RADAdapter, j as CMBandACPAdapter, l as KupTagNames, m as FCellShapes, n as getCellValueForDisplay, o as fullWidthFieldsComps, p as autoCenterComps, q as FCellEvents, r as isForceUppercase, t as isForceLowercase, u as KupDebugCategory, v as adaptContentToDisplayMode, w as FCellPadding, x as fillString, y as KupCardBuiltInClockElements, z as KupCardCSSClasses, A as KupLanguageTotals, B as KupLanguageColumn, D as KupDataNewColumnTypes, E as KupCardSubEvents, G as KupCardIds, H as KupLanguageRow, J as KupLanguageSearch, L as getColumnByName, M as KupObjects, N as formatToNumber, O as Filters, P as getValueForDisplay, Q as getValueForDisplay2, S as KupData, T as compareCell, U as TotalMode, V as getRegExpFromString, W as CHKAdapter, X as SWTAdapter, Y as SortMode, Z as GroupLabelDisplayMode, _ as SelectionMode, $ as KupLanguageGrouping, a0 as KupLanguageCheckbox, a1 as FILTER_ANALYZER, a2 as KupLanguagePage, a3 as addColumnValueFromRow, a4 as KupGlobalFilterMode, g as getProps, s as setProps, a5 as TotalLabel, a6 as isNegativeNumber, a7 as KupPointerEventTypes, a8 as kupDynamicPositionAttribute, a9 as identify, aa as KupListProps, ab as KupCardFamily, ac as KupListRole, ad as KupLanguageUpload, ae as LoadMoreMode, af as PaginatorPos, ag as ShowGrid, ah as kupDraggableColumnAttr, ai as kupDragActiveAttr, aj as KupDragEffect, ak as kupDraggableCellAttr, al as KupDropEventTypes, am as DataTableAreasEnum, an as TypesToDuplicate, ao as FixedCellsClasses, ap as FixedCellsCSSVarsBase, aq as KupLanguageFontsize, ar as KupLanguageDensity, as as KupLanguageGrid, at as KupDataTableProps, au as UseAsValue, av as iconColumn, aw as keyColumn, ax as fieldColumn, ay as getSizeOfInputElement, az as KupCardProps } from './p-85852162.js';
3
3
  import { h, g as getAssetPath, F as Fragment } from './p-3aae989f.js';
4
4
  import { c as KupDateTimeFormatOptionsMonth, K as KupDatesFormats, a as KupDates } from './p-9d9181cf.js';
5
5
 
@@ -1195,19 +1195,21 @@ function createIcon(icon, color, iconClass = 'f-image__icon') {
1195
1195
  function createImage(props) {
1196
1196
  return (h("img", { class: props.placeholderResource ? HIDDEN_CLASS : '', onLoad: (e) => {
1197
1197
  const img = e.currentTarget;
1198
- const placeholder = img.parentElement.querySelector('.f-image__placeholder');
1199
- const iconWrapper = img.parentElement.querySelector('.iconWrapper');
1200
- const fWrapper = img.parentElement.parentElement.querySelector('.f-image');
1201
- if (props.onLoad) {
1202
- props.onLoad(e);
1203
- }
1204
- if (placeholder) {
1205
- placeholder.classList.add(HIDDEN_CLASS);
1206
- img.classList.remove(HIDDEN_CLASS);
1207
- }
1208
- if (iconWrapper) {
1209
- iconWrapper.classList.add(HIDDEN_CLASS);
1210
- fWrapper.classList.add('noIcon');
1198
+ if (img && img.parentElement) {
1199
+ const placeholder = img.parentElement.querySelector('.f-image__placeholder');
1200
+ const iconWrapper = img.parentElement.querySelector('.iconWrapper');
1201
+ const fWrapper = img.parentElement.parentElement.querySelector('.f-image');
1202
+ if (props.onLoad) {
1203
+ props.onLoad(e);
1204
+ }
1205
+ if (placeholder) {
1206
+ placeholder.classList.add(HIDDEN_CLASS);
1207
+ img.classList.remove(HIDDEN_CLASS);
1208
+ }
1209
+ if (iconWrapper) {
1210
+ iconWrapper.classList.add(HIDDEN_CLASS);
1211
+ fWrapper.classList.add('noIcon');
1212
+ }
1211
1213
  }
1212
1214
  }, onError: (e) => {
1213
1215
  const img = e.currentTarget;
@@ -1243,13 +1245,14 @@ function createBar(data) {
1243
1245
  }
1244
1246
  const stepId = 'step-' + i;
1245
1247
  const stepClass = 'css-step bottom-aligned';
1248
+ const withPercentage = Number(data[i].width.replace(/%$/, '')) - leftProgression;
1246
1249
  const stepStyle = {
1247
1250
  backgroundColor: data[i].color,
1248
1251
  left: leftProgression + '%',
1249
1252
  height: data[i].height,
1250
- width: data[i].width,
1253
+ width: withPercentage + '%',
1251
1254
  };
1252
- leftProgression += parseFloat(data[i].width);
1255
+ leftProgression += withPercentage;
1253
1256
  drawStep = (h("span", { id: stepId, class: stepClass, style: stepStyle }));
1254
1257
  steps.push(drawStep);
1255
1258
  }
@@ -1262,6 +1265,7 @@ function createBar(data) {
1262
1265
  const componentWrapperId = 'kup-component';
1263
1266
 
1264
1267
  const dom$k = document.documentElement;
1268
+ let helperEl = null;
1265
1269
  /*-------------------------------------------------*/
1266
1270
  /* C o m p o n e n t */
1267
1271
  /*-------------------------------------------------*/
@@ -1307,7 +1311,10 @@ function setContent(props) {
1307
1311
  !props.legacyLook // do not show label in input panel absolute ( legacy mode )
1308
1312
  ) {
1309
1313
  labelEl = (h("div", { class: "mdc-text-field__label-container" },
1310
- h("label", { class: "mdc-label", htmlFor: "kup-input" }, props.label),
1314
+ h("label", { class: "mdc-label", htmlFor: "kup-input" },
1315
+ props.label,
1316
+ props.labelHelper && (h("span", { onPointerMove: (e) => showHelper(e, props.labelHelper), onPointerDown: (e) => showHelper(e, props.labelHelper), onPointerOut: () => hideHelper() },
1317
+ h(FImage, { resource: "info_outline", wrapperClass: "helper-icon" })))),
1311
1318
  props.maxLength && props.showCounter ? (h("div", { class: "mdc-text-field__label-character-counter" },
1312
1319
  props.value.length,
1313
1320
  " / ",
@@ -1563,6 +1570,59 @@ const formatValue = function (value, options, inputIsLocalized) {
1563
1570
  }
1564
1571
  return dom$k.ketchup.math.format(formatedValue, dom$k.ketchup.math.createFormatPattern(options.group, options.decimal), inputIsLocalized);
1565
1572
  };
1573
+ const hideHelper = () => {
1574
+ if (helperEl) {
1575
+ helperEl.remove();
1576
+ helperEl = null;
1577
+ }
1578
+ };
1579
+ const showHelper = (e, text) => {
1580
+ if (!text || text.length === 0) {
1581
+ return;
1582
+ }
1583
+ if (helperEl) {
1584
+ helperEl.innerText = text;
1585
+ positionHelper(helperEl, e);
1586
+ }
1587
+ else {
1588
+ helperEl = document.createElement('div');
1589
+ helperEl.className = 'kup-helper-tooltip';
1590
+ helperEl.innerText = text;
1591
+ document.body.appendChild(helperEl);
1592
+ positionHelper(helperEl, e);
1593
+ }
1594
+ };
1595
+ const positionHelper = (element, e) => {
1596
+ const padding = 10;
1597
+ const viewportWidth = window.innerWidth;
1598
+ const viewportHeight = window.innerHeight;
1599
+ const rect = element.getBoundingClientRect();
1600
+ const elementWidth = rect.width;
1601
+ const elementHeight = rect.height;
1602
+ let left = e.clientX + padding;
1603
+ let top = e.clientY + padding;
1604
+ // Check right edge overflow
1605
+ if (left + elementWidth > viewportWidth) {
1606
+ left = e.clientX - elementWidth - padding;
1607
+ // If still overflowing on the left, align to the right edge
1608
+ if (left < 0) {
1609
+ left = viewportWidth - elementWidth - padding;
1610
+ }
1611
+ }
1612
+ // Check bottom edge overflow
1613
+ if (top + elementHeight > viewportHeight) {
1614
+ top = e.clientY - elementHeight - padding;
1615
+ // If still overflowing on the top, align to the bottom edge
1616
+ if (top < 0) {
1617
+ top = viewportHeight - elementHeight - padding;
1618
+ }
1619
+ }
1620
+ // Ensure minimum padding from edges
1621
+ left = Math.max(padding, Math.min(left, viewportWidth - elementWidth - padding));
1622
+ top = Math.max(padding, Math.min(top, viewportHeight - elementHeight - padding));
1623
+ element.style.left = `${left}px`;
1624
+ element.style.top = `${top}px`;
1625
+ };
1566
1626
 
1567
1627
  /**
1568
1628
  * @license
@@ -4530,12 +4590,12 @@ const FCheckbox = (props) => {
4530
4590
  return (h("div", Object.assign({ class: `f-checkbox ${props.danger ? 'kup-danger' : ''} ${props.error ? 'checkbox--error' : ''} ${props.info ? 'kup-info' : ''} ${props.secondary ? 'kup-secondary' : ''} ${props.success ? 'kup-success' : ''} ${props.warning ? 'kup-warning' : ''} ${props.wrapperClass ? props.wrapperClass : ''}` }, props.dataSet, { id: props.id, title: props.title }),
4531
4591
  h("div", { class: `form-field ${props.leadingLabel ? 'form-field--align-end' : ''}` },
4532
4592
  h("div", { class: classObj },
4533
- h("input", Object.assign({ type: "checkbox", class: "checkbox__native-control", checked: props.checked, disabled: props.disabled, onBlur: props.onBlur, onChange: props.onChange, onFocus: props.onFocus }, indeterminateAttr, { value: props.checked ? 'on' : 'off' })),
4593
+ h("input", Object.assign({ id: `${props.id}_inputEl`, type: "checkbox", class: "checkbox__native-control", checked: props.checked, disabled: props.disabled, onBlur: props.onBlur, onChange: props.onChange, onFocus: props.onFocus }, indeterminateAttr, { value: props.checked ? 'on' : 'off' })),
4534
4594
  h("div", { class: "checkbox__background", onClick: props.onChange },
4535
4595
  h("svg", { class: "checkbox__checkmark", viewBox: "0 0 24 24" },
4536
4596
  h("path", { class: "checkbox__checkmark-path", fill: "none", d: "M1.73,12.91 8.1,19.28 22.79,4.59" })),
4537
4597
  h("div", { class: "checkbox__mixedmark" }))),
4538
- props.label ? (h("label", { htmlFor: props.id, onClick: props.onChange }, props.label)) : undefined),
4598
+ props.label ? (h("label", { htmlFor: `${props.id}_inputEl` }, props.label)) : undefined),
4539
4599
  props.error ? (h("div", { class: "checkbox__error-message" },
4540
4600
  h(FImage, Object.assign({}, propsFImage)),
4541
4601
  props.error)) : props.alert ? (h("div", { class: "checkbox__alert-message" },
@@ -5411,6 +5471,7 @@ const mapData = (cell, column) => {
5411
5471
  [FCellTypes.CHECKBOX, MainCHKAdapter.bind(undefined)],
5412
5472
  [FCellTypes.OBJECT, MainObjectAdapter.bind(undefined)],
5413
5473
  [FCellTypes.CHIP, MainCHIAdapter.bind(undefined)],
5474
+ [FCellTypes.FILE_UPLOAD, MainFUPAdapter.bind(undefined)],
5414
5475
  ]);
5415
5476
  const adapter = dataAdapterMap.get(cellType);
5416
5477
  return adapter ? adapter(options, fieldLabel, currentValue, cell) : null;
@@ -5455,6 +5516,9 @@ const MainCMBandACPAdapter = (options, fieldLabel, currentValue, cell, _id) => {
5455
5516
  return Object.assign(Object.assign({}, configCMBandACP), cell.data);
5456
5517
  }
5457
5518
  };
5519
+ const MainFUPAdapter = (_options, _fieldLabel, currentValue, cell) => {
5520
+ return Object.assign(Object.assign({}, cell.data), { pathString: currentValue });
5521
+ };
5458
5522
  const optionsTreeComboAdapter = (options, currentValue) => {
5459
5523
  const adapter = optionsAdapterMap.get(options.type);
5460
5524
  if (adapter) {
@@ -5856,7 +5920,7 @@ function setKupCell(cellType, classObj, subcomponentProps, cell, row, column, pr
5856
5920
  if (isAutoCentered(props)) {
5857
5921
  classObj[FCellClasses.C_CENTERED] = true;
5858
5922
  }
5859
- const buttonProps = Object.assign({ label: cell.value, icon: cell.icon, placeholderIcon: cell.placeholderIcon }, subcomponentProps);
5923
+ const buttonProps = Object.assign({ label: cell.value, icon: cell.icon, placeholderIcon: cell.placeholderIcon, title: column.title }, subcomponentProps);
5860
5924
  return (h(FButton, Object.assign({}, buttonProps, { onClick: (e) => cellEvent(e, props, cellType, FCellEvents.CLICK) })));
5861
5925
  case FCellTypes.BUTTON_LIST:
5862
5926
  if (isAutoCentered(props)) {
@@ -7806,6 +7870,8 @@ var KupColumnMenuIds;
7806
7870
  KupColumnMenuIds["SWITCH_KEY"] = "key";
7807
7871
  KupColumnMenuIds["TEXTFIELD_FILTER"] = "filter";
7808
7872
  KupColumnMenuIds["TEXTFIELD_FORMULA"] = "formula";
7873
+ KupColumnMenuIds["TOTALS_TABLE"] = "totals-table";
7874
+ KupColumnMenuIds["BACK_TO_ORIGINAL_TABLE"] = "back-to-original-table";
7809
7875
  })(KupColumnMenuIds || (KupColumnMenuIds = {}));
7810
7876
 
7811
7877
  /**
@@ -9375,7 +9441,10 @@ function create12(component) {
9375
9441
  buttonsIds.includes(KupColumnMenuIds.BUTTON_ADD_COLUMNS) ? (h("div", { class: "section-1" },
9376
9442
  buttonsIds.includes(KupColumnMenuIds.BUTTON_REMOVE) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id === KupColumnMenuIds.BUTTON_REMOVE)))) : null,
9377
9443
  buttonsIds.includes(KupColumnMenuIds.BUTTON_GROUP) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id === KupColumnMenuIds.BUTTON_GROUP)))) : null,
9378
- buttonsIds.includes(KupColumnMenuIds.BUTTON_ADD_COLUMNS) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id === KupColumnMenuIds.BUTTON_ADD_COLUMNS)))) : null)) : null,
9444
+ buttonsIds.includes(KupColumnMenuIds.BUTTON_ADD_COLUMNS) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id === KupColumnMenuIds.BUTTON_ADD_COLUMNS)))) : null,
9445
+ buttonsIds.includes(KupColumnMenuIds.TOTALS_TABLE) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id === KupColumnMenuIds.TOTALS_TABLE)))) : null,
9446
+ buttonsIds.includes(KupColumnMenuIds.BACK_TO_ORIGINAL_TABLE) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id ===
9447
+ KupColumnMenuIds.BACK_TO_ORIGINAL_TABLE)))) : null)) : null,
9379
9448
  h("div", { class: `section-2 ${textfieldArray.length > 0 ||
9380
9449
  datepickerArray.length > 0 ||
9381
9450
  timepickerArray.length > 0
@@ -9564,7 +9633,11 @@ function create14(component) {
9564
9633
  buttonsIds.includes(KupColumnMenuIds.BUTTON_REMOVE) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id ===
9565
9634
  KupColumnMenuIds.BUTTON_REMOVE)))) : null,
9566
9635
  buttonsIds.includes(KupColumnMenuIds.BUTTON_GROUP) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id ===
9567
- KupColumnMenuIds.BUTTON_GROUP)))) : null),
9636
+ KupColumnMenuIds.BUTTON_GROUP)))) : null,
9637
+ buttonsIds.includes(KupColumnMenuIds.TOTALS_TABLE) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id ===
9638
+ KupColumnMenuIds.TOTALS_TABLE)))) : null,
9639
+ buttonsIds.includes(KupColumnMenuIds.BACK_TO_ORIGINAL_TABLE) ? (h("kup-button", Object.assign({}, buttonArray.find((x) => x.id ===
9640
+ KupColumnMenuIds.BACK_TO_ORIGINAL_TABLE)))) : null),
9568
9641
  h("div", { class: "sub-formula" }, textfieldsIds.includes(KupColumnMenuIds.TEXTFIELD_FORMULA) ? (h("kup-text-field", Object.assign({}, textfieldArray.find((x) => x.id ===
9569
9642
  KupColumnMenuIds.TEXTFIELD_FORMULA)))) : null),
9570
9643
  h("div", { class: "sub-chip" },
@@ -12423,8 +12496,35 @@ class KupColumnMenu {
12423
12496
  title: dom$5.ketchup.language.translate(KupLanguageGeneric.APPLY),
12424
12497
  });
12425
12498
  }
12499
+ if (this.isKupDataTable(comp)) {
12500
+ if (comp.totals && comp.groups) {
12501
+ props.push({
12502
+ className: 'printable',
12503
+ 'data-storage': {
12504
+ columnName: column.name,
12505
+ },
12506
+ icon: 'table',
12507
+ id: KupColumnMenuIds.TOTALS_TABLE,
12508
+ title: dom$5.ketchup.language.translate(KupLanguageGeneric.TOTALS_TABLE),
12509
+ });
12510
+ if (comp.totalsMatrixView) {
12511
+ props.push({
12512
+ className: 'printable',
12513
+ 'data-storage': {
12514
+ columnName: column.name,
12515
+ },
12516
+ icon: 'table-large',
12517
+ id: KupColumnMenuIds.BACK_TO_ORIGINAL_TABLE,
12518
+ title: dom$5.ketchup.language.translate(KupLanguageGeneric.BACK_TO_ORIGINAL_TABLE),
12519
+ });
12520
+ }
12521
+ }
12522
+ }
12426
12523
  return props;
12427
12524
  }
12525
+ isKupDataTable(comp) {
12526
+ return comp && comp.rowsPerPage;
12527
+ }
12428
12528
  /**
12429
12529
  * Handles the column menu's checkbox prop.
12430
12530
  * @param {KupDataTable | KupTree} comp - Component using the column menu.
@@ -12498,12 +12598,25 @@ class KupColumnMenu {
12498
12598
  catch (error) {
12499
12599
  dom$5.ketchup.debug.logMessage(this, 'Child column not found (' + child.name + ')!' + error, KupDebugCategory.ERROR);
12500
12600
  }
12501
- chipData.push({
12502
- icon: child.icon ? child.icon : null,
12503
- value: childColumn ? childColumn.title : '*Not found!',
12504
- obj: child.obj ? child.obj : null,
12505
- id: childColumn ? childColumn.name : '*NOTFND',
12506
- });
12601
+ if (childColumn) {
12602
+ if (childColumn.visible) {
12603
+ chipData.push({
12604
+ icon: child.icon ? child.icon : null,
12605
+ value: childColumn.title,
12606
+ obj: child.obj ? child.obj : null,
12607
+ id: childColumn.name,
12608
+ });
12609
+ }
12610
+ // if column is not visible it means it has been removed, do not push anything
12611
+ }
12612
+ else {
12613
+ chipData.push({
12614
+ icon: child.icon ? child.icon : null,
12615
+ value: '*Not found!',
12616
+ obj: child.obj ? child.obj : null,
12617
+ id: '*NOTFND',
12618
+ });
12619
+ }
12507
12620
  }
12508
12621
  chipProps.dataSet = { initialData: [...chipData] };
12509
12622
  chipProps.data = chipData;
@@ -12743,7 +12856,7 @@ class KupColumnMenu {
12743
12856
  * @param {CustomEvent} cardEvent - kup-card-event emitted by the column menu.
12744
12857
  * @param {KupDataTable | KupTree} comp - Component using the column menu.
12745
12858
  */
12746
- eventHandlers(cardEvent, comp) {
12859
+ eventHandlers(cardEvent, comp, columnName) {
12747
12860
  var _a;
12748
12861
  const card = cardEvent.detail.card
12749
12862
  ? cardEvent.detail.card
@@ -12841,6 +12954,16 @@ class KupColumnMenu {
12841
12954
  comp.hideColumn(dataStorage['column']);
12842
12955
  });
12843
12956
  break;
12957
+ case KupColumnMenuIds.TOTALS_TABLE:
12958
+ comp.closeColumnMenu().then(() => {
12959
+ comp.toggleTotalsMatrix(columnName, true);
12960
+ });
12961
+ break;
12962
+ case KupColumnMenuIds.BACK_TO_ORIGINAL_TABLE:
12963
+ comp.closeColumnMenu().then(() => {
12964
+ comp.toggleTotalsMatrix(columnName, false);
12965
+ });
12966
+ break;
12844
12967
  }
12845
12968
  break;
12846
12969
  case 'kup-checkbox-change':
@@ -13136,9 +13259,12 @@ var KupDropdownButtonProps;
13136
13259
  var KupFileUploadProps;
13137
13260
  (function (KupFileUploadProps) {
13138
13261
  KupFileUploadProps["customStyle"] = "Custom style of the component.";
13262
+ KupFileUploadProps["error"] = "Error string to render in component";
13139
13263
  KupFileUploadProps["pathString"] = "The initial filepaths.";
13140
13264
  KupFileUploadProps["FupMul"] = "Sets the multiple upload.";
13141
13265
  KupFileUploadProps["FupAut"] = "Sets the auto upload of select file";
13266
+ KupFileUploadProps["FupDir"] = "Sets the custom dir to upload files";
13267
+ KupFileUploadProps["FupAty"] = "Sets the accepted extensions";
13142
13268
  })(KupFileUploadProps || (KupFileUploadProps = {}));
13143
13269
 
13144
13270
  /**
@@ -14312,6 +14438,7 @@ var KupTextFieldProps;
14312
14438
  KupTextFieldProps["integers"] = "Number of integers (should be used when inputType is number).";
14313
14439
  KupTextFieldProps["isClearable"] = "Enables a clear trailing icon.";
14314
14440
  KupTextFieldProps["label"] = "When set, its content will be shown as a label.";
14441
+ KupTextFieldProps["labelHelper"] = "When set, the label will be accompanied by a helper text displayed on hover.";
14315
14442
  KupTextFieldProps["leadingLabel"] = "When set to true, the label will be on the left of the component.";
14316
14443
  KupTextFieldProps["max"] = "The HTML max attribute specifies the maximum value for the input element. Works with the following input types: number, range, date, datetime-local, month, time and week.";
14317
14444
  KupTextFieldProps["maxLength"] = "When set, the helper will display a character counter.";
@@ -16561,7 +16688,7 @@ const KupForm = /*@__PURE__*/ proxyCustomElement(class KupForm extends H {
16561
16688
  render() {
16562
16689
  let formContent = null;
16563
16690
  if (this.data.rows.length === 0) {
16564
- formContent = (h$1("p", { key: '103de9b30f44f7958a691e5dccc8698e49ca76cf' }, this.kupManager.language.translate(KupLanguageGeneric.EMPTY_DATA)));
16691
+ formContent = (h$1("p", { key: 'e6e94006b6a608e301373fdb7a4ca02665b2d844' }, this.kupManager.language.translate(KupLanguageGeneric.EMPTY_DATA)));
16565
16692
  }
16566
16693
  else {
16567
16694
  const rows = this.data.rows;
@@ -16572,7 +16699,7 @@ const KupForm = /*@__PURE__*/ proxyCustomElement(class KupForm extends H {
16572
16699
  formContent.push(this.renderRow(rows[cnt++]));
16573
16700
  }
16574
16701
  }
16575
- return (h$1(Host, { key: 'cdaa7ff6add189834cc6f570d2a7cd032d3a0b3c' }, h$1("style", { key: 'd9eff3af01d39df16086be74e2c893b64f861e52' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'd4dd031f9dac773296738ebfe27510be56af8e5a', id: componentWrapperId }, formContent)));
16702
+ return (h$1(Host, { key: 'c6fb5b3851606811f0c1cab66ce83f00c3073cd7' }, h$1("style", { key: '7451643bd2809dd41742977dc0c8ffaf2d29017c' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'f68f672b0a6f03a01577a5120e8f3e74385a0373', id: componentWrapperId }, formContent)));
16576
16703
  }
16577
16704
  disconnectedCallback() {
16578
16705
  this.kupManager.language.unregister(this);
@@ -17514,7 +17641,7 @@ const KupTimePicker = /*@__PURE__*/ proxyCustomElement(class KupTimePicker exten
17514
17641
  this.kupManager.debug.logRender(this, true);
17515
17642
  }
17516
17643
  render() {
17517
- return (h$1(Host, { key: '3076db3f1376031b4cb23a9fdd71ff1a6ae1ebbf' }, h$1("style", { key: '2fe19b8ed79d27303cd9960bafecc84398dacfd6' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '26fa259fac1072c29b5602cdccfff9583c247ebc', id: componentWrapperId }, this.prepTextfield(this.getTimeForOutput()))));
17644
+ return (h$1(Host, { key: '65f19ff4be56ba56c32b8620dece6485f90439e2' }, h$1("style", { key: 'f62b3c946c6a7c69b9890afcc1ac7301c75af349' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'b614dc8e91eed4693617300fa4aa072796465918', id: componentWrapperId }, this.prepTextfield(this.getTimeForOutput()))));
17518
17645
  }
17519
17646
  disconnectedCallback() {
17520
17647
  this.kupManager.dates.unregister(this);
@@ -17763,6 +17890,7 @@ const KupTextField = /*@__PURE__*/ proxyCustomElement(class KupTextField extends
17763
17890
  this.integers = null;
17764
17891
  this.isClearable = false;
17765
17892
  this.label = null;
17893
+ this.labelHelper = '';
17766
17894
  this.lightMode = false;
17767
17895
  this.leadingLabel = false;
17768
17896
  this.max = null;
@@ -18000,6 +18128,7 @@ const KupTextField = /*@__PURE__*/ proxyCustomElement(class KupTextField extends
18000
18128
  integers: this.integers,
18001
18129
  isClearable: this.isClearable,
18002
18130
  label: this.label,
18131
+ labelHelper: this.labelHelper,
18003
18132
  leadingLabel: this.leadingLabel,
18004
18133
  lightMode: this.lightMode,
18005
18134
  max: this.max,
@@ -18040,7 +18169,7 @@ const KupTextField = /*@__PURE__*/ proxyCustomElement(class KupTextField extends
18040
18169
  onMinusClick: (e) => this.onKupMinusClick(e),
18041
18170
  onPlusClick: (e) => this.onKupPlusClick(e),
18042
18171
  };
18043
- return (h$1(Host, { key: '78c6d41ec0ff12730f8abcf90569a4aae871c5ff' }, h$1("style", { key: '7668f0dba74f1e1818e1f08459fbf2ee395aab85' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'b7746c8c0075b18e84d3f7f6d93dfbe604c06446', id: componentWrapperId }, h$1(FTextField, Object.assign({ key: 'fcf370d0278c428d62ddbb9bf153001c4467a2c7' }, props)))));
18172
+ return (h$1(Host, { key: '40071a3423f0b7bc9e69dff91af306643fb7a185' }, h$1("style", { key: '9bcc0c7b122867bff027c2ad275932296ff7ebcf' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'c0c3353a2d4e12596a8565e4a990f35eda93f1fb', id: componentWrapperId }, h$1(FTextField, Object.assign({ key: '33605938b1d3bc2b8beb61b30a1a7b0b62296f50' }, props)))));
18044
18173
  }
18045
18174
  disconnectedCallback() {
18046
18175
  this.kupManager.theme.unregister(this);
@@ -18069,6 +18198,7 @@ const KupTextField = /*@__PURE__*/ proxyCustomElement(class KupTextField extends
18069
18198
  "integers": [2],
18070
18199
  "isClearable": [4, "is-clearable"],
18071
18200
  "label": [1],
18201
+ "labelHelper": [1, "label-helper"],
18072
18202
  "lightMode": [4, "light-mode"],
18073
18203
  "leadingLabel": [4, "leading-label"],
18074
18204
  "max": [2],
@@ -19236,7 +19366,7 @@ const KupSwitch = /*@__PURE__*/ proxyCustomElement(class KupSwitch extends H {
19236
19366
  onChange: () => this.onKupChange(),
19237
19367
  onFocus: () => this.onKupFocus(),
19238
19368
  };
19239
- return (h$1(Host, { key: 'ea19dd0ea5069a82bd9270c9dd1fa24e6476a3aa' }, h$1("style", { key: '2ed2f86ad8b599a714bb7e913bd291c5fa931a21' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '212cf3d8648f188252a2975595f2c6cf741c5758', id: componentWrapperId }, h$1(FSwitch, Object.assign({ key: '85f9c14e7c7dd8f5df209cd6ba6f10e2794a3405' }, props)))));
19369
+ return (h$1(Host, { key: '89225ee1836608a0274bbf05d86b8673345b34b1' }, h$1("style", { key: 'e19f9784414d547d630c24a46a2e40e6d4c1dec6' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '621a69e22881473c900fa8874e9b06a47a4e7a18', id: componentWrapperId }, h$1(FSwitch, Object.assign({ key: '6318405dd07e72597071f86e79985b475eaf3a58' }, props)))));
19240
19370
  }
19241
19371
  disconnectedCallback() {
19242
19372
  this.kupManager.theme.unregister(this);
@@ -19509,59 +19639,59 @@ const KupSpinner = /*@__PURE__*/ proxyCustomElement(class KupSpinner extends H {
19509
19639
  spinnerClass = 'spinner-v' + this.layout;
19510
19640
  if (this.layout === 7) {
19511
19641
  spinnerEl = [
19512
- h$1("div", { key: '976b54b2682a715ab838bafbd9efc5980f5212f3', class: "sk-spinner-v7-dot" }),
19513
- h$1("div", { key: '6f97965d76d494469a6878ae72d747d5e18c70ea', class: "sk-spinner-v7-dot" }),
19514
- h$1("div", { key: '4554ce59f9992eb41837eb1a5bb3e1658105c503', class: "sk-spinner-v7-dot" }),
19515
- h$1("div", { key: 'a37de45a0684574dea995fe18cb5a816d776c8b4', class: "sk-spinner-v7-dot" }),
19516
- h$1("div", { key: 'ef5cced1953be2c018b9114708e8cf0181d2ec10', class: "sk-spinner-v7-dot" }),
19517
- h$1("div", { key: '2a4b5616f967c538fd97df2ae36796f43ee49d42', class: "sk-spinner-v7-dot" }),
19642
+ h$1("div", { key: '90da4bea524d6ae49bd7590b099d7af5bce8c4bc', class: "sk-spinner-v7-dot" }),
19643
+ h$1("div", { key: 'f625f8a469c687a328dec11def5481b47dfdc6b2', class: "sk-spinner-v7-dot" }),
19644
+ h$1("div", { key: 'fce31054830c273aceb9fe0a186daed290319d07', class: "sk-spinner-v7-dot" }),
19645
+ h$1("div", { key: '18b89c2a7b927b07a03a6aa374cc6dc9d22d5c2c', class: "sk-spinner-v7-dot" }),
19646
+ h$1("div", { key: '454dd58c7c1f2a51dcf3891198aa9108d3240347', class: "sk-spinner-v7-dot" }),
19647
+ h$1("div", { key: '5787a5461b543828af41373b963fc2c3c984d848', class: "sk-spinner-v7-dot" }),
19518
19648
  ];
19519
19649
  }
19520
19650
  if (this.layout === 9) {
19521
19651
  spinnerEl = [
19522
- h$1("div", { key: 'f2688905d587fb4444ab0e6999f0f4cf0699cb8a', class: "sk-spinner-v9-bounce1" }),
19523
- h$1("div", { key: 'e22161a648cb24d4b013728d45836b639ebfc0a4', class: "sk-spinner-v9-bounce2" }),
19652
+ h$1("div", { key: '3b44a114e62bcfa99acb7fd583ebee257c75477d', class: "sk-spinner-v9-bounce1" }),
19653
+ h$1("div", { key: '1ac2ee154b6db501a95dcb6b9bd84d9eabea213a', class: "sk-spinner-v9-bounce2" }),
19524
19654
  ];
19525
19655
  }
19526
19656
  if (this.layout === 10) {
19527
19657
  spinnerEl = [
19528
- h$1("div", { key: 'de5e7cecb6e8b59a8e3a6113f8a0baffdcf05fe6', class: "sk-spinner-v10-cube1" }),
19529
- h$1("div", { key: 'ab1947c193732753b345245c1bbd64f097a412a8', class: "sk-spinner-v10-cube2" }),
19658
+ h$1("div", { key: 'd0be49dd982f4f40197f23c758526bfc9b769991', class: "sk-spinner-v10-cube1" }),
19659
+ h$1("div", { key: '177788b950edddfb35643e46d871137532aeeb9d', class: "sk-spinner-v10-cube2" }),
19530
19660
  ];
19531
19661
  }
19532
19662
  if (this.layout === 12) {
19533
19663
  spinnerEl = [
19534
- h$1("div", { key: '45fd80cfa818b4df9c1bf47a977a69c453e31507', class: "sk-spinner-v12-dot1" }),
19535
- h$1("div", { key: 'e5fb43b9dc6a9867ee0b1fd201c3d2027f004fb7', class: "sk-spinner-v12-dot2" }),
19664
+ h$1("div", { key: '19e8c36f13d2c0eeb6a8ad24515a24a2e1cecfde', class: "sk-spinner-v12-dot1" }),
19665
+ h$1("div", { key: 'b8ac14d003d7f601437e223c72dfd59ff9954367', class: "sk-spinner-v12-dot2" }),
19536
19666
  ];
19537
19667
  }
19538
19668
  if (this.layout === 13) {
19539
19669
  spinnerEl = [
19540
- h$1("div", { key: '310fd685b049d989574d7f31549838e12e669178', class: "sk-spinner-v13-cube sk-spinner-v13-cube1" }),
19541
- h$1("div", { key: '45137e0118a81bad85cc2f16eb2d31778d1e9b8b', class: "sk-spinner-v13-cube sk-spinner-v13-cube2" }),
19542
- h$1("div", { key: 'c690e6ba0b9392f5c6a7b60b797cf4abf663ffc5', class: "sk-spinner-v13-cube sk-spinner-v13-cube3" }),
19543
- h$1("div", { key: '97c85f44fe97ca977bc8dd4d1418492d089b9d51', class: "sk-spinner-v13-cube sk-spinner-v13-cube4" }),
19544
- h$1("div", { key: '287cf4c52ebf89f12e62e0f48f0caccbaa0d8ee5', class: "sk-spinner-v13-cube sk-spinner-v13-cube5" }),
19545
- h$1("div", { key: '2fa436ad3f69f97a03b081fe9b747a14f831383a', class: "sk-spinner-v13-cube sk-spinner-v13-cube6" }),
19546
- h$1("div", { key: '0ae6a6078cc9f2f34f9f6da9993e495a43afd931', class: "sk-spinner-v13-cube sk-spinner-v13-cube7" }),
19547
- h$1("div", { key: '5cd676903937f21ab94bb8c5ad7677eef991699c', class: "sk-spinner-v13-cube sk-spinner-v13-cube8" }),
19548
- h$1("div", { key: '307607fef550cd5b9c3d0a436bfe87cace057fd6', class: "sk-spinner-v13-cube sk-spinner-v13-cube9" }),
19670
+ h$1("div", { key: '0b4a4e591c6ca25e85170fb004f324822f050135', class: "sk-spinner-v13-cube sk-spinner-v13-cube1" }),
19671
+ h$1("div", { key: '668a13a54d0e383977bed6f32e95e3f1dd78285f', class: "sk-spinner-v13-cube sk-spinner-v13-cube2" }),
19672
+ h$1("div", { key: 'd2792cde124ce31a812d9b8c169b83de6e078dc2', class: "sk-spinner-v13-cube sk-spinner-v13-cube3" }),
19673
+ h$1("div", { key: '3fc0b2ba9eebddfc0c1be20cd3e958fdfb86d123', class: "sk-spinner-v13-cube sk-spinner-v13-cube4" }),
19674
+ h$1("div", { key: '3269b799012c027a320bff8256aa846223c3c213', class: "sk-spinner-v13-cube sk-spinner-v13-cube5" }),
19675
+ h$1("div", { key: '9d932019c87435a325307b9c3ca11441a3f8d2c2', class: "sk-spinner-v13-cube sk-spinner-v13-cube6" }),
19676
+ h$1("div", { key: 'e29e2d7a8f7092f03893c4654577a6636bca5ddc', class: "sk-spinner-v13-cube sk-spinner-v13-cube7" }),
19677
+ h$1("div", { key: '9ec5c8fc4a18283180a5e98c63b796e2c06bd00c', class: "sk-spinner-v13-cube sk-spinner-v13-cube8" }),
19678
+ h$1("div", { key: 'b7976b9cdbbdb933316448e6c5cd72c4d9492026', class: "sk-spinner-v13-cube sk-spinner-v13-cube9" }),
19549
19679
  ];
19550
19680
  }
19551
19681
  if (this.layout === 14) {
19552
19682
  spinnerEl = [
19553
- h$1("div", { key: '042ef293a7573f83c76535f634ebcb7319884f3f', class: "sk-spinner-v14-circle1 sk-spinner-v14-circle" }),
19554
- h$1("div", { key: '5a77f4c8c353a8840bf06a095dbc15dcd879d736', class: "sk-spinner-v14-circle2 sk-spinner-v14-circle" }),
19555
- h$1("div", { key: 'f3a44ea237aa823810d13c98c179423d97d6c6cf', class: "sk-spinner-v14-circle3 sk-spinner-v14-circle" }),
19556
- h$1("div", { key: '67f40d832beb253392d0a239128bab310b80bf38', class: "sk-spinner-v14-circle4 sk-spinner-v14-circle" }),
19557
- h$1("div", { key: '1272b2dcee5c8b2c53720eb811781a19f11b7e55', class: "sk-spinner-v14-circle5 sk-spinner-v14-circle" }),
19558
- h$1("div", { key: '7af652d0b2c5bc4804db9261ea18030764b2b3ce', class: "sk-spinner-v14-circle6 sk-spinner-v14-circle" }),
19559
- h$1("div", { key: '534a436998a31e8b348fe62f52a9429b57875cfd', class: "sk-spinner-v14-circle7 sk-spinner-v14-circle" }),
19560
- h$1("div", { key: '85002b71e7d36bfe9a71314db726ad457d968625', class: "sk-spinner-v14-circle8 sk-spinner-v14-circle" }),
19561
- h$1("div", { key: '214b749d60eb94eafea8dba46231f3201c7cb2e9', class: "sk-spinner-v14-circle9 sk-spinner-v14-circle" }),
19562
- h$1("div", { key: 'bbb3b65e6f6a284a9f3a8ed2f61d644d27930246', class: "sk-spinner-v14-circle10 sk-spinner-v14-circle" }),
19563
- h$1("div", { key: 'e8393696699a1646751c64300c80179d5709c2ba', class: "sk-spinner-v14-circle11 sk-spinner-v14-circle" }),
19564
- h$1("div", { key: '9828fdeed7750814c6900de4fb6b9081f0466594', class: "sk-spinner-v14-circle12 sk-spinner-v14-circle" }),
19683
+ h$1("div", { key: '43f703d9d094ba069b5bb02e92c9e74711828df1', class: "sk-spinner-v14-circle1 sk-spinner-v14-circle" }),
19684
+ h$1("div", { key: '82f2d547b8de3da9acd78f6ec69c6b5a67261e93', class: "sk-spinner-v14-circle2 sk-spinner-v14-circle" }),
19685
+ h$1("div", { key: 'a5e3f0d7d0ae729c4066fb0a64096b3021ed1c45', class: "sk-spinner-v14-circle3 sk-spinner-v14-circle" }),
19686
+ h$1("div", { key: '9e657fea86ab17b86ff5cc637597ca0501fea0a3', class: "sk-spinner-v14-circle4 sk-spinner-v14-circle" }),
19687
+ h$1("div", { key: '0f11f4fa9e91ad5265672903255fc07dfb08b07a', class: "sk-spinner-v14-circle5 sk-spinner-v14-circle" }),
19688
+ h$1("div", { key: '4dcec3ed2bc03228dfeca88976241e83d0210881', class: "sk-spinner-v14-circle6 sk-spinner-v14-circle" }),
19689
+ h$1("div", { key: 'a20a89d5a2d0d47bba54c9bb0c932e9e39c43c88', class: "sk-spinner-v14-circle7 sk-spinner-v14-circle" }),
19690
+ h$1("div", { key: '8061fd589444079388c88eff984b7d4c0e210fb6', class: "sk-spinner-v14-circle8 sk-spinner-v14-circle" }),
19691
+ h$1("div", { key: '27e9567b83cfd945abfa32f847dd80f7f71cf475', class: "sk-spinner-v14-circle9 sk-spinner-v14-circle" }),
19692
+ h$1("div", { key: '49d6b3a4f7bdbf78e99933a24fff7afc9126db63', class: "sk-spinner-v14-circle10 sk-spinner-v14-circle" }),
19693
+ h$1("div", { key: 'd870a887d28416a702279fbb2b84a73ef133d9c9', class: "sk-spinner-v14-circle11 sk-spinner-v14-circle" }),
19694
+ h$1("div", { key: '0e193a5bfc7a08c3cd8d82da2e36c0f319215125', class: "sk-spinner-v14-circle12 sk-spinner-v14-circle" }),
19565
19695
  ];
19566
19696
  }
19567
19697
  }
@@ -19580,7 +19710,7 @@ const KupSpinner = /*@__PURE__*/ proxyCustomElement(class KupSpinner extends H {
19580
19710
  else {
19581
19711
  elStyle = Object.assign(Object.assign({}, elStyle), { fontSize: '3px' });
19582
19712
  }
19583
- return (h$1(Host, { key: 'af30b293984ca1b3c40dd167a912ad00b2007a56', style: elStyle }, h$1("style", { key: '7b94db80070e95446b4fff8a91a3f9742a351008' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '0149ef208e38c49a1be20646b94e1a41fc28d1bc', id: componentWrapperId, style: elStyle }, h$1("div", { key: '9d126f87c3802d0016b40519a6a22b2115bacb4b', id: "loading-wrapper-master", class: masterClass, style: elStyle }, h$1("div", { key: '5324ae5919c9f59936ab2997924f5b1186ae0c1a', id: wrapperClass, style: elStyle }, h$1("div", { key: 'e927477d73c687fda3280dda70b8eb3a871a609e', class: spinnerClass }, spinnerEl))))));
19713
+ return (h$1(Host, { key: '047cf91e1b91090b19b9e07e8d3ed5c9e93c9b01', style: elStyle }, h$1("style", { key: 'c28e4baa877428442fc12ef9908ed9e3ee606e9e' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '85c8bbcacfd075b9c3a4a16074a95df1a7773f23', id: componentWrapperId, style: elStyle }, h$1("div", { key: '12e7ab8754db6191ec050c32ec228df99bb2c33e', id: "loading-wrapper-master", class: masterClass, style: elStyle }, h$1("div", { key: '7a05138502bf991b2e72e8013712f51174bd1b50', id: wrapperClass, style: elStyle }, h$1("div", { key: '3bccdb4bb8beefd999fbdfbb86440e0999575819', class: spinnerClass }, spinnerEl))))));
19584
19714
  }
19585
19715
  disconnectedCallback() {
19586
19716
  this.kupManager.theme.unregister(this);
@@ -19849,7 +19979,7 @@ const KupRating = /*@__PURE__*/ proxyCustomElement(class KupRating extends H {
19849
19979
  : false,
19850
19980
  onClick: (i) => this.onKupClick(i),
19851
19981
  };
19852
- return (h$1(Host, { key: 'b4103ceb6f27d434447c69c8fff7572374e52d87' }, h$1("style", { key: 'c65cd936b7e5510718b9e2852af9ef8fac04e0b8' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'b9e228a246590a6ad05b228319846b9937aed321', id: componentWrapperId }, h$1(FRating, Object.assign({ key: '505d9988d34aa16060c392e8a97e15e4b72680ba' }, props)))));
19982
+ return (h$1(Host, { key: 'd01ef2cfb73b3e72cb3d56ecede10cb7a2b66368' }, h$1("style", { key: '940e67e41bcaeb69205055ee5af1b56e3b015d1b' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'a3342415e91667c9e9f0677c2f5b79616a814f69', id: componentWrapperId }, h$1(FRating, Object.assign({ key: 'b9147b13dd6157a875c84042329874b72c3a9b0e' }, props)))));
19853
19983
  }
19854
19984
  disconnectedCallback() {
19855
19985
  this.kupManager.theme.unregister(this);
@@ -20123,7 +20253,7 @@ const KupProgressBar = /*@__PURE__*/ proxyCustomElement(class KupProgressBar ext
20123
20253
  ? true
20124
20254
  : false,
20125
20255
  };
20126
- return (h$1(Host, { key: '94a226fb07053cb0c122582eb5d64c3a73df2ff6' }, h$1("style", { key: 'debd9e375096b0c6ac1cdc333b86f07896fd91e2' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '1aceed94fc1ff58e3662f96bb5422dbb95b0af4d', id: componentWrapperId }, h$1(FProgressBar, Object.assign({ key: 'a34d56d8f05f35d24f0e94987bc952f466082a1f' }, props)))));
20256
+ return (h$1(Host, { key: '6d16fbbce2878c135c67a4b56dbf69099904d529' }, h$1("style", { key: 'd60887a62fa3ef9f320d97d67458561cff1f7210' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: '26cb5f5983fde587f5badcbfdc2b4355326ac484', id: componentWrapperId }, h$1(FProgressBar, Object.assign({ key: '31de915d7832b8109087d632cf06e94c104e7c63' }, props)))));
20127
20257
  }
20128
20258
  disconnectedCallback() {
20129
20259
  this.kupManager.theme.unregister(this);
@@ -21189,14 +21319,14 @@ const KupImageList = /*@__PURE__*/ proxyCustomElement(class KupImageList extends
21189
21319
  }
21190
21320
  const imlClass = 'image-list' +
21191
21321
  (this.showFullDescription ? ' full-description' : '');
21192
- return (h$1(Host, { key: '4a3c80748fec9b98c9268077893643042b2c4ade' }, h$1("style", { key: '5fbc10ef98292d3cc1919d26cf64baa1286611e4' }, __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").theme.setKupStyle(this.rootElement)), h$1("div", { key: '52254d30b66446960be0db63fdf486420d35a7ce', id: componentWrapperId, ref: (el) => {
21322
+ return (h$1(Host, { key: 'd3dd048c9d3557174d5feb3b6ba6203ea5ecafe7' }, h$1("style", { key: '8178c806d90f4852441e8b18743bfd0f6836d6ef' }, __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").theme.setKupStyle(this.rootElement)), h$1("div", { key: 'd349af3c953aa70469c19f3868e5e850374996a0', id: componentWrapperId, ref: (el) => {
21193
21323
  __classPrivateFieldSet$4(this, _KupImageList_el, el, "f");
21194
- } }, h$1("div", { key: '68cb3d98496d6314556ad5d777e6a67543a14ff3', class: "navigation-bar" }, hasNavigation ? (h$1("div", { class: `navigation-bar__wrapper ${this.navigationBarToggled
21324
+ } }, h$1("div", { key: '5501f3c1eb46fa4e856248c1e876de729a68195a', class: "navigation-bar" }, hasNavigation ? (h$1("div", { class: `navigation-bar__wrapper ${this.navigationBarToggled
21195
21325
  ? 'navigation-bar__wrapper--active'
21196
21326
  : ''}` }, h$1("div", { class: `navigation-bar__title`, onClick: () => {
21197
21327
  this.navigationBarToggled =
21198
21328
  !this.navigationBarToggled;
21199
- } }, h$1(FImage, { fit: true, resource: this.currentNode.icon, placeholderResource: this.currentNode.placeholderIcon, sizeX: "1.25em", sizeY: "1.25em", wrapperClass: "navigation-bar__title__image" }), h$1("div", { class: "navigation-bar__title__label" }, this.currentNode.value)), h$1(FButton, Object.assign({}, __classPrivateFieldGet$6(this, _KupImageList_backProps, "f"), { label: __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").language.translate(KupLanguageGeneric.BACK) })), h$1(FButton, Object.assign({}, __classPrivateFieldGet$6(this, _KupImageList_topProps, "f"), { label: __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").language.translate(KupLanguageGeneric.TOP) })))) : null), this.leadingLabel && (h$1("div", { key: '4b808d9230730a0eb49c5eca46a8130eda1c0f51', class: "mdc-text-field__label-container" }, h$1("label", { key: 'c1fcdb83116da8e7591091fcb97ea6c4ecb19a27', class: "mdc-label" }, this.leadingLabel))), h$1("div", { key: 'f0b462e13602be5a3a8c00ffd993fd9c8b02476a', class: imlClass, style: combinedGridStyle }, ...__classPrivateFieldGet$6(this, _KupImageList_instances, "m", _KupImageList_createList).call(this)))));
21329
+ } }, h$1(FImage, { fit: true, resource: this.currentNode.icon, placeholderResource: this.currentNode.placeholderIcon, sizeX: "1.25em", sizeY: "1.25em", wrapperClass: "navigation-bar__title__image" }), h$1("div", { class: "navigation-bar__title__label" }, this.currentNode.value)), h$1(FButton, Object.assign({}, __classPrivateFieldGet$6(this, _KupImageList_backProps, "f"), { label: __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").language.translate(KupLanguageGeneric.BACK) })), h$1(FButton, Object.assign({}, __classPrivateFieldGet$6(this, _KupImageList_topProps, "f"), { label: __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").language.translate(KupLanguageGeneric.TOP) })))) : null), this.leadingLabel && (h$1("div", { key: 'e3a0c1acb410e52590a0309b9d1863ab75d2a6b5', class: "mdc-text-field__label-container" }, h$1("label", { key: 'a182435d28cf9ae405f61fda93794c5d81a5ed3e', class: "mdc-label" }, this.leadingLabel))), h$1("div", { key: '5df777d415c2ae7eeb95f22ce229614948b9a4c7', class: imlClass, style: combinedGridStyle }, ...__classPrivateFieldGet$6(this, _KupImageList_instances, "m", _KupImageList_createList).call(this)))));
21200
21330
  }
21201
21331
  disconnectedCallback() {
21202
21332
  __classPrivateFieldGet$6(this, _KupImageList_kupManager, "f").interact.unregister(__classPrivateFieldGet$6(this, _KupImageList_interactableTouch, "f"));
@@ -22388,7 +22518,7 @@ function defineCustomElement$f() {
22388
22518
  } });
22389
22519
  }
22390
22520
 
22391
- const kupFileUploadCss = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:var(--kup-label-01-font-size, 12px);line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-heading-compact-01-font-size, 14px);line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:var(--kup-heading-01-font-size, 14px);line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{--kup_upload_icon_color:var(--kup-upload-icon-color, var(--kup-icon-color));--kup_upload_border_color:var(\n --kup-upload-border-color,\n var(--kup-gray-color-30)\n );flex:1;min-width:360px}:host .file-upload-spinner>*{opacity:0.6;pointer-events:none}:host .file-upload-spinner>file-upload__spinner-container{opacity:1}:host .file-upload{display:flex;flex-direction:column;gap:1em;border:2px dashed var(--kup_upload_border_color);border-radius:4px;padding:1em;position:relative}:host .file-upload__buttons{display:flex;gap:1em;align-items:center;justify-content:center}:host .file-upload__buttons .spinner{height:48px;margin:auto;width:48px}:host .file-upload__error{display:flex;justify-content:center}:host .file-upload__error .mdc-error-message{font-family:var(--kup-font-family);font-size:var(--kup-label-01-font-size, 12px);line-height:16px;font-weight:400;letter-spacing:0.32px;color:var(--kup-danger-color-60)}:host .file-upload__list{display:flex;flex-direction:column;gap:1em}:host .file-upload__list__item{display:flex;gap:1em;align-items:center}:host .file-upload__list__item__preview{height:3em;width:3em;display:flex;align-items:center}:host .file-upload__list__item__desc{width:14em}:host .file-upload__list__item__clear{background-color:var(--kup_upload_icon_color);cursor:pointer;height:16px;width:16px;min-width:16px;min-height:16px;outline:none;pointer-events:all;-webkit-mask:var(--kup-clear-icon);mask:var(--kup-clear-icon)}:host .file-upload__list__item__clear:hover{background-color:var(--kup-danger-color-60)}:host .file-upload__spinner-container{height:calc(100% - 2em);width:20%;position:absolute;left:40%}";
22521
+ const kupFileUploadCss = ".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:var(--kup-label-01-font-size, 12px);line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-heading-compact-01-font-size, 14px);line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:var(--kup-heading-01-font-size, 14px);line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{--kup_upload_icon_color:var(--kup-upload-icon-color, var(--kup-icon-color));--kup_upload_border_color:var(\n --kup-upload-border-color,\n var(--kup-gray-color-30)\n );flex:1;min-width:360px}:host .file-upload-spinner>*{opacity:0.6;pointer-events:none}:host .file-upload-spinner>file-upload__spinner-container{opacity:1}:host .file-upload{display:flex;flex-direction:column;gap:1em;border:2px dashed var(--kup_upload_border_color);border-radius:4px;padding:1em;position:relative}:host .file-upload__invalid{border-color:var(--kup-danger-color, #d32f2f);background:rgba(211, 47, 47, 0.06);box-shadow:0 0 0 2px rgba(211, 47, 47, 0.15) inset;cursor:not-allowed}:host .file-upload__invalid *{opacity:0.95}:host .file-upload__buttons{display:flex;gap:1em;align-items:center;justify-content:center}:host .file-upload__buttons .spinner{height:48px;margin:auto;width:48px}:host .file-upload__error{display:flex;justify-content:center}:host .file-upload__error .mdc-error-message{font-family:var(--kup-font-family);font-size:var(--kup-label-01-font-size, 12px);line-height:16px;font-weight:400;letter-spacing:0.32px;color:var(--kup-danger-color-60)}:host .file-upload__list{display:flex;flex-direction:column;gap:1em}:host .file-upload__list__item{display:flex;gap:1em;align-items:center}:host .file-upload__list__item__preview{height:3em;width:3em;display:flex;align-items:center}:host .file-upload__list__item__desc{width:14em}:host .file-upload__list__item__clear{background-color:var(--kup_upload_icon_color);cursor:pointer;height:16px;width:16px;min-width:16px;min-height:16px;outline:none;pointer-events:all;-webkit-mask:var(--kup-clear-icon);mask:var(--kup-clear-icon)}:host .file-upload__list__item__clear:hover{background-color:var(--kup-danger-color-60)}:host .file-upload__spinner-container{height:calc(100% - 2em);width:20%;position:absolute;left:40%}";
22392
22522
  const KupFileUploadStyle0 = kupFileUploadCss;
22393
22523
 
22394
22524
  var __classPrivateFieldGet$5 = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
@@ -22398,7 +22528,7 @@ var __classPrivateFieldGet$5 = (undefined && undefined.__classPrivateFieldGet) |
22398
22528
  throw new TypeError("Cannot read private member from an object whose class did not declare it");
22399
22529
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
22400
22530
  };
22401
- var _KupFileUpload_instances, _KupFileUpload_kupManager, _KupFileUpload_previewMap, _KupFileUpload_handleClick, _KupFileUpload_handleFileChange, _KupFileUpload_handleFileRemove, _KupFileUpload_handleDrop, _KupFileUpload_handleCancel, _KupFileUpload_getPreview, _KupFileUpload_trimFileName, _KupFileUpload_uploadClick;
22531
+ var _KupFileUpload_instances, _KupFileUpload_kupManager, _KupFileUpload_previewMap, _KupFileUpload_handleClick, _KupFileUpload_handleFileChange, _KupFileUpload_handleDrop, _KupFileUpload_handleFileRemove, _KupFileUpload_processFiles, _KupFileUpload_handleCancel, _KupFileUpload_getPreview, _KupFileUpload_trimFileName, _KupFileUpload_uploadClick, _KupFileUpload_getUniqueFiles, _KupFileUpload_isValidDraggedItems, _KupFileUpload_areValidFiles, _KupFileUpload_isValidFile, _KupFileUpload_getFileExtension;
22402
22532
  const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload extends H {
22403
22533
  constructor() {
22404
22534
  super();
@@ -22437,22 +22567,27 @@ const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload exten
22437
22567
  this.inputRef = undefined;
22438
22568
  this.tempFiles = [];
22439
22569
  this.pathFiles = [];
22440
- this.uploadSuccess = false;
22441
22570
  this.showSpinner = false;
22442
22571
  this.multiUpload = false;
22443
22572
  this.autoUpload = false;
22444
22573
  this.acceptedFiles = null;
22574
+ this.isValidDropFiles = true;
22575
+ this.fupError = null;
22445
22576
  }
22446
22577
  //#endregion
22447
22578
  //#region WATCHERS
22448
22579
  /*-------------------------------------------------*/
22449
22580
  /* W a t c h e r s */
22450
22581
  /*-------------------------------------------------*/
22582
+ onErrorChange() {
22583
+ this.fupError = this.error;
22584
+ }
22451
22585
  onDataChanged() {
22452
22586
  var _a;
22453
- this.uploadSuccess = false;
22587
+ this.fupError = '';
22454
22588
  __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleCancel).call(this);
22455
- this.pathFiles = ((_a = this.pathString) === null || _a === void 0 ? void 0 : _a.split(';')) || [];
22589
+ this.pathFiles =
22590
+ ((_a = this.pathString) === null || _a === void 0 ? void 0 : _a.split(';').filter((path) => path.trim())) || [];
22456
22591
  }
22457
22592
  onFupMulChanged() {
22458
22593
  this.multiUpload = this.FupMul === 'true';
@@ -22498,7 +22633,6 @@ const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload exten
22498
22633
  this.setLoading(false);
22499
22634
  if (success && pathFiles) {
22500
22635
  __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleCancel).call(this);
22501
- this.uploadSuccess = success;
22502
22636
  this.pathFiles = this.multiUpload
22503
22637
  ? [...this.pathFiles, ...pathFiles.split(';')]
22504
22638
  : [pathFiles.split(';')[0]];
@@ -22542,10 +22676,15 @@ const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload exten
22542
22676
  }
22543
22677
  render() {
22544
22678
  var _a;
22545
- return (h$1(Host, { key: 'f08391eac6f841cb117304af6a09ae63ff92549b' }, h$1("style", { key: 'acc0df4a07fdd65f35182769077763a9643f34b0' }, __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").theme.setKupStyle(this.rootElement)), h$1("div", { key: '11e1fb63a9949c804f9b41236c218b80eef965a1', id: componentWrapperId }, h$1("div", { key: '8cf8270d6e066bc361feda602a82ac97657853a4', class: {
22679
+ return (h$1(Host, { key: 'e82c20508f86798008b2e961f2cef347ea19908f' }, h$1("style", { key: 'f9549e18810a5d38d300c167142d41e783d9e80d' }, __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").theme.setKupStyle(this.rootElement)), h$1("div", { key: '09d2ae3e36a7e871aba975ccbb745472cb63652f', id: componentWrapperId }, h$1("div", { key: 'c2b798c7bf6cababc587990b710515060bb2e2a8', class: {
22546
22680
  'file-upload': true,
22547
22681
  'file-upload-spinner': this.showSpinner,
22548
- }, onDrop: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleDrop).bind(this), onDragOver: (event) => event.preventDefault() }, h$1("input", { key: 'a34748d05872c863c0f96ef5a8e4fa36f549f1ae', type: "file", ref: (el) => (this.inputRef = el), onChange: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleFileChange).bind(this), multiple: this.multiUpload, accept: (_a = this.acceptedFiles) === null || _a === void 0 ? void 0 : _a.join(','), hidden: true }), h$1("div", { key: 'cc13058c673bc816ff51e8278b187c87a1ef4467', class: "file-upload__buttons" }, h$1(FButton, { key: 'b54e4ff41658b67e1700b2d4c06885ea37ae3004', icon: "upload", label: __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageGeneric.CHOOSE), onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleClick).bind(this) }), !this.autoUpload && (h$1(Fragment$1, { key: 'd2df1fc3e94dc20573226456a5131599140817d3' }, h$1(FButton, { key: '6b05c656c460218841c85e4f07dde8965f47c36e', icon: "save", disabled: !this.tempFiles.length, label: __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageGeneric.UPLOAD), onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_uploadClick).bind(this), styling: FButtonStyling.FLAT }), h$1(FButton, { key: '70ac6c463966d7e0fd2f69a59a648334587d46ef', icon: "clear", disabled: !this.tempFiles.length, label: __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageGeneric.ABORT), onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleCancel).bind(this), styling: FButtonStyling.FLAT })))), this.error && (h$1("div", { key: '90c46db7caa99ba8460b0b925135ef1c9223e3e8', class: "file-upload__error" }, h$1("span", { key: '5a50f58e4d6e6cd87ac3074d48c849fc54716de5', class: "mdc-error-message" }, this.error))), this.uploadSuccess ? (h$1("span", null, __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageUpload.SUCCESS))) : (h$1("div", { class: "file-upload__list" }, this.tempFiles.map((file, i) => (h$1("div", { class: "file-upload__list__item" }, h$1("div", { class: "file-upload__list__item__preview" }, h$1(FImage, { resource: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_getPreview).call(this, file), placeholderResource: "file" })), h$1("span", { class: "file-upload__list__item__desc", title: file.name }, __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_trimFileName).call(this, file.name)), h$1("span", { class: "file-upload__list__item__clear", onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleFileRemove).bind(this, i) })))))), this.pathFiles.length ? (h$1("div", { class: "file-upload__list" }, this.pathFiles.map((path, i) => (h$1("span", { class: "file-upload__list__item" }, h$1("span", null, i + 1, ". ", path)))))) : null, this.showSpinner && (h$1("div", { key: '4cf819053c80ffaff9225fa351e9c1c3f37791b6', class: "file-upload__spinner-container" }, h$1("kup-spinner", { key: '3e1c322698976c8243fd6e9aefc678727056f8ea', active: true, layout: 14, dimensions: "7px" })))))));
22682
+ 'file-upload__invalid': !this.isValidDropFiles,
22683
+ }, onDragOver: (event) => {
22684
+ var _a;
22685
+ event.preventDefault();
22686
+ this.isValidDropFiles = __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_isValidDraggedItems).call(this, (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.items);
22687
+ }, onDrop: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleDrop).bind(this), onDragLeave: () => (this.isValidDropFiles = true), onDragEnd: () => (this.isValidDropFiles = true) }, h$1("input", { key: 'a79897d0ea5885a55a71f04ce39bbd4791e1462d', type: "file", ref: (el) => (this.inputRef = el), onChange: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleFileChange).bind(this), multiple: this.multiUpload, accept: (_a = this.acceptedFiles) === null || _a === void 0 ? void 0 : _a.join(','), hidden: true }), h$1("div", { key: '856a74817a14d88844efb2b9ad765e8d7223d547', class: "file-upload__buttons" }, h$1(FButton, { key: '1eb230b6313b6fb9e65f178b9e4edd0592e87e20', icon: "upload", label: __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageGeneric.CHOOSE), onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleClick).bind(this) }), !this.autoUpload && (h$1(Fragment$1, { key: 'df73268c675f6bf4ce81cd44c80a01305adf2f97' }, h$1(FButton, { key: '821b641f32a70972892b624d8ac55a9e38faaa14', icon: "save", disabled: !this.tempFiles.length, label: __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageGeneric.UPLOAD), onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_uploadClick).bind(this), styling: FButtonStyling.FLAT }), h$1(FButton, { key: 'f8f969b3eb16bd86dcd4826b3c3f46f8f8551b8f', icon: "clear", disabled: !this.tempFiles.length, label: __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageGeneric.ABORT), onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleCancel).bind(this), styling: FButtonStyling.FLAT })))), this.fupError && (h$1("div", { key: '2b760c793e980290ffb0847f46d0d5fb0abfac73', class: "file-upload__error" }, h$1("span", { key: '4c1a2cd135f330cf0dbda3f4da6dca78a5a298d4', class: "mdc-error-message" }, this.fupError))), h$1("div", { key: 'a034a8a57062eba3445e29168f740b867d5085a7', class: "file-upload__list" }, this.tempFiles.map((file, i) => (h$1("div", { class: "file-upload__list__item" }, h$1("div", { class: "file-upload__list__item__preview" }, h$1(FImage, { resource: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_getPreview).call(this, file), placeholderResource: "file" })), h$1("span", { class: "file-upload__list__item__desc", title: file.name }, __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_trimFileName).call(this, file.name)), h$1("span", { class: "file-upload__list__item__clear", onClick: __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_handleFileRemove).bind(this, i) }))))), this.pathFiles.length ? (h$1("div", { class: "file-upload__list" }, this.pathFiles.map((path, i) => (h$1("span", { class: "file-upload__list__item" }, h$1("span", null, i + 1, ". ", path)))))) : null, this.showSpinner && (h$1("div", { key: 'cda18a34e433799f62f0026f4b38af748d39d2d7', class: "file-upload__spinner-container" }, h$1("kup-spinner", { key: 'cb010ba98b016941a087af4b250be33f675ac3fa', active: true, layout: 14, dimensions: "7px" })))))));
22549
22688
  }
22550
22689
  disconnectedCallback() {
22551
22690
  __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.unregister(this);
@@ -22553,6 +22692,7 @@ const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload exten
22553
22692
  }
22554
22693
  get rootElement() { return this; }
22555
22694
  static get watchers() { return {
22695
+ "error": ["onErrorChange"],
22556
22696
  "pathString": ["onDataChanged"],
22557
22697
  "FupMul": ["onFupMulChanged"],
22558
22698
  "FupAut": ["onFupAutChanged"],
@@ -22570,17 +22710,19 @@ const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload exten
22570
22710
  "inputRef": [32],
22571
22711
  "tempFiles": [32],
22572
22712
  "pathFiles": [32],
22573
- "uploadSuccess": [32],
22574
22713
  "showSpinner": [32],
22575
22714
  "multiUpload": [32],
22576
22715
  "autoUpload": [32],
22577
22716
  "acceptedFiles": [32],
22717
+ "isValidDropFiles": [32],
22718
+ "fupError": [32],
22578
22719
  "getProps": [64],
22579
22720
  "refresh": [64],
22580
22721
  "setProps": [64],
22581
22722
  "setSuccess": [64],
22582
22723
  "setLoading": [64]
22583
22724
  }, undefined, {
22725
+ "error": ["onErrorChange"],
22584
22726
  "pathString": ["onDataChanged"],
22585
22727
  "FupMul": ["onFupMulChanged"],
22586
22728
  "FupAut": ["onFupAutChanged"],
@@ -22589,11 +22731,40 @@ const KupFileUpload = /*@__PURE__*/ proxyCustomElement(class KupFileUpload exten
22589
22731
  _KupFileUpload_kupManager = new WeakMap(), _KupFileUpload_previewMap = new WeakMap(), _KupFileUpload_instances = new WeakSet(), _KupFileUpload_handleClick = function _KupFileUpload_handleClick() {
22590
22732
  this.inputRef.click();
22591
22733
  }, _KupFileUpload_handleFileChange = function _KupFileUpload_handleFileChange(event) {
22592
- this.uploadSuccess = false;
22593
- this.error = '';
22594
- const newFiles = Array.from(event.target.files);
22595
- this.tempFiles = [...this.tempFiles, ...newFiles];
22734
+ this.fupError = '';
22735
+ const newFiles = Array.from(event.target.files) || [];
22736
+ if (!this.multiUpload && newFiles.length > 1) {
22737
+ return;
22738
+ }
22596
22739
  this.inputRef.value = '';
22740
+ __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_processFiles).call(this, newFiles);
22741
+ }, _KupFileUpload_handleDrop = function _KupFileUpload_handleDrop(event) {
22742
+ event.preventDefault();
22743
+ this.fupError = '';
22744
+ this.isValidDropFiles = true;
22745
+ const droppedFiles = event.dataTransfer.files;
22746
+ if ((droppedFiles === null || droppedFiles === void 0 ? void 0 : droppedFiles.length) <= 0) {
22747
+ return;
22748
+ }
22749
+ if (!this.multiUpload && droppedFiles.length > 1) {
22750
+ return;
22751
+ }
22752
+ const newFiles = Array.from(droppedFiles);
22753
+ __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_processFiles).call(this, newFiles);
22754
+ }, _KupFileUpload_handleFileRemove = function _KupFileUpload_handleFileRemove(index) {
22755
+ this.tempFiles = [
22756
+ ...this.tempFiles.splice(0, index),
22757
+ ...this.tempFiles.splice(index + 1),
22758
+ ];
22759
+ }, _KupFileUpload_processFiles = function _KupFileUpload_processFiles(newFiles) {
22760
+ if (!__classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_areValidFiles).call(this, newFiles)) {
22761
+ return;
22762
+ }
22763
+ this.tempFiles = this.multiUpload
22764
+ ? // Add new files
22765
+ __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_getUniqueFiles).call(this, [...this.tempFiles, ...newFiles])
22766
+ : // Reset files
22767
+ newFiles;
22597
22768
  if (this.autoUpload) {
22598
22769
  this.kupUpload.emit({
22599
22770
  comp: this,
@@ -22602,19 +22773,6 @@ _KupFileUpload_kupManager = new WeakMap(), _KupFileUpload_previewMap = new WeakM
22602
22773
  });
22603
22774
  this.setLoading(true);
22604
22775
  }
22605
- }, _KupFileUpload_handleFileRemove = function _KupFileUpload_handleFileRemove(index) {
22606
- this.tempFiles = [
22607
- ...this.tempFiles.splice(0, index),
22608
- ...this.tempFiles.splice(index + 1),
22609
- ];
22610
- }, _KupFileUpload_handleDrop = function _KupFileUpload_handleDrop(event) {
22611
- event.preventDefault();
22612
- this.uploadSuccess = false;
22613
- const droppedFiles = event.dataTransfer.files;
22614
- if (droppedFiles.length > 0) {
22615
- const newFiles = Array.from(droppedFiles);
22616
- this.tempFiles = [...this.tempFiles, ...newFiles];
22617
- }
22618
22776
  }, _KupFileUpload_handleCancel = function _KupFileUpload_handleCancel() {
22619
22777
  this.tempFiles = [];
22620
22778
  }, _KupFileUpload_getPreview = function _KupFileUpload_getPreview(file) {
@@ -22641,6 +22799,51 @@ _KupFileUpload_kupManager = new WeakMap(), _KupFileUpload_previewMap = new WeakM
22641
22799
  files: this.tempFiles,
22642
22800
  });
22643
22801
  this.setLoading(true);
22802
+ }, _KupFileUpload_getUniqueFiles = function _KupFileUpload_getUniqueFiles(files) {
22803
+ const uniqueFiles = files.reduce((map, file) => {
22804
+ const key = `${file.name}-${file.size}-${file.lastModified}`;
22805
+ map.set(key, file);
22806
+ return map;
22807
+ }, new Map());
22808
+ return Array.from(uniqueFiles.values());
22809
+ }, _KupFileUpload_isValidDraggedItems = function _KupFileUpload_isValidDraggedItems(items) {
22810
+ if (!(items === null || items === void 0 ? void 0 : items.length) || (!this.multiUpload && items.length > 1)) {
22811
+ return false;
22812
+ }
22813
+ for (const item of Array.from(items)) {
22814
+ if (item.kind != 'file') {
22815
+ return false;
22816
+ }
22817
+ }
22818
+ return true;
22819
+ }, _KupFileUpload_areValidFiles = function _KupFileUpload_areValidFiles(files) {
22820
+ if (!(files === null || files === void 0 ? void 0 : files.length)) {
22821
+ return false;
22822
+ }
22823
+ for (const file of files) {
22824
+ if (!__classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_isValidFile).call(this, file)) {
22825
+ return false;
22826
+ }
22827
+ }
22828
+ return true;
22829
+ }, _KupFileUpload_isValidFile = function _KupFileUpload_isValidFile(file) {
22830
+ var _a;
22831
+ if (!((_a = this.acceptedFiles) === null || _a === void 0 ? void 0 : _a.length)) {
22832
+ return true;
22833
+ }
22834
+ // Check extensions
22835
+ const fileExtension = __classPrivateFieldGet$5(this, _KupFileUpload_instances, "m", _KupFileUpload_getFileExtension).call(this, file.name);
22836
+ const isValid = fileExtension
22837
+ ? this.acceptedFiles.includes(fileExtension)
22838
+ : false;
22839
+ if (!isValid) {
22840
+ // Set extension error
22841
+ this.fupError = __classPrivateFieldGet$5(this, _KupFileUpload_kupManager, "f").language.translate(KupLanguageUpload.INVALID_EXTENSION);
22842
+ }
22843
+ return isValid;
22844
+ }, _KupFileUpload_getFileExtension = function _KupFileUpload_getFileExtension(fileName) {
22845
+ const dotIndex = fileName.lastIndexOf('.');
22846
+ return dotIndex >= 0 ? fileName.substring(dotIndex).toLowerCase() : '';
22644
22847
  };
22645
22848
  function defineCustomElement$e() {
22646
22849
  if (typeof customElements === "undefined") {
@@ -24118,7 +24321,7 @@ const KupDatePicker = /*@__PURE__*/ proxyCustomElement(class KupDatePicker exten
24118
24321
  showPreviousNextMonthDays: this.showPreviousNextMonthDays,
24119
24322
  },
24120
24323
  };
24121
- return (h$1(Host, { key: '4c53bd7bac94334e6e7cbc3992da2024a2062fdf' }, h$1("style", { key: '625ecea49d44c9451c9174b43a7ef1b69bae392e' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'b50d12bb7550d9cddaed8c1429dbde2ab6b88777', id: componentWrapperId }, h$1(FTextField, Object.assign({ key: 'c2f78eae07d993dcaf2454329de981006c1ffa1e' }, textfieldData, { disabled: this.disabled, fullHeight: fullHeight, fullWidth: fullWidth, maxLength: (_a = textfieldData.maxLength) !== null && _a !== void 0 ? _a : 10, size: 10, id: this.rootElement.id + '_text-field', value: this.getDateForOutput(), onBlur: () => this.onKupBlur(), onChange: (e) => this.onKupChange(e), onClearIconClick: () => this.onKupClearIconClick(), onClick: () => this.onKupClick(), onFocus: () => this.onKupFocus(), onIconClick: () => this.onKupIconClick(), onKeyDown: (e) => this.onKupTextFieldSubmit(e), onInput: (e) => this.onKupInput(e) }), h$1("div", { key: 'a73631f1dc1e6fb33c9b17a02bcbc1101f3ce88d', id: this.rootElement.id + '_card', class: "kup-date-picker-card" }, h$1("kup-card", { key: 'aec6de4c78ee91185b91485b4d9045026ff84ba1', ref: (el) => (this.pickerContainerEl = el), data: cardData, layoutFamily: KupCardFamily.BUILT_IN, sizeX: "300px", sizeY: "auto", isMenu: true, "onkup-card-click": (ev) => {
24324
+ return (h$1(Host, { key: '827b64b4e81a6238bd45388c3f5234a29685ce74' }, h$1("style", { key: '4bb32836db6bd0e39579f52abbd5b29cef9d2bf6' }, this.kupManager.theme.setKupStyle(this.rootElement)), h$1("div", { key: 'f8549d32cf3813544c56ad90f7b6e619dd131a53', id: componentWrapperId }, h$1(FTextField, Object.assign({ key: 'b561786c364f4f27b5edba3746202a8a6d5301b3' }, textfieldData, { disabled: this.disabled, fullHeight: fullHeight, fullWidth: fullWidth, maxLength: (_a = textfieldData.maxLength) !== null && _a !== void 0 ? _a : 10, size: 10, id: this.rootElement.id + '_text-field', value: this.getDateForOutput(), onBlur: () => this.onKupBlur(), onChange: (e) => this.onKupChange(e), onClearIconClick: () => this.onKupClearIconClick(), onClick: () => this.onKupClick(), onFocus: () => this.onKupFocus(), onIconClick: () => this.onKupIconClick(), onKeyDown: (e) => this.onKupTextFieldSubmit(e), onInput: (e) => this.onKupInput(e) }), h$1("div", { key: '136e15a45145ed9160a7da70ec0444ff417ec0c7', id: this.rootElement.id + '_card', class: "kup-date-picker-card" }, h$1("kup-card", { key: '5dd13a969e65cd4a6b4ebc9ea96019904ab7ffd6', ref: (el) => (this.pickerContainerEl = el), data: cardData, layoutFamily: KupCardFamily.BUILT_IN, sizeX: "300px", sizeY: "auto", isMenu: true, "onkup-card-click": (ev) => {
24122
24325
  if (ev.detail.value != null &&
24123
24326
  ev.detail.value != '')
24124
24327
  this.onKupDatePickerItemClick(ev.detail.value);
@@ -24336,7 +24539,7 @@ var __classPrivateFieldSet$2 = (undefined && undefined.__classPrivateFieldSet) |
24336
24539
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
24337
24540
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
24338
24541
  };
24339
- var _KupDataTable_instances, _KupDataTable_checkUpdateState, _KupDataTable_initialized, _KupDataTable_rows, _KupDataTable_rowsLength, _KupDataTable_paginatedRows, _KupDataTable_paginatedRowsLength, _KupDataTable_footer, _KupDataTable_kupManager, _KupDataTable_renderedRows, _KupDataTable_loadMoreEventCounter, _KupDataTable_loadMoreEventPreviousQuantity, _KupDataTable_theadRef, _KupDataTable_tableRef, _KupDataTable_originalData, _KupDataTable_originalDataLoaded, _KupDataTable_originalDataLoadedMaxId, _KupDataTable_insertedRowIds, _KupDataTable_modifiedRowsIds, _KupDataTable_tableAreaRef, _KupDataTable_stickyTheadRef, _KupDataTable_lastPointerDetails, _KupDataTable_customizeTopButtonRef, _KupDataTable_customizeTopPanelRef, _KupDataTable_sizedColumns, _KupDataTable_intObserver, _KupDataTable_navBarHeight, _KupDataTable_theadIntersecting, _KupDataTable_tableIntersecting, _KupDataTable_isSafariBrowser, _KupDataTable_isRestoringState, _KupDataTable_globalFilterTimeout, _KupDataTable_totalMenuCoords, _KupDataTable_clickTimeout, _KupDataTable_thRefs, _KupDataTable_rowsRefs, _KupDataTable_oldWidth, _KupDataTable_hold, _KupDataTable_interactableDrag, _KupDataTable_interactableDrop, _KupDataTable_interactableResize, _KupDataTable_interactableTouch, _KupDataTable_dropareaRef, _KupDataTable_removeDropareaRef, _KupDataTable_groupsDropareaRef, _KupDataTable_clickCb, _KupDataTable_clickCbCustomPanel, _KupDataTable_clickCbDropCard, _KupDataTable_resizeTimeout, _KupDataTable_columnMenuInstance, _KupDataTable_filtersColumnMenuInstance, _KupDataTable_filtersRowsInstance, _KupDataTable_detailCard, _KupDataTable_insertCard, _KupDataTable_actionsCard, _KupDataTable_confirmDeleteCard, _KupDataTable_confirmDeleteDialog, _KupDataTable_columnMenuCard, _KupDataTable_columnDropCard, _KupDataTable_columnDropCardAnchor, _KupDataTable_dropDownActionCardAnchor, _KupDataTable_insertCount, _KupDataTable_lastFocusedColumn, _KupDataTable_lastFocusedCell, _KupDataTable_lastFocusedRow, _KupDataTable_maxRowsPerPage, _KupDataTable_readyPromise, _KupDataTable_readyResolve, _KupDataTable_BUTTON_CANCEL_ID, _KupDataTable_BUTTON_SUBMIT_ID, _KupDataTable_FIELDS_FORM_ID, _KupDataTable_MESSAGE_ID, _KupDataTable_MESSAGE_WRAPPER_ID, _KupDataTable_INSERT_PREFIX, _KupDataTable_DEFAULT_ROWS_FOR_GLOBAL_FILTER, _KupDataTable_insertNewColumnInVisibleColumnsList, _KupDataTable_closeDropCard, _KupDataTable_createDropCard, _KupDataTable_calculateData, _KupDataTable_getRow, _KupDataTable__getRow, _KupDataTable_getTransposedData, _KupDataTable_setTransposedData, _KupDataTable_switchToTotalsMatrix, _KupDataTable_setObjForTotalsMatrix, _KupDataTable_stickyHeaderPosition, _KupDataTable_updateStickyHeaderSize, _KupDataTable_setObserver, _KupDataTable_didLoadInteractables, _KupDataTable_didRenderInteractables, _KupDataTable_didLoadObservers, _KupDataTable_didRenderObservers, _KupDataTable_didLoadEventHandling, _KupDataTable_scrollStickyHeader, _KupDataTable_checkScrollOnHover, _KupDataTable_customizePanelPosition, _KupDataTable_rowsPointLength, _KupDataTable_paginatedRowsPointLength, _KupDataTable__rowsLength, _KupDataTable_resetSelectedRows, _KupDataTable_getSizedColumns, _KupDataTable_rowDetail, _KupDataTable_dropDownActions, _KupDataTable_createDropDownActionsCard, _KupDataTable_clearSearchActionsCard, _KupDataTable_filterRowActionsCard, _KupDataTable_closeRowActionsCard, _KupDataTable_closeColumnMenuCard, _KupDataTable_prepareDataForActionsCard, _KupDataTable_rowInsertForm, _KupDataTable_rowsDelete, _KupDataTable_getEventDetails, _KupDataTable_getEventDetailsForCurrentSelection, _KupDataTable_getSourceElementCoordsForCurrentSelection, _KupDataTable_clickHandler, _KupDataTable_cellActionsMenuHandler, _KupDataTable_contextMenuHandler, _KupDataTable_tooltipRequestHandler, _KupDataTable_contextMenuHandlerDetailsManager, _KupDataTable_dblClickHandler, _KupDataTable_initRows, _KupDataTable_filterRows, _KupDataTable_isGrouping, _KupDataTable_hasRowActions, _KupDataTable_removeGroup, _KupDataTable_hasTotals, _KupDataTable_copyCellValueInColumnHandler, _KupDataTable_tableHasAutoWidth, _KupDataTable_forceGroupExpansion, _KupDataTable_forceRowGroupExpansion, _KupDataTable_adjustPaginator, _KupDataTable_setCellEditability, _KupDataTable_composeFixedCellStyleAndClass, _KupDataTable_updateFixedRowsAndColumnsCssVariables, _KupDataTable_horNav, _KupDataTable_verNav, _KupDataTable_onKupKeyDown, _KupDataTable_onColumnSort, _KupDataTable_onRemoveFilter, _KupDataTable_getFilterValueForTooltip, _KupDataTable_onGlobalFilterChange, _KupDataTable_handlePageChange, _KupDataTable_handleRowsPerPageChange, _KupDataTable_onRowClick, _KupDataTable_selectColumn, _KupDataTable_deselectColumn, _KupDataTable_onRowActionExpanderClick, _KupDataTable_handleRowSelect, _KupDataTable_onRowExpand, _KupDataTable_onSelectAll, _KupDataTable_openTotalMenu, _KupDataTable_closeTotalMenu, _KupDataTable_isOpenedTotalMenuForColumn, _KupDataTable_groupRows, _KupDataTable_onLoadMoreClick, _KupDataTable_adjustGroupState, _KupDataTable_adjustGroupStateFromRow, _KupDataTable_sortRows, _KupDataTable_getSortIcon, _KupDataTable_getSortDecode, _KupDataTable_calculateColspan, _KupDataTable_isGroupExpanded, _KupDataTable_handleColumnSort, _KupDataTable_moveSortedColumns, _KupDataTable_handleUpdateClick, _KupDataTable_onBlurHandler, _KupDataTable_applyLineBreaks, _KupDataTable_composeHeaderCellClassAndStyle, _KupDataTable_renderHeader, _KupDataTable_renderStickyHeader, _KupDataTable_totalMenuPosition, _KupDataTable_onTotalMenuOpen, _KupDataTable_renderRow, _KupDataTable_onCustomSettingsClick, _KupDataTable_openCustomSettings, _KupDataTable_closeCustomSettings, _KupDataTable_renderPaginator, _KupDataTable_columnRemoveArea, _KupDataTable_columnGroupArea, _KupDataTable_hideShowColumnDropArea, _KupDataTable_handleColumnGroup, _KupDataTable_transcodeItem, _KupDataTable_createListData, _KupDataTable_FONTSIZE_CODES, _KupDataTable_FONTSIZE_DECODES, _KupDataTable_FONTSIZE_ICONS, _KupDataTable_getFontSizeCodeFromDecode, _KupDataTable_renderFontSizePanel, _KupDataTable_DENSITY_DECODES, _KupDataTable_DENSITY_ICONS, _KupDataTable_getDensityCodeFromDecode, _KupDataTable_renderDensityPanel, _KupDataTable_GRID_CODES, _KupDataTable_GRID_DECODES, _KupDataTable_GRID_ICONS, _KupDataTable_getGridCodeFromDecode, _KupDataTable_renderTransposeSwitch, _KupDataTable_renderTotalsMatrix, _KupDataTable_renderGridPanel, _KupDataTable_renderCommandButton, _KupDataTable_handleChipsContextMenu, _KupDataTable_renderCommandDropDownButton, _KupDataTable_renderOtherButtons, _KupDataTable_renderUpdateButtons, _KupDataTable_createDeletePayload, _KupDataTable_isRowInserted, _KupDataTable_isRowModified, _KupDataTable_arraysContainSameElements;
24542
+ var _KupDataTable_instances, _KupDataTable_checkUpdateState, _KupDataTable_initialized, _KupDataTable_rows, _KupDataTable_rowsLength, _KupDataTable_paginatedRows, _KupDataTable_paginatedRowsLength, _KupDataTable_footer, _KupDataTable_kupManager, _KupDataTable_renderedRows, _KupDataTable_loadMoreEventCounter, _KupDataTable_loadMoreEventPreviousQuantity, _KupDataTable_theadRef, _KupDataTable_tableRef, _KupDataTable_originalData, _KupDataTable_originalDataLoaded, _KupDataTable_originalDataLoadedMaxId, _KupDataTable_beforeTotalMatrixData, _KupDataTable_beforeTotalMatrixGroups, _KupDataTable_beforeTotalMatrixTotals, _KupDataTable_beforeTotalMatrixVisibleColumns, _KupDataTable_insertedRowIds, _KupDataTable_modifiedRowsIds, _KupDataTable_tableAreaRef, _KupDataTable_stickyTheadRef, _KupDataTable_lastPointerDetails, _KupDataTable_customizeTopButtonRef, _KupDataTable_customizeTopPanelRef, _KupDataTable_sizedColumns, _KupDataTable_intObserver, _KupDataTable_navBarHeight, _KupDataTable_theadIntersecting, _KupDataTable_tableIntersecting, _KupDataTable_isSafariBrowser, _KupDataTable_isRestoringState, _KupDataTable_globalFilterTimeout, _KupDataTable_totalMenuCoords, _KupDataTable_clickTimeout, _KupDataTable_thRefs, _KupDataTable_rowsRefs, _KupDataTable_oldWidth, _KupDataTable_hold, _KupDataTable_interactableDrag, _KupDataTable_interactableDrop, _KupDataTable_interactableResize, _KupDataTable_interactableTouch, _KupDataTable_dropareaRef, _KupDataTable_removeDropareaRef, _KupDataTable_groupsDropareaRef, _KupDataTable_clickCb, _KupDataTable_clickCbCustomPanel, _KupDataTable_clickCbDropCard, _KupDataTable_resizeTimeout, _KupDataTable_columnMenuInstance, _KupDataTable_filtersColumnMenuInstance, _KupDataTable_filtersRowsInstance, _KupDataTable_detailCard, _KupDataTable_insertCard, _KupDataTable_actionsCard, _KupDataTable_confirmDeleteCard, _KupDataTable_confirmDeleteDialog, _KupDataTable_columnMenuCard, _KupDataTable_columnDropCard, _KupDataTable_columnDropCardAnchor, _KupDataTable_dropDownActionCardAnchor, _KupDataTable_insertCount, _KupDataTable_lastFocusedColumn, _KupDataTable_lastFocusedCell, _KupDataTable_lastFocusedRow, _KupDataTable_maxRowsPerPage, _KupDataTable_readyPromise, _KupDataTable_readyResolve, _KupDataTable_BUTTON_CANCEL_ID, _KupDataTable_BUTTON_SUBMIT_ID, _KupDataTable_FIELDS_FORM_ID, _KupDataTable_MESSAGE_ID, _KupDataTable_MESSAGE_WRAPPER_ID, _KupDataTable_INSERT_PREFIX, _KupDataTable_DEFAULT_ROWS_FOR_GLOBAL_FILTER, _KupDataTable_insertNewColumnInVisibleColumnsList, _KupDataTable_closeDropCard, _KupDataTable_createDropCard, _KupDataTable_calculateData, _KupDataTable_getRow, _KupDataTable__getRow, _KupDataTable_getTransposedData, _KupDataTable_setTransposedData, _KupDataTable_switchBackFromTotalsMatrix, _KupDataTable_switchToTotalsMatrix, _KupDataTable_findGroupsAtLevel, _KupDataTable_getGroupElementsBefore, _KupDataTable_buildTotalTitle, _KupDataTable_promoteTotals, _KupDataTable_setObjForTotalsMatrix, _KupDataTable_stickyHeaderPosition, _KupDataTable_updateStickyHeaderSize, _KupDataTable_setObserver, _KupDataTable_didLoadInteractables, _KupDataTable_didRenderInteractables, _KupDataTable_didLoadObservers, _KupDataTable_didRenderObservers, _KupDataTable_didLoadEventHandling, _KupDataTable_scrollStickyHeader, _KupDataTable_checkScrollOnHover, _KupDataTable_customizePanelPosition, _KupDataTable_rowsPointLength, _KupDataTable_paginatedRowsPointLength, _KupDataTable__rowsLength, _KupDataTable_resetSelectedRows, _KupDataTable_getSizedColumns, _KupDataTable_rowDetail, _KupDataTable_dropDownActions, _KupDataTable_createDropDownActionsCard, _KupDataTable_clearSearchActionsCard, _KupDataTable_filterRowActionsCard, _KupDataTable_closeRowActionsCard, _KupDataTable_closeColumnMenuCard, _KupDataTable_prepareDataForActionsCard, _KupDataTable_rowInsertForm, _KupDataTable_rowsDelete, _KupDataTable_getEventDetails, _KupDataTable_getEventDetailsForCurrentSelection, _KupDataTable_getSourceElementCoordsForCurrentSelection, _KupDataTable_clickHandler, _KupDataTable_cellActionsMenuHandler, _KupDataTable_contextMenuHandler, _KupDataTable_tooltipRequestHandler, _KupDataTable_contextMenuHandlerDetailsManager, _KupDataTable_dblClickHandler, _KupDataTable_initRows, _KupDataTable_filterRows, _KupDataTable_isGrouping, _KupDataTable_hasRowActions, _KupDataTable_removeGroup, _KupDataTable_hasTotals, _KupDataTable_copyCellValueInColumnHandler, _KupDataTable_tableHasAutoWidth, _KupDataTable_forceGroupExpansion, _KupDataTable_forceRowGroupExpansion, _KupDataTable_adjustPaginator, _KupDataTable_setCellEditability, _KupDataTable_composeFixedCellStyleAndClass, _KupDataTable_updateFixedRowsAndColumnsCssVariables, _KupDataTable_horNav, _KupDataTable_verNav, _KupDataTable_onKupKeyDown, _KupDataTable_onColumnSort, _KupDataTable_onRemoveFilter, _KupDataTable_getFilterValueForTooltip, _KupDataTable_onGlobalFilterChange, _KupDataTable_handlePageChange, _KupDataTable_handleRowsPerPageChange, _KupDataTable_onRowClick, _KupDataTable_selectColumn, _KupDataTable_deselectColumn, _KupDataTable_onRowActionExpanderClick, _KupDataTable_handleRowSelect, _KupDataTable_onRowExpand, _KupDataTable_onSelectAll, _KupDataTable_openTotalMenu, _KupDataTable_closeTotalMenu, _KupDataTable_isOpenedTotalMenuForColumn, _KupDataTable_groupRows, _KupDataTable_onLoadMoreClick, _KupDataTable_adjustGroupState, _KupDataTable_adjustGroupStateFromRow, _KupDataTable_sortRows, _KupDataTable_getSortIcon, _KupDataTable_getSortDecode, _KupDataTable_calculateColspan, _KupDataTable_isGroupExpanded, _KupDataTable_handleColumnSort, _KupDataTable_moveSortedColumns, _KupDataTable_handleUpdateClick, _KupDataTable_onBlurHandler, _KupDataTable_applyLineBreaks, _KupDataTable_composeHeaderCellClassAndStyle, _KupDataTable_renderHeader, _KupDataTable_renderStickyHeader, _KupDataTable_totalMenuPosition, _KupDataTable_onTotalMenuOpen, _KupDataTable_renderRow, _KupDataTable_onCustomSettingsClick, _KupDataTable_openCustomSettings, _KupDataTable_closeCustomSettings, _KupDataTable_renderPaginator, _KupDataTable_columnRemoveArea, _KupDataTable_columnGroupArea, _KupDataTable_hideShowColumnDropArea, _KupDataTable_handleColumnGroup, _KupDataTable_transcodeItem, _KupDataTable_createListData, _KupDataTable_FONTSIZE_CODES, _KupDataTable_FONTSIZE_DECODES, _KupDataTable_FONTSIZE_ICONS, _KupDataTable_getFontSizeCodeFromDecode, _KupDataTable_renderFontSizePanel, _KupDataTable_DENSITY_DECODES, _KupDataTable_DENSITY_ICONS, _KupDataTable_getDensityCodeFromDecode, _KupDataTable_renderDensityPanel, _KupDataTable_GRID_CODES, _KupDataTable_GRID_DECODES, _KupDataTable_GRID_ICONS, _KupDataTable_getGridCodeFromDecode, _KupDataTable_renderTransposeSwitch, _KupDataTable_renderTotalsMatrix, _KupDataTable_renderBackFromTotalsMatrix, _KupDataTable_renderGridPanel, _KupDataTable_renderCommandButton, _KupDataTable_handleChipsContextMenu, _KupDataTable_renderCommandDropDownButton, _KupDataTable_renderOtherButtons, _KupDataTable_renderUpdateButtons, _KupDataTable_createDeletePayload, _KupDataTable_isRowInserted, _KupDataTable_isRowModified, _KupDataTable_arraysContainSameElements;
24340
24543
  const dom = document.documentElement;
24341
24544
  const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends H {
24342
24545
  constructor() {
@@ -24403,6 +24606,13 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
24403
24606
  * contains the id greater value in #originalDataLoaded
24404
24607
  */
24405
24608
  _KupDataTable_originalDataLoadedMaxId.set(this, void 0);
24609
+ /**
24610
+ * variables keeping track of the matrix properties before the totals view
24611
+ */
24612
+ _KupDataTable_beforeTotalMatrixData.set(this, undefined);
24613
+ _KupDataTable_beforeTotalMatrixGroups.set(this, undefined);
24614
+ _KupDataTable_beforeTotalMatrixTotals.set(this, undefined);
24615
+ _KupDataTable_beforeTotalMatrixVisibleColumns.set(this, undefined);
24406
24616
  /**
24407
24617
  * contains the id greater value in #originalDataLoaded
24408
24618
  */
@@ -24662,6 +24872,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
24662
24872
  this.openedTotalMenu = null;
24663
24873
  this.openedCustomSettings = false;
24664
24874
  this.fontsize = 'small';
24875
+ this.totalsMatrixView = false;
24665
24876
  }
24666
24877
  initWithPersistedState() {
24667
24878
  if (this.store && this.stateId) {
@@ -25077,7 +25288,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25077
25288
  });
25078
25289
  });
25079
25290
  __classPrivateFieldGet$3(this, _KupDataTable_columnMenuCard, "f").addEventListener('kup-card-event', (e) => {
25080
- __classPrivateFieldGet$3(this, _KupDataTable_columnMenuInstance, "f").eventHandlers(e, this);
25291
+ __classPrivateFieldGet$3(this, _KupDataTable_columnMenuInstance, "f").eventHandlers(e, this, columnName);
25081
25292
  this.kupDataTableColumnMenu.emit({
25082
25293
  comp: this,
25083
25294
  id: this.rootElement.id,
@@ -25321,6 +25532,11 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25321
25532
  }
25322
25533
  }
25323
25534
  }
25535
+ async toggleTotalsMatrix(columnName, calculateTotals) {
25536
+ calculateTotals === true
25537
+ ? __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_switchToTotalsMatrix).call(this, columnName)
25538
+ : __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_switchBackFromTotalsMatrix).call(this);
25539
+ }
25324
25540
  //---- Lifecycle hooks ----
25325
25541
  connectedCallback() {
25326
25542
  __classPrivateFieldSet$2(this, _KupDataTable_readyPromise, new Promise((resolve) => {
@@ -25710,8 +25926,13 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25710
25926
  grid = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderGridPanel).call(this);
25711
25927
  transpose = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderTransposeSwitch).call(this);
25712
25928
  if (this.totals && this.groups.length > 0) {
25929
+ // From original matrix to totalsMatrix
25713
25930
  totalsMatrix = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderTotalsMatrix).call(this);
25714
25931
  }
25932
+ if (this.totalsMatrixView) {
25933
+ // From totals matrix to original
25934
+ totalsMatrix = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderBackFromTotalsMatrix).call(this);
25935
+ }
25715
25936
  }
25716
25937
  return (h$1("kup-card", { customStyle: "::slotted(kup-switch) { width: max-content !important; } ::slotted(*) { margin: auto !important; } ::slotted(.customize-element) { margin: auto !important; padding: 0 1em 1em 1em !important; width: max-content !important; } ::slotted(.customize-element):nth-child(1) { padding-top: 1em !important; }", isMenu: true, layoutFamily: KupCardFamily.FREE, ref: (el) => {
25717
25938
  __classPrivateFieldSet$2(this, _KupDataTable_customizeTopPanelRef, el, "f");
@@ -25764,7 +25985,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25764
25985
  __classPrivateFieldSet$2(this, _KupDataTable_sizedColumns, __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_getSizedColumns).call(this), "f");
25765
25986
  let rows = null;
25766
25987
  if (__classPrivateFieldGet$3(this, _KupDataTable_paginatedRowsLength, "f") === 0) {
25767
- rows = (h$1("tr", { key: '902c7371c90ba64e20e2555b12ef5bc4fb21290d', ref: (el) => __classPrivateFieldGet$3(this, _KupDataTable_rowsRefs, "f").push(el) }, h$1("td", { key: 'b02884900122cb4bf8d743ab4541877a65064ec4', colSpan: __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_calculateColspan).call(this) }, this.emptyDataLabel)));
25988
+ rows = (h$1("tr", { key: 'f756c110837ac07883be514318b398066cdc3840', ref: (el) => __classPrivateFieldGet$3(this, _KupDataTable_rowsRefs, "f").push(el) }, h$1("td", { key: '60bb274da01b04591b72c739b4a16c43700e0dce', colSpan: __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_calculateColspan).call(this) }, this.emptyDataLabel)));
25768
25989
  }
25769
25990
  else {
25770
25991
  rows = [];
@@ -25840,7 +26061,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25840
26061
  __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_handleChipsContextMenu).call(this, chipArg.id, e);
25841
26062
  });
25842
26063
  }
25843
- groupChips = h$1(FChip, Object.assign({ key: '217ee793c622149f45fc02884a84fd217f8b21b8' }, props));
26064
+ groupChips = h$1(FChip, Object.assign({ key: 'f97dd630bea3bd273b870b0db7bcd6da75b7bda6' }, props));
25844
26065
  }
25845
26066
  }
25846
26067
  const tableClass = {
@@ -25872,7 +26093,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25872
26093
  if (this.headerIsPersistent &&
25873
26094
  this.tableHeight === undefined &&
25874
26095
  this.tableWidth === undefined) {
25875
- stickyEl = (h$1("sticky-header", { key: '4a3d3a4d4b22801a227e7df37a433a5e9286dd3d', class: "hover-scrolling-child", hidden: !this.showHeader, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_stickyTheadRef, el, "f")) }, h$1("thead-sticky", { key: 'dbdb4e307318a5dc4acf586a52623ee00265889a' }, h$1("tr-sticky", { key: '3847c3a85153786af338aa0dacce81eabd1bcf1c' }, stickyHeader))));
26096
+ stickyEl = (h$1("sticky-header", { key: '0662d9ee62e82826c4ac0f3b177a65e5be681b09', class: "hover-scrolling-child", hidden: !this.showHeader, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_stickyTheadRef, el, "f")) }, h$1("thead-sticky", { key: '2c2a444728fb55d1cf75fc1cf9355a190b5adc6d' }, h$1("tr-sticky", { key: '76635d27d299a0fbcaf2b4d8ba23dfe2ced0a57f' }, stickyHeader))));
25876
26097
  }
25877
26098
  let belowClass = 'below-wrapper';
25878
26099
  if (!!this.tableHeight || !!this.tableWidth) {
@@ -25918,7 +26139,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25918
26139
  const useGlobalFilter = !this.legacyLook &&
25919
26140
  (this.globalFilter ||
25920
26141
  this.getRows().length > __classPrivateFieldGet$3(this, _KupDataTable_DEFAULT_ROWS_FOR_GLOBAL_FILTER, "f"));
25921
- const compCreated = (h$1(Host, { key: 'e07fa79400eadf0b6101f062d45c3602d868c7ab', "onKup-drop": (e) => {
26142
+ const compCreated = (h$1(Host, { key: '668806149ffdece2873c90423fc8230f1774d18d', "onKup-drop": (e) => {
25922
26143
  this.kupDataTableDrop.emit(e.detail);
25923
26144
  }, "onKup-cell-input": (e) => {
25924
26145
  autoselectOnAction(e);
@@ -25937,11 +26158,11 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25937
26158
  this.kupDataTableObjectFieldOpenSearchMenu.emit(e.detail);
25938
26159
  }, "onKup-objectfield-selectedmenuitem": (e) => {
25939
26160
  this.kupDataTableObjectFieldSelectedMenuItem.emit(e.detail);
25940
- } }, h$1("style", { key: '6311bee2d1697f6c4f5294b753475b9b11c5f847' }, __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").theme.setKupStyle(this.rootElement)), this.updatableData ? __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderUpdateButtons).call(this) : null, __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderOtherButtons).call(this), h$1("div", { key: '09c976d6d1fe888ced301bf342a8ed62db08b9c7', id: componentWrapperId, class: wrapClass }, h$1("div", { key: '1733cc9946c7a78c2569c4fcc2e3d15184838e70', class: "group-wrapper" }, groupChips), h$1("div", { key: 'beed723dc37a8b1b99bf6237fc5c596d9750004e', class: "actions-wrapper", style: actionWrapperWidth }, useGlobalFilter ? (h$1("div", { id: "global-filter" }, h$1(FTextField, { fullWidth: true, icon: KupThemeIconValues.SEARCH, label: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageSearch.SEARCH), sizing: KupComponentSizing.EXTRA_SMALL, value: this.globalFilterValue, onInput: (event) => {
26161
+ } }, h$1("style", { key: 'b4f670a84ca9e6c048145c18b66c95c0c8d94bf2' }, __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").theme.setKupStyle(this.rootElement)), this.updatableData ? __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderUpdateButtons).call(this) : null, __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_renderOtherButtons).call(this), h$1("div", { key: '10ad3ac25486699a1b2f4a72ef9a55df6923c09d', id: componentWrapperId, class: wrapClass }, h$1("div", { key: 'af5425d020f6aace2de2097b1640352af4c23474', class: "group-wrapper" }, groupChips), h$1("div", { key: 'c3719eb37a42275d12a14cdd9f17d4aa089a644b', class: "actions-wrapper", style: actionWrapperWidth }, useGlobalFilter ? (h$1("div", { id: "global-filter" }, h$1(FTextField, { fullWidth: true, icon: KupThemeIconValues.SEARCH, label: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageSearch.SEARCH), sizing: KupComponentSizing.EXTRA_SMALL, value: this.globalFilterValue, onInput: (event) => {
25941
26162
  const t = event.target;
25942
26163
  window.clearTimeout(__classPrivateFieldGet$3(this, _KupDataTable_globalFilterTimeout, "f"));
25943
26164
  __classPrivateFieldSet$2(this, _KupDataTable_globalFilterTimeout, window.setTimeout(() => __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_onGlobalFilterChange).call(this, t), 600, t), "f");
25944
- } }))) : null, paginatorTop && (h$1("div", { key: '9dfa26b1be7ecb3abea4bdf7a2d5761bc931bb61', class: "above-wrapper paginator-top" }, paginatorTop)), this.insertMode !== '' &&
26165
+ } }))) : null, paginatorTop && (h$1("div", { key: 'e01912dae8c3547a51c34f1215a81139b81c0efc', class: "above-wrapper paginator-top" }, paginatorTop)), this.insertMode !== '' &&
25945
26166
  this.selectedRows.length > 0 ? (h$1(FButton, { icon: "save", onClick: () => {
25946
26167
  this.kupSave.emit({
25947
26168
  comp: this,
@@ -25991,9 +26212,9 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
25991
26212
  this.data.rows.unshift(row);
25992
26213
  await this.refresh(true);
25993
26214
  }
25994
- }, sizing: KupComponentSizing.MEDIUM, styling: FButtonStyling.RAISED, title: "Insert row", wrapperClass: "insert-button" })) : null), h$1("div", { key: '4ff75f22a29a5dfa9bf6554d43d0de137cc58737', class: "droparea", ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_dropareaRef, el, "f")) }, this.showGroups ? __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_columnGroupArea).call(this) : null, this.removableColumns
26215
+ }, sizing: KupComponentSizing.MEDIUM, styling: FButtonStyling.RAISED, title: "Insert row", wrapperClass: "insert-button" })) : null), h$1("div", { key: '4e3b3890fc29bc744b945cb12aff638259bf070a', class: "droparea", ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_dropareaRef, el, "f")) }, this.showGroups ? __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_columnGroupArea).call(this) : null, this.removableColumns
25995
26216
  ? __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_columnRemoveArea).call(this)
25996
- : null), h$1("div", { key: 'f1d27db06eb8d10641cb5159ef29ff9d0cf88a18', style: elStyle, class: belowClass, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_tableAreaRef, el, "f")) }, this.showCustomization
26217
+ : null), h$1("div", { key: '13e409dd5151019d4241f5c715fac71f45f8b2d9', style: elStyle, class: belowClass, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_tableAreaRef, el, "f")) }, this.showCustomization
25997
26218
  ? [
25998
26219
  h$1("div", { class: "settings-trigger", onClick: () => {
25999
26220
  __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_onCustomSettingsClick).call(this);
@@ -26002,7 +26223,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
26002
26223
  } }, h$1(FImage, { color: `var(${KupThemeColorValues.TITLE})`, resource: "settings", sizeX: "10px" })),
26003
26224
  this.renderCustomizePanel(),
26004
26225
  ]
26005
- : null, h$1("table", { key: 'a2aed0782eb7313b7ea421e2e6ce5249c3dc8171', class: tableClass, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_tableRef, el, "f")), onKeyDown: (e) => __classPrivateFieldGet$3(this, _KupDataTable_onKupKeyDown, "f").call(this, e), onMouseLeave: (ev) => {
26226
+ : null, h$1("table", { key: '9dbaa5b996c7be9610cfc86f4fec1fe8f51bc088', class: tableClass, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_tableRef, el, "f")), onKeyDown: (e) => __classPrivateFieldGet$3(this, _KupDataTable_onKupKeyDown, "f").call(this, e), onMouseLeave: (ev) => {
26006
26227
  ev.stopPropagation();
26007
26228
  }, onPointerDown: (e) => {
26008
26229
  __classPrivateFieldSet$2(this, _KupDataTable_lastPointerDetails, __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_getEventDetails).call(this, __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").getEventPath(e.target, this.rootElement), e), "f");
@@ -26010,7 +26231,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
26010
26231
  __classPrivateFieldSet$2(this, _KupDataTable_lastPointerDetails, __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_getEventDetails).call(this, __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").getEventPath(e.target, this.rootElement), e), "f");
26011
26232
  }, onContextMenu: (e) => {
26012
26233
  e.preventDefault();
26013
- } }, h$1("thead", { key: '35c20848d82327d48eb6cdcce8a69c785d343e79', hidden: !this.showHeader, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_theadRef, el, "f")) }, h$1("tr", { key: 'aef2b03f6050da0abb10bd95a0abf95e55bdcfa3' }, header)), h$1("tbody", { key: 'f8895a2d3f0e4cf0f10fdbf2ef991b563d5585e2' }, rows), this.showFooter && this.renderFooter()), stickyEl), paginatorBottom)));
26234
+ } }, h$1("thead", { key: '33ec409789766dea9659e28f214d0ec90898d64c', hidden: !this.showHeader, ref: (el) => (__classPrivateFieldSet$2(this, _KupDataTable_theadRef, el, "f")) }, h$1("tr", { key: '50d184585969f3626e86612213421f3fcc2f1212' }, header)), h$1("tbody", { key: '9eaadffb972a9332c77ba8c0f382d84b4b20e9fd' }, rows), this.showFooter && this.renderFooter()), stickyEl), paginatorBottom)));
26014
26235
  __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").perfMonitoring.measure('componentRender', 'kup-data-table');
26015
26236
  return compCreated;
26016
26237
  }
@@ -26133,6 +26354,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
26133
26354
  "openedTotalMenu": [32],
26134
26355
  "openedCustomSettings": [32],
26135
26356
  "fontsize": [32],
26357
+ "totalsMatrixView": [32],
26136
26358
  "closeColumnMenu": [64],
26137
26359
  "collapseAll": [64],
26138
26360
  "deleteRows": [64],
@@ -26160,6 +26382,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
26160
26382
  "getLastFocusedColumn": [64],
26161
26383
  "tooltipRequest": [64],
26162
26384
  "update": [64],
26385
+ "toggleTotalsMatrix": [64],
26163
26386
  "getInternalState": [64],
26164
26387
  "defaultSortingFunction": [64]
26165
26388
  }, [[0, "keydown", "listenEnterKeydown"], [0, "keydown", "listenCopyCellValueInColumnListener"]], {
@@ -26179,7 +26402,7 @@ const KupDataTable = /*@__PURE__*/ proxyCustomElement(class KupDataTable extends
26179
26402
  "fixedRows": ["controlFixedRowsColumns"],
26180
26403
  "transpose": ["recalculateData"]
26181
26404
  }]);
26182
- _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _KupDataTable_rowsLength = new WeakMap(), _KupDataTable_paginatedRows = new WeakMap(), _KupDataTable_paginatedRowsLength = new WeakMap(), _KupDataTable_footer = new WeakMap(), _KupDataTable_kupManager = new WeakMap(), _KupDataTable_renderedRows = new WeakMap(), _KupDataTable_loadMoreEventCounter = new WeakMap(), _KupDataTable_loadMoreEventPreviousQuantity = new WeakMap(), _KupDataTable_theadRef = new WeakMap(), _KupDataTable_tableRef = new WeakMap(), _KupDataTable_originalData = new WeakMap(), _KupDataTable_originalDataLoaded = new WeakMap(), _KupDataTable_originalDataLoadedMaxId = new WeakMap(), _KupDataTable_insertedRowIds = new WeakMap(), _KupDataTable_modifiedRowsIds = new WeakMap(), _KupDataTable_tableAreaRef = new WeakMap(), _KupDataTable_stickyTheadRef = new WeakMap(), _KupDataTable_lastPointerDetails = new WeakMap(), _KupDataTable_customizeTopButtonRef = new WeakMap(), _KupDataTable_customizeTopPanelRef = new WeakMap(), _KupDataTable_sizedColumns = new WeakMap(), _KupDataTable_intObserver = new WeakMap(), _KupDataTable_navBarHeight = new WeakMap(), _KupDataTable_theadIntersecting = new WeakMap(), _KupDataTable_tableIntersecting = new WeakMap(), _KupDataTable_isSafariBrowser = new WeakMap(), _KupDataTable_isRestoringState = new WeakMap(), _KupDataTable_globalFilterTimeout = new WeakMap(), _KupDataTable_totalMenuCoords = new WeakMap(), _KupDataTable_clickTimeout = new WeakMap(), _KupDataTable_thRefs = new WeakMap(), _KupDataTable_rowsRefs = new WeakMap(), _KupDataTable_oldWidth = new WeakMap(), _KupDataTable_hold = new WeakMap(), _KupDataTable_interactableDrag = new WeakMap(), _KupDataTable_interactableDrop = new WeakMap(), _KupDataTable_interactableResize = new WeakMap(), _KupDataTable_interactableTouch = new WeakMap(), _KupDataTable_dropareaRef = new WeakMap(), _KupDataTable_removeDropareaRef = new WeakMap(), _KupDataTable_groupsDropareaRef = new WeakMap(), _KupDataTable_clickCb = new WeakMap(), _KupDataTable_clickCbCustomPanel = new WeakMap(), _KupDataTable_clickCbDropCard = new WeakMap(), _KupDataTable_resizeTimeout = new WeakMap(), _KupDataTable_columnMenuInstance = new WeakMap(), _KupDataTable_filtersColumnMenuInstance = new WeakMap(), _KupDataTable_filtersRowsInstance = new WeakMap(), _KupDataTable_detailCard = new WeakMap(), _KupDataTable_insertCard = new WeakMap(), _KupDataTable_actionsCard = new WeakMap(), _KupDataTable_confirmDeleteCard = new WeakMap(), _KupDataTable_confirmDeleteDialog = new WeakMap(), _KupDataTable_columnMenuCard = new WeakMap(), _KupDataTable_columnDropCard = new WeakMap(), _KupDataTable_columnDropCardAnchor = new WeakMap(), _KupDataTable_dropDownActionCardAnchor = new WeakMap(), _KupDataTable_insertCount = new WeakMap(), _KupDataTable_lastFocusedColumn = new WeakMap(), _KupDataTable_lastFocusedCell = new WeakMap(), _KupDataTable_lastFocusedRow = new WeakMap(), _KupDataTable_maxRowsPerPage = new WeakMap(), _KupDataTable_readyPromise = new WeakMap(), _KupDataTable_readyResolve = new WeakMap(), _KupDataTable_BUTTON_CANCEL_ID = new WeakMap(), _KupDataTable_BUTTON_SUBMIT_ID = new WeakMap(), _KupDataTable_FIELDS_FORM_ID = new WeakMap(), _KupDataTable_MESSAGE_ID = new WeakMap(), _KupDataTable_MESSAGE_WRAPPER_ID = new WeakMap(), _KupDataTable_INSERT_PREFIX = new WeakMap(), _KupDataTable_DEFAULT_ROWS_FOR_GLOBAL_FILTER = new WeakMap(), _KupDataTable_stickyHeaderPosition = new WeakMap(), _KupDataTable_horNav = new WeakMap(), _KupDataTable_verNav = new WeakMap(), _KupDataTable_onKupKeyDown = new WeakMap(), _KupDataTable_handleUpdateClick = new WeakMap(), _KupDataTable_FONTSIZE_CODES = new WeakMap(), _KupDataTable_FONTSIZE_DECODES = new WeakMap(), _KupDataTable_FONTSIZE_ICONS = new WeakMap(), _KupDataTable_DENSITY_DECODES = new WeakMap(), _KupDataTable_DENSITY_ICONS = new WeakMap(), _KupDataTable_GRID_CODES = new WeakMap(), _KupDataTable_GRID_DECODES = new WeakMap(), _KupDataTable_GRID_ICONS = new WeakMap(), _KupDataTable_instances = new WeakSet(), _KupDataTable_checkUpdateState = function _KupDataTable_checkUpdateState() {
26405
+ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _KupDataTable_rowsLength = new WeakMap(), _KupDataTable_paginatedRows = new WeakMap(), _KupDataTable_paginatedRowsLength = new WeakMap(), _KupDataTable_footer = new WeakMap(), _KupDataTable_kupManager = new WeakMap(), _KupDataTable_renderedRows = new WeakMap(), _KupDataTable_loadMoreEventCounter = new WeakMap(), _KupDataTable_loadMoreEventPreviousQuantity = new WeakMap(), _KupDataTable_theadRef = new WeakMap(), _KupDataTable_tableRef = new WeakMap(), _KupDataTable_originalData = new WeakMap(), _KupDataTable_originalDataLoaded = new WeakMap(), _KupDataTable_originalDataLoadedMaxId = new WeakMap(), _KupDataTable_beforeTotalMatrixData = new WeakMap(), _KupDataTable_beforeTotalMatrixGroups = new WeakMap(), _KupDataTable_beforeTotalMatrixTotals = new WeakMap(), _KupDataTable_beforeTotalMatrixVisibleColumns = new WeakMap(), _KupDataTable_insertedRowIds = new WeakMap(), _KupDataTable_modifiedRowsIds = new WeakMap(), _KupDataTable_tableAreaRef = new WeakMap(), _KupDataTable_stickyTheadRef = new WeakMap(), _KupDataTable_lastPointerDetails = new WeakMap(), _KupDataTable_customizeTopButtonRef = new WeakMap(), _KupDataTable_customizeTopPanelRef = new WeakMap(), _KupDataTable_sizedColumns = new WeakMap(), _KupDataTable_intObserver = new WeakMap(), _KupDataTable_navBarHeight = new WeakMap(), _KupDataTable_theadIntersecting = new WeakMap(), _KupDataTable_tableIntersecting = new WeakMap(), _KupDataTable_isSafariBrowser = new WeakMap(), _KupDataTable_isRestoringState = new WeakMap(), _KupDataTable_globalFilterTimeout = new WeakMap(), _KupDataTable_totalMenuCoords = new WeakMap(), _KupDataTable_clickTimeout = new WeakMap(), _KupDataTable_thRefs = new WeakMap(), _KupDataTable_rowsRefs = new WeakMap(), _KupDataTable_oldWidth = new WeakMap(), _KupDataTable_hold = new WeakMap(), _KupDataTable_interactableDrag = new WeakMap(), _KupDataTable_interactableDrop = new WeakMap(), _KupDataTable_interactableResize = new WeakMap(), _KupDataTable_interactableTouch = new WeakMap(), _KupDataTable_dropareaRef = new WeakMap(), _KupDataTable_removeDropareaRef = new WeakMap(), _KupDataTable_groupsDropareaRef = new WeakMap(), _KupDataTable_clickCb = new WeakMap(), _KupDataTable_clickCbCustomPanel = new WeakMap(), _KupDataTable_clickCbDropCard = new WeakMap(), _KupDataTable_resizeTimeout = new WeakMap(), _KupDataTable_columnMenuInstance = new WeakMap(), _KupDataTable_filtersColumnMenuInstance = new WeakMap(), _KupDataTable_filtersRowsInstance = new WeakMap(), _KupDataTable_detailCard = new WeakMap(), _KupDataTable_insertCard = new WeakMap(), _KupDataTable_actionsCard = new WeakMap(), _KupDataTable_confirmDeleteCard = new WeakMap(), _KupDataTable_confirmDeleteDialog = new WeakMap(), _KupDataTable_columnMenuCard = new WeakMap(), _KupDataTable_columnDropCard = new WeakMap(), _KupDataTable_columnDropCardAnchor = new WeakMap(), _KupDataTable_dropDownActionCardAnchor = new WeakMap(), _KupDataTable_insertCount = new WeakMap(), _KupDataTable_lastFocusedColumn = new WeakMap(), _KupDataTable_lastFocusedCell = new WeakMap(), _KupDataTable_lastFocusedRow = new WeakMap(), _KupDataTable_maxRowsPerPage = new WeakMap(), _KupDataTable_readyPromise = new WeakMap(), _KupDataTable_readyResolve = new WeakMap(), _KupDataTable_BUTTON_CANCEL_ID = new WeakMap(), _KupDataTable_BUTTON_SUBMIT_ID = new WeakMap(), _KupDataTable_FIELDS_FORM_ID = new WeakMap(), _KupDataTable_MESSAGE_ID = new WeakMap(), _KupDataTable_MESSAGE_WRAPPER_ID = new WeakMap(), _KupDataTable_INSERT_PREFIX = new WeakMap(), _KupDataTable_DEFAULT_ROWS_FOR_GLOBAL_FILTER = new WeakMap(), _KupDataTable_stickyHeaderPosition = new WeakMap(), _KupDataTable_horNav = new WeakMap(), _KupDataTable_verNav = new WeakMap(), _KupDataTable_onKupKeyDown = new WeakMap(), _KupDataTable_handleUpdateClick = new WeakMap(), _KupDataTable_FONTSIZE_CODES = new WeakMap(), _KupDataTable_FONTSIZE_DECODES = new WeakMap(), _KupDataTable_FONTSIZE_ICONS = new WeakMap(), _KupDataTable_DENSITY_DECODES = new WeakMap(), _KupDataTable_DENSITY_ICONS = new WeakMap(), _KupDataTable_GRID_CODES = new WeakMap(), _KupDataTable_GRID_DECODES = new WeakMap(), _KupDataTable_GRID_ICONS = new WeakMap(), _KupDataTable_instances = new WeakSet(), _KupDataTable_checkUpdateState = function _KupDataTable_checkUpdateState() {
26183
26406
  let somethingChanged = false;
26184
26407
  if (!__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").objects.deepEqual(this.state.filters, this.filters)) {
26185
26408
  this.state.filters = Object.assign({}, this.filters);
@@ -26432,127 +26655,190 @@ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _
26432
26655
  if (this.data.columns.length > 0) {
26433
26656
  this.data = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_getTransposedData).call(this, this.data.columns[0].name);
26434
26657
  }
26435
- }, _KupDataTable_switchToTotalsMatrix = function _KupDataTable_switchToTotalsMatrix() {
26436
- if (__classPrivateFieldGet$3(this, _KupDataTable_rows, "f").length === 0 || !__classPrivateFieldGet$3(this, _KupDataTable_rows, "f")[0].group)
26658
+ }, _KupDataTable_switchBackFromTotalsMatrix = function _KupDataTable_switchBackFromTotalsMatrix() {
26659
+ this.groups = __classPrivateFieldGet$3(this, _KupDataTable_beforeTotalMatrixGroups, "f");
26660
+ this.data = __classPrivateFieldGet$3(this, _KupDataTable_beforeTotalMatrixData, "f");
26661
+ this.totals = __classPrivateFieldGet$3(this, _KupDataTable_beforeTotalMatrixTotals, "f");
26662
+ this.visibleColumns = __classPrivateFieldGet$3(this, _KupDataTable_beforeTotalMatrixVisibleColumns, "f");
26663
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixData, undefined, "f");
26664
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixGroups, undefined, "f");
26665
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixTotals, undefined, "f");
26666
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixVisibleColumns, undefined, "f");
26667
+ this.totalsMatrixView = false;
26668
+ }, _KupDataTable_switchToTotalsMatrix = function _KupDataTable_switchToTotalsMatrix(columnName) {
26669
+ const groupColName = columnName !== null && columnName !== void 0 ? columnName : this.groups[0].column;
26670
+ const totalsColumns = Object.keys(this.totals);
26671
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixData, this.data, "f");
26672
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixGroups, this.groups, "f");
26673
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixTotals, this.totals, "f");
26674
+ __classPrivateFieldSet$2(this, _KupDataTable_beforeTotalMatrixVisibleColumns, this.visibleColumns, "f");
26675
+ if (__classPrivateFieldGet$3(this, _KupDataTable_rows, "f").length === 0 ||
26676
+ !__classPrivateFieldGet$3(this, _KupDataTable_rows, "f")[0].group ||
26677
+ (totalsColumns === null || totalsColumns === void 0 ? void 0 : totalsColumns.length) === 0 ||
26678
+ !groupColName)
26437
26679
  return;
26438
- // calc totals matrix data
26680
+ // ---------------------------
26681
+ // Build the matrix data object
26682
+ // ---------------------------
26439
26683
  const totalsMatrixData = {};
26440
- // calc columns id
26441
- // note that the sorting of the columns depends on the totals selection
26442
- // the first column is the one that is selected first in the totals, and so on...
26443
- const ids = [];
26444
- ids.push(__classPrivateFieldGet$3(this, _KupDataTable_rows, "f")[0].group.column);
26445
- Object.keys(__classPrivateFieldGet$3(this, _KupDataTable_rows, "f")[0].group.totals).forEach((columnKey) => {
26446
- if (__classPrivateFieldGet$3(this, _KupDataTable_rows, "f")[0].group.column !== columnKey)
26447
- ids.push(columnKey);
26684
+ const groupsToInsert = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_getGroupElementsBefore).call(this, this.groups, groupColName);
26685
+ // 1. Compute column IDs in correct order
26686
+ const columnIds = [
26687
+ ...groupsToInsert.map((group) => group.column),
26688
+ ...[columnName],
26689
+ ...Object.keys(this.totals),
26690
+ ];
26691
+ // 2. Optimize lookup of columns by building a Map
26692
+ const columnMap = new Map(this.data.columns.map((col) => [col.name, col]));
26693
+ // 3. Build matrix columns
26694
+ totalsMatrixData.columns = columnIds
26695
+ .map((id) => columnMap.get(id))
26696
+ .filter((col) => !!col) // ensure defined
26697
+ .map((col) => {
26698
+ const currentColumn = Object.assign({}, col);
26699
+ const totalMode = this.totals[currentColumn.name];
26700
+ if (totalMode) {
26701
+ currentColumn.title = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_buildTotalTitle).call(this, currentColumn.title, totalMode);
26702
+ __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_setObjForTotalsMatrix).call(this, currentColumn, this.totals);
26703
+ }
26704
+ return currentColumn;
26448
26705
  });
26449
- // calc columns
26450
- const totalsMatrixColumns = [];
26451
- ids.forEach((id) => {
26452
- this.data.columns.forEach((column) => {
26453
- if (column.name === id) {
26454
- const currentColumn = Object.assign({}, column);
26455
- const totalMode = this.totals[currentColumn.name];
26456
- if (totalMode) {
26457
- if (totalMode.startsWith(TotalMode.MATH)) {
26458
- currentColumn.title =
26459
- TotalLabel[TotalMode.MATH] +
26460
- ' ' +
26461
- currentColumn.title;
26462
- }
26463
- else {
26464
- const totalModeKey = Object.keys(TotalMode).find((key) => TotalMode[key] === totalMode);
26465
- if (totalModeKey) {
26466
- currentColumn.title =
26467
- TotalLabel[totalModeKey] +
26468
- ' ' +
26469
- currentColumn.title;
26470
- }
26471
- else {
26472
- currentColumn.title =
26473
- totalMode + ' ' + currentColumn.title;
26706
+ // 4. Build matrix rows
26707
+ if (!groupsToInsert || groupsToInsert.length === 0) {
26708
+ totalsMatrixData.rows = __classPrivateFieldGet$3(this, _KupDataTable_rows, "f").map((row, index) => {
26709
+ const cells = {};
26710
+ columnIds.forEach((id) => {
26711
+ let totalValue;
26712
+ if ((columnName === id ||
26713
+ groupsToInsert
26714
+ .map((group) => group.column)
26715
+ .includes(id)) &&
26716
+ row.group.id) {
26717
+ // ID is contained in the column of the group levels before the one clicked
26718
+ // ID equals the column relative to the group the user clicked
26719
+ // - Returns the value of the group - row headers
26720
+ totalValue = row.group.id;
26721
+ }
26722
+ else if (row.group.totals[id] &&
26723
+ Object.keys(this.totals).includes(id)) {
26724
+ // The column id is contained in the totals columns
26725
+ // and the total exists
26726
+ totalValue = row.group.totals[id];
26727
+ }
26728
+ else {
26729
+ // Default with an empty value because '---' breaks the totals
26730
+ totalValue = '';
26731
+ }
26732
+ if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").dates.isIsoDate(totalValue)) {
26733
+ totalValue = __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").dates.format(totalValue);
26734
+ }
26735
+ cells[id] = { value: String(totalValue) };
26736
+ });
26737
+ return {
26738
+ id: String(index),
26739
+ cells,
26740
+ };
26741
+ });
26742
+ }
26743
+ else {
26744
+ totalsMatrixData.rows = [];
26745
+ for (const row of __classPrivateFieldGet$3(this, _KupDataTable_rows, "f")) {
26746
+ const foundGroups = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_findGroupsAtLevel).call(this, row.group, columnName);
26747
+ if (foundGroups) {
26748
+ for (const g of foundGroups) {
26749
+ if (g === null || g === void 0 ? void 0 : g.totals) {
26750
+ const utilityRow = g.children[0];
26751
+ for (const [key, value] of Object.entries(g.totals)) {
26752
+ let cellValue = value;
26753
+ if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").dates.isIsoDate(cellValue)) {
26754
+ cellValue =
26755
+ __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").dates.format(cellValue);
26756
+ }
26757
+ utilityRow.cells[key].value = String(cellValue);
26758
+ utilityRow.cells[key].obj.k = String(cellValue);
26759
+ utilityRow.cells[key].displayedValue =
26760
+ String(cellValue);
26474
26761
  }
26762
+ totalsMatrixData.rows.push(utilityRow);
26475
26763
  }
26476
- __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_setObjForTotalsMatrix).call(this, currentColumn, this.totals);
26477
26764
  }
26478
- totalsMatrixColumns.push(currentColumn);
26479
26765
  }
26480
- });
26481
- });
26482
- // set columns
26483
- totalsMatrixData.columns = totalsMatrixColumns;
26484
- // calc rows
26485
- const totalsMatrixRows = [];
26486
- let index = 0;
26487
- __classPrivateFieldGet$3(this, _KupDataTable_rows, "f").forEach((row) => {
26488
- const cells = {};
26489
- ids.forEach((id) => {
26490
- let totalValue = row.group.totals[id];
26491
- if (!totalValue) {
26492
- totalValue = row.group.id;
26493
- }
26494
- if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").dates.isIsoDate(totalValue)) {
26495
- totalValue = __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").dates.format(totalValue);
26496
- }
26497
- cells[id] = {
26498
- value: String(totalValue),
26499
- };
26500
- });
26501
- totalsMatrixRows.push({
26502
- id: String(index),
26503
- cells,
26504
- });
26505
- index++;
26506
- });
26507
- // set rows
26508
- totalsMatrixData.rows = totalsMatrixRows;
26509
- // reset groups
26510
- this.groups = [];
26511
- // update data
26512
- this.data = Object.assign({}, totalsMatrixData);
26513
- // calc totals
26514
- // distinct becomes count
26515
- // count becomes sum
26516
- const updatedTotals = {};
26517
- Object.keys(this.totals).forEach((key) => {
26518
- switch (this.totals[key]) {
26766
+ }
26767
+ }
26768
+ // ---------------------------
26769
+ // Finalize matrix
26770
+ // ---------------------------
26771
+ this.totalsMatrixView = true;
26772
+ this.groups = groupsToInsert;
26773
+ this.data = Object.assign({}, totalsMatrixData); // update dataset
26774
+ this.totals = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_promoteTotals).call(this, this.totals); // promote totals
26775
+ this.visibleColumns = columnIds;
26776
+ }, _KupDataTable_findGroupsAtLevel = function _KupDataTable_findGroupsAtLevel(group, columnName) {
26777
+ let results = [];
26778
+ if (!group || !Array.isArray(group.children)) {
26779
+ return results;
26780
+ }
26781
+ // check if any child group matches the columnName
26782
+ const hasMatch = group.children.some((child) => { var _a; return ((_a = child.group) === null || _a === void 0 ? void 0 : _a.column) === columnName; });
26783
+ if (hasMatch) {
26784
+ // collect all sibling groups at this level
26785
+ results.push(...group.children.map((child) => child.group));
26786
+ }
26787
+ else {
26788
+ // traverse children
26789
+ for (const child of group.children) {
26790
+ results.push(...__classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_findGroupsAtLevel).call(this, child.group, columnName));
26791
+ }
26792
+ }
26793
+ return results;
26794
+ }, _KupDataTable_getGroupElementsBefore = function _KupDataTable_getGroupElementsBefore(arr, target) {
26795
+ const index = arr.findIndex((obj) => obj.column === target);
26796
+ if (index <= 0) {
26797
+ return []; // not found or at index 0
26798
+ }
26799
+ return arr.slice(0, index);
26800
+ }, _KupDataTable_buildTotalTitle = function _KupDataTable_buildTotalTitle(originalTitle, totalMode) {
26801
+ if (totalMode.startsWith(TotalMode.MATH)) {
26802
+ return `${TotalLabel[TotalMode.MATH]} ${originalTitle}`;
26803
+ }
26804
+ const totalModeKey = Object.keys(TotalMode).find((key) => TotalMode[key] === totalMode);
26805
+ const label = totalModeKey ? TotalLabel[totalModeKey] : totalMode;
26806
+ return `${label} ${originalTitle}`;
26807
+ }, _KupDataTable_promoteTotals = function _KupDataTable_promoteTotals(totals) {
26808
+ const updated = {};
26809
+ for (const [key, mode] of Object.entries(totals)) {
26810
+ switch (mode) {
26519
26811
  case TotalMode.DISTINCT:
26520
- updatedTotals[key] = TotalMode.COUNT;
26812
+ updated[key] = TotalMode.COUNT;
26521
26813
  break;
26522
26814
  case TotalMode.COUNT:
26523
- updatedTotals[key] = TotalMode.SUM;
26815
+ updated[key] = TotalMode.SUM;
26524
26816
  break;
26525
26817
  default:
26526
- updatedTotals[key] = this.totals[key];
26818
+ updated[key] = mode;
26527
26819
  break;
26528
26820
  }
26529
- });
26530
- // update totals
26531
- this.totals = Object.assign({}, updatedTotals);
26821
+ }
26822
+ return updated;
26532
26823
  }, _KupDataTable_setObjForTotalsMatrix = function _KupDataTable_setObjForTotalsMatrix(column, totals) {
26824
+ var _a;
26533
26825
  const obj = column.obj;
26534
26826
  const totalMode = totals[column.name];
26827
+ // Date columns: keep MAX/MIN modes
26535
26828
  if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").objects.isDate(obj)) {
26536
- // check if min or max totals mode
26537
- if (totalMode === TotalMode.MAX || totalMode === TotalMode.MIN) {
26829
+ if (totalMode === TotalMode.MAX || totalMode === TotalMode.MIN)
26538
26830
  return;
26539
- }
26540
26831
  }
26541
- else if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").objects.isNumber(obj)) {
26542
- // check if percentage
26543
- if (obj.p && obj.p.toUpperCase() === 'P') {
26544
- if (totalMode !== TotalMode.COUNT &&
26545
- totalMode !== TotalMode.DISTINCT) {
26546
- return;
26547
- }
26832
+ // Percentage numbers: keep COUNT/DISTINCT modes
26833
+ if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").objects.isNumber(obj) &&
26834
+ ((_a = obj.p) === null || _a === void 0 ? void 0 : _a.toUpperCase()) === 'P') {
26835
+ if (totalMode === TotalMode.COUNT ||
26836
+ totalMode === TotalMode.DISTINCT) {
26837
+ return;
26548
26838
  }
26549
26839
  }
26550
- // force obj number
26551
- column.obj = {
26552
- t: 'NR',
26553
- p: '',
26554
- k: '',
26555
- };
26840
+ // Default: force numeric
26841
+ column.obj = { t: 'NR', p: '', k: '' };
26556
26842
  if (column.icon) {
26557
26843
  delete column.icon;
26558
26844
  }
@@ -26630,7 +26916,7 @@ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _
26630
26916
  }, _KupDataTable_didLoadInteractables = function _KupDataTable_didLoadInteractables() {
26631
26917
  __classPrivateFieldGet$3(this, _KupDataTable_interactableTouch, "f").push(__classPrivateFieldGet$3(this, _KupDataTable_tableRef, "f"));
26632
26918
  const tapCb = (e) => {
26633
- var _a, _b, _c, _d;
26919
+ var _a, _b, _c, _d, _e;
26634
26920
  if (__classPrivateFieldGet$3(this, _KupDataTable_hold, "f")) {
26635
26921
  __classPrivateFieldSet$2(this, _KupDataTable_hold, false, "f");
26636
26922
  return;
@@ -26649,7 +26935,8 @@ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _
26649
26935
  const details = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_getEventDetails).call(this, __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").getEventPath(e.target, this.rootElement), e);
26650
26936
  // in case a cell action icon is clicked
26651
26937
  if (((_b = (_a = details === null || details === void 0 ? void 0 : details.cell) === null || _a === void 0 ? void 0 : _a.obj) === null || _b === void 0 ? void 0 : _b.t) !== 'J4' &&
26652
- ((_d = (_c = details === null || details === void 0 ? void 0 : details.cell) === null || _c === void 0 ? void 0 : _c.obj) === null || _d === void 0 ? void 0 : _d.p) !== 'ICO') {
26938
+ ((_d = (_c = details === null || details === void 0 ? void 0 : details.cell) === null || _c === void 0 ? void 0 : _c.obj) === null || _d === void 0 ? void 0 : _d.p) !== 'ICO' &&
26939
+ ((_e = details === null || details === void 0 ? void 0 : details.cell) === null || _e === void 0 ? void 0 : _e.shape) !== FCellShapes.ICON) {
26653
26940
  break;
26654
26941
  }
26655
26942
  }
@@ -28531,7 +28818,7 @@ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _
28531
28818
  const rowActions = __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").data.row.buildRowActions(row, this.getVisibleColumns({ includeCodVer: true }), this.rowActions, (_b = this.commands) !== null && _b !== void 0 ? _b : []);
28532
28819
  if (__classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").data.action.checkEveryActionHasOnlyIcon(rowActions) ||
28533
28820
  (rowActions.length === 1 && rowActions[0].icon)) {
28534
- rowActions.forEach((action, index) => {
28821
+ rowActions.forEach((action) => {
28535
28822
  var _a;
28536
28823
  const imageProp = __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").data.action.buildImageProp(action.icon, action.text || ((_a = action.column) === null || _a === void 0 ? void 0 : _a.title) || '', 'action', () => {
28537
28824
  this.kupRowActionItemClick.emit({
@@ -28541,7 +28828,7 @@ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _
28541
28828
  obj: action.obj,
28542
28829
  cell: action.cell,
28543
28830
  type: action.type,
28544
- index: index,
28831
+ index: action.index,
28545
28832
  column: action.column,
28546
28833
  });
28547
28834
  });
@@ -28860,7 +29147,12 @@ _KupDataTable_initialized = new WeakMap(), _KupDataTable_rows = new WeakMap(), _
28860
29147
  return (h$1("div", { class: "customize-element grid-panel" }, h$1("kup-button", { title: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.TOTALS_TABLE) +
28861
29148
  ' (' +
28862
29149
  __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.EXPERIMENTAL_FEAT) +
28863
- ')', label: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.TOTALS_TABLE), icon: "exposure", "onkup-button-click": () => __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_switchToTotalsMatrix).call(this) })));
29150
+ ')', label: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.TOTALS_TABLE), icon: "exposure", "onkup-button-click": () => this.toggleTotalsMatrix() })));
29151
+ }, _KupDataTable_renderBackFromTotalsMatrix = function _KupDataTable_renderBackFromTotalsMatrix() {
29152
+ return (h$1("div", { class: "customize-element grid-panel" }, h$1("kup-button", { title: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.BACK_TO_ORIGINAL_TABLE) +
29153
+ ' (' +
29154
+ __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.EXPERIMENTAL_FEAT) +
29155
+ ')', label: __classPrivateFieldGet$3(this, _KupDataTable_kupManager, "f").language.translate(KupLanguageGeneric.BACK_TO_ORIGINAL_TABLE), icon: "exposure", "onkup-button-click": () => __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_switchBackFromTotalsMatrix).call(this) })));
28864
29156
  }, _KupDataTable_renderGridPanel = function _KupDataTable_renderGridPanel() {
28865
29157
  const listItems = __classPrivateFieldGet$3(this, _KupDataTable_instances, "m", _KupDataTable_createListData).call(this, __classPrivateFieldGet$3(this, _KupDataTable_GRID_CODES, "f"), __classPrivateFieldGet$3(this, _KupDataTable_GRID_ICONS, "f"), this.showGrid);
28866
29158
  const listData = { data: listItems, showIcons: true };