@tft/crispr-forms 14.0.1-rc.0 → 14.0.1

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 (407) hide show
  1. package/esm2020/public-api.mjs +5 -0
  2. package/esm2020/src/index.mjs +2 -0
  3. package/esm2020/src/lib/crispr-forms.module.mjs +57 -0
  4. package/esm2020/src/lib/field-component-map.const.mjs +27 -0
  5. package/esm2020/src/lib/field.directive.mjs +69 -0
  6. package/esm2020/src/lib/form/form.component.mjs +63 -0
  7. package/esm2020/src/lib/form-group-list/form-group-list.component.mjs +93 -0
  8. package/esm2020/src/lib/form-group-list/index.mjs +2 -0
  9. package/esm2020/{lib → src/lib}/pipes/crispr-pipes.module.mjs +1 -1
  10. package/esm2020/src/lib/pipes/initial-control-value.pipe.mjs +21 -0
  11. package/esm2020/src/lib/public_api.mjs +3 -0
  12. package/esm2020/src/lib/sub-group/index.mjs +3 -0
  13. package/esm2020/src/lib/sub-group/sub-group.component.mjs +21 -0
  14. package/esm2020/src/lib/sub-group/sub-group.module.mjs +42 -0
  15. package/esm2020/tft-crispr-forms.mjs +2 -2
  16. package/esm2020/ui/autocomplete-chiplist-field/autocomplete-chiplist-field.component.mjs +130 -0
  17. package/esm2020/ui/autocomplete-chiplist-field/public-api.mjs +2 -0
  18. package/esm2020/ui/autocomplete-chiplist-field/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs +5 -0
  19. package/esm2020/ui/autocomplete-field/autocomplete-field.component.mjs +93 -0
  20. package/esm2020/ui/autocomplete-field/public-api.mjs +2 -0
  21. package/esm2020/ui/autocomplete-field/tft-crispr-forms-ui-autocomplete-field.mjs +5 -0
  22. package/esm2020/ui/button/button.component.mjs +49 -0
  23. package/esm2020/ui/button/public-api.mjs +2 -0
  24. package/esm2020/ui/button/tft-crispr-forms-ui-button.mjs +5 -0
  25. package/esm2020/ui/checkbox-field/checkbox-field.component.mjs +42 -0
  26. package/esm2020/ui/checkbox-field/public-api.mjs +2 -0
  27. package/esm2020/ui/checkbox-field/tft-crispr-forms-ui-checkbox-field.mjs +5 -0
  28. package/esm2020/ui/datepicker-field/datepicker-field.component.mjs +63 -0
  29. package/esm2020/ui/datepicker-field/public-api.mjs +2 -0
  30. package/esm2020/ui/datepicker-field/tft-crispr-forms-ui-datepicker-field.mjs +5 -0
  31. package/esm2020/ui/divider/divider.component.mjs +28 -0
  32. package/esm2020/ui/divider/public-api.mjs +2 -0
  33. package/esm2020/ui/divider/tft-crispr-forms-ui-divider.mjs +5 -0
  34. package/esm2020/ui/field-container/field-container.component.mjs +58 -0
  35. package/esm2020/ui/field-container/public-api.mjs +2 -0
  36. package/esm2020/ui/field-container/tft-crispr-forms-ui-field-container.mjs +5 -0
  37. package/esm2020/ui/file-dropzone/file-dropzone.directive.mjs +40 -0
  38. package/esm2020/ui/file-dropzone/public-api.mjs +2 -0
  39. package/esm2020/ui/file-dropzone/tft-crispr-forms-ui-file-dropzone.mjs +5 -0
  40. package/esm2020/ui/file-upload-field/file-upload-field.component.mjs +108 -0
  41. package/esm2020/ui/file-upload-field/public-api.mjs +2 -0
  42. package/esm2020/ui/file-upload-field/tft-crispr-forms-ui-file-upload-field.mjs +5 -0
  43. package/esm2020/ui/heading/heading.component.mjs +31 -0
  44. package/esm2020/ui/heading/public-api.mjs +2 -0
  45. package/esm2020/ui/heading/tft-crispr-forms-ui-heading.mjs +5 -0
  46. package/esm2020/ui/image-upload-field/image-upload-field.component.mjs +179 -0
  47. package/esm2020/ui/image-upload-field/public-api.mjs +2 -0
  48. package/esm2020/ui/image-upload-field/tft-crispr-forms-ui-image-upload-field.mjs +5 -0
  49. package/esm2020/ui/info/info.component.mjs +23 -0
  50. package/esm2020/ui/info/public-api.mjs +2 -0
  51. package/esm2020/ui/info/tft-crispr-forms-ui-info.mjs +5 -0
  52. package/esm2020/ui/input-field/input-field.component.mjs +41 -0
  53. package/esm2020/ui/input-field/public-api.mjs +2 -0
  54. package/esm2020/ui/input-field/tft-crispr-forms-ui-input-field.mjs +5 -0
  55. package/esm2020/ui/option/option.component.mjs +19 -0
  56. package/esm2020/ui/option/public-api.mjs +2 -0
  57. package/esm2020/ui/option/tft-crispr-forms-ui-option.mjs +5 -0
  58. package/esm2020/ui/public-api.mjs +7 -0
  59. package/esm2020/ui/radio-field/public-api.mjs +2 -0
  60. package/esm2020/ui/radio-field/radio-field.component.mjs +39 -0
  61. package/esm2020/ui/radio-field/tft-crispr-forms-ui-radio-field.mjs +5 -0
  62. package/esm2020/ui/select-field/public-api.mjs +2 -0
  63. package/esm2020/ui/select-field/select-field.component.mjs +73 -0
  64. package/esm2020/ui/select-field/tft-crispr-forms-ui-select-field.mjs +5 -0
  65. package/esm2020/ui/selected-file/public-api.mjs +2 -0
  66. package/esm2020/ui/selected-file/selected-file.component.mjs +26 -0
  67. package/esm2020/ui/selected-file/tft-crispr-forms-ui-selected-file.mjs +5 -0
  68. package/esm2020/ui/slider-field/public-api.mjs +2 -0
  69. package/esm2020/ui/slider-field/slider-field.component.mjs +44 -0
  70. package/esm2020/ui/slider-field/tft-crispr-forms-ui-slider-field.mjs +5 -0
  71. package/esm2020/ui/textarea-field/public-api.mjs +2 -0
  72. package/esm2020/ui/textarea-field/textarea-field.component.mjs +42 -0
  73. package/esm2020/ui/textarea-field/tft-crispr-forms-ui-textarea-field.mjs +5 -0
  74. package/esm2020/ui/tft-crispr-forms-ui.mjs +5 -0
  75. package/esm2020/ui/unit-conversion-field/public-api.mjs +2 -0
  76. package/esm2020/ui/unit-conversion-field/tft-crispr-forms-ui-unit-conversion-field.mjs +5 -0
  77. package/esm2020/ui/unit-conversion-field/unit-conversion-field.component.mjs +84 -0
  78. package/esm2020/utils/abstracts/autocomplete-field.abstract.mjs +30 -0
  79. package/esm2020/utils/abstracts/crispr-control.mixin.mjs +27 -0
  80. package/esm2020/utils/abstracts/crispr-field.abstract.mjs +20 -0
  81. package/esm2020/utils/abstracts/index.mjs +4 -0
  82. package/esm2020/utils/functions/buildFormGroupFromConfig.mjs +28 -0
  83. package/esm2020/utils/functions/callOptionsIfFunction.mjs +4 -0
  84. package/esm2020/utils/functions/createControlForType.mjs +19 -0
  85. package/esm2020/utils/functions/filterOptionsByLabel.mjs +11 -0
  86. package/esm2020/utils/functions/image-compression.helpers.mjs +50 -0
  87. package/esm2020/utils/functions/index.mjs +8 -0
  88. package/esm2020/utils/functions/isControlConfig.mjs +7 -0
  89. package/esm2020/utils/functions/observablifyOptions.mjs +29 -0
  90. package/esm2020/utils/models/autocomplete-chiplist-field.config.mjs +2 -0
  91. package/esm2020/utils/models/autocomplete-field.config.mjs +2 -0
  92. package/esm2020/utils/models/button.config.mjs +2 -0
  93. package/esm2020/utils/models/checkbox-field.config.mjs +2 -0
  94. package/esm2020/utils/models/crispr-field.config.mjs +23 -0
  95. package/esm2020/utils/models/datepicker-field.config.mjs +2 -0
  96. package/esm2020/utils/models/divider.config.mjs +2 -0
  97. package/esm2020/utils/models/file-upload-field.config.mjs +2 -0
  98. package/esm2020/utils/models/form-group-list.config.mjs +2 -0
  99. package/esm2020/utils/models/heading.config.mjs +3 -0
  100. package/esm2020/utils/models/image-upload-field.config.mjs +2 -0
  101. package/esm2020/utils/models/index.mjs +18 -0
  102. package/esm2020/utils/models/input-field.config.mjs +2 -0
  103. package/esm2020/utils/models/radio-field.config.mjs +2 -0
  104. package/esm2020/utils/models/select-field.config.mjs +2 -0
  105. package/esm2020/utils/models/slider-field.config.mjs +2 -0
  106. package/esm2020/utils/models/textarea-field.config.mjs +2 -0
  107. package/esm2020/utils/models/unit-conversion-field.config.mjs +2 -0
  108. package/esm2020/utils/operators/form.operators.mjs +24 -0
  109. package/esm2020/utils/operators/index.mjs +2 -0
  110. package/esm2020/utils/public-api.mjs +5 -0
  111. package/esm2020/utils/tft-crispr-forms-utils.mjs +5 -0
  112. package/fesm2015/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs +138 -0
  113. package/fesm2015/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs.map +1 -0
  114. package/fesm2015/tft-crispr-forms-ui-autocomplete-field.mjs +101 -0
  115. package/fesm2015/tft-crispr-forms-ui-autocomplete-field.mjs.map +1 -0
  116. package/fesm2015/tft-crispr-forms-ui-button.mjs +55 -0
  117. package/fesm2015/tft-crispr-forms-ui-button.mjs.map +1 -0
  118. package/fesm2015/tft-crispr-forms-ui-checkbox-field.mjs +49 -0
  119. package/fesm2015/tft-crispr-forms-ui-checkbox-field.mjs.map +1 -0
  120. package/fesm2015/tft-crispr-forms-ui-datepicker-field.mjs +71 -0
  121. package/fesm2015/tft-crispr-forms-ui-datepicker-field.mjs.map +1 -0
  122. package/fesm2015/tft-crispr-forms-ui-divider.mjs +34 -0
  123. package/fesm2015/tft-crispr-forms-ui-divider.mjs.map +1 -0
  124. package/fesm2015/tft-crispr-forms-ui-field-container.mjs +64 -0
  125. package/fesm2015/tft-crispr-forms-ui-field-container.mjs.map +1 -0
  126. package/fesm2015/tft-crispr-forms-ui-file-dropzone.mjs +47 -0
  127. package/fesm2015/tft-crispr-forms-ui-file-dropzone.mjs.map +1 -0
  128. package/fesm2015/tft-crispr-forms-ui-file-upload-field.mjs +117 -0
  129. package/fesm2015/tft-crispr-forms-ui-file-upload-field.mjs.map +1 -0
  130. package/fesm2015/tft-crispr-forms-ui-heading.mjs +37 -0
  131. package/fesm2015/tft-crispr-forms-ui-heading.mjs.map +1 -0
  132. package/fesm2015/tft-crispr-forms-ui-image-upload-field.mjs +182 -0
  133. package/fesm2015/tft-crispr-forms-ui-image-upload-field.mjs.map +1 -0
  134. package/fesm2015/tft-crispr-forms-ui-info.mjs +30 -0
  135. package/fesm2015/tft-crispr-forms-ui-info.mjs.map +1 -0
  136. package/fesm2015/tft-crispr-forms-ui-input-field.mjs +48 -0
  137. package/fesm2015/tft-crispr-forms-ui-input-field.mjs.map +1 -0
  138. package/fesm2015/tft-crispr-forms-ui-option.mjs +26 -0
  139. package/fesm2015/tft-crispr-forms-ui-option.mjs.map +1 -0
  140. package/fesm2015/tft-crispr-forms-ui-radio-field.mjs +46 -0
  141. package/fesm2015/tft-crispr-forms-ui-radio-field.mjs.map +1 -0
  142. package/fesm2015/tft-crispr-forms-ui-select-field.mjs +81 -0
  143. package/fesm2015/tft-crispr-forms-ui-select-field.mjs.map +1 -0
  144. package/fesm2015/tft-crispr-forms-ui-selected-file.mjs +33 -0
  145. package/fesm2015/tft-crispr-forms-ui-selected-file.mjs.map +1 -0
  146. package/fesm2015/tft-crispr-forms-ui-slider-field.mjs +51 -0
  147. package/fesm2015/tft-crispr-forms-ui-slider-field.mjs.map +1 -0
  148. package/fesm2015/tft-crispr-forms-ui-textarea-field.mjs +49 -0
  149. package/fesm2015/tft-crispr-forms-ui-textarea-field.mjs.map +1 -0
  150. package/fesm2015/tft-crispr-forms-ui-unit-conversion-field.mjs +93 -0
  151. package/fesm2015/tft-crispr-forms-ui-unit-conversion-field.mjs.map +1 -0
  152. package/fesm2015/tft-crispr-forms-ui.mjs +12 -0
  153. package/fesm2015/tft-crispr-forms-ui.mjs.map +1 -0
  154. package/fesm2015/tft-crispr-forms-utils.mjs +270 -0
  155. package/fesm2015/tft-crispr-forms-utils.mjs.map +1 -0
  156. package/fesm2015/tft-crispr-forms.mjs +131 -2128
  157. package/fesm2015/tft-crispr-forms.mjs.map +1 -1
  158. package/fesm2020/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs +137 -0
  159. package/fesm2020/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs.map +1 -0
  160. package/fesm2020/tft-crispr-forms-ui-autocomplete-field.mjs +100 -0
  161. package/fesm2020/tft-crispr-forms-ui-autocomplete-field.mjs.map +1 -0
  162. package/fesm2020/tft-crispr-forms-ui-button.mjs +55 -0
  163. package/fesm2020/tft-crispr-forms-ui-button.mjs.map +1 -0
  164. package/fesm2020/tft-crispr-forms-ui-checkbox-field.mjs +49 -0
  165. package/fesm2020/tft-crispr-forms-ui-checkbox-field.mjs.map +1 -0
  166. package/fesm2020/tft-crispr-forms-ui-datepicker-field.mjs +70 -0
  167. package/fesm2020/tft-crispr-forms-ui-datepicker-field.mjs.map +1 -0
  168. package/fesm2020/tft-crispr-forms-ui-divider.mjs +34 -0
  169. package/fesm2020/tft-crispr-forms-ui-divider.mjs.map +1 -0
  170. package/fesm2020/tft-crispr-forms-ui-field-container.mjs +65 -0
  171. package/fesm2020/tft-crispr-forms-ui-field-container.mjs.map +1 -0
  172. package/fesm2020/tft-crispr-forms-ui-file-dropzone.mjs +47 -0
  173. package/fesm2020/tft-crispr-forms-ui-file-dropzone.mjs.map +1 -0
  174. package/fesm2020/tft-crispr-forms-ui-file-upload-field.mjs +115 -0
  175. package/fesm2020/tft-crispr-forms-ui-file-upload-field.mjs.map +1 -0
  176. package/fesm2020/tft-crispr-forms-ui-heading.mjs +37 -0
  177. package/fesm2020/tft-crispr-forms-ui-heading.mjs.map +1 -0
  178. package/fesm2020/tft-crispr-forms-ui-image-upload-field.mjs +185 -0
  179. package/fesm2020/tft-crispr-forms-ui-image-upload-field.mjs.map +1 -0
  180. package/fesm2020/tft-crispr-forms-ui-info.mjs +30 -0
  181. package/fesm2020/tft-crispr-forms-ui-info.mjs.map +1 -0
  182. package/fesm2020/tft-crispr-forms-ui-input-field.mjs +48 -0
  183. package/fesm2020/tft-crispr-forms-ui-input-field.mjs.map +1 -0
  184. package/fesm2020/tft-crispr-forms-ui-option.mjs +26 -0
  185. package/fesm2020/tft-crispr-forms-ui-option.mjs.map +1 -0
  186. package/fesm2020/tft-crispr-forms-ui-radio-field.mjs +46 -0
  187. package/fesm2020/tft-crispr-forms-ui-radio-field.mjs.map +1 -0
  188. package/fesm2020/tft-crispr-forms-ui-select-field.mjs +80 -0
  189. package/fesm2020/tft-crispr-forms-ui-select-field.mjs.map +1 -0
  190. package/fesm2020/tft-crispr-forms-ui-selected-file.mjs +33 -0
  191. package/fesm2020/tft-crispr-forms-ui-selected-file.mjs.map +1 -0
  192. package/fesm2020/tft-crispr-forms-ui-slider-field.mjs +51 -0
  193. package/fesm2020/tft-crispr-forms-ui-slider-field.mjs.map +1 -0
  194. package/fesm2020/tft-crispr-forms-ui-textarea-field.mjs +49 -0
  195. package/fesm2020/tft-crispr-forms-ui-textarea-field.mjs.map +1 -0
  196. package/fesm2020/tft-crispr-forms-ui-unit-conversion-field.mjs +91 -0
  197. package/fesm2020/tft-crispr-forms-ui-unit-conversion-field.mjs.map +1 -0
  198. package/fesm2020/tft-crispr-forms-ui.mjs +12 -0
  199. package/fesm2020/tft-crispr-forms-ui.mjs.map +1 -0
  200. package/fesm2020/tft-crispr-forms-utils.mjs +269 -0
  201. package/fesm2020/tft-crispr-forms-utils.mjs.map +1 -0
  202. package/fesm2020/tft-crispr-forms.mjs +129 -2119
  203. package/fesm2020/tft-crispr-forms.mjs.map +1 -1
  204. package/index.d.ts +5 -1
  205. package/package.json +179 -4
  206. package/public-api.d.ts +3 -0
  207. package/src/index.d.ts +1 -0
  208. package/src/lib/crispr-forms.module.d.ts +15 -0
  209. package/src/lib/field-component-map.const.d.ts +42 -0
  210. package/{lib → src/lib}/field.directive.d.ts +4 -10
  211. package/{lib → src/lib}/form/form.component.d.ts +2 -12
  212. package/{lib → src/lib}/form-group-list/form-group-list.component.d.ts +12 -14
  213. package/{lib → src/lib}/form-group-list/index.d.ts +0 -1
  214. package/{lib → src/lib}/pipes/crispr-pipes.module.d.ts +0 -0
  215. package/{lib → src/lib}/pipes/initial-control-value.pipe.d.ts +1 -1
  216. package/src/lib/public_api.d.ts +2 -0
  217. package/{lib → src/lib}/sub-group/index.d.ts +0 -0
  218. package/{lib → src/lib}/sub-group/sub-group.component.d.ts +11 -13
  219. package/{lib → src/lib}/sub-group/sub-group.module.d.ts +2 -2
  220. package/tft-crispr-forms-14.0.1.tgz +0 -0
  221. package/ui/README.md +3 -0
  222. package/{lib/material → ui}/autocomplete-chiplist-field/autocomplete-chiplist-field.component.d.ts +2 -18
  223. package/ui/autocomplete-chiplist-field/index.d.ts +5 -0
  224. package/ui/autocomplete-chiplist-field/public-api.d.ts +1 -0
  225. package/{lib/material → ui}/autocomplete-field/autocomplete-field.component.d.ts +2 -16
  226. package/ui/autocomplete-field/index.d.ts +5 -0
  227. package/ui/autocomplete-field/public-api.d.ts +1 -0
  228. package/ui/button/button.component.d.ts +15 -0
  229. package/ui/button/index.d.ts +5 -0
  230. package/ui/button/public-api.d.ts +1 -0
  231. package/ui/checkbox-field/checkbox-field.component.d.ts +21 -0
  232. package/ui/checkbox-field/index.d.ts +5 -0
  233. package/ui/checkbox-field/public-api.d.ts +1 -0
  234. package/ui/datepicker-field/datepicker-field.component.d.ts +30 -0
  235. package/ui/datepicker-field/index.d.ts +5 -0
  236. package/ui/datepicker-field/public-api.d.ts +1 -0
  237. package/ui/divider/divider.component.d.ts +9 -0
  238. package/ui/divider/index.d.ts +5 -0
  239. package/ui/divider/public-api.d.ts +1 -0
  240. package/{lib → ui}/field-container/field-container.component.d.ts +2 -9
  241. package/ui/field-container/index.d.ts +5 -0
  242. package/{lib/field-container/index.d.ts → ui/field-container/public-api.d.ts} +0 -0
  243. package/{lib/material/file-upload → ui/file-dropzone}/file-dropzone.directive.d.ts +1 -1
  244. package/ui/file-dropzone/index.d.ts +5 -0
  245. package/{lib/material/file-upload/index.d.ts → ui/file-dropzone/public-api.d.ts} +0 -1
  246. package/ui/file-upload-field/file-upload-field.component.d.ts +37 -0
  247. package/ui/file-upload-field/index.d.ts +5 -0
  248. package/ui/file-upload-field/public-api.d.ts +1 -0
  249. package/ui/heading/heading.component.d.ts +8 -0
  250. package/ui/heading/index.d.ts +5 -0
  251. package/ui/heading/public-api.d.ts +1 -0
  252. package/ui/image-upload-field/image-upload-field.component.d.ts +48 -0
  253. package/ui/image-upload-field/index.d.ts +5 -0
  254. package/{lib/material/image-upload-field/index.d.ts → ui/image-upload-field/public-api.d.ts} +0 -0
  255. package/ui/index.d.ts +5 -0
  256. package/ui/info/index.d.ts +5 -0
  257. package/ui/info/info.component.d.ts +7 -0
  258. package/ui/info/public-api.d.ts +1 -0
  259. package/ui/input-field/index.d.ts +5 -0
  260. package/ui/input-field/input-field.component.d.ts +22 -0
  261. package/ui/input-field/public-api.d.ts +1 -0
  262. package/ui/option/index.d.ts +5 -0
  263. package/ui/option/option.component.d.ts +7 -0
  264. package/{lib/material/option/index.d.ts → ui/option/public-api.d.ts} +0 -0
  265. package/ui/public-api.d.ts +5 -0
  266. package/ui/radio-field/index.d.ts +5 -0
  267. package/ui/radio-field/public-api.d.ts +1 -0
  268. package/ui/radio-field/radio-field.component.d.ts +23 -0
  269. package/ui/select-field/index.d.ts +5 -0
  270. package/ui/select-field/public-api.d.ts +1 -0
  271. package/ui/select-field/select-field.component.d.ts +32 -0
  272. package/ui/selected-file/index.d.ts +5 -0
  273. package/ui/selected-file/public-api.d.ts +1 -0
  274. package/ui/selected-file/selected-file.component.d.ts +10 -0
  275. package/ui/slider-field/index.d.ts +5 -0
  276. package/ui/slider-field/public-api.d.ts +1 -0
  277. package/ui/slider-field/slider-field.component.d.ts +25 -0
  278. package/ui/textarea-field/index.d.ts +5 -0
  279. package/ui/textarea-field/public-api.d.ts +1 -0
  280. package/ui/textarea-field/textarea-field.component.d.ts +21 -0
  281. package/ui/unit-conversion-field/index.d.ts +5 -0
  282. package/ui/unit-conversion-field/public-api.d.ts +1 -0
  283. package/ui/unit-conversion-field/unit-conversion-field.component.d.ts +36 -0
  284. package/utils/README.md +3 -0
  285. package/{lib → utils}/abstracts/autocomplete-field.abstract.d.ts +0 -0
  286. package/{lib → utils}/abstracts/crispr-control.mixin.d.ts +0 -0
  287. package/{lib → utils}/abstracts/crispr-field.abstract.d.ts +1 -1
  288. package/{lib → utils}/abstracts/index.d.ts +0 -0
  289. package/utils/functions/buildFormGroupFromConfig.d.ts +9 -0
  290. package/utils/functions/callOptionsIfFunction.d.ts +3 -0
  291. package/utils/functions/createControlForType.d.ts +9 -0
  292. package/utils/functions/filterOptionsByLabel.d.ts +7 -0
  293. package/utils/functions/image-compression.helpers.d.ts +5 -0
  294. package/utils/functions/index.d.ts +7 -0
  295. package/utils/functions/isControlConfig.d.ts +5 -0
  296. package/utils/functions/observablifyOptions.d.ts +12 -0
  297. package/utils/index.d.ts +5 -0
  298. package/{lib → utils}/models/autocomplete-chiplist-field.config.d.ts +2 -1
  299. package/{lib → utils}/models/autocomplete-field.config.d.ts +1 -2
  300. package/{lib → utils}/models/button.config.d.ts +0 -0
  301. package/{lib → utils}/models/checkbox-field.config.d.ts +1 -2
  302. package/{lib → utils}/models/crispr-field.config.d.ts +1 -10
  303. package/{lib → utils}/models/datepicker-field.config.d.ts +1 -2
  304. package/{lib → utils}/models/divider.config.d.ts +1 -1
  305. package/{lib → utils}/models/file-upload-field.config.d.ts +9 -4
  306. package/{lib → utils}/models/form-group-list.config.d.ts +1 -2
  307. package/{lib → utils}/models/heading.config.d.ts +1 -2
  308. package/{lib → utils}/models/image-upload-field.config.d.ts +2 -1
  309. package/{lib → utils}/models/index.d.ts +0 -0
  310. package/{lib → utils}/models/input-field.config.d.ts +1 -2
  311. package/{lib → utils}/models/radio-field.config.d.ts +0 -0
  312. package/{lib → utils}/models/select-field.config.d.ts +1 -2
  313. package/{lib → utils}/models/slider-field.config.d.ts +1 -2
  314. package/{lib → utils}/models/textarea-field.config.d.ts +1 -2
  315. package/{lib → utils}/models/unit-conversion-field.config.d.ts +1 -2
  316. package/{lib → utils/operators}/form.operators.d.ts +0 -0
  317. package/utils/operators/index.d.ts +1 -0
  318. package/utils/public-api.d.ts +4 -0
  319. package/esm2020/index.mjs +0 -2
  320. package/esm2020/lib/abstracts/autocomplete-field.abstract.mjs +0 -30
  321. package/esm2020/lib/abstracts/crispr-control.mixin.mjs +0 -27
  322. package/esm2020/lib/abstracts/crispr-field.abstract.mjs +0 -17
  323. package/esm2020/lib/abstracts/index.mjs +0 -4
  324. package/esm2020/lib/crispr-forms.module.mjs +0 -65
  325. package/esm2020/lib/field-component-map.const.mjs +0 -28
  326. package/esm2020/lib/field-container/field-container.component.mjs +0 -83
  327. package/esm2020/lib/field-container/index.mjs +0 -2
  328. package/esm2020/lib/field.directive.mjs +0 -88
  329. package/esm2020/lib/form/form.component.mjs +0 -88
  330. package/esm2020/lib/form-group-list/form-group-list.component.mjs +0 -77
  331. package/esm2020/lib/form-group-list/form-group-list.module.mjs +0 -52
  332. package/esm2020/lib/form-group-list/index.mjs +0 -3
  333. package/esm2020/lib/form.helpers.mjs +0 -190
  334. package/esm2020/lib/form.operators.mjs +0 -24
  335. package/esm2020/lib/material/autocomplete-chiplist-field/autocomplete-chiplist-field.component.mjs +0 -165
  336. package/esm2020/lib/material/autocomplete-field/autocomplete-field.component.mjs +0 -124
  337. package/esm2020/lib/material/button/button.component.mjs +0 -70
  338. package/esm2020/lib/material/checkbox-field/checkbox-field.component.mjs +0 -69
  339. package/esm2020/lib/material/datepicker-field/datepicker-field.component.mjs +0 -91
  340. package/esm2020/lib/material/divider/divider.component.mjs +0 -46
  341. package/esm2020/lib/material/file-upload/file-dropzone.directive.mjs +0 -39
  342. package/esm2020/lib/material/file-upload/file-upload.component.mjs +0 -143
  343. package/esm2020/lib/material/file-upload/index.mjs +0 -3
  344. package/esm2020/lib/material/heading/heading.component.mjs +0 -52
  345. package/esm2020/lib/material/image-upload-field/image-compression.helpers.mjs +0 -4
  346. package/esm2020/lib/material/image-upload-field/image-upload-field.component.mjs +0 -263
  347. package/esm2020/lib/material/image-upload-field/index.mjs +0 -2
  348. package/esm2020/lib/material/index.mjs +0 -18
  349. package/esm2020/lib/material/info/info.component.mjs +0 -44
  350. package/esm2020/lib/material/input-field/input-field.component.mjs +0 -66
  351. package/esm2020/lib/material/material.module.mjs +0 -96
  352. package/esm2020/lib/material/option/index.mjs +0 -2
  353. package/esm2020/lib/material/option/option.component.mjs +0 -39
  354. package/esm2020/lib/material/radio-field/radio-field.component.mjs +0 -60
  355. package/esm2020/lib/material/select-field/select-field.component.mjs +0 -108
  356. package/esm2020/lib/material/selected-file/selected-file.component.mjs +0 -45
  357. package/esm2020/lib/material/slider-field/slider-field.component.mjs +0 -69
  358. package/esm2020/lib/material/textarea-field/textarea-field.component.mjs +0 -67
  359. package/esm2020/lib/material/unit-conversion-field/unit-conversion-field.component.mjs +0 -115
  360. package/esm2020/lib/models/autocomplete-chiplist-field.config.mjs +0 -2
  361. package/esm2020/lib/models/autocomplete-field.config.mjs +0 -2
  362. package/esm2020/lib/models/button.config.mjs +0 -2
  363. package/esm2020/lib/models/checkbox-field.config.mjs +0 -2
  364. package/esm2020/lib/models/crispr-field.config.mjs +0 -23
  365. package/esm2020/lib/models/datepicker-field.config.mjs +0 -2
  366. package/esm2020/lib/models/divider.config.mjs +0 -2
  367. package/esm2020/lib/models/file-upload-field.config.mjs +0 -2
  368. package/esm2020/lib/models/form-group-list.config.mjs +0 -2
  369. package/esm2020/lib/models/heading.config.mjs +0 -3
  370. package/esm2020/lib/models/image-upload-field.config.mjs +0 -2
  371. package/esm2020/lib/models/index.mjs +0 -18
  372. package/esm2020/lib/models/input-field.config.mjs +0 -2
  373. package/esm2020/lib/models/radio-field.config.mjs +0 -2
  374. package/esm2020/lib/models/select-field.config.mjs +0 -2
  375. package/esm2020/lib/models/slider-field.config.mjs +0 -2
  376. package/esm2020/lib/models/textarea-field.config.mjs +0 -2
  377. package/esm2020/lib/models/unit-conversion-field.config.mjs +0 -2
  378. package/esm2020/lib/pipes/initial-control-value.pipe.mjs +0 -20
  379. package/esm2020/lib/public_api.mjs +0 -10
  380. package/esm2020/lib/sub-group/index.mjs +0 -3
  381. package/esm2020/lib/sub-group/sub-group.component.mjs +0 -20
  382. package/esm2020/lib/sub-group/sub-group.module.mjs +0 -43
  383. package/lib/crispr-forms.module.d.ts +0 -16
  384. package/lib/field-component-map.const.d.ts +0 -28
  385. package/lib/form-group-list/form-group-list.module.d.ts +0 -15
  386. package/lib/form.helpers.d.ts +0 -88
  387. package/lib/material/button/button.component.d.ts +0 -26
  388. package/lib/material/checkbox-field/checkbox-field.component.d.ts +0 -34
  389. package/lib/material/datepicker-field/datepicker-field.component.d.ts +0 -45
  390. package/lib/material/divider/divider.component.d.ts +0 -17
  391. package/lib/material/file-upload/file-upload.component.d.ts +0 -54
  392. package/lib/material/heading/heading.component.d.ts +0 -17
  393. package/lib/material/image-upload-field/image-compression.helpers.d.ts +0 -1
  394. package/lib/material/image-upload-field/image-upload-field.component.d.ts +0 -68
  395. package/lib/material/index.d.ts +0 -17
  396. package/lib/material/info/info.component.d.ts +0 -15
  397. package/lib/material/input-field/input-field.component.d.ts +0 -35
  398. package/lib/material/material.module.d.ts +0 -26
  399. package/lib/material/option/option.component.d.ts +0 -14
  400. package/lib/material/radio-field/radio-field.component.d.ts +0 -35
  401. package/lib/material/select-field/select-field.component.d.ts +0 -48
  402. package/lib/material/selected-file/selected-file.component.d.ts +0 -17
  403. package/lib/material/slider-field/slider-field.component.d.ts +0 -38
  404. package/lib/material/textarea-field/textarea-field.component.d.ts +0 -35
  405. package/lib/material/unit-conversion-field/unit-conversion-field.component.d.ts +0 -52
  406. package/lib/public_api.d.ts +0 -9
  407. package/tft-crispr-forms-14.0.1-rc.0.tgz +0 -0
@@ -0,0 +1,5 @@
1
+ export * from './src/index';
2
+ export * from '@tft/crispr-forms/ui';
3
+ // eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
4
+ export * from '@tft/crispr-forms/utils';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyw4REFBOEQ7QUFDOUQsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5leHBvcnQgKiBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91dGlscyc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './lib/public_api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3B1YmxpY19hcGknO1xuIl19
@@ -0,0 +1,57 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ReactiveFormsModule } from '@angular/forms';
4
+ // custom modules
5
+ import { FormValidationHandlerModule } from '@tft/form-validation-handler';
6
+ // components
7
+ import { CrisprFormComponent } from './form/form.component';
8
+ import { FormGroupListComponent } from './form-group-list';
9
+ // directives
10
+ import { CrisprFieldDirective } from './field.directive';
11
+ import { SubGroupModule } from './sub-group';
12
+ import { CrisprPipesModule } from './pipes/crispr-pipes.module';
13
+ import { FieldContainerComponent } from '@tft/crispr-forms/ui';
14
+ import * as i0 from "@angular/core";
15
+ export class CrisprFormsModule {
16
+ }
17
+ CrisprFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18
+ CrisprFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, imports: [CommonModule,
19
+ ReactiveFormsModule,
20
+ FormValidationHandlerModule,
21
+ FormGroupListComponent,
22
+ FieldContainerComponent,
23
+ CrisprFieldDirective,
24
+ SubGroupModule,
25
+ CrisprPipesModule,
26
+ CrisprFormComponent], exports: [CrisprFormComponent,
27
+ FieldContainerComponent] });
28
+ CrisprFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, imports: [CommonModule,
29
+ ReactiveFormsModule,
30
+ FormValidationHandlerModule,
31
+ FormGroupListComponent,
32
+ FieldContainerComponent,
33
+ SubGroupModule,
34
+ CrisprPipesModule,
35
+ CrisprFormComponent] });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, decorators: [{
37
+ type: NgModule,
38
+ args: [{
39
+ imports: [
40
+ CommonModule,
41
+ ReactiveFormsModule,
42
+ FormValidationHandlerModule,
43
+ FormGroupListComponent,
44
+ FieldContainerComponent,
45
+ CrisprFieldDirective,
46
+ SubGroupModule,
47
+ CrisprPipesModule,
48
+ CrisprFormComponent
49
+ ],
50
+ exports: [
51
+ CrisprFormComponent,
52
+ FieldContainerComponent,
53
+ // MaterialModule
54
+ ]
55
+ }]
56
+ }] });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jpc3ByLWZvcm1zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvY3Jpc3ByLWZvcm1zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxpQkFBaUI7QUFDakIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFM0UsYUFBYTtBQUNiLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNELGFBQWE7QUFDYixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQW9CL0QsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLFlBaEIxQixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQixjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLG1CQUFtQixhQUduQixtQkFBbUI7UUFDbkIsdUJBQXVCOytHQUlkLGlCQUFpQixZQWhCMUIsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQiwyQkFBMkI7UUFDM0Isc0JBQXNCO1FBQ3RCLHVCQUF1QjtRQUV2QixjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLG1CQUFtQjsyRkFRVixpQkFBaUI7a0JBbEI3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLHVCQUF1Qjt3QkFDdkIsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsbUJBQW1CO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLGlCQUFpQjtxQkFDbEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG4vLyBjdXN0b20gbW9kdWxlc1xuaW1wb3J0IHsgRm9ybVZhbGlkYXRpb25IYW5kbGVyTW9kdWxlIH0gZnJvbSAnQHRmdC9mb3JtLXZhbGlkYXRpb24taGFuZGxlcic7XG5cbi8vIGNvbXBvbmVudHNcbmltcG9ydCB7IENyaXNwckZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybUdyb3VwTGlzdENvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1ncm91cC1saXN0Jztcbi8vIGRpcmVjdGl2ZXNcbmltcG9ydCB7IENyaXNwckZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi9maWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU3ViR3JvdXBNb2R1bGUgfSBmcm9tICcuL3N1Yi1ncm91cCc7XG5pbXBvcnQgeyBDcmlzcHJQaXBlc01vZHVsZSB9IGZyb20gJy4vcGlwZXMvY3Jpc3ByLXBpcGVzLm1vZHVsZSc7XG5pbXBvcnQgeyBGaWVsZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1WYWxpZGF0aW9uSGFuZGxlck1vZHVsZSxcbiAgICBGb3JtR3JvdXBMaXN0Q29tcG9uZW50LFxuICAgIEZpZWxkQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIENyaXNwckZpZWxkRGlyZWN0aXZlLFxuICAgIFN1Ykdyb3VwTW9kdWxlLFxuICAgIENyaXNwclBpcGVzTW9kdWxlLFxuICAgIENyaXNwckZvcm1Db21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENyaXNwckZvcm1Db21wb25lbnQsXG4gICAgRmllbGRDb250YWluZXJDb21wb25lbnQsXG4gICAgLy8gTWF0ZXJpYWxNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDcmlzcHJGb3Jtc01vZHVsZSB7IH1cbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { isControlConfig, ControlType } from '@tft/crispr-forms/utils';
2
+ export const FIELD_COMPONENTS = {
3
+ groupList: () => import('./form-group-list').then(({ FormGroupListComponent }) => FormGroupListComponent),
4
+ subGroup: () => import('./sub-group').then(({ SubGroupComponent }) => SubGroupComponent),
5
+ button: () => import('@tft/crispr-forms/ui/button').then(({ ButtonComponent }) => ButtonComponent),
6
+ input: () => import('@tft/crispr-forms/ui/input-field').then(({ InputFieldComponent }) => InputFieldComponent),
7
+ select: () => import('@tft/crispr-forms/ui/select-field').then(({ SelectFieldComponent }) => SelectFieldComponent),
8
+ radio: () => import('@tft/crispr-forms/ui/radio-field').then(({ RadioFieldComponent }) => RadioFieldComponent),
9
+ autocomplete: () => import('@tft/crispr-forms/ui/autocomplete-field').then(({ AutocompleteFieldComponent }) => AutocompleteFieldComponent),
10
+ autocompleteChiplist: () => import('@tft/crispr-forms/ui/autocomplete-chiplist-field').then(({ AutocompleteChiplistFieldComponent }) => AutocompleteChiplistFieldComponent),
11
+ textarea: () => import('@tft/crispr-forms/ui/textarea-field').then(({ TextareaFieldComponent }) => TextareaFieldComponent),
12
+ checkbox: () => import('@tft/crispr-forms/ui/checkbox-field').then(({ CheckboxFieldComponent }) => CheckboxFieldComponent),
13
+ slider: () => import('@tft/crispr-forms/ui/slider-field').then(({ SliderFieldComponent }) => SliderFieldComponent),
14
+ datepicker: () => import('@tft/crispr-forms/ui/datepicker-field').then(({ DatepickerFieldComponent }) => DatepickerFieldComponent),
15
+ fileUpload: () => import('@tft/crispr-forms/ui/file-upload-field').then(({ FileUploadFieldComponent }) => FileUploadFieldComponent),
16
+ imageUpload: () => import('@tft/crispr-forms/ui/image-upload-field').then(({ ImageUploadFieldComponent }) => ImageUploadFieldComponent),
17
+ heading: () => import('@tft/crispr-forms/ui').then(({ HeadingComponent }) => HeadingComponent),
18
+ divider: () => import('@tft/crispr-forms/ui/divider').then(({ DividerComponent }) => DividerComponent),
19
+ unitConversion: () => import('@tft/crispr-forms/ui/unit-conversion-field').then(({ UnitConversionFieldComponent }) => UnitConversionFieldComponent)
20
+ };
21
+ export function isControlComponent(component) {
22
+ return component && isControlConfig(component.config) && 'value' in component; // || component.config.controlType === ControlType.BUTTON;
23
+ }
24
+ export function isControlOrButtonComponent(component) {
25
+ return isControlComponent(component) || component.config.controlType === ControlType.BUTTON;
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtY29tcG9uZW50LW1hcC5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvZmllbGQtY29tcG9uZW50LW1hcC5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQkEsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5QixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFFLENBQUMsRUFBQyxzQkFBc0IsRUFBQyxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztJQUN4RyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsaUJBQWlCLEVBQUMsRUFBRSxFQUFFLENBQUUsaUJBQWlCLENBQUM7SUFDeEYsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsZUFBZSxFQUFDLEVBQUUsRUFBRSxDQUFFLGVBQWUsQ0FBQztJQUNsRyxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxtQkFBbUIsRUFBQyxFQUFFLEVBQUUsQ0FBRSxtQkFBbUIsQ0FBQztJQUM5RyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxvQkFBb0IsRUFBQyxFQUFFLEVBQUUsQ0FBRSxvQkFBb0IsQ0FBQztJQUNsSCxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxtQkFBbUIsRUFBQyxFQUFFLEVBQUUsQ0FBRSxtQkFBbUIsQ0FBQztJQUM5RyxZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHlDQUF5QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSwwQkFBMEIsRUFBQyxFQUFFLEVBQUUsQ0FBRSwwQkFBMEIsQ0FBQztJQUMxSSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsa0RBQWtELENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGtDQUFrQyxFQUFDLEVBQUUsRUFBRSxDQUFFLGtDQUFrQyxDQUFDO0lBQzNLLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixFQUFDLEVBQUUsRUFBRSxDQUFFLHNCQUFzQixDQUFDO0lBQzFILFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixFQUFDLEVBQUUsRUFBRSxDQUFFLHNCQUFzQixDQUFDO0lBQzFILE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLG9CQUFvQixFQUFDLEVBQUUsRUFBRSxDQUFFLG9CQUFvQixDQUFDO0lBQ2xILFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHdCQUF3QixFQUFDLEVBQUUsRUFBRSxDQUFFLHdCQUF3QixDQUFDO0lBQ2xJLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHdCQUF3QixFQUFDLEVBQUUsRUFBRSxDQUFFLHdCQUF3QixDQUFDO0lBQ25JLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHlCQUF5QixFQUFDLEVBQUUsRUFBRSxDQUFFLHlCQUF5QixDQUFDO0lBQ3ZJLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixFQUFDLEVBQUUsRUFBRSxDQUFFLGdCQUFnQixDQUFDO0lBQzlGLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixFQUFDLEVBQUUsRUFBRSxDQUFFLGdCQUFnQixDQUFDO0lBQ3RHLGNBQWMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNENBQTRDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLDRCQUE0QixFQUFDLEVBQUUsRUFBRSxDQUFFLDRCQUE0QixDQUFDO0NBQ3BKLENBQUM7QUFFRixNQUFNLFVBQVUsa0JBQWtCLENBQUMsU0FBbUM7SUFDcEUsT0FBTyxTQUFTLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLElBQUksU0FBUyxDQUFBLENBQUMsMERBQTBEO0FBQzFJLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsU0FBbUM7SUFDNUUsT0FBTyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsTUFBTSxDQUFDO0FBQzlGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzICovXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG1heC1saW5lLWxlbmd0aFxuaW1wb3J0IHR5cGUgeyBGb3JtR3JvdXBMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWdyb3VwLWxpc3QvZm9ybS1ncm91cC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7IFN1Ykdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9zdWItZ3JvdXAvc3ViLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7IEhlYWRpbmdDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aSc7XG5pbXBvcnQgdHlwZSB7IEltYWdlVXBsb2FkRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9pbWFnZS11cGxvYWQtZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBEYXRlcGlja2VyRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9kYXRlcGlja2VyLWZpZWxkJztcbmltcG9ydCB0eXBlIHsgQ2hlY2tib3hGaWVsZENvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL2NoZWNrYm94LWZpZWxkJztcbmltcG9ydCB0eXBlIHsgVGV4dGFyZWFGaWVsZENvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL3RleHRhcmVhLWZpZWxkJztcbmltcG9ydCB0eXBlIHsgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9hdXRvY29tcGxldGUtZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBTZWxlY3RGaWVsZENvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL3NlbGVjdC1maWVsZCc7XG5pbXBvcnQgdHlwZSB7IElucHV0RmllbGRDb21wb25lbnQsIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvaW5wdXQtZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBSYWRpb0ZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvcmFkaW8tZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBGaWxlVXBsb2FkRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9maWxlLXVwbG9hZC1maWVsZCc7XG5pbXBvcnQgdHlwZSB7IFNsaWRlckZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvc2xpZGVyLWZpZWxkJztcbmltcG9ydCB0eXBlIHsgRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL2RpdmlkZXInO1xuaW1wb3J0IHR5cGUgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9idXR0b24nO1xuaW1wb3J0IHR5cGUgeyBVbml0Q29udmVyc2lvbkZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvdW5pdC1jb252ZXJzaW9uLWZpZWxkJztcblxuaW1wb3J0IHR5cGUgeyBBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkJztcblxuaW1wb3J0IHsgaXNDb250cm9sQ29uZmlnLCBDb250cm9sVHlwZSB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IEZJRUxEX0NPTVBPTkVOVFMgPSB7XG4gIGdyb3VwTGlzdDogKCkgPT4gaW1wb3J0KCcuL2Zvcm0tZ3JvdXAtbGlzdCcpLnRoZW4gKCh7Rm9ybUdyb3VwTGlzdENvbXBvbmVudH0pID0+IEZvcm1Hcm91cExpc3RDb21wb25lbnQpLFxuICBzdWJHcm91cDogKCkgPT4gaW1wb3J0KCcuL3N1Yi1ncm91cCcpLnRoZW4oKHsgU3ViR3JvdXBDb21wb25lbnR9KSA9PiAgU3ViR3JvdXBDb21wb25lbnQpLFxuICBidXR0b246ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvYnV0dG9uJykudGhlbigoeyBCdXR0b25Db21wb25lbnR9KSA9PiAgQnV0dG9uQ29tcG9uZW50KSxcbiAgaW5wdXQ6ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvaW5wdXQtZmllbGQnKS50aGVuKCh7IElucHV0RmllbGRDb21wb25lbnR9KSA9PiAgSW5wdXRGaWVsZENvbXBvbmVudCksXG4gIHNlbGVjdDogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9zZWxlY3QtZmllbGQnKS50aGVuKCh7IFNlbGVjdEZpZWxkQ29tcG9uZW50fSkgPT4gIFNlbGVjdEZpZWxkQ29tcG9uZW50KSxcbiAgcmFkaW86ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvcmFkaW8tZmllbGQnKS50aGVuKCh7IFJhZGlvRmllbGRDb21wb25lbnR9KSA9PiAgUmFkaW9GaWVsZENvbXBvbmVudCksXG4gIGF1dG9jb21wbGV0ZTogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9hdXRvY29tcGxldGUtZmllbGQnKS50aGVuKCh7IEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50fSkgPT4gIEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50KSxcbiAgYXV0b2NvbXBsZXRlQ2hpcGxpc3Q6ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkJykudGhlbigoeyBBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29tcG9uZW50fSkgPT4gIEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb21wb25lbnQpLFxuICB0ZXh0YXJlYTogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS90ZXh0YXJlYS1maWVsZCcpLnRoZW4oKHsgVGV4dGFyZWFGaWVsZENvbXBvbmVudH0pID0+ICBUZXh0YXJlYUZpZWxkQ29tcG9uZW50KSxcbiAgY2hlY2tib3g6ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvY2hlY2tib3gtZmllbGQnKS50aGVuKCh7IENoZWNrYm94RmllbGRDb21wb25lbnR9KSA9PiAgQ2hlY2tib3hGaWVsZENvbXBvbmVudCksXG4gIHNsaWRlcjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9zbGlkZXItZmllbGQnKS50aGVuKCh7IFNsaWRlckZpZWxkQ29tcG9uZW50fSkgPT4gIFNsaWRlckZpZWxkQ29tcG9uZW50KSxcbiAgZGF0ZXBpY2tlcjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9kYXRlcGlja2VyLWZpZWxkJykudGhlbigoeyBEYXRlcGlja2VyRmllbGRDb21wb25lbnR9KSA9PiAgRGF0ZXBpY2tlckZpZWxkQ29tcG9uZW50KSxcbiAgZmlsZVVwbG9hZDogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9maWxlLXVwbG9hZC1maWVsZCcpLnRoZW4oKHsgRmlsZVVwbG9hZEZpZWxkQ29tcG9uZW50fSkgPT4gIEZpbGVVcGxvYWRGaWVsZENvbXBvbmVudCksXG4gIGltYWdlVXBsb2FkOiAoKSA9PiBpbXBvcnQoJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL2ltYWdlLXVwbG9hZC1maWVsZCcpLnRoZW4oKHsgSW1hZ2VVcGxvYWRGaWVsZENvbXBvbmVudH0pID0+ICBJbWFnZVVwbG9hZEZpZWxkQ29tcG9uZW50KSxcbiAgaGVhZGluZzogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aScpLnRoZW4oKHsgSGVhZGluZ0NvbXBvbmVudH0pID0+ICBIZWFkaW5nQ29tcG9uZW50KSxcbiAgZGl2aWRlcjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9kaXZpZGVyJykudGhlbigoeyBEaXZpZGVyQ29tcG9uZW50fSkgPT4gIERpdmlkZXJDb21wb25lbnQpLFxuICB1bml0Q29udmVyc2lvbjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS91bml0LWNvbnZlcnNpb24tZmllbGQnKS50aGVuKCh7IFVuaXRDb252ZXJzaW9uRmllbGRDb21wb25lbnR9KSA9PiAgVW5pdENvbnZlcnNpb25GaWVsZENvbXBvbmVudClcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbnRyb2xDb21wb25lbnQoY29tcG9uZW50OiBDcmlzcHJGaWVsZENvbXBvbmVudFR5cGUpOiBjb21wb25lbnQgaXMgQ3Jpc3ByQ29udHJvbENvbXBvbmVudFR5cGUge1xuICByZXR1cm4gY29tcG9uZW50ICYmIGlzQ29udHJvbENvbmZpZyhjb21wb25lbnQuY29uZmlnKSAmJiAndmFsdWUnIGluIGNvbXBvbmVudCAvLyB8fCBjb21wb25lbnQuY29uZmlnLmNvbnRyb2xUeXBlID09PSBDb250cm9sVHlwZS5CVVRUT047XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbnRyb2xPckJ1dHRvbkNvbXBvbmVudChjb21wb25lbnQ6IENyaXNwckZpZWxkQ29tcG9uZW50VHlwZSk6IGNvbXBvbmVudCBpcyBDcmlzcHJDb250cm9sT3JCdXR0b24ge1xuICByZXR1cm4gaXNDb250cm9sQ29tcG9uZW50KGNvbXBvbmVudCkgfHwgY29tcG9uZW50LmNvbmZpZy5jb250cm9sVHlwZSA9PT0gQ29udHJvbFR5cGUuQlVUVE9OO1xufVxuXG5leHBvcnQgdHlwZSBDcmlzcHJDb250cm9sT3JCdXR0b24gPSBDcmlzcHJDb250cm9sQ29tcG9uZW50VHlwZSB8IEJ1dHRvbkNvbXBvbmVudDtcblxuZXhwb3J0IHR5cGUgQ3Jpc3ByQ29udHJvbENvbXBvbmVudFR5cGUgPSBJbnB1dEZpZWxkQ29tcG9uZW50IHxcbiAgU2VsZWN0RmllbGRDb21wb25lbnQgfFxuICBSYWRpb0ZpZWxkQ29tcG9uZW50IHxcbiAgU3ViR3JvdXBDb21wb25lbnQgfFxuICBGb3JtR3JvdXBMaXN0Q29tcG9uZW50IHxcbiAgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfFxuICBBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29tcG9uZW50IHxcbiAgVGV4dGFyZWFGaWVsZENvbXBvbmVudCB8XG4gIENoZWNrYm94RmllbGRDb21wb25lbnQgfFxuICBTbGlkZXJGaWVsZENvbXBvbmVudCB8XG4gIEZpbGVVcGxvYWRGaWVsZENvbXBvbmVudCB8XG4gIEltYWdlVXBsb2FkRmllbGRDb21wb25lbnR8XG4gIERhdGVwaWNrZXJGaWVsZENvbXBvbmVudCB8XG4gIFVuaXRDb252ZXJzaW9uRmllbGRDb21wb25lbnQ7XG5cbmV4cG9ydCB0eXBlIENvbXBvbmVudEtleXMgPSBrZXlvZiB0eXBlb2YgRklFTERfQ09NUE9ORU5UUztcbi8vIGV4cG9ydCB0eXBlIENyaXNwckZpZWxkQ29tcG9uZW50ID0gRklFTERfQ09NUE9ORU5UU1tDb21wb25lbnRLZXlzXTtcblxuZXhwb3J0IHR5cGUgQ3Jpc3ByRmllbGRDb21wb25lbnRUeXBlID0gQ3Jpc3ByQ29udHJvbENvbXBvbmVudFR5cGUgfFxuICBIZWFkaW5nQ29tcG9uZW50IHxcbiAgRGl2aWRlckNvbXBvbmVudCB8XG4gIEJ1dHRvbkNvbXBvbmVudDtcblxuIl19
@@ -0,0 +1,69 @@
1
+ import { Directive, Input, ViewContainerRef, Renderer2, ChangeDetectorRef } from '@angular/core';
2
+ import { FormGroup } from '@angular/forms';
3
+ import { FIELD_COMPONENTS, isControlComponent, isControlOrButtonComponent } from './field-component-map.const';
4
+ import * as i0 from "@angular/core";
5
+ export class CrisprFieldDirective {
6
+ constructor(container, renderer, cdr) {
7
+ this.container = container;
8
+ this.renderer = renderer;
9
+ this.cdr = cdr;
10
+ }
11
+ set value(value) {
12
+ this._value = value;
13
+ // This is needed to keep the group list from resetting control values to the initial input value
14
+ this.updateComponentValue(value);
15
+ }
16
+ ;
17
+ get value() {
18
+ return this._value;
19
+ }
20
+ async ngOnInit() {
21
+ /**
22
+ * create component and set values from config on its instance
23
+ */
24
+ const component = this.config.component || await FIELD_COMPONENTS[this.config.controlType]();
25
+ const componentRef = this.container.createComponent(component);
26
+ this.component = componentRef.instance;
27
+ this.component.config = this.config;
28
+ if (isControlOrButtonComponent(this.component)) {
29
+ this.component.group = this.group;
30
+ }
31
+ this.updateComponentValue(this.value);
32
+ // adds any config classes to the dynamically generated component
33
+ // doing this here keeps us from having to extend a base component into each field component individually
34
+ if (!this.config.classes)
35
+ return;
36
+ this.config.classes.forEach((klass) => {
37
+ // check for passing multiple classes in one array element
38
+ if (klass.includes(' ')) {
39
+ throw Error(`Improperly formatted class. '${klass}' cannot contain spaces.`);
40
+ }
41
+ else {
42
+ this.renderer.addClass(componentRef.location.nativeElement, klass);
43
+ }
44
+ });
45
+ }
46
+ updateComponentValue(value) {
47
+ if (isControlComponent(this.component)) {
48
+ this.component.value = value;
49
+ // SubGroups won't populate without this detectChanges
50
+ this.cdr.detectChanges();
51
+ }
52
+ }
53
+ }
54
+ CrisprFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFieldDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
55
+ CrisprFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.1", type: CrisprFieldDirective, isStandalone: true, selector: "[crisprField]", inputs: { config: "config", group: "group", value: "value" }, ngImport: i0 });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFieldDirective, decorators: [{
57
+ type: Directive,
58
+ args: [{
59
+ selector: '[crisprField]',
60
+ standalone: true
61
+ }]
62
+ }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { config: [{
63
+ type: Input
64
+ }], group: [{
65
+ type: Input
66
+ }], value: [{
67
+ type: Input
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmlzcHItZm9ybXMvc3JjL2xpYi9maWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQTRCLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBUXpJLE1BQU0sT0FBTyxvQkFBb0I7SUFrQi9CLFlBQ1UsU0FBMkIsRUFDM0IsUUFBbUIsRUFDbkIsR0FBc0I7UUFGdEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUM3QixDQUFDO0lBZEosSUFBYSxLQUFLLENBQUMsS0FBMkI7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsaUdBQWlHO1FBQ2pHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQUEsQ0FBQztJQUNGLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBU0QsS0FBSyxDQUFDLFFBQVE7UUFDWjs7V0FFRztRQUNILE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLE1BQU0sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzdGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUEyQixTQUFTLENBQUMsQ0FBQztRQUV6RixJQUFJLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFJLDBCQUEwQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QyxpRUFBaUU7UUFDakUseUdBQXlHO1FBQ3pHLElBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLDBEQUEwRDtZQUMxRCxJQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLE1BQU0sS0FBSyxDQUFDLGdDQUFnQyxLQUFLLDBCQUEwQixDQUFDLENBQUM7YUFDOUU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUEyQjtRQUM5QyxJQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDN0Isc0RBQXNEO1lBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDMUI7SUFDSCxDQUFDOztpSEF4RFUsb0JBQW9CO3FHQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOytKQUdVLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS08sS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFZpZXdDb250YWluZXJSZWYsIFJlbmRlcmVyMiwgT25Jbml0LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ3Jpc3ByRmllbGRDb21wb25lbnRUeXBlLCBGSUVMRF9DT01QT05FTlRTLCBpc0NvbnRyb2xDb21wb25lbnQsIGlzQ29udHJvbE9yQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9maWVsZC1jb21wb25lbnQtbWFwLmNvbnN0Jztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5pbXBvcnQgeyBBbnlGaWVsZENvbmZpZywgQ29udHJvbFZhbHVlIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY3Jpc3ByRmllbGRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBDcmlzcHJGaWVsZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlnOiBBbnlGaWVsZENvbmZpZztcbiAgQElucHV0KCkgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgLyoqXG4gICAqIHZhbHVlIHNldHRlciB1cGRhdGVzIHRoZSBjb250cm9sJ3MgdmFsdWUgYXMgd2VsbFxuICAgKi9cbiAgX3ZhbHVlOiBDb250cm9sVmFsdWUgfCBhbnlbXVxuICBASW5wdXQoKSBzZXQgdmFsdWUodmFsdWU6IENvbnRyb2xWYWx1ZSB8IGFueVtdKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAvLyBUaGlzIGlzIG5lZWRlZCB0byBrZWVwIHRoZSBncm91cCBsaXN0IGZyb20gcmVzZXR0aW5nIGNvbnRyb2wgdmFsdWVzIHRvIHRoZSBpbml0aWFsIGlucHV0IHZhbHVlXG4gICAgdGhpcy51cGRhdGVDb21wb25lbnRWYWx1ZSh2YWx1ZSk7XG4gIH07XG4gIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cbiAgY29tcG9uZW50OiBDcmlzcHJGaWVsZENvbXBvbmVudFR5cGU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgLyoqXG4gICAgICogY3JlYXRlIGNvbXBvbmVudCBhbmQgc2V0IHZhbHVlcyBmcm9tIGNvbmZpZyBvbiBpdHMgaW5zdGFuY2VcbiAgICAgKi9cbiAgICBjb25zdCBjb21wb25lbnQgPSB0aGlzLmNvbmZpZy5jb21wb25lbnQgfHwgYXdhaXQgRklFTERfQ09NUE9ORU5UU1t0aGlzLmNvbmZpZy5jb250cm9sVHlwZV0oKTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQ8Q3Jpc3ByRmllbGRDb21wb25lbnRUeXBlPihjb21wb25lbnQpO1xuXG4gICAgdGhpcy5jb21wb25lbnQgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgdGhpcy5jb21wb25lbnQuY29uZmlnID0gdGhpcy5jb25maWc7XG4gICAgaWYgKGlzQ29udHJvbE9yQnV0dG9uQ29tcG9uZW50KHRoaXMuY29tcG9uZW50KSkge1xuICAgICAgdGhpcy5jb21wb25lbnQuZ3JvdXAgPSB0aGlzLmdyb3VwO1xuICAgIH1cbiAgICB0aGlzLnVwZGF0ZUNvbXBvbmVudFZhbHVlKHRoaXMudmFsdWUpO1xuICAgIC8vIGFkZHMgYW55IGNvbmZpZyBjbGFzc2VzIHRvIHRoZSBkeW5hbWljYWxseSBnZW5lcmF0ZWQgY29tcG9uZW50XG4gICAgLy8gZG9pbmcgdGhpcyBoZXJlIGtlZXBzIHVzIGZyb20gaGF2aW5nIHRvIGV4dGVuZCBhIGJhc2UgY29tcG9uZW50IGludG8gZWFjaCBmaWVsZCBjb21wb25lbnQgaW5kaXZpZHVhbGx5XG4gICAgaWYoIXRoaXMuY29uZmlnLmNsYXNzZXMpIHJldHVybjtcbiAgICB0aGlzLmNvbmZpZy5jbGFzc2VzLmZvckVhY2goKGtsYXNzKSA9PiB7XG4gICAgICAvLyBjaGVjayBmb3IgcGFzc2luZyBtdWx0aXBsZSBjbGFzc2VzIGluIG9uZSBhcnJheSBlbGVtZW50XG4gICAgICBpZihrbGFzcy5pbmNsdWRlcygnICcpKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBJbXByb3Blcmx5IGZvcm1hdHRlZCBjbGFzcy4gJyR7a2xhc3N9JyBjYW5ub3QgY29udGFpbiBzcGFjZXMuYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGNvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LCBrbGFzcyk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICB1cGRhdGVDb21wb25lbnRWYWx1ZSh2YWx1ZTogQ29udHJvbFZhbHVlIHwgYW55W10pIHtcbiAgICBpZihpc0NvbnRyb2xDb21wb25lbnQodGhpcy5jb21wb25lbnQpKSB7XG4gICAgICB0aGlzLmNvbXBvbmVudC52YWx1ZSA9IHZhbHVlO1xuICAgICAgLy8gU3ViR3JvdXBzIHdvbid0IHBvcHVsYXRlIHdpdGhvdXQgdGhpcyBkZXRlY3RDaGFuZ2VzXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,63 @@
1
+ import { Component, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';
2
+ import { ReactiveFormsModule, FormGroup } from '@angular/forms';
3
+ import { Observable } from 'rxjs';
4
+ import { CommonModule } from '@angular/common';
5
+ import { CrisprFieldDirective } from '../field.directive';
6
+ import { FormValidationHandlerModule } from '@tft/form-validation-handler';
7
+ import { CrisprPipesModule } from '../pipes/crispr-pipes.module';
8
+ // eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
9
+ import { buildFormGroupFromConfig } from '@tft/crispr-forms/utils';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/common";
12
+ import * as i2 from "@angular/forms";
13
+ import * as i3 from "@tft/form-validation-handler";
14
+ import * as i4 from "../pipes/initial-control-value.pipe";
15
+ export class CrisprFormComponent {
16
+ constructor() {
17
+ this.form = new FormGroup({});
18
+ this.value = null;
19
+ this.submitted = new EventEmitter();
20
+ // proxy value and status change events through to consuming component
21
+ this.valueChanges = this.form.valueChanges;
22
+ this.statusChanges = this.form.statusChanges;
23
+ }
24
+ ngOnInit() {
25
+ // build out the form, note that we pass in the form as the third argument and the function modifies it
26
+ buildFormGroupFromConfig(this.config, this.value, this.form);
27
+ }
28
+ handleSubmit() {
29
+ this.form.markAllAsTouched();
30
+ this.submitted.emit(this.form);
31
+ }
32
+ triggerSubmit() {
33
+ this.submitTrigger.nativeElement.click();
34
+ }
35
+ }
36
+ CrisprFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
+ CrisprFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: CrisprFormComponent, isStandalone: true, selector: "crispr-form", inputs: { config: "config", form: "form", value: "value" }, outputs: { submitted: "submitted", valueChanges: "valueChanges", statusChanges: "statusChanges" }, viewQueries: [{ propertyName: "submitTrigger", first: true, predicate: ["submitTrigger"], descendants: true }], ngImport: i0, template: "<form\n class=\"crispr-form\"\n [ngClass]=\"config.classes\"\n [formGroup]=\"form\"\n (ngSubmit)=\"handleSubmit()\"\n [autocomplete]=\"config.autocomplete || 'off'\"\n [errorDictionary]=\"config.errorDictionary\"\n #ngFormElement=\"ngForm\">\n\n <ng-container\n *ngFor=\"let field of config.fields;\"\n crisprField\n [value]=\"value | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"form\">\n </ng-container>\n <!-- Hidden button, programmatically clicked when crispr form triggerSubmit function called.\n Uses a hidden button with type=\"submit\" because it will trigger both native form submit event\n (which the error handler has to listen for) and ngSubmit event -->\n <button #submitTrigger class=\"submit-trigger\" type=\"submit\">\n </button>\n</form>\n", styles: [".submit-trigger{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: CrisprFieldDirective, selector: "[crisprField]", inputs: ["config", "group", "value"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormValidationHandlerModule }, { kind: "directive", type: i3.ControlErrorsFormDirective, selector: "form", inputs: ["errorDictionary"] }, { kind: "directive", type: i3.ControlErrorContainerDirective, selector: "[controlErrorContainer], [formGroup]" }, { kind: "ngmodule", type: CrisprPipesModule }, { kind: "pipe", type: i4.InitialControlValuePipe, name: "initialControlValue" }], preserveWhitespaces: true });
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormComponent, decorators: [{
39
+ type: Component,
40
+ args: [{ selector: 'crispr-form', standalone: true, imports: [
41
+ CommonModule,
42
+ CrisprFieldDirective,
43
+ ReactiveFormsModule,
44
+ FormValidationHandlerModule,
45
+ CrisprPipesModule
46
+ ], template: "<form\n class=\"crispr-form\"\n [ngClass]=\"config.classes\"\n [formGroup]=\"form\"\n (ngSubmit)=\"handleSubmit()\"\n [autocomplete]=\"config.autocomplete || 'off'\"\n [errorDictionary]=\"config.errorDictionary\"\n #ngFormElement=\"ngForm\">\n\n <ng-container\n *ngFor=\"let field of config.fields;\"\n crisprField\n [value]=\"value | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"form\">\n </ng-container>\n <!-- Hidden button, programmatically clicked when crispr form triggerSubmit function called.\n Uses a hidden button with type=\"submit\" because it will trigger both native form submit event\n (which the error handler has to listen for) and ngSubmit event -->\n <button #submitTrigger class=\"submit-trigger\" type=\"submit\">\n </button>\n</form>\n", styles: [".submit-trigger{display:none}\n"] }]
47
+ }], propDecorators: { config: [{
48
+ type: Input
49
+ }], form: [{
50
+ type: Input
51
+ }], value: [{
52
+ type: Input
53
+ }], submitted: [{
54
+ type: Output
55
+ }], valueChanges: [{
56
+ type: Output
57
+ }], statusChanges: [{
58
+ type: Output
59
+ }], submitTrigger: [{
60
+ type: ViewChild,
61
+ args: ['submitTrigger']
62
+ }] } });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0vZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0vZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLDhEQUE4RDtBQUM5RCxPQUFPLEVBQWlDLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQWdCbEcsTUFBTSxPQUFPLG1CQUFtQjtJQWRoQztRQWlCVyxTQUFJLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEMsVUFBSyxHQUFzQixJQUFJLENBQUM7UUFHL0IsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFDcEQsc0VBQXNFO1FBQzVELGlCQUFZLEdBQW9CLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3ZELGtCQUFhLEdBQXVCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO0tBaUJ2RTtJQWJDLFFBQVE7UUFDTix1R0FBdUc7UUFDdkcsd0JBQXdCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQyxDQUFDOztnSEExQlUsbUJBQW1CO29HQUFuQixtQkFBbUIsc1ZDeEJoQywyeUJBc0JBLHdGRExJLFlBQVksMFBBQ1osb0JBQW9CLCtGQUNwQixtQkFBbUIsb2JBQ25CLDJCQUEyQiwyUEFDM0IsaUJBQWlCOzJGQUdSLG1CQUFtQjtrQkFkL0IsU0FBUzsrQkFDRSxhQUFhLGNBSVgsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLDJCQUEyQjt3QkFDM0IsaUJBQWlCO3FCQUNsQjs4QkFJUSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFHSSxTQUFTO3NCQUFsQixNQUFNO2dCQUVHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFFcUIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ3Jpc3ByRmllbGREaXJlY3RpdmUgfSBmcm9tICcuLi9maWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybVZhbGlkYXRpb25IYW5kbGVyTW9kdWxlIH0gZnJvbSAnQHRmdC9mb3JtLXZhbGlkYXRpb24taGFuZGxlcic7XG5pbXBvcnQgeyBDcmlzcHJQaXBlc01vZHVsZSB9IGZyb20gJy4uL3BpcGVzL2NyaXNwci1waXBlcy5tb2R1bGUnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBucndsL254L2VuZm9yY2UtbW9kdWxlLWJvdW5kYXJpZXNcbmltcG9ydCB7IENvbnRyb2xHcm91cFZhbHVlLCBGb3JtQ29uZmlnLCBidWlsZEZvcm1Hcm91cEZyb21Db25maWcgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NyaXNwci1mb3JtJyxcbiAgc3R5bGVVcmxzOiBbJ2Zvcm0uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICdmb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgLy8gY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQ3Jpc3ByRmllbGREaXJlY3RpdmUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGUsXG4gICAgQ3Jpc3ByUGlwZXNNb2R1bGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3Jpc3ByRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vIGlmIG5vIGZvcm0gaGFzIGJlZW4gcGFzc2VkIGluIGJ5IGNvbnN1bWluZyBjb21wb25lbnQsIHdlIGNyZWF0ZSBhbiBlbXB0eSBncm91cCB0byBidWlsZCBvdXRcbiAgQElucHV0KCkgY29uZmlnOiBGb3JtQ29uZmlnO1xuICBASW5wdXQoKSBmb3JtOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgQElucHV0KCkgdmFsdWU6IENvbnRyb2xHcm91cFZhbHVlID0gbnVsbDtcblxuXG4gIEBPdXRwdXQoKSBzdWJtaXR0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Hcm91cD4oKTtcbiAgLy8gcHJveHkgdmFsdWUgYW5kIHN0YXR1cyBjaGFuZ2UgZXZlbnRzIHRocm91Z2ggdG8gY29uc3VtaW5nIGNvbXBvbmVudFxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VzOiBPYnNlcnZhYmxlPGFueT4gPSB0aGlzLmZvcm0udmFsdWVDaGFuZ2VzO1xuICBAT3V0cHV0KCkgc3RhdHVzQ2hhbmdlczogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gdGhpcy5mb3JtLnN0YXR1c0NoYW5nZXM7XG5cbiAgQFZpZXdDaGlsZCgnc3VibWl0VHJpZ2dlcicpIHN1Ym1pdFRyaWdnZXI6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vIGJ1aWxkIG91dCB0aGUgZm9ybSwgbm90ZSB0aGF0IHdlIHBhc3MgaW4gdGhlIGZvcm0gYXMgdGhlIHRoaXJkIGFyZ3VtZW50IGFuZCB0aGUgZnVuY3Rpb24gbW9kaWZpZXMgaXRcbiAgICBidWlsZEZvcm1Hcm91cEZyb21Db25maWcodGhpcy5jb25maWcsIHRoaXMudmFsdWUsIHRoaXMuZm9ybSk7XG4gIH1cblxuICBoYW5kbGVTdWJtaXQoKSB7XG4gICAgdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICB0aGlzLnN1Ym1pdHRlZC5lbWl0KHRoaXMuZm9ybSk7XG4gIH1cblxuICB0cmlnZ2VyU3VibWl0KCkge1xuICAgIHRoaXMuc3VibWl0VHJpZ2dlci5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XG4gIH1cbn1cbiIsIjxmb3JtXG4gIGNsYXNzPVwiY3Jpc3ByLWZvcm1cIlxuICBbbmdDbGFzc109XCJjb25maWcuY2xhc3Nlc1wiXG4gIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gIChuZ1N1Ym1pdCk9XCJoYW5kbGVTdWJtaXQoKVwiXG4gIFthdXRvY29tcGxldGVdPVwiY29uZmlnLmF1dG9jb21wbGV0ZSB8fCAnb2ZmJ1wiXG4gIFtlcnJvckRpY3Rpb25hcnldPVwiY29uZmlnLmVycm9yRGljdGlvbmFyeVwiXG4gICNuZ0Zvcm1FbGVtZW50PVwibmdGb3JtXCI+XG5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjb25maWcuZmllbGRzO1wiXG4gICAgY3Jpc3ByRmllbGRcbiAgICBbdmFsdWVdPVwidmFsdWUgfCBpbml0aWFsQ29udHJvbFZhbHVlIDogZmllbGRcIlxuICAgIFtjb25maWddPVwiZmllbGRcIlxuICAgIFtncm91cF09XCJmb3JtXCI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8IS0tIEhpZGRlbiBidXR0b24sIHByb2dyYW1tYXRpY2FsbHkgY2xpY2tlZCB3aGVuIGNyaXNwciBmb3JtIHRyaWdnZXJTdWJtaXQgZnVuY3Rpb24gY2FsbGVkLlxuICAgIFVzZXMgYSBoaWRkZW4gYnV0dG9uIHdpdGggdHlwZT1cInN1Ym1pdFwiIGJlY2F1c2UgaXQgd2lsbCB0cmlnZ2VyIGJvdGggbmF0aXZlIGZvcm0gc3VibWl0IGV2ZW50XG4gICAgKHdoaWNoIHRoZSBlcnJvciBoYW5kbGVyIGhhcyB0byBsaXN0ZW4gZm9yKSBhbmQgbmdTdWJtaXQgZXZlbnQgIC0tPlxuICA8YnV0dG9uICNzdWJtaXRUcmlnZ2VyIGNsYXNzPVwic3VibWl0LXRyaWdnZXJcIiB0eXBlPVwic3VibWl0XCI+XG4gIDwvYnV0dG9uPlxuPC9mb3JtPlxuIl19
@@ -0,0 +1,93 @@
1
+ import { Component, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
2
+ import { MatButtonModule } from '@angular/material/button';
3
+ import { MatIconModule } from '@angular/material/icon';
4
+ import { CrisprFieldDirective } from '../field.directive';
5
+ import { CrisprPipesModule } from '../pipes/crispr-pipes.module';
6
+ import { ReactiveFormsModule } from '@angular/forms';
7
+ import { CommonModule } from '@angular/common';
8
+ import { FormValidationHandlerModule } from '@tft/form-validation-handler';
9
+ // eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
10
+ import { CrisprFieldComponent, crisprControlMixin, createControlForType } from '@tft/crispr-forms/utils';
11
+ // eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
12
+ import { FieldContainerComponent } from '@tft/crispr-forms/ui';
13
+ import * as i0 from "@angular/core";
14
+ import * as i1 from "@angular/common";
15
+ import * as i2 from "@angular/material/button";
16
+ import * as i3 from "@angular/material/icon";
17
+ import * as i4 from "@angular/forms";
18
+ import * as i5 from "../pipes/initial-control-value.pipe";
19
+ import * as i6 from "@tft/form-validation-handler";
20
+ const defaultConfig = {
21
+ addButtonLabel: 'ADD ITEM',
22
+ minListLength: 1,
23
+ };
24
+ const FormGroupListMixin = crisprControlMixin(CrisprFieldComponent);
25
+ export class FormGroupListComponent extends FormGroupListMixin {
26
+ constructor(cdr) {
27
+ super();
28
+ this.cdr = cdr;
29
+ this.defaultConfig = defaultConfig;
30
+ /**
31
+ * By setting this to true when adding/removing items from array,
32
+ * we can block original values from overwriting form values
33
+ * */
34
+ this.blockValue = false;
35
+ }
36
+ ngOnInit() {
37
+ super.ngOnInit();
38
+ // TODO: this is required to ngFor of controls in template, must be a better way
39
+ }
40
+ setControlValue(values) {
41
+ if (this.control) {
42
+ if (values?.length > 0) {
43
+ // clear any existing values so that new values don't concatenate onto the old
44
+ const currentValues = this.control.value;
45
+ if (currentValues.length) {
46
+ this.control.clear();
47
+ }
48
+ values.forEach(value => this.addGroup(value));
49
+ }
50
+ else if (this.config.displayInitialItem) {
51
+ this.addGroup();
52
+ }
53
+ // needed to ensure new array items render
54
+ setTimeout(() => {
55
+ this.cdr.detectChanges();
56
+ });
57
+ }
58
+ }
59
+ clickDelete(index) {
60
+ this.blockValue = true;
61
+ this.deleteGroup(index);
62
+ }
63
+ clickAdd() {
64
+ this.blockValue = true;
65
+ this.addGroup();
66
+ }
67
+ addGroup(value = null) {
68
+ this.control.push(createControlForType(this.config.itemConfig, value));
69
+ // needed to ensure new array items render
70
+ setTimeout(() => {
71
+ this.cdr.detectChanges();
72
+ });
73
+ }
74
+ deleteGroup(index) {
75
+ this.control.removeAt(index);
76
+ }
77
+ }
78
+ FormGroupListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
79
+ FormGroupListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: FormGroupListComponent, isStandalone: true, selector: "crispr-form-group-list", usesInheritance: true, ngImport: i0, template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n <!-- Don't add trackBy function, it confuses the state of the array -->\n <div *ngFor=\"let con of control?.controls; let i = index;\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\"> {{ config.itemLabelBuilder ? config.itemLabelBuilder(i) : 'Item ' + (i + 1) }} </span>\n <button\n mat-icon-button\n type=\"button\"\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"clickDelete(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroup]=\"con\">\n <!-- TODO: if chiplists didn't need to have labels mixed in with their values we could use [value]=\"control.value\" below -->\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [value]=\"blockValue ? null : value && value[i] | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"con\">\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"clickAdd()\">\n {{config.addItemLabel || config.addButtonLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n", styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: FieldContainerComponent, selector: "crispr-field-container", inputs: ["config", "group", "inlineField"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: CrisprFieldDirective, selector: "[crisprField]", inputs: ["config", "group", "value"] }, { kind: "ngmodule", type: CrisprPipesModule }, { kind: "pipe", type: i5.InitialControlValuePipe, name: "initialControlValue" }, { kind: "ngmodule", type: FormValidationHandlerModule }, { kind: "directive", type: i6.ControlErrorContainerDirective, selector: "[controlErrorContainer], [formGroup]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, preserveWhitespaces: true });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ selector: 'crispr-form-group-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
83
+ CommonModule,
84
+ MatButtonModule,
85
+ MatIconModule,
86
+ FieldContainerComponent,
87
+ ReactiveFormsModule,
88
+ CrisprFieldDirective,
89
+ CrisprPipesModule,
90
+ FormValidationHandlerModule
91
+ ], template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n <!-- Don't add trackBy function, it confuses the state of the array -->\n <div *ngFor=\"let con of control?.controls; let i = index;\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\"> {{ config.itemLabelBuilder ? config.itemLabelBuilder(i) : 'Item ' + (i + 1) }} </span>\n <button\n mat-icon-button\n type=\"button\"\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"clickDelete(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroup]=\"con\">\n <!-- TODO: if chiplists didn't need to have labels mixed in with their values we could use [value]=\"control.value\" below -->\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [value]=\"blockValue ? null : value && value[i] | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"con\">\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"clickAdd()\">\n {{config.addItemLabel || config.addButtonLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n", styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}\n"] }]
92
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1ncm91cC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvZm9ybS1ncm91cC1saXN0L2Zvcm0tZ3JvdXAtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0tZ3JvdXAtbGlzdC9mb3JtLWdyb3VwLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRSw4REFBOEQ7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUF1QixNQUFNLHlCQUF5QixDQUFDO0FBQzlILDhEQUE4RDtBQUM5RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7QUFFL0QsTUFBTSxhQUFhLEdBQWlDO0lBQ2xELGNBQWMsRUFBRSxVQUFVO0lBQzFCLGFBQWEsRUFBRSxDQUFDO0NBQ2pCLENBQUM7QUFFRixNQUFNLGtCQUFrQixHQUFHLGtCQUFrQixDQUFzQixvQkFBb0IsQ0FBQyxDQUFDO0FBa0J6RixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCO0lBVzVELFlBQW9CLEdBQXNCO1FBQ3hDLEtBQUssRUFBRSxDQUFDO1FBRFUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFUMUMsa0JBQWEsR0FBRyxhQUFhLENBQUE7UUFHN0I7OzthQUdLO1FBQ0wsZUFBVSxHQUFHLEtBQUssQ0FBQztJQUluQixDQUFDO0lBRUQsUUFBUTtRQUNOLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixnRkFBZ0Y7SUFDbEYsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFhO1FBQzNCLElBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNmLElBQUcsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3JCLDhFQUE4RTtnQkFDOUUsTUFBTSxhQUFhLEdBQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQzVDLElBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRTtvQkFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDdEI7Z0JBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUUvQztpQkFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEVBQUU7Z0JBQ3pDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTthQUNoQjtZQUNELDBDQUEwQztZQUMxQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUE7U0FDSDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUk7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2RSwwQ0FBMEM7UUFDMUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7bUhBNURVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHlHQ3JDbkMsc2dEQTRDQSxtTkRqQkksWUFBWSwrUEFDWixlQUFlLDBWQUNmLGFBQWEsb0xBQ2IsdUJBQXVCLDhHQUN2QixtQkFBbUIsbWJBQ25CLG9CQUFvQiwrRkFDcEIsaUJBQWlCLCtHQUNqQiwyQkFBMkI7MkZBR2xCLHNCQUFzQjtrQkFqQmxDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLDJCQUEyQjtxQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBDcmlzcHJGaWVsZERpcmVjdGl2ZSB9IGZyb20gJy4uL2ZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDcmlzcHJQaXBlc01vZHVsZSB9IGZyb20gJy4uL3BpcGVzL2NyaXNwci1waXBlcy5tb2R1bGUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGUgfSBmcm9tICdAdGZ0L2Zvcm0tdmFsaWRhdGlvbi1oYW5kbGVyJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5pbXBvcnQgeyBDcmlzcHJGaWVsZENvbXBvbmVudCwgY3Jpc3ByQ29udHJvbE1peGluLCBjcmVhdGVDb250cm9sRm9yVHlwZSwgRm9ybUdyb3VwTGlzdENvbmZpZyB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3V0aWxzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5pbXBvcnQgeyBGaWVsZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpJztcblxuY29uc3QgZGVmYXVsdENvbmZpZzogUGFydGlhbDxGb3JtR3JvdXBMaXN0Q29uZmlnPiA9IHtcbiAgYWRkQnV0dG9uTGFiZWw6ICdBREQgSVRFTScsXG4gIG1pbkxpc3RMZW5ndGg6IDEsXG59O1xuXG5jb25zdCBGb3JtR3JvdXBMaXN0TWl4aW4gPSBjcmlzcHJDb250cm9sTWl4aW48Rm9ybUdyb3VwTGlzdENvbmZpZz4oQ3Jpc3ByRmllbGRDb21wb25lbnQpO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3Jpc3ByLWZvcm0tZ3JvdXAtbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWdyb3VwLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mb3JtLWdyb3VwLWxpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgRmllbGRDb250YWluZXJDb21wb25lbnQsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBDcmlzcHJGaWVsZERpcmVjdGl2ZSxcbiAgICBDcmlzcHJQaXBlc01vZHVsZSxcbiAgICBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUdyb3VwTGlzdENvbXBvbmVudCBleHRlbmRzIEZvcm1Hcm91cExpc3RNaXhpbiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZGVmYXVsdENvbmZpZyA9IGRlZmF1bHRDb25maWdcbiAgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgY29udHJvbDogRm9ybUFycmF5O1xuICAvKipcbiAgICogQnkgc2V0dGluZyB0aGlzIHRvIHRydWUgd2hlbiBhZGRpbmcvcmVtb3ZpbmcgaXRlbXMgZnJvbSBhcnJheSxcbiAgICogd2UgY2FuIGJsb2NrIG9yaWdpbmFsIHZhbHVlcyBmcm9tIG92ZXJ3cml0aW5nIGZvcm0gdmFsdWVzXG4gICAqICovXG4gIGJsb2NrVmFsdWUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAvLyBUT0RPOiB0aGlzIGlzIHJlcXVpcmVkIHRvIG5nRm9yIG9mIGNvbnRyb2xzIGluIHRlbXBsYXRlLCBtdXN0IGJlIGEgYmV0dGVyIHdheVxuICB9XG5cbiAgc2V0Q29udHJvbFZhbHVlKHZhbHVlczogYW55W10pIHtcbiAgICBpZih0aGlzLmNvbnRyb2wpIHtcbiAgICAgIGlmKHZhbHVlcz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAvLyBjbGVhciBhbnkgZXhpc3RpbmcgdmFsdWVzIHNvIHRoYXQgbmV3IHZhbHVlcyBkb24ndCBjb25jYXRlbmF0ZSBvbnRvIHRoZSBvbGRcbiAgICAgICAgY29uc3QgY3VycmVudFZhbHVlczpbXSA9IHRoaXMuY29udHJvbC52YWx1ZTtcbiAgICAgICAgaWYoY3VycmVudFZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLmNvbnRyb2wuY2xlYXIoKTtcbiAgICAgICAgfVxuICAgICAgICB2YWx1ZXMuZm9yRWFjaCh2YWx1ZSA9PiB0aGlzLmFkZEdyb3VwKHZhbHVlKSk7XG5cbiAgICAgIH0gZWxzZSBpZiAodGhpcy5jb25maWcuZGlzcGxheUluaXRpYWxJdGVtKSB7XG4gICAgICAgIHRoaXMuYWRkR3JvdXAoKVxuICAgICAgfVxuICAgICAgLy8gbmVlZGVkIHRvIGVuc3VyZSBuZXcgYXJyYXkgaXRlbXMgcmVuZGVyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBjbGlja0RlbGV0ZShpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5ibG9ja1ZhbHVlID0gdHJ1ZTtcbiAgICB0aGlzLmRlbGV0ZUdyb3VwKGluZGV4KTtcbiAgfVxuXG4gIGNsaWNrQWRkKCkge1xuICAgIHRoaXMuYmxvY2tWYWx1ZSA9IHRydWU7XG4gICAgdGhpcy5hZGRHcm91cCgpO1xuICB9XG5cbiAgYWRkR3JvdXAodmFsdWUgPSBudWxsKSB7XG4gICAgdGhpcy5jb250cm9sLnB1c2goY3JlYXRlQ29udHJvbEZvclR5cGUodGhpcy5jb25maWcuaXRlbUNvbmZpZywgdmFsdWUpKTtcbiAgICAvLyBuZWVkZWQgdG8gZW5zdXJlIG5ldyBhcnJheSBpdGVtcyByZW5kZXJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9KVxuICB9XG5cbiAgZGVsZXRlR3JvdXAoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuY29udHJvbC5yZW1vdmVBdChpbmRleCk7XG4gIH1cbn1cbiIsIlxuPGNyaXNwci1maWVsZC1jb250YWluZXJcbiAgW2NvbmZpZ109XCJjb25maWdcIlxuICBbZ3JvdXBdPVwiZ3JvdXBcIlxuICBbZm9ybUdyb3VwXT1cImdyb3VwXCI+XG5cbiAgPGRpdiBbZm9ybUFycmF5TmFtZV09XCJjb25maWcuY29udHJvbE5hbWVcIj5cbiAgICA8IS0tIERvbid0IGFkZCB0cmFja0J5IGZ1bmN0aW9uLCBpdCBjb25mdXNlcyB0aGUgc3RhdGUgb2YgdGhlIGFycmF5IC0tPlxuICAgIDxkaXYgKm5nRm9yPVwibGV0IGNvbiBvZiBjb250cm9sPy5jb250cm9sczsgbGV0IGkgPSBpbmRleDtcIj5cbiAgICAgIDwhLS0gVE9ETzogdXNlIGNvbnRlbnQgcHJvamVjdGlvbiB0byBhbGxvdyBjdXN0b20gaXRlbSBsYWJlbCBjb21wb25lbnQgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1oZWFkZXJcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXQtaDJcIj4ge3sgY29uZmlnLml0ZW1MYWJlbEJ1aWxkZXIgPyBjb25maWcuaXRlbUxhYmVsQnVpbGRlcihpKSA6ICdJdGVtICcgKyAoaSArIDEpIH19IDwvc3Bhbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICpuZ0lmPVwiaSArIDEgPiBjb25maWcubWluTGlzdExlbmd0aFwiPlxuICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiY2xpY2tEZWxldGUoaSlcIj5kZWxldGU8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBbZm9ybUdyb3VwXT1cImNvblwiPlxuICAgICAgICA8IS0tIFRPRE86IGlmIGNoaXBsaXN0cyBkaWRuJ3QgbmVlZCB0byBoYXZlIGxhYmVscyBtaXhlZCBpbiB3aXRoIHRoZWlyIHZhbHVlcyB3ZSBjb3VsZCB1c2UgW3ZhbHVlXT1cImNvbnRyb2wudmFsdWVcIiBiZWxvdyAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjb25maWcuaXRlbUNvbmZpZy5maWVsZHM7XCJcbiAgICAgICAgICBjcmlzcHJGaWVsZFxuICAgICAgICAgIFt2YWx1ZV09XCJibG9ja1ZhbHVlID8gbnVsbCA6IHZhbHVlICYmIHZhbHVlW2ldIHwgaW5pdGlhbENvbnRyb2xWYWx1ZSA6IGZpZWxkXCJcbiAgICAgICAgICBbY29uZmlnXT1cImZpZWxkXCJcbiAgICAgICAgICBbZ3JvdXBdPVwiY29uXCI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZ3JvdXAtZm9vdGVyXCI+XG4gICAgPGJ1dHRvblxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBjbGFzcz1cImFkZFwiXG4gICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgW2NvbG9yXT1cImNvbmZpZy5hZGRCdXR0b25Db2xvclwiXG4gICAgICAoY2xpY2spPVwiY2xpY2tBZGQoKVwiPlxuICAgICAge3tjb25maWcuYWRkSXRlbUxhYmVsIHx8IGNvbmZpZy5hZGRCdXR0b25MYWJlbH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuXG48L2NyaXNwci1maWVsZC1jb250YWluZXI+XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './form-group-list.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0tZ3JvdXAtbGlzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mb3JtLWdyb3VwLWxpc3QuY29tcG9uZW50JztcbiJdfQ==
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImpor
21
21
  ]
22
22
  }]
23
23
  }] });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jpc3ByLXBpcGVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvcGlwZXMvY3Jpc3ByLXBpcGVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFjdkUsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQUoxQix1QkFBdUIsYUFOdkIsWUFBWSxhQUdaLHVCQUF1QjsrR0FPZCxpQkFBaUIsWUFWMUIsWUFBWTsyRkFVSCxpQkFBaUI7a0JBWjdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHVCQUF1QjtxQkFDeEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJbml0aWFsQ29udHJvbFZhbHVlUGlwZSB9IGZyb20gXCIuL2luaXRpYWwtY29udHJvbC12YWx1ZS5waXBlXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEluaXRpYWxDb250cm9sVmFsdWVQaXBlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEluaXRpYWxDb250cm9sVmFsdWVQaXBlXG4gIF1cbn0pXG5cbmV4cG9ydCBjbGFzcyBDcmlzcHJQaXBlc01vZHVsZSB7XG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jpc3ByLXBpcGVzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvcGlwZXMvY3Jpc3ByLXBpcGVzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFjdkUsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQUoxQix1QkFBdUIsYUFOdkIsWUFBWSxhQUdaLHVCQUF1QjsrR0FPZCxpQkFBaUIsWUFWMUIsWUFBWTsyRkFVSCxpQkFBaUI7a0JBWjdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHVCQUF1QjtxQkFDeEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJbml0aWFsQ29udHJvbFZhbHVlUGlwZSB9IGZyb20gXCIuL2luaXRpYWwtY29udHJvbC12YWx1ZS5waXBlXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEluaXRpYWxDb250cm9sVmFsdWVQaXBlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEluaXRpYWxDb250cm9sVmFsdWVQaXBlXG4gIF1cbn0pXG5cbmV4cG9ydCBjbGFzcyBDcmlzcHJQaXBlc01vZHVsZSB7XG59XG4iXX0=
@@ -0,0 +1,21 @@
1
+ import { Pipe } from '@angular/core';
2
+ // eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
3
+ import { isControlConfig } from '@tft/crispr-forms/utils';
4
+ import * as i0 from "@angular/core";
5
+ export class InitialControlValuePipe {
6
+ // TODO: does changing any to unknown break anything?
7
+ transform(initialFormValue, fieldConfig) {
8
+ return (initialFormValue && isControlConfig(fieldConfig))
9
+ ? initialFormValue[fieldConfig.controlName] || null
10
+ : null;
11
+ }
12
+ }
13
+ InitialControlValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: InitialControlValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
14
+ InitialControlValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: InitialControlValuePipe, name: "initialControlValue" });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: InitialControlValuePipe, decorators: [{
16
+ type: Pipe,
17
+ args: [{
18
+ name: 'initialControlValue'
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbC1jb250cm9sLXZhbHVlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL3BpcGVzL2luaXRpYWwtY29udHJvbC12YWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELDhEQUE4RDtBQUM5RCxPQUFPLEVBQWdDLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUt4RixNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLHFEQUFxRDtJQUNyRCxTQUFTLENBQUMsZ0JBQXFELEVBQUUsV0FBMkI7UUFDMUYsT0FBTyxDQUFDLGdCQUFnQixJQUFJLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN2RCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUk7WUFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNYLENBQUM7O29IQU5VLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBSG5DLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHFCQUFxQjtpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQG5yd2wvbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlLCBBbnlGaWVsZENvbmZpZywgaXNDb250cm9sQ29uZmlnIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdpbml0aWFsQ29udHJvbFZhbHVlJ1xufSlcbmV4cG9ydCBjbGFzcyBJbml0aWFsQ29udHJvbFZhbHVlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAvLyBUT0RPOiBkb2VzIGNoYW5naW5nIGFueSB0byB1bmtub3duIGJyZWFrIGFueXRoaW5nP1xuICB0cmFuc2Zvcm0oaW5pdGlhbEZvcm1WYWx1ZToge1trZXk6IHN0cmluZ106IENvbnRyb2xWYWx1ZSB8IGFueX0sIGZpZWxkQ29uZmlnOiBBbnlGaWVsZENvbmZpZyk6IHVua25vd24ge1xuICAgIHJldHVybiAoaW5pdGlhbEZvcm1WYWx1ZSAmJiBpc0NvbnRyb2xDb25maWcoZmllbGRDb25maWcpKVxuICAgICAgPyBpbml0aWFsRm9ybVZhbHVlW2ZpZWxkQ29uZmlnLmNvbnRyb2xOYW1lXSB8fCBudWxsXG4gICAgICA6IG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './crispr-forms.module';
2
+ export * from './form/form.component';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NyaXNwci1mb3Jtcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './sub-group.component';
2
+ export * from './sub-group.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL3N1Yi1ncm91cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3N1Yi1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdWItZ3JvdXAubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { Component } from '@angular/core';
2
+ // eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
3
+ import { crisprControlMixin, CrisprFieldComponent } from '@tft/crispr-forms/utils';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../field.directive";
7
+ import * as i3 from "@tft/crispr-forms/ui";
8
+ import * as i4 from "../pipes/initial-control-value.pipe";
9
+ const FormGroupMixin = crisprControlMixin(CrisprFieldComponent);
10
+ export class SubGroupComponent extends FormGroupMixin {
11
+ ngOnInit() {
12
+ super.ngOnInit();
13
+ }
14
+ }
15
+ SubGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: SubGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
16
+ SubGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: SubGroupComponent, selector: "crispr-sub-group", usesInheritance: true, ngImport: i0, template: "<crispr-field-container\n [config]=\"config\"\n [group]=\"group\">\n <ng-container\n *ngFor=\"let fieldConfig of config.fields;\"\n crisprField\n [value]=\"value | initialControlValue : fieldConfig\"\n [config]=\"fieldConfig\"\n [group]=\"control\">\n </ng-container>\n</crispr-field-container>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.CrisprFieldDirective, selector: "[crisprField]", inputs: ["config", "group", "value"] }, { kind: "component", type: i3.FieldContainerComponent, selector: "crispr-field-container", inputs: ["config", "group", "inlineField"] }, { kind: "pipe", type: i4.InitialControlValuePipe, name: "initialControlValue" }], preserveWhitespaces: true });
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: SubGroupComponent, decorators: [{
18
+ type: Component,
19
+ args: [{ selector: 'crispr-sub-group', template: "<crispr-field-container\n [config]=\"config\"\n [group]=\"group\">\n <ng-container\n *ngFor=\"let fieldConfig of config.fields;\"\n crisprField\n [value]=\"value | initialControlValue : fieldConfig\"\n [config]=\"fieldConfig\"\n [group]=\"control\">\n </ng-container>\n</crispr-field-container>\n\n" }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvc3ViLWdyb3VwL3N1Yi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL3N1Yi1ncm91cC9zdWItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUdsRCw4REFBOEQ7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFrQixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7QUFFbkcsTUFBTSxjQUFjLEdBQUcsa0JBQWtCLENBQWlCLG9CQUFvQixDQUFDLENBQUM7QUFVaEYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQWM7SUFHbkQsUUFBUTtRQUNOLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNuQixDQUFDOzs4R0FMVSxpQkFBaUI7a0dBQWpCLGlCQUFpQiwrRUNoQjlCLCtUQVlBOzJGRElhLGlCQUFpQjtrQkFSN0IsU0FBUzsrQkFDRSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQG5yd2wvbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgY3Jpc3ByQ29udHJvbE1peGluLCBDcmlzcHJGaWVsZENvbXBvbmVudCwgU3ViR3JvdXBDb25maWcgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91dGlscyc7XG5cbmNvbnN0IEZvcm1Hcm91cE1peGluID0gY3Jpc3ByQ29udHJvbE1peGluPFN1Ykdyb3VwQ29uZmlnPihDcmlzcHJGaWVsZENvbXBvbmVudCk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NyaXNwci1zdWItZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vc3ViLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3ViLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIC8vIFRPRE86IGNoaWxkIGltYWdlIHVwbG9hZCBjb250cm9scyBhcmVuJ3QgZ2V0dGluZyB1cGRhdGVkIGFwcHJvcHJpYXRlbHkgd2hlbiBpbiBPblB1c2ggc3RyYXRlZ3kuXG4gIC8vIFdlIGNhbiBhZGQgY2RyIHRvIHRoaXMgY2xhc3MsIGJ1dCBldmVyeXRoaW5nIHRoYXQgZXh0ZW5kcyBpdCB3aWxsIG5lZWQgdGhlIGNkciBhdHRhY2hlZFxuICAvLyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTdWJHcm91cENvbXBvbmVudCBleHRlbmRzIEZvcm1Hcm91cE1peGluIGltcGxlbWVudHMgT25Jbml0IHtcbiAgZ3JvdXA6IEZvcm1Hcm91cDtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICB9XG59XG4iLCI8Y3Jpc3ByLWZpZWxkLWNvbnRhaW5lclxuICBbY29uZmlnXT1cImNvbmZpZ1wiXG4gIFtncm91cF09XCJncm91cFwiPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nRm9yPVwibGV0IGZpZWxkQ29uZmlnIG9mIGNvbmZpZy5maWVsZHM7XCJcbiAgICBjcmlzcHJGaWVsZFxuICAgIFt2YWx1ZV09XCJ2YWx1ZSB8IGluaXRpYWxDb250cm9sVmFsdWUgOiBmaWVsZENvbmZpZ1wiXG4gICAgW2NvbmZpZ109XCJmaWVsZENvbmZpZ1wiXG4gICAgW2dyb3VwXT1cImNvbnRyb2xcIj5cbiAgPC9uZy1jb250YWluZXI+XG48L2NyaXNwci1maWVsZC1jb250YWluZXI+XG5cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { CrisprFieldDirective } from '../field.directive';
4
+ import { CrisprPipesModule } from '../pipes/crispr-pipes.module';
5
+ import { SubGroupComponent } from './sub-group.component';
6
+ import { FormValidationHandlerModule } from '@tft/form-validation-handler';
7
+ import { FieldContainerComponent } from '@tft/crispr-forms/ui';
8
+ import * as i0 from "@angular/core";
9
+ export class SubGroupModule {
10
+ }
11
+ SubGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: SubGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ SubGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: SubGroupModule, declarations: [SubGroupComponent], imports: [CommonModule,
13
+ CrisprFieldDirective,
14
+ FieldContainerComponent,
15
+ CrisprPipesModule,
16
+ // TODO: Does this need to be here?
17
+ FormValidationHandlerModule], exports: [SubGroupComponent] });
18
+ SubGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: SubGroupModule, imports: [CommonModule,
19
+ FieldContainerComponent,
20
+ CrisprPipesModule,
21
+ // TODO: Does this need to be here?
22
+ FormValidationHandlerModule] });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: SubGroupModule, decorators: [{
24
+ type: NgModule,
25
+ args: [{
26
+ imports: [
27
+ CommonModule,
28
+ CrisprFieldDirective,
29
+ FieldContainerComponent,
30
+ CrisprPipesModule,
31
+ // TODO: Does this need to be here?
32
+ FormValidationHandlerModule
33
+ ],
34
+ exports: [
35
+ SubGroupComponent
36
+ ],
37
+ declarations: [
38
+ SubGroupComponent
39
+ ]
40
+ }]
41
+ }] });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViLWdyb3VwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvc3ViLWdyb3VwL3N1Yi1ncm91cC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBa0IvRCxNQUFNLE9BQU8sY0FBYzs7MkdBQWQsY0FBYzs0R0FBZCxjQUFjLGlCQUp2QixpQkFBaUIsYUFYakIsWUFBWTtRQUNaLG9CQUFvQjtRQUNwQix1QkFBdUI7UUFDdkIsaUJBQWlCO1FBQ2pCLG1DQUFtQztRQUNuQywyQkFBMkIsYUFHM0IsaUJBQWlCOzRHQU9SLGNBQWMsWUFmdkIsWUFBWTtRQUVaLHVCQUF1QjtRQUN2QixpQkFBaUI7UUFDakIsbUNBQW1DO1FBQ25DLDJCQUEyQjsyRkFVbEIsY0FBYztrQkFqQjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQix1QkFBdUI7d0JBQ3ZCLGlCQUFpQjt3QkFDakIsbUNBQW1DO3dCQUNuQywyQkFBMkI7cUJBQzVCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVksRUFBRTt3QkFDWixpQkFBaUI7cUJBQ2xCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDcmlzcHJGaWVsZERpcmVjdGl2ZSB9IGZyb20gJy4uL2ZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDcmlzcHJQaXBlc01vZHVsZSB9IGZyb20gJy4uL3BpcGVzL2NyaXNwci1waXBlcy5tb2R1bGUnO1xuaW1wb3J0IHsgU3ViR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3N1Yi1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybVZhbGlkYXRpb25IYW5kbGVyTW9kdWxlIH0gZnJvbSAnQHRmdC9mb3JtLXZhbGlkYXRpb24taGFuZGxlcic7XG5pbXBvcnQgeyBGaWVsZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpJztcbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQ3Jpc3ByRmllbGREaXJlY3RpdmUsXG4gICAgRmllbGRDb250YWluZXJDb21wb25lbnQsXG4gICAgQ3Jpc3ByUGlwZXNNb2R1bGUsXG4gICAgLy8gVE9ETzogRG9lcyB0aGlzIG5lZWQgdG8gYmUgaGVyZT9cbiAgICBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFN1Ykdyb3VwQ29tcG9uZW50XG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFN1Ykdyb3VwQ29tcG9uZW50XG4gIF1cbn0pXG5cbmV4cG9ydCBjbGFzcyBTdWJHcm91cE1vZHVsZSB7XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGZ0LWNyaXNwci1mb3Jtcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy90ZnQtY3Jpc3ByLWZvcm1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGZ0LWNyaXNwci1mb3Jtcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3RmdC1jcmlzcHItZm9ybXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==