@sankhyalabs/sankhyablocks 8.16.0-dev.12 → 8.16.0-dev.120

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 (641) hide show
  1. package/dist/cjs/ClientSideExporterProvider-0ce2bcd9.js +378 -0
  2. package/dist/cjs/{ConfigStorage-e49214c6.js → ConfigStorage-48ba265b.js} +47 -19
  3. package/dist/cjs/{DataFetcher-77729a93.js → DataFetcher-1afdb18e.js} +231 -84
  4. package/dist/cjs/FormConfigHelper-c664dbae.js +260 -0
  5. package/dist/cjs/{RecordIDUtils-3735135c.js → GetSelectedRecordsIDsInfo-bd50caf1.js} +10 -10
  6. package/dist/cjs/IFetchDataExporterParams-e78ec415.js +8 -0
  7. package/dist/cjs/ISave-c76e2c51.js +397 -0
  8. package/dist/cjs/{PersonalizedFilterUtils-0184ffbb.js → PersonalizedFilterUtils-7259cf65.js} +1 -1
  9. package/dist/cjs/{SnkFormConfigManager-beebf47a.js → SnkFormConfigManager-aa4631bd.js} +74 -17
  10. package/dist/cjs/{SnkMessageBuilder-cceebbae.js → SnkMessageBuilder-e3b7850b.js} +67 -30
  11. package/dist/cjs/{auth-fetcher-29bb791c.js → auth-fetcher-1687ac0a.js} +1 -1
  12. package/dist/cjs/config-header.cjs.entry.js +79 -0
  13. package/dist/cjs/configs-button.cjs.entry.js +61 -0
  14. package/dist/cjs/{constants-35ddd366.js → constants-6d82e405.js} +18 -38
  15. package/dist/cjs/{dataunit-fetcher-d4873076.js → dataunit-fetcher-a723f0dc.js} +225 -175
  16. package/dist/cjs/default-filters-a09bf82b.js +8 -0
  17. package/dist/cjs/field-config_2.cjs.entry.js +324 -0
  18. package/dist/cjs/fields-layout.cjs.entry.js +341 -0
  19. package/dist/cjs/fields-selector.cjs.entry.js +74 -0
  20. package/dist/cjs/{filter-type.enum-b14ce507.js → filter-type.enum-2bb46d2a.js} +1 -0
  21. package/dist/cjs/{form-config-fetcher-feb08214.js → form-config-fetcher-40d3f752.js} +56 -2
  22. package/dist/cjs/guides-configurator.cjs.entry.js +164 -0
  23. package/dist/cjs/{index-102ba62d.js → index-0ad2baeb.js} +4 -5
  24. package/dist/cjs/{index-f9e81701.js → index-1cf293c1.js} +46 -40
  25. package/dist/cjs/{index-c5771aba.js → index-62760a9c.js} +5 -0
  26. package/dist/cjs/{index-1dfc7a6e.js → index-e3e39724.js} +5 -0
  27. package/dist/cjs/loader.cjs.js +2 -2
  28. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +155 -0
  29. package/dist/cjs/sankhyablocks.cjs.js +2 -2
  30. package/dist/cjs/{snk-actions-button_4.cjs.entry.js → snk-actions-button_8.cjs.entry.js} +265 -47
  31. package/dist/cjs/snk-actions-form.cjs.entry.js +1 -1
  32. package/dist/cjs/snk-application.cjs.entry.js +472 -80
  33. package/dist/cjs/snk-attach.cjs.entry.js +93 -52
  34. package/dist/cjs/snk-client-confirm.cjs.entry.js +1 -1
  35. package/dist/cjs/snk-configurator.cjs.entry.js +11 -4
  36. package/dist/cjs/snk-crud.cjs.entry.js +60 -86
  37. package/dist/cjs/snk-custom-slot-elements.cjs.entry.js +1 -1
  38. package/dist/cjs/snk-data-exporter.cjs.entry.js +37 -29
  39. package/dist/cjs/{snk-data-unit-8af43aa3.js → snk-data-unit-3684c96e.js} +276 -38
  40. package/dist/cjs/snk-data-unit.cjs.entry.js +6 -6
  41. package/dist/cjs/snk-default-filter.cjs.entry.js +77 -0
  42. package/dist/cjs/snk-detail-view.cjs.entry.js +71 -19
  43. package/dist/cjs/snk-entity-list.cjs.entry.js +3 -8
  44. package/dist/cjs/snk-exporter-email-sender.cjs.entry.js +1 -1
  45. package/dist/cjs/snk-expression-group_2.cjs.entry.js +10 -8
  46. package/dist/cjs/snk-filter-advanced-mode_2.cjs.entry.js +5 -4
  47. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +1492 -0
  48. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +2 -2
  49. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +2 -2
  50. package/dist/cjs/snk-filter-detail.cjs.entry.js +3 -3
  51. package/dist/cjs/snk-filter-field-search_2.cjs.entry.js +3 -3
  52. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +5 -5
  53. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +1 -1
  54. package/dist/cjs/snk-filter-number.cjs.entry.js +2 -2
  55. package/dist/cjs/snk-filter-period.cjs.entry.js +1 -1
  56. package/dist/cjs/snk-filter-search.cjs.entry.js +19 -6
  57. package/dist/cjs/snk-filter-text.cjs.entry.js +3 -2
  58. package/dist/cjs/snk-form-summary.cjs.entry.js +1 -1
  59. package/dist/cjs/snk-form-view.cjs.entry.js +20 -8
  60. package/dist/cjs/snk-form_2.cjs.entry.js +433 -0
  61. package/dist/cjs/snk-grid.cjs.entry.js +136 -53
  62. package/dist/cjs/{snk-guides-viewer-aafc3073.js → snk-guides-viewer-edc0a00a.js} +151 -74
  63. package/dist/cjs/snk-guides-viewer.cjs.entry.js +14 -14
  64. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +5 -5
  65. package/dist/cjs/snk-personalized-filter.cjs.entry.js +55 -20
  66. package/dist/cjs/snk-pesquisa.cjs.entry.js +117 -32
  67. package/dist/cjs/snk-print-selector.cjs.entry.js +2 -2
  68. package/dist/cjs/snk-simple-bar.cjs.entry.js +2 -2
  69. package/dist/cjs/snk-simple-crud.cjs.entry.js +239 -201
  70. package/dist/cjs/snk-taskbar.cjs.entry.js +85 -45
  71. package/dist/cjs/sortable.esm-9a110bb7.js +2668 -0
  72. package/dist/cjs/{taskbar-elements-9ad1f9c0.js → taskbar-elements-3b74cd21.js} +14 -3
  73. package/dist/cjs/{field-search-f56aa7d6.js → taskbar-processor-2fba34a8.js} +5 -36
  74. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  75. package/dist/collection/collection-manifest.json +23 -43
  76. package/dist/collection/components/snk-actions-button/actions/index.js +16 -13
  77. package/dist/collection/components/snk-actions-button/interfaces/index.js +1 -0
  78. package/dist/collection/components/snk-actions-button/snk-actions-button.js +27 -26
  79. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +5 -2
  80. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +29 -0
  81. package/dist/collection/components/snk-application/request-listener/RequestListenerFactory.js +16 -0
  82. package/dist/collection/components/snk-application/request-listener/RequestListenerLoadingBar.js +52 -0
  83. package/dist/collection/components/snk-application/search-strategy/exec-prepared-search-plus.js +107 -0
  84. package/dist/collection/components/snk-application/snk-application.css +36 -0
  85. package/dist/collection/components/snk-application/snk-application.js +450 -72
  86. package/dist/collection/components/snk-attach/snk-attach.js +51 -16
  87. package/dist/collection/components/snk-attach/structure/builder/taskbar-builder.js +8 -4
  88. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +19 -18
  89. package/dist/collection/components/snk-configurator/snk-configurator.css +1 -1
  90. package/dist/collection/components/snk-configurator/snk-configurator.js +26 -1
  91. package/dist/collection/components/snk-crud/snk-crud.js +200 -76
  92. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.css +10 -1
  93. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +84 -6
  94. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +54 -7
  95. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +6 -6
  96. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +197 -81
  97. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -8
  98. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +9 -2
  99. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +41 -10
  100. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +18 -6
  101. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +1 -1
  102. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +10 -9
  103. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +4 -4
  104. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  105. package/dist/collection/components/snk-data-unit/MultipleUpdateHelper.js +128 -0
  106. package/dist/collection/components/snk-data-unit/snk-data-unit.js +156 -37
  107. package/dist/collection/components/snk-entity-list/snk-entity-list.js +2 -7
  108. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +4 -4
  109. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +1 -1
  110. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +1 -1
  111. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +1 -1
  112. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +18 -5
  113. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +2 -1
  114. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.css +13 -0
  115. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -3
  116. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.js +8 -0
  117. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +10 -4
  118. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +1 -1
  119. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +83 -13
  120. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-default-filter/snk-default-filter.css +34 -0
  121. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-default-filter/snk-default-filter.js +142 -0
  122. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +3 -6
  123. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +144 -45
  124. package/dist/collection/components/snk-filter-bar/types/default-filters.js +6 -0
  125. package/dist/collection/components/snk-filter-bar/types/filter-type.enum.js +1 -0
  126. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +4 -4
  127. package/dist/collection/components/snk-form/snk-form.js +2 -2
  128. package/dist/collection/components/snk-form-config/FormConfigHelper.js +245 -0
  129. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +74 -17
  130. package/dist/collection/components/snk-form-config/config-header/config-header.css +18 -0
  131. package/dist/collection/components/snk-form-config/config-header/config-header.js +236 -0
  132. package/dist/collection/components/snk-form-config/config-header/configs-button/configs-button.css +41 -0
  133. package/dist/collection/components/snk-form-config/config-header/configs-button/configs-button.js +170 -0
  134. package/dist/collection/components/snk-form-config/field-item/field-config/field-config.css +21 -0
  135. package/dist/collection/components/snk-form-config/field-item/field-config/field-config.js +408 -0
  136. package/dist/collection/components/snk-form-config/field-item/field-item.css +108 -0
  137. package/dist/collection/components/snk-form-config/field-item/field-item.js +206 -0
  138. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.css +133 -0
  139. package/dist/collection/components/snk-form-config/fields-layout/fields-layout.js +578 -0
  140. package/dist/collection/components/snk-form-config/fields-selector/fields-selector.css +38 -0
  141. package/dist/collection/components/snk-form-config/fields-selector/fields-selector.js +146 -0
  142. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.css +132 -0
  143. package/dist/collection/components/snk-form-config/guides-configurator/guides-configurator.js +317 -0
  144. package/dist/collection/components/snk-form-config/snk-form-config.css +17 -225
  145. package/dist/collection/components/snk-form-config/snk-form-config.js +288 -939
  146. package/dist/collection/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.js +2 -2
  147. package/dist/collection/components/snk-grid/snk-grid.css +9 -0
  148. package/dist/collection/components/snk-grid/snk-grid.js +307 -51
  149. package/dist/collection/components/snk-grid-config/snk-grid-config.css +1 -1
  150. package/dist/collection/components/snk-grid-config/snk-grid-config.js +2 -0
  151. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.css +3 -0
  152. package/dist/collection/components/snk-layout-form-config/snk-layout-form-config.js +73 -0
  153. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.css +78 -0
  154. package/dist/collection/components/snk-layout-form-config/snk-view-representation/snk-view-representation.js +57 -0
  155. package/dist/collection/components/snk-personalized-filter/interfaces/index.js +5 -0
  156. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +67 -13
  157. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.css +3 -0
  158. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.js +20 -1
  159. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.js +22 -3
  160. package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.js +20 -1
  161. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +9 -0
  162. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +226 -0
  163. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +28 -0
  164. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +208 -0
  165. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +99 -0
  166. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +35 -6
  167. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +181 -32
  168. package/dist/collection/components/snk-print-selector/snk-print-selector.js +1 -1
  169. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +1 -1
  170. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +1 -1
  171. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +361 -123
  172. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.css +22 -0
  173. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +181 -0
  174. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.css +13 -0
  175. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
  176. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -0
  177. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.css +0 -0
  178. package/dist/collection/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.js +220 -0
  179. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +5 -1
  180. package/dist/collection/components/snk-taskbar/snk-taskbar.js +145 -42
  181. package/dist/collection/lib/@types/index.js +5 -0
  182. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +11 -5
  183. package/dist/collection/lib/configs/ConfigStorage.js +16 -8
  184. package/dist/collection/lib/configs/LayoutFormConfig.js +25 -0
  185. package/dist/collection/lib/dataUnit/InMemoryLoader.js +12 -103
  186. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +11 -32
  187. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +44 -29
  188. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.js +7 -5
  189. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +59 -14
  190. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +21 -7
  191. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +5 -2
  192. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.js +108 -0
  193. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +23 -14
  194. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.js +6 -1
  195. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +59 -5
  196. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +7 -1
  197. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +29 -9
  198. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +133 -9
  199. package/dist/collection/lib/index.js +1 -0
  200. package/dist/collection/lib/message/SnkMessageBuilder.js +1 -0
  201. package/dist/collection/lib/message/resources/snk-crud.msg.js +1 -1
  202. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +28 -23
  203. package/dist/collection/lib/message/resources/snk-filter-bar.msg.js +6 -0
  204. package/dist/collection/lib/message/resources/snk-form.msg.js +16 -2
  205. package/dist/collection/lib/message/resources/snk-grid.msg.js +5 -1
  206. package/dist/collection/lib/message/resources/snk-personalized-filter.msg.js +6 -1
  207. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +2 -1
  208. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
  209. package/dist/collection/lib/utils/ContinuousInsertUtils.js +31 -0
  210. package/dist/collection/lib/utils/CrudUtils.js +25 -16
  211. package/dist/collection/{components/snk-data-exporter/utils/RecordIDUtils.js → lib/utils/GetSelectedRecordsIDsInfo.js} +9 -9
  212. package/dist/collection/lib/utils/constants.js +17 -1
  213. package/dist/collection/sw.js +46 -0
  214. package/dist/components/ConfigStorage.js +45 -17
  215. package/dist/components/ContinuousInsertUtils.js +416 -0
  216. package/dist/components/DataFetcher.js +231 -84
  217. package/dist/{esm/RecordIDUtils-87d02110.js → components/GetSelectedRecordsIDsInfo.js} +10 -10
  218. package/dist/components/ISave.js +391 -1
  219. package/dist/components/PersonalizedFilterUtils.js +6 -1
  220. package/dist/components/SnkFormConfigManager.js +72 -15
  221. package/dist/components/SnkMessageBuilder.js +67 -30
  222. package/dist/components/{snk-tab-config.d.ts → config-header.d.ts} +4 -4
  223. package/dist/components/config-header.js +6 -0
  224. package/dist/components/config-header2.js +103 -0
  225. package/dist/components/configs-button.d.ts +11 -0
  226. package/dist/components/configs-button.js +6 -0
  227. package/dist/components/configs-button2.js +76 -0
  228. package/dist/components/constants.js +18 -34
  229. package/dist/components/dataunit-fetcher.js +243 -190
  230. package/dist/components/field-config.d.ts +11 -0
  231. package/dist/components/field-config.js +6 -0
  232. package/dist/components/field-config2.js +525 -0
  233. package/dist/components/field-item.d.ts +11 -0
  234. package/dist/components/field-item.js +6 -0
  235. package/dist/components/field-item2.js +93 -0
  236. package/dist/components/fields-layout.d.ts +11 -0
  237. package/dist/components/fields-layout.js +6 -0
  238. package/dist/components/fields-layout2.js +370 -0
  239. package/dist/components/{snk-field-config.d.ts → fields-selector.d.ts} +4 -4
  240. package/dist/components/fields-selector.js +6 -0
  241. package/dist/components/fields-selector2.js +98 -0
  242. package/dist/components/form-config-fetcher.js +55 -1
  243. package/dist/components/guides-configurator.d.ts +11 -0
  244. package/dist/components/guides-configurator.js +6 -0
  245. package/dist/components/guides-configurator2.js +182 -0
  246. package/dist/components/index.d.ts +14 -3
  247. package/dist/components/index.js +14 -3
  248. package/dist/components/index2.js +3 -4
  249. package/dist/components/pesquisa-grid.d.ts +11 -0
  250. package/dist/components/pesquisa-grid.js +6 -0
  251. package/dist/components/pesquisa-grid2.js +102 -0
  252. package/dist/components/pesquisa-tree.d.ts +11 -0
  253. package/dist/components/pesquisa-tree.js +6 -0
  254. package/dist/components/pesquisa-tree2.js +91 -0
  255. package/dist/components/snk-actions-button2.js +44 -40
  256. package/dist/components/snk-application2.js +494 -77
  257. package/dist/components/snk-attach2.js +114 -73
  258. package/dist/components/snk-configurator2.js +23 -3
  259. package/dist/components/snk-crud.js +169 -139
  260. package/dist/components/snk-data-exporter2.js +35 -21
  261. package/dist/components/snk-data-unit2.js +275 -74
  262. package/dist/components/{snk-config-options.d.ts → snk-default-filter.d.ts} +4 -4
  263. package/dist/components/snk-default-filter.js +6 -0
  264. package/dist/components/snk-default-filter2.js +97 -0
  265. package/dist/components/snk-detail-view2.js +347 -165
  266. package/dist/components/snk-entity-list.js +2 -7
  267. package/dist/components/snk-expression-group2.js +4 -2
  268. package/dist/components/snk-expression-item2.js +5 -3
  269. package/dist/components/snk-filter-assistent-mode2.js +4 -2
  270. package/dist/components/snk-filter-bar2.js +97 -54
  271. package/dist/components/snk-filter-binary-select.js +1 -1
  272. package/dist/components/snk-filter-checkbox-list.js +1 -1
  273. package/dist/components/snk-filter-item2.js +10 -4
  274. package/dist/components/snk-filter-modal-item2.js +1 -0
  275. package/dist/components/snk-filter-modal.js +63 -10
  276. package/dist/components/snk-filter-number.js +1 -1
  277. package/dist/components/snk-filter-search.js +18 -5
  278. package/dist/components/snk-filter-text.js +2 -1
  279. package/dist/components/snk-form-config2.js +253 -928
  280. package/dist/components/snk-form-view2.js +22 -8
  281. package/dist/components/snk-form.js +35 -11
  282. package/dist/components/snk-grid-config2.js +3 -1
  283. package/dist/components/snk-grid2.js +173 -75
  284. package/dist/components/snk-layout-form-config.d.ts +11 -0
  285. package/dist/components/snk-layout-form-config.js +6 -0
  286. package/dist/components/snk-layout-form-config2.js +73 -0
  287. package/dist/components/snk-personalized-filter-editor.js +4 -4
  288. package/dist/components/snk-personalized-filter2.js +50 -14
  289. package/dist/components/snk-pesquisa2.js +132 -33
  290. package/dist/components/snk-print-selector.js +1 -1
  291. package/dist/components/snk-simple-bar2.js +1 -1
  292. package/dist/components/snk-simple-crud2.js +248 -203
  293. package/dist/components/snk-simple-form-config.d.ts +11 -0
  294. package/dist/components/snk-simple-form-config.js +6 -0
  295. package/dist/components/snk-simple-form-config2.js +121 -0
  296. package/dist/components/snk-taskbar2.js +109 -51
  297. package/dist/components/snk-view-representation.d.ts +11 -0
  298. package/dist/components/snk-view-representation.js +6 -0
  299. package/dist/components/snk-view-representation2.js +41 -0
  300. package/dist/components/sortable.esm.js +2666 -0
  301. package/dist/components/taskbar-actions-button2.js +2 -2
  302. package/dist/components/taskbar-split-button.d.ts +11 -0
  303. package/dist/components/taskbar-split-button.js +6 -0
  304. package/dist/components/taskbar-split-button2.js +87 -0
  305. package/dist/components/teste-pesquisa.js +13 -1
  306. package/dist/esm/ClientSideExporterProvider-3ed744fd.js +367 -0
  307. package/dist/esm/{ConfigStorage-e476378d.js → ConfigStorage-79b9e180.js} +47 -19
  308. package/dist/esm/{DataFetcher-773a3e4b.js → DataFetcher-88e56266.js} +231 -84
  309. package/dist/esm/FormConfigHelper-49fe72ca.js +248 -0
  310. package/dist/esm/GetSelectedRecordsIDsInfo-9fa41508.js +41 -0
  311. package/dist/esm/IFetchDataExporterParams-d73bed3d.js +8 -0
  312. package/dist/esm/ISave-5efafc97.js +394 -0
  313. package/dist/esm/{PersonalizedFilterUtils-e2b38ef7.js → PersonalizedFilterUtils-2db38ff2.js} +1 -1
  314. package/dist/esm/{SnkFormConfigManager-298cd647.js → SnkFormConfigManager-b4b93298.js} +74 -17
  315. package/dist/esm/{SnkMessageBuilder-ae87b754.js → SnkMessageBuilder-9c269caf.js} +67 -30
  316. package/dist/esm/{auth-fetcher-a411f73c.js → auth-fetcher-3510520e.js} +1 -1
  317. package/dist/esm/config-header.entry.js +75 -0
  318. package/dist/esm/configs-button.entry.js +57 -0
  319. package/dist/esm/{constants-8457af36.js → constants-7b422de0.js} +18 -34
  320. package/dist/esm/{dataunit-fetcher-3d2ec959.js → dataunit-fetcher-0e025732.js} +227 -174
  321. package/dist/esm/default-filters-50105e43.js +8 -0
  322. package/dist/esm/field-config_2.entry.js +319 -0
  323. package/dist/esm/fields-layout.entry.js +337 -0
  324. package/dist/esm/fields-selector.entry.js +70 -0
  325. package/dist/esm/{filter-type.enum-a80c1b6b.js → filter-type.enum-f6a8fe23.js} +1 -0
  326. package/dist/esm/{form-config-fetcher-e0382e5a.js → form-config-fetcher-fa208a6c.js} +56 -2
  327. package/dist/esm/guides-configurator.entry.js +160 -0
  328. package/dist/esm/{index-a7d3d3f1.js → index-479e1293.js} +46 -40
  329. package/dist/esm/{index-ae591a44.js → index-8acbae97.js} +6 -1
  330. package/dist/esm/{index-3aa4977a.js → index-b40568ff.js} +6 -1
  331. package/dist/esm/{index-bdf75557.js → index-b72af127.js} +4 -5
  332. package/dist/esm/loader.js +3 -3
  333. package/dist/esm/pesquisa-grid_2.entry.js +150 -0
  334. package/dist/esm/sankhyablocks.js +3 -3
  335. package/dist/esm/{snk-actions-button_4.entry.js → snk-actions-button_8.entry.js} +264 -50
  336. package/dist/esm/snk-actions-form.entry.js +1 -1
  337. package/dist/esm/snk-application.entry.js +472 -80
  338. package/dist/esm/snk-attach.entry.js +94 -53
  339. package/dist/esm/snk-client-confirm.entry.js +1 -1
  340. package/dist/esm/snk-configurator.entry.js +11 -4
  341. package/dist/esm/snk-crud.entry.js +61 -87
  342. package/dist/esm/snk-custom-slot-elements.entry.js +1 -1
  343. package/dist/esm/snk-data-exporter.entry.js +37 -29
  344. package/dist/esm/{snk-data-unit-008cb9aa.js → snk-data-unit-027bca56.js} +276 -38
  345. package/dist/esm/snk-data-unit.entry.js +6 -6
  346. package/dist/esm/snk-default-filter.entry.js +73 -0
  347. package/dist/esm/snk-detail-view.entry.js +72 -20
  348. package/dist/esm/snk-entity-list.entry.js +3 -8
  349. package/dist/esm/snk-exporter-email-sender.entry.js +1 -1
  350. package/dist/esm/snk-expression-group_2.entry.js +10 -8
  351. package/dist/esm/snk-filter-advanced-mode_2.entry.js +5 -4
  352. package/dist/esm/snk-filter-bar_4.entry.js +1485 -0
  353. package/dist/esm/snk-filter-binary-select.entry.js +2 -2
  354. package/dist/esm/snk-filter-checkbox-list.entry.js +2 -2
  355. package/dist/esm/snk-filter-detail.entry.js +3 -3
  356. package/dist/esm/snk-filter-field-search_2.entry.js +3 -3
  357. package/dist/esm/snk-filter-modal-item.entry.js +5 -5
  358. package/dist/esm/snk-filter-multi-select.entry.js +1 -1
  359. package/dist/esm/snk-filter-number.entry.js +2 -2
  360. package/dist/esm/snk-filter-period.entry.js +1 -1
  361. package/dist/esm/snk-filter-search.entry.js +19 -6
  362. package/dist/esm/snk-filter-text.entry.js +3 -2
  363. package/dist/esm/snk-form-summary.entry.js +1 -1
  364. package/dist/esm/snk-form-view.entry.js +20 -8
  365. package/dist/esm/snk-form_2.entry.js +428 -0
  366. package/dist/esm/snk-grid.entry.js +129 -46
  367. package/dist/esm/{snk-guides-viewer-62124f3d.js → snk-guides-viewer-32f3d3ab.js} +152 -75
  368. package/dist/esm/snk-guides-viewer.entry.js +14 -14
  369. package/dist/esm/snk-personalized-filter-editor.entry.js +5 -5
  370. package/dist/esm/snk-personalized-filter.entry.js +55 -20
  371. package/dist/esm/snk-pesquisa.entry.js +117 -32
  372. package/dist/esm/snk-print-selector.entry.js +2 -2
  373. package/dist/esm/snk-simple-bar.entry.js +2 -2
  374. package/dist/esm/snk-simple-crud.entry.js +227 -189
  375. package/dist/esm/snk-taskbar.entry.js +86 -46
  376. package/dist/esm/sortable.esm-842f85a3.js +2666 -0
  377. package/dist/esm/{taskbar-elements-d59867f1.js → taskbar-elements-171476d4.js} +14 -3
  378. package/dist/esm/{field-search-efbe307f.js → taskbar-processor-3436124c.js} +6 -35
  379. package/dist/esm/teste-pesquisa.entry.js +1 -1
  380. package/dist/sankhyablocks/p-0024d3fd.entry.js +1 -0
  381. package/dist/sankhyablocks/p-09e60995.entry.js +11 -0
  382. package/dist/sankhyablocks/p-0cb295c1.entry.js +1 -0
  383. package/dist/sankhyablocks/p-0f3698af.js +1 -0
  384. package/dist/sankhyablocks/p-1456d7cb.entry.js +1 -0
  385. package/dist/sankhyablocks/{p-9531fd46.entry.js → p-180716b2.entry.js} +1 -1
  386. package/dist/sankhyablocks/p-19156e59.entry.js +1 -0
  387. package/dist/sankhyablocks/p-1a0caadb.js +1 -0
  388. package/dist/sankhyablocks/p-21107f0d.entry.js +1 -0
  389. package/dist/sankhyablocks/{p-118e769b.entry.js → p-27482793.entry.js} +1 -1
  390. package/dist/sankhyablocks/p-2bde486e.js +1 -0
  391. package/dist/sankhyablocks/{p-26b0ce3e.entry.js → p-2fdac5e6.entry.js} +1 -1
  392. package/dist/sankhyablocks/p-349d1968.entry.js +1 -0
  393. package/dist/sankhyablocks/p-35e73c5d.js +1 -0
  394. package/dist/sankhyablocks/p-398cdd67.entry.js +1 -0
  395. package/dist/sankhyablocks/p-3a48bff3.entry.js +1 -0
  396. package/dist/sankhyablocks/{p-72fc257b.entry.js → p-3d41f5a8.entry.js} +1 -1
  397. package/dist/sankhyablocks/p-3f24c9b2.js +1 -0
  398. package/dist/sankhyablocks/{p-8002dcd0.entry.js → p-471b34f4.entry.js} +1 -1
  399. package/dist/sankhyablocks/{p-7e2ded86.entry.js → p-49d968e2.entry.js} +1 -1
  400. package/dist/sankhyablocks/p-4d2ff2fb.entry.js +1 -0
  401. package/dist/sankhyablocks/p-51833248.js +7 -0
  402. package/dist/sankhyablocks/p-601b252b.js +26 -0
  403. package/dist/sankhyablocks/p-60dd1d27.entry.js +1 -0
  404. package/dist/sankhyablocks/p-6416975c.js +56 -0
  405. package/dist/sankhyablocks/p-65c5d430.entry.js +1 -0
  406. package/dist/sankhyablocks/{p-21a81901.entry.js → p-667cab42.entry.js} +1 -1
  407. package/dist/sankhyablocks/p-67d6d0c8.entry.js +1 -0
  408. package/dist/sankhyablocks/p-6a4b21dd.js +1 -0
  409. package/dist/sankhyablocks/p-6dd38d7b.js +6 -0
  410. package/dist/sankhyablocks/p-71a05822.entry.js +1 -0
  411. package/dist/sankhyablocks/p-72c8c847.entry.js +1 -0
  412. package/dist/sankhyablocks/{p-0cd3c0a9.js → p-73285a8a.js} +1 -1
  413. package/dist/sankhyablocks/{p-ac8d1cd6.entry.js → p-7345782c.entry.js} +1 -1
  414. package/dist/sankhyablocks/p-763b04fa.js +1 -0
  415. package/dist/sankhyablocks/p-7993b2e3.js +60 -0
  416. package/dist/sankhyablocks/p-7dd49d15.js +1 -0
  417. package/dist/sankhyablocks/p-7de79adf.js +1 -0
  418. package/dist/sankhyablocks/p-7e250432.entry.js +1 -0
  419. package/dist/sankhyablocks/p-83c100f2.entry.js +1 -0
  420. package/dist/sankhyablocks/p-84345e7a.js +1 -0
  421. package/dist/sankhyablocks/p-86bd4478.entry.js +1 -0
  422. package/dist/sankhyablocks/p-8f3f2306.js +1 -0
  423. package/dist/sankhyablocks/p-9019a32f.js +1 -0
  424. package/dist/sankhyablocks/{p-54a5d52a.entry.js → p-90805683.entry.js} +1 -1
  425. package/dist/sankhyablocks/p-91a9abb6.entry.js +1 -0
  426. package/dist/sankhyablocks/p-9751c42f.entry.js +1 -0
  427. package/dist/sankhyablocks/{p-057fad05.js → p-988afe78.js} +1 -1
  428. package/dist/sankhyablocks/{p-16a1dd18.entry.js → p-9a63f3f7.entry.js} +1 -1
  429. package/dist/sankhyablocks/p-9ad3557c.entry.js +1 -0
  430. package/dist/sankhyablocks/p-9fd87bfd.entry.js +1 -0
  431. package/dist/sankhyablocks/p-a06bf7b9.entry.js +1 -0
  432. package/dist/sankhyablocks/p-a349689a.js +1 -0
  433. package/dist/sankhyablocks/p-a5bb2f93.entry.js +1 -0
  434. package/dist/sankhyablocks/p-a6513fcb.js +1 -0
  435. package/dist/sankhyablocks/{p-41f8bfa3.entry.js → p-a76e6d51.entry.js} +1 -1
  436. package/dist/sankhyablocks/p-b568c1d4.js +1 -0
  437. package/dist/sankhyablocks/p-bd665460.entry.js +1 -0
  438. package/dist/sankhyablocks/p-c3324d79.entry.js +1 -0
  439. package/dist/sankhyablocks/{p-bf2acf72.entry.js → p-c6a8a8bc.entry.js} +1 -1
  440. package/dist/sankhyablocks/{p-9dfda04a.entry.js → p-c926cf6b.entry.js} +1 -1
  441. package/dist/sankhyablocks/p-cfd0a4c6.entry.js +1 -0
  442. package/dist/sankhyablocks/p-d67526b6.entry.js +1 -0
  443. package/dist/sankhyablocks/{p-d2d301a6.js → p-d8d8169b.js} +1 -1
  444. package/dist/sankhyablocks/p-d9491f6f.entry.js +1 -0
  445. package/dist/sankhyablocks/p-dff65083.entry.js +1 -0
  446. package/dist/sankhyablocks/p-e3521eae.entry.js +1 -0
  447. package/dist/sankhyablocks/p-e7cccc45.entry.js +1 -0
  448. package/dist/sankhyablocks/{p-33718dfc.entry.js → p-e824d565.entry.js} +1 -1
  449. package/dist/sankhyablocks/p-fbba7e3d.js +1 -0
  450. package/dist/sankhyablocks/p-fc0b609e.js +1 -0
  451. package/dist/sankhyablocks/p-ff7060bc.entry.js +1 -0
  452. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  453. package/dist/types/components/snk-actions-button/actions/index.d.ts +1 -0
  454. package/dist/types/components/snk-actions-button/interfaces/index.d.ts +3 -0
  455. package/dist/types/components/snk-actions-button/snk-actions-button.d.ts +3 -2
  456. package/dist/types/components/snk-application/request-listener/DebouncedRequestListener.d.ts +11 -0
  457. package/dist/types/components/snk-application/request-listener/RequestListenerFactory.d.ts +12 -0
  458. package/dist/types/components/snk-application/request-listener/RequestListenerLoadingBar.d.ts +13 -0
  459. package/dist/types/components/snk-application/search-strategy/exec-prepared-search-plus.d.ts +5 -0
  460. package/dist/types/components/snk-application/snk-application.d.ts +55 -16
  461. package/dist/types/components/snk-attach/snk-attach.d.ts +2 -0
  462. package/dist/types/components/snk-configurator/snk-configurator.d.ts +6 -0
  463. package/dist/types/components/snk-crud/snk-crud.d.ts +34 -3
  464. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +17 -0
  465. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +11 -1
  466. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +26 -7
  467. package/dist/types/components/snk-data-exporter/data/export-result.d.ts +2 -1
  468. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  469. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +9 -1
  470. package/dist/types/components/snk-data-exporter/interfaces/IRecordID.d.ts +1 -0
  471. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +3 -1
  472. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +3 -3
  473. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  474. package/dist/types/components/snk-data-unit/MultipleUpdateHelper.d.ts +9 -0
  475. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +19 -0
  476. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +5 -3
  477. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type-mask.enum.d.ts +7 -0
  478. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +2 -0
  479. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +16 -4
  480. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-default-filter/snk-default-filter.d.ts +27 -0
  481. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +19 -4
  482. package/dist/types/components/snk-filter-bar/types/default-filters.d.ts +5 -0
  483. package/dist/types/components/snk-filter-bar/types/filter-type.enum.d.ts +2 -1
  484. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -3
  485. package/dist/types/components/snk-form-config/FormConfigHelper.d.ts +31 -0
  486. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +10 -5
  487. package/dist/types/components/snk-form-config/config-header/config-header.d.ts +23 -0
  488. package/dist/types/components/snk-form-config/config-header/configs-button/configs-button.d.ts +19 -0
  489. package/dist/types/components/snk-form-config/field-item/field-config/field-config.d.ts +56 -0
  490. package/dist/types/components/snk-form-config/fields-layout/fields-layout.d.ts +63 -0
  491. package/dist/types/components/snk-form-config/fields-selector/fields-selector.d.ts +18 -0
  492. package/dist/types/components/snk-form-config/guides-configurator/guides-configurator.d.ts +42 -0
  493. package/dist/types/components/snk-form-config/snk-form-config.d.ts +53 -118
  494. package/dist/types/components/snk-grid/filtercolumn/SnkMultiSelectionListDataSource.d.ts +2 -1
  495. package/dist/types/components/snk-grid/snk-grid.d.ts +53 -5
  496. package/dist/types/components/snk-grid-config/snk-grid-config.d.ts +1 -0
  497. package/dist/types/components/snk-layout-form-config/snk-layout-form-config.d.ts +15 -0
  498. package/dist/types/components/snk-layout-form-config/snk-view-representation/snk-view-representation.d.ts +10 -0
  499. package/dist/types/components/snk-personalized-filter/interfaces/index.d.ts +4 -0
  500. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +7 -1
  501. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-group/snk-expression-group.d.ts +4 -0
  502. package/dist/types/components/snk-personalized-filter/subcomponents/snk-expression-item/snk-expression-item.d.ts +4 -0
  503. package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-assistent-mode/snk-filter-assistent-mode.d.ts +4 -0
  504. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +44 -0
  505. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +33 -0
  506. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +24 -0
  507. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +36 -1
  508. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +55 -15
  509. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +34 -0
  510. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
  511. package/dist/types/components/snk-taskbar/elements/taskbar-split-button/taskbar-split-button.d.ts +44 -0
  512. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -0
  513. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +18 -0
  514. package/dist/types/components.d.ts +902 -213
  515. package/dist/types/lib/@types/index.d.ts +4 -0
  516. package/dist/types/lib/configs/ConfigStorage.d.ts +4 -2
  517. package/dist/types/lib/configs/LayoutFormConfig.d.ts +11 -0
  518. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +4 -11
  519. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +9 -2
  520. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +2 -2
  521. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  522. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/anexo-sistema-fetcher.d.ts +3 -2
  523. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +9 -1
  524. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +4 -0
  525. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -1
  526. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/helpers/DataUnitDataLoaderHelper.d.ts +6 -0
  527. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/ILoadingInfo.d.ts +4 -0
  528. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +3 -3
  529. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +6 -2
  530. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +14 -2
  531. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  532. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +8 -4
  533. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +21 -2
  534. package/dist/types/lib/index.d.ts +1 -0
  535. package/dist/types/lib/message/SnkMessageBuilder.d.ts +2 -1
  536. package/dist/types/lib/utils/ContinuousInsertUtils.d.ts +10 -0
  537. package/dist/types/lib/utils/CrudUtils.d.ts +1 -0
  538. package/dist/types/lib/utils/GetSelectedRecordsIDsInfo.d.ts +3 -0
  539. package/dist/types/lib/utils/constants.d.ts +14 -0
  540. package/package.json +10 -7
  541. package/react/components.d.ts +14 -3
  542. package/react/components.js +14 -3
  543. package/react/components.js.map +1 -1
  544. package/dist/cjs/IExporterProvider-10b7fed5.js +0 -230
  545. package/dist/cjs/ISave-e91b70a7.js +0 -9
  546. package/dist/cjs/Sortable-fb1c4cbb.js +0 -2853
  547. package/dist/cjs/pesquisa-fetcher-a1d0353f.js +0 -166
  548. package/dist/cjs/snk-config-options.cjs.entry.js +0 -239
  549. package/dist/cjs/snk-field-config.cjs.entry.js +0 -60
  550. package/dist/cjs/snk-filter-bar.cjs.entry.js +0 -714
  551. package/dist/cjs/snk-filter-item.cjs.entry.js +0 -312
  552. package/dist/cjs/snk-filter-list.cjs.entry.js +0 -152
  553. package/dist/cjs/snk-filter-modal.cjs.entry.js +0 -249
  554. package/dist/cjs/snk-form-config.cjs.entry.js +0 -1002
  555. package/dist/cjs/snk-form.cjs.entry.js +0 -143
  556. package/dist/cjs/snk-tab-config.cjs.entry.js +0 -332
  557. package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.css +0 -16
  558. package/dist/collection/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.js +0 -344
  559. package/dist/collection/components/snk-form-config/subcomponents/snk-field-config/snk-field-config.css +0 -219
  560. package/dist/collection/components/snk-form-config/subcomponents/snk-field-config/snk-field-config.js +0 -184
  561. package/dist/collection/components/snk-form-config/subcomponents/snk-tab-config/snk-tab-config.css +0 -323
  562. package/dist/collection/components/snk-form-config/subcomponents/snk-tab-config/snk-tab-config.js +0 -527
  563. package/dist/collection/components/snk-taskbar/subcomponents/field-search.js +0 -31
  564. package/dist/components/IExporterProvider.js +0 -298
  565. package/dist/components/pesquisa-fetcher.js +0 -164
  566. package/dist/components/snk-config-options.js +0 -6
  567. package/dist/components/snk-config-options2.js +0 -255
  568. package/dist/components/snk-field-config.js +0 -6
  569. package/dist/components/snk-field-config2.js +0 -76
  570. package/dist/components/snk-tab-config.js +0 -6
  571. package/dist/components/snk-tab-config2.js +0 -3202
  572. package/dist/esm/IExporterProvider-d597f27d.js +0 -221
  573. package/dist/esm/ISave-d8c8bc59.js +0 -9
  574. package/dist/esm/Sortable-83960219.js +0 -2851
  575. package/dist/esm/pesquisa-fetcher-a87445a0.js +0 -164
  576. package/dist/esm/snk-config-options.entry.js +0 -235
  577. package/dist/esm/snk-field-config.entry.js +0 -56
  578. package/dist/esm/snk-filter-bar.entry.js +0 -710
  579. package/dist/esm/snk-filter-item.entry.js +0 -308
  580. package/dist/esm/snk-filter-list.entry.js +0 -148
  581. package/dist/esm/snk-filter-modal.entry.js +0 -245
  582. package/dist/esm/snk-form-config.entry.js +0 -998
  583. package/dist/esm/snk-form.entry.js +0 -139
  584. package/dist/esm/snk-tab-config.entry.js +0 -328
  585. package/dist/sankhyablocks/p-01ba23cd.entry.js +0 -1
  586. package/dist/sankhyablocks/p-091ce761.js +0 -60
  587. package/dist/sankhyablocks/p-162b9a59.entry.js +0 -11
  588. package/dist/sankhyablocks/p-181975f1.js +0 -26
  589. package/dist/sankhyablocks/p-1db45d26.entry.js +0 -1
  590. package/dist/sankhyablocks/p-21749402.js +0 -1
  591. package/dist/sankhyablocks/p-25f1fc39.js +0 -6
  592. package/dist/sankhyablocks/p-2e9c764c.entry.js +0 -1
  593. package/dist/sankhyablocks/p-30cf616e.js +0 -1
  594. package/dist/sankhyablocks/p-3287a6cc.js +0 -56
  595. package/dist/sankhyablocks/p-3ab6df3d.entry.js +0 -1
  596. package/dist/sankhyablocks/p-3b60db06.entry.js +0 -1
  597. package/dist/sankhyablocks/p-3c50e9d4.entry.js +0 -1
  598. package/dist/sankhyablocks/p-421bec84.entry.js +0 -1
  599. package/dist/sankhyablocks/p-42f7b05d.entry.js +0 -1
  600. package/dist/sankhyablocks/p-51999ab5.entry.js +0 -1
  601. package/dist/sankhyablocks/p-594bc21d.js +0 -1
  602. package/dist/sankhyablocks/p-5f016aed.js +0 -1
  603. package/dist/sankhyablocks/p-62f34e6f.entry.js +0 -1
  604. package/dist/sankhyablocks/p-65f8c11c.entry.js +0 -1
  605. package/dist/sankhyablocks/p-684a2590.entry.js +0 -1
  606. package/dist/sankhyablocks/p-6dc031de.js +0 -1
  607. package/dist/sankhyablocks/p-70001ac1.js +0 -1
  608. package/dist/sankhyablocks/p-70a4af56.entry.js +0 -1
  609. package/dist/sankhyablocks/p-74c665d5.entry.js +0 -1
  610. package/dist/sankhyablocks/p-7663f597.entry.js +0 -1
  611. package/dist/sankhyablocks/p-76a65660.js +0 -1
  612. package/dist/sankhyablocks/p-7c4aabe2.js +0 -1
  613. package/dist/sankhyablocks/p-7e7a7473.js +0 -1
  614. package/dist/sankhyablocks/p-88aa931b.entry.js +0 -1
  615. package/dist/sankhyablocks/p-89451692.entry.js +0 -1
  616. package/dist/sankhyablocks/p-8eb67fa4.entry.js +0 -1
  617. package/dist/sankhyablocks/p-933c0c0b.js +0 -1
  618. package/dist/sankhyablocks/p-939e15d3.entry.js +0 -1
  619. package/dist/sankhyablocks/p-95df461f.entry.js +0 -1
  620. package/dist/sankhyablocks/p-96a89d58.entry.js +0 -1
  621. package/dist/sankhyablocks/p-9863d682.js +0 -1
  622. package/dist/sankhyablocks/p-9d3a025a.entry.js +0 -1
  623. package/dist/sankhyablocks/p-aaa3ee68.entry.js +0 -1
  624. package/dist/sankhyablocks/p-b0ef4383.js +0 -1
  625. package/dist/sankhyablocks/p-b11aa1e0.entry.js +0 -1
  626. package/dist/sankhyablocks/p-bd008859.entry.js +0 -1
  627. package/dist/sankhyablocks/p-c2495304.js +0 -1
  628. package/dist/sankhyablocks/p-c8622597.entry.js +0 -1
  629. package/dist/sankhyablocks/p-cc935517.js +0 -1
  630. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  631. package/dist/sankhyablocks/p-d3f53df2.entry.js +0 -1
  632. package/dist/sankhyablocks/p-d65d98ed.entry.js +0 -1
  633. package/dist/sankhyablocks/p-d9804798.js +0 -1
  634. package/dist/sankhyablocks/p-e8763234.entry.js +0 -1
  635. package/dist/sankhyablocks/p-f2809746.entry.js +0 -1
  636. package/dist/sankhyablocks/p-fa816fb2.js +0 -1
  637. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +0 -3
  638. package/dist/types/components/snk-form-config/subcomponents/snk-config-options/snk-config-options.d.ts +0 -57
  639. package/dist/types/components/snk-form-config/subcomponents/snk-field-config/snk-field-config.d.ts +0 -43
  640. package/dist/types/components/snk-form-config/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -105
  641. package/dist/types/components/snk-taskbar/subcomponents/field-search.d.ts +0 -4
@@ -1,139 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-a7d3d3f1.js';
2
- import { ElementIDUtils } from '@sankhyalabs/core';
3
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-298cd647.js';
4
- import { R as ResourceIDUtils } from './ResourceIDUtils-a114189a.js';
5
- import './ConfigStorage-e476378d.js';
6
- import './form-config-fetcher-e0382e5a.js';
7
- import './DataFetcher-773a3e4b.js';
8
- import './PrintUtils-3e4ff0f5.js';
9
- import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './filter-item-type.enum-d45e026f.js';
11
-
12
- const snkFormCss = ".sc-snk-form-h{--snk-form__header--min-height:94px;display:block}.snk-form__form--hidden.sc-snk-form{display:none}";
13
-
14
- const SnkForm = class {
15
- constructor(hostRef) {
16
- registerInstance(this, hostRef);
17
- this.exit = createEvent(this, "exit", 7);
18
- this.actionClick = createEvent(this, "actionClick", 7);
19
- this.formItemsReady = createEvent(this, "formItemsReady", 7);
20
- this._customEditors = new Map();
21
- this._dataUnit = undefined;
22
- this._dataState = undefined;
23
- this._showFormConfig = false;
24
- this._configManager = undefined;
25
- this.configName = undefined;
26
- this.recordsValidator = undefined;
27
- this.messagesBuilder = undefined;
28
- this.formLegacyConfigName = undefined;
29
- this.resourceID = undefined;
30
- }
31
- /**
32
- * Exibe a janela de configurações do formulário.
33
- */
34
- async showConfig() {
35
- this._showFormConfig = true;
36
- }
37
- /**
38
- * Fecha a janela de configurações do formulário.
39
- */
40
- async hideConfig() {
41
- this._showFormConfig = false;
42
- }
43
- /**
44
- * Registra um editor customizado para campos da grade e formulário.
45
- */
46
- async addCustomEditor(fieldName, customEditor) {
47
- if (this._form) {
48
- this._form.addCustomEditor(fieldName, customEditor);
49
- return;
50
- }
51
- const newCustomEditors = new Map(this._customEditors);
52
- newCustomEditors.set(fieldName, customEditor);
53
- this._customEditors = newCustomEditors;
54
- }
55
- /**
56
- * Altera/adiciona uma propriedade nos metadados do campo.
57
- */
58
- async setFieldProp(fieldName, propName, value) {
59
- await this._form.setFieldProp(fieldName, propName, value);
60
- }
61
- closeConfig() {
62
- this.hideConfig();
63
- }
64
- dataunitReady() {
65
- const dataInfo = { dataUnit: this._dataUnit };
66
- ElementIDUtils.addIDInfo(this._element, null, dataInfo);
67
- }
68
- setCustomEditors() {
69
- if (!this._form) {
70
- return;
71
- }
72
- for (const [fieldName, customEditor] of this._customEditors) {
73
- this._form.addCustomEditor(fieldName, customEditor);
74
- this._customEditors.delete(fieldName);
75
- }
76
- }
77
- async componentDidRender() {
78
- this.setCustomEditors();
79
- }
80
- async componentWillLoad() {
81
- let parent = this._element.parentElement;
82
- while (parent) {
83
- if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
84
- this._snkDataUnit = parent;
85
- this._dataUnit = this._snkDataUnit.dataUnit;
86
- this._dataState = this._snkDataUnit.dataState;
87
- if (this._dataUnit) {
88
- this.dataunitReady();
89
- }
90
- else {
91
- this._snkDataUnit.addEventListener("dataUnitReady", (evt) => {
92
- this._dataUnit = evt.detail;
93
- });
94
- }
95
- this._snkDataUnit.addEventListener("dataStateChange", this.handleDataStateChange.bind(this));
96
- break;
97
- }
98
- parent = parent.parentElement;
99
- }
100
- if (this.resourceID == undefined) {
101
- this.resourceID = await ResourceIDUtils.getResourceID();
102
- }
103
- this._configManager = new SnkFormConfigManager(this.configName, this.resourceID);
104
- this.addFormLegacyConfig();
105
- await this._configManager.loadConfig();
106
- }
107
- async handleDataStateChange(evt) {
108
- var _a;
109
- this._dataState = evt.detail;
110
- const fieldsWithRmPrecision = await this._snkDataUnit.getFieldsWithRmPrecision();
111
- for (const field of fieldsWithRmPrecision || []) {
112
- if (!field) {
113
- continue;
114
- }
115
- const rmPrecision = (_a = this._dataState.rowMetadata) === null || _a === void 0 ? void 0 : _a.getProp('rm_precision', field);
116
- if (!rmPrecision && rmPrecision !== 0) {
117
- continue;
118
- }
119
- await this.setFieldProp(field, 'precision', rmPrecision);
120
- await this.setFieldProp(field, 'prettyPrecision', rmPrecision);
121
- }
122
- }
123
- addFormLegacyConfig() {
124
- if (this.formLegacyConfigName) {
125
- this._configManager.addFormLegacyConfig(this.formLegacyConfigName);
126
- }
127
- }
128
- render() {
129
- if (!this._dataUnit || !this._dataState) {
130
- return undefined;
131
- }
132
- return (h("section", null, h("div", { class: "ez-row" }, h("div", { class: "ez-col ez-col--sd-12" }, h("ez-form", { ref: (ref) => this._form = ref, key: "ezForm" + this._snkDataUnit.entityName, "data-element-id": "embedded", dataUnit: this._dataUnit, config: this._configManager.getConfig(this._dataState.insertionMode, this._dataUnit), recordsValidator: this.recordsValidator, class: this._showFormConfig ? 'snk-form__form--hidden' : '' }), this._showFormConfig &&
133
- h("snk-form-config", { messagesBuilder: this.messagesBuilder, dataUnit: this._dataUnit, configManager: this._configManager, onConfigClose: () => this.closeConfig() })))));
134
- }
135
- get _element() { return getElement(this); }
136
- };
137
- SnkForm.style = snkFormCss;
138
-
139
- export { SnkForm as snk_form };
@@ -1,328 +0,0 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
- import { S as Sortable } from './Sortable-83960219.js';
3
- import { ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
4
- import { C as CONFIG_EVENTS, a as CONFIG_SORTABLE_EVENTS, K as KEY_EVENTS, c as TYPE_ACTIONS, T as TAB_NAMES } from './constants-8457af36.js';
5
-
6
- const snkTabConfigCss = "@keyframes activate{0%{clip-path:inset(calc(100% - 3px) 50% 0px 50%)}100%{clip-path:inset(calc(100% - 3px) 0px 0px 0px)}}.sc-snk-tab-config-h{--snk-tab-config--backward-icon:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" height=\"16px\" width=\"10px\"><path d=\"M 9.7808475,13.860393 3.9204526,8.0000004 9.7808475,2.0624965 7.9301965,0.28895552 0.21915255,8.0000004 7.9301965,15.711044 Z\"/></svg>');--snk-tab-config--forward-icon:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" height=\"16px\" width=\"10px\"><path d=\"M 0.21915251,13.860393 6.0795475,8.0000007 0.21915251,2.0624968 2.0698036,0.28895588 9.7808475,8.0000007 2.0698036,15.711044 Z\"/></svg>');--snk-tab-config__lower-bar--background-color:var(--color--disable-primary, #e5eaf0);--snk-tab-config__lower-bar--border:2px solid var(--color--disable-primary, #e5eaf0);--snk-tab-config__tab--color:var(--text--primary, #626e82);--snk-tab-config__tab--font-family:var(--font-pattern, \"Roboto\");--snk-tab-config__tab--font-size:var(--title--small, 14px);--snk-tab-config__tab--padding:var(--space--small, 6px) var(--space--medium, 12px);--snk-tab-config__tab-is-active--color:var(--color--primary, #008561);--snk-tab-config__tab-hover--color:var(--color--secondary, #383c45);--snk-tab-config__tab-is-focused--border:1px dashed var(--color--primary, #008561);--snk-tab-config__tab-label--text-shadow:var(--text-shadow, 0 0 0 #353535, 0 0 1px transparent);--snk-tab-config__tab-label--margin-bottom:var(--space--extra-small, 3px);--snk-tab-config__new-button-icon--color:var(--color--secondary-700, #1C1D22);--snk-tab-config__forward-button--background-color:var(--text--primary, #626e82);--snk-tab-config__forward-button-hover--background-color:var(--color--primary, #008561);--snk-tab-config__left-icon--padding-right:var(--space--small, 6px);--snk-tab-config__left-icon--color:var(--text--disable, #AFB6C0);--snk-tab-config__tab-label-disabled--color:var(--text--disable, #AFB6C0);--snk-tab-config__slot--margin-left:var(--space--small, 6px);display:flex;position:relative;width:100%;overflow:hidden}.tab-config__scroll.sc-snk-tab-config{display:flex;width:100%;scroll-behavior:smooth;overflow-x:auto;scrollbar-width:none}.tab-config__lower-bar.sc-snk-tab-config{position:absolute;left:0%;right:0%;top:91%;bottom:0%;border-radius:2px;background-color:var(--snk-tab-config__lower-bar--background-color);border:var(--snk-tab-config__lower-bar--border)}.tab-config__tab.sc-snk-tab-config{display:flex;border:none;background-color:unset;cursor:pointer;align-items:center;justify-content:center;min-width:fit-content;color:var(--snk-tab-config__tab--color);font-family:var(--snk-tab-config__tab--font-family);font-size:var(--snk-tab-config__tab--font-size);padding:var(--snk-tab-config__tab--padding)}.tab-config__tab.sc-snk-tab-config:focus,.tab-config__forward-button.sc-snk-tab-config,.tab-config__backward-button.sc-snk-tab-config{outline:none}.tab-config__tab--is-active.sc-snk-tab-config{position:relative;color:var(--snk-tab-config__tab-is-active--color)}.tab-config__tab.sc-snk-tab-config:hover{color:var(--snk-tab-config__tab-hover--color)}.tab-config__tab--is-active.sc-snk-tab-config:hover{color:var(--snk-tab-config__tab-is-active--color)}.tab-config__tab--is-active.sc-snk-tab-config::after{content:\"\";position:absolute;width:100%;height:100%;clip-path:inset(calc(100% - 3px) 0px 0px 0px);animation:activate 0.25s ease-in-out;background-color:var(--snk-tab-config__tab-is-active--color)}.tab-config__tab--is-focused.sc-snk-tab-config{border:var(--snk-tab-config__tab-is-focused--border)}.tab-config__tab-label.sc-snk-tab-config{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-shadow:var(--snk-tab-config__tab-label--text-shadow);margin-bottom:var(--snk-tab-config__tab-label--margin-bottom)}.tab-config__forward-button.sc-snk-tab-config,.tab-config__backward-button.sc-snk-tab-config{position:absolute;z-index:1;display:flex;box-sizing:border-box;padding:0px;top:0px;right:0px;width:16px;height:100%;border:none;background-color:unset;cursor:pointer;justify-content:center;align-items:center}.tab-config__new-button.sc-snk-tab-config{position:absolute;z-index:1;display:flex;box-sizing:border-box;padding:0px;top:0px;right:0px;height:100%;border:none;background-color:unset;cursor:pointer;justify-content:center;align-items:center}.tab-config__new-button.sc-snk-tab-config ez-icon.sc-snk-tab-config{--ez-icon--color:var(--snk-tab-config__new-button-icon--color)}.tab-config__backward-button.sc-snk-tab-config{left:0px;box-shadow:10px 10px 5px 5px white;background:white}.tab-config__forward-button.sc-snk-tab-config{box-shadow:10px 10px 5px 20px white;background:white}.tab-config__forward-button.sc-snk-tab-config::after,.tab-config__backward-button.sc-snk-tab-config::after{content:'';display:flex;width:10px;height:16px;background-color:var(--snk-tab-config__forward-button--background-color)}.tab-config__forward-button.sc-snk-tab-config::after{-webkit-mask-image:var(--snk-tab-config--forward-icon);mask-image:var(--snk-tab-config--forward-icon)}.tab-config__backward-button.sc-snk-tab-config::after{-webkit-mask-image:var(--snk-tab-config--backward-icon);mask-image:var(--snk-tab-config--backward-icon)}.tab-config__forward-button.sc-snk-tab-config:hover::after,.tab-config__backward-button.sc-snk-tab-config:hover::after{background-color:var(--snk-tab-config__forward-button-hover--background-color)}.tab-config__new-button.sc-snk-tab-config:hover ez-icon.sc-snk-tab-config{--ez-icon--color:var(--snk-tab-config__forward-button-hover--background-color)}.tab-config__hidden.sc-snk-tab-config{display:none}.tab-config__scroll.sc-snk-tab-config::-webkit-scrollbar{display:none}.tab-config__left-icon.sc-snk-tab-config{padding-right:var(--snk-tab-config__left-icon--padding-right);--ez-icon--color:var(--snk-tab-config__left-icon--color)}.tab-config__left-icon--eye-off.sc-snk-tab-config{--ez-icon--color:var(--snk-tab-config__left-icon--color)}.tab-config__right-icon.sc-snk-tab-config{visibility:hidden;padding-left:var(--snk-tab-config__left-icon--padding-right)}.tab-config__tab.sc-snk-tab-config:hover .tab-config__right-icon.sc-snk-tab-config{visibility:visible}.tab-config__tab--is-active.sc-snk-tab-config .tab-config__right-icon.sc-snk-tab-config{visibility:visible;--ez-icon--color:var(--snk-tab-config__tab-is-active--color)}.tab-config__tab.sc-snk-tab-config:hover .tab-config__right-icon.sc-snk-tab-config{--ez-icon--color:var(--snk-tab-config__tab-hover--color)}.tab-config__tab--is-active.sc-snk-tab-config:hover .tab-config__right-icon.sc-snk-tab-config{--ez-icon--color:var(--snk-tab-config__tab-is-active--color)}.tab-config__actions-button.sc-snk-tab-config{--ez-actions-button__btn-action--min-width:100px;visibility:hidden;opacity:0;transition:visibility 1s linear, opacity 0.3s linear}.tab-config__tab.sc-snk-tab-config:hover .tab-config__actions-button.sc-snk-tab-config{visibility:visible;opacity:1;transition:visibility 0.2s linear, opacity 0.10s linear}[data-draggable-element].sc-snk-tab-config{cursor:grab}.tab-config__tab-label-disabled.sc-snk-tab-config{color:var(--snk-tab-config__tab-label-disabled--color)}.tab-config__slot.sc-snk-tab-config{margin-left:var(--snk-tab-config__slot--margin-left)}";
7
-
8
- const SnkTabConfig = class {
9
- constructor(hostRef) {
10
- registerInstance(this, hostRef);
11
- this.ezTabChange = createEvent(this, "ezTabChange", 7);
12
- this.editionTitleTab = createEvent(this, "editionTitleTab", 7);
13
- this.deleteTab = createEvent(this, "deleteTab", 7);
14
- this.hideTab = createEvent(this, "hideTab", 7);
15
- this.ezOrderChange = createEvent(this, "ezOrderChange", 7);
16
- this.canStartDrag = createEvent(this, "canStartDrag", 7);
17
- this._refTabActions = [];
18
- this._processedTabs = undefined;
19
- this._activeEditText = undefined;
20
- this._activeEditTextIndex = undefined;
21
- this._actionsHide = [];
22
- this._actionsShow = [];
23
- this.selectedIndex = undefined;
24
- this.selectedTab = undefined;
25
- this.tabs = undefined;
26
- this.tabItems = undefined;
27
- this.messagesBuilder = undefined;
28
- }
29
- /**
30
- * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
31
- * através de um pequeno modulo na estrutura da aplicação:
32
- * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
33
- * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-form.msg.ts"
34
- */
35
- getMessage(key, params) {
36
- return this.messagesBuilder.getMessage(key, params);
37
- }
38
- controlSortableTab() {
39
- if (this._sortableTab) {
40
- this._sortableTab.destroy();
41
- }
42
- this._sortableTab = new Sortable(this._hostElem.querySelectorAll('[data-draggable-parent="tab"]'), {
43
- draggable: '[data-draggable-element="tab"]',
44
- mirror: {
45
- constrainDimensions: true
46
- },
47
- distance: CONFIG_EVENTS.dragStartDistance
48
- });
49
- this._sortableTab.on(CONFIG_SORTABLE_EVENTS.dragStart, (evt) => this.controlStartDraggingTab(evt));
50
- this._sortableTab.on(CONFIG_SORTABLE_EVENTS.dragStop, (evt) => this.controlStopDraggingTab(evt));
51
- }
52
- controlStartDraggingTab(evt) {
53
- var _a, _b;
54
- const mouseEvent = (_a = evt === null || evt === void 0 ? void 0 : evt.dragEvent) === null || _a === void 0 ? void 0 : _a.originalEvent;
55
- const targetElement = mouseEvent === null || mouseEvent === void 0 ? void 0 : mouseEvent.target;
56
- const targetName = (_b = targetElement === null || targetElement === void 0 ? void 0 : targetElement.tagName) === null || _b === void 0 ? void 0 : _b.toUpperCase();
57
- if (this._activeEditText === true || targetName === "EZ-ACTIONS-BUTTON") {
58
- evt === null || evt === void 0 ? void 0 : evt.cancel();
59
- }
60
- else {
61
- this.canStartDrag.emit();
62
- }
63
- }
64
- controlStopDraggingTab(evt) {
65
- const updateTimer = 500;
66
- if (evt.data.newIndex !== evt.data.oldIndex) {
67
- setTimeout(() => {
68
- const newIndex = (evt.data.newIndex || 0) + 1;
69
- this.ezOrderChange.emit(newIndex);
70
- }, updateTimer);
71
- }
72
- }
73
- handleTabClick(tab) {
74
- this.selectedIndex = tab.index;
75
- this._focusedIndex = tab.index;
76
- this.selectedTab = tab.tabKey;
77
- this.ezTabChange.emit(tab);
78
- this.setFocusedBtn(false, tab.index);
79
- this.setFocusedTab(tab.index);
80
- }
81
- handleSlotChange(ev) {
82
- const slot = ev.target;
83
- const content = slot.assignedElements()[0];
84
- if (content) {
85
- content.classList.add("tab-config__slot");
86
- }
87
- }
88
- scrollBackward() {
89
- const container = this._scrollContainer;
90
- if (container) {
91
- container.scrollLeft -= container.clientWidth;
92
- }
93
- }
94
- scrollFoward() {
95
- const container = this._scrollContainer;
96
- if (container) {
97
- let lastTab = null;
98
- container.querySelectorAll(".tab-config__tab").forEach((tab) => {
99
- if (tab.getBoundingClientRect().right < container.clientWidth) {
100
- lastTab = tab;
101
- }
102
- });
103
- container.scrollLeft = lastTab.offsetLeft + lastTab.offsetWidth;
104
- }
105
- }
106
- updateScroll() {
107
- const container = this._scrollContainer;
108
- if (container) {
109
- const { scrollWidth, clientWidth, scrollLeft } = container;
110
- const remainingScroll = scrollWidth - clientWidth - Math.ceil(scrollLeft);
111
- this._startHidden = container.scrollLeft > 0;
112
- this._endHidden = remainingScroll > 0;
113
- if (this._startHidden) {
114
- this._backwardButton.classList.remove("tab-config__hidden");
115
- }
116
- else {
117
- this._backwardButton.classList.add("tab-config__hidden");
118
- }
119
- if (this._endHidden) {
120
- this._forwardButton.classList.remove("tab-config__hidden");
121
- }
122
- else {
123
- this._forwardButton.classList.add("tab-config__hidden");
124
- }
125
- }
126
- }
127
- domScrollHandler() {
128
- window.clearTimeout(this._scrollCallBackScroll);
129
- this._scrollCallBackScroll = window.setTimeout(() => { this.updateScroll(); }, 200);
130
- }
131
- setFocusedTab(index) {
132
- window.clearTimeout(this._scrollCallBackFocus);
133
- this._scrollCallBackFocus = window.setTimeout(() => {
134
- const tabtoscroll = this._scrollContainer.querySelector(`#tab${index}`);
135
- tabtoscroll === null || tabtoscroll === void 0 ? void 0 : tabtoscroll.scrollIntoView({ behavior: "smooth", block: "nearest", inline: "nearest" });
136
- }, 200);
137
- }
138
- controlKeyEventEnter(evt) {
139
- evt.preventDefault();
140
- const selectedTab = this._processedTabs[this._focusedIndex];
141
- this.handleTabClick(selectedTab);
142
- this.setFocusedTab(selectedTab.index);
143
- }
144
- controlKeyEventArrow(evt) {
145
- let operator = undefined;
146
- if (evt.key === KEY_EVENTS.arrowLeft) {
147
- operator = false;
148
- }
149
- else if (evt.key === KEY_EVENTS.arrowRight) {
150
- operator = true;
151
- }
152
- else {
153
- return;
154
- }
155
- if (this._focusedIndex === undefined) {
156
- if (operator === false) {
157
- this._focusedIndex = this.selectedIndex !== undefined ? this.selectedIndex - 1 : undefined;
158
- }
159
- else {
160
- this._focusedIndex = this.selectedIndex !== undefined ? this.selectedIndex + 1 : undefined;
161
- }
162
- }
163
- else {
164
- if (operator === false) {
165
- this._focusedIndex = this._focusedIndex - 1;
166
- }
167
- else {
168
- this._focusedIndex = this._focusedIndex + 1;
169
- }
170
- }
171
- if (this._focusedIndex < 0) {
172
- this._focusedIndex = 0;
173
- }
174
- else if (this._focusedIndex > this._processedTabs.length - 1) {
175
- this._focusedIndex = this._processedTabs.length - 1;
176
- }
177
- this.setFocusedBtn(true, this._focusedIndex);
178
- this.setFocusedTab(this._focusedIndex);
179
- }
180
- controlKeyEventEscape(evt) {
181
- evt.preventDefault();
182
- const currentTab = this._processedTabs[this.selectedIndex];
183
- this._focusedIndex = undefined;
184
- this.handleTabClick(currentTab);
185
- this.setFocusedTab(this.selectedIndex);
186
- }
187
- setFocusedParam(evt) {
188
- if (this._activeEditText === true || evt == undefined) {
189
- return;
190
- }
191
- if (evt.key === KEY_EVENTS.enter) {
192
- this.controlKeyEventEnter(evt);
193
- return;
194
- }
195
- if (evt.key === KEY_EVENTS.arrowLeft || evt.key === KEY_EVENTS.arrowRight) {
196
- this.controlKeyEventArrow(evt);
197
- return;
198
- }
199
- if (evt.key === KEY_EVENTS.tab || evt.key === KEY_EVENTS.escape) {
200
- this.controlKeyEventEscape(evt);
201
- return;
202
- }
203
- }
204
- setFocusedBtn(visible, parameter) {
205
- const tabsButtons = this._scrollContainer.querySelectorAll(".tab-config__tab");
206
- tabsButtons.forEach((el) => {
207
- el.classList.remove("tab-config__tab--is-focused");
208
- if (el.id === "tab" + parameter && visible) {
209
- el.classList.add("tab-config__tab--is-focused");
210
- }
211
- });
212
- }
213
- getStyledLabel(tabId) {
214
- const tabElem = this._hostElem.querySelector(`#${tabId}`);
215
- if (tabElem == undefined) {
216
- return;
217
- }
218
- let styledLabel = {
219
- fontSize: window.getComputedStyle(tabElem).getPropertyValue('font-size'),
220
- fontWeight: window.getComputedStyle(tabElem).getPropertyValue('font-weight'),
221
- fontFamily: window.getComputedStyle(tabElem).getPropertyValue('font-family')
222
- };
223
- return styledLabel;
224
- }
225
- cancelEditText(cancelTextEdition) {
226
- var _a;
227
- cancelTextEdition.stopPropagation();
228
- this._activeEditText = false;
229
- if (this._scrollContainer != undefined) {
230
- (_a = this._scrollContainer.querySelector('.tab-config__tab--is-active')) === null || _a === void 0 ? void 0 : _a.focus();
231
- }
232
- }
233
- handleActions(actionSelect, tab) {
234
- const { value: typeAction } = actionSelect.detail;
235
- if (typeAction === TYPE_ACTIONS.rename) {
236
- this._activeEditText = true;
237
- this._activeEditTextIndex = tab.index;
238
- }
239
- else if (typeAction === TYPE_ACTIONS.hide || typeAction === TYPE_ACTIONS.show) {
240
- this.hideTab.emit(tab);
241
- }
242
- else if (typeAction === TYPE_ACTIONS.delete) {
243
- this.deleteTab.emit(tab);
244
- }
245
- }
246
- handleSaveEditionText(editDetails) {
247
- const { value, newValue } = editDetails.detail;
248
- if (value === newValue) {
249
- this.cancelEditText(editDetails);
250
- return;
251
- }
252
- this._processedTabs.forEach((tab) => {
253
- if (tab.label === value) {
254
- tab.label = newValue;
255
- this.cancelEditText(editDetails);
256
- this.editionTitleTab.emit(editDetails);
257
- }
258
- });
259
- }
260
- onHideActions(index) {
261
- const elementActionsBtn = this._refTabActions[index];
262
- if (elementActionsBtn) {
263
- elementActionsBtn.isOpened().then((isOpened) => {
264
- if (isOpened) {
265
- elementActionsBtn === null || elementActionsBtn === void 0 ? void 0 : elementActionsBtn.hideActions();
266
- }
267
- });
268
- }
269
- }
270
- componentWillLoad() {
271
- this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
272
- if (this._application != undefined) {
273
- this._actionsHide = [
274
- { value: TYPE_ACTIONS.rename, label: this.getMessage("snkTabConfig.labelRename") },
275
- { value: TYPE_ACTIONS.hide, label: this.getMessage("snkTabConfig.labelHide") },
276
- { value: TYPE_ACTIONS.delete, label: this.getMessage("snkTabConfig.labelDelete") }
277
- ];
278
- this._actionsShow = [
279
- { value: TYPE_ACTIONS.rename, label: this.getMessage("snkTabConfig.labelRename") },
280
- { value: TYPE_ACTIONS.show, label: this.getMessage("snkTabConfig.labelShow") },
281
- { value: TYPE_ACTIONS.delete, label: this.getMessage("snkTabConfig.labelDelete") }
282
- ];
283
- }
284
- }
285
- componentWillRender() {
286
- this._processedTabs = [];
287
- if (this.tabs) {
288
- this.tabs.split(",").forEach((label) => {
289
- label = label.trim();
290
- this._processedTabs.push({ label, tabKey: label, index: this._processedTabs.length });
291
- });
292
- }
293
- this.tabItems.forEach((tab) => {
294
- tab.label = tab.label !== TAB_NAMES.main ? tab.label : this.getMessage("snkFormConfig.form.mainArea");
295
- tab.index = this._processedTabs.length;
296
- this._processedTabs.push(tab);
297
- });
298
- }
299
- componentDidRender() {
300
- this.updateScroll();
301
- this.controlSortableTab();
302
- }
303
- componentDidLoad() {
304
- ElementIDUtils.addIDInfo(this._hostElem, "itemConfig");
305
- this._processedTabs.forEach((tab, index) => {
306
- const dataID = { id: tab.label };
307
- ElementIDUtils.addIDInfo(this._hostElem.querySelector(`#tab${index}`), "itemConfig", dataID);
308
- });
309
- }
310
- render() {
311
- return (h(Host, null, h("button", { class: "tab-config__backward-button", ref: (el) => this._backwardButton = el, onClick: () => this.scrollBackward() }), h("div", { class: "tab-config__lower-bar" }), h("div", { class: "tab-config__scroll", ref: (el) => this._scrollContainer = el, onScroll: () => this.domScrollHandler(), onKeyDown: (ev) => this.setFocusedParam(ev), "data-draggable-parent": "tab" }, this._processedTabs.map((tab, index) => {
312
- const tabId = "tab" + index;
313
- const isSelected = index === this.selectedIndex || (this.selectedTab && tab.tabKey === this.selectedTab);
314
- if (isSelected) {
315
- this.selectedTab = tab.tabKey;
316
- this.selectedIndex = index;
317
- }
318
- return h("button", { id: tabId, class: `tab-config__tab${isSelected ? " tab-config__tab--is-active" : ""}`, onClick: () => this.handleTabClick(tab), onDblClick: () => { this._activeEditText = true; this._activeEditTextIndex = index; }, "data-draggable-element": index > 0 ? "tab" : "", onMouseLeave: () => this.onHideActions(index), key: tab.label }, (this._activeEditText === true && this._activeEditTextIndex === index && index > 0) ||
319
- h(Fragment, null, index > 0 && h("ez-icon", { iconName: tab.leftIcon || "drag-indicator", class: "tab-config__left-icon" }), (tab.visible === false && index > 0) && h("ez-icon", { iconName: tab.leftIcon || "eye-off", class: "tab-config__left-icon tab-config__left-icon--eye-off" }), h("span", { class: "tab-config__tab-label" + (tab.visible === false && index > 0 ? " tab-config__tab-label-disabled" : ""), title: tab.label }, tab.label), index > 0 &&
320
- h("ez-actions-button", { class: "tab-config__actions-button", size: "small", ref: elem => this._refTabActions[index] = elem, actions: tab.visible === false ? this._actionsShow : this._actionsHide, isTransparent: true, arrowActive: true, onEzAction: (ev) => this.handleActions(ev, tab) }), h("slot", { name: tabId, onSlotchange: (ev) => { this.handleSlotChange(ev); } })), (this._activeEditText === true && index > 0 && this._activeEditTextIndex === index) &&
321
- h("ez-text-edit", { value: tab.label, styled: this.getStyledLabel(tabId), class: "tab-config__edit-text", onSaveEdition: (ev) => this.handleSaveEditionText(ev), onCancelEdition: (ev) => this.cancelEditText(ev) }));
322
- })), h("button", { class: "tab-config__forward-button", ref: (el) => this._forwardButton = el, onClick: () => this.scrollFoward() })));
323
- }
324
- get _hostElem() { return getElement(this); }
325
- };
326
- SnkTabConfig.style = snkTabConfigCss;
327
-
328
- export { SnkTabConfig as snk_tab_config };
@@ -1 +0,0 @@
1
- import{r as i,c as t,h as s,g as e}from"./p-d2d301a6.js";import{ElementIDUtils as r}from"@sankhyalabs/core";import{F as h}from"./p-ff1990ad.js";import{E as a}from"./p-1a68fb59.js";import{F as l}from"./p-fa80e546.js";const n=class{constructor(s){i(this,s),this.valueChanged=t(this,"valueChanged",7),this._startIntervalLabel="Inicial",this._endIntervalLabel="Final",this.config=void 0,this.getMessage=void 0,this.value=void 0,this.presentationMode=a.CHIP}ezChangeListener(i){if(this.getVariation()===l.INTERVAL){const i=this._startInterval.value,t=this._endInterval.value;return this.value=i||t?{start:i,end:t}:void 0,void this.valueChanged.emit(this.value)}this.value=i.detail,this.valueChanged.emit(this.value)}async show(){this.getVariation()!==l.INTERVAL?this._numberElement.setFocus():this._startInterval.setFocus()}getIntervalValue(i){const t=this.value?this.value[i]:null;return null!=t?t:null}buildLabel(){if(this.presentationMode===a.CHIP)return s("label",{class:"ez-text ez-text--medium ez-text--primary ez-margin--medium"},"até")}getVariation(){var i,t;return null!==(t=null===(i=this.config.props)||void 0===i?void 0:i.variation)&&void 0!==t?t:l.DEFAULT}componentWillLoad(){this.getMessage&&(this._startIntervalLabel=this.getMessage("snkFilterBar.labelStart"),this._endIntervalLabel=this.getMessage("snkFilterBar.labelEnd"))}componentDidLoad(){this._element&&r.addIDInfo(this._element,"filterContentEditor")}render(){var i,t,e;if(this.config&&this.config.type===h.NUMBER)return this.getVariation()===l.INTERVAL?s("div",{class:"ez-col ez-col--nowrap"},s("ez-number-input",{id:`${this.config.id}_start`,class:this.presentationMode===a.MODAL?"ez-padding--small":"",label:this._startIntervalLabel,ref:i=>this._startInterval=i,value:this.getIntervalValue("start"),precision:null===(i=this.config.props)||void 0===i?void 0:i.precision}),this.buildLabel(),s("ez-number-input",{id:`${this.config.id}_end`,class:this.presentationMode===a.MODAL?"ez-padding--small":"",label:this._endIntervalLabel,ref:i=>this._endInterval=i,value:this.getIntervalValue("end"),precision:null===(t=this.config.props)||void 0===t?void 0:t.precision})):s("ez-number-input",{id:this.config.id,ref:i=>this._numberElement=i,label:this.config.label,value:this.config.value,precision:null===(e=this.config.props)||void 0===e?void 0:e.precision})}get _element(){return e(this)}};export{n as snk_filter_number}
@@ -1,60 +0,0 @@
1
- import{ObjectUtils as t,DataUnit as e,DataType as r,DateUtils as n,StringUtils as a,ChangeOperation as s,ApplicationContext as i,UserInterface as o,DataUnitStorage as l}from"@sankhyalabs/core";import{D as c,d as u}from"./p-594bc21d.js";import{DISTINCT_FILTER_NAME_PREFIX as d}from"@sankhyalabs/ezui/dist/collection/utils/constants";import{DataUnitTransient as h}from"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import{ColumnFilterManager as m}from"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils";import f from"@sankhyalabs/core/dist/utils/SortingUtils";import{R as _}from"./p-688dcb4c.js";class p{constructor(t){this._list=[],this._equalsFunction=t}async load(t,e,r,n){let a=[].concat(this._list);null!=t&&(a=this._list.filter((e=>t(e)))),null!=e&&(a=a.sort(e));const s=a.length;if(null!=n){const t=r||0;a=a.slice(t,n?t+n:a.length)}return Promise.resolve({result:a,count:s})}async distict(t){const e=[];let r=!1;for(const n of this._list){const a=t(n);null!=a&&(null!=a.value?e.push(a):r=!0)}return r&&e.push({key:"",value:null}),Promise.resolve(new Map(e.map((t=>[t.key,t.value]))))}async push(t){this._list.push(...t)}async clear(){this._list=[]}async delete(t){this._list=this._list.filter((e=>{for(const r of t)if(this._equalsFunction(e,r))return!1;return!0}))}async update(t){this._list=this._list.map((e=>{const r=t.find((t=>this._equalsFunction(e,t)));return null==r?e:r}))}async insert(t,e){const r=this._list.indexOf(t);-1!=r?this._list=this._list.slice(0,r).concat(e).concat(this._list.slice(r)):this._list.push(...e)}isOperating(){return!0}async isEmpty(){return Promise.resolve(0===this._list.length)}async count(){return Promise.resolve(this._list.length)}getFromCache(){return t.copy(this._list)}}class g{static setLoadingStatus(t,e){this._loadingStatus.set(t.name,e)}static isCacheEnabled(t){return!0}static cacheRecords(t,e,r,n){g.setLoadingStatus(t,n),g.isCacheEnabled(t)?this.getRepository(t).push(e):r&&this._repositories.delete(t.name)}static getSortingFunction(t,e){return f.getSortingFunction(t,e)}static async getDistinct(t,e){if(!g.isCacheEnabled(t))return Promise.resolve(m.compileDistinct(e,t));let r;const n=t.getLastLoadRequest();if(null!=n){const a=m.getColumnFilters(n.filters,e);r=m.getFilterFunction(t,Array.from(a.values()))}return new Promise(((n,a)=>{g.getRepository(t).distict((n=>{if(null!=r&&!r(n))return;const a=n[e];if(null==a)return{key:null,value:null};const s=null!=a.value?a.value:a;return{key:t.getFormattedValue(e,a),value:s}})).then((t=>{n(null!=t?Array.from(t.entries()).map((([t,e])=>({label:t,value:e,check:!0}))):void 0)})).catch((t=>a(t)))}))}static async loadData(t,r,n){try{if(g.isCacheEnabled(t)){if(["EZ_GRID_LOADING_SOURCE",e.CHANGING_PAGE_LOADING_SOURCE,e.ALL_RECORDS_SELECTION_SOURCE].includes(r.source)&&!await g.getRepository(t).isEmpty())return g.loadFromCache(t,r);g.getRepository(t).clear().catch((()=>{}))}return n(t,r)}catch(t){return console.error(t),Promise.reject(t)}}static insertRecords(t,e,r){g.isCacheEnabled(t)&&g.getRepository(t).insert(e,r)}static updateRecords(t,e){g.isCacheEnabled(t)&&g.getRepository(t).update(e)}static removeRecords(t,e){g.isCacheEnabled(t)&&g.getRepository(t).delete(e)}static async countRecords(t){return g.isCacheEnabled(t)?g.getRepository(t).count():Promise.resolve(0)}static getRepository(t){const e=t.name;return g._repositories.has(e)||g._repositories.set(e,new p(((t,e)=>t.__record__id__===e.__record__id__))),g._repositories.get(e)}static async loadFromCache(t,e){return new Promise(((r,n)=>{const a=m.getColumnFilters(e.filters,""),{limit:s,offset:i,sort:o}=e;g.getRepository(t).load(m.getFilterFunction(t,Array.from(a.values())),g.getSortingFunction(t,o),i,s).then((e=>{const n=g._loadingStatus.get(t.name),{count:a,result:o}=e,l=0==a?0:i+1,c=i+Math.min(o.length,s);r({records:o,paginationInfo:{count:a,currentPage:i/s,firstRecord:l,lastRecord:c,hasMore:n||c<a,total:n?void 0:a}})})).catch((t=>n(t)))}))}static getCachedRecords(t){return g.getRepository(t).getFromCache()}}function y(t,e,r){const n=m.getColumnFilters(r,"");if(!(null==n?void 0:n.size))return t;const a=m.getFilterFunction(e,Array.from(n.values()));return null==a?t:t.filter(a)}function v(t,e,r){if(null==r||0==r.length)return t;const n=g.getSortingFunction(e,r);return null==n?t:t.sort(n)}function b(t,e=0,r=0){if(void 0===t)return;const n=(null==t?void 0:t.length)||0,a=Math.min(e+r,n);return{currentPage:0===r?0:Math.ceil(e/r),firstRecord:e,lastRecord:a,total:n,hasMore:!!(n-a)}}g._repositories=new Map,g._loadingStatus=new Map;class D{constructor(t,r,n){this.metadata=t,this.records=r,this._dataUnit=new e(D.IN_MEMORY_DATA_UNIT_NAME),this._dataUnit.pageSize=150,this._dataUnit.metadataLoader=()=>this.metadaLoader(),this._dataUnit.dataLoader=(t,e)=>this.inMemoryLoader(t,e,this.getRecordsToLoad()),this._dataUnit.saveLoader=(t,e)=>this.saveLoader(t,e),this._dataUnit.removeLoader=(t,e)=>this.removeLoader(t,e),this.dataUnit.loadMetadata().then((()=>{!1!==(null==n?void 0:n.autoLoad)&&this.dataUnit.loadData()}))}getRecordsToLoad(){null==this._initialRecords&&this.dataUnit.records.length>0&&(this._initialRecords=this.dataUnit.records);const t=this.dataUnit.getAddedRecords();return t?[...this._initialRecords,...t]:this._initialRecords}get dataUnit(){return this._dataUnit}get records(){return this.dataUnit.records}static getConvertedValue(t,e){return t.dataType===r.BOOLEAN?"S"===e:t.dataType===r.NUMBER?Number(e):t.dataType===r.DATE?n.strToDate(e,!0):t.dataType===r.OBJECT?JSON.parse(e):e}set records(t){const e=this._metadata?new Map(this._metadata.fields.map((t=>[t.name,t]))):void 0,r=null==t?void 0:t.map((t=>{if(t.__record__id__||(t.__record__id__=this.generateUniqueId()),null!=e)for(const r in t){const n=t[r];"string"==typeof n&&e.has(r)&&(t[r]=D.getConvertedValue(e.get(r),n))}return t}));this._initialRecords=r,this._dataUnit&&this._dataUnit.loadData()}get metadata(){return this._metadata}set metadata(t){this._metadata=t,this._dataUnit&&(this._dataUnit.metadata=this._metadata)}generateUniqueId(){return a.generateUUID()}inMemoryLoader(t,e,r){let n=y(r,t,e.filters);return n=v(n,t,e.sort),Promise.resolve({records:n,paginationInfo:b(n,e.offset,e.limit)})}metadaLoader(){return Promise.resolve(this._metadata)}saveLoader(t,e){return new Promise((t=>{let r=[];e.forEach((t=>{let{record:e,updatingFields:n,operation:a}=t;const i=Object.assign(Object.assign({},e),n);if(a===s.INSERT||a===s.COPY)i.__old__id__=e.__record__id__,i.__record__id__=this.generateUniqueId(),this.records.push(i);else{const t=this.records.findIndex((t=>t.__record__id__==i.__record__id__));this.records[t]=i}r.push(i)})),t(r)}))}removeLoader(t,e){return new Promise((t=>{t(e)}))}}function P(t,e){var r,n;return void 0!==(null===(r=t[e])||void 0===r?void 0:r.value)?null===(n=t[e])||void 0===n?void 0:n.value:t[e]}D.IN_MEMORY_DATA_UNIT_NAME="InMemoryDataUnit";class N{canSlice(){return!1}processSortingSide(t,e,r){var n;const a=[],s=[];if(null!=t.sort){if(0===r.length)return{localSorting:t.sort,serverSorting:[]};for(const r of t.sort){const t=e.getField(r.field);"true"===(null===(n=null==t?void 0:t.properties)||void 0===n?void 0:n.calculated)||(null==t?void 0:t.userInterface)===o.LONGTEXT?a.push(r):s.push(r)}}return{localSorting:a,serverSorting:s}}async load(t,e,r){var n,a;if(null==t.metadata)return Promise.resolve({records:[],loadingInfo:r});try{const s=null!==(a=null===(n=e.filters)||void 0===n?void 0:n.filter((t=>!t.name.startsWith("FILTRO_COLUNA_"))))&&void 0!==a?a:[],{localSorting:i,serverSorting:o}=this.processSortingSide(e,t,s),l=this.getFieldsList(t),u="DatasetSP.loadRecords",d=this.buildRequestBody(u,l,t,e,r,o,s),h=r.quiet?{urlParams:{quietMode:"true"}}:void 0,{result:m,pagerID:f}=await c.get().callServiceBroker(u,d,h),_=this.processRecords(t,l,m),p=null!=f,g=r.count+_.length,y=!p&&i.length>0;return Promise.resolve({records:_,loadingInfo:Object.assign(Object.assign({},r),{pagerId:f,loadingInProgress:p,total:p?void 0:g,count:g,needReload:y})})}catch(t){return console.error(t),Promise.reject(t)}}async loadRowMetadata(t,e,r,n={}){try{const a="DatasetSP.loadRowMetadata",s=await this.buildRequestBodyLoadRowMetadata({snkDataUnit:t,fieldName:e,metadataName:r,serviceName:a,updatedFields:n});return await c.get().callServiceBroker(a,s)}catch(t){return console.error(t),Promise.reject(t)}}async buildRequestBodyLoadRowMetadata({snkDataUnit:t,serviceName:e,fieldName:r,metadataName:n,updatedFields:a}){const s=t.dataUnit,i=R.parseDataUnitName(s.name).entityName,o=(await t.getSelectedRecordsIDsInfo()).reduce(((t,e)=>(t[e.name]=e.value,t)),{}),l=s.getSelectedRecord(),c=s.metadata.fields.filter((({standAlone:t,name:e})=>!t&&!e.includes("."))).map((({name:t})=>t)),u=c.reduce(((t,e,r)=>{const n=P(l,e),s=P(a,e);return t[r]=void 0!==s?s:n,t}),{});return JSON.stringify({serviceName:e,requestBody:{dataSetID:s.dataUnitId,entityName:i,standAlone:!1,metadataName:n,fieldName:r,fields:c,record:{pk:o,oldPk:o,values:u}}})}getFieldsList(t){let e=["__record__id__","__record__label__"];return t.metadata.fields.forEach((t=>{t.standAlone||(e=e.concat(this.getFieldNames(t)))})),e}getStandAloneFieldsList(t){let e={};return t.metadata.fields.forEach((t=>{t.standAlone&&(e=Object.assign(Object.assign({},e),{[t.name]:{fieldType:t.dataType,userType:t.userInterface}}))})),e}getFieldNames(t){const e=this.getSearchDescriptionField(t);return null==e?t.name:[t.name,e]}buildRequestBody(t,e,r,n,a,s,i){const o=r.dataUnitId,l=R.parseDataUnitName(r.name).entityName,c=!(!n.limit&&!n.offset),u={serviceName:t,requestBody:{dataSetID:o,fields:e,entityName:l,pageNumber:a.pageNumber,totalRecordsCount:a.count,pagerID:a.pagerId,standAlone:!1,standAloneFieldsMD:Object.assign({__record__id__:{fieldType:"S",userType:"P"},__record__label__:{fieldType:"S",userType:"P"}},this.getStandAloneFieldsList(r)),tryJoinedFields:!0,parallelLoader:c,crudListener:`br.com.sankhya.bff.${this.getModuleName()}.BFFDataUnitDatasetAdapter`,txProperties:this.getTxProperties(r,n,s,i),useDefaultRowsLimit:!1}};return JSON.stringify(u)}getModuleName(){return i.getContextValue("__SNK__APPLICATION__").getModuleName().replace("-bff","")}getTxProperties(t,e,r,n){const a={"__DATA_UNIT_ADAPTER__[dataUnitName]":t.name};0!==n.length&&(a["__DATA_UNIT_ADAPTER__[criteria]"]=JSON.stringify(n)),null!=r&&0!==r.length&&(a["__DATA_UNIT_ADAPTER__[sorting]"]=JSON.stringify(r)),null!=e.parentRecordId&&(a["__DATA_UNIT_ADAPTER__[parentRecordId]"]=e.parentRecordId);const s=t.getGlobalLoaderProps();return null==s||0===s.size||Array.from(s.entries()).forEach((([t,e])=>{a[t]=e})),a}processRecords(t,e,r){return r.map((r=>{const n={__record__id__:r[0],__record__label__:r[1],__record__metadata__:r[r.length-1]._rmd};return t.metadata.fields.forEach((t=>{n[t.name]=this.buildFieldValue(t,e,r)})),n}))}buildFieldValue(t,e,r){const n=e.indexOf(t.name);if(n<0)return null;const s=r[n];if(a.isEmpty(s))return null;const i=this.getSearchDescriptionField(t);if(null!=i){const t=e.indexOf(i);if(t>=0)return{value:s,label:r[t]}}return t.userInterface===o.SEARCH?isNaN(Number(s))?s:Number(s):D.getConvertedValue(t,s)}getSearchDescriptionField(t){if(t.userInterface===o.SEARCH){const{ENTITYNAME:e,mergedFrom:r,DESCRIPTIONFIELD:n}=t.properties;if(!a.isEmpty(n))return null!=r?`${r}.${e}.${n}`:`${e}.${n}`}}}class I{static async debounce(t,e){const r=t.name;I._debouncingTimeouts[r]&&(clearTimeout(I._debouncingTimeouts[r]),delete I._debouncingTimeouts[r]),I._debouncingTimeouts[r]=setTimeout((()=>{delete I._debouncingTimeouts[r],e()}),100)}static async loadData(t,e){return new Promise(((r,n)=>{I.debounce(t,(()=>{g.loadData(t,e,this.loadFromServer).then((t=>r(t))).catch((t=>n(t)))}))}))}static getCachedRecords(t){return g.getCachedRecords(t)}static async loadFromServer(t,e,r){try{r=I.registryLoading(t,r);const n=await I.callLoader(t,e,r);if(null==n)return;const a=n.records,s=I.buildPaginationInfo(a.length,e,n.loadingInfo),i=null==s?a:a.slice(0,s.lastRecord);return Promise.resolve({records:i,paginationInfo:s})}catch(t){return console.error(t),Promise.reject(t)}}static async callLoader(t,e,r,n){null==n&&(n=new N);const a=await n.load(t,e,r),{records:s,loadingInfo:i}=a;if(I.isOldRequest(t,i))return Promise.resolve(void 0);const o=!n.canSlice()||0===i.count;if(g.cacheRecords(t,s,o,i.loadingInProgress),g.isCacheEnabled(t)&&i.loadingInProgress){const r=Object.assign(Object.assign({},e),{offset:i.count}),a=Object.assign(Object.assign({},i),{pageNumber:(i.pageNumber||0)+1,quiet:!0});this.callLoader(t,r,a,n).then((e=>I.afterLoadingPage(t,e.loadingInfo))).catch((t=>console.error(t)))}return Promise.resolve(a)}static afterLoadingPage(t,e){g.setLoadingStatus(t,e.loadingInProgress);const r=t.getPaginationInfo();if(null==r)return;const n=e.count;e.loadingInProgress?t.updatePagination(Object.assign(Object.assign({},r),{count:n})):e.needReload?t.gotoPage(0):t.updatePagination(Object.assign(Object.assign({},r),{total:n,count:n}))}static registryLoading(t,e){return null==e&&(e={requestTime:(new Date).getTime(),count:0}),I._requestTimeByDataUnit.set(t.name,e.requestTime),e}static isOldRequest(t,e){return I._requestTimeByDataUnit.get(t.name)>e.requestTime}static buildPaginationInfo(t,e,r){let{limit:n,offset:a}=e;if(!n)return;1===r.pageNumber&&(a=0);const{total:s,count:i,loadingInProgress:o}=r,l=0===i||0===t?0:a+1,c=a+Math.min(t,n);return{total:s,count:i,lastRecord:c,firstRecord:l,currentPage:a/n,hasMore:c<i||o}}}I._requestTimeByDataUnit=new Map,I._debouncingTimeouts={};const O=/dd:\/\/([^/]+)\/([^/?]+)/;class R{constructor(){this.templateByQuery=new Map,this.buldTemplates()}buldTemplates(){this.templateByQuery.set("fetchDataUnit",u.gql`query($name: String!) {
2
- $queryAlias$: fetchDataUnit(name: $name){
3
- name
4
- fields{
5
- name
6
- defaultValue
7
- label
8
- visible
9
- standAlone
10
- readOnly
11
- required
12
- dataType
13
- userInterface
14
- calculated
15
- group
16
- order
17
- properties{
18
- name
19
- value
20
- }
21
- dependencies{
22
- masterFields
23
- type
24
- expression
25
- }
26
- }
27
- children{
28
- name
29
- label
30
- links{
31
- source
32
- target
33
- }
34
- }
35
- }
36
- }`),this.templateByQuery.set("saveData",u.gql`mutation($changes: [InputBatchChange!]!) {
37
- $queryAlias$: batchOperationDataUnit(changes: $changes){
38
- oldId
39
- id
40
- label
41
- ownerDataUnitName
42
- fields {
43
- name
44
- value
45
- }
46
- }
47
- }`),this.templateByQuery.set("fetchDataRecord",u.gql`query($dataunit: String! $recordID: [String!]) {
48
- $queryAlias$: fetchDataUnit(name: $dataunit){
49
- record(id: $recordID){
50
- id
51
- label
52
- fields {
53
- name
54
- value
55
- }
56
- }
57
- }
58
- }`),this.templateByQuery.set("fetchDistinctColumn",u.gql`query($dataUnit: String!, $fieldName: String!, $argument: String, $filters: [InputFilter], $parentRecordId: String) {
59
- $queryAlias$: selectDistinct(dataUnit: $dataUnit, fieldName: $fieldName, argument: $argument, filters: $filters, parentRecordId: $parentRecordId)
60
- }`)}static parseDataUnitName(t){if(null==t)return;const e=O.exec(t);return e?{entityName:e[1],resourceID:e[2]}:void 0}getDataUnit(t,r,n,a){null==g.applicationResourceID&&_.getResourceID().then((t=>g.applicationResourceID=t));const s=`dd://${t}/${r}${a?"/"+a:""}`,i=null!=n?n.getChildDataunit(s):new e(s);return i.metadataLoader=t=>this.loadMetadata(t),i.dataLoader=(t,e)=>I.loadData(t,e),i.saveLoader=(t,e)=>this.saveData(i,e),i.removeLoader=(t,e)=>this.removeRecords(t,e),i.recordLoader=(t,e)=>this.loadRecord(t,e),i.allRecordsLoader=t=>I.getCachedRecords(t),i}loadMetadata(t){return new Promise(((e,r)=>{c.get().callGraphQL({values:{name:t.name},query:this.templateByQuery.get("fetchDataUnit")}).then((t=>{var r;const n={name:t.name,label:t.name,children:[...t.children],fields:[]};null===(r=t.fields)||void 0===r||r.forEach((t=>{let e;Array.isArray(t.properties)&&(e={},t.calculated&&(e.gridHeaderTooltip="Campos calculados não podem ser ordenados"),t.properties.forEach((t=>e[t.name]=t.value))),n.fields.push(Object.assign(Object.assign({},t),{properties:e}))})),n.fields.sort(((t,e)=>t.order-e.order)),e(n)})).catch((t=>{r(t)}))}))}loadSelectDistinct(t,e,r){const{parentRecordId:n,filters:a}=t.getLastLoadRequest()||{},s=a.filter((t=>t.name!==`${d}${e}`)),i={dataUnit:t.name,argument:r,fieldName:e,parentRecordId:n,filters:s};return new Promise(((t,e)=>{c.get().callGraphQL({values:i,query:this.templateByQuery.get("fetchDistinctColumn")}).then((e=>{t(e)})).catch((t=>{e(t)}))}))}addTransientProperties(t,e){const r=t.getGlobalLoaderProps();return null==r||0===r.size||(null==e&&(e={}),Array.from(r.entries()).forEach((([t,r])=>{e[`transient.${t}`]=r}))),e}getUpdatingFields(t,e){if(null==e)return;const r=Object.assign({},e);return Object.keys(r).forEach((e=>{const n=t.getField(e);null!=n&&n.standAlone&&delete r[e]})),this.addTransientProperties(t,r)}saveData(t,e){const n=[],a=[],i=e.map((e=>{const{dataUnit:i,record:o,operation:c}=e,u=l.get(i),d=this.getUpdatingFields(u,e.updatingFields);let h;null!=d&&(h=Object.entries(d).map((([t,e])=>{const n=u.getField(t);return{fieldName:t,dataType:n?n.dataType:r.TEXT,value:u.valueToString(t,e)}}))),i===t.name&&(c===s.INSERT||c===s.COPY?a.push(o.__record__id__):n.push(o.__record__id__));const m={dataUnit:i,fields:h,operation:c,recordId:o.__record__id__};return e.sourceId&&(m.sourceId=e.sourceId),o.__parent__record__id__&&(m.parentRecordId=o.__parent__record__id__),m}));return new Promise(((e,r)=>{const s=i.map((t=>function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(n=Object.getOwnPropertySymbols(t);a<n.length;a++)e.indexOf(n[a])<0&&Object.prototype.propertyIsEnumerable.call(t,n[a])&&(r[n[a]]=t[n[a]])}return r}(t,[])));c.get().callGraphQL({values:{changes:s},query:this.templateByQuery.get("saveData")}).then((r=>{const s=[];null==r||r.forEach((e=>{const r={__record__id__:e.id,__record__label__:e.label,__owner__dataunit__name__:e.ownerDataUnitName},n=l.get(r.__owner__dataunit__name__)||t;e.oldId&&(r.__old__id__=e.oldId),e.fields.forEach((({name:t,value:e})=>{var a;const s=null===(a=null==n?void 0:n.valueFromString)||void 0===a?void 0:a.call(n,t,e);r[t]=void 0!==s?s:e})),s.push(r)})),this.updateCache(t,s,n,a),e(s)})).catch((t=>{r(t)}))}))}updateCache(t,e,r,n){const a=new Map(e.map((t=>[t.__old__id__||t.__record__id__,t]))),s=n.map((t=>{const e=Object.assign({},a.get(t));return delete e.__old__id__,e}));s.length>0&&g.insertRecords(t,t.records[0],s);const i=r.map((t=>Object.assign({},a.get(t))));g.updateRecords(t,i)}getTransientInfo(t,e){const{records:n}=t.getSelectionInfo();return Object.entries(n.filter((t=>t.__record__id__==e))[0]).filter((([t])=>t.startsWith(h.DATA_UNIT_TRANSIENT_PREFIX_NAME))).map((([t,e])=>({fieldName:t,value:e,dataType:r.TEXT})))}removeRecords(t,e){const r=e.map((e=>({dataUnit:t.name,operation:s.DELETE,recordId:e,fields:this.getTransientInfo(t,e)})));return new Promise(((n,a)=>{c.get().callGraphQL({values:{changes:r},query:this.templateByQuery.get("saveData")}).then((()=>{g.removeRecords(t,t.records.filter((t=>e.includes(t.__record__id__)))),n(e)})).catch((t=>{a(t)}))}))}loadRecord(t,e){return new Promise(((r,n)=>{c.get().callGraphQL({values:{recordID:e,dataunit:t.name},query:this.templateByQuery.get("fetchDataRecord")}).then((e=>{const n=[];e.record.forEach((e=>{const r={__record__id__:e.id,__record__label__:e.label};e.fields.forEach((({name:e,value:n})=>{r[e]=t.valueFromString(e,n)})),n.push(r)})),r(n)})).catch((t=>{n(t)}))}))}}export{R as D,D as I,g as P,N as a,y as b,v as c,b as d,P as g}
@@ -1,11 +0,0 @@
1
- import{r as t,c as s,h as e,g as i}from"./p-d2d301a6.js";import{DateUtils as n,StringUtils as r,ObjectUtils as o,WaitingChangeException as a,WarningException as c,ErrorException as h,KeyboardManager as l,OnboardingUtils as u,DependencyType as p,ArrayUtils as d,SearchUtils as w,ElementIDUtils as m,ApplicationContext as y,DataType as f,ErrorTracking as P}from"@sankhyalabs/core";import{ApplicationUtils as v}from"@sankhyalabs/ezui/dist/collection/utils";import{C as g}from"./p-3287a6cc.js";import{d as _,D as A,U as I}from"./p-594bc21d.js";import{A as S,a as b}from"./p-0cd3c0a9.js";import{D as C}from"./p-091ce761.js";import{P as N}from"./p-25f1fc39.js";import{S as L}from"./p-7c4aabe2.js";import"./p-181975f1.js";import"./p-ff1990ad.js";import"./p-8d884fab.js";import"@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata";import"@sankhyalabs/ezui/dist/collection/utils/constants";import"@sankhyalabs/ezui/dist/collection/components/ez-grid/utils";import"@sankhyalabs/core/dist/utils/SortingUtils";import"./p-688dcb4c.js";class D{static webConnectionCaller(t,s,e){var i;null===(i=window.AppletCaller)||void 0===i||i.webConnectionCaller(t,s,e)}}const T=k;function k(t,s){const e=E();return(k=function(t){return e[t-=378]})(t,s)}function E(){const t=["true","863GKWjmo","parse","56355fjjjAm","isSup","putAccess","4324480sjuCdS","hasOwnProperty","239748okvJLB","name","6055770tXeRaU","actions","forEach","7RPRvzn","1042CHxkUw","2988126NIwRMm","20MTNzmH","authorizationSf","item","string","hasAccess","isArray","Objeto não pode ser indefinido.","3071943fWslZp","parseFromJSON"];return(E=function(){return t})()}!function(){const t=k,s=E();for(;;)try{if(281287==parseInt(t(399))/1*(-parseInt(t(387))/2)+-parseInt(t(401))/3+parseInt(t(381))/4*(-parseInt(t(389))/5)+parseInt(t(388))/6*(-parseInt(t(386))/7)+parseInt(t(379))/8+parseInt(t(396))/9+parseInt(t(383))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}();class O{[T(397)](t){const s=T;if(typeof(t=utxt(t[s(390)]))==s(392)&&(t=JSON[s(400)](t)),null==t)throw Error(s(395));const e=new U("S"===t[s(402)]||!0===t[s(402)]);return Array[s(394)](t[s(391)])&&t[s(391)][s(385)]((t=>e.putAccess(t[s(382)],String(t.status)==s(398)))),e}}class U{constructor(t){const s=T;this.isSup=t,this[s(384)]={}}[T(378)](t,s){this[T(384)][t]=s}[T(393)](t){const s=T;if(this[s(402)])return!0;let e=!0;return this[s(384)][s(380)](t)&&(e=this.actions[t]),e}isUserSup(){return this.isSup}}class j{constructor(){this._embeddedParams=new Map,this.templateByQuery=new Map;try{if(null!=window.MGE_PARAMS){atob(window.MGE_PARAMS).split("__;__").forEach((t=>{const[s,e]=t.split("__=__");this._embeddedParams.set(s,e)}))}}catch(t){console.error("Problemas ao obter parâmetros embarcados"),console.error(t)}this.buldTemplates()}buldTemplates(){this.templateByQuery.set("fetchParam",_.gql`query($name: String!) {
2
- $queryAlias$: fetchResource(name: $name){
3
- name
4
- resource
5
- }
6
- }`)}async getParam(t){if(this._embeddedParams.has(t))return Promise.resolve(this._embeddedParams.get(t));const s=`param://application?params=${t}`;return A.get().callGraphQL({values:{name:s},query:this.templateByQuery.get("fetchParam")})}async asString(t){const s=await this.getParam(t);return this.getValue(s)}async asInteger(t){const s=await this.getParam(t);return parseInt(this.getValue(s))}async asFloat(t){const s=await this.getParam(t);return parseFloat(this.getValue(s))}async asBoolean(t){const s=await this.getParam(t);return"S"===this.getValue(s)}async asDate(t){const s=await this.getParam(t);return n.strToDate(this.getValue(s))}async getBatchParams(t){const s=await this.getParam(t.join(",")),e={};return s.forEach((t=>e[t.name]=t.resource)),e}getValue(t={}){if(Array.isArray(t)&&t.length>0&&(t=t[0]),"string"==typeof t)return t;if(r.isEmpty(t.resource))return"";try{const s=o.stringToObject(t.resource),[e]=Object.keys(s);return s[e]}catch(t){console.warn("Erro ao converter string JSON.")}}}class F{constructor(){this.templateByQuery=new Map,this.cancel=[],this.buildTemplates()}buildTemplates(){this.templateByQuery.set("fetchTotals",_.gql`query($filters: [InputFilter!] $name: String!) {
7
- $queryAlias$: fetchTotals(name: $name, filters: $filters ){
8
- name
9
- value
10
- }
11
- }`)}fetchTotals(t,s,e=[]){const i=`${t}_${s}`,n=this.cancel.findIndex((t=>t[i]));return n>=0&&(this.cancel[n][i](),this.cancel.splice(n,1)),Promise.race([new Promise((t=>this.cancel.push({[i]:t}))),this.getTotals(t,s,e)]).then((t=>{let s=new Map;if(t){s=t;const e=this.cancel.findIndex((t=>t[i]));e>=0&&this.cancel.splice(e,1)}return s}))}getTotals(t,s,e=[]){return new Promise(((i,n)=>{A.get().callGraphQL({query:this.templateByQuery.get("fetchTotals"),values:{name:`totals://${t}/${s}`,filters:e}}).then((t=>{if(t.length>0){const s=new Map;return t.forEach((t=>s.set(t.name,parseFloat(t.value)))),i(s)}return n("Não foi possível recuperar os totalizadores")})).catch(n)}))}}function M(){const t=["2909523kXwted","CompanyName=Sankhya Jiva Tecnologia e Inovao Ltda,LicensedApplication=Sankhya Gestao,LicenseType=SingleApplication,LicensedConcurrentDeveloperCount=2,LicensedProductionInstancesCount=0,AssetReference=AG-019460,ExpiryDate=9_November_2022_[v2]_MTY2Nzk1MjAwMDAwMA==10487151e296ee4360f80961ca960869","1131048CARoeW","502909mLEPmu","447255iQEXuN","428UHbJwW","270AFTxAV","194369jhGqTI","1540nWuTrj","2044062GicUQI","30CkXPWg"];return(M=function(){return t})()}const R=$;function $(t,s){const e=M();return($=function(t){return e[t-=392]})(t,s)}!function(){const t=$,s=M();for(;;)try{if(951926==-parseInt(t(398))/1+-parseInt(t(393))/2+parseInt(t(395))/3+-parseInt(t(400))/4*(parseInt(t(392))/5)+-parseInt(t(401))/6*(-parseInt(t(402))/7)+parseInt(t(397))/8+-parseInt(t(399))/9*(-parseInt(t(394))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}();const z=R(396);var q;class x{static openAppActivity(t,s){var e;null===(e=window.workspace)||void 0===e||e.openAppActivity(t,s)}static getAppLabel(t){if(null!=(null===window||void 0===window?void 0:window.workspace))return null==window.workspace.getAppLabel&&(window.workspace.getAppLabel=t=>(t||"").split(".").pop()),window.workspace.getAppLabel(t)}static setScreenToUseV3Layout(){var t;null===(t=window.workspace)||void 0===t||t.setScreenToUseV3Layout()}static setScreenToUseOldLayout(){var t;null===(t=window.workspace)||void 0===t||t.setScreenToUseOldLayout()}static showDesktop(){var t,s;null===(s=null===(t=window.workspace)||void 0===t?void 0:t.showDesktop)||void 0===s||s.call(t)}static searchApp(){var t,s;null===(s=null===(t=window.workspace)||void 0===t?void 0:t.searchApp)||void 0===s||s.call(t)}static openHelp(){var t,s;null===(s=null===(t=window.workspace)||void 0===t?void 0:t.openHelp)||void 0===s||s.call(t)}static applicationClick(){var t,s;(null===(t=window.workspace)||void 0===t?void 0:t.applicationClick)&&(null===(s=window.workspace)||void 0===s||s.applicationClick())}}x.resourceID=null===(q=window.workspace)||void 0===q?void 0:q.resourceID;class B{constructor(t){this._app=t,window.addEventListener("error",(t=>this.errorHandler(t))),window.addEventListener("unhandledrejection",(t=>this.rejectionHandler(t)))}rejectionHandler(t){const s=t.reason;s instanceof a||(s?this.processException(s):this._app.isDebugMode().then((t=>{t&&this._app.error("Promise rejeitada","Erro interno: Uma promise foi rejeitada sem razão determinada.")})))}errorHandler(t){this.processException(t.error)}buildErrorCodeHTML(t){return'<br><a href="#" onclick="try{window.workspace.openHelp(\'_tbcode:'+t+"')} catch(e){alert('Não é possível abrir a ajuda fora do workspace Sankhya');}\">Código: "+t+"</a>"}processException(t){t.errorCode&&(t.message+=this.buildErrorCodeHTML(t.errorCode)),t instanceof a||t instanceof c?this._app.alert(t.title,t.message):t instanceof h?this._app.error(t.title,t.message):this._app.isDebugMode().then((s=>{if(s)if(t instanceof Error)this._app.error(t.name,t.message);else{const s=(null==t?void 0:t.title)||"Erro detectado",e="string"==typeof t?t:t.message||`Erro interno "${o.objectToString(t)}"`;this._app.error(s,e)}}))}}const K=class{constructor(e){t(this,e),this.applicationLoaded=s(this,"applicationLoaded",7),this.applicationLoading=s(this,"applicationLoading",7),this.NEW_VERSION_POPUP_LOCKER="NEW_VERSION_POPUP_LOCKER",this._authPromises=[],this._keyboardManager=new l,this._waitingAppReady=new Array,this._duCache=new Map,this._duPromises=new Map,this._requestListener=new H,this._pendingActions=new Map,this._loadPkParameter=null,this._isLoadedByPk=!1,this.messagesBuilder=void 0,this.configName=void 0,this.gridLegacyConfigName=void 0,this.formLegacyConfigName=void 0,this.loadByPK=void 0}async processPendingActions(t){const s=this._pendingActions.get(t);s&&s.length&&(s.forEach((t=>t())),this._pendingActions.set(t,[]))}get parameters(){return this._parameters||(this._parameters=new j),this._parameters}async getAuth(t){return null==t?this.getApplicationAuth():new Promise(((s,e)=>{this.authFetcher.getData(t).then((t=>{s(t)})).catch((t=>{e(t)}))}))}async getApplicationAuth(){return this._auth?Promise.resolve(this._auth):new Promise(((t,s)=>{const e=this._authPromises.length>0;this._authPromises.push(new V(t,s)),e||this.authFetcher.getData(this.applicationResourceID).then((t=>{for(this._auth=t;this._authPromises.length>0;)this._authPromises.pop().resolve(this._auth)})).catch((t=>{for(;this._authPromises.length>0;)this._authPromises.pop().reject(t)}))}))}watchPropHandler(t,s){t&&this._loadPkParameter&&(this.loadByPK(this._loadPkParameter.pk,this._loadPkParameter.redirect),this._loadPkParameter=null)}async getKeyboardManager(){return Promise.resolve(this._keyboardManager)}async isUserSup(){return new Promise(((t,s)=>{this.getAuth().then((e=>{this.getAuthList(e).then((s=>{t(s.isSup)})).catch((t=>s(t)))}))}))}async addPendingAction(t,s){var e;const i=null!==(e=this._pendingActions.get(t))&&void 0!==e?e:[];this._pendingActions.set(t,[...i,s])}async callServiceBroker(t,s,e){return A.get().callServiceBroker(t,s,e)}async initOnboarding(t){this.hasToShowNewVersionPopup()?await this.addPendingAction(this.NEW_VERSION_POPUP_LOCKER,(()=>this.doInitOnboarding(t))):this.doInitOnboarding(t)}doInitOnboarding(t){u.getInstance().init(t,window.envContext)}async hasAccess(t,s){return new Promise(((e,i)=>{this.getAuth(s).then((s=>{this.getAuthList(s).then((s=>{e(s.isSup||s.actions[t])})).catch((t=>i(t)))}))}))}async getAllAccess(t){return new Promise(((s,e)=>{this.getAuth(t).then((t=>{this.getAuthList(t).then((t=>{const e={};e.isSup=t.isSup,Object.entries(S).forEach((s=>{e[s[0]]=t.actions[s[1]]||!1})),s(e)})).catch((t=>e(t)))}))}))}async getStringParam(t){return this.parameters.asString(t)}async getIntParam(t){return this.parameters.asInteger(t)}async getFloatParam(t){return this.parameters.asFloat(t)}async getBooleanParam(t){return this.parameters.asBoolean(t)}async getDateParam(t){return this.parameters.asDate(t)}async showPopUp(t,s="full",e=!0,i){this.clearContent(this._popUp),this._popUp.addEventListener("ezClosePopup",(()=>{i()}),{once:!0}),this._popUp.appendChild(t),this._popUp.opened=!0,this._popUp.heightMode=s,this._popUp.useHeader=e,"EZ-MODAL-CONTAINER"===t.tagName&&(this._popUp.useHeader=!1)}async showModal(t){this.clearContent(this._rightModal),this._rightModal.appendChild(t),this._rightModal.opened=!0}showAlerts(t){return v.showAlerts({alerts:t})}async closeModal(){this.clearContent(this._rightModal),this._rightModal.opened=!1}async closePopUp(){this.clearContent(this._popUp),this._popUp.opened=!1,this._popUp.useHeader=!0,this._popUp.heightMode="full"}async temOpcional(t){const s=t.split(",");return new Promise(((t,e)=>{this.getAttributeFromHTMLWrapper("opc0009").then((i=>{"1"===i?t(!0):Promise.all(s.map((t=>this.getAttributeFromHTMLWrapper("opc"+t)))).then((s=>{t(s.includes("1"))})).catch((t=>{e(t)}))})).catch((t=>{e(t)}))}))}async getConfig(t){let s={serviceName:"SystemUtilsSP.getConf",requestBody:{config:{chave:t,tipo:"T"}}};return new Promise(((t,e)=>{A.get().callServiceBroker("SystemUtilsSP.getConf",JSON.stringify(s)).then((s=>{var e;return t(null===(e=s.config)||void 0===e?void 0:e.data)})).catch((t=>e(t)))}))}async saveConfig(t,s){let e={serviceName:"SystemUtilsSP.saveConf",requestBody:{config:{chave:t,tipo:"T",data:s}}};return new Promise(((t,s)=>{A.get().callServiceBroker("SystemUtilsSP.saveConf",JSON.stringify(e)).then((s=>t(s))).catch((t=>s(t)))}))}async getAttributeFromHTMLWrapper(t){return Promise.resolve(window[t])}async openApp(t,s){x.openAppActivity(t,s)}async webConnection(t,s,e){this.getStringParam(t).then((t=>{D.webConnectionCaller(t,s,e)}))}getDuPromissesStack(t){let s;return t&&(s=this._duPromises.get(t),s||(s=[],this._duPromises.set(t,s))),s||[]}async createDataunit(t,s,e,i,n){return null==n&&(n=this.applicationResourceID),new Promise(((r,o)=>{const a=this.getDuPromissesStack(s),c=a.length>0;if(a.push(new V(r,o)),!c){const r=this.dataUnitFetcher.getDataUnit(t,n,e,i);r.loadMetadata().then((()=>{this.processResolveDataUnit(r,s,a)})).catch((t=>{for(;a.length>0;)a.pop().reject(t)}))}}))}processResolveDataUnit(t,s,e){for(s&&this.updateDataunitCache(void 0,s,t);e.length>0;)e.pop().resolve(t)}async updateDataunitCache(t,s,e){t&&this._duCache.delete(t),this._duCache.set(s,e)}async getDataUnit(t,s,e,i,n){return new Promise(((r,o)=>{const a=this._duCache.get(s);a?r(a):this.createDataunit(t,s,e,i,n).then((t=>{r(t)})).catch((t=>o(t)))}))}async addClientEvent(t,s){return new Promise((e=>{A.addClientEvent(t,s),e()}))}async removeClientEvent(t){return new Promise((s=>{A.removeClientEvent(t),s()}))}async hasClientEvent(t){return new Promise((s=>{s(A.hasClientEvent(t))}))}get applicationResourceID(){return this._applicationResourceID||(this._applicationResourceID=this.urlParams.get("workspaceResourceID")||this.urlParams.get("resourceID")||x.resourceID||"unknown.resource.id"),this._applicationResourceID}async getResourceID(){return Promise.resolve(this.applicationResourceID)}async getUserID(){return Promise.resolve(window.UID)}async alert(t,s,e,i){return v.alert(t,s,e,i)}async error(t,s,e,i){return v.error(t,s,e,i)}async success(t,s,e,i){return v.success(t,s,e,i)}async message(t,s,e,i){return v.message(t,s,e,i)}async confirm(t,s,e,i,n){return v.confirm(t,s,e,i,n)}async info(t,s){return v.info(t,s)}async loadTotals(t,s,e){return this.totalsFetcher.fetchTotals(t,s,e)}async isLoadedByPk(){return Promise.resolve(this._isLoadedByPk)}async getAuthList(t){return await(new O).parseFromJSON(t)}get urlParams(){return this._urlParams||(this._urlParams=I.getQueryParams(location.search)),this._urlParams}getMessage(t,s){var e;return null===(e=this.messagesBuilder)||void 0===e?void 0:e.getMessage(t,s)}get dataUnitFetcher(){return this._dataUnitFetcher||(this._dataUnitFetcher=new C),this._dataUnitFetcher}get totalsFetcher(){return this._totalsFetcher||(this._totalsFetcher=new F),this._totalsFetcher}get pesquisaFetcher(){return this._pesquisaFetcher||(this._pesquisaFetcher=new N),this._pesquisaFetcher}get authFetcher(){return this._authFetcher||(this._authFetcher=new b),this._authFetcher}async executeSearch(t,s,e){const i=null==e?void 0:e.getField(s);if(i){const{mode:s,argument:n}=t,{ENTITYNAME:r,CODEFIELD:o,DESCRIPTIONFIELD:a,ROOTENTITY:c,DESCRIPTIONENTITY:h}=i.properties,l=i.dependencies;let u;const d={rootEntity:c,descriptionFieldName:a,codeFieldName:o,showInactives:!1,dataUnitId:e.dataUnitId};return null==l||l.filter((t=>t.masterFields)).forEach((t=>{var s;t.type===p.SEARCHING&&(null===(s=t.masterFields)||void 0===s?void 0:s.length)>0&&(u={expression:t.expression,params:t.masterFields.map((t=>{const s=e.getField(t),i=(null==s?void 0:s.dataType)||f.TEXT,n=e.getFieldValue(t);if(null==n)throw this.alert("Erro ao pesquisar",`É necessario informar o campo ${s.label} para executar a pesquisa.`),new Error(`É necessario informar o campo ${s.label} para executar a pesquisa.`);return{name:t,value:n,dataType:i}}))})})),this.executePreparedSearch(s,n,{entity:r,entityDescription:h,criteria:u,searchOptions:d})}}filterInvalidFields(t,s,e){return t.fieldsMetadata.filter((i=>{let n=!r.isEmpty(s[i.fieldName])&&!1!==i.visible&&"B"!==i.type&&t.pkField!==i.fieldName&&t.descriptionField!==i.fieldName&&(i.isPrimaryKey||!i.isLinkField)&&!("S"===i.type&&"H"===i.presentationType);return n&&(e[i.fieldName]=i),("string"!=typeof s[i.fieldName]||!(s[i.fieldName].indexOf("<img")>-1||s[i.fieldName].indexOf("<svg")>-1))&&n}))}filterMathFields(t,s,e,i){return t&&Array.isArray(t)&&t.forEach((t=>{let e=d.removeReference(s,i[t]);e&&s.unshift(e)})),s=s.slice(0,e)}builOptionItem(t,s,e,i,n){var o;return{value:r.highlightValue(t,s.__matchFields,null===(o=s[n])||void 0===o?void 0:o.toString(),e,!0),label:i?r.highlightValue(t,s.__matchFields,s[i],e,!0):"",details:w.buildDetails(t,e,s)}}async executePreparedSearch(t,s,e){const i={},{entity:n,entityDescription:r,criteria:a,searchOptions:c}=e;return new Promise("ADVANCED"===t?(t,e)=>{const i=document.createElement("snk-pesquisa");i[m.DATA_ELEMENT_ID_ATTRIBUTE_NAME]=`entity_${n}`,i.argument=s,i.searchLoader=t=>this.pesquisaFetcher.loadAdvancedSearch(n,t,a,c),i.selectItem=s=>{t(s),this.clearPopUpTitle(),this.closePopUp()},this.setPopUpTitle(r),this.showPopUp(i,void 0,void 0,e)}:(t,e)=>{this.pesquisaFetcher.loadAdvancedSearch(n,s,a,c).then((e=>{let n=(e=o.stringToObject(e.json.$)).descriptionField,r=e.pkField;const a=[];e.data.forEach((t=>{let o=this.filterInvalidFields(e,t,i),c=this.filterMathFields(t.__matchFields,o,6,i);a.push(this.builOptionItem(s,t,c,n,r))})),t(a)})).catch((t=>{e(t)}))})}async isDebugMode(){return new Promise((t=>{t(window.isDebugMode)}))}async getAppLabel(){return x.getAppLabel(this.applicationResourceID)}addSearchListener(t,s,e){return new Promise((i=>{i(this.pesquisaFetcher.addSearchListener(t,s.dataUnitId,e))}))}importScript(t){return new Promise((s=>{this.getApplicationPath().then((e=>{let i=[];Array.isArray(t)||(i=[t]),i.forEach((t=>{const s=document.createElement("script");s.src=`${e}/${t}`,s.async=!0,document.body.appendChild(s)})),s()}))}))}async getApplicationPath(){return new Promise((t=>{"dev"===window.applicationenv?t(""):t(`/${this.getModuleName()}/labsApps/${window.APPLICATION_NAME}/build`)}))}getModuleName(){return window.MGE_MODULE_NAME||"mgefin-bff"}executeSelectDistinct(t,s,e){return this.dataUnitFetcher.loadSelectDistinct(t,s,e)}getDataFetcher(){return Promise.resolve(A.get())}async whenApplicationReady(){return y.getContextValue("__SNK__APPLICATION__LOADING__")?Promise.resolve(this):new Promise((t=>{this._waitingAppReady.push((()=>t(this)))}))}async setSearchFilterContext(t,s){y.setContextValue(`__SNK__APPLICATION__FILTER__CONTEXT(${t})__`,s)}clearContent(t){t&&Array.from(t.children).forEach((s=>{t.removeChild(s)}))}clearPopUpTitle(){this._popUp.ezTitle=""}setPopUpTitle(t){this._popUp.ezTitle=t}async pkChangeListener(){const t=top.window.location.hash.split("/")[2];if(this._currentPkParameter===t)return;const s=this.getResourceIdFromToken(),e=I.getPkObjectFromUrlToken(top.window.location.hash),i=window.redirectFrom;if(void 0===e)return;if((!i||-1===i.split("_")[0].indexOf(s.split("_")[0]))&&s!==this.applicationResourceID)return;const n={pk:e};if(this._isLoadedByPk=!0,this.loadByPK)return this.loadByPK(n,i),void(this._currentPkParameter=t);this._loadPkParameter={pk:n,redirect:i},this.defaultLoadByPK(n,t)}getResourceIdFromToken(){return top.window.location.pathname.indexOf("tabContent.jsp")>-1?I.getResourceIdFromUrlToken(window.location.generateHash(window.location.hash)):I.getResourceIdFromUrlToken(top.window.location.hash)}defaultLoadByPK(t,s){if(!(null==t?void 0:t.pk))return;const e=this.getFirstDataUnitFromDOM(),i=e.dataUnit;if(!i)return console.warn("Dataunit não inicializado"),void e.addEventListener("dataUnitReady",(e=>{this.loadDataWithPKFilter(t,e.detail),this._currentPkParameter=s}));this.loadDataWithPKFilter(t,i),this._currentPkParameter=s}loadDataWithPKFilter(t,s){const e={term:"",filter:{name:"LOAD_BY_PK_FILTER",expression:this.buildFilterExpressionByPkObject(t),params:this.getFilterParamsFromPkObject(t,s)}};s.loadData(e)}getFirstDataUnitFromDOM(){let t=this._element.querySelector("snk-data-unit[data-load-by-pk]");if(t||(t=this._element.querySelector("snk-data-unit")),t)return t}getFilterParamsFromPkObject(t,s){var e;const i=[];for(const n in t.pk)t.pk.hasOwnProperty(n)&&!Array.isArray(t.pk[n])&&i.push({name:n,dataType:(null===(e=s.getField(n))||void 0===e?void 0:e.dataType)||this.getDefaultDataTypeLoadByPK(t.pk[n]),value:t.pk[n]});return i}getDefaultDataTypeLoadByPK(t){return"number"==typeof t||t instanceof Number?f.NUMBER:"boolean"==typeof t||t instanceof Boolean?f.BOOLEAN:t instanceof Date?f.DATE:f.TEXT}buildFilterExpressionByPkObject(t){let s="";for(const e in t.pk)r.isEmpty(s)||(s+=" AND "),Array.isArray(t.pk[e])?s+=`${e} IN (${t.pk[e].toString()})`:s+=`${e} = :${e}`;return s}async showNewVersionPopup(){const t=document.createElement("ez-modal-container"),s=await this.getAppLabel();t.modalTitle=this.getMessage("snkApplication.newVersionPopup.title",{screenName:s}),t.okButtonLabel=this.getMessage("snkApplication.newVersionPopup.okButton"),t.cancelButtonLabel=this.getMessage("snkApplication.newVersionPopup.cancelButton");const e=document.createElement("p");e.innerText=this.getMessage("snkApplication.newVersionPopup.info"),e.className="ez-text",t.appendChild(e),t.addEventListener("ezModalAction",this.newVersionPopupEventListener.bind(this));const i=await v.showPopup({content:t});this._removeVersionLayoutPopup=async()=>{await i(),await this.processPendingActions(this.NEW_VERSION_POPUP_LOCKER)}}async newVersionPopupEventListener(t){"LOAD"!==t.detail&&("OK"===t.detail&&x.setScreenToUseV3Layout(),"CANCEL"===t.detail&&x.setScreenToUseOldLayout(),this._popUp.opened=!1,this._removeVersionLayoutPopup&&await this._removeVersionLayoutPopup())}async handleShowNewVersionPopup(){this.hasToShowNewVersionPopup()&&await this.showNewVersionPopup()}hasToShowNewVersionPopup(){const t=new URLSearchParams(window.location.search).get("firstLoadConv");return t&&"S"===t}registerPkChangeListener(){window.hasOwnProperty("onhashchange")?window.onhashchange=this.pkChangeListener.bind(this):setInterval(this.pkChangeListener.bind(this),100)}componentWillLoad(){y.setContextValue("__SNK__APPLICATION__LOADING__",!0),this._errorHandler=new B(this),this.messagesBuilder=new L,y.setContextValue("__EZUI__UPLOAD__ADD__URL__",`${I.getUrlBase()}/mge/upload/file`),y.setContextValue("__EZUI__SEARCH__OPTION__LOADER__",((t,s,e)=>this.executeSearch(t,s,e))),y.setContextValue("__EZUI__GRID_LICENSE__",z),this.registerPkChangeListener(),P.init(),g.preload(this.applicationResourceID,this.configName,{gridLegacyConfig:this.gridLegacyConfigName,formLegacyConfig:this.formLegacyConfigName}),document.addEventListener("click",(()=>x.applicationClick())),this._waitingAppReady.forEach((t=>t()))}connectedCallback(){y.setContextValue("__SNK__APPLICATION__",this),A.addRequestListener(this._requestListener)}disconnectedCallback(){A.removeRequestListener(this._requestListener),this.removeShortcuts()}async componentDidLoad(){this.applicationLoading.emit(!0),window.requestAnimationFrame((()=>{y.setContextValue("__SNK__APPLICATION__LOADING__",!1),this.applicationLoaded.emit(!0),this.pkChangeListener()})),m.addIDInfo(this._element,`resource_${this.applicationResourceID}`),await this.handleShowNewVersionPopup(),this.initKeyboardManager()}initKeyboardManager(){this._keyboardManager.bind("ctrl + g",x.searchApp.bind(this),{description:"Pesquisar por telas"}).bind("ctrl + d",x.showDesktop.bind(this),{description:"Mostrar o desktop"}).bind("F1",x.openHelp.bind(this),{description:"Abrir ajuda"})}removeShortcuts(){this._keyboardManager.unbind("ctrl + g").unbind("ctrl + d").unbind("F1")}render(){return e("div",null,e("ez-loading-bar",{ref:t=>this._requestListener.loadingBar=t}),e("ez-popup",{opened:!1,ref:t=>this._popUp=t,onEzClosePopup:()=>this.closePopUp()}),e("ez-modal",{opened:!1,ref:t=>this._rightModal=t,"modal-size":"small",closeOutsideClick:!0,closeEsc:!0}))}get _element(){return i(this)}static get watchers(){return{loadByPK:["watchPropHandler"]}}};class H{constructor(){this._debounceTime=1e3,this._ignoredNameTypes=["totals"],this._countRequest=0}onRequestStart(t){this.isIgnoreLoadingOnRequest(t)||(this._countRequest++,this.loadingBar.show(),this._timerLoading&&clearTimeout(this._timerLoading))}onRequestEnd(t){this.isIgnoreLoadingOnRequest(t)||(this._countRequest--,this._timerLoading=setTimeout((()=>{this._countRequest<=0&&this.loadingBar.hide()}),this._debounceTime))}isIgnoreLoadingOnRequest(t){if(null==t)return!1;if(t.url.includes("quietMode=true"))return!0;if(null==t.requestBody)return!1;if(1==t.requestBody.length){const{name:s}=t.requestBody[0].variables;if(s){const t=s.split(":");return this._ignoredNameTypes.indexOf(t[0])>=0}}return!1}}class V{constructor(t,s){this.resolve=t,this.reject=s}}K.style=".sc-snk-application-h{display:flex;flex-direction:column;height:100%}";export{K as snk_application}