@sme.up/ketchup 6.0.0 → 6.2.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 (198) hide show
  1. package/dist/cjs/{cell-utils-a78d6fac.js → cell-utils-fe64a28c.js} +2 -2
  2. package/dist/cjs/{f-button-ac179257.js → f-button-5b69d882.js} +4 -4
  3. package/dist/cjs/f-cell-3a740c48.js +418 -0
  4. package/dist/cjs/f-checkbox-57443ca3.js +29 -0
  5. package/dist/cjs/{f-chip-b00897d7.js → f-chip-02e83f82.js} +3 -3
  6. package/dist/cjs/{f-image-89f25556.js → f-image-2a61ece2.js} +2 -2
  7. package/dist/cjs/{f-paginator-utils-8fa501b3.js → f-paginator-utils-09126bdd.js} +5 -5
  8. package/dist/cjs/{f-text-field-e1e45ade.js → f-text-field-9ee20a67.js} +3 -3
  9. package/dist/cjs/{index-eb556444.js → index-06b131ea.js} +6 -4
  10. package/dist/cjs/ketchup.cjs.js +3 -3
  11. package/dist/cjs/kup-accordion.cjs.entry.js +4 -4
  12. package/dist/cjs/kup-autocomplete_25.cjs.entry.js +209 -193
  13. package/dist/cjs/kup-box.cjs.entry.js +1306 -0
  14. package/dist/cjs/kup-calendar.cjs.entry.js +7 -7
  15. package/dist/cjs/kup-cell.cjs.entry.js +10 -9
  16. package/dist/cjs/kup-dash-list.cjs.entry.js +4 -4
  17. package/dist/cjs/kup-dash_2.cjs.entry.js +4 -7
  18. package/dist/cjs/{kup-form-editor.cjs.entry.js → kup-dashboard.cjs.entry.js} +123 -148
  19. package/dist/cjs/kup-drawer.cjs.entry.js +4 -4
  20. package/dist/cjs/{kup-box_2.cjs.entry.js → kup-echart.cjs.entry.js} +53 -1338
  21. package/dist/cjs/kup-family-tree.cjs.entry.js +410 -0
  22. package/dist/cjs/kup-form.cjs.entry.js +480 -0
  23. package/dist/cjs/kup-iframe.cjs.entry.js +3 -3
  24. package/dist/cjs/kup-image-list.cjs.entry.js +73 -11
  25. package/dist/cjs/kup-lazy.cjs.entry.js +4 -4
  26. package/dist/cjs/kup-magic-box.cjs.entry.js +4 -4
  27. package/dist/cjs/{kup-manager-7a941909.js → kup-manager-02acbb37.js} +407 -7
  28. package/dist/cjs/kup-nav-bar.cjs.entry.js +3 -3
  29. package/dist/cjs/kup-numeric-picker.cjs.entry.js +3 -3
  30. package/dist/cjs/kup-photo-frame.cjs.entry.js +5 -5
  31. package/dist/cjs/kup-probe.cjs.entry.js +2 -2
  32. package/dist/cjs/kup-qlik.cjs.entry.js +2 -2
  33. package/dist/cjs/kup-snackbar.cjs.entry.js +5 -5
  34. package/dist/cjs/loader.cjs.js +3 -3
  35. package/dist/cjs/{utils-6287d878.js → utils-4b208b48.js} +1 -1
  36. package/dist/collection/assets/dashboard.js +113 -0
  37. package/dist/collection/assets/data-table.js +15 -0
  38. package/dist/collection/assets/family-tree.js +2437 -0
  39. package/dist/collection/assets/form.js +433 -0
  40. package/dist/collection/assets/grid.js +17 -0
  41. package/dist/collection/assets/index.js +14 -6
  42. package/dist/collection/collection-manifest.json +4 -3
  43. package/dist/collection/components/kup-autocomplete/kup-autocomplete.js +135 -129
  44. package/dist/collection/components/kup-box/kup-box.js +13 -2
  45. package/dist/collection/components/kup-button/kup-button.js +1 -0
  46. package/dist/collection/components/kup-combobox/kup-combobox.js +16 -13
  47. package/dist/collection/components/kup-dashboard/kup-dashboard-declarations.js +10 -0
  48. package/dist/collection/components/{kup-form-editor/kup-form-editor.css → kup-dashboard/kup-dashboard.css} +7 -6
  49. package/dist/collection/components/{kup-form-editor/kup-form-editor.js → kup-dashboard/kup-dashboard.js} +148 -149
  50. package/dist/collection/components/kup-data-table/kup-data-table.js +7 -6
  51. package/dist/collection/components/kup-drawer/kup-drawer.css +5 -8
  52. package/dist/collection/components/kup-dropdown-button/kup-dropdown-button.js +1 -0
  53. package/dist/collection/components/kup-family-tree/kup-family-tree-declarations.js +12 -0
  54. package/dist/collection/components/kup-family-tree/kup-family-tree.css +101 -0
  55. package/dist/collection/components/kup-family-tree/kup-family-tree.js +666 -0
  56. package/dist/collection/components/kup-form/kup-form-declarations.js +25 -0
  57. package/dist/collection/components/kup-form/kup-form.css +99 -0
  58. package/dist/collection/components/kup-form/kup-form.js +647 -0
  59. package/dist/collection/components/kup-grid/kup-grid.js +1 -4
  60. package/dist/collection/components/kup-image-list/kup-image-list-state.js +9 -0
  61. package/dist/collection/components/kup-image-list/kup-image-list.css +0 -6
  62. package/dist/collection/components/kup-image-list/kup-image-list.js +113 -1
  63. package/dist/collection/components/kup-lazy/kup-lazy.css +13 -6
  64. package/dist/collection/components/kup-list/kup-list-helper.js +9 -3
  65. package/dist/collection/components/kup-photo-frame/kup-photo-frame.css +13 -3
  66. package/dist/collection/components/kup-photo-frame/kup-photo-frame.js +1 -1
  67. package/dist/collection/components/kup-text-field/kup-text-field-declarations.js +3 -0
  68. package/dist/collection/components/kup-text-field/kup-text-field.js +27 -0
  69. package/dist/collection/components/kup-time-picker/kup-time-picker.js +0 -6
  70. package/dist/collection/components/kup-tree/kup-tree.js +10 -4
  71. package/dist/collection/f-components/f-button/f-button.js +2 -2
  72. package/dist/collection/f-components/f-cell/f-cell-declarations.js +5 -1
  73. package/dist/collection/f-components/f-cell/f-cell.js +34 -114
  74. package/dist/collection/f-components/f-text-field/f-text-field.js +1 -1
  75. package/dist/collection/managers/kup-data/kup-data-node-helper.js +69 -0
  76. package/dist/collection/managers/kup-data/kup-data.js +109 -1
  77. package/dist/collection/managers/kup-language/kup-language-declarations.js +11 -0
  78. package/dist/collection/managers/kup-objects/kup-objects.js +10 -0
  79. package/dist/collection/managers/kup-theme/kup-theme-declarations.js +20 -3
  80. package/dist/collection/types/GenericTypes.js +3 -2
  81. package/dist/esm/{cell-utils-964da6b5.js → cell-utils-cb5d4149.js} +2 -2
  82. package/dist/esm/{f-button-871a544b.js → f-button-fd44ef70.js} +4 -4
  83. package/dist/esm/{f-cell-521ef17a.js → f-cell-7b159a22.js} +48 -283
  84. package/dist/esm/f-checkbox-c51c4a75.js +27 -0
  85. package/dist/esm/{f-chip-1dda722f.js → f-chip-c2e4c522.js} +3 -3
  86. package/dist/esm/{f-image-c468d8ae.js → f-image-2ab4b9aa.js} +2 -2
  87. package/dist/esm/{f-paginator-utils-7dff8ff0.js → f-paginator-utils-ef537d82.js} +5 -5
  88. package/dist/esm/{f-text-field-d6c61c73.js → f-text-field-41c575eb.js} +3 -3
  89. package/dist/esm/{index-baeab1ac.js → index-ad6ab214.js} +6 -4
  90. package/dist/esm/ketchup.js +3 -3
  91. package/dist/esm/kup-accordion.entry.js +4 -4
  92. package/dist/esm/kup-autocomplete_25.entry.js +199 -183
  93. package/dist/esm/kup-box.entry.js +1302 -0
  94. package/dist/esm/kup-calendar.entry.js +7 -7
  95. package/dist/esm/kup-cell.entry.js +9 -8
  96. package/dist/esm/kup-dash-list.entry.js +4 -4
  97. package/dist/esm/kup-dash_2.entry.js +4 -7
  98. package/dist/esm/{kup-form-editor.entry.js → kup-dashboard.entry.js} +123 -148
  99. package/dist/esm/kup-drawer.entry.js +4 -4
  100. package/dist/esm/{kup-box_2.entry.js → kup-echart.entry.js} +54 -1338
  101. package/dist/esm/kup-family-tree.entry.js +406 -0
  102. package/dist/esm/kup-form.entry.js +476 -0
  103. package/dist/esm/kup-iframe.entry.js +3 -3
  104. package/dist/esm/kup-image-list.entry.js +72 -10
  105. package/dist/esm/kup-lazy.entry.js +4 -4
  106. package/dist/esm/kup-magic-box.entry.js +4 -4
  107. package/dist/esm/{kup-manager-58b075b4.js → kup-manager-22a475e6.js} +404 -8
  108. package/dist/esm/kup-nav-bar.entry.js +3 -3
  109. package/dist/esm/kup-numeric-picker.entry.js +3 -3
  110. package/dist/esm/kup-photo-frame.entry.js +5 -5
  111. package/dist/esm/kup-probe.entry.js +2 -2
  112. package/dist/esm/kup-qlik.entry.js +2 -2
  113. package/dist/esm/kup-snackbar.entry.js +5 -5
  114. package/dist/esm/loader.js +3 -3
  115. package/dist/esm/{utils-d7e4b3c2.js → utils-2c1f4122.js} +1 -1
  116. package/dist/ketchup/ketchup.esm.js +1 -1
  117. package/dist/ketchup/p-06c6cc68.js +1 -0
  118. package/dist/ketchup/{p-3c11e615.entry.js → p-0dacd4bc.entry.js} +1 -1
  119. package/dist/ketchup/{p-fac1a08b.entry.js → p-1959f835.entry.js} +1 -1
  120. package/dist/ketchup/p-1c44dc62.entry.js +1 -0
  121. package/dist/ketchup/{p-f09f2f98.entry.js → p-264b1b19.entry.js} +1 -1
  122. package/dist/ketchup/p-38d7584e.js +1 -0
  123. package/dist/ketchup/{p-f71a1675.entry.js → p-42080355.entry.js} +1 -1
  124. package/dist/ketchup/p-4bc9f98b.entry.js +1 -0
  125. package/dist/ketchup/p-578583db.entry.js +1 -0
  126. package/dist/ketchup/p-5866d507.entry.js +1 -0
  127. package/dist/ketchup/p-61059e9d.entry.js +9 -0
  128. package/dist/ketchup/{p-a615a92b.entry.js → p-664be494.entry.js} +1 -1
  129. package/dist/ketchup/{p-d2ee56dd.entry.js → p-67cd575d.entry.js} +1 -1
  130. package/dist/ketchup/{p-e0035c58.js → p-682a367a.js} +1 -1
  131. package/dist/ketchup/p-6ccf7eb2.entry.js +1 -0
  132. package/dist/ketchup/p-7230ab97.entry.js +1 -0
  133. package/dist/ketchup/p-752b4cef.entry.js +1 -0
  134. package/dist/ketchup/{p-954cc340.entry.js → p-7de3e7ac.entry.js} +1 -1
  135. package/dist/ketchup/p-928c5c36.js +1 -0
  136. package/dist/ketchup/{p-6dff70f8.entry.js → p-9b36497d.entry.js} +1 -1
  137. package/dist/ketchup/{p-99e0d768.entry.js → p-b982d137.entry.js} +1 -1
  138. package/dist/ketchup/{p-8cdf61a4.js → p-c0219e5e.js} +1 -1
  139. package/dist/ketchup/p-c55fd0a7.entry.js +1 -0
  140. package/dist/ketchup/p-cd5cfa7c.js +1 -0
  141. package/dist/ketchup/p-d154b3a0.entry.js +1 -0
  142. package/dist/ketchup/p-d2affb6f.entry.js +27 -0
  143. package/dist/ketchup/p-d3b542b3.js +2 -0
  144. package/dist/ketchup/{p-7454cb92.js → p-d6c12c6c.js} +1 -1
  145. package/dist/ketchup/p-da0eab60.entry.js +1 -0
  146. package/dist/ketchup/{p-7eff4eee.js → p-dc62a30f.js} +1 -1
  147. package/dist/ketchup/p-e9366aaf.entry.js +39 -0
  148. package/dist/ketchup/{p-44ec4f03.js → p-edae3076.js} +1 -1
  149. package/dist/ketchup/p-fc2b1229.js +30 -0
  150. package/dist/types/components/kup-autocomplete/kup-autocomplete.d.ts +1 -16
  151. package/dist/types/components/{kup-form-editor/kup-form-editor-declarations.d.ts → kup-dashboard/kup-dashboard-declarations.d.ts} +9 -27
  152. package/dist/types/components/{kup-form-editor/kup-form-editor.d.ts → kup-dashboard/kup-dashboard.d.ts} +12 -9
  153. package/dist/types/components/kup-family-tree/kup-family-tree-declarations.d.ts +33 -0
  154. package/dist/types/components/kup-family-tree/kup-family-tree.d.ts +61 -0
  155. package/dist/types/components/kup-form/kup-form-declarations.d.ts +60 -0
  156. package/dist/types/components/kup-form/kup-form.d.ts +63 -0
  157. package/dist/types/components/kup-image-list/kup-image-list-state.d.ts +6 -0
  158. package/dist/types/components/kup-image-list/kup-image-list.d.ts +17 -0
  159. package/dist/types/components/kup-text-field/kup-text-field-declarations.d.ts +3 -0
  160. package/dist/types/components/kup-text-field/kup-text-field.d.ts +5 -0
  161. package/dist/types/components/kup-time-picker/kup-time-picker.d.ts +0 -6
  162. package/dist/types/components/kup-tree/kup-tree-declarations.d.ts +2 -0
  163. package/dist/types/components.d.ts +460 -241
  164. package/dist/types/f-components/f-cell/f-cell-declarations.d.ts +4 -1
  165. package/dist/types/f-components/f-text-field/f-text-field-declarations.d.ts +1 -0
  166. package/dist/types/managers/kup-data/kup-data-declarations.d.ts +8 -0
  167. package/dist/types/managers/kup-data/kup-data-node-helper.d.ts +15 -1
  168. package/dist/types/managers/kup-data/kup-data.d.ts +7 -1
  169. package/dist/types/managers/kup-language/kup-language-declarations.d.ts +11 -1
  170. package/dist/types/managers/kup-objects/kup-objects.d.ts +6 -0
  171. package/dist/types/types/GenericTypes.d.ts +3 -2
  172. package/package.json +2 -2
  173. package/dist/cjs/f-cell-69294bca.js +0 -653
  174. package/dist/cjs/kup-field.cjs.entry.js +0 -241
  175. package/dist/collection/assets/form-editor.js +0 -338
  176. package/dist/collection/components/kup-field/kup-field-declarations.js +0 -15
  177. package/dist/collection/components/kup-field/kup-field.css +0 -48
  178. package/dist/collection/components/kup-field/kup-field.js +0 -514
  179. package/dist/collection/components/kup-form-editor/kup-form-editor-declarations.js +0 -23
  180. package/dist/esm/kup-field.entry.js +0 -237
  181. package/dist/ketchup/p-1ae66cc5.js +0 -1
  182. package/dist/ketchup/p-34b74425.js +0 -1
  183. package/dist/ketchup/p-4ffbc3ff.js +0 -1
  184. package/dist/ketchup/p-5264a3e6.entry.js +0 -1
  185. package/dist/ketchup/p-65974e48.entry.js +0 -1
  186. package/dist/ketchup/p-65b46587.entry.js +0 -40
  187. package/dist/ketchup/p-80968627.entry.js +0 -1
  188. package/dist/ketchup/p-a0f6e25c.entry.js +0 -1
  189. package/dist/ketchup/p-aca0e54b.js +0 -30
  190. package/dist/ketchup/p-b8939a8b.entry.js +0 -1
  191. package/dist/ketchup/p-bfc3bac7.js +0 -1
  192. package/dist/ketchup/p-c5ce8951.entry.js +0 -1
  193. package/dist/ketchup/p-cad1e097.entry.js +0 -9
  194. package/dist/ketchup/p-db71436b.entry.js +0 -27
  195. package/dist/ketchup/p-e1039cf2.entry.js +0 -1
  196. package/dist/ketchup/p-ea10176c.entry.js +0 -1
  197. package/dist/types/components/kup-field/kup-field-declarations.d.ts +0 -25
  198. package/dist/types/components/kup-field/kup-field.d.ts +0 -90
@@ -0,0 +1,406 @@
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host, g as getElement } from './index-ad6ab214.js';
2
+ import { F as FButton } from './f-button-fd44ef70.js';
3
+ import { F as FButtonStyling } from './f-button-declarations-b1b4cac4.js';
4
+ import { k as kupManagerInstance, h as KupLanguageGeneric, y as KupPointerEventTypes } from './kup-manager-22a475e6.js';
5
+ import { g as getProps, s as setProps } from './utils-2c1f4122.js';
6
+ import { c as componentWrapperId } from './GenericVariables-665de00a.js';
7
+ import './f-image-2ab4b9aa.js';
8
+
9
+ /**
10
+ * Props of the kup-family-tree component.
11
+ * Used to export every prop in an object.
12
+ */
13
+ var KupFamilyTreeProps;
14
+ (function (KupFamilyTreeProps) {
15
+ KupFamilyTreeProps["autofit"] = "The component's initial render will fit the container.";
16
+ KupFamilyTreeProps["collapsible"] = "Nodes can be expanded/collapsed.";
17
+ KupFamilyTreeProps["customStyle"] = "Custom style of the component.";
18
+ KupFamilyTreeProps["data"] = "Actual data of the component";
19
+ KupFamilyTreeProps["layout"] = "Layout of the boxes.";
20
+ })(KupFamilyTreeProps || (KupFamilyTreeProps = {}));
21
+
22
+ const kupFamilyTreeCss = ":host{--kup_familytree_item_background_color:var(\n --kup-familytree-item-background-color,\n var(--kup-primary-color)\n );--kup_familytree_item_color:var(\n --kup-familytree-item-color,\n var(--kup-text-on-primary-color)\n );--kup_familytree_item_height:var(--kup-familytree-item-height, 40px);--kup_familytree_item_h_padding:var(--kup-familytree-item-h-padding, 8px);--kup_familytree_item_v_padding:var(--kup-familytree-item-v-padding, 10px);--kup_familytree_item_width:var(--kup-familytree-item-width, 120px);--kup_familytree_lines_color:var(\n --kup-familytree-lines-color,\n var(--kup-border-color)\n );display:block;overflow:hidden}.family-tree{display:flex;transform:scale(var(--kup_familytree_scale, 1));transform-origin:0px 0px}.family-tree__node{border-collapse:collapse;margin:auto}.family-tree__node__staff{align-items:center;display:flex;flex-direction:column;height:0;transform:translateX(calc( ( var(--kup_familytree_item_width) + (var(--kup_familytree_item_h_padding) * 2) ) / 2 )) translateY(calc( 0px - ( var(--kup_familytree_staffchildren) * var(--kup_familytree_item_height) + var(--kup_familytree_staffchildren) * var(--kup_familytree_item_v_padding) ) ))}.family-tree__node__staff__item{padding:var(--kup_familytree_item_v_padding);text-align:left}.family-tree__node__staff__item:before{border-top:2px solid var(--kup_familytree_lines_color);content:\"\";position:absolute;transform:translateX(calc(100% + 2px)) translateY(calc(var(--kup_familytree_item_height) / 2));width:var(--kup_familytree_item_h_padding)}.family-tree__node td{vertical-align:top;padding:0}.family-tree__line--left{border-left:2px solid var(--kup_familytree_lines_color)}.family-tree__line--placeholder{height:calc(var(--kup_familytree_item_height) / 2)}.family-tree__line--staff{height:calc( var(--kup_familytree_staffchildren) * var(--kup_familytree_item_height) + var(--kup_familytree_staffchildren) * var(--kup_familytree_item_v_padding) )}.family-tree__line--right{border-right:2px solid var(--kup_familytree_lines_color)}.family-tree__line--top{border-top:2px solid var(--kup_familytree_lines_color)}.family-tree__line--vertical{background-color:var(--kup_familytree_lines_color);margin-left:auto;margin-right:auto;width:2px}.family-tree__item{display:flex}.family-tree__item__wrapper{margin:auto}.family-tree__item__wrapper kup-box{margin:0 auto;overflow:hidden;padding:0 18px;width:var(--kup_familytree_item_width);z-index:1}.family-tree__item__wrapper .f-button{width:fit-content;margin-left:auto;margin-right:auto}";
23
+
24
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
25
+ if (kind === "a" && !f)
26
+ throw new TypeError("Private accessor was defined without a getter");
27
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
28
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
29
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
30
+ };
31
+ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
32
+ if (kind === "m")
33
+ throw new TypeError("Private method is not writable");
34
+ if (kind === "a" && !f)
35
+ throw new TypeError("Private accessor was defined without a setter");
36
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
37
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
38
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
39
+ };
40
+ var _KupFamilyTree_instances, _KupFamilyTree_clickTimeout, _KupFamilyTree_hold, _KupFamilyTree_currentPanX, _KupFamilyTree_currentPanY, _KupFamilyTree_interactableTouch, _KupFamilyTree_kupManager, _KupFamilyTree_moveCb, _KupFamilyTree_wrapperEl, _KupFamilyTree_buildChildLine, _KupFamilyTree_buildNode, _KupFamilyTree_buildNodes, _KupFamilyTree_createTree, _KupFamilyTree_startPanning, _KupFamilyTree_getEventPath, _KupFamilyTree_getEventDetails, _KupFamilyTree_clickHandler, _KupFamilyTree_contextMenuHandler, _KupFamilyTree_dblClickHandler, _KupFamilyTree_didLoadInteractables, _KupFamilyTree_zoomTree, _KupFamilyTree_autofit;
41
+ const KupFamilyTree = class {
42
+ constructor(hostRef) {
43
+ registerInstance(this, hostRef);
44
+ this.kupClick = createEvent(this, "kup-familytree-click", 6);
45
+ this.kupContextMenu = createEvent(this, "kup-familytree-contextmenu", 6);
46
+ this.kupDblClick = createEvent(this, "kup-familytree-dblclick", 6);
47
+ _KupFamilyTree_instances.add(this);
48
+ /*-------------------------------------------------*/
49
+ /* P r o p s */
50
+ /*-------------------------------------------------*/
51
+ /**
52
+ * The component's initial render will fit the container.
53
+ * @default true
54
+ */
55
+ this.autofit = true;
56
+ /**
57
+ * Nodes can be expanded/collapsed.
58
+ * @default true
59
+ */
60
+ this.collapsible = true;
61
+ /**
62
+ * Custom style of the component.
63
+ * @default ""
64
+ * @see https://ketchup.smeup.com/ketchup-showcase/#/customization
65
+ */
66
+ this.customStyle = '';
67
+ /**
68
+ * Actual data of the component.
69
+ * @default null
70
+ */
71
+ this.data = null;
72
+ /**
73
+ * Layout of the boxes.
74
+ * @default null
75
+ */
76
+ this.layout = null;
77
+ /*-------------------------------------------------*/
78
+ /* I n t e r n a l V a r i a b l e s */
79
+ /*-------------------------------------------------*/
80
+ _KupFamilyTree_clickTimeout.set(this, []);
81
+ _KupFamilyTree_hold.set(this, false);
82
+ _KupFamilyTree_currentPanX.set(this, 0);
83
+ _KupFamilyTree_currentPanY.set(this, 0);
84
+ _KupFamilyTree_interactableTouch.set(this, []);
85
+ _KupFamilyTree_kupManager.set(this, kupManagerInstance());
86
+ _KupFamilyTree_moveCb.set(this, (e) => {
87
+ const deltaX = e.clientX - __classPrivateFieldGet(this, _KupFamilyTree_currentPanX, "f");
88
+ const deltaY = e.clientY - __classPrivateFieldGet(this, _KupFamilyTree_currentPanY, "f");
89
+ this.rootElement.scrollTop -= deltaY;
90
+ this.rootElement.scrollLeft -= deltaX;
91
+ __classPrivateFieldSet(this, _KupFamilyTree_currentPanX, e.clientX, "f");
92
+ __classPrivateFieldSet(this, _KupFamilyTree_currentPanY, e.clientY, "f");
93
+ });
94
+ _KupFamilyTree_wrapperEl.set(this, null);
95
+ }
96
+ /*-------------------------------------------------*/
97
+ /* P u b l i c M e t h o d s */
98
+ /*-------------------------------------------------*/
99
+ /**
100
+ * Used to retrieve component's props values.
101
+ * @param {boolean} descriptions - When provided and true, the result will be the list of props with their description.
102
+ * @returns {Promise<GenericObject>} List of props as object, each key will be a prop.
103
+ */
104
+ async getProps(descriptions) {
105
+ return getProps(this, KupFamilyTreeProps, descriptions);
106
+ }
107
+ /**
108
+ * This method is used to trigger a new render of the component.
109
+ */
110
+ async refresh() {
111
+ forceUpdate(this);
112
+ }
113
+ /**
114
+ * Sets the props to the component.
115
+ * @param {GenericObject} props - Object containing props that will be set to the component.
116
+ */
117
+ async setProps(props) {
118
+ setProps(this, KupFamilyTreeProps, props);
119
+ }
120
+ /*-------------------------------------------------*/
121
+ /* L i f e c y c l e H o o k s */
122
+ /*-------------------------------------------------*/
123
+ componentWillLoad() {
124
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").debug.logLoad(this, false);
125
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").language.register(this);
126
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").theme.register(this);
127
+ }
128
+ componentDidLoad() {
129
+ __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_didLoadInteractables).call(this);
130
+ if (this.autofit) {
131
+ const parentWidth = __classPrivateFieldGet(this, _KupFamilyTree_wrapperEl, "f").clientWidth;
132
+ const childWidth = __classPrivateFieldGet(this, _KupFamilyTree_wrapperEl, "f").children[0].clientWidth;
133
+ if (childWidth > parentWidth) {
134
+ __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_autofit).call(this, parentWidth, childWidth);
135
+ }
136
+ }
137
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").debug.logLoad(this, true);
138
+ }
139
+ componentWillRender() {
140
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").debug.logRender(this, false);
141
+ }
142
+ componentDidRender() {
143
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").debug.logRender(this, true);
144
+ }
145
+ render() {
146
+ return (h(Host, { onDrag: (e) => e.preventDefault(), onPointerDown: (e) => {
147
+ e.preventDefault();
148
+ __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_startPanning).call(this, e);
149
+ }, onWheel: (e) => {
150
+ e.preventDefault();
151
+ __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_zoomTree).call(this, e);
152
+ } }, h("style", null, __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").theme.setKupStyle(this.rootElement)), h("div", { id: componentWrapperId }, __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_createTree).call(this))));
153
+ }
154
+ disconnectedCallback() {
155
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").language.unregister(this);
156
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").theme.unregister(this);
157
+ }
158
+ get rootElement() { return getElement(this); }
159
+ };
160
+ _KupFamilyTree_clickTimeout = new WeakMap(), _KupFamilyTree_hold = new WeakMap(), _KupFamilyTree_currentPanX = new WeakMap(), _KupFamilyTree_currentPanY = new WeakMap(), _KupFamilyTree_interactableTouch = new WeakMap(), _KupFamilyTree_kupManager = new WeakMap(), _KupFamilyTree_moveCb = new WeakMap(), _KupFamilyTree_wrapperEl = new WeakMap(), _KupFamilyTree_instances = new WeakSet(), _KupFamilyTree_buildChildLine = function _KupFamilyTree_buildChildLine(first, last, alone, moreTwo) {
161
+ const content = [];
162
+ content.push(h("td", { class: {
163
+ 'family-tree__line': true,
164
+ 'family-tree__line--right': !first,
165
+ 'family-tree__line--top': !first,
166
+ } }, h("div", { class: 'family-tree__line--placeholder' })));
167
+ content.push(h("td", { class: {
168
+ 'family-tree__line': true,
169
+ 'family-tree__line--left': first,
170
+ 'family-tree__line--top': (first && !alone) || (moreTwo && !last),
171
+ } }, h("div", { class: 'family-tree__line--placeholder' })));
172
+ return content;
173
+ }, _KupFamilyTree_buildNode = function _KupFamilyTree_buildNode(node) {
174
+ var _a;
175
+ let children = null;
176
+ let staffChildren = null;
177
+ if (!this.collapsible || (this.collapsible && node.isExpanded)) {
178
+ (_a = node.children) === null || _a === void 0 ? void 0 : _a.forEach((child) => {
179
+ if (child.isStaff) {
180
+ if (!staffChildren) {
181
+ staffChildren = [];
182
+ }
183
+ staffChildren.push(child);
184
+ }
185
+ else {
186
+ if (!children) {
187
+ children = [];
188
+ }
189
+ children.push(child);
190
+ }
191
+ });
192
+ }
193
+ const span1 = children ? children.length * 2 : 1;
194
+ const styleVLine = {
195
+ 'family-tree__line': true,
196
+ 'family-tree__line--placeholder': !!(children || staffChildren),
197
+ 'family-tree__line--vertical': !!(children || staffChildren),
198
+ };
199
+ const data = {
200
+ columns: [
201
+ { name: '*TREECOL', title: 'Fake column' },
202
+ ...this.data.columns,
203
+ ],
204
+ rows: [{ cells: Object.assign({ '*TREECOL': node }, node.cells) }],
205
+ };
206
+ const layout = node.layout || this.layout || null;
207
+ const expandButtonProp = {
208
+ icon: node.isExpanded ? 'remove' : 'plus',
209
+ styling: FButtonStyling.OUTLINED,
210
+ slim: true,
211
+ onClick: () => {
212
+ node.isExpanded = !node.isExpanded;
213
+ this.refresh();
214
+ },
215
+ };
216
+ const box = (h("div", { class: 'family-tree__item' }, h("div", { class: 'family-tree__item__wrapper' }, h("kup-box", { class: "kup-borderless kup-paddingless", customStyle: "#kup-component { background: var(--kup_familytree_item_background_color); box-sizing: border-box; height: var(--kup_familytree_item_height); padding: 0 var(--kup_familytree_item_h_padding); } #kup-component .box-component { background: var(--kup_familytree_item_background_color); box-sizing: border-box; height: 100%;} #kup-component .f-cell__text { color: var(--kup_familytree_item_color); }", data: data, layout: layout }), this.collapsible &&
217
+ node.children &&
218
+ node.children.length > 0 ? (h(FButton, Object.assign({}, expandButtonProp))) : undefined)));
219
+ const staffStyle = {
220
+ ['--kup_familytree_staffchildren']: (staffChildren === null || staffChildren === void 0 ? void 0 : staffChildren.length.toString()) || '0',
221
+ };
222
+ //TODO: set data-cell and data-column if needed inside events
223
+ return (h("table", { class: 'family-tree__node' }, h("tr", null, h("td", { "data-row": node, colSpan: span1 }, box)), h("tr", null, h("td", { colSpan: span1 }, h("div", { class: styleVLine }))), staffChildren
224
+ ? [
225
+ h("tr", null, h("td", { colSpan: span1 }, h("div", { class: Object.assign(Object.assign({}, styleVLine), { 'family-tree__line--staff': true }), style: staffStyle }), h("div", { class: "family-tree__node__staff", style: staffStyle }, staffChildren.map((inode) => [
226
+ h("div", { class: "family-tree__node__staff__item" }, __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_buildNode).call(this, inode)),
227
+ ])))),
228
+ ]
229
+ : null, staffChildren && children
230
+ ? [
231
+ h("tr", null, h("td", { colSpan: span1 }, h("div", { class: styleVLine }))),
232
+ h("tr", null, h("td", { colSpan: span1 }, h("div", { class: styleVLine }))),
233
+ ]
234
+ : null, children
235
+ ? [
236
+ h("tr", null, children.map((inode) => __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_buildChildLine).call(this, children.indexOf(inode) == 0, children.indexOf(inode) ==
237
+ children.length - 1, children.length == 1, children.length > 2))),
238
+ h("tr", null, children.map((inode) => (h("td", { colSpan: 2 }, __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_buildNode).call(this, inode))))),
239
+ ]
240
+ : undefined));
241
+ }, _KupFamilyTree_buildNodes = function _KupFamilyTree_buildNodes(nodes) {
242
+ return nodes.map((node) => __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_buildNode).call(this, node));
243
+ }, _KupFamilyTree_createTree = function _KupFamilyTree_createTree() {
244
+ const emptyData = !this.data || !this.data.rows || !this.data.rows.length;
245
+ return (h("div", { class: "family-tree", onContextMenu: (e) => {
246
+ e.preventDefault();
247
+ }, ref: (el) => (__classPrivateFieldSet(this, _KupFamilyTree_wrapperEl, el, "f")) }, emptyData ? (h("div", null, __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").language.translate(KupLanguageGeneric.EMPTY_DATA))) : (__classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_buildNodes).call(this, this.data.rows))));
248
+ }, _KupFamilyTree_startPanning = function _KupFamilyTree_startPanning(e) {
249
+ __classPrivateFieldSet(this, _KupFamilyTree_currentPanX, e.clientX, "f");
250
+ __classPrivateFieldSet(this, _KupFamilyTree_currentPanY, e.clientY, "f");
251
+ const endPanning = () => {
252
+ document.removeEventListener('pointermove', __classPrivateFieldGet(this, _KupFamilyTree_moveCb, "f"));
253
+ document.removeEventListener('pointerup', endPanning);
254
+ };
255
+ document.addEventListener('pointermove', __classPrivateFieldGet(this, _KupFamilyTree_moveCb, "f"));
256
+ document.addEventListener('pointerup', endPanning);
257
+ }, _KupFamilyTree_getEventPath = function _KupFamilyTree_getEventPath(currentEl) {
258
+ const path = [];
259
+ while (currentEl &&
260
+ currentEl !== this.rootElement &&
261
+ currentEl !== document.body) {
262
+ path.push(currentEl);
263
+ currentEl = currentEl.parentNode
264
+ ? currentEl.parentNode
265
+ : currentEl.host;
266
+ }
267
+ return path;
268
+ }, _KupFamilyTree_getEventDetails = function _KupFamilyTree_getEventDetails(path, e) {
269
+ let td;
270
+ if (path) {
271
+ for (let i = path.length - 1; i >= 0; i--) {
272
+ let p = path[i];
273
+ if (!p.tagName) {
274
+ continue;
275
+ }
276
+ switch (p.tagName.toUpperCase()) {
277
+ case 'TD': {
278
+ td = p;
279
+ break;
280
+ }
281
+ }
282
+ }
283
+ }
284
+ let cell = null, column = null, row = null;
285
+ if (td) {
286
+ cell = td['data-cell'];
287
+ column = td['data-column'];
288
+ row = td['data-row'];
289
+ }
290
+ return {
291
+ cell: cell ? cell : null,
292
+ column: column ? column : null,
293
+ originalEvent: e,
294
+ row: row ? row : null,
295
+ td: td ? td : null,
296
+ };
297
+ }, _KupFamilyTree_clickHandler = function _KupFamilyTree_clickHandler(e) {
298
+ const details = __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_getEventDetails).call(this, __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_getEventPath).call(this, e.target), e);
299
+ return details;
300
+ }, _KupFamilyTree_contextMenuHandler = function _KupFamilyTree_contextMenuHandler(e) {
301
+ const details = __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_getEventDetails).call(this, __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_getEventPath).call(this, e.target), e);
302
+ return details;
303
+ }, _KupFamilyTree_dblClickHandler = function _KupFamilyTree_dblClickHandler(e) {
304
+ const details = __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_getEventDetails).call(this, __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_getEventPath).call(this, e.target), e);
305
+ return details;
306
+ }, _KupFamilyTree_didLoadInteractables = function _KupFamilyTree_didLoadInteractables() {
307
+ __classPrivateFieldGet(this, _KupFamilyTree_interactableTouch, "f").push(this.rootElement);
308
+ const tapCb = (e) => {
309
+ if (__classPrivateFieldGet(this, _KupFamilyTree_hold, "f")) {
310
+ __classPrivateFieldSet(this, _KupFamilyTree_hold, false, "f");
311
+ return;
312
+ }
313
+ switch (e.button) {
314
+ // left click
315
+ case 0:
316
+ // Note: event must be cloned
317
+ // otherwise inside setTimeout will be exiting the Shadow DOM scope(causing loss of information, including target).
318
+ const clone = {};
319
+ for (const key in e) {
320
+ clone[key] = e[key];
321
+ }
322
+ __classPrivateFieldGet(this, _KupFamilyTree_clickTimeout, "f").push(setTimeout(() => {
323
+ this.kupClick.emit({
324
+ comp: this,
325
+ id: this.rootElement.id,
326
+ details: __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_clickHandler).call(this, clone),
327
+ });
328
+ }, 300));
329
+ break;
330
+ // right click
331
+ case 2:
332
+ this.kupContextMenu.emit({
333
+ comp: this,
334
+ id: this.rootElement.id,
335
+ details: __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_contextMenuHandler).call(this, e),
336
+ });
337
+ break;
338
+ }
339
+ };
340
+ const doubletapCb = (e) => {
341
+ switch (e.button) {
342
+ // left click
343
+ case 0:
344
+ for (let index = 0; index < __classPrivateFieldGet(this, _KupFamilyTree_clickTimeout, "f").length; index++) {
345
+ clearTimeout(__classPrivateFieldGet(this, _KupFamilyTree_clickTimeout, "f")[index]);
346
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").debug.logMessage(this, 'Cleared clickHandler timeout(' +
347
+ __classPrivateFieldGet(this, _KupFamilyTree_clickTimeout, "f")[index] +
348
+ ').');
349
+ }
350
+ __classPrivateFieldSet(this, _KupFamilyTree_clickTimeout, [], "f");
351
+ this.kupDblClick.emit({
352
+ comp: this,
353
+ id: this.rootElement.id,
354
+ details: __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_dblClickHandler).call(this, e),
355
+ });
356
+ break;
357
+ }
358
+ };
359
+ const holdCb = (e) => {
360
+ if (e.pointerType === 'pen' || e.pointerType === 'touch') {
361
+ __classPrivateFieldSet(this, _KupFamilyTree_hold, true, "f");
362
+ this.kupContextMenu.emit({
363
+ comp: this,
364
+ id: this.rootElement.id,
365
+ details: __classPrivateFieldGet(this, _KupFamilyTree_instances, "m", _KupFamilyTree_contextMenuHandler).call(this, e),
366
+ });
367
+ }
368
+ };
369
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").interact.on(this.rootElement, KupPointerEventTypes.TAP, tapCb);
370
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").interact.on(this.rootElement, KupPointerEventTypes.DOUBLETAP, doubletapCb);
371
+ __classPrivateFieldGet(this, _KupFamilyTree_kupManager, "f").interact.on(this.rootElement, KupPointerEventTypes.HOLD, holdCb);
372
+ }, _KupFamilyTree_zoomTree = function _KupFamilyTree_zoomTree(event) {
373
+ const current = parseFloat(__classPrivateFieldGet(this, _KupFamilyTree_wrapperEl, "f").style.getPropertyValue('--kup_familytree_scale')) || 1;
374
+ const delta = 0.05;
375
+ let value = event.deltaY > 0 ? current - delta : current + delta;
376
+ if (value < delta) {
377
+ value = delta;
378
+ }
379
+ __classPrivateFieldGet(this, _KupFamilyTree_wrapperEl, "f").style.setProperty('--kup_familytree_scale', value.toFixed(2));
380
+ }, _KupFamilyTree_autofit = function _KupFamilyTree_autofit(parentWidth, childWidth) {
381
+ const multiplierStep = 0.01;
382
+ const minWidth = (85 / 100) * parentWidth;
383
+ const maxWidth = (95 / 100) * parentWidth;
384
+ let multiplier = 1;
385
+ let tooManyAttempts = 2000;
386
+ let tempWidth = childWidth;
387
+ while ((tempWidth < minWidth || tempWidth > maxWidth) &&
388
+ tooManyAttempts > 0 &&
389
+ multiplier > multiplierStep) {
390
+ tooManyAttempts--;
391
+ if (tempWidth < minWidth) {
392
+ multiplier = multiplier + multiplierStep;
393
+ }
394
+ else if (tempWidth > maxWidth) {
395
+ multiplier = multiplier - multiplierStep;
396
+ }
397
+ else {
398
+ tooManyAttempts = 0;
399
+ }
400
+ tempWidth = childWidth * multiplier;
401
+ }
402
+ __classPrivateFieldGet(this, _KupFamilyTree_wrapperEl, "f").style.setProperty('--kup_familytree_scale', multiplier.toFixed(2));
403
+ };
404
+ KupFamilyTree.style = kupFamilyTreeCss;
405
+
406
+ export { KupFamilyTree as kup_family_tree };