@sankhyalabs/ezui 2.10.1 → 2.12.0

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 (231) hide show
  1. package/dist/cjs/ez-actions-button.cjs.entry.js +1 -1
  2. package/dist/cjs/ez-alert.cjs.entry.js +1 -1
  3. package/dist/cjs/ez-application.cjs.entry.js +1 -1
  4. package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
  5. package/dist/cjs/ez-button.cjs.entry.js +1 -1
  6. package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
  7. package/dist/cjs/ez-card-item.cjs.entry.js +1 -1
  8. package/dist/cjs/ez-check.cjs.entry.js +1 -1
  9. package/dist/cjs/ez-chip.cjs.entry.js +1 -1
  10. package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
  11. package/dist/cjs/ez-combo-box.cjs.entry.js +1 -1
  12. package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
  13. package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
  14. package/dist/cjs/ez-dialog.cjs.entry.js +1 -1
  15. package/dist/cjs/ez-dropdown.cjs.entry.js +503 -0
  16. package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
  17. package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
  18. package/dist/cjs/ez-form-view.cjs.entry.js +140 -0
  19. package/dist/cjs/ez-form.cjs.entry.js +228 -330
  20. package/dist/cjs/ez-grid.cjs.entry.js +1 -1
  21. package/dist/cjs/ez-icon.cjs.entry.js +1 -1
  22. package/dist/cjs/ez-list.cjs.entry.js +1 -1
  23. package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
  24. package/dist/cjs/ez-modal-container.cjs.entry.js +1 -1
  25. package/dist/cjs/ez-modal.cjs.entry.js +1 -1
  26. package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
  27. package/dist/cjs/ez-popover.cjs.entry.js +1 -1
  28. package/dist/cjs/ez-popup.cjs.entry.js +1 -1
  29. package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
  30. package/dist/cjs/ez-scroller.cjs.entry.js +1 -1
  31. package/dist/cjs/ez-search.cjs.entry.js +1 -1
  32. package/dist/cjs/ez-sidebar-button.cjs.entry.js +1 -1
  33. package/dist/cjs/ez-tabselector.cjs.entry.js +6 -3
  34. package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
  35. package/dist/cjs/ez-text-edit.cjs.entry.js +1 -1
  36. package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
  37. package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
  38. package/dist/cjs/ez-toast.cjs.entry.js +1 -1
  39. package/dist/cjs/ez-tree.cjs.entry.js +109 -22
  40. package/dist/cjs/ez-upload.cjs.entry.js +1 -1
  41. package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
  42. package/dist/cjs/ezui.cjs.js +2 -2
  43. package/dist/cjs/{index-8646c40d.js → index-5e208fa5.js} +11 -0
  44. package/dist/cjs/loader.cjs.js +2 -2
  45. package/dist/collection/collection-manifest.json +2 -0
  46. package/dist/collection/components/ez-dropdown/ez-dropdown.css +349 -0
  47. package/dist/collection/components/ez-dropdown/ez-dropdown.js +339 -0
  48. package/dist/collection/components/ez-dropdown/structure/DropdownItem.js +33 -0
  49. package/dist/collection/components/ez-dropdown/structure/SubmenuControl.js +241 -0
  50. package/dist/collection/components/ez-form/{structure/FormSheetMetadata.js → FormMetadata.js} +39 -54
  51. package/dist/collection/components/ez-form/ez-form.css +7 -1
  52. package/dist/collection/components/ez-form/ez-form.js +128 -19
  53. package/dist/collection/components/ez-form/interfaces/IDefaultConfig.js +1 -0
  54. package/dist/collection/components/ez-form/interfaces/IFieldConfig.js +1 -0
  55. package/dist/collection/components/ez-form/interfaces/IFormConfig.js +1 -0
  56. package/dist/collection/components/ez-form/interfaces/IFormSheetMetadata.js +1 -0
  57. package/dist/collection/components/ez-form/interfaces/IInvalidField.js +1 -0
  58. package/dist/collection/components/ez-form/interfaces/IRecordValidator.js +1 -0
  59. package/dist/collection/components/ez-form/interfaces/ITabConfig.js +1 -0
  60. package/dist/collection/components/ez-form/interfaces/IValidationResult.js +1 -0
  61. package/dist/collection/components/ez-form/interfaces/index.js +1 -0
  62. package/dist/collection/components/ez-form/store/form.slice.js +6 -2
  63. package/dist/collection/components/ez-form-view/ez-form-view.css +6 -0
  64. package/dist/collection/components/ez-form-view/ez-form-view.js +71 -0
  65. package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +26 -0
  66. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/CheckBox.tpl.js +4 -4
  67. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/ComboBox.tpl.js +2 -2
  68. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/DateInput.tpl.js +1 -1
  69. package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/NumberInput.tpl.js +3 -3
  70. package/dist/collection/components/ez-form-view/interfaces/IFormViewField.js +1 -0
  71. package/dist/collection/components/ez-form-view/interfaces/index.js +1 -0
  72. package/dist/collection/components/ez-tabselector/ez-tabselector.js +5 -2
  73. package/dist/collection/components/ez-tree/ez-tree.css +8 -6
  74. package/dist/collection/components/ez-tree/ez-tree.js +89 -11
  75. package/dist/collection/components/ez-tree/subcomponents/DefaultTooltipResolver.js +3 -0
  76. package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +4 -4
  77. package/dist/collection/components/ez-tree/subcomponents/index.js +1 -0
  78. package/dist/collection/components/ez-tree/types/Node.js +26 -4
  79. package/dist/collection/components/ez-tree/types/Tree.js +23 -2
  80. package/dist/custom-elements/index.d.ts +12 -0
  81. package/dist/custom-elements/index.js +977 -355
  82. package/dist/esm/ez-actions-button.entry.js +1 -1
  83. package/dist/esm/ez-alert.entry.js +1 -1
  84. package/dist/esm/ez-application.entry.js +1 -1
  85. package/dist/esm/ez-breadcrumb.entry.js +1 -1
  86. package/dist/esm/ez-button.entry.js +1 -1
  87. package/dist/esm/ez-calendar.entry.js +1 -1
  88. package/dist/esm/ez-card-item.entry.js +1 -1
  89. package/dist/esm/ez-check.entry.js +1 -1
  90. package/dist/esm/ez-chip.entry.js +1 -1
  91. package/dist/esm/ez-collapsible-box.entry.js +1 -1
  92. package/dist/esm/ez-combo-box.entry.js +1 -1
  93. package/dist/esm/ez-date-input.entry.js +1 -1
  94. package/dist/esm/ez-date-time-input.entry.js +1 -1
  95. package/dist/esm/ez-dialog.entry.js +1 -1
  96. package/dist/esm/ez-dropdown.entry.js +499 -0
  97. package/dist/esm/ez-file-item.entry.js +1 -1
  98. package/dist/esm/ez-filter-input.entry.js +1 -1
  99. package/dist/esm/ez-form-view.entry.js +136 -0
  100. package/dist/esm/ez-form.entry.js +229 -331
  101. package/dist/esm/ez-grid.entry.js +1 -1
  102. package/dist/esm/ez-icon.entry.js +1 -1
  103. package/dist/esm/ez-list.entry.js +1 -1
  104. package/dist/esm/ez-loading-bar.entry.js +1 -1
  105. package/dist/esm/ez-modal-container.entry.js +1 -1
  106. package/dist/esm/ez-modal.entry.js +1 -1
  107. package/dist/esm/ez-number-input.entry.js +1 -1
  108. package/dist/esm/ez-popover.entry.js +1 -1
  109. package/dist/esm/ez-popup.entry.js +1 -1
  110. package/dist/esm/ez-radio-button.entry.js +1 -1
  111. package/dist/esm/ez-scroller.entry.js +1 -1
  112. package/dist/esm/ez-search.entry.js +1 -1
  113. package/dist/esm/ez-sidebar-button.entry.js +1 -1
  114. package/dist/esm/ez-tabselector.entry.js +6 -3
  115. package/dist/esm/ez-text-area.entry.js +1 -1
  116. package/dist/esm/ez-text-edit.entry.js +1 -1
  117. package/dist/esm/ez-text-input.entry.js +1 -1
  118. package/dist/esm/ez-time-input.entry.js +1 -1
  119. package/dist/esm/ez-toast.entry.js +1 -1
  120. package/dist/esm/ez-tree.entry.js +109 -22
  121. package/dist/esm/ez-upload.entry.js +1 -1
  122. package/dist/esm/ez-view-stack.entry.js +1 -1
  123. package/dist/esm/ezui.js +2 -2
  124. package/dist/esm/{index-7bc778b3.js → index-c5203f95.js} +11 -0
  125. package/dist/esm/loader.js +2 -2
  126. package/dist/ezui/ezui.esm.js +1 -1
  127. package/dist/ezui/{p-739d60d1.entry.js → p-0c3f7bf2.entry.js} +1 -1
  128. package/dist/ezui/{p-171c3236.entry.js → p-0cd0545d.entry.js} +1 -1
  129. package/dist/ezui/{p-ad5fe50b.entry.js → p-1a27bb9f.entry.js} +1 -1
  130. package/dist/ezui/{p-3cfefc57.entry.js → p-1b94b9dc.entry.js} +1 -1
  131. package/dist/ezui/{p-f18f16e0.entry.js → p-20c01161.entry.js} +1 -1
  132. package/dist/ezui/{p-1634c851.entry.js → p-24717f87.entry.js} +1 -1
  133. package/dist/ezui/{p-7e496975.entry.js → p-3320768e.entry.js} +1 -1
  134. package/dist/ezui/{p-123a2bd5.entry.js → p-36ed5c45.entry.js} +1 -1
  135. package/dist/ezui/{p-25e83e46.entry.js → p-3b2091dd.entry.js} +1 -1
  136. package/dist/ezui/p-47bcc678.entry.js +1 -0
  137. package/dist/ezui/{p-9def6fd0.entry.js → p-47ca5e09.entry.js} +1 -1
  138. package/dist/ezui/{p-04fab1e9.entry.js → p-4c444816.entry.js} +1 -1
  139. package/dist/ezui/{p-9334a724.entry.js → p-608d13e8.entry.js} +1 -1
  140. package/dist/ezui/{p-50ae478a.entry.js → p-626b8940.entry.js} +1 -1
  141. package/dist/ezui/{p-14a04845.entry.js → p-6630eca2.entry.js} +1 -1
  142. package/dist/ezui/{p-9404f22b.entry.js → p-67b9a2cb.entry.js} +1 -1
  143. package/dist/ezui/{p-93bcc628.entry.js → p-6dec5cfa.entry.js} +1 -1
  144. package/dist/ezui/{p-5dc3af60.entry.js → p-6f9aba86.entry.js} +1 -1
  145. package/dist/ezui/p-7799666d.entry.js +1 -0
  146. package/dist/ezui/p-7b80df03.js +1 -0
  147. package/dist/ezui/{p-5c9ce8a7.entry.js → p-7d42065a.entry.js} +1 -1
  148. package/dist/ezui/{p-74c7f960.entry.js → p-81897c04.entry.js} +1 -1
  149. package/dist/ezui/p-91f8c816.entry.js +1 -0
  150. package/dist/ezui/p-97d2d2f6.entry.js +1 -0
  151. package/dist/ezui/{p-32f9f83a.entry.js → p-98c448c9.entry.js} +1 -1
  152. package/dist/ezui/{p-a86d00b3.entry.js → p-99aea44b.entry.js} +1 -1
  153. package/dist/ezui/p-a4b4645d.entry.js +1 -0
  154. package/dist/ezui/{p-e613d9bf.entry.js → p-ab5eee38.entry.js} +1 -1
  155. package/dist/ezui/{p-a2e55b33.entry.js → p-ad7151e0.entry.js} +1 -1
  156. package/dist/ezui/{p-f6111077.entry.js → p-ad8b7412.entry.js} +1 -1
  157. package/dist/ezui/{p-1a89d3ff.entry.js → p-b2e861cb.entry.js} +1 -1
  158. package/dist/ezui/{p-f2627de5.entry.js → p-b2efb22c.entry.js} +1 -1
  159. package/dist/ezui/{p-04a3b457.entry.js → p-b5557d33.entry.js} +1 -1
  160. package/dist/ezui/p-ba03ac61.entry.js +1 -0
  161. package/dist/ezui/{p-6fd5e142.entry.js → p-bc324ee8.entry.js} +1 -1
  162. package/dist/ezui/{p-cfcc23e6.entry.js → p-bd9792e2.entry.js} +1 -1
  163. package/dist/ezui/{p-7c227b86.entry.js → p-bf8a633d.entry.js} +1 -1
  164. package/dist/ezui/{p-ea877274.entry.js → p-c071db26.entry.js} +1 -1
  165. package/dist/ezui/{p-46113d5a.entry.js → p-c3529df3.entry.js} +1 -1
  166. package/dist/ezui/{p-b60fbad2.entry.js → p-ca7435a6.entry.js} +1 -1
  167. package/dist/ezui/{p-37335c51.entry.js → p-e203c89f.entry.js} +1 -1
  168. package/dist/ezui/{p-f2c4e811.entry.js → p-fc97f773.entry.js} +1 -1
  169. package/dist/types/components/ez-dropdown/ez-dropdown.d.ts +58 -0
  170. package/dist/types/components/ez-dropdown/structure/DropdownItem.d.ts +28 -0
  171. package/dist/types/components/ez-dropdown/structure/SubmenuControl.d.ts +78 -0
  172. package/dist/types/components/ez-form/DataBinder.d.ts +1 -1
  173. package/dist/types/components/ez-form/FormMetadata.d.ts +16 -0
  174. package/dist/types/components/ez-form/ez-form.d.ts +21 -43
  175. package/dist/types/components/ez-form/interfaces/IDefaultConfig.d.ts +5 -0
  176. package/dist/types/components/ez-form/interfaces/IFieldConfig.d.ts +13 -0
  177. package/dist/types/components/ez-form/interfaces/IFormConfig.d.ts +7 -0
  178. package/dist/types/components/ez-form/interfaces/IFormSheetMetadata.d.ts +9 -0
  179. package/dist/types/components/ez-form/interfaces/IInvalidField.d.ts +4 -0
  180. package/dist/types/components/ez-form/interfaces/IRecordValidator.d.ts +6 -0
  181. package/dist/types/components/ez-form/interfaces/ITabConfig.d.ts +5 -0
  182. package/dist/types/components/ez-form/interfaces/IValidationResult.d.ts +8 -0
  183. package/dist/types/components/ez-form/interfaces/index.d.ts +8 -0
  184. package/dist/types/components/ez-form/store/form.slice.d.ts +5 -3
  185. package/dist/types/components/ez-form-view/fieldbuilder/FieldBuilder.d.ts +2 -0
  186. package/dist/types/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.d.ts +3 -0
  187. package/dist/types/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.d.ts +2 -0
  188. package/dist/types/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.d.ts +4 -0
  189. package/dist/types/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.d.ts +2 -0
  190. package/dist/types/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.d.ts +3 -0
  191. package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.d.ts +2 -0
  192. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.d.ts +2 -0
  193. package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +2 -0
  194. package/dist/types/components/ez-form-view/interfaces/IFormViewField.d.ts +10 -0
  195. package/dist/types/components/ez-form-view/interfaces/index.d.ts +1 -0
  196. package/dist/types/components/ez-tree/ez-tree.d.ts +13 -0
  197. package/dist/types/components/ez-tree/interfaces/ITreeItem.d.ts +1 -0
  198. package/dist/types/components/ez-tree/subcomponents/DefaultTooltipResolver.d.ts +2 -0
  199. package/dist/types/components/ez-tree/subcomponents/TreeItem.d.ts +2 -0
  200. package/dist/types/components/ez-tree/subcomponents/index.d.ts +1 -0
  201. package/dist/types/components/ez-tree/types/Node.d.ts +1 -0
  202. package/dist/types/components/ez-tree/types/Tree.d.ts +1 -0
  203. package/dist/types/components.d.ts +111 -2
  204. package/package.json +1 -1
  205. package/react/components.d.ts +2 -0
  206. package/react/components.js +2 -0
  207. package/react/components.js.map +1 -1
  208. package/dist/collection/components/ez-form/fieldbuilder/FieldBuilder.js +0 -48
  209. package/dist/collection/components/ez-form/structure/FormItem.js +0 -11
  210. package/dist/collection/components/ez-form/structure/FormSheet.js +0 -6
  211. package/dist/ezui/p-1cc11468.entry.js +0 -1
  212. package/dist/ezui/p-3c7ea91b.js +0 -1
  213. package/dist/ezui/p-79e409c6.entry.js +0 -1
  214. package/dist/ezui/p-941e9792.entry.js +0 -1
  215. package/dist/ezui/p-ddb1c350.entry.js +0 -1
  216. package/dist/types/components/ez-form/fieldbuilder/FieldBuilder.d.ts +0 -2
  217. package/dist/types/components/ez-form/fieldbuilder/tpl/CheckBox.tpl.d.ts +0 -3
  218. package/dist/types/components/ez-form/fieldbuilder/tpl/ComboBox.tpl.d.ts +0 -6
  219. package/dist/types/components/ez-form/fieldbuilder/tpl/DateInput.tpl.d.ts +0 -15
  220. package/dist/types/components/ez-form/fieldbuilder/tpl/FileInput.tpl.d.ts +0 -5
  221. package/dist/types/components/ez-form/fieldbuilder/tpl/NumberInput.tpl.d.ts +0 -7
  222. package/dist/types/components/ez-form/fieldbuilder/tpl/SearchInput.tpl.d.ts +0 -6
  223. package/dist/types/components/ez-form/fieldbuilder/tpl/TextArea.tpl.d.ts +0 -5
  224. package/dist/types/components/ez-form/fieldbuilder/tpl/TextInput.tpl.d.ts +0 -5
  225. package/dist/types/components/ez-form/structure/FormItem.d.ts +0 -9
  226. package/dist/types/components/ez-form/structure/FormSheet.d.ts +0 -10
  227. package/dist/types/components/ez-form/structure/FormSheetMetadata.d.ts +0 -35
  228. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/FileInput.tpl.js +0 -0
  229. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/SearchInput.tpl.js +0 -0
  230. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/TextArea.tpl.js +0 -0
  231. /package/dist/collection/components/{ez-form/fieldbuilder/tpl → ez-form-view/fieldbuilder/templates}/TextInput.tpl.js +0 -0
@@ -0,0 +1,78 @@
1
+ export declare class SubmenuControl {
2
+ constructor();
3
+ /**
4
+ * Método responsável por fechar submenus abertos e abrir o submenu desejado.
5
+ * @param menu - Item de menu selecionado para abrir o submenu.
6
+ */
7
+ show(menu: HTMLElement): void;
8
+ /**
9
+ * Método responsável por fechar um determinado submenu aberto.
10
+ * @param menu - Item de menu selecionado com o submenu aberto.
11
+ */
12
+ hide(menu: HTMLElement): void;
13
+ /**
14
+ * Método responsável por fechar todos os submenus filhos de um determinado submenu.
15
+ * @param submenu - Elemento HTML do submenu pai.
16
+ */
17
+ hideChild(submenu: HTMLElement): void;
18
+ /**
19
+ * Método responsável por posicionar o submenu na tela.
20
+ * @param menu - Item da lista selecionado para abrir o submenu.
21
+ */
22
+ setPosition(menu: HTMLElement): void;
23
+ /**
24
+ * Método responsável por controlar a altura máxima do dropdown.
25
+ * @param element - Elemento HTML pai do dropdown que será renderizado.
26
+ */
27
+ setMaxHeight(element: HTMLElement): void;
28
+ /**
29
+ * Método responsável por atribuir a classe de espaçamento entre o conteúdo e o scroll.
30
+ * @param dropdown - Elemento HTML pai do container que receberá a classe.
31
+ */
32
+ setSpacerContainer(dropdown: HTMLElement): void;
33
+ /**
34
+ * Método responsável por resetar um determinado submenu aberto.
35
+ * @param submenu - Elemento HTML do submenu que será resetado.
36
+ */
37
+ reset(submenu: HTMLElement): void;
38
+ /**
39
+ * Método responsável por resetar um determinado dropdown renderizado.
40
+ * @param dropdown - Elemento HTML do dropdown que será resetado.
41
+ */
42
+ resetDropdown(dropdown: HTMLElement): void;
43
+ /**
44
+ * Método responsável por controlar o scroll do container do submenu aberto.
45
+ * @param menu - Item da lista selecionado para abrir o submenu.
46
+ */
47
+ private setScrollContainer;
48
+ /**
49
+ * Método responsável por fechar os submenus filhos ao movimentar o scroll.
50
+ * @param event - Evento de scroll disparado pelo Elemento HTML pai.
51
+ */
52
+ private onScrollContainer;
53
+ /**
54
+ * Método responsável por retornar a posição superior (top) de um elemento HTML na tela.
55
+ * @param hostElement - Elemento HTML que será capturado o valor de sua posição superior (top) na tela.
56
+ * @returns Valor da posição superior (top) de um determinado elemento HTML.
57
+ */
58
+ private getPositionTop;
59
+ /**
60
+ * Método responsável por retornar a posição direita (right) de um elemento HTML na tela.
61
+ * @param hostElement - Elemento HTML que será capturado o valor de sua posição direita (right) na tela.
62
+ * @returns Valor da posição direita (right) de um determinado elemento HTML.
63
+ */
64
+ private getPositionRight;
65
+ /**
66
+ * Método responsável por retornar a posição esquerda (left) de um elemento HTML desconsiderando a largura de outro elemento HTML.
67
+ * @param hostElement - Elemento HTML que será capturado o valor de sua posição esquerda (left) na tela.
68
+ * @param targetElement - Elemento HTML que será capturado o valor de sua largura (width).
69
+ * @returns Valor da posição esquerda (left) de um determinado elemento HTML desconsiderando a largura de outro elemento HTML.
70
+ */
71
+ private getPositionLeft;
72
+ /**
73
+ * Método responsável por atualizar a posição de um elemento HTML que renderizou fora da tela.
74
+ * @param hostElement - Elemento HTML que será a referência de posição dentro da tela.
75
+ * @param targetElement - Elemento HTML que será reposicionado na tela.
76
+ */
77
+ private updatePosition;
78
+ }
@@ -1,5 +1,5 @@
1
1
  import { DataUnit } from "@sankhyalabs/core";
2
- import { IInvalidField } from "./ez-form";
2
+ import { IInvalidField } from "./interfaces";
3
3
  export default class DataBinder {
4
4
  private _dataUnit;
5
5
  private _fields;
@@ -0,0 +1,16 @@
1
+ import { DataUnit } from "@sankhyalabs/core";
2
+ import { IFormConfig, IFormSheetMetadata } from "./interfaces";
3
+ export declare class FormMetadata {
4
+ private _sheets;
5
+ private _requiredFields;
6
+ private _cleanOnCopyFields;
7
+ private _defaultValues;
8
+ getSheet(name: string): IFormSheetMetadata;
9
+ getAllSheets(): Map<string, IFormSheetMetadata>;
10
+ addSheet(sheet: IFormSheetMetadata): void;
11
+ getRequiredFields(): Array<string>;
12
+ getCleanOnCopyFields(): Array<string>;
13
+ getDefaultValues(): any;
14
+ }
15
+ export declare const buildFromDataUnit: (dataUnit: DataUnit) => FormMetadata;
16
+ export declare const buildFromConfig: (config: IFormConfig, dataUnit: DataUnit) => FormMetadata;
@@ -1,6 +1,9 @@
1
+ import { DUActionInterceptor, DataUnit, DataUnitAction } from "@sankhyalabs/core";
1
2
  import { EventEmitter } from "../../stencil-public-runtime";
2
- import { DataUnit, Record, DUActionInterceptor, DataUnitAction } from "@sankhyalabs/core";
3
+ import { IFormConfig, IRecordValidator } from "./interfaces";
3
4
  import { Tab } from "../ez-tabselector/ez-tabselector";
5
+ import { ITreeItem } from "../ez-tree/interfaces/ITreeItem";
6
+ import { IFormViewField } from "../ez-form-view/interfaces";
4
7
  export declare class EzForm implements DUActionInterceptor {
5
8
  private _element;
6
9
  private _store;
@@ -20,9 +23,21 @@ export declare class EzForm implements DUActionInterceptor {
20
23
  */
21
24
  recordsValidator: IRecordValidator;
22
25
  /**
23
- * Evento disparado quando o formulário está disponível na DOM.
24
- */
26
+ * Evento disparado quando o formulário está disponível na DOM.
27
+ */
25
28
  ezReady: EventEmitter<void>;
29
+ /**
30
+ * Habilita o modo de organização com vários níveis.
31
+ */
32
+ multiLevel: boolean;
33
+ /**
34
+ * Define um resolvedor de nível no modo `multiLevel`.
35
+ */
36
+ levelResolver: (items: Array<ITreeItem>) => Array<ITreeItem>;
37
+ /**
38
+ * Define um construtor. Isso permite personalizar o conteúdo do formulário
39
+ */
40
+ contentBuilder: (selectedTab: string, fields: Array<IFormViewField>) => HTMLElement | string;
26
41
  /**
27
42
  * Realiza validação no conteúdo de todos os campos.
28
43
  */
@@ -30,7 +45,10 @@ export declare class EzForm implements DUActionInterceptor {
30
45
  observeConfig(): void;
31
46
  private validateRequired;
32
47
  private processValidationResult;
48
+ private resolveLevel;
49
+ private getMultiLevelContent;
33
50
  private getDynamicContent;
51
+ private buildFormContent;
34
52
  private processMetadata;
35
53
  private isStatic;
36
54
  private getFormattedValue;
@@ -42,43 +60,3 @@ export declare class EzForm implements DUActionInterceptor {
42
60
  buildIdTabSelector(tabs: Array<Tab>): Array<Tab>;
43
61
  render(): any;
44
62
  }
45
- export interface IFieldConfig {
46
- name: string;
47
- label?: string;
48
- group?: string;
49
- tab?: string | ITabConfig;
50
- defaultValue?: IDefaultConfig;
51
- visible?: boolean;
52
- readOnly?: boolean;
53
- required?: boolean;
54
- cleanOnCopy?: boolean;
55
- }
56
- export interface IDefaultConfig {
57
- type?: string;
58
- value?: string;
59
- formattedValue?: any;
60
- }
61
- export interface ITabConfig {
62
- label: string;
63
- visible?: boolean;
64
- order?: number;
65
- }
66
- export interface IFormConfig {
67
- tabs?: Array<ITabConfig>;
68
- fields: Array<IFieldConfig>;
69
- defaultConfiguration?: boolean;
70
- }
71
- export interface IRecordValidator {
72
- validateRecord(form: EzForm, record: Record): IValidationResult;
73
- }
74
- export interface IValidationResult {
75
- isValid: boolean;
76
- invalidFields?: Array<IInvalidField>;
77
- errorTitle?: string;
78
- errorMessage?: string;
79
- infoMessage?: string;
80
- }
81
- export interface IInvalidField {
82
- name: string;
83
- message: string;
84
- }
@@ -0,0 +1,5 @@
1
+ export interface IDefaultConfig {
2
+ type?: string;
3
+ value?: string;
4
+ formattedValue?: any;
5
+ }
@@ -0,0 +1,13 @@
1
+ import { IDefaultConfig } from "./IDefaultConfig";
2
+ import { ITabConfig } from "./ITabConfig";
3
+ export interface IFieldConfig {
4
+ name: string;
5
+ label?: string;
6
+ group?: string;
7
+ tab?: string | ITabConfig;
8
+ defaultValue?: IDefaultConfig;
9
+ visible?: boolean;
10
+ readOnly?: boolean;
11
+ required?: boolean;
12
+ cleanOnCopy?: boolean;
13
+ }
@@ -0,0 +1,7 @@
1
+ import { IFieldConfig } from "./IFieldConfig";
2
+ import { ITabConfig } from "./ITabConfig";
3
+ export interface IFormConfig {
4
+ tabs?: Array<ITabConfig>;
5
+ fields: Array<IFieldConfig>;
6
+ defaultConfiguration?: boolean;
7
+ }
@@ -0,0 +1,9 @@
1
+ import { IFormViewField } from "../../ez-form-view/interfaces/IFormViewField";
2
+ export interface IFormSheetMetadata {
3
+ name: string;
4
+ label: string;
5
+ fields: Array<IFormViewField>;
6
+ requiredFields: Array<string>;
7
+ cleanOnCopyFields: Array<string>;
8
+ defaultValues: any;
9
+ }
@@ -0,0 +1,4 @@
1
+ export interface IInvalidField {
2
+ name: string;
3
+ message: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ import { Record } from "@sankhyalabs/core";
2
+ import { EzForm } from "../ez-form";
3
+ import { IValidationResult } from "./IValidationResult";
4
+ export interface IRecordValidator {
5
+ validateRecord(form: EzForm, record: Record): IValidationResult;
6
+ }
@@ -0,0 +1,5 @@
1
+ export interface ITabConfig {
2
+ label: string;
3
+ visible?: boolean;
4
+ order?: number;
5
+ }
@@ -0,0 +1,8 @@
1
+ import { IInvalidField } from "./IInvalidField";
2
+ export interface IValidationResult {
3
+ isValid: boolean;
4
+ invalidFields?: Array<IInvalidField>;
5
+ errorTitle?: string;
6
+ errorMessage?: string;
7
+ infoMessage?: string;
8
+ }
@@ -0,0 +1,8 @@
1
+ export { IDefaultConfig } from "./IDefaultConfig";
2
+ export { IFieldConfig } from "./IFieldConfig";
3
+ export { IFormConfig } from "./IFormConfig";
4
+ export { IFormSheetMetadata } from "./IFormSheetMetadata";
5
+ export { IInvalidField } from "./IInvalidField";
6
+ export { IRecordValidator } from "./IRecordValidator";
7
+ export { ITabConfig } from "./ITabConfig";
8
+ export { IValidationResult } from "./IValidationResult";
@@ -1,14 +1,16 @@
1
- import { FormMetadata, FormSheetMetadata } from "../structure/FormSheetMetadata";
1
+ import { FormMetadata } from "../FormMetadata";
2
2
  import { AnyAction } from "redux";
3
3
  import { Tab } from "../../ez-tabselector/ez-tabselector";
4
+ import { IFormSheetMetadata } from "../interfaces";
4
5
  export declare function formReducer(state: FormState, action: AnyAction): any;
5
6
  export declare function loadMetadata(formMetadata: FormMetadata): AnyAction;
6
- export declare function changeTab(currentSheet: Tab): {
7
+ export declare function changeTab(currentSheet: Tab | string): {
7
8
  type: FormActions;
8
9
  payload: string;
9
10
  };
10
11
  export declare function selectFormMetadata(state: FormState): FormMetadata;
11
- export declare function selectCurrentSheet(state: FormState): FormSheetMetadata;
12
+ export declare function selectCurrentSheetId(state: FormState): string;
13
+ export declare function selectCurrentSheet(state: FormState): IFormSheetMetadata;
12
14
  declare enum FormActions {
13
15
  METADATA_LOADED = "FORM/METADATA_LOADED",
14
16
  CHANGE_TAB = "FORM/CHANGE_TAB"
@@ -0,0 +1,2 @@
1
+ import { IFormViewField } from "../interfaces/IFormViewField";
2
+ export declare const fieldBuilder: (field: IFormViewField) => HTMLElement;
@@ -0,0 +1,3 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildSwitch: (field: IFormViewField) => HTMLElement;
3
+ export declare const buildCheckBox: (field: IFormViewField) => HTMLElement;
@@ -0,0 +1,2 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildComboBox: ({ name, label, readOnly, required, props }: IFormViewField) => HTMLElement;
@@ -0,0 +1,4 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildDate: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
3
+ export declare const buildTime: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
4
+ export declare const buildDateTime: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
@@ -0,0 +1,2 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildFile: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
@@ -0,0 +1,3 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildDecimal: ({ name, label, readOnly, props }: IFormViewField) => HTMLElement;
3
+ export declare const buildInteger: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
@@ -0,0 +1,2 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildSearch: ({ name, label, readOnly, required }: IFormViewField) => HTMLElement;
@@ -0,0 +1,2 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildTextArea: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
@@ -0,0 +1,2 @@
1
+ import { IFormViewField } from "../../interfaces/IFormViewField";
2
+ export declare const buildTextInput: ({ name, label, readOnly }: IFormViewField) => HTMLElement;
@@ -0,0 +1,10 @@
1
+ import { UserInterface } from "@sankhyalabs/core";
2
+ export interface IFormViewField {
3
+ userInterface: UserInterface;
4
+ name: string;
5
+ label?: string;
6
+ group?: string;
7
+ readOnly?: boolean;
8
+ required?: boolean;
9
+ props?: any;
10
+ }
@@ -0,0 +1 @@
1
+ export { IFormViewField } from "./IFormViewField";
@@ -5,6 +5,7 @@ export declare class EzTree {
5
5
  private _tree;
6
6
  private _visibleItems;
7
7
  private _onItemClick;
8
+ private _onIconClick;
8
9
  private _waintingForLoad;
9
10
  /**
10
11
  * Define os itens apresentados na árvore.
@@ -14,10 +15,18 @@ export declare class EzTree {
14
15
  * Define o item selecionado na árvore.
15
16
  */
16
17
  value: ITreeItem;
18
+ /**
19
+ * Forma alternativa para atribuir o item selecionado por seu ID.
20
+ */
21
+ selectedId: string;
17
22
  /**
18
23
  * Define uma função que vai resolver o ícone daquele item. Retorna o nome do ícone da lib de icones do DS.
19
24
  */
20
25
  iconResolver: (item: ITreeItem, expanded: boolean, level: number) => string;
26
+ /**
27
+ * Define uma função que vai resolver o `tooltip` ou `title` daquele item.
28
+ */
29
+ tooltipResolver: (item: ITreeItem, enabled: boolean, level: number) => string;
21
30
  /**
22
31
  * Emitido quando um item é selecionado na árvore.
23
32
  */
@@ -60,7 +69,11 @@ export declare class EzTree {
60
69
  private openClose;
61
70
  private previousLevel;
62
71
  private nextLevel;
72
+ private indexOf;
73
+ private selectNextItem;
63
74
  private nextItem;
64
75
  private previousItem;
76
+ connectedCallback(): void;
77
+ componentWillRender(): void;
65
78
  render(): any;
66
79
  }
@@ -5,6 +5,7 @@ export interface ITreeItem {
5
5
  childrenCount?: number;
6
6
  iconExpanded?: string;
7
7
  iconContracted?: string;
8
+ tooltip?: string;
8
9
  expanded?: boolean;
9
10
  disabled?: boolean;
10
11
  }
@@ -0,0 +1,2 @@
1
+ import { ITreeItem } from "../interfaces/ITreeItem";
2
+ export declare const defaultTooltipResolver: (item: ITreeItem, _enabled: boolean, _level: number) => string;
@@ -5,7 +5,9 @@ interface TreeItemProps {
5
5
  node: Node;
6
6
  selectedId: string;
7
7
  itemClick: (item: ITreeItem) => void;
8
+ iconClick: (item: ITreeItem) => void;
8
9
  iconResolver: (item: ITreeItem, expanded: boolean, level: number) => string;
10
+ tooltipResolver: (item: ITreeItem, enabled: boolean, level: number) => string;
9
11
  level?: number;
10
12
  itemsList: Array<ITreeItem>;
11
13
  }
@@ -1 +1,2 @@
1
1
  export { defaultIconResolver } from "./DefaultIconResolver";
2
+ export { defaultTooltipResolver } from "./DefaultTooltipResolver";
@@ -9,6 +9,7 @@ export declare class Node {
9
9
  private _childrenLoaded;
10
10
  private _isLazyLoad;
11
11
  constructor(tree: ITree, item?: ITreeItem, parent?: Node, isPlaceHolder?: boolean);
12
+ refresh(newItem: ITreeItem): void;
12
13
  isDisabled(): boolean;
13
14
  updateChildren(children: Array<ITreeItem>): void;
14
15
  addChild(tree: ITree, item: ITreeItem): void;
@@ -9,6 +9,7 @@ export declare class Tree extends Node implements ITree {
9
9
  setDisabled(id: string, value: boolean): void;
10
10
  isNodeDisabled(id: string, defaultValue: boolean): boolean;
11
11
  load(items: Array<ITreeItem>): void;
12
+ updateItem(item: ITreeItem): void;
12
13
  open(path: string): Promise<void>;
13
14
  walk(parent: Node, path: string, callback: (node: Node) => void, currentLevel?: number): Promise<void>;
14
15
  loadChildren(node: Node): Promise<void>;