@sankhyalabs/sankhyablocks 5.5.0 → 5.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/dist/cjs/{SnkMessageBuilder-26da04f7.js → SnkMessageBuilder-056d1c24.js} +23 -1
  2. package/dist/cjs/{filter-item-type.enum-3daf58d3.js → filter-item-type.enum-aa823a00.js} +1 -0
  3. package/dist/cjs/filter-type.enum-b14ce507.js +11 -0
  4. package/dist/cjs/index-8d94b7e0.js +7 -0
  5. package/dist/cjs/index-de79181a.js +201 -0
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/cjs/presentationMode-52ec3bdd.js +7 -0
  8. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  9. package/dist/cjs/snk-application.cjs.entry.js +1 -1
  10. package/dist/cjs/snk-attach.cjs.entry.js +2 -1
  11. package/dist/cjs/snk-crud.cjs.entry.js +2 -1
  12. package/dist/cjs/snk-data-exporter.cjs.entry.js +2 -2
  13. package/dist/cjs/{snk-data-unit-c43df27b.js → snk-data-unit-289081c4.js} +1 -1
  14. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  15. package/dist/cjs/snk-detail-view.cjs.entry.js +4 -3
  16. package/dist/cjs/snk-expression-item.cjs.entry.js +213 -0
  17. package/dist/cjs/snk-filter-bar.cjs.entry.js +52 -140
  18. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +8 -1
  19. package/dist/cjs/snk-filter-detail.cjs.entry.js +1 -1
  20. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +435 -0
  21. package/dist/cjs/snk-filter-item.cjs.entry.js +1 -1
  22. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +66 -0
  23. package/dist/cjs/snk-filter-modal.cjs.entry.js +72 -49
  24. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +3 -1
  25. package/dist/cjs/snk-filter-number.cjs.entry.js +3 -1
  26. package/dist/cjs/snk-filter-period.cjs.entry.js +11 -2
  27. package/dist/cjs/snk-filter-personalized.cjs.entry.js +3 -1
  28. package/dist/cjs/snk-filter-search.cjs.entry.js +3 -1
  29. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -0
  30. package/dist/cjs/snk-grid.cjs.entry.js +3 -2
  31. package/dist/cjs/{snk-guides-viewer-e6a65393.js → snk-guides-viewer-9784c527.js} +1 -1
  32. package/dist/cjs/snk-guides-viewer.cjs.entry.js +3 -2
  33. package/dist/cjs/snk-personalized-filter.cjs.entry.js +126 -0
  34. package/dist/cjs/snk-simple-bar_2.cjs.entry.js +2 -1
  35. package/dist/cjs/snk-taskbar.cjs.entry.js +2 -1
  36. package/dist/cjs/taskbar-elements-bc2598f9.js +118 -0
  37. package/dist/collection/collection-manifest.json +3 -0
  38. package/dist/collection/components/snk-filter-bar/filter-item/editors/enum/presentationMode.js +5 -0
  39. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +47 -0
  40. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +19 -0
  41. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +19 -0
  42. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +50 -1
  43. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-personalized.js +19 -0
  44. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +19 -0
  45. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +19 -0
  46. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type.enum.js +1 -0
  47. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +31 -2
  48. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +116 -156
  49. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.css +4 -0
  50. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +115 -0
  51. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +19 -142
  52. package/dist/collection/components/snk-filter-bar/types/filter-type.enum.js +7 -0
  53. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +36 -0
  54. package/dist/collection/components/snk-filter-bar/utils/filters-mock.js +315 -0
  55. package/dist/collection/components/snk-filter-field-search/snk-filter-field-search.js +62 -69
  56. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.css +4 -0
  57. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +87 -0
  58. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/filter-operands/filter-operands.js +34 -0
  59. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.css +97 -0
  60. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js +298 -0
  61. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js +2 -2
  62. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +63 -0
  63. package/dist/collection/lib/message/SnkMessageBuilder.js +2 -0
  64. package/dist/collection/lib/message/resources/snk-filter-bar.msg.js +9 -1
  65. package/dist/collection/lib/message/resources/snk-personalized-filter.msg.js +12 -0
  66. package/dist/collection/lib/store/index.js +2 -1
  67. package/dist/components/SnkMessageBuilder.js +23 -1
  68. package/dist/components/filter-item-type.enum.js +1 -0
  69. package/dist/components/index.d.ts +3 -0
  70. package/dist/components/index.js +3 -0
  71. package/dist/components/index2.js +1 -1
  72. package/dist/components/index3.js +199 -0
  73. package/dist/components/presentationMode.js +7 -0
  74. package/dist/components/snk-crud.js +22 -34
  75. package/dist/components/snk-data-exporter2.js +1 -1
  76. package/dist/components/snk-detail-view2.js +24 -46
  77. package/dist/components/snk-expression-item.d.ts +11 -0
  78. package/dist/components/snk-expression-item.js +6 -0
  79. package/dist/components/snk-expression-item2.js +241 -0
  80. package/dist/components/snk-filter-bar2.js +57 -157
  81. package/dist/components/snk-filter-binary-select.js +9 -1
  82. package/dist/components/snk-filter-field-search.js +1 -200
  83. package/dist/{esm/snk-filter-field-search.entry.js → components/snk-filter-field-search2.js} +65 -38
  84. package/dist/components/snk-filter-list.js +171 -1
  85. package/dist/components/snk-filter-modal-item.d.ts +11 -0
  86. package/dist/components/snk-filter-modal-item.js +6 -0
  87. package/dist/components/snk-filter-modal-item2.js +85 -0
  88. package/dist/components/snk-filter-modal.js +118 -1
  89. package/dist/components/snk-filter-multi-select.js +3 -1
  90. package/dist/components/snk-filter-number.js +3 -1
  91. package/dist/components/snk-filter-param-config.js +1 -273
  92. package/dist/{esm/snk-filter-param-config.entry.js → components/snk-filter-param-config2.js} +35 -11
  93. package/dist/components/snk-filter-period.js +12 -2
  94. package/dist/components/snk-filter-personalized.js +3 -1
  95. package/dist/components/snk-filter-search.js +3 -1
  96. package/dist/components/snk-filter-text.js +3 -1
  97. package/dist/components/snk-grid2.js +12 -23
  98. package/dist/components/snk-personalized-filter.d.ts +11 -0
  99. package/dist/components/snk-personalized-filter.js +158 -0
  100. package/dist/components/snk-taskbar2.js +3 -197
  101. package/dist/esm/{SnkMessageBuilder-7a9392e6.js → SnkMessageBuilder-23272e07.js} +23 -1
  102. package/dist/esm/{filter-item-type.enum-a79b2fa8.js → filter-item-type.enum-5028ed3f.js} +1 -0
  103. package/dist/esm/filter-type.enum-a80c1b6b.js +9 -0
  104. package/dist/esm/{index-6519a79e.js → index-507e19ec.js} +1 -1
  105. package/dist/esm/index-620ac460.js +7 -0
  106. package/dist/esm/index-8efbf198.js +199 -0
  107. package/dist/esm/loader.js +1 -1
  108. package/dist/esm/presentationMode-783bbf9d.js +7 -0
  109. package/dist/esm/sankhyablocks.js +1 -1
  110. package/dist/esm/snk-application.entry.js +1 -1
  111. package/dist/esm/snk-attach.entry.js +3 -2
  112. package/dist/esm/snk-crud.entry.js +3 -2
  113. package/dist/esm/snk-data-exporter.entry.js +3 -3
  114. package/dist/esm/{snk-data-unit-f9e4c694.js → snk-data-unit-34dc5371.js} +1 -1
  115. package/dist/esm/snk-data-unit.entry.js +2 -2
  116. package/dist/esm/snk-detail-view.entry.js +5 -4
  117. package/dist/esm/snk-expression-item.entry.js +209 -0
  118. package/dist/esm/snk-filter-bar.entry.js +53 -141
  119. package/dist/esm/snk-filter-binary-select.entry.js +9 -2
  120. package/dist/esm/snk-filter-detail.entry.js +1 -1
  121. package/dist/esm/snk-filter-field-search_2.entry.js +430 -0
  122. package/dist/esm/snk-filter-item.entry.js +1 -1
  123. package/dist/esm/snk-filter-modal-item.entry.js +62 -0
  124. package/dist/esm/snk-filter-modal.entry.js +73 -50
  125. package/dist/esm/snk-filter-multi-select.entry.js +4 -2
  126. package/dist/esm/snk-filter-number.entry.js +4 -2
  127. package/dist/esm/snk-filter-period.entry.js +12 -3
  128. package/dist/esm/snk-filter-personalized.entry.js +4 -2
  129. package/dist/esm/snk-filter-search.entry.js +4 -2
  130. package/dist/esm/snk-filter-text.entry.js +3 -1
  131. package/dist/esm/snk-grid.entry.js +3 -2
  132. package/dist/esm/{snk-guides-viewer-62a9f74d.js → snk-guides-viewer-4d12f268.js} +2 -2
  133. package/dist/esm/snk-guides-viewer.entry.js +4 -3
  134. package/dist/esm/snk-personalized-filter.entry.js +122 -0
  135. package/dist/esm/snk-simple-bar_2.entry.js +3 -2
  136. package/dist/esm/snk-taskbar.entry.js +3 -2
  137. package/dist/esm/taskbar-elements-e6af3e93.js +115 -0
  138. package/dist/sankhyablocks/p-0110b7da.entry.js +1 -0
  139. package/dist/sankhyablocks/p-1a68fb59.js +1 -0
  140. package/dist/sankhyablocks/p-27e264d9.entry.js +1 -0
  141. package/dist/sankhyablocks/p-343699ad.entry.js +1 -0
  142. package/dist/sankhyablocks/{p-f2223502.js → p-3db1d3de.js} +1 -1
  143. package/dist/sankhyablocks/p-433dfa63.entry.js +1 -0
  144. package/dist/sankhyablocks/p-45ee8b22.entry.js +1 -0
  145. package/dist/sankhyablocks/{p-f132e371.js → p-4c2015a9.js} +1 -1
  146. package/dist/sankhyablocks/p-4ce96831.entry.js +1 -0
  147. package/dist/sankhyablocks/p-4eefe631.entry.js +1 -0
  148. package/dist/sankhyablocks/{p-9dd2b8cb.js → p-584d7212.js} +1 -1
  149. package/dist/sankhyablocks/{p-a412992c.entry.js → p-64b03506.entry.js} +1 -1
  150. package/dist/sankhyablocks/p-6a02e236.js +1 -0
  151. package/dist/sankhyablocks/p-7695c404.entry.js +1 -0
  152. package/dist/sankhyablocks/p-786ae316.entry.js +1 -0
  153. package/dist/sankhyablocks/p-82bc97da.entry.js +1 -0
  154. package/dist/sankhyablocks/p-8bdf5e57.entry.js +1 -0
  155. package/dist/sankhyablocks/p-8efb0f47.entry.js +1 -0
  156. package/dist/sankhyablocks/p-9af04fc7.entry.js +1 -0
  157. package/dist/sankhyablocks/{p-3a2ce158.entry.js → p-a1c58536.entry.js} +1 -1
  158. package/dist/sankhyablocks/{p-afba9bbe.entry.js → p-bdbb2672.entry.js} +1 -1
  159. package/dist/sankhyablocks/{p-b2523981.entry.js → p-c1ab16d0.entry.js} +2 -2
  160. package/dist/sankhyablocks/{p-aeffd219.js → p-ccd26e3a.js} +1 -1
  161. package/dist/sankhyablocks/p-d410f45a.js +1 -0
  162. package/dist/sankhyablocks/p-d9804798.js +1 -0
  163. package/dist/sankhyablocks/p-df8f13b4.entry.js +1 -0
  164. package/dist/sankhyablocks/p-e2bb9c9a.entry.js +1 -0
  165. package/dist/sankhyablocks/p-e9f42525.entry.js +1 -0
  166. package/dist/sankhyablocks/p-ed3d6ab4.entry.js +1 -0
  167. package/dist/sankhyablocks/p-ee1381f4.entry.js +1 -0
  168. package/dist/sankhyablocks/p-f4184ce7.js +1 -0
  169. package/dist/sankhyablocks/p-f5f36fbb.js +1 -0
  170. package/dist/sankhyablocks/p-fd4ed40a.entry.js +1 -0
  171. package/dist/sankhyablocks/p-ff96b509.entry.js +27 -0
  172. package/dist/sankhyablocks/p-ffac37d5.entry.js +1 -0
  173. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  174. package/dist/types/components/snk-filter-bar/filter-item/editors/enum/presentationMode.d.ts +4 -0
  175. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-personalized.d.ts +5 -0
  176. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type.enum.d.ts +2 -1
  177. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +3 -0
  178. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +37 -0
  179. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +17 -0
  180. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +2 -11
  181. package/dist/types/components/snk-filter-bar/types/filter-type.enum.d.ts +6 -0
  182. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +20 -0
  183. package/dist/types/components/snk-filter-bar/utils/filters-mock.d.ts +186 -0
  184. package/dist/types/components/snk-filter-field-search/interfaces/index.d.ts +14 -4
  185. package/dist/types/components/snk-filter-field-search/snk-filter-field-search.d.ts +13 -10
  186. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +20 -0
  187. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/filter-operands/filter-operands.d.ts +9 -0
  188. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.d.ts +54 -0
  189. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IExpressionItem.d.ts +4 -2
  190. package/dist/types/components.d.ts +196 -63
  191. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +7 -0
  192. package/dist/types/lib/message/resources/snk-personalized-filter.msg.d.ts +1 -0
  193. package/dist/types/lib/store/index.d.ts +1 -0
  194. package/package.json +1 -1
  195. package/react/components.d.ts +3 -0
  196. package/react/components.js +3 -0
  197. package/react/components.js.map +1 -1
  198. package/dist/cjs/snk-filter-field-search.cjs.entry.js +0 -185
  199. package/dist/cjs/snk-filter-param-config.cjs.entry.js +0 -256
  200. package/dist/cjs/taskbar-elements-80285601.js +0 -313
  201. package/dist/components/snk-filter-list2.js +0 -173
  202. package/dist/components/snk-filter-modal2.js +0 -97
  203. package/dist/esm/taskbar-elements-055ba1ad.js +0 -309
  204. package/dist/sankhyablocks/p-4512cc6c.entry.js +0 -1
  205. package/dist/sankhyablocks/p-5cbbe1f7.entry.js +0 -1
  206. package/dist/sankhyablocks/p-5e62a17b.entry.js +0 -1
  207. package/dist/sankhyablocks/p-5fc55684.entry.js +0 -1
  208. package/dist/sankhyablocks/p-63d01871.entry.js +0 -1
  209. package/dist/sankhyablocks/p-73e830cf.entry.js +0 -1
  210. package/dist/sankhyablocks/p-741b00ef.entry.js +0 -1
  211. package/dist/sankhyablocks/p-79d22df0.entry.js +0 -1
  212. package/dist/sankhyablocks/p-86d29b6f.entry.js +0 -1
  213. package/dist/sankhyablocks/p-92a0fca4.js +0 -1
  214. package/dist/sankhyablocks/p-93d8fe00.entry.js +0 -1
  215. package/dist/sankhyablocks/p-999d1953.entry.js +0 -1
  216. package/dist/sankhyablocks/p-ad51bf1c.entry.js +0 -1
  217. package/dist/sankhyablocks/p-c336170d.entry.js +0 -1
  218. package/dist/sankhyablocks/p-c3efd4eb.entry.js +0 -1
  219. package/dist/sankhyablocks/p-d5c9c1f8.entry.js +0 -1
  220. package/dist/sankhyablocks/p-ebe876f5.entry.js +0 -1
  221. package/dist/sankhyablocks/p-ed438690.js +0 -1
  222. package/dist/sankhyablocks/p-ee82c157.entry.js +0 -1
  223. package/dist/sankhyablocks/p-f3d0c744.entry.js +0 -1
  224. package/dist/sankhyablocks/p-fac37198.entry.js +0 -1
@@ -4,71 +4,94 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const ezModalContainer = require('@sankhyalabs/ezui/dist/collection/components/ez-modal-container');
7
- const core = require('@sankhyalabs/core');
8
- const utils = require('@sankhyalabs/ezui/dist/collection/utils');
7
+ const filterType_enum = require('./filter-type.enum-b14ce507.js');
8
+ const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
9
9
 
10
- const snkFilterModalCss = ".snk-filter__modal-container{width:359px;max-width:359px}";
10
+ const snkFilterModalCss = "ez-modal{--ez-modal-content-padding:24px 12px}.snk-filter__modal-container{width:344px;max-width:344px;overflow:hidden}.snk-filter__modal-content{display:flex;flex-direction:column;gap:12px;max-height:760px;overflow-x:clip;overflow-y:auto;padding-right:4px}.snk-filter__modal-content::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}.snk-filter__modal-collapsible-box{border:1px solid #DCE0E8;border-radius:var(--border--radius-medium)}";
11
11
 
12
12
  const SnkFilterModal = class {
13
13
  constructor(hostRef) {
14
14
  index.registerInstance(this, hostRef);
15
- this._filterArgument = undefined;
16
15
  this.getMessage = undefined;
17
- this.items = undefined;
18
- this.modalTitle = undefined;
19
- this.modalSubTitle = undefined;
20
- this.cancelButtonLabel = undefined;
21
- this.okButtonLabel = undefined;
22
- this.infoText = undefined;
23
- this.useSearch = undefined;
24
- this.processModalAction = undefined;
16
+ this.filters = undefined;
17
+ this.applyFilters = undefined;
18
+ this.clearAll = undefined;
19
+ this.closeModal = undefined;
25
20
  }
26
- updateValue(id, value = undefined) {
27
- this.items = this.items.map(item => {
28
- if (item.id === id && item.enabled) {
29
- if (value == undefined) {
30
- value = !item.active;
31
- }
32
- return Object.assign(Object.assign({}, item), { active: value });
33
- }
34
- return item;
35
- });
21
+ getCustomMessage(key, params) {
22
+ var _a;
23
+ return (_a = this.getMessage) === null || _a === void 0 ? void 0 : _a.call(this, `snkFilterBar.filterModal.${key}`, params);
24
+ }
25
+ handleClearAll() {
26
+ const cleanedFilters = this.clearAll(this.filters);
27
+ this.filters = cleanedFilters;
36
28
  }
37
- getActiveFiltersMsg() {
38
- const activeFilters = this.items.filter(item => item.active).length;
39
- if (activeFilters === 0) {
40
- return this.getMessage("snkFilterBar.noActiveFilters");
29
+ modalActionListener(evt) {
30
+ const modalAction = evt.detail;
31
+ switch (modalAction) {
32
+ case ezModalContainer.ModalAction.CANCEL:
33
+ this.handleClearAll();
34
+ break;
35
+ case ezModalContainer.ModalAction.OK:
36
+ this.applyFilters(this.filters);
37
+ case ezModalContainer.ModalAction.CLOSE:
38
+ this.closeModal();
41
39
  }
42
- return this.getMessage(activeFilters > 1 ? "snkFilterBar.activeFilters" : "snkFilterBar.activeFilter", { ACTIVE_FILTERS: activeFilters });
43
40
  }
44
- buildItems(list) {
45
- return list.map(item => {
46
- return (index.h("button", { onClick: () => this.updateValue(item.id), class: "ez-padding--medium sc-snk-filter-bar snk-filter-bar__filter-modal-item ez-align--middle ez-margin-bottom--small" }, index.h("ez-check", { id: `checkbox_${item.id}`, tabIndex: -1, class: "sc-snk-filter-bar snk-filter-bar__filter-modal-item__check", onEzChange: evt => this.updateValue(item.id, evt.detail), enabled: item.enabled, value: item.active, mode: utils.CheckMode.SWITCH }), index.h("div", { class: "ez-text ez-title--primary ez-text--medium ez-margin-left--medium sc-snk-filter-bar snk-filter-bar__filter-modal-item__label" }, item.label)));
47
- });
41
+ handleFilterChange(filterConfig) {
42
+ this.filters = this.filters.map(filter => filter.id === filterConfig.id ? filterConfig : filter);
48
43
  }
49
- itemKeyBoardSelect(event, item) {
50
- if (event.key === "Enter" || event.key === " ") {
51
- this.updateValue(item.id);
52
- }
44
+ handleClearFilters(filterList) {
45
+ this.filters = this.filters.map(filter => filterList.includes(filter) ? (Object.assign(Object.assign({}, filter), { value: undefined })) : filter);
53
46
  }
54
- modalActionListener(evt) {
55
- const modalAction = evt.detail;
56
- if (modalAction === ezModalContainer.ModalAction.LOAD) {
57
- if (this._filterInput) {
58
- this._filterInput.setFocus();
47
+ renderFilterItem(filterItem, fullRow) {
48
+ return (index.h("snk-filter-modal-item", { class: fullRow ? 'ez-col ez-col--sd-12' : 'ez-col ez-col--sd-6 ez-padding--small', filterItem: filterItem, onFilterChange: (event) => this.handleFilterChange(event.detail) }));
49
+ }
50
+ mountFiltersLines(filters) {
51
+ const MAX_LINE_LENGTH = 2;
52
+ let currentLine = 0;
53
+ let forceAddCurrent = false;
54
+ const filtersLines = {};
55
+ for (let curr = 0; curr < filters.length; curr++) {
56
+ filtersLines[currentLine] = filtersLines[currentLine] || [];
57
+ const item = filters[curr];
58
+ const isLast = curr === filters.length - 1;
59
+ const currentItemMatch = [filterItemType_enum.FilterItemType.TEXT, filterItemType_enum.FilterItemType.NUMBER].includes(item.type);
60
+ const nextItemMatch = isLast ? false : [filterItemType_enum.FilterItemType.TEXT, filterItemType_enum.FilterItemType.NUMBER].includes(filters[curr + 1].type);
61
+ if ((currentItemMatch && nextItemMatch) || forceAddCurrent) {
62
+ filtersLines[currentLine].push(item);
63
+ forceAddCurrent = filtersLines[currentLine].length < MAX_LINE_LENGTH;
64
+ if (filtersLines[currentLine].length === MAX_LINE_LENGTH)
65
+ ++currentLine;
66
+ continue;
59
67
  }
68
+ filtersLines[currentLine] = filtersLines[currentLine] || [];
69
+ filtersLines[currentLine].push(item);
70
+ ++currentLine;
60
71
  }
61
- else {
62
- this.processModalAction(modalAction);
63
- }
72
+ return Object.values(filtersLines);
73
+ }
74
+ renderFilterLine(filters) {
75
+ const fullLine = filters.length === 1;
76
+ return (index.h("div", { class: "ez-row" }, filters.map((filter) => this.renderFilterItem(filter, fullLine))));
77
+ }
78
+ renderCollapsibleFilterBox(label, listItems) {
79
+ if (!listItems.length)
80
+ return null;
81
+ const appliedFilters = listItems.filter(filterItem => !!filterItem.value).length;
82
+ const lines = this.mountFiltersLines(listItems);
83
+ return (index.h("ez-collapsible-box", { className: "snk-filter__modal-collapsible-box ez-padding--medium", headerSize: "medium", value: true, label: label }, !!appliedFilters && (index.h("ez-badge", { className: "ez-badge--primary-subtle", slot: "rightSlot", label: appliedFilters })), lines.map(this.renderFilterLine.bind(this)), index.h("div", { class: "ez-flex ez-flex--justify-end grow" }, index.h("ez-button", { className: "ez-button--tertiary", size: "medium", label: "Limpar", onClick: () => this.handleClearFilters(listItems) }))));
84
+ }
85
+ componentWillRender() {
86
+ this._modalTitle = this.getCustomMessage('title');
87
+ this._okButtonLabel = this.getCustomMessage('okButtonLabel');
88
+ this._cancelButtonLabel = this.getCustomMessage('cancelButtonLabel');
64
89
  }
65
90
  render() {
66
- const allowCancel = this.items.filter(item => item.active).length > 0;
67
- const items = (this.items ? core.ArrayUtils.applyStringFilter(this._filterArgument, this.items) : []);
68
- return (index.h("ez-modal-container", { class: "snk-filter__modal-container", modalTitle: this.modalTitle, modalSubTitle: this.modalSubTitle, cancelButtonLabel: this.cancelButtonLabel, okButtonLabel: this.okButtonLabel, onEzModalAction: evt => this.modalActionListener(evt), cancelButtonStatus: allowCancel ? ezModalContainer.ModalButtonStatus.ENABLED : ezModalContainer.ModalButtonStatus.DISABLED }, index.h("div", { class: "sc-snk-filter-bar snk-filter-bar__filter-modal-content" }, index.h("div", null, this.useSearch ?
69
- index.h("ez-filter-input", { ref: ref => this._filterInput = ref, label: this.getMessage("snkFilterBar.modalFindFilter"), onEzChange: (evt) => this._filterArgument = evt.detail })
70
- :
71
- undefined), items.length > 0 ? index.h("div", { class: "ez-text ez-text--medium ez-text--primary ez-padding-bottom--small" }, this.getActiveFiltersMsg()) : undefined, index.h("div", null, this.buildItems(items)), index.h("div", { class: "ez-text ez-text--large ez-align--middle ez-text--secondary ez-text--center ez-padding-bottom--large" }, this.infoText))));
91
+ const customFilters = this.filters.filter(filter => filter.filterType === filterType_enum.FilterType.CUSTOM_FILTER);
92
+ const quickFilters = this.filters.filter(filter => filter.filterType === filterType_enum.FilterType.QUICK_FILTER);
93
+ const otherFilters = this.filters.filter(filter => filter.filterType === filterType_enum.FilterType.OTHER_FILTERS);
94
+ return (index.h("ez-modal-container", { class: "snk-filter__modal-container", modalTitle: this._modalTitle, cancelButtonLabel: this._cancelButtonLabel, okButtonLabel: this._okButtonLabel, onEzModalAction: this.modalActionListener.bind(this) }, index.h("div", { class: "snk-filter__modal-content" }, this.renderCollapsibleFilterBox(this.getCustomMessage('customFilters'), customFilters), this.renderCollapsibleFilterBox(this.getCustomMessage('quickFilters'), quickFilters), otherFilters.map(filter => this.renderCollapsibleFilterBox(filter.label, [filter])))));
72
95
  }
73
96
  };
74
97
  SnkFilterModal.style = snkFilterModalCss;
@@ -4,11 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const filterItemType_enum = require('./filter-item-type.enum-3daf58d3.js');
7
+ const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
8
8
 
9
9
  const SnkFilterMultiSelect = class {
10
10
  constructor(hostRef) {
11
11
  index.registerInstance(this, hostRef);
12
+ this.valueChanged = index.createEvent(this, "valueChanged", 7);
12
13
  this.value = undefined;
13
14
  this.config = undefined;
14
15
  }
@@ -17,6 +18,7 @@ const SnkFilterMultiSelect = class {
17
18
  */
18
19
  ezChangeListener(evt) {
19
20
  this.value = evt.detail.value;
21
+ this.valueChanged.emit(this.value);
20
22
  }
21
23
  /**
22
24
  * Exibe o componente snk-filter-multi-select
@@ -4,11 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const filterItemType_enum = require('./filter-item-type.enum-3daf58d3.js');
7
+ const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
8
8
 
9
9
  const SnkFilterPeriod = class {
10
10
  constructor(hostRef) {
11
11
  index.registerInstance(this, hostRef);
12
+ this.valueChanged = index.createEvent(this, "valueChanged", 7);
12
13
  this.config = undefined;
13
14
  this.value = undefined;
14
15
  }
@@ -17,6 +18,7 @@ const SnkFilterPeriod = class {
17
18
  */
18
19
  ezChangeListener(evt) {
19
20
  this.value = evt.detail;
21
+ this.valueChanged.emit(this.value);
20
22
  }
21
23
  /**
22
24
  * Exibe o componente snk-filter-number
@@ -4,13 +4,16 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const filterItemType_enum = require('./filter-item-type.enum-3daf58d3.js');
7
+ const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
8
+ const presentationMode = require('./presentationMode-52ec3bdd.js');
8
9
 
9
10
  const SnkFilterPeriod = class {
10
11
  constructor(hostRef) {
11
12
  index.registerInstance(this, hostRef);
13
+ this.valueChanged = index.createEvent(this, "valueChanged", 7);
12
14
  this.config = undefined;
13
15
  this.value = undefined;
16
+ this.presentationMode = presentationMode.EPresentationMode.CHIP;
14
17
  }
15
18
  /**
16
19
  * Emitido quando acontece a alteração de valor do componente snk-filter-period
@@ -19,6 +22,7 @@ const SnkFilterPeriod = class {
19
22
  const start = this._startDate.value;
20
23
  const end = this._endDate.value;
21
24
  this.value = (start || end ? { start, end } : undefined);
25
+ this.valueChanged.emit(this.value);
22
26
  }
23
27
  componentDidLoad() {
24
28
  if (this._element) {
@@ -43,11 +47,16 @@ const SnkFilterPeriod = class {
43
47
  async show() {
44
48
  this._startDate.setFocus();
45
49
  }
50
+ buildLabel() {
51
+ if (this.presentationMode === presentationMode.EPresentationMode.CHIP) {
52
+ return index.h("label", { class: "ez-text ez-text--medium ez-text--primary ez-margin--medium" }, "at\u00E9");
53
+ }
54
+ }
46
55
  render() {
47
56
  if (!this.config || this.config.type !== filterItemType_enum.FilterItemType.PERIOD) {
48
57
  return undefined;
49
58
  }
50
- return (index.h("div", { class: "ez-col ez-col--nowrap" }, index.h("ez-date-input", { id: `${this.config.id}_start`, label: this.config.label, ref: ref => this._startDate = ref, value: this.getDate("start") }), index.h("label", { class: "ez-text ez-text--medium ez-text--primary ez-margin--medium" }, "at\u00E9"), index.h("ez-date-input", { id: `${this.config.id}_end`, label: this.config.label, ref: ref => this._endDate = ref, value: this.getDate("end") })));
59
+ return (index.h("div", { class: "ez-col ez-col--nowrap" }, index.h("ez-date-input", { id: `${this.config.id}_start`, class: this.presentationMode === presentationMode.EPresentationMode.MODAL ? 'ez-padding--small' : '', label: this.config.label, ref: ref => this._startDate = ref, value: this.getDate("start") }), this.buildLabel(), index.h("ez-date-input", { id: `${this.config.id}_end`, class: this.presentationMode === presentationMode.EPresentationMode.MODAL ? 'ez-padding--small' : '', label: this.config.label, ref: ref => this._endDate = ref, value: this.getDate("end") })));
51
60
  }
52
61
  get _element() { return index.getElement(this); }
53
62
  };
@@ -6,11 +6,12 @@ const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const DataType = require('@sankhyalabs/core/dist/dataunit/metadata/DataType');
8
8
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
9
- const filterItemType_enum = require('./filter-item-type.enum-3daf58d3.js');
9
+ const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
10
10
 
11
11
  const SnkFilterPersonalized = class {
12
12
  constructor(hostRef) {
13
13
  index.registerInstance(this, hostRef);
14
+ this.valueChanged = index.createEvent(this, "valueChanged", 7);
14
15
  this.config = undefined;
15
16
  this.value = undefined;
16
17
  this.fix = undefined;
@@ -42,6 +43,7 @@ const SnkFilterPersonalized = class {
42
43
  if (this.value.filter(item => item != undefined).length == 0) {
43
44
  this.value = null;
44
45
  }
46
+ this.valueChanged.emit(this.value || []);
45
47
  }
46
48
  doSearch(mode, argument, param) {
47
49
  const application = core.ApplicationContext.getContextValue("__SNK__APPLICATION__");
@@ -4,11 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const filterItemType_enum = require('./filter-item-type.enum-3daf58d3.js');
7
+ const filterItemType_enum = require('./filter-item-type.enum-aa823a00.js');
8
8
 
9
9
  const SnkFilterSearch = class {
10
10
  constructor(hostRef) {
11
11
  index.registerInstance(this, hostRef);
12
+ this.valueChanged = index.createEvent(this, "valueChanged", 7);
12
13
  this.config = undefined;
13
14
  this.value = undefined;
14
15
  }
@@ -17,6 +18,7 @@ const SnkFilterSearch = class {
17
18
  */
18
19
  ezChangeListener(_evt) {
19
20
  this.value = this._searchInput.value;
21
+ this.valueChanged.emit(this.value);
20
22
  }
21
23
  componentDidLoad() {
22
24
  if (this._element) {
@@ -8,6 +8,7 @@ const core = require('@sankhyalabs/core');
8
8
  const SnkFilterText = class {
9
9
  constructor(hostRef) {
10
10
  index.registerInstance(this, hostRef);
11
+ this.valueChanged = index.createEvent(this, "valueChanged", 7);
11
12
  this.config = undefined;
12
13
  this.value = undefined;
13
14
  }
@@ -16,6 +17,7 @@ const SnkFilterText = class {
16
17
  */
17
18
  ezChangeListener(evt) {
18
19
  this.value = evt.detail;
20
+ this.valueChanged.emit(this.value);
19
21
  }
20
22
  componentDidLoad() {
21
23
  if (this._element) {
@@ -5,10 +5,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const UnitMetadata = require('@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata');
8
- const taskbarElements = require('./taskbar-elements-80285601.js');
8
+ const taskbarElements = require('./taskbar-elements-bc2598f9.js');
9
9
  const ConfigStorage = require('./ConfigStorage-91adf3fe.js');
10
10
  const index$1 = require('./index-f400b1d6.js');
11
11
  const taskbarProcessor = require('./taskbar-processor-bce3f499.js');
12
+ const index$2 = require('./index-de79181a.js');
12
13
  require('./form-config-fetcher-fa19680a.js');
13
14
  require('./DataFetcher-a9d0228f.js');
14
15
  require('./_commonjsHelpers-537d719a.js');
@@ -209,7 +210,7 @@ const SnkGrid = class {
209
210
  return (_c = (_b = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.records) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.__record__id__;
210
211
  }
211
212
  };
212
- taskbarElements.store.set("exporterProviders", Object.assign(Object.assign({}, taskbarElements.store.get("exporterProviders")), { [this.configName]: dataExporterProvider }));
213
+ index$2.store.set("exporterProviders", Object.assign(Object.assign({}, index$2.store.get("exporterProviders")), { [this.configName]: dataExporterProvider }));
213
214
  }
214
215
  addElementID() {
215
216
  const dataInfo = { dataUnit: this._dataUnit };
@@ -5,7 +5,7 @@ const core = require('@sankhyalabs/core');
5
5
  const SnkFormConfigManager = require('./SnkFormConfigManager-e1a10283.js');
6
6
  const form = require('@sankhyalabs/ezui/dist/collection/utils/form');
7
7
  const taskbarProcessor = require('./taskbar-processor-bce3f499.js');
8
- const taskbarElements = require('./taskbar-elements-80285601.js');
8
+ const taskbarElements = require('./taskbar-elements-bc2598f9.js');
9
9
  const constants = require('./constants-3787fa32.js');
10
10
  require('./DataFetcher-a9d0228f.js');
11
11
  require('./pesquisa-fetcher-954b74c3.js');
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const snkGuidesViewer = require('./snk-guides-viewer-e6a65393.js');
5
+ const snkGuidesViewer = require('./snk-guides-viewer-9784c527.js');
6
6
  require('./index-21bd01e1.js');
7
7
  require('@sankhyalabs/core');
8
8
  require('./SnkFormConfigManager-e1a10283.js');
@@ -12,8 +12,9 @@ require('./DataFetcher-a9d0228f.js');
12
12
  require('./_commonjsHelpers-537d719a.js');
13
13
  require('@sankhyalabs/ezui/dist/collection/utils/form');
14
14
  require('./taskbar-processor-bce3f499.js');
15
- require('./taskbar-elements-80285601.js');
15
+ require('./taskbar-elements-bc2598f9.js');
16
16
  require('./index-f400b1d6.js');
17
+ require('./index-de79181a.js');
17
18
  require('./constants-3787fa32.js');
18
19
  require('./pesquisa-fetcher-954b74c3.js');
19
20
 
@@ -0,0 +1,126 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-21bd01e1.js');
6
+ const DataFetcher = require('./DataFetcher-a9d0228f.js');
7
+ const index$1 = require('./index-f400b1d6.js');
8
+ const index$2 = require('./index-de79181a.js');
9
+ const core = require('@sankhyalabs/core');
10
+ require('./_commonjsHelpers-537d719a.js');
11
+
12
+ class PersonalizedFilterFetcher {
13
+ constructor() {
14
+ this.templateByQuery = new Map();
15
+ this.buildTemplates();
16
+ }
17
+ buildTemplates() {
18
+ const query = DataFetcher.dist.gql `
19
+ query($name: String!) {
20
+ $queryAlias$: fetchFilterFields(name: $name){
21
+ currentLink {
22
+ description
23
+ uri
24
+ }
25
+ links {
26
+ description
27
+ uri
28
+ fieldCount
29
+ }
30
+ fields {
31
+ name
32
+ description
33
+ uri
34
+ onlyDate
35
+ dataType
36
+ userInterface
37
+ properties {
38
+ name
39
+ value
40
+ }
41
+ }
42
+ }
43
+ }
44
+ `;
45
+ this.templateByQuery.set("fetchFilterFields", query);
46
+ }
47
+ loadFields(uri) {
48
+ return new Promise((resolve, reject) => {
49
+ DataFetcher.DataFetcher.get()
50
+ .callGraphQL({
51
+ values: { name: uri },
52
+ query: this.templateByQuery.get("fetchFilterFields"),
53
+ })
54
+ .then((resp) => {
55
+ let fields = resp.fields;
56
+ for (const field of fields) {
57
+ if (Array.isArray(field.properties) && field.properties.length > 0 && field.userInterface === "SEARCH") {
58
+ const propertiesConvertedObject = field.properties.reduce((accumulator, prop) => {
59
+ accumulator[prop.name] = prop.value;
60
+ return accumulator;
61
+ }, {});
62
+ field.properties = propertiesConvertedObject;
63
+ }
64
+ }
65
+ resolve(Object.assign(Object.assign({}, resp), { fields: fields }));
66
+ })
67
+ .catch((error) => {
68
+ reject(error);
69
+ });
70
+ });
71
+ }
72
+ }
73
+
74
+ const snkPersonalizedFilterCss = ":host{display:flex}";
75
+
76
+ const SnkPersonalizedFilter = class {
77
+ constructor(hostRef) {
78
+ index.registerInstance(this, hostRef);
79
+ this._personalizedFilterFetcher = new PersonalizedFilterFetcher();
80
+ this._dataSourceFetcher = {
81
+ fetchData: async (entity) => {
82
+ let entityURI = entity === null || entity === void 0 ? void 0 : entity.uri;
83
+ if (core.StringUtils.isEmpty(entityURI)) {
84
+ entityURI = "dd://Financeiro/br.com.sankhya.fin.cad.receber"; //TODO: Receber como prop
85
+ }
86
+ return await this._personalizedFilterFetcher.loadFields(entityURI);
87
+ }
88
+ };
89
+ this.items = {
90
+ entityName: "Financeiro",
91
+ fieldName: "CODBCO",
92
+ description: "Financeiro >> Banco",
93
+ type: index$1.FilterUserConfigTypes.DECIMAL,
94
+ expression: "Financeiro.CODBCO",
95
+ operand: index$1.FilterOperand.EQUAL,
96
+ paramVariable: false,
97
+ value: "61",
98
+ systemConfig: null,
99
+ userConfig: null
100
+ };
101
+ this.handleFilterItemChange = (changes) => {
102
+ console.log("Campo do ExpressionItem alterado");
103
+ console.log(changes);
104
+ };
105
+ this.handleFilterItemRemove = (expression) => {
106
+ console.log("Event de deleção disparado");
107
+ console.log(expression);
108
+ };
109
+ this.messagesBuilder = undefined;
110
+ }
111
+ componentWillLoad() {
112
+ if (index$2.store.get("filterFieldsDataSource") == undefined) {
113
+ index$2.store.set("filterFieldsDataSource", this._dataSourceFetcher);
114
+ }
115
+ if (!this.messagesBuilder) {
116
+ const snkApp = core.ApplicationContext.getContextValue("__SNK__APPLICATION__");
117
+ this.messagesBuilder = snkApp === null || snkApp === void 0 ? void 0 : snkApp.messagesBuilder;
118
+ }
119
+ }
120
+ render() {
121
+ return (index.h(index.Host, null, index.h("div", null, index.h("snk-expression-item", { expression: this.items, canRemove: true, onEzFilterItemChange: (evt) => this.handleFilterItemChange(evt.detail), onEzFilterItemRemove: (evt) => this.handleFilterItemRemove(evt.detail), messagesBuilder: this.messagesBuilder }))));
122
+ }
123
+ };
124
+ SnkPersonalizedFilter.style = snkPersonalizedFilterCss;
125
+
126
+ exports.snk_personalized_filter = SnkPersonalizedFilter;
@@ -5,11 +5,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const constants = require('./constants-3787fa32.js');
8
- const taskbarElements = require('./taskbar-elements-80285601.js');
8
+ const taskbarElements = require('./taskbar-elements-bc2598f9.js');
9
9
  require('./DataFetcher-a9d0228f.js');
10
10
  require('./pesquisa-fetcher-954b74c3.js');
11
11
  const index$1 = require('./index-f400b1d6.js');
12
12
  const taskbarProcessor = require('./taskbar-processor-bce3f499.js');
13
+ require('./index-de79181a.js');
13
14
  require('./_commonjsHelpers-537d719a.js');
14
15
 
15
16
  const snkSimpleBarCss = ".sc-snk-simple-bar-h{display:flex;height:100%;width:100%}.simple-bar__container.sc-snk-simple-bar{flex:1;display:flex;align-items:stretch;gap:var(--space--small)}.simple-bar__left-slot.sc-snk-simple-bar{min-width:280px;flex:1;display:flex;align-items:center}.simple-bar__right-slot.sc-snk-simple-bar{flex:1;display:flex;align-items:center;justify-content:flex-end}.simple-bar__column.sc-snk-simple-bar{flex:1;display:flex;flex-direction:column}";
@@ -5,8 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-21bd01e1.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const AuthorizationConfig = require('./AuthorizationConfig-79ffae4b.js');
8
- const taskbarElements = require('./taskbar-elements-80285601.js');
8
+ const taskbarElements = require('./taskbar-elements-bc2598f9.js');
9
9
  const index$1 = require('./index-f400b1d6.js');
10
+ require('./index-de79181a.js');
10
11
 
11
12
  const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex}";
12
13
 
@@ -0,0 +1,118 @@
1
+ 'use strict';
2
+
3
+ const index = require('./index-21bd01e1.js');
4
+ const index$2 = require('./index-f400b1d6.js');
5
+ const index$1 = require('./index-de79181a.js');
6
+
7
+ exports.TaskbarElement = void 0;
8
+ (function (TaskbarElement) {
9
+ TaskbarElement["PREVIOUS"] = "PREVIOUS";
10
+ TaskbarElement["NEXT"] = "NEXT";
11
+ TaskbarElement["REFRESH"] = "REFRESH";
12
+ TaskbarElement["UPDATE"] = "UPDATE";
13
+ TaskbarElement["CLONE"] = "CLONE";
14
+ TaskbarElement["REMOVE"] = "REMOVE";
15
+ TaskbarElement["INSERT"] = "INSERT";
16
+ TaskbarElement["CANCEL"] = "CANCEL";
17
+ TaskbarElement["SAVE"] = "SAVE";
18
+ TaskbarElement["GRID_MODE"] = "GRID_MODE";
19
+ TaskbarElement["FORM_MODE"] = "FORM_MODE";
20
+ TaskbarElement["MORE_OPTIONS"] = "MORE_OPTIONS";
21
+ TaskbarElement["DIVIDER"] = "DIVIDER";
22
+ TaskbarElement["CONFIGURATOR"] = "CONFIGURATOR";
23
+ TaskbarElement["DATA_EXPORTER"] = "DATA_EXPORTER";
24
+ TaskbarElement["ATTACH"] = "ATTACH";
25
+ })(exports.TaskbarElement || (exports.TaskbarElement = {}));
26
+ exports.AuthorizationElements = void 0;
27
+ (function (AuthorizationElements) {
28
+ AuthorizationElements["UPDATE"] = "UPDATE";
29
+ AuthorizationElements["CLONE"] = "CLONE";
30
+ AuthorizationElements["REMOVE"] = "REMOVE";
31
+ AuthorizationElements["INSERT"] = "INSERT";
32
+ AuthorizationElements["CONFIGURATOR"] = "CONFIGURATOR";
33
+ })(exports.AuthorizationElements || (exports.AuthorizationElements = {}));
34
+ exports.VisibleWhenForbidden = void 0;
35
+ (function (VisibleWhenForbidden) {
36
+ VisibleWhenForbidden["CONFIGURATOR"] = "CONFIGURATOR";
37
+ })(exports.VisibleWhenForbidden || (exports.VisibleWhenForbidden = {}));
38
+ const buildCustomButton = (def, className, dataElementId, action, isEnabled) => {
39
+ const { hint, text, iconName } = def;
40
+ if (iconName) {
41
+ if (text) {
42
+ return iconTextButton(iconName, def.name, className, dataElementId, hint, text, action, isEnabled);
43
+ }
44
+ else {
45
+ return iconButton(iconName, def.name, className, dataElementId, hint, action, isEnabled);
46
+ }
47
+ }
48
+ else {
49
+ return textButton(def.name, className, dataElementId, text, hint, action, isEnabled);
50
+ }
51
+ };
52
+ const buildElem = (element, className, dataElementId, getTitle, action, isEnabled, actions, configName, presentationMode) => {
53
+ var _a;
54
+ const title = getTitle(element);
55
+ switch (element) {
56
+ case exports.TaskbarElement.PREVIOUS:
57
+ return iconButton("chevron-left", element, className, dataElementId, title, action, isEnabled);
58
+ case exports.TaskbarElement.NEXT:
59
+ return iconButton("chevron-right", element, className, dataElementId, title, action, isEnabled);
60
+ case exports.TaskbarElement.REFRESH:
61
+ return iconButton("sync", element, className, dataElementId, title, action, isEnabled);
62
+ case exports.TaskbarElement.UPDATE:
63
+ return iconButton("edit", element, className, dataElementId, title, action, isEnabled);
64
+ case exports.TaskbarElement.CLONE:
65
+ return iconButton("copy", element, className, dataElementId, title, action, isEnabled);
66
+ case exports.TaskbarElement.REMOVE:
67
+ return iconButton("delete", element, className, dataElementId, title, action, isEnabled);
68
+ case exports.TaskbarElement.INSERT:
69
+ if (presentationMode === index$2.PresentationMode.PRIMARY) {
70
+ return iconTextButton("plus", element, className, dataElementId, title, title, action, isEnabled);
71
+ }
72
+ else {
73
+ return iconButton("plus", element, className, dataElementId, title, action, isEnabled);
74
+ }
75
+ case exports.TaskbarElement.CANCEL:
76
+ return textButton(element, className, dataElementId, title, title, action, isEnabled);
77
+ case exports.TaskbarElement.SAVE:
78
+ if (presentationMode === index$2.PresentationMode.PRIMARY) {
79
+ return iconTextButton("save", element, className, dataElementId, title, title, action, isEnabled);
80
+ }
81
+ else {
82
+ return iconButton("save", element, className, dataElementId, title, action, isEnabled);
83
+ }
84
+ case exports.TaskbarElement.GRID_MODE:
85
+ return iconButton("table", element, className, dataElementId, title, action, isEnabled);
86
+ case exports.TaskbarElement.FORM_MODE:
87
+ return iconButton("list", element, className, dataElementId, title, action, isEnabled);
88
+ case exports.TaskbarElement.CONFIGURATOR:
89
+ return iconButton("settings-inverted", element, className, dataElementId, title, action, isEnabled);
90
+ case exports.TaskbarElement.MORE_OPTIONS:
91
+ return actionButton(element, className, dataElementId, title, action, isEnabled, actions);
92
+ case exports.TaskbarElement.DIVIDER:
93
+ return index.h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-horizontal--medium", "data-taskbar-divider": true });
94
+ case exports.TaskbarElement.DATA_EXPORTER:
95
+ const provider = (_a = index$1.store.get("exporterProviders")) === null || _a === void 0 ? void 0 : _a[configName];
96
+ return index.h("snk-data-exporter", { class: className, provider: provider, "data-element-id": dataElementId });
97
+ case exports.TaskbarElement.ATTACH:
98
+ return iconButton("anexo", element, className, dataElementId, title, action, isEnabled);
99
+ }
100
+ };
101
+ function textButton(name, className, dataElementId, text, title, action, isEnabled) {
102
+ return index.h("ez-button", { title: title, label: text, size: "small", class: className, "data-element-id": dataElementId, enabled: isEnabled(name), onClick: () => action(name) });
103
+ }
104
+ function iconButton(iconName, name, className, dataElementId, title, action, isEnabled) {
105
+ return index.h("ez-button", { title: title, mode: "icon", size: "small", class: className, "data-element-id": dataElementId, iconName: iconName, enabled: isEnabled(name), onClick: () => action(name) });
106
+ }
107
+ function iconTextButton(iconName, name, className, dataElementId, text, title, action, isEnabled) {
108
+ return index.h("ez-button", { title: title, label: text, size: "small", class: className, "data-element-id": dataElementId, enabled: isEnabled(name), onClick: () => action(name) },
109
+ index.h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: iconName }));
110
+ }
111
+ function actionButton(element, className, dataElementId, title, action, isEnabled, actions) {
112
+ return actions && actions.length > 0
113
+ ? index.h("ez-actions-button", { title: title, size: "small", "data-element-id": dataElementId, arrowActive: true, class: className, enabled: isEnabled(element), onEzAction: (evt) => action(evt.detail.value), actions: actions })
114
+ : undefined;
115
+ }
116
+
117
+ exports.buildCustomButton = buildCustomButton;
118
+ exports.buildElem = buildElem;
@@ -26,6 +26,7 @@
26
26
  "./components/snk-filter-bar/filter-item/editors/snk-filter-period.js",
27
27
  "./components/snk-filter-bar/filter-item/editors/snk-filter-search.js",
28
28
  "./components/snk-filter-bar/filter-item/editors/snk-filter-text.js",
29
+ "./components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js",
29
30
  "./components/snk-filter-field-search/snk-filter-field-search.js",
30
31
  "./components/snk-form/snk-form.js",
31
32
  "./components/snk-form/subcomponents/snk-config-options/snk-config-options.js",
@@ -34,6 +35,8 @@
34
35
  "./components/snk-grid/snk-grid.js",
35
36
  "./components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.js",
36
37
  "./components/snk-grid/subcomponents/snk-select-box/snk-select-box.js",
38
+ "./components/snk-personalized-filter/snk-personalized-filter.js",
39
+ "./components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js",
37
40
  "./components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js",
38
41
  "./components/snk-pesquisa/snk-pesquisa.js",
39
42
  "./components/snk-simple-bar/snk-simple-bar.js",