@sankhyalabs/sankhyablocks 1.3.34 → 1.4.0-beta.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 (285) hide show
  1. package/dist/cjs/SnkMessageBuilder-6c2f7bcd.js +302 -0
  2. package/dist/cjs/_commonjsHelpers-537d719a.js +20 -0
  3. package/dist/cjs/configurableElementsStorage-93459c72.js +20 -0
  4. package/dist/cjs/constants-9056ca9e.js +84 -0
  5. package/dist/cjs/draggable.bundle-82a25c06.js +6886 -0
  6. package/dist/cjs/filter-item-type.enum-3daf58d3.js +16 -0
  7. package/dist/cjs/form-config-fetcher-2de7c16a.js +6895 -0
  8. package/dist/cjs/{index-1133bc2a.js → index-20e8b68a.js} +964 -209
  9. package/dist/cjs/loader.cjs.js +3 -3
  10. package/dist/cjs/sankhyablocks.cjs.js +3 -3
  11. package/dist/cjs/snk-application.cjs.entry.js +680 -6994
  12. package/dist/cjs/snk-config-modal.cjs.entry.js +62 -0
  13. package/dist/cjs/snk-config-options.cjs.entry.js +230 -0
  14. package/dist/cjs/snk-configurator_6.cjs.entry.js +1156 -0
  15. package/dist/cjs/snk-crud.cjs.entry.js +78 -0
  16. package/dist/cjs/snk-data-unit.cjs.entry.js +272 -0
  17. package/dist/cjs/snk-field-config_2.cjs.entry.js +135 -0
  18. package/dist/cjs/snk-filter-binary-select.cjs.entry.js +50 -0
  19. package/dist/cjs/snk-filter-detail.cjs.entry.js +106 -0
  20. package/dist/cjs/snk-filter-multi-select.cjs.entry.js +26 -0
  21. package/dist/cjs/snk-filter-number.cjs.entry.js +27 -0
  22. package/dist/cjs/snk-filter-period.cjs.entry.js +40 -0
  23. package/dist/cjs/snk-filter-personalized.cjs.entry.js +89 -0
  24. package/dist/cjs/snk-filter-search.cjs.entry.js +38 -0
  25. package/dist/cjs/snk-filter-text.cjs.entry.js +22 -0
  26. package/dist/cjs/snk-form-config.cjs.entry.js +957 -0
  27. package/dist/cjs/snk-form.cjs.entry.js +146 -0
  28. package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
  29. package/dist/cjs/snk-tab-config.cjs.entry.js +321 -0
  30. package/dist/cjs/taskbar-elements-9a4b1e19.js +97 -0
  31. package/dist/cjs/taskbar-processor-6bd0d35c.js +47 -0
  32. package/dist/cjs/teste-pesquisa.cjs.entry.js +1 -1
  33. package/dist/collection/collection-manifest.json +45 -2
  34. package/dist/collection/components/snk-application/errorhandler/snk-error-handler.js +9 -2
  35. package/dist/collection/components/snk-application/snk-application.js +1346 -642
  36. package/dist/collection/components/snk-configurator/snk-configurator.js +261 -0
  37. package/dist/collection/components/snk-configurator/subcomponents/configModalProvider/configurableElementsStorage.js +16 -0
  38. package/dist/collection/components/snk-configurator/subcomponents/snk-config-modal/snk-config-modal.css +122 -0
  39. package/dist/collection/components/snk-configurator/subcomponents/snk-config-modal/snk-config-modal.js +137 -0
  40. package/dist/collection/components/snk-crud/snk-crud.css +6 -0
  41. package/dist/collection/components/snk-crud/snk-crud.js +232 -0
  42. package/dist/collection/components/snk-data-unit/snk-data-unit.css +6 -0
  43. package/dist/collection/components/snk-data-unit/snk-data-unit.js +517 -0
  44. package/dist/collection/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.js +100 -0
  45. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.js +111 -0
  46. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.js +87 -0
  47. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-number.js +88 -0
  48. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-period.js +101 -0
  49. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-personalized.js +180 -0
  50. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-search.js +102 -0
  51. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-filter-text.js +63 -0
  52. package/dist/collection/components/snk-filter-bar/filter-item/filter-item-type.enum.js +12 -0
  53. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-detail.js +178 -0
  54. package/dist/collection/components/snk-filter-bar/filter-item/snk-filter-item.js +289 -0
  55. package/dist/collection/components/snk-filter-bar/filter-list/snk-filter-list.js +299 -0
  56. package/dist/collection/components/snk-filter-bar/filter-modal/snk-filter-modal.js +222 -0
  57. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +149 -0
  58. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +462 -0
  59. package/dist/collection/components/snk-form/snk-form.css +38 -0
  60. package/dist/collection/components/snk-form/snk-form.js +336 -0
  61. package/dist/collection/components/snk-form/subcomponents/snk-config-options/snk-config-options.css +9 -0
  62. package/dist/collection/components/snk-form/subcomponents/snk-config-options/snk-config-options.js +315 -0
  63. package/dist/collection/components/snk-form/subcomponents/snk-field-config/snk-field-config.css +164 -0
  64. package/dist/collection/components/snk-form/subcomponents/snk-field-config/snk-field-config.js +140 -0
  65. package/dist/collection/components/snk-form/subcomponents/snk-form-config/snk-form-config.css +185 -0
  66. package/dist/collection/components/snk-form/subcomponents/snk-form-config/snk-form-config.js +1062 -0
  67. package/dist/collection/components/snk-form/subcomponents/snk-tab-config/snk-tab-config.css +272 -0
  68. package/dist/collection/components/snk-form/subcomponents/snk-tab-config/snk-tab-config.js +476 -0
  69. package/dist/collection/components/snk-grid/snk-grid.css +18 -0
  70. package/dist/collection/components/snk-grid/snk-grid.js +273 -0
  71. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +80 -79
  72. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +90 -0
  73. package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +43 -0
  74. package/dist/collection/components/snk-taskbar/snk-taskbar.css +3 -0
  75. package/dist/collection/components/snk-taskbar/snk-taskbar.js +339 -0
  76. package/dist/collection/components/teste-pesquisa/teste-pesquisa.js +12 -9
  77. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +39 -14
  78. package/dist/collection/lib/http/data-fetcher/fetchers/dataunit-fetcher.js +87 -21
  79. package/dist/collection/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.js +62 -0
  80. package/dist/collection/lib/http/data-fetcher/fetchers/form-config-fetcher.js +106 -3
  81. package/dist/collection/lib/http/data-fetcher/fetchers/grid-config-fetcher.js +4 -3
  82. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +15 -15
  83. package/dist/collection/lib/http/data-fetcher/fetchers/resource-fetcher.js +9 -1
  84. package/dist/collection/lib/http/data-fetcher/fetchers/totals-fetcher.js +47 -0
  85. package/dist/collection/lib/index.js +2 -0
  86. package/dist/collection/lib/message/SnkMessageBuilder.js +130 -0
  87. package/dist/collection/lib/message/resources/crud-utils.msg.js +4 -0
  88. package/dist/collection/lib/message/resources/snk-configurator.msg.js +11 -0
  89. package/dist/collection/lib/message/resources/snk-data-unit.msg.js +23 -0
  90. package/dist/collection/lib/message/resources/snk-filter-bar.msg.js +30 -0
  91. package/dist/collection/lib/message/resources/snk-form.msg.js +67 -0
  92. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +17 -0
  93. package/dist/collection/lib/utils/CrudUtils.js +73 -0
  94. package/dist/collection/lib/utils/constants.js +72 -0
  95. package/dist/components/SnkMessageBuilder.js +280 -0
  96. package/dist/components/_commonjsHelpers.js +17 -0
  97. package/dist/components/constants.js +74 -0
  98. package/dist/components/filter-item-type.enum.js +14 -0
  99. package/dist/components/form-config-fetcher.js +6889 -0
  100. package/dist/components/index.d.ts +26 -5
  101. package/dist/components/index.js +26 -0
  102. package/dist/components/snk-application2.js +681 -6980
  103. package/dist/components/snk-config-modal.d.ts +11 -0
  104. package/dist/components/snk-config-modal.js +6 -0
  105. package/dist/components/snk-config-modal2.js +91 -0
  106. package/dist/components/snk-config-options.d.ts +11 -0
  107. package/dist/components/snk-config-options.js +6 -0
  108. package/dist/components/snk-config-options2.js +245 -0
  109. package/dist/components/snk-configurator.d.ts +11 -0
  110. package/dist/components/snk-configurator.js +6 -0
  111. package/dist/components/snk-configurator2.js +212 -0
  112. package/dist/components/snk-crud.d.ts +11 -0
  113. package/dist/components/snk-crud.js +183 -0
  114. package/dist/components/snk-data-unit.d.ts +11 -0
  115. package/dist/components/snk-data-unit.js +294 -0
  116. package/dist/components/snk-field-config.d.ts +11 -0
  117. package/dist/components/snk-field-config.js +6 -0
  118. package/dist/components/snk-field-config2.js +70 -0
  119. package/dist/components/snk-filter-bar.d.ts +11 -0
  120. package/dist/components/snk-filter-bar.js +6 -0
  121. package/dist/components/snk-filter-bar2.js +516 -0
  122. package/dist/components/snk-filter-binary-select.d.ts +11 -0
  123. package/dist/components/snk-filter-binary-select.js +67 -0
  124. package/dist/components/snk-filter-detail.d.ts +11 -0
  125. package/dist/components/snk-filter-detail.js +6 -0
  126. package/dist/components/snk-filter-detail2.js +120 -0
  127. package/dist/components/snk-filter-item.d.ts +11 -0
  128. package/dist/components/snk-filter-item.js +6 -0
  129. package/dist/components/snk-filter-item2.js +194 -0
  130. package/dist/components/snk-filter-list.d.ts +11 -0
  131. package/dist/components/snk-filter-list.js +6 -0
  132. package/dist/components/snk-filter-list2.js +149 -0
  133. package/dist/components/snk-filter-modal.d.ts +11 -0
  134. package/dist/components/snk-filter-modal.js +6 -0
  135. package/dist/components/snk-filter-modal2.js +84 -0
  136. package/dist/components/snk-filter-multi-select.d.ts +11 -0
  137. package/dist/components/snk-filter-multi-select.js +43 -0
  138. package/dist/components/snk-filter-number.d.ts +11 -0
  139. package/dist/components/snk-filter-number.js +44 -0
  140. package/dist/components/snk-filter-period.d.ts +11 -0
  141. package/dist/components/snk-filter-period.js +57 -0
  142. package/dist/components/snk-filter-personalized.d.ts +11 -0
  143. package/dist/components/snk-filter-personalized.js +108 -0
  144. package/dist/components/snk-filter-search.d.ts +11 -0
  145. package/dist/components/snk-filter-search.js +55 -0
  146. package/dist/components/snk-filter-text.d.ts +11 -0
  147. package/dist/components/snk-filter-text.js +38 -0
  148. package/dist/components/snk-form-config.d.ts +11 -0
  149. package/dist/components/snk-form-config.js +6 -0
  150. package/dist/components/snk-form-config2.js +996 -0
  151. package/dist/components/snk-form.d.ts +11 -0
  152. package/dist/components/snk-form.js +6 -0
  153. package/dist/components/snk-form2.js +209 -0
  154. package/dist/components/snk-grid.d.ts +11 -0
  155. package/dist/components/snk-grid.js +6 -0
  156. package/dist/components/snk-grid2.js +152 -0
  157. package/dist/components/snk-tab-config.d.ts +11 -0
  158. package/dist/components/snk-tab-config.js +6 -0
  159. package/dist/components/snk-tab-config2.js +7220 -0
  160. package/dist/components/snk-taskbar.d.ts +11 -0
  161. package/dist/components/snk-taskbar.js +6 -0
  162. package/dist/components/snk-taskbar2.js +282 -0
  163. package/dist/components/taskbar-processor.js +45 -0
  164. package/dist/esm/SnkMessageBuilder-5792c260.js +280 -0
  165. package/dist/esm/_commonjsHelpers-9943807e.js +17 -0
  166. package/dist/esm/configurableElementsStorage-cdc144b5.js +18 -0
  167. package/dist/esm/constants-c6039d3d.js +74 -0
  168. package/dist/esm/draggable.bundle-41d56f06.js +6884 -0
  169. package/dist/esm/filter-item-type.enum-a79b2fa8.js +14 -0
  170. package/dist/esm/form-config-fetcher-96c6c2dc.js +6889 -0
  171. package/dist/esm/{index-ffda6382.js → index-e4121713.js} +963 -210
  172. package/dist/esm/loader.js +3 -3
  173. package/dist/esm/polyfills/css-shim.js +1 -1
  174. package/dist/esm/sankhyablocks.js +3 -3
  175. package/dist/esm/snk-application.entry.js +667 -6981
  176. package/dist/esm/snk-config-modal.entry.js +58 -0
  177. package/dist/esm/snk-config-options.entry.js +226 -0
  178. package/dist/esm/snk-configurator_6.entry.js +1147 -0
  179. package/dist/esm/snk-crud.entry.js +74 -0
  180. package/dist/esm/snk-data-unit.entry.js +268 -0
  181. package/dist/esm/snk-field-config_2.entry.js +130 -0
  182. package/dist/esm/snk-filter-binary-select.entry.js +46 -0
  183. package/dist/esm/snk-filter-detail.entry.js +102 -0
  184. package/dist/esm/snk-filter-multi-select.entry.js +22 -0
  185. package/dist/esm/snk-filter-number.entry.js +23 -0
  186. package/dist/esm/snk-filter-period.entry.js +36 -0
  187. package/dist/esm/snk-filter-personalized.entry.js +85 -0
  188. package/dist/esm/snk-filter-search.entry.js +34 -0
  189. package/dist/esm/snk-filter-text.entry.js +18 -0
  190. package/dist/esm/snk-form-config.entry.js +953 -0
  191. package/dist/esm/snk-form.entry.js +142 -0
  192. package/dist/esm/snk-pesquisa.entry.js +1 -1
  193. package/dist/esm/snk-tab-config.entry.js +317 -0
  194. package/dist/esm/taskbar-elements-e2ed0536.js +94 -0
  195. package/dist/esm/taskbar-processor-aa6772c9.js +45 -0
  196. package/dist/esm/teste-pesquisa.entry.js +1 -1
  197. package/dist/sankhyablocks/p-029ae4e4.entry.js +1 -0
  198. package/dist/sankhyablocks/p-03f9c407.js +1 -0
  199. package/dist/sankhyablocks/p-112455b1.js +1 -0
  200. package/dist/sankhyablocks/p-12ad2a19.entry.js +1 -0
  201. package/dist/sankhyablocks/p-1feabfc7.entry.js +1 -0
  202. package/dist/sankhyablocks/p-21c8929b.js +1 -0
  203. package/dist/sankhyablocks/p-2284c850.entry.js +1 -0
  204. package/dist/sankhyablocks/p-2b891c4a.entry.js +1 -0
  205. package/dist/sankhyablocks/p-2dc76d79.entry.js +1 -0
  206. package/dist/sankhyablocks/p-361299e8.js +26 -0
  207. package/dist/sankhyablocks/p-3a276f3d.entry.js +1 -0
  208. package/dist/sankhyablocks/p-400cc777.entry.js +1 -0
  209. package/dist/sankhyablocks/{p-2a7b4cb3.entry.js → p-44ce5b90.entry.js} +1 -1
  210. package/dist/sankhyablocks/p-521c96f0.entry.js +1 -0
  211. package/dist/sankhyablocks/{p-9520d78a.entry.js → p-6988f4a6.entry.js} +1 -1
  212. package/dist/sankhyablocks/p-776ff4d1.entry.js +1 -0
  213. package/dist/sankhyablocks/p-7b4a4a50.entry.js +1 -0
  214. package/dist/sankhyablocks/p-9ba3df4c.js +2 -0
  215. package/dist/sankhyablocks/p-9dc4426d.entry.js +1 -0
  216. package/dist/sankhyablocks/p-9dd2b8cb.js +1 -0
  217. package/dist/sankhyablocks/p-a17a4fca.entry.js +1 -0
  218. package/dist/sankhyablocks/p-a5b26df2.js +1 -0
  219. package/dist/sankhyablocks/p-b6d6b172.js +1 -0
  220. package/dist/sankhyablocks/p-cc4bef9f.entry.js +1 -0
  221. package/dist/sankhyablocks/p-d50651a3.js +1 -0
  222. package/dist/sankhyablocks/p-d690b6b5.entry.js +75 -0
  223. package/dist/sankhyablocks/p-d9fbb26f.js +1 -0
  224. package/dist/sankhyablocks/p-deb1f523.entry.js +1 -0
  225. package/dist/sankhyablocks/p-e871aa92.entry.js +1 -0
  226. package/dist/sankhyablocks/p-e9beab79.entry.js +1 -0
  227. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  228. package/dist/types/components/snk-application/errorhandler/snk-error-handler.d.ts +1 -0
  229. package/dist/types/components/snk-application/snk-application.d.ts +178 -26
  230. package/dist/types/components/snk-configurator/snk-configurator.d.ts +46 -0
  231. package/dist/types/components/snk-configurator/subcomponents/configModalProvider/configurableElementsStorage.d.ts +8 -0
  232. package/dist/types/components/snk-configurator/subcomponents/snk-config-modal/snk-config-modal.d.ts +38 -0
  233. package/dist/types/components/snk-crud/snk-crud.d.ts +50 -0
  234. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +92 -0
  235. package/dist/types/components/snk-filter-bar/filter-item/dataunitfilter/data-unit-filter-builder.d.ts +4 -0
  236. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-binary-select.d.ts +13 -0
  237. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-multi-select.d.ts +9 -0
  238. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-number.d.ts +9 -0
  239. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-period.d.ts +15 -0
  240. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-personalized.d.ts +24 -0
  241. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-search.d.ts +11 -0
  242. package/dist/types/components/snk-filter-bar/filter-item/editors/snk-filter-text.d.ts +8 -0
  243. package/dist/types/components/snk-filter-bar/filter-item/filter-item-type.enum.d.ts +11 -0
  244. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-detail.d.ts +20 -0
  245. package/dist/types/components/snk-filter-bar/filter-item/snk-filter-item.d.ts +40 -0
  246. package/dist/types/components/snk-filter-bar/filter-list/snk-filter-list.d.ts +45 -0
  247. package/dist/types/components/snk-filter-bar/filter-modal/snk-filter-modal.d.ts +26 -0
  248. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +65 -0
  249. package/dist/types/components/snk-form/snk-form.d.ts +71 -0
  250. package/dist/types/components/snk-form/subcomponents/snk-config-options/snk-config-options.d.ts +51 -0
  251. package/dist/types/components/snk-form/subcomponents/snk-field-config/snk-field-config.d.ts +32 -0
  252. package/dist/types/components/snk-form/subcomponents/snk-form-config/snk-form-config.d.ts +139 -0
  253. package/dist/types/components/snk-form/subcomponents/snk-tab-config/snk-tab-config.d.ts +97 -0
  254. package/dist/types/components/snk-grid/snk-grid.d.ts +59 -0
  255. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +30 -0
  256. package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +12 -0
  257. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +92 -0
  258. package/dist/types/components.d.ts +1100 -12
  259. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +7 -6
  260. package/dist/types/lib/http/data-fetcher/fetchers/dataunit-fetcher.d.ts +3 -0
  261. package/dist/types/lib/http/data-fetcher/fetchers/filter-bar-config-fetcher.d.ts +6 -0
  262. package/dist/types/lib/http/data-fetcher/fetchers/form-config-fetcher.d.ts +21 -3
  263. package/dist/types/lib/http/data-fetcher/fetchers/grid-config-fetcher.d.ts +1 -1
  264. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +7 -7
  265. package/dist/types/lib/http/data-fetcher/fetchers/resource-fetcher.d.ts +1 -0
  266. package/dist/types/lib/http/data-fetcher/fetchers/totals-fetcher.d.ts +8 -0
  267. package/dist/types/lib/index.d.ts +2 -0
  268. package/dist/types/lib/message/SnkMessageBuilder.d.ts +42 -0
  269. package/dist/types/lib/message/resources/crud-utils.msg.d.ts +2 -0
  270. package/dist/types/lib/message/resources/snk-configurator.msg.d.ts +2 -0
  271. package/dist/types/lib/message/resources/snk-data-unit.msg.d.ts +2 -0
  272. package/dist/types/lib/message/resources/snk-filter-bar.msg.d.ts +2 -0
  273. package/dist/types/lib/message/resources/snk-form.msg.d.ts +5 -0
  274. package/dist/types/lib/message/resources/snk-taskbar.msg.d.ts +2 -0
  275. package/dist/types/lib/utils/CrudUtils.d.ts +6 -0
  276. package/dist/types/lib/utils/constants.d.ts +76 -0
  277. package/dist/types/lib/utils/pesquisa.d.ts +2 -1
  278. package/dist/types/stencil-public-runtime.d.ts +15 -4
  279. package/loader/package.json +1 -0
  280. package/package.json +6 -5
  281. package/react/components.d.ts +23 -0
  282. package/react/components.js +23 -0
  283. package/react/components.js.map +1 -1
  284. package/dist/sankhyablocks/p-98e8490d.entry.js +0 -69
  285. package/dist/sankhyablocks/p-edcb9d8e.js +0 -2
@@ -0,0 +1,261 @@
1
+ import { ApplicationContext, ObjectUtils } from '@sankhyalabs/core';
2
+ import { h } from '@stencil/core';
3
+ import { ApplicationUtils } from "@sankhyalabs/ezui/dist/collection/utils";
4
+ import { CONFIG_EVENTS, VIEW_MODE } from '../../lib/utils/constants';
5
+ import ConfigurableElementsStorage from './subcomponents/configModalProvider/configurableElementsStorage';
6
+ const GRID_MODE = VIEW_MODE.grid;
7
+ const FORM_MODE = VIEW_MODE.form;
8
+ export class SnkConfigurator {
9
+ constructor() {
10
+ /**
11
+ * Nome do componente que será vinculado ao `data-configurator-parent` para controlar o modal de configurações.
12
+ */
13
+ this.name = "snkConfigurator";
14
+ /**
15
+ * Define se o campo está habilitado.
16
+ */
17
+ this.enabled = true;
18
+ }
19
+ /**
20
+ * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
21
+ * através de um pequeno modulo na estrutura da aplicação:
22
+ * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
23
+ * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-configurator.msg.ts"
24
+ */
25
+ getMessage(key) {
26
+ return this._application.messagesBuilder.getMessage(key, {});
27
+ }
28
+ controlConfigModal(opened) {
29
+ var _a;
30
+ if (this._modal != undefined) {
31
+ this._modal.opened = opened;
32
+ if (this._configModal != undefined) {
33
+ this._configModal.gridMode = ((_a = this._grid) === null || _a === void 0 ? void 0 : _a.offsetParent) != undefined;
34
+ }
35
+ }
36
+ }
37
+ changeConfigModal(evt) {
38
+ const data = evt === null || evt === void 0 ? void 0 : evt.detail;
39
+ if (data === null || data === void 0 ? void 0 : data.openConfig) {
40
+ this.controlConfigModal(false);
41
+ this.callShowConfig(data === null || data === void 0 ? void 0 : data.viewMode);
42
+ }
43
+ else if ((data === null || data === void 0 ? void 0 : data.viewMode) === GRID_MODE.index) {
44
+ this.changeViewMode.emit(GRID_MODE.name);
45
+ }
46
+ else if ((data === null || data === void 0 ? void 0 : data.viewMode) === FORM_MODE.index) {
47
+ this.changeViewMode.emit(FORM_MODE.name);
48
+ }
49
+ }
50
+ callShowConfig(viewMode) {
51
+ if (viewMode === GRID_MODE.index) {
52
+ if (this._grid == undefined) {
53
+ this.findGrid();
54
+ }
55
+ if (this._grid != undefined) {
56
+ this._grid.setShowGridConfig(true);
57
+ }
58
+ }
59
+ else if (viewMode === FORM_MODE.index) {
60
+ if (this._form == undefined) {
61
+ this.findForm();
62
+ }
63
+ if (this._form != undefined) {
64
+ this._form.setShowFormConfig(true);
65
+ }
66
+ }
67
+ }
68
+ getConfigModal() {
69
+ const modalContainer = document.createElement("ez-modal");
70
+ modalContainer.modalSize = "small";
71
+ modalContainer.opened = false;
72
+ modalContainer.closeEsc = false;
73
+ modalContainer.closeOutsideClick = false;
74
+ modalContainer.dataset.configuratorModal = this.name;
75
+ modalContainer.addEventListener(CONFIG_EVENTS.closeModal, () => {
76
+ this.controlConfigModal(false);
77
+ });
78
+ const modalContent = document.createElement("snk-config-modal");
79
+ modalContent.addEventListener(CONFIG_EVENTS.cancelConfig, () => {
80
+ this.controlConfigModal(false);
81
+ });
82
+ modalContent.addEventListener(CONFIG_EVENTS.changeConfig, (evt) => {
83
+ this.changeConfigModal(evt);
84
+ });
85
+ modalContent.configName = this.configName;
86
+ modalContainer.append(modalContent);
87
+ return modalContainer;
88
+ }
89
+ findConfigModal() {
90
+ let modalContainer = document.body.querySelector(`[data-configurator-modal="${this.name}"]`);
91
+ if (modalContainer == undefined) {
92
+ modalContainer = this.getConfigModal();
93
+ document.body.appendChild(modalContainer);
94
+ }
95
+ this._modal = modalContainer;
96
+ this._configModal = modalContainer.querySelector("snk-config-modal");
97
+ }
98
+ findGrid() {
99
+ if (this._grid != undefined) {
100
+ return;
101
+ }
102
+ this._grid = ConfigurableElementsStorage.getGrid(this.configName);
103
+ if (this._grid != undefined && this._grid.dataset.eventConfigChanged == undefined) {
104
+ this._grid.dataset.eventConfigChanged = "true";
105
+ this._grid.addEventListener(CONFIG_EVENTS.configChanged, (evt) => {
106
+ this.saveConfig(evt);
107
+ });
108
+ }
109
+ }
110
+ findForm() {
111
+ if (this._form != undefined) {
112
+ return;
113
+ }
114
+ this._form = ConfigurableElementsStorage.getForm(this.configName);
115
+ if (this._form != undefined && this._form.dataset.eventConfigChanged == undefined) {
116
+ this._form.dataset.eventConfigChanged = "true";
117
+ this._form.addEventListener(CONFIG_EVENTS.configChanged, (evt) => {
118
+ this.saveConfig(evt);
119
+ });
120
+ }
121
+ }
122
+ saveConfig(evt) {
123
+ const config = evt === null || evt === void 0 ? void 0 : evt.detail;
124
+ if (this._application != undefined && config != undefined) {
125
+ if ((config === null || config === void 0 ? void 0 : config.fields) != undefined) {
126
+ this._application.saveFormConfig(config, this.configName)
127
+ .then((response) => {
128
+ if ((response === null || response === void 0 ? void 0 : response.resource) != undefined) {
129
+ this.loadFormConfig(true);
130
+ }
131
+ });
132
+ }
133
+ else if ((config === null || config === void 0 ? void 0 : config.columns) != undefined) {
134
+ this._application.saveGridConfig(config)
135
+ .then((response) => {
136
+ if ((response === null || response === void 0 ? void 0 : response.resource) != undefined) {
137
+ this.setGridConfig(response.resource);
138
+ }
139
+ });
140
+ }
141
+ }
142
+ }
143
+ setGridConfig(strConfig) {
144
+ if (this._grid != undefined) {
145
+ const config = ObjectUtils.stringToObject(strConfig);
146
+ this._grid.setConfig(config).then(() => {
147
+ ApplicationUtils.info(this.getMessage("snkConfigurator.msgSaveSuccessfully"), { iconName: "check" });
148
+ });
149
+ }
150
+ }
151
+ loadGridConfig() {
152
+ if (this._application != undefined && this.configName != undefined && this._grid != undefined) {
153
+ this._application.loadGridConfig(this.configName).then((config) => {
154
+ this._grid.setConfig(config);
155
+ });
156
+ }
157
+ }
158
+ loadFormConfig(showInfoSuccess = false) {
159
+ if (this._application != undefined && this.configName != undefined && this._form != undefined) {
160
+ this._application.loadFormConfig(this.configName).then((config) => {
161
+ this._form.setConfig(config).then(() => {
162
+ if (showInfoSuccess) {
163
+ ApplicationUtils.info(this.getMessage("snkConfigurator.msgSaveSuccessfully"), { iconName: "check" });
164
+ }
165
+ });
166
+ });
167
+ }
168
+ }
169
+ loadConfig() {
170
+ this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
171
+ this.loadGridConfig();
172
+ this.loadFormConfig();
173
+ }
174
+ componentDidLoad() {
175
+ this.findConfigModal();
176
+ this.findGrid();
177
+ this.findForm();
178
+ this.loadConfig();
179
+ }
180
+ render() {
181
+ return (h("ez-button", { mode: "icon", iconName: "settings-inverted", size: "small", enabled: this.enabled, onClick: () => this.controlConfigModal(true) }));
182
+ }
183
+ static get is() { return "snk-configurator"; }
184
+ static get encapsulation() { return "scoped"; }
185
+ static get properties() {
186
+ return {
187
+ "configName": {
188
+ "type": "string",
189
+ "mutable": false,
190
+ "complexType": {
191
+ "original": "string",
192
+ "resolved": "string",
193
+ "references": {}
194
+ },
195
+ "required": false,
196
+ "optional": false,
197
+ "docs": {
198
+ "tags": [],
199
+ "text": "Nome usado para guardar/recuperar as configura\u00E7\u00F5es do formul\u00E1rio"
200
+ },
201
+ "attribute": "config-name",
202
+ "reflect": false
203
+ },
204
+ "name": {
205
+ "type": "string",
206
+ "mutable": false,
207
+ "complexType": {
208
+ "original": "string",
209
+ "resolved": "string",
210
+ "references": {}
211
+ },
212
+ "required": false,
213
+ "optional": false,
214
+ "docs": {
215
+ "tags": [],
216
+ "text": "Nome do componente que ser\u00E1 vinculado ao `data-configurator-parent` para controlar o modal de configura\u00E7\u00F5es."
217
+ },
218
+ "attribute": "name",
219
+ "reflect": false,
220
+ "defaultValue": "\"snkConfigurator\""
221
+ },
222
+ "enabled": {
223
+ "type": "boolean",
224
+ "mutable": false,
225
+ "complexType": {
226
+ "original": "boolean",
227
+ "resolved": "boolean",
228
+ "references": {}
229
+ },
230
+ "required": false,
231
+ "optional": false,
232
+ "docs": {
233
+ "tags": [],
234
+ "text": "Define se o campo est\u00E1 habilitado."
235
+ },
236
+ "attribute": "enabled",
237
+ "reflect": false,
238
+ "defaultValue": "true"
239
+ }
240
+ };
241
+ }
242
+ static get events() {
243
+ return [{
244
+ "method": "changeViewMode",
245
+ "name": "changeViewMode",
246
+ "bubbles": true,
247
+ "cancelable": true,
248
+ "composed": true,
249
+ "docs": {
250
+ "tags": [],
251
+ "text": "Evento disparado quando h\u00E1 altera\u00E7\u00E3o no modo de visualiza\u00E7\u00E3o."
252
+ },
253
+ "complexType": {
254
+ "original": "string",
255
+ "resolved": "string",
256
+ "references": {}
257
+ }
258
+ }];
259
+ }
260
+ static get elementRef() { return "_element"; }
261
+ }
@@ -0,0 +1,16 @@
1
+ export default class ConfigurableElementsStorage {
2
+ static setGrid(id, grid) {
3
+ this._gridById.set(id, grid);
4
+ }
5
+ static setForm(id, form) {
6
+ this._formById.set(id, form);
7
+ }
8
+ static getGrid(id) {
9
+ return this._gridById.get(id);
10
+ }
11
+ static getForm(id) {
12
+ return this._formById.get(id);
13
+ }
14
+ }
15
+ ConfigurableElementsStorage._gridById = new Map();
16
+ ConfigurableElementsStorage._formById = new Map();
@@ -0,0 +1,122 @@
1
+ :host {
2
+ /*@doc Define o espaçamento utilizado à esquerda do botão de fechar do componente.*/
3
+ --snk-config-modal__button-close--padding-left: var(--space--medium, 12px);
4
+
5
+ /*@doc Define a cor do texto utilizado para o titulo do componente.*/
6
+ --snk-config-modal__title--color: var(--title--primary, #2B3A54);
7
+
8
+ /*@doc Define o estilo da fonte utilizada para o titulo do componente.*/
9
+ --snk-config-modal__title--font-family: var(--font-pattern, "Sora");
10
+
11
+ /*@doc Define o tamanho da fonte utilizada para o titulo do componente.*/
12
+ --snk-config-modal__title--font-size: var(--title--large, 20px);
13
+
14
+ /*@doc Define o peso da fonte utilizada para o titulo do componente.*/
15
+ --snk-config-modal__title--font-weight: var(--text-weight--extra-large, 700);
16
+
17
+ /*@doc Define a cor do texto utilizado para o subtitulo do componente.*/
18
+ --snk-config-modal__subtitle--color: var(--title--primary, #2B3A54);
19
+
20
+ /*@doc Define o estilo da fonte utilizada para o subtitulo do componente.*/
21
+ --snk-config-modal__subtitle--font-family: var(--font-pattern, "Sora");
22
+
23
+ /*@doc Define o tamanho da fonte utilizada para o subtitulo do componente.*/
24
+ --snk-config-modal__subtitle--font-size: var(--text--medium, 14px);
25
+
26
+ /*@doc Define o peso da fonte utilizada para o subtitulo do componente.*/
27
+ --snk-config-modal__subtitle--font-weight: var(--text-weight--large, 600);
28
+
29
+ /*@doc Define o raio da borda da barra de rolagem do componente.*/
30
+ --snk-config-modal__scrollbar--border-radius: var(--border--radius-small, 6px);
31
+
32
+ /*@doc Define a largura da barra de rolagem do componente.*/
33
+ --snk-config-modal__scrollbar--width: var(--space--medium, 12px);
34
+
35
+ /*@doc Define a cor da barra de rolagem do componente.*/
36
+ --snk-config-modal__scrollbar--background-color-primary: var(--scrollbar--primary, #2B3A54);
37
+
38
+ /*@doc Define a cor de fundo da barra de rolagem do componente.*/
39
+ --snk-config-modal__scrollbar--background-color-secondary: var(--scrollbar--secondary, #E5EAF0);
40
+
41
+ display: grid;
42
+ grid-template-rows: auto 1fr auto;
43
+ max-height: 100%;
44
+ width: 100%;
45
+ }
46
+
47
+ @media screen and (min-width: 480px) {
48
+ :host {
49
+ width: 359px;
50
+ max-width: 359px;
51
+ }
52
+ }
53
+
54
+ .snk-config-modal__button-config {
55
+ --ez-button--min-width: 100%;
56
+ }
57
+
58
+ .snk-config-modal__header {
59
+ display: flex;
60
+ justify-content: space-between;
61
+ align-items: center;
62
+ width: 100%;
63
+ }
64
+
65
+ .snk-config-modal__title {
66
+ display: flex;
67
+ margin: 0;
68
+ line-height: normal;
69
+ letter-spacing: 0em;
70
+ text-align: left;
71
+
72
+ /*public*/
73
+ color: var(--snk-config-modal__title--color);
74
+ font-size: var(--snk-config-modal__title--font-size);
75
+ font-family: var(--snk-config-modal__title--font-family);
76
+ font-weight: var(--snk-config-modal__title--font-weight);
77
+ }
78
+
79
+ .snk-config-modal__subtitle {
80
+ display: flex;
81
+ margin: 0;
82
+
83
+ /*public*/
84
+ padding-top: var(--space--medium);
85
+ padding-bottom: var(--space--small);
86
+ color: var(--snk-config-modal__subtitle--color);
87
+ font-size: var(--snk-config-modal__subtitle--font-size);
88
+ font-family: var(--snk-config-modal__subtitle--font-family);
89
+ font-weight: var(--snk-config-modal__subtitle--font-weight);
90
+ }
91
+
92
+ .snk-config-modal__button-close {
93
+ /*public*/
94
+ padding-left: var(--snk-config-modal__button-close--padding-left);
95
+ }
96
+
97
+ .snk-config-modal__main {
98
+ overflow-y: auto;
99
+ scrollbar-width: thin;
100
+
101
+ /*public*/
102
+ scrollbar-color: var(--snk-config-modal__scrollbar--background-color-primary) var(--snk-config-modal__scrollbar--background-color-secondary);
103
+ }
104
+
105
+ .snk-config-modal__main::-webkit-scrollbar-track {
106
+ /*public*/
107
+ background-color: var(--snk-config-modal__scrollbar--background-color-secondary);
108
+ }
109
+
110
+ .snk-config-modal__main::-webkit-scrollbar-thumb {
111
+ /*public*/
112
+ background-color: var(--snk-config-modal__scrollbar--background-color-primary);
113
+ border-radius: var(--snk-config-modal__scrollbar--border-radius);
114
+ }
115
+
116
+ .snk-config-modal__main::-webkit-scrollbar {
117
+ /*public*/
118
+ background-color: var(--snk-config-modal__scrollbar--background-color-secondary);
119
+ width: var(--snk-config-modal__scrollbar--width);
120
+ max-width: var(--snk-config-modal__scrollbar--width);
121
+ min-width: var(--snk-config-modal__scrollbar--width);
122
+ }
@@ -0,0 +1,137 @@
1
+ import { ApplicationContext } from '@sankhyalabs/core';
2
+ import { h, Host } from '@stencil/core';
3
+ import { VIEW_MODE } from '../../../../lib/utils/constants';
4
+ import ConfigurableElementsStorage from '../configModalProvider/configurableElementsStorage';
5
+ const GRID_MODE = VIEW_MODE.grid;
6
+ const FORM_MODE = VIEW_MODE.form;
7
+ export class SnkConfigModal {
8
+ constructor() {
9
+ /**
10
+ * Define se o modo grid está ativo.
11
+ */
12
+ this.gridMode = true;
13
+ }
14
+ dispatchChange(openConfig = false) {
15
+ const data = {
16
+ viewMode: this.gridMode ? GRID_MODE.index : FORM_MODE.index,
17
+ openConfig
18
+ };
19
+ this.changeConfig.emit(data);
20
+ }
21
+ closeConfig() {
22
+ this.cancelConfig.emit();
23
+ }
24
+ onChecked(evt) {
25
+ const value = evt === null || evt === void 0 ? void 0 : evt.detail;
26
+ this.gridMode = value === "G" ? true : false;
27
+ this.dispatchChange();
28
+ }
29
+ onClicked() {
30
+ this.dispatchChange(true);
31
+ }
32
+ /**
33
+ * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
34
+ * através de um pequeno modulo na estrutura da aplicação:
35
+ * - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
36
+ * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-configurator.msg.ts"
37
+ */
38
+ getMessage(key) {
39
+ return this._application.messagesBuilder.getMessage(key, {});
40
+ }
41
+ componentWillLoad() {
42
+ this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
43
+ }
44
+ render() {
45
+ return (h(Host, null, h("div", { class: "snk-config-modal__header" }, h("label", { class: "snk-config-modal__title" }, this.getMessage("snkConfigModal.titleConfigurations")), h("div", { class: "snk-config-modal__button-close" }, h("ez-button", { mode: 'icon', iconName: "close", size: 'medium', onClick: () => this.closeConfig() }))), h("div", { class: "snk-config-modal__main" }, h("ez-radio-button", { class: "ez-margin-top--medium", label: this.getMessage("snkConfigModal.subTitleModeConfig"), value: this.gridMode ? "G" : "F", onEzChange: (evt) => this.onChecked(evt) }, ConfigurableElementsStorage.getForm(this.configName) && h("ez-radio-button-option", { label: this.getMessage("snkConfigModal.labelGrid"), value: "G" }), ConfigurableElementsStorage.getGrid(this.configName) && h("ez-radio-button-option", { label: this.getMessage("snkConfigModal.labelForm"), value: "F" })), h("ez-button", { mode: "slim", label: this.gridMode
46
+ ? this.getMessage("snkConfigModal.labelConfigGrid")
47
+ : this.getMessage("snkConfigModal.labelConfigForm"), class: "snk-config-modal__button-config ez-button--primary", onClick: () => this.onClicked() }), h("hr", { class: "ez-divider-horizontal ez-margin-vertical--medium" }))));
48
+ }
49
+ static get is() { return "snk-config-modal"; }
50
+ static get encapsulation() { return "scoped"; }
51
+ static get originalStyleUrls() {
52
+ return {
53
+ "$": ["snk-config-modal.css"]
54
+ };
55
+ }
56
+ static get styleUrls() {
57
+ return {
58
+ "$": ["snk-config-modal.css"]
59
+ };
60
+ }
61
+ static get properties() {
62
+ return {
63
+ "configName": {
64
+ "type": "string",
65
+ "mutable": false,
66
+ "complexType": {
67
+ "original": "string",
68
+ "resolved": "string",
69
+ "references": {}
70
+ },
71
+ "required": false,
72
+ "optional": false,
73
+ "docs": {
74
+ "tags": [],
75
+ "text": "Nome usado para guardar/recuperar as configura\u00E7\u00F5es do formul\u00E1rio"
76
+ },
77
+ "attribute": "config-name",
78
+ "reflect": false
79
+ },
80
+ "gridMode": {
81
+ "type": "boolean",
82
+ "mutable": false,
83
+ "complexType": {
84
+ "original": "boolean",
85
+ "resolved": "boolean",
86
+ "references": {}
87
+ },
88
+ "required": false,
89
+ "optional": false,
90
+ "docs": {
91
+ "tags": [],
92
+ "text": "Define se o modo grid est\u00E1 ativo."
93
+ },
94
+ "attribute": "grid-mode",
95
+ "reflect": false,
96
+ "defaultValue": "true"
97
+ }
98
+ };
99
+ }
100
+ static get events() {
101
+ return [{
102
+ "method": "cancelConfig",
103
+ "name": "cancelConfig",
104
+ "bubbles": true,
105
+ "cancelable": true,
106
+ "composed": true,
107
+ "docs": {
108
+ "tags": [],
109
+ "text": "Evento disparado quando o modal \u00E9 fechado."
110
+ },
111
+ "complexType": {
112
+ "original": "void",
113
+ "resolved": "void",
114
+ "references": {}
115
+ }
116
+ }, {
117
+ "method": "changeConfig",
118
+ "name": "changeConfig",
119
+ "bubbles": true,
120
+ "cancelable": true,
121
+ "composed": true,
122
+ "docs": {
123
+ "tags": [],
124
+ "text": "Evento disparado quando h\u00E1 altera\u00E7\u00E3o nas configura\u00E7\u00F5es."
125
+ },
126
+ "complexType": {
127
+ "original": "IConfigModal",
128
+ "resolved": "IConfigModal",
129
+ "references": {
130
+ "IConfigModal": {
131
+ "location": "local"
132
+ }
133
+ }
134
+ }
135
+ }];
136
+ }
137
+ }
@@ -0,0 +1,6 @@
1
+ :host {
2
+ display: flex;
3
+ flex-direction: column;
4
+ height: 100%;
5
+ width: 100%;
6
+ }