@sankhyalabs/sankhyablocks 8.16.0-dev.11 → 8.16.0-dev.111

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 (456) hide show
  1. package/dist/cjs/ClientSideExporterProvider-a2753c93.js +378 -0
  2. package/dist/cjs/{ConfigStorage-e49214c6.js → ConfigStorage-df09fb78.js} +2 -2
  3. package/dist/cjs/{DataFetcher-77729a93.js → DataFetcher-1afdb18e.js} +231 -84
  4. package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
  5. package/dist/cjs/IFetchDataExporterParams-e78ec415.js +8 -0
  6. package/dist/cjs/ISave-c76e2c51.js +397 -0
  7. package/dist/cjs/{SnkFormConfigManager-beebf47a.js → SnkFormConfigManager-45a8d7b7.js} +75 -17
  8. package/dist/cjs/{SnkMessageBuilder-897ffd08.js → SnkMessageBuilder-9deeae08.js} +40 -28
  9. package/dist/cjs/{auth-fetcher-29bb791c.js → auth-fetcher-1687ac0a.js} +1 -1
  10. package/dist/cjs/{constants-35ddd366.js → constants-77c1b8bd.js} +10 -0
  11. package/dist/cjs/{dataunit-fetcher-d4873076.js → dataunit-fetcher-a723f0dc.js} +225 -175
  12. package/dist/cjs/{form-config-fetcher-feb08214.js → form-config-fetcher-40d3f752.js} +56 -2
  13. package/dist/cjs/{index-1dfc7a6e.js → index-e3e39724.js} +5 -0
  14. package/dist/cjs/index-f9e81701.js +16 -32
  15. package/dist/cjs/loader.cjs.js +1 -1
  16. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +155 -0
  17. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  18. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_8.cjs.entry.js} +264 -46
  19. package/dist/cjs/snk-application.cjs.entry.js +471 -79
  20. package/dist/cjs/snk-attach.cjs.entry.js +91 -50
  21. package/dist/cjs/{snk-form-config.cjs.entry.js → snk-config-options_3.cjs.entry.js} +401 -13
  22. package/dist/cjs/snk-configurator.cjs.entry.js +10 -3
  23. package/dist/cjs/snk-crud.cjs.entry.js +57 -84
  24. package/dist/cjs/snk-data-exporter.cjs.entry.js +38 -30
  25. package/dist/cjs/{snk-data-unit-ece44c4a.js → snk-data-unit-57916de4.js} +275 -37
  26. package/dist/cjs/snk-data-unit.cjs.entry.js +5 -5
  27. package/dist/cjs/snk-detail-view.cjs.entry.js +69 -17
  28. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  29. package/dist/cjs/snk-field-config.cjs.entry.js +1 -1
  30. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1438 -0
  31. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +1 -1
  32. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +1 -1
  33. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  34. package/dist/cjs/snk-filter-number.cjs.entry.js +1 -1
  35. package/dist/cjs/snk-filter-search.cjs.entry.js +18 -5
  36. package/dist/cjs/snk-filter-text.cjs.entry.js +2 -1
  37. package/dist/cjs/snk-form-view.cjs.entry.js +19 -7
  38. package/dist/cjs/snk-grid.cjs.entry.js +132 -51
  39. package/dist/cjs/{snk-guides-viewer-aafc3073.js → snk-guides-viewer-d33379cd.js} +151 -74
  40. package/dist/cjs/snk-guides-viewer.cjs.entry.js +12 -12
  41. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +4 -4
  42. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  43. package/dist/cjs/snk-pesquisa.cjs.entry.js +116 -31
  44. package/dist/cjs/snk-print-selector.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-simple-bar.cjs.entry.js +1 -1
  46. package/dist/cjs/snk-simple-crud.cjs.entry.js +237 -200
  47. package/dist/cjs/snk-tab-config.cjs.entry.js +1 -1
  48. package/dist/cjs/snk-taskbar.cjs.entry.js +79 -42
  49. package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-6f4e06af.js} +12 -1
  50. package/dist/cjs/{field-search-f56aa7d6.js → taskbar-processor-2fba34a8.js} +5 -36
  51. package/dist/collection/collection-manifest.json +17 -31
  52. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  53. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  54. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  55. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +5 -2
  56. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  57. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  58. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  59. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +107 -0
  60. package/dist/collection/components/snk-application/snk-application.css +36 -0
  61. package/dist/collection/components/snk-application/snk-application.js +450 -72
  62. package/dist/collection/components/snk-attach/snk-attach.js +51 -16
  63. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  64. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +19 -18
  65. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  66. package/dist/collection/components/snk-configurator/snk-configurator.js +26 -1
  67. package/dist/collection/components/snk-crud/snk-crud.js +181 -76
  68. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +10 -1
  69. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +84 -6
  70. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +54 -7
  71. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  72. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +198 -82
  73. package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +1 -1
  74. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
  75. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  76. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +41 -10
  77. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
  78. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  79. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
  80. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +2 -2
  81. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  82. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  83. package/dist/collection/components/snk-data-unit/MultipleUpdateHelper.js +128 -0
  84. package/dist/collection/components/snk-data-unit/snk-data-unit.js +156 -37
  85. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +3 -3
  86. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  87. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  88. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  89. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +18 -5
  90. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  91. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  92. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  93. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  94. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +10 -4
  95. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  96. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +3 -1
  97. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +2 -6
  98. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +119 -29
  99. package/dist/collection/components/snk-form/snk-form.js +2 -2
  100. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +73 -15
  101. package/dist/collection/components/snk-form-config/snk-form-config.css +8 -3
  102. package/dist/collection/components/snk-form-config/snk-form-config.js +49 -8
  103. package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.js +5 -3
  104. package/dist/collection/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.js +2 -2
  105. package/dist/collection/components/snk-grid/snk-grid.css +8 -0
  106. package/dist/collection/components/snk-grid/snk-grid.js +269 -51
  107. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  108. package/dist/collection/components/snk-grid-config/snk-grid-config.js +2 -0
  109. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.css +3 -0
  110. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +73 -0
  111. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.css +78 -0
  112. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +57 -0
  113. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  114. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  115. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  116. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  117. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  118. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  119. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +181 -32
  120. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  121. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  122. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  123. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +342 -123
  124. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  125. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  126. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +13 -0
  127. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
  128. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -0
  129. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.css +0 -0
  130. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +220 -0
  131. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  132. package/dist/collection/components/snk-taskbar/snk-taskbar.js +141 -41
  133. package/dist/collection/lib/@types/index.js +5 -0
  134. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +11 -5
  135. package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
  136. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
  137. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
  138. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -29
  139. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  140. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  141. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  142. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +5 -2
  143. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  144. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
  145. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  146. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
  147. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  148. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
  149. package/dist/collection/lib/index.js +1 -0
  150. package/dist/collection/lib/message/SnkMessageBuilder.js +1 -0
  151. package/dist/collection/lib/message/resources/snk-crud.msg.js +1 -1
  152. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +28 -23
  153. package/dist/collection/lib/message/resources/snk-exporter.msg.js +1 -1
  154. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  155. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +2 -1
  156. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
  157. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  158. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  159. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  160. package/dist/collection/lib/utils/constants.js +10 -0
  161. package/dist/collection/sw.js +46 -0
  162. package/dist/components/ContinuousInsertUtils.js +416 -0
  163. package/dist/components/DataFetcher.js +231 -84
  164. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  165. package/dist/components/ISave.js +391 -1
  166. package/dist/components/SnkFormConfigManager.js +73 -15
  167. package/dist/components/SnkMessageBuilder.js +40 -28
  168. package/dist/components/constants.js +11 -1
  169. package/dist/components/dataunit-fetcher.js +243 -190
  170. package/dist/components/form-config-fetcher.js +55 -1
  171. package/dist/components/index.d.ts +6 -0
  172. package/dist/components/index.js +6 -0
  173. package/dist/components/pesquisa-grid.d.ts +11 -0
  174. package/dist/components/pesquisa-grid.js +6 -0
  175. package/dist/components/pesquisa-grid2.js +102 -0
  176. package/dist/components/pesquisa-tree.d.ts +11 -0
  177. package/dist/components/pesquisa-tree.js +6 -0
  178. package/dist/components/pesquisa-tree2.js +91 -0
  179. package/dist/components/snk-actions-button2.js +44 -40
  180. package/dist/components/snk-application2.js +494 -77
  181. package/dist/components/snk-attach2.js +114 -73
  182. package/dist/components/snk-config-options2.js +6 -4
  183. package/dist/components/snk-configurator2.js +23 -3
  184. package/dist/components/snk-crud.js +143 -139
  185. package/dist/components/snk-data-exporter2.js +37 -23
  186. package/dist/components/snk-data-unit2.js +275 -74
  187. package/dist/components/snk-detail-view2.js +329 -171
  188. package/dist/components/snk-exporter-email-sender2.js +1 -1
  189. package/dist/components/snk-filter-bar2.js +68 -34
  190. package/dist/components/snk-filter-binary-select.js +1 -1
  191. package/dist/components/snk-filter-checkbox-list.js +1 -1
  192. package/dist/components/snk-filter-item2.js +10 -4
  193. package/dist/components/snk-filter-modal.js +4 -2
  194. package/dist/components/snk-filter-number.js +1 -1
  195. package/dist/components/snk-filter-search.js +18 -5
  196. package/dist/components/snk-filter-text.js +2 -1
  197. package/dist/components/snk-form-config2.js +35 -10
  198. package/dist/components/snk-form-view2.js +22 -8
  199. package/dist/components/snk-form.js +2 -2
  200. package/dist/components/snk-grid-config2.js +3 -1
  201. package/dist/components/snk-grid2.js +169 -75
  202. package/dist/components/snk-layout-form-config.d.ts +11 -0
  203. package/dist/components/snk-layout-form-config.js +6 -0
  204. package/dist/components/snk-layout-form-config2.js +73 -0
  205. package/dist/components/snk-personalized-filter-editor.js +4 -4
  206. package/dist/components/snk-pesquisa2.js +132 -33
  207. package/dist/components/snk-print-selector.js +1 -1
  208. package/dist/components/snk-simple-bar2.js +1 -1
  209. package/dist/components/snk-simple-crud2.js +246 -203
  210. package/dist/components/snk-simple-form-config.d.ts +11 -0
  211. package/dist/components/snk-simple-form-config.js +6 -0
  212. package/dist/components/snk-simple-form-config2.js +121 -0
  213. package/dist/components/snk-tab-config2.js +1 -1
  214. package/dist/components/snk-taskbar2.js +105 -50
  215. package/dist/components/snk-view-representation.d.ts +11 -0
  216. package/dist/components/snk-view-representation.js +6 -0
  217. package/dist/components/snk-view-representation2.js +41 -0
  218. package/dist/components/taskbar-actions-button2.js +2 -2
  219. package/dist/components/taskbar-split-button.d.ts +11 -0
  220. package/dist/components/taskbar-split-button.js +6 -0
  221. package/dist/components/taskbar-split-button2.js +87 -0
  222. package/dist/components/teste-pesquisa.js +13 -1
  223. package/dist/esm/ClientSideExporterProvider-b3871edb.js +367 -0
  224. package/dist/esm/{ConfigStorage-e476378d.js → ConfigStorage-71e6766f.js} +2 -2
  225. package/dist/esm/{DataFetcher-773a3e4b.js → DataFetcher-88e56266.js} +231 -84
  226. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  227. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  228. package/dist/esm/ISave-5efafc97.js +394 -0
  229. package/dist/esm/{SnkFormConfigManager-298cd647.js → SnkFormConfigManager-be490a33.js} +75 -17
  230. package/dist/esm/{SnkMessageBuilder-571462fb.js → SnkMessageBuilder-2dbd8fa2.js} +40 -28
  231. package/dist/esm/{auth-fetcher-a411f73c.js → auth-fetcher-3510520e.js} +1 -1
  232. package/dist/esm/{constants-8457af36.js → constants-7db1128a.js} +11 -1
  233. package/dist/esm/{dataunit-fetcher-3d2ec959.js → dataunit-fetcher-0e025732.js} +227 -174
  234. package/dist/esm/{form-config-fetcher-e0382e5a.js → form-config-fetcher-fa208a6c.js} +56 -2
  235. package/dist/esm/index-a7d3d3f1.js +16 -32
  236. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  237. package/dist/esm/loader.js +1 -1
  238. package/dist/esm/pesquisa-grid_2.entry.js +150 -0
  239. package/dist/esm/sankhyablocks.js +1 -1
  240. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_8.entry.js} +263 -49
  241. package/dist/esm/snk-application.entry.js +472 -80
  242. package/dist/esm/snk-attach.entry.js +92 -51
  243. package/dist/esm/{snk-form-config.entry.js → snk-config-options_3.entry.js} +401 -15
  244. package/dist/esm/snk-configurator.entry.js +10 -3
  245. package/dist/esm/snk-crud.entry.js +58 -85
  246. package/dist/esm/snk-data-exporter.entry.js +38 -30
  247. package/dist/esm/{snk-data-unit-2a1d5d09.js → snk-data-unit-65c9dd1a.js} +275 -37
  248. package/dist/esm/snk-data-unit.entry.js +5 -5
  249. package/dist/esm/snk-detail-view.entry.js +71 -19
  250. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  251. package/dist/esm/snk-field-config.entry.js +1 -1
  252. package/dist/esm/snk-filter-bar_4.entry.js +1431 -0
  253. package/dist/esm/snk-filter-binary-select.entry.js +1 -1
  254. package/dist/esm/snk-filter-checkbox-list.entry.js +1 -1
  255. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  256. package/dist/esm/snk-filter-number.entry.js +1 -1
  257. package/dist/esm/snk-filter-search.entry.js +18 -5
  258. package/dist/esm/snk-filter-text.entry.js +2 -1
  259. package/dist/esm/snk-form-view.entry.js +19 -7
  260. package/dist/esm/snk-grid.entry.js +125 -44
  261. package/dist/esm/{snk-guides-viewer-62124f3d.js → snk-guides-viewer-72953334.js} +153 -76
  262. package/dist/esm/snk-guides-viewer.entry.js +12 -12
  263. package/dist/esm/snk-personalized-filter-editor.entry.js +4 -4
  264. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  265. package/dist/esm/snk-pesquisa.entry.js +116 -31
  266. package/dist/esm/snk-print-selector.entry.js +1 -1
  267. package/dist/esm/snk-simple-bar.entry.js +1 -1
  268. package/dist/esm/snk-simple-crud.entry.js +224 -187
  269. package/dist/esm/snk-tab-config.entry.js +1 -1
  270. package/dist/esm/snk-taskbar.entry.js +80 -43
  271. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-f2cb4922.js} +12 -1
  272. package/dist/esm/{field-search-efbe307f.js → taskbar-processor-3436124c.js} +6 -35
  273. package/dist/sankhyablocks/{p-3287a6cc.js → p-03b68a74.js} +1 -1
  274. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  275. package/dist/sankhyablocks/p-0fadb620.js +1 -0
  276. package/dist/sankhyablocks/{p-9dfda04a.entry.js → p-165cde3b.entry.js} +1 -1
  277. package/dist/sankhyablocks/p-16a1dd18.entry.js +1 -0
  278. package/dist/sankhyablocks/p-1a0caadb.js +1 -0
  279. package/dist/sankhyablocks/p-1bdffb17.entry.js +11 -0
  280. package/dist/sankhyablocks/p-1f80174b.entry.js +1 -0
  281. package/dist/sankhyablocks/p-24a0dbd2.entry.js +1 -0
  282. package/dist/sankhyablocks/p-2f7e2251.entry.js +1 -0
  283. package/dist/sankhyablocks/p-3372178e.entry.js +1 -0
  284. package/dist/sankhyablocks/{p-95df461f.entry.js → p-3749dffb.entry.js} +1 -1
  285. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-434817f0.entry.js} +1 -1
  286. package/dist/sankhyablocks/p-4689c2e6.js +1 -0
  287. package/dist/sankhyablocks/p-47178038.entry.js +1 -0
  288. package/dist/sankhyablocks/{p-bd008859.entry.js → p-490b75b5.entry.js} +1 -1
  289. package/dist/sankhyablocks/p-52d10014.entry.js +1 -0
  290. package/dist/sankhyablocks/{p-aaa3ee68.entry.js → p-5f157b09.entry.js} +1 -1
  291. package/dist/sankhyablocks/p-5ffa0493.entry.js +1 -0
  292. package/dist/sankhyablocks/p-60137b7a.entry.js +1 -0
  293. package/dist/sankhyablocks/p-601b252b.js +26 -0
  294. package/dist/sankhyablocks/p-6a03b190.entry.js +1 -0
  295. package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
  296. package/dist/sankhyablocks/{p-0cd3c0a9.js → p-73285a8a.js} +1 -1
  297. package/dist/sankhyablocks/p-7993b2e3.js +60 -0
  298. package/dist/sankhyablocks/p-79f823f3.entry.js +1 -0
  299. package/dist/sankhyablocks/p-7beeabc1.entry.js +1 -0
  300. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  301. package/dist/sankhyablocks/p-885802c3.js +1 -0
  302. package/dist/sankhyablocks/p-89c92727.entry.js +1 -0
  303. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-8c235d4c.entry.js} +1 -1
  304. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  305. package/dist/sankhyablocks/p-90684a75.entry.js +1 -0
  306. package/dist/sankhyablocks/{p-b0ef4383.js → p-9261d8a0.js} +1 -1
  307. package/dist/sankhyablocks/p-a14a09c3.entry.js +1 -0
  308. package/dist/sankhyablocks/p-a4ebeec4.entry.js +1 -0
  309. package/dist/sankhyablocks/p-b0ab5066.entry.js +1 -0
  310. package/dist/sankhyablocks/p-b6200d32.entry.js +1 -0
  311. package/dist/sankhyablocks/p-bc101064.entry.js +1 -0
  312. package/dist/sankhyablocks/{p-8eb67fa4.entry.js → p-c0eb761b.entry.js} +1 -1
  313. package/dist/sankhyablocks/p-c2e468c9.entry.js +1 -0
  314. package/dist/sankhyablocks/p-c9675d64.js +1 -0
  315. package/dist/sankhyablocks/p-ce94e6c4.entry.js +1 -0
  316. package/dist/sankhyablocks/p-d07b18a4.js +1 -0
  317. package/dist/sankhyablocks/p-ddf93f36.entry.js +1 -0
  318. package/dist/sankhyablocks/p-ebdb9d89.js +1 -0
  319. package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
  320. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  321. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  322. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  323. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  324. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  325. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  326. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  327. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
  328. package/dist/types/components/snk-application/snk-application.d.ts +55 -16
  329. package/dist/types/components/snk-attach/snk-attach.d.ts +2 -0
  330. package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
  331. package/dist/types/components/snk-crud/snk-crud.d.ts +30 -3
  332. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +17 -0
  333. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +11 -1
  334. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +26 -7
  335. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  336. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  337. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
  338. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  339. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  340. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  341. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  342. package/dist/types/components/snk-data-unit/MultipleUpdateHelper.d.ts +9 -0
  343. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +19 -0
  344. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
  345. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  346. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  347. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +15 -1
  348. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +7 -2
  349. package/dist/types/components/snk-form-config/snk-form-config.d.ts +4 -0
  350. package/dist/types/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.d.ts +2 -1
  351. package/dist/types/components/snk-grid/snk-grid.d.ts +45 -5
  352. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
  353. package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
  354. package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
  355. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  356. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  357. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  358. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +36 -1
  359. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +51 -15
  360. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  361. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
  362. package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +44 -0
  363. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  364. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +17 -0
  365. package/dist/types/components.d.ts +608 -24
  366. package/dist/types/lib/@types/index.d.ts +4 -0
  367. package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
  368. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  369. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  370. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  371. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  372. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  373. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  374. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  375. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -1
  376. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  377. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  378. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  379. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  380. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
  381. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  382. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
  383. package/dist/types/lib/index.d.ts +1 -0
  384. package/dist/types/lib/message/SnkMessageBuilder.d.ts +2 -1
  385. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  386. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  387. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  388. package/dist/types/lib/utils/constants.d.ts +8 -0
  389. package/package.json +4 -3
  390. package/react/components.d.ts +6 -0
  391. package/react/components.js +6 -0
  392. package/react/components.js.map +1 -1
  393. package/dist/cjs/IExporterProvider-10b7fed5.js +0 -230
  394. package/dist/cjs/ISave-e91b70a7.js +0 -9
  395. package/dist/cjs/pesquisa-fetcher-a1d0353f.js +0 -166
  396. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  397. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  398. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  399. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  400. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  401. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  402. package/dist/collection/components/snk-taskbar/subcomponents/field-search.js +0 -31
  403. package/dist/components/IExporterProvider.js +0 -298
  404. package/dist/components/pesquisa-fetcher.js +0 -164
  405. package/dist/esm/IExporterProvider-d597f27d.js +0 -221
  406. package/dist/esm/ISave-d8c8bc59.js +0 -9
  407. package/dist/esm/pesquisa-fetcher-a87445a0.js +0 -164
  408. package/dist/esm/snk-config-options.entry.js +0 -235
  409. package/dist/esm/snk-filter-bar.entry.js +0 -710
  410. package/dist/esm/snk-filter-item.entry.js +0 -308
  411. package/dist/esm/snk-filter-list.entry.js +0 -148
  412. package/dist/esm/snk-filter-modal.entry.js +0 -245
  413. package/dist/esm/snk-form.entry.js +0 -139
  414. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  415. package/dist/sankhyablocks/p-091ce761.js +0 -60
  416. package/dist/sankhyablocks/p-14b8b656.entry.js +0 -1
  417. package/dist/sankhyablocks/p-181975f1.js +0 -26
  418. package/dist/sankhyablocks/p-1db45d26.entry.js +0 -1
  419. package/dist/sankhyablocks/p-1e971cb0.entry.js +0 -1
  420. package/dist/sankhyablocks/p-21749402.js +0 -1
  421. package/dist/sankhyablocks/p-219f888d.entry.js +0 -1
  422. package/dist/sankhyablocks/p-25f1fc39.js +0 -6
  423. package/dist/sankhyablocks/p-2e9c764c.entry.js +0 -1
  424. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  425. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  426. package/dist/sankhyablocks/p-421bec84.entry.js +0 -1
  427. package/dist/sankhyablocks/p-42f7b05d.entry.js +0 -1
  428. package/dist/sankhyablocks/p-51999ab5.entry.js +0 -1
  429. package/dist/sankhyablocks/p-594bc21d.js +0 -1
  430. package/dist/sankhyablocks/p-5f016aed.js +0 -1
  431. package/dist/sankhyablocks/p-62f34e6f.entry.js +0 -1
  432. package/dist/sankhyablocks/p-631954eb.entry.js +0 -1
  433. package/dist/sankhyablocks/p-65f8c11c.entry.js +0 -1
  434. package/dist/sankhyablocks/p-684a2590.entry.js +0 -1
  435. package/dist/sankhyablocks/p-70001ac1.js +0 -1
  436. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  437. package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
  438. package/dist/sankhyablocks/p-76a65660.js +0 -1
  439. package/dist/sankhyablocks/p-7e7a7473.js +0 -1
  440. package/dist/sankhyablocks/p-7ef9c55c.js +0 -1
  441. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  442. package/dist/sankhyablocks/p-939e15d3.entry.js +0 -1
  443. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  444. package/dist/sankhyablocks/p-9863d682.js +0 -1
  445. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  446. package/dist/sankhyablocks/p-c2495304.js +0 -1
  447. package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
  448. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  449. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  450. package/dist/sankhyablocks/p-d65d98ed.entry.js +0 -1
  451. package/dist/sankhyablocks/p-d6610d11.entry.js +0 -11
  452. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  453. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  454. package/dist/sankhyablocks/p-ffa5e4ff.js +0 -1
  455. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
  456. package/dist/types/components/snk-taskbar/subcomponents/field-search.d.ts +0 -4
@@ -1,11 +1,12 @@
1
- import { Host, h } from '@stencil/core';
2
- import { Action, ApplicationContext, DataUnitAction, ObjectUtils, StringUtils } from '@sankhyalabs/core';
1
+ import { h, Host } from '@stencil/core';
2
+ import { Action, ApplicationContext, DataUnitAction, ObjectUtils, StringUtils, } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { OperationMap, SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
5
5
  import { DatasetStrategy } from '../../lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy';
6
6
  import { getRecordValue } from '../../lib/dataUnit/ValueFormatter';
7
- import { getSelectedIDs } from '../snk-data-exporter/utils/RecordIDUtils';
8
7
  import { convertType } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
8
+ import { getSelectedRecordsIDsInfo } from '../../lib/utils/GetSelectedRecordsIDsInfo';
9
+ import { showConfirmMultipleUpdatePopup } from './MultipleUpdateHelper';
9
10
  export class SnkDataUnit {
10
11
  constructor() {
11
12
  this._onDataUnitResolve = [];
@@ -14,9 +15,10 @@ export class SnkDataUnit {
14
15
  this._fieldsWithRmPrecision = [];
15
16
  this._metadataByRow = new Map();
16
17
  this._rowMetadataCache = new Map();
18
+ this._formFieldsConfig = [];
17
19
  this.REGEX_DATAUNIT_NAME = /dd:\/\/(.+?)\//;
18
20
  this._dataUnitObserver = async (action) => {
19
- const duState = this.buildDataState(action.type);
21
+ const duState = await this.buildDataState(action.type);
20
22
  this.dataState = duState;
21
23
  this.messagesBuilder.currentOperation = this.getMessageOperation();
22
24
  switch (action.type) {
@@ -92,6 +94,10 @@ export class SnkDataUnit {
92
94
  this.messagesBuilderUpdated.emit(newValue);
93
95
  }
94
96
  }
97
+ onMasterFormConfigChange({ detail }) {
98
+ var _a;
99
+ this._formFieldsConfig = (_a = detail === null || detail === void 0 ? void 0 : detail.fields) !== null && _a !== void 0 ? _a : [];
100
+ }
95
101
  /**
96
102
  * Obtém o dataUnit.
97
103
  */
@@ -110,7 +116,7 @@ export class SnkDataUnit {
110
116
  * @returns Retorna a lista de IDs dos registros selecionados.
111
117
  */
112
118
  async getSelectedRecordsIDsInfo() {
113
- return Promise.resolve(getSelectedIDs(this.dataUnit));
119
+ return getSelectedRecordsIDsInfo(this.dataUnit);
114
120
  }
115
121
  /**
116
122
  * Retorna os campos que possuem a propriedade "rmp" (Row Metadata Provider).
@@ -130,14 +136,22 @@ export class SnkDataUnit {
130
136
  async getRowMetadata(record) {
131
137
  return this.doGetRowMetadata(record);
132
138
  }
133
- doGetRowMetadata(record) {
139
+ async doGetRowMetadata(record) {
134
140
  const selectedRecord = this.dataUnit.getSelectedRecord();
135
141
  if (!record && !selectedRecord) {
136
142
  return;
137
143
  }
138
144
  const currentRecord = record || selectedRecord;
139
145
  const recordId = typeof currentRecord === 'string' ? currentRecord : currentRecord.__record__id__;
140
- const rowMetadata = this._metadataByRow.get(recordId);
146
+ let rowMetadata = this._metadataByRow.get(recordId);
147
+ /*
148
+ Nao fazemos cache de metadataByRow pra registros novos, pois a chave do mesmo
149
+ muda ao ser salvo, por isso essa tratativa é necessária para que o dataState fique com metadados
150
+ corretos nao confiando apenas no _metadataByRow
151
+ */
152
+ if (this.dataUnit.isNewRecord(recordId) && !rowMetadata) {
153
+ rowMetadata = await this.handleLoadRowMetadata(selectedRecord);
154
+ }
141
155
  if (!rowMetadata) {
142
156
  return;
143
157
  }
@@ -243,7 +257,9 @@ export class SnkDataUnit {
243
257
  return new DataUnitAction(Action.RECORDS_COPIED, this.handleRecordsCopied(action.payload));
244
258
  }
245
259
  async interceptDataChange(action) {
246
- if (this.isAllowed("UPDATE")) {
260
+ var _a;
261
+ const recordId = (_a = this.dataUnit.getSelectedRecord()) === null || _a === void 0 ? void 0 : _a.__record__id__;
262
+ if (this.isAllowed("UPDATE") || this.dataUnit.isNewRecord(recordId)) {
247
263
  return action;
248
264
  }
249
265
  if (this._openedAlert) {
@@ -256,9 +272,13 @@ export class SnkDataUnit {
256
272
  this._openedAlert = false;
257
273
  }
258
274
  async interceptSavingData(action) {
259
- if (!this.beforeSave) {
260
- return action;
275
+ if (this.dataUnit.isMultipleEdition) {
276
+ const confirm = await this.confirmMultipleSavingData();
277
+ if (!confirm)
278
+ return undefined;
261
279
  }
280
+ if (!this.beforeSave)
281
+ return action;
262
282
  const continueAction = this.beforeSave(this.dataUnit);
263
283
  if (continueAction instanceof Promise) {
264
284
  const result = await continueAction;
@@ -266,6 +286,46 @@ export class SnkDataUnit {
266
286
  }
267
287
  return continueAction ? action : undefined;
268
288
  }
289
+ async confirmMultipleSavingData() {
290
+ const selectedRecords = this.dataUnit.getSelectionInfo().records;
291
+ const title = this.getMessage('snkDataUnit.multipleUpdateConfirmationTitle');
292
+ const message = this.getMessage('snkDataUnit.multipleUpdateConfirmationMessage', { size: selectedRecords.length });
293
+ const labelBtnCancel = this.getMessage('snkDataUnit.confirm.cancel');
294
+ const labelBtnConfirm = this.getMessage('snkDataUnit.confirm.updateMultipleConfirm');
295
+ return await showConfirmMultipleUpdatePopup({
296
+ title,
297
+ message,
298
+ labelBtnConfirm,
299
+ labelBtnCancel,
300
+ changingFields: this.getChangingFields(),
301
+ });
302
+ }
303
+ getChangingFields() {
304
+ const changes = this.dataUnit.buildChangesToSave();
305
+ if (!(changes === null || changes === void 0 ? void 0 : changes.length))
306
+ return [];
307
+ const change = changes[0];
308
+ const changingFields = Object.keys(change.updatingFields).map(key => this.buildChangingField(key, change[key]));
309
+ return changingFields;
310
+ }
311
+ buildChangingField(key, value) {
312
+ const fieldLabel = this.dataUnit.getField(key).label;
313
+ const formattedValue = this.dataUnit.getFormattedValue(key, value);
314
+ return {
315
+ label: fieldLabel,
316
+ value: formattedValue,
317
+ tabName: this.getFieldTabName(key),
318
+ };
319
+ }
320
+ getFieldTabName(fieldName) {
321
+ var _a;
322
+ const tab = (_a = this._formFieldsConfig.find(f => f.name === fieldName)) === null || _a === void 0 ? void 0 : _a.tab;
323
+ if (!tab)
324
+ return undefined;
325
+ if (typeof tab === 'string')
326
+ return tab;
327
+ return tab.label;
328
+ }
269
329
  interceptDataSaved(action) {
270
330
  if (this.afterSave) {
271
331
  this.afterSave(this.dataUnit);
@@ -285,7 +345,17 @@ export class SnkDataUnit {
285
345
  }
286
346
  const cancelConfirmationTitle = this.getMessage("snkDataUnit.cancelConfirmationTitle");
287
347
  const confirm = await ApplicationUtils.confirm(cancelConfirmationTitle, cancelConfirmation);
288
- confirm && this.showSuccessMessage(this.getMessage("snkDataUnit.cancelInfo"));
348
+ if (confirm) {
349
+ let editionCanceledMessage;
350
+ if (this.dataUnit.isMultipleEdition) {
351
+ const selectedRecords = this.dataUnit.getSelectionInfo().records;
352
+ editionCanceledMessage = this.buildMultipleUpdateMessage(selectedRecords, true);
353
+ }
354
+ else {
355
+ editionCanceledMessage = this.getMessage("snkDataUnit.cancelInfo");
356
+ }
357
+ this.showSuccessMessage(editionCanceledMessage);
358
+ }
289
359
  return confirm ? action : undefined;
290
360
  }
291
361
  async interceptRemovingRecords(action) {
@@ -331,7 +401,7 @@ export class SnkDataUnit {
331
401
  case Action.RECORDS_COPIED:
332
402
  return this.interceptRecordsCopied(action);
333
403
  case Action.DATA_CHANGED:
334
- await this.handleLoadRowMetadata(action);
404
+ await this.handleLoadRowMetadata(action.payload);
335
405
  return await this.interceptDataChange(action);
336
406
  case Action.CHANGING_DATA:
337
407
  return await this.interceptDataChange(action);
@@ -351,8 +421,9 @@ export class SnkDataUnit {
351
421
  return action;
352
422
  }
353
423
  }
354
- async handleLoadRowMetadata(action) {
355
- const record = action.type === Action.DATA_CHANGED ? action.payload : action.payload.changes[0].record;
424
+ async handleLoadRowMetadata(record) {
425
+ if (!record)
426
+ return;
356
427
  const keysPayload = Object.keys(record);
357
428
  const rmpField = keysPayload.find((field) => this._fieldsWithRmp.includes(field));
358
429
  if (rmpField) {
@@ -431,7 +502,7 @@ export class SnkDataUnit {
431
502
  isAllowed(flag) {
432
503
  return this._permissions ? this._permissions.isSup || this._permissions[flag] : false;
433
504
  }
434
- buildDataState(actionType) {
505
+ async buildDataState(actionType) {
435
506
  var _a;
436
507
  const selectionInfo = this.dataUnit.getSelectionInfo();
437
508
  const isStartingInsertionMode = (this.dataUnit.hasDirtyRecords() || this.dataUnit.hasWaitingChanges()) && (selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.isEmpty());
@@ -439,7 +510,7 @@ export class SnkDataUnit {
439
510
  let rowMetadata = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.rowMetadata;
440
511
  const allowedOverwrite = [Action.SELECTION_CHANGED, Action.EDITION_CANCELED, Action.NEXT_SELECTED, Action.PREVIOUS_SELECTED];
441
512
  if (selectedRecord && (!rowMetadata || allowedOverwrite.includes(actionType))) {
442
- rowMetadata = this.doGetRowMetadata(selectedRecord);
513
+ rowMetadata = await this.doGetRowMetadata(selectedRecord);
443
514
  }
444
515
  else if (rowMetadata) {
445
516
  rowMetadata.getProp = this.buildGetPropRowMetadata(rowMetadata);
@@ -461,32 +532,54 @@ export class SnkDataUnit {
461
532
  });
462
533
  }
463
534
  async handleDataSaved(action) {
464
- const newRowMetadata = await this.handleLoadRowMetadata(action);
535
+ var _a, _b, _c;
536
+ const changes = (_a = action === null || action === void 0 ? void 0 : action.payload) === null || _a === void 0 ? void 0 : _a.changes;
537
+ const affectedRecords = (_b = action === null || action === void 0 ? void 0 : action.payload) === null || _b === void 0 ? void 0 : _b.records;
538
+ const newRowMetadata = await this.handleLoadRowMetadata((_c = changes === null || changes === void 0 ? void 0 : changes[0]) === null || _c === void 0 ? void 0 : _c.record);
465
539
  if (newRowMetadata) {
466
540
  newRowMetadata.getProp = this.buildGetPropRowMetadata(newRowMetadata);
467
541
  }
468
- const recordId = action.payload.records[0].__record__id__;
542
+ const recordId = affectedRecords[0].__record__id__;
469
543
  this._metadataByRow.set(recordId, newRowMetadata);
470
- this.dataState = this.buildDataState();
471
- if (this.ignoreSaveMessage) {
472
- return;
544
+ this.dataState = await this.buildDataState();
545
+ let saveOperation = changes[0]._operation.toLowerCase();
546
+ if (saveOperation == 'copy') {
547
+ saveOperation = OperationMap.CLONE;
473
548
  }
474
- const saveOperation = action.payload.changes[0]._operation.toLowerCase();
475
- const msg = this.getMessage("snkDataUnit.saveInfo", action.payload.records[0], saveOperation);
549
+ if (this.canIgnoreOperationMessage(saveOperation))
550
+ return;
551
+ let msg = this.buildOperationMessage(saveOperation, affectedRecords);
476
552
  if (msg != undefined) {
477
553
  this.showSuccessMessage(msg);
478
554
  }
479
555
  }
556
+ canIgnoreOperationMessage(saveOperation) {
557
+ return this.ignoreSaveMessage && !this.isCloneOrInsertOperation(saveOperation);
558
+ }
559
+ isCloneOrInsertOperation(saveOperation) {
560
+ return [OperationMap.CLONE, OperationMap.INSERT].includes(saveOperation);
561
+ }
562
+ buildOperationMessage(saveOperation, records) {
563
+ if (this.isMultiplesUpdate(saveOperation, records)) {
564
+ return this.buildMultipleUpdateMessage(records);
565
+ }
566
+ return this.getMessage('snkDataUnit.saveInfo', records[0], saveOperation);
567
+ }
568
+ buildMultipleUpdateMessage(records, isCancel) {
569
+ /**
570
+ * FIXME: No futuro, precisamos pensar em um mecanismo para deixar as mensagens de feedback mais dinâmicas.
571
+ * Podemo ocorrer cenários onde temos mais de um registro selecionado e também cenários onde a chave primária
572
+ * de um registro se trata de uma chave composta.
573
+ */
574
+ const key = `snkDataUnit.${isCancel ? 'cancelInfo' : 'saveInfo'}`;
575
+ return this.getMessage(key, { records: records }, OperationMap.UPDATE_MULTIPLES);
576
+ }
577
+ isMultiplesUpdate(saveOperation, records) {
578
+ return saveOperation === OperationMap.UPDATE && records.length > 1;
579
+ }
480
580
  handleRecordsRemoved(action) {
481
581
  var _a, _b;
482
- const cachedRecords = action.payload.cachedRecords;
483
- let removeFinishMsg;
484
- if ((cachedRecords === null || cachedRecords === void 0 ? void 0 : cachedRecords.length) > 1) {
485
- removeFinishMsg = this.getMessage("snkDataUnit.removeAllInfo", { size: cachedRecords.length });
486
- }
487
- else {
488
- removeFinishMsg = this.getMessage("snkDataUnit.removeInfo", action.payload.cachedRecords[0]);
489
- }
582
+ let removeFinishMsg = this.buildRemoveFinishMessage(action);
490
583
  if (removeFinishMsg != undefined) {
491
584
  this.showSuccessMessage(removeFinishMsg);
492
585
  }
@@ -497,6 +590,14 @@ export class SnkDataUnit {
497
590
  this.dataUnit.gotoPage(page);
498
591
  }
499
592
  }
593
+ buildRemoveFinishMessage(action) {
594
+ const records = action.payload.records;
595
+ if (!records || !records.length)
596
+ return undefined;
597
+ if ((records === null || records === void 0 ? void 0 : records.length) > 1)
598
+ return this.getMessage('snkDataUnit.removeAllInfo', { size: records.length });
599
+ return this.getMessage('snkDataUnit.removeInfo', records);
600
+ }
500
601
  /**
501
602
  * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
502
603
  * através de um pequeno modulo na estrutura da aplicação:
@@ -540,21 +641,30 @@ export class SnkDataUnit {
540
641
  return await this._application.getDataUnit(this.entityName, cacheName, null, this.configName, this.resourceID);
541
642
  }
542
643
  }
644
+ updateMetadataWithRMP() {
645
+ this.fillFieldsWithRmp(this.dataUnit.metadata);
646
+ this.fillFieldsWithRmPrecision(this.dataUnit.metadata);
647
+ const dataUnitUpdatedMetadata = this.handleDULinksOnMetadataLoaded(this.dataUnit.metadata);
648
+ this.dataUnit.metadata = dataUnitUpdatedMetadata;
649
+ }
543
650
  async loadDataUnit() {
544
- var _a;
651
+ var _a, _b;
545
652
  if (this.dataUnit == null && this._application && this.entityName) {
546
653
  this.dataUnit = await this.getDataUnitParentOrChild();
547
654
  }
548
655
  if (this.dataUnit) {
549
656
  this.dataUnit.pageSize = this.pageSize;
550
657
  this.dataUnit.unsubscribe(this._dataUnitObserver);
551
- this.dataUnit.addInterceptor(this);
552
658
  this.dataUnit.subscribe(this._dataUnitObserver);
553
- await this.dataUnit.loadMetadata();
554
- if ((_a = this.dataUnit.records) === null || _a === void 0 ? void 0 : _a.length) {
555
- this.getMetadataByRow(this.dataUnit);
659
+ if ((_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.metadata) {
660
+ this.updateMetadataWithRMP();
556
661
  }
557
- this.dataState = this.buildDataState();
662
+ this.dataUnit.addInterceptor(this);
663
+ if ((_b = this.dataUnit.records) === null || _b === void 0 ? void 0 : _b.length) {
664
+ const { records } = this.getMetadataByRow(this.dataUnit);
665
+ this.dataUnit.records = records;
666
+ }
667
+ this.dataState = await this.buildDataState();
558
668
  let resolver;
559
669
  while (resolver = this._onDataUnitResolve.pop()) {
560
670
  resolver(this.dataUnit);
@@ -1132,6 +1242,15 @@ export class SnkDataUnit {
1132
1242
  "methodName": "observeMessagesBuilder"
1133
1243
  }];
1134
1244
  }
1245
+ static get listeners() {
1246
+ return [{
1247
+ "name": "snkMasterFormConfigChange",
1248
+ "method": "onMasterFormConfigChange",
1249
+ "target": undefined,
1250
+ "capture": false,
1251
+ "passive": false
1252
+ }];
1253
+ }
1135
1254
  }
1136
1255
  class DataStateImpl {
1137
1256
  constructor(datastate) {
@@ -125,7 +125,7 @@ function buildNumber(item) {
125
125
  const variation = props.variation;
126
126
  if (variation === FilterNumberVariation.INTERVAL) {
127
127
  const { start, end } = value !== null && value !== void 0 ? value : { start: 0, end: 0 };
128
- if (start && end) {
128
+ if (!isNaN(start) && !isNaN(end)) {
129
129
  return {
130
130
  name: id,
131
131
  expression: props.intervalExpression.fullfill,
@@ -135,7 +135,7 @@ function buildNumber(item) {
135
135
  ]
136
136
  };
137
137
  }
138
- if (start) {
138
+ if (!isNaN(start)) {
139
139
  return {
140
140
  name: id,
141
141
  expression: props.intervalExpression.onlystart,
@@ -144,7 +144,7 @@ function buildNumber(item) {
144
144
  ]
145
145
  };
146
146
  }
147
- if (end) {
147
+ if (!isNaN(end)) {
148
148
  return {
149
149
  name: id,
150
150
  expression: props.intervalExpression.onlyend,
@@ -74,7 +74,7 @@ export class SnkFilterBinarySelect {
74
74
  }
75
75
  const [optOne, optTwo] = this.config.props.options;
76
76
  if (this.presentationMode === EPresentationMode.MODAL) {
77
- return (h(Host, null, h("div", { class: "ez-row ez-size-height--full" }, h("label", { class: "ez-text ez-title--small ez-title--primary ez-size-height--full ez-flex ez-flex--row ez-flex--align-items-center ez-col ez-col--sd-4" }, this.config.detailModal), h("div", { class: "ez-col ez-col--sd-4" }, h("ez-check", { ref: (ref) => this._checkOne = ref, id: `${this.config.id}_${optOne.name || "option1"}`, class: "sc-snk-filter-bar editor__ez-check", label: optOne.label, value: this.isSelected(optOne.name), compact: true })), h("div", { class: "ez-col ez-col--sd-4" }, h("ez-check", { ref: (ref) => this._checkTwo = ref, id: `${this.config.id}_${optTwo.name || "option2"}`, class: "sc-snk-filter-bar editor__ez-check", label: optTwo.label, value: this.isSelected(optTwo.name), compact: true })))));
77
+ return (h(Host, null, h("div", { class: "ez-row ez-size-height--full" }, h("label", { class: "ez-text ez-title--small ez-title--primary ez-size-height--full ez-flex ez-flex--row ez-flex--align-items-center ez-col ez-col--sd-4" }, this.config.detailModal), h("div", { class: "ez-col ez-col--sd-4" }, h("ez-check", { ref: (ref) => this._checkOne = ref, id: `${this.config.id}_${optOne.name || "option1"}`, class: "sc-snk-filter-bar editor__ez-check", label: optOne.label, value: this.isSelected(optOne.name) })), h("div", { class: "ez-col ez-col--sd-4" }, h("ez-check", { ref: (ref) => this._checkTwo = ref, id: `${this.config.id}_${optTwo.name || "option2"}`, class: "sc-snk-filter-bar editor__ez-check", label: optTwo.label, value: this.isSelected(optTwo.name) })))));
78
78
  }
79
79
  return (h(Host, null, h("ez-radio-button", { value: this._radioButtonValue }, h("ez-radio-button-option", { id: `${this.config.id}_${optOne.name || "option1"}`, class: "sc-snk-filter-bar editor__ez-check", label: optOne.label, value: optOne.name }), h("ez-radio-button-option", { id: `${this.config.id}_${optTwo.name || "option2"}`, class: "sc-snk-filter-bar editor__ez-check", label: optTwo.label, value: optTwo.name }), h("ez-radio-button-option", { id: `${this.config.id}_option3`, class: "sc-snk-filter-bar editor__ez-check", label: `${optOne.label} + ${optTwo.label}`, value: this._noOptionValue }))));
80
80
  }
@@ -19,7 +19,7 @@ export class SnkFilterCheckboxList {
19
19
  this.valueChanged.emit((_b = this.config) === null || _b === void 0 ? void 0 : _b.value);
20
20
  }
21
21
  renderOptions() {
22
- return this.optionsList.map(option => (h("ez-check", { label: option.label, compact: true, onEzChange: (event) => this.handleToggleCheck(option, event.detail), value: !!this.isChecked(option.name) })));
22
+ return this.optionsList.map(option => (h("ez-check", { label: option.label, onEzChange: (event) => this.handleToggleCheck(option, event.detail), value: !!this.isChecked(option.name) })));
23
23
  }
24
24
  isChecked(itemName) {
25
25
  var _a;
@@ -19,7 +19,7 @@ export class SnkFilterPeriod {
19
19
  if (this.getVariation() === FilterNumberVariation.INTERVAL) {
20
20
  const start = this._startInterval.value;
21
21
  const end = this._endInterval.value;
22
- this.value = (start || end ? { start, end } : undefined);
22
+ this.value = (!isNaN(start) || !isNaN(end) ? { start, end } : undefined);
23
23
  this.valueChanged.emit(this.value);
24
24
  return;
25
25
  }
@@ -3,14 +3,20 @@ import { h } from '@stencil/core';
3
3
  import FilterItemType from '../filter-item-type.enum';
4
4
  export class SnkFilterSearch {
5
5
  constructor() {
6
+ this._isSearchPlus = false;
6
7
  this.config = undefined;
7
8
  this.value = undefined;
8
9
  }
9
10
  /**
10
11
  * Emitido quando acontece a alteração de valor do componente snk-filter-search
11
12
  */
12
- ezChangeListener(_evt) {
13
- this.value = this._searchInput.value;
13
+ async ezChangeListener(_evt) {
14
+ if (this._isSearchPlus) {
15
+ this.value = await this._searchInput.getValueAsync();
16
+ }
17
+ else {
18
+ this.value = this._searchInput.value;
19
+ }
14
20
  this.valueChanged.emit(this.value);
15
21
  }
16
22
  componentDidLoad() {
@@ -18,10 +24,11 @@ export class SnkFilterSearch {
18
24
  ElementIDUtils.addIDInfo(this._element, 'filterContentEditor');
19
25
  }
20
26
  }
21
- doSearch(mode, argument) {
27
+ doSearch(mode, argument, isSearchPlus = false) {
22
28
  const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
29
+ const loader = isSearchPlus ? application.executePreparedSearchPlus : application.executePreparedSearch;
23
30
  return new Promise((resolve, reject) => {
24
- application.executePreparedSearch(mode, argument, this.config.props.searchContext)
31
+ loader.bind(application)(mode, argument, this.config.props.searchContext)
25
32
  .then(result => {
26
33
  resolve(result);
27
34
  }).catch(reason => {
@@ -35,11 +42,17 @@ export class SnkFilterSearch {
35
42
  async show() {
36
43
  this._searchInput.setFocus();
37
44
  }
45
+ getInputItem() {
46
+ var _a;
47
+ this._isSearchPlus = ((_a = this.config.props) === null || _a === void 0 ? void 0 : _a["useSearchPlus"]) == true;
48
+ const TagName = this._isSearchPlus ? "ez-search-plus" : "ez-search";
49
+ return (h(TagName, { id: this.config.id, suppressEmptyOption: true, value: this.config.value, label: this.config.label, ref: ref => this._searchInput = ref, optionLoader: ({ mode, argument }) => this.doSearch(mode, argument, this._isSearchPlus) }));
50
+ }
38
51
  render() {
39
52
  if (!this.config || this.config.type !== FilterItemType.SEARCH) {
40
53
  return undefined;
41
54
  }
42
- return (h("ez-search", { id: this.config.id, suppressEmptyOption: true, value: this.config.value, label: this.config.label, ref: ref => this._searchInput = ref, optionLoader: ({ mode, argument }) => this.doSearch(mode, argument) }));
55
+ return this.getInputItem();
43
56
  }
44
57
  static get is() { return "snk-filter-search"; }
45
58
  static get properties() {
@@ -18,10 +18,11 @@ export class SnkFilterText {
18
18
  }
19
19
  }
20
20
  render() {
21
+ var _a;
21
22
  if (!this.config) {
22
23
  return undefined;
23
24
  }
24
- return (h("ez-text-input", { id: this.config.id, ref: ref => this._textInputElement = ref, label: this.config.label, value: this.config.value }));
25
+ return (h("ez-text-input", { id: this.config.id, ref: ref => this._textInputElement = ref, label: this.config.label, value: this.config.value, mask: (_a = this.config) === null || _a === void 0 ? void 0 : _a.mask, cleanValueMask: true }));
25
26
  }
26
27
  static get is() { return "snk-filter-text"; }
27
28
  static get properties() {
@@ -48,6 +48,7 @@
48
48
  .SnkFilterPersonalized_list-actions {
49
49
  display: none;
50
50
  align-items: center;
51
+ gap: var(--space--3xs);
51
52
  }
52
53
 
53
54
  .SnkFilterPersonalized_list-item--modal:hover .SnkFilterPersonalized_list-actions {
@@ -64,3 +65,15 @@
64
65
  .SnkFilterPersonalized_list-item--chip :first-of-type {
65
66
  gap: var(--space--3xs);
66
67
  }
68
+
69
+ .SnkFilterPersonalized_list-icon {
70
+ --ez-icon--color: var(--title--primary, #2B3A54);
71
+ cursor: pointer;
72
+ }
73
+
74
+ .SnkFilterPersonalized_list-icon:hover {
75
+ outline: none;
76
+ color: var(--color--primary-600, #007a5a);
77
+ fill: var(--color--primary-600, #007a5a);
78
+ --ez-icon--color: var(--color--primary-600, #007a5a);
79
+ }
@@ -39,15 +39,15 @@ export class SnkFilterPersonalized {
39
39
  }
40
40
  getItemContent(item) {
41
41
  var _a, _b;
42
- const CheckboxElement = () => (h("ez-check", Object.assign({ class: "SnkFilterPersonalized_checkbox", id: `param_${item.id}`, key: item.id, compact: true, value: item.visible, label: item.label, onEzChange: ({ detail: visible }) => this.handleItemChange.bind(this)(visible, item.id) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`checkboxFilter_${item.id}`)}` })));
42
+ const CheckboxElement = () => (h("ez-check", Object.assign({ class: "SnkFilterPersonalized_checkbox", id: `param_${item.id}`, key: item.id, value: item.visible, label: item.label, onEzChange: ({ detail: visible }) => this.handleItemChange.bind(this)(visible, item.id) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`checkboxFilter_${item.id}`)}` })));
43
43
  const isVariable = !!((_b = (_a = item.props) === null || _a === void 0 ? void 0 : _a.personalizedFilter) === null || _b === void 0 ? void 0 : _b.parameters.length);
44
- return (h("div", { class: `${!this.isModalMode() ? "SnkFilterPersonalized_list-item--chip" : ""}` }, h("li", { class: `${this.isModalMode() ? "SnkFilterPersonalized_list-item--modal" : ""}` }, h("div", { class: "ez-flex ez-flex--align-items-center ez-margin-right--small ez-size-width--full" }, h(CheckboxElement, null), this.buildModalListActions(item, isVariable))), (item.visible && isVariable) && (h("div", { class: "ez-row ez-padding--small" }, this.getFormField(item)))));
44
+ return (h("div", { class: `${!this.isModalMode() ? "SnkFilterPersonalized_list-item--chip" : ""}` }, h("li", { class: `${this.isModalMode() ? "SnkFilterPersonalized_list-item--modal" : ""}` }, h("div", { class: "ez-flex ez-flex--align-items-center ez-flex--justify-between ez-size-width--full" }, h(CheckboxElement, null), this.buildModalListActions(item, isVariable))), (item.visible && isVariable) && (h("div", { class: "ez-row ez-padding--small" }, this.getFormField(item)))));
45
45
  }
46
46
  buildModalListActions(item, isVariable) {
47
47
  if (!this.isModalMode())
48
48
  return;
49
49
  return (this.isModalMode() ?
50
- h("div", { class: "SnkFilterPersonalized_list-actions" }, h("ez-button", { size: "small", mode: "icon", iconName: "edit", title: this.getMessage('snkPersonalizedFilter.listActions.edit'), onClick: () => this.editFilter.emit(item.id) }), h("ez-button", { size: "small", mode: "icon", iconName: "delete", title: this.getMessage('snkPersonalizedFilter.listActions.delete'), onClick: this.handleDeleteFilter.bind(this, item) }))
50
+ h("div", { class: "SnkFilterPersonalized_list-actions" }, h("ez-icon", { class: 'SnkFilterPersonalized_list-icon', iconName: "edit", title: this.getMessage('snkPersonalizedFilter.listActions.edit'), onClick: () => this.editFilter.emit(item.id) }), h("ez-icon", { class: 'SnkFilterPersonalized_list-icon', iconName: "delete", title: this.getMessage('snkPersonalizedFilter.listActions.delete'), onClick: this.handleDeleteFilter.bind(this, item) }))
51
51
  :
52
52
  isVariable && (h("ez-badge", Object.assign({ class: "ez-badge--warning-subtle ez-margin-right--small", label: this.getMessage('snkPersonalizedFilter.info.badgeVariable'), size: "medium" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo(`variableBadge_${item.id}`)}` }))));
53
53
  }
@@ -0,0 +1,8 @@
1
+ var FilterItemTypeMask;
2
+ (function (FilterItemTypeMask) {
3
+ FilterItemTypeMask["CEP"] = "#####-###";
4
+ FilterItemTypeMask["TELEFONE"] = "(##) ####-####";
5
+ FilterItemTypeMask["CPF"] = "###.###.###-##";
6
+ FilterItemTypeMask["CNPJ"] = "##.###.###/####-##";
7
+ })(FilterItemTypeMask || (FilterItemTypeMask = {}));
8
+ export default FilterItemTypeMask;
@@ -1,4 +1,4 @@
1
- import { ElementIDUtils, FloatingManager, DateUtils } from '@sankhyalabs/core';
1
+ import { ElementIDUtils, FloatingManager, DateUtils, MaskFormatter } from '@sankhyalabs/core';
2
2
  import { h, Host } from '@stencil/core';
3
3
  import FilterItemType from './filter-item-type.enum';
4
4
  import { FilterNumberVariation } from './editors/enum/filterNumberVariation';
@@ -24,9 +24,11 @@ export class SnkFilterItem {
24
24
  */
25
25
  async showUp(open = false) {
26
26
  return new Promise(resolve => {
27
+ var _a;
27
28
  this._filterItemElement.scrollIntoView({ behavior: "auto", block: "nearest", inline: "nearest" });
28
29
  if (open) {
29
30
  this._closeCallback = resolve;
31
+ (_a = this._chipElement) === null || _a === void 0 ? void 0 : _a.blur();
30
32
  window.requestAnimationFrame(() => {
31
33
  this._floatingID = FloatingManager.float(this._popover, this._popoverContainer, this.getFloatOptions());
32
34
  this._popover.show();
@@ -201,16 +203,20 @@ export class SnkFilterItem {
201
203
  }
202
204
  if (type === FilterItemType.NUMBER && props.variation === FilterNumberVariation.INTERVAL) {
203
205
  const { start, end } = value;
204
- if (start && end) {
206
+ if (!isNaN(start) && !isNaN(end)) {
205
207
  return this.getMessage('snkFilterBar.fullIntervalTooltip', { LABEL: label, START_LABEL: start, END_LABEL: end });
206
208
  }
207
- if (start) {
209
+ if (!isNaN(start)) {
208
210
  return `${label}: ${this.getMessage('snkFilterBar.onlyStartToltip')} ${Number(start)}`;
209
211
  }
210
- if (end) {
212
+ if (!isNaN(end)) {
211
213
  return `${label}: ${this.getMessage('snkFilterBar.onlyEndToltip')} ${Number(end)}`;
212
214
  }
213
215
  }
216
+ if (this.config.mask) {
217
+ const _maskFormatter = new MaskFormatter(this.config.mask);
218
+ return `${label}: ${_maskFormatter.format(value)}`;
219
+ }
214
220
  return `${label}: ${value}`;
215
221
  }
216
222
  return label;
@@ -24,7 +24,7 @@ ez-modal {
24
24
 
25
25
  .snk-filter-modal__rendered-items {
26
26
  max-height: 760px;
27
- overflow-x: clip;
27
+ overflow-x: hidden;
28
28
  overflow-y: auto;
29
29
  }
30
30
 
@@ -144,7 +144,9 @@ export class SnkFilterModal {
144
144
  this.filters = ObjectUtils.copy(filterListCopy);
145
145
  return;
146
146
  }
147
- this.filters.find(filter => filter.id === filterItem.id).value = undefined;
147
+ const filter = this.filters.find(filter => filter.id === filterItem.id);
148
+ filter.value = undefined;
149
+ this.filters = ObjectUtils.copy(this.filters);
148
150
  }
149
151
  uncheckFilterValues(valueList) {
150
152
  valueList.forEach(value => {
@@ -18,7 +18,7 @@
18
18
  font-family: var(--font-pattern, Arial);
19
19
  font-weight: var(--text-weight--large, 600);
20
20
  color: var(--color--title-primary, #2B3A54);
21
- margin-top: 8px;
21
+ margin-top: 12px;
22
22
  }
23
23
 
24
24
  :host([data-mode="hidden"]) {
@@ -99,13 +99,9 @@
99
99
  margin-bottom: var(--space--small);
100
100
  }
101
101
 
102
- .snk-filter-bar__scroller {
103
- height: calc(100% + var(--space-extra-small, 3px));
104
- }
105
-
106
102
  .snk-filter-bar__filter-item-container {
107
103
  display: flex;
108
- align-self: center;
104
+ align-items: start;
109
105
  }
110
106
 
111
107
  .snk-filter-bar__scroller :first-child {