@sankhyalabs/sankhyablocks 8.15.0-dev.7 → 8.15.0-dev.70

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 (382) hide show
  1. package/dist/cjs/{ConfigStorage-8009ecb2.js → ConfigStorage-9a53a42c.js} +94 -21
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-515bda03.js} +7 -4
  3. package/dist/cjs/IExporterProvider-90690372.js +230 -0
  4. package/dist/cjs/{ISave-d68ce3cd.js → ISave-e91b70a7.js} +1 -0
  5. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  6. package/dist/cjs/{SnkFormConfigManager-7d850fbc.js → SnkFormConfigManager-7b222c78.js} +23 -15
  7. package/dist/cjs/{SnkMessageBuilder-7293d0ad.js → SnkMessageBuilder-4a95fe86.js} +25 -13
  8. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-5acb0335.js} +1 -1
  9. package/dist/cjs/{dataunit-fetcher-14108bec.js → dataunit-fetcher-7a08e4dd.js} +409 -77
  10. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-3f430aee.js} +13 -1
  11. package/dist/cjs/index-f9e81701.js +2 -10
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/{pesquisa-fetcher-ef050a47.js → pesquisa-fetcher-916a935c.js} +12 -13
  14. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  15. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +526 -8
  16. package/dist/cjs/snk-application.cjs.entry.js +68 -24
  17. package/dist/cjs/snk-attach.cjs.entry.js +430 -71
  18. package/dist/cjs/snk-crud.cjs.entry.js +124 -28
  19. package/dist/cjs/snk-data-exporter.cjs.entry.js +207 -83
  20. package/dist/cjs/snk-data-unit-3718477f.js +670 -0
  21. package/dist/cjs/snk-data-unit.cjs.entry.js +11 -2
  22. package/dist/cjs/snk-detail-view.cjs.entry.js +52 -13
  23. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  24. package/dist/cjs/snk-filter-bar.cjs.entry.js +70 -10
  25. package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -1
  26. package/dist/cjs/snk-filter-item.cjs.entry.js +13 -6
  27. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  28. package/dist/cjs/snk-filter-modal.cjs.entry.js +2 -1
  29. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +2 -1
  30. package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
  31. package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
  32. package/dist/cjs/snk-form.cjs.entry.js +60 -8
  33. package/dist/cjs/snk-grid.cjs.entry.js +199 -122
  34. package/dist/cjs/{snk-guides-viewer-e7f76399.js → snk-guides-viewer-7fb9e5a1.js} +56 -20
  35. package/dist/cjs/snk-guides-viewer.cjs.entry.js +10 -10
  36. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  37. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  38. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  39. package/dist/cjs/snk-simple-crud.cjs.entry.js +507 -39
  40. package/dist/cjs/snk-taskbar.cjs.entry.js +124 -15
  41. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-d9392685.js} +11 -11
  42. package/dist/collection/collection-manifest.json +8 -8
  43. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  44. package/dist/collection/components/snk-application/snk-application.js +122 -19
  45. package/dist/collection/components/snk-attach/snk-attach.js +220 -53
  46. package/dist/collection/components/snk-attach/structure/{crud-config-builder.js → builder/anexo-sistema-crud-config.builder.js} +1 -1
  47. package/dist/collection/components/snk-attach/structure/builder/attach-crud-config.builder.js +62 -0
  48. package/dist/collection/components/snk-attach/structure/{taskbar-builder.js → builder/taskbar-builder.js} +1 -1
  49. package/dist/collection/components/snk-attach/structure/fetcher/facade/fetcher.facade.js +1 -0
  50. package/dist/collection/components/snk-attach/structure/{data-unit-builder.js → fetcher/factory/anexo-sistema-data-unit.factory.js} +14 -11
  51. package/dist/collection/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.js +118 -0
  52. package/dist/collection/components/snk-attach/structure/index.js +6 -3
  53. package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
  54. package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
  55. package/dist/collection/components/snk-crud/snk-crud.js +340 -19
  56. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +137 -2
  57. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
  58. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  59. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +163 -13
  60. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
  61. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
  62. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
  63. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  64. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
  65. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  66. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +44 -50
  67. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  68. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  69. package/dist/collection/components/snk-data-unit/snk-data-unit.js +500 -216
  70. package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
  71. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  72. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +2 -1
  73. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  74. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +22 -1
  75. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +31 -6
  76. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +19 -1
  77. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +24 -1
  78. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +180 -5
  79. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  80. package/dist/collection/components/snk-form/snk-form.js +126 -5
  81. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +22 -14
  82. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  83. package/dist/collection/components/snk-grid/snk-grid.js +341 -115
  84. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  85. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  86. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +2 -4
  87. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  88. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +10 -2
  89. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +824 -22
  90. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +4 -2
  91. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +11 -11
  92. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  93. package/dist/collection/components/snk-taskbar/snk-taskbar.js +167 -14
  94. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
  95. package/dist/collection/lib/configs/ConfigStorage.js +86 -16
  96. package/dist/collection/lib/dataUnit/InMemoryLoader.js +15 -42
  97. package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
  98. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +33 -0
  99. package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
  100. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +7 -4
  101. package/dist/collection/lib/http/data-fetcher/fetchers/{attach-fetcher.js → AttachFetcher/anexo-sistema-fetcher.js} +16 -15
  102. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.js +90 -0
  103. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.js +1 -0
  104. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/index.js +2 -0
  105. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDelete.js +1 -0
  106. package/dist/collection/lib/http/data-fetcher/fetchers/AttachFetcher/interfaces/IDownloadKey.js +1 -0
  107. package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.js +1 -0
  108. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  109. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  110. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
  111. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +30 -2
  112. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
  113. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
  114. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +87 -24
  115. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
  116. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +12 -0
  117. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  118. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  119. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +12 -13
  120. package/dist/collection/lib/index.js +1 -1
  121. package/dist/collection/lib/message/SnkMessageBuilder.js +25 -32
  122. package/dist/collection/lib/message/resources/snk-attach.msg.js +13 -0
  123. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  124. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +1 -0
  125. package/dist/collection/lib/message/resources/snk-simple-crud.msg.js +4 -0
  126. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  127. package/dist/components/ConfigStorage.js +92 -19
  128. package/dist/components/DataFetcher.js +7 -4
  129. package/dist/components/IExporterProvider.js +298 -0
  130. package/dist/components/ISave.js +42 -0
  131. package/dist/components/SnkFormConfigManager.js +21 -13
  132. package/dist/components/SnkMessageBuilder.js +25 -13
  133. package/dist/components/dataunit-fetcher.js +185 -241
  134. package/dist/components/form-config-fetcher.js +12 -0
  135. package/dist/components/index.d.ts +6 -6
  136. package/dist/components/index2.js +198 -33
  137. package/dist/{esm/pesquisa-fetcher-dd3ca0a5.js → components/pesquisa-fetcher.js} +13 -14
  138. package/dist/components/snk-actions-button2.js +4 -10
  139. package/dist/components/snk-application2.js +66 -18
  140. package/dist/components/snk-attach2.js +485 -78
  141. package/dist/components/snk-crud.js +131 -23
  142. package/dist/components/snk-data-exporter2.js +202 -83
  143. package/dist/components/snk-data-unit2.js +463 -214
  144. package/dist/components/snk-detail-view2.js +137 -23
  145. package/dist/components/snk-entity-list.js +5 -3
  146. package/dist/components/snk-expression-item2.js +1 -1
  147. package/dist/components/snk-filter-bar2.js +74 -8
  148. package/dist/components/snk-filter-detail2.js +5 -1
  149. package/dist/components/snk-filter-item2.js +14 -6
  150. package/dist/components/snk-filter-modal.js +4 -2
  151. package/dist/components/snk-filter-multi-select.js +2 -1
  152. package/dist/components/snk-form-config2.js +46 -26
  153. package/dist/components/snk-form-view2.js +72 -1
  154. package/dist/components/snk-form.js +60 -5
  155. package/dist/components/snk-grid-config2.js +128 -102
  156. package/dist/components/snk-grid2.js +207 -119
  157. package/dist/components/snk-personalized-filter-editor.js +3 -1
  158. package/dist/components/snk-personalized-filter2.js +1 -1
  159. package/dist/components/snk-pesquisa2.js +1 -1
  160. package/dist/components/snk-simple-crud2.js +568 -35
  161. package/dist/components/snk-taskbar2.js +144 -29
  162. package/dist/components/taskbar-actions-button2.js +4 -2
  163. package/dist/esm/{ConfigStorage-1244b8b0.js → ConfigStorage-174101b9.js} +94 -21
  164. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-4b4b7beb.js} +7 -4
  165. package/dist/esm/IExporterProvider-ce2ca127.js +221 -0
  166. package/dist/esm/{ISave-4412b20c.js → ISave-d8c8bc59.js} +1 -0
  167. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  168. package/dist/esm/{SnkFormConfigManager-9be0e7d4.js → SnkFormConfigManager-3bdb3e1f.js} +23 -15
  169. package/dist/esm/{SnkMessageBuilder-ca843d1b.js → SnkMessageBuilder-3a767111.js} +25 -13
  170. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-9f86c346.js} +1 -1
  171. package/dist/esm/{dataunit-fetcher-cbec1594.js → dataunit-fetcher-f3fa35b9.js} +392 -70
  172. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-5d72aaf1.js} +13 -1
  173. package/dist/esm/index-a7d3d3f1.js +2 -10
  174. package/dist/esm/loader.js +1 -1
  175. package/dist/esm/pesquisa-fetcher-9cfab836.js +164 -0
  176. package/dist/esm/sankhyablocks.js +1 -1
  177. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +525 -9
  178. package/dist/esm/snk-application.entry.js +68 -24
  179. package/dist/esm/snk-attach.entry.js +430 -71
  180. package/dist/esm/snk-crud.entry.js +124 -28
  181. package/dist/esm/snk-data-exporter.entry.js +208 -84
  182. package/dist/esm/snk-data-unit-8d6afa43.js +668 -0
  183. package/dist/esm/snk-data-unit.entry.js +11 -2
  184. package/dist/esm/snk-detail-view.entry.js +52 -13
  185. package/dist/esm/snk-entity-list.entry.js +5 -3
  186. package/dist/esm/snk-filter-bar.entry.js +70 -10
  187. package/dist/esm/snk-filter-detail.entry.js +4 -1
  188. package/dist/esm/snk-filter-item.entry.js +13 -6
  189. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  190. package/dist/esm/snk-filter-modal.entry.js +2 -1
  191. package/dist/esm/snk-filter-multi-select.entry.js +2 -1
  192. package/dist/esm/snk-form-config.entry.js +48 -28
  193. package/dist/esm/snk-form-view.entry.js +67 -0
  194. package/dist/esm/snk-form.entry.js +60 -8
  195. package/dist/esm/snk-grid.entry.js +199 -122
  196. package/dist/esm/{snk-guides-viewer-c7aaf02a.js → snk-guides-viewer-dabd574c.js} +56 -20
  197. package/dist/esm/snk-guides-viewer.entry.js +10 -10
  198. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  199. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  200. package/dist/esm/snk-pesquisa.entry.js +1 -1
  201. package/dist/esm/snk-simple-crud.entry.js +500 -32
  202. package/dist/esm/snk-taskbar.entry.js +125 -16
  203. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-ad766858.js} +11 -11
  204. package/dist/sankhyablocks/{p-9695f78b.js → p-010d475f.js} +1 -1
  205. package/dist/sankhyablocks/p-109e0551.js +1 -0
  206. package/dist/sankhyablocks/p-1918789e.js +1 -0
  207. package/dist/sankhyablocks/p-19ba2e08.entry.js +1 -0
  208. package/dist/sankhyablocks/p-1c628fb2.entry.js +1 -0
  209. package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
  210. package/dist/sankhyablocks/p-1e9c3f95.entry.js +1 -0
  211. package/dist/sankhyablocks/{p-9e7d65a4.js → p-21749402.js} +1 -1
  212. package/dist/sankhyablocks/p-2a84e45b.entry.js +1 -0
  213. package/dist/sankhyablocks/p-2acc8816.entry.js +1 -0
  214. package/dist/sankhyablocks/p-2c9ea7b6.entry.js +1 -0
  215. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  216. package/dist/sankhyablocks/p-3e4c2cfe.entry.js +11 -0
  217. package/dist/sankhyablocks/p-4a8a149d.entry.js +1 -0
  218. package/dist/sankhyablocks/p-4ce73e88.js +1 -0
  219. package/dist/sankhyablocks/p-52df8935.entry.js +1 -0
  220. package/dist/sankhyablocks/p-54a5d52a.entry.js +1 -0
  221. package/dist/sankhyablocks/p-566f5f50.js +56 -0
  222. package/dist/sankhyablocks/{p-3520c088.entry.js → p-59dccb7a.entry.js} +1 -1
  223. package/dist/sankhyablocks/p-5bd78e4c.entry.js +1 -0
  224. package/dist/sankhyablocks/p-61dd89eb.js +1 -0
  225. package/dist/sankhyablocks/p-6b2be902.js +6 -0
  226. package/dist/sankhyablocks/p-70a4af56.entry.js +1 -0
  227. package/dist/sankhyablocks/p-9863d682.js +1 -0
  228. package/dist/sankhyablocks/{p-e6380c60.js → p-a6dfa396.js} +1 -1
  229. package/dist/sankhyablocks/{p-f514913b.entry.js → p-aa854fa8.entry.js} +1 -1
  230. package/dist/sankhyablocks/p-aa9c4099.entry.js +1 -0
  231. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  232. package/dist/sankhyablocks/p-b27114c4.js +1 -0
  233. package/dist/sankhyablocks/p-b643f746.entry.js +1 -0
  234. package/dist/sankhyablocks/p-bf2acf72.entry.js +1 -0
  235. package/dist/sankhyablocks/p-cfb98f51.entry.js +1 -0
  236. package/dist/sankhyablocks/{p-247a8b36.entry.js → p-d1791da2.entry.js} +1 -1
  237. package/dist/sankhyablocks/p-e0c27486.js +26 -0
  238. package/dist/sankhyablocks/p-e238279a.entry.js +1 -0
  239. package/dist/sankhyablocks/p-e8763234.entry.js +1 -0
  240. package/dist/sankhyablocks/p-eae66367.js +1 -0
  241. package/dist/sankhyablocks/p-fde91811.js +60 -0
  242. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  243. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  244. package/dist/types/components/snk-application/snk-application.d.ts +21 -2
  245. package/dist/types/components/snk-attach/{structure/crud-config-builder.d.ts → interfaces/ICrudConfig.d.ts} +1 -2
  246. package/dist/types/components/snk-attach/interfaces/TFetcherType.d.ts +1 -0
  247. package/dist/types/components/snk-attach/snk-attach.d.ts +33 -10
  248. package/dist/types/components/snk-attach/structure/builder/anexo-sistema-crud-config.builder.d.ts +2 -0
  249. package/dist/types/components/snk-attach/structure/builder/attach-crud-config.builder.d.ts +40 -0
  250. package/dist/types/components/snk-attach/structure/{taskbar-builder.d.ts → builder/taskbar-builder.d.ts} +1 -1
  251. package/dist/types/components/snk-attach/structure/fetcher/facade/fetcher.facade.d.ts +11 -0
  252. package/dist/types/components/snk-attach/structure/fetcher/factory/anexo-sistema-data-unit.factory.d.ts +17 -0
  253. package/dist/types/components/snk-attach/structure/fetcher/factory/attach-fetcher-data-unit.factory.d.ts +16 -0
  254. package/dist/types/components/snk-attach/structure/index.d.ts +6 -3
  255. package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
  256. package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
  257. package/dist/types/components/snk-crud/snk-crud.d.ts +53 -1
  258. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +24 -1
  259. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
  260. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +30 -1
  261. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
  262. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
  263. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
  264. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  265. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  266. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  267. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
  268. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  269. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  270. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +61 -2
  271. package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
  272. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +4 -0
  273. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +7 -3
  274. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +5 -0
  275. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +31 -1
  276. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +3 -1
  277. package/dist/types/components/snk-form/snk-form.d.ts +20 -1
  278. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +2 -1
  279. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  280. package/dist/types/components/snk-grid/snk-grid.d.ts +65 -7
  281. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  282. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  283. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  284. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +138 -6
  285. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  286. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +34 -1
  287. package/dist/types/components.d.ts +502 -16
  288. package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
  289. package/dist/types/lib/configs/ConfigStorage.d.ts +25 -1
  290. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -3
  291. package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
  292. package/dist/types/lib/dataUnit/dataUnitInMemoryUtils.d.ts +4 -0
  293. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
  294. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -1
  295. package/dist/types/lib/http/data-fetcher/fetchers/{attach-fetcher.d.ts → AttachFetcher/anexo-sistema-fetcher.d.ts} +3 -2
  296. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/attach-fetcher.d.ts +11 -0
  297. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/facade/attach-fetcher.facade.d.ts +8 -0
  298. package/dist/types/lib/http/data-fetcher/fetchers/AttachFetcher/index.d.ts +3 -0
  299. package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/ISave.d.ts +2 -1
  300. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  301. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  302. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  303. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.d.ts +2 -0
  304. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
  305. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
  306. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +7 -0
  307. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
  308. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
  309. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +2 -0
  310. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  311. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  312. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
  313. package/dist/types/lib/index.d.ts +1 -1
  314. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  315. package/package.json +15 -6
  316. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  317. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  318. package/dist/cjs/snk-data-unit-1bc69073.js +0 -462
  319. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  320. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  321. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  322. package/dist/components/field-search.js +0 -121
  323. package/dist/components/index3.js +0 -199
  324. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  325. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  326. package/dist/esm/snk-data-unit-6208ebf0.js +0 -460
  327. package/dist/esm/snk-grid-config.entry.js +0 -479
  328. package/dist/esm/snk-select-box.entry.js +0 -21
  329. package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
  330. package/dist/sankhyablocks/p-0874adb5.entry.js +0 -1
  331. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  332. package/dist/sankhyablocks/p-0d7863ed.js +0 -26
  333. package/dist/sankhyablocks/p-11081798.entry.js +0 -1
  334. package/dist/sankhyablocks/p-20726710.entry.js +0 -1
  335. package/dist/sankhyablocks/p-25927311.entry.js +0 -1
  336. package/dist/sankhyablocks/p-32f0935f.js +0 -1
  337. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  338. package/dist/sankhyablocks/p-3891ae6f.js +0 -60
  339. package/dist/sankhyablocks/p-4775a293.entry.js +0 -1
  340. package/dist/sankhyablocks/p-585294ee.js +0 -56
  341. package/dist/sankhyablocks/p-6977a26c.entry.js +0 -1
  342. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  343. package/dist/sankhyablocks/p-776ee8e3.js +0 -1
  344. package/dist/sankhyablocks/p-809f367d.entry.js +0 -1
  345. package/dist/sankhyablocks/p-8c243e7e.entry.js +0 -11
  346. package/dist/sankhyablocks/p-8d16f9ce.js +0 -1
  347. package/dist/sankhyablocks/p-8d70b5d5.entry.js +0 -1
  348. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  349. package/dist/sankhyablocks/p-a9e5b094.entry.js +0 -1
  350. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  351. package/dist/sankhyablocks/p-c4d19840.entry.js +0 -1
  352. package/dist/sankhyablocks/p-c627ba91.entry.js +0 -1
  353. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  354. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  355. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  356. package/dist/sankhyablocks/p-d6317851.entry.js +0 -1
  357. package/dist/sankhyablocks/p-d81f20c4.entry.js +0 -1
  358. package/dist/sankhyablocks/p-d9bb09b3.js +0 -6
  359. package/dist/sankhyablocks/p-dc8b6418.entry.js +0 -1
  360. package/dist/sankhyablocks/p-f2056f66.entry.js +0 -1
  361. package/dist/sankhyablocks/p-fd8814b9.entry.js +0 -1
  362. package/dist/sankhyablocks/p-ff6064e7.js +0 -1
  363. package/dist/types/components/snk-attach/structure/data-unit-builder.d.ts +0 -15
  364. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
  365. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDelete.js → components/snk-attach/interfaces/ICrudConfig.js} +0 -0
  366. /package/dist/collection/{lib/http/data-fetcher/fetchers/fecthAttach/interfaces/IDownloadKey.js → components/snk-attach/interfaces/TFetcherType.js} +0 -0
  367. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  368. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  369. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  370. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  371. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  372. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  373. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  374. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  375. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  376. /package/dist/collection/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.js +0 -0
  377. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  378. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  379. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
  380. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDelete.d.ts +0 -0
  381. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/IDownloadKey.d.ts +0 -0
  382. /package/dist/types/lib/http/data-fetcher/fetchers/{fecthAttach → AttachFetcher}/interfaces/index.d.ts +0 -0
@@ -1,8 +1,8 @@
1
- import { EventEmitter } from "../../../../stencil-public-runtime";
1
+ import { EventEmitter } from "../../stencil-public-runtime";
2
2
  import { DataUnit } from '@sankhyalabs/core';
3
3
  import { IFieldConfig, IFormConfig } from "@sankhyalabs/ezui/dist/types/utils/form/interfaces";
4
- import { SnkFormConfigManager } from "../../SnkFormConfigManager";
5
- import { SnkMessageBuilder } from "../../../../lib/message/SnkMessageBuilder";
4
+ import { SnkFormConfigManager } from "./SnkFormConfigManager";
5
+ import { SnkMessageBuilder } from "../../lib/message/SnkMessageBuilder";
6
6
  export declare class SnkFormConfig {
7
7
  private _tabConfig;
8
8
  private _filterFieldsAvailable;
@@ -22,6 +22,7 @@ export declare class SnkFormConfig {
22
22
  private _formFieldsStyle;
23
23
  private _fieldsAvailableStyle;
24
24
  private _fieldFloatingStyle;
25
+ private _sortableTimer;
25
26
  private _element;
26
27
  private _formConfigOptions;
27
28
  private _fieldConfigSelected;
@@ -127,6 +128,7 @@ export declare class SnkFormConfig {
127
128
  */
128
129
  private getMessage;
129
130
  componentDidRender(): void;
131
+ componentWillRender(): Promise<void>;
130
132
  componentWillLoad(): void;
131
133
  componentDidLoad(): void;
132
134
  render(): any;
@@ -1,15 +1,17 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import { DataUnit } from '@sankhyalabs/core';
3
3
  import { IGridConfig, IStatusResolver, StatusResolverFunction } from '@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController';
4
- import { DataState } from '../snk-data-unit/snk-data-unit';
4
+ import { DataState, SnkDataUnit } from '../snk-data-unit/snk-data-unit';
5
5
  import { Action, TaskbarManager } from '../snk-taskbar/snk-taskbar';
6
6
  import { SnkApplication } from '../snk-application/snk-application';
7
7
  import { PresentationMode } from '../../lib/@types';
8
8
  import TaskbarProcessor from '../snk-taskbar/processor/taskbar-processor';
9
9
  import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
10
- import { ISelectionToastConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/interfaces';
10
+ import { ICustomFormatter, ISelectionToastConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/interfaces';
11
11
  import { IRecordValidator } from '@sankhyalabs/ezui/dist/types/utils/form/interfaces';
12
12
  import { IMultiSelectionListDataSource } from '@sankhyalabs/ezui/dist/types/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource';
13
+ import { ICustomEditor, ICustomRender } from '@sankhyalabs/ezui/dist/types/utils';
14
+ import RmPrecisionCustomValueFormatter from '../../lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter';
13
15
  export declare class SnkGrid {
14
16
  _grid: HTMLEzGridElement;
15
17
  _snkDataUnit: HTMLSnkDataUnitElement;
@@ -18,6 +20,16 @@ export declare class SnkGrid {
18
20
  _snkFilterBar: HTMLSnkFilterBarElement;
19
21
  _columnSearch: HTMLEzSearchElement;
20
22
  _moreOptions: HTMLEzActionsButtonElement;
23
+ _customEditors: Map<string, {
24
+ customEditor: ICustomEditor;
25
+ detailContext: string;
26
+ }>;
27
+ _customRenders: Map<string, {
28
+ customRender: ICustomRender;
29
+ detailContext: string;
30
+ }>;
31
+ _snkDataUnitInstance: SnkDataUnit;
32
+ _rmPrecisionCustomValueFormatter: RmPrecisionCustomValueFormatter;
21
33
  _topTaskbarProcessor: TaskbarProcessor;
22
34
  _headerTaskbarProcessor: TaskbarProcessor;
23
35
  _element: HTMLElement;
@@ -32,6 +44,10 @@ export declare class SnkGrid {
32
44
  * Nome usado para salvar/recuperar a configuração.
33
45
  */
34
46
  configName: string;
47
+ /**
48
+ * Título que será apresentado na barra de filtros
49
+ */
50
+ filterBarTitle: string;
35
51
  /**
36
52
  * Identificador de recursos como configurações e acesso.
37
53
  */
@@ -94,6 +110,23 @@ export declare class SnkGrid {
94
110
  * Nome do slot de elementos customizados da Taskbar principal do componente.
95
111
  */
96
112
  topTaskbarCustomSlotId: string;
113
+ /**
114
+ * Desabilita a apresentação da opção de filtros personalizados na filter bar (chip de filtros)
115
+ * e no modal lateral de filtros (container de filtros personalizados).
116
+ */
117
+ disablePersonalizedFilter: boolean;
118
+ /**
119
+ * Chave da configuração legado da grade.
120
+ */
121
+ gridLegacyConfigName: string;
122
+ /**
123
+ * Chave da configuração legado da barra de filtros.
124
+ */
125
+ filterBarLegacyConfigName: string;
126
+ /**
127
+ * Define se a carga dos dados será feita assim que o componente for carregado.
128
+ */
129
+ autoLoad?: boolean;
97
130
  /**
98
131
  * Emitido sempre que houver click de botão ou ação.
99
132
  */
@@ -126,20 +159,45 @@ export declare class SnkGrid {
126
159
  * Abre o localizador de colunas
127
160
  */
128
161
  findColumn(): Promise<void>;
162
+ /**
163
+ * Registra um editor customizado para campos da grade e formulário
164
+ */
165
+ addCustomEditor(fieldName: string, customEditor: ICustomEditor, detailContext?: string): Promise<void>;
166
+ /**
167
+ * Registra um render customizado para colunas da grid.
168
+ */
169
+ addGridCustomRender(fieldName: string, customRender: ICustomRender, detailContext?: string): Promise<void>;
170
+ /**
171
+ * Registra um formatador de valores para uma coluna da grid.
172
+ */
173
+ addCustomValueFormatter(columnName: string, customFormatter: ICustomFormatter): Promise<void>;
174
+ /**
175
+ * Remove o formatador de valores de uma coluna da grid.
176
+ */
177
+ removeCustomValueFormatter(columnName: string): Promise<void>;
178
+ /**
179
+ * Atribui o foco para a grade.
180
+ */
181
+ setFocus(): Promise<void>;
182
+ handleGridLegacyConfigName(newLegacyConfig: string, oldLegacyConfig: string): Promise<void>;
129
183
  private openGridConfig;
130
184
  private closeGridConfig;
131
185
  private setGridConfig;
132
- private assertDefaultSorting;
133
186
  private loadConfig;
187
+ private addGridLegacyConfigName;
134
188
  private gridConfigChangeHandler;
135
189
  private modalConfigChangeHandler;
136
- private buildColumnsMetadata;
137
- private getPaginationInfo;
138
- private getExporterOffset;
139
190
  private dataExporterProviderStore;
140
191
  private addElementID;
141
- private finshLoading;
192
+ private loadGridCustomFormatters;
193
+ private interceptMetadataLoaded;
194
+ private dataUnitInterceptor;
195
+ private finishLoading;
196
+ private setCustomRenders;
197
+ private setCustomEditors;
142
198
  componentWillLoad(): void;
199
+ componentDidRender(): void;
200
+ private handleDataStateChange;
143
201
  getHeaderDisabledButtons(): Array<string>;
144
202
  private getInvisibleButtons;
145
203
  componentWillRender(): void;
@@ -1,8 +1,7 @@
1
1
  import { EzGridColumn, IGridConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController';
2
2
  import { ListItem } from '@sankhyalabs/ezui/dist/types/components/ez-list/ez-list';
3
3
  import { Tab } from '@sankhyalabs/ezui/dist/types/components/ez-tabselector/ez-tabselector';
4
- import { EventEmitter } from '../../../../stencil-public-runtime';
5
- import { SnkApplication } from '../../../snk-application/snk-application';
4
+ import { EventEmitter } from '../../stencil-public-runtime';
6
5
  export declare class SnkGridConfig {
7
6
  private _columnList;
8
7
  private _orderList;
@@ -18,10 +17,6 @@ export declare class SnkGridConfig {
18
17
  * Aba selecionada das configurações da grade.
19
18
  */
20
19
  selectedIndex: number;
21
- /**
22
- * Referência para o SnkApplication
23
- */
24
- application: SnkApplication;
25
20
  /**
26
21
  * Colunas da grade.
27
22
  */
@@ -53,18 +48,28 @@ export declare class SnkGridConfig {
53
48
  * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-grid.msg.ts"
54
49
  */
55
50
  private getMessage;
51
+ private getSortableColumns;
56
52
  private createOrderList;
57
53
  private createColumnList;
54
+ private createColumnListSlotDataElementId;
58
55
  private buildColumnListSlot;
56
+ private createOrderListSlotDataElementId;
59
57
  private buildOrderListSlot;
60
58
  private updateOrder;
61
59
  switchColumnGroup(evt: CustomEvent, switchedItem: ListItem): void;
62
60
  finish(): void;
61
+ private saveGridConfigOnStorage;
62
+ private reOrderPriorityColumns;
63
63
  private save;
64
64
  createConfigFromState(state: any): {
65
65
  columns: any[];
66
66
  };
67
67
  locateColumn(evt: KeyboardEvent, searchingText?: string): Promise<void>;
68
+ private getMatchedIndexes;
69
+ private getNewSelectedIndex;
70
+ private updateOrderListSelection;
71
+ private updateColumnListSelection;
72
+ private removeSelection;
68
73
  private compareWords;
69
74
  private getColumnNames;
70
75
  closeConfig(): void;
@@ -1,5 +1,5 @@
1
1
  import { IOption } from '@sankhyalabs/ezui/dist/types/components/ez-combo-box/ez-combo-box';
2
- import { EventEmitter } from '../../../../stencil-public-runtime';
2
+ import { EventEmitter } from '../../../stencil-public-runtime';
3
3
  export declare class SelectBox {
4
4
  /**
5
5
  * Emitido ao alterar a seleção do componente snk-select-box.
@@ -0,0 +1,3 @@
1
+ declare const REGULAR_DEFAULT_BTNS: string[];
2
+ declare const REGULAR_SELECTED_BTNS: string[];
3
+ export { REGULAR_DEFAULT_BTNS, REGULAR_SELECTED_BTNS };
@@ -2,6 +2,7 @@ import { DataUnit, Record, UnitMetadata } from '@sankhyalabs/core';
2
2
  import { EventEmitter } from '../../stencil-public-runtime';
3
3
  import { SIMPLE_CRUD_MODE, VIEW_MODE } from '../../lib/utils/constants';
4
4
  import { DataState } from '../snk-data-unit/snk-data-unit';
5
+ import { FormConfigFetcher } from '../../lib';
5
6
  import TaskbarProcessor from '../snk-taskbar/processor/taskbar-processor';
6
7
  import { Action, TaskbarManager } from '../snk-taskbar/snk-taskbar';
7
8
  import InMemoryLoader from '../../lib/dataUnit/InMemoryLoader';
@@ -9,12 +10,12 @@ import { IFieldConfig, IFormConfig } from '@sankhyalabs/ezui/dist/types/utils/fo
9
10
  import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
10
11
  import { IGridConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController';
11
12
  import SnkMultiSelectionListDataSource from '../snk-grid/filtercolumn/SnkMultiSelectionListDataSource';
12
- import { IAction } from '@sankhyalabs/ezui/dist/types/utils';
13
+ import { IAction, ICustomEditor, ICustomRender } from '@sankhyalabs/ezui/dist/types/utils';
14
+ import { SnkFormConfigManager } from '../snk-form-config/SnkFormConfigManager';
15
+ import { ICustomFormatter } from '@sankhyalabs/ezui/dist/types/components/ez-grid/interfaces';
13
16
  export declare class SnkSimpleCrud {
14
- private readonly REGULAR_DEFAULT_BTNS;
15
- private readonly REGULAR_SELECTED_BTNS;
16
17
  _viewStack: HTMLEzViewStackElement;
17
- _snkGrid: HTMLSnkGridElement;
18
+ _snkConfigurator: HTMLSnkConfiguratorElement;
18
19
  _inMemoryLoader: InMemoryLoader;
19
20
  _metadata: UnitMetadata;
20
21
  _multiSelectionListDataSource: SnkMultiSelectionListDataSource;
@@ -22,22 +23,49 @@ export declare class SnkSimpleCrud {
22
23
  _fieldSearch: HTMLEzSearchElement;
23
24
  _moreOptions: HTMLEzActionsButtonElement;
24
25
  _grid: HTMLEzGridElement;
26
+ _snkGridConfig: HTMLSnkGridConfigElement;
25
27
  _keyDownHandler: (event: KeyboardEvent) => Promise<void>;
28
+ _resourceID: string;
29
+ _formConfigManager: SnkFormConfigManager;
30
+ _gridConfigAlreadyLoaded: boolean;
31
+ _formConfigAlreadyLoaded: boolean;
32
+ _formConfigFetcher: FormConfigFetcher;
33
+ _customEditors: Map<string, ICustomEditor>;
34
+ _customRenders: Map<string, ICustomRender>;
35
+ private _form;
36
+ private _rmPrecisionCustomValueFormatter;
37
+ private _snkDataUnit;
26
38
  private _element;
39
+ _showPopUpGridConfig: boolean;
40
+ _showFormConfig: boolean;
27
41
  _currentViewMode: VIEW_MODE;
28
42
  _config: {};
29
43
  _fieldToGetFocus: string;
44
+ _customContainerId: string;
30
45
  dataState: DataState;
31
46
  dataUnit: DataUnit;
47
+ /**
48
+ * Define o nome da entidade que o componente vai utilizar para fazer as operações de CRUD
49
+ */
50
+ entityName: string;
32
51
  mode: SIMPLE_CRUD_MODE;
33
52
  gridConfig: IGridConfig;
34
53
  formConfig: IFormConfig;
35
54
  _formFields: IFieldConfig[];
55
+ private _fieldsProps;
36
56
  /**
37
57
  * Determina se pode haver mais de uma linha selecionada na grade.
38
58
  */
39
59
  multipleSelection: boolean;
40
60
  useCancelConfirm: boolean;
61
+ /**
62
+ * Determina quantas linhas são retornadas por página.
63
+ */
64
+ pageSize: number;
65
+ /**
66
+ * Identificador de recursos como configurações e acesso.
67
+ */
68
+ resourceID: string;
41
69
  /**
42
70
  * Emitido quando há qualquer mudança de estado no DataUnit.
43
71
  */
@@ -54,6 +82,14 @@ export declare class SnkSimpleCrud {
54
82
  * Responsável por notificar quando ocorrer a renderização de itens do formulário.
55
83
  */
56
84
  formItemsReady: EventEmitter<Array<HTMLElement>>;
85
+ /**
86
+ * Emitido quando salva a configuração no configurator do CRUD.
87
+ */
88
+ configuratorSave: EventEmitter<any>;
89
+ /**
90
+ * Emitido quando cancela o salvamento da configuração no configurator do CRUD.
91
+ */
92
+ configuratorCancel: EventEmitter<any>;
57
93
  /**
58
94
  * Gerenciador das barras de tarefas. É possível determinar botões específicos
59
95
  * ou mesmo gerenciar o estado dos botões.
@@ -67,34 +103,117 @@ export declare class SnkSimpleCrud {
67
103
  * Quando verdadeiro, o ENTER fará a navegação como se fosse a tecla TAB na grade.
68
104
  */
69
105
  useEnterLikeTab: boolean;
106
+ /**
107
+ * Ações a serem colocadas no botão "Mais opções" do componente snk-taskbar.
108
+ */
109
+ actionsList: Array<Action>;
110
+ /**
111
+ * Usado para salvar as configurações dos blocos de construção.
112
+ */
113
+ configName: string;
114
+ /**
115
+ * Usado para exibir os botões de ação do snk-configurator.
116
+ */
117
+ showConfiguratorButtons: boolean;
118
+ /**
119
+ * Chave da configuração legado da grade.
120
+ */
121
+ gridLegacyConfigName: string;
122
+ /**
123
+ * Chave da configuração legado do formulário.
124
+ */
125
+ formLegacyConfigName: string;
126
+ /**
127
+ * Ignora os campos "somente leitura" no modo de inserção.
128
+ */
129
+ ignoreReadOnlyFormFields: boolean;
130
+ /**
131
+ * Registra um editor customizado para campos da grade e formulário.
132
+ */
133
+ addCustomEditor(fieldName: string, customEditor: ICustomEditor): Promise<void>;
134
+ /**
135
+ * Registra um render customizado para colunas da grid.
136
+ */
137
+ addGridCustomRender(fieldName: string, customRender: ICustomRender): Promise<void>;
138
+ /**
139
+ * Define se a carga dos dados será feita assim que o componente for carregado.
140
+ */
141
+ autoLoad?: boolean;
142
+ handleResourceIDChanged(newValue: string, oldValue: string): void;
143
+ /**
144
+ * Registra um formatador de valores para uma coluna da grid.
145
+ */
146
+ addCustomValueFormatter(columnName: string, customFormatter: ICustomFormatter): Promise<void>;
147
+ /**
148
+ * Remove o formatador de valores de uma coluna da grid.
149
+ */
150
+ removeCustomValueFormatter(columnName: string): Promise<void>;
151
+ /**
152
+ * Altera/adiciona uma propriedade nos metadados do campo.
153
+ */
154
+ setFieldProp(fieldName: string, propName: string, value: any): Promise<void>;
70
155
  _taskbarProcessor: TaskbarProcessor;
156
+ private getButtons;
157
+ private addConfigButton;
158
+ private get application();
71
159
  resolveInMemoryBtns(taskbarButtons: Array<string>): Array<string>;
72
160
  /**
73
161
  * Usado para alternar a visão entre GRID e FORM externamente.
74
162
  */
75
163
  goToView(view: VIEW_MODE): Promise<void>;
76
164
  actionClickListener(evt: CustomEvent): void;
165
+ onChangeEntityName(newValue: string): Promise<void>;
77
166
  onModeChange(): void;
78
167
  observeDataState(newValue: DataState, oldValue: DataState): void;
79
- componentWillRender(): void;
168
+ observeFormLegacy(newValue: string, oldValue: string): Promise<void>;
169
+ observeGridLegacy(newValue: string, oldValue: string): Promise<void>;
170
+ private handleDataStateChange;
171
+ private processRmPrecision;
172
+ private handleUpdateGridLegacyConfig;
173
+ private handleUpdateFormLegacyConfig;
174
+ private openConfig;
175
+ private openGridConfig;
176
+ private openFormConfig;
177
+ private addGridLegacyConfigName;
178
+ private loadGridConfig;
179
+ private formConfigIsLoaded;
180
+ private loadFormConfig;
181
+ componentWillRender(): Promise<void>;
182
+ componentDidRender(): void;
80
183
  componentWillLoad(): void;
184
+ componentDidLoad(): void;
185
+ private setCustomRenders;
186
+ private setCustomEditors;
81
187
  configDatasource(): void;
188
+ private setFieldsProps;
82
189
  getTaskBarId(): string;
83
190
  initInMemoryDataUnit(): void;
84
191
  setMetadata(metadata: UnitMetadata): Promise<void>;
85
192
  setRecords(records: Array<Record>): Promise<void>;
86
193
  getRecords(): Promise<Array<Record>>;
194
+ /**
195
+ * Usado para abrir o configurator do CRUD
196
+ */
197
+ openConfigurator(): Promise<void>;
198
+ /**
199
+ * Usado para fechar o configurator do CRUD
200
+ */
201
+ closeConfigurator(): Promise<void>;
202
+ updateConfig(): Promise<void>;
87
203
  processMetadata(): void;
204
+ private addGridCustomValueFormattters;
88
205
  onDataStateChange(evt: any): void;
89
206
  getTaskBarDisabledButtons(): Array<string>;
90
207
  handleCancelEdit(): void;
208
+ private handleConfiguratorEvent;
91
209
  getColumnSearch(actionButton: any, item: IAction): HTMLElement;
92
210
  private onSelectField;
93
211
  getFieldSearch(actionButton: any, item: IAction): HTMLElement;
94
212
  private getFormFields;
95
213
  private handleFormSetFields;
96
214
  private fieldsOptionLoader;
97
- getActionsList(): Array<Action>;
215
+ private getActionsList;
216
+ private getTopTaskBarId;
98
217
  keyDownListener(event: KeyboardEvent): Promise<void>;
99
218
  findField(): Promise<void>;
100
219
  findColumn(): Promise<void>;
@@ -102,5 +221,18 @@ export declare class SnkSimpleCrud {
102
221
  private clearFieldToFocusHandler;
103
222
  connectedCallback(): void;
104
223
  disconnectedCallback(): void;
224
+ private gridConfigChangeHandler;
225
+ private modalConfigChangeHandler;
226
+ private dataExporterProviderStore;
227
+ private getDataExporterStoreKey;
228
+ private setGridConfig;
229
+ private setFormConfig;
230
+ private closeGridConfig;
231
+ private closeFormConfig;
232
+ private getPageSize;
233
+ private handleShowFormConfig;
234
+ private resolveResourceID;
235
+ private getFormConfig;
236
+ private updateFormConfig;
105
237
  render(): any;
106
238
  }
@@ -30,4 +30,4 @@ export declare enum VisibleWhenForbidden {
30
30
  CONFIGURATOR = "CONFIGURATOR"
31
31
  }
32
32
  export declare const buildCustomButton: (def: CustomButton, className: string, dataElementId: string, action: (name: string) => void, isEnabled: (name: string) => boolean) => HTMLElement;
33
- export declare const buildElem: (element: TaskbarElement, className: string, dataElementId: string, getTitle: (name: string) => string, action: (name: string) => void, isEnabled: (name: string) => boolean, actions: Array<Action>, configName: string, presentationMode: PresentationMode) => HTMLElement;
33
+ export declare const buildElem: (element: TaskbarElement, className: string, dataElementId: string, getTitle: (name: string) => string, action: (name: string) => void, isEnabled: (name: string) => boolean, actions: Array<Action>, dataExporterStoreKey: string, presentationMode: PresentationMode) => HTMLElement;
@@ -1,4 +1,4 @@
1
- import { DataUnit } from '@sankhyalabs/core';
1
+ import { DataUnit, OverflowWatcher } from '@sankhyalabs/core';
2
2
  import { EventEmitter, VNode } from '../../stencil-public-runtime';
3
3
  import { SnkApplication } from '../snk-application/snk-application';
4
4
  import { DataState } from '../snk-data-unit/snk-data-unit';
@@ -8,13 +8,25 @@ import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
8
8
  import { IAction } from '@sankhyalabs/ezui/dist/types/utils';
9
9
  export declare class SnkTaskbar {
10
10
  readonly TASKBAR_ITEM_ID_PREFIX = "TASKBAR_ITEM_";
11
+ readonly TASKBAR_CUSTOM_ELEMENTS_CONTAINER_CLASS_NAME = "taskbar-custom-elements-container";
12
+ readonly ACTIONS_BUTTON_TAG = "TASKBAR-ACTIONS-BUTTON";
13
+ readonly NOT_OVERFLOW_ELEMENTS: string[];
11
14
  _application: SnkApplication;
12
15
  _definitions: Array<string>;
16
+ _overFlowWatcher: OverflowWatcher;
13
17
  private _element;
14
18
  _permissions: any;
19
+ _overFlowedElements: HTMLElement[];
15
20
  _customElements: Map<string, any>;
16
21
  _customElementsId: Array<string>;
17
22
  _slotContainer: Element;
23
+ _hiddenActionsList: Array<Action>;
24
+ _lastWidth: number | undefined;
25
+ _hasToUpdateOverFlow: boolean;
26
+ /**
27
+ * Usado para determinar O alinhamento dos items na taskbar.
28
+ */
29
+ alignRigth: boolean;
18
30
  /**
19
31
  * Usado para determinar o identificador do slot que recebe elementos personalizados.
20
32
  */
@@ -26,6 +38,10 @@ export declare class SnkTaskbar {
26
38
  * Exemplo: Elementos customizados na Taskbar da aba de detalhes.
27
39
  */
28
40
  customContainerId: string;
41
+ /**
42
+ * Define como será o comportamento da taskbar quando ocorrer overflow
43
+ */
44
+ overflowStrategy: 'hiddenItems' | 'none';
29
45
  /**
30
46
  * Usado para guardar ou recuperar as configurações do formulário.
31
47
  */
@@ -88,6 +104,8 @@ export declare class SnkTaskbar {
88
104
  ATTACH: string;
89
105
  };
90
106
  observeButtons(): void;
107
+ observeDisabledButtons(): void;
108
+ observeLastWidth(newValue: any, oldValue: any): void;
91
109
  elementsFromString(strButtons: string): Array<TaskbarElement>;
92
110
  private isAllowed;
93
111
  /**
@@ -101,6 +119,7 @@ export declare class SnkTaskbar {
101
119
  private isEnabled;
102
120
  private validatePresentationMode;
103
121
  getElement(index: number, def: TaskbarElement | CustomButton): HTMLElement;
122
+ buildDynamicActionsList(): Array<Action>;
104
123
  getIdElemBtnNative(taskbarElem: TaskbarElement): string;
105
124
  getIdElemBtnCustom(btnCustom: CustomButton): string;
106
125
  isDivider(element: VNode): boolean;
@@ -111,12 +130,26 @@ export declare class SnkTaskbar {
111
130
  private buildSlotContainer;
112
131
  componentWillLoad(): void;
113
132
  componentWillRender(): void;
133
+ private handleDefinitions;
134
+ private updateOverFlowIfNeeded;
135
+ private handleOverFlow;
136
+ private resetOverFlowedElements;
137
+ private doOverFlowElements;
138
+ private addItemToActionList;
139
+ private getTaskbarElementName;
140
+ private getTaskbarElementIcon;
141
+ private getTaskbarElementLabel;
142
+ private hasToIgnoreOverFlow;
143
+ private handleOverFlowStrategy;
144
+ private buildOverFlowWatcherParams;
114
145
  componentDidLoad(): void;
115
146
  componentDidRender(): void;
147
+ private updateLastWidth;
116
148
  disconnectedCallback(): void;
117
149
  private unlinkAllCustomElements;
118
150
  private unlinkCustomElementFromTaskbar;
119
151
  render(): any;
152
+ private getHostClasses;
120
153
  }
121
154
  export interface Action extends IAction {
122
155
  type?: 'divider' | 'item';