@seniorsistemas/angular-components 18.1.0-feature-sds-276-ea560ae6 → 18.1.0-feature-sds-276-ee045828

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 (341) hide show
  1. package/bignumber-input/lib/bignumber-input/bignumber-input.directive.d.ts +1 -1
  2. package/custom-fields/lib/custom-fields/custom-fields.component.d.ts +9 -8
  3. package/custom-fields/lib/custom-fields/custom-fields.service.d.ts +4 -3
  4. package/custom-fields/lib/custom-fields/models/custom-field-type.d.ts +33 -0
  5. package/custom-fields/lib/custom-fields/models/index.d.ts +1 -0
  6. package/custom-fields/public-api.d.ts +2 -1
  7. package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/field-label/field-label.component.d.ts +3 -3
  8. package/dynamic-form/dynamic-form/components/grid/row/row.component.d.ts +22 -0
  9. package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/lookup.component.d.ts +19 -34
  10. package/dynamic-form/dynamic-form/components/structure/base-structure-component.d.ts +10 -0
  11. package/dynamic-form/dynamic-form/components/structure/fieldset/fieldset.component.d.ts +12 -0
  12. package/dynamic-form/dynamic-form/components/structure/section/section.component.d.ts +14 -0
  13. package/dynamic-form/dynamic-form/configurations/registry.d.ts +8 -0
  14. package/dynamic-form/dynamic-form/configurations/structure/fieldset.d.ts +11 -0
  15. package/dynamic-form/dynamic-form/configurations/structure/row.d.ts +21 -0
  16. package/dynamic-form/{lib/dynamic-form → dynamic-form}/configurations/structure/section.d.ts +9 -8
  17. package/dynamic-form/dynamic-form/configurations/structure/structure.d.ts +11 -0
  18. package/dynamic-form/dynamic-form/dynamic-form.component.d.ts +19 -0
  19. package/dynamic-form/dynamic-form/dynamic-form.d.ts +39 -0
  20. package/dynamic-form/{lib/dynamic-form → dynamic-form}/dynamic-form.directive.d.ts +6 -12
  21. package/dynamic-form/dynamic-form/dynamic-form.module.d.ts +79 -0
  22. package/dynamic-form/dynamic-form/form-field/configurations/field-size.d.ts +13 -0
  23. package/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +21 -0
  24. package/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +28 -0
  25. package/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.d.ts +28 -0
  26. package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +21 -0
  27. package/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +12 -0
  28. package/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.d.ts +16 -0
  29. package/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +33 -0
  30. package/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +11 -0
  31. package/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.d.ts +18 -0
  32. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/country-phone-picker-field.d.ts +6 -7
  33. package/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.d.ts +15 -0
  34. package/dynamic-form/dynamic-form/form-field/configurations/fields/field.d.ts +43 -0
  35. package/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +56 -0
  36. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/number-field.d.ts +9 -22
  37. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/password-field.d.ts +8 -20
  38. package/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +24 -0
  39. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/configurations/fields/radio-button-field.d.ts +7 -9
  40. package/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.d.ts +33 -0
  41. package/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.d.ts +24 -0
  42. package/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +16 -0
  43. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +18 -0
  44. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-ia-field.d.ts +19 -0
  45. package/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.d.ts +31 -0
  46. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/autocomplete/autocomplete-field.component.d.ts +9 -6
  47. package/dynamic-form/dynamic-form/form-field/fields/base-field-component.d.ts +7 -0
  48. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/bignumber/bignumber-field.component.d.ts +8 -8
  49. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/boolean/boolean-radio-field/boolean-field.component.d.ts +4 -4
  50. package/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.d.ts +10 -0
  51. package/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.d.ts +11 -0
  52. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/calendar/calendar-field.component.d.ts +10 -10
  53. package/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.d.ts +10 -0
  54. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/chips/chips-field.component.d.ts +5 -5
  55. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/country-phone-picker/country-phone-picker-field.component.d.ts +4 -4
  56. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/currency/currency-field.component.d.ts +10 -6
  57. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/file-upload/file-upload-field.component.d.ts +7 -6
  58. package/dynamic-form/dynamic-form/form-field/fields/lookup/lookup-field.component.d.ts +18 -0
  59. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/number/number-field.component.d.ts +8 -9
  60. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/password/password-field.component.d.ts +8 -6
  61. package/dynamic-form/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.d.ts +10 -0
  62. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/radio-button/radio-button-field.component.d.ts +5 -5
  63. package/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.d.ts +12 -0
  64. package/dynamic-form/dynamic-form/form-field/fields/slider/slider-field.component.d.ts +23 -0
  65. package/dynamic-form/dynamic-form/form-field/fields/star-rating/star-rating-field.component.d.ts +11 -0
  66. package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/fields/text/text-field.component.d.ts +8 -8
  67. package/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +18 -0
  68. package/dynamic-form/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.d.ts +15 -0
  69. package/dynamic-form/dynamic-form/services/form-field-utils.service.d.ts +15 -0
  70. package/dynamic-form/public-api.d.ts +35 -43
  71. package/dynamic-form/src/optional-fields/editor/editor-field/editor-field.component.d.ts +10 -0
  72. package/dynamic-form/src/optional-fields/editor/editor-field.d.ts +15 -0
  73. package/dynamic-form/src/optional-fields/editor/index.d.ts +5 -0
  74. package/dynamic-form/src/optional-fields/editor/public-api.d.ts +1 -0
  75. package/esm2022/autocomplete/lib/autocomplete/autocomplete.component.mjs +3 -3
  76. package/esm2022/bignumber-input/lib/bignumber-input/bignumber-input.directive.mjs +8 -6
  77. package/esm2022/custom-fields/lib/custom-fields/custom-fields.component.mjs +68 -69
  78. package/esm2022/custom-fields/lib/custom-fields/custom-fields.service.mjs +5 -5
  79. package/esm2022/custom-fields/lib/custom-fields/models/custom-field-type.mjs +26 -1
  80. package/esm2022/custom-fields/lib/custom-fields/models/index.mjs +2 -0
  81. package/esm2022/custom-fields/public-api.mjs +3 -2
  82. package/esm2022/dynamic-form/dynamic-form/components/field-label/field-label.component.mjs +21 -0
  83. package/esm2022/dynamic-form/dynamic-form/components/grid/row/row.component.mjs +39 -0
  84. package/esm2022/dynamic-form/dynamic-form/components/lookup/lookup.component.mjs +661 -0
  85. package/esm2022/dynamic-form/dynamic-form/components/lookup/types/default-filter.mjs +2 -0
  86. package/esm2022/dynamic-form/dynamic-form/components/lookup/types/label-options.mjs +2 -0
  87. package/esm2022/dynamic-form/dynamic-form/components/structure/base-structure-component.mjs +2 -0
  88. package/esm2022/dynamic-form/dynamic-form/components/structure/fieldset/fieldset.component.mjs +17 -0
  89. package/esm2022/dynamic-form/dynamic-form/components/structure/section/section.component.mjs +23 -0
  90. package/esm2022/dynamic-form/dynamic-form/configurations/registry.mjs +12 -0
  91. package/esm2022/dynamic-form/dynamic-form/configurations/structure/fieldset.mjs +2 -0
  92. package/esm2022/dynamic-form/dynamic-form/configurations/structure/row.mjs +2 -0
  93. package/esm2022/dynamic-form/dynamic-form/configurations/structure/section.mjs +2 -0
  94. package/esm2022/dynamic-form/dynamic-form/configurations/structure/structure.mjs +2 -0
  95. package/esm2022/dynamic-form/dynamic-form/dynamic-form.component.mjs +37 -0
  96. package/esm2022/dynamic-form/dynamic-form/dynamic-form.directive.mjs +74 -0
  97. package/esm2022/dynamic-form/dynamic-form/dynamic-form.mjs +81 -0
  98. package/esm2022/dynamic-form/dynamic-form/dynamic-form.module.mjs +283 -0
  99. package/esm2022/dynamic-form/dynamic-form/form-field/addon-config.mjs +2 -0
  100. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/field-size.mjs +19 -0
  101. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +2 -0
  102. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +2 -0
  103. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/blob-field.mjs +2 -0
  104. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-field.mjs +2 -0
  105. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +2 -0
  106. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/button-field.mjs +2 -0
  107. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/calendar-field.mjs +2 -0
  108. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +2 -0
  109. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/chips-field.mjs +2 -0
  110. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +2 -0
  111. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/currency-field.mjs +2 -0
  112. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/field.mjs +2 -0
  113. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/lookup-field.mjs +2 -0
  114. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/number-field.mjs +2 -0
  115. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/password-field.mjs +2 -0
  116. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/profile-picture.mjs +2 -0
  117. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +9 -0
  118. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/select-field.mjs +2 -0
  119. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/slider-field.mjs +2 -0
  120. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +2 -0
  121. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-field.mjs +2 -0
  122. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-area-ia-field.mjs +2 -0
  123. package/esm2022/dynamic-form/dynamic-form/form-field/configurations/fields/text-field.mjs +2 -0
  124. package/esm2022/dynamic-form/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +41 -0
  125. package/esm2022/dynamic-form/dynamic-form/form-field/fields/base-field-component.mjs +2 -0
  126. package/esm2022/dynamic-form/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +119 -0
  127. package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +21 -0
  128. package/esm2022/dynamic-form/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +17 -0
  129. package/esm2022/dynamic-form/dynamic-form/form-field/fields/button-field/button-field.component.mjs +28 -0
  130. package/esm2022/dynamic-form/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +123 -0
  131. package/esm2022/dynamic-form/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +15 -0
  132. package/esm2022/dynamic-form/dynamic-form/form-field/fields/chips/chips-field.component.mjs +53 -0
  133. package/esm2022/dynamic-form/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +23 -0
  134. package/esm2022/dynamic-form/dynamic-form/form-field/fields/currency/currency-field.component.mjs +99 -0
  135. package/esm2022/dynamic-form/dynamic-form/form-field/fields/file-upload/file-upload-field.component.mjs +47 -0
  136. package/esm2022/dynamic-form/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +40 -0
  137. package/esm2022/dynamic-form/dynamic-form/form-field/fields/number/number-field.component.mjs +114 -0
  138. package/esm2022/dynamic-form/dynamic-form/form-field/fields/password/password-field.component.mjs +73 -0
  139. package/esm2022/dynamic-form/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +16 -0
  140. package/esm2022/dynamic-form/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +49 -0
  141. package/esm2022/dynamic-form/dynamic-form/form-field/fields/select/select-field.component.mjs +19 -0
  142. package/esm2022/dynamic-form/dynamic-form/form-field/fields/slider/slider-field.component.mjs +113 -0
  143. package/esm2022/dynamic-form/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +21 -0
  144. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text/text-field.component.mjs +79 -0
  145. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +34 -0
  146. package/esm2022/dynamic-form/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.mjs +27 -0
  147. package/esm2022/dynamic-form/dynamic-form/services/form-field-utils.service.mjs +39 -0
  148. package/esm2022/dynamic-form/public-api.mjs +61 -44
  149. package/esm2022/dynamic-form/seniorsistemas-angular-components-dynamic-form.mjs +1 -1
  150. package/esm2022/dynamic-form/src/optional-fields/editor/editor-field/editor-field.component.mjs +18 -0
  151. package/esm2022/dynamic-form/src/optional-fields/editor/editor-field.mjs +2 -0
  152. package/esm2022/dynamic-form/src/optional-fields/editor/public-api.mjs +5 -0
  153. package/esm2022/dynamic-form/src/optional-fields/editor/seniorsistemas-angular-components-dynamic-form-src-optional-fields-editor.mjs +5 -0
  154. package/esm2022/file-upload/lib/file-upload/file-upload.component.mjs +5 -5
  155. package/esm2022/inline-edit/lib/inline-edit/components/fields/inline-edit-text-area-ia/inline-edit-text-area-ia.component.mjs +1 -1
  156. package/esm2022/select/lib/select/select.component.mjs +3 -3
  157. package/esm2022/table/lib/table/table-column/models/dynamic-editable-grid.interface.mjs +1 -1
  158. package/esm2022/text-area-ia/lib/text-area-ia/text-area-ia.component.mjs +6 -6
  159. package/esm2022/tiered-menu/lib/tiered-menu/components/tiered-menu/tiered-menu.component.mjs +3 -3
  160. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs +2 -2
  161. package/fesm2022/seniorsistemas-angular-components-autocomplete.mjs.map +1 -1
  162. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs +7 -5
  163. package/fesm2022/seniorsistemas-angular-components-bignumber-input.mjs.map +1 -1
  164. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs +95 -71
  165. package/fesm2022/seniorsistemas-angular-components-custom-fields.mjs.map +1 -1
  166. package/fesm2022/seniorsistemas-angular-components-dynamic-form-src-optional-fields-editor.mjs +25 -0
  167. package/fesm2022/seniorsistemas-angular-components-dynamic-form-src-optional-fields-editor.mjs.map +1 -0
  168. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +871 -2437
  169. package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
  170. package/fesm2022/seniorsistemas-angular-components-file-upload.mjs +4 -4
  171. package/fesm2022/seniorsistemas-angular-components-file-upload.mjs.map +1 -1
  172. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +1 -1
  173. package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
  174. package/fesm2022/seniorsistemas-angular-components-select.mjs +2 -2
  175. package/fesm2022/seniorsistemas-angular-components-select.mjs.map +1 -1
  176. package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs +5 -5
  177. package/fesm2022/seniorsistemas-angular-components-text-area-ia.mjs.map +1 -1
  178. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs +2 -2
  179. package/fesm2022/seniorsistemas-angular-components-tiered-menu.mjs.map +1 -1
  180. package/file-upload/lib/file-upload/file-upload.component.d.ts +2 -2
  181. package/package.json +12 -18
  182. package/table/lib/table/table-column/models/dynamic-editable-grid.interface.d.ts +2 -2
  183. package/text-area-ia/lib/text-area-ia/text-area-ia.component.d.ts +2 -1
  184. package/dynamic-form/lib/dynamic-form/components/grid/row/row.component.d.ts +0 -15
  185. package/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.d.ts +0 -8
  186. package/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.d.ts +0 -12
  187. package/dynamic-form/lib/dynamic-form/components/structure/section/section.component.d.ts +0 -14
  188. package/dynamic-form/lib/dynamic-form/configurations/dynamic-config.d.ts +0 -3
  189. package/dynamic-form/lib/dynamic-form/configurations/dynamic-type.d.ts +0 -24
  190. package/dynamic-form/lib/dynamic-form/configurations/grid/grid.d.ts +0 -14
  191. package/dynamic-form/lib/dynamic-form/configurations/grid/row.d.ts +0 -8
  192. package/dynamic-form/lib/dynamic-form/configurations/grid-type.d.ts +0 -3
  193. package/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.d.ts +0 -10
  194. package/dynamic-form/lib/dynamic-form/configurations/structure/structure.d.ts +0 -14
  195. package/dynamic-form/lib/dynamic-form/configurations/structure-type.d.ts +0 -4
  196. package/dynamic-form/lib/dynamic-form/dynamic-form.component.d.ts +0 -19
  197. package/dynamic-form/lib/dynamic-form/dynamic-form.d.ts +0 -57
  198. package/dynamic-form/lib/dynamic-form/dynamic-form.module.d.ts +0 -83
  199. package/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.d.ts +0 -7
  200. package/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.d.ts +0 -32
  201. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.d.ts +0 -30
  202. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.d.ts +0 -38
  203. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.d.ts +0 -43
  204. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.d.ts +0 -29
  205. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.d.ts +0 -11
  206. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.d.ts +0 -34
  207. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.d.ts +0 -45
  208. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.d.ts +0 -9
  209. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.d.ts +0 -24
  210. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.d.ts +0 -9
  211. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.d.ts +0 -14
  212. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.d.ts +0 -18
  213. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.d.ts +0 -96
  214. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +0 -97
  215. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.d.ts +0 -35
  216. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.d.ts +0 -41
  217. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.d.ts +0 -32
  218. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.d.ts +0 -17
  219. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.d.ts +0 -24
  220. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.d.ts +0 -26
  221. package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.d.ts +0 -41
  222. package/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.d.ts +0 -32
  223. package/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.d.ts +0 -10
  224. package/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.d.ts +0 -10
  225. package/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.d.ts +0 -10
  226. package/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.d.ts +0 -10
  227. package/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.d.ts +0 -9
  228. package/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.d.ts +0 -9
  229. package/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.d.ts +0 -10
  230. package/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.d.ts +0 -25
  231. package/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.d.ts +0 -10
  232. package/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.d.ts +0 -14
  233. package/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.d.ts +0 -9
  234. package/dynamic-form/lib/dynamic-form/form-field/form-field.d.ts +0 -192
  235. package/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.d.ts +0 -12
  236. package/esm2022/dynamic-form/lib/dynamic-form/components/field-label/field-label.component.mjs +0 -20
  237. package/esm2022/dynamic-form/lib/dynamic-form/components/grid/row/row.component.mjs +0 -41
  238. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/lookup.component.mjs +0 -642
  239. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/default-filter.mjs +0 -2
  240. package/esm2022/dynamic-form/lib/dynamic-form/components/lookup/types/label-options.mjs +0 -2
  241. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/base-structure-component.mjs +0 -2
  242. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/fieldset/fieldset.component.mjs +0 -27
  243. package/esm2022/dynamic-form/lib/dynamic-form/components/structure/section/section.component.mjs +0 -33
  244. package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-config.mjs +0 -71
  245. package/esm2022/dynamic-form/lib/dynamic-form/configurations/dynamic-type.mjs +0 -26
  246. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/grid.mjs +0 -14
  247. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid/row.mjs +0 -10
  248. package/esm2022/dynamic-form/lib/dynamic-form/configurations/grid-type.mjs +0 -5
  249. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/fieldset.mjs +0 -10
  250. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/section.mjs +0 -31
  251. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure/structure.mjs +0 -9
  252. package/esm2022/dynamic-form/lib/dynamic-form/configurations/structure-type.mjs +0 -6
  253. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.component.mjs +0 -41
  254. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.directive.mjs +0 -107
  255. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.mjs +0 -189
  256. package/esm2022/dynamic-form/lib/dynamic-form/dynamic-form.module.mjs +0 -293
  257. package/esm2022/dynamic-form/lib/dynamic-form/form-field/addon-config.mjs +0 -2
  258. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-size.mjs +0 -13
  259. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/field-type.mjs +0 -34
  260. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/autocomplete-field.mjs +0 -24
  261. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/bignumber-field.mjs +0 -37
  262. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/blob-field.mjs +0 -31
  263. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-field.mjs +0 -30
  264. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/boolean-switch-field.mjs +0 -15
  265. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/button-field.mjs +0 -47
  266. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/calendar-field.mjs +0 -56
  267. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/checkbox-field.mjs +0 -9
  268. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/chips-field.mjs +0 -25
  269. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/country-phone-picker-field.mjs +0 -15
  270. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/currency-field.mjs +0 -14
  271. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/decimal-field.mjs +0 -16
  272. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/editor-field.mjs +0 -15
  273. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/field.mjs +0 -64
  274. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.mjs +0 -66
  275. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/number-field.mjs +0 -38
  276. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/password-field.mjs +0 -33
  277. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/profile-picture.mjs +0 -35
  278. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/radio-button-field.mjs +0 -27
  279. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/select-field.mjs +0 -43
  280. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/slider-field.mjs +0 -30
  281. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/star-rating-field.mjs +0 -17
  282. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-field.mjs +0 -30
  283. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-area-ia-field.mjs +0 -32
  284. package/esm2022/dynamic-form/lib/dynamic-form/form-field/configurations/fields/text-field.mjs +0 -38
  285. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/autocomplete/autocomplete-field.component.mjs +0 -37
  286. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/base-field-component.mjs +0 -22
  287. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/bignumber/bignumber-field.component.mjs +0 -124
  288. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-radio-field/boolean-field.component.mjs +0 -27
  289. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/boolean/boolean-switch-field/boolean-switch-field.component.mjs +0 -23
  290. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/button-field/button-field.component.mjs +0 -31
  291. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/calendar/calendar-field.component.mjs +0 -118
  292. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/checkbox/checkbox-field.component.mjs +0 -21
  293. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/chips/chips-field.component.mjs +0 -59
  294. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/country-phone-picker/country-phone-picker-field.component.mjs +0 -29
  295. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/currency/currency-field.component.mjs +0 -100
  296. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/editor/editor-field.component.mjs +0 -23
  297. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/file-upload/file-upload-field.component.mjs +0 -56
  298. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/lookup/lookup-field.component.mjs +0 -23
  299. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/number/number-field.component.mjs +0 -121
  300. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/password/password-field.component.mjs +0 -75
  301. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/profile-picture/profile-picture-field.component.mjs +0 -22
  302. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/radio-button/radio-button-field.component.mjs +0 -52
  303. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/select/select-field.component.mjs +0 -24
  304. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/slider/slider-field.component.mjs +0 -103
  305. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/star-rating/star-rating-field.component.mjs +0 -25
  306. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text/text-field.component.mjs +0 -88
  307. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area/text-area-field.component.mjs +0 -29
  308. package/esm2022/dynamic-form/lib/dynamic-form/form-field/fields/text-area-ia/text-area-ia-field.component.mjs +0 -22
  309. package/esm2022/dynamic-form/lib/dynamic-form/form-field/form-field.mjs +0 -243
  310. package/esm2022/dynamic-form/lib/dynamic-form/services/dynamic-form-cache.mjs +0 -150
  311. package/esm2022/form-dynamic/components/form-dynamic/form-dynamic.component.mjs +0 -53
  312. package/esm2022/form-dynamic/core/registry.mjs +0 -10
  313. package/esm2022/form-dynamic/fields-basic/boolean-field/boolean-field.component.mjs +0 -15
  314. package/esm2022/form-dynamic/fields-basic/string-field/string-field.component.mjs +0 -15
  315. package/esm2022/form-dynamic/optional-fields/editor/editor-field/editor-field.component.mjs +0 -30
  316. package/esm2022/form-dynamic/optional-fields/editor/editor-types.mjs +0 -2
  317. package/esm2022/form-dynamic/optional-fields/editor/public-api.mjs +0 -6
  318. package/esm2022/form-dynamic/optional-fields/editor/seniorsistemas-angular-components-form-dynamic-optional-fields-editor.mjs +0 -5
  319. package/esm2022/form-dynamic/public-api.mjs +0 -10
  320. package/esm2022/form-dynamic/schemas/field-dynamic.mjs +0 -2
  321. package/esm2022/form-dynamic/schemas/form-dynamic-schema.mjs +0 -2
  322. package/esm2022/form-dynamic/seniorsistemas-angular-components-form-dynamic.mjs +0 -5
  323. package/fesm2022/seniorsistemas-angular-components-form-dynamic-optional-fields-editor.mjs +0 -40
  324. package/fesm2022/seniorsistemas-angular-components-form-dynamic-optional-fields-editor.mjs.map +0 -1
  325. package/fesm2022/seniorsistemas-angular-components-form-dynamic.mjs +0 -94
  326. package/fesm2022/seniorsistemas-angular-components-form-dynamic.mjs.map +0 -1
  327. package/form-dynamic/components/form-dynamic/form-dynamic.component.d.ts +0 -15
  328. package/form-dynamic/core/registry.d.ts +0 -7
  329. package/form-dynamic/fields-basic/boolean-field/boolean-field.component.d.ts +0 -9
  330. package/form-dynamic/fields-basic/string-field/string-field.component.d.ts +0 -9
  331. package/form-dynamic/index.d.ts +0 -5
  332. package/form-dynamic/optional-fields/editor/editor-field/editor-field.component.d.ts +0 -15
  333. package/form-dynamic/optional-fields/editor/editor-types.d.ts +0 -8
  334. package/form-dynamic/optional-fields/editor/index.d.ts +0 -5
  335. package/form-dynamic/optional-fields/editor/public-api.d.ts +0 -8
  336. package/form-dynamic/public-api.d.ts +0 -4
  337. package/form-dynamic/schemas/field-dynamic.d.ts +0 -20
  338. package/form-dynamic/schemas/form-dynamic-schema.d.ts +0 -4
  339. /package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/types/default-filter.d.ts +0 -0
  340. /package/dynamic-form/{lib/dynamic-form → dynamic-form}/components/lookup/types/label-options.d.ts +0 -0
  341. /package/dynamic-form/{lib/dynamic-form → dynamic-form}/form-field/addon-config.d.ts +0 -0
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1maWx0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvbG9va3VwL3R5cGVzL2RlZmF1bHQtZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBEZWZhdWx0RmlsdGVyID0ge1xuICAgIGZpZWxkOiBzdHJpbmc7XG4gICAgdmFsdWU6IHN0cmluZyB8ICgoKSA9PiBzdHJpbmcpO1xufVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vY29tcG9uZW50cy9sb29rdXAvdHlwZXMvbGFiZWwtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgTGFiZWxPcHRpb25zID0ge1xuICAgIHJlY29yZHNMYWJlbDogc3RyaW5nO1xuICAgIHJlY29yZExhYmVsOiBzdHJpbmc7XG4gICAgZW1wdHlGaWVsZExhYmVsOiBzdHJpbmc7XG4gICAgc2VsZWN0TGFiZWw6IHN0cmluZztcbiAgICBjYW5jZWxMYWJlbDogc3RyaW5nO1xuICAgIGNsZWFyTGFiZWw6IHN0cmluZztcbiAgICBmaWx0ZXJMYWJlbDogc3RyaW5nO1xuICAgIGZpbHRlclRpdGxlOiBzdHJpbmc7XG4gICAgc2VhcmNoVG90YWxSZWNvcmRzTGFiZWw6IHN0cmluZztcbiAgICBzZWFyY2hFbXB0eVRpdGxlOiBzdHJpbmc7XG4gICAgc2VhcmNoVGl0bGU6IHN0cmluZztcbn0iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zdHJ1Y3R1cmUtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL3N0cnVjdHVyZS9iYXNlLXN0cnVjdHVyZS1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGRzZXRDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUvZmllbGRzZXQnO1xuaW1wb3J0IHsgUm93Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3Jvdyc7XG5pbXBvcnQgeyBTZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3NlY3Rpb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VTdHJ1Y3R1cmVDb21wb25lbnRDb25maWcge1xuICAgIGNvbmZpZzogU2lnbmFsPEZpZWxkc2V0Q29uZmlnIHwgU2VjdGlvbkNvbmZpZyB8IFJvd0NvbmZpZz47XG4gICAgZ3JvdXA6IFNpZ25hbDxGb3JtR3JvdXA+O1xuICAgIGVycm9yTWVzc2FnZXM6IFNpZ25hbDxhbnk+O1xufVxuXG4iXX0=
@@ -0,0 +1,17 @@
1
+ import { Component, input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@seniorsistemas/angular-components/fieldset";
4
+ import * as i2 from "../../../dynamic-form.directive";
5
+ export class FieldsetComponent {
6
+ id = input();
7
+ config = input.required();
8
+ group = input.required();
9
+ errorMessages = input();
10
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FieldsetComponent, selector: "ng-component", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let _config = config();\n<s-fieldset\n [toggleable]=\"true\"\n (onBeforeToggle)=\"_config.beforeToggle ? _config.beforeToggle($event) : null\"\n (onAfterToggle)=\"_config.afterToggle ? _config.afterToggle($event) : null\"\n [legend]=\"_config.header ? _config.header : ''\"\n>\n @for (conf of _config.configs; let i = $index; track i) {\n <ng-container\n *sDynamicForm=\"{ id: id(), config: conf, group: group(), errorMessages: errorMessages() }\"\n ></ng-container>\n }\n</s-fieldset>\n\n", dependencies: [{ kind: "component", type: i1.FieldsetComponent, selector: "s-fieldset", inputs: ["legend", "toggleable", "icon", "destroyOnHide"], outputs: ["beforeToggle", "afterToggle"] }, { kind: "directive", type: i2.DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }] });
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FieldsetComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ template: "@let _config = config();\n<s-fieldset\n [toggleable]=\"true\"\n (onBeforeToggle)=\"_config.beforeToggle ? _config.beforeToggle($event) : null\"\n (onAfterToggle)=\"_config.afterToggle ? _config.afterToggle($event) : null\"\n [legend]=\"_config.header ? _config.header : ''\"\n>\n @for (conf of _config.configs; let i = $index; track i) {\n <ng-container\n *sDynamicForm=\"{ id: id(), config: conf, group: group(), errorMessages: errorMessages() }\"\n ></ng-container>\n }\n</s-fieldset>\n\n" }]
16
+ }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL3N0cnVjdHVyZS9maWVsZHNldC9maWVsZHNldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvc3RydWN0dXJlL2ZpZWxkc2V0L2ZpZWxkc2V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBU2pELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsRUFBRSxHQUFHLEtBQUssRUFBVSxDQUFDO0lBQ3JCLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFrQixDQUFDO0lBQzFDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7SUFDcEMsYUFBYSxHQUFHLEtBQUssRUFBTyxDQUFDO3dHQUpwQixpQkFBaUI7NEZBQWpCLGlCQUFpQixnakJDVDlCLHVoQkFjQTs7NEZETGEsaUJBQWlCO2tCQUg3QixTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBGaWVsZHNldENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9maWVsZHNldCc7XG5pbXBvcnQgeyBCYXNlU3RydWN0dXJlQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnLi4vYmFzZS1zdHJ1Y3R1cmUtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkc2V0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgRmllbGRzZXRDb21wb25lbnQgaW1wbGVtZW50cyBCYXNlU3RydWN0dXJlQ29tcG9uZW50Q29uZmlnIHtcbiAgICBpZCA9IGlucHV0PHN0cmluZz4oKTtcbiAgICBjb25maWcgPSBpbnB1dC5yZXF1aXJlZDxGaWVsZHNldENvbmZpZz4oKTtcbiAgICBncm91cCA9IGlucHV0LnJlcXVpcmVkPEZvcm1Hcm91cD4oKTtcbiAgICBlcnJvck1lc3NhZ2VzID0gaW5wdXQ8YW55PigpO1xufVxuXG4iLCJAbGV0IF9jb25maWcgPSBjb25maWcoKTtcbjxzLWZpZWxkc2V0XG4gICAgW3RvZ2dsZWFibGVdPVwidHJ1ZVwiXG4gICAgKG9uQmVmb3JlVG9nZ2xlKT1cIl9jb25maWcuYmVmb3JlVG9nZ2xlID8gX2NvbmZpZy5iZWZvcmVUb2dnbGUoJGV2ZW50KSA6IG51bGxcIlxuICAgIChvbkFmdGVyVG9nZ2xlKT1cIl9jb25maWcuYWZ0ZXJUb2dnbGUgPyBfY29uZmlnLmFmdGVyVG9nZ2xlKCRldmVudCkgOiBudWxsXCJcbiAgICBbbGVnZW5kXT1cIl9jb25maWcuaGVhZGVyID8gX2NvbmZpZy5oZWFkZXIgOiAnJ1wiXG4+XG4gICAgQGZvciAoY29uZiBvZiBfY29uZmlnLmNvbmZpZ3M7IGxldCBpID0gJGluZGV4OyB0cmFjayBpKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCgpLCBjb25maWc6IGNvbmYsIGdyb3VwOiBncm91cCgpLCBlcnJvck1lc3NhZ2VzOiBlcnJvck1lc3NhZ2VzKCkgfVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG48L3MtZmllbGRzZXQ+XG5cbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { Component, input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../../../dynamic-form.directive";
4
+ export class SectionComponent {
5
+ id = input();
6
+ config = input.required();
7
+ group = input.required();
8
+ errorMessages = input();
9
+ get flexContainer() {
10
+ return this.config().isFlex;
11
+ }
12
+ get configs() {
13
+ const _configs = this.config().configs || [];
14
+ return _configs.filter((x) => x.visible === undefined || x.visible());
15
+ }
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
17
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SectionComponent, selector: "s-section", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let _config = config();\n\n@if (_config.header) {\n <h3 class=\"sds-section-title\">\n {{ _config.header }}\n </h3>\n}\n\n<section\n [class.flex-container]=\"flexContainer\"\n [style.justify-content]=\"_config.justifyContent\"\n [style.align-items]=\"_config.alignItems\"\n>\n @for (conf of configs; let i = $index; track i) {\n <ng-container\n *sDynamicForm=\"{ id: id(), config: conf, group: group(), errorMessages: errorMessages() }\"\n ></ng-container>\n }\n</section>\n\n", styles: [".flex-container{display:flex}:host{height:100%}section{height:100%}\n"], dependencies: [{ kind: "directive", type: i1.DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }] });
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SectionComponent, decorators: [{
20
+ type: Component,
21
+ args: [{ selector: 's-section', template: "@let _config = config();\n\n@if (_config.header) {\n <h3 class=\"sds-section-title\">\n {{ _config.header }}\n </h3>\n}\n\n<section\n [class.flex-container]=\"flexContainer\"\n [style.justify-content]=\"_config.justifyContent\"\n [style.align-items]=\"_config.alignItems\"\n>\n @for (conf of configs; let i = $index; track i) {\n <ng-container\n *sDynamicForm=\"{ id: id(), config: conf, group: group(), errorMessages: errorMessages() }\"\n ></ng-container>\n }\n</section>\n\n", styles: [".flex-container{display:flex}:host{height:100%}section{height:100%}\n"] }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvc3RydWN0dXJlL3NlY3Rpb24vc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2NvbXBvbmVudHMvc3RydWN0dXJlL3NlY3Rpb24vc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBVWpELE1BQU0sT0FBTyxnQkFBZ0I7SUFDekIsRUFBRSxHQUFHLEtBQUssRUFBVSxDQUFDO0lBQ3JCLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFpQixDQUFDO0lBQ3pDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7SUFFcEMsYUFBYSxHQUFHLEtBQUssRUFBTyxDQUFDO0lBRTdCLElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1AsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDN0MsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLFNBQVMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUMvRSxDQUFDO3dHQWRRLGdCQUFnQjs0RkFBaEIsZ0JBQWdCLDZpQkNWN0Isb2hCQW9CQTs7NEZEVmEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNJLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWN0aW9uQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3NlY3Rpb24nO1xuaW1wb3J0IHsgQmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZyB9IGZyb20gJy4uL2Jhc2Utc3RydWN0dXJlLWNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncy1zZWN0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VjdGlvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZyB7XG4gICAgaWQgPSBpbnB1dDxzdHJpbmc+KCk7XG4gICAgY29uZmlnID0gaW5wdXQucmVxdWlyZWQ8U2VjdGlvbkNvbmZpZz4oKTtcbiAgICBncm91cCA9IGlucHV0LnJlcXVpcmVkPEZvcm1Hcm91cD4oKTtcblxuICAgIGVycm9yTWVzc2FnZXMgPSBpbnB1dDxhbnk+KCk7XG5cbiAgICBnZXQgZmxleENvbnRhaW5lcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnKCkuaXNGbGV4O1xuICAgIH1cblxuICAgIGdldCBjb25maWdzKCkge1xuICAgICAgICBjb25zdCBfY29uZmlncyA9IHRoaXMuY29uZmlnKCkuY29uZmlncyB8fCBbXTtcbiAgICAgICAgcmV0dXJuIF9jb25maWdzLmZpbHRlcigoeDogYW55KSA9PiB4LnZpc2libGUgPT09IHVuZGVmaW5lZCB8fCB4LnZpc2libGUoKSk7XG4gICAgfVxufVxuXG4iLCJAbGV0IF9jb25maWcgPSBjb25maWcoKTtcblxuQGlmIChfY29uZmlnLmhlYWRlcikge1xuICAgIDxoMyBjbGFzcz1cInNkcy1zZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgIHt7IF9jb25maWcuaGVhZGVyIH19XG4gICAgPC9oMz5cbn1cblxuPHNlY3Rpb25cbiAgICBbY2xhc3MuZmxleC1jb250YWluZXJdPVwiZmxleENvbnRhaW5lclwiXG4gICAgW3N0eWxlLmp1c3RpZnktY29udGVudF09XCJfY29uZmlnLmp1c3RpZnlDb250ZW50XCJcbiAgICBbc3R5bGUuYWxpZ24taXRlbXNdPVwiX2NvbmZpZy5hbGlnbkl0ZW1zXCJcbj5cbiAgICBAZm9yIChjb25mIG9mIGNvbmZpZ3M7IGxldCBpID0gJGluZGV4OyB0cmFjayBpKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpzRHluYW1pY0Zvcm09XCJ7IGlkOiBpZCgpLCBjb25maWc6IGNvbmYsIGdyb3VwOiBncm91cCgpLCBlcnJvck1lc3NhZ2VzOiBlcnJvck1lc3NhZ2VzKCkgfVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICB9XG48L3NlY3Rpb24+XG5cbiJdfQ==
@@ -0,0 +1,12 @@
1
+ export class FormDynamicRegistry {
2
+ static fields = new Map();
3
+ static registerField(component, ...types) {
4
+ types.forEach((type) => {
5
+ this.fields.set(type, component);
6
+ });
7
+ }
8
+ static resolveField(type) {
9
+ return this.fields.get(type);
10
+ }
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2NvbmZpZ3VyYXRpb25zL3JlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxtQkFBbUI7SUFDcEIsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBd0MsQ0FBQztJQUV4RSxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQW9CLEVBQUUsR0FBRyxLQUFvQztRQUM5RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBK0I7UUFDL0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnLi4vZm9ybS1maWVsZC9jb25maWd1cmF0aW9ucy9maWVsZHMvZmllbGQnO1xuaW1wb3J0IHsgU3RydWN0dXJlVHlwZSB9IGZyb20gJy4vc3RydWN0dXJlL3N0cnVjdHVyZSc7XG5cbmV4cG9ydCBjbGFzcyBGb3JtRHluYW1pY1JlZ2lzdHJ5IHtcbiAgICBwcml2YXRlIHN0YXRpYyBmaWVsZHMgPSBuZXcgTWFwPEZpZWxkVHlwZSB8IFN0cnVjdHVyZVR5cGUsIFR5cGU8YW55Pj4oKTtcblxuICAgIHN0YXRpYyByZWdpc3RlckZpZWxkKGNvbXBvbmVudDogVHlwZTxhbnk+LCAuLi50eXBlczogKEZpZWxkVHlwZSB8IFN0cnVjdHVyZVR5cGUpW10pIHtcbiAgICAgICAgdHlwZXMuZm9yRWFjaCgodHlwZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWVsZHMuc2V0KHR5cGUsIGNvbXBvbmVudCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHN0YXRpYyByZXNvbHZlRmllbGQodHlwZTogRmllbGRUeXBlIHwgU3RydWN0dXJlVHlwZSkge1xuICAgICAgICByZXR1cm4gdGhpcy5maWVsZHMuZ2V0KHR5cGUpO1xuICAgIH1cbn1cblxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvZHluYW1pYy1mb3JtL3NyYy9saWIvZHluYW1pYy1mb3JtL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9maWVsZHNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RydWN0dXJlQ29uZmlnIH0gZnJvbSAnLi9zdHJ1Y3R1cmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkc2V0Q29uZmlnIGV4dGVuZHMgU3RydWN0dXJlQ29uZmlnIHtcbiAgICB0eXBlOiAnZmllbGRzZXQnO1xuICAgIGJlZm9yZVRvZ2dsZT86IChldmVudDogYW55KSA9PiB2b2lkO1xuICAgIGFmdGVyVG9nZ2xlPzogKGV2ZW50OiBhbnkpID0+IHZvaWQ7XG59XG5kZWNsYXJlIG1vZHVsZSAnLi4vc3RydWN0dXJlL3N0cnVjdHVyZScge1xuICAgIGV4cG9ydCBpbnRlcmZhY2UgU3RydWN0dXJlVHlwZU1hcCB7XG4gICAgICAgIGZpZWxkc2V0OiBGaWVsZHNldENvbmZpZztcbiAgICB9XG59XG5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUvcm93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJ0eXBlIGJvb2xlYW5GbiA9ICgpID0+IGJvb2xlYW47XG5pbXBvcnQgeyBGaWVsZFNpemVDb25maWcgfSBmcm9tICcuLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkLXNpemUnO1xuaW1wb3J0IHsgQ29tcGxldGVGaWVsZENvbmZpZywgRHluYW1pY1R5cGUgfSBmcm9tICcuLi8uLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9maWVsZCc7XG5pbXBvcnQgeyBEeW5hbWljU3RydWN0dXJlIH0gZnJvbSAnLi4vc3RydWN0dXJlL3N0cnVjdHVyZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm93QWRkaXRpb25hbEZpZWxkcyBleHRlbmRzIFBpY2s8XG4gICAgQ29tcGxldGVGaWVsZENvbmZpZyxcbiAgICAndmlzaWJsZScgfCAnZXJyb3JNZXNzYWdlcycgfCAnZm9vdGVyJyB8ICdib3R0b21UZW1wbGF0ZSdcbj4ge1xuICAgIHNpemU/OiBGaWVsZFNpemVDb25maWc7XG59XG5cbmV4cG9ydCB0eXBlIEV4cGFuZGVkRHluYW1pY1R5cGUgPSBEeW5hbWljVHlwZSAmIFJvd0FkZGl0aW9uYWxGaWVsZHM7XG5leHBvcnQgdHlwZSBFeHBhbmRlZER5bmFtaWNTdHJ1Y3R1cmUgPSBEeW5hbWljU3RydWN0dXJlICYgUm93QWRkaXRpb25hbEZpZWxkcztcbmV4cG9ydCB0eXBlIFJvd1R5cGUgPSBFeHBhbmRlZER5bmFtaWNUeXBlIHwgRXhwYW5kZWREeW5hbWljU3RydWN0dXJlIHwgRHluYW1pY1R5cGU7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm93Q29uZmlnIHtcbiAgICB0eXBlOiAncm93JztcbiAgICBmaWVsZHM6IFJvd1R5cGVbXTtcbiAgICB2aXNpYmxlPzogYm9vbGVhbkZuIHwgYm9vbGVhbjtcbn1cblxuZGVjbGFyZSBtb2R1bGUgJy4uL3N0cnVjdHVyZS9zdHJ1Y3R1cmUnIHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIFN0cnVjdHVyZVR5cGVNYXAge1xuICAgICAgICByb3c6IFJvd0NvbmZpZztcbiAgICB9XG59XG5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3NlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0cnVjdHVyZUNvbmZpZyB9IGZyb20gJy4vc3RydWN0dXJlJztcbmV4cG9ydCBpbnRlcmZhY2UgU2VjdGlvbkNvbmZpZyBleHRlbmRzIFN0cnVjdHVyZUNvbmZpZyB7XG4gICAgdHlwZTogJ3NlY3Rpb24nO1xuICAgIC8qKlxuICAgICAqIERlZmluZSBpZiB0aGUgc3RydWN0dXJlIGlzIGEgZmxleCBjb250YWluZXIuXG4gICAgICovXG4gICAgaXNGbGV4PzogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBEZWZpbmUgdGhlIGp1c3RpZnktY29udGVudCBwcm9wZXJ0eS5cbiAgICAgKi9cbiAgICBqdXN0aWZ5Q29udGVudD86ICdmbGV4LXN0YXJ0JyB8ICdmbGV4LWVuZCcgfCAnY2VudGVyJyB8ICdzcGFjZS1iZXR3ZWVuJyB8ICdzcGFjZS1hcm91bmQnIHwgJ3NwYWNlLWV2ZW5seSc7XG4gICAgLyoqXG4gICAgICogRGVmaW5lIHRoZSBhbGlnbi1pdGVtcyBwcm9wZXJ0eS5cbiAgICAgKi9cbiAgICBhbGlnbkl0ZW1zPzogJ3N0cmV0Y2gnIHwgJ2ZsZXgtc3RhcnQnIHwgJ2ZsZXgtZW5kJyB8ICdjZW50ZXInIHwgJ2Jhc2VsaW5lJyB8ICdpbml0aWFsJyB8ICdpbmhlcml0Jztcbn1cblxuZGVjbGFyZSBtb2R1bGUgJy4uL3N0cnVjdHVyZS9zdHJ1Y3R1cmUnIHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIFN0cnVjdHVyZVR5cGVNYXAge1xuICAgICAgICBzZWN0aW9uOiBTZWN0aW9uQ29uZmlnO1xuICAgIH1cbn1cblxuIl19
@@ -0,0 +1,2 @@
1
+ export const STRUCTURE_TYPES_LIST = ['fieldset', 'row', 'section'];
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RydWN0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUvc3RydWN0dXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFvQixDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljVHlwZSB9IGZyb20gJy4uLy4uL2Zvcm0tZmllbGQvY29uZmlndXJhdGlvbnMvZmllbGRzL2ZpZWxkJztcblxuZXhwb3J0IGludGVyZmFjZSBTdHJ1Y3R1cmVDb25maWcge1xuICAgIHR5cGU6IFN0cnVjdHVyZVR5cGU7XG4gICAgY29uZmlnczogKER5bmFtaWNUeXBlIHwgRHluYW1pY1N0cnVjdHVyZSlbXTtcbiAgICBoZWFkZXI/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RydWN0dXJlVHlwZU1hcCB7fVxuZXhwb3J0IHR5cGUgU3RydWN0dXJlVHlwZSA9IGtleW9mIFN0cnVjdHVyZVR5cGVNYXA7XG5leHBvcnQgdHlwZSBEeW5hbWljU3RydWN0dXJlID0gU3RydWN0dXJlVHlwZU1hcFtrZXlvZiBTdHJ1Y3R1cmVUeXBlTWFwXTtcblxuZXhwb3J0IGNvbnN0IFNUUlVDVFVSRV9UWVBFU19MSVNUOiBTdHJ1Y3R1cmVUeXBlW10gPSBbJ2ZpZWxkc2V0JywgJ3JvdycsICdzZWN0aW9uJ107XG5cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ import { Component, computed, input, ViewEncapsulation } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./dynamic-form.directive";
4
+ export class DynamicFormComponent {
5
+ id = input();
6
+ configs = input([]);
7
+ /**
8
+ * @deprecated Use `configs` input instead. Este campo será removido em versões futuras.
9
+ */
10
+ fields = input();
11
+ dynamicTypeToStructure = computed(() => {
12
+ const fields = this.fields();
13
+ if (fields && fields.length) {
14
+ return dynamicTypeToDynamicStructure(fields);
15
+ }
16
+ return undefined;
17
+ });
18
+ conf = computed(() => (this.dynamicTypeToStructure() ? this.dynamicTypeToStructure() : this.configs()));
19
+ form = input.required();
20
+ errorMessages = input({});
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: DynamicFormComponent, selector: "s-dynamic-form", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, configs: { classPropertyName: "configs", publicName: "configs", isSignal: true, isRequired: false, transformFunction: null }, fields: { classPropertyName: "fields", publicName: "fields", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: true, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@for (config of conf(); track $index) {\n <ng-container\n *sDynamicForm=\"{\n id: id(),\n config,\n group: form(),\n errorMessages: errorMessages(),\n }\"\n >\n </ng-container>\n}\n", styles: ["label.required:after{content:\" *\";color:#c13018}\n"], dependencies: [{ kind: "directive", type: i1.DynamicFormDirective, selector: "[sDynamicForm]", inputs: ["sDynamicForm"] }], encapsulation: i0.ViewEncapsulation.None });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFormComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ selector: 's-dynamic-form', encapsulation: ViewEncapsulation.None, template: "@for (config of conf(); track $index) {\n <ng-container\n *sDynamicForm=\"{\n id: id(),\n config,\n group: form(),\n errorMessages: errorMessages(),\n }\"\n >\n </ng-container>\n}\n", styles: ["label.required:after{content:\" *\";color:#c13018}\n"] }]
27
+ }] });
28
+ export const dynamicTypeToDynamicStructure = (dynamicTypes) => {
29
+ const dynamicStructure = [
30
+ {
31
+ type: 'row',
32
+ fields: dynamicTypes,
33
+ },
34
+ ];
35
+ return dynamicStructure;
36
+ };
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBVzlFLE1BQU0sT0FBTyxvQkFBb0I7SUFDN0IsRUFBRSxHQUFHLEtBQUssRUFBVSxDQUFDO0lBRXJCLE9BQU8sR0FBRyxLQUFLLENBQXFCLEVBQUUsQ0FBQyxDQUFDO0lBRXhDOztPQUVHO0lBQ0gsTUFBTSxHQUFHLEtBQUssRUFBaUIsQ0FBQztJQUV4QixzQkFBc0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1FBQzNDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDMUIsT0FBTyw2QkFBNkIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXhHLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7SUFFbkMsYUFBYSxHQUFHLEtBQUssQ0FBTSxFQUFFLENBQUMsQ0FBQzt3R0F0QnRCLG9CQUFvQjs0RkFBcEIsb0JBQW9CLDhxQkNYakMsMFBBV0E7OzRGREFhLG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFDSSxnQkFBZ0IsaUJBR1gsaUJBQWlCLENBQUMsSUFBSTs7QUEyQnpDLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsWUFBMkIsRUFBc0IsRUFBRTtJQUM3RixNQUFNLGdCQUFnQixHQUF1QjtRQUN6QztZQUNJLElBQUksRUFBRSxLQUFLO1lBQ1gsTUFBTSxFQUFFLFlBQVk7U0FDdkI7S0FDSixDQUFDO0lBQ0YsT0FBTyxnQkFBZ0IsQ0FBQztBQUM1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IER5bmFtaWNTdHJ1Y3R1cmUgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb25zL3N0cnVjdHVyZS9zdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgRHluYW1pY1R5cGUgfSBmcm9tICcuL2Zvcm0tZmllbGQvY29uZmlndXJhdGlvbnMvZmllbGRzL2ZpZWxkJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzLWR5bmFtaWMtZm9ybScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2R5bmFtaWMtZm9ybS5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNGb3JtQ29tcG9uZW50IHtcbiAgICBpZCA9IGlucHV0PHN0cmluZz4oKTtcblxuICAgIGNvbmZpZ3MgPSBpbnB1dDxEeW5hbWljU3RydWN0dXJlW10+KFtdKTtcblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIFVzZSBgY29uZmlnc2AgaW5wdXQgaW5zdGVhZC4gRXN0ZSBjYW1wbyBzZXLDoSByZW1vdmlkbyBlbSB2ZXJzw7VlcyBmdXR1cmFzLlxuICAgICAqL1xuICAgIGZpZWxkcyA9IGlucHV0PER5bmFtaWNUeXBlW10+KCk7XG5cbiAgICBwcml2YXRlIGR5bmFtaWNUeXBlVG9TdHJ1Y3R1cmUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpZWxkcyA9IHRoaXMuZmllbGRzKCk7XG4gICAgICAgIGlmIChmaWVsZHMgJiYgZmllbGRzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIGR5bmFtaWNUeXBlVG9EeW5hbWljU3RydWN0dXJlKGZpZWxkcyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9KTtcblxuICAgIGNvbmYgPSBjb21wdXRlZCgoKSA9PiAodGhpcy5keW5hbWljVHlwZVRvU3RydWN0dXJlKCkgPyB0aGlzLmR5bmFtaWNUeXBlVG9TdHJ1Y3R1cmUoKSA6IHRoaXMuY29uZmlncygpKSk7XG5cbiAgICBmb3JtID0gaW5wdXQucmVxdWlyZWQ8Rm9ybUdyb3VwPigpO1xuXG4gICAgZXJyb3JNZXNzYWdlcyA9IGlucHV0PGFueT4oe30pO1xufVxuXG5leHBvcnQgY29uc3QgZHluYW1pY1R5cGVUb0R5bmFtaWNTdHJ1Y3R1cmUgPSAoZHluYW1pY1R5cGVzOiBEeW5hbWljVHlwZVtdKTogRHluYW1pY1N0cnVjdHVyZVtdID0+IHtcbiAgICBjb25zdCBkeW5hbWljU3RydWN0dXJlOiBEeW5hbWljU3RydWN0dXJlW10gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6ICdyb3cnLFxuICAgICAgICAgICAgZmllbGRzOiBkeW5hbWljVHlwZXMsXG4gICAgICAgIH0sXG4gICAgXTtcbiAgICByZXR1cm4gZHluYW1pY1N0cnVjdHVyZTtcbn07XG5cbiIsIkBmb3IgKGNvbmZpZyBvZiBjb25mKCk7IHRyYWNrICRpbmRleCkge1xuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKnNEeW5hbWljRm9ybT1cIntcbiAgICAgICAgICAgIGlkOiBpZCgpLFxuICAgICAgICAgICAgY29uZmlnLFxuICAgICAgICAgICAgZ3JvdXA6IGZvcm0oKSxcbiAgICAgICAgICAgIGVycm9yTWVzc2FnZXM6IGVycm9yTWVzc2FnZXMoKSxcbiAgICAgICAgfVwiXG4gICAgPlxuICAgIDwvbmctY29udGFpbmVyPlxufVxuIl19
@@ -0,0 +1,74 @@
1
+ import { Directive, inject, Input, ViewContainerRef } from '@angular/core';
2
+ import { isNullOrUndefined } from '@seniorsistemas/angular-components/utils';
3
+ import { DynamicField, DynamicStructure } from './dynamic-form';
4
+ import { STRUCTURE_TYPES_LIST, } from './configurations/structure/structure';
5
+ import * as i0 from "@angular/core";
6
+ export class DynamicFormDirective {
7
+ id;
8
+ config;
9
+ group;
10
+ errorMessages;
11
+ directiveConfig;
12
+ set sDynamicForm(context) {
13
+ const { id, config, group, errorMessages } = context;
14
+ this.id = id;
15
+ this.config = config;
16
+ this.group = group;
17
+ this.errorMessages = errorMessages;
18
+ }
19
+ component = null;
20
+ viewContainerRef = inject(ViewContainerRef);
21
+ ngOnInit() {
22
+ if (this.isField(this.config)) {
23
+ if (!this.config.id && this.id) {
24
+ this.config.id = this.id + '-' + this.config.name;
25
+ }
26
+ this.directiveConfig = new DynamicField({
27
+ group: this.group,
28
+ field: this.config,
29
+ errorMessages: this.errorMessages,
30
+ });
31
+ }
32
+ else if (this.isStructure(this.config)) {
33
+ this.directiveConfig = new DynamicStructure({
34
+ group: this.group,
35
+ config: this.config,
36
+ errorMessages: this.errorMessages,
37
+ });
38
+ }
39
+ else
40
+ throw new Error(`Trying to use an unsupported type (${this.getType}).`);
41
+ this.component = this.directiveConfig.createComponent(this.viewContainerRef);
42
+ if (!isNullOrUndefined(this.component) && this.isStructure(this.config)) {
43
+ this.component.setInput('id', this.id);
44
+ this.component.setInput('errorMessages', this.errorMessages);
45
+ }
46
+ }
47
+ ngOnChanges() {
48
+ if (this.component) {
49
+ this.directiveConfig?.updateVariables(this.component);
50
+ this.component.instance.errorMessages = this.errorMessages;
51
+ }
52
+ }
53
+ ngOnDestroy() {
54
+ this.component?.destroy();
55
+ }
56
+ isField(config) {
57
+ return !this.isStructure(config);
58
+ }
59
+ isStructure(config) {
60
+ return STRUCTURE_TYPES_LIST.includes(config.type);
61
+ }
62
+ get getType() {
63
+ return this.config.type;
64
+ }
65
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFormDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
66
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: DynamicFormDirective, selector: "[sDynamicForm]", inputs: { sDynamicForm: "sDynamicForm" }, usesOnChanges: true, ngImport: i0 });
67
+ }
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFormDirective, decorators: [{
69
+ type: Directive,
70
+ args: [{ selector: '[sDynamicForm]' }]
71
+ }], propDecorators: { sDynamicForm: [{
72
+ type: Input
73
+ }] } });
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9keW5hbWljLWZvcm0vc3JjL2xpYi9keW5hbWljLWZvcm0vZHluYW1pYy1mb3JtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFnQyxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd2SCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUU3RSxPQUFPLEVBQUUsWUFBWSxFQUFlLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0UsT0FBTyxFQUVILG9CQUFvQixHQUV2QixNQUFNLHNDQUFzQyxDQUFDOztBQUk5QyxNQUFNLE9BQU8sb0JBQW9CO0lBQ3JCLEVBQUUsQ0FBVTtJQUNaLE1BQU0sQ0FBdUM7SUFDN0MsS0FBSyxDQUFhO0lBQ2xCLGFBQWEsQ0FBYTtJQUMxQixlQUFlLENBQWU7SUFFdEMsSUFDSSxZQUFZLENBQUMsT0FLaEI7UUFDRyxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ3JELElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDdkMsQ0FBQztJQUVNLFNBQVMsR0FBNkIsSUFBSSxDQUFDO0lBRWpDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXRELFFBQVE7UUFDWCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDdEQsQ0FBQztZQUVELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxZQUFZLENBQUM7Z0JBQ3BDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDakIsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNsQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7YUFDcEMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksZ0JBQWdCLENBQUM7Z0JBQ3hDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDakIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO2dCQUNuQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7YUFDcEMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQzs7WUFBTSxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQztRQUUvRSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN0RSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDakUsQ0FBQztJQUNMLENBQUM7SUFFTSxXQUFXO1FBQ2QsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQy9ELENBQUM7SUFDTCxDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLE9BQU8sQ0FBQyxNQUEyQztRQUN2RCxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU8sV0FBVyxDQUFDLE1BQTJDO1FBQzNELE9BQU8sb0JBQW9CLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFxQixDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELElBQVksT0FBTztRQUNmLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDNUIsQ0FBQzt3R0F4RVEsb0JBQW9COzRGQUFwQixvQkFBb0I7OzRGQUFwQixvQkFBb0I7a0JBRGhDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUU7OEJBU2pDLFlBQVk7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy91dGlscyc7XG5cbmltcG9ydCB7IER5bmFtaWNGaWVsZCwgRHluYW1pY0Zvcm0sIER5bmFtaWNTdHJ1Y3R1cmUgfSBmcm9tICcuL2R5bmFtaWMtZm9ybSc7XG5cbmltcG9ydCB7XG4gICAgRHluYW1pY1N0cnVjdHVyZSBhcyBGaWVsZER5bmFtaWNTdHJ1Y3R1cmUsXG4gICAgU1RSVUNUVVJFX1RZUEVTX0xJU1QsXG4gICAgU3RydWN0dXJlVHlwZSxcbn0gZnJvbSAnLi9jb25maWd1cmF0aW9ucy9zdHJ1Y3R1cmUvc3RydWN0dXJlJztcbmltcG9ydCB7IER5bmFtaWNUeXBlIH0gZnJvbSAnLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9maWVsZCc7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1tzRHluYW1pY0Zvcm1dJyB9KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNGb3JtRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBpZD86IHN0cmluZztcbiAgICBwcml2YXRlIGNvbmZpZyE6IEZpZWxkRHluYW1pY1N0cnVjdHVyZSB8IER5bmFtaWNUeXBlO1xuICAgIHByaXZhdGUgZ3JvdXAhOiBGb3JtR3JvdXA7XG4gICAgcHJpdmF0ZSBlcnJvck1lc3NhZ2VzPzogRm9ybUdyb3VwO1xuICAgIHByaXZhdGUgZGlyZWN0aXZlQ29uZmlnPzogRHluYW1pY0Zvcm07XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBzRHluYW1pY0Zvcm0oY29udGV4dDoge1xuICAgICAgICBpZD86IHN0cmluZztcbiAgICAgICAgY29uZmlnOiBGaWVsZER5bmFtaWNTdHJ1Y3R1cmUgfCBEeW5hbWljVHlwZTtcbiAgICAgICAgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgICAgICAgZXJyb3JNZXNzYWdlcz86IGFueTtcbiAgICB9KSB7XG4gICAgICAgIGNvbnN0IHsgaWQsIGNvbmZpZywgZ3JvdXAsIGVycm9yTWVzc2FnZXMgfSA9IGNvbnRleHQ7XG4gICAgICAgIHRoaXMuaWQgPSBpZDtcbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgICAgIHRoaXMuZ3JvdXAgPSBncm91cDtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzID0gZXJyb3JNZXNzYWdlcztcbiAgICB9XG5cbiAgICBwdWJsaWMgY29tcG9uZW50OiBDb21wb25lbnRSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuXG4gICAgcHVibGljIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAodGhpcy5pc0ZpZWxkKHRoaXMuY29uZmlnKSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmNvbmZpZy5pZCAmJiB0aGlzLmlkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb25maWcuaWQgPSB0aGlzLmlkICsgJy0nICsgdGhpcy5jb25maWcubmFtZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVDb25maWcgPSBuZXcgRHluYW1pY0ZpZWxkKHtcbiAgICAgICAgICAgICAgICBncm91cDogdGhpcy5ncm91cCxcbiAgICAgICAgICAgICAgICBmaWVsZDogdGhpcy5jb25maWcsXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlczogdGhpcy5lcnJvck1lc3NhZ2VzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1N0cnVjdHVyZSh0aGlzLmNvbmZpZykpIHtcbiAgICAgICAgICAgIHRoaXMuZGlyZWN0aXZlQ29uZmlnID0gbmV3IER5bmFtaWNTdHJ1Y3R1cmUoe1xuICAgICAgICAgICAgICAgIGdyb3VwOiB0aGlzLmdyb3VwLFxuICAgICAgICAgICAgICAgIGNvbmZpZzogdGhpcy5jb25maWcsXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlczogdGhpcy5lcnJvck1lc3NhZ2VzLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB0aHJvdyBuZXcgRXJyb3IoYFRyeWluZyB0byB1c2UgYW4gdW5zdXBwb3J0ZWQgdHlwZSAoJHt0aGlzLmdldFR5cGV9KS5gKTtcblxuICAgICAgICB0aGlzLmNvbXBvbmVudCA9IHRoaXMuZGlyZWN0aXZlQ29uZmlnLmNyZWF0ZUNvbXBvbmVudCh0aGlzLnZpZXdDb250YWluZXJSZWYpO1xuICAgICAgICBpZiAoIWlzTnVsbE9yVW5kZWZpbmVkKHRoaXMuY29tcG9uZW50KSAmJiB0aGlzLmlzU3RydWN0dXJlKHRoaXMuY29uZmlnKSkge1xuICAgICAgICAgICAgdGhpcy5jb21wb25lbnQuc2V0SW5wdXQoJ2lkJywgdGhpcy5pZCk7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudC5zZXRJbnB1dCgnZXJyb3JNZXNzYWdlcycsIHRoaXMuZXJyb3JNZXNzYWdlcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudCkge1xuICAgICAgICAgICAgdGhpcy5kaXJlY3RpdmVDb25maWc/LnVwZGF0ZVZhcmlhYmxlcyh0aGlzLmNvbXBvbmVudCk7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudC5pbnN0YW5jZS5lcnJvck1lc3NhZ2VzID0gdGhpcy5lcnJvck1lc3NhZ2VzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbXBvbmVudD8uZGVzdHJveSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNGaWVsZChjb25maWc6IEZpZWxkRHluYW1pY1N0cnVjdHVyZSB8IER5bmFtaWNUeXBlKTogY29uZmlnIGlzIER5bmFtaWNUeXBlIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmlzU3RydWN0dXJlKGNvbmZpZyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1N0cnVjdHVyZShjb25maWc6IEZpZWxkRHluYW1pY1N0cnVjdHVyZSB8IER5bmFtaWNUeXBlKTogY29uZmlnIGlzIEZpZWxkRHluYW1pY1N0cnVjdHVyZSB7XG4gICAgICAgIHJldHVybiBTVFJVQ1RVUkVfVFlQRVNfTElTVC5pbmNsdWRlcyhjb25maWcudHlwZSBhcyBTdHJ1Y3R1cmVUeXBlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBnZXRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcudHlwZTtcbiAgICB9XG59XG5cbiJdfQ==
@@ -0,0 +1,81 @@
1
+ import { isNullOrUndefined } from '@seniorsistemas/angular-components/utils';
2
+ import { FormDynamicRegistry } from './configurations/registry';
3
+ export class DynamicForm {
4
+ group;
5
+ errorMessages;
6
+ constructor({ group, errorMessages }) {
7
+ this.group = group;
8
+ this.errorMessages = errorMessages;
9
+ }
10
+ }
11
+ export class DynamicField extends DynamicForm {
12
+ field;
13
+ constructor({ group, field, errorMessages }) {
14
+ super({
15
+ group,
16
+ errorMessages,
17
+ });
18
+ this.field = field;
19
+ }
20
+ createComponent(viewContainerRef) {
21
+ const component = viewContainerRef.createComponent(this.getComponent());
22
+ component.setInput('field', this.field);
23
+ if (!isNullOrUndefined(this.field?.name) && 'formControl' in component.instance) {
24
+ // Must be this way because some teams use name like "e070emp.codemp"
25
+ component.setInput('formControl', this.group?.['controls'][this.field.name]);
26
+ }
27
+ return component;
28
+ }
29
+ updateVariables(component) {
30
+ if (isNullOrUndefined(this.field?.name))
31
+ return;
32
+ component.setInput('field', this.field);
33
+ if ('formControl' in component.instance) {
34
+ component.setInput('formControl', this.group?.['controls'][this.field.name]);
35
+ }
36
+ }
37
+ getComponent() {
38
+ if (isNullOrUndefined(this.field)) {
39
+ throw new Error(`Field is null or undefined.`);
40
+ }
41
+ const fieldType = this.field.type;
42
+ const component = FormDynamicRegistry.resolveField(fieldType);
43
+ if (component) {
44
+ return component;
45
+ }
46
+ else {
47
+ throw new Error(`Trying to use an unsupported type (${this.field?.type}).`);
48
+ }
49
+ }
50
+ }
51
+ export class DynamicStructure extends DynamicForm {
52
+ config;
53
+ constructor({ group, config, errorMessages, }) {
54
+ super({
55
+ group,
56
+ errorMessages,
57
+ });
58
+ this.config = config;
59
+ }
60
+ createComponent(viewContainerRef) {
61
+ const component = viewContainerRef.createComponent(this.getComponent());
62
+ component.setInput('config', this.config);
63
+ component.setInput('group', this.group);
64
+ return component;
65
+ }
66
+ updateVariables(component) {
67
+ component.setInput('config', this.config);
68
+ component.setInput('group', this.group);
69
+ }
70
+ getComponent() {
71
+ const structureType = this.config.type;
72
+ const component = FormDynamicRegistry.resolveField(structureType);
73
+ if (component) {
74
+ return component;
75
+ }
76
+ else {
77
+ throw new Error(`Trying to use an unsupported type (${this.config?.type}).`);
78
+ }
79
+ }
80
+ }
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9zcmMvbGliL2R5bmFtaWMtZm9ybS9keW5hbWljLWZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFLN0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJaEUsTUFBTSxPQUFnQixXQUFXO0lBQzdCLEtBQUssQ0FBWTtJQUNqQixhQUFhLENBQU07SUFNbkIsWUFBWSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQTRDO1FBQzFFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3ZDLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxZQUFhLFNBQVEsV0FBVztJQUN6QyxLQUFLLENBQWM7SUFFbkIsWUFBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFnRTtRQUNyRyxLQUFLLENBQUM7WUFDRixLQUFLO1lBQ0wsYUFBYTtTQUNoQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUN2QixDQUFDO0lBRU0sZUFBZSxDQUFDLGdCQUFrQztRQUNyRCxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLENBQzlDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FDb0IsQ0FBQztRQUM1QyxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFeEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksYUFBYSxJQUFJLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM5RSxxRUFBcUU7WUFDckUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNqRixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVNLGVBQWUsQ0FBQyxTQUE0QjtRQUMvQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDO1lBQUUsT0FBTztRQUNoRCxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsSUFBSSxhQUFhLElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLFNBQVMsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDakYsQ0FBQztJQUNMLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFDbkQsQ0FBQztRQUVELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2xDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5RCxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ1osT0FBTyxTQUFTLENBQUM7UUFDckIsQ0FBQzthQUFNLENBQUM7WUFDSixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUM7UUFDaEYsQ0FBQztJQUNMLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxXQUFXO0lBQzdDLE1BQU0sQ0FBd0I7SUFFOUIsWUFBWSxFQUNSLEtBQUssRUFDTCxNQUFNLEVBQ04sYUFBYSxHQUtoQjtRQUNHLEtBQUssQ0FBQztZQUNGLEtBQUs7WUFDTCxhQUFhO1NBQ2hCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxlQUFlLENBQUMsZ0JBQWtDO1FBQ3JELE1BQU0sU0FBUyxHQUFHLGdCQUFnQixDQUFDLGVBQWUsQ0FDOUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUN3QixDQUFDO1FBQ2hELFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVNLGVBQWUsQ0FBQyxTQUE0QjtRQUMvQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxZQUFZO1FBQ2YsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDdkMsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xFLElBQUksU0FBUyxFQUFFLENBQUM7WUFDWixPQUFPLFNBQVMsQ0FBQztRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQztRQUNqRixDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IGlzTnVsbE9yVW5kZWZpbmVkIH0gZnJvbSAnQHNlbmlvcnNpc3RlbWFzL2FuZ3VsYXItY29tcG9uZW50cy91dGlscyc7XG5cbmltcG9ydCB7IER5bmFtaWNUeXBlIH0gZnJvbSAnLi9mb3JtLWZpZWxkL2NvbmZpZ3VyYXRpb25zL2ZpZWxkcy9maWVsZCc7XG5cbmltcG9ydCB7IEJhc2VTdHJ1Y3R1cmVDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2NvbXBvbmVudHMvc3RydWN0dXJlL2Jhc2Utc3RydWN0dXJlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtRHluYW1pY1JlZ2lzdHJ5IH0gZnJvbSAnLi9jb25maWd1cmF0aW9ucy9yZWdpc3RyeSc7XG5pbXBvcnQgeyBEeW5hbWljU3RydWN0dXJlIGFzIEZpZWxkRHluYW1pY1N0cnVjdHVyZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbnMvc3RydWN0dXJlL3N0cnVjdHVyZSc7XG5pbXBvcnQgeyBCYXNlRmllbGRDb21wb25lbnRDb25maWcgfSBmcm9tICcuL2Zvcm0tZmllbGQvZmllbGRzL2Jhc2UtZmllbGQtY29tcG9uZW50JztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIER5bmFtaWNGb3JtIHtcbiAgICBncm91cDogRm9ybUdyb3VwO1xuICAgIGVycm9yTWVzc2FnZXM6IGFueTtcblxuICAgIGFic3RyYWN0IGNyZWF0ZUNvbXBvbmVudCh2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKTogYW55O1xuICAgIGFic3RyYWN0IHVwZGF0ZVZhcmlhYmxlcyhjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KTogdm9pZDtcbiAgICBhYnN0cmFjdCBnZXRDb21wb25lbnQoKTogYW55O1xuXG4gICAgY29uc3RydWN0b3IoeyBncm91cCwgZXJyb3JNZXNzYWdlcyB9OiB7IGdyb3VwOiBGb3JtR3JvdXA7IGVycm9yTWVzc2FnZXM6IGFueSB9KSB7XG4gICAgICAgIHRoaXMuZ3JvdXAgPSBncm91cDtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2VzID0gZXJyb3JNZXNzYWdlcztcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGQgZXh0ZW5kcyBEeW5hbWljRm9ybSB7XG4gICAgZmllbGQ6IER5bmFtaWNUeXBlO1xuXG4gICAgY29uc3RydWN0b3IoeyBncm91cCwgZmllbGQsIGVycm9yTWVzc2FnZXMgfTogeyBncm91cDogRm9ybUdyb3VwOyBmaWVsZDogRHluYW1pY1R5cGU7IGVycm9yTWVzc2FnZXM6IGFueSB9KSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGdyb3VwLFxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlcyxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZmllbGQgPSBmaWVsZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlQ29tcG9uZW50KHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gdmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoXG4gICAgICAgICAgICB0aGlzLmdldENvbXBvbmVudCgpLFxuICAgICAgICApIGFzIENvbXBvbmVudFJlZjxCYXNlRmllbGRDb21wb25lbnRDb25maWc+O1xuICAgICAgICBjb21wb25lbnQuc2V0SW5wdXQoJ2ZpZWxkJywgdGhpcy5maWVsZCk7XG5cbiAgICAgICAgaWYgKCFpc051bGxPclVuZGVmaW5lZCh0aGlzLmZpZWxkPy5uYW1lKSAmJiAnZm9ybUNvbnRyb2wnIGluIGNvbXBvbmVudC5pbnN0YW5jZSkge1xuICAgICAgICAgICAgLy8gTXVzdCBiZSB0aGlzIHdheSBiZWNhdXNlIHNvbWUgdGVhbXMgdXNlIG5hbWUgbGlrZSBcImUwNzBlbXAuY29kZW1wXCJcbiAgICAgICAgICAgIGNvbXBvbmVudC5zZXRJbnB1dCgnZm9ybUNvbnRyb2wnLCB0aGlzLmdyb3VwPy5bJ2NvbnRyb2xzJ11bdGhpcy5maWVsZC5uYW1lXSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY29tcG9uZW50O1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVWYXJpYWJsZXMoY29tcG9uZW50OiBDb21wb25lbnRSZWY8YW55Pikge1xuICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5maWVsZD8ubmFtZSkpIHJldHVybjtcbiAgICAgICAgY29tcG9uZW50LnNldElucHV0KCdmaWVsZCcsIHRoaXMuZmllbGQpO1xuICAgICAgICBpZiAoJ2Zvcm1Db250cm9sJyBpbiBjb21wb25lbnQuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudC5zZXRJbnB1dCgnZm9ybUNvbnRyb2wnLCB0aGlzLmdyb3VwPy5bJ2NvbnRyb2xzJ11bdGhpcy5maWVsZC5uYW1lXSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q29tcG9uZW50KCkge1xuICAgICAgICBpZiAoaXNOdWxsT3JVbmRlZmluZWQodGhpcy5maWVsZCkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRmllbGQgaXMgbnVsbCBvciB1bmRlZmluZWQuYCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaWVsZFR5cGUgPSB0aGlzLmZpZWxkLnR5cGU7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IEZvcm1EeW5hbWljUmVnaXN0cnkucmVzb2x2ZUZpZWxkKGZpZWxkVHlwZSk7XG4gICAgICAgIGlmIChjb21wb25lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBjb21wb25lbnQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRyeWluZyB0byB1c2UgYW4gdW5zdXBwb3J0ZWQgdHlwZSAoJHt0aGlzLmZpZWxkPy50eXBlfSkuYCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEeW5hbWljU3RydWN0dXJlIGV4dGVuZHMgRHluYW1pY0Zvcm0ge1xuICAgIGNvbmZpZzogRmllbGREeW5hbWljU3RydWN0dXJlO1xuXG4gICAgY29uc3RydWN0b3Ioe1xuICAgICAgICBncm91cCxcbiAgICAgICAgY29uZmlnLFxuICAgICAgICBlcnJvck1lc3NhZ2VzLFxuICAgIH06IHtcbiAgICAgICAgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgICAgICAgY29uZmlnOiBGaWVsZER5bmFtaWNTdHJ1Y3R1cmU7XG4gICAgICAgIGVycm9yTWVzc2FnZXM6IGFueTtcbiAgICB9KSB7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIGdyb3VwLFxuICAgICAgICAgICAgZXJyb3JNZXNzYWdlcyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgfVxuXG4gICAgcHVibGljIGNyZWF0ZUNvbXBvbmVudCh2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IHZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KFxuICAgICAgICAgICAgdGhpcy5nZXRDb21wb25lbnQoKSxcbiAgICAgICAgKSBhcyBDb21wb25lbnRSZWY8QmFzZVN0cnVjdHVyZUNvbXBvbmVudENvbmZpZz47XG4gICAgICAgIGNvbXBvbmVudC5zZXRJbnB1dCgnY29uZmlnJywgdGhpcy5jb25maWcpO1xuICAgICAgICBjb21wb25lbnQuc2V0SW5wdXQoJ2dyb3VwJywgdGhpcy5ncm91cCk7XG4gICAgICAgIHJldHVybiBjb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVZhcmlhYmxlcyhjb21wb25lbnQ6IENvbXBvbmVudFJlZjxhbnk+KSB7XG4gICAgICAgIGNvbXBvbmVudC5zZXRJbnB1dCgnY29uZmlnJywgdGhpcy5jb25maWcpO1xuICAgICAgICBjb21wb25lbnQuc2V0SW5wdXQoJ2dyb3VwJywgdGhpcy5ncm91cCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldENvbXBvbmVudCgpIHtcbiAgICAgICAgY29uc3Qgc3RydWN0dXJlVHlwZSA9IHRoaXMuY29uZmlnLnR5cGU7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IEZvcm1EeW5hbWljUmVnaXN0cnkucmVzb2x2ZUZpZWxkKHN0cnVjdHVyZVR5cGUpO1xuICAgICAgICBpZiAoY29tcG9uZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gY29tcG9uZW50O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBUcnlpbmcgdG8gdXNlIGFuIHVuc3VwcG9ydGVkIHR5cGUgKCR7dGhpcy5jb25maWc/LnR5cGV9KS5gKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIl19