@sankhyalabs/sankhyablocks 9.2.0-dev.2 → 9.2.0-dev.21

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 (236) hide show
  1. package/dist/cjs/{ConfigStorage-1931defc.js → ConfigStorage-8b6def32.js} +2 -2
  2. package/dist/cjs/{DataFetcher-ad9fb3bb.js → DataFetcher-2c37b6a1.js} +52 -1
  3. package/dist/cjs/{ISave-18ffb73e.js → ISave-b22b3cf0.js} +1 -1
  4. package/dist/cjs/{SnkFormConfigManager-65e5288e.js → SnkFormConfigManager-477a27de.js} +2 -2
  5. package/dist/cjs/{ClientSideExporterProvider-994f6e26.js → SnkMultiSelectionListDataSource-b7ab26ba.js} +82 -79
  6. package/dist/cjs/{auth-fetcher-afbe69ab.js → auth-fetcher-78a90b36.js} +1 -1
  7. package/dist/cjs/{dataunit-fetcher-c7253b02.js → dataunit-fetcher-877944a9.js} +1 -1
  8. package/dist/cjs/filter-validate-6993f6f2.js +30 -0
  9. package/dist/cjs/{form-config-fetcher-f6e66d64.js → form-config-fetcher-dee08eb4.js} +1 -1
  10. package/dist/cjs/{index-0ad2baeb.js → index-13d05f03.js} +21 -5
  11. package/dist/cjs/index-1cf293c1.js +8 -8
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +4 -4
  14. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  15. package/dist/cjs/snk-actions-button_8.cjs.entry.js +5 -5
  16. package/dist/cjs/snk-application.cjs.entry.js +6 -9
  17. package/dist/cjs/snk-attach.cjs.entry.js +7 -7
  18. package/dist/cjs/snk-crud.cjs.entry.js +7 -7
  19. package/dist/cjs/snk-data-exporter.cjs.entry.js +5 -5
  20. package/dist/cjs/{snk-data-unit-448fce74.js → snk-data-unit-0cfa7622.js} +14 -4
  21. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -3
  22. package/dist/cjs/snk-detail-view.cjs.entry.js +9 -9
  23. package/dist/cjs/snk-entity-list.cjs.entry.js +10 -3
  24. package/dist/cjs/snk-expression-group_2.cjs.entry.js +1 -1
  25. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +189 -115
  26. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +23 -2
  27. package/dist/cjs/snk-filter-checkbox-list.cjs.entry.js +20 -2
  28. package/dist/cjs/snk-filter-detail.cjs.entry.js +25 -8
  29. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +9 -14
  30. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +16 -3
  31. package/dist/cjs/snk-filter-number.cjs.entry.js +34 -3
  32. package/dist/cjs/snk-filter-period.cjs.entry.js +59 -14
  33. package/dist/cjs/snk-filter-search.cjs.entry.js +14 -3
  34. package/dist/cjs/snk-filter-text.cjs.entry.js +18 -1
  35. package/dist/cjs/snk-form_2.cjs.entry.js +31 -5
  36. package/dist/cjs/snk-grid.cjs.entry.js +158 -66
  37. package/dist/cjs/{snk-guides-viewer-c23ed218.js → snk-guides-viewer-38277265.js} +6 -6
  38. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -9
  39. package/dist/cjs/snk-personalized-filter.cjs.entry.js +14 -6
  40. package/dist/cjs/snk-pesquisa.cjs.entry.js +4 -4
  41. package/dist/cjs/snk-simple-bar.cjs.entry.js +5 -5
  42. package/dist/cjs/snk-simple-crud.cjs.entry.js +60 -23
  43. package/dist/cjs/snk-taskbar.cjs.entry.js +2 -2
  44. package/dist/cjs/{taskbar-elements-3b74cd21.js → taskbar-elements-fb5d1e08.js} +1 -1
  45. package/dist/collection/components/snk-application/snk-application.js +0 -2
  46. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +4 -1
  47. package/dist/collection/components/snk-data-unit/snk-data-unit.js +174 -29
  48. package/dist/collection/components/snk-entity-list/snk-entity-list.js +28 -4
  49. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +72 -2
  50. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.js +73 -2
  51. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +51 -5
  52. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +83 -3
  53. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +118 -27
  54. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +49 -5
  55. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +71 -1
  56. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +62 -11
  57. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +70 -8
  58. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.css +0 -4
  59. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +112 -16
  60. package/dist/collection/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.js +8 -16
  61. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +315 -114
  62. package/dist/collection/components/snk-filter-bar/utils/SnkFilterModalFactory.js +3 -1
  63. package/dist/collection/components/snk-filter-bar/utils/filter-validate.js +24 -0
  64. package/dist/collection/components/snk-form/snk-form.js +133 -22
  65. package/dist/collection/components/snk-grid/snk-grid.js +488 -133
  66. package/dist/collection/components/snk-personalized-filter/snk-personalized-filter.js +83 -21
  67. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +80 -14
  68. package/dist/collection/components/snk-simple-bar/snk-simple-bar.js +9 -9
  69. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +414 -119
  70. package/dist/collection/components/snk-taskbar/snk-taskbar.js +102 -36
  71. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +1 -0
  72. package/dist/collection/lib/http/data-fetcher/custom-xhr-override.js +39 -0
  73. package/dist/collection/lib/message/resources/en-us/snk-filter-bar.msg.js +1 -0
  74. package/dist/collection/lib/message/resources/en-us/snk-grid.msg.js +4 -0
  75. package/dist/collection/lib/message/resources/es-es/snk-filter-bar.msg.js +1 -0
  76. package/dist/collection/lib/message/resources/es-es/snk-grid.msg.js +4 -0
  77. package/dist/collection/lib/message/resources/pt-br/snk-filter-bar.msg.js +1 -0
  78. package/dist/collection/lib/message/resources/pt-br/snk-grid.msg.js +4 -0
  79. package/dist/components/ContinuousInsertUtils.js +4 -1
  80. package/dist/components/DataFetcher.js +52 -1
  81. package/dist/components/index2.js +21 -5
  82. package/dist/components/snk-application2.js +0 -3
  83. package/dist/components/snk-crud.js +62 -44
  84. package/dist/components/snk-data-unit2.js +12 -2
  85. package/dist/components/snk-detail-view2.js +89 -56
  86. package/dist/components/snk-entity-list.js +11 -3
  87. package/dist/components/snk-filter-bar2.js +103 -108
  88. package/dist/components/snk-filter-binary-select.js +27 -3
  89. package/dist/components/snk-filter-checkbox-list.js +24 -3
  90. package/dist/components/snk-filter-detail2.js +28 -9
  91. package/dist/components/snk-filter-item2.js +70 -8
  92. package/dist/components/snk-filter-modal-item2.js +7 -12
  93. package/dist/components/snk-filter-modal.js +1 -325
  94. package/dist/components/snk-filter-modal2.js +391 -0
  95. package/dist/components/snk-filter-multi-select.js +19 -4
  96. package/dist/components/snk-filter-number.js +38 -4
  97. package/dist/components/snk-filter-period.js +64 -16
  98. package/dist/components/snk-filter-search.js +17 -4
  99. package/dist/components/snk-filter-text.js +22 -2
  100. package/dist/components/snk-form.js +29 -2
  101. package/dist/components/snk-grid2.js +188 -75
  102. package/dist/components/snk-personalized-filter2.js +10 -2
  103. package/dist/components/snk-simple-bar2.js +5 -5
  104. package/dist/components/snk-simple-crud2.js +45 -8
  105. package/dist/esm/{ConfigStorage-b5a1dba3.js → ConfigStorage-22eace3a.js} +2 -2
  106. package/dist/esm/{DataFetcher-6f6de657.js → DataFetcher-f6b2961a.js} +52 -1
  107. package/dist/esm/{ISave-7ecdca20.js → ISave-6b7b0423.js} +1 -1
  108. package/dist/esm/{SnkFormConfigManager-34fc1dc7.js → SnkFormConfigManager-968b97e7.js} +2 -2
  109. package/dist/esm/{ClientSideExporterProvider-7c2781f4.js → SnkMultiSelectionListDataSource-1136c4e7.js} +87 -84
  110. package/dist/esm/{auth-fetcher-7332a9a9.js → auth-fetcher-cf39e42b.js} +1 -1
  111. package/dist/esm/{dataunit-fetcher-f21cbad0.js → dataunit-fetcher-6314b19d.js} +1 -1
  112. package/dist/esm/filter-validate-d765d450.js +27 -0
  113. package/dist/esm/{form-config-fetcher-6ab4e805.js → form-config-fetcher-bc6f0f1f.js} +1 -1
  114. package/dist/esm/{index-b72af127.js → index-446f9341.js} +21 -5
  115. package/dist/esm/index-479e1293.js +8 -8
  116. package/dist/esm/loader.js +1 -1
  117. package/dist/esm/pesquisa-grid_2.entry.js +4 -4
  118. package/dist/esm/sankhyablocks.js +1 -1
  119. package/dist/esm/snk-actions-button_8.entry.js +5 -5
  120. package/dist/esm/snk-application.entry.js +6 -9
  121. package/dist/esm/snk-attach.entry.js +7 -7
  122. package/dist/esm/snk-crud.entry.js +7 -7
  123. package/dist/esm/snk-data-exporter.entry.js +5 -5
  124. package/dist/esm/{snk-data-unit-b7e6e7a6.js → snk-data-unit-4acf4781.js} +14 -4
  125. package/dist/esm/snk-data-unit.entry.js +3 -3
  126. package/dist/esm/snk-detail-view.entry.js +9 -9
  127. package/dist/esm/snk-entity-list.entry.js +10 -3
  128. package/dist/esm/snk-expression-group_2.entry.js +1 -1
  129. package/dist/esm/snk-filter-bar_4.entry.js +190 -116
  130. package/dist/esm/snk-filter-binary-select.entry.js +23 -2
  131. package/dist/esm/snk-filter-checkbox-list.entry.js +20 -2
  132. package/dist/esm/snk-filter-detail.entry.js +25 -8
  133. package/dist/esm/snk-filter-modal-item.entry.js +9 -14
  134. package/dist/esm/snk-filter-multi-select.entry.js +16 -3
  135. package/dist/esm/snk-filter-number.entry.js +34 -3
  136. package/dist/esm/snk-filter-period.entry.js +59 -14
  137. package/dist/esm/snk-filter-search.entry.js +14 -3
  138. package/dist/esm/snk-filter-text.entry.js +18 -1
  139. package/dist/esm/snk-form_2.entry.js +31 -5
  140. package/dist/esm/snk-grid.entry.js +152 -60
  141. package/dist/esm/{snk-guides-viewer-fbfece85.js → snk-guides-viewer-19cb7f1f.js} +6 -6
  142. package/dist/esm/snk-guides-viewer.entry.js +9 -9
  143. package/dist/esm/snk-personalized-filter.entry.js +14 -6
  144. package/dist/esm/snk-pesquisa.entry.js +4 -4
  145. package/dist/esm/snk-simple-bar.entry.js +5 -5
  146. package/dist/esm/snk-simple-crud.entry.js +55 -18
  147. package/dist/esm/snk-taskbar.entry.js +2 -2
  148. package/dist/esm/{taskbar-elements-171476d4.js → taskbar-elements-faaf5d8f.js} +1 -1
  149. package/dist/sankhyablocks/p-093f58fa.entry.js +1 -0
  150. package/dist/sankhyablocks/{p-0e495575.js → p-0a317e81.js} +1 -1
  151. package/dist/sankhyablocks/{p-ad2ae575.entry.js → p-0e1f0344.entry.js} +1 -1
  152. package/dist/sankhyablocks/{p-8d1508aa.entry.js → p-16c1c209.entry.js} +1 -1
  153. package/dist/sankhyablocks/p-29cacaf3.entry.js +1 -0
  154. package/dist/sankhyablocks/{p-eb0616d3.entry.js → p-32450ea2.entry.js} +1 -1
  155. package/dist/sankhyablocks/{p-b49281be.entry.js → p-3c29939c.entry.js} +1 -1
  156. package/dist/sankhyablocks/p-3ed04f0d.entry.js +1 -0
  157. package/dist/sankhyablocks/{p-4872dc3a.entry.js → p-44c5ec49.entry.js} +1 -1
  158. package/dist/sankhyablocks/p-49ddc27a.entry.js +1 -0
  159. package/dist/sankhyablocks/p-4c763b10.entry.js +1 -0
  160. package/dist/sankhyablocks/p-4eeb06fc.js +1 -0
  161. package/dist/sankhyablocks/p-505172c8.entry.js +1 -0
  162. package/dist/sankhyablocks/p-55798617.js +1 -0
  163. package/dist/sankhyablocks/p-658f67a5.js +1 -0
  164. package/dist/sankhyablocks/{p-158adf33.entry.js → p-701b024c.entry.js} +1 -1
  165. package/dist/sankhyablocks/p-72a9285d.entry.js +1 -0
  166. package/dist/sankhyablocks/p-7f7fe6c4.entry.js +1 -0
  167. package/dist/sankhyablocks/p-88b7bc09.js +1 -0
  168. package/dist/sankhyablocks/{p-c6331595.js → p-8d256def.js} +1 -1
  169. package/dist/sankhyablocks/p-8f37b75b.entry.js +1 -0
  170. package/dist/sankhyablocks/{p-b35574b5.js → p-9062d640.js} +1 -1
  171. package/dist/sankhyablocks/{p-72c8c847.entry.js → p-95c71f5e.entry.js} +1 -1
  172. package/dist/sankhyablocks/p-96d45943.entry.js +1 -0
  173. package/dist/sankhyablocks/{p-eacff4b7.entry.js → p-b2d7f4cd.entry.js} +1 -1
  174. package/dist/sankhyablocks/{p-6a015ba2.js → p-b7f5caf6.js} +1 -1
  175. package/dist/sankhyablocks/p-b9200e77.entry.js +11 -0
  176. package/dist/sankhyablocks/{p-7de79adf.js → p-b987e15d.js} +1 -1
  177. package/dist/sankhyablocks/{p-ba4979b4.js → p-bf017a1f.js} +1 -1
  178. package/dist/sankhyablocks/{p-735a1175.entry.js → p-c3dbf441.entry.js} +1 -1
  179. package/dist/sankhyablocks/{p-3dba3468.js → p-c71dcb2d.js} +1 -1
  180. package/dist/sankhyablocks/{p-5e282b33.entry.js → p-c95f20d9.entry.js} +1 -1
  181. package/dist/sankhyablocks/p-c98e2085.js +1 -0
  182. package/dist/sankhyablocks/p-cb4343c4.entry.js +1 -0
  183. package/dist/sankhyablocks/p-d03ae54e.entry.js +1 -0
  184. package/dist/sankhyablocks/p-d235314c.entry.js +1 -0
  185. package/dist/sankhyablocks/p-d75a732c.js +1 -0
  186. package/dist/sankhyablocks/{p-f39b0ebe.entry.js → p-df7979fd.entry.js} +1 -1
  187. package/dist/sankhyablocks/p-e258de96.entry.js +1 -0
  188. package/dist/sankhyablocks/{p-d377aa7a.entry.js → p-f8e87cf1.entry.js} +1 -1
  189. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  190. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +46 -3
  191. package/dist/types/components/snk-entity-list/snk-entity-list.d.ts +8 -4
  192. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.d.ts +12 -0
  193. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-checkbox-list.d.ts +12 -0
  194. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.d.ts +12 -4
  195. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-number.d.ts +16 -4
  196. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-period.d.ts +17 -3
  197. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +10 -2
  198. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-text.d.ts +12 -0
  199. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +8 -3
  200. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +27 -4
  201. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +17 -3
  202. package/dist/types/components/snk-filter-bar/filter-modal/subcomponents/snk-filter-modal-item.d.ts +2 -3
  203. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +60 -30
  204. package/dist/types/components/snk-filter-bar/utils/SnkFilterModalFactory.d.ts +4 -2
  205. package/dist/types/components/snk-filter-bar/utils/filter-validate.d.ts +11 -0
  206. package/dist/types/components/snk-form/snk-form.d.ts +29 -4
  207. package/dist/types/components/snk-grid/snk-grid.d.ts +132 -58
  208. package/dist/types/components/snk-personalized-filter/snk-personalized-filter.d.ts +53 -5
  209. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +44 -6
  210. package/dist/types/components/snk-simple-bar/snk-simple-bar.d.ts +15 -15
  211. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +100 -43
  212. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +23 -21
  213. package/dist/types/components.d.ts +771 -255
  214. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +1 -0
  215. package/package.json +4 -3
  216. package/dist/collection/lib/licenses/sankhyalicense.module.js +0 -1
  217. package/dist/sankhyablocks/p-012208e0.entry.js +0 -1
  218. package/dist/sankhyablocks/p-07b14811.entry.js +0 -1
  219. package/dist/sankhyablocks/p-0dac8fef.js +0 -1
  220. package/dist/sankhyablocks/p-1210500e.js +0 -1
  221. package/dist/sankhyablocks/p-16fc4acd.js +0 -1
  222. package/dist/sankhyablocks/p-25209340.entry.js +0 -1
  223. package/dist/sankhyablocks/p-295b83ae.entry.js +0 -1
  224. package/dist/sankhyablocks/p-398cdd67.entry.js +0 -1
  225. package/dist/sankhyablocks/p-4e63ffed.entry.js +0 -1
  226. package/dist/sankhyablocks/p-5bab470d.entry.js +0 -1
  227. package/dist/sankhyablocks/p-5c7af8a9.entry.js +0 -1
  228. package/dist/sankhyablocks/p-81769310.entry.js +0 -11
  229. package/dist/sankhyablocks/p-9fd87bfd.entry.js +0 -1
  230. package/dist/sankhyablocks/p-a349689a.js +0 -1
  231. package/dist/sankhyablocks/p-a76e6d51.entry.js +0 -1
  232. package/dist/sankhyablocks/p-a86eee47.entry.js +0 -1
  233. package/dist/sankhyablocks/p-c6a8a8bc.entry.js +0 -1
  234. package/dist/sankhyablocks/p-c9e6d720.js +0 -1
  235. package/dist/sankhyablocks/p-dff65083.entry.js +0 -1
  236. package/dist/sankhyablocks/p-fa18530e.entry.js +0 -1
@@ -1,18 +1,19 @@
1
- import { EventEmitter } from '../../stencil-public-runtime';
2
1
  import { DataUnit, KeyboardManager } from '@sankhyalabs/core';
3
2
  import { IGridConfig, IStatusResolver, StatusResolverFunction } from '@sankhyalabs/ezui/dist/types/components/ez-grid/controller/EzGridController';
4
- import { DataState, SnkDataUnit } from '../snk-data-unit/snk-data-unit';
5
- import { Action, TaskbarManager } from '../snk-taskbar/snk-taskbar';
6
- import { SnkApplication } from '../snk-application/snk-application';
7
- import { PresentationMode } from '../../lib/@types';
8
- import TaskbarProcessor from '../snk-taskbar/processor/taskbar-processor';
9
- import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
10
3
  import { ICustomFormatter, ISelectionToastConfig } from '@sankhyalabs/ezui/dist/types/components/ez-grid/interfaces';
11
- import { IRecordValidator } from '@sankhyalabs/ezui/dist/types/utils/form/interfaces';
12
4
  import { IMultiSelectionListDataSource } from '@sankhyalabs/ezui/dist/types/components/ez-multi-selection-list/interfaces/IMultiSelectionListDataSource';
13
5
  import { ICustomEditor, ICustomRender } from '@sankhyalabs/ezui/dist/types/utils';
6
+ import { IRecordValidator } from '@sankhyalabs/ezui/dist/types/utils/form/interfaces';
7
+ import { EventEmitter } from '../../stencil-public-runtime';
8
+ import { PresentationMode } from '../../lib/@types';
14
9
  import RmPrecisionCustomValueFormatter from '../../lib/DefaultCustomFormatters/RmPrecisionCustomValueFormatter';
10
+ import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
11
+ import { SnkApplication } from '../snk-application/snk-application';
15
12
  import { IExporterStrategyMode } from '../snk-data-exporter/interfaces/IRecordID';
13
+ import { DataState, SnkDataUnit } from '../snk-data-unit/snk-data-unit';
14
+ import { SnkFilterItemConfig } from '../snk-filter-bar/filter-item/snk-filter-item';
15
+ import TaskbarProcessor from '../snk-taskbar/processor/taskbar-processor';
16
+ import { Action, TaskbarManager } from '../snk-taskbar/snk-taskbar';
16
17
  export declare class SnkGrid {
17
18
  _grid: HTMLEzGridElement;
18
19
  _snkDataUnit: HTMLSnkDataUnitElement;
@@ -44,9 +45,13 @@ export declare class SnkGrid {
44
45
  _showSnkFilterBar: boolean;
45
46
  _enableContinuousInsert: boolean;
46
47
  _application: SnkApplication;
48
+ /**
49
+ * Define o data source para o filtro de colunas.
50
+ */
47
51
  columnFilterDataSource: IMultiSelectionListDataSource;
52
+ refreshColumnFilterDataSource(): Promise<void>;
48
53
  /**
49
- * Define se o componente deve usar o LockManager para controle de carregamento da aplicação
54
+ * Define se o componente deve usar o LockManager para controle de carregamento da aplicação.
50
55
  */
51
56
  enableLockManagerLoadingComp?: boolean;
52
57
  /**
@@ -54,185 +59,251 @@ export declare class SnkGrid {
54
59
  */
55
60
  enableLockManagerTaskbarClick?: boolean;
56
61
  /**
57
- * Nome usado para salvar/recuperar a configuração.
62
+ * Nome usado para salvar e recuperar a configuração da grade.
58
63
  */
59
64
  configName: string;
60
65
  /**
61
- * Título que será apresentado na barra de filtros
66
+ * Título que será apresentado na barra de filtros.
62
67
  */
63
68
  filterBarTitle: string;
64
69
  /**
65
- * Identificador de recursos como configurações e acesso.
70
+ * Identificador de recursos, como configurações e permissões de acesso.
66
71
  */
67
72
  resourceID: string;
68
73
  /**
69
- * Configuração da seleção de grade no toast.
74
+ * Configuração do toast de seleção da grade.
70
75
  */
71
76
  selectionToastConfig: ISelectionToastConfig;
72
77
  /**
73
- * Lista de ações que devem ser usadas no botão "Mais opções" do componente snk-taskbar.
78
+ * Lista de ações que devem ser usadas no botão "Mais opções" do `snk-taskbar`.
74
79
  */
75
80
  actionsList: Array<Action>;
76
81
  /**
77
- * Determina se a grade está vinculada a um detalhe.
82
+ * Determina se a grade está vinculada a um detalhe de outra tela.
78
83
  */
79
84
  isDetail: boolean;
80
85
  /**
81
- * Gerenciador das barras de tarefas. É possível determinar botões específicos
82
- * ou mesmo gerenciar o estado dos botões.
83
- */
86
+ * Gerenciador das barras de tarefas. Permite determinar botões específicos
87
+ * ou gerenciar o estado dos botões.
88
+ */
84
89
  taskbarManager: TaskbarManager;
85
90
  /**
86
- * Configuração do valor da coluna de status.
87
- * Exemplo: '{ "RECDESP": { "-1" : "#BD0025", "1" : "#157A00" } }'
91
+ * Define a configuração de cores para a coluna de status.
92
+ * @example
93
+ * ```json
94
+ * '{ "RECDESP": { "-1" : "#BD0025", "1" : "#157A00" } }'
95
+ * ```
88
96
  */
89
97
  statusResolver: IStatusResolver | StatusResolverFunction;
90
98
  /**
91
- * Determina se pode haver mais de uma linha selecionada.
99
+ * Determina se a seleção de múltiplas linhas é permitida.
92
100
  */
93
101
  multipleSelection: boolean;
94
102
  /**
95
- * Altera o modo de apresentação dos botões do snk-taskbar.
103
+ * Altera o modo de apresentação dos botões do `snk-taskbar`.
96
104
  */
97
105
  presentationMode: PresentationMode;
98
106
  /**
99
107
  * Responsável por flexibilizar e padronizar o uso de mensagens nos blocos de construção.
100
- */
108
+ */
101
109
  messagesBuilder: SnkMessageBuilder;
102
110
  /**
103
- * Quando verdadeiro, o ENTER fará a navegação como se fosse a tecla TAB na grade.
111
+ * Quando `true`, a tecla ENTER navega entre as células como a tecla TAB.
104
112
  */
105
113
  useEnterLikeTab: boolean;
106
114
  /**
107
- * Validador responsável por checar a integridade das informações do registro.
115
+ * Validador responsável por verificar a integridade dos dados de um registro.
108
116
  */
109
117
  recordsValidator: IRecordValidator;
110
118
  /**
111
- * Define se a edição está habilitada na grid.
119
+ * Define se a edição de dados na grade está habilitada.
112
120
  */
113
121
  canEdit: boolean;
114
122
  /**
115
- * Define o identificador do container de elementos customizados da Taskbar.
123
+ * Define o identificador do contêiner de elementos customizados da `Taskbar`.
116
124
  */
117
125
  taskbarCustomContainerId: string;
118
126
  /**
119
- * Nome do slot de elementos customizados da Taskbar do cabeçalho da grade.
127
+ * Define o nome do slot para elementos customizados na `Taskbar` do cabeçalho da grade.
120
128
  */
121
129
  gridHeaderCustomSlotId: string;
122
130
  /**
123
- * Nome do slot de elementos customizados da Taskbar principal do componente.
131
+ * Define o nome do slot para elementos customizados na `Taskbar` principal do componente.
124
132
  */
125
133
  topTaskbarCustomSlotId: string;
126
134
  /**
127
- * Desabilita a apresentação da opção de filtros personalizados na filter bar (chip de filtros)
128
- * e no modal lateral de filtros (container de filtros personalizados).
129
- */
135
+ * Desabilita a apresentação da opção de filtros personalizados na barra de filtros (chip de filtros)
136
+ * e no modal lateral de filtros (contêiner de filtros personalizados).
137
+ */
130
138
  disablePersonalizedFilter: boolean;
131
139
  /**
132
- * Chave da configuração legado da grade.
140
+ * Chave da configuração legada da grade.
133
141
  */
134
142
  gridLegacyConfigName: string;
135
143
  /**
136
- * Chave da configuração legado da barra de filtros.
144
+ * Chave da configuração legada da barra de filtros.
137
145
  */
138
146
  filterBarLegacyConfigName: string;
139
147
  /**
140
- * Define se a carga dos dados será feita assim que o componente for carregado.
148
+ * Define se os dados serão carregados automaticamente na inicialização do componente.
141
149
  */
142
150
  autoLoad?: boolean;
143
151
  /**
144
- * Define se a grid será focada ao ser carregada.
152
+ * Define se a grade receberá o foco automaticamente ao ser carregada.
145
153
  */
146
154
  autoFocus?: boolean;
147
155
  /**
148
- * Ativa inserção de registros no modo grade.
156
+ * Habilita a inserção de registros diretamente na grade.
149
157
  */
150
158
  enableGridInsert?: boolean;
151
159
  /**
152
- * Altera visualmente as sombras e bordas do componente
153
- * Quando false, aplica o padrão de sombras ao componente (Utilizar quando for o elemento principal do layout)
154
- * Quando true, aplica o padrão de outline ao componente (Utilizar quando estiver contido em outro elemento como um painel ou pop-up)
155
- */
160
+ * Altera a aparência das bordas e sombras do componente.
161
+ * Se `false`, aplica o padrão de sombras (ideal para o elemento principal do layout).
162
+ * Se `true`, aplica um contorno (ideal para quando o componente está dentro de outro, como um painel ou pop-up).
163
+ */
156
164
  outlineMode?: boolean;
157
165
  /**
158
- * Define se a grade deve suprimir o scroll horizontal.
166
+ * Define se a grade deve suprimir a barra de rolagem horizontal.
159
167
  */
160
168
  suppressHorizontalScroll: boolean;
161
169
  /**
162
- * Modo de exportação dos dados.
170
+ * Define o modo de exportação dos dados.
163
171
  */
164
172
  strategyExporter: IExporterStrategyMode;
165
173
  /**
166
- * Define se a grade deve exibir um buscador de coluna com uso do Ctrl+F
174
+ * Define se a grade deve exibir um buscador de colunas ao pressionar `Ctrl+F`.
167
175
  */
168
176
  useSearchColumn: boolean;
169
177
  /**
170
- * Habilita a edição de múltiplos registros simultâneos.
178
+ * Habilita a edição de múltiplos registros simultaneamente.
171
179
  */
172
180
  multipleEditionEnabled: boolean;
173
181
  /**
174
- * Define se a grid será focada ao ser carregada.
182
+ * Define o modo de exibição do contador de paginação.
175
183
  */
176
184
  paginationCounterMode?: 'show' | 'hidden' | 'auto';
177
185
  /**
178
- * Informa se a coluna de chechbox deve ser suprimida
186
+ * Informa se a coluna de checkbox deve ser suprimida.
179
187
  */
180
188
  suppressCheckboxColumn: boolean;
181
189
  /**
182
- * Define se a grade deve ser exibida em modo compacto
190
+ * Informa se a grade deve suprimir o filtro de coluna.
191
+ */
192
+ suppressFilterColumn?: boolean;
193
+ /**
194
+ * Define se a grade deve ser exibida em modo compacto.
183
195
  */
184
196
  compact: boolean;
185
197
  /**
186
- * Emitido sempre que houver click de botão ou ação.
198
+ * @description Configuração customizada dos filtros.
199
+ * @param {Array<SnkFilterItemConfig>} config - Lista de configurações de filtros.
200
+ */
201
+ filterCustomConfig?: Array<SnkFilterItemConfig>;
202
+ /**
203
+ * @description Intercepta a configuração dos filtros antes de serem aplicadas.
204
+ * @param {Array<SnkFilterItemConfig>} config - Lista de configurações de filtros.
205
+ * @returns {Array<SnkFilterItemConfig>} Retorna a lista de configurações de filtros.
206
+ */
207
+ filterCustomConfigInterceptor?: (config: Array<SnkFilterItemConfig>) => Array<SnkFilterItemConfig>;
208
+ /**
209
+ * Emitido ao clicar em um botão de ação ou item de menu.
210
+ * @description Este evento é acionado quando o usuário clica em um botão de ação ou item de menu na grade, permitindo a execução de ações específicas.
211
+ * @param {string} detail - O identificador da ação clicada, que pode ser usado para determinar qual ação executar.
187
212
  */
188
213
  actionClick: EventEmitter<string>;
189
214
  /**
190
- * Emitido sempre que houver duplo click na grade.
191
- */
215
+ * Emitido ao realizar um duplo clique em uma linha da grade.
216
+ * @description Este evento é acionado quando o usuário clica duas vezes em uma linha da grade, permitindo ações como edição rápida ou visualização de detalhes.
217
+ * @param {any} detail - Detalhes do evento, contendo a linha clicada.
218
+ */
192
219
  gridDoubleClick: EventEmitter<any>;
193
220
  /**
194
221
  * Emitido quando o componente estiver completamente carregado.
195
222
  */
196
223
  componentReady: EventEmitter<void>;
224
+ /**
225
+ * Recarrega a configuração da grade.
226
+ * @description Este método força o recarregamento da configuração da grade a partir do `ConfigStorage`. A operação é assíncrona, mas o método não aguarda sua conclusão.
227
+ */
197
228
  reloadConfig(): void;
198
229
  /**
199
230
  * Exibe a janela de configurações da grade.
231
+ * @async
232
+ * @description Este método abre o pop-up de configuração de colunas da grade, permitindo ao usuário ajustar a visibilidade, ordem e largura das colunas.
233
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a janela de configuração é exibida.
200
234
  */
201
235
  showConfig(): Promise<void>;
202
236
  /**
203
237
  * Fecha a janela de configurações da grade.
238
+ * @async
239
+ * @description Este método fecha o pop-up de configuração de colunas da grade.
240
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a janela de configuração é fechada.
204
241
  */
205
242
  hideConfig(): Promise<void>;
206
243
  /**
207
- * Atribui o valor da configuração da grade.
244
+ * Define a configuração da grade.
245
+ * @async
246
+ * @description Aplica uma nova configuração de colunas e ordenação à grade.
247
+ * @param {IGridConfig} config O objeto de configuração a ser aplicado na grade.
248
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a configuração é aplicada.
208
249
  */
209
250
  setConfig(config: IGridConfig): Promise<void>;
210
251
  /**
211
- * Faz o recarregamento da filter-bar da grade buscando o state no servidor.
252
+ * Recarrega a barra de filtros da grade, buscando o estado do servidor.
253
+ * @async
254
+ * @description Força o recarregamento da barra de filtros, atualizando suas configurações e filtros a partir do servidor.
255
+ * @returns {Promise<void>} Uma promessa que é resolvida quando a barra de filtros é recarregada.
212
256
  */
213
257
  reloadFilterBar(): Promise<void>;
214
258
  /**
215
- * Retorna o elemento da filter-bar da grade.
259
+ * Retorna o elemento da barra de filtros da grade.
260
+ * @async
261
+ * @description Este método permite acessar o elemento da barra de filtros, que pode ser útil para manipulações adicionais ou para obter o estado atual dos filtros aplicados.
262
+ * @returns {Promise<HTMLSnkFilterBarElement>} O elemento da barra de filtros.
216
263
  */
217
264
  getFilterBar(): Promise<HTMLSnkFilterBarElement>;
218
265
  /**
219
- * Registra um editor customizado para campos da grade e formulário
266
+ * Registra um editor customizado para um campo da grade ou formulário.
267
+ * @async
268
+ * @description Adiciona um componente de edição personalizado para um campo específico. Este editor será usado tanto na edição em linha na grade quanto em formulários de detalhe.
269
+ * @param {string} fieldName O nome do campo que receberá o editor customizado.
270
+ * @param {ICustomEditor} customEditor A instância do editor customizado.
271
+ * @param {string} [detailContext] O contexto de detalhe onde o editor será aplicado (opcional).
272
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o editor é registrado.
220
273
  */
221
274
  addCustomEditor(fieldName: string, customEditor: ICustomEditor, detailContext?: string): Promise<void>;
222
275
  /**
223
- * Registra um render customizado para colunas da grid.
276
+ * Registra um renderizador customizado para uma coluna da grade.
277
+ * @async
278
+ * @description Adiciona um componente de renderização personalizado para uma coluna específica, permitindo a exibição de conteúdo customizado nas células.
279
+ * @param {string} fieldName O nome do campo (coluna) que receberá o renderizador customizado.
280
+ * @param {ICustomRender} customRender A instância do renderizador customizado.
281
+ * @param {string} [detailContext] O contexto de detalhe onde o renderizador será aplicado (opcional).
282
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o renderizador é registrado.
224
283
  */
225
284
  addGridCustomRender(fieldName: string, customRender: ICustomRender, detailContext?: string): Promise<void>;
226
285
  /**
227
- * Registra um formatador de valores para uma coluna da grid.
286
+ * Registra um formatador de valor customizado para uma coluna da grade.
287
+ * @async
288
+ * @description Adiciona uma função de formatação personalizada para os valores de uma coluna específica, afetando como os dados são exibidos.
289
+ * @param {string} columnName O nome da coluna que receberá o formatador.
290
+ * @param {ICustomFormatter} customFormatter A instância do formatador de valor.
291
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o formatador é registrado.
228
292
  */
229
293
  addCustomValueFormatter(columnName: string, customFormatter: ICustomFormatter): Promise<void>;
230
294
  /**
231
- * Remove o formatador de valores de uma coluna da grid.
295
+ * Remove um formatador de valor customizado de uma coluna da grade.
296
+ * @async
297
+ * @description Remove uma função de formatação personalizada previamente registrada para uma coluna.
298
+ * @param {string} columnName O nome da coluna da qual o formatador será removido.
299
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o formatador é removido.
232
300
  */
233
301
  removeCustomValueFormatter(columnName: string): Promise<void>;
234
302
  /**
235
303
  * Atribui o foco para a grade.
304
+ * @async
305
+ * @description Move o foco do navegador para o componente da grade, permitindo a navegação por teclado.
306
+ * @returns {Promise<void>} Uma promessa que é resolvida quando o foco é atribuído.
236
307
  */
237
308
  setFocus(): Promise<void>;
238
309
  handleClick(event: MouseEvent): Promise<void>;
@@ -246,12 +317,15 @@ export declare class SnkGrid {
246
317
  private normalizeGridConfig;
247
318
  private loadConfig;
248
319
  private addGridLegacyConfigName;
320
+ private hasCalculatedFields;
249
321
  private gridConfigChangeHandler;
250
322
  private modalConfigChangeHandler;
323
+ private hasToForceClientSideExporter;
251
324
  private dataExporterProviderStore;
252
325
  private addElementID;
253
326
  private loadGridCustomFormatters;
254
327
  private interceptMetadataLoaded;
328
+ private interceptLoadData;
255
329
  private dataUnitInterceptor;
256
330
  private finishLoading;
257
331
  private setCustomRenders;
@@ -1,3 +1,21 @@
1
+ /**
2
+ * Componente responsável pela criação, edição e gerenciamento de filtros personalizados.
3
+ *
4
+ * Permite alternar entre os modos assistente e avançado, salvar, cancelar e manipular filtros.
5
+ *
6
+ * @component
7
+ * @example
8
+ * <snk-personalized-filter
9
+ * entityUri="sua/entidade"
10
+ * filterId="idFiltro"
11
+ * configName="nomeConfig"
12
+ * resourceID="resourceId"
13
+ * isDefaultFilter={false}
14
+ * messagesBuilder={messagesBuilderInstance}
15
+ * onEzSave={handler}
16
+ * onEzCancel={handler}
17
+ * />
18
+ */
1
19
  import { EventEmitter } from '../../stencil-public-runtime';
2
20
  import { IFilterLink, IFilterField, FilterFieldsDataSource } from "../snk-filter-field-search/interfaces";
3
21
  import { SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
@@ -16,32 +34,62 @@ export declare class SnkPersonalizedFilter {
16
34
  private _filterAssistent;
17
35
  /**
18
36
  * Responsável por flexibilizar e padronizar o uso de mensagens nos blocos de construção.
37
+ * @property
19
38
  */
20
39
  messagesBuilder: SnkMessageBuilder;
21
40
  /**
22
- * Responsável por receber a URI da entidade.
41
+ * URI da entidade utilizada para buscar os campos disponíveis para filtro.
42
+ * @property
23
43
  */
24
44
  entityUri: string;
25
45
  /**
26
- * Id do filtro que será carregado.
46
+ * Identificador do filtro a ser carregado.
47
+ * @property
27
48
  */
28
49
  filterId: string;
29
50
  /**
30
- * Nome da configuração. Serve para distinguir várias instâncias do componente.
51
+ * Nome da configuração, utilizado para distinguir múltiplas instâncias do componente.
52
+ * @property
31
53
  */
32
54
  configName: string;
33
55
  /**
34
- * Nome da configuração. Serve para distinguir várias instâncias do componente.
56
+ * Identificador do recurso utilizado para salvar e recuperar filtros.
57
+ * @property
35
58
  */
36
59
  resourceID: string;
37
60
  /**
38
- * Define se o filtro em questão é um filtro padrão.
61
+ * Indica se o filtro é o filtro padrão do sistema.
62
+ * @property
63
+ * @default false
39
64
  */
40
65
  isDefaultFilter: boolean;
66
+ /**
67
+ * Evento emitido ao cancelar a personalização do filtro.
68
+ * @event
69
+ */
41
70
  ezCancel: EventEmitter<void>;
71
+ /**
72
+ * Evento emitido ao salvar as alterações do filtro personalizado.
73
+ * @event
74
+ */
42
75
  ezSave: EventEmitter<string>;
76
+ /**
77
+ * Evento emitido após salvar as alterações do filtro personalizado.
78
+ * @event
79
+ */
43
80
  ezAfterSave: EventEmitter<void>;
81
+ /**
82
+ * Cria um novo filtro personalizado caso não exista nenhum.
83
+ * @method
84
+ * @returns {Promise<void>}
85
+ */
44
86
  createPersonalizedFilter(): Promise<void>;
87
+ /**
88
+ * Carrega o filtro personalizado com base no identificador informado.
89
+ * @watch filterId
90
+ * @param newValue Novo valor do filtroId.
91
+ * @param oldValue Valor anterior do filtroId.
92
+ */
45
93
  loadFilter(newValue: string, oldValue: string): void;
46
94
  _dataSourceFetcher: FilterFieldsDataSource;
47
95
  componentWillLoad(): void;
@@ -28,30 +28,68 @@ export declare class SnkPesquisa {
28
28
  private _valideDataSource;
29
29
  /**
30
30
  * Função responsável em carregar os itens do componente snk-pesquisa.
31
+ * Deve retornar uma Promise com os dados encontrados.
32
+ *
33
+ * @type {(text: string) => Promise<any>}
34
+ * @param text Texto utilizado como argumento de pesquisa.
35
+ * @returns Promise com os dados da pesquisa.
36
+ * @example
37
+ * searchLoader={(text) => fetchItems(text)}
31
38
  */
32
39
  searchLoader: (text: string) => Promise<any>;
33
40
  /**
34
- * Função responsável por carregar a árvore hierárquica do componente
41
+ * Função responsável por carregar a árvore hierárquica do componente.
42
+ * Opcional. Caso não seja fornecida, o modo árvore não estará disponível.
43
+ *
44
+ * @type {(text: string) => Promise<any>}
45
+ * @param text Texto utilizado como argumento de pesquisa para a árvore.
46
+ * @returns Promise com os dados da árvore.
35
47
  */
36
48
  treeLoader?: (text: string) => Promise<any>;
37
49
  /**
38
- * Função disparada ao selecionar um item.
50
+ * Função disparada ao selecionar um item da pesquisa.
51
+ *
52
+ * @type {(option: IOption) => void}
53
+ * @param option Item selecionado.
54
+ * @returns void
55
+ * @example
56
+ * selectItem={(option) => handleSelect(option)}
39
57
  */
40
58
  selectItem: (option: IOption) => void;
41
59
  /**
42
- * Nome da entidade onde a pesquisa é aplicada.
60
+ * Nome da entidade sobre a qual a pesquisa será realizada.
61
+ *
62
+ * @type {string}
63
+ * @example
64
+ * entityName="Produto"
43
65
  */
44
66
  entityName: string;
45
67
  /**
46
- * Argumentos que serão usados ao chamar a função searchLoader.
68
+ * Argumento utilizado ao chamar a função searchLoader.
69
+ * Pode ser alterado externamente.
70
+ *
71
+ * @type {string}
72
+ * @mutable
73
+ * @example
74
+ * argument="Texto para pesquisa"
47
75
  */
48
76
  argument: string;
49
77
  /**
50
- * Define se a popup de pesquisa possuirá ou não modo Hierarquico.
78
+ * Define se a popup de pesquisa terá ou não modo hierárquico.
79
+ *
80
+ * @type {boolean}
81
+ * @default false
82
+ * @example
83
+ * isHierarchyEntity={true}
51
84
  */
52
85
  isHierarchyEntity: boolean;
53
86
  /**
54
- * Define se permite seleção de items não analíticos
87
+ * Define se permite a seleção de itens não analíticos.
88
+ *
89
+ * @type {boolean}
90
+ * @default false
91
+ * @example
92
+ * allowsNonAnalytic={true}
55
93
  */
56
94
  allowsNonAnalytic: boolean;
57
95
  observeArgument(): void;
@@ -6,31 +6,31 @@ export declare class SnkSimpleBar {
6
6
  private _element;
7
7
  _application: SnkApplication;
8
8
  /**
9
- * Define o título do header
10
- */
9
+ * Define o título do header.
10
+ */
11
11
  label: string;
12
12
  /**
13
- * Define os itens que serão apresentados pelo breadcrumb
14
- */
13
+ * Define os itens que serão apresentados no breadcrumb.
14
+ */
15
15
  breadcrumbItens: Array<IBreadcrumbItem>;
16
16
  /**
17
- * Responsável por flexibilizar e padronizar o uso de mensagens nos blocos de construção.
18
- */
17
+ * Responsável por flexibilizar e padronizar o uso de mensagens nos blocos de construção.
18
+ */
19
19
  messagesBuilder: SnkMessageBuilder;
20
20
  /**
21
- * Emitido quando algum item do breadcrumb é clicado
22
- */
21
+ * Emitido quando algum item do breadcrumb é clicado.
22
+ */
23
23
  clickBreadcrumbItem: EventEmitter<IBreadcrumbItem>;
24
24
  /**
25
- * Emitido quando o botão voltar é acionado
26
- */
25
+ * Emitido quando o botão "voltar" é acionado.
26
+ */
27
27
  exit: EventEmitter<void>;
28
28
  /**
29
- * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
30
- * através de um pequeno modulo na estrutura da aplicação:
31
- * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
32
- * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-simple-bar.msg.ts"
33
- */
29
+ * Permite customizar as mensagens dos blocos de construção
30
+ * através de um pequeno módulo na estrutura da aplicação:
31
+ * - Crie um arquivo no seguinte caminho: /messages/appmessages.msg.js.
32
+ * Para conhecer os detalhes do módulo, veja o arquivo neste projeto: "/src/lib/message/resources/snk-simple-bar.msg.ts"
33
+ */
34
34
  private getMessage;
35
35
  componentDidLoad(): void;
36
36
  render(): any;