@sankhyalabs/sankhyablocks 8.15.3 → 8.16.0-dev.10

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 (234) hide show
  1. package/dist/cjs/{ConfigStorage-942ce74b.js → ConfigStorage-a343e418.js} +1 -0
  2. package/dist/cjs/{SnkMultiSelectionListDataSource-3c08d25c.js → IExporterProvider-597949f9.js} +94 -4
  3. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  4. package/dist/cjs/{SnkFormConfigManager-f9dc0d28.js → SnkFormConfigManager-166cbd1f.js} +8 -7
  5. package/dist/cjs/{SnkMessageBuilder-66aa2557.js → SnkMessageBuilder-897ffd08.js} +9 -13
  6. package/dist/cjs/{pesquisa-fetcher-562d281f.js → dataunit-fetcher-688d3f05.js} +87 -180
  7. package/dist/cjs/{index-0922807b.js → index-1dfc7a6e.js} +5 -0
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/pesquisa-fetcher-680e198f.js +166 -0
  10. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  11. package/dist/cjs/snk-actions-button_4.cjs.entry.js +5 -3
  12. package/dist/cjs/snk-application.cjs.entry.js +35 -12
  13. package/dist/cjs/snk-attach.cjs.entry.js +71 -46
  14. package/dist/cjs/snk-crud.cjs.entry.js +101 -10
  15. package/dist/cjs/snk-data-exporter.cjs.entry.js +315 -85
  16. package/dist/cjs/snk-data-unit-8fa7917a.js +689 -0
  17. package/dist/cjs/snk-data-unit.cjs.entry.js +12 -2
  18. package/dist/cjs/snk-detail-view.cjs.entry.js +50 -10
  19. package/dist/cjs/snk-filter-bar.cjs.entry.js +6 -2
  20. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +1 -1
  21. package/dist/cjs/snk-form-config.cjs.entry.js +1 -1
  22. package/dist/cjs/snk-form-view.cjs.entry.js +67 -0
  23. package/dist/cjs/snk-form.cjs.entry.js +52 -7
  24. package/dist/cjs/snk-grid.cjs.entry.js +165 -108
  25. package/dist/cjs/{snk-guides-viewer-bb6087cd.js → snk-guides-viewer-9c682034.js} +43 -10
  26. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -7
  27. package/dist/cjs/snk-personalized-filter.cjs.entry.js +1 -1
  28. package/dist/cjs/snk-simple-crud.cjs.entry.js +268 -40
  29. package/dist/cjs/snk-taskbar.cjs.entry.js +4 -3
  30. package/dist/cjs/{taskbar-elements-3ecd1278.js → taskbar-elements-9ad1f9c0.js} +3 -3
  31. package/dist/collection/collection-manifest.json +1 -1
  32. package/dist/collection/components/snk-application/snk-application.js +35 -11
  33. package/dist/collection/components/snk-attach/snk-attach.js +67 -44
  34. package/dist/collection/components/snk-crud/interfaces/PropsCustomEditor.js +1 -0
  35. package/dist/collection/components/snk-crud/interfaces/PropsCustomRender.js +1 -0
  36. package/dist/collection/components/snk-crud/snk-crud.js +305 -7
  37. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +136 -2
  38. package/dist/collection/components/snk-crud/subcomponents/snk-form-view.js +161 -0
  39. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +134 -7
  40. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +97 -0
  41. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +74 -0
  42. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +54 -1
  43. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  44. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +58 -0
  45. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  46. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +59 -52
  47. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +62 -0
  48. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  49. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +20 -0
  50. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  51. package/dist/collection/components/snk-data-unit/snk-data-unit.js +538 -218
  52. package/dist/collection/components/snk-data-unit/test/resources/metadataMock.js +24 -0
  53. package/dist/collection/components/snk-data-unit/test/resources/parentMetadataMock.js +18 -0
  54. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +22 -1
  55. package/dist/collection/components/snk-form/snk-form.js +102 -5
  56. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +7 -6
  57. package/dist/collection/components/snk-form-config/snk-form-config.js +1 -1
  58. package/dist/collection/components/snk-grid/snk-grid.js +240 -101
  59. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +406 -20
  60. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +2 -2
  61. package/dist/collection/components/snk-taskbar/snk-taskbar.js +2 -1
  62. package/dist/collection/lib/@types/index.js +5 -0
  63. package/dist/collection/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.js +35 -0
  64. package/dist/collection/lib/configs/ConfigStorage.js +1 -0
  65. package/dist/collection/lib/dataUnit/InMemoryLoader.js +7 -3
  66. package/dist/collection/lib/dataUnit/ValueFormatter.js +4 -0
  67. package/dist/collection/lib/dataUnit/interfaces/InMemoryLoaderConfig.js +1 -0
  68. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  69. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  70. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +11 -13
  71. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +1 -0
  72. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.js +1 -0
  73. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.js +1 -0
  74. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.js +53 -4
  75. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.js +22 -0
  76. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +4 -4
  77. package/dist/collection/lib/message/SnkMessageBuilder.js +5 -12
  78. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -0
  79. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +2 -1
  80. package/dist/components/ConfigStorage.js +1 -0
  81. package/dist/components/{field-search.js → IExporterProvider.js} +93 -6
  82. package/dist/components/ISave.js +47 -0
  83. package/dist/components/SnkFormConfigManager.js +7 -6
  84. package/dist/components/SnkMessageBuilder.js +9 -13
  85. package/dist/components/dataunit-fetcher.js +84 -182
  86. package/dist/components/index2.js +198 -33
  87. package/dist/components/pesquisa-fetcher.js +164 -0
  88. package/dist/components/snk-actions-button2.js +4 -11
  89. package/dist/components/snk-application2.js +31 -9
  90. package/dist/components/snk-attach2.js +65 -41
  91. package/dist/components/snk-crud.js +110 -11
  92. package/dist/components/snk-data-exporter2.js +309 -85
  93. package/dist/components/snk-data-unit2.js +485 -216
  94. package/dist/components/snk-detail-view2.js +96 -14
  95. package/dist/components/snk-expression-item2.js +1 -1
  96. package/dist/components/snk-filter-bar2.js +6 -1
  97. package/dist/components/snk-form-config2.js +1 -1
  98. package/dist/components/snk-form-view2.js +72 -1
  99. package/dist/components/snk-form.js +53 -6
  100. package/dist/components/snk-grid2.js +168 -106
  101. package/dist/components/snk-personalized-filter2.js +1 -1
  102. package/dist/components/snk-simple-crud2.js +263 -25
  103. package/dist/components/snk-taskbar2.js +6 -5
  104. package/dist/esm/{ConfigStorage-86187da3.js → ConfigStorage-3806514e.js} +1 -0
  105. package/dist/esm/{SnkMultiSelectionListDataSource-6a879955.js → IExporterProvider-63a188b6.js} +93 -5
  106. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  107. package/dist/esm/{SnkFormConfigManager-f53f9f87.js → SnkFormConfigManager-31b24066.js} +8 -7
  108. package/dist/esm/{SnkMessageBuilder-0a4becdd.js → SnkMessageBuilder-571462fb.js} +9 -13
  109. package/dist/esm/{pesquisa-fetcher-c7ce8ee7.js → dataunit-fetcher-264191b2.js} +83 -181
  110. package/dist/esm/{index-0ece87a6.js → index-3aa4977a.js} +6 -1
  111. package/dist/esm/loader.js +1 -1
  112. package/dist/esm/pesquisa-fetcher-03c8f919.js +164 -0
  113. package/dist/esm/sankhyablocks.js +1 -1
  114. package/dist/esm/snk-actions-button_4.entry.js +5 -3
  115. package/dist/esm/snk-application.entry.js +34 -11
  116. package/dist/esm/snk-attach.entry.js +66 -41
  117. package/dist/esm/snk-crud.entry.js +101 -10
  118. package/dist/esm/snk-data-exporter.entry.js +316 -86
  119. package/dist/esm/snk-data-unit-f5cbe64b.js +687 -0
  120. package/dist/esm/snk-data-unit.entry.js +12 -2
  121. package/dist/esm/snk-detail-view.entry.js +50 -10
  122. package/dist/esm/snk-filter-bar.entry.js +6 -2
  123. package/dist/esm/snk-filter-modal-item.entry.js +1 -1
  124. package/dist/esm/snk-form-config.entry.js +1 -1
  125. package/dist/esm/snk-form-view.entry.js +67 -0
  126. package/dist/esm/snk-form.entry.js +52 -7
  127. package/dist/esm/snk-grid.entry.js +163 -106
  128. package/dist/esm/{snk-guides-viewer-1d95ebf2.js → snk-guides-viewer-8f6960a2.js} +43 -10
  129. package/dist/esm/snk-guides-viewer.entry.js +9 -7
  130. package/dist/esm/snk-personalized-filter.entry.js +1 -1
  131. package/dist/esm/snk-simple-crud.entry.js +256 -28
  132. package/dist/esm/snk-taskbar.entry.js +4 -3
  133. package/dist/esm/{taskbar-elements-2473c8ac.js → taskbar-elements-d59867f1.js} +3 -3
  134. package/dist/sankhyablocks/p-17def7cd.js +1 -0
  135. package/dist/sankhyablocks/p-1db45d26.entry.js +1 -0
  136. package/dist/sankhyablocks/p-28ee0972.js +1 -0
  137. package/dist/sankhyablocks/p-2a408684.js +1 -0
  138. package/dist/sankhyablocks/{p-eae7a817.entry.js → p-2c68b3ae.entry.js} +1 -1
  139. package/dist/sankhyablocks/p-30cf616e.js +1 -0
  140. package/dist/sankhyablocks/p-3a212712.js +1 -0
  141. package/dist/sankhyablocks/p-450c60e4.entry.js +1 -0
  142. package/dist/sankhyablocks/{p-a1d72395.entry.js → p-47db7e88.entry.js} +1 -1
  143. package/dist/sankhyablocks/p-4e5e1313.entry.js +1 -0
  144. package/dist/sankhyablocks/{p-aff76a53.js → p-52920496.js} +1 -1
  145. package/dist/sankhyablocks/p-62ba211a.entry.js +1 -0
  146. package/dist/sankhyablocks/p-6bb2f3e9.entry.js +1 -0
  147. package/dist/sankhyablocks/p-7505da04.entry.js +1 -0
  148. package/dist/sankhyablocks/p-7619bdb1.entry.js +11 -0
  149. package/dist/sankhyablocks/p-7a85fd49.entry.js +1 -0
  150. package/dist/sankhyablocks/{p-ae4fc9a9.js → p-7e7a7473.js} +1 -1
  151. package/dist/sankhyablocks/p-7ef9c55c.js +1 -0
  152. package/dist/sankhyablocks/p-80042dc6.entry.js +1 -0
  153. package/dist/sankhyablocks/p-8c59edd7.entry.js +1 -0
  154. package/dist/sankhyablocks/p-9606509c.entry.js +1 -0
  155. package/dist/sankhyablocks/p-9863d682.js +1 -0
  156. package/dist/sankhyablocks/p-ae93d46a.entry.js +1 -0
  157. package/dist/sankhyablocks/p-af8efd95.js +6 -0
  158. package/dist/sankhyablocks/p-d6e26ea8.entry.js +1 -0
  159. package/dist/sankhyablocks/p-f2809746.entry.js +1 -0
  160. package/dist/sankhyablocks/p-f4450320.entry.js +1 -0
  161. package/dist/sankhyablocks/p-fe79f83a.js +60 -0
  162. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  163. package/dist/types/components/snk-application/snk-application.d.ts +7 -3
  164. package/dist/types/components/snk-attach/snk-attach.d.ts +11 -9
  165. package/dist/types/components/snk-crud/interfaces/PropsCustomEditor.d.ts +4 -0
  166. package/dist/types/components/snk-crud/interfaces/PropsCustomRender.d.ts +4 -0
  167. package/dist/types/components/snk-crud/snk-crud.d.ts +45 -1
  168. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +23 -0
  169. package/dist/types/components/snk-crud/subcomponents/snk-form-view.d.ts +28 -3
  170. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +24 -0
  171. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +14 -0
  172. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +12 -0
  173. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +24 -4
  174. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  175. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  176. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  177. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +4 -1
  178. package/dist/types/components/snk-data-exporter/structure/ItemBuilder.d.ts +21 -0
  179. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  180. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +4 -0
  181. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  182. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +66 -2
  183. package/dist/types/components/snk-data-unit/test/resources/metadataMock.d.ts +3 -0
  184. package/dist/types/components/snk-data-unit/test/resources/parentMetadataMock.d.ts +3 -0
  185. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +4 -0
  186. package/dist/types/components/snk-form/snk-form.d.ts +14 -0
  187. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +2 -2
  188. package/dist/types/components/snk-grid/snk-grid.d.ts +46 -6
  189. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +62 -4
  190. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  191. package/dist/types/components.d.ts +261 -4
  192. package/dist/types/lib/@types/index.d.ts +5 -0
  193. package/dist/types/lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter.d.ts +11 -0
  194. package/dist/types/lib/dataUnit/InMemoryLoader.d.ts +2 -1
  195. package/dist/types/lib/dataUnit/ValueFormatter.d.ts +2 -0
  196. package/dist/types/lib/dataUnit/interfaces/InMemoryLoaderConfig.d.ts +3 -0
  197. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  198. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  199. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  200. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IBuildRequestBodyLoadRowMetadata.d.ts +10 -0
  201. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/interfaces/IRowMetadata.d.ts +7 -0
  202. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/DatasetStrategy.d.ts +6 -0
  203. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/loadstrategy/test/resources/metadataMock.d.ts +20 -0
  204. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +3 -0
  205. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +2 -1
  206. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +1 -0
  207. package/package.json +1 -1
  208. package/dist/cjs/snk-data-unit-41c29713.js +0 -462
  209. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  210. package/dist/components/index3.js +0 -199
  211. package/dist/esm/snk-data-unit-de1d140d.js +0 -460
  212. package/dist/sankhyablocks/p-032fe52e.js +0 -1
  213. package/dist/sankhyablocks/p-03dcc5ff.entry.js +0 -1
  214. package/dist/sankhyablocks/p-0594db5a.entry.js +0 -1
  215. package/dist/sankhyablocks/p-06e13db2.js +0 -1
  216. package/dist/sankhyablocks/p-07a61550.entry.js +0 -1
  217. package/dist/sankhyablocks/p-1403a4b6.entry.js +0 -1
  218. package/dist/sankhyablocks/p-14a08904.entry.js +0 -1
  219. package/dist/sankhyablocks/p-15802c59.entry.js +0 -1
  220. package/dist/sankhyablocks/p-235dc7b1.js +0 -65
  221. package/dist/sankhyablocks/p-32556aa6.js +0 -1
  222. package/dist/sankhyablocks/p-38289a55.js +0 -1
  223. package/dist/sankhyablocks/p-3c632d48.js +0 -1
  224. package/dist/sankhyablocks/p-3f833983.entry.js +0 -1
  225. package/dist/sankhyablocks/p-52c8e589.js +0 -1
  226. package/dist/sankhyablocks/p-5e1502b6.entry.js +0 -11
  227. package/dist/sankhyablocks/p-74d349c3.entry.js +0 -1
  228. package/dist/sankhyablocks/p-93167e28.entry.js +0 -1
  229. package/dist/sankhyablocks/p-add17f6a.entry.js +0 -1
  230. package/dist/sankhyablocks/p-bd47dd16.entry.js +0 -1
  231. package/dist/sankhyablocks/p-c1f88236.entry.js +0 -1
  232. package/dist/sankhyablocks/p-ccdd5332.entry.js +0 -1
  233. package/dist/sankhyablocks/p-ee9536bc.entry.js +0 -1
  234. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
@@ -0,0 +1,3 @@
1
+ import { UnitMetadata } from "@sankhyalabs/core";
2
+ declare const parentMetadataMock: UnitMetadata;
3
+ export default parentMetadataMock;
@@ -58,6 +58,10 @@ export declare class SnkFilterBar implements FilterProvider {
58
58
  * Chave da configuração legado da barra de filtros.
59
59
  */
60
60
  filterBarLegacyConfigName: string;
61
+ /**
62
+ * Define se a carga dos dados será feita assim que o componente for carregado.
63
+ */
64
+ autoLoad?: boolean;
61
65
  configUpdated: EventEmitter<SnkFilterItemConfig[]>;
62
66
  allowDefault: boolean;
63
67
  scrollerLocked: boolean;
@@ -4,8 +4,11 @@ import { EventEmitter } from '../../stencil-public-runtime';
4
4
  import { DataState } from '../snk-data-unit/snk-data-unit';
5
5
  import { SnkFormConfigManager } from '../snk-form-config/SnkFormConfigManager';
6
6
  import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
7
+ import { ICustomEditor } from '@sankhyalabs/ezui/dist/types/utils';
7
8
  export declare class SnkForm {
8
9
  private _snkDataUnit;
10
+ private _customEditors;
11
+ private _form;
9
12
  _element: HTMLElement;
10
13
  _dataUnit: DataUnit;
11
14
  _dataState: DataState;
@@ -51,9 +54,20 @@ export declare class SnkForm {
51
54
  * Fecha a janela de configurações do formulário.
52
55
  */
53
56
  hideConfig(): Promise<void>;
57
+ /**
58
+ * Registra um editor customizado para campos da grade e formulário.
59
+ */
60
+ addCustomEditor(fieldName: string, customEditor: ICustomEditor): Promise<void>;
61
+ /**
62
+ * Altera/adiciona uma propriedade nos metadados do campo.
63
+ */
64
+ setFieldProp(fieldName: string, propName: string, value: any): Promise<void>;
54
65
  private closeConfig;
55
66
  private dataunitReady;
67
+ private setCustomEditors;
68
+ componentDidRender(): Promise<void>;
56
69
  componentWillLoad(): Promise<void>;
70
+ private handleDataStateChange;
57
71
  private addFormLegacyConfig;
58
72
  render(): any;
59
73
  }
@@ -20,9 +20,9 @@ export declare class SnkFormConfigManager {
20
20
  readOnly?: boolean;
21
21
  }>;
22
22
  private isFieldVisible;
23
- private getInsertionConfig;
23
+ private getFormConfig;
24
24
  setConfig(config: IFormConfig): void;
25
- getConfig(insertionMode: boolean, dataUnit: DataUnit, ignoreReadOnlyFormFields?: boolean): IFormConfig;
25
+ getConfig(dataUnit: DataUnit, ignoreReadOnlyFormFields?: boolean): IFormConfig;
26
26
  private getFormConfigFetcher;
27
27
  fetchUserAvailableConfigs(): Promise<Array<IUserConfig>>;
28
28
  fetchLegacyConfig(): Promise<IFormConfig>;
@@ -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;
@@ -111,6 +123,14 @@ export declare class SnkGrid {
111
123
  * Chave da configuração legado da barra de filtros.
112
124
  */
113
125
  filterBarLegacyConfigName: string;
126
+ /**
127
+ * Define se a carga dos dados será feita assim que o componente for carregado.
128
+ */
129
+ autoLoad?: boolean;
130
+ /**
131
+ * Define se a grid será focada ao ser carregada.
132
+ */
133
+ autoFocus?: boolean;
114
134
  /**
115
135
  * Emitido sempre que houver click de botão ou ação.
116
136
  */
@@ -143,6 +163,22 @@ export declare class SnkGrid {
143
163
  * Abre o localizador de colunas
144
164
  */
145
165
  findColumn(): Promise<void>;
166
+ /**
167
+ * Registra um editor customizado para campos da grade e formulário
168
+ */
169
+ addCustomEditor(fieldName: string, customEditor: ICustomEditor, detailContext?: string): Promise<void>;
170
+ /**
171
+ * Registra um render customizado para colunas da grid.
172
+ */
173
+ addGridCustomRender(fieldName: string, customRender: ICustomRender, detailContext?: string): Promise<void>;
174
+ /**
175
+ * Registra um formatador de valores para uma coluna da grid.
176
+ */
177
+ addCustomValueFormatter(columnName: string, customFormatter: ICustomFormatter): Promise<void>;
178
+ /**
179
+ * Remove o formatador de valores de uma coluna da grid.
180
+ */
181
+ removeCustomValueFormatter(columnName: string): Promise<void>;
146
182
  /**
147
183
  * Atribui o foco para a grade.
148
184
  */
@@ -155,13 +191,17 @@ export declare class SnkGrid {
155
191
  private addGridLegacyConfigName;
156
192
  private gridConfigChangeHandler;
157
193
  private modalConfigChangeHandler;
158
- private buildColumnsMetadata;
159
- private getPaginationInfo;
160
- private getExporterOffset;
161
194
  private dataExporterProviderStore;
162
195
  private addElementID;
163
- private finshLoading;
196
+ private loadGridCustomFormatters;
197
+ private interceptMetadataLoaded;
198
+ private dataUnitInterceptor;
199
+ private finishLoading;
200
+ private setCustomRenders;
201
+ private setCustomEditors;
164
202
  componentWillLoad(): void;
203
+ componentDidRender(): void;
204
+ private handleDataStateChange;
165
205
  getHeaderDisabledButtons(): Array<string>;
166
206
  private getInvisibleButtons;
167
207
  componentWillRender(): void;
@@ -10,12 +10,12 @@ import { IFieldConfig, IFormConfig } from '@sankhyalabs/ezui/dist/types/utils/fo
10
10
  import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
11
11
  import { IGridConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController';
12
12
  import SnkMultiSelectionListDataSource from '../snk-grid/filtercolumn/SnkMultiSelectionListDataSource';
13
- import { IAction } from '@sankhyalabs/ezui/dist/types/utils';
13
+ import { IAction, ICustomEditor, ICustomRender } from '@sankhyalabs/ezui/dist/types/utils';
14
14
  import { SnkFormConfigManager } from '../snk-form-config/SnkFormConfigManager';
15
+ import { ICustomFormatter } from '@sankhyalabs/ezui/dist/types/components/ez-grid/interfaces';
15
16
  export declare class SnkSimpleCrud {
16
17
  _viewStack: HTMLEzViewStackElement;
17
18
  _snkConfigurator: HTMLSnkConfiguratorElement;
18
- _snkGrid: HTMLSnkGridElement;
19
19
  _inMemoryLoader: InMemoryLoader;
20
20
  _metadata: UnitMetadata;
21
21
  _multiSelectionListDataSource: SnkMultiSelectionListDataSource;
@@ -30,6 +30,11 @@ export declare class SnkSimpleCrud {
30
30
  _gridConfigAlreadyLoaded: boolean;
31
31
  _formConfigAlreadyLoaded: boolean;
32
32
  _formConfigFetcher: FormConfigFetcher;
33
+ _customEditors: Map<string, ICustomEditor>;
34
+ _customRenders: Map<string, ICustomRender>;
35
+ private _form;
36
+ private _rmPrecisionCustomValueFormatter;
37
+ private _snkDataUnit;
33
38
  private _element;
34
39
  _showPopUpGridConfig: boolean;
35
40
  _showFormConfig: boolean;
@@ -39,18 +44,27 @@ export declare class SnkSimpleCrud {
39
44
  _customContainerId: string;
40
45
  dataState: DataState;
41
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;
42
51
  mode: SIMPLE_CRUD_MODE;
43
52
  gridConfig: IGridConfig;
44
53
  formConfig: IFormConfig;
45
54
  _formFields: IFieldConfig[];
55
+ private _fieldsProps;
46
56
  /**
47
57
  * Determina se pode haver mais de uma linha selecionada na grade.
48
58
  */
49
59
  multipleSelection: boolean;
50
60
  useCancelConfirm: boolean;
51
61
  /**
52
- * Identificador de recursos como configurações e acesso.
53
- */
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
+ */
54
68
  resourceID: string;
55
69
  /**
56
70
  * Emitido quando há qualquer mudança de estado no DataUnit.
@@ -113,7 +127,39 @@ export declare class SnkSimpleCrud {
113
127
  * Ignora os campos "somente leitura" no modo de inserção.
114
128
  */
115
129
  ignoreReadOnlyFormFields: boolean;
130
+ /**
131
+ * Define se a grid será focada ao ser carregada.
132
+ */
133
+ autoFocus?: boolean;
134
+ /**
135
+ * Define a chave customizada para sobrescrever as mensagens (Não pegando pela entidade)
136
+ */
137
+ domainMessagesBuilder: string;
138
+ /**
139
+ * Registra um editor customizado para campos da grade e formulário.
140
+ */
141
+ addCustomEditor(fieldName: string, customEditor: ICustomEditor): Promise<void>;
142
+ /**
143
+ * Registra um render customizado para colunas da grid.
144
+ */
145
+ addGridCustomRender(fieldName: string, customRender: ICustomRender): Promise<void>;
146
+ /**
147
+ * Define se a carga dos dados será feita assim que o componente for carregado.
148
+ */
149
+ autoLoad?: boolean;
116
150
  handleResourceIDChanged(newValue: string, oldValue: string): void;
151
+ /**
152
+ * Registra um formatador de valores para uma coluna da grid.
153
+ */
154
+ addCustomValueFormatter(columnName: string, customFormatter: ICustomFormatter): Promise<void>;
155
+ /**
156
+ * Remove o formatador de valores de uma coluna da grid.
157
+ */
158
+ removeCustomValueFormatter(columnName: string): Promise<void>;
159
+ /**
160
+ * Altera/adiciona uma propriedade nos metadados do campo.
161
+ */
162
+ setFieldProp(fieldName: string, propName: string, value: any): Promise<void>;
117
163
  _taskbarProcessor: TaskbarProcessor;
118
164
  private getButtons;
119
165
  private addConfigButton;
@@ -124,10 +170,13 @@ export declare class SnkSimpleCrud {
124
170
  */
125
171
  goToView(view: VIEW_MODE): Promise<void>;
126
172
  actionClickListener(evt: CustomEvent): void;
173
+ onChangeEntityName(newValue: string): Promise<void>;
127
174
  onModeChange(): void;
128
175
  observeDataState(newValue: DataState, oldValue: DataState): void;
129
176
  observeFormLegacy(newValue: string, oldValue: string): Promise<void>;
130
177
  observeGridLegacy(newValue: string, oldValue: string): Promise<void>;
178
+ private handleDataStateChange;
179
+ private processRmPrecision;
131
180
  private handleUpdateGridLegacyConfig;
132
181
  private handleUpdateFormLegacyConfig;
133
182
  private openConfig;
@@ -138,9 +187,13 @@ export declare class SnkSimpleCrud {
138
187
  private formConfigIsLoaded;
139
188
  private loadFormConfig;
140
189
  componentWillRender(): Promise<void>;
190
+ componentDidRender(): void;
141
191
  componentWillLoad(): void;
142
192
  componentDidLoad(): void;
193
+ private setCustomRenders;
194
+ private setCustomEditors;
143
195
  configDatasource(): void;
196
+ private setFieldsProps;
144
197
  getTaskBarId(): string;
145
198
  initInMemoryDataUnit(): void;
146
199
  setMetadata(metadata: UnitMetadata): Promise<void>;
@@ -156,6 +209,7 @@ export declare class SnkSimpleCrud {
156
209
  closeConfigurator(): Promise<void>;
157
210
  updateConfig(): Promise<void>;
158
211
  processMetadata(): void;
212
+ private addGridCustomValueFormattters;
159
213
  onDataStateChange(evt: any): void;
160
214
  getTaskBarDisabledButtons(): Array<string>;
161
215
  handleCancelEdit(): void;
@@ -177,12 +231,16 @@ export declare class SnkSimpleCrud {
177
231
  disconnectedCallback(): void;
178
232
  private gridConfigChangeHandler;
179
233
  private modalConfigChangeHandler;
234
+ private dataExporterProviderStore;
235
+ private getDataExporterStoreKey;
180
236
  private setGridConfig;
181
237
  private setFormConfig;
182
238
  private closeGridConfig;
183
239
  private closeFormConfig;
240
+ private getPageSize;
184
241
  private handleShowFormConfig;
185
242
  private resolveResourceID;
186
243
  private getFormConfig;
244
+ private updateFormConfig;
187
245
  render(): any;
188
246
  }
@@ -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;