@sankhyalabs/sankhyablocks 5.19.1 → 6.0.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 (298) hide show
  1. package/dist/cjs/ConfigStorage-0a738cdc.js +304 -0
  2. package/dist/cjs/IExpressionItem-1090c3fd.js +7 -0
  3. package/dist/cjs/PersonalizedFilterUtils-7d959e91.js +229 -0
  4. package/dist/cjs/{SnkFormConfigManager-69df3f74.js → SnkFormConfigManager-a583f503.js} +1 -1
  5. package/dist/cjs/{SnkMessageBuilder-3b5b5614.js → SnkMessageBuilder-8a2d3f26.js} +65 -4
  6. package/dist/cjs/{filter-bar-config-fetcher-a14536bf.js → filter-bar-config-fetcher-75219599.js} +34 -11
  7. package/dist/cjs/{index-de79181a.js → index-59a3e2de.js} +1 -1
  8. package/dist/cjs/{index-f400b1d6.js → index-614af008.js} +2 -0
  9. package/dist/cjs/{index-21bd01e1.js → index-aaaa2af5.js} +6 -1
  10. package/dist/cjs/loader.cjs.js +2 -2
  11. package/dist/cjs/sankhyablocks.cjs.js +2 -2
  12. package/dist/cjs/snk-actions-button.cjs.entry.js +2 -2
  13. package/dist/cjs/snk-actions-form.cjs.entry.js +1 -1
  14. package/dist/cjs/snk-application.cjs.entry.js +4 -4
  15. package/dist/cjs/snk-attach.cjs.entry.js +4 -4
  16. package/dist/cjs/snk-client-confirm.cjs.entry.js +1 -1
  17. package/dist/cjs/snk-config-options.cjs.entry.js +1 -1
  18. package/dist/cjs/snk-configurator.cjs.entry.js +1 -1
  19. package/dist/cjs/snk-crud.cjs.entry.js +4 -4
  20. package/dist/cjs/snk-data-exporter.cjs.entry.js +4 -4
  21. package/dist/cjs/{snk-data-unit-e9c20097.js → snk-data-unit-53fc9200.js} +2 -2
  22. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -3
  23. package/dist/cjs/snk-detail-view.cjs.entry.js +10 -10
  24. package/dist/cjs/snk-entity-list.cjs.entry.js +6 -4
  25. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  26. package/dist/cjs/snk-expression-group.cjs.entry.js +246 -0
  27. package/dist/cjs/{snk-filter-field-search_2.cjs.entry.js → snk-expression-item_3.cjs.entry.js} +327 -66
  28. package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
  29. package/dist/cjs/snk-filter-bar.cjs.entry.js +161 -72
  30. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  31. package/dist/cjs/snk-filter-detail.cjs.entry.js +54 -69
  32. package/dist/cjs/snk-filter-item.cjs.entry.js +21 -7
  33. package/dist/cjs/snk-filter-list.cjs.entry.js +1 -1
  34. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +57 -29
  35. package/dist/cjs/snk-filter-modal.cjs.entry.js +66 -12
  36. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +1 -1
  37. package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
  38. package/dist/cjs/snk-filter-period.cjs.entry.js +5 -3
  39. package/dist/cjs/snk-filter-personalized.cjs.entry.js +135 -55
  40. package/dist/cjs/snk-filter-search.cjs.entry.js +1 -1
  41. package/dist/cjs/snk-filter-text.cjs.entry.js +1 -1
  42. package/dist/cjs/snk-form-config.cjs.entry.js +1 -1
  43. package/dist/cjs/snk-form-summary.cjs.entry.js +1 -1
  44. package/dist/cjs/snk-form-view.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-form.cjs.entry.js +4 -4
  46. package/dist/cjs/snk-grid-config.cjs.entry.js +3 -3
  47. package/dist/cjs/snk-grid.cjs.entry.js +7 -7
  48. package/dist/cjs/{snk-guides-viewer-c8843478.js → snk-guides-viewer-10ffca10.js} +5 -5
  49. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
  50. package/dist/cjs/snk-personalized-filter.cjs.entry.js +166 -94
  51. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  52. package/dist/cjs/snk-select-box.cjs.entry.js +1 -1
  53. package/dist/cjs/snk-simple-bar.cjs.entry.js +45 -0
  54. package/dist/cjs/{snk-simple-bar_2.cjs.entry.js → snk-simple-crud.cjs.entry.js} +5 -43
  55. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  56. package/dist/cjs/snk-taskbar.cjs.entry.js +4 -4
  57. package/dist/cjs/{taskbar-elements-3be287d6.js → taskbar-elements-068aa945.js} +3 -3
  58. package/dist/cjs/{taskbar-processor-02f0fc84.js → taskbar-processor-6442c585.js} +1 -1
  59. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  60. package/dist/collection/collection-manifest.json +2 -1
  61. package/dist/collection/components/snk-entity-list/snk-entity-list.js +6 -4
  62. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +34 -12
  63. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +4 -2
  64. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-personalized/snk-filter-personalized.css +66 -0
  65. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-personalized/snk-filter-personalized.js +370 -0
  66. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +52 -68
  67. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +20 -6
  68. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -0
  69. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +110 -10
  70. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +98 -27
  71. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +21 -0
  72. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +100 -49
  73. package/dist/collection/components/snk-filter-bar/types/custom-element-filter.js +1 -0
  74. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +22 -3
  75. package/dist/collection/components/snk-filter-bar/utils/filters-mock.js +96 -0
  76. package/dist/collection/components/snk-filter-field-search/snk-filter-field-search.css +1 -1
  77. package/dist/collection/components/snk-filter-field-search/snk-filter-field-search.js +27 -6
  78. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.css +39 -2
  79. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +276 -30
  80. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.css +73 -0
  81. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.js +443 -0
  82. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/filter-operands/filter-operands.js +16 -24
  83. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.css +18 -4
  84. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js +131 -21
  85. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IExpressionGroup.js +0 -0
  86. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IExpressionItem.js +5 -1
  87. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IParameter.js +1 -0
  88. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IPersonalizedFilter.js +1 -0
  89. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/index.js +3 -0
  90. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js +1 -1
  91. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.js +184 -15
  92. package/dist/collection/lib/@types/index.js +2 -0
  93. package/dist/collection/lib/configs/ConfigStorage.js +15 -0
  94. package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +36 -13
  95. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +106 -4
  96. package/dist/collection/lib/message/resources/snk-filter-bar.msg.js +15 -2
  97. package/dist/collection/lib/message/resources/snk-filter-field-search.msg.js +2 -0
  98. package/dist/collection/lib/message/resources/snk-personalized-filter.msg.js +48 -2
  99. package/dist/components/ConfigStorage.js +180 -1
  100. package/dist/components/PersonalizedFilterUtils.js +227 -0
  101. package/dist/components/SnkMessageBuilder.js +65 -4
  102. package/dist/components/filter-bar-config-fetcher.js +34 -11
  103. package/dist/components/index.d.ts +2 -1
  104. package/dist/components/index.js +1 -0
  105. package/dist/components/index2.js +3 -1
  106. package/dist/components/snk-crud.js +65 -35
  107. package/dist/components/snk-data-exporter2.js +1 -1
  108. package/dist/components/snk-detail-view2.js +99 -44
  109. package/dist/components/snk-entity-list.js +6 -4
  110. package/dist/components/snk-expression-group.d.ts +11 -0
  111. package/dist/components/snk-expression-group.js +6 -0
  112. package/dist/components/snk-expression-group2.js +296 -0
  113. package/dist/components/snk-expression-item2.js +133 -46
  114. package/dist/components/snk-filter-bar2.js +195 -68
  115. package/dist/components/snk-filter-detail2.js +52 -68
  116. package/dist/components/snk-filter-field-search2.js +26 -5
  117. package/dist/components/snk-filter-item2.js +20 -6
  118. package/dist/components/snk-filter-modal-item2.js +54 -27
  119. package/dist/components/snk-filter-modal.js +68 -12
  120. package/dist/components/snk-filter-param-config2.js +3 -57
  121. package/dist/components/snk-filter-period.js +4 -2
  122. package/dist/components/snk-filter-personalized.js +139 -58
  123. package/dist/components/snk-grid2.js +52 -16
  124. package/dist/components/snk-personalized-filter.js +1 -153
  125. package/dist/components/snk-personalized-filter2.js +238 -0
  126. package/dist/esm/ConfigStorage-9f4d2e67.js +300 -0
  127. package/dist/esm/IExpressionItem-2e922b2c.js +7 -0
  128. package/dist/esm/PersonalizedFilterUtils-202cd721.js +227 -0
  129. package/dist/esm/{SnkFormConfigManager-e60367a0.js → SnkFormConfigManager-def999fe.js} +1 -1
  130. package/dist/esm/{SnkMessageBuilder-188a38bb.js → SnkMessageBuilder-cc4d1599.js} +65 -4
  131. package/dist/esm/{filter-bar-config-fetcher-edc48f4b.js → filter-bar-config-fetcher-bd2070a3.js} +34 -11
  132. package/dist/esm/{index-cfd4bb13.js → index-8c3d76a6.js} +6 -1
  133. package/dist/esm/{index-507e19ec.js → index-a255b326.js} +3 -1
  134. package/dist/esm/{index-8efbf198.js → index-d60ca0ac.js} +1 -1
  135. package/dist/esm/loader.js +3 -3
  136. package/dist/esm/sankhyablocks.js +3 -3
  137. package/dist/esm/snk-actions-button.entry.js +2 -2
  138. package/dist/esm/snk-actions-form.entry.js +1 -1
  139. package/dist/esm/snk-application.entry.js +4 -4
  140. package/dist/esm/snk-attach.entry.js +4 -4
  141. package/dist/esm/snk-client-confirm.entry.js +1 -1
  142. package/dist/esm/snk-config-options.entry.js +1 -1
  143. package/dist/esm/snk-configurator.entry.js +1 -1
  144. package/dist/esm/snk-crud.entry.js +4 -4
  145. package/dist/esm/snk-data-exporter.entry.js +4 -4
  146. package/dist/esm/{snk-data-unit-79b1583a.js → snk-data-unit-97824457.js} +2 -2
  147. package/dist/esm/snk-data-unit.entry.js +3 -3
  148. package/dist/esm/snk-detail-view.entry.js +10 -10
  149. package/dist/esm/snk-entity-list.entry.js +7 -5
  150. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  151. package/dist/esm/snk-expression-group.entry.js +242 -0
  152. package/dist/esm/{snk-filter-field-search_2.entry.js → snk-expression-item_3.entry.js} +326 -66
  153. package/dist/esm/snk-field-config.entry.js +1 -1
  154. package/dist/esm/snk-filter-bar.entry.js +156 -67
  155. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  156. package/dist/esm/snk-filter-detail.entry.js +55 -70
  157. package/dist/esm/snk-filter-item.entry.js +21 -7
  158. package/dist/esm/snk-filter-list.entry.js +1 -1
  159. package/dist/esm/snk-filter-modal-item.entry.js +57 -29
  160. package/dist/esm/snk-filter-modal.entry.js +66 -12
  161. package/dist/esm/snk-filter-multi-select.entry.js +1 -1
  162. package/dist/esm/snk-filter-number.entry.js +1 -1
  163. package/dist/esm/snk-filter-period.entry.js +5 -3
  164. package/dist/esm/snk-filter-personalized.entry.js +135 -55
  165. package/dist/esm/snk-filter-search.entry.js +1 -1
  166. package/dist/esm/snk-filter-text.entry.js +1 -1
  167. package/dist/esm/snk-form-config.entry.js +1 -1
  168. package/dist/esm/snk-form-summary.entry.js +1 -1
  169. package/dist/esm/snk-form-view.entry.js +1 -1
  170. package/dist/esm/snk-form.entry.js +4 -4
  171. package/dist/esm/snk-grid-config.entry.js +3 -3
  172. package/dist/esm/snk-grid.entry.js +7 -7
  173. package/dist/esm/{snk-guides-viewer-59d3a78c.js → snk-guides-viewer-0380f3df.js} +5 -5
  174. package/dist/esm/snk-guides-viewer.entry.js +9 -9
  175. package/dist/esm/snk-personalized-filter.entry.js +166 -94
  176. package/dist/esm/snk-pesquisa.entry.js +1 -1
  177. package/dist/esm/snk-select-box.entry.js +1 -1
  178. package/dist/esm/snk-simple-bar.entry.js +41 -0
  179. package/dist/esm/{snk-simple-bar_2.entry.js → snk-simple-crud.entry.js} +7 -44
  180. package/dist/esm/snk-tab-config.entry.js +1 -1
  181. package/dist/esm/snk-taskbar.entry.js +4 -4
  182. package/dist/esm/{taskbar-elements-8ff33c26.js → taskbar-elements-26d0fba3.js} +3 -3
  183. package/dist/esm/{taskbar-processor-20de6616.js → taskbar-processor-dfef41a8.js} +1 -1
  184. package/dist/esm/teste-pesquisa.entry.js +1 -1
  185. package/dist/sankhyablocks/{p-f27dc5e9.entry.js → p-00d1cac4.entry.js} +1 -1
  186. package/dist/sankhyablocks/{p-b9667fbe.js → p-066ee142.js} +2 -2
  187. package/dist/sankhyablocks/p-09a058ba.entry.js +1 -0
  188. package/dist/sankhyablocks/{p-82bc4666.entry.js → p-0dec4d29.entry.js} +1 -1
  189. package/dist/sankhyablocks/{p-1e6a95f5.entry.js → p-12632b8e.entry.js} +1 -1
  190. package/dist/sankhyablocks/{p-384c4a6b.js → p-18b34bb4.js} +1 -1
  191. package/dist/sankhyablocks/{p-538c057a.entry.js → p-2ad89e28.entry.js} +1 -1
  192. package/dist/sankhyablocks/p-2d5108b3.js +1 -0
  193. package/dist/sankhyablocks/{p-ff398057.entry.js → p-34cd4b39.entry.js} +1 -1
  194. package/dist/sankhyablocks/p-36ecb6ab.js +1 -0
  195. package/dist/sankhyablocks/p-372e0185.entry.js +1 -0
  196. package/dist/sankhyablocks/p-3be34bd1.entry.js +1 -0
  197. package/dist/sankhyablocks/p-3d45107f.js +1 -0
  198. package/dist/sankhyablocks/{p-28c12f65.js → p-463e0936.js} +1 -1
  199. package/dist/sankhyablocks/{p-e701646c.entry.js → p-49d628d1.entry.js} +1 -1
  200. package/dist/sankhyablocks/{p-e642bf7a.entry.js → p-50db4bc4.entry.js} +1 -1
  201. package/dist/sankhyablocks/{p-093febff.entry.js → p-5427566a.entry.js} +1 -1
  202. package/dist/sankhyablocks/{p-6a02e236.js → p-590d8900.js} +1 -1
  203. package/dist/sankhyablocks/p-5a6c090e.entry.js +1 -0
  204. package/dist/sankhyablocks/p-639be4aa.entry.js +1 -0
  205. package/dist/sankhyablocks/{p-e2bb9c9a.entry.js → p-67a19b48.entry.js} +1 -1
  206. package/dist/sankhyablocks/{p-19692f92.js → p-69770075.js} +1 -1
  207. package/dist/sankhyablocks/p-6d4169fc.entry.js +1 -0
  208. package/dist/sankhyablocks/{p-0b40c655.js → p-708ee8ee.js} +1 -1
  209. package/dist/sankhyablocks/{p-9af04fc7.entry.js → p-718cc24b.entry.js} +1 -1
  210. package/dist/sankhyablocks/{p-2d0fc912.entry.js → p-7946512f.entry.js} +1 -1
  211. package/dist/sankhyablocks/{p-900b2889.entry.js → p-7a5e1be7.entry.js} +1 -1
  212. package/dist/sankhyablocks/p-801b8858.js +68 -0
  213. package/dist/sankhyablocks/{p-80e52e85.entry.js → p-847b9506.entry.js} +1 -1
  214. package/dist/sankhyablocks/{p-56d70073.entry.js → p-8d541539.entry.js} +1 -1
  215. package/dist/sankhyablocks/{p-584a315a.entry.js → p-8e98a893.entry.js} +1 -1
  216. package/dist/sankhyablocks/p-9731180c.entry.js +1 -0
  217. package/dist/sankhyablocks/p-a6055eb9.entry.js +1 -0
  218. package/dist/sankhyablocks/{p-b680fa7a.entry.js → p-a655ea15.entry.js} +1 -1
  219. package/dist/sankhyablocks/{p-eae124e3.entry.js → p-a8b06801.entry.js} +1 -1
  220. package/dist/sankhyablocks/{p-b25450ab.js → p-a8e5ded0.js} +1 -1
  221. package/dist/sankhyablocks/{p-6ac29569.entry.js → p-b66b99d9.entry.js} +1 -1
  222. package/dist/sankhyablocks/p-b7efc49a.entry.js +1 -0
  223. package/dist/sankhyablocks/{p-9c7f7214.entry.js → p-b91ee370.entry.js} +1 -1
  224. package/dist/sankhyablocks/{p-e551b19a.entry.js → p-b940798f.entry.js} +1 -1
  225. package/dist/sankhyablocks/{p-72e78de0.entry.js → p-bbefb3b2.entry.js} +1 -1
  226. package/dist/sankhyablocks/p-bdd61fa8.entry.js +1 -0
  227. package/dist/sankhyablocks/{p-f8c66aa3.entry.js → p-c06973e7.entry.js} +1 -1
  228. package/dist/sankhyablocks/{p-257c71a7.entry.js → p-c17e19a2.entry.js} +1 -1
  229. package/dist/sankhyablocks/p-c6bf66e0.js +1 -0
  230. package/dist/sankhyablocks/p-cf90a195.entry.js +1 -0
  231. package/dist/sankhyablocks/{p-44c2ed16.entry.js → p-d11c5026.entry.js} +1 -1
  232. package/dist/sankhyablocks/p-d5145c3f.entry.js +1 -0
  233. package/dist/sankhyablocks/p-de328b00.entry.js +1 -0
  234. package/dist/sankhyablocks/{p-971abcc2.entry.js → p-e500863b.entry.js} +1 -1
  235. package/dist/sankhyablocks/{p-22e44b9d.entry.js → p-e824aef2.entry.js} +1 -1
  236. package/dist/sankhyablocks/{p-4ce96831.entry.js → p-eb24c092.entry.js} +1 -1
  237. package/dist/sankhyablocks/{p-4c2015a9.js → p-eb90de43.js} +1 -1
  238. package/dist/sankhyablocks/p-ebb8de34.entry.js +1 -0
  239. package/dist/sankhyablocks/{p-8652d177.entry.js → p-fc512cbe.entry.js} +1 -1
  240. package/dist/sankhyablocks/{p-786ae316.entry.js → p-fced1d89.entry.js} +1 -1
  241. package/dist/sankhyablocks/{p-e0b4aec3.entry.js → p-fdb43927.entry.js} +1 -1
  242. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  243. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-personalized/snk-filter-personalized.d.ts +85 -0
  244. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +6 -6
  245. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  246. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +18 -1
  247. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +14 -6
  248. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +10 -3
  249. package/dist/types/components/snk-filter-bar/types/custom-element-filter.d.ts +6 -0
  250. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +10 -1
  251. package/dist/types/components/snk-filter-bar/utils/filters-mock.d.ts +92 -15
  252. package/dist/types/components/snk-filter-field-search/interfaces/index.d.ts +5 -11
  253. package/dist/types/components/snk-filter-field-search/snk-filter-field-search.d.ts +3 -0
  254. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +39 -6
  255. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.d.ts +82 -0
  256. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/filter-operands/filter-operands.d.ts +1 -1
  257. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.d.ts +13 -1
  258. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IExpressionGroup.d.ts +0 -0
  259. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IExpressionItem.d.ts +23 -3
  260. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IParameter.d.ts +21 -0
  261. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/IPersonalizedFilter.d.ts +11 -0
  262. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/interfaces/index.d.ts +3 -0
  263. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/utils/PersonalizedFilterUtils.d.ts +14 -2
  264. package/dist/types/components.d.ts +169 -10
  265. package/dist/types/lib/@types/index.d.ts +3 -1
  266. package/dist/types/lib/configs/ConfigStorage.d.ts +5 -0
  267. package/dist/types/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.d.ts +4 -2
  268. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +5 -0
  269. package/dist/types/lib/store/index.d.ts +1 -2
  270. package/package.json +5 -5
  271. package/react/components.d.ts +1 -0
  272. package/react/components.js +1 -0
  273. package/react/components.js.map +1 -1
  274. package/dist/cjs/ConfigStorage-f68c3607.js +0 -124
  275. package/dist/cjs/index-8d94b7e0.js +0 -7
  276. package/dist/cjs/snk-expression-item.cjs.entry.js +0 -213
  277. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-personalized.js +0 -214
  278. package/dist/esm/ConfigStorage-e6c17998.js +0 -121
  279. package/dist/esm/index-620ac460.js +0 -7
  280. package/dist/esm/snk-expression-item.entry.js +0 -209
  281. package/dist/sankhyablocks/p-0b6ddb67.entry.js +0 -1
  282. package/dist/sankhyablocks/p-0c2afa63.entry.js +0 -1
  283. package/dist/sankhyablocks/p-343699ad.entry.js +0 -1
  284. package/dist/sankhyablocks/p-471568c7.entry.js +0 -1
  285. package/dist/sankhyablocks/p-6c2c71ca.js +0 -1
  286. package/dist/sankhyablocks/p-8ce9ea9f.entry.js +0 -1
  287. package/dist/sankhyablocks/p-8efb0f47.entry.js +0 -1
  288. package/dist/sankhyablocks/p-9a448ff9.entry.js +0 -1
  289. package/dist/sankhyablocks/p-9e50681c.entry.js +0 -1
  290. package/dist/sankhyablocks/p-9f66bc54.entry.js +0 -1
  291. package/dist/sankhyablocks/p-b1c02726.js +0 -1
  292. package/dist/sankhyablocks/p-b34d23fa.js +0 -1
  293. package/dist/sankhyablocks/p-c20dd153.entry.js +0 -1
  294. package/dist/sankhyablocks/p-cbb5c440.entry.js +0 -1
  295. package/dist/sankhyablocks/p-f3241ada.entry.js +0 -1
  296. package/dist/sankhyablocks/p-f4184ce7.js +0 -1
  297. package/dist/sankhyablocks/p-ff96b509.entry.js +0 -27
  298. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-personalized.d.ts +0 -40
@@ -1,9 +1,9 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-8c3d76a6.js';
2
2
  import { ApplicationContext, StringUtils, ErrorException, WarningException, ObjectUtils, DateUtils, ArrayUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { D as DataFetcher } from './DataFetcher-b3d8b2d5.js';
4
4
  import { P as ParamType } from './ParamType-d5152b06.js';
5
5
  import './pesquisa-fetcher-bd6af0e3.js';
6
- import './index-507e19ec.js';
6
+ import './index-a255b326.js';
7
7
  import './_commonjsHelpers-9943807e.js';
8
8
 
9
9
  const SERVICE_ACTION_EXECUTE_JAVA = 'ActionButtonsSP.executeJava';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, h } from './index-8c3d76a6.js';
2
2
  import { DataUnit, UserInterface, DataType, ApplicationContext } from '@sankhyalabs/core';
3
3
  import { P as ParamType } from './ParamType-d5152b06.js';
4
4
 
@@ -1,15 +1,15 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-8c3d76a6.js';
2
2
  import { WaitingChangeException, WarningException, ErrorException, ObjectUtils, DateUtils, StringUtils, OnboardingUtils, DependencyType, ElementIDUtils, ApplicationContext, ErrorTracking, DataType } from '@sankhyalabs/core';
3
3
  import { d as dist, D as DataFetcher, U as UrlUtils } from './DataFetcher-b3d8b2d5.js';
4
4
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
5
5
  import { P as PesquisaFetcher } from './pesquisa-fetcher-bd6af0e3.js';
6
- import { G as GridConfigFetcher, C as ConfigStorage } from './ConfigStorage-e6c17998.js';
6
+ import { G as GridConfigFetcher, C as ConfigStorage } from './ConfigStorage-9f4d2e67.js';
7
7
  import { D as DataUnitFetcher } from './dataunit-fetcher-784325e9.js';
8
8
  import { R as ResourceFetcher } from './resource-fetcher-02642924.js';
9
- import { S as SnkMessageBuilder } from './SnkMessageBuilder-188a38bb.js';
9
+ import { S as SnkMessageBuilder } from './SnkMessageBuilder-cc4d1599.js';
10
10
  import './_commonjsHelpers-9943807e.js';
11
11
  import './form-config-fetcher-cac8cd96.js';
12
- import './filter-bar-config-fetcher-edc48f4b.js';
12
+ import './filter-bar-config-fetcher-bd2070a3.js';
13
13
  import './filter-item-type.enum-5028ed3f.js';
14
14
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
15
15
 
@@ -1,13 +1,13 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-8c3d76a6.js';
2
2
  import { ApplicationContext, DataType, Action } from '@sankhyalabs/core';
3
3
  import { D as DataFetcher } from './DataFetcher-b3d8b2d5.js';
4
4
  import { c as VIEW_MODE } from './constants-e916ccc3.js';
5
5
  import { D as DataUnitFetcher } from './dataunit-fetcher-784325e9.js';
6
- import { T as TaskbarElement } from './taskbar-elements-8ff33c26.js';
6
+ import { T as TaskbarElement } from './taskbar-elements-26d0fba3.js';
7
7
  import './_commonjsHelpers-9943807e.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
- import './index-507e19ec.js';
10
- import './index-8efbf198.js';
9
+ import './index-a255b326.js';
10
+ import './index-d60ca0ac.js';
11
11
 
12
12
  var SaveErrorsEnum;
13
13
  (function (SaveErrorsEnum) {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, h } from './index-8c3d76a6.js';
2
2
  import { ApplicationContext } from '@sankhyalabs/core';
3
3
 
4
4
  const SnkActionsForm = class {
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-8c3d76a6.js';
2
2
  import { UserInterface, ObjectUtils, StringUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { DataType, getConvertedValue } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
4
4
  import { CheckMode } from '@sankhyalabs/ezui/dist/collection/utils';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-8c3d76a6.js';
2
2
  import { ApplicationContext } from '@sankhyalabs/core';
3
3
  import { c as VIEW_MODE } from './constants-e916ccc3.js';
4
4
  import { A as AuthorizationConfig } from './AuthorizationConfig-dcbd207a.js';
@@ -1,11 +1,11 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-8c3d76a6.js';
2
2
  import { ElementIDUtils, ApplicationContext } from '@sankhyalabs/core';
3
- import { T as TaskbarElement } from './taskbar-elements-8ff33c26.js';
3
+ import { T as TaskbarElement } from './taskbar-elements-26d0fba3.js';
4
4
  import './DataFetcher-b3d8b2d5.js';
5
5
  import './pesquisa-fetcher-bd6af0e3.js';
6
- import { P as PresentationMode } from './index-507e19ec.js';
6
+ import { P as PresentationMode } from './index-a255b326.js';
7
7
  import { c as VIEW_MODE } from './constants-e916ccc3.js';
8
- import './index-8efbf198.js';
8
+ import './index-d60ca0ac.js';
9
9
  import './_commonjsHelpers-9943807e.js';
10
10
 
11
11
  const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
@@ -1,12 +1,12 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-8c3d76a6.js';
2
2
  import { ObjectUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { D as DataExporterOption, a as DataExporterFormat, b as DataExporterType } from './index-507e19ec.js';
4
+ import { D as DataExporterOption, a as DataExporterFormat, b as DataExporterType } from './index-a255b326.js';
5
5
  import { d as KEY_PORT_EXPORT, W as WEB_CONNECTION, R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-e916ccc3.js';
6
6
  import { D as DataFetcher } from './DataFetcher-b3d8b2d5.js';
7
- import { S as SnkDataUnit } from './snk-data-unit-79b1583a.js';
7
+ import { S as SnkDataUnit } from './snk-data-unit-97824457.js';
8
8
  import './_commonjsHelpers-9943807e.js';
9
- import './SnkMessageBuilder-188a38bb.js';
9
+ import './SnkMessageBuilder-cc4d1599.js';
10
10
 
11
11
  class ItemBuilder {
12
12
  constructor(getMessage, selectedNumber) {
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-cfd4bb13.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-8c3d76a6.js';
2
2
  import { Action, ObjectUtils, JSUtils, ApplicationContext, DataType } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-188a38bb.js';
4
+ import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-cc4d1599.js';
5
5
 
6
6
  const snkDataUnitCss = ".sc-snk-data-unit-h{display:flex;flex-direction:column;height:100%;width:100%}";
7
7
 
@@ -1,5 +1,5 @@
1
- export { S as snk_data_unit } from './snk-data-unit-79b1583a.js';
2
- import './index-cfd4bb13.js';
1
+ export { S as snk_data_unit } from './snk-data-unit-97824457.js';
2
+ import './index-8c3d76a6.js';
3
3
  import '@sankhyalabs/core';
4
4
  import '@sankhyalabs/ezui/dist/collection/utils';
5
- import './SnkMessageBuilder-188a38bb.js';
5
+ import './SnkMessageBuilder-cc4d1599.js';
@@ -1,22 +1,22 @@
1
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host } from './index-cfd4bb13.js';
2
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-e60367a0.js';
1
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host } from './index-8c3d76a6.js';
2
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-def999fe.js';
3
3
  import { FormMetadata, buildFormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
4
4
  import './DataFetcher-b3d8b2d5.js';
5
5
  import './pesquisa-fetcher-bd6af0e3.js';
6
6
  import '@sankhyalabs/core';
7
- import { P as PresentationMode } from './index-507e19ec.js';
8
- import { T as TaskbarElement } from './taskbar-elements-8ff33c26.js';
7
+ import { P as PresentationMode } from './index-a255b326.js';
8
+ import { T as TaskbarElement } from './taskbar-elements-26d0fba3.js';
9
9
  import { c as VIEW_MODE } from './constants-e916ccc3.js';
10
- import { S as SnkGuidesViewer } from './snk-guides-viewer-59d3a78c.js';
11
- import { S as SnkMessageBuilder } from './SnkMessageBuilder-188a38bb.js';
12
- import './ConfigStorage-e6c17998.js';
10
+ import { S as SnkGuidesViewer } from './snk-guides-viewer-0380f3df.js';
11
+ import { S as SnkMessageBuilder } from './SnkMessageBuilder-cc4d1599.js';
12
+ import './ConfigStorage-9f4d2e67.js';
13
13
  import './form-config-fetcher-cac8cd96.js';
14
14
  import './resource-fetcher-02642924.js';
15
- import './filter-bar-config-fetcher-edc48f4b.js';
15
+ import './filter-bar-config-fetcher-bd2070a3.js';
16
16
  import './filter-item-type.enum-5028ed3f.js';
17
17
  import './_commonjsHelpers-9943807e.js';
18
- import './index-8efbf198.js';
19
- import './taskbar-processor-20de6616.js';
18
+ import './index-d60ca0ac.js';
19
+ import './taskbar-processor-dfef41a8.js';
20
20
 
21
21
  class GuideBuilder {
22
22
  constructor(parentGuide, formMetadata, dataUnit) {
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-cfd4bb13.js';
2
- import { ApplicationContext } from '@sankhyalabs/core';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-8c3d76a6.js';
2
+ import { ObjectUtils, ApplicationContext } from '@sankhyalabs/core';
3
3
 
4
4
  const snkEntityListCss = ".sc-snk-entity-list-h{--snk-entity-list--label--font-size:var(--text--medium, 14px);--snk-entity-list--label--font-family:var(--font-pattern, Arial);--snk-entity-list--label--color:var(--title--primary, #000);--snk-entity-list--label--disabled--color:var(--text--disable, #AFB6C0)}.label.sc-snk-entity-list{flex-shrink:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--snk-entity-list--label--color);font-size:var(--snk-entity-list--label--font-size);font-family:var(--snk-entity-list--label--font-family);cursor:default;padding-left:var(--space--small);padding-bottom:var(--space--extra-small)}.snk-entity-list--overflow.sc-snk-entity-list{overflow:auto}.snk-entity-list--overflow.sc-snk-entity-list::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}";
5
5
 
@@ -24,12 +24,14 @@ const SnkEntityList = class {
24
24
  }
25
25
  ezListChangeListener(evt) {
26
26
  var _a, _b;
27
- (_a = (this.getListConfigValue(this.config))) === null || _a === void 0 ? void 0 : _a.forEach(value => {
27
+ const configCopy = ObjectUtils.copy(this.config);
28
+ (_a = (this.getListConfigValue(configCopy))) === null || _a === void 0 ? void 0 : _a.forEach(value => {
28
29
  var _a, _b;
29
30
  if (value && value.id === ((_a = evt.detail) === null || _a === void 0 ? void 0 : _a.id)) {
30
31
  value.check = (_b = evt.detail) === null || _b === void 0 ? void 0 : _b.check;
31
32
  }
32
33
  });
34
+ this.config = ObjectUtils.copy(configCopy);
33
35
  this.saveConfig.emit(this.config);
34
36
  this.valueChanged.emit((_b = this.config) === null || _b === void 0 ? void 0 : _b.value);
35
37
  }
@@ -100,8 +102,8 @@ const SnkEntityList = class {
100
102
  return (_d = (_b = (_a = config.value) === null || _a === void 0 ? void 0 : _a.elements) !== null && _b !== void 0 ? _b : (_c = config === null || config === void 0 ? void 0 : config.value) === null || _c === void 0 ? void 0 : _c.members) !== null && _d !== void 0 ? _d : config === null || config === void 0 ? void 0 : config.value;
101
103
  }
102
104
  render() {
103
- var _a;
104
- return (h(Host, null, h("ez-search", { ref: elem => this._searchElement = elem, optionLoader: argument => this.optionLoader(argument), value: this._searchValue, label: (_a = this.config) === null || _a === void 0 ? void 0 : _a.label, onEzChange: evt => this.onEzSearchChange(evt) }), h("label", { class: "label" }, this.getMessage("snkEntityList.selected")), h("div", { style: this.maxHeightList ? { 'max-height': this.maxHeightList } : {}, class: { "snk-entity-list--overflow": !!this.maxHeightList } }, h("ez-list", { ref: (el) => this._ezList = el, id: "snkEntityList", listMode: "check", dataSource: this._ezListSource, hoverFeedback: true, itemSlotBuilder: this.rightListSlotBuilder, onEzCheckChange: evt => this.ezListChangeListener(evt) }))));
105
+ var _a, _b;
106
+ return (h(Host, null, h("ez-search", { ref: elem => this._searchElement = elem, optionLoader: argument => this.optionLoader(argument), value: this._searchValue, label: (_a = this.config) === null || _a === void 0 ? void 0 : _a.label, onEzChange: evt => this.onEzSearchChange(evt), suppressEmptyOption: true }), ((_b = this._ezListSource) === null || _b === void 0 ? void 0 : _b.length) > 0 && (h("label", { class: "label" }, this.getMessage("snkEntityList.selected"))), h("div", { style: this.maxHeightList ? { 'max-height': this.maxHeightList } : {}, class: { "snk-entity-list--overflow": !!this.maxHeightList } }, h("ez-list", { ref: (el) => this._ezList = el, id: "snkEntityList", listMode: "check", dataSource: this._ezListSource, hoverFeedback: true, itemSlotBuilder: this.rightListSlotBuilder, onEzCheckChange: evt => this.ezListChangeListener(evt) }))));
105
107
  }
106
108
  static get watchers() { return {
107
109
  "config": ["observeConfig"]
@@ -1,4 +1,4 @@
1
- import { h, r as registerInstance, g as getElement } from './index-cfd4bb13.js';
1
+ import { h, r as registerInstance, g as getElement } from './index-8c3d76a6.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { ModalAction } from '@sankhyalabs/ezui/dist/collection/components/ez-modal-container';
4
4
 
@@ -0,0 +1,242 @@
1
+ import { r as registerInstance, c as createEvent, h, f as forceUpdate, H as Host, g as getElement } from './index-8c3d76a6.js';
2
+ import { F as FilterGroupCondition } from './IExpressionItem-2e922b2c.js';
3
+ import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
4
+ import { ApplicationContext, StringUtils, ElementIDUtils } from '@sankhyalabs/core';
5
+
6
+ const snkExpressionGroupCss = ".sc-snk-expression-group-h{display:block;--snk-expression-group--container-condition--width:184px;--snk-expression-group--container-condition--height:38px;--snk-expression-group--container-condition--border-radius:var(--border--radius-medium, 12px);--snk-expression-group--container-option--width:85px;--snk-expression-group__container-condition--background-and:#66B6A0;--snk-expression-group__container-condition--background-or:#EBC65E;--snk-expression-group__container-expression--padding-left:26px;--snk-expression-group__background-color-dashed:var(--background--body, #fafcff)}.snk-expression-group__container-condition.sc-snk-expression-group{width:var(--snk-expression-group--container-condition--width);height:var(--snk-expression-group--container-condition--height);border-radius:var(--snk-expression-group--container-condition--border-radius);z-index:var(--more-visible--2x, 3)}.snk-expression-group__container-option.sc-snk-expression-group{width:var(--snk-expression-group--container-option--width)}.snk-expression-group__container-condition[data-condition=\"AND\"].sc-snk-expression-group{background-color:var(--snk-expression-group__container-condition--background-and)}.snk-expression-group__container-condition[data-condition=\"OR\"].sc-snk-expression-group{background-color:var(--snk-expression-group__container-condition--background-or)}.snk-expression-group__container-expression.sc-snk-expression-group{padding-left:var(--snk-expression-group__container-expression--padding-left)}.dashes.sc-snk-expression-group{z-index:var(--visible, 1);background:var(--snk-expression-group__background-color-dashed);border-left:2px dashed var(--text-secondary, #A2ABB9);position:absolute;width:15px;height:58px;margin-left:-15px;margin-top:-36.5px}.horizontal-dashes.sc-snk-expression-group{z-index:var(--more-visible, 2);border-bottom:2px dashed var(--text-secondary, #A2ABB9);position:absolute;width:15px;height:54px;margin-left:-15px;margin-top:-33.5px}.hidden.sc-snk-expression-group{display:none}";
7
+
8
+ const LIMIT_GROUP_LEVEL = 4;
9
+ const SnkExpressionGroup = class {
10
+ constructor(hostRef) {
11
+ registerInstance(this, hostRef);
12
+ this.ezFilterGroupChange = createEvent(this, "ezFilterGroupChange", 7);
13
+ this.ezFilterGroupRemove = createEvent(this, "ezFilterGroupRemove", 7);
14
+ this.ezExpressionGroupLayoutChanged = createEvent(this, "ezExpressionLayoutChanged", 7);
15
+ this.FIRST_LEVEL = "0";
16
+ this.application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
17
+ this._conditionOperator = FilterGroupCondition.AND;
18
+ this._group = undefined;
19
+ this._selfTop = 0;
20
+ this.canAddExpression = true;
21
+ this._showDashes = true;
22
+ this.parentTop = 0;
23
+ this.group = undefined;
24
+ this.messagesBuilder = undefined;
25
+ this.filterId = undefined;
26
+ this.entityURI = undefined;
27
+ }
28
+ /**
29
+ * Listener para capturar adição e remoção de grupos e items de expressão.
30
+ */
31
+ todoCompletedHandler(_) {
32
+ this.updateDashes();
33
+ }
34
+ /*
35
+ * Retorna o grupo da expressão.
36
+ */
37
+ async getExpressionGroup() {
38
+ return this._group;
39
+ }
40
+ watchGroup(newValue) {
41
+ this._group = newValue;
42
+ this._conditionOperator = !this._group.operand ? FilterGroupCondition.AND : this._group.operand;
43
+ }
44
+ componentWillLoad() {
45
+ this._group = this.group;
46
+ this._conditionOperator = !this._group.operand ? FilterGroupCondition.AND : this._group.operand;
47
+ if (!this.getDataGroupLevel()) {
48
+ this._element.setAttribute('data-group-level', this.FIRST_LEVEL);
49
+ }
50
+ if (!this.filterId) {
51
+ this.canAddExpression = false;
52
+ }
53
+ }
54
+ componentDidRender() {
55
+ this.setSelfTop();
56
+ }
57
+ changeHandler() {
58
+ this.ezExpressionGroupLayoutChanged.emit();
59
+ }
60
+ /**
61
+ * Função que define o valor atualizado da propriedade top do elemento em tela para calcular o tamanho do tracejado.
62
+ */
63
+ setSelfTop() {
64
+ this._selfTop = this._element.getBoundingClientRect().top;
65
+ }
66
+ /**
67
+ * Função que calcula o tamanho que deve ter o tracejado.
68
+ */
69
+ getDashedHeight() {
70
+ return this._selfTop - this.parentTop;
71
+ }
72
+ getMessage(key, params) {
73
+ return this.application.messagesBuilder.getMessage(key, params);
74
+ }
75
+ updateDashes() {
76
+ this._showDashes = false;
77
+ this.setSelfTop();
78
+ this._showDashes = true;
79
+ }
80
+ renderExpressionItems() {
81
+ var _a;
82
+ return (_a = this._group.items) === null || _a === void 0 ? void 0 : _a.map((item) => (h("snk-expression-item", { key: item.id, class: "ez-padding-top--small snk-expression-group__item", expression: item, canRemove: this._group.items.length > 1, onEzFilterItemChange: () => this.handleFilterItemChange(), onEzFilterItemRemove: (evt) => this.handleFilterItemRemove(evt, item.id), messagesBuilder: this.messagesBuilder, entityURI: this.entityURI })));
83
+ }
84
+ renderGroups() {
85
+ var _a;
86
+ const currentLevel = parseInt(this.getDataGroupLevel() || '0');
87
+ const newLevel = currentLevel + 1;
88
+ return (_a = this._group.childrenGroups) === null || _a === void 0 ? void 0 : _a.map((group) => (h("snk-expression-group", { key: group.id, group: group, messagesBuilder: this.messagesBuilder, parentTop: this._selfTop, "data-group-level": newLevel, onEzFilterGroupRemove: (evt) => this.handleFilterGroupRemove(evt, group.id), entityURI: this.entityURI })));
89
+ }
90
+ handleFilterGroupRemove(evt, groupId) {
91
+ this.onStopPropagation(evt);
92
+ this._group.childrenGroups = this._group.childrenGroups.filter(group => group.id !== groupId);
93
+ forceUpdate(this);
94
+ this.ezFilterGroupChange.emit(this._group);
95
+ this.changeHandler();
96
+ }
97
+ handleFilterItemRemove(evt, itemId) {
98
+ this.onStopPropagation(evt);
99
+ this._group.items = this._group.items.filter(item => item.id !== itemId);
100
+ forceUpdate(this);
101
+ this.ezFilterGroupChange.emit(this._group);
102
+ this.changeHandler();
103
+ this.canAddExpression = true;
104
+ }
105
+ handleFilterItemChange() {
106
+ this.ezFilterGroupChange.emit(this._group);
107
+ this.canAddExpression = this.group.items.every(item => {
108
+ if (!item.fieldName || !item.operand)
109
+ return false;
110
+ if (item.operand === 'NULL' || item.operand === 'NOT_NULL') {
111
+ return true;
112
+ }
113
+ else {
114
+ return item.paramVariable || (item.userInterface === 'SWITCH') ? true : !!item.value;
115
+ }
116
+ });
117
+ }
118
+ handleAddExpression() {
119
+ const newItem = {
120
+ id: StringUtils.generateUUID(),
121
+ entityName: "",
122
+ fieldName: "",
123
+ description: "",
124
+ label: "Valor",
125
+ type: undefined,
126
+ expression: undefined,
127
+ operand: undefined,
128
+ paramVariable: false,
129
+ value: undefined,
130
+ systemConfig: null,
131
+ userConfig: null
132
+ };
133
+ this._group.items.push(newItem);
134
+ forceUpdate(this);
135
+ this.ezFilterGroupChange.emit(this.group);
136
+ this.changeHandler();
137
+ this.canAddExpression = false;
138
+ }
139
+ handleAddGroup() {
140
+ var _a;
141
+ const newGroup = {
142
+ id: StringUtils.generateUUID(),
143
+ items: [
144
+ {
145
+ id: StringUtils.generateUUID(),
146
+ entityName: "",
147
+ fieldName: "",
148
+ description: "",
149
+ label: "Valor",
150
+ type: undefined,
151
+ expression: undefined,
152
+ operand: undefined,
153
+ paramVariable: false,
154
+ value: undefined,
155
+ systemConfig: null,
156
+ userConfig: null
157
+ }
158
+ ],
159
+ childrenGroups: [],
160
+ operand: FilterGroupCondition.AND
161
+ };
162
+ this._group.childrenGroups = (_a = this._group.childrenGroups) !== null && _a !== void 0 ? _a : [];
163
+ this._group.childrenGroups.push(newGroup);
164
+ forceUpdate(this);
165
+ this.ezFilterGroupChange.emit(this.group);
166
+ this.changeHandler();
167
+ }
168
+ buildGroupStyle() {
169
+ return {
170
+ height: `${this.getDashedHeight()}px`,
171
+ marginTop: `${-(this.getDashedHeight()) + 20}px`,
172
+ };
173
+ }
174
+ handleConditionOperatorChange(newOperator) {
175
+ this._conditionOperator = newOperator;
176
+ this._group.operand = FilterGroupCondition[newOperator];
177
+ this.ezFilterGroupChange.emit(this._group);
178
+ }
179
+ confirmRemoveGroup(evt) {
180
+ this.onStopPropagation(evt);
181
+ ApplicationUtils.confirm(this.getMessage("snkPersonalizedFilter.confirmGroup.title"), this.getMessage("snkPersonalizedFilter.confirmGroup.description"))
182
+ .then((canRemove) => {
183
+ if (canRemove) {
184
+ this.ezFilterGroupRemove.emit(this._group);
185
+ }
186
+ });
187
+ }
188
+ getTooltipMessageForOperator() {
189
+ const groupLevel = this.getDataGroupLevel();
190
+ if (groupLevel === this.FIRST_LEVEL && this._group.items.length === 1) {
191
+ return this.getMessage("snkPersonalizedFilter.operador.firstLevel");
192
+ }
193
+ if (this._conditionOperator === FilterGroupCondition.AND) {
194
+ return this.getMessage("snkPersonalizedFilter.operador.and");
195
+ }
196
+ else if (this._conditionOperator === FilterGroupCondition.OR) {
197
+ return this.getMessage("snkPersonalizedFilter.operador.or");
198
+ }
199
+ }
200
+ getDataGroupLevel() {
201
+ return this._element.getAttribute('data-group-level');
202
+ }
203
+ canAddGroup() {
204
+ const dataGroupLevel = Number(this.getDataGroupLevel() || this.FIRST_LEVEL);
205
+ return dataGroupLevel < LIMIT_GROUP_LEVEL;
206
+ }
207
+ isFirstLevel() {
208
+ return Boolean(this.getDataGroupLevel() === this.FIRST_LEVEL);
209
+ }
210
+ onStopPropagation(evt) {
211
+ evt.preventDefault();
212
+ evt.stopPropagation();
213
+ }
214
+ handleMessageAddTooltip() {
215
+ if (this.isFirstLevel()) {
216
+ const allValidItems = this.group.items.every(item => {
217
+ if (!item.fieldName || !item.operand)
218
+ return false;
219
+ return item.paramVariable || !!item.value;
220
+ });
221
+ return allValidItems ? this.getMessage("snkPersonalizedFilter.info.labelAddNewExpression") : this.getMessage("snkPersonalizedFilter.info.labelDisabledAddExpressionButton");
222
+ }
223
+ else {
224
+ return this.canAddExpression ? this.getMessage("snkPersonalizedFilter.info.labelAddNewExpression") : this.getMessage("snkPersonalizedFilter.info.labelDisabledAddExpressionButton");
225
+ }
226
+ }
227
+ canChangeGroupCondition() {
228
+ const membersCount = this._group.items.length + this._group.childrenGroups.length;
229
+ return membersCount > 1;
230
+ }
231
+ render() {
232
+ const canAddGroup = this.canAddGroup();
233
+ return (h(Host, null, h("div", { class: !this.isFirstLevel() && this._showDashes ? 'dashes' : 'hidden', style: this.buildGroupStyle() }), h("div", { class: !this.isFirstLevel() && this._showDashes ? 'horizontal-dashes' : 'hidden' }), h("div", { class: 'ez-flex ez-flex--align-items-center' }, h("div", { class: 'snk-expression-group__container-condition ez-flex ez-flex-item--align-center ez-flex--align-items-center', "data-condition": this._conditionOperator, title: this.getTooltipMessageForOperator() }, h("label", { class: "ez-label ez-padding-right--medium ez-padding-left--medium ez-title--primary" }, "Condi\u00E7\u00E3o:"), h("div", null, h("ez-combo-box", Object.assign({ class: "snk-expression-group__container-option", canShowError: false, mode: "slim", suppressEmptyOption: true, enabled: this.canChangeGroupCondition(), value: this._conditionOperator, onEzChange: (evt) => this.handleConditionOperatorChange(evt.detail.value) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `comboBoxConditions_level_${this.getDataGroupLevel()}` }), h("option", { value: FilterGroupCondition.AND }, "E"), h("option", { value: FilterGroupCondition.OR }, "OU")))), h("ez-button", { class: "ez-padding-right--medium ez-padding-left--medium", mode: "icon", iconName: "plus", size: "small", enabled: this.canAddExpression, title: this.handleMessageAddTooltip(), onClick: () => this.handleAddExpression() }), h("ez-button", { label: "Adicionar grupo", size: "small", enabled: canAddGroup, title: !canAddGroup ? this.getMessage('snkPersonalizedFilter.info.labelDisabledAddGroupButton', { LIMIT_GROUP_LEVEL: LIMIT_GROUP_LEVEL + 1 }) : '', onClick: () => this.handleAddGroup() }, h("ez-icon", { slot: "leftIcon", iconName: "plus" })), !this.isFirstLevel() && h("ez-button", { title: this.getMessage("snkPersonalizedFilter.info.labelDeleteExpression"), class: "ez-padding-left--medium", mode: "icon", iconName: "delete", size: "small", onClick: (evt) => this.confirmRemoveGroup(evt) })), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderExpressionItems())), h("div", { class: "ez-padding-top--small snk-expression-group__container-expression" }, h("div", { class: "ez-padding-top--small" }, this.renderGroups()))));
234
+ }
235
+ get _element() { return getElement(this); }
236
+ static get watchers() { return {
237
+ "group": ["watchGroup"]
238
+ }; }
239
+ };
240
+ SnkExpressionGroup.style = snkExpressionGroupCss;
241
+
242
+ export { SnkExpressionGroup as snk_expression_group };