@sme.up/ketchup 9.6.0 → 9.6.2

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 (158) hide show
  1. package/dist/cjs/{f-button-623dfcc3.js → f-button-4c346ca8.js} +1 -1
  2. package/dist/cjs/{f-cell-9c718d83.js → f-cell-8f3d12fd.js} +5 -5
  3. package/dist/cjs/{f-chip-c8efad5b.js → f-chip-a6c800be.js} +2 -2
  4. package/dist/cjs/{f-image-b61cc967.js → f-image-40476fa6.js} +1 -1
  5. package/dist/cjs/{f-paginator-utils-67dbc14c.js → f-paginator-utils-c652ceaa.js} +6 -6
  6. package/dist/cjs/{f-text-field-a09b1705.js → f-text-field-1f77ef23.js} +1 -1
  7. package/dist/cjs/index.cjs.js +1 -1
  8. package/dist/cjs/ketchup.cjs.js +1 -1
  9. package/dist/cjs/kup-accordion.cjs.entry.js +2 -2
  10. package/dist/cjs/kup-autocomplete_27.cjs.entry.js +91 -66
  11. package/dist/cjs/kup-box.cjs.entry.js +76 -14
  12. package/dist/cjs/kup-calendar.cjs.entry.js +8 -6
  13. package/dist/cjs/kup-card-list.cjs.entry.js +1 -1
  14. package/dist/cjs/kup-cell.cjs.entry.js +6 -6
  15. package/dist/cjs/kup-dashboard.cjs.entry.js +4 -4
  16. package/dist/cjs/kup-drawer.cjs.entry.js +1 -1
  17. package/dist/cjs/kup-echart.cjs.entry.js +1 -1
  18. package/dist/cjs/kup-editor.cjs.entry.js +1 -1
  19. package/dist/cjs/kup-family-tree.cjs.entry.js +3 -3
  20. package/dist/cjs/kup-grid.cjs.entry.js +1 -1
  21. package/dist/cjs/kup-iframe.cjs.entry.js +1 -1
  22. package/dist/cjs/kup-image-list.cjs.entry.js +6 -6
  23. package/dist/cjs/kup-lazy.cjs.entry.js +1 -1
  24. package/dist/cjs/kup-magic-box.cjs.entry.js +2 -2
  25. package/dist/cjs/{kup-manager-227c4be2.js → kup-manager-08f1585b.js} +54 -41
  26. package/dist/cjs/kup-nav-bar.cjs.entry.js +1 -1
  27. package/dist/cjs/kup-numeric-picker.cjs.entry.js +2 -2
  28. package/dist/cjs/kup-photo-frame.cjs.entry.js +1 -1
  29. package/dist/cjs/kup-planner.cjs.entry.js +2 -2
  30. package/dist/cjs/kup-probe.cjs.entry.js +1 -1
  31. package/dist/cjs/kup-qlik.cjs.entry.js +1 -1
  32. package/dist/cjs/kup-snackbar.cjs.entry.js +3 -3
  33. package/dist/cjs/loader.cjs.js +1 -1
  34. package/dist/collection/assets/index.js +4 -0
  35. package/dist/collection/assets/planner-example-4.js +4 -4
  36. package/dist/collection/assets/planner-example-5.js +3175 -0
  37. package/dist/collection/components/kup-box/kup-box-declarations.js +11 -0
  38. package/dist/collection/components/kup-box/kup-box-state.js +2 -0
  39. package/dist/collection/components/kup-box/kup-box.js +169 -9
  40. package/dist/collection/components/kup-calendar/kup-calendar.js +4 -2
  41. package/dist/collection/components/kup-card/built-in/kup-card-openai.js +29 -1
  42. package/dist/collection/components/kup-card/kup-card.css +7 -0
  43. package/dist/collection/components/kup-data-table/kup-data-table.js +14 -17
  44. package/dist/collection/managers/kup-openai/kup-openai.js +53 -40
  45. package/dist/components/kup-autocomplete2.js +99 -74
  46. package/dist/components/kup-box2.js +74 -8
  47. package/dist/components/kup-button-list.js +1 -1
  48. package/dist/components/kup-button.js +1 -1
  49. package/dist/components/kup-calendar.js +5 -3
  50. package/dist/components/kup-card.js +1 -1
  51. package/dist/components/kup-chart.js +1 -1
  52. package/dist/components/kup-checkbox.js +1 -1
  53. package/dist/components/kup-chip.js +1 -1
  54. package/dist/components/kup-color-picker.js +1 -1
  55. package/dist/components/kup-combobox.js +1 -1
  56. package/dist/components/kup-dashboard.js +1 -1
  57. package/dist/components/kup-data-table.js +1 -1
  58. package/dist/components/kup-date-picker.js +1 -1
  59. package/dist/components/kup-dialog.js +1 -1
  60. package/dist/components/kup-dropdown-button.js +1 -1
  61. package/dist/components/kup-family-tree.js +1 -1
  62. package/dist/components/kup-form.js +1 -1
  63. package/dist/components/kup-gauge.js +1 -1
  64. package/dist/components/kup-image-list.js +1 -1
  65. package/dist/components/kup-image.js +1 -1
  66. package/dist/components/kup-list.js +1 -1
  67. package/dist/components/kup-magic-box.js +1 -1
  68. package/dist/components/kup-manager.js +54 -41
  69. package/dist/components/kup-numeric-picker.js +1 -1
  70. package/dist/components/kup-planner.js +1 -1
  71. package/dist/components/kup-progress-bar.js +1 -1
  72. package/dist/components/kup-radio.js +1 -1
  73. package/dist/components/kup-rating.js +1 -1
  74. package/dist/components/kup-snackbar.js +1 -1
  75. package/dist/components/kup-spinner.js +1 -1
  76. package/dist/components/kup-switch.js +1 -1
  77. package/dist/components/kup-tab-bar.js +1 -1
  78. package/dist/components/kup-text-field.js +1 -1
  79. package/dist/components/kup-time-picker.js +1 -1
  80. package/dist/components/kup-tree.js +1 -1
  81. package/dist/esm/{f-button-121958b3.js → f-button-90a7ea86.js} +1 -1
  82. package/dist/esm/{f-cell-959b83db.js → f-cell-fdd338c5.js} +5 -5
  83. package/dist/esm/{f-chip-915ddf53.js → f-chip-4e6341a6.js} +2 -2
  84. package/dist/esm/{f-image-98371dac.js → f-image-5210f0b3.js} +1 -1
  85. package/dist/esm/{f-paginator-utils-f5f4c666.js → f-paginator-utils-3f179999.js} +3 -3
  86. package/dist/esm/{f-text-field-0df308e4.js → f-text-field-8429a853.js} +1 -1
  87. package/dist/esm/index.js +1 -1
  88. package/dist/esm/ketchup.js +1 -1
  89. package/dist/esm/kup-accordion.entry.js +2 -2
  90. package/dist/esm/kup-autocomplete_27.entry.js +91 -66
  91. package/dist/esm/kup-box.entry.js +76 -14
  92. package/dist/esm/kup-calendar.entry.js +8 -6
  93. package/dist/esm/kup-card-list.entry.js +1 -1
  94. package/dist/esm/kup-cell.entry.js +6 -6
  95. package/dist/esm/kup-dashboard.entry.js +4 -4
  96. package/dist/esm/kup-drawer.entry.js +1 -1
  97. package/dist/esm/kup-echart.entry.js +1 -1
  98. package/dist/esm/kup-editor.entry.js +1 -1
  99. package/dist/esm/kup-family-tree.entry.js +3 -3
  100. package/dist/esm/kup-grid.entry.js +1 -1
  101. package/dist/esm/kup-iframe.entry.js +1 -1
  102. package/dist/esm/kup-image-list.entry.js +6 -6
  103. package/dist/esm/kup-lazy.entry.js +1 -1
  104. package/dist/esm/kup-magic-box.entry.js +2 -2
  105. package/dist/esm/{kup-manager-33b051d6.js → kup-manager-8b39f876.js} +54 -41
  106. package/dist/esm/kup-nav-bar.entry.js +1 -1
  107. package/dist/esm/kup-numeric-picker.entry.js +2 -2
  108. package/dist/esm/kup-photo-frame.entry.js +1 -1
  109. package/dist/esm/kup-planner.entry.js +2 -2
  110. package/dist/esm/kup-probe.entry.js +1 -1
  111. package/dist/esm/kup-qlik.entry.js +1 -1
  112. package/dist/esm/kup-snackbar.entry.js +3 -3
  113. package/dist/esm/loader.js +1 -1
  114. package/dist/ketchup/index.esm.js +1 -1
  115. package/dist/ketchup/ketchup.esm.js +1 -1
  116. package/dist/ketchup/p-02820c2b.entry.js +1 -0
  117. package/dist/ketchup/{p-9d8d5070.entry.js → p-09d853c3.entry.js} +1 -1
  118. package/dist/ketchup/{p-81996620.entry.js → p-14e1a36b.entry.js} +1 -1
  119. package/dist/ketchup/{p-0a4595bd.entry.js → p-1936c6cd.entry.js} +1 -1
  120. package/dist/ketchup/{p-eb37ea7e.entry.js → p-318c9ecd.entry.js} +1 -1
  121. package/dist/ketchup/{p-e43d4ccc.js → p-35d503e2.js} +1 -1
  122. package/dist/ketchup/p-35dce86e.entry.js +1 -0
  123. package/dist/ketchup/{p-3ce8ce77.entry.js → p-4c20fefd.entry.js} +1 -1
  124. package/dist/ketchup/{p-9f31a129.entry.js → p-4eb70dd2.entry.js} +1 -1
  125. package/dist/ketchup/{p-3ff9a661.entry.js → p-5739cdc2.entry.js} +1 -1
  126. package/dist/ketchup/{p-41d6466e.entry.js → p-5ab3a88a.entry.js} +1 -1
  127. package/dist/ketchup/{p-7bda0684.js → p-5e16c9d3.js} +1 -1
  128. package/dist/ketchup/{p-a9b06bb8.js → p-6780a391.js} +1 -1
  129. package/dist/ketchup/{p-c1ade766.entry.js → p-67930d7c.entry.js} +1 -1
  130. package/dist/ketchup/{p-0dd0ae49.entry.js → p-6953f769.entry.js} +1 -1
  131. package/dist/ketchup/{p-babbffa4.entry.js → p-7d2fd8bd.entry.js} +1 -1
  132. package/dist/ketchup/{p-773bcc69.entry.js → p-8257141a.entry.js} +1 -1
  133. package/dist/ketchup/{p-9e63f56b.entry.js → p-82694fad.entry.js} +1 -1
  134. package/dist/ketchup/{p-ccc637ee.js → p-86f9b0d9.js} +1 -1
  135. package/dist/ketchup/{p-d5254caf.entry.js → p-8ea68d14.entry.js} +1 -1
  136. package/dist/ketchup/{p-4bf5e04f.entry.js → p-98c72335.entry.js} +1 -1
  137. package/dist/ketchup/{p-d15d1083.entry.js → p-ab8cac45.entry.js} +1 -1
  138. package/dist/ketchup/p-c089b961.js +1 -0
  139. package/dist/ketchup/{p-f0b882f4.entry.js → p-cdb24584.entry.js} +1 -1
  140. package/dist/ketchup/{p-ea625b2a.entry.js → p-d466d6d1.entry.js} +1 -1
  141. package/dist/ketchup/{p-b086727d.entry.js → p-ee30e274.entry.js} +1 -1
  142. package/dist/ketchup/{p-610a03d4.js → p-f31530fc.js} +2 -2
  143. package/dist/ketchup/{p-2f4055ba.entry.js → p-f353805e.entry.js} +1 -1
  144. package/dist/ketchup/p-f515308d.entry.js +9 -0
  145. package/dist/ketchup/{p-68e9379a.js → p-f9766625.js} +1 -1
  146. package/dist/types/components/kup-box/kup-box-declarations.d.ts +12 -0
  147. package/dist/types/components/kup-box/kup-box-state.d.ts +2 -0
  148. package/dist/types/components/kup-box/kup-box.d.ts +26 -1
  149. package/dist/types/components/kup-calendar/kup-calendar-declarations.d.ts +1 -0
  150. package/dist/types/components/kup-card/kup-card-declarations.d.ts +1 -0
  151. package/dist/types/components.d.ts +48 -6
  152. package/dist/types/managers/kup-openai/kup-openai-declarations.d.ts +7 -0
  153. package/dist/types/managers/kup-openai/kup-openai.d.ts +8 -12
  154. package/package.json +1 -1
  155. package/dist/ketchup/p-102866cd.js +0 -1
  156. package/dist/ketchup/p-6001882e.entry.js +0 -9
  157. package/dist/ketchup/p-662d2f9b.entry.js +0 -1
  158. package/dist/ketchup/p-d1268ac7.entry.js +0 -1
@@ -1 +1 @@
1
- import{B as e,E as t,C as l,A as n,ac as r,u as i,w as o,ae as s,af as a,I as u,$ as c,ag as f,q as h,l as d}from"./p-610a03d4.js";import{K as p}from"./p-de07d17e.js";import{h as m}from"./p-1ad7fea0.js";import{F as b}from"./p-e43d4ccc.js";import{F as v}from"./p-c634eb82.js";class F extends e{getTextFilterValue(e={},t){return this._getTextFilterValue(e,t,!1)}getTextFilterValueTmp(e={},t){return this._getTextFilterValue(e,t,!0)}_getTextFilterValue(e={},t,l){let n="";if(null==e)return n;let r=e[t];return null==r||(n=l?r.textFieldTmp:r.textField),n}hasFiltersForColumn(e={},t){return this._hasFiltersForColumn(e,t,!1)}hasFiltersForColumnTmp(e={},t){return this._hasFiltersForColumn(e,t,!0)}_hasFiltersForColumn(e={},t,l){if(!t)return!1;let n=this._getTextFilterValue(e,t.name,l);if(null!=n&&""!=n.trim())return!0;if(this._hasIntervalTextFieldFilterValues(e,t,l))return!0;let r=this.getCheckBoxFilterValues(e,t.name);return!(null==r||r.length<1)}getCheckBoxFilterValues(e={},t){let l=[];if(null==e)return l;let n=e[t];return null==n||null==n.checkBoxes||(l=n.checkBoxes),l}hasIntervalTextFieldFilterValues(e={},t){return this._hasIntervalTextFieldFilterValues(e,t,!1)}hasIntervalTextFieldFilterValuesTmp(e={},t){return this._hasIntervalTextFieldFilterValues(e,t,!0)}_hasIntervalTextFieldFilterValues(e={},l,n){if(null==l)return!1;if(!this.isColumnFiltrableByInterval(l))return!1;let r=this._getIntervalTextFieldFilterValue(e,l.name,t.FROM,n);if(null!=r&&""!=r.trim())return!0;let i=this._getIntervalTextFieldFilterValue(e,l.name,t.TO,n);return null!=i&&""!=i.trim()}addCheckboxFilter(t={},l,n){if(null==t)return;let r=t[l];null==r&&(r={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null},t[l]=r),null==r.checkBoxes&&(r.checkBoxes=[]),null==n||null==n.value?r.checkBoxes=[]:e.valuesArrayContainsValue(r.checkBoxes,n.value)||(r.checkBoxes[r.checkBoxes.length]=n)}removeCheckboxFilter(t={},l,n){if(null==t||null==n)return;let r=t[l];if(null==r)return;null==r.checkBoxes&&(r.checkBoxes=[]);let i=e.indexOfValueInValuesArray(r.checkBoxes,n);if(i>=0){let e=[];for(let t=0;t<r.checkBoxes.length;t++)t!=i&&(e[e.length]=r.checkBoxes[t]);r.checkBoxes=[...e]}}isColumnFiltrableByInterval(e){return this.isObjFiltrableByInterval(e.obj)}getIntervalTextFieldFilterValues(e={},t){return this._getIntervalTextFieldFilterValues(e,t,!1)}getIntervalTextFieldFilterValuesTmp(e={},t){return this._getIntervalTextFieldFilterValues(e,t,!0)}_getIntervalTextFieldFilterValues(e={},l,n){return this._hasIntervalTextFieldFilterValues(e,l,n)?[this._getIntervalTextFieldFilterValue(e,l.name,t.FROM,n),this._getIntervalTextFieldFilterValue(e,l.name,t.TO,n)]:["",""]}getIntervalTextFieldFilterValue(e={},t,l){return this._getIntervalTextFieldFilterValue(e,t,l,!1)}getIntervalTextFieldFilterValueTmp(e={},t,l){return this._getIntervalTextFieldFilterValue(e,t,l,!0)}_getIntervalTextFieldFilterValue(e={},t,l,n){let r="";if(null==e)return r;let i=e[t];return null==i||n&&null==i.intervalTmp?r:n||null!=i.interval?(r=n?i.intervalTmp[l]:i.interval[l],r):r}setTextFieldFilterValue(e={},t,l){this._setTextFieldFilterValue(e,t,l,!0)}_setTextFieldFilterValue(e={},t,l,n){if(null==e)return;let r=e[t];null==r&&(r={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null},e[t]=r),n?r.textFieldTmp=null!=l?l.trim():l:r.textField=null!=l?l.trim():l}setIntervalTextFieldFilterValue(e={},t,l,n){this._setIntervalTextFieldFilterValue(e,t,l,n,!0)}_setIntervalTextFieldFilterValue(e={},t,l,n,r){if(null==e)return;let i=e[t];null==i&&(i={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null},e[t]=i),null==i.interval&&(i.interval=[],i.interval.push("","")),null==i.intervalTmp&&(i.intervalTmp=[],i.intervalTmp.push("","")),r?i.intervalTmp[n]=null!=l?l.trim():l:i.interval[n]=null!=l?l.trim():l}saveTextualFilters(e={},l){this._setTextFieldFilterValue(e,l,this.getTextFilterValueTmp(e,l),!1),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValueTmp(e,l,t.FROM),t.FROM,!1),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValueTmp(e,l,t.TO),t.TO,!1)}resetTextualFilters(e={},l){this._setTextFieldFilterValue(e,l,this.getTextFilterValue(e,l),!0),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValue(e,l,t.FROM),t.FROM,!0),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValue(e,l,t.TO),t.TO,!0)}getFilterValueForTooltip(e={},r){let i=this.getTextFilterValue(e,r.name),o=this.getIntervalTextFieldFilterValues(e,r),s=this.getCheckBoxFilterValues(e,r.name),a="",u=l(i,r.obj,r.decimals);""!=i&&(a=" AND "),""!=o[t.FROM]&&(u+=a+"(>= "+l(o[t.FROM],r.obj,r.decimals)+")",a=" AND "),""!=o[t.TO]&&(u+=a+"(<= "+l(o[t.TO],r.obj,r.decimals)+")",a=" AND "),a="";let c="";return s.forEach((e=>{c+=a+n(e,r),a=" OR "})),""!=c&&(c="("+c+")",""!=u&&(c=" AND "+c)),c=u+c,c}removeFilter(e={},t){e[t]={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null}}}var x;!function(e){e.asAccordion="When enabled, the first level of depth will give an accordion look to nodes.",e.columns="The columns of the tree when tree visualization is active.",e.customStyle="Custom style of the component.",e.data="The json data used to populate the tree view: the basic, always visible tree nodes.",e.density="The density of the rows, defaults at 'medium' and can also be set to 'dense' or 'wide'.",e.dynamicExpansionCallback="Function that gets invoked when a new set of nodes must be loaded as children of a node. When useDynamicExpansion is set, the tree component will have two different behaviors depending on the value of this prop. If this prop is set to null, no callback to download data is available: the component will emit an event requiring the parent to load the children of the given node. If this prop is set to have a callback, then the component will automatically make requests to load children of a given node. After the load has been completed, a different event will be fired to alert the parent of the change.",e.enableExtraColumns="Enables adding extra columns.",e.expanded="Flag: the nodes of the whole tree must be already expanded upon loading. Disabled nodes do NOT get expanded.",e.expansionMode="Behavior of nodes' expansion: it can be chosen between expanding a node by clicking on the dropdown icon, or by clicking on the whole node.",e.filters="List of filters set by the user.",e.globalFilter="When set to true it activates the global filter.",e.globalFilterValue="The value of the global filter.",e.globalFilterMode="The mode of the global filter.",e.removableColumns="Sets the possibility to remove the selected column.",e.preventXScroll="Experimental feature: when active, the tree will try to prevent horizontal overflowing elements by setting a width on the content of the table cells. It works only on cells of the main column.",e.ripple="When enabled displays Material's ripple effect on nodes (only when no columns are displayed).",e.scrollOnHover="Activates the scroll on hover function.",e.showColumns="Shows the tree data as a table.",e.showFilters="When set to true enables the column filters.",e.showFooter="When set to true shows the footer.",e.showHeader="Flag: shows the header of the tree when the tree is displayed as a table.",e.showIcons="Shows the icons of the nodes.",e.stateId="",e.store="",e.totals="Defines the current totals options.",e.useDynamicExpansion="When the component must use the dynamic expansion feature to open its nodes, it means that not all the nodes of the tree have been passed inside the data property. Therefore, when expanding a node, the tree must emit an event (or run a given callback) and wait for the child nodes to be downloaded from the server."}(x||(x={}));const w="TREE_COLUMN";var g;!function(e){e.DROPDOWN="dropdown",e.NODE="node"}(g||(g={}));const k=document.documentElement,T=k.ketchup?k.ketchup.objects:new o,y=k.ketchup?k.ketchup.data:new s;class j extends e{isFilterCompliantForCell(e,t,l){return!!e&&this.isFilterCompliantForSimpleValue(e.value,e.obj,t,l)}isFilterCompliantForCellObj(e,t,l){return!!e&&!!e.obj&&this.isFilterCompliantForSimpleValue(e.obj.k,e.obj,t,l)}isRowCompliant(e,t={},l="",n=!1,r=[],i){return this.areCellsCompliant(e.cells,t,l,n,r,i)}areCellsCompliant(e,t={},l="",n=!1,o=[],s){if(n){let t=!0;if(o&&null!=o&&o.length>0){t=!1;let n=this.filterIsNegative(l);for(let i=0;i<o.length;i++){if(0==o[i].visible)continue;const s=e[o[i].name];if(null==s)continue;t=this.isFilterCompliantForValue(s.value,l);let a=r(o[i],s);if(a!=s.value&&(t=t||this.isFilterCompliantForValue(a,l)),1==t&&!n)break;if(0==t&&n)break}}if(!t)return!1}if(null==s&&(s=new F),!this.hasFilters(t,o,s))return!0;let a=Object.keys(t);for(let l=0;l<a.length;l++){let n=a[l];const r=e[n];if(!r)return!1;let u=s.getTextFilterValue(t,n),c=s.getIntervalTextFieldFilterValues(t,i(o,n));const f=this.filterIsNegative(u);let h=this.isFilterCompliantForCell(r,u,c),d=f;if(T.isNumber(r.obj)||T.isDate(r.obj)||T.isTime(r.obj)||T.isTimestamp(r.obj)||(d=this.isFilterCompliantForCellObj(r,u,c)),f){if(!h||!d)return!1}else if(!h&&!d)return!1;let p=s.getCheckBoxFilterValues(t,n);if(0==p.length)continue;let m=!1;for(let e=0;e<p.length;e++){let t=p[e];if(null!=t&&null!=t.value){if(null!=r.value&&r.value.toLowerCase().trim()==t.value.toLowerCase().trim()){m=!0;break}if(null!=r.obj&&r.obj.k.toLowerCase().trim()==t.value.toLowerCase().trim()){m=!0;break}}}if(!m)return!1}return!0}hasFilters(e={},t,l){if(null==e)return!1;let n=Object.keys(e);if(null==n||n.length<1)return!1;null==l&&(l=new F);for(let r=0;r<n.length;r++){let o=n[r],s=null;if(s=o===w?{name:w,title:""}:i(t,o),l.hasFiltersForColumn(e,s))return!0}return!1}filterRows(e=[],t={},l="",n=[],r){if(!e||null==e)return[];let i=[];const o=!(!l||!n);if(this.hasFilters(t,n,r)||o)for(let s=0;s<e.length;s++){let a=e[s];(a.id&&a.id.indexOf("insert_")>-1||this.isRowCompliant(a,t,l,o,n,r))&&(i[i.length]=a)}else i=[...e];return i}getColumnValues(t,n,r,i){let o=new Array;null==i&&(i=new F);let s=i.getTextFilterValueTmp(t.filters,n.name),a=i.getIntervalTextFieldFilterValuesTmp(t.filters,n),u=i.getCheckBoxFilterValues(t.filters,n.name);if(null!=n.valuesForFilter&&n.valuesForFilter.length>0)return n.valuesForFilter.forEach((t=>{let r=t;(e.valuesArrayContainsValue(u,r)||""==s||i.isFilterCompliantForSimpleValue(r,n.obj,s,a))&&o.push({value:r,displayedValue:l(r,n.obj,n.decimals)})})),o;let c=Object.assign({},t.filters);c[n.name]={textField:s,textFieldTmp:s,checkBoxes:[],interval:a,intervalTmp:a};let f=this.filterRows(t.getRows(),c,r,t.getVisibleColumns(),i);for(let e=0;e<u.length;e++)o.push(u[e]);return y.cell.getUnivocalValue({rows:f},n,!0)}}const C=document.documentElement;function V(e=[],t=[]){if(!e||0===e.length)return[];if(e[0].group)return function(e=[],t=[]){if(!e||0===e.length)return[];const l=e[0].group.column;let n=function(e="",t=[]){if(!e||!t||0===t.length)return null;for(let l of t)if(l.column===e)return l;return null}(l,t);return n||(n={column:l,sortMode:c.A}),e.sort(((e,t)=>a({obj:e.group.obj,value:e.group.id},{obj:t.group.obj,value:t.group.id},n.sortMode))),e.forEach((e=>{e.group.children=V(e.group.children,t)})),e}(e,t);if(!t||0===t.length)return e;const l=t.length>1;return e.slice(0).sort(((e,n)=>{if(l){for(let l=0;l<t.length;l++){const r=O(e,n,t[l]);if(0!==r)return r}return 0}return O(e,n,t[0])}))}function O(e,t,l){const n=e.cells[l.column],r=t.cells[l.column];return n||r?n?r?a(n,r,l.sortMode):-1:1:0}function I(e=[],t={},l="",n=[],r,i){return null==i&&(i=new j),i.filterRows(e,t,l,n,r)}function M(e=[],t=[],l=[],n={}){if(!t)return[];if(!l||0===l.length||!e||0===e.length)return t;const o={},s=l.filter((({column:t})=>{for(let{name:l,title:n}of e)if(l===t)return o[l]=n,!0;return!1}));if(0===s.length)return t;const a=[];let c={};return t.forEach((t=>{const l=s[0].column,f=t.cells[l];if(f){const h=i(e,l),d=r(h,f),m=f.value;let b=null;for(let e of a)if(e.group.label===d){b=e;break}null===b&&(b={group:{id:m,parent:null,column:l,columnLabel:o[l],expanded:!1,label:d,children:[],obj:f.obj,totals:{}},cells:{}},a.push(b));for(let l=1;l<s.length;l++){const n=s[l],a=t.cells[n.column];if(a){const t=i(e,n.column),l=r(t,a),s=a.value;let u=null;for(let e=0;e<b.group.children.length;e++){const t=b.group.children[e];if(t.group.label===l){u=t;break}}u||(u={cells:{},group:{id:s,parent:b,column:n.column,columnLabel:o[n.column],children:[],expanded:!1,label:l,totals:{},obj:a.obj}},$(u),b.group.children.push(u)),b=u}}b.group.children.push(t),function(e,t,l,n){if(!e||!t)return;const r=Object.keys(t);0!==r.length&&r.forEach((r=>{const i=l.cells[r];if(i){const l=C.ketchup.objects.isNumber(i.obj),o=t[r];switch(o){case u.COUNT:let t=e.group.totals[r]||0;e.group.totals[r]=++t;let s=e.group.parent;for(;null!=s;){let e=s.group.totals[r]||0;s.group.totals[r]=++e,s=s.group.parent}break;case u.DISTINCT:let a;if(a=l?C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value)):i.value,n[e.group.id]){let t=n[e.group.id][r];t?t.push(a):(n[e.group.id][r]=[],n[e.group.id][r].push(a))}else n[e.group.id]={},n[e.group.id][r]=[],n[e.group.id][r].push(a);let c=e.group.parent;for(;null!=c;){if(n[c.group.id]){let e=n[c.group.id][r];e?e.push(a):(n[c.group.id][r]=[],n[c.group.id][r].push(a))}else n[c.group.id]={},n[c.group.id][r]=[],n[c.group.id][r].push(a);c=c.group.parent}break;case u.SUM:case u.AVERAGE:if(l&&i.value){const t=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value));e.group.totals[r]=t+(e.group.totals[r]||0);let l=e.group.parent;for(;null!=l;){const e=C.ketchup.math.numberify(l.group.totals[r]||0);l.group.totals[r]=t+e,l=l.group.parent}}break;case u.MIN:if(l&&i.value){const t=e.group.totals[r],l=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value));e.group.totals[r]=t?Math.min(t,l):l;let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];n.group.totals[r]=e?Math.min(e,l):l,n=n.group.parent}}else if(i.value&&C.ketchup.objects.isDate(i.obj)){const t=C.ketchup.dates.toDayjs(i.value);if(C.ketchup.dates.isValid(t)){const l=e.group.totals[r];if(l){let n=[];n.push(t),n.push(C.ketchup.dates.toDayjs(l)),e.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.min(n),p.ISO_DATE)}else e.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];if(e){let l=[];l.push(t),l.push(C.ketchup.dates.toDayjs(e)),n.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.min(l),p.ISO_DATE)}else n.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);n=n.group.parent}}}break;case u.MAX:if(l&&i.value){const t=e.group.totals[r],l=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value));e.group.totals[r]=t?Math.max(t,l):l;let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];n.group.totals[r]=e?Math.max(e,l):l,n=n.group.parent}}else if(i.value&&C.ketchup.objects.isDate(i.obj)){const t=C.ketchup.dates.toDayjs(i.value);if(C.ketchup.dates.isValid(t)){const l=e.group.totals[r];if(l){let n=[];n.push(t),n.push(C.ketchup.dates.toDayjs(l)),e.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.max(n),p.ISO_DATE)}else e.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];if(e){let l=[];l.push(t),l.push(C.ketchup.dates.toDayjs(e)),n.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.max(l),p.ISO_DATE)}else n.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);n=n.group.parent}}}break;default:0!=o.indexOf(u.MATH)&&console.warn(`invalid total mode: ${o}`)}}}))}(b,n,t,c)}})),function(e,t,l){if(!e||!t)return;const n=Object.keys(t);if(0===e.length||!e[0].group||0===n.length)return;let r=n.filter((e=>u.DISTINCT===t[e]));r.length>0&&e.filter((e=>e.group.children.length>0)).forEach((e=>A(e,r,l)))}(a,n,c),_(a,u.AVERAGE,n),_(a,u.MATH,n),a}function _(e,t,l){if(!e||!l)return;const n=Object.keys(l);if(0===e.length||!e[0].group||0===n.length)return;let r;t==u.AVERAGE&&(r=n.filter((e=>u.AVERAGE===l[e]))),t==u.MATH&&(r=n.filter((e=>0==l[e].indexOf(u.MATH)))),r.length>0&&e.filter((e=>e.group.children.length>0)).forEach((e=>B(e,t,r,l)))}function A(e,t,l){const n=e.group.children;0!==n.length&&(n[0].group&&n.forEach((e=>{A(e,t,l)})),t.forEach((t=>{e.group.totals[t]=new Set(l[e.group.id][t]).size})))}function B(e,t,l,n){const r=e.group.children;if(0===r.length)return 0;let i=0;return r[0].group?r.forEach((e=>{i+=B(e,t,l,n)})):i=r.length,l.forEach((l=>{if(t==u.AVERAGE&&(e.group.totals[l]=e.group.totals[l]/i),t==u.MATH){let t=n[l].substring(u.MATH.length);e.group.totals[l]=C.ketchup.math.formulas.custom(t,e.group.totals)}})),i}function W(e,t){if(t){const l=Object.assign(t);return t.forEach((t=>{e.forEach((e=>{if(t.cells){const l=t.cells[e.name];l&&e.obj&&!l.obj&&(l.obj={t:e.obj.t,p:e.obj.p,k:l.value})}}))})),l}}function N(e=[],t={}){if(C.ketchup.objects.isEmptyJsObject(e)||C.ketchup.objects.isEmptyJsObject(t))return{};const l=Object.keys(t),n={},r=new Array;if(0===l.length||l.every((e=>t[e]===u.COUNT)))l.forEach((t=>n[t]=e.length));else{let i={};e.forEach(((e,o,s)=>{l.filter((e=>u.COUNT!==t[e]&&0!=t[e].indexOf(u.MATH))).forEach((l=>{const a=e.cells[l];if(a)if(t[l]===u.DISTINCT){let e;e=C.ketchup.objects.isNumber(a.obj)?C.ketchup.math.numberify(C.ketchup.math.numberifySafe(a.value)):a.value;let t=i[l];t?t.push(e):(i[l]=[],i[l].push(e))}else if(C.ketchup.objects.isNumber(a.obj)){const e=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(a.value));let r=n[l];switch(!0){case t[l]===u.MIN:n[l]=r?Math.min(r,e):e;break;case t[l]===u.MAX:n[l]=r?Math.max(r,e):e;break;default:r=n[l]||0,n[l]=e+C.ketchup.math.numberify(r)}}else if(C.ketchup.objects.isDate(a.obj)){-1==r.indexOf(l)&&r.push(l);const e=C.ketchup.dates.toDayjs(a.value);if(C.ketchup.dates.isValid(e)){const r=C.ketchup.dates.toDate(e),i=n[l]?C.ketchup.dates.toDate(C.ketchup.dates.toDayjs(n[l])):null;switch(!0){case t[l]===u.MIN:if(i){let e=[];e.push(r),e.push(i),n[l]=C.ketchup.dates.format(C.ketchup.dates.min(e),p.ISO_DATE)}else n[l]=C.ketchup.dates.format(r,p.ISO_DATE);break;case t[l]===u.MAX:if(i){let e=[];e.push(r),e.push(i),n[l]=C.ketchup.dates.format(C.ketchup.dates.max(e),p.ISO_DATE)}else n[l]=C.ketchup.dates.format(r,p.ISO_DATE)}}}o===s.length-1&&t[l]===u.DISTINCT&&(n[l]=new Set(i[l]).size,i[l]=[])}))}))}for(let i of l){switch(!0){case t[i]===u.AVERAGE:const l=n[i];l&&e.length>0&&(n[i]=l/e.length);break;case t[i]===u.COUNT:n[i]=e.length;break;case 0==t[i].indexOf(u.MATH):n[i]=C.ketchup.math.formulas.custom(t[i].substring(u.MATH.length),n)}n[i]&&(-1!=r.indexOf(i)?n[i]=C.ketchup.dates.format(n[i]):C.ketchup.math.isNumber(n[i])&&(n[i]=+n[i].toFixed(2)))}return n}function $(e){if(!e.group)return;let t=e.group.id,l=e.group.parent;for(;null!==l;)t=`${l.group.id};${t}`,l=l.group.parent;e.group.id=t}function D(e,t,l,n){const r=t*l-l,i=r+Number(l);if(0==n)return e.slice(r,i);let o=[];return E(e,o,r,Number(l),0),o}function E(e,t,l,n,r){let i=!1;for(let o=0;o<e.length;o++){let s=e[o],a=L(e[o]);if(null!=s.group&&null!=s.group.children&&s.group.children.length>0){a.group.children=[];let e=E(s.group.children,a.group.children,l,n,r);r=e.ci,i=e.added,1==i&&(t[t.length]=a)}else r>=l&&(t[t.length]=a,i=!0),r++;if(r>=l+n)break}return{ci:r,added:i}}function L(e){return null==e?null:{id:e.id,cells:Object.assign({},e.cells),actions:e.actions?[...e.actions]:null,group:R(e.group),clonedFrom:e,readOnly:e.readOnly,cssClass:e.cssClass}}function S(e){if(null==e)return null;let t=[];for(let l=0;l<e.length;l++)t[t.length]=L(e[l]);return t}function R(e){return null==e?null:{id:e.id,parent:Object.assign({},e.parent),column:e.column,columnLabel:e.columnLabel,expanded:e.expanded,label:e.label,children:S(e.children),obj:Object.assign({},e.obj),totals:Object.assign({},e.totals)}}var q;!function(e){e.SIMPLE="simple",e.FULL="full"}(q||(q={}));const z=document.documentElement,K=e=>{const t=Math.ceil(e.max/e.perPage),l=function(e,t){const l=[];for(let n=1;n<=t;n++){const t=n==e.currentPage;l.push({id:n.toString(),selected:t,value:n.toString()})}return l}(e,t),n=function(e){const t=[];let l=e.perPage;if(0===l)return t;for(;l<e.max;){const n=l==e.perPage;t.push({id:l.toString(),selected:n,value:l.toString()}),l*=2}const n=e.max==e.perPage;return t.push({id:e.max.toString(),selected:n,value:e.max.toString()}),t}(e),r={"kup-list":{data:l},"kup-text-field":{label:z.ketchup.language.translate(f.PAGE),helper:z.ketchup.language.translate(f.TOTAL)+`: ${t}`,helperWhenFocused:!0,inputType:"number",max:t,min:1}},i={"kup-list":{data:n},"kup-text-field":{label:z.ketchup.language.translate(h.ROWS)+" / "+z.ketchup.language.translate(f.PAGE),helper:z.ketchup.language.translate(h.TOTAL)+`: ${e.max}`,helperWhenFocused:!0,inputType:"number",max:e.max,min:1}};return m("div",Object.assign({class:`f-paginator ${e.mode?e.mode:""} ${e.wrapperClass?e.wrapperClass:""}`},e.dataSet,{id:e.id,title:e.title}),e.mode!==q.SIMPLE?m(b,{icon:"chevron_left",disabled:G(e),onClick:e.onPrevPage,wrapperClass:"prev-page"}):null,m("kup-combobox",{class:"page-selector",data:r,initialValue:e.currentPage.toString(),"onkup-combobox-change":e.onPageChange}),e.mode!==q.SIMPLE?m(b,{icon:"chevron_right",disabled:U(e),onClick:e.onNextPage,wrapperClass:"next-page"}):null,m("kup-combobox",{class:"rows-selector",data:i,initialValue:e.perPage.toString(),"onkup-combobox-change":e.onRowsChange}),e.onLoadMore?m(b,{icon:"plus",onClick:e.onLoadMore,label:z.ketchup.language.translate(d.LOAD_MORE),styling:v.FLAT,wrapperClass:"load-more-button"}):null)};function U(e){return e.currentPage*e.perPage>=e.max}function G(e){return 1==e.currentPage}const H=document.documentElement;function J(e,t,l){if(H.ketchup.math.isNumber(e)){const n=Math.ceil(t/l);let r=e;return r>n&&(r=n),r<1&&(r=1),r}return null}function P(e,t){if(H.ketchup.math.isNumber(e)){let l=e;return l>t&&(l=t),l<1&&(l=1),l}return null}export{F,g as K,j as a,K as b,N as c,J as d,x as e,I as f,M as g,q as h,W as n,D as p,P as r,V as s,w as t}
1
+ import{B as e,E as t,C as l,A as n,ac as r,u as i,w as o,ae as s,af as a,I as u,$ as c,ag as f,q as h,l as d}from"./p-f31530fc.js";import{K as p}from"./p-de07d17e.js";import{h as m}from"./p-1ad7fea0.js";import{F as b}from"./p-35d503e2.js";import{F as v}from"./p-c634eb82.js";class F extends e{getTextFilterValue(e={},t){return this._getTextFilterValue(e,t,!1)}getTextFilterValueTmp(e={},t){return this._getTextFilterValue(e,t,!0)}_getTextFilterValue(e={},t,l){let n="";if(null==e)return n;let r=e[t];return null==r||(n=l?r.textFieldTmp:r.textField),n}hasFiltersForColumn(e={},t){return this._hasFiltersForColumn(e,t,!1)}hasFiltersForColumnTmp(e={},t){return this._hasFiltersForColumn(e,t,!0)}_hasFiltersForColumn(e={},t,l){if(!t)return!1;let n=this._getTextFilterValue(e,t.name,l);if(null!=n&&""!=n.trim())return!0;if(this._hasIntervalTextFieldFilterValues(e,t,l))return!0;let r=this.getCheckBoxFilterValues(e,t.name);return!(null==r||r.length<1)}getCheckBoxFilterValues(e={},t){let l=[];if(null==e)return l;let n=e[t];return null==n||null==n.checkBoxes||(l=n.checkBoxes),l}hasIntervalTextFieldFilterValues(e={},t){return this._hasIntervalTextFieldFilterValues(e,t,!1)}hasIntervalTextFieldFilterValuesTmp(e={},t){return this._hasIntervalTextFieldFilterValues(e,t,!0)}_hasIntervalTextFieldFilterValues(e={},l,n){if(null==l)return!1;if(!this.isColumnFiltrableByInterval(l))return!1;let r=this._getIntervalTextFieldFilterValue(e,l.name,t.FROM,n);if(null!=r&&""!=r.trim())return!0;let i=this._getIntervalTextFieldFilterValue(e,l.name,t.TO,n);return null!=i&&""!=i.trim()}addCheckboxFilter(t={},l,n){if(null==t)return;let r=t[l];null==r&&(r={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null},t[l]=r),null==r.checkBoxes&&(r.checkBoxes=[]),null==n||null==n.value?r.checkBoxes=[]:e.valuesArrayContainsValue(r.checkBoxes,n.value)||(r.checkBoxes[r.checkBoxes.length]=n)}removeCheckboxFilter(t={},l,n){if(null==t||null==n)return;let r=t[l];if(null==r)return;null==r.checkBoxes&&(r.checkBoxes=[]);let i=e.indexOfValueInValuesArray(r.checkBoxes,n);if(i>=0){let e=[];for(let t=0;t<r.checkBoxes.length;t++)t!=i&&(e[e.length]=r.checkBoxes[t]);r.checkBoxes=[...e]}}isColumnFiltrableByInterval(e){return this.isObjFiltrableByInterval(e.obj)}getIntervalTextFieldFilterValues(e={},t){return this._getIntervalTextFieldFilterValues(e,t,!1)}getIntervalTextFieldFilterValuesTmp(e={},t){return this._getIntervalTextFieldFilterValues(e,t,!0)}_getIntervalTextFieldFilterValues(e={},l,n){return this._hasIntervalTextFieldFilterValues(e,l,n)?[this._getIntervalTextFieldFilterValue(e,l.name,t.FROM,n),this._getIntervalTextFieldFilterValue(e,l.name,t.TO,n)]:["",""]}getIntervalTextFieldFilterValue(e={},t,l){return this._getIntervalTextFieldFilterValue(e,t,l,!1)}getIntervalTextFieldFilterValueTmp(e={},t,l){return this._getIntervalTextFieldFilterValue(e,t,l,!0)}_getIntervalTextFieldFilterValue(e={},t,l,n){let r="";if(null==e)return r;let i=e[t];return null==i||n&&null==i.intervalTmp?r:n||null!=i.interval?(r=n?i.intervalTmp[l]:i.interval[l],r):r}setTextFieldFilterValue(e={},t,l){this._setTextFieldFilterValue(e,t,l,!0)}_setTextFieldFilterValue(e={},t,l,n){if(null==e)return;let r=e[t];null==r&&(r={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null},e[t]=r),n?r.textFieldTmp=null!=l?l.trim():l:r.textField=null!=l?l.trim():l}setIntervalTextFieldFilterValue(e={},t,l,n){this._setIntervalTextFieldFilterValue(e,t,l,n,!0)}_setIntervalTextFieldFilterValue(e={},t,l,n,r){if(null==e)return;let i=e[t];null==i&&(i={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null},e[t]=i),null==i.interval&&(i.interval=[],i.interval.push("","")),null==i.intervalTmp&&(i.intervalTmp=[],i.intervalTmp.push("","")),r?i.intervalTmp[n]=null!=l?l.trim():l:i.interval[n]=null!=l?l.trim():l}saveTextualFilters(e={},l){this._setTextFieldFilterValue(e,l,this.getTextFilterValueTmp(e,l),!1),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValueTmp(e,l,t.FROM),t.FROM,!1),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValueTmp(e,l,t.TO),t.TO,!1)}resetTextualFilters(e={},l){this._setTextFieldFilterValue(e,l,this.getTextFilterValue(e,l),!0),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValue(e,l,t.FROM),t.FROM,!0),this._setIntervalTextFieldFilterValue(e,l,this.getIntervalTextFieldFilterValue(e,l,t.TO),t.TO,!0)}getFilterValueForTooltip(e={},r){let i=this.getTextFilterValue(e,r.name),o=this.getIntervalTextFieldFilterValues(e,r),s=this.getCheckBoxFilterValues(e,r.name),a="",u=l(i,r.obj,r.decimals);""!=i&&(a=" AND "),""!=o[t.FROM]&&(u+=a+"(>= "+l(o[t.FROM],r.obj,r.decimals)+")",a=" AND "),""!=o[t.TO]&&(u+=a+"(<= "+l(o[t.TO],r.obj,r.decimals)+")",a=" AND "),a="";let c="";return s.forEach((e=>{c+=a+n(e,r),a=" OR "})),""!=c&&(c="("+c+")",""!=u&&(c=" AND "+c)),c=u+c,c}removeFilter(e={},t){e[t]={textField:"",textFieldTmp:"",checkBoxes:[],interval:null,intervalTmp:null}}}var x;!function(e){e.asAccordion="When enabled, the first level of depth will give an accordion look to nodes.",e.columns="The columns of the tree when tree visualization is active.",e.customStyle="Custom style of the component.",e.data="The json data used to populate the tree view: the basic, always visible tree nodes.",e.density="The density of the rows, defaults at 'medium' and can also be set to 'dense' or 'wide'.",e.dynamicExpansionCallback="Function that gets invoked when a new set of nodes must be loaded as children of a node. When useDynamicExpansion is set, the tree component will have two different behaviors depending on the value of this prop. If this prop is set to null, no callback to download data is available: the component will emit an event requiring the parent to load the children of the given node. If this prop is set to have a callback, then the component will automatically make requests to load children of a given node. After the load has been completed, a different event will be fired to alert the parent of the change.",e.enableExtraColumns="Enables adding extra columns.",e.expanded="Flag: the nodes of the whole tree must be already expanded upon loading. Disabled nodes do NOT get expanded.",e.expansionMode="Behavior of nodes' expansion: it can be chosen between expanding a node by clicking on the dropdown icon, or by clicking on the whole node.",e.filters="List of filters set by the user.",e.globalFilter="When set to true it activates the global filter.",e.globalFilterValue="The value of the global filter.",e.globalFilterMode="The mode of the global filter.",e.removableColumns="Sets the possibility to remove the selected column.",e.preventXScroll="Experimental feature: when active, the tree will try to prevent horizontal overflowing elements by setting a width on the content of the table cells. It works only on cells of the main column.",e.ripple="When enabled displays Material's ripple effect on nodes (only when no columns are displayed).",e.scrollOnHover="Activates the scroll on hover function.",e.showColumns="Shows the tree data as a table.",e.showFilters="When set to true enables the column filters.",e.showFooter="When set to true shows the footer.",e.showHeader="Flag: shows the header of the tree when the tree is displayed as a table.",e.showIcons="Shows the icons of the nodes.",e.stateId="",e.store="",e.totals="Defines the current totals options.",e.useDynamicExpansion="When the component must use the dynamic expansion feature to open its nodes, it means that not all the nodes of the tree have been passed inside the data property. Therefore, when expanding a node, the tree must emit an event (or run a given callback) and wait for the child nodes to be downloaded from the server."}(x||(x={}));const w="TREE_COLUMN";var g;!function(e){e.DROPDOWN="dropdown",e.NODE="node"}(g||(g={}));const k=document.documentElement,T=k.ketchup?k.ketchup.objects:new o,y=k.ketchup?k.ketchup.data:new s;class j extends e{isFilterCompliantForCell(e,t,l){return!!e&&this.isFilterCompliantForSimpleValue(e.value,e.obj,t,l)}isFilterCompliantForCellObj(e,t,l){return!!e&&!!e.obj&&this.isFilterCompliantForSimpleValue(e.obj.k,e.obj,t,l)}isRowCompliant(e,t={},l="",n=!1,r=[],i){return this.areCellsCompliant(e.cells,t,l,n,r,i)}areCellsCompliant(e,t={},l="",n=!1,o=[],s){if(n){let t=!0;if(o&&null!=o&&o.length>0){t=!1;let n=this.filterIsNegative(l);for(let i=0;i<o.length;i++){if(0==o[i].visible)continue;const s=e[o[i].name];if(null==s)continue;t=this.isFilterCompliantForValue(s.value,l);let a=r(o[i],s);if(a!=s.value&&(t=t||this.isFilterCompliantForValue(a,l)),1==t&&!n)break;if(0==t&&n)break}}if(!t)return!1}if(null==s&&(s=new F),!this.hasFilters(t,o,s))return!0;let a=Object.keys(t);for(let l=0;l<a.length;l++){let n=a[l];const r=e[n];if(!r)return!1;let u=s.getTextFilterValue(t,n),c=s.getIntervalTextFieldFilterValues(t,i(o,n));const f=this.filterIsNegative(u);let h=this.isFilterCompliantForCell(r,u,c),d=f;if(T.isNumber(r.obj)||T.isDate(r.obj)||T.isTime(r.obj)||T.isTimestamp(r.obj)||(d=this.isFilterCompliantForCellObj(r,u,c)),f){if(!h||!d)return!1}else if(!h&&!d)return!1;let p=s.getCheckBoxFilterValues(t,n);if(0==p.length)continue;let m=!1;for(let e=0;e<p.length;e++){let t=p[e];if(null!=t&&null!=t.value){if(null!=r.value&&r.value.toLowerCase().trim()==t.value.toLowerCase().trim()){m=!0;break}if(null!=r.obj&&r.obj.k.toLowerCase().trim()==t.value.toLowerCase().trim()){m=!0;break}}}if(!m)return!1}return!0}hasFilters(e={},t,l){if(null==e)return!1;let n=Object.keys(e);if(null==n||n.length<1)return!1;null==l&&(l=new F);for(let r=0;r<n.length;r++){let o=n[r],s=null;if(s=o===w?{name:w,title:""}:i(t,o),l.hasFiltersForColumn(e,s))return!0}return!1}filterRows(e=[],t={},l="",n=[],r){if(!e||null==e)return[];let i=[];const o=!(!l||!n);if(this.hasFilters(t,n,r)||o)for(let s=0;s<e.length;s++){let a=e[s];(a.id&&a.id.indexOf("insert_")>-1||this.isRowCompliant(a,t,l,o,n,r))&&(i[i.length]=a)}else i=[...e];return i}getColumnValues(t,n,r,i){let o=new Array;null==i&&(i=new F);let s=i.getTextFilterValueTmp(t.filters,n.name),a=i.getIntervalTextFieldFilterValuesTmp(t.filters,n),u=i.getCheckBoxFilterValues(t.filters,n.name);if(null!=n.valuesForFilter&&n.valuesForFilter.length>0)return n.valuesForFilter.forEach((t=>{let r=t;(e.valuesArrayContainsValue(u,r)||""==s||i.isFilterCompliantForSimpleValue(r,n.obj,s,a))&&o.push({value:r,displayedValue:l(r,n.obj,n.decimals)})})),o;let c=Object.assign({},t.filters);c[n.name]={textField:s,textFieldTmp:s,checkBoxes:[],interval:a,intervalTmp:a};let f=this.filterRows(t.getRows(),c,r,t.getVisibleColumns(),i);for(let e=0;e<u.length;e++)o.push(u[e]);return y.cell.getUnivocalValue({rows:f},n,!0)}}const C=document.documentElement;function V(e=[],t=[]){if(!e||0===e.length)return[];if(e[0].group)return function(e=[],t=[]){if(!e||0===e.length)return[];const l=e[0].group.column;let n=function(e="",t=[]){if(!e||!t||0===t.length)return null;for(let l of t)if(l.column===e)return l;return null}(l,t);return n||(n={column:l,sortMode:c.A}),e.sort(((e,t)=>a({obj:e.group.obj,value:e.group.id},{obj:t.group.obj,value:t.group.id},n.sortMode))),e.forEach((e=>{e.group.children=V(e.group.children,t)})),e}(e,t);if(!t||0===t.length)return e;const l=t.length>1;return e.slice(0).sort(((e,n)=>{if(l){for(let l=0;l<t.length;l++){const r=O(e,n,t[l]);if(0!==r)return r}return 0}return O(e,n,t[0])}))}function O(e,t,l){const n=e.cells[l.column],r=t.cells[l.column];return n||r?n?r?a(n,r,l.sortMode):-1:1:0}function I(e=[],t={},l="",n=[],r,i){return null==i&&(i=new j),i.filterRows(e,t,l,n,r)}function M(e=[],t=[],l=[],n={}){if(!t)return[];if(!l||0===l.length||!e||0===e.length)return t;const o={},s=l.filter((({column:t})=>{for(let{name:l,title:n}of e)if(l===t)return o[l]=n,!0;return!1}));if(0===s.length)return t;const a=[];let c={};return t.forEach((t=>{const l=s[0].column,f=t.cells[l];if(f){const h=i(e,l),d=r(h,f),m=f.value;let b=null;for(let e of a)if(e.group.label===d){b=e;break}null===b&&(b={group:{id:m,parent:null,column:l,columnLabel:o[l],expanded:!1,label:d,children:[],obj:f.obj,totals:{}},cells:{}},a.push(b));for(let l=1;l<s.length;l++){const n=s[l],a=t.cells[n.column];if(a){const t=i(e,n.column),l=r(t,a),s=a.value;let u=null;for(let e=0;e<b.group.children.length;e++){const t=b.group.children[e];if(t.group.label===l){u=t;break}}u||(u={cells:{},group:{id:s,parent:b,column:n.column,columnLabel:o[n.column],children:[],expanded:!1,label:l,totals:{},obj:a.obj}},$(u),b.group.children.push(u)),b=u}}b.group.children.push(t),function(e,t,l,n){if(!e||!t)return;const r=Object.keys(t);0!==r.length&&r.forEach((r=>{const i=l.cells[r];if(i){const l=C.ketchup.objects.isNumber(i.obj),o=t[r];switch(o){case u.COUNT:let t=e.group.totals[r]||0;e.group.totals[r]=++t;let s=e.group.parent;for(;null!=s;){let e=s.group.totals[r]||0;s.group.totals[r]=++e,s=s.group.parent}break;case u.DISTINCT:let a;if(a=l?C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value)):i.value,n[e.group.id]){let t=n[e.group.id][r];t?t.push(a):(n[e.group.id][r]=[],n[e.group.id][r].push(a))}else n[e.group.id]={},n[e.group.id][r]=[],n[e.group.id][r].push(a);let c=e.group.parent;for(;null!=c;){if(n[c.group.id]){let e=n[c.group.id][r];e?e.push(a):(n[c.group.id][r]=[],n[c.group.id][r].push(a))}else n[c.group.id]={},n[c.group.id][r]=[],n[c.group.id][r].push(a);c=c.group.parent}break;case u.SUM:case u.AVERAGE:if(l&&i.value){const t=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value));e.group.totals[r]=t+(e.group.totals[r]||0);let l=e.group.parent;for(;null!=l;){const e=C.ketchup.math.numberify(l.group.totals[r]||0);l.group.totals[r]=t+e,l=l.group.parent}}break;case u.MIN:if(l&&i.value){const t=e.group.totals[r],l=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value));e.group.totals[r]=t?Math.min(t,l):l;let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];n.group.totals[r]=e?Math.min(e,l):l,n=n.group.parent}}else if(i.value&&C.ketchup.objects.isDate(i.obj)){const t=C.ketchup.dates.toDayjs(i.value);if(C.ketchup.dates.isValid(t)){const l=e.group.totals[r];if(l){let n=[];n.push(t),n.push(C.ketchup.dates.toDayjs(l)),e.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.min(n),p.ISO_DATE)}else e.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];if(e){let l=[];l.push(t),l.push(C.ketchup.dates.toDayjs(e)),n.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.min(l),p.ISO_DATE)}else n.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);n=n.group.parent}}}break;case u.MAX:if(l&&i.value){const t=e.group.totals[r],l=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(i.value));e.group.totals[r]=t?Math.max(t,l):l;let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];n.group.totals[r]=e?Math.max(e,l):l,n=n.group.parent}}else if(i.value&&C.ketchup.objects.isDate(i.obj)){const t=C.ketchup.dates.toDayjs(i.value);if(C.ketchup.dates.isValid(t)){const l=e.group.totals[r];if(l){let n=[];n.push(t),n.push(C.ketchup.dates.toDayjs(l)),e.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.max(n),p.ISO_DATE)}else e.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);let n=e.group.parent;for(;null!=n;){const e=n.group.totals[r];if(e){let l=[];l.push(t),l.push(C.ketchup.dates.toDayjs(e)),n.group.totals[r]=C.ketchup.dates.format(C.ketchup.dates.max(l),p.ISO_DATE)}else n.group.totals[r]=C.ketchup.dates.format(t,p.ISO_DATE);n=n.group.parent}}}break;default:0!=o.indexOf(u.MATH)&&console.warn(`invalid total mode: ${o}`)}}}))}(b,n,t,c)}})),function(e,t,l){if(!e||!t)return;const n=Object.keys(t);if(0===e.length||!e[0].group||0===n.length)return;let r=n.filter((e=>u.DISTINCT===t[e]));r.length>0&&e.filter((e=>e.group.children.length>0)).forEach((e=>A(e,r,l)))}(a,n,c),_(a,u.AVERAGE,n),_(a,u.MATH,n),a}function _(e,t,l){if(!e||!l)return;const n=Object.keys(l);if(0===e.length||!e[0].group||0===n.length)return;let r;t==u.AVERAGE&&(r=n.filter((e=>u.AVERAGE===l[e]))),t==u.MATH&&(r=n.filter((e=>0==l[e].indexOf(u.MATH)))),r.length>0&&e.filter((e=>e.group.children.length>0)).forEach((e=>B(e,t,r,l)))}function A(e,t,l){const n=e.group.children;0!==n.length&&(n[0].group&&n.forEach((e=>{A(e,t,l)})),t.forEach((t=>{e.group.totals[t]=new Set(l[e.group.id][t]).size})))}function B(e,t,l,n){const r=e.group.children;if(0===r.length)return 0;let i=0;return r[0].group?r.forEach((e=>{i+=B(e,t,l,n)})):i=r.length,l.forEach((l=>{if(t==u.AVERAGE&&(e.group.totals[l]=e.group.totals[l]/i),t==u.MATH){let t=n[l].substring(u.MATH.length);e.group.totals[l]=C.ketchup.math.formulas.custom(t,e.group.totals)}})),i}function W(e,t){if(t){const l=Object.assign(t);return t.forEach((t=>{e.forEach((e=>{if(t.cells){const l=t.cells[e.name];l&&e.obj&&!l.obj&&(l.obj={t:e.obj.t,p:e.obj.p,k:l.value})}}))})),l}}function N(e=[],t={}){if(C.ketchup.objects.isEmptyJsObject(e)||C.ketchup.objects.isEmptyJsObject(t))return{};const l=Object.keys(t),n={},r=new Array;if(0===l.length||l.every((e=>t[e]===u.COUNT)))l.forEach((t=>n[t]=e.length));else{let i={};e.forEach(((e,o,s)=>{l.filter((e=>u.COUNT!==t[e]&&0!=t[e].indexOf(u.MATH))).forEach((l=>{const a=e.cells[l];if(a)if(t[l]===u.DISTINCT){let e;e=C.ketchup.objects.isNumber(a.obj)?C.ketchup.math.numberify(C.ketchup.math.numberifySafe(a.value)):a.value;let t=i[l];t?t.push(e):(i[l]=[],i[l].push(e))}else if(C.ketchup.objects.isNumber(a.obj)){const e=C.ketchup.math.numberify(C.ketchup.math.numberifySafe(a.value));let r=n[l];switch(!0){case t[l]===u.MIN:n[l]=r?Math.min(r,e):e;break;case t[l]===u.MAX:n[l]=r?Math.max(r,e):e;break;default:r=n[l]||0,n[l]=e+C.ketchup.math.numberify(r)}}else if(C.ketchup.objects.isDate(a.obj)){-1==r.indexOf(l)&&r.push(l);const e=C.ketchup.dates.toDayjs(a.value);if(C.ketchup.dates.isValid(e)){const r=C.ketchup.dates.toDate(e),i=n[l]?C.ketchup.dates.toDate(C.ketchup.dates.toDayjs(n[l])):null;switch(!0){case t[l]===u.MIN:if(i){let e=[];e.push(r),e.push(i),n[l]=C.ketchup.dates.format(C.ketchup.dates.min(e),p.ISO_DATE)}else n[l]=C.ketchup.dates.format(r,p.ISO_DATE);break;case t[l]===u.MAX:if(i){let e=[];e.push(r),e.push(i),n[l]=C.ketchup.dates.format(C.ketchup.dates.max(e),p.ISO_DATE)}else n[l]=C.ketchup.dates.format(r,p.ISO_DATE)}}}o===s.length-1&&t[l]===u.DISTINCT&&(n[l]=new Set(i[l]).size,i[l]=[])}))}))}for(let i of l){switch(!0){case t[i]===u.AVERAGE:const l=n[i];l&&e.length>0&&(n[i]=l/e.length);break;case t[i]===u.COUNT:n[i]=e.length;break;case 0==t[i].indexOf(u.MATH):n[i]=C.ketchup.math.formulas.custom(t[i].substring(u.MATH.length),n)}n[i]&&(-1!=r.indexOf(i)?n[i]=C.ketchup.dates.format(n[i]):C.ketchup.math.isNumber(n[i])&&(n[i]=+n[i].toFixed(2)))}return n}function $(e){if(!e.group)return;let t=e.group.id,l=e.group.parent;for(;null!==l;)t=`${l.group.id};${t}`,l=l.group.parent;e.group.id=t}function D(e,t,l,n){const r=t*l-l,i=r+Number(l);if(0==n)return e.slice(r,i);let o=[];return E(e,o,r,Number(l),0),o}function E(e,t,l,n,r){let i=!1;for(let o=0;o<e.length;o++){let s=e[o],a=L(e[o]);if(null!=s.group&&null!=s.group.children&&s.group.children.length>0){a.group.children=[];let e=E(s.group.children,a.group.children,l,n,r);r=e.ci,i=e.added,1==i&&(t[t.length]=a)}else r>=l&&(t[t.length]=a,i=!0),r++;if(r>=l+n)break}return{ci:r,added:i}}function L(e){return null==e?null:{id:e.id,cells:Object.assign({},e.cells),actions:e.actions?[...e.actions]:null,group:R(e.group),clonedFrom:e,readOnly:e.readOnly,cssClass:e.cssClass}}function S(e){if(null==e)return null;let t=[];for(let l=0;l<e.length;l++)t[t.length]=L(e[l]);return t}function R(e){return null==e?null:{id:e.id,parent:Object.assign({},e.parent),column:e.column,columnLabel:e.columnLabel,expanded:e.expanded,label:e.label,children:S(e.children),obj:Object.assign({},e.obj),totals:Object.assign({},e.totals)}}var q;!function(e){e.SIMPLE="simple",e.FULL="full"}(q||(q={}));const z=document.documentElement,K=e=>{const t=Math.ceil(e.max/e.perPage),l=function(e,t){const l=[];for(let n=1;n<=t;n++){const t=n==e.currentPage;l.push({id:n.toString(),selected:t,value:n.toString()})}return l}(e,t),n=function(e){const t=[];let l=e.perPage;if(0===l)return t;for(;l<e.max;){const n=l==e.perPage;t.push({id:l.toString(),selected:n,value:l.toString()}),l*=2}const n=e.max==e.perPage;return t.push({id:e.max.toString(),selected:n,value:e.max.toString()}),t}(e),r={"kup-list":{data:l},"kup-text-field":{label:z.ketchup.language.translate(f.PAGE),helper:z.ketchup.language.translate(f.TOTAL)+`: ${t}`,helperWhenFocused:!0,inputType:"number",max:t,min:1}},i={"kup-list":{data:n},"kup-text-field":{label:z.ketchup.language.translate(h.ROWS)+" / "+z.ketchup.language.translate(f.PAGE),helper:z.ketchup.language.translate(h.TOTAL)+`: ${e.max}`,helperWhenFocused:!0,inputType:"number",max:e.max,min:1}};return m("div",Object.assign({class:`f-paginator ${e.mode?e.mode:""} ${e.wrapperClass?e.wrapperClass:""}`},e.dataSet,{id:e.id,title:e.title}),e.mode!==q.SIMPLE?m(b,{icon:"chevron_left",disabled:G(e),onClick:e.onPrevPage,wrapperClass:"prev-page"}):null,m("kup-combobox",{class:"page-selector",data:r,initialValue:e.currentPage.toString(),"onkup-combobox-change":e.onPageChange}),e.mode!==q.SIMPLE?m(b,{icon:"chevron_right",disabled:U(e),onClick:e.onNextPage,wrapperClass:"next-page"}):null,m("kup-combobox",{class:"rows-selector",data:i,initialValue:e.perPage.toString(),"onkup-combobox-change":e.onRowsChange}),e.onLoadMore?m(b,{icon:"plus",onClick:e.onLoadMore,label:z.ketchup.language.translate(d.LOAD_MORE),styling:v.FLAT,wrapperClass:"load-more-button"}):null)};function U(e){return e.currentPage*e.perPage>=e.max}function G(e){return 1==e.currentPage}const H=document.documentElement;function J(e,t,l){if(H.ketchup.math.isNumber(e)){const n=Math.ceil(t/l);let r=e;return r>n&&(r=n),r<1&&(r=1),r}return null}function P(e,t){if(H.ketchup.math.isNumber(e)){let l=e;return l>t&&(l=t),l<1&&(l=1),l}return null}export{F,g as K,j as a,K as b,N as c,J as d,x as e,I as f,M as g,W as n,D as p,P as r,V as s,w as t}
@@ -22,6 +22,9 @@ export declare enum KupBoxProps {
22
22
  kanban = "Displays the boxlist as a Kanban.",
23
23
  layout = "How the field will be displayed. If not present, a default one will be created.",
24
24
  lazyLoadRows = "When set to true, extra rows will be automatically loaded once the last row enters the viewport.",
25
+ loadMoreLimit = "Sets a maximum limit of new records which can be required by the load more functionality.",
26
+ loadMoreMode = "Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.",
27
+ 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.",
25
28
  multiSelection = "Enable multi selection.",
26
29
  pageSelected = "Current page number.",
27
30
  pagination = "Enables pagination.",
@@ -29,6 +32,7 @@ export declare enum KupBoxProps {
29
32
  scrollOnHover = "Activates the scroll on hover function.",
30
33
  selectBox = "Automatically selects the box at the specified index.",
31
34
  selectedRowsState = "Multiple selection.",
35
+ showLoadMore = "If set to true, displays the button to load more records.",
32
36
  showSelection = "If enabled, highlights the selected box/boxes.",
33
37
  sortBy = "If sorting is enabled, specifies which column to sort.",
34
38
  sortEnabled = "Enable sorting.",
@@ -36,6 +40,11 @@ export declare enum KupBoxProps {
36
40
  store = "",
37
41
  swipeDisabled = "Disable swipe."
38
42
  }
43
+ export declare enum LoadMoreMode {
44
+ CONSTANT = "constant",
45
+ CONSTANT_INCREMENT = "constant_increment",
46
+ PROGRESSIVE_THRESHOLD = "progressive_threshold"
47
+ }
39
48
  export interface KupBoxData {
40
49
  columns?: KupDataColumn[];
41
50
  rows?: KupBoxRow[];
@@ -112,3 +121,6 @@ export interface KupBoxRowActionClickEventPayload extends KupEventPayload {
112
121
  export interface KupBoxContextMenuEventPayload extends KupEventPayload {
113
122
  details: KupBoxEventHandlerDetails;
114
123
  }
124
+ export interface KupBoxLoadMoreClickEventPayload extends KupEventPayload {
125
+ loadItems: number;
126
+ }
@@ -6,5 +6,7 @@ export declare class KupBoxState implements KupState {
6
6
  pageSelected: number;
7
7
  rowsPerPage: number;
8
8
  load: boolean;
9
+ loadMoreLimit: number;
10
+ showLoadMore: boolean;
9
11
  toDebugString(): string;
10
12
  }
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter, VNode } from '../../stencil-public-runtime';
2
- import { KupBoxRow, KupBoxLayout, KupBoxKanban, KupBoxClickEventPayload, KupBoxSelectedEventPayload, KupBoxAutoSelectEventPayload, KupBoxRowActionClickEventPayload, KupBoxContextMenuEventPayload, KupBoxData } from './kup-box-declarations';
2
+ import { KupBoxRow, KupBoxLayout, KupBoxKanban, KupBoxClickEventPayload, KupBoxSelectedEventPayload, KupBoxAutoSelectEventPayload, KupBoxRowActionClickEventPayload, KupBoxContextMenuEventPayload, KupBoxData, LoadMoreMode, KupBoxLoadMoreClickEventPayload } from './kup-box-declarations';
3
3
  import { KupBoxState } from './kup-box-state';
4
4
  import { KupStore } from '../kup-state/kup-store';
5
5
  import { GenericObject, KupEventPayload } from '../../types/GenericTypes';
@@ -92,6 +92,26 @@ export declare class KupBox {
92
92
  * When set to true, extra rows will be automatically loaded once the last row enters the viewport.
93
93
  */
94
94
  lazyLoadRows: boolean;
95
+ /**
96
+ * Sets a maximum limit of new records which can be required by the load more functionality.
97
+ */
98
+ loadMoreLimit: number;
99
+ /**
100
+ * Establish the modality of how many new records will be downloaded.
101
+ *
102
+ * This property is regulated also by loadMoreStep.
103
+ * @see loadMoreStep
104
+ * @see loadMoreLimit
105
+ */
106
+ loadMoreMode: LoadMoreMode;
107
+ /**
108
+ * The number of records which will be requested to be downloaded when clicking on the load more button.
109
+ *
110
+ * This property is regulated also by loadMoreMode.
111
+ * @see loadMoreMode
112
+ * @see loadMoreLimit
113
+ */
114
+ loadMoreStep: number;
95
115
  /**
96
116
  * Enable multi selection
97
117
  * @default false
@@ -127,6 +147,10 @@ export declare class KupBox {
127
147
  * @default undefined
128
148
  */
129
149
  selectedRowsState: string;
150
+ /**
151
+ * If set to true, displays the button to load more records.
152
+ */
153
+ showLoadMore: boolean;
130
154
  /**
131
155
  * If enabled, highlights the selected box/boxes
132
156
  * @default true
@@ -194,6 +218,7 @@ export declare class KupBox {
194
218
  * Generic right click event on box.
195
219
  */
196
220
  kupBoxContextMenu: EventEmitter<KupBoxContextMenuEventPayload>;
221
+ kupLoadMoreClick: EventEmitter<KupBoxLoadMoreClickEventPayload>;
197
222
  rowsPerPageHandler(newValue: number): void;
198
223
  recalculateRows(): void;
199
224
  onDataChanged(): void;
@@ -64,6 +64,7 @@ export interface KupCalendarEventDropEventPayload extends KupEventPayload {
64
64
  start: Date;
65
65
  end: Date;
66
66
  };
67
+ row: KupDataRow;
67
68
  }
68
69
  export interface KupCalendarViewChangeEventPayload extends KupEventPayload {
69
70
  from: Date;
@@ -77,6 +77,7 @@ export interface KupCardBuiltInOpenAIOptions {
77
77
  export interface KupCardBuiltInOpenAIMessages {
78
78
  text: string;
79
79
  type: 'request' | 'response';
80
+ funs: RegExpMatchArray[];
80
81
  }
81
82
  /**
82
83
  * Options of the built-in column drop menu.
@@ -9,7 +9,7 @@ import { KupAccordionData, KupAccordionItemSelectedEventPayload } from "./compon
9
9
  import { GenericObject, KupEventPayload } from "./types/GenericTypes";
10
10
  import { ItemsDisplayMode, KupListEventPayload, KupListNode, KupListRole } from "./components/kup-list/kup-list-declarations";
11
11
  import { KupAutocompleteEventPayload, KupAutocompleteIconClickEventPayload } from "./components/kup-autocomplete/kup-autocomplete-declarations";
12
- import { KupBoxAutoSelectEventPayload, KupBoxClickEventPayload, KupBoxContextMenuEventPayload, KupBoxData, KupBoxKanban, KupBoxLayout, KupBoxRow, KupBoxRowActionClickEventPayload, KupBoxSelectedEventPayload } from "./components/kup-box/kup-box-declarations";
12
+ import { KupBoxAutoSelectEventPayload, KupBoxClickEventPayload, KupBoxContextMenuEventPayload, KupBoxData, KupBoxKanban, KupBoxLayout, KupBoxLoadMoreClickEventPayload, KupBoxRow, KupBoxRowActionClickEventPayload, KupBoxSelectedEventPayload, LoadMoreMode } from "./components/kup-box/kup-box-declarations";
13
13
  import { KupStore } from "./components/kup-state/kup-store";
14
14
  import { KupDataCell, KupDataColumn, KupDataDataset, KupDataNewColumnOptions, KupDataNewColumnTypes, KupDataNode, KupDataRowAction } from "./managers/kup-data/kup-data-declarations";
15
15
  import { FButtonProps, FButtonStyling } from "./f-components/f-button/f-button-declarations";
@@ -27,7 +27,7 @@ import { KupColorPickerEventPayload } from "./components/kup-color-picker/kup-co
27
27
  import { KupComboboxEventPayload, KupComboboxIconClickEventPayload } from "./components/kup-combobox/kup-combobox-declarations";
28
28
  import { KupGanttPlannerProps, KupPlannerBarDisplayProps, KupPlannerBarTask, KupPlannerCalendarProps, KupPlannerClickEventPayload, KupPlannerEventOption, KupPlannerEventPayload, KupPlannerGanttEvent, KupPlannerGanttProps, KupPlannerGanttRow, KupPlannerGanttTaskN, KupPlannerItemDetail, KupPlannerPhase, KupPlannerSwitcherProps, KupPlannerTask, KupPlannerTaskGanttContentProps, KupPlannerTaskGanttProps, KupPlannerTaskItemProps, KupPlannerTaskListProps, KupPlannerTaskType, KupPlannerUnloadEventPayload, KupPlannerViewMode, PlannerProps } from "./components/kup-planner/kup-planner-declarations";
29
29
  import { KupDashboardEventPayload, KupDataDashboard } from "./components/kup-dashboard/kup-dashboard-declarations";
30
- import { GroupLabelDisplayMode, GroupObject, KupDatatableClickEventPayload, KupDatatableColumnMenuEventPayload, KupDatatableColumnMoveEventPayload, KupDatatableColumnRemoveEventPayload, KupDataTableDataset, KupDatatableDeleteRowEventPayload, KupDatatableHistoryEventPayload, KupDataTableInsertMode, KupDatatableInsertRowEventPayload, KupDatatableLoadMoreClickEventPayload, KupDataTableRow, KupDatatableRowActionClickEventPayload, KupDatatableRowSelectedEventPayload, LoadMoreMode, PaginatorPos, SelectionMode, ShowGrid, SortObject, TotalsMap } from "./components/kup-data-table/kup-data-table-declarations";
30
+ import { GroupLabelDisplayMode, GroupObject, KupDatatableClickEventPayload, KupDatatableColumnMenuEventPayload, KupDatatableColumnMoveEventPayload, KupDatatableColumnRemoveEventPayload, KupDataTableDataset, KupDatatableDeleteRowEventPayload, KupDatatableHistoryEventPayload, KupDataTableInsertMode, KupDatatableInsertRowEventPayload, KupDatatableLoadMoreClickEventPayload, KupDataTableRow, KupDatatableRowActionClickEventPayload, KupDatatableRowSelectedEventPayload, LoadMoreMode as LoadMoreMode1, PaginatorPos, SelectionMode, ShowGrid, SortObject, TotalsMap } from "./components/kup-data-table/kup-data-table-declarations";
31
31
  import { GenericFilter, KupGlobalFilterMode } from "./utils/filters/filters-declarations";
32
32
  import { KupDatePickerEventPayload } from "./components/kup-date-picker/kup-date-picker-declarations";
33
33
  import { KupDialogAutoCenter, KupDialogHeader, KupDialogModal } from "./components/kup-dialog/kup-dialog-declarations";
@@ -58,7 +58,7 @@ export { KupAccordionData, KupAccordionItemSelectedEventPayload } from "./compon
58
58
  export { GenericObject, KupEventPayload } from "./types/GenericTypes";
59
59
  export { ItemsDisplayMode, KupListEventPayload, KupListNode, KupListRole } from "./components/kup-list/kup-list-declarations";
60
60
  export { KupAutocompleteEventPayload, KupAutocompleteIconClickEventPayload } from "./components/kup-autocomplete/kup-autocomplete-declarations";
61
- export { KupBoxAutoSelectEventPayload, KupBoxClickEventPayload, KupBoxContextMenuEventPayload, KupBoxData, KupBoxKanban, KupBoxLayout, KupBoxRow, KupBoxRowActionClickEventPayload, KupBoxSelectedEventPayload } from "./components/kup-box/kup-box-declarations";
61
+ export { KupBoxAutoSelectEventPayload, KupBoxClickEventPayload, KupBoxContextMenuEventPayload, KupBoxData, KupBoxKanban, KupBoxLayout, KupBoxLoadMoreClickEventPayload, KupBoxRow, KupBoxRowActionClickEventPayload, KupBoxSelectedEventPayload, LoadMoreMode } from "./components/kup-box/kup-box-declarations";
62
62
  export { KupStore } from "./components/kup-state/kup-store";
63
63
  export { KupDataCell, KupDataColumn, KupDataDataset, KupDataNewColumnOptions, KupDataNewColumnTypes, KupDataNode, KupDataRowAction } from "./managers/kup-data/kup-data-declarations";
64
64
  export { FButtonProps, FButtonStyling } from "./f-components/f-button/f-button-declarations";
@@ -76,7 +76,7 @@ export { KupColorPickerEventPayload } from "./components/kup-color-picker/kup-co
76
76
  export { KupComboboxEventPayload, KupComboboxIconClickEventPayload } from "./components/kup-combobox/kup-combobox-declarations";
77
77
  export { KupGanttPlannerProps, KupPlannerBarDisplayProps, KupPlannerBarTask, KupPlannerCalendarProps, KupPlannerClickEventPayload, KupPlannerEventOption, KupPlannerEventPayload, KupPlannerGanttEvent, KupPlannerGanttProps, KupPlannerGanttRow, KupPlannerGanttTaskN, KupPlannerItemDetail, KupPlannerPhase, KupPlannerSwitcherProps, KupPlannerTask, KupPlannerTaskGanttContentProps, KupPlannerTaskGanttProps, KupPlannerTaskItemProps, KupPlannerTaskListProps, KupPlannerTaskType, KupPlannerUnloadEventPayload, KupPlannerViewMode, PlannerProps } from "./components/kup-planner/kup-planner-declarations";
78
78
  export { KupDashboardEventPayload, KupDataDashboard } from "./components/kup-dashboard/kup-dashboard-declarations";
79
- export { GroupLabelDisplayMode, GroupObject, KupDatatableClickEventPayload, KupDatatableColumnMenuEventPayload, KupDatatableColumnMoveEventPayload, KupDatatableColumnRemoveEventPayload, KupDataTableDataset, KupDatatableDeleteRowEventPayload, KupDatatableHistoryEventPayload, KupDataTableInsertMode, KupDatatableInsertRowEventPayload, KupDatatableLoadMoreClickEventPayload, KupDataTableRow, KupDatatableRowActionClickEventPayload, KupDatatableRowSelectedEventPayload, LoadMoreMode, PaginatorPos, SelectionMode, ShowGrid, SortObject, TotalsMap } from "./components/kup-data-table/kup-data-table-declarations";
79
+ export { GroupLabelDisplayMode, GroupObject, KupDatatableClickEventPayload, KupDatatableColumnMenuEventPayload, KupDatatableColumnMoveEventPayload, KupDatatableColumnRemoveEventPayload, KupDataTableDataset, KupDatatableDeleteRowEventPayload, KupDatatableHistoryEventPayload, KupDataTableInsertMode, KupDatatableInsertRowEventPayload, KupDatatableLoadMoreClickEventPayload, KupDataTableRow, KupDatatableRowActionClickEventPayload, KupDatatableRowSelectedEventPayload, LoadMoreMode as LoadMoreMode1, PaginatorPos, SelectionMode, ShowGrid, SortObject, TotalsMap } from "./components/kup-data-table/kup-data-table-declarations";
80
80
  export { GenericFilter, KupGlobalFilterMode } from "./utils/filters/filters-declarations";
81
81
  export { KupDatePickerEventPayload } from "./components/kup-date-picker/kup-date-picker-declarations";
82
82
  export { KupDialogAutoCenter, KupDialogHeader, KupDialogModal } from "./components/kup-dialog/kup-dialog-declarations";
@@ -347,6 +347,22 @@ export namespace Components {
347
347
  * When set to true, extra rows will be automatically loaded once the last row enters the viewport.
348
348
  */
349
349
  "lazyLoadRows": boolean;
350
+ /**
351
+ * Sets a maximum limit of new records which can be required by the load more functionality.
352
+ */
353
+ "loadMoreLimit": number;
354
+ /**
355
+ * Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.
356
+ * @see loadMoreStep *
357
+ * @see loadMoreLimit
358
+ */
359
+ "loadMoreMode": LoadMoreMode;
360
+ /**
361
+ * 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.
362
+ * @see loadMoreMode *
363
+ * @see loadMoreLimit
364
+ */
365
+ "loadMoreStep": number;
350
366
  "loadRowActions": (row: KupBoxRow, actions: KupDataRowAction[]) => Promise<void>;
351
367
  /**
352
368
  * Enable multi selection
@@ -392,6 +408,10 @@ export namespace Components {
392
408
  * @param props - Object containing props that will be set to the component.
393
409
  */
394
410
  "setProps": (props: GenericObject) => Promise<void>;
411
+ /**
412
+ * If set to true, displays the button to load more records.
413
+ */
414
+ "showLoadMore": boolean;
395
415
  /**
396
416
  * If enabled, highlights the selected box/boxes
397
417
  * @default true
@@ -1357,7 +1377,7 @@ export namespace Components {
1357
1377
  * @see loadMoreStep *
1358
1378
  * @see loadMoreLimit
1359
1379
  */
1360
- "loadMoreMode": LoadMoreMode;
1380
+ "loadMoreMode": LoadMoreMode1;
1361
1381
  /**
1362
1382
  * 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.
1363
1383
  * @see loadMoreMode *
@@ -4091,6 +4111,7 @@ declare global {
4091
4111
  "kup-box-didload": KupEventPayload;
4092
4112
  "kup-box-didunload": KupEventPayload;
4093
4113
  "kup-box-contextmenu": KupBoxContextMenuEventPayload;
4114
+ "kup-box-loadmoreclick": KupBoxLoadMoreClickEventPayload;
4094
4115
  }
4095
4116
  interface HTMLKupBoxElement extends Components.KupBox, HTMLStencilElement {
4096
4117
  addEventListener<K extends keyof HTMLKupBoxElementEventMap>(type: K, listener: (this: HTMLKupBoxElement, ev: KupBoxCustomEvent<HTMLKupBoxElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -5236,6 +5257,22 @@ declare namespace LocalJSX {
5236
5257
  * When set to true, extra rows will be automatically loaded once the last row enters the viewport.
5237
5258
  */
5238
5259
  "lazyLoadRows"?: boolean;
5260
+ /**
5261
+ * Sets a maximum limit of new records which can be required by the load more functionality.
5262
+ */
5263
+ "loadMoreLimit"?: number;
5264
+ /**
5265
+ * Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.
5266
+ * @see loadMoreStep *
5267
+ * @see loadMoreLimit
5268
+ */
5269
+ "loadMoreMode"?: LoadMoreMode;
5270
+ /**
5271
+ * 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.
5272
+ * @see loadMoreMode *
5273
+ * @see loadMoreLimit
5274
+ */
5275
+ "loadMoreStep"?: number;
5239
5276
  /**
5240
5277
  * Enable multi selection
5241
5278
  * @default false
@@ -5258,6 +5295,7 @@ declare namespace LocalJSX {
5258
5295
  * Triggered when stop propagation event
5259
5296
  */
5260
5297
  "onKup-box-didunload"?: (event: KupBoxCustomEvent<KupEventPayload>) => void;
5298
+ "onKup-box-loadmoreclick"?: (event: KupBoxCustomEvent<KupBoxLoadMoreClickEventPayload>) => void;
5261
5299
  /**
5262
5300
  * When the row menu action icon is click
5263
5301
  */
@@ -5300,6 +5338,10 @@ declare namespace LocalJSX {
5300
5338
  * @default undefined
5301
5339
  */
5302
5340
  "selectedRowsState"?: string;
5341
+ /**
5342
+ * If set to true, displays the button to load more records.
5343
+ */
5344
+ "showLoadMore"?: boolean;
5303
5345
  /**
5304
5346
  * If enabled, highlights the selected box/boxes
5305
5347
  * @default true
@@ -6074,7 +6116,7 @@ declare namespace LocalJSX {
6074
6116
  * @see loadMoreStep *
6075
6117
  * @see loadMoreLimit
6076
6118
  */
6077
- "loadMoreMode"?: LoadMoreMode;
6119
+ "loadMoreMode"?: LoadMoreMode1;
6078
6120
  /**
6079
6121
  * 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.
6080
6122
  * @see loadMoreMode *
@@ -1,4 +1,11 @@
1
+ import { KupDataDataset } from '../kup-data/kup-data-declarations';
2
+ export interface KupOpenAIParameters {
3
+ context?: string;
4
+ dataset?: KupDataDataset;
5
+ onFunClick?: (fun: string) => void;
6
+ }
1
7
  export interface KupOpenAISessionInfo {
8
+ context: string;
2
9
  fileId: string;
3
10
  threadId: string;
4
11
  }
@@ -1,29 +1,25 @@
1
1
  import { KupDataTableDataset, KupTextFieldCustomEvent, KupTextFieldEventPayload } from '../../components';
2
2
  import { KupCardBuiltInOpenAIOptions } from '../../components/kup-card/kup-card-declarations';
3
- import { KupOpenAISessionInfo } from './kup-openai-declarations';
3
+ import { KupOpenAIParameters, KupOpenAISessionInfo } from './kup-openai-declarations';
4
4
  export declare class KupOpenAI {
5
5
  #private;
6
6
  card: HTMLKupCardElement;
7
7
  container: HTMLElement;
8
+ context: string;
8
9
  data: KupDataTableDataset;
9
10
  dialog: HTMLKupDialogElement;
10
11
  sessionInfo: KupOpenAISessionInfo;
11
12
  url: string;
13
+ onFunClick?: (fun: string) => void;
12
14
  /**
13
15
  * Initializes KupOpenAI.
14
16
  */
15
17
  constructor(url: string);
18
+ getFunFromText: (text: string) => RegExpMatchArray[];
19
+ setError(message: string, _this?: KupOpenAI, dontRefreshCard?: boolean): void;
16
20
  getCardOptions(): KupCardBuiltInOpenAIOptions;
17
- /**
18
- * Shows the component
19
- * @param data
20
- * @param options
21
- */
22
- show(data: KupDataTableDataset): void;
23
- /**
24
- * Hides the component.
25
- */
26
- hide(): void;
21
+ show(parameters: KupOpenAIParameters): Promise<void>;
22
+ hide(): Promise<void>;
27
23
  auth(event: KupTextFieldCustomEvent<KupTextFieldEventPayload>): Promise<void>;
28
- chat(disableInteractivity: any, inputArea: HTMLKupTextFieldElement): Promise<void>;
24
+ chat(disableInteractivity: (status: boolean) => void, inputArea: HTMLKupTextFieldElement): Promise<void>;
29
25
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sme.up/ketchup",
3
- "version": "9.6.0",
3
+ "version": "9.6.2",
4
4
  "keywords": [
5
5
  "smeup",
6
6
  "KetchUP",
@@ -1 +0,0 @@
1
- import{h as t,g as e}from"./p-1ad7fea0.js";import{c as s}from"./p-610a03d4.js";var a;!function(t){t.BAR="bar"}(a||(a={}));const i=i=>{let n,o;i.resource?i.resource.indexOf(".")>-1||i.resource.indexOf("/")>-1||i.resource.indexOf("\\")>-1?(o={"--kup_image_height":i.sizeY?i.sizeY:"auto","--kup_image_width":i.sizeX?i.sizeX:"100%"},n=function(e){return t("img",{onLoad:e.onLoad,src:e.resource})}(i)):(o={"--kup_image_height":i.sizeY?i.sizeY:"100%","--kup_image_width":i.sizeX?i.sizeX:"100%"},n=function(a){const i={"f-image__icon":!0},n={background:a.color?a.color:`var(${s.ICON})`};if(a.resource.indexOf("--kup")>-1){let t=a.resource.replace("--","");i["kup-icon"]=!0,i[t]=!0}else{const t=e(`./assets/svg/${a.resource}.svg`);n.mask=`url('${t}') no-repeat center`,n.webkitMask=`url('${t}') no-repeat center`}return t("div",{class:i,style:n})}(i)):i.data&&(o={"--kup_image_height":i.sizeY?i.sizeY:"100%","--kup_image_width":i.sizeX?i.sizeX:"100%"},n=function(e){const s=[];let i=0;for(let n=0;n<e.length;n++){let o;e[n].shape||(e[n].shape=a.BAR),e[n].color||(e[n].color="transparent"),e[n].height||(e[n].height="100%"),e[n].width||(e[n].width="100%");const r="step-"+n,c="css-step bottom-aligned",l={backgroundColor:e[n].color,left:i+"%",height:e[n].height,width:e[n].width};i+=parseFloat(e[n].width),o=t("span",{id:r,class:c,style:l}),s.push(o)}return t("div",{class:"f-image__css"},s)}(i.data));const r=[];if(i.badgeData)for(let e=0;e<i.badgeData.length;e++)r.push(t("kup-badge",Object.assign({},i.badgeData[e])));return t("div",Object.assign({class:`f-image ${i.wrapperClass?i.wrapperClass:""} ${i.fit?"kup-fit":""}`},i.dataSet,{id:i.id,style:o,title:i.title,onClick:i.onClick}),n,...r)};export{i as F}