@sme.up/ketchup 11.0.0-SNAPSHOT-20241030100919 → 11.0.0-SNAPSHOT-20241030162740

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 (173) hide show
  1. package/dist/cjs/{f-cell-784e142a.js → f-cell-ccde7158.js} +4 -4
  2. package/dist/cjs/{f-cell-784e142a.js.map → f-cell-ccde7158.js.map} +1 -1
  3. package/dist/cjs/{f-chip-af09446d.js → f-chip-dbe137ed.js} +2 -2
  4. package/dist/cjs/{f-chip-af09446d.js.map → f-chip-dbe137ed.js.map} +1 -1
  5. package/dist/cjs/{f-paginator-utils-662821e2.js → f-paginator-utils-4cf8ac1e.js} +2 -2
  6. package/dist/cjs/{f-paginator-utils-662821e2.js.map → f-paginator-utils-4cf8ac1e.js.map} +1 -1
  7. package/dist/cjs/{f-text-field-02d9d284.js → f-text-field-8b373b26.js} +2 -2
  8. package/dist/cjs/{f-text-field-02d9d284.js.map → f-text-field-8b373b26.js.map} +1 -1
  9. package/dist/cjs/index.cjs.js +1 -1
  10. package/dist/cjs/kup-accordion.cjs.entry.js +1 -1
  11. package/dist/cjs/kup-activity-timeline.cjs.entry.js +2 -2
  12. package/dist/cjs/kup-autocomplete_28.cjs.entry.js +6 -6
  13. package/dist/cjs/kup-box.cjs.entry.js +6 -6
  14. package/dist/cjs/kup-calendar.cjs.entry.js +2 -2
  15. package/dist/cjs/kup-card-list.cjs.entry.js +1 -1
  16. package/dist/cjs/kup-cell.cjs.entry.js +4 -4
  17. package/dist/cjs/kup-dashboard.cjs.entry.js +2 -2
  18. package/dist/cjs/{kup-data-table-helper-d5528bc5.js → kup-data-table-helper-bef7a94e.js} +2 -2
  19. package/dist/cjs/{kup-data-table-helper-d5528bc5.js.map → kup-data-table-helper-bef7a94e.js.map} +1 -1
  20. package/dist/cjs/kup-drawer.cjs.entry.js +1 -1
  21. package/dist/cjs/kup-echart.cjs.entry.js +1 -1
  22. package/dist/cjs/kup-editor.cjs.entry.js +1 -1
  23. package/dist/cjs/kup-family-tree.cjs.entry.js +1 -1
  24. package/dist/cjs/kup-grid.cjs.entry.js +1 -1
  25. package/dist/cjs/kup-htm.cjs.entry.js +1 -1
  26. package/dist/cjs/kup-iframe.cjs.entry.js +1 -1
  27. package/dist/cjs/kup-image-list.cjs.entry.js +4 -4
  28. package/dist/cjs/kup-input-panel.cjs.entry.js +97 -56
  29. package/dist/cjs/kup-input-panel.cjs.entry.js.map +1 -1
  30. package/dist/cjs/kup-lazy.cjs.entry.js +1 -1
  31. package/dist/cjs/kup-magic-box.cjs.entry.js +1 -1
  32. package/dist/cjs/{kup-manager-189eaf63.js → kup-manager-6e414e08.js} +6 -3
  33. package/dist/cjs/kup-manager-6e414e08.js.map +1 -0
  34. package/dist/cjs/kup-nav-bar.cjs.entry.js +1 -1
  35. package/dist/cjs/kup-numeric-picker.cjs.entry.js +2 -2
  36. package/dist/cjs/kup-pdf.cjs.entry.js +1 -1
  37. package/dist/cjs/kup-photo-frame.cjs.entry.js +1 -1
  38. package/dist/cjs/kup-planner.cjs.entry.js +2 -2
  39. package/dist/cjs/kup-probe.cjs.entry.js +1 -1
  40. package/dist/cjs/kup-qlik.cjs.entry.js +1 -1
  41. package/dist/cjs/kup-snackbar.cjs.entry.js +1 -1
  42. package/dist/cjs/kup-typography-list.cjs.entry.js +1 -1
  43. package/dist/cjs/kup-typography.cjs.entry.js +1 -1
  44. package/dist/collection/components/kup-input-panel/kup-input-panel.js +93 -52
  45. package/dist/collection/components/kup-input-panel/kup-input-panel.js.map +1 -1
  46. package/dist/collection/managers/kup-language/kup-language-declarations.js +1 -0
  47. package/dist/collection/managers/kup-language/kup-language-declarations.js.map +1 -1
  48. package/dist/components/kup-input-panel.js +93 -52
  49. package/dist/components/kup-input-panel.js.map +1 -1
  50. package/dist/components/kup-manager.js +5 -2
  51. package/dist/components/kup-manager.js.map +1 -1
  52. package/dist/esm/{f-cell-9f52a30a.js → f-cell-e6b53a87.js} +4 -4
  53. package/dist/esm/{f-cell-9f52a30a.js.map → f-cell-e6b53a87.js.map} +1 -1
  54. package/dist/esm/{f-chip-dd98e13c.js → f-chip-ebf776f3.js} +2 -2
  55. package/dist/esm/{f-chip-dd98e13c.js.map → f-chip-ebf776f3.js.map} +1 -1
  56. package/dist/esm/{f-paginator-utils-72800ef7.js → f-paginator-utils-2aac0d1a.js} +2 -2
  57. package/dist/esm/{f-paginator-utils-72800ef7.js.map → f-paginator-utils-2aac0d1a.js.map} +1 -1
  58. package/dist/esm/{f-text-field-81c7e63b.js → f-text-field-ca6c5386.js} +2 -2
  59. package/dist/esm/{f-text-field-81c7e63b.js.map → f-text-field-ca6c5386.js.map} +1 -1
  60. package/dist/esm/index.js +1 -1
  61. package/dist/esm/kup-accordion.entry.js +1 -1
  62. package/dist/esm/kup-activity-timeline.entry.js +2 -2
  63. package/dist/esm/kup-autocomplete_28.entry.js +6 -6
  64. package/dist/esm/kup-box.entry.js +6 -6
  65. package/dist/esm/kup-calendar.entry.js +2 -2
  66. package/dist/esm/kup-card-list.entry.js +1 -1
  67. package/dist/esm/kup-cell.entry.js +4 -4
  68. package/dist/esm/kup-dashboard.entry.js +2 -2
  69. package/dist/esm/{kup-data-table-helper-52b21f9e.js → kup-data-table-helper-2ff0b12a.js} +2 -2
  70. package/dist/esm/{kup-data-table-helper-52b21f9e.js.map → kup-data-table-helper-2ff0b12a.js.map} +1 -1
  71. package/dist/esm/kup-drawer.entry.js +1 -1
  72. package/dist/esm/kup-echart.entry.js +1 -1
  73. package/dist/esm/kup-editor.entry.js +1 -1
  74. package/dist/esm/kup-family-tree.entry.js +1 -1
  75. package/dist/esm/kup-grid.entry.js +1 -1
  76. package/dist/esm/kup-htm.entry.js +1 -1
  77. package/dist/esm/kup-iframe.entry.js +1 -1
  78. package/dist/esm/kup-image-list.entry.js +4 -4
  79. package/dist/esm/kup-input-panel.entry.js +97 -56
  80. package/dist/esm/kup-input-panel.entry.js.map +1 -1
  81. package/dist/esm/kup-lazy.entry.js +1 -1
  82. package/dist/esm/kup-magic-box.entry.js +1 -1
  83. package/dist/esm/{kup-manager-ee1e7cd4.js → kup-manager-1d6b8b1a.js} +6 -3
  84. package/dist/esm/kup-manager-1d6b8b1a.js.map +1 -0
  85. package/dist/esm/kup-nav-bar.entry.js +1 -1
  86. package/dist/esm/kup-numeric-picker.entry.js +2 -2
  87. package/dist/esm/kup-pdf.entry.js +1 -1
  88. package/dist/esm/kup-photo-frame.entry.js +1 -1
  89. package/dist/esm/kup-planner.entry.js +2 -2
  90. package/dist/esm/kup-probe.entry.js +1 -1
  91. package/dist/esm/kup-qlik.entry.js +1 -1
  92. package/dist/esm/kup-snackbar.entry.js +1 -1
  93. package/dist/esm/kup-typography-list.entry.js +1 -1
  94. package/dist/esm/kup-typography.entry.js +1 -1
  95. package/dist/ketchup/index.esm.js +1 -1
  96. package/dist/ketchup/ketchup.esm.js +1 -1
  97. package/dist/ketchup/{p-80928c2c.entry.js → p-0b4f6874.entry.js} +2 -2
  98. package/dist/ketchup/{p-24ff4213.entry.js → p-16e93198.entry.js} +2 -2
  99. package/dist/ketchup/{p-69012c53.entry.js → p-18481eec.entry.js} +2 -2
  100. package/dist/ketchup/{p-602cd520.entry.js → p-192c022f.entry.js} +2 -2
  101. package/dist/ketchup/{p-20bae24d.entry.js → p-196f3059.entry.js} +2 -2
  102. package/dist/ketchup/{p-25355f43.entry.js → p-2389ccc1.entry.js} +2 -2
  103. package/dist/ketchup/{p-f0be4c49.entry.js → p-4799c97f.entry.js} +2 -2
  104. package/dist/ketchup/{p-4a98256d.entry.js → p-587e12b4.entry.js} +2 -2
  105. package/dist/ketchup/{p-5ae04be3.entry.js → p-607b83f5.entry.js} +2 -2
  106. package/dist/ketchup/{p-f08e6820.entry.js → p-62596f5d.entry.js} +2 -2
  107. package/dist/ketchup/p-63683279.entry.js +2 -0
  108. package/dist/ketchup/p-63683279.entry.js.map +1 -0
  109. package/dist/ketchup/{p-2ebedaaa.entry.js → p-67763e23.entry.js} +2 -2
  110. package/dist/ketchup/{p-fd00900c.entry.js → p-7cdceaea.entry.js} +2 -2
  111. package/dist/ketchup/{p-b2875c24.js → p-7d7b8718.js} +2 -2
  112. package/dist/ketchup/{p-6e258e44.entry.js → p-853e2b1d.entry.js} +2 -2
  113. package/dist/ketchup/p-86b6489e.js +29 -0
  114. package/dist/{cjs/kup-manager-189eaf63.js.map → ketchup/p-86b6489e.js.map} +1 -1
  115. package/dist/ketchup/{p-7728ffb2.entry.js → p-8ab1203f.entry.js} +2 -2
  116. package/dist/ketchup/{p-8de170dd.entry.js → p-8e844b9d.entry.js} +2 -2
  117. package/dist/ketchup/{p-b8c8d7b8.entry.js → p-9da57972.entry.js} +2 -2
  118. package/dist/ketchup/{p-3dde5808.js → p-a16707d1.js} +2 -2
  119. package/dist/ketchup/{p-48e9e28a.entry.js → p-a3ace76e.entry.js} +2 -2
  120. package/dist/ketchup/{p-a5329b0b.entry.js → p-a55d2c8b.entry.js} +2 -2
  121. package/dist/ketchup/{p-bec9fb36.entry.js → p-affd9a2c.entry.js} +2 -2
  122. package/dist/ketchup/{p-724a3fdb.entry.js → p-b0ca996f.entry.js} +2 -2
  123. package/dist/ketchup/{p-92f8f2a8.entry.js → p-bb7dddb3.entry.js} +2 -2
  124. package/dist/ketchup/{p-2bf4b018.entry.js → p-c4ae346f.entry.js} +2 -2
  125. package/dist/ketchup/{p-6e7863c6.entry.js → p-cc901eb3.entry.js} +2 -2
  126. package/dist/ketchup/{p-7fbb3587.entry.js → p-d5325eb6.entry.js} +2 -2
  127. package/dist/ketchup/{p-444237dd.entry.js → p-d6243c07.entry.js} +2 -2
  128. package/dist/ketchup/{p-f28e4d30.entry.js → p-deb86dcb.entry.js} +2 -2
  129. package/dist/ketchup/{p-2049ede1.js → p-e9388650.js} +2 -2
  130. package/dist/ketchup/{p-ba47d93e.js → p-f3f54269.js} +2 -2
  131. package/dist/ketchup/{p-15ed7d99.entry.js → p-f59fb7d0.entry.js} +2 -2
  132. package/dist/ketchup/{p-dd80dcd1.entry.js → p-f607dc0d.entry.js} +2 -2
  133. package/dist/ketchup/{p-1cb80f82.js → p-fe31a004.js} +2 -2
  134. package/dist/types/managers/kup-language/kup-language-declarations.d.ts +2 -1
  135. package/package.json +1 -1
  136. package/dist/esm/kup-manager-ee1e7cd4.js.map +0 -1
  137. package/dist/ketchup/p-49a79002.js +0 -29
  138. package/dist/ketchup/p-49a79002.js.map +0 -1
  139. package/dist/ketchup/p-70d05775.entry.js +0 -2
  140. package/dist/ketchup/p-70d05775.entry.js.map +0 -1
  141. /package/dist/ketchup/{p-80928c2c.entry.js.map → p-0b4f6874.entry.js.map} +0 -0
  142. /package/dist/ketchup/{p-24ff4213.entry.js.map → p-16e93198.entry.js.map} +0 -0
  143. /package/dist/ketchup/{p-69012c53.entry.js.map → p-18481eec.entry.js.map} +0 -0
  144. /package/dist/ketchup/{p-602cd520.entry.js.map → p-192c022f.entry.js.map} +0 -0
  145. /package/dist/ketchup/{p-20bae24d.entry.js.map → p-196f3059.entry.js.map} +0 -0
  146. /package/dist/ketchup/{p-25355f43.entry.js.map → p-2389ccc1.entry.js.map} +0 -0
  147. /package/dist/ketchup/{p-f0be4c49.entry.js.map → p-4799c97f.entry.js.map} +0 -0
  148. /package/dist/ketchup/{p-4a98256d.entry.js.map → p-587e12b4.entry.js.map} +0 -0
  149. /package/dist/ketchup/{p-5ae04be3.entry.js.map → p-607b83f5.entry.js.map} +0 -0
  150. /package/dist/ketchup/{p-f08e6820.entry.js.map → p-62596f5d.entry.js.map} +0 -0
  151. /package/dist/ketchup/{p-2ebedaaa.entry.js.map → p-67763e23.entry.js.map} +0 -0
  152. /package/dist/ketchup/{p-fd00900c.entry.js.map → p-7cdceaea.entry.js.map} +0 -0
  153. /package/dist/ketchup/{p-b2875c24.js.map → p-7d7b8718.js.map} +0 -0
  154. /package/dist/ketchup/{p-6e258e44.entry.js.map → p-853e2b1d.entry.js.map} +0 -0
  155. /package/dist/ketchup/{p-7728ffb2.entry.js.map → p-8ab1203f.entry.js.map} +0 -0
  156. /package/dist/ketchup/{p-8de170dd.entry.js.map → p-8e844b9d.entry.js.map} +0 -0
  157. /package/dist/ketchup/{p-b8c8d7b8.entry.js.map → p-9da57972.entry.js.map} +0 -0
  158. /package/dist/ketchup/{p-3dde5808.js.map → p-a16707d1.js.map} +0 -0
  159. /package/dist/ketchup/{p-48e9e28a.entry.js.map → p-a3ace76e.entry.js.map} +0 -0
  160. /package/dist/ketchup/{p-a5329b0b.entry.js.map → p-a55d2c8b.entry.js.map} +0 -0
  161. /package/dist/ketchup/{p-bec9fb36.entry.js.map → p-affd9a2c.entry.js.map} +0 -0
  162. /package/dist/ketchup/{p-724a3fdb.entry.js.map → p-b0ca996f.entry.js.map} +0 -0
  163. /package/dist/ketchup/{p-92f8f2a8.entry.js.map → p-bb7dddb3.entry.js.map} +0 -0
  164. /package/dist/ketchup/{p-2bf4b018.entry.js.map → p-c4ae346f.entry.js.map} +0 -0
  165. /package/dist/ketchup/{p-6e7863c6.entry.js.map → p-cc901eb3.entry.js.map} +0 -0
  166. /package/dist/ketchup/{p-7fbb3587.entry.js.map → p-d5325eb6.entry.js.map} +0 -0
  167. /package/dist/ketchup/{p-444237dd.entry.js.map → p-d6243c07.entry.js.map} +0 -0
  168. /package/dist/ketchup/{p-f28e4d30.entry.js.map → p-deb86dcb.entry.js.map} +0 -0
  169. /package/dist/ketchup/{p-2049ede1.js.map → p-e9388650.js.map} +0 -0
  170. /package/dist/ketchup/{p-ba47d93e.js.map → p-f3f54269.js.map} +0 -0
  171. /package/dist/ketchup/{p-15ed7d99.entry.js.map → p-f59fb7d0.entry.js.map} +0 -0
  172. /package/dist/ketchup/{p-dd80dcd1.entry.js.map → p-f607dc0d.entry.js.map} +0 -0
  173. /package/dist/ketchup/{p-1cb80f82.js.map → p-fe31a004.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["KupInputPanelLayoutSectionType","KupInputPanelProps","CHAR_WIDTH","ROW_HEIGHT","getAbsoluteWidth","length","getAbsoluteHeight","height","getAbsoluteTop","row","getAbsoluteLeft","col","kupInputPanelCss","KupInputPanelStyle0","dom","document","documentElement","KupInputPanel","_KupInputPanel_kupManager","set","this","kupManagerInstance","_KupInputPanel_optionsAdapterMap","Map","__classPrivateFieldGet","_KupInputPanel_instances","_KupInputPanel_treeOptionsNodeAdapter","bind","_KupInputPanel_dataTreeOptionsChildrenAdapter","_KupInputPanel_tableOptionsAdapter","_KupInputPanel_originalData","_KupInputPanel_eventNames","FCellTypes","AUTOCOMPLETE","MULTI_AUTOCOMPLETE","COMBOBOX","MULTI_COMBOBOX","_KupInputPanel_eventBlurNames","FCellShapes","CHIP","DATE","TIME","_KupInputPanel_listeners","_KupInputPanel_cellTypeComponents","_KupInputPanel_cellCustomRender","BUTTON_LIST","_KupInputPanel_renderButton","EDITOR","_KupInputPanel_renderEditor","LABEL","_KupInputPanel_renderLabel","TABLE","_KupInputPanel_renderDataTable","_KupInputPanel_sectionRenderMap","TAB","_KupInputPanel_renderSectionTab","_KupInputPanel_keysShortcut","onDataChanged","__classPrivateFieldSet","structuredClone","data","map","event","handler","rootElement","removeEventListener","key","keysBinding","unregister","_KupInputPanel_mapCells","call","getProps","descriptions","refresh","forceUpdate","setProps","props","componentWillLoad","debug","logLoad","language","register","theme","componentDidLoad","kupReady","emit","comp","id","componentWillRender","logRender","componentDidRender","root","shadowRoot","fs","querySelectorAll","index","FTextFieldMDC","render","isEmptyData","Boolean","inputPanelCells","inputPanelContent","h","translate","KupLanguageGeneric","EMPTY_DATA","inputPanelCell","_KupInputPanel_renderRow","Host","setKupStyle","componentWrapperId","disconnectedCallback","reduce","cell","cells","find","column","name","layout","horizontal","rowContent","_a","sections","_KupInputPanel_renderCell","absolute","_KupInputPanel_renderAbsoluteLayout","_KupInputPanel_renderGridLayout","classObj","class","onSubmit","e","preventDefault","submitCb","value","before","Object","assign","after","_KupInputPanel_reverseMapCells","hiddenSubmitButton","FButton","buttonType","label","CONFIRM","wrapperClass","customRender","get","shape","undefined","cellProps","component","editable","renderKup","setSizes","_KupInputPanel_getLabelComponent","title","FCell","cellId","icon","edtCell","detail","htmlValue","replace","addEventListener","push","isReadOnly","isEditable","showToolbar","editableData","showGroups","showFilters","showFooter","cellType","ketchup","getType","RADIO","sectionRender","sectionsType","section","_KupInputPanel_renderSection","_KupInputPanel_renderAbsoluteSection","customLabelRender","styleObj","gap","content","innerSection","hasDim","some","sec","dim","gridCols","gridTemplateColumns","join","gridRows","gridTemplateRows","_b","field","_KupInputPanel_renderField","sectionContent","style","_KupInputPanel_renderAbsoluteField","width","absoluteWidth","absoluteHeight","top","absoluteRow","left","absoluteColumn","sectionStyle","position","overflow","tabSelected","tabNodes","i","cellIdsInSection","contentItem","hasError","cellData","includes","error","active","danger","sectionId","display","tabCustomStyle","l","node","customStyle","fieldCell","colSpan","colStart","colEnd","rowSpan","rowStart","rowEnd","absoluteLength","inpuPanelCells","rows","columns","filter","visible","mappedCell","_KupInputPanel_setData","slotData","_KupInputPanel_slotData","componentQuery","el","querySelector","setValue","defaultProps","_KupInputPanel_mapData","disabled","noDataProps","__rest","_KupInputPanel_deepObjectsMerge","target","source","Array","isArray","curr","updatedCells","keys","cellState","c","JSON","stringify","_KupInputPanel_getTableUpdatedCell","obj","options","fieldLabel","currentValue","dataAdapterMap","_KupInputPanel_CMBandACPAdapter","_KupInputPanel_BTNAdapter","CHART","_KupInputPanel_GRAAdapter","_KupInputPanel_CHIAdapter","CHECKBOX","_KupInputPanel_CHKAdapter","COLOR_PICKER","_KupInputPanel_CLPAdapter","_KupInputPanel_EDTAdapter","NUMBER","_KupInputPanel_NumberAdapter","_KupInputPanel_DateAdapter","OBJECT","_KupInputPanel_ObjectAdapter","_KupInputPanel_RADAdapter","STRING","_KupInputPanel_ITXAdapter","SWITCH","_KupInputPanel_SWTAdapter","_KupInputPanel_DataTableAdapter","_KupInputPanel_TimeAdapter","adapter","trailingIcon","fullWidth","showDropDownIcon","_options","_fieldLabel","inputSettings","checkObject","mandatory","_KupInputPanel_checkOnBlurEvent","CHIAdapter","sizeX","offlineMode","sizeY","_currentValue","onClick","fun","customButtonClickHandler","currentState","keyShortcut","_c","_d","rawOptions","configCMandACP","CMBandACPAdapter","evNames","evName","_KupInputPanel_getAutocompleteEventCallback","_KupInputPanel_optionsTreeComboAdapter","CHKAdapter","onBlur","_KupInputPanel_checkOnBlurProp","initialValue","RADAdapter","SWTAdapter","_rawOptions","_value","parse","logMessage","KupDebugCategory","WARNING","type","ERROR","tableValue","updated","editableColsId","beforeTableValue","updatedRow","colId","changed","option","selected","children","child","codice","testo","k","fields","open","optionsHandler","inputValue","then","currCell","_KupInputPanel_getCell","_KupInputPanel_setCellError","REQUIRED_VALUE","checkValidObjCallback","valid","INVALID_VALUE"],"sources":["src/components/kup-input-panel/kup-input-panel-declarations.ts","src/components/kup-input-panel/kup-input-panel-utils.ts","src/components/kup-input-panel/kup-input-panel.scss?tag=kup-input-panel&encapsulation=shadow","src/components/kup-input-panel/kup-input-panel.tsx"],"sourcesContent":["import { GenericObject } from '../../components';\nimport {\n KupDataCell,\n KupDataColumn,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { KupObj } from '../../managers/kup-objects/kup-objects-declarations';\n\nexport interface KupInputPanelSubmit {\n value: KupInputPanelSubmitValue;\n cell?: string;\n}\nexport interface KupInputPanelSubmitValue {\n after: KupInputPanelData;\n before: KupInputPanelData;\n}\n\nexport interface KupInputPanelData {\n columns?: KupDataColumn[];\n rows?: KupInputPanelRow[];\n actions?: KupInputPanelAction[];\n}\n\nexport interface KupInputPanelAction {\n type?: string;\n fun?: string;\n}\n\nexport interface KupInputPanelColumn {\n name: string;\n title: string;\n visible?: boolean;\n}\n\nexport interface KupInputPanelRow {\n cells?: KupInputPanelRowCells;\n layout?: KupInputPanelLayout;\n}\n\nexport interface KupInputPanelRowCells {\n [key: string]: KupInputPanelCell;\n}\n\nexport interface KupInputPanelCell extends KupDataCell {\n options?: GenericObject | GenericObject[];\n editable?: boolean;\n mandatory?: boolean;\n inputSettings?: GenericObject;\n fun?: string;\n}\n\nexport interface KupInputPanelCellOptions {\n id: string;\n label: string;\n}\n\nexport interface KupInputPanelLayout {\n horizontal?: boolean;\n absolute?: boolean;\n sections?: KupInputPanelLayoutSection[];\n sectionsType?: KupInputPanelLayoutSectionType;\n}\n\nexport enum KupInputPanelLayoutSectionType {\n TAB = 'tab',\n}\n\nexport interface KupInputPanelLayoutSection {\n id?: string;\n title?: string;\n icon?: string;\n content?: KupInputPanelLayoutField[];\n sections?: KupInputPanelLayoutSection[];\n dim?: string;\n horizontal?: boolean;\n gridCols?: number;\n gridRows?: number;\n // Gap is in rem\n gap?: number;\n sectionsType?: KupInputPanelLayoutSectionType;\n // absolute Attributes\n absoluteColumn?: number;\n absoluteWidth?: number;\n absoluteRow?: number;\n absoluteHeight?: number;\n}\n\nexport interface KupInputPanelLayoutField {\n id: string;\n // Span is referred to start\n colSpan?: number;\n colStart?: number;\n colEnd?: number;\n // Span is referred to start\n rowSpan?: number;\n rowStart?: number;\n rowEnd?: number;\n // absolute Attributes\n absoluteColumn?: number;\n absoluteRow?: number;\n absoluteLength?: number;\n}\n\nexport type DataAdapterFn = (\n options: GenericObject,\n fieldLabel: string,\n currentValue: string,\n cell?: KupInputPanelCell,\n id?: string\n) => Object;\n\nexport type InputPanelCells = {\n cells: { cell: KupDataCell; column: KupDataColumn }[];\n row?: KupInputPanelRow;\n};\n\nexport type InputPanelEvent = {\n state: { cell: KupDataCell; column: KupDataColumn }[];\n data: {\n field: string;\n value: number | string | object;\n };\n};\n\nexport type InputPanelOptionsHandler = (\n fun: string,\n inputValue: string,\n currentState: KupInputPanelData,\n cellId: string\n) => Promise<GenericObject>;\n\nexport type InputPanelCheckValidObjCallback = (event: {\n obj: KupObj;\n currentState: KupInputPanelData;\n fun?: string;\n}) => Promise<ValidCheckObjResponse>;\n\nexport interface ValidCheckObjResponse {\n valid: boolean;\n}\n\nexport type InputPanelButtonClickHandler = (event: {\n fun: string;\n cellId: string;\n currentState: KupInputPanelData;\n}) => void;\n\nexport enum KupInputPanelProps {\n customStyle = 'Custom style of the component.',\n data = 'Actual data of the input panel.',\n hiddenSubmitButton = 'Creates a hidden submit button in order to submit the form with enter.',\n submitCb = 'Sets the callback function on submit form',\n optionsHandler = 'Sets the callback function to recieve options',\n}\n","const CHAR_WIDTH = 12;\nconst ROW_HEIGHT = 22;\n\nexport const getAbsoluteWidth = (length: number) => {\n if (length == 0) {\n return CHAR_WIDTH / 2;\n }\n\n if (!length) {\n return null;\n }\n\n if (length === 1) {\n return 1.5 * CHAR_WIDTH;\n }\n\n return length * CHAR_WIDTH;\n};\n\nexport const getAbsoluteHeight = (height: number) => {\n if (!height) {\n return null;\n }\n\n return height * ROW_HEIGHT;\n};\n\nexport const getAbsoluteTop = (row: number) => {\n if (!row) {\n return null;\n }\n\n return (row - 1) * ROW_HEIGHT;\n};\n\nexport const getAbsoluteLeft = (col: number) => {\n if (!col) {\n return null;\n }\n\n return col * CHAR_WIDTH;\n};\n","/**\n* @prop --kup-input-panel-background-color: Sets background of the component.\n* @prop --kup-input-panel-color: Sets text color of the component.\n* @prop --kup-input-panel-font-family: Sets font family of the component.\n* @prop --kup-input-panel-font-size: Sets font size of the component.\n* @prop --kup-input-panel-label-alignment: Sets the text alignment of labels.\n* @prop --kup-input-panel-label-width: Sets the width of labels.\n* @prop --kup-input-panel-padding: Sets the padding of the input panel.\n*/\n\n:host {\n --kup_input_panel_background_color: var(\n --kup-input-panel-background-color,\n var(--kup-layer-0)\n );\n --kup_input_panel_color: var(\n --kup-input-panel-color,\n var(--kup-text-secondary)\n );\n --kup_input_panel_font_family: var(\n --kup-input-panel-font-family,\n var(--kup-font-family)\n );\n --kup_input_panel_font_size: var(\n --kup-input-panel-font-size,\n var(--kup-font-size)\n );\n --kup_input_panel_label_alignment: var(--kup-input-panel-label-alignment);\n --kup_input_panel_label_width: var(--kup-input-panel-label-width);\n --kup_input_panel_padding: var(--kup-input-panel-padding, 1em 0);\n\n .input-panel {\n background: var(--kup_input_panel_background_color);\n color: var(--kup_input_panel_color);\n display: flex;\n flex-grow: 1;\n overflow: auto;\n padding: var(--kup_input_panel_padding);\n position: relative;\n gap: 2rem;\n\n &--column {\n flex-direction: column;\n }\n\n &__section_label_container {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n }\n\n &__section {\n display: grid;\n\n .f-cell__content {\n > * {\n width: 100%;\n }\n }\n }\n\n &__horizontal-section {\n display: inline-grid;\n }\n\n .f-cell .f-checkbox .checkbox .checkbox__native-control {\n height: 40px;\n width: 40px;\n }\n\n &__label_container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n\n > .f-cell {\n flex: 1;\n }\n }\n\n &__tabs_container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n gap: 2rem;\n }\n\n .f-cell.number-cell {\n .f-cell__content {\n --kup-textfield-font-family: var(--kup_cell_font_family);\n\n font-family: var(--kup_cell_font_family);\n }\n }\n\n .input-panel-label {\n display: flex;\n width: 100%;\n height: 100%;\n align-items: center;\n justify-content: center;\n }\n\n &--absolute {\n // TODO: calc the height dynamically\n height: 40ch;\n justify-content: flex-end;\n\n .input-panel-label {\n justify-content: start;\n }\n\n .mdc-text-field {\n height: unset !important;\n }\n }\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n State,\n VNode,\n Watch,\n forceUpdate,\n h,\n} from '@stencil/core';\nimport {\n KupAutocompleteEventPayload,\n KupComboboxIconClickEventPayload,\n KupDataCell,\n KupDataTableDataset,\n KupDataTableRow,\n KupEditorEventPayload,\n KupTabBarEventPayload,\n KupTabBarNode,\n} from '../../components';\nimport { FButton } from '../../f-components/f-button/f-button';\nimport { FCell } from '../../f-components/f-cell/f-cell';\nimport {\n FCellProps,\n FCellShapes,\n FCellTypes,\n} from '../../f-components/f-cell/f-cell-declarations';\nimport { FTextFieldMDC } from '../../f-components/f-text-field/f-text-field-mdc';\nimport { KupLanguageGeneric } from '../../managers/kup-language/kup-language-declarations';\nimport {\n KupManager,\n kupManagerInstance,\n} from '../../managers/kup-manager/kup-manager';\nimport { KupDom } from '../../managers/kup-manager/kup-manager-declarations';\nimport {\n GenericObject,\n KupComponent,\n KupEventPayload,\n} from '../../types/GenericTypes';\nimport { getProps, setProps } from '../../utils/utils';\nimport { componentWrapperId } from '../../variables/GenericVariables';\nimport {\n DataAdapterFn,\n InputPanelButtonClickHandler,\n InputPanelCells,\n InputPanelCheckValidObjCallback,\n InputPanelOptionsHandler,\n KupInputPanelCell,\n KupInputPanelColumn,\n KupInputPanelData,\n KupInputPanelLayout,\n KupInputPanelLayoutField,\n KupInputPanelLayoutSection,\n KupInputPanelLayoutSectionType,\n KupInputPanelProps,\n KupInputPanelRow,\n KupInputPanelSubmit,\n} from './kup-input-panel-declarations';\nimport { KupDebugCategory } from '../../managers/kup-debug/kup-debug-declarations';\nimport {\n getAbsoluteHeight,\n getAbsoluteLeft,\n getAbsoluteTop,\n getAbsoluteWidth,\n} from './kup-input-panel-utils';\nimport {\n CHIAdapter,\n CHKAdapter,\n CMBandACPAdapter,\n RADAdapter,\n SWTAdapter,\n} from '../../utils/cell-utils';\nimport { KupObj } from '../../managers/kup-objects/kup-objects-declarations';\n\nconst dom: KupDom = document.documentElement as KupDom;\n@Component({\n tag: 'kup-input-panel',\n styleUrl: 'kup-input-panel.scss',\n shadow: true,\n})\nexport class KupInputPanel {\n /**\n * References the root HTML element of the component (<kup-form>).\n */\n @Element() rootElement: HTMLElement;\n\n //#region PROPS\n /*-------------------------------------------------*/\n /* P r o p s */\n /*-------------------------------------------------*/\n\n /**\n * Custom style of the component.\n * @default \"\"\n * @see https://smeup.github.io/ketchup/#/customization\n */\n @Prop() customStyle: string = '';\n\n /**\n * Actual data of the form.\n * @default null\n */\n @Prop() data: KupInputPanelData = null;\n\n /**\n * Creates a hidden submit button in order to submit the form with enter.\n * @default false\n */\n @Prop() hiddenSubmitButton: boolean = false;\n\n /**\n * Sets the callback function on submit form\n * @default null\n */\n @Prop() submitCb: (e: KupInputPanelSubmit) => unknown = null;\n\n /**\n * Sets the callback function on loading options via FUN\n * @default null\n */\n @Prop() optionsHandler: InputPanelOptionsHandler = null;\n\n /**\n * Sets the handler to use when click on custom buttons\n * @default null\n */\n @Prop() customButtonClickHandler?: InputPanelButtonClickHandler = null;\n\n /**\n * Sets the callback for valid the object when cell checkObject is true\n * @default null\n */\n @Prop() checkValidObjCallback?: InputPanelCheckValidObjCallback = null;\n //#endregion\n\n //#region STATES\n /*-------------------------------------------------*/\n /* S t a t e s */\n /*-------------------------------------------------*/\n\n /**\n * Values to send as props to FCell\n * @default []\n */\n @State() private inputPanelCells: InputPanelCells[] = [];\n\n /**\n * Id of selected tab if exists\n * @default null\n */\n @State() private tabSelected: string = null;\n //#endregion\n\n //#region VARIABLES\n /*-------------------------------------------------*/\n /* I n t e r n a l V a r i a b l e s */\n /*-------------------------------------------------*/\n\n #kupManager: KupManager = kupManagerInstance();\n\n #optionsAdapterMap = new Map<\n string,\n (options: any, currentValue: string) => GenericObject[]\n >([\n ['SmeupTreeNode', this.#treeOptionsNodeAdapter.bind(this)],\n ['SmeupDataTree', this.#dataTreeOptionsChildrenAdapter.bind(this)],\n ['SmeupTable', this.#tableOptionsAdapter.bind(this)],\n ['SmeupDataTable', this.#tableOptionsAdapter.bind(this)],\n ]);\n\n #originalData: KupInputPanelData = null;\n\n #eventNames = new Map<FCellTypes, string[]>([\n [\n FCellTypes.AUTOCOMPLETE,\n ['kup-autocomplete-input', 'kup-autocomplete-iconclick'],\n ],\n [\n FCellTypes.MULTI_AUTOCOMPLETE,\n ['kup-autocomplete-input', 'kup-autocomplete-iconclick'],\n ],\n [FCellTypes.COMBOBOX, ['kup-combobox-iconclick', 'kup-combobox-blur']],\n [FCellTypes.MULTI_COMBOBOX, ['kup-combobox-iconclick']],\n ]);\n\n #eventBlurNames = new Map<FCellShapes, string>([\n [FCellShapes.AUTOCOMPLETE, 'kup-autocomplete-blur'],\n [FCellShapes.CHIP, 'kup-textfield-blur'],\n [FCellShapes.COMBOBOX, 'kup-combobox-blur'],\n [FCellShapes.DATE, 'kup-datepicker-blur'],\n [FCellShapes.MULTI_AUTOCOMPLETE, 'kup-autocomplete-blur'],\n [FCellShapes.MULTI_COMBOBOX, 'kup-combobox-blur'],\n [FCellShapes.TIME, 'kup-timepicker-blur'],\n ]);\n\n #listeners: { event: string; handler: (e) => void }[] = [];\n #cellTypeComponents: Map<FCellTypes, string> = new Map<FCellTypes, string>([\n [FCellTypes.DATE, 'kup-date-picker'],\n [FCellTypes.TIME, 'kup-time-picker'],\n ]);\n #cellCustomRender: Map<\n FCellShapes,\n (cell: KupDataCell, cellId: string) => any\n > = new Map<FCellShapes, (cell: KupDataCell, cellId: string) => any>([\n [FCellShapes.BUTTON_LIST, this.#renderButton.bind(this)],\n [FCellShapes.EDITOR, this.#renderEditor.bind(this)],\n [FCellShapes.LABEL, this.#renderLabel.bind(this)],\n [FCellShapes.TABLE, this.#renderDataTable.bind(this)],\n ]);\n #sectionRenderMap: Map<\n KupInputPanelLayoutSectionType,\n (cells: InputPanelCells, sections: KupInputPanelLayoutSection[]) => any\n > = new Map<\n KupInputPanelLayoutSectionType,\n (cells: InputPanelCells, sections: KupInputPanelLayoutSection[]) => any\n >([\n [KupInputPanelLayoutSectionType.TAB, this.#renderSectionTab.bind(this)],\n ]);\n #keysShortcut: string[] = [];\n //#endregion\n\n //#region WATCHERS\n /*-------------------------------------------------*/\n /* W a t c h e r s */\n /*-------------------------------------------------*/\n\n @Watch('data')\n onDataChanged() {\n this.#originalData = structuredClone(this.data);\n if (this.#listeners.length) {\n this.#listeners.map(({ event, handler }) => {\n this.rootElement.removeEventListener(event, handler);\n });\n this.#listeners = [];\n }\n\n if (this.#keysShortcut.length) {\n this.#keysShortcut.map((key) => {\n this.#kupManager.keysBinding.unregister(key);\n });\n this.#keysShortcut = [];\n }\n this.#mapCells(this.data);\n }\n //#endregion\n\n //#region PUBLIC METHODS\n /*-------------------------------------------------*/\n /* P u b l i c M e t h o d s */\n /*-------------------------------------------------*/\n\n /**\n * Used to retrieve component's props values.\n * @param {boolean} descriptions - When provided and true, the result will be the list of props with their description.\n * @returns {Promise<GenericObject>} List of props as object, each key will be a prop.\n */\n @Method()\n async getProps(descriptions?: boolean): Promise<GenericObject> {\n return getProps(this, KupInputPanelProps, descriptions);\n }\n /**\n * This method is used to trigger a new render of the component.\n */\n @Method()\n async refresh(): Promise<void> {\n forceUpdate(this);\n }\n /**\n * Sets the props to the component.\n * @param {GenericObject} props - Object containing props that will be set to the component.\n */\n @Method()\n async setProps(props: GenericObject): Promise<void> {\n setProps(this, KupInputPanelProps, props);\n }\n //#endregion\n\n //#region EVENTS\n /*-------------------------------------------------*/\n /* Events */\n /*-------------------------------------------------*/\n\n /**\n * When component load is complete\n */\n @Event({\n eventName: 'kup-input-panel-ready',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupReady: EventEmitter<KupEventPayload>;\n //#endregion\n\n //#region PRIVATE METHODS\n /*-------------------------------------------------*/\n /* P r i v a t e M e t h o d s */\n /*-------------------------------------------------*/\n\n #getCell(id: string) {\n return this.inputPanelCells.reduce<KupDataCell>((cell, { cells }) => {\n if (!cell) {\n return cells.find(({ column }) => column.name === id).cell;\n }\n return cell;\n }, null);\n }\n\n #renderRow(inputPanelCell: InputPanelCells) {\n const layout = inputPanelCell.row.layout;\n\n const horizontal = layout?.horizontal || false;\n\n let rowContent: VNode[];\n\n if (!layout?.sections?.length) {\n rowContent = inputPanelCell.cells.map((cell) =>\n this.#renderCell(cell.cell, inputPanelCell.row, cell.column)\n );\n } else {\n rowContent = layout.absolute\n ? this.#renderAbsoluteLayout(inputPanelCell, layout)\n : this.#renderGridLayout(inputPanelCell, layout);\n }\n\n const classObj = {\n 'input-panel': true,\n 'input-panel--column': !horizontal,\n 'input-panel--absolute': layout?.absolute,\n };\n\n // We create a form for each row in data\n return (\n <form\n class={classObj}\n name={this.rootElement.id}\n onSubmit={(e: SubmitEvent) => {\n e.preventDefault();\n this.submitCb({\n value: {\n before: { ...this.#originalData },\n after: this.#reverseMapCells(),\n },\n });\n }}\n >\n {rowContent}\n {!this.hiddenSubmitButton ? (\n <FButton\n buttonType=\"submit\"\n label={this.#kupManager.language.translate(\n KupLanguageGeneric.CONFIRM\n )}\n wrapperClass=\"form__submit\"\n ></FButton>\n ) : null}\n </form>\n );\n }\n\n #renderCell(\n cell: KupDataCell,\n row: KupInputPanelRow,\n column: KupInputPanelColumn\n ) {\n if (!cell) {\n return;\n }\n\n const customRender = this.#cellCustomRender.get(cell.shape);\n\n if (customRender !== undefined) {\n return customRender(cell, column.name);\n }\n\n const cellProps: FCellProps = {\n cell,\n column,\n row,\n component: this,\n editable: true,\n renderKup: true,\n setSizes: true,\n };\n\n const label = this.#getLabelComponent(cell, column.title);\n\n if (label) {\n return (\n <div class={{ 'input-panel__label_container': true }}>\n {label}\n <FCell {...cellProps} />\n </div>\n );\n }\n\n return <FCell {...cellProps} />;\n }\n\n #renderButton(cell: KupDataCell, cellId: string) {\n return (\n <FButton\n icon={cell.icon}\n id={cellId}\n {...cell.data}\n wrapperClass=\"form__submit\"\n ></FButton>\n );\n }\n\n #renderEditor(cell: KupDataCell, cellId: string) {\n const event = 'kup-editor-save';\n const handler = (e: CustomEvent<KupEditorEventPayload>) => {\n const edtCell: KupDataCell =\n this.inputPanelCells.reduce<KupDataCell>((cell, { cells }) => {\n if (!cell) {\n return cells.find(\n ({ column }) => column.name === cellId\n ).cell;\n }\n return cell;\n }, null);\n edtCell.value = e.detail.htmlValue.replace(/\\n/g, '<br>');\n };\n\n this.rootElement.addEventListener(event, handler);\n\n this.#listeners.push({\n event,\n handler,\n });\n\n return (\n <kup-editor\n {...cell.data}\n id={cellId}\n isReadOnly={!cell.isEditable}\n showToolbar={true}\n ></kup-editor>\n );\n }\n\n #renderDataTable(cell: KupDataCell, cellId: string) {\n return (\n <kup-data-table\n id={cellId}\n editableData={true}\n showGroups={true}\n showFilters={true}\n showFooter={true}\n {...cell.data}\n ></kup-data-table>\n );\n }\n\n #renderLabel(cell: KupDataCell, cellId: string) {\n return (\n <span class=\"input-panel-label\" id={cellId}>\n {cell.value}\n </span>\n );\n }\n\n #getLabelComponent(cell: KupDataCell, label: string) {\n if (!label) {\n return null;\n }\n\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n if (cellType === FCellTypes.RADIO) {\n return <span>{label}</span>;\n }\n\n return null;\n }\n\n #renderGridLayout(\n inputPanelCell: InputPanelCells,\n layout: KupInputPanelLayout\n ) {\n const sectionRender = this.#sectionRenderMap.get(layout.sectionsType);\n\n return sectionRender\n ? sectionRender(inputPanelCell, layout.sections)\n : layout.sections.map((section) =>\n this.#renderSection(inputPanelCell, section)\n );\n }\n\n #renderAbsoluteLayout(\n inputPanelCell: InputPanelCells,\n layout: KupInputPanelLayout\n ) {\n return layout.sections.map((section) =>\n this.#renderAbsoluteSection(inputPanelCell, section)\n );\n }\n\n #renderSection(\n cells: InputPanelCells,\n section: KupInputPanelLayoutSection,\n customLabelRender: boolean = false,\n styleObj: GenericObject = {}\n ) {\n const classObj = {\n 'input-panel__section': !section.horizontal,\n 'input-panel__horizontal-section': section.horizontal,\n };\n\n styleObj.gap = +section.gap > 0 ? `${section.gap}rem` : '1rem';\n\n let content = [];\n\n if (section.sections?.length) {\n content = section.sections.map((innerSection) =>\n this.#renderSection(cells, innerSection)\n );\n\n const hasDim = section.sections.some((sec) => sec.dim);\n\n if (!section.gridCols && section.horizontal) {\n styleObj.gridTemplateColumns = hasDim\n ? section.sections.map((sec) => sec.dim || 'auto').join(' ')\n : `repeat(${section.sections.length}, 1fr)`;\n }\n\n if (!section.gridRows && !section.horizontal) {\n styleObj.gridTemplateRows = hasDim\n ? section.sections.map((sec) => sec.dim || 'auto').join(' ')\n : `repeat(${section.sections.length}, 1fr)`;\n }\n } else if (section.content?.length) {\n content = section.content.map((field) =>\n this.#renderField(cells, field)\n );\n styleObj.gridTemplateColumns =\n +section.gridCols > 0 ? `repeat(${section.gridCols}, 1fr)` : '';\n\n styleObj.gridTemplateRows =\n +section.gridRows > 0 ? `repeat(${section.gridRows}, 1fr)` : '';\n }\n\n const sectionContent = (\n <div class={classObj} style={styleObj}>\n {content}\n </div>\n );\n\n return section.title && !customLabelRender ? (\n <div class={{ 'input-panel__section_label_container': true }}>\n <h3>{section.title}</h3>\n {sectionContent}\n </div>\n ) : (\n sectionContent\n );\n }\n\n #renderAbsoluteSection(\n cells: InputPanelCells,\n section: KupInputPanelLayoutSection\n ) {\n let content = [];\n\n if (section.sections?.length) {\n content = section.sections.map((innerSection) =>\n this.#renderAbsoluteSection(cells, innerSection)\n );\n } else if (section.content?.length) {\n content = section.content.map((field) =>\n this.#renderAbsoluteField(cells, field)\n );\n }\n\n const width = `${getAbsoluteWidth(section.absoluteWidth)}px`;\n const height = `${getAbsoluteHeight(section.absoluteHeight)}px`;\n const top = `${getAbsoluteTop(section.absoluteRow)}px`;\n const left = `${getAbsoluteLeft(section.absoluteColumn)}px`;\n\n const sectionStyle = {\n position: 'absolute',\n width,\n 'min-width': width,\n 'max-width': width,\n height,\n 'min-height': height,\n 'max-height': height,\n top,\n left,\n overflow: 'auto',\n };\n\n return <div style={sectionStyle}>{content}</div>;\n }\n\n #renderSectionTab(\n cells: InputPanelCells,\n sections: KupInputPanelLayoutSection[]\n ) {\n if (!this.tabSelected) {\n this.tabSelected = sections[0].id || '0';\n }\n\n const tabNodes: KupTabBarNode[] = sections.map((section, i) => {\n const cellIdsInSection = section.content.map(\n (contentItem) => contentItem.id\n );\n\n const hasError = cells.cells.some((cellData) => {\n const cell = cellData.cell;\n const column = cellData.column;\n return (\n cellIdsInSection.includes(column.name) && !!cell.data?.error\n );\n });\n\n return {\n active: (section.id || `${i}`) === this.tabSelected,\n value: section.title,\n icon: hasError ? 'error' : section.icon,\n id: section.id || `${i}`,\n danger: hasError,\n };\n });\n\n const sectionContent = sections.map((section, i) => {\n const sectionId = section.id || `${i}`;\n return this.#renderSection(cells, section, true, {\n display: this.tabSelected !== sectionId ? 'none' : 'grid',\n });\n });\n\n const tabCustomStyle =\n '.tab-bar .tab-scroller .tab .tab__content { justify-content: flex-start; }';\n\n if (!this.#listeners.map((l) => l.event).includes('kup-tabbar-click')) {\n const event = 'kup-tabbar-click';\n const handler = (e: CustomEvent<KupTabBarEventPayload>) => {\n this.tabSelected = e.detail.node.id;\n };\n\n this.rootElement.addEventListener(event, handler);\n this.#listeners.push({\n event,\n handler,\n });\n }\n\n return (\n <div class={{ 'input-panel__tabs_container': true }}>\n <kup-tab-bar\n data={tabNodes}\n customStyle={tabCustomStyle}\n ></kup-tab-bar>\n {sectionContent}\n </div>\n );\n }\n\n #renderField(cells: InputPanelCells, field: KupInputPanelLayoutField) {\n const fieldCell = cells.cells.find(\n (cell) => cell.column.name === field.id\n );\n\n const colSpan =\n +field.colSpan > 0\n ? field.colSpan\n : !(+field.colSpan > 0) && !(+field.colStart > 0)\n ? 1\n : null;\n\n const colStart = colSpan ? `span ${colSpan}` : `${field.colStart}`;\n\n const colEnd = +field.colEnd > 0 ? `${field.colEnd}` : '';\n\n const rowSpan =\n +field.rowSpan > 0\n ? field.rowSpan\n : !(+field.rowSpan > 0) && !(+field.rowStart > 0)\n ? 1\n : null;\n\n const rowStart = rowSpan ? `span ${rowSpan}` : `${field.rowStart}`;\n\n const rowEnd = +field.rowEnd > 0 ? `${field.rowEnd}` : '';\n\n const styleObj = {\n 'grid-column-start': colStart,\n 'grid-column-end': colEnd,\n 'grid-row-start': rowStart,\n 'grid-row-end': rowEnd,\n };\n\n if (!fieldCell || !fieldCell.cell) {\n return;\n }\n\n return (\n <div style={styleObj}>\n {this.#renderCell(fieldCell.cell, cells.row, fieldCell.column)}\n </div>\n );\n }\n\n #renderAbsoluteField(\n cells: InputPanelCells,\n field: KupInputPanelLayoutField\n ) {\n const fieldCell = cells.cells.find(\n (cell) => cell.column.name === field.id\n );\n if (!fieldCell || !fieldCell.cell) {\n return;\n }\n\n let length: number;\n if (fieldCell.cell.shape == FCellShapes.DATE) {\n length = field.absoluteLength > 8 ? field.absoluteLength : 8;\n } else {\n length = field.absoluteLength;\n }\n\n const width = `${getAbsoluteWidth(length)}px`;\n const height = `${getAbsoluteHeight(1)}px`;\n const top = `${getAbsoluteTop(field.absoluteRow)}px`;\n const left = `${getAbsoluteLeft(field.absoluteColumn)}px`;\n\n const styleObj = {\n position: 'absolute',\n width,\n 'min-width': width,\n 'max-width': width,\n height,\n 'min-height': height,\n 'max-height': height,\n top,\n left,\n overflow: 'auto',\n };\n\n fieldCell.cell.data = {\n ...fieldCell.cell.data,\n customStyle:\n (fieldCell.cell.data.customStyle || '') +\n '.mdc-text-field {height: unset !important;}',\n };\n\n return (\n <div style={styleObj}>\n {this.#renderCell(fieldCell.cell, cells.row, fieldCell.column)}\n </div>\n );\n }\n\n #mapCells(data: KupInputPanelData) {\n const inpuPanelCells = data?.rows?.length\n ? data.rows.reduce((inpuPanelCells, row) => {\n const cells = data.columns\n .filter((column) => column.visible)\n .map((column) => {\n const cell = structuredClone(row.cells[column.name]);\n const mappedCell = cell\n ? {\n ...cell,\n data: this.#setData(cell, column),\n slotData: this.#slotData(cell, column),\n isEditable: true,\n }\n : null;\n return { column, cell: mappedCell };\n });\n return [...inpuPanelCells, { cells, row }];\n }, [])\n : [];\n inpuPanelCells.map(({ cells }: InputPanelCells) =>\n cells.map(({ cell, column }) => {\n const cellType = dom.ketchup.data.cell.getType(\n cell,\n cell.shape\n );\n const componentQuery = this.#cellTypeComponents.get(cellType);\n if (!componentQuery) {\n return;\n }\n\n const el: any = this.rootElement.shadowRoot.querySelector(\n `${componentQuery}[id=${column.name.replace(\n /\\//g,\n '\\\\$1'\n )}]`\n );\n\n el?.setValue(cell.value);\n })\n );\n\n this.inputPanelCells = inpuPanelCells;\n }\n\n #setData(cell: KupInputPanelCell, column: KupInputPanelColumn) {\n const defaultProps = {\n ...this.#mapData(cell, column),\n disabled: !cell.editable,\n id: column.name,\n };\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n const { data, ...noDataProps } = cell.data || {};\n\n return cellType !== FCellTypes.MULTI_AUTOCOMPLETE &&\n cellType !== FCellTypes.MULTI_COMBOBOX\n ? this.#deepObjectsMerge(defaultProps, {\n ...cell.data,\n })\n : // Add and ovverride defaultProps of Chip host component except data\n {\n ...defaultProps,\n ...noDataProps,\n };\n }\n\n #deepObjectsMerge(target: GenericObject, source: GenericObject) {\n for (const key in source) {\n if (\n source[key] instanceof Object &&\n !Array.isArray(source[key]) &&\n key in target\n ) {\n target[key] = this.#deepObjectsMerge(target[key], source[key]);\n } else {\n target[key] = source[key];\n }\n }\n return target;\n }\n\n #reverseMapCells(): KupInputPanelData {\n return this.inputPanelCells.reduce(\n (data, curr) => {\n const updatedCells = Object.keys(curr.row.cells).reduce(\n (cells, key) => {\n const cellState = curr.cells.find(\n (c) => c.column.name === key\n )?.cell;\n\n let value: any = cellState?.value;\n\n if (cellState?.shape === FCellShapes.TABLE) {\n value = JSON.stringify(\n this.#getTableUpdatedCell(\n cellState.data.data,\n key\n )\n );\n }\n\n return {\n ...cells,\n [key]: {\n ...curr.row.cells[key],\n value,\n obj: cellState?.obj,\n },\n };\n },\n {}\n );\n\n return {\n columns: [\n ...data.columns,\n ...curr.cells.map((cell) => cell.column),\n ],\n rows: [\n ...data.rows,\n {\n cells: updatedCells,\n layout: curr.row.layout,\n },\n ],\n };\n },\n {\n columns: [],\n rows: [],\n }\n );\n }\n\n #mapData(cell: KupInputPanelCell, col: KupInputPanelColumn) {\n if (!cell) {\n return null;\n }\n\n const options = cell.options;\n const fieldLabel = col.title;\n const currentValue = cell.value;\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n const dataAdapterMap = new Map<FCellTypes, DataAdapterFn>([\n [FCellTypes.AUTOCOMPLETE, this.#CMBandACPAdapter.bind(this)],\n [FCellTypes.BUTTON_LIST, this.#BTNAdapter.bind(this)],\n [FCellTypes.CHART, this.#GRAAdapter.bind(this)],\n [FCellTypes.CHIP, this.#CHIAdapter.bind(this)],\n [FCellTypes.CHECKBOX, this.#CHKAdapter.bind(this)],\n [FCellTypes.COLOR_PICKER, this.#CLPAdapter.bind(this)],\n [FCellTypes.COMBOBOX, this.#CMBandACPAdapter.bind(this)],\n [FCellTypes.EDITOR, this.#EDTAdapter.bind(this)],\n [FCellTypes.MULTI_AUTOCOMPLETE, this.#CHIAdapter.bind(this)],\n [FCellTypes.MULTI_COMBOBOX, this.#CHIAdapter.bind(this)],\n [FCellTypes.NUMBER, this.#NumberAdapter.bind(this)],\n [FCellTypes.DATE, this.#DateAdapter.bind(this)],\n [FCellTypes.OBJECT, this.#ObjectAdapter.bind(this)],\n [FCellTypes.RADIO, this.#RADAdapter.bind(this)],\n [FCellTypes.STRING, this.#ITXAdapter.bind(this)],\n [FCellTypes.SWITCH, this.#SWTAdapter.bind(this)],\n [FCellTypes.TABLE, this.#DataTableAdapter.bind(this)],\n [FCellTypes.TIME, this.#TimeAdapter.bind(this)],\n ]);\n\n const adapter = dataAdapterMap.get(cellType);\n\n return adapter\n ? adapter(options, fieldLabel, currentValue, cell, col.name)\n : null;\n }\n\n #slotData(cell: KupInputPanelCell, col: KupInputPanelColumn) {\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n if (!cell.editable) {\n return null;\n }\n\n if (cellType === FCellTypes.CHIP) {\n return {\n trailingIcon: true,\n label: col.title,\n disabled: !cell.editable,\n id: col.name,\n fullWidth: false,\n };\n }\n\n if (\n cellType === FCellTypes.MULTI_AUTOCOMPLETE ||\n cellType === FCellTypes.MULTI_COMBOBOX\n ) {\n return {\n ...this.#CMBandACPAdapter(\n cell.options,\n col.title,\n null,\n cell,\n col.name\n ),\n showDropDownIcon: true,\n class: '',\n style: { width: '100%' },\n disabled: !cell.editable,\n id: col.name,\n };\n }\n\n return null;\n }\n\n #CHIAdapter(\n _options: GenericObject,\n _fieldLabel: string,\n currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n this.#checkOnBlurEvent(cell, id);\n }\n\n return CHIAdapter(currentValue);\n }\n\n #GRAAdapter() {\n //TODO: definire mapping\n return {\n data: {\n sizeX: '50px',\n offlineMode: {\n value: '8;4;5',\n },\n id: 'i1012_GREF_0',\n cellId: 'i1012_GREF_0',\n sizeY: '50px',\n },\n };\n }\n\n #BTNAdapter(\n _options: GenericObject,\n _fieldLabel: string,\n _currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n cell.data = cell.data || {};\n\n cell.data.onClick = () => {\n cell.fun\n ? this.customButtonClickHandler({\n fun: cell.fun,\n cellId: id,\n currentState: this.#reverseMapCells(),\n })\n : this.submitCb({\n value: {\n before: { ...this.#originalData },\n after: this.#reverseMapCells(),\n },\n cell: id,\n });\n };\n\n if (cell.data?.keyShortcut && !cell.data?.disabled) {\n this.#keysShortcut.push(cell.data?.keyShortcut);\n this.#kupManager.keysBinding.register(\n cell.data?.keyShortcut,\n cell.data.onClick.bind(this)\n );\n }\n\n return {\n label: cell.value,\n fun: cell.fun,\n ...cell.data,\n };\n }\n\n #CMBandACPAdapter(\n rawOptions: GenericObject,\n fieldLabel: string,\n currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n const configCMandACP = CMBandACPAdapter(currentValue, fieldLabel, []);\n\n if (cell.fun) {\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n const evNames = this.#eventNames.get(cellType);\n\n if (!evNames) {\n return;\n }\n\n evNames.map((evName) => {\n const handler = (\n e: CustomEvent<KupAutocompleteEventPayload>\n ) => {\n this.#getAutocompleteEventCallback(\n e.detail,\n cell.fun,\n configCMandACP,\n id,\n currentValue\n );\n };\n this.rootElement.addEventListener(evName, handler);\n this.#listeners.push({\n event: evName,\n handler,\n });\n });\n } else if (rawOptions) {\n configCMandACP.data['kup-list'].data =\n this.#optionsTreeComboAdapter(rawOptions, currentValue);\n }\n\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n this.#checkOnBlurEvent(cell, id);\n }\n\n return configCMandACP;\n }\n\n #CHKAdapter(\n _options: GenericObject,\n fieldLabel: string,\n currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n let data = CHKAdapter(currentValue, fieldLabel);\n\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n return {\n ...data,\n onBlur: () => {\n this.#checkOnBlurProp(cell, id);\n },\n };\n }\n\n return data;\n }\n\n #CLPAdapter(\n _options: GenericObject,\n fieldLabel: string,\n _currentValue: string\n ) {\n return {\n data: {\n 'kup-text-field': {\n label: fieldLabel,\n },\n },\n };\n }\n\n #EDTAdapter(\n _options: GenericObject,\n _fieldLabel: string,\n currentValue: string\n ) {\n return {\n initialValue: currentValue,\n };\n }\n\n #ITXAdapter(\n _options: GenericObject,\n fieldLabel: string,\n _currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n return {\n label: fieldLabel,\n onBlur: () => {\n this.#checkOnBlurProp(cell, id);\n },\n };\n }\n return { label: fieldLabel };\n }\n\n #RADAdapter(\n options: GenericObject,\n _fieldLabel: string,\n currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n let data = RADAdapter(currentValue, options);\n\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n return {\n ...data,\n onBlur: () => {\n this.#checkOnBlurProp(cell, id);\n },\n };\n }\n\n return data;\n }\n\n #SWTAdapter(\n _options: GenericObject,\n fieldLabel: string,\n currentValue: string\n ) {\n return SWTAdapter(currentValue, fieldLabel);\n }\n\n #DateAdapter(\n _options: GenericObject,\n fieldLabel: string,\n currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n this.#checkOnBlurEvent(cell, id);\n }\n\n return {\n data: {\n 'kup-text-field': {\n label: fieldLabel,\n },\n },\n initialValue: currentValue,\n };\n }\n\n #ObjectAdapter(\n _options: GenericObject,\n fieldLabel: string,\n currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n return {\n initialValue: currentValue || '',\n label: fieldLabel || ' ',\n value: currentValue || '',\n onBlur: () => {\n this.#checkOnBlurProp(cell, id);\n },\n };\n }\n\n return {\n initialValue: currentValue || '',\n label: fieldLabel || ' ',\n value: currentValue || '',\n };\n }\n\n #TimeAdapter(\n _options: GenericObject,\n fieldLabel: string,\n _currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n this.#checkOnBlurEvent(cell, id);\n }\n return {\n data: {\n 'kup-text-field': {\n label: fieldLabel,\n },\n },\n };\n }\n\n #NumberAdapter(\n _options: GenericObject,\n fieldLabel: string,\n _currentValue: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n if (cell.inputSettings?.checkObject || cell.mandatory) {\n return {\n label: fieldLabel,\n onBlur: () => {\n this.#checkOnBlurProp(cell, id);\n },\n };\n }\n return { label: fieldLabel };\n }\n\n #DataTableAdapter(\n _rawOptions: GenericObject,\n _fieldLabel: string,\n _value: string,\n cell: KupInputPanelCell,\n id: string\n ) {\n try {\n let data = JSON.parse(cell.value);\n\n if (!data) {\n this.#kupManager.debug.logMessage(\n this,\n `Empty value for ${id} cell.`,\n KupDebugCategory.WARNING\n );\n return null;\n }\n\n if ((data as any).type !== 'SmeupDataTable') {\n this.#kupManager.debug.logMessage(\n this,\n `Wrong data table type for ${id} cell. Type \\`SmeupDataTable\\` in value expected`,\n KupDebugCategory.ERROR\n );\n return null;\n }\n\n return {\n data: {\n columns: data.columns.map((col) => ({\n ...col,\n obj: data.rows[0].cells[col.name].obj,\n })),\n rows: data.rows.map((row) => ({\n ...row,\n cells: Object.keys(row.cells).reduce((cell, key) => {\n const column = data.columns.find(\n (col) => col.name === key\n );\n return {\n ...cell,\n [key]: {\n ...row.cells[key],\n data: {\n ...this.#mapData(\n row.cells[key],\n column\n ),\n disabled:\n row.cells[key].editable === false,\n id: column.id,\n },\n },\n };\n }, {}),\n })),\n },\n };\n } catch (e) {\n this.#kupManager.debug.logMessage(\n this,\n `Invalid value for ${id} cell. Type \\`SmeupDataTable\\` expected`,\n KupDebugCategory.ERROR\n );\n return null;\n }\n }\n\n #getTableUpdatedCell(\n tableValue: KupDataTableDataset,\n cellId: string\n ): KupDataTableDataset {\n const updated: KupDataTableDataset = {\n ...tableValue,\n rows: tableValue.rows.map((row) => ({ ...row, cells: {} })),\n };\n\n const editableColsId = tableValue.columns\n .filter((col) => col.isEditable)\n .map((col) => col.name);\n\n if (!editableColsId.length) {\n return updated;\n }\n\n try {\n const beforeTableValue = JSON.parse(\n this.#originalData.rows[0].cells[cellId].value\n );\n\n updated.rows = tableValue.rows.map((row, i) =>\n editableColsId.reduce<KupDataTableRow>(\n (updatedRow, colId) => {\n const changed =\n beforeTableValue.rows[i].cells[colId] &&\n row.cells[colId].value !==\n beforeTableValue.rows[i].cells[colId].value;\n\n if (changed) {\n return {\n ...beforeTableValue.rows[i],\n cells: {\n ...updatedRow.cells,\n [colId]: {\n ...beforeTableValue.rows[i].cells[\n colId\n ],\n value: row.cells[colId].value,\n },\n },\n };\n }\n\n return {\n ...beforeTableValue.rows[i],\n cells: updatedRow.cells,\n };\n },\n { ...beforeTableValue.rows[i], cells: {} }\n )\n );\n\n return updated;\n } catch (e) {\n return updated;\n }\n }\n\n #optionsTreeComboAdapter(options: any, currentValue: string) {\n const adapter = this.#optionsAdapterMap.get(options.type);\n\n if (adapter) {\n return adapter(options, currentValue);\n } else {\n return options.map((option) => ({\n value: option.label,\n id: option.id,\n selected: currentValue === option.id,\n }));\n }\n }\n\n #treeOptionsNodeAdapter(\n options: any,\n currentValue: string\n ): GenericObject[] {\n return options.children.map((child) => ({\n id: child.content.codice,\n value: child.content.testo,\n selected: currentValue === child.content.codice,\n children: child.children?.length\n ? this.#treeOptionsNodeAdapter(child, currentValue)\n : [],\n }));\n }\n\n #dataTreeOptionsChildrenAdapter(\n options: any,\n currentValue: string\n ): GenericObject[] {\n return options.children.map((child) => ({\n id: child.obj.k,\n value: child.value,\n selected: currentValue === child.obj.k,\n children: child.children?.length\n ? this.#dataTreeOptionsChildrenAdapter(child, currentValue)\n : [],\n }));\n }\n\n #tableOptionsAdapter(options: any, currentValue: string): GenericObject[] {\n return options.rows.map((row) => {\n const cells = row.fields || row.cells;\n const [id, value] = Object.keys(cells);\n\n return {\n id: cells[id].value,\n value: cells[value]?.value || cells[id].value,\n selected: currentValue === cells[id].value,\n };\n });\n }\n\n #getAutocompleteEventCallback(\n detail: KupAutocompleteEventPayload | KupComboboxIconClickEventPayload,\n fun: string,\n data: any,\n id: string,\n currentValue: string\n ) {\n if (\n detail.id !== id ||\n (detail as KupComboboxIconClickEventPayload).open === false\n ) {\n return;\n }\n this.optionsHandler(\n fun,\n detail.inputValue,\n this.#reverseMapCells(),\n detail.id\n ).then((options) => {\n data.data['kup-list'].data =\n this.#optionsTreeComboAdapter(options, currentValue) ?? [];\n detail.comp.refresh();\n });\n }\n\n #checkOnBlurProp(cell: KupInputPanelCell, id: string) {\n const currCell = this.#getCell(id);\n\n // Required cell check\n if (cell.mandatory) {\n this.#setCellError(\n id,\n currCell.value\n ? // If it's not empty remove the error message\n null\n : // else set the error message\n this.#kupManager.language.translate(\n KupLanguageGeneric.REQUIRED_VALUE\n )\n );\n }\n\n if (!currCell.value) {\n return;\n }\n\n // Valid object check\n if (cell.inputSettings?.checkObject) {\n this.checkValidObjCallback({\n obj: cell.obj,\n currentState: this.#reverseMapCells(),\n fun: cell.fun,\n }).then(({ valid }) => {\n this.#setCellError(\n id,\n valid\n ? // If it's a valid object remove the error message\n null\n : // else set the error message\n this.#kupManager.language.translate(\n KupLanguageGeneric.INVALID_VALUE\n )\n );\n });\n }\n }\n\n #checkOnBlurEvent(cell: KupInputPanelCell, id: string) {\n const evName = this.#eventBlurNames.get(cell.shape);\n\n if (!evName) {\n return;\n }\n\n const handler = (e: CustomEvent<KupAutocompleteEventPayload>) => {\n if (e.detail.id !== id) {\n return;\n }\n\n // Required cell check\n if (cell.mandatory) {\n e.detail.comp.error = e.detail.value\n ? // If it's not empty remove the error message\n null\n : // else set the error message\n this.#kupManager.language.translate(\n KupLanguageGeneric.REQUIRED_VALUE\n );\n e.detail.comp.refresh();\n }\n\n if (!e.detail.value) {\n return;\n }\n\n // Valid object check\n if (cell.inputSettings?.checkObject) {\n this.checkValidObjCallback({\n obj: cell.obj,\n currentState: this.#reverseMapCells(),\n fun: cell.fun,\n }).then(({ valid }) => {\n e.detail.comp.error = valid\n ? null\n : this.#kupManager.language.translate(\n KupLanguageGeneric.INVALID_VALUE\n );\n e.detail.comp.refresh();\n });\n }\n };\n this.rootElement.addEventListener(evName, handler);\n this.#listeners.push({\n event: evName,\n handler,\n });\n }\n\n #setCellError(id: string, error: string) {\n this.inputPanelCells = this.inputPanelCells.map((cell) => ({\n ...cell,\n cells: cell.cells.map(({ cell, column }) => {\n const data =\n column.name === id\n ? {\n ...cell.data,\n error,\n }\n : cell.data;\n return {\n column,\n cell: {\n ...cell,\n data,\n },\n };\n }),\n }));\n }\n\n //#endregion\n\n //#region LIFECYCLE HOOKS\n /*-------------------------------------------------*/\n /* L i f e c y c l e H o o k s */\n /*-------------------------------------------------*/\n\n componentWillLoad() {\n this.#kupManager.debug.logLoad(this, false);\n this.#kupManager.language.register(this);\n this.#kupManager.theme.register(this);\n this.onDataChanged();\n }\n\n componentDidLoad() {\n this.kupReady.emit({ comp: this, id: this.rootElement.id });\n this.#kupManager.debug.logLoad(this, true);\n }\n\n componentWillRender() {\n this.#kupManager.debug.logRender(this, false);\n }\n\n componentDidRender() {\n const root: ShadowRoot = this.rootElement.shadowRoot;\n if (root) {\n const fs: NodeListOf<HTMLElement> =\n root.querySelectorAll('.f-text-field');\n for (let index = 0; index < fs.length; index++) {\n FTextFieldMDC(fs[index]);\n }\n }\n this.#kupManager.debug.logRender(this, true);\n }\n\n render() {\n const isEmptyData = Boolean(!this.inputPanelCells.length);\n\n const inputPanelContent: VNode[] = isEmptyData\n ? [\n <p>\n {this.#kupManager.language.translate(\n KupLanguageGeneric.EMPTY_DATA\n )}\n </p>,\n ]\n : this.inputPanelCells.map((inputPanelCell) =>\n this.#renderRow(inputPanelCell)\n );\n\n return (\n <Host>\n <style>\n {this.#kupManager.theme.setKupStyle(\n this.rootElement as KupComponent\n )}\n </style>\n <div id={componentWrapperId}>{inputPanelContent}</div>\n </Host>\n );\n }\n\n disconnectedCallback() {\n this.#kupManager.language.unregister(this);\n this.#kupManager.theme.unregister(this);\n }\n //#endregion\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as t,c as i,f as s,h as e,H as n,d as h,g as o}from"./p-d7c15b0e.js";import{k as a,ag as f,g as r,s as l,b as d,E as u}from"./p-49a79002.js";import{K as c,d as p,a as m,b as k,c as w}from"./p-cd3a7d53.js";import{c as g}from"./p-635bb4b3.js";import{F as y}from"./p-1cb80f82.js";import{F as v}from"./p-c4054aba.js";import"./p-029c7cbe.js";import"./p-2b519589.js";import"./p-d4a879fc.js";const b=a();function x(t,i,s,e,n,h,o,a){const f=D(t,i);let r=[];if(s&&e){if(C(s,e)){r=D(s,e)}else{r=[...f]}}let l=[];if(n&&h){if(z(n,h)){l=S(n,h)}else{r=[...f]}}let d=[];if(o&&a){if(z(o,a)){d=S(o,a)}else{r=[...f]}}return{dateValues:f,secDateValues:r,hourValues:l,secHourValues:d}}function D(t,i){let s=[t.value,i.value];if(j(t)&&j(i)){return s}else if(j(t)){return[t.value,t.value]}else if(j(i)){return[i.value,i.value]}else{return s}}function S(t,i){let s=[t.value,i.value];if(O(t)&&O(i)){return s}else if(O(t)){return[t.value,t.value]}else if(O(i)){return[i.value,i.value]}else{return s}}function j(t){return b.objects.isDate(t.obj)&&b.dates.isIsoDate(t.value)}function O(t){return b.objects.isTime(t.obj)||b.objects.isTimeWithSeconds(t.obj)}function C(t,i){return j(t)||j(i)}function z(t,i){return O(t)||O(i)}function T(t,i,s,e,n,h){let o=()=>n.map((i=>f(e.find((t=>t.name==i)),t.cells[i])));if(h){o=h}const a=(n===null||n===void 0?void 0:n.length)>=2?o():[t.cells[i].value,t.cells[s].value];return a}class E{constructor(){this.showSecondaryDates=false;this.detailFilter="";this.detailInitialScrollX=0;this.detailInitialScrollY=0;this.taskFilter="";this.taskInitialScrollX=0;this.taskInitialScrollY=0;this.viewMode="day"}toDebugString(){return"dt state"}}const H=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{display:block}.filter{margin-bottom:var(--kup-space-04)}.planner-render{padding-top:40px}";const M=H;var P=undefined&&undefined.__classPrivateFieldGet||function(t,i,s,e){if(s==="a"&&!e)throw new TypeError("Private accessor was defined without a getter");if(typeof i==="function"?t!==i||!e:!i.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return s==="m"?e:s==="a"?e.call(t):e?e.value:i.get(t)};var W=undefined&&undefined.__classPrivateFieldSet||function(t,i,s,e,n){if(e==="m")throw new TypeError("Private method is not writable");if(e==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof i==="function"?t!==i||!n:!i.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e==="a"?n.call(t,s):n?n.value=s:i.set(t,s),s};var I,R,V,Y,K,A,G,X,L,F,N,_,q,B,J,Q,U,Z,$,tt,it,st,et,nt;const ht=class{constructor(s){t(this,s);this.kupClick=i(this,"kup-planner-click",6);this.kupDblClick=i(this,"kup-planner-dblclick",6);this.kupDateChange=i(this,"kup-planner-datechange",6);this.kupPhaseDrop=i(this,"kup-planner-phasedrop",6);this.kupReady=i(this,"kup-planner-ready",6);this.kupContextMenu=i(this,"kup-planner-contextmenu",6);this.kupDidUnload=i(this,"kup-planner-didunload",6);I.add(this);this.state=new E;this.plannerRenderer=undefined;R.set(this,a());V.set(this,void 0);Y.set(this,[]);K.set(this,{});A.set(this,void 0);this.stateId="";this.store=undefined;this.customStyle="";this.data=undefined;this.detailData=undefined;this.detailColorCol=undefined;this.detailColumns=undefined;this.detailDates=undefined;this.detailFilter=undefined;this.detailHeight=undefined;this.detailHours=[];this.detailIconCol=undefined;this.detailIdCol=undefined;this.detailNameCol=undefined;this.detailPrevHours=[];this.detailPrevDates=undefined;this.detailInitialScrollX=undefined;this.detailInitialScrollY=undefined;this.listCellWidth="300px";this.maxWidth="90vw";this.phaseColorCol=undefined;this.phaseColumns=undefined;this.phaseColParDep=undefined;this.phaseDates=undefined;this.phaseHours=[];this.phaseIconCol=undefined;this.phaseIdCol=undefined;this.phaseNameCol=undefined;this.phasePrevHours=[];this.phasePrevDates=undefined;this.readOnly=false;this.showSecondaryDates=false;this.taskColumns=undefined;this.taskDates=undefined;this.taskFilter=undefined;this.taskHeight=undefined;this.taskHours=[];this.taskIconCol=undefined;this.taskIdCol=undefined;this.taskInitialScrollX=undefined;this.taskInitialScrollY=undefined;this.taskNameCol=undefined;this.taskPrevHours=[];this.taskPrevDates=undefined;this.titleMess=undefined;this.viewMode="month";this.mainFilter=undefined;this.secondaryFilter=undefined;this.scrollableTaskList=false;this.plannerProps=undefined}initWithPersistedState(){if(this.store&&this.stateId){const t=this.store.getState(this.stateId);if(t!=null){P(this,R,"f").debug.logMessage(this,"Initializing stateId "+this.stateId);this.detailFilter=t.detailFilter;this.showSecondaryDates=t.showSecondaryDates;this.detailInitialScrollX=t.detailInitialScrollX;this.detailInitialScrollY=t.detailInitialScrollY;this.taskFilter=t.taskFilter;this.taskInitialScrollX=t.taskInitialScrollX;this.taskInitialScrollY=t.taskInitialScrollY;this.viewMode=t.viewMode}}}persistState(){if(this.store&&this.stateId){let t=false;if(!P(this,R,"f").objects.deepEqual(this.state.detailFilter,P(this,A,"f").detailFilter)){this.state.detailFilter=P(this,A,"f").detailFilter;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.showSecondaryDates,P(this,A,"f").showSecondaryDates)){this.state.showSecondaryDates=P(this,A,"f").showSecondaryDates;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.detailInitialScrollX,P(this,A,"f").detailInitialScrollX)){this.state.detailInitialScrollX=P(this,A,"f").detailInitialScrollX;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.detailInitialScrollY,P(this,A,"f").detailInitialScrollY)){this.state.detailInitialScrollY=P(this,A,"f").detailInitialScrollY;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.taskFilter,P(this,A,"f").taskFilter)){this.state.taskFilter=P(this,A,"f").taskFilter;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.taskInitialScrollX,P(this,A,"f").taskInitialScrollX)){this.state.taskInitialScrollX=P(this,A,"f").taskInitialScrollX;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.taskInitialScrollY,P(this,A,"f").taskInitialScrollY)){this.state.taskInitialScrollY=P(this,A,"f").taskInitialScrollY;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.viewMode,P(this,A,"f").viewMode)){this.state.viewMode=P(this,A,"f").viewMode;t=true}if(t){P(this,R,"f").debug.logMessage(this,"Persisting stateId "+this.stateId);this.store.persistState(this.stateId,this.state)}}}dataChanged(){W(this,K,{},"f")}async getProps(t){return r(this,w,t)}async refresh(){s(this);this.plannerRenderer.refresh()}async setProps(t){l(this,w,t)}async addPhases(t,i){var s;const e=P(this,I,"m",L).call(this,t);if(e){P(this,K,"f")[t]=i;e.phases=(s=i.rows)===null||s===void 0?void 0:s.filter((t=>C(t.cells[this.phaseDates[0]],t.cells[this.phaseDates[1]]))).map((t=>{const s=x(t.cells[this.phaseDates[0]],t.cells[this.phaseDates[1]],t.cells[this.phasePrevDates[0]],t.cells[this.phasePrevDates[1]],t.cells[this.phaseHours[0]],t.cells[this.phaseHours[1]],t.cells[this.phasePrevHours[0]],t.cells[this.phasePrevHours[1]]);const n=T(t,this.phaseIdCol,this.phaseNameCol,i.columns,this.phaseColumns,(()=>this.phaseColumns.map((s=>s==this.phaseDates[0]?"#START#":s==this.phaseDates[1]?"#END#":f(i.columns.find((t=>t.name==s)),t.cells[s])))));let h=P(this,I,"m",et).call(this,t,this.phaseIconCol);let o=P(this,I,"m",nt).call(this,t,this.phaseIconCol);let a={taskRow:e.taskRow,phaseRow:t,id:e.id+"_"+t.cells[this.phaseIdCol].value,phaseRowId:t.id,taskRowId:e.taskRowId,name:t.cells[this.phaseNameCol].value,startDate:s.dateValues[0],endDate:s.dateValues[1],secondaryStartDate:s.secDateValues[0],secondaryEndDate:s.secDateValues[1],type:"task",color:t.cells[this.phaseColorCol].value,selectedColor:t.cells[this.phaseColorCol].value,valuesToShow:n,rowType:c.PHASE,icon:h?{url:h,color:o!==null&&o!==void 0?o:"#595959"}:undefined,startHour:s.hourValues[0],endHour:s.hourValues[1],secondaryStartHour:s.secHourValues[0],secondaryEndHour:s.secHourValues[1]};return a}))}this.plannerProps.mainGantt.initialScrollX=P(this,A,"f").taskInitialScrollX;this.plannerProps.mainGantt.initialScrollY=P(this,A,"f").taskInitialScrollY;if(this.plannerProps.secondaryGantt){this.plannerProps.secondaryGantt.initialScrollX=P(this,A,"f").detailInitialScrollX;this.plannerProps.secondaryGantt.initialScrollX=P(this,A,"f").detailInitialScrollY}this.plannerProps=Object.assign({},this.plannerProps);this.refresh()}componentWillLoad(){P(this,R,"f").debug.logLoad(this,false);P(this,R,"f").theme.register(this);this.initWithPersistedState();W(this,A,{detailFilter:this.detailFilter,detailInitialScrollX:this.detailInitialScrollX,detailInitialScrollY:this.detailInitialScrollY,showSecondaryDates:this.showSecondaryDates,taskFilter:this.taskFilter,taskInitialScrollX:this.taskInitialScrollX,taskInitialScrollY:this.taskInitialScrollY,viewMode:this.viewMode},"f")}componentDidLoad(){let t=P(this,I,"m",X).call(this,P(this,I,"m",st).call(this,P(this,A,"f").detailFilter,true));const i=this.rootElement.shadowRoot.querySelector("#main-filter");v(i);const s=this.rootElement.shadowRoot.querySelector("#secondary-filter");if(t){v(s)}let e;let n;let h;const o=500;this.plannerProps={mainGantt:{title:this.titleMess,items:P(this,I,"m",G).call(this,P(this,I,"m",st).call(this,P(this,A,"f").taskFilter,false)),stylingOptions:Object.assign(Object.assign({},p),{listCellWidth:this.listCellWidth}),filter:i,hideLabel:true,ganttHeight:this.taskHeight,showSecondaryDates:P(this,A,"f").showSecondaryDates,onClick:t=>this.handleOnClick(t),onDblClick:t=>this.handleOnDblClick(t),onContextMenu:(t,i)=>this.handleOnContextMenu(t,i),onDateChange:t=>this.handleOnDateChange(t),initialScrollX:this.taskInitialScrollX,initialScrollY:this.taskInitialScrollY,readOnly:this.readOnly,onScrollY:t=>{window.clearTimeout(n);n=window.setTimeout((()=>this.handleTaskGanttScrollY(t)),o)},onPhaseDrop:t=>this.handleOnPhaseDrop(t)},secondaryGantt:t?{title:"",items:t,stylingOptions:Object.assign(Object.assign({},p),{listCellWidth:this.listCellWidth}),filter:s,hideLabel:true,ganttHeight:this.detailHeight,onClick:t=>this.handleOnClick(t),onContextMenu:(t,i)=>this.handleOnContextMenu(t,i),onDateChange:t=>this.handleOnDateChange(t),initialScrollX:this.detailInitialScrollX,initialScrollY:this.detailInitialScrollY,readOnly:this.readOnly,onScrollY:t=>{window.clearTimeout(h);h=window.setTimeout((()=>this.handleDetailGanttScrollY(t)),o)}}:undefined,onSetDoubleView:t=>this.handleOnSetDoubleView(t),onSetViewMode:t=>this.handleOnSetViewMode(t),viewMode:this.viewMode,scrollableTaskList:this.scrollableTaskList,onScrollX:t=>{window.clearTimeout(e);e=window.setTimeout((()=>this.handleOnScrollX(t)),o)}};this.kupReady.emit({comp:this,id:this.rootElement.id,value:undefined});if(this.taskFilter){P(this,I,"m",it).call(this,this.taskFilter)}if(this.detailFilter){P(this,I,"m",it).call(this,this.detailFilter,true)}P(this,R,"f").debug.logLoad(this,true)}componentDidRender(){this.persistState();P(this,R,"f").debug.logRender(this,true)}onKupDblClick(t,i){this.kupDblClick.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}onKupClick(t,i){this.kupClick.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}onKupContextMenu(t,i,s){let e;let n;let h;switch(i.type){case"project":{e=i.taskRow;n=e.cells[this.taskIdCol];h=this.data.columns[this.taskIdCol];break}case"task":{e=i.phaseRow;n=e.cells[this.phaseIdCol];break}case"timeline":{e=i.detailRow;n=e.cells[this.detailIdCol];h=this.data.columns[this.detailIdCol];break}}this.kupContextMenu.emit({comp:this,id:this.rootElement.id,value:i,taskAction:s,details:{cell:n,column:h,originalEvent:t,row:e}})}onKupDateChange(t,i){this.kupDateChange.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}onKupPhaseDrop(t,i){this.kupPhaseDrop.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}handleOnDblClick(t){switch(t.rowType){case c.TASK:if(P(this,I,"m",N).call(this)){this.onKupDblClick(t,m.onDblClick)}break;case c.PHASE:if(P(this,I,"m",_).call(this)){this.onKupDblClick(t,m.onDblClick)}break;case c.DETAIL:if(P(this,I,"m",q).call(this)){this.onKupDblClick(t,m.onDblClick)}break}for(let t=0;t<P(this,Y,"f").length;t++){clearTimeout(P(this,Y,"f")[t]);P(this,R,"f").debug.logMessage(this,"Cleared click timeout("+P(this,Y,"f")[t]+").")}W(this,Y,[],"f")}handleOnClick(t){P(this,Y,"f").push(setTimeout((()=>{switch(t.rowType){case c.TASK:const i=t.phases?m.onTaskClosing:m.onTaskOpening;if(P(this,I,"m",B).call(this,t)){this.onKupClick(t,i)}break;case c.PHASE:if(P(this,I,"m",J).call(this)){this.onKupClick(t,m.onClick)}break;case c.DETAIL:if(P(this,I,"m",Q).call(this)){this.onKupClick(t,m.onClick)}break}}),300))}handleOnContextMenu(t,i){switch(i.rowType){case c.TASK:if(P(this,I,"m",U).call(this)){this.onKupContextMenu(t,i,m.onRightClick)}break;case c.PHASE:if(P(this,I,"m",Z).call(this)){this.onKupContextMenu(t,i,m.onRightClick)}break;case c.DETAIL:if(P(this,I,"m",$).call(this)){this.onKupContextMenu(t,i,m.onRightClick)}break}}handleOnSetDoubleView(t){var i;P(this,A,"f").showSecondaryDates=t;if((i=this.plannerProps)===null||i===void 0?void 0:i.mainGantt){this.plannerProps.mainGantt.showSecondaryDates=t}this.persistState()}handleOnSetViewMode(t){P(this,A,"f").viewMode=t;this.plannerProps.viewMode=t;this.persistState()}handleOnScrollX(t){P(this,A,"f").taskInitialScrollX=t;P(this,A,"f").detailInitialScrollX=t;this.persistState()}handleTaskGanttScrollY(t){P(this,A,"f").taskInitialScrollY=t;this.persistState()}handleDetailGanttScrollY(t){P(this,A,"f").detailInitialScrollY=t;this.persistState()}handleOnDateChange(t){if(P(this,I,"m",tt).call(this,t)){if(t.rowType!=c.DETAIL){this.onKupDateChange(t,m.onResize)}}}handleOnPhaseDrop(t){this.onKupPhaseDrop(t,m.onTask)}render(){var t,i,s;const h=this.plannerProps?Object.assign(Object.assign({},this.plannerProps),{onSetDoubleView:this.handleOnSetDoubleView.bind(this),onSetViewMode:this.handleOnSetViewMode.bind(this),onScrollX:this.handleOnScrollX.bind(this),mainGantt:Object.assign(Object.assign({},(t=this.plannerProps)===null||t===void 0?void 0:t.mainGantt),{onScrollY:this.handleTaskGanttScrollY.bind(this)})}):null;if((i=this.plannerProps)===null||i===void 0?void 0:i.secondaryGantt){h.secondaryGantt=Object.assign(Object.assign({},this.plannerProps.secondaryGantt),{onScrollY:this.handleDetailGanttScrollY.bind(this)})}return e(n,{key:"ec595d6944c84d1ff3419a4f9ea4b05b9daa7c8c"},e("style",{key:"9476707409a3f42a4053432d9516fda679f96341"},P(this,R,"f").theme.setKupStyle(this.rootElement)),e("div",{key:"ebcc7405f609f4ecffee385e5c3e710e67e67493",id:g,style:{maxWidth:this.maxWidth}},this.plannerProps&&e("kup-planner-renderer",{key:"9cb8c0178398029f74dded13fb14d96d5a3f3652",props:h,ref:t=>this.plannerRenderer=t})),e("div",{key:"227fba551833686254d2f9d904093fb1cd6afb31",style:{display:this.plannerProps?"none":""}},e(y,{key:"4cb494e54f8ca483dd46165b606ab1b54c5da58a",icon:d.SEARCH,id:"main-filter",label:P(this,R,"f").language.translate(u.SEARCH),onKeyDown:t=>{if(t.key==="Enter"){P(this,I,"m",it).call(this,t.target.value)}},value:this.taskFilter,wrapperClass:"filter"}),((s=this.detailData)===null||s===void 0?void 0:s.rows)&&this.detailData.rows.length>0?e(y,{icon:d.SEARCH,id:"secondary-filter",label:P(this,R,"f").language.translate(u.SEARCH),onKeyDown:t=>{if(t.key==="Enter"){P(this,I,"m",it).call(this,t.target.value,true)}},value:this.detailFilter,wrapperClass:"filter"}):null))}disconnectedCallback(){P(this,R,"f").theme.unregister(this);this.kupDidUnload.emit({comp:this,id:this.rootElement.id,storedSettings:P(this,A,"f")})}get rootElement(){return h(this)}static get watchers(){return{data:["dataChanged"]}}};R=new WeakMap,V=new WeakMap,Y=new WeakMap,K=new WeakMap,A=new WeakMap,I=new WeakSet,G=function t(i){var s;if(!i||!i.rows){return[]}let e=(s=i.rows)===null||s===void 0?void 0:s.filter((t=>C(t.cells[this.taskDates[0]],t.cells[this.taskDates[1]]))).map((t=>{const s=x(t.cells[this.taskDates[0]],t.cells[this.taskDates[1]],t.cells[this.taskPrevDates[0]],t.cells[this.taskPrevDates[1]],t.cells[this.taskHours[0]],t.cells[this.taskHours[1]],t.cells[this.taskPrevHours[0]],t.cells[this.taskPrevHours[1]]);const e=T(t,this.taskIdCol,this.taskNameCol,i.columns,this.taskColumns,(()=>this.taskColumns.map((s=>s==this.taskDates[0]?"#START#":s==this.taskDates[1]?"#END#":f(i.columns.find((t=>t.name==s)),t.cells[s])))));let n=P(this,I,"m",et).call(this,t,this.taskIconCol);let h=P(this,I,"m",nt).call(this,t,this.taskIconCol);let o={taskRow:t,taskRowId:t.id,id:t.cells[this.taskIdCol].value,name:t.cells[this.taskNameCol].value,startDate:s.dateValues[0],endDate:s.dateValues[1],secondaryStartDate:s.secDateValues[0],secondaryEndDate:s.secDateValues[1],type:"project",valuesToShow:e,rowType:c.TASK,icon:n?{url:n,color:h!==null&&h!==void 0?h:"#595959"}:undefined,startHour:s.hourValues[0],endHour:s.hourValues[1],secondaryStartHour:s.secHourValues[0],secondaryEndHour:s.secHourValues[1]};return o}));return e},X=function t(i){if(!i||!i.rows){return undefined}let s=[];i.rows.filter((t=>C(t.cells[this.detailDates[0]],t.cells[this.detailDates[1]]))).forEach((t=>{var e,n;const h=t.cells[this.detailIdCol].value;const o=t.cells[this.detailNameCol].value;const a=x(t.cells[this.detailDates[0]],t.cells[this.detailDates[1]],undefined,undefined,t.cells[this.detailHours[0]],t.cells[this.detailHours[1]]);const f=T(t,this.detailIdCol,this.detailNameCol,i.columns,this.detailColumns);let r=s.find((t=>t.id==h));if(!r){r={id:h,name:o,detailRow:t,type:"timeline",valuesToShow:f,rowType:c.DETAIL,schedule:[]};s.push(r)}let l=P(this,I,"m",et).call(this,t,this.detailIconCol);let d=P(this,I,"m",nt).call(this,t,this.detailIconCol);r.schedule.push({startDate:a.dateValues[0],endDate:a.dateValues[1],color:this.detailColorCol?(e=t.cells[this.detailColorCol].value)!==null&&e!==void 0?e:"#D9D9D8":"#D9D9D8",selectedColor:this.detailColorCol?(n=t.cells[this.detailColorCol].value)!==null&&n!==void 0?n:"#D9D9D8":"#D9D9D8",icon:l?{url:l,color:d!==null&&d!==void 0?d:"#595959"}:undefined,startHour:a.hourValues[0],endHour:a.hourValues[1]})}));return s},L=function t(i){return this.plannerProps.mainGantt.items.find((t=>t.id==i))},F=function t(i){const s=P(this,I,"m",L).call(this,i);if(s)s.phases=undefined;this.plannerProps=Object.assign({},this.plannerProps)},N=function t(){return true},_=function t(){return true},q=function t(){return true},B=function t(i){const s=P(this,I,"m",L).call(this,i.id);if(s===null||s===void 0?void 0:s.phases){P(this,I,"m",F).call(this,s.id)}return true},J=function t(){return true},Q=function t(){return true},U=function t(){return true},Z=function t(){return true},$=function t(){return true},tt=function t(i){let s=false;if(!P(this,V,"f")){s=true;W(this,V,new k(i),"f")}else if(!P(this,V,"f").isEquivalent(i)){W(this,V,new k(i),"f");s=true}return s},it=function t(i,s){if(s){P(this,A,"f").detailFilter=i}else{P(this,A,"f").taskFilter=i}const e=s?{secondaryGantt:Object.assign(Object.assign({},this.plannerProps.secondaryGantt),{items:P(this,I,"m",X).call(this,P(this,I,"m",st).call(this,i,s))})}:{mainGantt:Object.assign(Object.assign({},this.plannerProps.mainGantt),{items:P(this,I,"m",G).call(this,P(this,I,"m",st).call(this,i,s))})};this.plannerProps=Object.assign(Object.assign({},this.plannerProps),e);this.persistState()},st=function t(i,s){const e=s?this.detailData:this.data;if(!e||!e.rows||e.rows.length==0){return undefined}if(!i){return e}const n={columns:this.data.columns,rows:[]};const h=[];for(let t=0;t<e.rows.length;t++){const s=e.rows[t];const n=s.cells;for(let t=0;t<e.columns.length;t++){const o=e.columns[t];const a=n[o.name];if(a){const n=f(e.columns[t],a);const o=!!(n.toLowerCase().indexOf(i.toLowerCase())>-1);if(o){h.push({row:s,weight:t});break}}}}h.sort(((t,i)=>t.weight-i.weight)).forEach((t=>{n.rows.push(t.row)}));return n},et=function t(i,s){var e;let n=undefined;if(s){const t=i.cells[s];let h=(e=t===null||t===void 0?void 0:t.data)===null||e===void 0?void 0:e.resource;if(!h){h=t.value}if(h){n=o("./assets/svg/"+h+".svg")}}return n},nt=function t(i,s){var e;let n=undefined;if(s){const t=i.cells[s];n=(e=t===null||t===void 0?void 0:t.data)===null||e===void 0?void 0:e.color;if(n){n=P(this,R,"f").theme.colorCheck(n).hexColor}}return n};ht.style=M;export{ht as kup_planner};
2
- //# sourceMappingURL=p-2ebedaaa.entry.js.map
1
+ import{r as t,c as i,f as s,h as e,H as n,d as h,g as o}from"./p-d7c15b0e.js";import{k as a,ag as f,g as r,s as l,b as d,E as u}from"./p-86b6489e.js";import{K as c,d as p,a as m,b as k,c as w}from"./p-cd3a7d53.js";import{c as g}from"./p-635bb4b3.js";import{F as y}from"./p-fe31a004.js";import{F as v}from"./p-c4054aba.js";import"./p-029c7cbe.js";import"./p-2b519589.js";import"./p-d4a879fc.js";const b=a();function x(t,i,s,e,n,h,o,a){const f=D(t,i);let r=[];if(s&&e){if(C(s,e)){r=D(s,e)}else{r=[...f]}}let l=[];if(n&&h){if(z(n,h)){l=S(n,h)}else{r=[...f]}}let d=[];if(o&&a){if(z(o,a)){d=S(o,a)}else{r=[...f]}}return{dateValues:f,secDateValues:r,hourValues:l,secHourValues:d}}function D(t,i){let s=[t.value,i.value];if(j(t)&&j(i)){return s}else if(j(t)){return[t.value,t.value]}else if(j(i)){return[i.value,i.value]}else{return s}}function S(t,i){let s=[t.value,i.value];if(O(t)&&O(i)){return s}else if(O(t)){return[t.value,t.value]}else if(O(i)){return[i.value,i.value]}else{return s}}function j(t){return b.objects.isDate(t.obj)&&b.dates.isIsoDate(t.value)}function O(t){return b.objects.isTime(t.obj)||b.objects.isTimeWithSeconds(t.obj)}function C(t,i){return j(t)||j(i)}function z(t,i){return O(t)||O(i)}function T(t,i,s,e,n,h){let o=()=>n.map((i=>f(e.find((t=>t.name==i)),t.cells[i])));if(h){o=h}const a=(n===null||n===void 0?void 0:n.length)>=2?o():[t.cells[i].value,t.cells[s].value];return a}class E{constructor(){this.showSecondaryDates=false;this.detailFilter="";this.detailInitialScrollX=0;this.detailInitialScrollY=0;this.taskFilter="";this.taskInitialScrollX=0;this.taskInitialScrollY=0;this.viewMode="day"}toDebugString(){return"dt state"}}const H=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{display:block}.filter{margin-bottom:var(--kup-space-04)}.planner-render{padding-top:40px}";const M=H;var P=undefined&&undefined.__classPrivateFieldGet||function(t,i,s,e){if(s==="a"&&!e)throw new TypeError("Private accessor was defined without a getter");if(typeof i==="function"?t!==i||!e:!i.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return s==="m"?e:s==="a"?e.call(t):e?e.value:i.get(t)};var W=undefined&&undefined.__classPrivateFieldSet||function(t,i,s,e,n){if(e==="m")throw new TypeError("Private method is not writable");if(e==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof i==="function"?t!==i||!n:!i.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return e==="a"?n.call(t,s):n?n.value=s:i.set(t,s),s};var I,R,V,Y,K,A,G,X,L,F,N,_,q,B,J,Q,U,Z,$,tt,it,st,et,nt;const ht=class{constructor(s){t(this,s);this.kupClick=i(this,"kup-planner-click",6);this.kupDblClick=i(this,"kup-planner-dblclick",6);this.kupDateChange=i(this,"kup-planner-datechange",6);this.kupPhaseDrop=i(this,"kup-planner-phasedrop",6);this.kupReady=i(this,"kup-planner-ready",6);this.kupContextMenu=i(this,"kup-planner-contextmenu",6);this.kupDidUnload=i(this,"kup-planner-didunload",6);I.add(this);this.state=new E;this.plannerRenderer=undefined;R.set(this,a());V.set(this,void 0);Y.set(this,[]);K.set(this,{});A.set(this,void 0);this.stateId="";this.store=undefined;this.customStyle="";this.data=undefined;this.detailData=undefined;this.detailColorCol=undefined;this.detailColumns=undefined;this.detailDates=undefined;this.detailFilter=undefined;this.detailHeight=undefined;this.detailHours=[];this.detailIconCol=undefined;this.detailIdCol=undefined;this.detailNameCol=undefined;this.detailPrevHours=[];this.detailPrevDates=undefined;this.detailInitialScrollX=undefined;this.detailInitialScrollY=undefined;this.listCellWidth="300px";this.maxWidth="90vw";this.phaseColorCol=undefined;this.phaseColumns=undefined;this.phaseColParDep=undefined;this.phaseDates=undefined;this.phaseHours=[];this.phaseIconCol=undefined;this.phaseIdCol=undefined;this.phaseNameCol=undefined;this.phasePrevHours=[];this.phasePrevDates=undefined;this.readOnly=false;this.showSecondaryDates=false;this.taskColumns=undefined;this.taskDates=undefined;this.taskFilter=undefined;this.taskHeight=undefined;this.taskHours=[];this.taskIconCol=undefined;this.taskIdCol=undefined;this.taskInitialScrollX=undefined;this.taskInitialScrollY=undefined;this.taskNameCol=undefined;this.taskPrevHours=[];this.taskPrevDates=undefined;this.titleMess=undefined;this.viewMode="month";this.mainFilter=undefined;this.secondaryFilter=undefined;this.scrollableTaskList=false;this.plannerProps=undefined}initWithPersistedState(){if(this.store&&this.stateId){const t=this.store.getState(this.stateId);if(t!=null){P(this,R,"f").debug.logMessage(this,"Initializing stateId "+this.stateId);this.detailFilter=t.detailFilter;this.showSecondaryDates=t.showSecondaryDates;this.detailInitialScrollX=t.detailInitialScrollX;this.detailInitialScrollY=t.detailInitialScrollY;this.taskFilter=t.taskFilter;this.taskInitialScrollX=t.taskInitialScrollX;this.taskInitialScrollY=t.taskInitialScrollY;this.viewMode=t.viewMode}}}persistState(){if(this.store&&this.stateId){let t=false;if(!P(this,R,"f").objects.deepEqual(this.state.detailFilter,P(this,A,"f").detailFilter)){this.state.detailFilter=P(this,A,"f").detailFilter;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.showSecondaryDates,P(this,A,"f").showSecondaryDates)){this.state.showSecondaryDates=P(this,A,"f").showSecondaryDates;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.detailInitialScrollX,P(this,A,"f").detailInitialScrollX)){this.state.detailInitialScrollX=P(this,A,"f").detailInitialScrollX;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.detailInitialScrollY,P(this,A,"f").detailInitialScrollY)){this.state.detailInitialScrollY=P(this,A,"f").detailInitialScrollY;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.taskFilter,P(this,A,"f").taskFilter)){this.state.taskFilter=P(this,A,"f").taskFilter;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.taskInitialScrollX,P(this,A,"f").taskInitialScrollX)){this.state.taskInitialScrollX=P(this,A,"f").taskInitialScrollX;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.taskInitialScrollY,P(this,A,"f").taskInitialScrollY)){this.state.taskInitialScrollY=P(this,A,"f").taskInitialScrollY;t=true}if(!P(this,R,"f").objects.deepEqual(this.state.viewMode,P(this,A,"f").viewMode)){this.state.viewMode=P(this,A,"f").viewMode;t=true}if(t){P(this,R,"f").debug.logMessage(this,"Persisting stateId "+this.stateId);this.store.persistState(this.stateId,this.state)}}}dataChanged(){W(this,K,{},"f")}async getProps(t){return r(this,w,t)}async refresh(){s(this);this.plannerRenderer.refresh()}async setProps(t){l(this,w,t)}async addPhases(t,i){var s;const e=P(this,I,"m",L).call(this,t);if(e){P(this,K,"f")[t]=i;e.phases=(s=i.rows)===null||s===void 0?void 0:s.filter((t=>C(t.cells[this.phaseDates[0]],t.cells[this.phaseDates[1]]))).map((t=>{const s=x(t.cells[this.phaseDates[0]],t.cells[this.phaseDates[1]],t.cells[this.phasePrevDates[0]],t.cells[this.phasePrevDates[1]],t.cells[this.phaseHours[0]],t.cells[this.phaseHours[1]],t.cells[this.phasePrevHours[0]],t.cells[this.phasePrevHours[1]]);const n=T(t,this.phaseIdCol,this.phaseNameCol,i.columns,this.phaseColumns,(()=>this.phaseColumns.map((s=>s==this.phaseDates[0]?"#START#":s==this.phaseDates[1]?"#END#":f(i.columns.find((t=>t.name==s)),t.cells[s])))));let h=P(this,I,"m",et).call(this,t,this.phaseIconCol);let o=P(this,I,"m",nt).call(this,t,this.phaseIconCol);let a={taskRow:e.taskRow,phaseRow:t,id:e.id+"_"+t.cells[this.phaseIdCol].value,phaseRowId:t.id,taskRowId:e.taskRowId,name:t.cells[this.phaseNameCol].value,startDate:s.dateValues[0],endDate:s.dateValues[1],secondaryStartDate:s.secDateValues[0],secondaryEndDate:s.secDateValues[1],type:"task",color:t.cells[this.phaseColorCol].value,selectedColor:t.cells[this.phaseColorCol].value,valuesToShow:n,rowType:c.PHASE,icon:h?{url:h,color:o!==null&&o!==void 0?o:"#595959"}:undefined,startHour:s.hourValues[0],endHour:s.hourValues[1],secondaryStartHour:s.secHourValues[0],secondaryEndHour:s.secHourValues[1]};return a}))}this.plannerProps.mainGantt.initialScrollX=P(this,A,"f").taskInitialScrollX;this.plannerProps.mainGantt.initialScrollY=P(this,A,"f").taskInitialScrollY;if(this.plannerProps.secondaryGantt){this.plannerProps.secondaryGantt.initialScrollX=P(this,A,"f").detailInitialScrollX;this.plannerProps.secondaryGantt.initialScrollX=P(this,A,"f").detailInitialScrollY}this.plannerProps=Object.assign({},this.plannerProps);this.refresh()}componentWillLoad(){P(this,R,"f").debug.logLoad(this,false);P(this,R,"f").theme.register(this);this.initWithPersistedState();W(this,A,{detailFilter:this.detailFilter,detailInitialScrollX:this.detailInitialScrollX,detailInitialScrollY:this.detailInitialScrollY,showSecondaryDates:this.showSecondaryDates,taskFilter:this.taskFilter,taskInitialScrollX:this.taskInitialScrollX,taskInitialScrollY:this.taskInitialScrollY,viewMode:this.viewMode},"f")}componentDidLoad(){let t=P(this,I,"m",X).call(this,P(this,I,"m",st).call(this,P(this,A,"f").detailFilter,true));const i=this.rootElement.shadowRoot.querySelector("#main-filter");v(i);const s=this.rootElement.shadowRoot.querySelector("#secondary-filter");if(t){v(s)}let e;let n;let h;const o=500;this.plannerProps={mainGantt:{title:this.titleMess,items:P(this,I,"m",G).call(this,P(this,I,"m",st).call(this,P(this,A,"f").taskFilter,false)),stylingOptions:Object.assign(Object.assign({},p),{listCellWidth:this.listCellWidth}),filter:i,hideLabel:true,ganttHeight:this.taskHeight,showSecondaryDates:P(this,A,"f").showSecondaryDates,onClick:t=>this.handleOnClick(t),onDblClick:t=>this.handleOnDblClick(t),onContextMenu:(t,i)=>this.handleOnContextMenu(t,i),onDateChange:t=>this.handleOnDateChange(t),initialScrollX:this.taskInitialScrollX,initialScrollY:this.taskInitialScrollY,readOnly:this.readOnly,onScrollY:t=>{window.clearTimeout(n);n=window.setTimeout((()=>this.handleTaskGanttScrollY(t)),o)},onPhaseDrop:t=>this.handleOnPhaseDrop(t)},secondaryGantt:t?{title:"",items:t,stylingOptions:Object.assign(Object.assign({},p),{listCellWidth:this.listCellWidth}),filter:s,hideLabel:true,ganttHeight:this.detailHeight,onClick:t=>this.handleOnClick(t),onContextMenu:(t,i)=>this.handleOnContextMenu(t,i),onDateChange:t=>this.handleOnDateChange(t),initialScrollX:this.detailInitialScrollX,initialScrollY:this.detailInitialScrollY,readOnly:this.readOnly,onScrollY:t=>{window.clearTimeout(h);h=window.setTimeout((()=>this.handleDetailGanttScrollY(t)),o)}}:undefined,onSetDoubleView:t=>this.handleOnSetDoubleView(t),onSetViewMode:t=>this.handleOnSetViewMode(t),viewMode:this.viewMode,scrollableTaskList:this.scrollableTaskList,onScrollX:t=>{window.clearTimeout(e);e=window.setTimeout((()=>this.handleOnScrollX(t)),o)}};this.kupReady.emit({comp:this,id:this.rootElement.id,value:undefined});if(this.taskFilter){P(this,I,"m",it).call(this,this.taskFilter)}if(this.detailFilter){P(this,I,"m",it).call(this,this.detailFilter,true)}P(this,R,"f").debug.logLoad(this,true)}componentDidRender(){this.persistState();P(this,R,"f").debug.logRender(this,true)}onKupDblClick(t,i){this.kupDblClick.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}onKupClick(t,i){this.kupClick.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}onKupContextMenu(t,i,s){let e;let n;let h;switch(i.type){case"project":{e=i.taskRow;n=e.cells[this.taskIdCol];h=this.data.columns[this.taskIdCol];break}case"task":{e=i.phaseRow;n=e.cells[this.phaseIdCol];break}case"timeline":{e=i.detailRow;n=e.cells[this.detailIdCol];h=this.data.columns[this.detailIdCol];break}}this.kupContextMenu.emit({comp:this,id:this.rootElement.id,value:i,taskAction:s,details:{cell:n,column:h,originalEvent:t,row:e}})}onKupDateChange(t,i){this.kupDateChange.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}onKupPhaseDrop(t,i){this.kupPhaseDrop.emit({comp:this,id:this.rootElement.id,value:t,taskAction:i})}handleOnDblClick(t){switch(t.rowType){case c.TASK:if(P(this,I,"m",N).call(this)){this.onKupDblClick(t,m.onDblClick)}break;case c.PHASE:if(P(this,I,"m",_).call(this)){this.onKupDblClick(t,m.onDblClick)}break;case c.DETAIL:if(P(this,I,"m",q).call(this)){this.onKupDblClick(t,m.onDblClick)}break}for(let t=0;t<P(this,Y,"f").length;t++){clearTimeout(P(this,Y,"f")[t]);P(this,R,"f").debug.logMessage(this,"Cleared click timeout("+P(this,Y,"f")[t]+").")}W(this,Y,[],"f")}handleOnClick(t){P(this,Y,"f").push(setTimeout((()=>{switch(t.rowType){case c.TASK:const i=t.phases?m.onTaskClosing:m.onTaskOpening;if(P(this,I,"m",B).call(this,t)){this.onKupClick(t,i)}break;case c.PHASE:if(P(this,I,"m",J).call(this)){this.onKupClick(t,m.onClick)}break;case c.DETAIL:if(P(this,I,"m",Q).call(this)){this.onKupClick(t,m.onClick)}break}}),300))}handleOnContextMenu(t,i){switch(i.rowType){case c.TASK:if(P(this,I,"m",U).call(this)){this.onKupContextMenu(t,i,m.onRightClick)}break;case c.PHASE:if(P(this,I,"m",Z).call(this)){this.onKupContextMenu(t,i,m.onRightClick)}break;case c.DETAIL:if(P(this,I,"m",$).call(this)){this.onKupContextMenu(t,i,m.onRightClick)}break}}handleOnSetDoubleView(t){var i;P(this,A,"f").showSecondaryDates=t;if((i=this.plannerProps)===null||i===void 0?void 0:i.mainGantt){this.plannerProps.mainGantt.showSecondaryDates=t}this.persistState()}handleOnSetViewMode(t){P(this,A,"f").viewMode=t;this.plannerProps.viewMode=t;this.persistState()}handleOnScrollX(t){P(this,A,"f").taskInitialScrollX=t;P(this,A,"f").detailInitialScrollX=t;this.persistState()}handleTaskGanttScrollY(t){P(this,A,"f").taskInitialScrollY=t;this.persistState()}handleDetailGanttScrollY(t){P(this,A,"f").detailInitialScrollY=t;this.persistState()}handleOnDateChange(t){if(P(this,I,"m",tt).call(this,t)){if(t.rowType!=c.DETAIL){this.onKupDateChange(t,m.onResize)}}}handleOnPhaseDrop(t){this.onKupPhaseDrop(t,m.onTask)}render(){var t,i,s;const h=this.plannerProps?Object.assign(Object.assign({},this.plannerProps),{onSetDoubleView:this.handleOnSetDoubleView.bind(this),onSetViewMode:this.handleOnSetViewMode.bind(this),onScrollX:this.handleOnScrollX.bind(this),mainGantt:Object.assign(Object.assign({},(t=this.plannerProps)===null||t===void 0?void 0:t.mainGantt),{onScrollY:this.handleTaskGanttScrollY.bind(this)})}):null;if((i=this.plannerProps)===null||i===void 0?void 0:i.secondaryGantt){h.secondaryGantt=Object.assign(Object.assign({},this.plannerProps.secondaryGantt),{onScrollY:this.handleDetailGanttScrollY.bind(this)})}return e(n,{key:"ec595d6944c84d1ff3419a4f9ea4b05b9daa7c8c"},e("style",{key:"9476707409a3f42a4053432d9516fda679f96341"},P(this,R,"f").theme.setKupStyle(this.rootElement)),e("div",{key:"ebcc7405f609f4ecffee385e5c3e710e67e67493",id:g,style:{maxWidth:this.maxWidth}},this.plannerProps&&e("kup-planner-renderer",{key:"9cb8c0178398029f74dded13fb14d96d5a3f3652",props:h,ref:t=>this.plannerRenderer=t})),e("div",{key:"227fba551833686254d2f9d904093fb1cd6afb31",style:{display:this.plannerProps?"none":""}},e(y,{key:"4cb494e54f8ca483dd46165b606ab1b54c5da58a",icon:d.SEARCH,id:"main-filter",label:P(this,R,"f").language.translate(u.SEARCH),onKeyDown:t=>{if(t.key==="Enter"){P(this,I,"m",it).call(this,t.target.value)}},value:this.taskFilter,wrapperClass:"filter"}),((s=this.detailData)===null||s===void 0?void 0:s.rows)&&this.detailData.rows.length>0?e(y,{icon:d.SEARCH,id:"secondary-filter",label:P(this,R,"f").language.translate(u.SEARCH),onKeyDown:t=>{if(t.key==="Enter"){P(this,I,"m",it).call(this,t.target.value,true)}},value:this.detailFilter,wrapperClass:"filter"}):null))}disconnectedCallback(){P(this,R,"f").theme.unregister(this);this.kupDidUnload.emit({comp:this,id:this.rootElement.id,storedSettings:P(this,A,"f")})}get rootElement(){return h(this)}static get watchers(){return{data:["dataChanged"]}}};R=new WeakMap,V=new WeakMap,Y=new WeakMap,K=new WeakMap,A=new WeakMap,I=new WeakSet,G=function t(i){var s;if(!i||!i.rows){return[]}let e=(s=i.rows)===null||s===void 0?void 0:s.filter((t=>C(t.cells[this.taskDates[0]],t.cells[this.taskDates[1]]))).map((t=>{const s=x(t.cells[this.taskDates[0]],t.cells[this.taskDates[1]],t.cells[this.taskPrevDates[0]],t.cells[this.taskPrevDates[1]],t.cells[this.taskHours[0]],t.cells[this.taskHours[1]],t.cells[this.taskPrevHours[0]],t.cells[this.taskPrevHours[1]]);const e=T(t,this.taskIdCol,this.taskNameCol,i.columns,this.taskColumns,(()=>this.taskColumns.map((s=>s==this.taskDates[0]?"#START#":s==this.taskDates[1]?"#END#":f(i.columns.find((t=>t.name==s)),t.cells[s])))));let n=P(this,I,"m",et).call(this,t,this.taskIconCol);let h=P(this,I,"m",nt).call(this,t,this.taskIconCol);let o={taskRow:t,taskRowId:t.id,id:t.cells[this.taskIdCol].value,name:t.cells[this.taskNameCol].value,startDate:s.dateValues[0],endDate:s.dateValues[1],secondaryStartDate:s.secDateValues[0],secondaryEndDate:s.secDateValues[1],type:"project",valuesToShow:e,rowType:c.TASK,icon:n?{url:n,color:h!==null&&h!==void 0?h:"#595959"}:undefined,startHour:s.hourValues[0],endHour:s.hourValues[1],secondaryStartHour:s.secHourValues[0],secondaryEndHour:s.secHourValues[1]};return o}));return e},X=function t(i){if(!i||!i.rows){return undefined}let s=[];i.rows.filter((t=>C(t.cells[this.detailDates[0]],t.cells[this.detailDates[1]]))).forEach((t=>{var e,n;const h=t.cells[this.detailIdCol].value;const o=t.cells[this.detailNameCol].value;const a=x(t.cells[this.detailDates[0]],t.cells[this.detailDates[1]],undefined,undefined,t.cells[this.detailHours[0]],t.cells[this.detailHours[1]]);const f=T(t,this.detailIdCol,this.detailNameCol,i.columns,this.detailColumns);let r=s.find((t=>t.id==h));if(!r){r={id:h,name:o,detailRow:t,type:"timeline",valuesToShow:f,rowType:c.DETAIL,schedule:[]};s.push(r)}let l=P(this,I,"m",et).call(this,t,this.detailIconCol);let d=P(this,I,"m",nt).call(this,t,this.detailIconCol);r.schedule.push({startDate:a.dateValues[0],endDate:a.dateValues[1],color:this.detailColorCol?(e=t.cells[this.detailColorCol].value)!==null&&e!==void 0?e:"#D9D9D8":"#D9D9D8",selectedColor:this.detailColorCol?(n=t.cells[this.detailColorCol].value)!==null&&n!==void 0?n:"#D9D9D8":"#D9D9D8",icon:l?{url:l,color:d!==null&&d!==void 0?d:"#595959"}:undefined,startHour:a.hourValues[0],endHour:a.hourValues[1]})}));return s},L=function t(i){return this.plannerProps.mainGantt.items.find((t=>t.id==i))},F=function t(i){const s=P(this,I,"m",L).call(this,i);if(s)s.phases=undefined;this.plannerProps=Object.assign({},this.plannerProps)},N=function t(){return true},_=function t(){return true},q=function t(){return true},B=function t(i){const s=P(this,I,"m",L).call(this,i.id);if(s===null||s===void 0?void 0:s.phases){P(this,I,"m",F).call(this,s.id)}return true},J=function t(){return true},Q=function t(){return true},U=function t(){return true},Z=function t(){return true},$=function t(){return true},tt=function t(i){let s=false;if(!P(this,V,"f")){s=true;W(this,V,new k(i),"f")}else if(!P(this,V,"f").isEquivalent(i)){W(this,V,new k(i),"f");s=true}return s},it=function t(i,s){if(s){P(this,A,"f").detailFilter=i}else{P(this,A,"f").taskFilter=i}const e=s?{secondaryGantt:Object.assign(Object.assign({},this.plannerProps.secondaryGantt),{items:P(this,I,"m",X).call(this,P(this,I,"m",st).call(this,i,s))})}:{mainGantt:Object.assign(Object.assign({},this.plannerProps.mainGantt),{items:P(this,I,"m",G).call(this,P(this,I,"m",st).call(this,i,s))})};this.plannerProps=Object.assign(Object.assign({},this.plannerProps),e);this.persistState()},st=function t(i,s){const e=s?this.detailData:this.data;if(!e||!e.rows||e.rows.length==0){return undefined}if(!i){return e}const n={columns:this.data.columns,rows:[]};const h=[];for(let t=0;t<e.rows.length;t++){const s=e.rows[t];const n=s.cells;for(let t=0;t<e.columns.length;t++){const o=e.columns[t];const a=n[o.name];if(a){const n=f(e.columns[t],a);const o=!!(n.toLowerCase().indexOf(i.toLowerCase())>-1);if(o){h.push({row:s,weight:t});break}}}}h.sort(((t,i)=>t.weight-i.weight)).forEach((t=>{n.rows.push(t.row)}));return n},et=function t(i,s){var e;let n=undefined;if(s){const t=i.cells[s];let h=(e=t===null||t===void 0?void 0:t.data)===null||e===void 0?void 0:e.resource;if(!h){h=t.value}if(h){n=o("./assets/svg/"+h+".svg")}}return n},nt=function t(i,s){var e;let n=undefined;if(s){const t=i.cells[s];n=(e=t===null||t===void 0?void 0:t.data)===null||e===void 0?void 0:e.color;if(n){n=P(this,R,"f").theme.colorCheck(n).hexColor}}return n};ht.style=M;export{ht as kup_planner};
2
+ //# sourceMappingURL=p-67763e23.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,c as e,f as i,h as o,H as s,d as n}from"./p-d7c15b0e.js";import{k as r,y as a,g as l,s as h,a1 as c,v as p,h as u,b as d,e as f,N as b,R as x,au as g,V as m,E as k}from"./p-49a79002.js";import{f as w,p as v,s as y}from"./p-2049ede1.js";import{F as _}from"./p-2b519589.js";import{c as j}from"./p-3dde5808.js";import{c as C}from"./p-635bb4b3.js";import{F as z}from"./p-b2875c24.js";import{p as P,r as M,F as R}from"./p-ba47d93e.js";import{F as A}from"./p-c4054aba.js";import"./p-029c7cbe.js";import"./p-5d03c077.js";import"./p-1cb80f82.js";import"./p-cc32b7a2.js";import"./p-e3062c19.js";import"./p-d4a879fc.js";var I;(function(t){t["cardData"]="Data of the card linked to the box when the latter's layout must be a premade template.";t["columns"]="Number of columns.";t["customStyle"]="Custom style of the component.";t["data"]="Actual data of the box.";t["dragEnabled"]="Enable dragging.";t["dropEnabled"]="Enable dropping.";t["dropOnSection"]="Drop can be done in section.";t["enableRowActions"]="If enabled, a button to load / display the row actions will be displayed on the right of every box.";t["globalFilter"]="When set to true it activates the global filter.";t["globalFilterValue"]="The value of the global filter.";t["kanban"]="Displays the boxlist as a Kanban.";t["layout"]="How the field will be displayed. If not present, a default one will be created.";t["lazyLoadRows"]="When set to true, extra rows will be automatically loaded once the last row enters the viewport.";t["loadMoreLimit"]="Sets a maximum limit of new records which can be required by the load more functionality.";t["loadMoreMode"]="Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.";t["loadMoreStep"]="The number of records which will be requested to be downloaded when clicking on the load more button. This property is regulated also by loadMoreMode.";t["multiSelection"]="Enable multi selection.";t["pageSelected"]="Current page number.";t["pagination"]="Enables pagination.";t["rowsPerPage"]="Number of current rows per page.";t["scrollOnHover"]="Activates the scroll on hover function.";t["selectBox"]="Automatically selects the box at the specified index.";t["selectedRowsState"]="Multiple selection.";t["showLoadMore"]="If set to true, displays the button to load more records.";t["showSelection"]="If enabled, highlights the selected box/boxes.";t["sortBy"]="If sorting is enabled, specifies which column to sort.";t["sortEnabled"]="Enable sorting.";t["stateId"]="";t["store"]="";t["swipeDisabled"]="Disable swipe."})(I||(I={}));var E;(function(t){t["CONSTANT"]="constant";t["CONSTANT_INCREMENT"]="constant_increment";t["PROGRESSIVE_THRESHOLD"]="progressive_threshold"})(E||(E={}));class S{constructor(){this.globalFilterValue="";this.sortBy="";this.selectedRowsState="";this.pageSelected=1;this.rowsPerPage=0;this.load=false;this.loadMoreLimit=1e3;this.showLoadMore=false}toDebugString(){return"box state"}}const O=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{--kup_box_background_color:var(--kup-box-background-color, var(--kup-layer-1));--kup_box_background_color_hover:var(\n --kup-box-background-color-hover,\n var(--kup-layer-1-hover)\n );--kup_box_background_color_selected:var(\n --kup-box-background-color-selected,\n var(--kup-layer-1-selected)\n );--kup_box_text_color:var(--kup-box-text-color, var(--kup-text-secondary));--kup_box_grid_gap:var(--kup-box-grid-gap, var(--kup-space-03));--kup_box_transition:var(--kup-box-transition, 0.25s);--kup_box_border_color_drag:var(--kup-box-border-color-drag, var(--kup-border-interactive))\n display: block;--kup_box_padding:var(--kup-box-padding, var(--kup-space-05))}.box-component{transition:border var(--kup_box_transition) ease}.box-component[kup-drag-over]{position:relative;border:3px dashed var(--kup_box_border_color_drag)}#box-container{display:grid;grid-gap:var(--kup_box_grid_gap);color:var(--kup_box_text_color);overflow:auto}#box-container.is-kanban .kanban-section{overflow:auto}#box-container.is-kanban .box-wrapper{padding-top:1em}#box-container.is-kanban .box-wrapper .box{overflow:auto}#box-container *:not(.progress-bar-percentage){box-sizing:border-box}#box-container .box-wrapper{display:flex;align-items:center;background-color:var(--kup_box_background_color);border-radius:var(--kup-radius-00)}#box-container .box-wrapper:hover{background-color:var(--kup_box_background_color_hover)}#box-container .box-wrapper.selected{background-color:var(--kup_box_background_color_selected)}#box-container .box-wrapper.selected .box-section.titled>h3{background-color:transparent}#box-container .box-wrapper .box{flex-grow:1;cursor:pointer;position:relative;display:flex;padding:var(--kup_box_padding);transition:background-color var(--kup_box_transition) ease, box-shadow var(--kup_box_transition) ease, border var(--kup_box_transition) ease}#box-container .box-wrapper .box.draggable{touch-action:none;user-select:none}#box-container .box-wrapper .box.column{flex-direction:column}#box-container .box-wrapper .box[kup-draggable]{opacity:0.5}#box-container .box-wrapper .box[kup-drag-over]{border:3px dashed var(--kup_box_border_color_drag);position:relative;z-index:2}#box-container .box-wrapper .box .box-section{display:flex;flex-direction:row;flex:1 1 1%;flex-wrap:wrap}#box-container .box-wrapper .box .box-section.column{flex-direction:column;justify-content:center;flex-wrap:unset}#box-container .box-wrapper .box .box-section.column>.box-section{flex:0 0 auto}#box-container .box-wrapper .box .box-section.grid{display:grid}#box-container .box-wrapper .box .box-section .box-object{min-height:16px}#box-container .box-wrapper .box .box-section .box-object img{height:auto}#box-container .box-wrapper .box .box-section.collapse-section .header{border-top:1px solid var(--kup-border-subtle);color:rgba(var(--kup-text-secondary-rgb), 0.75);display:flex;justify-content:space-around;width:100%}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content{margin:0.5em;display:flex;align-items:center}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image{transition:transform 0.15s}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image.toggled{transform:rotate(-180deg)}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .kup-icon.kup-dropdown-icon{margin:0;-webkit-mask:var(--kup-dropdown-icon);mask:var(--kup-dropdown-icon)}#box-container .box-wrapper .box .box-section.collapse-section .content{display:none;width:100%}#box-container .box-wrapper .box .box-section.collapse-section.open .content{display:block}#box-container .box-wrapper .box .box-section.titled{border:1px solid var(--kup-border-subtle);padding-top:5px;position:relative;margin:10px}#box-container .box-wrapper .box .box-section.titled>h3{background:var(--kup-background-color);font-size:calc(var(--kup-font-size) * 1.15);position:absolute;margin:0px;padding:0 8px;top:-11px;left:5px;transition:background-color 0.25s ease}#box-container .box-wrapper .box .box-selection{position:absolute;top:0.5em;right:0.5em;z-index:1}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler{position:relative;width:24px;height:24px;margin-left:3px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler svg{cursor:pointer;opacity:0;fill:var(--kup-text-color);transition:opacity 300ms ease-out}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu{background:var(--kup-background-color);border:1px solid var(--kup-border-subtle);box-shadow:0px 0px 7.5px 0px rgba(128, 128, 128, 0.5);position:absolute;top:0;right:24px;display:none;z-index:10}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul{list-style-type:none;margin:0;padding:0}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li{cursor:pointer;white-space:nowrap;padding:0 12px;display:flex;align-items:center;line-height:30px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li:not(:last-child){border-bottom:1px solid var(--kup-border-subtle)}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu.open{display:block}#box-container .box-wrapper:hover .row-actions-wrapper .row-actions-toggler svg{opacity:1}#sort-panel,#global-filter{margin-bottom:1em}:host(.kup-center-aligned) #kup-component .box-section{text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell img{margin:auto}:host(.kup-right-aligned) #kup-component .box-section{text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell img{margin-left:auto;margin-right:0}:host(.kup-top-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-start}:host(.kup-bottom-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-end}:host(.kup-flat-on-hover) #box-container .box-wrapper .box:hover{box-shadow:none}:host(.kup-shaped) .box{border-radius:10px}:host(.kup-round) .box{border-radius:25px}:host(.kup-dashed-sections) .box-section{border:2px dashed var(--kup-text-color)}:host(:not(.kup-paddingless)) #box-container .box .box-section .box-object{padding:1px 4px}:host(:not(.kup-paddingless)) #box-container .box .box-section.last-child{padding:3px 4px}:host(.kup-danger){--kup-box-primary-color-rgb:var(--kup-danger-color-rgb)}:host(.kup-info){--kup-box-primary-color-rgb:var(--kup-info-color-rgb)}:host(.kup-secondary){--kup-box-primary-color-rgb:var(--kup-secondary-color-rgb)}:host(.kup-success){--kup-box-primary-color-rgb:var(--kup-success-color-rgb)}:host(.kup-warning){--kup-box-primary-color-rgb:var(--kup-warning-color-rgb)}";const D=O;var W=undefined&&undefined.__classPrivateFieldGet||function(t,e,i,o){if(i==="a"&&!o)throw new TypeError("Private accessor was defined without a getter");if(typeof e==="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?o:i==="a"?o.call(t):o?o.value:e.get(t)};var B=undefined&&undefined.__classPrivateFieldSet||function(t,e,i,o,s){if(o==="m")throw new TypeError("Private method is not writable");if(o==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e==="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return o==="a"?s.call(t,i):s?s.value=i:e.set(t,i),i};var T,$,L,F,H,N,G,V,q;const K=class{constructor(i){t(this,i);this.kupBoxClick=e(this,"kup-box-click",6);this.kupBoxSelected=e(this,"kup-box-selected",6);this.kupAutoBoxSelect=e(this,"kup-box-autoselect",6);this.kupRowActionMenuClick=e(this,"kup-box-rowactionmenuclick",6);this.kupRowActionClick=e(this,"kup-box-rowactionclick",6);this.kupDidLoad=e(this,"kup-box-didload",6);this.kupDidUnload=e(this,"kup-box-didunload",6);this.kupBoxContextMenu=e(this,"kup-box-contextmenu",6);this.kupLoadMoreClick=e(this,"kup-box-loadmoreclick",6);T.add(this);this.state=new S;this.kupManager=r();this.visibleColumns=[];this.rows=[];this.filteredRows=[];this.sectionRef=null;this.rowsRefs=[];this.hold=false;this.interactableDrag=[];this.interactableDrop=[];this.interactableTouch=[];$.set(this,undefined);L.set(this,[]);F.set(this,0);H.set(this,0);N.set(this,0);this.collapsedSection={};this.selectedRows=[];this.rowActionMenuOpened=undefined;this.currentPage=1;this.currentRowsPerPage=10;this.cardData=null;this.columns=1;this.customStyle="";this.data=null;this.dragEnabled=false;this.dropEnabled=false;this.dropOnSection=false;this.editableData=false;this.enableRowActions=false;this.globalFilter=false;this.globalFilterValue="";this.kanban=null;this.layout=undefined;this.lazyLoadRows=false;this.loadMoreLimit=1e3;this.loadMoreMode=E.PROGRESSIVE_THRESHOLD;this.loadMoreStep=60;this.multiSelection=false;this.pageSelected=1;this.pagination=false;this.rowsPerPage=undefined;this.scrollOnHover=false;this.selectBox=undefined;this.selectedRowsState=undefined;this.showLoadMore=false;this.showSelection=true;this.sortBy=undefined;this.sortEnabled=false;this.stateId="";this.store=undefined;this.swipeDisabled=false}initWithPersistedState(){if(this.store&&this.stateId){const t=this.store.getState(this.stateId);if(t!=null){this.kupManager.debug.logMessage(this,"Initialize with state for stateId "+this.stateId+": "+t);this.sortBy=this.state.sortBy;this.globalFilterValue=this.state.globalFilterValue;this.selectedRowsState=this.state.selectedRowsState;this.pageSelected=this.state.pageSelected;this.rowsPerPage=this.state.rowsPerPage;this.loadMoreLimit=t.loadMoreLimit;this.showLoadMore=t.showLoadMore}}}persistState(){if(this.store&&this.stateId){let t=false;if(!this.kupManager.objects.deepEqual(this.state.sortBy,this.sortBy)){this.state.sortBy=this.sortBy;t=true}if(!this.kupManager.objects.deepEqual(this.state.globalFilterValue,this.globalFilterValue)){this.state.globalFilterValue=this.globalFilterValue;t=true}if(!this.kupManager.objects.deepEqual(this.state.pageSelected,this.currentPage)){this.state.pageSelected=this.currentPage;t=true}if(!this.kupManager.objects.deepEqual(this.state.rowsPerPage,this.currentRowsPerPage)){this.state.rowsPerPage=this.currentRowsPerPage;t=true}const e=this.selectedRows.reduce(((t,e,i)=>{const o=i>0?";":"";return t+o+e.id}),"");if(!this.kupManager.objects.deepEqual(this.state.selectedRowsState,e)){this.state.selectedRowsState=e;t=true}if(!this.kupManager.objects.deepEqual(this.state.loadMoreLimit,this.loadMoreLimit)){this.state.loadMoreLimit=this.loadMoreLimit;t=true}if(!this.kupManager.objects.deepEqual(this.state.showLoadMore,this.showLoadMore)){this.state.showLoadMore=this.showLoadMore;t=true}if(!this.state.load){this.state.load=true;return}if(t){this.kupManager.debug.logMessage(this,"Persisting state for stateId "+this.stateId+": "+this.state);this.store.persistState(this.stateId,this.state)}}}rowsPerPageHandler(t){this.currentRowsPerPage=t}recalculateRows(){this.initRows()}onDataChanged(){a(this.getRows());this.initVisibleColumns();this.initRows();this.checkLayout()}onLayoutChanged(){this.checkLayout()}onSelectBoxChanged(){this.handleAutomaticBoxSelection()}async getProps(t){return l(this,I,t)}async loadRowActions(t,e){t.actions=e;this.rowActionMenuOpened=t}async refresh(){i(this)}async setProps(t){h(this,I,t)}getColumns(){return this.data&&this.data.columns?this.data.columns:[{title:"",name:"",size:undefined}]}initVisibleColumns(){this.visibleColumns=this.getColumns().filter((t=>{if(t.hasOwnProperty("visible")){return t.visible}return true}))}getRows(){return this.data&&this.data.rows?this.data.rows:[]}initRows(){this.filteredRows=this.getRows();if(this.globalFilter&&this.globalFilterValue){this.filteredRows=w(this.filteredRows,null,this.globalFilterValue,this.visibleColumns)}this.rows=this.sortRows(this.filteredRows);if(this.pagination){this.rows=v(this.rows,this.currentPage,this.currentRowsPerPage,false)}}sortRows(t){let e=t;if(this.sortBy){e=y(e,this.toSortObjectList())}return e}toSortObjectList(){const t=this.sortBy.split("|").map((t=>{const e=t.split(",");const i={column:e[0],sortMode:e.length>1?c[e[1]]:c.A};return i}));return t}checkScrollOnHover(){if(this.boxContainer){if(!this.kupManager.scrollOnHover.isRegistered(this.boxContainer)){if(this.scrollOnHover){this.kupManager.scrollOnHover.register(this.boxContainer)}}else{if(!this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}}}}checkLayout(){if(this.layout){this.boxLayout=this.layout;return}const t={horizontal:false,sections:[]};const e=this.visibleColumns;let i=e.length;let o=[];let s=0;while(i-- >0){o.push({column:e[s++].name})}t.content=o;this.boxLayout={sections:[t]}}onSortChange(t){let e=p(this.visibleColumns,t.detail.value);this.sortBy=e.name}onGlobalFilterChange({detail:t}){let e="";if(t&&t.value){e=t.value}this.globalFilterValue=e}isSectionExpanded(t,e){if(!t.id||!e.id){return false}return this.collapsedSection[e.id]&&this.collapsedSection[e.id][t.id]}handleAutomaticBoxSelection(){if(this.selectBox&&this.selectBox>0&&this.selectBox<=this.data.rows.length){this.selectedRows=[];for(let t of this.data.rows){if(t.id===(this.selectBox-1).toString()){this.selectedRows.push(t);break}}this.kupAutoBoxSelect.emit({comp:this,id:this.rootElement.id,row:this.selectedRows[0]})}}getEventDetails(t,e){let i=null;let o=null;let s=null;let n=null;if(t){for(let e=t.length-1;e>=0;e--){let o=t[e];if(!o.tagName){continue}switch(o.tagName.toUpperCase()){default:{if(o.classList.contains("box-object")){i=o}if(!s&&o["data-row"]){s=o["data-row"]}break}}}}if(i){if(i.classList.contains("f-cell")){const t=i["kup-get-cell-props"]();o=t.cell;n=t.column;s=t.row}else{o=i["data-cell"];s=i["data-row"];n=p(this.visibleColumns,i.dataset.column)}}return{boxObject:i?i:null,column:n?n:null,cell:o?o:null,originalEvent:e,row:s?s:null}}clickHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);if(e.row){if(this.multiSelection){this.onSelectionCheckChange(e.row)}else{this.selectedRows=[e.row]}}return e}contextMenuHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);return e}checkIfElementIsActionMenuIcon(t){if(t.tagName&&t.parentElement){return t.tagName==="svg"&&t.parentElement.classList.contains("row-actions-toggler")}return false}onSelectionCheckChange(t){var e=-1;for(let i=0;i<this.selectedRows.length;i++){const o=this.selectedRows[i];if(o.id===t.id){e=i;break}}if(e>=0){this.selectedRows.splice(e,1);this.selectedRows=[...this.selectedRows]}else{this.selectedRows=[...this.selectedRows,t]}this.kupBoxSelected.emit({comp:this,id:this.rootElement.id,rows:this.selectedRows})}toggleSectionExpand(t,e){if(!e.id){console.error("cannot expand / collapse a section withoun an ID");return}if(!t.id){console.error("cannot expand / collapse a section of a row without ad id");return}if(!this.collapsedSection[e.id]){this.collapsedSection[e.id]={};this.collapsedSection[e.id][t.id]=true}else{const i=this.collapsedSection[e.id];if(!i[t.id]){i[t.id]=true}else{i[t.id]=!i[t.id]}}this.collapsedSection=Object.assign({},this.collapsedSection)}onRowAction(t){if(!t){return}if(t===this.rowActionMenuOpened){this.rowActionMenuOpened=null;return}if(t.actions){this.rowActionMenuOpened=t}else{this.kupRowActionMenuClick.emit({comp:this,id:this.rootElement.id,row:t})}}onRowActionClick(t,e,i){this.kupRowActionClick.emit({comp:this,id:this.rootElement.id,row:t,action:e,index:i})}clickFunction(t){try{const e=t.composedPath();for(let t of e){if(this.checkIfElementIsActionMenuIcon(t)){return}}}catch(e){if(this.checkIfElementIsActionMenuIcon(t.target)){return}}this.rowActionMenuOpened=null}handlePageChange(t){const e=P(t,this.filteredRows.length,this.currentRowsPerPage);if(e){this.currentPage=e}}handleRowsPerPageChange(t){const e=M(t,this.filteredRows.length);if(e){this.currentRowsPerPage=e;this.adjustPaginator()}}adjustPaginator(){const t=this.rows.length;const e=Math.ceil(t/this.currentRowsPerPage);if(this.currentPage>e){this.currentPage=1}}renderSectionAsCard(t){let e=false;const i={button:[],cell:[],columns:[],image:[],progressbar:[],text:[]};for(let e=0;e<this.data.columns.length;e++){const o=this.data.columns[e];if(o.visible!==false){i.cell.push(t.cells[o.name]);i.columns.push(o)}}for(const e in t.cells){if(t.cells.hasOwnProperty(e)){const o=t.cells[e];if(o.cardID!==undefined&&o.obj){switch(o.obj.p){case"BTN":do{i.button.push({})}while(i.button.length<o.cardID);i.button[o.cardID]={label:o.value};break;case"IMG":do{i.image.push({})}while(i.image.length<o.cardID);i.image[o.cardID]={resource:o.value};break;case"PGB":do{i.progressbar.push({})}while(i.progressbar.length<o.cardID);i.progressbar[o.cardID]={value:o.value};break;default:do{i.text.push("")}while(i.text.length<o.cardID);i.text[o.cardID]=o.value;break}}}}for(const o in t.cells){if(t.cells.hasOwnProperty(o)){const s=t.cells[o];if(s.cardID===undefined&&s.obj){e=false;switch(s.obj.p){case"BTN":for(let t=0;t<i.button.length;t++){if(!Object.keys(i.button[t]).length){i.button[t]={label:s.value};e=true;break}}if(!e){i.button.push({label:s.value})}break;case"IMG":for(let t=0;t<i.image.length;t++){if(!Object.keys(i.image[t]).length){i.image[t]={resource:s.value};e=true;break}}if(!e){i.image.push({resource:s.value})}break;case"PGB":for(let t=0;t<i.progressbar.length;t++){if(!Object.keys(i.progressbar[t]).length){i.progressbar[t]={value:s.value};e=true;break}}if(!e){i.progressbar.push({value:s.value})}break;default:for(let t=0;t<i.text.length;t++){if(i.text[t]===""){i.text[t]=s.value;e=true;break}}if(!e){i.text.push(s.value)}break}}}}return o("kup-card",Object.assign({data:i},this.cardData))}renderRow(t){const e=[...this.visibleColumns];let i=null;let s=t.layout;if(!s){s=this.boxLayout}let n=false;if(s){if(s.horizontal){n=true}const o=s.sections;let r=o.length;let a=0;if(r>0){i=[]}const l={horizontal:n};while(r-- >0){if(this.cardData!==null&&this.cardData!==undefined&&typeof this.cardData==="object"){i.push(this.renderSectionAsCard(t))}else{i.push(this.renderSection(o[a++],l,t,e))}}}var r=false;for(let e of this.selectedRows){if(e.id===t.id){r=true}}let a=null;if(this.multiSelection){a=o("div",{class:"box-selection"},o("kup-checkbox",{checked:r}))}let l=null;if(this.enableRowActions&&!this.swipeDisabled){const e={"row-action-menu":true,open:t===this.rowActionMenuOpened};let i=null;if(t.actions){const e=t.actions.map(((e,i)=>{const s=`icon ${e.icon}`;return o("li",{tabindex:"0",onClick:()=>this.onRowActionClick(t,e,i)},o("div",{class:s}),o("div",{class:"text"},e.text))}));i=o("ul",null,e)}l=o("div",{class:"row-actions-wrapper"},o("div",{class:"row-actions-toggler"},o("svg",{version:"1.1",width:"24",height:"24",viewBox:"0 0 24 24",onClick:()=>this.onRowAction(t)},o("path",{d:"M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z"})),o("div",{class:e},i)))}let h=null;if(t.badgeData&&t.badgeData.length>0){h=t.badgeData.map((t=>o("kup-badge",{text:t.text,class:t["className"]?`centered ${t["className"]}`:"centered",imageData:t.imageData})))}const c={box:true,draggable:this.dragEnabled,selected:this.showSelection&&r,column:!n};const p=t.style||{};return o("div",{class:"box-wrapper",style:p,ref:t=>{if(t){W(this,L,"f").push(t)}}},o("div",{class:c,"data-row":t,ref:t=>this.rowsRefs.push(t)},a,i,h),l)}renderSection(t,e,i,s){let n=null;if(t.sections&&t.sections.length>0){const e=t.sections;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderSection(e[r++],t,i,s))}}else if(t.content){const e=t.content;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderBoxObject({boxObject:e[r++],row:i,visibleColumns:s},true))}}else if(s.length>0){const t=s[0];n=this.renderBoxObject({boxObject:{column:t.name},row:i,visibleColumns:s})}const r=this.isSectionExpanded(i,t);const a=!!t.columns;const l={"box-section":true,open:r,column:!a&&!t.horizontal,grid:a,titled:!!t.title,"last-child":!t.sections||t.sections.length===0};const h=t.style||{};if(t.dim&&e){h.flex=`0 0 ${t.dim}`;h.overflow="hidden";if(e.horizontal){h.maxWidth=t.dim}else{h.maxHeight=t.dim}}if(a){h["grid-template-columns"]=`repeat(${t.columns}, 1fr)`}let c=null;if(t.collapsible){l["collapse-section"]=true;const e={content:true};let s="";if(t.title){s=t.title}else if(r){s=this.kupManager.language.translate(u.COLLAPSE)}else{s=this.kupManager.language.translate(u.EXPAND)}c=o("div",{class:l,style:h},o("div",{class:e},n),o("div",{class:"header",role:"button",onClick:e=>{e.stopPropagation();this.toggleSectionExpand(i,t)}},o("div",{class:"header-content"},o("span",null,s),o(_,{resource:`${d.DROPDOWN}`,sizeX:"1.25em",sizeY:"1.25em",wrapperClass:r?"toggled":""}))))}else{const e=t.title?o("h3",null,t.title):null;c=o("div",{class:l,style:h},e,n)}return c}renderBoxObject({boxObject:t,row:e,visibleColumns:i},s){const n={"box-object":true};const r={};let a=null;let l=-1;for(let e=0;e<i.length;e++){const o=i[e];if(o.name===t.column){l=e;break}}if(l>=0){a=i[l];i.splice(l,1)}else if(s){a=this.data.columns.find((e=>e.name===t.column))}const h=e.cells[t.column];let c=undefined;if(h&&!this.kupManager.objects.isEmptyKupObj(h.obj)){n["is-obj"]=true;if(this.kupManager.debug.isDebug()){c=h.obj.t+"; "+h.obj.p+"; "+h.obj.k+";"}}const p={cell:h,column:a,component:this,editable:this.editableData,renderKup:true,row:e,setSizes:true,shape:t.shape};return o("div",{"data-cell":h,"data-row":e,"data-column":t.column,class:n,style:r,title:c},h&&a?o(z,Object.assign({},p)):o("span",null,t.value))}kanbanMode(){if(!this.kanban.columns||this.kanban.columns.length===0){this.kupManager.debug.logMessage(this,"No columns to group by detected.",f.ERROR);return{jsx:o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{ref:t=>this.rowsRefs.push(t)}),this.kupManager.language.translate(u.EMPTY_DATA)),style:{"grid-template-columns":`repeat(1, 1fr)`}}}const t=[];if(this.kanban.labels){for(let e=0;e<this.kanban.labels.length;e++){const i=this.kanban.labels[e];t.push({labels:i,nodes:[]})}}for(let e=0;e<this.rows.length;e++){let i=[];for(let t=0;t<this.kanban.columns.length;t++){try{i.push(this.rows[e].cells[this.kanban.columns[t]].value)}catch(t){this.kupManager.debug.logMessage(this,t,f.WARNING)}}const o={found:false,index:null};for(let e=0;e<t.length;e++){let s=t[e].labels;let n=true;for(let t=0;t<s.length;t++){if(i[t]!==s[t]){n=false;break}}if(n){o.found=true;o.index=e;break}}if(o.found){t[o.index].nodes.push(this.renderRow(this.rows[e]))}else{t.push({labels:i,nodes:[this.renderRow(this.rows[e])]})}}const e=[];for(let i=0;i<t.length;i++){const s=t[i].labels;const n={data:[]};for(let t=0;t<s.length;t++){n.data.push({value:s[t],id:s[t]})}e.push(o("div",{class:"kanban-section"},o(j,Object.assign({},n)),t[i].nodes))}return{jsx:e,style:{"grid-template-columns":this.kanban.isStacked?"repeat(1fr)":this.kanban.size?`repeat(${Object.keys(t).length}, ${this.kanban.size})`:`repeat(${Object.keys(t).length}, 1fr)`}}}didLoadInteractables(){this.interactableTouch.push(this.boxContainer);const t=t=>{var e;if(this.hold){this.hold=false;return}switch(t.button){case 0:const i={};for(const e in t){i[e]=t[e]}const o=this.clickHandler(i);this.kupBoxClick.emit({comp:this,id:this.rootElement.id,row:o.row,column:(e=o.column)===null||e===void 0?void 0:e.name});break;case 2:this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)});break}};const e=t=>{if(t.pointerType==="pen"||t.pointerType==="touch"){this.hold=true;this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)})}};this.kupManager.interact.on(this.boxContainer,b.TAP,t);this.kupManager.interact.on(this.boxContainer,b.HOLD,e)}didRenderInteractables(){if(this.dragEnabled){for(let t=0;t<this.rowsRefs.length;t++){const e=this.rowsRefs[t];const i=()=>{const t=this.rootElement.shadowRoot.querySelector(".box-object:hover");return{cell:t["data-cell"],column:p(this.visibleColumns,t.dataset.column),id:this.rootElement.id,multiple:this.multiSelection,row:t["data-row"],selectedRows:this.selectedRows}};if(e&&!this.interactableDrag.includes(e)){this.interactableDrag.push(e);this.kupManager.interact.draggable(e,{allowFrom:".box-object",cursorChecker(){return null}},{callback:i},x.BADGE)}}}if(this.dropEnabled){const t=()=>{const t=this.rootElement.shadowRoot.querySelector(".box:hover");if(!t){this.kupManager.debug.logMessage(this,"Couldn't find cell hovered to retrieve dropzone informations!",f.WARNING);return}const e=this.kupManager.getEventPath(t,this.rootElement);const i=this.getEventDetails(e);return{cell:i.cell,column:i.column,id:this.rootElement.id,row:i.row}};if(!this.interactableDrop.includes(this.sectionRef)){this.interactableDrop.push(this.sectionRef);this.kupManager.interact.dropzone(this.sectionRef,{accept:`[${g}]`},{dispatcher:this.rootElement,type:m.BOX})}for(let e=0;e<this.rowsRefs.length;e++){const i=this.rowsRefs[e];if(i&&!this.interactableDrop.includes(i)){this.interactableDrop.push(i);this.kupManager.interact.dropzone(i,{accept:`[${g}]`},{callback:t,dispatcher:this.rootElement,type:m.BOX})}}}}componentWillLoad(){this.kupManager.debug.logLoad(this,false);if(this.rowsPerPage){this.currentRowsPerPage=this.rowsPerPage}if(this.data&&this.data.rows&&this.currentRowsPerPage>this.data.rows.length){this.currentRowsPerPage=this.data.rows.length}this.kupManager.language.register(this);this.kupManager.theme.register(this);this.onDataChanged();this.adjustPaginator();if(document.querySelector(".header")){B(this,F,document.querySelector(".header").clientHeight,"f")}else{B(this,F,0,"f")}if(document.querySelector(".topbar")){B(this,F,W(this,F,"f")+document.querySelector(".topbar").clientHeight,"f")}W(this,T,"m",V).call(this)}componentDidLoad(){this.handleAutomaticBoxSelection();document.addEventListener("click",this.clickFunction.bind(this));this.currentPage=this.pageSelected;if(this.multiSelection&&this.selectedRowsState){this.selectedRows=[];let t=this.selectedRowsState.split(";");this.selectedRows=this.data.rows.filter((e=>t.indexOf(e.id)>=0))}this.didLoadInteractables();this.kupDidLoad.emit({comp:this,id:this.rootElement.id});this.kupManager.debug.logLoad(this,true)}componentWillRender(){this.kupManager.debug.logRender(this,false)}componentDidRender(){const t=this.rootElement.shadowRoot;if(t){const e=t.querySelectorAll(".f-text-field");for(let t=0;t<e.length;t++){A(e[t])}}this.checkScrollOnHover();this.persistState();this.didRenderInteractables();W(this,T,"m",G).call(this);this.kupManager.debug.logRender(this,true)}render(){B(this,L,[],"f");const t=!!(typeof this.kanban==="object"&&this.kanban!==null);let e=null;if(this.sortEnabled){const t=this.visibleColumns.map((t=>{const e={value:t.title,id:t.name,selected:t.name===this.sortBy};return e}));const i=[{value:"",id:""},...t];let s={label:this.kupManager.language.translate(u.SORT_BY),trailingIcon:true};let n={data:i,selectable:true};let r={"kup-text-field":s,"kup-list":n};e=o("div",{id:"sort-panel"},o("kup-combobox",{data:r,initialValue:this.sortBy,"onkup-combobox-itemclick":t=>this.onSortChange(t)}))}let i=null;if(this.globalFilter){i=o("div",{id:"global-filter"},o("kup-text-field",{fullWidth:true,label:this.kupManager.language.translate(k.SEARCH),icon:d.SEARCH,initialValue:this.globalFilterValue,"onkup-textfield-input":t=>{window.clearTimeout(this.globalFilterTimeout);this.globalFilterTimeout=window.setTimeout((()=>this.onGlobalFilterChange(t)),600)}}))}let n=null;if(this.showLoadMore||!this.lazyLoadRows&&this.pagination){n=o(R,{id:"top-paginator",currentPage:this.currentPage,max:this.filteredRows.length,perPage:this.currentRowsPerPage?this.currentRowsPerPage:this.rowsPerPage,onLoadMore:this.showLoadMore?()=>{W(this,T,"m",q).call(this)}:null,onNextPage:()=>this.handlePageChange(this.currentPage+1),onPrevPage:()=>this.handlePageChange(this.currentPage-1),onPageChange:t=>this.handlePageChange(t.detail.value),onRowsChange:t=>this.handleRowsPerPageChange(t.detail.value)})}let r=null;let a={};if(this.rows.length===0){r=o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{class:"box",ref:t=>this.rowsRefs.push(t)},this.kupManager.language.translate(u.EMPTY_DATA)));a={"grid-template-columns":`repeat(1, 1fr)`}}else if(t){const t=this.kanbanMode();r=t.jsx;a=t.style}else{a={"grid-template-columns":`repeat(${this.columns}, 1fr)`};const t=this.rows;let e=t.length;let i=0;r=[];while(e-- >0){r.push(this.renderRow(t[i++]))}}return o(s,null,o("style",null,this.kupManager.theme.setKupStyle(this.rootElement)),o("div",{id:C},o("div",{class:"box-component",ref:t=>this.sectionRef=t},e,i,n,o("div",{class:t?"is-kanban":"",id:"box-container",style:a,onContextMenu:t=>{t.preventDefault()},ref:t=>this.boxContainer=t},r))))}disconnectedCallback(){this.kupManager.interact.unregister(this.interactableDrag.concat(this.interactableDrop));this.kupManager.language.unregister(this);this.kupManager.theme.unregister(this);if(this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}document.removeEventListener("click",this.clickFunction.bind(this));this.kupDidUnload.emit({comp:this,id:this.rootElement.id})}get rootElement(){return n(this)}static get watchers(){return{rowsPerPage:["rowsPerPageHandler","recalculateRows"],globalFilterValue:["recalculateRows"],sortBy:["recalculateRows"],pagination:["recalculateRows"],currentPage:["recalculateRows"],currentRowsPerPage:["recalculateRows"],data:["onDataChanged"],layout:["onLayoutChanged"],selectBox:["onSelectBoxChanged"]}}};$=new WeakMap,L=new WeakMap,F=new WeakMap,H=new WeakMap,N=new WeakMap,T=new WeakSet,G=function t(){if(this.lazyLoadRows&&this.currentRowsPerPage<this.data.rows.length){W(this,$,"f").observe(W(this,L,"f")[W(this,L,"f").length-1])}},V=function t(){const e=t=>{t.forEach((t=>{if(t.isIntersecting){this.kupManager.debug.logMessage(this,"Last row entering the viewport, loading more elements.");const e=this.data.rows.length-this.currentRowsPerPage;if(e<this.loadMoreStep){this.currentRowsPerPage+=e}else{this.currentRowsPerPage+=this.loadMoreStep}t.target.classList.remove("last-row");W(this,$,"f").unobserve(t.target)}}))};const i={threshold:0,rootMargin:"-"+W(this,F,"f")+"px 0px 0px 0px"};B(this,$,new IntersectionObserver(e,i),"f")},q=function t(){var e;let i=0;switch(this.loadMoreMode){case E.CONSTANT:i=this.loadMoreStep;break;case E.CONSTANT_INCREMENT:i=this.loadMoreStep*(W(this,H,"f")+1);break;case E.PROGRESSIVE_THRESHOLD:i=Math.max(W(this,N,"f"),this.loadMoreStep)*Math.min(W(this,H,"f")+1,2);break}if(i>this.loadMoreLimit){i=this.loadMoreLimit}this.kupLoadMoreClick.emit({comp:this,id:this.rootElement.id,loadItems:i});B(this,N,i,"f");B(this,H,(e=W(this,H,"f"),e++,e),"f")};K.style=D;export{K as kup_box};
2
- //# sourceMappingURL=p-fd00900c.entry.js.map
1
+ import{r as t,c as e,f as i,h as o,H as s,d as n}from"./p-d7c15b0e.js";import{k as r,y as a,g as l,s as h,a1 as c,v as p,h as u,b as d,e as f,N as b,R as x,au as g,V as m,E as k}from"./p-86b6489e.js";import{f as w,p as v,s as y}from"./p-e9388650.js";import{F as _}from"./p-2b519589.js";import{c as j}from"./p-a16707d1.js";import{c as C}from"./p-635bb4b3.js";import{F as z}from"./p-7d7b8718.js";import{p as P,r as M,F as R}from"./p-f3f54269.js";import{F as A}from"./p-c4054aba.js";import"./p-029c7cbe.js";import"./p-5d03c077.js";import"./p-fe31a004.js";import"./p-cc32b7a2.js";import"./p-e3062c19.js";import"./p-d4a879fc.js";var I;(function(t){t["cardData"]="Data of the card linked to the box when the latter's layout must be a premade template.";t["columns"]="Number of columns.";t["customStyle"]="Custom style of the component.";t["data"]="Actual data of the box.";t["dragEnabled"]="Enable dragging.";t["dropEnabled"]="Enable dropping.";t["dropOnSection"]="Drop can be done in section.";t["enableRowActions"]="If enabled, a button to load / display the row actions will be displayed on the right of every box.";t["globalFilter"]="When set to true it activates the global filter.";t["globalFilterValue"]="The value of the global filter.";t["kanban"]="Displays the boxlist as a Kanban.";t["layout"]="How the field will be displayed. If not present, a default one will be created.";t["lazyLoadRows"]="When set to true, extra rows will be automatically loaded once the last row enters the viewport.";t["loadMoreLimit"]="Sets a maximum limit of new records which can be required by the load more functionality.";t["loadMoreMode"]="Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.";t["loadMoreStep"]="The number of records which will be requested to be downloaded when clicking on the load more button. This property is regulated also by loadMoreMode.";t["multiSelection"]="Enable multi selection.";t["pageSelected"]="Current page number.";t["pagination"]="Enables pagination.";t["rowsPerPage"]="Number of current rows per page.";t["scrollOnHover"]="Activates the scroll on hover function.";t["selectBox"]="Automatically selects the box at the specified index.";t["selectedRowsState"]="Multiple selection.";t["showLoadMore"]="If set to true, displays the button to load more records.";t["showSelection"]="If enabled, highlights the selected box/boxes.";t["sortBy"]="If sorting is enabled, specifies which column to sort.";t["sortEnabled"]="Enable sorting.";t["stateId"]="";t["store"]="";t["swipeDisabled"]="Disable swipe."})(I||(I={}));var E;(function(t){t["CONSTANT"]="constant";t["CONSTANT_INCREMENT"]="constant_increment";t["PROGRESSIVE_THRESHOLD"]="progressive_threshold"})(E||(E={}));class S{constructor(){this.globalFilterValue="";this.sortBy="";this.selectedRowsState="";this.pageSelected=1;this.rowsPerPage=0;this.load=false;this.loadMoreLimit=1e3;this.showLoadMore=false}toDebugString(){return"box state"}}const O=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{--kup_box_background_color:var(--kup-box-background-color, var(--kup-layer-1));--kup_box_background_color_hover:var(\n --kup-box-background-color-hover,\n var(--kup-layer-1-hover)\n );--kup_box_background_color_selected:var(\n --kup-box-background-color-selected,\n var(--kup-layer-1-selected)\n );--kup_box_text_color:var(--kup-box-text-color, var(--kup-text-secondary));--kup_box_grid_gap:var(--kup-box-grid-gap, var(--kup-space-03));--kup_box_transition:var(--kup-box-transition, 0.25s);--kup_box_border_color_drag:var(--kup-box-border-color-drag, var(--kup-border-interactive))\n display: block;--kup_box_padding:var(--kup-box-padding, var(--kup-space-05))}.box-component{transition:border var(--kup_box_transition) ease}.box-component[kup-drag-over]{position:relative;border:3px dashed var(--kup_box_border_color_drag)}#box-container{display:grid;grid-gap:var(--kup_box_grid_gap);color:var(--kup_box_text_color);overflow:auto}#box-container.is-kanban .kanban-section{overflow:auto}#box-container.is-kanban .box-wrapper{padding-top:1em}#box-container.is-kanban .box-wrapper .box{overflow:auto}#box-container *:not(.progress-bar-percentage){box-sizing:border-box}#box-container .box-wrapper{display:flex;align-items:center;background-color:var(--kup_box_background_color);border-radius:var(--kup-radius-00)}#box-container .box-wrapper:hover{background-color:var(--kup_box_background_color_hover)}#box-container .box-wrapper.selected{background-color:var(--kup_box_background_color_selected)}#box-container .box-wrapper.selected .box-section.titled>h3{background-color:transparent}#box-container .box-wrapper .box{flex-grow:1;cursor:pointer;position:relative;display:flex;padding:var(--kup_box_padding);transition:background-color var(--kup_box_transition) ease, box-shadow var(--kup_box_transition) ease, border var(--kup_box_transition) ease}#box-container .box-wrapper .box.draggable{touch-action:none;user-select:none}#box-container .box-wrapper .box.column{flex-direction:column}#box-container .box-wrapper .box[kup-draggable]{opacity:0.5}#box-container .box-wrapper .box[kup-drag-over]{border:3px dashed var(--kup_box_border_color_drag);position:relative;z-index:2}#box-container .box-wrapper .box .box-section{display:flex;flex-direction:row;flex:1 1 1%;flex-wrap:wrap}#box-container .box-wrapper .box .box-section.column{flex-direction:column;justify-content:center;flex-wrap:unset}#box-container .box-wrapper .box .box-section.column>.box-section{flex:0 0 auto}#box-container .box-wrapper .box .box-section.grid{display:grid}#box-container .box-wrapper .box .box-section .box-object{min-height:16px}#box-container .box-wrapper .box .box-section .box-object img{height:auto}#box-container .box-wrapper .box .box-section.collapse-section .header{border-top:1px solid var(--kup-border-subtle);color:rgba(var(--kup-text-secondary-rgb), 0.75);display:flex;justify-content:space-around;width:100%}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content{margin:0.5em;display:flex;align-items:center}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image{transition:transform 0.15s}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image.toggled{transform:rotate(-180deg)}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .kup-icon.kup-dropdown-icon{margin:0;-webkit-mask:var(--kup-dropdown-icon);mask:var(--kup-dropdown-icon)}#box-container .box-wrapper .box .box-section.collapse-section .content{display:none;width:100%}#box-container .box-wrapper .box .box-section.collapse-section.open .content{display:block}#box-container .box-wrapper .box .box-section.titled{border:1px solid var(--kup-border-subtle);padding-top:5px;position:relative;margin:10px}#box-container .box-wrapper .box .box-section.titled>h3{background:var(--kup-background-color);font-size:calc(var(--kup-font-size) * 1.15);position:absolute;margin:0px;padding:0 8px;top:-11px;left:5px;transition:background-color 0.25s ease}#box-container .box-wrapper .box .box-selection{position:absolute;top:0.5em;right:0.5em;z-index:1}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler{position:relative;width:24px;height:24px;margin-left:3px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler svg{cursor:pointer;opacity:0;fill:var(--kup-text-color);transition:opacity 300ms ease-out}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu{background:var(--kup-background-color);border:1px solid var(--kup-border-subtle);box-shadow:0px 0px 7.5px 0px rgba(128, 128, 128, 0.5);position:absolute;top:0;right:24px;display:none;z-index:10}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul{list-style-type:none;margin:0;padding:0}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li{cursor:pointer;white-space:nowrap;padding:0 12px;display:flex;align-items:center;line-height:30px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li:not(:last-child){border-bottom:1px solid var(--kup-border-subtle)}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu.open{display:block}#box-container .box-wrapper:hover .row-actions-wrapper .row-actions-toggler svg{opacity:1}#sort-panel,#global-filter{margin-bottom:1em}:host(.kup-center-aligned) #kup-component .box-section{text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell img{margin:auto}:host(.kup-right-aligned) #kup-component .box-section{text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell img{margin-left:auto;margin-right:0}:host(.kup-top-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-start}:host(.kup-bottom-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-end}:host(.kup-flat-on-hover) #box-container .box-wrapper .box:hover{box-shadow:none}:host(.kup-shaped) .box{border-radius:10px}:host(.kup-round) .box{border-radius:25px}:host(.kup-dashed-sections) .box-section{border:2px dashed var(--kup-text-color)}:host(:not(.kup-paddingless)) #box-container .box .box-section .box-object{padding:1px 4px}:host(:not(.kup-paddingless)) #box-container .box .box-section.last-child{padding:3px 4px}:host(.kup-danger){--kup-box-primary-color-rgb:var(--kup-danger-color-rgb)}:host(.kup-info){--kup-box-primary-color-rgb:var(--kup-info-color-rgb)}:host(.kup-secondary){--kup-box-primary-color-rgb:var(--kup-secondary-color-rgb)}:host(.kup-success){--kup-box-primary-color-rgb:var(--kup-success-color-rgb)}:host(.kup-warning){--kup-box-primary-color-rgb:var(--kup-warning-color-rgb)}";const D=O;var W=undefined&&undefined.__classPrivateFieldGet||function(t,e,i,o){if(i==="a"&&!o)throw new TypeError("Private accessor was defined without a getter");if(typeof e==="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?o:i==="a"?o.call(t):o?o.value:e.get(t)};var B=undefined&&undefined.__classPrivateFieldSet||function(t,e,i,o,s){if(o==="m")throw new TypeError("Private method is not writable");if(o==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e==="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return o==="a"?s.call(t,i):s?s.value=i:e.set(t,i),i};var T,$,L,F,H,N,G,V,q;const K=class{constructor(i){t(this,i);this.kupBoxClick=e(this,"kup-box-click",6);this.kupBoxSelected=e(this,"kup-box-selected",6);this.kupAutoBoxSelect=e(this,"kup-box-autoselect",6);this.kupRowActionMenuClick=e(this,"kup-box-rowactionmenuclick",6);this.kupRowActionClick=e(this,"kup-box-rowactionclick",6);this.kupDidLoad=e(this,"kup-box-didload",6);this.kupDidUnload=e(this,"kup-box-didunload",6);this.kupBoxContextMenu=e(this,"kup-box-contextmenu",6);this.kupLoadMoreClick=e(this,"kup-box-loadmoreclick",6);T.add(this);this.state=new S;this.kupManager=r();this.visibleColumns=[];this.rows=[];this.filteredRows=[];this.sectionRef=null;this.rowsRefs=[];this.hold=false;this.interactableDrag=[];this.interactableDrop=[];this.interactableTouch=[];$.set(this,undefined);L.set(this,[]);F.set(this,0);H.set(this,0);N.set(this,0);this.collapsedSection={};this.selectedRows=[];this.rowActionMenuOpened=undefined;this.currentPage=1;this.currentRowsPerPage=10;this.cardData=null;this.columns=1;this.customStyle="";this.data=null;this.dragEnabled=false;this.dropEnabled=false;this.dropOnSection=false;this.editableData=false;this.enableRowActions=false;this.globalFilter=false;this.globalFilterValue="";this.kanban=null;this.layout=undefined;this.lazyLoadRows=false;this.loadMoreLimit=1e3;this.loadMoreMode=E.PROGRESSIVE_THRESHOLD;this.loadMoreStep=60;this.multiSelection=false;this.pageSelected=1;this.pagination=false;this.rowsPerPage=undefined;this.scrollOnHover=false;this.selectBox=undefined;this.selectedRowsState=undefined;this.showLoadMore=false;this.showSelection=true;this.sortBy=undefined;this.sortEnabled=false;this.stateId="";this.store=undefined;this.swipeDisabled=false}initWithPersistedState(){if(this.store&&this.stateId){const t=this.store.getState(this.stateId);if(t!=null){this.kupManager.debug.logMessage(this,"Initialize with state for stateId "+this.stateId+": "+t);this.sortBy=this.state.sortBy;this.globalFilterValue=this.state.globalFilterValue;this.selectedRowsState=this.state.selectedRowsState;this.pageSelected=this.state.pageSelected;this.rowsPerPage=this.state.rowsPerPage;this.loadMoreLimit=t.loadMoreLimit;this.showLoadMore=t.showLoadMore}}}persistState(){if(this.store&&this.stateId){let t=false;if(!this.kupManager.objects.deepEqual(this.state.sortBy,this.sortBy)){this.state.sortBy=this.sortBy;t=true}if(!this.kupManager.objects.deepEqual(this.state.globalFilterValue,this.globalFilterValue)){this.state.globalFilterValue=this.globalFilterValue;t=true}if(!this.kupManager.objects.deepEqual(this.state.pageSelected,this.currentPage)){this.state.pageSelected=this.currentPage;t=true}if(!this.kupManager.objects.deepEqual(this.state.rowsPerPage,this.currentRowsPerPage)){this.state.rowsPerPage=this.currentRowsPerPage;t=true}const e=this.selectedRows.reduce(((t,e,i)=>{const o=i>0?";":"";return t+o+e.id}),"");if(!this.kupManager.objects.deepEqual(this.state.selectedRowsState,e)){this.state.selectedRowsState=e;t=true}if(!this.kupManager.objects.deepEqual(this.state.loadMoreLimit,this.loadMoreLimit)){this.state.loadMoreLimit=this.loadMoreLimit;t=true}if(!this.kupManager.objects.deepEqual(this.state.showLoadMore,this.showLoadMore)){this.state.showLoadMore=this.showLoadMore;t=true}if(!this.state.load){this.state.load=true;return}if(t){this.kupManager.debug.logMessage(this,"Persisting state for stateId "+this.stateId+": "+this.state);this.store.persistState(this.stateId,this.state)}}}rowsPerPageHandler(t){this.currentRowsPerPage=t}recalculateRows(){this.initRows()}onDataChanged(){a(this.getRows());this.initVisibleColumns();this.initRows();this.checkLayout()}onLayoutChanged(){this.checkLayout()}onSelectBoxChanged(){this.handleAutomaticBoxSelection()}async getProps(t){return l(this,I,t)}async loadRowActions(t,e){t.actions=e;this.rowActionMenuOpened=t}async refresh(){i(this)}async setProps(t){h(this,I,t)}getColumns(){return this.data&&this.data.columns?this.data.columns:[{title:"",name:"",size:undefined}]}initVisibleColumns(){this.visibleColumns=this.getColumns().filter((t=>{if(t.hasOwnProperty("visible")){return t.visible}return true}))}getRows(){return this.data&&this.data.rows?this.data.rows:[]}initRows(){this.filteredRows=this.getRows();if(this.globalFilter&&this.globalFilterValue){this.filteredRows=w(this.filteredRows,null,this.globalFilterValue,this.visibleColumns)}this.rows=this.sortRows(this.filteredRows);if(this.pagination){this.rows=v(this.rows,this.currentPage,this.currentRowsPerPage,false)}}sortRows(t){let e=t;if(this.sortBy){e=y(e,this.toSortObjectList())}return e}toSortObjectList(){const t=this.sortBy.split("|").map((t=>{const e=t.split(",");const i={column:e[0],sortMode:e.length>1?c[e[1]]:c.A};return i}));return t}checkScrollOnHover(){if(this.boxContainer){if(!this.kupManager.scrollOnHover.isRegistered(this.boxContainer)){if(this.scrollOnHover){this.kupManager.scrollOnHover.register(this.boxContainer)}}else{if(!this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}}}}checkLayout(){if(this.layout){this.boxLayout=this.layout;return}const t={horizontal:false,sections:[]};const e=this.visibleColumns;let i=e.length;let o=[];let s=0;while(i-- >0){o.push({column:e[s++].name})}t.content=o;this.boxLayout={sections:[t]}}onSortChange(t){let e=p(this.visibleColumns,t.detail.value);this.sortBy=e.name}onGlobalFilterChange({detail:t}){let e="";if(t&&t.value){e=t.value}this.globalFilterValue=e}isSectionExpanded(t,e){if(!t.id||!e.id){return false}return this.collapsedSection[e.id]&&this.collapsedSection[e.id][t.id]}handleAutomaticBoxSelection(){if(this.selectBox&&this.selectBox>0&&this.selectBox<=this.data.rows.length){this.selectedRows=[];for(let t of this.data.rows){if(t.id===(this.selectBox-1).toString()){this.selectedRows.push(t);break}}this.kupAutoBoxSelect.emit({comp:this,id:this.rootElement.id,row:this.selectedRows[0]})}}getEventDetails(t,e){let i=null;let o=null;let s=null;let n=null;if(t){for(let e=t.length-1;e>=0;e--){let o=t[e];if(!o.tagName){continue}switch(o.tagName.toUpperCase()){default:{if(o.classList.contains("box-object")){i=o}if(!s&&o["data-row"]){s=o["data-row"]}break}}}}if(i){if(i.classList.contains("f-cell")){const t=i["kup-get-cell-props"]();o=t.cell;n=t.column;s=t.row}else{o=i["data-cell"];s=i["data-row"];n=p(this.visibleColumns,i.dataset.column)}}return{boxObject:i?i:null,column:n?n:null,cell:o?o:null,originalEvent:e,row:s?s:null}}clickHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);if(e.row){if(this.multiSelection){this.onSelectionCheckChange(e.row)}else{this.selectedRows=[e.row]}}return e}contextMenuHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);return e}checkIfElementIsActionMenuIcon(t){if(t.tagName&&t.parentElement){return t.tagName==="svg"&&t.parentElement.classList.contains("row-actions-toggler")}return false}onSelectionCheckChange(t){var e=-1;for(let i=0;i<this.selectedRows.length;i++){const o=this.selectedRows[i];if(o.id===t.id){e=i;break}}if(e>=0){this.selectedRows.splice(e,1);this.selectedRows=[...this.selectedRows]}else{this.selectedRows=[...this.selectedRows,t]}this.kupBoxSelected.emit({comp:this,id:this.rootElement.id,rows:this.selectedRows})}toggleSectionExpand(t,e){if(!e.id){console.error("cannot expand / collapse a section withoun an ID");return}if(!t.id){console.error("cannot expand / collapse a section of a row without ad id");return}if(!this.collapsedSection[e.id]){this.collapsedSection[e.id]={};this.collapsedSection[e.id][t.id]=true}else{const i=this.collapsedSection[e.id];if(!i[t.id]){i[t.id]=true}else{i[t.id]=!i[t.id]}}this.collapsedSection=Object.assign({},this.collapsedSection)}onRowAction(t){if(!t){return}if(t===this.rowActionMenuOpened){this.rowActionMenuOpened=null;return}if(t.actions){this.rowActionMenuOpened=t}else{this.kupRowActionMenuClick.emit({comp:this,id:this.rootElement.id,row:t})}}onRowActionClick(t,e,i){this.kupRowActionClick.emit({comp:this,id:this.rootElement.id,row:t,action:e,index:i})}clickFunction(t){try{const e=t.composedPath();for(let t of e){if(this.checkIfElementIsActionMenuIcon(t)){return}}}catch(e){if(this.checkIfElementIsActionMenuIcon(t.target)){return}}this.rowActionMenuOpened=null}handlePageChange(t){const e=P(t,this.filteredRows.length,this.currentRowsPerPage);if(e){this.currentPage=e}}handleRowsPerPageChange(t){const e=M(t,this.filteredRows.length);if(e){this.currentRowsPerPage=e;this.adjustPaginator()}}adjustPaginator(){const t=this.rows.length;const e=Math.ceil(t/this.currentRowsPerPage);if(this.currentPage>e){this.currentPage=1}}renderSectionAsCard(t){let e=false;const i={button:[],cell:[],columns:[],image:[],progressbar:[],text:[]};for(let e=0;e<this.data.columns.length;e++){const o=this.data.columns[e];if(o.visible!==false){i.cell.push(t.cells[o.name]);i.columns.push(o)}}for(const e in t.cells){if(t.cells.hasOwnProperty(e)){const o=t.cells[e];if(o.cardID!==undefined&&o.obj){switch(o.obj.p){case"BTN":do{i.button.push({})}while(i.button.length<o.cardID);i.button[o.cardID]={label:o.value};break;case"IMG":do{i.image.push({})}while(i.image.length<o.cardID);i.image[o.cardID]={resource:o.value};break;case"PGB":do{i.progressbar.push({})}while(i.progressbar.length<o.cardID);i.progressbar[o.cardID]={value:o.value};break;default:do{i.text.push("")}while(i.text.length<o.cardID);i.text[o.cardID]=o.value;break}}}}for(const o in t.cells){if(t.cells.hasOwnProperty(o)){const s=t.cells[o];if(s.cardID===undefined&&s.obj){e=false;switch(s.obj.p){case"BTN":for(let t=0;t<i.button.length;t++){if(!Object.keys(i.button[t]).length){i.button[t]={label:s.value};e=true;break}}if(!e){i.button.push({label:s.value})}break;case"IMG":for(let t=0;t<i.image.length;t++){if(!Object.keys(i.image[t]).length){i.image[t]={resource:s.value};e=true;break}}if(!e){i.image.push({resource:s.value})}break;case"PGB":for(let t=0;t<i.progressbar.length;t++){if(!Object.keys(i.progressbar[t]).length){i.progressbar[t]={value:s.value};e=true;break}}if(!e){i.progressbar.push({value:s.value})}break;default:for(let t=0;t<i.text.length;t++){if(i.text[t]===""){i.text[t]=s.value;e=true;break}}if(!e){i.text.push(s.value)}break}}}}return o("kup-card",Object.assign({data:i},this.cardData))}renderRow(t){const e=[...this.visibleColumns];let i=null;let s=t.layout;if(!s){s=this.boxLayout}let n=false;if(s){if(s.horizontal){n=true}const o=s.sections;let r=o.length;let a=0;if(r>0){i=[]}const l={horizontal:n};while(r-- >0){if(this.cardData!==null&&this.cardData!==undefined&&typeof this.cardData==="object"){i.push(this.renderSectionAsCard(t))}else{i.push(this.renderSection(o[a++],l,t,e))}}}var r=false;for(let e of this.selectedRows){if(e.id===t.id){r=true}}let a=null;if(this.multiSelection){a=o("div",{class:"box-selection"},o("kup-checkbox",{checked:r}))}let l=null;if(this.enableRowActions&&!this.swipeDisabled){const e={"row-action-menu":true,open:t===this.rowActionMenuOpened};let i=null;if(t.actions){const e=t.actions.map(((e,i)=>{const s=`icon ${e.icon}`;return o("li",{tabindex:"0",onClick:()=>this.onRowActionClick(t,e,i)},o("div",{class:s}),o("div",{class:"text"},e.text))}));i=o("ul",null,e)}l=o("div",{class:"row-actions-wrapper"},o("div",{class:"row-actions-toggler"},o("svg",{version:"1.1",width:"24",height:"24",viewBox:"0 0 24 24",onClick:()=>this.onRowAction(t)},o("path",{d:"M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z"})),o("div",{class:e},i)))}let h=null;if(t.badgeData&&t.badgeData.length>0){h=t.badgeData.map((t=>o("kup-badge",{text:t.text,class:t["className"]?`centered ${t["className"]}`:"centered",imageData:t.imageData})))}const c={box:true,draggable:this.dragEnabled,selected:this.showSelection&&r,column:!n};const p=t.style||{};return o("div",{class:"box-wrapper",style:p,ref:t=>{if(t){W(this,L,"f").push(t)}}},o("div",{class:c,"data-row":t,ref:t=>this.rowsRefs.push(t)},a,i,h),l)}renderSection(t,e,i,s){let n=null;if(t.sections&&t.sections.length>0){const e=t.sections;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderSection(e[r++],t,i,s))}}else if(t.content){const e=t.content;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderBoxObject({boxObject:e[r++],row:i,visibleColumns:s},true))}}else if(s.length>0){const t=s[0];n=this.renderBoxObject({boxObject:{column:t.name},row:i,visibleColumns:s})}const r=this.isSectionExpanded(i,t);const a=!!t.columns;const l={"box-section":true,open:r,column:!a&&!t.horizontal,grid:a,titled:!!t.title,"last-child":!t.sections||t.sections.length===0};const h=t.style||{};if(t.dim&&e){h.flex=`0 0 ${t.dim}`;h.overflow="hidden";if(e.horizontal){h.maxWidth=t.dim}else{h.maxHeight=t.dim}}if(a){h["grid-template-columns"]=`repeat(${t.columns}, 1fr)`}let c=null;if(t.collapsible){l["collapse-section"]=true;const e={content:true};let s="";if(t.title){s=t.title}else if(r){s=this.kupManager.language.translate(u.COLLAPSE)}else{s=this.kupManager.language.translate(u.EXPAND)}c=o("div",{class:l,style:h},o("div",{class:e},n),o("div",{class:"header",role:"button",onClick:e=>{e.stopPropagation();this.toggleSectionExpand(i,t)}},o("div",{class:"header-content"},o("span",null,s),o(_,{resource:`${d.DROPDOWN}`,sizeX:"1.25em",sizeY:"1.25em",wrapperClass:r?"toggled":""}))))}else{const e=t.title?o("h3",null,t.title):null;c=o("div",{class:l,style:h},e,n)}return c}renderBoxObject({boxObject:t,row:e,visibleColumns:i},s){const n={"box-object":true};const r={};let a=null;let l=-1;for(let e=0;e<i.length;e++){const o=i[e];if(o.name===t.column){l=e;break}}if(l>=0){a=i[l];i.splice(l,1)}else if(s){a=this.data.columns.find((e=>e.name===t.column))}const h=e.cells[t.column];let c=undefined;if(h&&!this.kupManager.objects.isEmptyKupObj(h.obj)){n["is-obj"]=true;if(this.kupManager.debug.isDebug()){c=h.obj.t+"; "+h.obj.p+"; "+h.obj.k+";"}}const p={cell:h,column:a,component:this,editable:this.editableData,renderKup:true,row:e,setSizes:true,shape:t.shape};return o("div",{"data-cell":h,"data-row":e,"data-column":t.column,class:n,style:r,title:c},h&&a?o(z,Object.assign({},p)):o("span",null,t.value))}kanbanMode(){if(!this.kanban.columns||this.kanban.columns.length===0){this.kupManager.debug.logMessage(this,"No columns to group by detected.",f.ERROR);return{jsx:o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{ref:t=>this.rowsRefs.push(t)}),this.kupManager.language.translate(u.EMPTY_DATA)),style:{"grid-template-columns":`repeat(1, 1fr)`}}}const t=[];if(this.kanban.labels){for(let e=0;e<this.kanban.labels.length;e++){const i=this.kanban.labels[e];t.push({labels:i,nodes:[]})}}for(let e=0;e<this.rows.length;e++){let i=[];for(let t=0;t<this.kanban.columns.length;t++){try{i.push(this.rows[e].cells[this.kanban.columns[t]].value)}catch(t){this.kupManager.debug.logMessage(this,t,f.WARNING)}}const o={found:false,index:null};for(let e=0;e<t.length;e++){let s=t[e].labels;let n=true;for(let t=0;t<s.length;t++){if(i[t]!==s[t]){n=false;break}}if(n){o.found=true;o.index=e;break}}if(o.found){t[o.index].nodes.push(this.renderRow(this.rows[e]))}else{t.push({labels:i,nodes:[this.renderRow(this.rows[e])]})}}const e=[];for(let i=0;i<t.length;i++){const s=t[i].labels;const n={data:[]};for(let t=0;t<s.length;t++){n.data.push({value:s[t],id:s[t]})}e.push(o("div",{class:"kanban-section"},o(j,Object.assign({},n)),t[i].nodes))}return{jsx:e,style:{"grid-template-columns":this.kanban.isStacked?"repeat(1fr)":this.kanban.size?`repeat(${Object.keys(t).length}, ${this.kanban.size})`:`repeat(${Object.keys(t).length}, 1fr)`}}}didLoadInteractables(){this.interactableTouch.push(this.boxContainer);const t=t=>{var e;if(this.hold){this.hold=false;return}switch(t.button){case 0:const i={};for(const e in t){i[e]=t[e]}const o=this.clickHandler(i);this.kupBoxClick.emit({comp:this,id:this.rootElement.id,row:o.row,column:(e=o.column)===null||e===void 0?void 0:e.name});break;case 2:this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)});break}};const e=t=>{if(t.pointerType==="pen"||t.pointerType==="touch"){this.hold=true;this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)})}};this.kupManager.interact.on(this.boxContainer,b.TAP,t);this.kupManager.interact.on(this.boxContainer,b.HOLD,e)}didRenderInteractables(){if(this.dragEnabled){for(let t=0;t<this.rowsRefs.length;t++){const e=this.rowsRefs[t];const i=()=>{const t=this.rootElement.shadowRoot.querySelector(".box-object:hover");return{cell:t["data-cell"],column:p(this.visibleColumns,t.dataset.column),id:this.rootElement.id,multiple:this.multiSelection,row:t["data-row"],selectedRows:this.selectedRows}};if(e&&!this.interactableDrag.includes(e)){this.interactableDrag.push(e);this.kupManager.interact.draggable(e,{allowFrom:".box-object",cursorChecker(){return null}},{callback:i},x.BADGE)}}}if(this.dropEnabled){const t=()=>{const t=this.rootElement.shadowRoot.querySelector(".box:hover");if(!t){this.kupManager.debug.logMessage(this,"Couldn't find cell hovered to retrieve dropzone informations!",f.WARNING);return}const e=this.kupManager.getEventPath(t,this.rootElement);const i=this.getEventDetails(e);return{cell:i.cell,column:i.column,id:this.rootElement.id,row:i.row}};if(!this.interactableDrop.includes(this.sectionRef)){this.interactableDrop.push(this.sectionRef);this.kupManager.interact.dropzone(this.sectionRef,{accept:`[${g}]`},{dispatcher:this.rootElement,type:m.BOX})}for(let e=0;e<this.rowsRefs.length;e++){const i=this.rowsRefs[e];if(i&&!this.interactableDrop.includes(i)){this.interactableDrop.push(i);this.kupManager.interact.dropzone(i,{accept:`[${g}]`},{callback:t,dispatcher:this.rootElement,type:m.BOX})}}}}componentWillLoad(){this.kupManager.debug.logLoad(this,false);if(this.rowsPerPage){this.currentRowsPerPage=this.rowsPerPage}if(this.data&&this.data.rows&&this.currentRowsPerPage>this.data.rows.length){this.currentRowsPerPage=this.data.rows.length}this.kupManager.language.register(this);this.kupManager.theme.register(this);this.onDataChanged();this.adjustPaginator();if(document.querySelector(".header")){B(this,F,document.querySelector(".header").clientHeight,"f")}else{B(this,F,0,"f")}if(document.querySelector(".topbar")){B(this,F,W(this,F,"f")+document.querySelector(".topbar").clientHeight,"f")}W(this,T,"m",V).call(this)}componentDidLoad(){this.handleAutomaticBoxSelection();document.addEventListener("click",this.clickFunction.bind(this));this.currentPage=this.pageSelected;if(this.multiSelection&&this.selectedRowsState){this.selectedRows=[];let t=this.selectedRowsState.split(";");this.selectedRows=this.data.rows.filter((e=>t.indexOf(e.id)>=0))}this.didLoadInteractables();this.kupDidLoad.emit({comp:this,id:this.rootElement.id});this.kupManager.debug.logLoad(this,true)}componentWillRender(){this.kupManager.debug.logRender(this,false)}componentDidRender(){const t=this.rootElement.shadowRoot;if(t){const e=t.querySelectorAll(".f-text-field");for(let t=0;t<e.length;t++){A(e[t])}}this.checkScrollOnHover();this.persistState();this.didRenderInteractables();W(this,T,"m",G).call(this);this.kupManager.debug.logRender(this,true)}render(){B(this,L,[],"f");const t=!!(typeof this.kanban==="object"&&this.kanban!==null);let e=null;if(this.sortEnabled){const t=this.visibleColumns.map((t=>{const e={value:t.title,id:t.name,selected:t.name===this.sortBy};return e}));const i=[{value:"",id:""},...t];let s={label:this.kupManager.language.translate(u.SORT_BY),trailingIcon:true};let n={data:i,selectable:true};let r={"kup-text-field":s,"kup-list":n};e=o("div",{id:"sort-panel"},o("kup-combobox",{data:r,initialValue:this.sortBy,"onkup-combobox-itemclick":t=>this.onSortChange(t)}))}let i=null;if(this.globalFilter){i=o("div",{id:"global-filter"},o("kup-text-field",{fullWidth:true,label:this.kupManager.language.translate(k.SEARCH),icon:d.SEARCH,initialValue:this.globalFilterValue,"onkup-textfield-input":t=>{window.clearTimeout(this.globalFilterTimeout);this.globalFilterTimeout=window.setTimeout((()=>this.onGlobalFilterChange(t)),600)}}))}let n=null;if(this.showLoadMore||!this.lazyLoadRows&&this.pagination){n=o(R,{id:"top-paginator",currentPage:this.currentPage,max:this.filteredRows.length,perPage:this.currentRowsPerPage?this.currentRowsPerPage:this.rowsPerPage,onLoadMore:this.showLoadMore?()=>{W(this,T,"m",q).call(this)}:null,onNextPage:()=>this.handlePageChange(this.currentPage+1),onPrevPage:()=>this.handlePageChange(this.currentPage-1),onPageChange:t=>this.handlePageChange(t.detail.value),onRowsChange:t=>this.handleRowsPerPageChange(t.detail.value)})}let r=null;let a={};if(this.rows.length===0){r=o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{class:"box",ref:t=>this.rowsRefs.push(t)},this.kupManager.language.translate(u.EMPTY_DATA)));a={"grid-template-columns":`repeat(1, 1fr)`}}else if(t){const t=this.kanbanMode();r=t.jsx;a=t.style}else{a={"grid-template-columns":`repeat(${this.columns}, 1fr)`};const t=this.rows;let e=t.length;let i=0;r=[];while(e-- >0){r.push(this.renderRow(t[i++]))}}return o(s,null,o("style",null,this.kupManager.theme.setKupStyle(this.rootElement)),o("div",{id:C},o("div",{class:"box-component",ref:t=>this.sectionRef=t},e,i,n,o("div",{class:t?"is-kanban":"",id:"box-container",style:a,onContextMenu:t=>{t.preventDefault()},ref:t=>this.boxContainer=t},r))))}disconnectedCallback(){this.kupManager.interact.unregister(this.interactableDrag.concat(this.interactableDrop));this.kupManager.language.unregister(this);this.kupManager.theme.unregister(this);if(this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}document.removeEventListener("click",this.clickFunction.bind(this));this.kupDidUnload.emit({comp:this,id:this.rootElement.id})}get rootElement(){return n(this)}static get watchers(){return{rowsPerPage:["rowsPerPageHandler","recalculateRows"],globalFilterValue:["recalculateRows"],sortBy:["recalculateRows"],pagination:["recalculateRows"],currentPage:["recalculateRows"],currentRowsPerPage:["recalculateRows"],data:["onDataChanged"],layout:["onLayoutChanged"],selectBox:["onSelectBoxChanged"]}}};$=new WeakMap,L=new WeakMap,F=new WeakMap,H=new WeakMap,N=new WeakMap,T=new WeakSet,G=function t(){if(this.lazyLoadRows&&this.currentRowsPerPage<this.data.rows.length){W(this,$,"f").observe(W(this,L,"f")[W(this,L,"f").length-1])}},V=function t(){const e=t=>{t.forEach((t=>{if(t.isIntersecting){this.kupManager.debug.logMessage(this,"Last row entering the viewport, loading more elements.");const e=this.data.rows.length-this.currentRowsPerPage;if(e<this.loadMoreStep){this.currentRowsPerPage+=e}else{this.currentRowsPerPage+=this.loadMoreStep}t.target.classList.remove("last-row");W(this,$,"f").unobserve(t.target)}}))};const i={threshold:0,rootMargin:"-"+W(this,F,"f")+"px 0px 0px 0px"};B(this,$,new IntersectionObserver(e,i),"f")},q=function t(){var e;let i=0;switch(this.loadMoreMode){case E.CONSTANT:i=this.loadMoreStep;break;case E.CONSTANT_INCREMENT:i=this.loadMoreStep*(W(this,H,"f")+1);break;case E.PROGRESSIVE_THRESHOLD:i=Math.max(W(this,N,"f"),this.loadMoreStep)*Math.min(W(this,H,"f")+1,2);break}if(i>this.loadMoreLimit){i=this.loadMoreLimit}this.kupLoadMoreClick.emit({comp:this,id:this.rootElement.id,loadItems:i});B(this,N,i,"f");B(this,H,(e=W(this,H,"f"),e++,e),"f")};K.style=D;export{K as kup_box};
2
+ //# sourceMappingURL=p-7cdceaea.entry.js.map