@sme.up/ketchup 9.1.0 → 9.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (720) hide show
  1. package/dist/cjs/bar.helpers-f46a5a83.js +372 -0
  2. package/dist/cjs/f-button-4caf541a.js +105 -0
  3. package/dist/cjs/{f-button-declarations-3fd791a8.js → f-button-declarations-51ef6d9a.js} +5 -5
  4. package/dist/cjs/f-cell-979c26ea.js +670 -0
  5. package/dist/cjs/f-checkbox-41864e53.js +29 -0
  6. package/dist/cjs/f-chip-8957940b.js +133 -0
  7. package/dist/cjs/f-image-e16fe10d.js +115 -0
  8. package/dist/cjs/f-paginator-utils-f2dd0322.js +1577 -0
  9. package/dist/cjs/f-text-field-2fac8078.js +216 -0
  10. package/dist/cjs/{f-text-field-mdc-4fda9705.js → f-text-field-mdc-08a06162.js} +19 -19
  11. package/dist/cjs/{index-4b3a5567.js → index-8f2f4159.js} +134 -27
  12. package/dist/cjs/index.cjs.js +12 -0
  13. package/dist/cjs/ketchup.cjs.js +3 -3
  14. package/dist/cjs/kup-accordion.cjs.entry.js +182 -181
  15. package/dist/cjs/kup-autocomplete_27.cjs.entry.js +14564 -14563
  16. package/dist/cjs/kup-box.cjs.entry.js +1231 -1230
  17. package/dist/cjs/kup-calendar.cjs.entry.js +5413 -5379
  18. package/dist/cjs/kup-card-list.cjs.entry.js +233 -212
  19. package/dist/cjs/kup-cell.cjs.entry.js +153 -152
  20. package/dist/cjs/kup-custom-task-list-header_4.cjs.entry.js +1317 -0
  21. package/dist/cjs/kup-dashboard.cjs.entry.js +369 -368
  22. package/dist/cjs/kup-dates-0e59b05d.js +782 -0
  23. package/dist/cjs/kup-drawer.cjs.entry.js +122 -121
  24. package/dist/cjs/kup-echart.cjs.entry.js +1192 -1191
  25. package/dist/cjs/kup-family-tree.cjs.entry.js +400 -399
  26. package/dist/cjs/kup-gantt_10.cjs.entry.js +1076 -0
  27. package/dist/cjs/kup-grid.cjs.entry.js +82 -81
  28. package/dist/cjs/kup-iframe.cjs.entry.js +80 -79
  29. package/dist/cjs/kup-image-list.cjs.entry.js +224 -223
  30. package/dist/cjs/kup-lazy.cjs.entry.js +162 -161
  31. package/dist/cjs/kup-magic-box.cjs.entry.js +270 -269
  32. package/dist/cjs/{kup-manager-cb73c128.js → kup-manager-c63f4fb9.js} +5772 -6517
  33. package/dist/cjs/kup-nav-bar.cjs.entry.js +110 -109
  34. package/dist/cjs/kup-numeric-picker.cjs.entry.js +352 -351
  35. package/dist/cjs/kup-photo-frame.cjs.entry.js +126 -125
  36. package/dist/cjs/kup-planner-declarations-d3dec885.js +93 -0
  37. package/dist/cjs/kup-planner-renderer-helper-c2394940.js +410 -0
  38. package/dist/cjs/kup-planner-renderer.cjs.entry.js +278 -0
  39. package/dist/cjs/kup-planner-time-formatter-a74e70f0.js +93 -0
  40. package/dist/cjs/kup-planner.cjs.entry.js +718 -13111
  41. package/dist/cjs/kup-probe.cjs.entry.js +228 -227
  42. package/dist/cjs/kup-qlik.cjs.entry.js +126 -125
  43. package/dist/cjs/kup-snackbar.cjs.entry.js +102 -101
  44. package/dist/cjs/loader.cjs.js +2 -2
  45. package/dist/collection/assets/card-list.js +12 -9
  46. package/dist/collection/assets/index.js +16 -0
  47. package/dist/collection/assets/planner-example-1.js +6337 -0
  48. package/dist/collection/assets/planner-example-2.js +5650 -0
  49. package/dist/collection/assets/planner-example-3.js +6548 -0
  50. package/dist/collection/assets/planner-example-4.js +28473 -0
  51. package/dist/collection/assets/planner.js +3255 -4900
  52. package/dist/collection/collection-manifest.json +17 -2
  53. package/dist/collection/components/kup-accordion/kup-accordion-declarations.js +3 -3
  54. package/dist/collection/components/kup-accordion/kup-accordion.js +423 -423
  55. package/dist/collection/components/kup-autocomplete/kup-autocomplete-declarations.js +14 -14
  56. package/dist/collection/components/kup-autocomplete/kup-autocomplete.js +882 -882
  57. package/dist/collection/components/kup-badge/kup-badge-declarations.js +3 -3
  58. package/dist/collection/components/kup-badge/kup-badge.js +262 -262
  59. package/dist/collection/components/kup-box/kup-box-declarations.js +26 -26
  60. package/dist/collection/components/kup-box/kup-box-state.js +13 -13
  61. package/dist/collection/components/kup-box/kup-box.js +2068 -2068
  62. package/dist/collection/components/kup-button/kup-button-declarations.js +11 -11
  63. package/dist/collection/components/kup-button/kup-button.js +560 -560
  64. package/dist/collection/components/kup-button-list/kup-button-list-declarations.js +6 -6
  65. package/dist/collection/components/kup-button-list/kup-button-list.e2e.js +141 -141
  66. package/dist/collection/components/kup-button-list/kup-button-list.js +497 -497
  67. package/dist/collection/components/kup-calendar/kup-calendar-declarations.js +17 -17
  68. package/dist/collection/components/kup-calendar/kup-calendar.js +681 -681
  69. package/dist/collection/components/kup-card/box/kup-card-box.js +161 -161
  70. package/dist/collection/components/kup-card/built-in/kup-card-built-in.js +6 -6
  71. package/dist/collection/components/kup-card/built-in/kup-card-calendar.js +324 -324
  72. package/dist/collection/components/kup-card/built-in/kup-card-clock.js +250 -250
  73. package/dist/collection/components/kup-card/built-in/kup-card-column-drop-menu.js +141 -141
  74. package/dist/collection/components/kup-card/built-in/kup-card-message-box.js +3 -3
  75. package/dist/collection/components/kup-card/built-in/kup-card-numeric.js +98 -98
  76. package/dist/collection/components/kup-card/collapsible/kup-card-collapsible.js +44 -44
  77. package/dist/collection/components/kup-card/dialog/kup-card-dialog.js +135 -135
  78. package/dist/collection/components/kup-card/free/kup-card-free.js +6 -6
  79. package/dist/collection/components/kup-card/kup-card-declarations.js +53 -53
  80. package/dist/collection/components/kup-card/kup-card-helper.js +155 -155
  81. package/dist/collection/components/kup-card/kup-card.js +767 -767
  82. package/dist/collection/components/kup-card/scalable/kup-card-scalable.js +174 -174
  83. package/dist/collection/components/kup-card/standard/kup-card-standard.js +474 -474
  84. package/dist/collection/components/kup-card-list/kup-card-list-declarations.js +16 -6
  85. package/dist/collection/components/kup-card-list/kup-card-list.js +676 -456
  86. package/dist/collection/components/kup-cell/kup-cell-declarations.js +4 -4
  87. package/dist/collection/components/kup-cell/kup-cell.js +382 -382
  88. package/dist/collection/components/kup-chart/kup-chart-builder.js +80 -80
  89. package/dist/collection/components/kup-chart/kup-chart-declarations.js +36 -36
  90. package/dist/collection/components/kup-chart/kup-chart.js +1043 -1043
  91. package/dist/collection/components/kup-checkbox/kup-checkbox-declarations.js +6 -6
  92. package/dist/collection/components/kup-checkbox/kup-checkbox.js +417 -417
  93. package/dist/collection/components/kup-chip/kup-chip-declarations.js +5 -5
  94. package/dist/collection/components/kup-chip/kup-chip.js +538 -538
  95. package/dist/collection/components/kup-color-picker/kup-color-picker-declarations.js +5 -5
  96. package/dist/collection/components/kup-color-picker/kup-color-picker.js +511 -511
  97. package/dist/collection/components/kup-combobox/kup-combobox-declarations.js +8 -8
  98. package/dist/collection/components/kup-combobox/kup-combobox.js +796 -796
  99. package/dist/collection/components/kup-dashboard/kup-dashboard-declarations.js +3 -3
  100. package/dist/collection/components/kup-dashboard/kup-dashboard.js +562 -562
  101. package/dist/collection/components/kup-data-table/kup-data-table-declarations.js +95 -95
  102. package/dist/collection/components/kup-data-table/kup-data-table-helper.js +729 -729
  103. package/dist/collection/components/kup-data-table/kup-data-table-state.js +33 -33
  104. package/dist/collection/components/kup-data-table/kup-data-table.js +5398 -5398
  105. package/dist/collection/components/kup-date-picker/kup-date-picker-declarations.js +8 -8
  106. package/dist/collection/components/kup-date-picker/kup-date-picker.js +796 -796
  107. package/dist/collection/components/kup-dialog/kup-dialog-declarations.js +7 -7
  108. package/dist/collection/components/kup-dialog/kup-dialog.js +451 -451
  109. package/dist/collection/components/kup-drawer/kup-drawer-declarations.js +2 -2
  110. package/dist/collection/components/kup-drawer/kup-drawer.e2e.js +6 -6
  111. package/dist/collection/components/kup-drawer/kup-drawer.js +374 -374
  112. package/dist/collection/components/kup-dropdown-button/kup-dropdown-button-declarations.js +11 -11
  113. package/dist/collection/components/kup-dropdown-button/kup-dropdown-button.js +776 -776
  114. package/dist/collection/components/kup-echart/kup-echart-declarations.js +40 -40
  115. package/dist/collection/components/kup-echart/kup-echart.js +1606 -1606
  116. package/dist/collection/components/kup-family-tree/kup-family-tree-declarations.js +8 -8
  117. package/dist/collection/components/kup-family-tree/kup-family-tree.js +789 -789
  118. package/dist/collection/components/kup-form/kup-form-declarations.js +16 -16
  119. package/dist/collection/components/kup-form/kup-form.js +694 -694
  120. package/dist/collection/components/kup-gauge/kup-gauge-declarations.js +19 -19
  121. package/dist/collection/components/kup-gauge/kup-gauge.js +730 -730
  122. package/dist/collection/components/kup-grid/kup-grid-declarations.js +3 -3
  123. package/dist/collection/components/kup-grid/kup-grid.js +238 -238
  124. package/dist/collection/components/kup-iframe/kup-iframe-declarations.js +3 -3
  125. package/dist/collection/components/kup-iframe/kup-iframe.js +268 -268
  126. package/dist/collection/components/kup-image/canvas/kup-image-canvas-declarations.js +167 -167
  127. package/dist/collection/components/kup-image/canvas/kup-image-canvas-helper.js +16 -16
  128. package/dist/collection/components/kup-image/canvas/kup-image-canvas.js +221 -221
  129. package/dist/collection/components/kup-image/kup-image-declarations.js +9 -9
  130. package/dist/collection/components/kup-image/kup-image.js +471 -471
  131. package/dist/collection/components/kup-image-list/kup-image-list-declarations.js +3 -3
  132. package/dist/collection/components/kup-image-list/kup-image-list-state.js +7 -7
  133. package/dist/collection/components/kup-image-list/kup-image-list.js +502 -502
  134. package/dist/collection/components/kup-lazy/kup-lazy-declarations.js +7 -7
  135. package/dist/collection/components/kup-lazy/kup-lazy.js +417 -417
  136. package/dist/collection/components/kup-list/kup-list-declarations.js +18 -18
  137. package/dist/collection/components/kup-list/kup-list-helper.js +105 -105
  138. package/dist/collection/components/kup-list/kup-list.js +914 -914
  139. package/dist/collection/components/kup-magic-box/kup-magic-box-declarations.js +10 -10
  140. package/dist/collection/components/kup-magic-box/kup-magic-box.js +405 -405
  141. package/dist/collection/components/kup-nav-bar/kup-nav-bar-declarations.js +7 -7
  142. package/dist/collection/components/kup-nav-bar/kup-nav-bar.js +304 -304
  143. package/dist/collection/components/kup-numeric-picker/kup-numeric-picker-declarations.js +9 -9
  144. package/dist/collection/components/kup-numeric-picker/kup-numeric-picker.js +847 -847
  145. package/dist/collection/components/kup-photo-frame/kup-photo-frame-declarations.js +3 -3
  146. package/dist/collection/components/kup-photo-frame/kup-photo-frame.js +359 -359
  147. package/dist/collection/components/kup-planner/kup-planner-declarations.js +69 -66
  148. package/dist/collection/components/kup-planner/kup-planner-helper.js +39 -39
  149. package/dist/collection/components/kup-planner/kup-planner-state.js +14 -14
  150. package/dist/collection/components/kup-planner/kup-planner.css +4 -482
  151. package/dist/collection/components/kup-planner/kup-planner.js +1777 -1675
  152. package/dist/collection/components/kup-planner/utils/custom-task-list-header.js +117 -0
  153. package/dist/collection/components/kup-planner/utils/custom-task-list-header.module.css +79 -0
  154. package/dist/collection/components/kup-planner/utils/custom-task-list-table.js +280 -0
  155. package/dist/collection/components/kup-planner/utils/custom-tool-tip.js +5 -0
  156. package/dist/collection/components/kup-planner/utils/gantt-table.module.css +88 -0
  157. package/dist/collection/components/kup-planner/utils/helpers/bar.helpers.js +328 -0
  158. package/dist/collection/components/kup-planner/utils/helpers/other.helpers.js +48 -0
  159. package/dist/collection/components/kup-planner/utils/kup-gantt/kup-gantt.css +40 -0
  160. package/dist/collection/components/kup-planner/utils/kup-gantt/kup-gantt.js +2302 -0
  161. package/dist/collection/components/kup-planner/utils/kup-gantt-calendar/kup-gantt-calendar.css +31 -0
  162. package/dist/collection/components/kup-planner/utils/kup-gantt-calendar/kup-gantt-calendar.js +466 -0
  163. package/dist/collection/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.css +60 -0
  164. package/dist/collection/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.js +1186 -0
  165. package/dist/collection/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.css +36 -0
  166. package/dist/collection/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.js +177 -0
  167. package/dist/collection/components/kup-planner/utils/kup-planner-adapted-types.js +1 -0
  168. package/dist/collection/components/kup-planner/utils/kup-planner-renderer-helper.js +396 -0
  169. package/dist/collection/components/kup-planner/utils/kup-planner-renderer.js +321 -0
  170. package/dist/collection/components/kup-planner/utils/kup-planner-time-formatter.js +87 -0
  171. package/dist/collection/components/kup-planner/utils/kup-switcher/kup-switcher.css +30 -0
  172. package/dist/collection/components/kup-planner/utils/kup-switcher/kup-switcher.js +49 -0
  173. package/dist/collection/components/kup-planner/utils/kup-task-gantt/kup-task-gantt.js +215 -0
  174. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list-header.js +112 -0
  175. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list-table.js +226 -0
  176. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list.css +67 -0
  177. package/dist/collection/components/kup-planner/utils/kup-task-list/kup-task-list.js +638 -0
  178. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-standard-tooltip.js +82 -0
  179. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-tooltip.css +30 -0
  180. package/dist/collection/components/kup-planner/utils/kup-tooltip/kup-tooltip.js +362 -0
  181. package/dist/collection/components/kup-planner/utils/kup-vertical-scroll/kup-vertical-scroll.css +31 -0
  182. package/dist/collection/components/kup-planner/utils/kup-vertical-scroll/kup-vertical-scroll.js +170 -0
  183. package/dist/collection/components/kup-probe/kup-probe.js +335 -335
  184. package/dist/collection/components/kup-progress-bar/kup-progress-bar-declarations.js +7 -7
  185. package/dist/collection/components/kup-progress-bar/kup-progress-bar.js +346 -346
  186. package/dist/collection/components/kup-qlik/kup-qlik.js +311 -311
  187. package/dist/collection/components/kup-radio/kup-radio-declarations.js +5 -5
  188. package/dist/collection/components/kup-radio/kup-radio.js +392 -392
  189. package/dist/collection/components/kup-rating/kup-rating-declarations.js +4 -4
  190. package/dist/collection/components/kup-rating/kup-rating.js +296 -296
  191. package/dist/collection/components/kup-snackbar/kup-snackbar-declarations.js +5 -5
  192. package/dist/collection/components/kup-snackbar/kup-snackbar.js +380 -380
  193. package/dist/collection/components/kup-spinner/kup-spinner-declarations.js +8 -8
  194. package/dist/collection/components/kup-spinner/kup-spinner.js +449 -449
  195. package/dist/collection/components/kup-state/mock-store.js +10 -10
  196. package/dist/collection/components/kup-switch/kup-switch-declarations.js +5 -5
  197. package/dist/collection/components/kup-switch/kup-switch.js +387 -387
  198. package/dist/collection/components/kup-tab-bar/kup-tab-bar-declarations.js +3 -3
  199. package/dist/collection/components/kup-tab-bar/kup-tab-bar.js +423 -423
  200. package/dist/collection/components/kup-text-field/kup-text-field-declarations.js +30 -30
  201. package/dist/collection/components/kup-text-field/kup-text-field.js +1220 -1220
  202. package/dist/collection/components/kup-time-picker/kup-time-picker-declarations.js +7 -7
  203. package/dist/collection/components/kup-time-picker/kup-time-picker.js +914 -914
  204. package/dist/collection/components/kup-tree/kup-tree-declarations.js +28 -28
  205. package/dist/collection/components/kup-tree/kup-tree-faker.js +233 -233
  206. package/dist/collection/components/kup-tree/kup-tree-state.js +13 -13
  207. package/dist/collection/components/kup-tree/kup-tree.js +2424 -2424
  208. package/dist/collection/f-components/f-button/f-button-declarations.js +5 -5
  209. package/dist/collection/f-components/f-button/f-button.js +76 -76
  210. package/dist/collection/f-components/f-cell/f-cell-declarations.js +125 -125
  211. package/dist/collection/f-components/f-cell/f-cell.js +407 -407
  212. package/dist/collection/f-components/f-checkbox/f-checkbox.js +10 -10
  213. package/dist/collection/f-components/f-chip/f-chip-declarations.js +4 -4
  214. package/dist/collection/f-components/f-chip/f-chip.js +82 -82
  215. package/dist/collection/f-components/f-image/f-image-declarations.js +1 -1
  216. package/dist/collection/f-components/f-image/f-image.js +79 -79
  217. package/dist/collection/f-components/f-paginator/f-paginator-declarations.js +2 -2
  218. package/dist/collection/f-components/f-paginator/f-paginator-utils.js +21 -21
  219. package/dist/collection/f-components/f-paginator/f-paginator.js +65 -65
  220. package/dist/collection/f-components/f-progress-bar/f-progress-bar.js +70 -70
  221. package/dist/collection/f-components/f-radio/f-radio.js +21 -21
  222. package/dist/collection/f-components/f-rating/f-rating.js +17 -17
  223. package/dist/collection/f-components/f-switch/f-switch.js +6 -6
  224. package/dist/collection/f-components/f-text-field/f-text-field-mdc.js +19 -19
  225. package/dist/collection/f-components/f-text-field/f-text-field.js +165 -165
  226. package/dist/collection/index.js +5 -0
  227. package/dist/collection/managers/kup-data/kup-data-cell-helper.js +47 -47
  228. package/dist/collection/managers/kup-data/kup-data-column-helper.js +220 -220
  229. package/dist/collection/managers/kup-data/kup-data-declarations.js +4 -4
  230. package/dist/collection/managers/kup-data/kup-data-node-helper.js +107 -107
  231. package/dist/collection/managers/kup-data/kup-data-row-helper.js +11 -11
  232. package/dist/collection/managers/kup-data/kup-data.js +468 -468
  233. package/dist/collection/managers/kup-dates/kup-dates-declarations.js +19 -19
  234. package/dist/collection/managers/kup-dates/kup-dates.js +637 -605
  235. package/dist/collection/managers/kup-debug/kup-debug-declarations.js +8 -8
  236. package/dist/collection/managers/kup-debug/kup-debug.js +626 -626
  237. package/dist/collection/managers/kup-dynamic-position/kup-dynamic-position-declarations.js +9 -9
  238. package/dist/collection/managers/kup-dynamic-position/kup-dynamic-position.js +232 -232
  239. package/dist/collection/managers/kup-interact/kup-interact-declarations.js +11 -11
  240. package/dist/collection/managers/kup-interact/kup-interact.js +374 -374
  241. package/dist/collection/managers/kup-language/kup-language-declarations.js +127 -127
  242. package/dist/collection/managers/kup-language/kup-language.js +132 -132
  243. package/dist/collection/managers/kup-manager/kup-manager.js +257 -257
  244. package/dist/collection/managers/kup-math/kup-math-declarations.js +7 -7
  245. package/dist/collection/managers/kup-math/kup-math-helper.js +19 -19
  246. package/dist/collection/managers/kup-math/kup-math.js +374 -374
  247. package/dist/collection/managers/kup-objects/kup-objects.js +379 -379
  248. package/dist/collection/managers/kup-scroll-on-hover/kup-scroll-on-hover-declarations.js +4 -4
  249. package/dist/collection/managers/kup-scroll-on-hover/kup-scroll-on-hover.js +301 -301
  250. package/dist/collection/managers/kup-search/kup-search.js +65 -65
  251. package/dist/collection/managers/kup-theme/kup-theme-declarations.js +134 -134
  252. package/dist/collection/managers/kup-theme/kup-theme.js +696 -696
  253. package/dist/collection/managers/kup-toolbar/kup-toolbar-declarations.js +3 -3
  254. package/dist/collection/managers/kup-toolbar/kup-toolbar.js +93 -93
  255. package/dist/collection/managers/kup-tooltip/kup-tooltip.js +198 -198
  256. package/dist/collection/types/GenericTypes.js +47 -47
  257. package/dist/collection/utils/cell-utils.js +115 -115
  258. package/dist/collection/utils/filters/filters-column-menu.js +339 -339
  259. package/dist/collection/utils/filters/filters-declarations.js +4 -4
  260. package/dist/collection/utils/filters/filters-rows.js +215 -215
  261. package/dist/collection/utils/filters/filters-tree-items.js +96 -96
  262. package/dist/collection/utils/filters/filters.js +257 -257
  263. package/dist/collection/utils/kup-column-menu/kup-column-menu-declarations.js +14 -14
  264. package/dist/collection/utils/kup-column-menu/kup-column-menu.js +710 -710
  265. package/dist/collection/utils/utils.js +37 -42
  266. package/dist/components/custom-task-list-header.js +44 -0
  267. package/dist/components/custom-task-list-table.js +121 -0
  268. package/dist/components/index.js +8 -0
  269. package/dist/components/kup-accordion.d.ts +2 -2
  270. package/dist/components/kup-accordion.js +333 -332
  271. package/dist/components/kup-autocomplete.d.ts +2 -2
  272. package/dist/components/kup-autocomplete.js +1 -1
  273. package/dist/components/kup-autocomplete2.js +26006 -44605
  274. package/dist/components/kup-badge.d.ts +2 -2
  275. package/dist/components/kup-badge.js +1 -1
  276. package/dist/components/kup-box.d.ts +2 -2
  277. package/dist/components/kup-box2.js +1417 -1416
  278. package/dist/components/kup-button-list.d.ts +2 -2
  279. package/dist/components/kup-button-list.js +1 -1
  280. package/dist/components/kup-button.d.ts +2 -2
  281. package/dist/components/kup-button.js +1 -1
  282. package/dist/components/kup-calendar.d.ts +2 -2
  283. package/dist/components/kup-calendar.js +5547 -5512
  284. package/dist/components/kup-card-list.d.ts +2 -2
  285. package/dist/components/kup-card-list.js +402 -371
  286. package/dist/components/kup-card.d.ts +2 -2
  287. package/dist/components/kup-card.js +1 -1
  288. package/dist/components/kup-cell.d.ts +2 -2
  289. package/dist/components/kup-cell.js +304 -303
  290. package/dist/components/kup-chart.d.ts +2 -2
  291. package/dist/components/kup-chart.js +1 -1
  292. package/dist/components/kup-checkbox.d.ts +2 -2
  293. package/dist/components/kup-checkbox.js +1 -1
  294. package/dist/components/kup-chip.d.ts +2 -2
  295. package/dist/components/kup-chip.js +1 -1
  296. package/dist/components/kup-color-picker.d.ts +2 -2
  297. package/dist/components/kup-color-picker.js +1 -1
  298. package/dist/components/kup-combobox.d.ts +2 -2
  299. package/dist/components/kup-combobox.js +1 -1
  300. package/dist/components/kup-custom-task-list-header.d.ts +11 -0
  301. package/dist/components/kup-custom-task-list-header.js +6 -0
  302. package/dist/components/kup-custom-task-list-table.d.ts +11 -0
  303. package/dist/components/kup-custom-task-list-table.js +6 -0
  304. package/dist/components/kup-dashboard.d.ts +2 -2
  305. package/dist/components/kup-dashboard.js +521 -520
  306. package/dist/components/kup-data-table.d.ts +2 -2
  307. package/dist/components/kup-data-table.js +1 -1
  308. package/dist/components/kup-date-picker.d.ts +2 -2
  309. package/dist/components/kup-date-picker.js +1 -1
  310. package/dist/components/kup-dates.js +777 -0
  311. package/dist/components/kup-dialog.d.ts +2 -2
  312. package/dist/components/kup-dialog.js +1 -1
  313. package/dist/components/kup-drawer.d.ts +2 -2
  314. package/dist/components/kup-drawer.js +280 -279
  315. package/dist/components/kup-dropdown-button.d.ts +2 -2
  316. package/dist/components/kup-dropdown-button.js +1 -1
  317. package/dist/components/kup-echart.d.ts +2 -2
  318. package/dist/components/kup-echart2.js +1359 -1358
  319. package/dist/components/kup-family-tree.d.ts +2 -2
  320. package/dist/components/kup-family-tree.js +565 -564
  321. package/dist/components/kup-form.d.ts +2 -2
  322. package/dist/components/kup-form.js +1 -1
  323. package/dist/components/kup-gantt-calendar.d.ts +11 -0
  324. package/dist/components/kup-gantt-calendar.js +6 -0
  325. package/dist/components/kup-gantt-calendar2.js +323 -0
  326. package/dist/components/kup-gantt.d.ts +11 -0
  327. package/dist/components/kup-gantt.js +6 -0
  328. package/dist/components/kup-gantt2.js +822 -0
  329. package/dist/components/kup-gauge.d.ts +2 -2
  330. package/dist/components/kup-gauge.js +1 -1
  331. package/dist/components/kup-grid-renderer.d.ts +11 -0
  332. package/dist/components/kup-grid-renderer.js +6 -0
  333. package/dist/components/kup-grid-renderer2.js +1416 -0
  334. package/dist/components/kup-grid.d.ts +2 -2
  335. package/dist/components/kup-grid2.js +237 -236
  336. package/dist/components/kup-horizontal-scroll.d.ts +11 -0
  337. package/dist/components/kup-horizontal-scroll.js +6 -0
  338. package/dist/components/kup-horizontal-scroll2.js +77 -0
  339. package/dist/components/kup-iframe.d.ts +2 -2
  340. package/dist/components/kup-iframe.js +235 -234
  341. package/dist/components/kup-image-list.d.ts +2 -2
  342. package/dist/components/kup-image-list.js +379 -378
  343. package/dist/components/kup-image.d.ts +2 -2
  344. package/dist/components/kup-image.js +1 -1
  345. package/dist/components/kup-lazy.d.ts +2 -2
  346. package/dist/components/kup-lazy.js +321 -320
  347. package/dist/components/kup-list.d.ts +2 -2
  348. package/dist/components/kup-list.js +1 -1
  349. package/dist/components/kup-magic-box.d.ts +2 -2
  350. package/dist/components/kup-magic-box.js +433 -432
  351. package/dist/components/kup-manager.js +17861 -0
  352. package/dist/components/kup-nav-bar.d.ts +2 -2
  353. package/dist/components/kup-nav-bar.js +265 -264
  354. package/dist/components/kup-numeric-picker.d.ts +2 -2
  355. package/dist/components/kup-numeric-picker.js +515 -514
  356. package/dist/components/kup-photo-frame.d.ts +2 -2
  357. package/dist/components/kup-photo-frame.js +283 -282
  358. package/dist/components/kup-planner-renderer-helper.js +399 -0
  359. package/dist/components/kup-planner-renderer.d.ts +11 -0
  360. package/dist/components/kup-planner-renderer.js +6 -0
  361. package/dist/components/kup-planner-renderer2.js +390 -0
  362. package/dist/components/kup-planner.d.ts +2 -2
  363. package/dist/components/kup-planner.js +1005 -13306
  364. package/dist/components/kup-probe.d.ts +2 -2
  365. package/dist/components/kup-probe.js +381 -380
  366. package/dist/components/kup-progress-bar.d.ts +2 -2
  367. package/dist/components/kup-progress-bar.js +1 -1
  368. package/dist/components/kup-qlik.d.ts +2 -2
  369. package/dist/components/kup-qlik.js +284 -283
  370. package/dist/components/kup-radio.d.ts +2 -2
  371. package/dist/components/kup-radio.js +1 -1
  372. package/dist/components/kup-rating.d.ts +2 -2
  373. package/dist/components/kup-rating.js +1 -1
  374. package/dist/components/kup-snackbar.d.ts +2 -2
  375. package/dist/components/kup-snackbar.js +259 -258
  376. package/dist/components/kup-spinner.d.ts +2 -2
  377. package/dist/components/kup-spinner.js +1 -1
  378. package/dist/components/kup-standard-tooltip.d.ts +11 -0
  379. package/dist/components/kup-standard-tooltip.js +6 -0
  380. package/dist/components/kup-standard-tooltip2.js +37 -0
  381. package/dist/components/kup-switch.d.ts +2 -2
  382. package/dist/components/kup-switch.js +1 -1
  383. package/dist/components/kup-switcher.d.ts +11 -0
  384. package/dist/components/kup-switcher.js +6 -0
  385. package/dist/components/kup-switcher2.js +36 -0
  386. package/dist/components/kup-tab-bar.d.ts +2 -2
  387. package/dist/components/kup-tab-bar.js +1 -1
  388. package/dist/components/kup-task-gantt.d.ts +11 -0
  389. package/dist/components/kup-task-gantt.js +6 -0
  390. package/dist/components/kup-task-gantt2.js +91 -0
  391. package/dist/components/kup-task-list-header.d.ts +11 -0
  392. package/dist/components/kup-task-list-header.js +6 -0
  393. package/dist/components/kup-task-list-header2.js +55 -0
  394. package/dist/components/kup-task-list-table.d.ts +11 -0
  395. package/dist/components/kup-task-list-table.js +6 -0
  396. package/dist/components/kup-task-list-table2.js +79 -0
  397. package/dist/components/kup-task-list.d.ts +11 -0
  398. package/dist/components/kup-task-list.js +6 -0
  399. package/dist/components/kup-task-list2.js +260 -0
  400. package/dist/components/kup-text-field.d.ts +2 -2
  401. package/dist/components/kup-text-field.js +1 -1
  402. package/dist/components/kup-time-picker.d.ts +2 -2
  403. package/dist/components/kup-time-picker.js +1 -1
  404. package/dist/components/kup-tooltip.d.ts +11 -0
  405. package/dist/components/kup-tooltip.js +6 -0
  406. package/dist/components/kup-tooltip2.js +127 -0
  407. package/dist/components/kup-tree.d.ts +2 -2
  408. package/dist/components/kup-tree.js +1 -1
  409. package/dist/components/kup-vertical-scroll.d.ts +11 -0
  410. package/dist/components/kup-vertical-scroll.js +6 -0
  411. package/dist/components/kup-vertical-scroll2.js +77 -0
  412. package/dist/esm/bar.helpers-0898efb9.js +363 -0
  413. package/dist/esm/f-button-5ccc2e50.js +103 -0
  414. package/dist/esm/{f-button-declarations-8a009df1.js → f-button-declarations-9bdc6f26.js} +5 -5
  415. package/dist/esm/f-cell-6f4290b2.js +664 -0
  416. package/dist/esm/f-checkbox-43481de2.js +27 -0
  417. package/dist/esm/f-chip-465aa432.js +131 -0
  418. package/dist/esm/f-image-c5063342.js +113 -0
  419. package/dist/esm/f-paginator-utils-6903534b.js +1564 -0
  420. package/dist/esm/f-text-field-28b2b26d.js +214 -0
  421. package/dist/esm/{f-text-field-mdc-1143cf21.js → f-text-field-mdc-c88bf688.js} +19 -19
  422. package/dist/esm/{index-c161a33e.js → index-59f83f91.js} +134 -28
  423. package/dist/esm/index.js +9 -0
  424. package/dist/esm/ketchup.js +4 -4
  425. package/dist/esm/kup-accordion.entry.js +182 -181
  426. package/dist/esm/kup-autocomplete_27.entry.js +14564 -14563
  427. package/dist/esm/kup-box.entry.js +1231 -1230
  428. package/dist/esm/kup-calendar.entry.js +5413 -5379
  429. package/dist/esm/kup-card-list.entry.js +233 -212
  430. package/dist/esm/kup-cell.entry.js +153 -152
  431. package/dist/esm/kup-custom-task-list-header_4.entry.js +1310 -0
  432. package/dist/esm/kup-dashboard.entry.js +369 -368
  433. package/dist/esm/kup-dates-15f89ea2.js +777 -0
  434. package/dist/esm/kup-drawer.entry.js +122 -121
  435. package/dist/esm/kup-echart.entry.js +1192 -1191
  436. package/dist/esm/kup-family-tree.entry.js +400 -399
  437. package/dist/esm/kup-gantt_10.entry.js +1063 -0
  438. package/dist/esm/kup-grid.entry.js +82 -81
  439. package/dist/esm/kup-iframe.entry.js +80 -79
  440. package/dist/esm/kup-image-list.entry.js +224 -223
  441. package/dist/esm/kup-lazy.entry.js +162 -161
  442. package/dist/esm/kup-magic-box.entry.js +270 -269
  443. package/dist/esm/{kup-manager-94b3d177.js → kup-manager-bfea4e6f.js} +5750 -6493
  444. package/dist/esm/kup-nav-bar.entry.js +110 -109
  445. package/dist/esm/kup-numeric-picker.entry.js +352 -351
  446. package/dist/esm/kup-photo-frame.entry.js +126 -125
  447. package/dist/esm/kup-planner-declarations-b9345758.js +88 -0
  448. package/dist/esm/kup-planner-renderer-helper-2143d119.js +399 -0
  449. package/dist/esm/kup-planner-renderer.entry.js +274 -0
  450. package/dist/esm/kup-planner-time-formatter-a68e05ba.js +89 -0
  451. package/dist/esm/kup-planner.entry.js +718 -13111
  452. package/dist/esm/kup-probe.entry.js +228 -227
  453. package/dist/esm/kup-qlik.entry.js +126 -125
  454. package/dist/esm/kup-snackbar.entry.js +102 -101
  455. package/dist/esm/loader.js +3 -3
  456. package/dist/ketchup/index.esm.js +1 -0
  457. package/dist/ketchup/ketchup.esm.js +1 -1
  458. package/dist/ketchup/p-01a0b54c.js +1 -0
  459. package/dist/ketchup/{p-679ccbf8.js → p-097500fe.js} +1 -1
  460. package/dist/ketchup/p-0cb5e9ae.entry.js +1 -0
  461. package/dist/ketchup/p-0f91d4de.entry.js +1 -0
  462. package/dist/ketchup/p-1872c92e.entry.js +1 -0
  463. package/dist/ketchup/p-20aa95ae.entry.js +1 -0
  464. package/dist/ketchup/{p-b0678a34.js → p-21c640a5.js} +1 -1
  465. package/dist/ketchup/p-4bc3b3a6.js +29 -0
  466. package/dist/ketchup/{p-4d7c02f4.js → p-4c1ec006.js} +1 -1
  467. package/dist/ketchup/p-51f9b230.entry.js +1 -0
  468. package/dist/ketchup/p-612b46da.entry.js +1 -0
  469. package/dist/ketchup/p-69287f4a.entry.js +1 -0
  470. package/dist/ketchup/p-71acfd3c.entry.js +1 -0
  471. package/dist/ketchup/p-7a72c4fa.entry.js +1 -0
  472. package/dist/ketchup/p-7c5a1357.entry.js +1 -0
  473. package/dist/ketchup/p-829d7060.entry.js +1 -0
  474. package/dist/ketchup/p-84be8f0b.js +1 -0
  475. package/dist/ketchup/p-85279516.entry.js +9 -0
  476. package/dist/ketchup/p-8591ac0b.entry.js +1 -0
  477. package/dist/ketchup/p-8c3ad5ef.entry.js +1 -0
  478. package/dist/ketchup/p-8e180c01.entry.js +1 -0
  479. package/dist/ketchup/p-8e3b6de8.js +1 -0
  480. package/dist/ketchup/p-8ecdd076.entry.js +1 -0
  481. package/dist/ketchup/p-903d1b10.entry.js +1 -0
  482. package/dist/ketchup/p-924b841b.js +1 -0
  483. package/dist/ketchup/p-95272714.entry.js +1 -0
  484. package/dist/ketchup/p-b07ffd18.entry.js +16 -0
  485. package/dist/ketchup/p-c23731ca.js +1 -0
  486. package/dist/ketchup/p-cd9a4274.js +2 -0
  487. package/dist/ketchup/{p-bb80719e.js → p-ce9ef2d5.js} +1 -1
  488. package/dist/ketchup/{p-a2b75445.entry.js → p-d7b8295a.entry.js} +1 -1
  489. package/dist/ketchup/p-db93bc06.entry.js +1 -0
  490. package/dist/ketchup/p-e46470a6.entry.js +1 -0
  491. package/dist/ketchup/p-e841c2ae.js +1 -0
  492. package/dist/ketchup/p-eae42bff.entry.js +1 -0
  493. package/dist/ketchup/p-ee6305f5.js +1 -0
  494. package/dist/ketchup/p-f1efab38.entry.js +1 -0
  495. package/dist/ketchup/p-f2df4ce9.entry.js +1 -0
  496. package/dist/ketchup/{p-ba003975.js → p-f51dbf68.js} +1 -1
  497. package/dist/types/components/kup-accordion/kup-accordion-declarations.d.ts +5 -5
  498. package/dist/types/components/kup-accordion/kup-accordion.d.ts +75 -75
  499. package/dist/types/components/kup-autocomplete/kup-autocomplete-declarations.d.ts +18 -18
  500. package/dist/types/components/kup-autocomplete/kup-autocomplete.d.ts +113 -113
  501. package/dist/types/components/kup-badge/kup-badge-declarations.d.ts +3 -3
  502. package/dist/types/components/kup-badge/kup-badge.d.ts +47 -47
  503. package/dist/types/components/kup-box/kup-box-declarations.d.ts +70 -70
  504. package/dist/types/components/kup-box/kup-box-state.d.ts +7 -7
  505. package/dist/types/components/kup-box/kup-box.d.ts +262 -262
  506. package/dist/types/components/kup-button/kup-button-declarations.d.ts +12 -12
  507. package/dist/types/components/kup-button/kup-button.d.ts +105 -105
  508. package/dist/types/components/kup-button-list/kup-button-list-declarations.d.ts +11 -11
  509. package/dist/types/components/kup-button-list/kup-button-list.d.ts +75 -75
  510. package/dist/types/components/kup-calendar/kup-calendar-declarations.d.ts +32 -32
  511. package/dist/types/components/kup-calendar/kup-calendar.d.ts +100 -100
  512. package/dist/types/components/kup-card/kup-card-declarations.d.ts +123 -123
  513. package/dist/types/components/kup-card/kup-card.d.ts +154 -154
  514. package/dist/types/components/kup-card-list/kup-card-list-declarations.d.ts +20 -20
  515. package/dist/types/components/kup-card-list/kup-card-list.d.ts +107 -57
  516. package/dist/types/components/kup-cell/kup-cell-declarations.d.ts +4 -4
  517. package/dist/types/components/kup-cell/kup-cell.d.ts +62 -62
  518. package/dist/types/components/kup-chart/kup-chart-builder.d.ts +2 -2
  519. package/dist/types/components/kup-chart/kup-chart-declarations.d.ts +99 -99
  520. package/dist/types/components/kup-chart/kup-chart.d.ts +164 -164
  521. package/dist/types/components/kup-checkbox/kup-checkbox-declarations.d.ts +8 -8
  522. package/dist/types/components/kup-checkbox/kup-checkbox.d.ts +80 -80
  523. package/dist/types/components/kup-chip/kup-chip-declarations.d.ts +8 -8
  524. package/dist/types/components/kup-chip/kup-chip.d.ts +82 -82
  525. package/dist/types/components/kup-color-picker/kup-color-picker-declarations.d.ts +6 -6
  526. package/dist/types/components/kup-color-picker/kup-color-picker.d.ts +83 -83
  527. package/dist/types/components/kup-combobox/kup-combobox-declarations.d.ts +12 -12
  528. package/dist/types/components/kup-combobox/kup-combobox.d.ts +89 -89
  529. package/dist/types/components/kup-dashboard/kup-dashboard-declarations.d.ts +28 -28
  530. package/dist/types/components/kup-dashboard/kup-dashboard.d.ts +74 -74
  531. package/dist/types/components/kup-data-table/kup-data-table-declarations.d.ts +156 -156
  532. package/dist/types/components/kup-data-table/kup-data-table-helper.d.ts +2 -2
  533. package/dist/types/components/kup-data-table/kup-data-table-state.d.ts +31 -31
  534. package/dist/types/components/kup-data-table/kup-data-table.d.ts +441 -441
  535. package/dist/types/components/kup-date-picker/kup-date-picker-declarations.d.ts +9 -9
  536. package/dist/types/components/kup-date-picker/kup-date-picker.d.ts +105 -105
  537. package/dist/types/components/kup-dialog/kup-dialog-declarations.d.ts +12 -12
  538. package/dist/types/components/kup-dialog/kup-dialog.d.ts +72 -72
  539. package/dist/types/components/kup-drawer/kup-drawer-declarations.d.ts +2 -2
  540. package/dist/types/components/kup-drawer/kup-drawer.d.ts +70 -70
  541. package/dist/types/components/kup-dropdown-button/kup-dropdown-button-declarations.d.ts +12 -12
  542. package/dist/types/components/kup-dropdown-button/kup-dropdown-button.d.ts +154 -154
  543. package/dist/types/components/kup-echart/kup-echart-declarations.d.ts +48 -48
  544. package/dist/types/components/kup-echart/kup-echart.d.ts +103 -103
  545. package/dist/types/components/kup-family-tree/kup-family-tree-declarations.d.ts +20 -20
  546. package/dist/types/components/kup-family-tree/kup-family-tree.d.ts +82 -82
  547. package/dist/types/components/kup-form/kup-form-declarations.d.ts +40 -40
  548. package/dist/types/components/kup-form/kup-form.d.ts +78 -78
  549. package/dist/types/components/kup-gauge/kup-gauge-declarations.d.ts +19 -19
  550. package/dist/types/components/kup-gauge/kup-gauge.d.ts +144 -144
  551. package/dist/types/components/kup-grid/kup-grid-declarations.d.ts +3 -3
  552. package/dist/types/components/kup-grid/kup-grid.d.ts +45 -45
  553. package/dist/types/components/kup-iframe/kup-iframe-declarations.d.ts +3 -3
  554. package/dist/types/components/kup-iframe/kup-iframe.d.ts +45 -45
  555. package/dist/types/components/kup-image/canvas/kup-image-canvas-declarations.d.ts +19 -19
  556. package/dist/types/components/kup-image/canvas/kup-image-canvas.d.ts +25 -25
  557. package/dist/types/components/kup-image/kup-image-declarations.d.ts +10 -10
  558. package/dist/types/components/kup-image/kup-image.d.ts +96 -96
  559. package/dist/types/components/kup-image-list/kup-image-list-declarations.d.ts +4 -4
  560. package/dist/types/components/kup-image-list/kup-image-list-state.d.ts +3 -3
  561. package/dist/types/components/kup-image-list/kup-image-list.d.ts +64 -64
  562. package/dist/types/components/kup-lazy/kup-lazy-declarations.d.ts +7 -7
  563. package/dist/types/components/kup-lazy/kup-lazy.d.ts +73 -73
  564. package/dist/types/components/kup-list/kup-list-declarations.d.ts +23 -23
  565. package/dist/types/components/kup-list/kup-list.d.ts +122 -122
  566. package/dist/types/components/kup-magic-box/kup-magic-box-declarations.d.ts +10 -10
  567. package/dist/types/components/kup-magic-box/kup-magic-box.d.ts +60 -60
  568. package/dist/types/components/kup-nav-bar/kup-nav-bar-declarations.d.ts +7 -7
  569. package/dist/types/components/kup-nav-bar/kup-nav-bar.d.ts +60 -60
  570. package/dist/types/components/kup-numeric-picker/kup-numeric-picker-declarations.d.ts +10 -10
  571. package/dist/types/components/kup-numeric-picker/kup-numeric-picker.d.ts +116 -116
  572. package/dist/types/components/kup-photo-frame/kup-photo-frame-declarations.d.ts +3 -3
  573. package/dist/types/components/kup-photo-frame/kup-photo-frame.d.ts +57 -57
  574. package/dist/types/components/kup-planner/kup-planner-declarations.d.ts +592 -96
  575. package/dist/types/components/kup-planner/kup-planner-state.d.ts +9 -9
  576. package/dist/types/components/kup-planner/kup-planner.d.ts +269 -259
  577. package/dist/types/components/kup-planner/utils/custom-task-list-header.d.ts +8 -0
  578. package/dist/types/components/kup-planner/utils/custom-task-list-table.d.ts +14 -0
  579. package/dist/types/components/kup-planner/utils/custom-tool-tip.d.ts +2 -0
  580. package/dist/types/components/kup-planner/utils/helpers/bar.helpers.d.ts +33 -0
  581. package/dist/types/components/kup-planner/utils/helpers/other.helpers.d.ts +6 -0
  582. package/dist/types/components/kup-planner/utils/kup-gantt/kup-gantt.d.ts +127 -0
  583. package/dist/types/components/kup-planner/utils/kup-gantt-calendar/kup-gantt-calendar.d.ts +27 -0
  584. package/dist/types/components/kup-planner/utils/kup-grid-renderer/kup-grid-renderer.d.ts +59 -0
  585. package/dist/types/components/kup-planner/utils/kup-horizontal-scroll/kup-horizontal-scroll.d.ts +17 -0
  586. package/dist/types/components/kup-planner/utils/kup-planner-adapted-types.d.ts +28 -0
  587. package/dist/types/components/kup-planner/utils/kup-planner-renderer-helper.d.ts +36 -0
  588. package/dist/types/components/kup-planner/utils/kup-planner-renderer.d.ts +33 -0
  589. package/dist/types/components/kup-planner/utils/kup-planner-time-formatter.d.ts +20 -0
  590. package/dist/types/components/kup-planner/utils/kup-switcher/kup-switcher.d.ts +5 -0
  591. package/dist/types/components/kup-planner/utils/kup-task-gantt/kup-task-gantt.d.ts +20 -0
  592. package/dist/types/components/kup-planner/utils/kup-task-list/kup-task-list-header.d.ts +7 -0
  593. package/dist/types/components/kup-planner/utils/kup-task-list/kup-task-list-table.d.ts +16 -0
  594. package/dist/types/components/kup-planner/utils/kup-task-list/kup-task-list.d.ts +40 -0
  595. package/dist/types/components/kup-planner/utils/kup-tooltip/kup-standard-tooltip.d.ts +7 -0
  596. package/dist/types/components/kup-planner/utils/kup-tooltip/kup-tooltip.d.ts +26 -0
  597. package/dist/types/components/kup-planner/utils/kup-vertical-scroll/kup-vertical-scroll.d.ts +16 -0
  598. package/dist/types/components/kup-probe/kup-probe.d.ts +70 -70
  599. package/dist/types/components/kup-progress-bar/kup-progress-bar-declarations.d.ts +7 -7
  600. package/dist/types/components/kup-progress-bar/kup-progress-bar.d.ts +65 -65
  601. package/dist/types/components/kup-qlik/kup-qlik-declarations.d.ts +13 -13
  602. package/dist/types/components/kup-qlik/kup-qlik.d.ts +96 -96
  603. package/dist/types/components/kup-radio/kup-radio-declarations.d.ts +6 -6
  604. package/dist/types/components/kup-radio/kup-radio.d.ts +75 -75
  605. package/dist/types/components/kup-rating/kup-rating-declarations.d.ts +5 -5
  606. package/dist/types/components/kup-rating/kup-rating.d.ts +52 -52
  607. package/dist/types/components/kup-snackbar/kup-snackbar-declarations.d.ts +5 -5
  608. package/dist/types/components/kup-snackbar/kup-snackbar.d.ts +78 -78
  609. package/dist/types/components/kup-spinner/kup-spinner-declarations.d.ts +8 -8
  610. package/dist/types/components/kup-spinner/kup-spinner.d.ts +75 -75
  611. package/dist/types/components/kup-state/kup-state.d.ts +1 -1
  612. package/dist/types/components/kup-state/kup-store.d.ts +2 -2
  613. package/dist/types/components/kup-state/mock-store.d.ts +5 -5
  614. package/dist/types/components/kup-switch/kup-switch-declarations.d.ts +6 -6
  615. package/dist/types/components/kup-switch/kup-switch.d.ts +75 -75
  616. package/dist/types/components/kup-tab-bar/kup-tab-bar-declarations.d.ts +6 -6
  617. package/dist/types/components/kup-tab-bar/kup-tab-bar.d.ts +72 -72
  618. package/dist/types/components/kup-text-field/kup-text-field-declarations.d.ts +31 -31
  619. package/dist/types/components/kup-text-field/kup-text-field.d.ts +258 -258
  620. package/dist/types/components/kup-time-picker/kup-time-picker-declarations.d.ts +8 -8
  621. package/dist/types/components/kup-time-picker/kup-time-picker.d.ts +120 -120
  622. package/dist/types/components/kup-tree/kup-tree-declarations.d.ts +56 -56
  623. package/dist/types/components/kup-tree/kup-tree-faker.d.ts +15 -15
  624. package/dist/types/components/kup-tree/kup-tree-state.d.ts +9 -9
  625. package/dist/types/components/kup-tree/kup-tree.d.ts +351 -351
  626. package/dist/types/components.d.ts +1305 -4
  627. package/dist/types/f-components/f-button/f-button-declarations.d.ts +24 -24
  628. package/dist/types/f-components/f-cell/f-cell-declarations.d.ts +117 -117
  629. package/dist/types/f-components/f-checkbox/f-checkbox-declarations.d.ts +9 -9
  630. package/dist/types/f-components/f-chip/f-chip-declarations.d.ts +12 -12
  631. package/dist/types/f-components/f-image/f-image-declarations.d.ts +14 -14
  632. package/dist/types/f-components/f-paginator/f-paginator-declarations.d.ts +12 -12
  633. package/dist/types/f-components/f-progress-bar/f-progress-bar-declarations.d.ts +10 -10
  634. package/dist/types/f-components/f-radio/f-radio-declarations.d.ts +11 -11
  635. package/dist/types/f-components/f-rating/f-rating-declarations.d.ts +4 -4
  636. package/dist/types/f-components/f-switch/f-switch-declarations.d.ts +8 -8
  637. package/dist/types/f-components/f-text-field/f-text-field-declarations.d.ts +38 -38
  638. package/dist/types/index.d.ts +4 -0
  639. package/dist/types/managers/kup-data/kup-data-cell-helper.d.ts +3 -3
  640. package/dist/types/managers/kup-data/kup-data-declarations.d.ts +88 -88
  641. package/dist/types/managers/kup-data/kup-data.d.ts +76 -76
  642. package/dist/types/managers/kup-dates/kup-dates-declarations.d.ts +19 -19
  643. package/dist/types/managers/kup-dates/kup-dates.d.ts +217 -192
  644. package/dist/types/managers/kup-debug/kup-debug-declarations.d.ts +18 -18
  645. package/dist/types/managers/kup-debug/kup-debug.d.ts +87 -87
  646. package/dist/types/managers/kup-dynamic-position/kup-dynamic-position-declarations.d.ts +19 -19
  647. package/dist/types/managers/kup-dynamic-position/kup-dynamic-position.d.ts +53 -53
  648. package/dist/types/managers/kup-interact/kup-interact-declarations.d.ts +37 -37
  649. package/dist/types/managers/kup-interact/kup-interact.d.ts +95 -95
  650. package/dist/types/managers/kup-language/kup-language-declarations.d.ts +133 -133
  651. package/dist/types/managers/kup-language/kup-language.d.ts +44 -44
  652. package/dist/types/managers/kup-manager/kup-manager-declarations.d.ts +63 -63
  653. package/dist/types/managers/kup-manager/kup-manager.d.ts +67 -67
  654. package/dist/types/managers/kup-math/kup-math-declarations.d.ts +16 -16
  655. package/dist/types/managers/kup-math/kup-math-helper.d.ts +1 -1
  656. package/dist/types/managers/kup-math/kup-math.d.ts +132 -132
  657. package/dist/types/managers/kup-objects/kup-objects-declarations.d.ts +4 -4
  658. package/dist/types/managers/kup-objects/kup-objects.d.ts +201 -201
  659. package/dist/types/managers/kup-scroll-on-hover/kup-scroll-on-hover-declarations.d.ts +16 -16
  660. package/dist/types/managers/kup-scroll-on-hover/kup-scroll-on-hover.d.ts +55 -55
  661. package/dist/types/managers/kup-search/kup-search-declarations.d.ts +1 -1
  662. package/dist/types/managers/kup-search/kup-search.d.ts +13 -13
  663. package/dist/types/managers/kup-theme/kup-theme-declarations.d.ts +99 -99
  664. package/dist/types/managers/kup-theme/kup-theme.d.ts +119 -119
  665. package/dist/types/managers/kup-toolbar/kup-toolbar-declarations.d.ts +3 -3
  666. package/dist/types/managers/kup-toolbar/kup-toolbar.d.ts +32 -32
  667. package/dist/types/managers/kup-tooltip/kup-tooltip-declarations.d.ts +4 -4
  668. package/dist/types/managers/kup-tooltip/kup-tooltip.d.ts +43 -43
  669. package/dist/types/stencil-public-runtime.d.ts +29 -0
  670. package/dist/types/types/GenericTypes.d.ts +74 -74
  671. package/dist/types/utils/filters/filters-column-menu.d.ts +86 -86
  672. package/dist/types/utils/filters/filters-declarations.d.ts +13 -13
  673. package/dist/types/utils/filters/filters-rows.d.ts +17 -17
  674. package/dist/types/utils/filters/filters-tree-items.d.ts +7 -7
  675. package/dist/types/utils/filters/filters.d.ts +62 -62
  676. package/dist/types/utils/kup-column-menu/kup-column-menu-declarations.d.ts +14 -14
  677. package/dist/types/utils/kup-column-menu/kup-column-menu.d.ts +126 -126
  678. package/dist/types/utils/utils.d.ts +0 -2
  679. package/package.json +12 -16
  680. package/dist/cjs/f-button-733664a5.js +0 -105
  681. package/dist/cjs/f-cell-f37757a6.js +0 -670
  682. package/dist/cjs/f-checkbox-556771e8.js +0 -29
  683. package/dist/cjs/f-chip-3349d130.js +0 -133
  684. package/dist/cjs/f-image-b7a5816b.js +0 -115
  685. package/dist/cjs/f-paginator-utils-1fe1df76.js +0 -1576
  686. package/dist/cjs/f-text-field-8557fc3f.js +0 -216
  687. package/dist/esm/f-button-f247ce10.js +0 -103
  688. package/dist/esm/f-cell-ba94f1b3.js +0 -664
  689. package/dist/esm/f-checkbox-cbf7b3de.js +0 -27
  690. package/dist/esm/f-chip-104c4a64.js +0 -131
  691. package/dist/esm/f-image-d2a9603c.js +0 -113
  692. package/dist/esm/f-paginator-utils-743522fa.js +0 -1563
  693. package/dist/esm/f-text-field-4d91ccfc.js +0 -214
  694. package/dist/ketchup/p-12e47371.js +0 -1
  695. package/dist/ketchup/p-15548f51.entry.js +0 -1
  696. package/dist/ketchup/p-20e8ab84.js +0 -2
  697. package/dist/ketchup/p-21f1b22a.entry.js +0 -1
  698. package/dist/ketchup/p-2c47b88f.js +0 -30
  699. package/dist/ketchup/p-304f296e.entry.js +0 -1
  700. package/dist/ketchup/p-48f8b0d5.entry.js +0 -9
  701. package/dist/ketchup/p-4ca502ce.entry.js +0 -1
  702. package/dist/ketchup/p-5abbf31b.entry.js +0 -1
  703. package/dist/ketchup/p-5c9b10a5.entry.js +0 -1
  704. package/dist/ketchup/p-5cb2dbf3.entry.js +0 -1
  705. package/dist/ketchup/p-6a0ac578.entry.js +0 -1
  706. package/dist/ketchup/p-87e13738.entry.js +0 -1
  707. package/dist/ketchup/p-8e5db599.entry.js +0 -1
  708. package/dist/ketchup/p-a14ede8c.entry.js +0 -1
  709. package/dist/ketchup/p-a2007880.js +0 -1
  710. package/dist/ketchup/p-bf41d71f.entry.js +0 -1
  711. package/dist/ketchup/p-c32e8755.entry.js +0 -1
  712. package/dist/ketchup/p-c4b1bde1.entry.js +0 -1
  713. package/dist/ketchup/p-c6b58be6.entry.js +0 -1
  714. package/dist/ketchup/p-d56763cf.entry.js +0 -1
  715. package/dist/ketchup/p-e7f57bee.entry.js +0 -1
  716. package/dist/ketchup/p-eb12225c.entry.js +0 -1
  717. package/dist/ketchup/p-f22abf4e.entry.js +0 -1
  718. package/dist/ketchup/p-f82db512.entry.js +0 -25
  719. /package/dist/ketchup/{p-cd2af1a6.js → p-b3577066.js} +0 -0
  720. /package/dist/ketchup/{p-b00f3575.js → p-c634eb82.js} +0 -0
@@ -22,706 +22,706 @@ const dom = document.documentElement;
22
22
  * @module KupTheme
23
23
  */
24
24
  export class KupTheme {
25
- /**
26
- * Initializes KupTheme.
27
- */
28
- constructor(list, name) {
29
- this.cssVars = {};
30
- this.list = list ? list : themesJson['default'];
31
- this.managedComponents = new Set();
32
- this.name = name ? name : 'ketchup';
33
- this.styleTag = dom
34
- .querySelector('head')
35
- .appendChild(document.createElement('style'));
36
- }
37
- /**
38
- * Sets the CSS variables of the theme.
39
- */
40
- imports() {
41
- const imports = this.list[this.name].imports
42
- ? this.list[this.name].imports
43
- : [];
44
- let css = '';
45
- for (let index = 0; index < imports.length; index++) {
46
- css += '@import ' + imports[index] + ';';
47
- }
48
- return css;
49
- }
50
- /**
51
- * Sets the CSS variables of the theme.
52
- */
53
- cssVariables() {
54
- const variables = this.list[this.name].cssVariables;
55
- let css = '';
56
- for (let key in variables) {
57
- if (variables.hasOwnProperty(key)) {
58
- const val = variables[key];
59
- this.cssVars[key] = val;
60
- css += key + ': ' + val + ';';
61
- if (key.indexOf('color') > -1) {
62
- const computedColor = this.colorCheck(val);
63
- const rgbKey = key + '-rgb';
64
- const hKey = key + '-h';
65
- const sKey = key + '-s';
66
- const lKey = key + '-l';
67
- const rgbVal = computedColor.rgbValues;
68
- const hue = computedColor.hue;
69
- const saturation = computedColor.saturation;
70
- const lightness = computedColor.lightness;
71
- this.cssVars[rgbKey] = rgbVal;
72
- this.cssVars[hKey] = hue;
73
- this.cssVars[lKey] = lightness;
74
- this.cssVars[sKey] = saturation;
75
- css += rgbKey + ': ' + rgbVal + ';';
76
- css += hKey + ': ' + hue + ';';
77
- css += lKey + ': ' + lightness + ';';
78
- css += sKey + ': ' + saturation + ';';
79
- }
80
- }
81
- }
82
- return css;
83
- }
84
- /**
85
- * Sets the icon variables of the theme.
86
- */
87
- icons() {
88
- const icons = this.list[this.name].icons;
89
- let css = '';
90
- for (var key in icons) {
91
- if (icons.hasOwnProperty(key)) {
92
- const val = `url('${getAssetPath(`./assets/svg/${icons[key]}.svg`)}') no-repeat center`;
93
- this.cssVars[key] = val;
94
- css += key + ': ' + val + ';';
95
- }
96
- }
97
- return css;
98
- }
99
- /**
100
- * Refreshed managed components to apply theme customStyles.
101
- */
102
- customStyle() {
103
- this.managedComponents.forEach(function (comp) {
104
- if (comp.isConnected) {
105
- comp.refresh();
106
- }
107
- });
108
- }
109
- /**
110
- * Sets the theme using this.name or the function's argument.
111
- * @param {string} name - When present, this theme will be set.
112
- */
113
- set(name, list) {
114
- if (name) {
115
- this.name = name;
116
- }
117
- if (list) {
118
- this.list = list;
119
- }
120
- dom.ketchup.debug.logMessage('theme manager', 'Setting theme to: ' + this.name + '.');
121
- if (!this.list[this.name]) {
122
- dom.ketchup.debug.logMessage('theme manager', 'Invalid theme name, falling back to default ("ketchup").');
123
- this.name = 'ketchup';
124
- }
125
- this.cssVars = {};
126
- this.styleTag.innerText =
127
- this.imports() +
128
- ' :root[kup-theme="' +
129
- this.name +
130
- '"]{' +
131
- this.cssVariables() +
132
- this.icons() +
133
- '}' +
134
- applicationCSS['default'];
135
- this.customStyle();
136
- document.documentElement.setAttribute('kup-theme', this.name);
137
- document.dispatchEvent(new CustomEvent('kup-theme-change'));
138
- }
139
- /**
140
- * Gets the name of available themes.
141
- * @returns {Array<string>} Array of themes' names.
142
- */
143
- getThemes() {
144
- const themes = [];
145
- for (var key in this.list) {
146
- if (this.list.hasOwnProperty(key)) {
147
- themes.push(key);
148
- }
149
- }
150
- return themes;
151
- }
152
- /**
153
- * This method will just refresh the current theme.
154
- */
155
- refresh() {
156
- try {
157
- this.styleTag.innerText =
158
- ':root[kup-theme="' +
159
- this.name +
160
- '"]{' +
161
- this.cssVariables() +
162
- this.icons() +
163
- '}';
164
- this.customStyle();
165
- dom.ketchup.debug.logMessage('kup-theme', 'Theme ' + dom.getAttribute('kup-theme') + ' refreshed.');
166
- document.dispatchEvent(new CustomEvent('kup-theme-refresh'));
167
- }
168
- catch (error) {
169
- dom.ketchup.debug.logMessage('kup-theme', 'Theme not refreshed.', KupDebugCategory.WARNING);
170
- }
171
- }
172
- /**
173
- * Registers a KupComponent in KupTheme, in order to be properly refreshed whenever the theme changes.
174
- * @param {any} comp - The component calling this function.
175
- */
176
- register(comp) {
177
- this.managedComponents.add(comp.rootElement ? comp.rootElement : comp);
178
- }
179
- /**
180
- * Unregisters a KupComponent, so it won't be refreshed when the theme changes.
181
- * @param {any} comp - The component calling this function.
182
- */
183
- unregister(comp) {
184
- if (this.managedComponents) {
185
- this.managedComponents.delete(comp.rootElement ? comp.rootElement : comp);
186
- }
187
- }
188
- /**
189
- * Combines global (style every component should have), theme's and component's customStyles, returning the result.
190
- * @param comp - The component calling this function.
191
- * @returns {string} Combined customStyle.
192
- */
193
- setKupStyle(comp) {
194
- const styles = this.list[this.name].customStyles;
195
- const tagName = comp.tagName;
196
- let completeStyle = componentCSS['default'];
197
- if (styles && styles[masterCustomStyle]) {
198
- completeStyle += styles[masterCustomStyle];
199
- }
200
- if (styles && styles[comp.tagName]) {
201
- completeStyle += ' ' + styles[comp.tagName];
202
- }
203
- if (comp.customStyle) {
204
- completeStyle += ' ' + comp.customStyle;
205
- }
206
- if (tagName) {
207
- if (fButtonUsers.includes(tagName)) {
208
- completeStyle += fButtonCSS['default'];
209
- }
210
- if (fCellUsers.includes(tagName)) {
211
- completeStyle += fCellCSS['default'];
212
- }
213
- if (fCheckboxUsers.includes(tagName)) {
214
- completeStyle += fCheckboxCSS['default'];
215
- }
216
- if (fChipUsers.includes(tagName)) {
217
- completeStyle += fChipCSS['default'];
218
- }
219
- if (fImageUsers.includes(tagName)) {
220
- completeStyle += fImageCSS['default'];
221
- }
222
- if (fPaginatorUsers.includes(tagName)) {
223
- completeStyle += fPaginatorCSS['default'];
224
- }
225
- if (fProgressBarUsers.includes(tagName)) {
226
- completeStyle += fProgressBarCSS['default'];
227
- }
228
- if (fRadioUsers.includes(tagName)) {
229
- completeStyle += fRadioCSS['default'];
230
- }
231
- if (fRatingUsers.includes(tagName)) {
232
- completeStyle += fRatingCSS['default'];
233
- }
234
- if (fSwitchUsers.includes(tagName)) {
235
- completeStyle += fSwitchCSS['default'];
236
- }
237
- if (fTextFieldUsers.includes(tagName)) {
238
- completeStyle += fTextFieldCSS['default'];
239
- }
240
- if (rippleUsers.includes(tagName)) {
241
- completeStyle += rippleCSS['default'];
242
- }
243
- }
244
- return completeStyle ? completeStyle : null;
245
- }
246
- /**
247
- * Checks whether on a given color the text should be white or black.
248
- * @param {string} color - Color used to check the contrast.
249
- * @returns {string} "white" or "black".
250
- */
251
- colorContrast(color) {
252
- color = this.colorCheck(color).rgbColor;
253
- const colorValues = color.replace(/[^\d,.]/g, '').split(',');
254
- const brightness = Math.round((parseInt(colorValues[0]) * 299 +
255
- parseInt(colorValues[1]) * 587 +
256
- parseInt(colorValues[2]) * 114) /
257
- 1000);
258
- return brightness > 125 ? 'black' : 'white';
259
- }
260
- /**
261
- * Generates a random HEX color.
262
- * @param {number} brightness - Brightness of the color generated (0-255).
263
- * @returns {string} Random HEX color.
264
- */
265
- randomColor(brightness) {
266
- function randomChannel(brightness) {
267
- var r = 255 - brightness;
268
- var n = 0 | (Math.random() * r + brightness);
269
- var s = n.toString(16);
270
- return s.length == 1 ? '0' + s : s;
271
- }
272
- return ('#' +
273
- randomChannel(brightness) +
274
- randomChannel(brightness) +
275
- randomChannel(brightness));
276
- }
277
- /**
278
- * Sets a random theme between those specified in this.list (excludes "print" and "test") and different from the currently used one.
279
- */
280
- randomTheme() {
281
- let themes = [];
282
- for (var key in this.list) {
283
- if (this.list.hasOwnProperty(key)) {
284
- if (key !== 'test' && key !== 'print') {
285
- themes.push(key);
286
- }
287
- }
288
- }
289
- if (themes.length > 0) {
290
- let index = null;
291
- while (index === null || themes[index] === this.name) {
292
- index = Math.floor(Math.random() * Math.floor(themes.length));
293
- }
294
- this.set(themes[index]);
295
- }
296
- else {
297
- dom.ketchup.debug.logMessage('kup-theme', "Couldn't set a random theme: no themes available!", KupDebugCategory.WARNING);
298
- }
299
- }
300
- /**
301
- * Returns HEX, RGB, HSL, HSL values and RGB values from a given color.
302
- * @param {string} color - Input color.
303
- * @returns {KupThemeColor} Object of color values: hexColor ("#ffffff"), hslColor ("hsl(255,100%,100%)"), hslValues ("255,100%,100%"), rgbColor ("rgb(255,255,255)") and rgbValues ("255,255,255").
304
- */
305
- colorCheck(color) {
306
- //Testing whether the color is transparent, if it is a fall back value will be returned matching the background-color
307
- if (color === 'transparent') {
308
- color = this.cssVars['--kup-background-color'];
309
- dom.ketchup.debug.logMessage('theme manager', 'Received TRANSPARENT color, converted to ' +
310
- color +
311
- ' (theme background).');
312
- }
313
- const altRgbRe = /R(\d{1,3})G(\d{1,3})B(\d{1,3})/;
314
- const altRgb = altRgbRe.test(color);
315
- if (altRgb) {
316
- const parts = color.match(altRgbRe);
317
- color = 'rgb(' + parts[1] + ',' + parts[2] + ',' + parts[3] + ')';
25
+ /**
26
+ * Initializes KupTheme.
27
+ */
28
+ constructor(list, name) {
29
+ this.cssVars = {};
30
+ this.list = list ? list : themesJson['default'];
31
+ this.managedComponents = new Set();
32
+ this.name = name ? name : 'ketchup';
33
+ this.styleTag = dom
34
+ .querySelector('head')
35
+ .appendChild(document.createElement('style'));
36
+ }
37
+ /**
38
+ * Sets the CSS variables of the theme.
39
+ */
40
+ imports() {
41
+ const imports = this.list[this.name].imports
42
+ ? this.list[this.name].imports
43
+ : [];
44
+ let css = '';
45
+ for (let index = 0; index < imports.length; index++) {
46
+ css += '@import ' + imports[index] + ';';
47
+ }
48
+ return css;
49
+ }
50
+ /**
51
+ * Sets the CSS variables of the theme.
52
+ */
53
+ cssVariables() {
54
+ const variables = this.list[this.name].cssVariables;
55
+ let css = '';
56
+ for (let key in variables) {
57
+ if (variables.hasOwnProperty(key)) {
58
+ const val = variables[key];
59
+ this.cssVars[key] = val;
60
+ css += key + ': ' + val + ';';
61
+ if (key.indexOf('color') > -1) {
62
+ const computedColor = this.colorCheck(val);
63
+ const rgbKey = key + '-rgb';
64
+ const hKey = key + '-h';
65
+ const sKey = key + '-s';
66
+ const lKey = key + '-l';
67
+ const rgbVal = computedColor.rgbValues;
68
+ const hue = computedColor.hue;
69
+ const saturation = computedColor.saturation;
70
+ const lightness = computedColor.lightness;
71
+ this.cssVars[rgbKey] = rgbVal;
72
+ this.cssVars[hKey] = hue;
73
+ this.cssVars[lKey] = lightness;
74
+ this.cssVars[sKey] = saturation;
75
+ css += rgbKey + ': ' + rgbVal + ';';
76
+ css += hKey + ': ' + hue + ';';
77
+ css += lKey + ': ' + lightness + ';';
78
+ css += sKey + ': ' + saturation + ';';
79
+ }
80
+ }
81
+ }
82
+ return css;
83
+ }
84
+ /**
85
+ * Sets the icon variables of the theme.
86
+ */
87
+ icons() {
88
+ const icons = this.list[this.name].icons;
89
+ let css = '';
90
+ for (var key in icons) {
91
+ if (icons.hasOwnProperty(key)) {
92
+ const val = `url('${getAssetPath(`./assets/svg/${icons[key]}.svg`)}') no-repeat center`;
93
+ this.cssVars[key] = val;
94
+ css += key + ': ' + val + ';';
95
+ }
96
+ }
97
+ return css;
98
+ }
99
+ /**
100
+ * Refreshed managed components to apply theme customStyles.
101
+ */
102
+ customStyle() {
103
+ this.managedComponents.forEach(function (comp) {
104
+ if (comp.isConnected) {
105
+ comp.refresh();
106
+ }
107
+ });
108
+ }
109
+ /**
110
+ * Sets the theme using this.name or the function's argument.
111
+ * @param {string} name - When present, this theme will be set.
112
+ */
113
+ set(name, list) {
114
+ if (name) {
115
+ this.name = name;
116
+ }
117
+ if (list) {
118
+ this.list = list;
119
+ }
120
+ dom.ketchup.debug.logMessage('theme manager', 'Setting theme to: ' + this.name + '.');
121
+ if (!this.list[this.name]) {
122
+ dom.ketchup.debug.logMessage('theme manager', 'Invalid theme name, falling back to default ("ketchup").');
123
+ this.name = 'ketchup';
124
+ }
125
+ this.cssVars = {};
126
+ this.styleTag.innerText =
127
+ this.imports() +
128
+ ' :root[kup-theme="' +
129
+ this.name +
130
+ '"]{' +
131
+ this.cssVariables() +
132
+ this.icons() +
133
+ '}' +
134
+ applicationCSS['default'];
135
+ this.customStyle();
136
+ document.documentElement.setAttribute('kup-theme', this.name);
137
+ document.dispatchEvent(new CustomEvent('kup-theme-change'));
138
+ }
139
+ /**
140
+ * Gets the name of available themes.
141
+ * @returns {Array<string>} Array of themes' names.
142
+ */
143
+ getThemes() {
144
+ const themes = [];
145
+ for (var key in this.list) {
146
+ if (this.list.hasOwnProperty(key)) {
147
+ themes.push(key);
148
+ }
149
+ }
150
+ return themes;
151
+ }
152
+ /**
153
+ * This method will just refresh the current theme.
154
+ */
155
+ refresh() {
156
+ try {
157
+ this.styleTag.innerText =
158
+ ':root[kup-theme="' +
159
+ this.name +
160
+ '"]{' +
161
+ this.cssVariables() +
162
+ this.icons() +
163
+ '}';
164
+ this.customStyle();
165
+ dom.ketchup.debug.logMessage('kup-theme', 'Theme ' + dom.getAttribute('kup-theme') + ' refreshed.');
166
+ document.dispatchEvent(new CustomEvent('kup-theme-refresh'));
167
+ }
168
+ catch (error) {
169
+ dom.ketchup.debug.logMessage('kup-theme', 'Theme not refreshed.', KupDebugCategory.WARNING);
170
+ }
318
171
  }
319
- let isHex = color.substring(0, 1) === '#';
320
- const isHsl = color.substring(0, 3).toLowerCase() === 'hsl';
321
- const isRgb = color.substring(0, 3).toLowerCase() === 'rgb';
322
- //If true, supposedly it's a code word
323
- if (!isHex && !isHsl && !isRgb) {
324
- const oldColor = color;
325
- color = this.codeToHex(color);
326
- isHex = color.substring(0, 1) === '#' ? true : false;
327
- dom.ketchup.debug.logMessage('theme manager', 'Received CODE NAME color ' +
328
- oldColor +
329
- ', converted to ' +
330
- color +
331
- '.');
172
+ /**
173
+ * Registers a KupComponent in KupTheme, in order to be properly refreshed whenever the theme changes.
174
+ * @param {any} comp - The component calling this function.
175
+ */
176
+ register(comp) {
177
+ this.managedComponents.add(comp.rootElement ? comp.rootElement : comp);
178
+ }
179
+ /**
180
+ * Unregisters a KupComponent, so it won't be refreshed when the theme changes.
181
+ * @param {any} comp - The component calling this function.
182
+ */
183
+ unregister(comp) {
184
+ if (this.managedComponents) {
185
+ this.managedComponents.delete(comp.rootElement ? comp.rootElement : comp);
186
+ }
332
187
  }
333
- //Testing whether the color is "hex" value or "hsl"
334
- let hexColor = null;
335
- let rgbColor = null;
336
- let hslColor = null;
337
- let hslValues = null;
338
- let hue = null;
339
- let lightness = null;
340
- let saturation = null;
341
- if (isHex || isHsl) {
342
- const oldColor = color;
343
- let rgbColorObj = null;
344
- if (isHex) {
345
- hexColor = color;
346
- rgbColorObj = this.hexToRgb(color);
347
- }
348
- else {
349
- hslColor = color;
350
- const regexp = /hsl\(\s*(\d+)\s*,\s*(\d+(?:\.\d+)?%)\s*,\s*(\d+(?:\.\d+)?%)\)/g;
351
- const hsl = regexp.exec(color).slice(1);
352
- hslValues = hsl[0] + ',' + hsl[1] + ',' + hsl[2];
353
- hue = hsl[0];
354
- saturation = hsl[2];
355
- lightness = hsl[1];
356
- const h = parseInt(hue.replace('deg', ''));
357
- const s = parseInt(saturation.replace('%', '')) / 100;
358
- const l = parseInt(lightness.replace('%', '')) / 100;
359
- rgbColorObj = this.hslToRgb(h, s, l);
360
- }
361
- try {
362
- color =
363
- 'rgb(' +
364
- rgbColorObj.r +
365
- ',' +
366
- rgbColorObj.g +
367
- ',' +
368
- rgbColorObj.b +
369
- ')';
370
- if (isHex) {
371
- const hsl = this.rgbToHsl(rgbColorObj.r, rgbColorObj.g, rgbColorObj.b);
372
- hue = hsl.h.toString();
373
- saturation = hsl.s.toString() + '%';
374
- lightness = hsl.l.toString() + '%';
375
- hslValues = hue + ',' + saturation + ',' + lightness;
376
- hslColor = 'hsl(' + hslValues + ')';
188
+ /**
189
+ * Combines global (style every component should have), theme's and component's customStyles, returning the result.
190
+ * @param comp - The component calling this function.
191
+ * @returns {string} Combined customStyle.
192
+ */
193
+ setKupStyle(comp) {
194
+ const styles = this.list[this.name].customStyles;
195
+ const tagName = comp.tagName;
196
+ let completeStyle = componentCSS['default'];
197
+ if (styles && styles[masterCustomStyle]) {
198
+ completeStyle += styles[masterCustomStyle];
199
+ }
200
+ if (styles && styles[comp.tagName]) {
201
+ completeStyle += ' ' + styles[comp.tagName];
202
+ }
203
+ if (comp.customStyle) {
204
+ completeStyle += ' ' + comp.customStyle;
205
+ }
206
+ if (tagName) {
207
+ if (fButtonUsers.includes(tagName)) {
208
+ completeStyle += fButtonCSS['default'];
209
+ }
210
+ if (fCellUsers.includes(tagName)) {
211
+ completeStyle += fCellCSS['default'];
212
+ }
213
+ if (fCheckboxUsers.includes(tagName)) {
214
+ completeStyle += fCheckboxCSS['default'];
215
+ }
216
+ if (fChipUsers.includes(tagName)) {
217
+ completeStyle += fChipCSS['default'];
218
+ }
219
+ if (fImageUsers.includes(tagName)) {
220
+ completeStyle += fImageCSS['default'];
221
+ }
222
+ if (fPaginatorUsers.includes(tagName)) {
223
+ completeStyle += fPaginatorCSS['default'];
224
+ }
225
+ if (fProgressBarUsers.includes(tagName)) {
226
+ completeStyle += fProgressBarCSS['default'];
227
+ }
228
+ if (fRadioUsers.includes(tagName)) {
229
+ completeStyle += fRadioCSS['default'];
230
+ }
231
+ if (fRatingUsers.includes(tagName)) {
232
+ completeStyle += fRatingCSS['default'];
233
+ }
234
+ if (fSwitchUsers.includes(tagName)) {
235
+ completeStyle += fSwitchCSS['default'];
236
+ }
237
+ if (fTextFieldUsers.includes(tagName)) {
238
+ completeStyle += fTextFieldCSS['default'];
239
+ }
240
+ if (rippleUsers.includes(tagName)) {
241
+ completeStyle += rippleCSS['default'];
242
+ }
243
+ }
244
+ return completeStyle ? completeStyle : null;
245
+ }
246
+ /**
247
+ * Checks whether on a given color the text should be white or black.
248
+ * @param {string} color - Color used to check the contrast.
249
+ * @returns {string} "white" or "black".
250
+ */
251
+ colorContrast(color) {
252
+ color = this.colorCheck(color).rgbColor;
253
+ const colorValues = color.replace(/[^\d,.]/g, '').split(',');
254
+ const brightness = Math.round((parseInt(colorValues[0]) * 299 +
255
+ parseInt(colorValues[1]) * 587 +
256
+ parseInt(colorValues[2]) * 114) /
257
+ 1000);
258
+ return brightness > 125 ? 'black' : 'white';
259
+ }
260
+ /**
261
+ * Generates a random HEX color.
262
+ * @param {number} brightness - Brightness of the color generated (0-255).
263
+ * @returns {string} Random HEX color.
264
+ */
265
+ randomColor(brightness) {
266
+ function randomChannel(brightness) {
267
+ var r = 255 - brightness;
268
+ var n = 0 | (Math.random() * r + brightness);
269
+ var s = n.toString(16);
270
+ return s.length == 1 ? '0' + s : s;
271
+ }
272
+ return ('#' +
273
+ randomChannel(brightness) +
274
+ randomChannel(brightness) +
275
+ randomChannel(brightness));
276
+ }
277
+ /**
278
+ * Sets a random theme between those specified in this.list (excludes "print" and "test") and different from the currently used one.
279
+ */
280
+ randomTheme() {
281
+ let themes = [];
282
+ for (var key in this.list) {
283
+ if (this.list.hasOwnProperty(key)) {
284
+ if (key !== 'test' && key !== 'print') {
285
+ themes.push(key);
286
+ }
287
+ }
288
+ }
289
+ if (themes.length > 0) {
290
+ let index = null;
291
+ while (index === null || themes[index] === this.name) {
292
+ index = Math.floor(Math.random() * Math.floor(themes.length));
293
+ }
294
+ this.set(themes[index]);
377
295
  }
378
296
  else {
379
- hexColor = this.rgbToHex(rgbColorObj.r, rgbColorObj.g, rgbColorObj.b);
380
- }
381
- dom.ketchup.debug.logMessage('theme-manager', 'Received HEX color ' +
382
- oldColor +
383
- ', converted to ' +
384
- color +
385
- '.');
386
- }
387
- catch (error) {
388
- dom.ketchup.debug.logMessage('theme-manager', 'Invalid color: ' + color + '.');
389
- }
390
- }
391
- let rgbValues = null;
392
- const values = color.match(/rgba?\((\d{1,3}), ?(\d{1,3}), ?(\d{1,3})\)?(?:, ?(\d(?:\.\d?))\))?/);
393
- try {
394
- rgbValues = values[1] + ',' + values[2] + ',' + values[3];
395
- rgbColor = color;
396
- }
397
- catch (error) {
398
- dom.ketchup.debug.logMessage('theme-manager', 'Color not converted to rgb values: ' + color + '.');
399
- }
400
- if (!hexColor) {
401
- try {
402
- hexColor = this.rgbToHex(parseInt(values[1]), parseInt(values[2]), parseInt(values[3]));
403
- }
404
- catch (error) {
405
- dom.ketchup.debug.logMessage('theme-manager', 'Color not converted to hex value: ' + color + '.');
406
- }
407
- }
408
- if (!hslColor || !hslValues) {
409
- try {
410
- const hsl = this.rgbToHsl(parseInt(values[1]), parseInt(values[2]), parseInt(values[3]));
411
- hue = hsl.h.toString();
412
- saturation = hsl.s.toString() + '%';
413
- lightness = hsl.l.toString() + '%';
414
- hslValues = hsl.h + ',' + hsl.s + '%,' + hsl.l + '%';
415
- hslColor = 'hsl(' + hsl.h + ',' + hsl.s + '%,' + hsl.l + '%)';
416
- }
417
- catch (error) {
418
- dom.ketchup.debug.logMessage('theme-manager', 'Color not converted to hex value: ' + color + '.');
419
- }
420
- }
421
- return {
422
- hexColor: hexColor,
423
- hslColor: hslColor,
424
- hslValues: hslValues,
425
- hue: hue,
426
- lightness: lightness,
427
- saturation: saturation,
428
- rgbColor: rgbColor,
429
- rgbValues: rgbValues,
430
- };
431
- }
432
- /**
433
- * Converts an HEX color to its RGB values.
434
- * @param {string} hex - Hex code.
435
- * @returns {KupThemeRGBValues} Object containing RGB values.
436
- */
437
- hexToRgb(hex) {
438
- var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
439
- return result
440
- ? {
441
- r: parseInt(result[1], 16),
442
- g: parseInt(result[2], 16),
443
- b: parseInt(result[3], 16),
444
- }
445
- : null;
446
- }
447
- /**
448
- * Converts an HSL color to its RGB values.
449
- * @param {number} h - Hue (range [0, 360)).
450
- * @param {number} s - Saturation (range [0, 1)).
451
- * @param {number} l - Lightness (range [0, 1)).
452
- * @returns {Array} RGB values.
453
- */
454
- hslToRgb(h, s, l) {
455
- if (h == undefined) {
456
- return { r: 0, g: 0, b: 0 };
457
- }
458
- let huePrime = h / 60;
459
- const chroma = (1 - Math.abs(2 * l - 1)) * s;
460
- const secondComponent = chroma * (1 - Math.abs((huePrime % 2) - 1));
461
- huePrime = Math.floor(huePrime);
462
- let red, green, blue;
463
- if (huePrime === 0) {
464
- red = chroma;
465
- green = secondComponent;
466
- blue = 0;
467
- }
468
- else if (huePrime === 1) {
469
- red = secondComponent;
470
- green = chroma;
471
- blue = 0;
472
- }
473
- else if (huePrime === 2) {
474
- red = 0;
475
- green = chroma;
476
- blue = secondComponent;
477
- }
478
- else if (huePrime === 3) {
479
- red = 0;
480
- green = secondComponent;
481
- blue = chroma;
482
- }
483
- else if (huePrime === 4) {
484
- red = secondComponent;
485
- green = 0;
486
- blue = chroma;
487
- }
488
- else if (huePrime === 5) {
489
- red = chroma;
490
- green = 0;
491
- blue = secondComponent;
492
- }
493
- const lightnessAdjustment = l - chroma / 2;
494
- red += lightnessAdjustment;
495
- green += lightnessAdjustment;
496
- blue += lightnessAdjustment;
497
- return {
498
- r: Math.round(red * 255),
499
- g: Math.round(green * 255),
500
- b: Math.round(blue * 255),
501
- };
502
- }
503
- /**
504
- * Converts a color in RGB format to the corresponding HEX color.
505
- * @param {number} r - Red channel value.
506
- * @param {number} g - Green channel value.
507
- * @param {number} b - Blue channel value.
508
- * @returns {string} HEX color.
509
- */
510
- rgbToHex(r, g, b) {
511
- return ('#' + this.valueToHex(r) + this.valueToHex(g) + this.valueToHex(b));
512
- }
513
- /**
514
- * Converts a color in RGB format to the corresponding HSL color.
515
- * @param {number} r - Red channel value.
516
- * @param {number} g - Green channel value.
517
- * @param {number} b - Blue channel value.
518
- * @returns {KupThemeHSLValues} Object containing HSL values.
519
- */
520
- rgbToHsl(r, g, b) {
521
- // Make r, g, and b fractions of 1
522
- r /= 255;
523
- g /= 255;
524
- b /= 255;
525
- // Find greatest and smallest channel values
526
- const cmin = Math.min(r, g, b), cmax = Math.max(r, g, b), delta = cmax - cmin;
527
- let h = 0, s = 0, l = 0;
528
- // Calculate hue
529
- // No difference
530
- if (delta == 0)
531
- h = 0;
532
- // Red is max
533
- else if (cmax == r)
534
- h = ((g - b) / delta) % 6;
535
- // Green is max
536
- else if (cmax == g)
537
- h = (b - r) / delta + 2;
538
- // Blue is max
539
- else
540
- h = (r - g) / delta + 4;
541
- h = Math.round(h * 60);
542
- // Make negative hues positive behind 360°
543
- if (h < 0)
544
- h += 360;
545
- // Calculate lightness
546
- l = (cmax + cmin) / 2;
547
- // Calculate saturation
548
- s = delta == 0 ? 0 : delta / (1 - Math.abs(2 * l - 1));
549
- // Multiply l and s by 100
550
- s = +(s * 100).toFixed(1);
551
- l = +(l * 100).toFixed(1);
552
- return { h: h, s: s, l: l };
553
- }
554
- /**
555
- * Converts a single RGB value to the corresponding HEX value.
556
- * @param {number} c - Color value.
557
- * @returns {string} HEX value.
558
- */
559
- valueToHex(c) {
560
- const hex = c.toString(16);
561
- return hex.length == 1 ? '0' + hex : hex;
562
- }
563
- /**
564
- * Converts a color code word to the corresponding HEX value.
565
- * @param {string} color - Color code word.
566
- * @returns {string} HEX value.
567
- */
568
- codeToHex(color) {
569
- const colorCodes = {
570
- aliceblue: '#f0f8ff',
571
- antiquewhite: '#faebd7',
572
- aqua: '#00ffff',
573
- aquamarine: '#7fffd4',
574
- azure: '#f0ffff',
575
- beige: '#f5f5dc',
576
- bisque: '#ffe4c4',
577
- black: '#000000',
578
- blanchedalmond: '#ffebcd',
579
- blue: '#0000ff',
580
- blueviolet: '#8a2be2',
581
- brown: '#a52a2a',
582
- burlywood: '#deb887',
583
- cadetblue: '#5f9ea0',
584
- chartreuse: '#7fff00',
585
- chocolate: '#d2691e',
586
- coral: '#ff7f50',
587
- cornflowerblue: '#6495ed',
588
- cornsilk: '#fff8dc',
589
- crimson: '#dc143c',
590
- cyan: '#00ffff',
591
- darkblue: '#00008b',
592
- darkcyan: '#008b8b',
593
- darkgoldenrod: '#b8860b',
594
- darkgray: '#a9a9a9',
595
- darkgreen: '#006400',
596
- darkgrey: '#a9a9a9',
597
- darkkhaki: '#bdb76b',
598
- darkmagenta: '#8b008b',
599
- darkolivegreen: '#556b2f',
600
- darkorange: '#ff8c00',
601
- darkorchid: '#9932cc',
602
- darkred: '#8b0000',
603
- darksalmon: '#e9967a',
604
- darkseagreen: '#8fbc8f',
605
- darkslateblue: '#483d8b',
606
- darkslategray: '#2f4f4f',
607
- darkslategrey: '#2f4f4f',
608
- darkturquoise: '#00ced1',
609
- darkviolet: '#9400d3',
610
- deeppink: '#ff1493',
611
- deepskyblue: '#00bfff',
612
- dimgray: '#696969',
613
- dimgrey: '#696969',
614
- dodgerblue: '#1e90ff',
615
- firebrick: '#b22222',
616
- floralwhite: '#fffaf0',
617
- forestgreen: '#228b22',
618
- fuchsia: '#ff00ff',
619
- gainsboro: '#dcdcdc',
620
- ghostwhite: '#f8f8ff',
621
- goldenrod: '#daa520',
622
- gold: '#ffd700',
623
- gray: '#808080',
624
- green: '#008000',
625
- greenyellow: '#adff2f',
626
- grey: '#808080',
627
- honeydew: '#f0fff0',
628
- hotpink: '#ff69b4',
629
- indianred: '#cd5c5c',
630
- indigo: '#4b0082',
631
- ivory: '#fffff0',
632
- khaki: '#f0e68c',
633
- lavenderblush: '#fff0f5',
634
- lavender: '#e6e6fa',
635
- lawngreen: '#7cfc00',
636
- lemonchiffon: '#fffacd',
637
- lightblue: '#add8e6',
638
- lightcoral: '#f08080',
639
- lightcyan: '#e0ffff',
640
- lightgoldenrodyellow: '#fafad2',
641
- lightgray: '#d3d3d3',
642
- lightgreen: '#90ee90',
643
- lightgrey: '#d3d3d3',
644
- lightpink: '#ffb6c1',
645
- lightsalmon: '#ffa07a',
646
- lightseagreen: '#20b2aa',
647
- lightskyblue: '#87cefa',
648
- lightslategray: '#778899',
649
- lightslategrey: '#778899',
650
- lightsteelblue: '#b0c4de',
651
- lightyellow: '#ffffe0',
652
- lime: '#00ff00',
653
- limegreen: '#32cd32',
654
- linen: '#faf0e6',
655
- magenta: '#ff00ff',
656
- maroon: '#800000',
657
- mediumaquamarine: '#66cdaa',
658
- mediumblue: '#0000cd',
659
- mediumorchid: '#ba55d3',
660
- mediumpurple: '#9370db',
661
- mediumseagreen: '#3cb371',
662
- mediumslateblue: '#7b68ee',
663
- mediumspringgreen: '#00fa9a',
664
- mediumturquoise: '#48d1cc',
665
- mediumvioletred: '#c71585',
666
- midnightblue: '#191970',
667
- mintcream: '#f5fffa',
668
- mistyrose: '#ffe4e1',
669
- moccasin: '#ffe4b5',
670
- navajowhite: '#ffdead',
671
- navy: '#000080',
672
- oldlace: '#fdf5e6',
673
- olive: '#808000',
674
- olivedrab: '#6b8e23',
675
- orange: '#ffa500',
676
- orangered: '#ff4500',
677
- orchid: '#da70d6',
678
- palegoldenrod: '#eee8aa',
679
- palegreen: '#98fb98',
680
- paleturquoise: '#afeeee',
681
- palevioletred: '#db7093',
682
- papayawhip: '#ffefd5',
683
- peachpuff: '#ffdab9',
684
- peru: '#cd853f',
685
- pink: '#ffc0cb',
686
- plum: '#dda0dd',
687
- powderblue: '#b0e0e6',
688
- purple: '#800080',
689
- rebeccapurple: '#663399',
690
- red: '#ff0000',
691
- rosybrown: '#bc8f8f',
692
- royalblue: '#4169e1',
693
- saddlebrown: '#8b4513',
694
- salmon: '#fa8072',
695
- sandybrown: '#f4a460',
696
- seagreen: '#2e8b57',
697
- seashell: '#fff5ee',
698
- sienna: '#a0522d',
699
- silver: '#c0c0c0',
700
- skyblue: '#87ceeb',
701
- slateblue: '#6a5acd',
702
- slategray: '#708090',
703
- slategrey: '#708090',
704
- snow: '#fffafa',
705
- springgreen: '#00ff7f',
706
- steelblue: '#4682b4',
707
- tan: '#d2b48c',
708
- teal: '#008080',
709
- thistle: '#d8bfd8',
710
- tomato: '#ff6347',
711
- turquoise: '#40e0d0',
712
- violet: '#ee82ee',
713
- wheat: '#f5deb3',
714
- white: '#ffffff',
715
- whitesmoke: '#f5f5f5',
716
- yellow: '#ffff00',
717
- yellowgreen: '#9acd32',
718
- };
719
- if (colorCodes[color.toLowerCase()]) {
720
- return colorCodes[color.toLowerCase()];
297
+ dom.ketchup.debug.logMessage('kup-theme', "Couldn't set a random theme: no themes available!", KupDebugCategory.WARNING);
298
+ }
721
299
  }
722
- else {
723
- dom.ketchup.debug.logMessage('theme manager', 'Could not decode color ' + color + '!');
724
- return color;
300
+ /**
301
+ * Returns HEX, RGB, HSL, HSL values and RGB values from a given color.
302
+ * @param {string} color - Input color.
303
+ * @returns {KupThemeColor} Object of color values: hexColor ("#ffffff"), hslColor ("hsl(255,100%,100%)"), hslValues ("255,100%,100%"), rgbColor ("rgb(255,255,255)") and rgbValues ("255,255,255").
304
+ */
305
+ colorCheck(color) {
306
+ //Testing whether the color is transparent, if it is a fall back value will be returned matching the background-color
307
+ if (color === 'transparent') {
308
+ color = this.cssVars['--kup-background-color'];
309
+ dom.ketchup.debug.logMessage('theme manager', 'Received TRANSPARENT color, converted to ' +
310
+ color +
311
+ ' (theme background).');
312
+ }
313
+ const altRgbRe = /R(\d{1,3})G(\d{1,3})B(\d{1,3})/;
314
+ const altRgb = altRgbRe.test(color);
315
+ if (altRgb) {
316
+ const parts = color.match(altRgbRe);
317
+ color = 'rgb(' + parts[1] + ',' + parts[2] + ',' + parts[3] + ')';
318
+ }
319
+ let isHex = color.substring(0, 1) === '#';
320
+ const isHsl = color.substring(0, 3).toLowerCase() === 'hsl';
321
+ const isRgb = color.substring(0, 3).toLowerCase() === 'rgb';
322
+ //If true, supposedly it's a code word
323
+ if (!isHex && !isHsl && !isRgb) {
324
+ const oldColor = color;
325
+ color = this.codeToHex(color);
326
+ isHex = color.substring(0, 1) === '#' ? true : false;
327
+ dom.ketchup.debug.logMessage('theme manager', 'Received CODE NAME color ' +
328
+ oldColor +
329
+ ', converted to ' +
330
+ color +
331
+ '.');
332
+ }
333
+ //Testing whether the color is "hex" value or "hsl"
334
+ let hexColor = null;
335
+ let rgbColor = null;
336
+ let hslColor = null;
337
+ let hslValues = null;
338
+ let hue = null;
339
+ let lightness = null;
340
+ let saturation = null;
341
+ if (isHex || isHsl) {
342
+ const oldColor = color;
343
+ let rgbColorObj = null;
344
+ if (isHex) {
345
+ hexColor = color;
346
+ rgbColorObj = this.hexToRgb(color);
347
+ }
348
+ else {
349
+ hslColor = color;
350
+ const regexp = /hsl\(\s*(\d+)\s*,\s*(\d+(?:\.\d+)?%)\s*,\s*(\d+(?:\.\d+)?%)\)/g;
351
+ const hsl = regexp.exec(color).slice(1);
352
+ hslValues = hsl[0] + ',' + hsl[1] + ',' + hsl[2];
353
+ hue = hsl[0];
354
+ saturation = hsl[2];
355
+ lightness = hsl[1];
356
+ const h = parseInt(hue.replace('deg', ''));
357
+ const s = parseInt(saturation.replace('%', '')) / 100;
358
+ const l = parseInt(lightness.replace('%', '')) / 100;
359
+ rgbColorObj = this.hslToRgb(h, s, l);
360
+ }
361
+ try {
362
+ color =
363
+ 'rgb(' +
364
+ rgbColorObj.r +
365
+ ',' +
366
+ rgbColorObj.g +
367
+ ',' +
368
+ rgbColorObj.b +
369
+ ')';
370
+ if (isHex) {
371
+ const hsl = this.rgbToHsl(rgbColorObj.r, rgbColorObj.g, rgbColorObj.b);
372
+ hue = hsl.h.toString();
373
+ saturation = hsl.s.toString() + '%';
374
+ lightness = hsl.l.toString() + '%';
375
+ hslValues = hue + ',' + saturation + ',' + lightness;
376
+ hslColor = 'hsl(' + hslValues + ')';
377
+ }
378
+ else {
379
+ hexColor = this.rgbToHex(rgbColorObj.r, rgbColorObj.g, rgbColorObj.b);
380
+ }
381
+ dom.ketchup.debug.logMessage('theme-manager', 'Received HEX color ' +
382
+ oldColor +
383
+ ', converted to ' +
384
+ color +
385
+ '.');
386
+ }
387
+ catch (error) {
388
+ dom.ketchup.debug.logMessage('theme-manager', 'Invalid color: ' + color + '.');
389
+ }
390
+ }
391
+ let rgbValues = null;
392
+ const values = color.match(/rgba?\((\d{1,3}), ?(\d{1,3}), ?(\d{1,3})\)?(?:, ?(\d(?:\.\d?))\))?/);
393
+ try {
394
+ rgbValues = values[1] + ',' + values[2] + ',' + values[3];
395
+ rgbColor = color;
396
+ }
397
+ catch (error) {
398
+ dom.ketchup.debug.logMessage('theme-manager', 'Color not converted to rgb values: ' + color + '.');
399
+ }
400
+ if (!hexColor) {
401
+ try {
402
+ hexColor = this.rgbToHex(parseInt(values[1]), parseInt(values[2]), parseInt(values[3]));
403
+ }
404
+ catch (error) {
405
+ dom.ketchup.debug.logMessage('theme-manager', 'Color not converted to hex value: ' + color + '.');
406
+ }
407
+ }
408
+ if (!hslColor || !hslValues) {
409
+ try {
410
+ const hsl = this.rgbToHsl(parseInt(values[1]), parseInt(values[2]), parseInt(values[3]));
411
+ hue = hsl.h.toString();
412
+ saturation = hsl.s.toString() + '%';
413
+ lightness = hsl.l.toString() + '%';
414
+ hslValues = hsl.h + ',' + hsl.s + '%,' + hsl.l + '%';
415
+ hslColor = 'hsl(' + hsl.h + ',' + hsl.s + '%,' + hsl.l + '%)';
416
+ }
417
+ catch (error) {
418
+ dom.ketchup.debug.logMessage('theme-manager', 'Color not converted to hex value: ' + color + '.');
419
+ }
420
+ }
421
+ return {
422
+ hexColor: hexColor,
423
+ hslColor: hslColor,
424
+ hslValues: hslValues,
425
+ hue: hue,
426
+ lightness: lightness,
427
+ saturation: saturation,
428
+ rgbColor: rgbColor,
429
+ rgbValues: rgbValues,
430
+ };
431
+ }
432
+ /**
433
+ * Converts an HEX color to its RGB values.
434
+ * @param {string} hex - Hex code.
435
+ * @returns {KupThemeRGBValues} Object containing RGB values.
436
+ */
437
+ hexToRgb(hex) {
438
+ var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
439
+ return result
440
+ ? {
441
+ r: parseInt(result[1], 16),
442
+ g: parseInt(result[2], 16),
443
+ b: parseInt(result[3], 16),
444
+ }
445
+ : null;
446
+ }
447
+ /**
448
+ * Converts an HSL color to its RGB values.
449
+ * @param {number} h - Hue (range [0, 360)).
450
+ * @param {number} s - Saturation (range [0, 1)).
451
+ * @param {number} l - Lightness (range [0, 1)).
452
+ * @returns {Array} RGB values.
453
+ */
454
+ hslToRgb(h, s, l) {
455
+ if (h == undefined) {
456
+ return { r: 0, g: 0, b: 0 };
457
+ }
458
+ let huePrime = h / 60;
459
+ const chroma = (1 - Math.abs(2 * l - 1)) * s;
460
+ const secondComponent = chroma * (1 - Math.abs((huePrime % 2) - 1));
461
+ huePrime = Math.floor(huePrime);
462
+ let red, green, blue;
463
+ if (huePrime === 0) {
464
+ red = chroma;
465
+ green = secondComponent;
466
+ blue = 0;
467
+ }
468
+ else if (huePrime === 1) {
469
+ red = secondComponent;
470
+ green = chroma;
471
+ blue = 0;
472
+ }
473
+ else if (huePrime === 2) {
474
+ red = 0;
475
+ green = chroma;
476
+ blue = secondComponent;
477
+ }
478
+ else if (huePrime === 3) {
479
+ red = 0;
480
+ green = secondComponent;
481
+ blue = chroma;
482
+ }
483
+ else if (huePrime === 4) {
484
+ red = secondComponent;
485
+ green = 0;
486
+ blue = chroma;
487
+ }
488
+ else if (huePrime === 5) {
489
+ red = chroma;
490
+ green = 0;
491
+ blue = secondComponent;
492
+ }
493
+ const lightnessAdjustment = l - chroma / 2;
494
+ red += lightnessAdjustment;
495
+ green += lightnessAdjustment;
496
+ blue += lightnessAdjustment;
497
+ return {
498
+ r: Math.round(red * 255),
499
+ g: Math.round(green * 255),
500
+ b: Math.round(blue * 255),
501
+ };
502
+ }
503
+ /**
504
+ * Converts a color in RGB format to the corresponding HEX color.
505
+ * @param {number} r - Red channel value.
506
+ * @param {number} g - Green channel value.
507
+ * @param {number} b - Blue channel value.
508
+ * @returns {string} HEX color.
509
+ */
510
+ rgbToHex(r, g, b) {
511
+ return ('#' + this.valueToHex(r) + this.valueToHex(g) + this.valueToHex(b));
512
+ }
513
+ /**
514
+ * Converts a color in RGB format to the corresponding HSL color.
515
+ * @param {number} r - Red channel value.
516
+ * @param {number} g - Green channel value.
517
+ * @param {number} b - Blue channel value.
518
+ * @returns {KupThemeHSLValues} Object containing HSL values.
519
+ */
520
+ rgbToHsl(r, g, b) {
521
+ // Make r, g, and b fractions of 1
522
+ r /= 255;
523
+ g /= 255;
524
+ b /= 255;
525
+ // Find greatest and smallest channel values
526
+ const cmin = Math.min(r, g, b), cmax = Math.max(r, g, b), delta = cmax - cmin;
527
+ let h = 0, s = 0, l = 0;
528
+ // Calculate hue
529
+ // No difference
530
+ if (delta == 0)
531
+ h = 0;
532
+ // Red is max
533
+ else if (cmax == r)
534
+ h = ((g - b) / delta) % 6;
535
+ // Green is max
536
+ else if (cmax == g)
537
+ h = (b - r) / delta + 2;
538
+ // Blue is max
539
+ else
540
+ h = (r - g) / delta + 4;
541
+ h = Math.round(h * 60);
542
+ // Make negative hues positive behind 360°
543
+ if (h < 0)
544
+ h += 360;
545
+ // Calculate lightness
546
+ l = (cmax + cmin) / 2;
547
+ // Calculate saturation
548
+ s = delta == 0 ? 0 : delta / (1 - Math.abs(2 * l - 1));
549
+ // Multiply l and s by 100
550
+ s = +(s * 100).toFixed(1);
551
+ l = +(l * 100).toFixed(1);
552
+ return { h: h, s: s, l: l };
553
+ }
554
+ /**
555
+ * Converts a single RGB value to the corresponding HEX value.
556
+ * @param {number} c - Color value.
557
+ * @returns {string} HEX value.
558
+ */
559
+ valueToHex(c) {
560
+ const hex = c.toString(16);
561
+ return hex.length == 1 ? '0' + hex : hex;
562
+ }
563
+ /**
564
+ * Converts a color code word to the corresponding HEX value.
565
+ * @param {string} color - Color code word.
566
+ * @returns {string} HEX value.
567
+ */
568
+ codeToHex(color) {
569
+ const colorCodes = {
570
+ aliceblue: '#f0f8ff',
571
+ antiquewhite: '#faebd7',
572
+ aqua: '#00ffff',
573
+ aquamarine: '#7fffd4',
574
+ azure: '#f0ffff',
575
+ beige: '#f5f5dc',
576
+ bisque: '#ffe4c4',
577
+ black: '#000000',
578
+ blanchedalmond: '#ffebcd',
579
+ blue: '#0000ff',
580
+ blueviolet: '#8a2be2',
581
+ brown: '#a52a2a',
582
+ burlywood: '#deb887',
583
+ cadetblue: '#5f9ea0',
584
+ chartreuse: '#7fff00',
585
+ chocolate: '#d2691e',
586
+ coral: '#ff7f50',
587
+ cornflowerblue: '#6495ed',
588
+ cornsilk: '#fff8dc',
589
+ crimson: '#dc143c',
590
+ cyan: '#00ffff',
591
+ darkblue: '#00008b',
592
+ darkcyan: '#008b8b',
593
+ darkgoldenrod: '#b8860b',
594
+ darkgray: '#a9a9a9',
595
+ darkgreen: '#006400',
596
+ darkgrey: '#a9a9a9',
597
+ darkkhaki: '#bdb76b',
598
+ darkmagenta: '#8b008b',
599
+ darkolivegreen: '#556b2f',
600
+ darkorange: '#ff8c00',
601
+ darkorchid: '#9932cc',
602
+ darkred: '#8b0000',
603
+ darksalmon: '#e9967a',
604
+ darkseagreen: '#8fbc8f',
605
+ darkslateblue: '#483d8b',
606
+ darkslategray: '#2f4f4f',
607
+ darkslategrey: '#2f4f4f',
608
+ darkturquoise: '#00ced1',
609
+ darkviolet: '#9400d3',
610
+ deeppink: '#ff1493',
611
+ deepskyblue: '#00bfff',
612
+ dimgray: '#696969',
613
+ dimgrey: '#696969',
614
+ dodgerblue: '#1e90ff',
615
+ firebrick: '#b22222',
616
+ floralwhite: '#fffaf0',
617
+ forestgreen: '#228b22',
618
+ fuchsia: '#ff00ff',
619
+ gainsboro: '#dcdcdc',
620
+ ghostwhite: '#f8f8ff',
621
+ goldenrod: '#daa520',
622
+ gold: '#ffd700',
623
+ gray: '#808080',
624
+ green: '#008000',
625
+ greenyellow: '#adff2f',
626
+ grey: '#808080',
627
+ honeydew: '#f0fff0',
628
+ hotpink: '#ff69b4',
629
+ indianred: '#cd5c5c',
630
+ indigo: '#4b0082',
631
+ ivory: '#fffff0',
632
+ khaki: '#f0e68c',
633
+ lavenderblush: '#fff0f5',
634
+ lavender: '#e6e6fa',
635
+ lawngreen: '#7cfc00',
636
+ lemonchiffon: '#fffacd',
637
+ lightblue: '#add8e6',
638
+ lightcoral: '#f08080',
639
+ lightcyan: '#e0ffff',
640
+ lightgoldenrodyellow: '#fafad2',
641
+ lightgray: '#d3d3d3',
642
+ lightgreen: '#90ee90',
643
+ lightgrey: '#d3d3d3',
644
+ lightpink: '#ffb6c1',
645
+ lightsalmon: '#ffa07a',
646
+ lightseagreen: '#20b2aa',
647
+ lightskyblue: '#87cefa',
648
+ lightslategray: '#778899',
649
+ lightslategrey: '#778899',
650
+ lightsteelblue: '#b0c4de',
651
+ lightyellow: '#ffffe0',
652
+ lime: '#00ff00',
653
+ limegreen: '#32cd32',
654
+ linen: '#faf0e6',
655
+ magenta: '#ff00ff',
656
+ maroon: '#800000',
657
+ mediumaquamarine: '#66cdaa',
658
+ mediumblue: '#0000cd',
659
+ mediumorchid: '#ba55d3',
660
+ mediumpurple: '#9370db',
661
+ mediumseagreen: '#3cb371',
662
+ mediumslateblue: '#7b68ee',
663
+ mediumspringgreen: '#00fa9a',
664
+ mediumturquoise: '#48d1cc',
665
+ mediumvioletred: '#c71585',
666
+ midnightblue: '#191970',
667
+ mintcream: '#f5fffa',
668
+ mistyrose: '#ffe4e1',
669
+ moccasin: '#ffe4b5',
670
+ navajowhite: '#ffdead',
671
+ navy: '#000080',
672
+ oldlace: '#fdf5e6',
673
+ olive: '#808000',
674
+ olivedrab: '#6b8e23',
675
+ orange: '#ffa500',
676
+ orangered: '#ff4500',
677
+ orchid: '#da70d6',
678
+ palegoldenrod: '#eee8aa',
679
+ palegreen: '#98fb98',
680
+ paleturquoise: '#afeeee',
681
+ palevioletred: '#db7093',
682
+ papayawhip: '#ffefd5',
683
+ peachpuff: '#ffdab9',
684
+ peru: '#cd853f',
685
+ pink: '#ffc0cb',
686
+ plum: '#dda0dd',
687
+ powderblue: '#b0e0e6',
688
+ purple: '#800080',
689
+ rebeccapurple: '#663399',
690
+ red: '#ff0000',
691
+ rosybrown: '#bc8f8f',
692
+ royalblue: '#4169e1',
693
+ saddlebrown: '#8b4513',
694
+ salmon: '#fa8072',
695
+ sandybrown: '#f4a460',
696
+ seagreen: '#2e8b57',
697
+ seashell: '#fff5ee',
698
+ sienna: '#a0522d',
699
+ silver: '#c0c0c0',
700
+ skyblue: '#87ceeb',
701
+ slateblue: '#6a5acd',
702
+ slategray: '#708090',
703
+ slategrey: '#708090',
704
+ snow: '#fffafa',
705
+ springgreen: '#00ff7f',
706
+ steelblue: '#4682b4',
707
+ tan: '#d2b48c',
708
+ teal: '#008080',
709
+ thistle: '#d8bfd8',
710
+ tomato: '#ff6347',
711
+ turquoise: '#40e0d0',
712
+ violet: '#ee82ee',
713
+ wheat: '#f5deb3',
714
+ white: '#ffffff',
715
+ whitesmoke: '#f5f5f5',
716
+ yellow: '#ffff00',
717
+ yellowgreen: '#9acd32',
718
+ };
719
+ if (colorCodes[color.toLowerCase()]) {
720
+ return colorCodes[color.toLowerCase()];
721
+ }
722
+ else {
723
+ dom.ketchup.debug.logMessage('theme manager', 'Could not decode color ' + color + '!');
724
+ return color;
725
+ }
725
726
  }
726
- }
727
727
  }