@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,9 +1,10 @@
1
1
  import { h, Host } from '@stencil/core';
2
- import { ApplicationContext, ElementIDUtils, FloatingManager, StringUtils, JSUtils } from '@sankhyalabs/core';
2
+ import { ApplicationContext, ElementIDUtils, StringUtils, KeyboardManager } from '@sankhyalabs/core';
3
3
  import { TaskbarElement } from '../snk-taskbar/elements/taskbar-elements';
4
4
  import { PresentationMode } from '../../lib';
5
5
  import { VIEW_MODE } from '../../lib/utils/constants';
6
6
  import { AutorizationType } from '../../lib/http/data-fetcher/fetchers/auth-fetcher';
7
+ import { ExporterStrategy } from '../../lib/@types';
7
8
  /**
8
9
  * É possível customizar as mensagens dos blocos de construção através de um pequeno modulo na estrutura da aplicação:
9
10
  * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
@@ -11,7 +12,6 @@ import { AutorizationType } from '../../lib/http/data-fetcher/fetchers/auth-fetc
11
12
  */
12
13
  export class SnkCrud {
13
14
  constructor() {
14
- this._keyDownHandler = async (event) => this.keyDownListener(event);
15
15
  this._viewHistory = [];
16
16
  this._customEditors = new Map();
17
17
  this._customRenders = new Map();
@@ -21,6 +21,8 @@ export class SnkCrud {
21
21
  this._currentViewMode = VIEW_MODE.GRID;
22
22
  this._canEdit = undefined;
23
23
  this._resourceID = undefined;
24
+ this.enableLockManagerLoadingComp = false;
25
+ this.enableLockManagerTaskbarClick = false;
24
26
  this.configName = undefined;
25
27
  this.filterBarTitle = undefined;
26
28
  this.selectionToastConfig = undefined;
@@ -39,8 +41,14 @@ export class SnkCrud {
39
41
  this.disablePersonalizedFilter = undefined;
40
42
  this.autoLoad = undefined;
41
43
  this.autoFocus = true;
44
+ this.enableGridInsert = false;
42
45
  this.domainMessagesBuilder = undefined;
46
+ this.ignoreReadOnlyFormFields = undefined;
43
47
  this.setCustomFormTitle = undefined;
48
+ this.strategyExporter = ExporterStrategy.SERVER_SIDE;
49
+ this.layoutFormConfig = false;
50
+ this.multipleEditionEnabled = true;
51
+ this.paginationCounterMode = 'auto';
44
52
  this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
45
53
  }
46
54
  /**
@@ -127,14 +135,20 @@ export class SnkCrud {
127
135
  this.setViewMode(VIEW_MODE.FORM);
128
136
  }
129
137
  async executeAction(act) {
130
- if (act === TaskbarElement.GRID_MODE)
131
- return this.setViewMode(VIEW_MODE.GRID);
132
- if (act === TaskbarElement.FORM_MODE || act === TaskbarElement.UPDATE)
133
- return this.gridToForm(act !== TaskbarElement.UPDATE);
134
- if (act === TaskbarElement.CONFIGURATOR)
135
- return this._snkConfigurator.open();
136
- if (act === "ATTACH")
137
- return this.setViewMode(VIEW_MODE.ATTACHMENT);
138
+ switch (act) {
139
+ case TaskbarElement.GRID_MODE:
140
+ return this.setViewMode(VIEW_MODE.GRID);
141
+ case TaskbarElement.FORM_MODE:
142
+ case TaskbarElement.UPDATE:
143
+ return this.gridToForm(act !== TaskbarElement.UPDATE);
144
+ case TaskbarElement.UPDATE_MULTIPLE:
145
+ this._dataUnit.isMultipleEdition = true;
146
+ return this.setViewMode(VIEW_MODE.FORM);
147
+ case TaskbarElement.CONFIGURATOR:
148
+ return this._snkConfigurator.open();
149
+ case TaskbarElement.ATTACH:
150
+ return this.setViewMode(VIEW_MODE.ATTACHMENT);
151
+ }
138
152
  }
139
153
  backView() {
140
154
  const lastView = this._viewHistory.at(-2) || VIEW_MODE.GRID;
@@ -144,6 +158,7 @@ export class SnkCrud {
144
158
  this._viewStack.show(viewMode);
145
159
  this._currentViewMode = viewMode;
146
160
  if (viewMode === VIEW_MODE.GRID) {
161
+ this._dataUnit.isMultipleEdition = false;
147
162
  this._snkGrid.setFocus();
148
163
  }
149
164
  else if (viewMode === VIEW_MODE.FORM) {
@@ -165,6 +180,8 @@ export class SnkCrud {
165
180
  ElementIDUtils.addIDInfo(this._element, null, dataInfo);
166
181
  }
167
182
  insertionModeHandler() {
183
+ if (this.enableGridInsert)
184
+ return;
168
185
  this.gridToForm();
169
186
  }
170
187
  cancelHandler() {
@@ -239,7 +256,6 @@ export class SnkCrud {
239
256
  }
240
257
  disconnectedCallback() {
241
258
  this.removeShortcuts();
242
- window.removeEventListener("keydown", this._keyDownHandler);
243
259
  }
244
260
  async handleDataStateChange(evt) {
245
261
  var _a;
@@ -262,39 +278,34 @@ export class SnkCrud {
262
278
  ;
263
279
  }
264
280
  async initKeyboardManager() {
265
- var _a;
266
- const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
267
- if (keyboardManager) {
268
- const dataUnit = this._dataUnit || await this._snkDataUnit.getDataUnit();
269
- async function saveDataUnitHandlingFocus() {
270
- const element = document.activeElement;
271
- const isDocumentBody = (element == document.body);
272
- if (!isDocumentBody)
273
- element.blur();
274
- await dataUnit.saveData();
275
- if (!isDocumentBody && element.setFocus != undefined) {
276
- element.setFocus();
277
- return;
278
- }
279
- if (!isDocumentBody)
280
- element.focus();
281
+ this._keyboardManager = new KeyboardManager({ propagate: false, element: this._element });
282
+ const dataUnit = this._dataUnit || await this._snkDataUnit.getDataUnit();
283
+ async function saveDataUnitHandlingFocus() {
284
+ const element = document.activeElement;
285
+ const isDocumentBody = (element == document.body);
286
+ if (!isDocumentBody)
287
+ element.blur();
288
+ await dataUnit.saveData();
289
+ if (!isDocumentBody && element.setFocus != undefined) {
290
+ element.setFocus();
291
+ return;
281
292
  }
282
- keyboardManager
293
+ if (!isDocumentBody)
294
+ element.focus();
295
+ }
296
+ async function handleAddRecord() {
297
+ if (!dataUnit.hasNewRecord()) {
298
+ dataUnit.addRecord();
299
+ }
300
+ }
301
+ if (this._keyboardManager) {
302
+ this._keyboardManager
283
303
  .bind("F6", this.toggleView.bind(this), { description: "Alterna entre modo formulário e grade.", element: this._element })
284
304
  .bind("F7", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
285
305
  .bind("ctrl + \\", saveDataUnitHandlingFocus.bind(this), { description: "Salva os dados.", element: this._element })
286
- .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro.", element: this._element })
306
+ .bind("F8", handleAddRecord.bind(this), { description: "Adiciona um novo registro.", element: this._element })
287
307
  .bind("F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
288
308
  .bind("ctrl + F9", dataUnit.removeSelectedRecords.bind(dataUnit), { description: "Remove o registro selecionado.", element: this._element })
289
- .bind("ctrl + .", () => {
290
- if (dataUnit.getSelectionInfo().records.length === 0) {
291
- return dataUnit.selectFirst();
292
- }
293
- return dataUnit.nextRecord();
294
- }, {
295
- description: "Avança para o próximo registro.", element: this._element
296
- })
297
- .bind("ctrl + ,", dataUnit.previousRecord.bind(dataUnit), { description: "Retorna ao registro anterior.", element: this._element })
298
309
  .bind("F5", async () => {
299
310
  const currentView = await this._viewStack.getSelectedIndex();
300
311
  if (VIEW_MODE.GRID === currentView) {
@@ -313,20 +324,7 @@ export class SnkCrud {
313
324
  }
314
325
  async removeShortcuts() {
315
326
  var _a;
316
- const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
317
- if (keyboardManager) {
318
- keyboardManager
319
- .unbind("F6")
320
- .unbind("F7")
321
- .unbind("ctrl + \\")
322
- .unbind("F8")
323
- .unbind("F9")
324
- .unbind("ctrl + F9")
325
- .unbind("ctrl + .")
326
- .unbind("ctrl + ,")
327
- .unbind("F5")
328
- .unbind("Escape");
329
- }
327
+ (_a = this._keyboardManager) === null || _a === void 0 ? void 0 : _a.unbindAllShortcutKeys();
330
328
  }
331
329
  async toggleView() {
332
330
  const currentView = await this._viewStack.getSelectedIndex();
@@ -353,34 +351,12 @@ export class SnkCrud {
353
351
  }
354
352
  this.configuratorCancel.emit();
355
353
  }
356
- async keyDownListener(event) {
357
- if (!event.ctrlKey || event.key == undefined || event.key.toUpperCase() !== "F") {
358
- return;
359
- }
360
- if (this._element == undefined) {
361
- return;
362
- }
363
- if (JSUtils.isHiddenElement(this._element)) {
364
- return;
365
- }
366
- FloatingManager.closeAll();
367
- if (this._currentViewMode === VIEW_MODE.GRID) {
368
- await this._snkGrid.findColumn();
369
- }
370
- else {
371
- await this._guidesViewer.findField();
372
- }
373
- event.preventDefault();
374
- }
375
- connectedCallback() {
376
- window.addEventListener("keydown", this._keyDownHandler, { capture: true });
377
- }
378
354
  render() {
379
355
  if (this._resourceID == undefined) {
380
356
  return;
381
357
  }
382
- this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
383
- return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName, getCustomTitle: this.setCustomFormTitle }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
358
+ this._snkDataUnit.ignoreSaveMessage = (this._currentViewMode === VIEW_MODE.GRID && !this.enableGridInsert);
359
+ return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", { class: 'ez-flex ez-flex--column ez-size-height--full ez-size-width--full ez-padding--medium' }, h("snk-grid", { ref: (ref) => this._snkGrid = ref, class: 'ez-flex ez-flex--column ez-size-height--full ez-size-width--full', filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName, autoLoad: this.autoLoad, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, strategyExporter: this.strategyExporter, multipleEditionEnabled: this.multipleEditionEnabled, paginationCounterMode: this.paginationCounterMode }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName, enableGridInsert: this.enableGridInsert, getCustomTitle: this.setCustomFormTitle, ignoreReadOnlyFormFields: this.ignoreReadOnlyFormFields }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", { tabIndex: "0" }, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId, layoutFormConfig: this.layoutFormConfig })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
384
360
  }
385
361
  static get is() { return "snk-crud"; }
386
362
  static get encapsulation() { return "scoped"; }
@@ -396,6 +372,42 @@ export class SnkCrud {
396
372
  }
397
373
  static get properties() {
398
374
  return {
375
+ "enableLockManagerLoadingComp": {
376
+ "type": "boolean",
377
+ "mutable": false,
378
+ "complexType": {
379
+ "original": "boolean",
380
+ "resolved": "boolean",
381
+ "references": {}
382
+ },
383
+ "required": false,
384
+ "optional": true,
385
+ "docs": {
386
+ "tags": [],
387
+ "text": "Define se o componente deve usar o LockManager para controle de carregamento da aplica\u00E7\u00E3o"
388
+ },
389
+ "attribute": "enable-lock-manager-loading-comp",
390
+ "reflect": false,
391
+ "defaultValue": "false"
392
+ },
393
+ "enableLockManagerTaskbarClick": {
394
+ "type": "boolean",
395
+ "mutable": false,
396
+ "complexType": {
397
+ "original": "boolean",
398
+ "resolved": "boolean",
399
+ "references": {}
400
+ },
401
+ "required": false,
402
+ "optional": true,
403
+ "docs": {
404
+ "tags": [],
405
+ "text": "Ativa o gerenciamento de locks na grade pela Taskbar."
406
+ },
407
+ "attribute": "enable-lock-manager-taskbar-click",
408
+ "reflect": false,
409
+ "defaultValue": "false"
410
+ },
399
411
  "configName": {
400
412
  "type": "string",
401
413
  "mutable": true,
@@ -737,6 +749,24 @@ export class SnkCrud {
737
749
  "reflect": false,
738
750
  "defaultValue": "true"
739
751
  },
752
+ "enableGridInsert": {
753
+ "type": "boolean",
754
+ "mutable": false,
755
+ "complexType": {
756
+ "original": "boolean",
757
+ "resolved": "boolean",
758
+ "references": {}
759
+ },
760
+ "required": false,
761
+ "optional": true,
762
+ "docs": {
763
+ "tags": [],
764
+ "text": "Ativa inser\u00E7\u00E3o de registros no modo grade."
765
+ },
766
+ "attribute": "enable-grid-insert",
767
+ "reflect": false,
768
+ "defaultValue": "false"
769
+ },
740
770
  "domainMessagesBuilder": {
741
771
  "type": "string",
742
772
  "mutable": false,
@@ -754,6 +784,23 @@ export class SnkCrud {
754
784
  "attribute": "domain-messages-builder",
755
785
  "reflect": false
756
786
  },
787
+ "ignoreReadOnlyFormFields": {
788
+ "type": "boolean",
789
+ "mutable": false,
790
+ "complexType": {
791
+ "original": "boolean",
792
+ "resolved": "boolean",
793
+ "references": {}
794
+ },
795
+ "required": false,
796
+ "optional": true,
797
+ "docs": {
798
+ "tags": [],
799
+ "text": "Ignora os campos \"somente leitura\" no modo de inser\u00E7\u00E3o."
800
+ },
801
+ "attribute": "ignore-read-only-form-fields",
802
+ "reflect": false
803
+ },
757
804
  "setCustomFormTitle": {
758
805
  "type": "unknown",
759
806
  "mutable": false,
@@ -768,6 +815,83 @@ export class SnkCrud {
768
815
  "tags": [],
769
816
  "text": "Define uma fun\u00E7\u00E3o para configurar um t\u00EDtulo cusotmizado no modo formul\u00E1rio."
770
817
  }
818
+ },
819
+ "strategyExporter": {
820
+ "type": "string",
821
+ "mutable": true,
822
+ "complexType": {
823
+ "original": "IExporterStrategyMode",
824
+ "resolved": "\"ClientSideExporterStrategy\" | \"ServerSideExporterStrategy\"",
825
+ "references": {
826
+ "IExporterStrategyMode": {
827
+ "location": "import",
828
+ "path": "../snk-data-exporter/interfaces/IRecordID"
829
+ }
830
+ }
831
+ },
832
+ "required": false,
833
+ "optional": false,
834
+ "docs": {
835
+ "tags": [],
836
+ "text": "Modo de exporta\u00E7\u00E3o dos dados."
837
+ },
838
+ "attribute": "strategy-exporter",
839
+ "reflect": false,
840
+ "defaultValue": "ExporterStrategy.SERVER_SIDE"
841
+ },
842
+ "layoutFormConfig": {
843
+ "type": "boolean",
844
+ "mutable": false,
845
+ "complexType": {
846
+ "original": "boolean",
847
+ "resolved": "boolean",
848
+ "references": {}
849
+ },
850
+ "required": false,
851
+ "optional": false,
852
+ "docs": {
853
+ "tags": [],
854
+ "text": "Define se o LayoutFormConfig ser\u00E1 exibido no configurador."
855
+ },
856
+ "attribute": "layout-form-config",
857
+ "reflect": false,
858
+ "defaultValue": "false"
859
+ },
860
+ "multipleEditionEnabled": {
861
+ "type": "boolean",
862
+ "mutable": false,
863
+ "complexType": {
864
+ "original": "boolean",
865
+ "resolved": "boolean",
866
+ "references": {}
867
+ },
868
+ "required": false,
869
+ "optional": false,
870
+ "docs": {
871
+ "tags": [],
872
+ "text": "Habilita a edi\u00E7\u00E3o de m\u00FAltiplos registros simult\u00E2neos."
873
+ },
874
+ "attribute": "multiple-edition-enabled",
875
+ "reflect": false,
876
+ "defaultValue": "true"
877
+ },
878
+ "paginationCounterMode": {
879
+ "type": "string",
880
+ "mutable": false,
881
+ "complexType": {
882
+ "original": "'show' | 'hidden' | 'auto'",
883
+ "resolved": "\"auto\" | \"hidden\" | \"show\"",
884
+ "references": {}
885
+ },
886
+ "required": false,
887
+ "optional": true,
888
+ "docs": {
889
+ "tags": [],
890
+ "text": "Define se a grid ser\u00E1 focada ao ser carregada."
891
+ },
892
+ "attribute": "pagination-counter-mode",
893
+ "reflect": false,
894
+ "defaultValue": "'auto'"
771
895
  }
772
896
  };
773
897
  }
@@ -19,8 +19,17 @@
19
19
  .grid-container{
20
20
  background-color: #FFF;
21
21
  min-height: 100px;
22
+ height: 100%;
22
23
  }
23
24
 
24
25
  .detail-header{
25
26
  padding-bottom: 0;
26
- }
27
+ }
28
+
29
+ snk-data-unit {
30
+ flex: 1;
31
+ }
32
+
33
+ snk-grid{
34
+ height: calc(100% - 43px);
35
+ }
@@ -1,4 +1,4 @@
1
- import { Action } from '@sankhyalabs/core';
1
+ import { Action as DUAction, KeyboardManager, StringUtils } from '@sankhyalabs/core';
2
2
  import { Host, forceUpdate, h } from '@stencil/core';
3
3
  import { SnkFormConfigManager } from '../../../snk-form-config/SnkFormConfigManager';
4
4
  import { buildFormMetadata } from "@sankhyalabs/ezui/dist/collection/utils/form";
@@ -8,11 +8,14 @@ import { VIEW_MODE } from '../../../../lib/utils/constants';
8
8
  import { SnkGuidesViewer } from '../snk-guides-viewer';
9
9
  import { SnkMessageBuilder } from '../../../../lib/message/SnkMessageBuilder';
10
10
  import { GuideBuilder } from '../GuideBuilder';
11
+ import { buildFieldSearch, LABEL_SEARCH_FIELD, SHORTCUT_SEARCH_FIELD } from '@sankhyalabs/ezui/dist/collection/utils';
11
12
  export class SnkDetailView {
12
13
  constructor() {
13
14
  this._disabledButtons = undefined;
14
15
  this._currentView = undefined;
15
16
  this.attachmentRegisterKey = undefined;
17
+ this._fieldToGetFocus = undefined;
18
+ this._hasToCreateFieldSearch = true;
16
19
  this.formConfigManager = undefined;
17
20
  this.dataUnitName = undefined;
18
21
  this.resourceID = undefined;
@@ -28,6 +31,7 @@ export class SnkDetailView {
28
31
  this.taskbarCustomContainerId = undefined;
29
32
  this.customEditors = undefined;
30
33
  this.customRenders = undefined;
34
+ this.presentationMode = PresentationMode.SECONDARY;
31
35
  }
32
36
  observeDataUnit(newDataUnit, oldDataUnit) {
33
37
  newDataUnit === null || newDataUnit === void 0 ? void 0 : newDataUnit.subscribe(this.dataUnitActionHandler.bind(this));
@@ -198,7 +202,7 @@ export class SnkDetailView {
198
202
  this.emitSwitchEvent(VIEW_MODE.GRID);
199
203
  evt.stopPropagation();
200
204
  }
201
- if (evt.detail === TaskbarElement.FORM_MODE) {
205
+ if (evt.detail === TaskbarElement.FORM_MODE || evt.detail === TaskbarElement.UPDATE) {
202
206
  this.emitSwitchEvent(VIEW_MODE.FORM);
203
207
  evt.stopPropagation();
204
208
  }
@@ -222,7 +226,7 @@ export class SnkDetailView {
222
226
  }
223
227
  componentWillLoad() {
224
228
  this._configName = `dynaform.${this.entityName}`;
225
- this.formConfigManager = new SnkFormConfigManager(this._configName, this.resourceID, () => this.loadMetadata());
229
+ this.formConfigManager = new SnkFormConfigManager(this._configName, this.resourceID, () => this.loadMetadata(), this.dataUnit);
226
230
  this.formConfigManager.loadConfig();
227
231
  if (this.messagesBuilder == undefined) {
228
232
  this.messagesBuilder = new SnkMessageBuilder(this.entityName);
@@ -231,9 +235,14 @@ export class SnkDetailView {
231
235
  async componentDidLoad() {
232
236
  await this.observerPropsCustomEditor(this.customEditors);
233
237
  await this.observeCustomRenders(this.customRenders);
238
+ this.initKeyboardManager();
239
+ }
240
+ disconnectedCallback() {
241
+ var _a;
242
+ (_a = this._keyboardManager) === null || _a === void 0 ? void 0 : _a.unbindAllShortcutKeys();
234
243
  }
235
244
  async dataUnitActionHandler(action) {
236
- if (action.type === Action.FIELD_INVALIDATED) {
245
+ if (action.type === DUAction.FIELD_INVALIDATED) {
237
246
  this.addErrorBadgeToBranchGuide();
238
247
  }
239
248
  }
@@ -244,10 +253,53 @@ export class SnkDetailView {
244
253
  normalizeBranchGuideId(id) {
245
254
  return id === null || id === void 0 ? void 0 : id.replace(/child\[(.*?)\]/g, '$1').replace(/::/g, '>');
246
255
  }
256
+ getSettingsListForm() {
257
+ const hardList = [{
258
+ value: StringUtils.generateUUID(),
259
+ label: this.messagesBuilder.getMessage("snkCrud.findColumn", undefined),
260
+ disableCloseOnSelect: true,
261
+ eagerInitialize: true,
262
+ itemBuilder: (_, item) => this.getFieldsSearch(item)
263
+ }];
264
+ return hardList;
265
+ }
266
+ getFieldsSearch(item) {
267
+ if (this._fieldSearch == undefined || this._hasToCreateFieldSearch) {
268
+ this._hasToCreateFieldSearch = false;
269
+ this._fieldSearch = buildFieldSearch(item, ({ argument }) => this.fieldsOptionLoader(argument), (option) => this.onSelectField(option));
270
+ }
271
+ return this._fieldSearch;
272
+ }
273
+ fieldsOptionLoader(argument) {
274
+ const searchTerm = argument === null || argument === void 0 ? void 0 : argument.toLowerCase();
275
+ const allFields = this.getFormFields().map(field => { var _a; return (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(field.name); });
276
+ const filteredFields = allFields.filter(field => {
277
+ var _a, _b;
278
+ return ((_a = field.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(searchTerm)) ||
279
+ ((_b = field.label) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes(searchTerm));
280
+ });
281
+ const options = filteredFields.map(field => ({ value: field.name, label: field.label }));
282
+ return Promise.resolve(options);
283
+ }
284
+ onSelectField(option) {
285
+ if (option == undefined) {
286
+ return;
287
+ }
288
+ this._fieldToGetFocus = option.value;
289
+ }
290
+ clearFieldToFocusHandler() {
291
+ this._fieldToGetFocus = undefined;
292
+ }
293
+ async initKeyboardManager() {
294
+ this._keyboardManager = new KeyboardManager({ propagate: false, element: this._element });
295
+ this._keyboardManager.bind(SHORTCUT_SEARCH_FIELD, async () => {
296
+ await this._snkFormView.showSearchField();
297
+ }, { description: LABEL_SEARCH_FIELD, element: this._element });
298
+ }
247
299
  render() {
248
300
  this.updateLabel();
249
301
  //const cardConfig: IFormCardConfig = this._cardsState?.get(this.selectedForm);
250
- return (h(Host, null, h("snk-data-unit", { ref: (el) => this._snkDataUnit = el, dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: this.handleDataStateChange.bind(this), ignoreSaveMessage: this._currentView === VIEW_MODE.GRID, messagesBuilder: this.messagesBuilder, configName: this._configName }, h("ez-view-stack", { ref: (ref) => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-title--primary ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: (evt) => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, canEdit: this.canEdit, isDetail: true, taskbarCustomContainerId: this.taskbarCustomContainerId, gridHeaderCustomSlotId: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS", topTaskbarCustomSlotId: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath, onFormItemsReady: ({ detail: formItems }) => this.formItemsReady.emit(formItems) }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit, resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }, h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" })))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this.entityName, onBack: this.handleAttachBack.bind(this) }))))));
302
+ return (h(Host, null, h("snk-data-unit", { ref: (el) => this._snkDataUnit = el, dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: this.handleDataStateChange.bind(this), ignoreSaveMessage: this._currentView === VIEW_MODE.GRID, messagesBuilder: this.messagesBuilder, configName: this._configName }, h("ez-view-stack", { ref: (ref) => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-title--primary ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: (evt) => this.executeActionHandler(evt), presentationMode: this.presentationMode, canEdit: this.canEdit, isDetail: true, taskbarCustomContainerId: this.taskbarCustomContainerId, gridHeaderCustomSlotId: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS", topTaskbarCustomSlotId: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS", outlineMode: false }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), fieldToFocus: this._fieldToGetFocus, label: this.label, levelPath: this._levelPath, onFormItemsReady: ({ detail: formItems }) => this.formItemsReady.emit(formItems), onSnkRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this), fieldSearch: this._fieldSearch }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: this.presentationMode, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit, resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: "DETAIL_TASKBAR_CUSTOM_ELEMENTS", actionsSettingsList: this.getSettingsListForm() }, h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" })))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this.entityName, onBack: this.handleAttachBack.bind(this) }))))));
251
303
  }
252
304
  static get is() { return "snk-detail-view"; }
253
305
  static get encapsulation() { return "scoped"; }
@@ -545,6 +597,29 @@ export class SnkDetailView {
545
597
  "tags": [],
546
598
  "text": "Render customizados da grade."
547
599
  }
600
+ },
601
+ "presentationMode": {
602
+ "type": "string",
603
+ "mutable": false,
604
+ "complexType": {
605
+ "original": "PresentationMode",
606
+ "resolved": "PresentationMode.PRIMARY | PresentationMode.SECONDARY | PresentationMode.SINGLE_TASKBAR",
607
+ "references": {
608
+ "PresentationMode": {
609
+ "location": "import",
610
+ "path": "../../../../lib"
611
+ }
612
+ }
613
+ },
614
+ "required": false,
615
+ "optional": false,
616
+ "docs": {
617
+ "tags": [],
618
+ "text": "Altera o modo de apresenta\u00E7\u00E3o dos bot\u00F5es do snk-taskbar."
619
+ },
620
+ "attribute": "presentation-mode",
621
+ "reflect": false,
622
+ "defaultValue": "PresentationMode.SECONDARY"
548
623
  }
549
624
  };
550
625
  }
@@ -552,7 +627,9 @@ export class SnkDetailView {
552
627
  return {
553
628
  "_disabledButtons": {},
554
629
  "_currentView": {},
555
- "attachmentRegisterKey": {}
630
+ "attachmentRegisterKey": {},
631
+ "_fieldToGetFocus": {},
632
+ "_hasToCreateFieldSearch": {}
556
633
  };
557
634
  }
558
635
  static get events() {
@@ -732,6 +809,7 @@ export class SnkDetailView {
732
809
  }
733
810
  };
734
811
  }
812
+ static get elementRef() { return "_element"; }
735
813
  static get watchers() {
736
814
  return [{
737
815
  "propName": "dataUnit",