@mtna/web-form-angular 1.0.1 → 1.0.2-SNAPSHOT.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 (424) hide show
  1. package/_index.scss +17 -16
  2. package/bundles/mtna-web-form-angular.umd.js +6562 -4919
  3. package/bundles/mtna-web-form-angular.umd.js.map +1 -1
  4. package/esm2015/lib/components/acknowledge-dialog/acknowledge-dialog.component.js +30 -0
  5. package/esm2015/lib/components/acknowledge-dialog/acknowledge-dialog.module.js +21 -0
  6. package/esm2015/lib/components/acknowledge-dialog/index.js +3 -0
  7. package/esm2015/lib/components/base-items/base-form-item-control.component.js +40 -0
  8. package/esm2015/lib/components/base-items/base-form-item.component.js +50 -0
  9. package/esm2015/lib/components/base-items/base-group-item.component.js +29 -0
  10. package/esm2015/lib/components/base-items/base-parent-value-item.component.js +42 -0
  11. package/esm2015/lib/components/base-items/base-section-item.component.js +28 -0
  12. package/esm2015/lib/components/base-items/base-single-selection-parent-value-item.component.js +64 -0
  13. package/esm2015/lib/components/base-items/base-value-item.component.js +40 -0
  14. package/esm2015/lib/components/base-items/index.js +7 -0
  15. package/esm2015/lib/components/form/form.component.js +250 -0
  16. package/esm2015/lib/components/form/form.module.js +60 -0
  17. package/esm2015/lib/components/form/index.js +3 -0
  18. package/esm2015/lib/{form → components/form-disabler}/form-disabler.component.js +1 -1
  19. package/esm2015/lib/components/form-disabler/form-disabler.module.js +18 -0
  20. package/esm2015/lib/components/form-disabler/index.js +3 -0
  21. package/esm2015/lib/components/form-item/form-item.component.js +124 -0
  22. package/esm2015/lib/components/form-item/form-item.module.js +22 -0
  23. package/esm2015/lib/components/form-item/index.js +3 -0
  24. package/esm2015/lib/components/form-item-component-provider/form-item-component-provider.js +8 -0
  25. package/esm2015/lib/components/form-item-component-provider/form-item-injected-components.js +120 -0
  26. package/esm2015/lib/components/form-item-component-provider/index.js +3 -0
  27. package/esm2015/lib/components/form-item-dialog/form-item-dialog.component.js +29 -0
  28. package/esm2015/lib/components/form-item-dialog/form-item-dialog.module.js +20 -0
  29. package/esm2015/lib/components/form-item-dialog/index.js +3 -0
  30. package/esm2015/lib/components/form-item-impl/boolean/boolean.component.js +33 -0
  31. package/esm2015/lib/components/form-item-impl/boolean/boolean.module.js +22 -0
  32. package/esm2015/lib/components/form-item-impl/boolean/index.js +3 -0
  33. package/esm2015/lib/components/form-item-impl/checkbox/checkbox.component.js +92 -0
  34. package/esm2015/lib/components/form-item-impl/checkbox/checkbox.module.js +61 -0
  35. package/esm2015/lib/components/form-item-impl/checkbox/index.js +3 -0
  36. package/esm2015/lib/components/form-item-impl/date/date.component.js +92 -0
  37. package/esm2015/lib/components/form-item-impl/date/date.module.js +53 -0
  38. package/esm2015/lib/components/form-item-impl/date/index.js +3 -0
  39. package/esm2015/lib/components/form-item-impl/date-range/date-range.component.js +31 -0
  40. package/esm2015/lib/components/form-item-impl/date-range/date-range.module.js +45 -0
  41. package/esm2015/lib/components/form-item-impl/date-range/index.js +3 -0
  42. package/esm2015/lib/components/form-item-impl/dropdown/dropdown.component.js +29 -0
  43. package/esm2015/lib/components/form-item-impl/dropdown/dropdown.module.js +59 -0
  44. package/esm2015/lib/components/form-item-impl/dropdown/index.js +3 -0
  45. package/esm2015/lib/components/form-item-impl/file-upload/file-upload.component.js +56 -0
  46. package/esm2015/lib/components/form-item-impl/file-upload/file-upload.module.js +49 -0
  47. package/esm2015/lib/components/form-item-impl/file-upload/index.js +3 -0
  48. package/esm2015/lib/components/form-item-impl/form-group/form-group.component.js +50 -0
  49. package/esm2015/lib/components/form-item-impl/form-group/form-group.module.js +49 -0
  50. package/esm2015/lib/components/form-item-impl/form-group/index.js +3 -0
  51. package/esm2015/lib/components/form-item-impl/form-section/form-section.component.js +22 -0
  52. package/esm2015/lib/components/form-item-impl/form-section/form-section.module.js +22 -0
  53. package/esm2015/lib/components/form-item-impl/form-section/index.js +3 -0
  54. package/esm2015/lib/components/form-item-impl/i18n-input/i18n-input.component.js +51 -0
  55. package/esm2015/lib/components/form-item-impl/i18n-input/i18n-input.module.js +52 -0
  56. package/esm2015/lib/components/form-item-impl/i18n-input/index.js +3 -0
  57. package/esm2015/lib/components/form-item-impl/index.js +23 -0
  58. package/esm2015/lib/components/form-item-impl/input/index.js +3 -0
  59. package/esm2015/lib/components/form-item-impl/input/input.component.js +39 -0
  60. package/esm2015/lib/components/form-item-impl/input/input.module.js +52 -0
  61. package/esm2015/lib/components/form-item-impl/multiple-choice/index.js +3 -0
  62. package/esm2015/lib/components/form-item-impl/multiple-choice/multiple-choice.component.js +24 -0
  63. package/esm2015/lib/components/form-item-impl/multiple-choice/multiple-choice.module.js +45 -0
  64. package/esm2015/lib/components/form-item-impl/ordered-list/index.js +3 -0
  65. package/esm2015/lib/components/form-item-impl/ordered-list/ordered-list-item.component.js +21 -0
  66. package/esm2015/lib/components/form-item-impl/ordered-list/ordered-list-item.module.js +20 -0
  67. package/esm2015/lib/components/form-item-impl/repeatable-item/index.js +3 -0
  68. package/esm2015/lib/components/form-item-impl/repeatable-item/repeatable-item.component.js +23 -0
  69. package/esm2015/lib/components/form-item-impl/repeatable-item/repeatable-item.module.js +18 -0
  70. package/esm2015/lib/components/form-item-impl/repeatable-item-container/index.js +3 -0
  71. package/esm2015/lib/components/form-item-impl/repeatable-item-container/repeatable-item-container.component.js +56 -0
  72. package/esm2015/lib/components/form-item-impl/repeatable-item-container/repeatable-item-container.module.js +53 -0
  73. package/esm2015/lib/components/form-item-impl/search/index.js +3 -0
  74. package/esm2015/lib/components/form-item-impl/search/resource-search.component.js +56 -0
  75. package/esm2015/lib/components/form-item-impl/search/resource-search.module.js +22 -0
  76. package/esm2015/lib/components/form-item-impl/table-item/index.js +3 -0
  77. package/esm2015/lib/components/form-item-impl/table-item/table-item.component.js +27 -0
  78. package/esm2015/lib/components/form-item-impl/table-item/table-item.module.js +20 -0
  79. package/esm2015/lib/components/form-item-impl/text/index.js +3 -0
  80. package/esm2015/lib/components/form-item-impl/text/text.component.js +19 -0
  81. package/esm2015/lib/components/form-item-impl/text/text.module.js +20 -0
  82. package/esm2015/lib/components/form-item-impl/title/index.js +3 -0
  83. package/esm2015/lib/components/form-item-impl/title/title.component.js +18 -0
  84. package/esm2015/lib/components/form-item-impl/title/title.module.js +20 -0
  85. package/esm2015/lib/components/form-item-impl/unordered-list/index.js +3 -0
  86. package/esm2015/lib/components/form-item-impl/unordered-list/unordered-list-item.component.js +21 -0
  87. package/esm2015/lib/components/form-item-impl/unordered-list/unordered-list-item.module.js +20 -0
  88. package/esm2015/lib/components/form-item-impl/year-quarter/index.js +3 -0
  89. package/esm2015/lib/components/form-item-impl/year-quarter/year-quarter.component.js +166 -0
  90. package/esm2015/lib/components/form-item-impl/year-quarter/year-quarter.module.js +55 -0
  91. package/esm2015/lib/components/form-item-impl/year-quarter-range/index.js +3 -0
  92. package/esm2015/lib/components/form-item-impl/year-quarter-range/year-quarter-range.component.js +39 -0
  93. package/esm2015/lib/components/form-item-impl/year-quarter-range/year-quarter-range.module.js +22 -0
  94. package/esm2015/lib/components/form-item-injector/form-item-injector.component.js +158 -0
  95. package/esm2015/lib/components/form-item-injector/form-item-injector.module.js +18 -0
  96. package/esm2015/lib/components/form-item-injector/index.js +3 -0
  97. package/esm2015/lib/components/form-stepper/form-step/form-step.component.js +68 -0
  98. package/esm2015/lib/components/form-stepper/form-step/index.js +2 -0
  99. package/esm2015/lib/components/form-stepper/form-step-group/form-step-group.component.js +53 -0
  100. package/esm2015/lib/components/form-stepper/form-step-group/index.js +2 -0
  101. package/esm2015/lib/components/form-stepper/form-stepper/form-stepper.component.js +59 -0
  102. package/esm2015/lib/components/form-stepper/form-stepper/index.js +2 -0
  103. package/esm2015/lib/components/form-stepper/form-stepper.module.js +56 -0
  104. package/esm2015/lib/components/form-stepper/index.js +5 -0
  105. package/esm2015/lib/components/index.js +13 -0
  106. package/esm2015/lib/components/item-header/index.js +3 -0
  107. package/esm2015/lib/components/item-header/item-header.component.js +71 -0
  108. package/esm2015/lib/components/item-header/item-header.module.js +19 -0
  109. package/esm2015/lib/components/step-card/index.js +3 -0
  110. package/esm2015/lib/{step-card → components/step-card}/step-card.component.js +2 -2
  111. package/esm2015/lib/components/step-card/step-card.module.js +23 -0
  112. package/esm2015/lib/directives/base-form-item-control.directive.js +59 -0
  113. package/esm2015/lib/directives/base-parent-item-control.directive.js +42 -0
  114. package/esm2015/lib/directives/base-single-selection-parent.directive.js +53 -0
  115. package/esm2015/lib/{form → directives}/form-item.directive.js +1 -1
  116. package/esm2015/lib/directives/index.js +5 -0
  117. package/esm2015/lib/models/api-config.js +3 -0
  118. package/esm2015/lib/models/base-form-item.model.js +2 -0
  119. package/esm2015/lib/{groups → models}/form-item-dialog-data.model.js +1 -1
  120. package/esm2015/lib/{form-stepper/models → models/form-stepper}/base-form-step.model.js +1 -1
  121. package/esm2015/lib/{form-stepper/models → models/form-stepper}/form-step-group.model.js +1 -1
  122. package/esm2015/lib/{form-stepper/models → models/form-stepper}/form-step.model.js +1 -1
  123. package/esm2015/lib/{form-stepper/models → models/form-stepper}/index.js +1 -1
  124. package/esm2015/lib/models/index.js +7 -0
  125. package/esm2015/lib/models/toggle-form-item-data.model.js +2 -0
  126. package/esm2015/lib/models/white-list.model.js +11 -0
  127. package/esm2015/lib/pipes/coerce-date-item.pipe.js +37 -0
  128. package/esm2015/lib/pipes/coerce-form-control.pipe.js +38 -0
  129. package/esm2015/lib/pipes/coerce-form-group.pipe.js +47 -0
  130. package/esm2015/lib/pipes/date-quarter.pipe.js +55 -0
  131. package/esm2015/lib/pipes/form-step-group.pipe.js +32 -0
  132. package/esm2015/lib/pipes/get-auto-complete.pipe.js +54 -0
  133. package/esm2015/lib/pipes/get-available-quarters.pipe.js +41 -0
  134. package/esm2015/lib/pipes/get-form-control-error.pipe.js +32 -0
  135. package/esm2015/lib/pipes/get-list-icon.pipe.js +65 -0
  136. package/esm2015/lib/pipes/get-object-type.pipe.js +29 -0
  137. package/esm2015/lib/pipes/get-selected-option.pipe.js +32 -0
  138. package/esm2015/lib/pipes/index.js +14 -0
  139. package/esm2015/lib/pipes/items-with-value.pipe.js +42 -0
  140. package/esm2015/lib/pipes/sanitize-html.pipe.js +35 -0
  141. package/esm2015/lib/services/api.service.js +67 -0
  142. package/esm2015/lib/services/dialog.service.js +48 -0
  143. package/esm2015/lib/services/form-manager.service.js +465 -0
  144. package/esm2015/lib/services/index.js +7 -0
  145. package/esm2015/lib/services/ng-form.service.js +150 -0
  146. package/esm2015/lib/services/resource-search-selection.service.js +24 -0
  147. package/esm2015/lib/services/ui.service.js +333 -0
  148. package/esm2015/lib/utilities/animations.js +8 -0
  149. package/esm2015/lib/utilities/find-form-control.js +29 -0
  150. package/esm2015/lib/utilities/find-form-item.js +25 -0
  151. package/esm2015/lib/utilities/flatten-steps.js +10 -0
  152. package/esm2015/lib/utilities/form-step.util.js +28 -0
  153. package/esm2015/lib/utilities/generate-form-steps.js +38 -0
  154. package/esm2015/lib/utilities/get-item-class-suffix.js +17 -0
  155. package/esm2015/lib/utilities/index.js +13 -0
  156. package/esm2015/lib/utilities/is-form-control.js +5 -0
  157. package/esm2015/lib/utilities/is-form-group.js +6 -0
  158. package/esm2015/lib/utilities/serializer-util.js +391 -0
  159. package/esm2015/lib/utilities/update-step-status.js +38 -0
  160. package/esm2015/lib/validators/index.js +3 -0
  161. package/esm2015/lib/validators/instant-validation-result-error-state-matcher.js +23 -0
  162. package/esm2015/lib/validators/validation-result-validator.js +19 -0
  163. package/esm2015/public-api.js +8 -10
  164. package/fesm2015/mtna-web-form-angular.js +4516 -3887
  165. package/fesm2015/mtna-web-form-angular.js.map +1 -1
  166. package/lib/components/acknowledge-dialog/acknowledge-dialog.component.d.ts +13 -0
  167. package/lib/components/acknowledge-dialog/acknowledge-dialog.module.d.ts +11 -0
  168. package/lib/components/acknowledge-dialog/index.d.ts +2 -0
  169. package/lib/components/base-items/base-form-item-control.component.d.ts +17 -0
  170. package/lib/components/base-items/base-form-item.component.d.ts +25 -0
  171. package/lib/components/base-items/base-group-item.component.d.ts +12 -0
  172. package/lib/components/base-items/base-parent-value-item.component.d.ts +17 -0
  173. package/lib/components/base-items/base-section-item.component.d.ts +13 -0
  174. package/lib/components/base-items/base-single-selection-parent-value-item.component.d.ts +20 -0
  175. package/lib/components/base-items/base-value-item.component.d.ts +18 -0
  176. package/lib/components/base-items/index.d.ts +6 -0
  177. package/lib/{form → components/form}/form.component.d.ts +2 -2
  178. package/lib/components/form/form.module.d.ts +16 -0
  179. package/lib/components/form/index.d.ts +2 -0
  180. package/lib/components/form-disabler/form-disabler.module.d.ts +8 -0
  181. package/lib/components/form-disabler/index.d.ts +2 -0
  182. package/lib/components/form-item/form-item.component.d.ts +53 -0
  183. package/lib/components/form-item/form-item.module.d.ts +12 -0
  184. package/lib/components/form-item/index.d.ts +2 -0
  185. package/lib/components/form-item-component-provider/form-item-component-provider.d.ts +4 -0
  186. package/lib/components/form-item-component-provider/form-item-injected-components.d.ts +2 -0
  187. package/lib/components/form-item-component-provider/index.d.ts +2 -0
  188. package/lib/components/form-item-dialog/form-item-dialog.component.d.ts +13 -0
  189. package/lib/components/form-item-dialog/form-item-dialog.module.d.ts +10 -0
  190. package/lib/components/form-item-dialog/index.d.ts +2 -0
  191. package/lib/components/form-item-impl/boolean/boolean.component.d.ts +17 -0
  192. package/lib/components/form-item-impl/boolean/boolean.module.d.ts +12 -0
  193. package/lib/components/form-item-impl/boolean/index.d.ts +2 -0
  194. package/lib/components/form-item-impl/checkbox/checkbox.component.d.ts +29 -0
  195. package/lib/components/form-item-impl/checkbox/checkbox.module.d.ts +17 -0
  196. package/lib/components/form-item-impl/checkbox/index.d.ts +2 -0
  197. package/lib/{form-item-controls → components/form-item-impl/date}/date.component.d.ts +6 -6
  198. package/lib/components/form-item-impl/date/date.module.d.ts +15 -0
  199. package/lib/components/form-item-impl/date/index.d.ts +2 -0
  200. package/lib/{form-item-controls → components/form-item-impl/date-range}/date-range.component.d.ts +2 -2
  201. package/lib/components/form-item-impl/date-range/date-range.module.d.ts +13 -0
  202. package/lib/components/form-item-impl/date-range/index.d.ts +2 -0
  203. package/lib/{form-item-controls → components/form-item-impl/dropdown}/dropdown.component.d.ts +2 -4
  204. package/lib/components/form-item-impl/dropdown/dropdown.module.d.ts +17 -0
  205. package/lib/components/form-item-impl/dropdown/index.d.ts +2 -0
  206. package/lib/components/form-item-impl/file-upload/file-upload.component.d.ts +19 -0
  207. package/lib/components/form-item-impl/file-upload/file-upload.module.d.ts +14 -0
  208. package/lib/{file-upload → components/form-item-impl/file-upload}/index.d.ts +1 -0
  209. package/lib/components/form-item-impl/form-group/form-group.component.d.ts +17 -0
  210. package/lib/components/form-item-impl/form-group/form-group.module.d.ts +14 -0
  211. package/lib/components/form-item-impl/form-group/index.d.ts +2 -0
  212. package/lib/components/form-item-impl/form-section/form-section.component.d.ts +7 -0
  213. package/lib/components/form-item-impl/form-section/form-section.module.d.ts +12 -0
  214. package/lib/components/form-item-impl/form-section/index.d.ts +2 -0
  215. package/lib/components/form-item-impl/i18n-input/i18n-input.component.d.ts +15 -0
  216. package/lib/components/form-item-impl/i18n-input/i18n-input.module.d.ts +15 -0
  217. package/lib/components/form-item-impl/i18n-input/index.d.ts +2 -0
  218. package/lib/components/form-item-impl/index.d.ts +21 -0
  219. package/lib/components/form-item-impl/input/index.d.ts +2 -0
  220. package/lib/{form-item-controls → components/form-item-impl/input}/input.component.d.ts +2 -2
  221. package/lib/components/form-item-impl/input/input.module.d.ts +15 -0
  222. package/lib/components/form-item-impl/multiple-choice/index.d.ts +2 -0
  223. package/lib/components/form-item-impl/multiple-choice/multiple-choice.component.d.ts +7 -0
  224. package/lib/components/form-item-impl/multiple-choice/multiple-choice.module.d.ts +13 -0
  225. package/lib/components/form-item-impl/ordered-list/index.d.ts +2 -0
  226. package/lib/components/form-item-impl/ordered-list/ordered-list-item.component.d.ts +7 -0
  227. package/lib/components/form-item-impl/ordered-list/ordered-list-item.module.d.ts +10 -0
  228. package/lib/{groups → components/form-item-impl/repeatable-item}/index.d.ts +1 -1
  229. package/lib/components/form-item-impl/repeatable-item/repeatable-item.component.d.ts +5 -0
  230. package/lib/components/form-item-impl/repeatable-item/repeatable-item.module.d.ts +8 -0
  231. package/lib/components/form-item-impl/repeatable-item-container/index.d.ts +2 -0
  232. package/lib/components/form-item-impl/repeatable-item-container/repeatable-item-container.component.d.ts +13 -0
  233. package/lib/components/form-item-impl/repeatable-item-container/repeatable-item-container.module.d.ts +15 -0
  234. package/lib/components/form-item-impl/search/index.d.ts +2 -0
  235. package/lib/components/form-item-impl/search/resource-search.component.d.ts +15 -0
  236. package/lib/components/form-item-impl/search/resource-search.module.d.ts +12 -0
  237. package/lib/components/form-item-impl/table-item/index.d.ts +2 -0
  238. package/lib/components/form-item-impl/table-item/table-item.component.d.ts +9 -0
  239. package/lib/components/form-item-impl/table-item/table-item.module.d.ts +10 -0
  240. package/lib/components/form-item-impl/text/index.d.ts +2 -0
  241. package/lib/components/form-item-impl/text/text.component.d.ts +7 -0
  242. package/lib/components/form-item-impl/text/text.module.d.ts +10 -0
  243. package/lib/components/form-item-impl/title/index.d.ts +2 -0
  244. package/lib/components/form-item-impl/title/title.component.d.ts +7 -0
  245. package/lib/components/form-item-impl/title/title.module.d.ts +10 -0
  246. package/lib/components/form-item-impl/unordered-list/index.d.ts +2 -0
  247. package/lib/components/form-item-impl/unordered-list/unordered-list-item.component.d.ts +7 -0
  248. package/lib/components/form-item-impl/unordered-list/unordered-list-item.module.d.ts +10 -0
  249. package/lib/components/form-item-impl/year-quarter/index.d.ts +2 -0
  250. package/lib/{form-item-controls → components/form-item-impl/year-quarter}/year-quarter.component.d.ts +6 -4
  251. package/lib/components/form-item-impl/year-quarter/year-quarter.module.d.ts +16 -0
  252. package/lib/components/form-item-impl/year-quarter-range/index.d.ts +2 -0
  253. package/lib/{form-item-controls → components/form-item-impl/year-quarter-range}/year-quarter-range.component.d.ts +6 -2
  254. package/lib/components/form-item-impl/year-quarter-range/year-quarter-range.module.d.ts +12 -0
  255. package/lib/components/form-item-injector/form-item-injector.component.d.ts +48 -0
  256. package/lib/components/form-item-injector/form-item-injector.module.d.ts +8 -0
  257. package/lib/components/form-item-injector/index.d.ts +2 -0
  258. package/lib/{form-stepper → components/form-stepper/form-step}/form-step.component.d.ts +1 -1
  259. package/lib/components/form-stepper/form-step/index.d.ts +1 -0
  260. package/lib/{form-stepper → components/form-stepper/form-step-group}/form-step-group.component.d.ts +1 -1
  261. package/lib/components/form-stepper/form-step-group/index.d.ts +1 -0
  262. package/lib/{form-stepper → components/form-stepper/form-stepper}/form-stepper.component.d.ts +1 -2
  263. package/lib/components/form-stepper/form-stepper/index.d.ts +1 -0
  264. package/lib/components/form-stepper/form-stepper.module.d.ts +18 -0
  265. package/lib/components/form-stepper/index.d.ts +4 -0
  266. package/lib/components/index.d.ts +12 -0
  267. package/lib/{item-header → components/item-header}/index.d.ts +1 -0
  268. package/lib/{item-header → components/item-header}/item-header.component.d.ts +3 -3
  269. package/lib/components/item-header/item-header.module.d.ts +9 -0
  270. package/lib/{step-card → components/step-card}/index.d.ts +1 -0
  271. package/lib/{step-card → components/step-card}/step-card.component.d.ts +1 -1
  272. package/lib/components/step-card/step-card.module.d.ts +13 -0
  273. package/lib/core/_all-color.scss +13 -15
  274. package/lib/core/_all-theme.scss +13 -18
  275. package/lib/core/_all-typography.scss +13 -15
  276. package/lib/{form-item-controls → directives}/base-single-selection-parent.directive.d.ts +1 -1
  277. package/lib/directives/index.d.ts +4 -0
  278. package/lib/models/index.d.ts +6 -0
  279. package/lib/models/toggle-form-item-data.model.d.ts +7 -0
  280. package/lib/pipes/coerce-date-item.pipe.d.ts +17 -0
  281. package/lib/pipes/coerce-form-control.pipe.d.ts +13 -0
  282. package/lib/{core/pipes → pipes}/coerce-form-group.pipe.d.ts +5 -0
  283. package/lib/pipes/date-quarter.pipe.d.ts +12 -0
  284. package/lib/{form-stepper → pipes}/form-step-group.pipe.d.ts +6 -1
  285. package/lib/pipes/get-auto-complete.pipe.d.ts +12 -0
  286. package/lib/{core/pipes → pipes}/get-available-quarters.pipe.d.ts +5 -0
  287. package/lib/pipes/get-form-control-error.pipe.d.ts +19 -0
  288. package/lib/pipes/get-list-icon.pipe.d.ts +12 -0
  289. package/lib/pipes/get-object-type.pipe.d.ts +12 -0
  290. package/lib/{core/pipes → pipes}/get-selected-option.pipe.d.ts +5 -0
  291. package/lib/pipes/index.d.ts +13 -0
  292. package/lib/{core/pipes → pipes}/items-with-value.pipe.d.ts +5 -0
  293. package/lib/{core/pipes → pipes}/sanitize-html.pipe.d.ts +5 -0
  294. package/lib/{core/services → services}/api.service.d.ts +1 -1
  295. package/lib/services/dialog.service.d.ts +21 -0
  296. package/lib/{core/services → services}/form-manager.service.d.ts +1 -1
  297. package/lib/{core/services → services}/index.d.ts +2 -0
  298. package/lib/services/resource-search-selection.service.d.ts +10 -0
  299. package/lib/{core/services → services}/ui.service.d.ts +1 -1
  300. package/lib/{core/utilities → utilities}/flatten-steps.d.ts +1 -1
  301. package/lib/{form-stepper → utilities}/form-step.util.d.ts +1 -1
  302. package/lib/{core/utilities → utilities}/generate-form-steps.d.ts +1 -1
  303. package/lib/utilities/get-item-class-suffix.d.ts +1 -0
  304. package/lib/{core/utilities → utilities}/index.d.ts +4 -0
  305. package/lib/utilities/is-form-control.d.ts +2 -0
  306. package/lib/{core/utilities → utilities}/update-step-status.d.ts +1 -1
  307. package/package.json +4 -2
  308. package/public-api.d.ts +7 -9
  309. package/esm2015/lib/core/animations.js +0 -8
  310. package/esm2015/lib/core/api-config.js +0 -3
  311. package/esm2015/lib/core/index.js +0 -7
  312. package/esm2015/lib/core/pipes/coerce-date-item.pipe.js +0 -23
  313. package/esm2015/lib/core/pipes/coerce-form-group.pipe.js +0 -35
  314. package/esm2015/lib/core/pipes/date-quarter.pipe.js +0 -43
  315. package/esm2015/lib/core/pipes/get-auto-complete.pipe.js +0 -42
  316. package/esm2015/lib/core/pipes/get-available-quarters.pipe.js +0 -29
  317. package/esm2015/lib/core/pipes/get-form-control-error.pipe.js +0 -20
  318. package/esm2015/lib/core/pipes/get-list-icon.pipe.js +0 -53
  319. package/esm2015/lib/core/pipes/get-object-type.pipe.js +0 -17
  320. package/esm2015/lib/core/pipes/get-selected-option.pipe.js +0 -20
  321. package/esm2015/lib/core/pipes/index.js +0 -71
  322. package/esm2015/lib/core/pipes/items-with-value.pipe.js +0 -30
  323. package/esm2015/lib/core/pipes/sanitize-html.pipe.js +0 -23
  324. package/esm2015/lib/core/services/api.service.js +0 -67
  325. package/esm2015/lib/core/services/form-manager.service.js +0 -465
  326. package/esm2015/lib/core/services/index.js +0 -5
  327. package/esm2015/lib/core/services/ng-form.service.js +0 -150
  328. package/esm2015/lib/core/services/ui.service.js +0 -333
  329. package/esm2015/lib/core/utilities/find-form-control.js +0 -29
  330. package/esm2015/lib/core/utilities/find-form-item.js +0 -25
  331. package/esm2015/lib/core/utilities/flatten-steps.js +0 -10
  332. package/esm2015/lib/core/utilities/generate-form-steps.js +0 -38
  333. package/esm2015/lib/core/utilities/index.js +0 -9
  334. package/esm2015/lib/core/utilities/is-form-group.js +0 -6
  335. package/esm2015/lib/core/utilities/serializer-util.js +0 -358
  336. package/esm2015/lib/core/utilities/update-step-status.js +0 -38
  337. package/esm2015/lib/core/validators/index.js +0 -3
  338. package/esm2015/lib/core/validators/instant-validation-result-error-state-matcher.js +0 -23
  339. package/esm2015/lib/core/validators/validation-result-validator.js +0 -19
  340. package/esm2015/lib/file-upload/file-upload.component.js +0 -66
  341. package/esm2015/lib/file-upload/index.js +0 -2
  342. package/esm2015/lib/form/base-form-item.model.js +0 -2
  343. package/esm2015/lib/form/form.component.js +0 -250
  344. package/esm2015/lib/form/form.module.js +0 -214
  345. package/esm2015/lib/form/index.js +0 -5
  346. package/esm2015/lib/form/white-list.model.js +0 -11
  347. package/esm2015/lib/form-item-controls/base-form-item-control.directive.js +0 -58
  348. package/esm2015/lib/form-item-controls/base-parent-item-control.directive.js +0 -42
  349. package/esm2015/lib/form-item-controls/base-single-selection-parent.directive.js +0 -53
  350. package/esm2015/lib/form-item-controls/date-range.component.js +0 -84
  351. package/esm2015/lib/form-item-controls/date.component.js +0 -134
  352. package/esm2015/lib/form-item-controls/dropdown.component.js +0 -109
  353. package/esm2015/lib/form-item-controls/index.js +0 -8
  354. package/esm2015/lib/form-item-controls/input.component.js +0 -149
  355. package/esm2015/lib/form-item-controls/year-quarter-range.component.js +0 -75
  356. package/esm2015/lib/form-item-controls/year-quarter.component.js +0 -228
  357. package/esm2015/lib/form-stepper/form-step-group.component.js +0 -95
  358. package/esm2015/lib/form-stepper/form-step-group.pipe.js +0 -20
  359. package/esm2015/lib/form-stepper/form-step.component.js +0 -110
  360. package/esm2015/lib/form-stepper/form-step.util.js +0 -28
  361. package/esm2015/lib/form-stepper/form-stepper.component.js +0 -115
  362. package/esm2015/lib/form-stepper/form-stepper.module.js +0 -53
  363. package/esm2015/lib/form-stepper/index.js +0 -8
  364. package/esm2015/lib/groups/group-components.js +0 -646
  365. package/esm2015/lib/groups/index.js +0 -3
  366. package/esm2015/lib/groups/repeatable-item.component.js +0 -23
  367. package/esm2015/lib/item-header/index.js +0 -2
  368. package/esm2015/lib/item-header/item-header.component.js +0 -108
  369. package/esm2015/lib/static-form-items/index.js +0 -3
  370. package/esm2015/lib/static-form-items/ordered-list-item.js +0 -50
  371. package/esm2015/lib/static-form-items/unordered-list-item.js +0 -52
  372. package/esm2015/lib/step-card/index.js +0 -2
  373. package/lib/_index.scss +0 -24
  374. package/lib/core/index.d.ts +0 -6
  375. package/lib/core/pipes/coerce-date-item.pipe.d.ts +0 -11
  376. package/lib/core/pipes/date-quarter.pipe.d.ts +0 -7
  377. package/lib/core/pipes/get-auto-complete.pipe.d.ts +0 -7
  378. package/lib/core/pipes/get-form-control-error.pipe.d.ts +0 -14
  379. package/lib/core/pipes/get-list-icon.pipe.d.ts +0 -7
  380. package/lib/core/pipes/get-object-type.pipe.d.ts +0 -7
  381. package/lib/core/pipes/index.d.ts +0 -28
  382. package/lib/file-upload/file-upload.component.d.ts +0 -23
  383. package/lib/form/form.module.d.ts +0 -52
  384. package/lib/form/index.d.ts +0 -4
  385. package/lib/form-item-controls/index.d.ts +0 -7
  386. package/lib/form-stepper/form-stepper.module.d.ts +0 -18
  387. package/lib/form-stepper/index.d.ts +0 -7
  388. package/lib/groups/group-components.d.ts +0 -221
  389. package/lib/groups/repeatable-item.component.d.ts +0 -5
  390. package/lib/static-form-items/index.d.ts +0 -2
  391. package/lib/static-form-items/ordered-list-item.d.ts +0 -11
  392. package/lib/static-form-items/unordered-list-item.d.ts +0 -11
  393. /package/lib/{form → components/form-disabler}/form-disabler.component.d.ts +0 -0
  394. /package/lib/{groups → components/form-item-impl/checkbox}/_checkbox-theme.scss +0 -0
  395. /package/lib/{form-item-controls → components/form-item-impl/date}/_date-item-theme.scss +0 -0
  396. /package/lib/{groups → components/form-item-impl/form-group}/_form-group-theme.scss +0 -0
  397. /package/lib/{groups → components/form-item-impl/multiple-choice}/_multiple-choice-theme.scss +0 -0
  398. /package/lib/{groups/_repeatable-item-theme.scss → components/form-item-impl/repeatable-item-container/_repeatable-item-container-theme.scss} +0 -0
  399. /package/lib/{form-item-controls → components/form-item-impl/year-quarter}/_year-quarter-item-theme.scss +0 -0
  400. /package/lib/{form-stepper → components/form-stepper/form-step-group}/_form-step-group-theme.scss +0 -0
  401. /package/lib/{form-stepper → components/form-stepper/form-stepper}/_form-stepper-theme.scss +0 -0
  402. /package/lib/{item-header → components/item-header}/_item-header-theme.scss +0 -0
  403. /package/lib/{step-card → components/step-card}/_step-card-theme.scss +0 -0
  404. /package/lib/{form-item-controls → core}/_form-control-theme.scss +0 -0
  405. /package/lib/{form-item-controls → directives}/base-form-item-control.directive.d.ts +0 -0
  406. /package/lib/{form-item-controls → directives}/base-parent-item-control.directive.d.ts +0 -0
  407. /package/lib/{form → directives}/form-item.directive.d.ts +0 -0
  408. /package/lib/{core → models}/api-config.d.ts +0 -0
  409. /package/lib/{form → models}/base-form-item.model.d.ts +0 -0
  410. /package/lib/{groups → models}/form-item-dialog-data.model.d.ts +0 -0
  411. /package/lib/{form-stepper/models → models/form-stepper}/base-form-step.model.d.ts +0 -0
  412. /package/lib/{form-stepper/models → models/form-stepper}/form-step-group.model.d.ts +0 -0
  413. /package/lib/{form-stepper/models → models/form-stepper}/form-step.model.d.ts +0 -0
  414. /package/lib/{form-stepper/models → models/form-stepper}/index.d.ts +0 -0
  415. /package/lib/{form → models}/white-list.model.d.ts +0 -0
  416. /package/lib/{core/services → services}/ng-form.service.d.ts +0 -0
  417. /package/lib/{core → utilities}/animations.d.ts +0 -0
  418. /package/lib/{core/utilities → utilities}/find-form-control.d.ts +0 -0
  419. /package/lib/{core/utilities → utilities}/find-form-item.d.ts +0 -0
  420. /package/lib/{core/utilities → utilities}/is-form-group.d.ts +0 -0
  421. /package/lib/{core/utilities → utilities}/serializer-util.d.ts +0 -0
  422. /package/lib/{core/validators → validators}/index.d.ts +0 -0
  423. /package/lib/{core/validators → validators}/instant-validation-result-error-state-matcher.d.ts +0 -0
  424. /package/lib/{core/validators → validators}/validation-result-validator.d.ts +0 -0
@@ -1,149 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
2
- import { BaseFormItemControl } from './base-form-item-control.directive';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/material/form-field";
5
- import * as i2 from "@angular/material/list";
6
- import * as i3 from "@angular/common";
7
- import * as i4 from "@mtna/core-angular";
8
- import * as i5 from "@angular/material/input";
9
- import * as i6 from "@angular/forms";
10
- import * as i7 from "@angular/material/core";
11
- import * as i8 from "../core/pipes/get-auto-complete.pipe";
12
- import * as i9 from "../core/pipes/get-form-control-error.pipe";
13
- export class MtnaWfInputComponent extends BaseFormItemControl {
14
- constructor(elementRef) {
15
- super();
16
- this.elementRef = elementRef;
17
- this.isParagraph = this._hasHostAttributes('mtnaWfParagraphItem');
18
- this.isNumberInput = this._hasHostAttributes('mtnaWfDecimalItem', 'mtnaWfWholeNumberItem');
19
- }
20
- _hasHostAttributes(...attributes) {
21
- return attributes.some((attr) => this.elementRef.nativeElement.hasAttribute(attr));
22
- }
23
- }
24
- MtnaWfInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfInputComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
25
- MtnaWfInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfInputComponent, selector: "mtna-wf-input-item[mtnaWfDecimalItem],\n mtna-wf-input-item[mtnaWfParagraphItem],\n mtna-wf-input-item[mtnaWfShortAnswerItem],\n mtna-wf-input-item[mtnaWfWholeNumberItem],", usesInheritance: true, ngImport: i0, template: `
26
- <ng-container *ngTemplateOutlet="header; context: { $implicit: true }"></ng-container>
27
- <mat-form-field
28
- *ngIf="!readonly && !!control; else readOnly"
29
- appearance="outline"
30
- [mtnaHighlight]="indicatorStatus === 'ACTIVE' && !hasItemHeader"
31
- >
32
- <mat-label>{{ item.label }}</mat-label>
33
- <textarea
34
- *ngIf="isParagraph; else shortInput"
35
- matInput
36
- [formControl]="control"
37
- [required]="item.required"
38
- [attr.autocomplete]="item.label || item.name | getAutoComplete"
39
- cdkTextareaAutoSize
40
- cdkAutosizeMinRows="3"
41
- cdkAutosizeMaxRows="5"
42
- ></textarea>
43
-
44
- <ng-template #shortInput>
45
- <input matInput [formControl]="control!" [autocomplete]="item.label || item.name | getAutoComplete" [required]="item.required" />
46
- </ng-template>
47
-
48
- <mat-error *ngFor="let error of control.errors | keyvalue | slice : 0 : 1">
49
- {{ error | mtnaWfGetControlError : item }}
50
- </mat-error>
51
- </mat-form-field>
52
-
53
- <!-- READONLY -->
54
- <ng-template #readOnly>
55
- <ng-container *ngTemplateOutlet="inList ? listItem : fullList"></ng-container>
56
- </ng-template>
57
-
58
- <ng-template #fullList>
59
- <mat-list>
60
- <ng-container *ngTemplateOutlet="listItem"></ng-container>
61
- </mat-list>
62
- </ng-template>
63
-
64
- <ng-template #listItem>
65
- <mat-list-item class="wrappable-list-item">
66
- <!-- <mat-icon *ngIf="item.label || item.header as label" matListIcon>{{ label | getListIcon }}</mat-icon> -->
67
- <h4 *ngIf="!item.questionText && (item.label || item.name) as label" mat-line>{{ label }}</h4>
68
- <p mat-line class="wrap-line">{{ item.value || 'No Information Provided' }}</p>
69
- </mat-list-item>
70
- </ng-template>
71
- `, isInline: true, styles: [".mtna-wf-control-item .mat-form-field{width:100%}.mtna-wf-control-item .mtna-wf-error-container{font-size:75%;line-height:1;min-height:1em;margin-top:-.75rem}.mtna-wf-control-item .control-item-content{padding:.35em .75em .625em}.mtna-wf-control-item .mtna-wf-item-header~:not(.mtna-wf-error-container):not(.mat-list){padding-left:.75em}.mtna-wf-control-item .mtna-wf-item-header~:not(.mtna-wf-error-container):not(.mat-list).mat-form-field{width:calc(100% - .75em)}\n", "\n mtna-wf-input-item .mat-list-base .mat-list-item,\n mtna-wf-input-item .mat-list-base .mat-list-item.mat-list-item-with-avatar {\n height: auto;\n padding: 12px 0;\n }\n mtna-wf-input-item .mat-list-base .mat-list-item.mat-2-line,\n mtna-wf-input-item .mat-list-base .mat-list-item.mat-2-line.mat-list-item-with-avatar {\n padding: 18.5px 0;\n }\n mtna-wf-input-item .mat-list-base .mat-list-item .mat-line {\n white-space: normal;\n overflow: unset;\n text-overflow: unset;\n }\n "], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }], directives: [{ type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.MtnaHighlightDirective, selector: "[mtnaHighlight]", inputs: ["mtnaHighlight", "mtnaHighlightColor"], exportAs: ["mtnaHighlight"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatError, selector: "mat-error", inputs: ["id"] }, { type: i7.MatLine, selector: "[mat-line], [matLine]" }], pipes: { "getAutoComplete": i8.GetAutoCompletePipe, "slice": i3.SlicePipe, "keyvalue": i3.KeyValuePipe, "mtnaWfGetControlError": i9.MtnaGetFormControlErrorPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfInputComponent, decorators: [{
73
- type: Component,
74
- args: [{
75
- selector: `mtna-wf-input-item[mtnaWfDecimalItem],
76
- mtna-wf-input-item[mtnaWfParagraphItem],
77
- mtna-wf-input-item[mtnaWfShortAnswerItem],
78
- mtna-wf-input-item[mtnaWfWholeNumberItem],`,
79
- template: `
80
- <ng-container *ngTemplateOutlet="header; context: { $implicit: true }"></ng-container>
81
- <mat-form-field
82
- *ngIf="!readonly && !!control; else readOnly"
83
- appearance="outline"
84
- [mtnaHighlight]="indicatorStatus === 'ACTIVE' && !hasItemHeader"
85
- >
86
- <mat-label>{{ item.label }}</mat-label>
87
- <textarea
88
- *ngIf="isParagraph; else shortInput"
89
- matInput
90
- [formControl]="control"
91
- [required]="item.required"
92
- [attr.autocomplete]="item.label || item.name | getAutoComplete"
93
- cdkTextareaAutoSize
94
- cdkAutosizeMinRows="3"
95
- cdkAutosizeMaxRows="5"
96
- ></textarea>
97
-
98
- <ng-template #shortInput>
99
- <input matInput [formControl]="control!" [autocomplete]="item.label || item.name | getAutoComplete" [required]="item.required" />
100
- </ng-template>
101
-
102
- <mat-error *ngFor="let error of control.errors | keyvalue | slice : 0 : 1">
103
- {{ error | mtnaWfGetControlError : item }}
104
- </mat-error>
105
- </mat-form-field>
106
-
107
- <!-- READONLY -->
108
- <ng-template #readOnly>
109
- <ng-container *ngTemplateOutlet="inList ? listItem : fullList"></ng-container>
110
- </ng-template>
111
-
112
- <ng-template #fullList>
113
- <mat-list>
114
- <ng-container *ngTemplateOutlet="listItem"></ng-container>
115
- </mat-list>
116
- </ng-template>
117
-
118
- <ng-template #listItem>
119
- <mat-list-item class="wrappable-list-item">
120
- <!-- <mat-icon *ngIf="item.label || item.header as label" matListIcon>{{ label | getListIcon }}</mat-icon> -->
121
- <h4 *ngIf="!item.questionText && (item.label || item.name) as label" mat-line>{{ label }}</h4>
122
- <p mat-line class="wrap-line">{{ item.value || 'No Information Provided' }}</p>
123
- </mat-list-item>
124
- </ng-template>
125
- `,
126
- styleUrls: [`form-control.scss`],
127
- styles: [
128
- `
129
- mtna-wf-input-item .mat-list-base .mat-list-item,
130
- mtna-wf-input-item .mat-list-base .mat-list-item.mat-list-item-with-avatar {
131
- height: auto;
132
- padding: 12px 0;
133
- }
134
- mtna-wf-input-item .mat-list-base .mat-list-item.mat-2-line,
135
- mtna-wf-input-item .mat-list-base .mat-list-item.mat-2-line.mat-list-item-with-avatar {
136
- padding: 18.5px 0;
137
- }
138
- mtna-wf-input-item .mat-list-base .mat-list-item .mat-line {
139
- white-space: normal;
140
- overflow: unset;
141
- text-overflow: unset;
142
- }
143
- `,
144
- ],
145
- encapsulation: ViewEncapsulation.None,
146
- changeDetection: ChangeDetectionStrategy.OnPush,
147
- }]
148
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2ViLWZvcm0tYW5ndWxhci9zcmMvbGliL2Zvcm0taXRlbS1jb250cm9scy9pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBYyxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUtsRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7Ozs7Ozs7QUE0RXpFLE1BQU0sT0FBTyxvQkFFWCxTQUFRLG1CQUFtQztJQUkzQyxZQUFzQixVQUFzQjtRQUMxQyxLQUFLLEVBQUUsQ0FBQztRQURZLGVBQVUsR0FBVixVQUFVLENBQVk7UUFIbkMsZ0JBQVcsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM3RCxrQkFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO0lBSS9GLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxHQUFHLFVBQW9CO1FBQ2hELE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUE2QixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7O2tIQVpVLG9CQUFvQjtzR0FBcEIsb0JBQW9CLDhRQXJFckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Q1Q7NEZBdUJVLG9CQUFvQjtrQkExRWhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFOzs7d0RBRzRDO29CQUN0RCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Q1Q7b0JBQ0QsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ2hDLE1BQU0sRUFBRTt3QkFDTjs7Ozs7Ozs7Ozs7Ozs7O0tBZUM7cUJBQ0Y7b0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgRGVjaW1hbEFuc3dlckl0ZW0sIFBhcmFncmFwaEFuc3dlckl0ZW0sIFNob3J0QW5zd2VySXRlbSwgV2hvbGVOdW1iZXJBbnN3ZXJJdGVtIH0gZnJvbSAnQG10bmEvd2ViLWZvcm0tdHMnO1xuXG5pbXBvcnQgeyBCYXNlRm9ybUl0ZW1Db250cm9sIH0gZnJvbSAnLi9iYXNlLWZvcm0taXRlbS1jb250cm9sLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogYG10bmEtd2YtaW5wdXQtaXRlbVttdG5hV2ZEZWNpbWFsSXRlbV0sXG4gICAgICAgICAgICAgbXRuYS13Zi1pbnB1dC1pdGVtW210bmFXZlBhcmFncmFwaEl0ZW1dLFxuICAgICAgICAgICAgIG10bmEtd2YtaW5wdXQtaXRlbVttdG5hV2ZTaG9ydEFuc3dlckl0ZW1dLFxuICAgICAgICAgICAgIG10bmEtd2YtaW5wdXQtaXRlbVttdG5hV2ZXaG9sZU51bWJlckl0ZW1dLGAsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlcjsgY29udGV4dDogeyAkaW1wbGljaXQ6IHRydWUgfVwiPjwvbmctY29udGFpbmVyPlxuICAgIDxtYXQtZm9ybS1maWVsZFxuICAgICAgKm5nSWY9XCIhcmVhZG9ubHkgJiYgISFjb250cm9sOyBlbHNlIHJlYWRPbmx5XCJcbiAgICAgIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcbiAgICAgIFttdG5hSGlnaGxpZ2h0XT1cImluZGljYXRvclN0YXR1cyA9PT0gJ0FDVElWRScgJiYgIWhhc0l0ZW1IZWFkZXJcIlxuICAgID5cbiAgICAgIDxtYXQtbGFiZWw+e3sgaXRlbS5sYWJlbCB9fTwvbWF0LWxhYmVsPlxuICAgICAgPHRleHRhcmVhXG4gICAgICAgICpuZ0lmPVwiaXNQYXJhZ3JhcGg7IGVsc2Ugc2hvcnRJbnB1dFwiXG4gICAgICAgIG1hdElucHV0XG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgICAgW3JlcXVpcmVkXT1cIml0ZW0ucmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiaXRlbS5sYWJlbCB8fCBpdGVtLm5hbWUgfCBnZXRBdXRvQ29tcGxldGVcIlxuICAgICAgICBjZGtUZXh0YXJlYUF1dG9TaXplXG4gICAgICAgIGNka0F1dG9zaXplTWluUm93cz1cIjNcIlxuICAgICAgICBjZGtBdXRvc2l6ZU1heFJvd3M9XCI1XCJcbiAgICAgID48L3RleHRhcmVhPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI3Nob3J0SW5wdXQ+XG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCBbZm9ybUNvbnRyb2xdPVwiY29udHJvbCFcIiBbYXV0b2NvbXBsZXRlXT1cIml0ZW0ubGFiZWwgfHwgaXRlbS5uYW1lIHwgZ2V0QXV0b0NvbXBsZXRlXCIgW3JlcXVpcmVkXT1cIml0ZW0ucmVxdWlyZWRcIiAvPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPG1hdC1lcnJvciAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgY29udHJvbC5lcnJvcnMgfCBrZXl2YWx1ZSB8IHNsaWNlIDogMCA6IDFcIj5cbiAgICAgICAge3sgZXJyb3IgfCBtdG5hV2ZHZXRDb250cm9sRXJyb3IgOiBpdGVtIH19XG4gICAgICA8L21hdC1lcnJvcj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgPCEtLSBSRUFET05MWSAtLT5cbiAgICA8bmctdGVtcGxhdGUgI3JlYWRPbmx5PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImluTGlzdCA/IGxpc3RJdGVtIDogZnVsbExpc3RcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPG5nLXRlbXBsYXRlICNmdWxsTGlzdD5cbiAgICAgIDxtYXQtbGlzdD5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxpc3RJdGVtXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L21hdC1saXN0PlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI2xpc3RJdGVtPlxuICAgICAgPG1hdC1saXN0LWl0ZW0gY2xhc3M9XCJ3cmFwcGFibGUtbGlzdC1pdGVtXCI+XG4gICAgICAgIDwhLS0gPG1hdC1pY29uICpuZ0lmPVwiaXRlbS5sYWJlbCB8fCBpdGVtLmhlYWRlciBhcyBsYWJlbFwiIG1hdExpc3RJY29uPnt7IGxhYmVsIHwgZ2V0TGlzdEljb24gfX08L21hdC1pY29uPiAtLT5cbiAgICAgICAgPGg0ICpuZ0lmPVwiIWl0ZW0ucXVlc3Rpb25UZXh0ICYmIChpdGVtLmxhYmVsIHx8IGl0ZW0ubmFtZSkgYXMgbGFiZWxcIiBtYXQtbGluZT57eyBsYWJlbCB9fTwvaDQ+XG4gICAgICAgIDxwIG1hdC1saW5lIGNsYXNzPVwid3JhcC1saW5lXCI+e3sgaXRlbS52YWx1ZSB8fCAnTm8gSW5mb3JtYXRpb24gUHJvdmlkZWQnIH19PC9wPlxuICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG4gIHN0eWxlVXJsczogW2Bmb3JtLWNvbnRyb2wuc2Nzc2BdLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICBtdG5hLXdmLWlucHV0LWl0ZW0gLm1hdC1saXN0LWJhc2UgLm1hdC1saXN0LWl0ZW0sXG4gICAgICBtdG5hLXdmLWlucHV0LWl0ZW0gLm1hdC1saXN0LWJhc2UgLm1hdC1saXN0LWl0ZW0ubWF0LWxpc3QtaXRlbS13aXRoLWF2YXRhciB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMTJweCAwO1xuICAgICAgfVxuICAgICAgbXRuYS13Zi1pbnB1dC1pdGVtIC5tYXQtbGlzdC1iYXNlIC5tYXQtbGlzdC1pdGVtLm1hdC0yLWxpbmUsXG4gICAgICBtdG5hLXdmLWlucHV0LWl0ZW0gLm1hdC1saXN0LWJhc2UgLm1hdC1saXN0LWl0ZW0ubWF0LTItbGluZS5tYXQtbGlzdC1pdGVtLXdpdGgtYXZhdGFyIHtcbiAgICAgICAgcGFkZGluZzogMTguNXB4IDA7XG4gICAgICB9XG4gICAgICBtdG5hLXdmLWlucHV0LWl0ZW0gLm1hdC1saXN0LWJhc2UgLm1hdC1saXN0LWl0ZW0gLm1hdC1saW5lIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiB1bnNldDtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTXRuYVdmSW5wdXRDb21wb25lbnQ8XG4gIEkgZXh0ZW5kcyBEZWNpbWFsQW5zd2VySXRlbSB8IFBhcmFncmFwaEFuc3dlckl0ZW0gfCBTaG9ydEFuc3dlckl0ZW0gfCBXaG9sZU51bWJlckFuc3dlckl0ZW1cbj4gZXh0ZW5kcyBCYXNlRm9ybUl0ZW1Db250cm9sPEksIEZvcm1Db250cm9sPiB7XG4gIHJlYWRvbmx5IGlzUGFyYWdyYXBoID0gdGhpcy5faGFzSG9zdEF0dHJpYnV0ZXMoJ210bmFXZlBhcmFncmFwaEl0ZW0nKTtcbiAgcmVhZG9ubHkgaXNOdW1iZXJJbnB1dCA9IHRoaXMuX2hhc0hvc3RBdHRyaWJ1dGVzKCdtdG5hV2ZEZWNpbWFsSXRlbScsICdtdG5hV2ZXaG9sZU51bWJlckl0ZW0nKTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwcml2YXRlIF9oYXNIb3N0QXR0cmlidXRlcyguLi5hdHRyaWJ1dGVzOiBzdHJpbmdbXSkge1xuICAgIHJldHVybiBhdHRyaWJ1dGVzLnNvbWUoKGF0dHIpID0+ICh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuaGFzQXR0cmlidXRlKGF0dHIpKTtcbiAgfVxufVxuIl19
@@ -1,75 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation } from '@angular/core';
2
- import { BaseFormItemControl } from './base-form-item-control.directive';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./year-quarter.component";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "@angular/flex-layout/flex";
7
- import * as i4 from "@mtna/core-angular";
8
- export class MtnaWfYearQuarterRangeComponent extends BaseFormItemControl {
9
- constructor() {
10
- super(...arguments);
11
- this.yearQuarterRangeClass = true;
12
- }
13
- }
14
- MtnaWfYearQuarterRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfYearQuarterRangeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
15
- MtnaWfYearQuarterRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfYearQuarterRangeComponent, selector: "mtna-wf-year-quarter-range-item", host: { properties: { "class.mtna-wf-year-quarter-range-item": "this.yearQuarterRangeClass" } }, usesInheritance: true, ngImport: i0, template: `
16
- <ng-container *ngTemplateOutlet="header"></ng-container>
17
-
18
- <div
19
- *ngIf="control"
20
- class="range-item-container"
21
- fxLayout="row"
22
- fxLayoutAlign="start center"
23
- fxLayoutGap="8px"
24
- [mtnaHighlight]="indicatorStatus === 'ACTIVE' && !hasItemHeader"
25
- >
26
- <mtna-wf-year-quarter-item
27
- [control]="control.controls['start']"
28
- [readonly]="readonly"
29
- [rangeLimits]="item.rangeLimits"
30
- ></mtna-wf-year-quarter-item>
31
- <span fxFlex="14px">to</span>
32
- <mtna-wf-year-quarter-item
33
- [control]="control.controls['end']"
34
- [readonly]="readonly"
35
- [rangeLimits]="item.rangeLimits"
36
- ></mtna-wf-year-quarter-item>
37
- </div>
38
- `, isInline: true, styles: [".mtna-wf-control-item .mat-form-field{width:100%}.mtna-wf-control-item .mtna-wf-error-container{font-size:75%;line-height:1;min-height:1em;margin-top:-.75rem}.mtna-wf-control-item .control-item-content{padding:.35em .75em .625em}.mtna-wf-control-item .mtna-wf-item-header~:not(.mtna-wf-error-container):not(.mat-list){padding-left:.75em}.mtna-wf-control-item .mtna-wf-item-header~:not(.mtna-wf-error-container):not(.mat-list).mat-form-field{width:calc(100% - .75em)}\n"], components: [{ type: i1.MtnaWfYearQuarterComponent, selector: "mtna-wf-year-quarter-item", inputs: ["rangeLimits"] }], directives: [{ type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i4.MtnaHighlightDirective, selector: "[mtnaHighlight]", inputs: ["mtnaHighlight", "mtnaHighlightColor"], exportAs: ["mtnaHighlight"] }, { type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfYearQuarterRangeComponent, decorators: [{
40
- type: Component,
41
- args: [{
42
- selector: 'mtna-wf-year-quarter-range-item',
43
- template: `
44
- <ng-container *ngTemplateOutlet="header"></ng-container>
45
-
46
- <div
47
- *ngIf="control"
48
- class="range-item-container"
49
- fxLayout="row"
50
- fxLayoutAlign="start center"
51
- fxLayoutGap="8px"
52
- [mtnaHighlight]="indicatorStatus === 'ACTIVE' && !hasItemHeader"
53
- >
54
- <mtna-wf-year-quarter-item
55
- [control]="control.controls['start']"
56
- [readonly]="readonly"
57
- [rangeLimits]="item.rangeLimits"
58
- ></mtna-wf-year-quarter-item>
59
- <span fxFlex="14px">to</span>
60
- <mtna-wf-year-quarter-item
61
- [control]="control.controls['end']"
62
- [readonly]="readonly"
63
- [rangeLimits]="item.rangeLimits"
64
- ></mtna-wf-year-quarter-item>
65
- </div>
66
- `,
67
- styleUrls: [`form-control.scss`],
68
- encapsulation: ViewEncapsulation.None,
69
- changeDetection: ChangeDetectionStrategy.OnPush,
70
- }]
71
- }], propDecorators: { yearQuarterRangeClass: [{
72
- type: HostBinding,
73
- args: ['class.mtna-wf-year-quarter-range-item']
74
- }] } });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhci1xdWFydGVyLXJhbmdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYi1mb3JtLWFuZ3VsYXIvc3JjL2xpYi9mb3JtLWl0ZW0tY29udHJvbHMveWVhci1xdWFydGVyLXJhbmdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUtuRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7O0FBZ0N6RSxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsbUJBQW9EO0lBOUJ6Rzs7UUErQndELDBCQUFxQixHQUFHLElBQUksQ0FBQztLQUNwRjs7NkhBRlksK0JBQStCO2lIQUEvQiwrQkFBK0IsK0xBNUJoQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1QlQ7NEZBS1UsK0JBQStCO2tCQTlCM0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUNBQWlDO29CQUMzQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdUJUO29CQUNELFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUNoQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzhCQUV1RCxxQkFBcUI7c0JBQTFFLFdBQVc7dUJBQUMsdUNBQXVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IFllYXJRdWFydGVyUmFuZ2VJdGVtIH0gZnJvbSAnQG10bmEvd2ViLWZvcm0tdHMnO1xuXG5pbXBvcnQgeyBCYXNlRm9ybUl0ZW1Db250cm9sIH0gZnJvbSAnLi9iYXNlLWZvcm0taXRlbS1jb250cm9sLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ210bmEtd2YteWVhci1xdWFydGVyLXJhbmdlLWl0ZW0nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJcIj48L25nLWNvbnRhaW5lcj5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiY29udHJvbFwiXG4gICAgICBjbGFzcz1cInJhbmdlLWl0ZW0tY29udGFpbmVyXCJcbiAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIlxuICAgICAgZnhMYXlvdXRHYXA9XCI4cHhcIlxuICAgICAgW210bmFIaWdobGlnaHRdPVwiaW5kaWNhdG9yU3RhdHVzID09PSAnQUNUSVZFJyAmJiAhaGFzSXRlbUhlYWRlclwiXG4gICAgPlxuICAgICAgPG10bmEtd2YteWVhci1xdWFydGVyLWl0ZW1cbiAgICAgICAgW2NvbnRyb2xdPVwiY29udHJvbC5jb250cm9sc1snc3RhcnQnXVwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFtyYW5nZUxpbWl0c109XCJpdGVtLnJhbmdlTGltaXRzXCJcbiAgICAgID48L210bmEtd2YteWVhci1xdWFydGVyLWl0ZW0+XG4gICAgICA8c3BhbiBmeEZsZXg9XCIxNHB4XCI+dG88L3NwYW4+XG4gICAgICA8bXRuYS13Zi15ZWFyLXF1YXJ0ZXItaXRlbVxuICAgICAgICBbY29udHJvbF09XCJjb250cm9sLmNvbnRyb2xzWydlbmQnXVwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFtyYW5nZUxpbWl0c109XCJpdGVtLnJhbmdlTGltaXRzXCJcbiAgICAgID48L210bmEtd2YteWVhci1xdWFydGVyLWl0ZW0+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogW2Bmb3JtLWNvbnRyb2wuc2Nzc2BdLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTXRuYVdmWWVhclF1YXJ0ZXJSYW5nZUNvbXBvbmVudCBleHRlbmRzIEJhc2VGb3JtSXRlbUNvbnRyb2w8WWVhclF1YXJ0ZXJSYW5nZUl0ZW0sIEZvcm1Hcm91cD4ge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm10bmEtd2YteWVhci1xdWFydGVyLXJhbmdlLWl0ZW0nKSB5ZWFyUXVhcnRlclJhbmdlQ2xhc3MgPSB0cnVlO1xufVxuIl19
@@ -1,228 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, HostBinding, Inject, InjectionToken, Input, Optional, ViewEncapsulation, } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import { isPresent } from '@mtna/core-ts';
4
- import { merge, Subject } from 'rxjs';
5
- import { takeUntil } from 'rxjs/operators';
6
- import { BaseFormItemControl } from './base-form-item-control.directive';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/material/form-field";
9
- import * as i2 from "@angular/material/select";
10
- import * as i3 from "@angular/material/core";
11
- import * as i4 from "@angular/common";
12
- import * as i5 from "@angular/flex-layout/flex";
13
- import * as i6 from "@mtna/core-angular";
14
- import * as i7 from "@angular/forms";
15
- import * as i8 from "../core/pipes/get-form-control-error.pipe";
16
- import * as i9 from "../core/pipes/get-available-quarters.pipe";
17
- import * as i10 from "../core/pipes/date-quarter.pipe";
18
- export const MTNA_WF_DEFAULT_YEAR_RANGE = new InjectionToken('mtna.wf.default.year.range');
19
- export class MtnaWfYearQuarterComponent extends BaseFormItemControl {
20
- constructor(defaultYearRange) {
21
- super();
22
- this.yearQuarterItemClass = true;
23
- this._quarterControl = new FormControl();
24
- this._yearControl = new FormControl();
25
- this._yearSelection = new Array();
26
- this.destroyObs = new Subject();
27
- /**
28
- * Sets the quarter value to `null` if the year & quarter is out of bounds of the range limits.
29
- * Otherwise, returns original value
30
- *
31
- * @param value `[number, number]` The selected [year, quarter] value
32
- * @returns `[number, number]` The original [year, quarter] value OR [year, null]
33
- */
34
- this.withinRangeLimits = ([year, quarter]) => {
35
- var _a, _b;
36
- const beyondUpperLimit =
37
- // year matches end year range limit
38
- year === ((_a = this.rangeLimits) === null || _a === void 0 ? void 0 : _a.end.year) &&
39
- // quarter limit was provided
40
- isPresent(this.rangeLimits.end.quarter) &&
41
- // selected quarter is beyond quarter limit
42
- quarter > this.rangeLimits.end.quarter;
43
- const beyondLowerLimit =
44
- // year matches start year range limit
45
- year === ((_b = this.rangeLimits) === null || _b === void 0 ? void 0 : _b.start.year) &&
46
- // quarter limit was provided
47
- isPresent(this.rangeLimits.start.quarter) &&
48
- // selected quarter is beyond quarter limit
49
- quarter < this.rangeLimits.start.quarter;
50
- if (beyondLowerLimit || beyondUpperLimit) {
51
- this._quarterControl.setValue(null, { emitEvent: false });
52
- return [year, null];
53
- }
54
- return [year, quarter];
55
- };
56
- this.defaultYearRange = defaultYearRange || { numFutureYears: 25, numPastYears: 25 };
57
- }
58
- ngAfterViewInit() {
59
- if (!this.readonly) {
60
- // Observe Year & Quarter value changes && set them on the item's control
61
- merge(this._yearControl.valueChanges, this._quarterControl.valueChanges)
62
- .pipe(takeUntil(this.destroyObs))
63
- .subscribe(() => {
64
- var _a, _b, _c, _d;
65
- if (!((_a = this.control) === null || _a === void 0 ? void 0 : _a.dirty) && (this._yearControl.dirty || this._quarterControl.dirty)) {
66
- (_b = this.control) === null || _b === void 0 ? void 0 : _b.markAsDirty();
67
- (_c = this.control) === null || _c === void 0 ? void 0 : _c.markAsTouched();
68
- }
69
- if (isPresent(this._yearControl.value)) {
70
- const [year, quarter] = this.withinRangeLimits([this._yearControl.value, this._quarterControl.value]);
71
- (_d = this.control) === null || _d === void 0 ? void 0 : _d.setValue({ year, quarter });
72
- }
73
- });
74
- // FIXME not sure we need this until we starting making this control
75
- // required/unrequired at the right time. Even then, this is super inneficient
76
- /*
77
- // Listen to this control for disabling local controls
78
- this.control.statusChanges
79
- .pipe(
80
- startWith(this.control.status),
81
- takeUntil(this.destroyObs)
82
- )
83
- .subscribe(status => {
84
- console.warn('statusChanges', status, this.control);
85
- // if this control is enabled, enable local controls if disabled
86
- if (this.control.enabled) {
87
- if (this._quarterControl.disabled || this._yearControl.disabled) {
88
- console.warn('[YearQuarterItem] enable the things');
89
- // this._quarterControl.enable();
90
- // this._yearControl.enable();
91
- }
92
- // else this control is disabled, so disable local controls if enabled
93
- } else if (this._quarterControl.enabled || this._yearControl.enabled) {
94
- console.warn('[YearQuarterItem] disable the things');
95
- // this._yearControl.disable();
96
- // this._quarterControl.disable();
97
- }
98
- });
99
- */
100
- }
101
- }
102
- ngOnDestroy() {
103
- this.destroyObs.next();
104
- this.destroyObs.complete();
105
- }
106
- ngOnInit() {
107
- var _a, _b, _c;
108
- // Set any initial value onto the Year & Quarter controls
109
- this._yearControl.setValue(((_a = this.control) === null || _a === void 0 ? void 0 : _a.value) ? this.control.value.year : null);
110
- this._quarterControl.setValue(((_b = this.control) === null || _b === void 0 ? void 0 : _b.value) ? this.control.value.quarter : null);
111
- // Create range limits if none exist
112
- if (!this.rangeLimits) {
113
- const thisYear = new Date().getFullYear();
114
- this.rangeLimits = {
115
- start: {
116
- year: thisYear - this.defaultYearRange.numPastYears,
117
- quarter: null,
118
- },
119
- end: {
120
- year: thisYear + this.defaultYearRange.numFutureYears,
121
- quarter: null,
122
- },
123
- };
124
- }
125
- // Populate the year selection
126
- for (let i = this.rangeLimits.start.year || 0; i <= (this.rangeLimits.end.year || 0); i++) {
127
- this._yearSelection.push(i);
128
- }
129
- if (this.readonly) {
130
- (_c = this.control) === null || _c === void 0 ? void 0 : _c.disable();
131
- this._quarterControl.disable();
132
- this._yearControl.disable();
133
- }
134
- }
135
- }
136
- MtnaWfYearQuarterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfYearQuarterComponent, deps: [{ token: MTNA_WF_DEFAULT_YEAR_RANGE, optional: true }], target: i0.ɵɵFactoryTarget.Component });
137
- MtnaWfYearQuarterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfYearQuarterComponent, selector: "mtna-wf-year-quarter-item", inputs: { rangeLimits: "rangeLimits" }, host: { properties: { "class.mtna-wf-year-quarter-item": "this.yearQuarterItemClass" } }, usesInheritance: true, ngImport: i0, template: `
138
- <ng-container *ngTemplateOutlet="header"></ng-container>
139
- <div
140
- *ngIf="control"
141
- class="year-quarter-container"
142
- fxLayout="row"
143
- fxLayoutGap="8px"
144
- [mtnaHighlight]="indicatorStatus === 'ACTIVE' && !hasItemHeader"
145
- >
146
- <mat-form-field>
147
- <mat-select [formControl]="_yearControl" aria-label="year selection">
148
- <mat-option *ngFor="let year of _yearSelection" [value]="year">{{ year }}</mat-option>
149
- </mat-select>
150
- <mat-error *ngFor="let error of control.errors | keyvalue">
151
- {{ error | mtnaWfGetControlError : item }}
152
- </mat-error>
153
- </mat-form-field>
154
-
155
- <mat-form-field>
156
- <mat-select [formControl]="_quarterControl" aria-label="quarter selection">
157
- <mat-option>None</mat-option>
158
- <mat-option *ngFor="let quarter of _yearControl.value | mtnaWfGetQuarters : rangeLimits" [value]="quarter">{{
159
- $any(quarter) | mtnaWfDateQuarter : 'short'
160
- }}</mat-option>
161
- </mat-select>
162
- <mat-error *ngFor="let error of control.errors | keyvalue">
163
- {{ error | mtnaWfGetControlError : item }}
164
- </mat-error>
165
- </mat-form-field>
166
- </div>
167
- `, isInline: true, styles: [".mtna-wf-control-item .mat-form-field{width:100%}.mtna-wf-control-item .mtna-wf-error-container{font-size:75%;line-height:1;min-height:1em;margin-top:-.75rem}.mtna-wf-control-item .control-item-content{padding:.35em .75em .625em}.mtna-wf-control-item .mtna-wf-item-header~:not(.mtna-wf-error-container):not(.mat-list){padding-left:.75em}.mtna-wf-control-item .mtna-wf-item-header~:not(.mtna-wf-error-container):not(.mat-list).mat-form-field{width:calc(100% - .75em)}\n", "\n .mtna-wf-year-quarter-item .year-quarter-container > .mat-form-field {\n max-width: 75px;\n }\n .mtna-wf-year-quarter-item .year-quarter-container > .mat-form-field:first-of-type {\n margin-right: 8px;\n }\n "], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i5.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { type: i6.MtnaHighlightDirective, selector: "[mtnaHighlight]", inputs: ["mtnaHighlight", "mtnaHighlightColor"], exportAs: ["mtnaHighlight"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "keyvalue": i4.KeyValuePipe, "mtnaWfGetControlError": i8.MtnaGetFormControlErrorPipe, "mtnaWfGetQuarters": i9.MtnaWfGetAvailableQuartersPipe, "mtnaWfDateQuarter": i10.DateQuarterPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfYearQuarterComponent, decorators: [{
169
- type: Component,
170
- args: [{
171
- selector: 'mtna-wf-year-quarter-item',
172
- template: `
173
- <ng-container *ngTemplateOutlet="header"></ng-container>
174
- <div
175
- *ngIf="control"
176
- class="year-quarter-container"
177
- fxLayout="row"
178
- fxLayoutGap="8px"
179
- [mtnaHighlight]="indicatorStatus === 'ACTIVE' && !hasItemHeader"
180
- >
181
- <mat-form-field>
182
- <mat-select [formControl]="_yearControl" aria-label="year selection">
183
- <mat-option *ngFor="let year of _yearSelection" [value]="year">{{ year }}</mat-option>
184
- </mat-select>
185
- <mat-error *ngFor="let error of control.errors | keyvalue">
186
- {{ error | mtnaWfGetControlError : item }}
187
- </mat-error>
188
- </mat-form-field>
189
-
190
- <mat-form-field>
191
- <mat-select [formControl]="_quarterControl" aria-label="quarter selection">
192
- <mat-option>None</mat-option>
193
- <mat-option *ngFor="let quarter of _yearControl.value | mtnaWfGetQuarters : rangeLimits" [value]="quarter">{{
194
- $any(quarter) | mtnaWfDateQuarter : 'short'
195
- }}</mat-option>
196
- </mat-select>
197
- <mat-error *ngFor="let error of control.errors | keyvalue">
198
- {{ error | mtnaWfGetControlError : item }}
199
- </mat-error>
200
- </mat-form-field>
201
- </div>
202
- `,
203
- styleUrls: [`form-control.scss`],
204
- styles: [
205
- `
206
- .mtna-wf-year-quarter-item .year-quarter-container > .mat-form-field {
207
- max-width: 75px;
208
- }
209
- .mtna-wf-year-quarter-item .year-quarter-container > .mat-form-field:first-of-type {
210
- margin-right: 8px;
211
- }
212
- `,
213
- ],
214
- encapsulation: ViewEncapsulation.None,
215
- changeDetection: ChangeDetectionStrategy.OnPush,
216
- }]
217
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
218
- type: Optional
219
- }, {
220
- type: Inject,
221
- args: [MTNA_WF_DEFAULT_YEAR_RANGE]
222
- }] }]; }, propDecorators: { yearQuarterItemClass: [{
223
- type: HostBinding,
224
- args: ['class.mtna-wf-year-quarter-item']
225
- }], rangeLimits: [{
226
- type: Input
227
- }] } });
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhci1xdWFydGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYi1mb3JtLWFuZ3VsYXIvc3JjL2xpYi9mb3JtLWl0ZW0tY29udHJvbHMveWVhci1xdWFydGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBR0wsUUFBUSxFQUNSLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7Ozs7OztBQUV6RSxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxJQUFJLGNBQWMsQ0FBeUIsNEJBQTRCLENBQUMsQ0FBQztBQXNEbkgsTUFBTSxPQUFPLDBCQUEyQixTQUFRLG1CQUF5QztJQVd2RixZQUE0RCxnQkFBeUM7UUFDbkcsS0FBSyxFQUFFLENBQUM7UUFYc0MseUJBQW9CLEdBQUcsSUFBSSxDQUFDO1FBRzVFLG9CQUFlLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNwQyxpQkFBWSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakMsbUJBQWMsR0FBRyxJQUFJLEtBQUssRUFBVSxDQUFDO1FBRTdCLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBMkZ6Qzs7Ozs7O1dBTUc7UUFDSyxzQkFBaUIsR0FBeUQsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFOztZQUNwRyxNQUFNLGdCQUFnQjtZQUNwQixvQ0FBb0M7WUFDcEMsSUFBSSxNQUFLLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsR0FBRyxDQUFDLElBQUksQ0FBQTtnQkFDbkMsNkJBQTZCO2dCQUM3QixTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO2dCQUN2QywyQ0FBMkM7Z0JBQzNDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7WUFFekMsTUFBTSxnQkFBZ0I7WUFDcEIsc0NBQXNDO1lBQ3RDLElBQUksTUFBSyxNQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLEtBQUssQ0FBQyxJQUFJLENBQUE7Z0JBQ3JDLDZCQUE2QjtnQkFDN0IsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztnQkFDekMsMkNBQTJDO2dCQUMzQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBRTNDLElBQUksZ0JBQWdCLElBQUksZ0JBQWdCLEVBQUU7Z0JBQ3hDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUMxRCxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3JCO1lBRUQsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUM7UUFwSEEsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixJQUFJLEVBQUUsY0FBYyxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDdkYsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQix5RUFBeUU7WUFDekUsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDO2lCQUNyRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDaEMsU0FBUyxDQUFDLEdBQUcsRUFBRTs7Z0JBQ2QsSUFBSSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsT0FBTywwQ0FBRSxLQUFLLENBQUEsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ25GLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsV0FBVyxFQUFFLENBQUM7b0JBQzVCLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsYUFBYSxFQUFFLENBQUM7aUJBQy9CO2dCQUNELElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ3RDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO29CQUN0RyxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO2lCQUMzQztZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUwsb0VBQW9FO1lBQ3BFLDhFQUE4RTtZQUU5RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0JBdUJJO1NBQ0w7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTs7UUFDTix5REFBeUQ7UUFDekQsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQSxNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLEtBQUssRUFBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXZGLG9DQUFvQztRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNyQixNQUFNLFFBQVEsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUc7Z0JBQ2pCLEtBQUssRUFBRTtvQkFDTCxJQUFJLEVBQUUsUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZO29CQUNuRCxPQUFPLEVBQUUsSUFBSTtpQkFDZDtnQkFDRCxHQUFHLEVBQUU7b0JBQ0gsSUFBSSxFQUFFLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYztvQkFDckQsT0FBTyxFQUFFLElBQUk7aUJBQ2Q7YUFDRixDQUFDO1NBQ0g7UUFFRCw4QkFBOEI7UUFDOUIsS0FBSyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6RixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM3QjtRQUVELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixNQUFBLElBQUksQ0FBQyxPQUFPLDBDQUFFLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7O3dIQWpHVSwwQkFBMEIsa0JBV0wsMEJBQTBCOzRHQVgvQywwQkFBMEIsME5BN0MzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOEJUOzRGQWVVLDBCQUEwQjtrQkEvQ3RDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4QlQ7b0JBQ0QsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ2hDLE1BQU0sRUFBRTt3QkFDTjs7Ozs7OztLQU9DO3FCQUNGO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQVljLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsMEJBQTBCOzRDQVZWLG9CQUFvQjtzQkFBbkUsV0FBVzt1QkFBQyxpQ0FBaUM7Z0JBQ3JDLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgSW5qZWN0LFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IGlzUHJlc2VudCB9IGZyb20gJ0BtdG5hL2NvcmUtdHMnO1xuaW1wb3J0IHsgRGF0ZVJhbmdlLCBZZWFyUXVhcnRlciwgWWVhclF1YXJ0ZXJSYW5nZUl0ZW0gfSBmcm9tICdAbXRuYS93ZWItZm9ybS10cyc7XG5cbmltcG9ydCB7IG1lcmdlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEJhc2VGb3JtSXRlbUNvbnRyb2wgfSBmcm9tICcuL2Jhc2UtZm9ybS1pdGVtLWNvbnRyb2wuZGlyZWN0aXZlJztcblxuZXhwb3J0IGNvbnN0IE1UTkFfV0ZfREVGQVVMVF9ZRUFSX1JBTkdFID0gbmV3IEluamVjdGlvblRva2VuPE10bmFXZkRlZmF1bHRZZWFyUmFuZ2U+KCdtdG5hLndmLmRlZmF1bHQueWVhci5yYW5nZScpO1xuXG5leHBvcnQgaW50ZXJmYWNlIE10bmFXZkRlZmF1bHRZZWFyUmFuZ2Uge1xuICBudW1QYXN0WWVhcnM6IG51bWJlcjtcbiAgbnVtRnV0dXJlWWVhcnM6IG51bWJlcjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXRuYS13Zi15ZWFyLXF1YXJ0ZXItaXRlbScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclwiPjwvbmctY29udGFpbmVyPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiY29udHJvbFwiXG4gICAgICBjbGFzcz1cInllYXItcXVhcnRlci1jb250YWluZXJcIlxuICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgZnhMYXlvdXRHYXA9XCI4cHhcIlxuICAgICAgW210bmFIaWdobGlnaHRdPVwiaW5kaWNhdG9yU3RhdHVzID09PSAnQUNUSVZFJyAmJiAhaGFzSXRlbUhlYWRlclwiXG4gICAgPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8bWF0LXNlbGVjdCBbZm9ybUNvbnRyb2xdPVwiX3llYXJDb250cm9sXCIgYXJpYS1sYWJlbD1cInllYXIgc2VsZWN0aW9uXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHllYXIgb2YgX3llYXJTZWxlY3Rpb25cIiBbdmFsdWVdPVwieWVhclwiPnt7IHllYXIgfX08L21hdC1vcHRpb24+XG4gICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgPG1hdC1lcnJvciAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgY29udHJvbC5lcnJvcnMgfCBrZXl2YWx1ZVwiPlxuICAgICAgICAgIHt7IGVycm9yIHwgbXRuYVdmR2V0Q29udHJvbEVycm9yIDogaXRlbSB9fVxuICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1zZWxlY3QgW2Zvcm1Db250cm9sXT1cIl9xdWFydGVyQ29udHJvbFwiIGFyaWEtbGFiZWw9XCJxdWFydGVyIHNlbGVjdGlvblwiPlxuICAgICAgICAgIDxtYXQtb3B0aW9uPk5vbmU8L21hdC1vcHRpb24+XG4gICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHF1YXJ0ZXIgb2YgX3llYXJDb250cm9sLnZhbHVlIHwgbXRuYVdmR2V0UXVhcnRlcnMgOiByYW5nZUxpbWl0c1wiIFt2YWx1ZV09XCJxdWFydGVyXCI+e3tcbiAgICAgICAgICAgICRhbnkocXVhcnRlcikgfCBtdG5hV2ZEYXRlUXVhcnRlciA6ICdzaG9ydCdcbiAgICAgICAgICB9fTwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgICA8bWF0LWVycm9yICpuZ0Zvcj1cImxldCBlcnJvciBvZiBjb250cm9sLmVycm9ycyB8IGtleXZhbHVlXCI+XG4gICAgICAgICAge3sgZXJyb3IgfCBtdG5hV2ZHZXRDb250cm9sRXJyb3IgOiBpdGVtIH19XG4gICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbYGZvcm0tY29udHJvbC5zY3NzYF0sXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIC5tdG5hLXdmLXllYXItcXVhcnRlci1pdGVtIC55ZWFyLXF1YXJ0ZXItY29udGFpbmVyID4gLm1hdC1mb3JtLWZpZWxkIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXB4O1xuICAgICAgfVxuICAgICAgLm10bmEtd2YteWVhci1xdWFydGVyLWl0ZW0gLnllYXItcXVhcnRlci1jb250YWluZXIgPiAubWF0LWZvcm0tZmllbGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgfVxuICAgIGAsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBNdG5hV2ZZZWFyUXVhcnRlckNvbXBvbmVudCBleHRlbmRzIEJhc2VGb3JtSXRlbUNvbnRyb2w8WWVhclF1YXJ0ZXJSYW5nZUl0ZW0+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm10bmEtd2YteWVhci1xdWFydGVyLWl0ZW0nKSB5ZWFyUXVhcnRlckl0ZW1DbGFzcyA9IHRydWU7XG4gIEBJbnB1dCgpIHJhbmdlTGltaXRzOiBEYXRlUmFuZ2U8WWVhclF1YXJ0ZXI+IHwgbnVsbCB8IHVuZGVmaW5lZDtcblxuICBfcXVhcnRlckNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcbiAgX3llYXJDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG4gIF95ZWFyU2VsZWN0aW9uID0gbmV3IEFycmF5PG51bWJlcj4oKTtcblxuICBwcml2YXRlIGRlc3Ryb3lPYnMgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIGRlZmF1bHRZZWFyUmFuZ2U6IE10bmFXZkRlZmF1bHRZZWFyUmFuZ2U7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChNVE5BX1dGX0RFRkFVTFRfWUVBUl9SQU5HRSkgZGVmYXVsdFllYXJSYW5nZT86IE10bmFXZkRlZmF1bHRZZWFyUmFuZ2UpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZGVmYXVsdFllYXJSYW5nZSA9IGRlZmF1bHRZZWFyUmFuZ2UgfHwgeyBudW1GdXR1cmVZZWFyczogMjUsIG51bVBhc3RZZWFyczogMjUgfTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAoIXRoaXMucmVhZG9ubHkpIHtcbiAgICAgIC8vIE9ic2VydmUgWWVhciAmIFF1YXJ0ZXIgdmFsdWUgY2hhbmdlcyAmJiBzZXQgdGhlbSBvbiB0aGUgaXRlbSdzIGNvbnRyb2xcbiAgICAgIG1lcmdlKHRoaXMuX3llYXJDb250cm9sLnZhbHVlQ2hhbmdlcywgdGhpcy5fcXVhcnRlckNvbnRyb2wudmFsdWVDaGFuZ2VzKVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95T2JzKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2w/LmRpcnR5ICYmICh0aGlzLl95ZWFyQ29udHJvbC5kaXJ0eSB8fCB0aGlzLl9xdWFydGVyQ29udHJvbC5kaXJ0eSkpIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbD8ubWFya0FzRGlydHkoKTtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbD8ubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoaXNQcmVzZW50KHRoaXMuX3llYXJDb250cm9sLnZhbHVlKSkge1xuICAgICAgICAgICAgY29uc3QgW3llYXIsIHF1YXJ0ZXJdID0gdGhpcy53aXRoaW5SYW5nZUxpbWl0cyhbdGhpcy5feWVhckNvbnRyb2wudmFsdWUsIHRoaXMuX3F1YXJ0ZXJDb250cm9sLnZhbHVlXSk7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2w/LnNldFZhbHVlKHsgeWVhciwgcXVhcnRlciB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAvLyBGSVhNRSBub3Qgc3VyZSB3ZSBuZWVkIHRoaXMgdW50aWwgd2Ugc3RhcnRpbmcgbWFraW5nIHRoaXMgY29udHJvbFxuICAgICAgLy8gcmVxdWlyZWQvdW5yZXF1aXJlZCBhdCB0aGUgcmlnaHQgdGltZS4gRXZlbiB0aGVuLCB0aGlzIGlzIHN1cGVyIGlubmVmaWNpZW50XG5cbiAgICAgIC8qXG4gICAgICAvLyBMaXN0ZW4gdG8gdGhpcyBjb250cm9sIGZvciBkaXNhYmxpbmcgbG9jYWwgY29udHJvbHNcbiAgICAgIHRoaXMuY29udHJvbC5zdGF0dXNDaGFuZ2VzXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLmNvbnRyb2wuc3RhdHVzKSxcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95T2JzKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoc3RhdHVzID0+IHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oJ3N0YXR1c0NoYW5nZXMnLCBzdGF0dXMsIHRoaXMuY29udHJvbCk7XG4gICAgICAgICAgLy8gaWYgdGhpcyBjb250cm9sIGlzIGVuYWJsZWQsIGVuYWJsZSBsb2NhbCBjb250cm9scyBpZiBkaXNhYmxlZFxuICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2wuZW5hYmxlZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3F1YXJ0ZXJDb250cm9sLmRpc2FibGVkIHx8IHRoaXMuX3llYXJDb250cm9sLmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUud2FybignW1llYXJRdWFydGVySXRlbV0gZW5hYmxlIHRoZSB0aGluZ3MnKTtcbiAgICAgICAgICAgICAgLy8gdGhpcy5fcXVhcnRlckNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgICAgICAgIC8vIHRoaXMuX3llYXJDb250cm9sLmVuYWJsZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gZWxzZSB0aGlzIGNvbnRyb2wgaXMgZGlzYWJsZWQsIHNvIGRpc2FibGUgbG9jYWwgY29udHJvbHMgaWYgZW5hYmxlZFxuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fcXVhcnRlckNvbnRyb2wuZW5hYmxlZCB8fCB0aGlzLl95ZWFyQ29udHJvbC5lbmFibGVkKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ1tZZWFyUXVhcnRlckl0ZW1dIGRpc2FibGUgdGhlIHRoaW5ncycpO1xuICAgICAgICAgICAgLy8gdGhpcy5feWVhckNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgICAgICAgLy8gdGhpcy5fcXVhcnRlckNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgICovXG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95T2JzLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3lPYnMuY29tcGxldGUoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vIFNldCBhbnkgaW5pdGlhbCB2YWx1ZSBvbnRvIHRoZSBZZWFyICYgUXVhcnRlciBjb250cm9sc1xuICAgIHRoaXMuX3llYXJDb250cm9sLnNldFZhbHVlKHRoaXMuY29udHJvbD8udmFsdWUgPyB0aGlzLmNvbnRyb2wudmFsdWUueWVhciA6IG51bGwpO1xuICAgIHRoaXMuX3F1YXJ0ZXJDb250cm9sLnNldFZhbHVlKHRoaXMuY29udHJvbD8udmFsdWUgPyB0aGlzLmNvbnRyb2wudmFsdWUucXVhcnRlciA6IG51bGwpO1xuXG4gICAgLy8gQ3JlYXRlIHJhbmdlIGxpbWl0cyBpZiBub25lIGV4aXN0XG4gICAgaWYgKCF0aGlzLnJhbmdlTGltaXRzKSB7XG4gICAgICBjb25zdCB0aGlzWWVhciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcbiAgICAgIHRoaXMucmFuZ2VMaW1pdHMgPSB7XG4gICAgICAgIHN0YXJ0OiB7XG4gICAgICAgICAgeWVhcjogdGhpc1llYXIgLSB0aGlzLmRlZmF1bHRZZWFyUmFuZ2UubnVtUGFzdFllYXJzLFxuICAgICAgICAgIHF1YXJ0ZXI6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICAgIGVuZDoge1xuICAgICAgICAgIHllYXI6IHRoaXNZZWFyICsgdGhpcy5kZWZhdWx0WWVhclJhbmdlLm51bUZ1dHVyZVllYXJzLFxuICAgICAgICAgIHF1YXJ0ZXI6IG51bGwsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIFBvcHVsYXRlIHRoZSB5ZWFyIHNlbGVjdGlvblxuICAgIGZvciAobGV0IGkgPSB0aGlzLnJhbmdlTGltaXRzLnN0YXJ0LnllYXIgfHwgMDsgaSA8PSAodGhpcy5yYW5nZUxpbWl0cy5lbmQueWVhciB8fCAwKTsgaSsrKSB7XG4gICAgICB0aGlzLl95ZWFyU2VsZWN0aW9uLnB1c2goaSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVhZG9ubHkpIHtcbiAgICAgIHRoaXMuY29udHJvbD8uZGlzYWJsZSgpO1xuICAgICAgdGhpcy5fcXVhcnRlckNvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgdGhpcy5feWVhckNvbnRyb2wuZGlzYWJsZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBxdWFydGVyIHZhbHVlIHRvIGBudWxsYCBpZiB0aGUgeWVhciAmIHF1YXJ0ZXIgaXMgb3V0IG9mIGJvdW5kcyBvZiB0aGUgcmFuZ2UgbGltaXRzLlxuICAgKiBPdGhlcndpc2UsIHJldHVybnMgb3JpZ2luYWwgdmFsdWVcbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIGBbbnVtYmVyLCBudW1iZXJdYCBUaGUgc2VsZWN0ZWQgW3llYXIsIHF1YXJ0ZXJdIHZhbHVlXG4gICAqIEByZXR1cm5zIGBbbnVtYmVyLCBudW1iZXJdYCBUaGUgb3JpZ2luYWwgW3llYXIsIHF1YXJ0ZXJdIHZhbHVlIE9SIFt5ZWFyLCBudWxsXVxuICAgKi9cbiAgcHJpdmF0ZSB3aXRoaW5SYW5nZUxpbWl0czogKHZhbHVlOiBbbnVtYmVyLCBudW1iZXJdKSA9PiBbbnVtYmVyLCBudW1iZXIgfCBudWxsXSA9IChbeWVhciwgcXVhcnRlcl0pID0+IHtcbiAgICBjb25zdCBiZXlvbmRVcHBlckxpbWl0ID1cbiAgICAgIC8vIHllYXIgbWF0Y2hlcyBlbmQgeWVhciByYW5nZSBsaW1pdFxuICAgICAgeWVhciA9PT0gdGhpcy5yYW5nZUxpbWl0cz8uZW5kLnllYXIgJiZcbiAgICAgIC8vIHF1YXJ0ZXIgbGltaXQgd2FzIHByb3ZpZGVkXG4gICAgICBpc1ByZXNlbnQodGhpcy5yYW5nZUxpbWl0cy5lbmQucXVhcnRlcikgJiZcbiAgICAgIC8vIHNlbGVjdGVkIHF1YXJ0ZXIgaXMgYmV5b25kIHF1YXJ0ZXIgbGltaXRcbiAgICAgIHF1YXJ0ZXIgPiB0aGlzLnJhbmdlTGltaXRzLmVuZC5xdWFydGVyO1xuXG4gICAgY29uc3QgYmV5b25kTG93ZXJMaW1pdCA9XG4gICAgICAvLyB5ZWFyIG1hdGNoZXMgc3RhcnQgeWVhciByYW5nZSBsaW1pdFxuICAgICAgeWVhciA9PT0gdGhpcy5yYW5nZUxpbWl0cz8uc3RhcnQueWVhciAmJlxuICAgICAgLy8gcXVhcnRlciBsaW1pdCB3YXMgcHJvdmlkZWRcbiAgICAgIGlzUHJlc2VudCh0aGlzLnJhbmdlTGltaXRzLnN0YXJ0LnF1YXJ0ZXIpICYmXG4gICAgICAvLyBzZWxlY3RlZCBxdWFydGVyIGlzIGJleW9uZCBxdWFydGVyIGxpbWl0XG4gICAgICBxdWFydGVyIDwgdGhpcy5yYW5nZUxpbWl0cy5zdGFydC5xdWFydGVyO1xuXG4gICAgaWYgKGJleW9uZExvd2VyTGltaXQgfHwgYmV5b25kVXBwZXJMaW1pdCkge1xuICAgICAgdGhpcy5fcXVhcnRlckNvbnRyb2wuc2V0VmFsdWUobnVsbCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgcmV0dXJuIFt5ZWFyLCBudWxsXTtcbiAgICB9XG5cbiAgICByZXR1cm4gW3llYXIsIHF1YXJ0ZXJdO1xuICB9O1xufVxuIl19
@@ -1,95 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
2
- import { mixinColor } from '@angular/material/core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./form-step.component";
5
- import * as i2 from "@angular/material/divider";
6
- import * as i3 from "@angular/material/button";
7
- import * as i4 from "@angular/material/icon";
8
- import * as i5 from "@angular/common";
9
- import * as i6 from "@angular/material/tooltip";
10
- /* eslint-disable @angular-eslint/no-inputs-metadata-property */
11
- const _FormStepMixinBase = mixinColor(class {
12
- constructor(_elementRef) {
13
- this._elementRef = _elementRef;
14
- }
15
- }, 'primary');
16
- export class MtnaWfFormStepGroupComponent extends _FormStepMixinBase {
17
- constructor(elementRef) {
18
- super(elementRef);
19
- /** Whether all but the first step is hidden*/
20
- this.collapsed = false;
21
- this._steps = [];
22
- this.selected = new EventEmitter();
23
- }
24
- /** Steps to be displayed */
25
- get steps() {
26
- return this._steps;
27
- }
28
- set steps(steps) {
29
- this._steps = steps;
30
- }
31
- }
32
- MtnaWfFormStepGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfFormStepGroupComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
33
- MtnaWfFormStepGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfFormStepGroupComponent, selector: "mtna-wf-step-group", inputs: { color: "color", collapsed: "collapsed", incompleteIcon: "incompleteIcon", steps: "steps" }, outputs: { selected: "selected" }, usesInheritance: true, ngImport: i0, template: `
34
- <ng-container *ngFor="let step of steps | slice : 0 : (collapsed ? 1 : steps.length); let last = last">
35
- <mtna-wf-step
36
- [clickable]="step.status !== 'DISABLED'"
37
- [color]="color"
38
- [incompleteIcon]="incompleteIcon"
39
- [step]="step"
40
- (click)="selected.emit(step)"
41
- ></mtna-wf-step>
42
- <mat-divider *ngIf="!last" [vertical]="true"></mat-divider>
43
- <p *ngIf="collapsed" class="show-more mat-caption">and {{ steps.length - 1 }} more...</p>
44
- </ng-container>
45
- <button
46
- mat-icon-button
47
- class="collapse-button"
48
- [color]="color"
49
- (click)="collapsed = !collapsed"
50
- [matTooltip]="collapsed ? 'View All' : 'Hide'"
51
- >
52
- <mat-icon>{{ collapsed ? 'expand_more' : 'expand_less' }}</mat-icon>
53
- </button>
54
- `, isInline: true, styles: ["mtna-wf-step-group{border-style:solid;border-radius:4px;border-width:1px;display:block;margin:4px 4px 16px 8px;padding-bottom:16px;position:relative}mtna-wf-step-group .collapse-button{bottom:-19px;left:calc(50% - 20px);position:absolute;z-index:10}mtna-wf-step-group .collapse-button:after{bottom:8px;content:\"\";height:12px;left:calc(50% - 16px);position:absolute;width:32px;z-index:-1}mtna-wf-step-group mtna-wf-step li{padding-left:8px}mtna-wf-step-group mat-divider.mat-divider{margin-left:20px}mtna-wf-step-group .show-more{margin:0;text-align:center}\n"], components: [{ type: i1.MtnaWfFormStepComponent, selector: "mtna-wf-step", inputs: ["color", "step", "clickable", "incompleteIcon"] }, { type: i2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i3.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"] }, { type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], pipes: { "slice": i5.SlicePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfFormStepGroupComponent, decorators: [{
56
- type: Component,
57
- args: [{
58
- selector: 'mtna-wf-step-group',
59
- template: `
60
- <ng-container *ngFor="let step of steps | slice : 0 : (collapsed ? 1 : steps.length); let last = last">
61
- <mtna-wf-step
62
- [clickable]="step.status !== 'DISABLED'"
63
- [color]="color"
64
- [incompleteIcon]="incompleteIcon"
65
- [step]="step"
66
- (click)="selected.emit(step)"
67
- ></mtna-wf-step>
68
- <mat-divider *ngIf="!last" [vertical]="true"></mat-divider>
69
- <p *ngIf="collapsed" class="show-more mat-caption">and {{ steps.length - 1 }} more...</p>
70
- </ng-container>
71
- <button
72
- mat-icon-button
73
- class="collapse-button"
74
- [color]="color"
75
- (click)="collapsed = !collapsed"
76
- [matTooltip]="collapsed ? 'View All' : 'Hide'"
77
- >
78
- <mat-icon>{{ collapsed ? 'expand_more' : 'expand_less' }}</mat-icon>
79
- </button>
80
- `,
81
- styleUrls: ['form-step-group.component.scss'],
82
- inputs: ['color'],
83
- changeDetection: ChangeDetectionStrategy.OnPush,
84
- encapsulation: ViewEncapsulation.None,
85
- }]
86
- }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { collapsed: [{
87
- type: Input
88
- }], incompleteIcon: [{
89
- type: Input
90
- }], steps: [{
91
- type: Input
92
- }], selected: [{
93
- type: Output
94
- }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zdGVwLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYi1mb3JtLWFuZ3VsYXIvc3JjL2xpYi9mb3JtLXN0ZXBwZXIvZm9ybS1zdGVwLWdyb3VwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9ILE9BQU8sRUFBWSxVQUFVLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7QUFJOUQsZ0VBQWdFO0FBQ2hFLE1BQU0sa0JBQWtCLEdBQUcsVUFBVSxDQUNuQztJQUNFLFlBQW1CLFdBQXVCO1FBQXZCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO0lBQUcsQ0FBQztDQUMvQyxFQUNELFNBQVMsQ0FDVixDQUFDO0FBK0JGLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxrQkFBa0I7SUFnQmxFLFlBQVksVUFBc0I7UUFDaEMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBaEJwQiw4Q0FBOEM7UUFDckMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQVVuQixXQUFNLEdBQWUsRUFBRSxDQUFDO1FBRXRCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO0lBSWxELENBQUM7SUFkRCw0QkFBNEI7SUFDNUIsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFpQjtRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDOzswSEFYVSw0QkFBNEI7OEdBQTVCLDRCQUE0QiwwTkEzQjdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQlQ7NEZBTVUsNEJBQTRCO2tCQTdCeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCVDtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztvQkFDN0MsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNqQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDO2lHQUdVLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFHRixLQUFLO3NCQURSLEtBQUs7Z0JBU0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkNvbG9yLCBtaXhpbkNvbG9yIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbmltcG9ydCB7IEZvcm1TdGVwIH0gZnJvbSAnLi9tb2RlbHMvaW5kZXgnO1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5ICovXG5jb25zdCBfRm9ybVN0ZXBNaXhpbkJhc2UgPSBtaXhpbkNvbG9yKFxuICBjbGFzcyB7XG4gICAgY29uc3RydWN0b3IocHVibGljIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuICB9LFxuICAncHJpbWFyeSdcbik7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ210bmEtd2Ytc3RlcC1ncm91cCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3RlcCBvZiBzdGVwcyB8IHNsaWNlIDogMCA6IChjb2xsYXBzZWQgPyAxIDogc3RlcHMubGVuZ3RoKTsgbGV0IGxhc3QgPSBsYXN0XCI+XG4gICAgICA8bXRuYS13Zi1zdGVwXG4gICAgICAgIFtjbGlja2FibGVdPVwic3RlcC5zdGF0dXMgIT09ICdESVNBQkxFRCdcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbaW5jb21wbGV0ZUljb25dPVwiaW5jb21wbGV0ZUljb25cIlxuICAgICAgICBbc3RlcF09XCJzdGVwXCJcbiAgICAgICAgKGNsaWNrKT1cInNlbGVjdGVkLmVtaXQoc3RlcClcIlxuICAgICAgPjwvbXRuYS13Zi1zdGVwPlxuICAgICAgPG1hdC1kaXZpZGVyICpuZ0lmPVwiIWxhc3RcIiBbdmVydGljYWxdPVwidHJ1ZVwiPjwvbWF0LWRpdmlkZXI+XG4gICAgICA8cCAqbmdJZj1cImNvbGxhcHNlZFwiIGNsYXNzPVwic2hvdy1tb3JlIG1hdC1jYXB0aW9uXCI+YW5kIHt7IHN0ZXBzLmxlbmd0aCAtIDEgfX0gbW9yZS4uLjwvcD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8YnV0dG9uXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIGNsYXNzPVwiY29sbGFwc2UtYnV0dG9uXCJcbiAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAoY2xpY2spPVwiY29sbGFwc2VkID0gIWNvbGxhcHNlZFwiXG4gICAgICBbbWF0VG9vbHRpcF09XCJjb2xsYXBzZWQgPyAnVmlldyBBbGwnIDogJ0hpZGUnXCJcbiAgICA+XG4gICAgICA8bWF0LWljb24+e3sgY29sbGFwc2VkID8gJ2V4cGFuZF9tb3JlJyA6ICdleHBhbmRfbGVzcycgfX08L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICBgLFxuICBzdHlsZVVybHM6IFsnZm9ybS1zdGVwLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogWydjb2xvciddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgTXRuYVdmRm9ybVN0ZXBHcm91cENvbXBvbmVudCBleHRlbmRzIF9Gb3JtU3RlcE1peGluQmFzZSBpbXBsZW1lbnRzIENhbkNvbG9yIHtcbiAgLyoqIFdoZXRoZXIgYWxsIGJ1dCB0aGUgZmlyc3Qgc3RlcCBpcyBoaWRkZW4qL1xuICBASW5wdXQoKSBjb2xsYXBzZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaW5jb21wbGV0ZUljb246IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIC8qKiBTdGVwcyB0byBiZSBkaXNwbGF5ZWQgKi9cbiAgQElucHV0KClcbiAgZ2V0IHN0ZXBzKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGVwcztcbiAgfVxuICBzZXQgc3RlcHMoc3RlcHM6IEZvcm1TdGVwW10pIHtcbiAgICB0aGlzLl9zdGVwcyA9IHN0ZXBzO1xuICB9XG4gIHByaXZhdGUgX3N0ZXBzOiBGb3JtU3RlcFtdID0gW107XG5cbiAgQE91dHB1dCgpIHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtU3RlcD4oKTtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZik7XG4gIH1cbn1cbiJdfQ==