@lowcodeunit/applications-flow-common 1.33.151-angular-13 → 1.33.152-social-ish-angular-13-test

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 (262) hide show
  1. package/bundles/lowcodeunit-applications-flow-common.umd.js +6923 -0
  2. package/bundles/lowcodeunit-applications-flow-common.umd.js.map +1 -0
  3. package/bundles/lowcodeunit-applications-flow-common.umd.min.js +16 -0
  4. package/bundles/lowcodeunit-applications-flow-common.umd.min.js.map +1 -0
  5. package/esm2015/lcu.api.js +27 -0
  6. package/esm2015/lib/applications-flow.module.js +218 -0
  7. package/esm2015/lib/controls/build-pipeline-form/build-pipeline-form.component.js +213 -0
  8. package/esm2015/lib/controls/devops-source-control-form/devops-source-control-form.component.js +412 -0
  9. package/esm2015/lib/controls/edit-application-form/edit-application-form.component.js +60 -0
  10. package/esm2015/lib/controls/processor-details-form/processor-details-form.component.js +330 -0
  11. package/esm2015/lib/controls/security-toggle/security-toggle.component.js +51 -0
  12. package/esm2015/lib/controls/source-control-form/source-control-form.component.js +61 -0
  13. package/esm2015/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.js +25 -0
  14. package/esm2015/lib/dialogs/custom-domain-dialog/custom-domain-dialog.component.js +31 -0
  15. package/esm2015/lib/dialogs/edit-application-dialog/edit-application-dialog.component.js +29 -0
  16. package/esm2015/lib/dialogs/source-control-dialog/source-control-dialog.component.js +25 -0
  17. package/esm2015/lib/elements/analytics-card/analytics-card.component.js +21 -0
  18. package/esm2015/lib/elements/base-form/base-form.component.js +61 -0
  19. package/esm2015/lib/elements/breadcrumb/breadcrumb.component.js +115 -0
  20. package/esm2015/lib/elements/card-carousel/card-carousel.component.js +67 -0
  21. package/esm2015/lib/elements/dynamic-tabs/dynamic-tabs.component.js +69 -0
  22. package/esm2015/lib/elements/feed-card-sm/feed-card-sm.component.js +31 -0
  23. package/esm2015/lib/elements/form-card/form-card.component.js +22 -0
  24. package/esm2015/lib/elements/gh-control/gh-control.component.js +72 -0
  25. package/esm2015/lib/elements/main-feed-card/main-feed-card.component.js +24 -0
  26. package/esm2015/lib/elements/project-info-card/project-info-card.component.js +39 -0
  27. package/esm2015/lib/elements/projects/controls/builds/builds.component.js +26 -0
  28. package/esm2015/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.js +145 -0
  29. package/esm2015/lib/elements/projects/controls/forms/source-control/source-control.component.js +262 -0
  30. package/esm2015/lib/elements/projects/controls/git-auth/git-auth.component.js +25 -0
  31. package/esm2015/lib/elements/projects/controls/header/header.component.js +75 -0
  32. package/esm2015/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.js +102 -0
  33. package/esm2015/lib/elements/projects/controls/project-items/project-items.component.js +49 -0
  34. package/esm2015/lib/elements/projects/controls/project-tabs/project-tabs.component.js +91 -0
  35. package/esm2015/lib/elements/projects/controls/recent-activities/recent-activities.component.js +15 -0
  36. package/esm2015/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.js +590 -0
  37. package/esm2015/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.js +62 -0
  38. package/esm2015/lib/elements/projects/controls/tabs/devops/devops.component.js +202 -0
  39. package/esm2015/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.js +178 -0
  40. package/esm2015/lib/elements/projects/controls/tabs/domains/domains.component.js +133 -0
  41. package/esm2015/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.js +86 -0
  42. package/esm2015/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.js +129 -0
  43. package/esm2015/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.js +113 -0
  44. package/esm2015/lib/elements/projects/controls/tabs/general/general.component.js +46 -0
  45. package/esm2015/lib/elements/projects/projects.component.js +99 -0
  46. package/esm2015/lib/elements/slotted-card/slotted-card.component.js +30 -0
  47. package/esm2015/lib/elements/three-column/three-column.component.js +32 -0
  48. package/esm2015/lib/elements/two-column-header/two-column-header.component.js +15 -0
  49. package/esm2015/lib/models/actions.model.js +3 -0
  50. package/esm2015/lib/models/base-form-config.model.js +6 -0
  51. package/esm2015/lib/models/card-form-config.model.js +6 -0
  52. package/esm2015/lib/models/dev-settings-preset.model.js +3 -0
  53. package/esm2015/lib/models/domain.model.js +3 -0
  54. package/esm2015/lib/models/dynamic-tabs.model.js +6 -0
  55. package/esm2015/lib/models/form-actions.model.js +3 -0
  56. package/esm2015/lib/models/form.model.js +6 -0
  57. package/esm2015/lib/models/form.values.model.js +11 -0
  58. package/esm2015/lib/models/project-actions.model.js +6 -0
  59. package/esm2015/lib/services/applications-flow.service.js +146 -0
  60. package/esm2015/lib/services/eac.service.js +218 -0
  61. package/esm2015/lib/services/forms.service.js +131 -0
  62. package/esm2015/lib/services/npm.service.js +79 -0
  63. package/esm2015/lib/services/project.service.js +318 -0
  64. package/esm2015/lib/state/applications-flow-state.context.js +37 -0
  65. package/esm2015/lib/state/applications-flow.state.js +72 -0
  66. package/esm2015/lowcodeunit-applications-flow-common.js +39 -0
  67. package/fesm2015/lowcodeunit-applications-flow-common.js +5338 -0
  68. package/fesm2015/lowcodeunit-applications-flow-common.js.map +1 -0
  69. package/lcu.api.d.ts +2 -39
  70. package/lcu.api.d.ts.map +1 -0
  71. package/lib/applications-flow.module.d.ts +1 -53
  72. package/lib/applications-flow.module.d.ts.map +1 -0
  73. package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts +1 -3
  74. package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts.map +1 -0
  75. package/lib/controls/devops-source-control-form/devops-source-control-form.component.d.ts +1 -3
  76. package/lib/controls/devops-source-control-form/devops-source-control-form.component.d.ts.map +1 -0
  77. package/lib/controls/edit-application-form/edit-application-form.component.d.ts +1 -3
  78. package/lib/controls/edit-application-form/edit-application-form.component.d.ts.map +1 -0
  79. package/lib/controls/processor-details-form/processor-details-form.component.d.ts +4 -5
  80. package/lib/controls/processor-details-form/processor-details-form.component.d.ts.map +1 -0
  81. package/lib/controls/security-toggle/security-toggle.component.d.ts +2 -3
  82. package/lib/controls/security-toggle/security-toggle.component.d.ts.map +1 -0
  83. package/lib/controls/source-control-form/source-control-form.component.d.ts +1 -3
  84. package/lib/controls/source-control-form/source-control-form.component.d.ts.map +1 -0
  85. package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts +1 -3
  86. package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts.map +1 -0
  87. package/lib/dialogs/custom-domain-dialog/custom-domain-dialog.component.d.ts +1 -3
  88. package/lib/dialogs/custom-domain-dialog/custom-domain-dialog.component.d.ts.map +1 -0
  89. package/lib/dialogs/edit-application-dialog/edit-application-dialog.component.d.ts +1 -3
  90. package/lib/dialogs/edit-application-dialog/edit-application-dialog.component.d.ts.map +1 -0
  91. package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts +1 -3
  92. package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts.map +1 -0
  93. package/lib/elements/analytics-card/analytics-card.component.d.ts +1 -3
  94. package/lib/elements/analytics-card/analytics-card.component.d.ts.map +1 -0
  95. package/lib/elements/base-form/base-form.component.d.ts +1 -3
  96. package/lib/elements/base-form/base-form.component.d.ts.map +1 -0
  97. package/lib/elements/breadcrumb/breadcrumb.component.d.ts +1 -3
  98. package/lib/elements/breadcrumb/breadcrumb.component.d.ts.map +1 -0
  99. package/lib/elements/card-carousel/card-carousel.component.d.ts +1 -3
  100. package/lib/elements/card-carousel/card-carousel.component.d.ts.map +1 -0
  101. package/lib/elements/dynamic-tabs/dynamic-tabs.component.d.ts +1 -3
  102. package/lib/elements/dynamic-tabs/dynamic-tabs.component.d.ts.map +1 -0
  103. package/lib/elements/feed-card-sm/feed-card-sm.component.d.ts +1 -3
  104. package/lib/elements/feed-card-sm/feed-card-sm.component.d.ts.map +1 -0
  105. package/lib/elements/form-card/form-card.component.d.ts +1 -3
  106. package/lib/elements/form-card/form-card.component.d.ts.map +1 -0
  107. package/lib/elements/gh-control/gh-control.component.d.ts +1 -3
  108. package/lib/elements/gh-control/gh-control.component.d.ts.map +1 -0
  109. package/lib/elements/main-feed-card/main-feed-card.component.d.ts +1 -3
  110. package/lib/elements/main-feed-card/main-feed-card.component.d.ts.map +1 -0
  111. package/lib/elements/project-info-card/project-info-card.component.d.ts +2 -3
  112. package/lib/elements/project-info-card/project-info-card.component.d.ts.map +1 -0
  113. package/lib/elements/projects/controls/builds/builds.component.d.ts +1 -3
  114. package/lib/elements/projects/controls/builds/builds.component.d.ts.map +1 -0
  115. package/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.d.ts +1 -3
  116. package/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.d.ts.map +1 -0
  117. package/lib/elements/projects/controls/forms/source-control/source-control.component.d.ts +1 -3
  118. package/lib/elements/projects/controls/forms/source-control/source-control.component.d.ts.map +1 -0
  119. package/lib/elements/projects/controls/git-auth/git-auth.component.d.ts +1 -3
  120. package/lib/elements/projects/controls/git-auth/git-auth.component.d.ts.map +1 -0
  121. package/lib/elements/projects/controls/header/header.component.d.ts +1 -3
  122. package/lib/elements/projects/controls/header/header.component.d.ts.map +1 -0
  123. package/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.d.ts +1 -3
  124. package/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.d.ts.map +1 -0
  125. package/lib/elements/projects/controls/project-items/project-items.component.d.ts +1 -3
  126. package/lib/elements/projects/controls/project-items/project-items.component.d.ts.map +1 -0
  127. package/lib/elements/projects/controls/project-tabs/project-tabs.component.d.ts +1 -3
  128. package/lib/elements/projects/controls/project-tabs/project-tabs.component.d.ts.map +1 -0
  129. package/lib/elements/projects/controls/recent-activities/recent-activities.component.d.ts +1 -3
  130. package/lib/elements/projects/controls/recent-activities/recent-activities.component.d.ts.map +1 -0
  131. package/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.d.ts +1 -3
  132. package/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.d.ts.map +1 -0
  133. package/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.d.ts +1 -3
  134. package/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.d.ts.map +1 -0
  135. package/lib/elements/projects/controls/tabs/devops/devops.component.d.ts +1 -3
  136. package/lib/elements/projects/controls/tabs/devops/devops.component.d.ts.map +1 -0
  137. package/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.d.ts +1 -3
  138. package/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.d.ts.map +1 -0
  139. package/lib/elements/projects/controls/tabs/domains/domains.component.d.ts +1 -3
  140. package/lib/elements/projects/controls/tabs/domains/domains.component.d.ts.map +1 -0
  141. package/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.d.ts +1 -3
  142. package/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.d.ts.map +1 -0
  143. package/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.d.ts +1 -3
  144. package/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.d.ts.map +1 -0
  145. package/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.d.ts +1 -3
  146. package/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.d.ts.map +1 -0
  147. package/lib/elements/projects/controls/tabs/general/general.component.d.ts +1 -3
  148. package/lib/elements/projects/controls/tabs/general/general.component.d.ts.map +1 -0
  149. package/lib/elements/projects/projects.component.d.ts +1 -3
  150. package/lib/elements/projects/projects.component.d.ts.map +1 -0
  151. package/lib/elements/slotted-card/slotted-card.component.d.ts +2 -3
  152. package/lib/elements/slotted-card/slotted-card.component.d.ts.map +1 -0
  153. package/lib/elements/three-column/three-column.component.d.ts +1 -3
  154. package/lib/elements/three-column/three-column.component.d.ts.map +1 -0
  155. package/lib/elements/two-column-header/two-column-header.component.d.ts +1 -3
  156. package/lib/elements/two-column-header/two-column-header.component.d.ts.map +1 -0
  157. package/lib/models/actions.model.d.ts +1 -0
  158. package/lib/models/actions.model.d.ts.map +1 -0
  159. package/lib/models/base-form-config.model.d.ts +1 -0
  160. package/lib/models/base-form-config.model.d.ts.map +1 -0
  161. package/lib/models/card-form-config.model.d.ts +1 -0
  162. package/lib/models/card-form-config.model.d.ts.map +1 -0
  163. package/lib/models/dev-settings-preset.model.d.ts +1 -0
  164. package/lib/models/dev-settings-preset.model.d.ts.map +1 -0
  165. package/lib/models/domain.model.d.ts +1 -0
  166. package/lib/models/domain.model.d.ts.map +1 -0
  167. package/lib/models/dynamic-tabs.model.d.ts +1 -0
  168. package/lib/models/dynamic-tabs.model.d.ts.map +1 -0
  169. package/lib/models/form-actions.model.d.ts +1 -0
  170. package/lib/models/form-actions.model.d.ts.map +1 -0
  171. package/lib/models/form.model.d.ts +1 -0
  172. package/lib/models/form.model.d.ts.map +1 -0
  173. package/lib/models/form.values.model.d.ts +1 -0
  174. package/lib/models/form.values.model.d.ts.map +1 -0
  175. package/lib/models/project-actions.model.d.ts +1 -0
  176. package/lib/models/project-actions.model.d.ts.map +1 -0
  177. package/lib/services/applications-flow.service.d.ts +1 -3
  178. package/lib/services/applications-flow.service.d.ts.map +1 -0
  179. package/lib/services/eac.service.d.ts +1 -3
  180. package/lib/services/eac.service.d.ts.map +1 -0
  181. package/lib/services/forms.service.d.ts +1 -3
  182. package/lib/services/forms.service.d.ts.map +1 -0
  183. package/lib/services/npm.service.d.ts +1 -3
  184. package/lib/services/npm.service.d.ts.map +1 -0
  185. package/lib/services/project.service.d.ts +1 -3
  186. package/lib/services/project.service.d.ts.map +1 -0
  187. package/lib/state/applications-flow-state.context.d.ts +1 -3
  188. package/lib/state/applications-flow-state.context.d.ts.map +1 -0
  189. package/lib/state/applications-flow.state.d.ts +1 -0
  190. package/lib/state/applications-flow.state.d.ts.map +1 -0
  191. package/lowcodeunit-applications-flow-common.d.ts +35 -1
  192. package/lowcodeunit-applications-flow-common.d.ts.map +1 -0
  193. package/lowcodeunit-applications-flow-common.metadata.json +1 -0
  194. package/package.json +12 -20
  195. package/esm2020/lcu.api.mjs +0 -65
  196. package/esm2020/lib/applications-flow.module.mjs +0 -328
  197. package/esm2020/lib/controls/build-pipeline-form/build-pipeline-form.component.mjs +0 -245
  198. package/esm2020/lib/controls/devops-source-control-form/devops-source-control-form.component.mjs +0 -446
  199. package/esm2020/lib/controls/edit-application-form/edit-application-form.component.mjs +0 -67
  200. package/esm2020/lib/controls/processor-details-form/processor-details-form.component.mjs +0 -308
  201. package/esm2020/lib/controls/security-toggle/security-toggle.component.mjs +0 -54
  202. package/esm2020/lib/controls/source-control-form/source-control-form.component.mjs +0 -69
  203. package/esm2020/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.mjs +0 -29
  204. package/esm2020/lib/dialogs/custom-domain-dialog/custom-domain-dialog.component.mjs +0 -35
  205. package/esm2020/lib/dialogs/edit-application-dialog/edit-application-dialog.component.mjs +0 -33
  206. package/esm2020/lib/dialogs/source-control-dialog/source-control-dialog.component.mjs +0 -29
  207. package/esm2020/lib/elements/analytics-card/analytics-card.component.mjs +0 -28
  208. package/esm2020/lib/elements/base-form/base-form.component.mjs +0 -57
  209. package/esm2020/lib/elements/breadcrumb/breadcrumb.component.mjs +0 -117
  210. package/esm2020/lib/elements/card-carousel/card-carousel.component.mjs +0 -70
  211. package/esm2020/lib/elements/dynamic-tabs/dynamic-tabs.component.mjs +0 -74
  212. package/esm2020/lib/elements/feed-card-sm/feed-card-sm.component.mjs +0 -40
  213. package/esm2020/lib/elements/flow-tool/flow-tool.component.mjs +0 -75
  214. package/esm2020/lib/elements/form-card/form-card.component.mjs +0 -33
  215. package/esm2020/lib/elements/gh-control/gh-control.component.mjs +0 -78
  216. package/esm2020/lib/elements/main-feed-card/main-feed-card.component.mjs +0 -34
  217. package/esm2020/lib/elements/project-info-card/project-info-card.component.mjs +0 -54
  218. package/esm2020/lib/elements/projects/controls/builds/builds.component.mjs +0 -32
  219. package/esm2020/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.mjs +0 -145
  220. package/esm2020/lib/elements/projects/controls/forms/source-control/source-control.component.mjs +0 -285
  221. package/esm2020/lib/elements/projects/controls/git-auth/git-auth.component.mjs +0 -26
  222. package/esm2020/lib/elements/projects/controls/header/header.component.mjs +0 -83
  223. package/esm2020/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.mjs +0 -118
  224. package/esm2020/lib/elements/projects/controls/project-items/project-items.component.mjs +0 -54
  225. package/esm2020/lib/elements/projects/controls/project-tabs/project-tabs.component.mjs +0 -103
  226. package/esm2020/lib/elements/projects/controls/recent-activities/recent-activities.component.mjs +0 -14
  227. package/esm2020/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.mjs +0 -561
  228. package/esm2020/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.mjs +0 -72
  229. package/esm2020/lib/elements/projects/controls/tabs/devops/devops.component.mjs +0 -242
  230. package/esm2020/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.mjs +0 -179
  231. package/esm2020/lib/elements/projects/controls/tabs/domains/domains.component.mjs +0 -139
  232. package/esm2020/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.mjs +0 -90
  233. package/esm2020/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.mjs +0 -142
  234. package/esm2020/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.mjs +0 -124
  235. package/esm2020/lib/elements/projects/controls/tabs/general/general.component.mjs +0 -40
  236. package/esm2020/lib/elements/projects/projects.component.mjs +0 -98
  237. package/esm2020/lib/elements/slotted-card/slotted-card.component.mjs +0 -45
  238. package/esm2020/lib/elements/three-column/three-column.component.mjs +0 -30
  239. package/esm2020/lib/elements/two-column-header/two-column-header.component.mjs +0 -15
  240. package/esm2020/lib/models/actions.model.mjs +0 -3
  241. package/esm2020/lib/models/base-form-config.model.mjs +0 -6
  242. package/esm2020/lib/models/card-form-config.model.mjs +0 -6
  243. package/esm2020/lib/models/dev-settings-preset.model.mjs +0 -3
  244. package/esm2020/lib/models/domain.model.mjs +0 -3
  245. package/esm2020/lib/models/dynamic-tabs.model.mjs +0 -6
  246. package/esm2020/lib/models/form-actions.model.mjs +0 -3
  247. package/esm2020/lib/models/form.model.mjs +0 -6
  248. package/esm2020/lib/models/form.values.model.mjs +0 -11
  249. package/esm2020/lib/models/project-actions.model.mjs +0 -6
  250. package/esm2020/lib/services/applications-flow.service.mjs +0 -140
  251. package/esm2020/lib/services/eac.service.mjs +0 -173
  252. package/esm2020/lib/services/forms.service.mjs +0 -132
  253. package/esm2020/lib/services/npm.service.mjs +0 -77
  254. package/esm2020/lib/services/project.service.mjs +0 -303
  255. package/esm2020/lib/state/applications-flow-state.context.mjs +0 -36
  256. package/esm2020/lib/state/applications-flow.state.mjs +0 -72
  257. package/esm2020/lowcodeunit-applications-flow-common.mjs +0 -5
  258. package/fesm2015/lowcodeunit-applications-flow-common.mjs +0 -5544
  259. package/fesm2015/lowcodeunit-applications-flow-common.mjs.map +0 -1
  260. package/fesm2020/lowcodeunit-applications-flow-common.mjs +0 -5424
  261. package/fesm2020/lowcodeunit-applications-flow-common.mjs.map +0 -1
  262. package/lib/elements/flow-tool/flow-tool.component.d.ts +0 -28
@@ -0,0 +1,146 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { Injectable } from '@angular/core';
3
+ import { LCUServiceSettings } from '@lcu/common';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ import * as i2 from "@lcu/common";
7
+ export class ApplicationsFlowService {
8
+ // Properties
9
+ // Constructors
10
+ constructor(http, settings) {
11
+ this.http = http;
12
+ this.settings = settings;
13
+ this.apiRoot = settings.APIRoot;
14
+ }
15
+ // API Methods
16
+ ConfigureDevOpsAction(actionLookup) {
17
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/devops/actions/${actionLookup}/configure`, {}, {
18
+ headers: this.loadHeaders(),
19
+ });
20
+ }
21
+ CreateRepository(organization, repoName) {
22
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/github/organizations/${organization}/repositories`, {
23
+ Name: repoName,
24
+ }, {
25
+ headers: this.loadHeaders(),
26
+ });
27
+ }
28
+ DeleteApplication(appLookup) {
29
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/applications/${appLookup}`, {
30
+ headers: this.loadHeaders(),
31
+ });
32
+ }
33
+ DeleteDevOpsAction(doaLookup) {
34
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/devops-actions/${doaLookup}`, {
35
+ headers: this.loadHeaders(),
36
+ });
37
+ }
38
+ DeleteProject(projectLookup) {
39
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/projects/${projectLookup}`, {
40
+ headers: this.loadHeaders(),
41
+ });
42
+ }
43
+ DeleteSourceControl(scLookup) {
44
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/source-controls/${scLookup}`, {
45
+ headers: this.loadHeaders(),
46
+ });
47
+ }
48
+ EnsureUserEnterprise() {
49
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/enterprise/ensure`, {}, {
50
+ headers: this.loadHeaders(),
51
+ });
52
+ }
53
+ GetActiveEnterprise() {
54
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/manage/enterprises/active`, {
55
+ headers: this.loadHeaders(),
56
+ });
57
+ }
58
+ HasValidConnection() {
59
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/github/connection/valid`, {
60
+ headers: this.loadHeaders(),
61
+ });
62
+ }
63
+ ListProjects() {
64
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/manage/projects`, {
65
+ headers: this.loadHeaders(),
66
+ });
67
+ }
68
+ ListBranches(organization, repository) {
69
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/github/organizations/${organization}/repositories/${repository}/branches`, {
70
+ headers: this.loadHeaders(),
71
+ });
72
+ }
73
+ ListBuildPaths(organization, repository, branch = '') {
74
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/github/organizations/${organization}/repositories/${repository}/build-paths?branch=${branch}`, {
75
+ headers: this.loadHeaders(),
76
+ });
77
+ }
78
+ ListEnterprises() {
79
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/manage/enterprises/list`, {
80
+ headers: this.loadHeaders(),
81
+ });
82
+ }
83
+ ListOrganizations() {
84
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/github/organizations`, {
85
+ headers: this.loadHeaders(),
86
+ });
87
+ }
88
+ ListRepositories(organization) {
89
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/github/organizations/${organization}/repositories`, {
90
+ headers: this.loadHeaders(),
91
+ });
92
+ }
93
+ LoadEnterpriseAsCode() {
94
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/manage/eac`, {
95
+ headers: this.loadHeaders(),
96
+ });
97
+ }
98
+ LoadProjectHostingDetails(organization, repository, branch) {
99
+ branch = encodeURIComponent(branch);
100
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/manage/projects/organizations/${organization}/repositories/${repository}/branches/${branch}/hosting/details`, {
101
+ headers: this.loadHeaders(),
102
+ });
103
+ }
104
+ NewLoadProjectHostingDetails() {
105
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/manage/projects/hosting/details`, {
106
+ headers: this.loadHeaders(),
107
+ });
108
+ }
109
+ SaveEnterpriseAsCode(eac) {
110
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/eac`, eac, {
111
+ headers: this.loadHeaders(),
112
+ });
113
+ }
114
+ SetActiveEnterprise(activeEntLookup) {
115
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/enterprises/active`, {
116
+ ActiveEnterpriseLookup: activeEntLookup,
117
+ }, {
118
+ headers: this.loadHeaders(),
119
+ });
120
+ }
121
+ UnpackLowCodeUnit(req) {
122
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/projects/unpack`, req, {
123
+ headers: this.loadHeaders(),
124
+ });
125
+ }
126
+ UserFeed(page, pageSize) {
127
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/userfeed?page=${page}&pageSize=${pageSize}`, {
128
+ headers: this.loadHeaders(),
129
+ });
130
+ }
131
+ // Helpers
132
+ loadHeaders() {
133
+ return {};
134
+ }
135
+ }
136
+ ApplicationsFlowService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ApplicationsFlowService_Factory() { return new ApplicationsFlowService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.LCUServiceSettings)); }, token: ApplicationsFlowService, providedIn: "root" });
137
+ ApplicationsFlowService.decorators = [
138
+ { type: Injectable, args: [{
139
+ providedIn: 'root',
140
+ },] }
141
+ ];
142
+ ApplicationsFlowService.ctorParameters = () => [
143
+ { type: HttpClient },
144
+ { type: LCUServiceSettings }
145
+ ];
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb25zLWZsb3cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9hcHBsaWNhdGlvbnMtZmxvdy9hcHBsaWNhdGlvbnMtZmxvdy9wcm9qZWN0cy9jb21tb24vc3JjLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2FwcGxpY2F0aW9ucy1mbG93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7O0FBUWpELE1BQU0sT0FBTyx1QkFBdUI7SUFJbEMsY0FBYztJQUVkLGVBQWU7SUFDZixZQUNZLElBQWdCLEVBQ2hCLFFBQTRCO1FBRDVCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBb0I7UUFFdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxjQUFjO0lBQ1AscUJBQXFCLENBQUMsWUFBb0I7UUFDL0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDbkIsR0FBRyxJQUFJLENBQUMsT0FBTywwQ0FBMEMsWUFBWSxZQUFZLEVBQ2pGLEVBQUUsRUFDRjtZQUNFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO1NBQzVCLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTSxnQkFBZ0IsQ0FDckIsWUFBb0IsRUFDcEIsUUFBZ0I7UUFFaEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDbkIsR0FBRyxJQUFJLENBQUMsT0FBTyx5Q0FBeUMsWUFBWSxlQUFlLEVBQ25GO1lBQ0UsSUFBSSxFQUFFLFFBQVE7U0FDZixFQUNEO1lBQ0UsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFX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IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTENVU2VydmljZVNldHRpbmdzIH0gZnJvbSAnQGxjdS9jb21tb24nO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VBc0NvZGUgfSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xyXG5pbXBvcnQgeyBVbnBhY2tMb3dDb2RlVW5pdFJlcXVlc3QgfSBmcm9tICcuLi9zdGF0ZS9hcHBsaWNhdGlvbnMtZmxvdy5zdGF0ZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwbGljYXRpb25zRmxvd1NlcnZpY2Uge1xyXG4gIC8vICBGaWVsZHNcclxuICBwcm90ZWN0ZWQgYXBpUm9vdDogc3RyaW5nO1xyXG5cclxuICAvLyAgUHJvcGVydGllc1xyXG5cclxuICAvLyBDb25zdHJ1Y3RvcnNcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzOiBMQ1VTZXJ2aWNlU2V0dGluZ3NcclxuICApIHtcclxuICAgIHRoaXMuYXBpUm9vdCA9IHNldHRpbmdzLkFQSVJvb3Q7XHJcbiAgfVxyXG5cclxuICAvLyBBUEkgTWV0aG9kc1xyXG4gIHB1YmxpYyBDb25maWd1cmVEZXZPcHNBY3Rpb24oYWN0aW9uTG9va3VwOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZGV2b3BzL2FjdGlvbnMvJHthY3Rpb25Mb29rdXB9L2NvbmZpZ3VyZWAsXHJcbiAgICAgIHt9LFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENyZWF0ZVJlcG9zaXRvcnkoXHJcbiAgICBvcmdhbml6YXRpb246IHN0cmluZyxcclxuICAgIHJlcG9OYW1lOiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9naXRodWIvb3JnYW5pemF0aW9ucy8ke29yZ2FuaXphdGlvbn0vcmVwb3NpdG9yaWVzYCxcclxuICAgICAge1xyXG4gICAgICAgIE5hbWU6IHJlcG9OYW1lLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZUFwcGxpY2F0aW9uKGFwcExvb2t1cDogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvYXBwbGljYXRpb25zLyR7YXBwTG9va3VwfWAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRGVsZXRlRGV2T3BzQWN0aW9uKGRvYUxvb2t1cDogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZGV2b3BzLWFjdGlvbnMvJHtkb2FMb29rdXB9YCxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEZWxldGVQcm9qZWN0KHByb2plY3RMb29rdXA6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL3Byb2plY3RzLyR7cHJvamVjdExvb2t1cH1gLFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZVNvdXJjZUNvbnRyb2woc2NMb29rdXA6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL3NvdXJjZS1jb250cm9scy8ke3NjTG9va3VwfWAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRW5zdXJlVXNlckVudGVycHJpc2UoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL2VudGVycHJpc2UvZW5zdXJlYCxcclxuICAgICAge30sXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0QWN0aXZlRW50ZXJwcmlzZSgpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9lbnRlcnByaXNlcy9hY3RpdmVgLFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEhhc1ZhbGlkQ29ubmVjdGlvbigpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L2dpdGh1Yi9jb25uZWN0aW9uL3ZhbGlkYCxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMaXN0UHJvamVjdHMoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9wcm9qZWN0c2AsIHtcclxuICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdEJyYW5jaGVzKFxyXG4gICAgb3JnYW5pemF0aW9uOiBzdHJpbmcsXHJcbiAgICByZXBvc2l0b3J5OiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L2dpdGh1Yi9vcmdhbml6YXRpb25zLyR7b3JnYW5pemF0aW9ufS9yZXBvc2l0b3JpZXMvJHtyZXBvc2l0b3J5fS9icmFuY2hlc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdEJ1aWxkUGF0aHMoXHJcbiAgICBvcmdhbml6YXRpb246IHN0cmluZyxcclxuICAgIHJlcG9zaXRvcnk6IHN0cmluZyxcclxuICAgIGJyYW5jaDogc3RyaW5nID0gJydcclxuICApOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L2dpdGh1Yi9vcmdhbml6YXRpb25zLyR7b3JnYW5pemF0aW9ufS9yZXBvc2l0b3JpZXMvJHtyZXBvc2l0b3J5fS9idWlsZC1wYXRocz9icmFuY2g9JHticmFuY2h9YCxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMaXN0RW50ZXJwcmlzZXMoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZW50ZXJwcmlzZXMvbGlzdGAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdE9yZ2FuaXphdGlvbnMoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9naXRodWIvb3JnYW5pemF0aW9uc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdFJlcG9zaXRvcmllcyhvcmdhbml6YXRpb246IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvZ2l0aHViL29yZ2FuaXphdGlvbnMvJHtvcmdhbml6YXRpb259L3JlcG9zaXRvcmllc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTG9hZEVudGVycHJpc2VBc0NvZGUoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9lYWNgLCB7XHJcbiAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvYWRQcm9qZWN0SG9zdGluZ0RldGFpbHMoXHJcbiAgICBvcmdhbml6YXRpb246IHN0cmluZyxcclxuICAgIHJlcG9zaXRvcnk6IHN0cmluZyxcclxuICAgIGJyYW5jaDogc3RyaW5nXHJcbiAgKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIGJyYW5jaCA9IGVuY29kZVVSSUNvbXBvbmVudChicmFuY2gpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvcHJvamVjdHMvb3JnYW5pemF0aW9ucy8ke29yZ2FuaXphdGlvbn0vcmVwb3NpdG9yaWVzLyR7cmVwb3NpdG9yeX0vYnJhbmNoZXMvJHticmFuY2h9L2hvc3RpbmcvZGV0YWlsc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTmV3TG9hZFByb2plY3RIb3N0aW5nRGV0YWlscygpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9wcm9qZWN0cy9ob3N0aW5nL2RldGFpbHNgLFxyXG5cclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBTYXZlRW50ZXJwcmlzZUFzQ29kZShlYWM6IEVudGVycHJpc2VBc0NvZGUpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9lYWNgLCBlYWMsIHtcclxuICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2V0QWN0aXZlRW50ZXJwcmlzZShhY3RpdmVFbnRMb29rdXA6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9lbnRlcnByaXNlcy9hY3RpdmVgLFxyXG4gICAgICB7XHJcbiAgICAgICAgQWN0aXZlRW50ZXJwcmlzZUxvb2t1cDogYWN0aXZlRW50TG9va3VwLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFVucGFja0xvd0NvZGVVbml0KHJlcTogVW5wYWNrTG93Q29kZVVuaXRSZXF1ZXN0KTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL3Byb2plY3RzL3VucGFja2AsXHJcbiAgICAgIHJlcSxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVc2VyRmVlZChwYWdlOiBudW1iZXIsIHBhZ2VTaXplOiBudW1iZXIpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L3VzZXJmZWVkP3BhZ2U9JHtwYWdlfSZwYWdlU2l6ZT0ke3BhZ2VTaXplfWAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvLyAgSGVscGVyc1xyXG4gIHByb3RlY3RlZCBsb2FkSGVhZGVycygpOiB7IFtoZWFkZXI6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIH0ge1xyXG4gICAgcmV0dXJuIHt9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,218 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { ProjectService } from './project.service';
4
+ import { ApplicationsFlowState, } from '../state/applications-flow.state';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./project.service";
7
+ export class SaveApplicationAsCodeEventRequest {
8
+ }
9
+ export class SaveDFSModifierEventRequest {
10
+ }
11
+ export class SaveEnvironmentAsCodeEventRequest {
12
+ }
13
+ export class SaveProjectAsCodeEventRequest {
14
+ }
15
+ export class EaCService {
16
+ // Constructors
17
+ constructor(projectService) {
18
+ this.projectService = projectService;
19
+ this.State = new ApplicationsFlowState();
20
+ }
21
+ // API Methods
22
+ get CreatingProject() {
23
+ return this.projectService.CreatingProject;
24
+ }
25
+ DeleteApplication(appLookup, appName) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ if (confirm(`Are you sure you want to delete application '${appName}'?`)) {
28
+ yield this.projectService.DeleteApplication(this.State, appLookup);
29
+ }
30
+ });
31
+ }
32
+ DeleteDevOpsAction(doaLookup) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ if (confirm(`Are you sure you want to delete DevOps action '${doaLookup}'?`)) {
35
+ yield this.projectService.DeleteDevOpsAction(this.State, doaLookup);
36
+ }
37
+ });
38
+ }
39
+ DeleteProject(projectLookup) {
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ if (confirm(`Are you sure you want to delete Project '${projectLookup}'?`)) {
42
+ yield this.projectService.DeleteProject(this.State, projectLookup);
43
+ }
44
+ });
45
+ }
46
+ DeleteSourceControl(scLookup) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ if (confirm(`Are you sure you want to delete Source Control '${scLookup}'?`)) {
49
+ yield this.projectService.DeleteSourceControl(this.State, scLookup);
50
+ }
51
+ });
52
+ }
53
+ // this.appsFlowEventsSvc.EnsureUserEnterpriseEvent.subscribe(async () => {
54
+ // await this.projectService.EnsureUserEnterprise(this.State);
55
+ // });
56
+ EnsureUserEnterprise() {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ yield this.projectService.EnsureUserEnterprise(this.State);
59
+ });
60
+ }
61
+ GetActiveEnterprise() {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ yield this.projectService.GetActiveEnterprise(this.State);
64
+ });
65
+ }
66
+ get EditingProjectLookup() {
67
+ return this.projectService.EditingProjectLookup;
68
+ }
69
+ HasValidConnection() {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ yield this.projectService.HasValidConnection(this.State);
72
+ });
73
+ }
74
+ ListEnterprises() {
75
+ return __awaiter(this, void 0, void 0, function* () {
76
+ yield this.projectService.ListEnterprises(this.State);
77
+ });
78
+ }
79
+ LoadEnterpriseAsCode() {
80
+ return __awaiter(this, void 0, void 0, function* () {
81
+ yield this.projectService.LoadEnterpriseAsCode(this.State);
82
+ });
83
+ }
84
+ SaveApplicationAsCode(req) {
85
+ return __awaiter(this, void 0, void 0, function* () {
86
+ yield this.handleSaveApplication(req);
87
+ });
88
+ }
89
+ SaveDFSModifier(req) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ yield this.handleSaveDFSModifier(req);
92
+ });
93
+ }
94
+ SaveEnterpriseAsCode(eac) {
95
+ return __awaiter(this, void 0, void 0, function* () {
96
+ yield this.projectService.SaveEnterpriseAsCode(this.State, eac);
97
+ });
98
+ }
99
+ SaveEnvironmentAsCode(req) {
100
+ return __awaiter(this, void 0, void 0, function* () {
101
+ yield this.handleSaveEnvironment(req);
102
+ });
103
+ }
104
+ SaveProjectAsCode(req) {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ yield this.handleSaveProject(req.ProjectLookup, req.Project);
107
+ });
108
+ }
109
+ SetActiveEnterprise(eventValue) {
110
+ return __awaiter(this, void 0, void 0, function* () {
111
+ this.projectService.SetActiveEnterprise(this.State, eventValue);
112
+ });
113
+ }
114
+ SetCreatingProject(creatingProject) {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ this.projectService.SetCreatingProject(creatingProject);
117
+ });
118
+ }
119
+ SetEditProjectSettings(projectLookup) {
120
+ return __awaiter(this, void 0, void 0, function* () {
121
+ yield this.projectService.SetEditProjectSettings(this.State, projectLookup);
122
+ });
123
+ }
124
+ UnpackLowCodeUnit(req) {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ if (confirm(`Are you sure you want to unpack application '${req.ApplicationName}' with version '${req.Version}'?`)) {
127
+ yield this.projectService.UnpackLowCodeUnit(this.State, req);
128
+ }
129
+ });
130
+ }
131
+ // Helpers
132
+ handleSaveApplication(req) {
133
+ var _a;
134
+ return __awaiter(this, void 0, void 0, function* () {
135
+ const saveEaC = {
136
+ EnterpriseLookup: this.State.EaC.EnterpriseLookup,
137
+ Applications: {},
138
+ Projects: {},
139
+ };
140
+ const existingProj = Object.assign({}, this.State.EaC.Projects[req.ProjectLookup]);
141
+ if (((_a = existingProj.ApplicationLookups) === null || _a === void 0 ? void 0 : _a.indexOf(req.ApplicationLookup)) < 0) {
142
+ if (!existingProj.ApplicationLookups) {
143
+ existingProj.ApplicationLookups = [];
144
+ }
145
+ existingProj.ApplicationLookups.push(req.ApplicationLookup);
146
+ saveEaC.Projects[req.ProjectLookup] = existingProj;
147
+ }
148
+ if (req.Application) {
149
+ saveEaC.Applications[req.ApplicationLookup] = req.Application;
150
+ }
151
+ yield this.projectService.SaveEnterpriseAsCode(this.State, saveEaC);
152
+ });
153
+ }
154
+ handleSaveDFSModifier(req) {
155
+ return __awaiter(this, void 0, void 0, function* () {
156
+ const saveEaC = {
157
+ EnterpriseLookup: this.State.EaC.EnterpriseLookup,
158
+ Modifiers: {},
159
+ Projects: {},
160
+ };
161
+ if (req.Modifier) {
162
+ saveEaC.Modifiers[req.ModifierLookup] = req.Modifier;
163
+ }
164
+ if (req.ProjectLookup) {
165
+ saveEaC.Projects[req.ProjectLookup] = {
166
+ ModifierLookups: [req.ModifierLookup],
167
+ };
168
+ }
169
+ yield this.projectService.SaveEnterpriseAsCode(this.State, saveEaC);
170
+ });
171
+ }
172
+ handleSaveEnvironment(req) {
173
+ var _a, _b;
174
+ return __awaiter(this, void 0, void 0, function* () {
175
+ const saveEaC = {
176
+ EnterpriseLookup: (_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.EnterpriseLookup,
177
+ DataTokens: {},
178
+ Environments: {},
179
+ };
180
+ if (req.Environment) {
181
+ saveEaC.Environments[req.EnvironmentLookup] = req.Environment;
182
+ }
183
+ if (req.EnterpriseDataTokens) {
184
+ saveEaC.DataTokens = req.EnterpriseDataTokens;
185
+ }
186
+ yield this.projectService.SaveEnterpriseAsCode(this.State, saveEaC);
187
+ });
188
+ }
189
+ handleSaveProject(projectLookup, project) {
190
+ var _a;
191
+ return __awaiter(this, void 0, void 0, function* () {
192
+ const projHosts = {};
193
+ (_a = project === null || project === void 0 ? void 0 : project.Hosts) === null || _a === void 0 ? void 0 : _a.forEach((host) => {
194
+ projHosts[host] = this.State.EaC.Hosts[host];
195
+ });
196
+ const saveEaC = {
197
+ EnterpriseLookup: this.State.EaC.EnterpriseLookup,
198
+ Enterprise: Object.assign(Object.assign({}, this.State.EaC.Enterprise), { PrimaryHost: project.Hosts[0] }),
199
+ Hosts: projHosts,
200
+ // Providers: this.State.EaC.Providers, // TODO: Remove after all providers ADB2C's have been upgraded
201
+ Projects: {},
202
+ };
203
+ saveEaC.Projects[projectLookup] = project;
204
+ yield this.projectService.SaveEnterpriseAsCode(this.State, saveEaC);
205
+ this.SetEditProjectSettings(projectLookup);
206
+ });
207
+ }
208
+ }
209
+ EaCService.ɵprov = i0.ɵɵdefineInjectable({ factory: function EaCService_Factory() { return new EaCService(i0.ɵɵinject(i1.ProjectService)); }, token: EaCService, providedIn: "root" });
210
+ EaCService.decorators = [
211
+ { type: Injectable, args: [{
212
+ providedIn: 'root',
213
+ },] }
214
+ ];
215
+ EaCService.ctorParameters = () => [
216
+ { type: ProjectService }
217
+ ];
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWFjLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvYXBwbGljYXRpb25zLWZsb3cvYXBwbGljYXRpb25zLWZsb3cvcHJvamVjdHMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9lYWMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUNMLHFCQUFxQixHQUV0QixNQUFNLGtDQUFrQyxDQUFDOzs7QUFXMUMsTUFBTSxPQUFPLGlDQUFpQztDQU03QztBQUVELE1BQU0sT0FBTywyQkFBMkI7Q0FNdkM7QUFFRCxNQUFNLE9BQU8saUNBQWlDO0NBTTdDO0FBRUQsTUFBTSxPQUFPLDZCQUE2QjtDQUl6QztBQUtELE1BQU0sT0FBTyxVQUFVO0lBSXJCLGdCQUFnQjtJQUNoQixZQUNZLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUV4QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUkscUJBQXFCLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZTtJQUVmLElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDO0lBQzdDLENBQUM7SUFFWSxpQkFBaUIsQ0FDNUIsU0FBaUIsRUFDakIsT0FBZTs7WUFFZixJQUFJLE9BQU8sQ0FBQyxnREFBZ0QsT0FBTyxJQUFJLENBQUMsRUFBRTtnQkFDeEUsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDO0tBQUE7SUFFWSxrQkFBa0IsQ0FBQyxTQUFpQjs7WUFDL0MsSUFBSSxPQUFPLENBQUMsa0RBQWtELFNBQVMsSUFBSSxDQUFD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ZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvamVjdFNlcnZpY2UgfSBmcm9tICcuL3Byb2plY3Quc2VydmljZSc7XG5pbXBvcnQge1xuICBBcHBsaWNhdGlvbnNGbG93U3RhdGUsXG4gIFVucGFja0xvd0NvZGVVbml0UmVxdWVzdCxcbn0gZnJvbSAnLi4vc3RhdGUvYXBwbGljYXRpb25zLWZsb3cuc3RhdGUnO1xuaW1wb3J0IHtcbiAgRWFDQXBwbGljYXRpb25Bc0NvZGUsXG4gIEVhQ0RhdGFUb2tlbixcbiAgRWFDREZTTW9kaWZpZXIsXG4gIEVhQ0Vudmlyb25tZW50QXNDb2RlLFxuICBFYUNIb3N0LFxuICBFYUNQcm9qZWN0QXNDb2RlLFxuICBFbnRlcnByaXNlQXNDb2RlLFxufSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xuXG5leHBvcnQgY2xhc3MgU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnRSZXF1ZXN0IHtcbiAgcHVibGljIEFwcGxpY2F0aW9uPzogRWFDQXBwbGljYXRpb25Bc0NvZGU7XG5cbiAgcHVibGljIEFwcGxpY2F0aW9uTG9va3VwPzogc3RyaW5nO1xuXG4gIHB1YmxpYyBQcm9qZWN0TG9va3VwPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0IHtcbiAgcHVibGljIE1vZGlmaWVyOiBFYUNERlNNb2RpZmllcjtcblxuICBwdWJsaWMgTW9kaWZpZXJMb29rdXA6IHN0cmluZztcblxuICBwdWJsaWMgUHJvamVjdExvb2t1cD86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50UmVxdWVzdCB7XG4gIHB1YmxpYyBFbnRlcnByaXNlRGF0YVRva2Vucz86IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDRGF0YVRva2VuIH07XG5cbiAgcHVibGljIEVudmlyb25tZW50PzogRWFDRW52aXJvbm1lbnRBc0NvZGU7XG5cbiAgcHVibGljIEVudmlyb25tZW50TG9va3VwPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2F2ZVByb2plY3RBc0NvZGVFdmVudFJlcXVlc3Qge1xuICBwdWJsaWMgUHJvamVjdD86IEVhQ1Byb2plY3RBc0NvZGU7XG5cbiAgcHVibGljIFByb2plY3RMb29rdXA/OiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBFYUNTZXJ2aWNlIHtcbiAgLy8gIFByb3BlcnRpZXNcbiAgcHVibGljIFN0YXRlOiBBcHBsaWNhdGlvbnNGbG93U3RhdGU7XG5cbiAgLy8gIENvbnN0cnVjdG9yc1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcHJvamVjdFNlcnZpY2U6IFByb2plY3RTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuU3RhdGUgPSBuZXcgQXBwbGljYXRpb25zRmxvd1N0YXRlKCk7XG4gIH1cblxuICAvLyAgQVBJIE1ldGhvZHNcblxuICBwdWJsaWMgZ2V0IENyZWF0aW5nUHJvamVjdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wcm9qZWN0U2VydmljZS5DcmVhdGluZ1Byb2plY3Q7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgRGVsZXRlQXBwbGljYXRpb24oXG4gICAgYXBwTG9va3VwOiBzdHJpbmcsXG4gICAgYXBwTmFtZTogc3RyaW5nXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChjb25maXJtKGBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIGFwcGxpY2F0aW9uICcke2FwcE5hbWV9Jz9gKSkge1xuICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5EZWxldGVBcHBsaWNhdGlvbih0aGlzLlN0YXRlLCBhcHBMb29rdXApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBEZWxldGVEZXZPcHNBY3Rpb24oZG9hTG9va3VwOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoY29uZmlybShgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBEZXZPcHMgYWN0aW9uICcke2RvYUxvb2t1cH0nP2ApKSB7XG5cbiAgICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuRGVsZXRlRGV2T3BzQWN0aW9uKHRoaXMuU3RhdGUsIGRvYUxvb2t1cCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIERlbGV0ZVByb2plY3QocHJvamVjdExvb2t1cDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGNvbmZpcm0oYEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgUHJvamVjdCAnJHtwcm9qZWN0TG9va3VwfSc/YCkpIHtcblxuICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5EZWxldGVQcm9qZWN0KHRoaXMuU3RhdGUsIHByb2plY3RMb29rdXApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBEZWxldGVTb3VyY2VDb250cm9sKHNjTG9va3VwOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoY29uZmlybShgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBTb3VyY2UgQ29udHJvbCAnJHtzY0xvb2t1cH0nP2ApKSB7XG5cbiAgICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuRGVsZXRlU291cmNlQ29udHJvbCh0aGlzLlN0YXRlLCBzY0xvb2t1cCk7XG4gICAgfVxuICB9XG5cbiAgLy8gdGhpcy5hcHBzRmxvd0V2ZW50c1N2Yy5FbnN1cmVVc2VyRW50ZXJwcmlzZUV2ZW50LnN1YnNjcmliZShhc3luYyAoKSA9PiB7XG4gIC8vICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5FbnN1cmVVc2VyRW50ZXJwcmlzZSh0aGlzLlN0YXRlKTtcbiAgLy8gfSk7XG4gIFxuXG4gIHB1YmxpYyBhc3luYyBFbnN1cmVVc2VyRW50ZXJwcmlzZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkVuc3VyZVVzZXJFbnRlcnByaXNlKHRoaXMuU3RhdGUpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIEdldEFjdGl2ZUVudGVycHJpc2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5HZXRBY3RpdmVFbnRlcnByaXNlKHRoaXMuU3RhdGUpO1xuICB9XG5cbiAgcHVibGljIGdldCBFZGl0aW5nUHJvamVjdExvb2t1cCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb2plY3RTZXJ2aWNlLkVkaXRpbmdQcm9qZWN0TG9va3VwO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIEhhc1ZhbGlkQ29ubmVjdGlvbigpOiBQcm9taXNlPHZvaWQ+e1xuICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuSGFzVmFsaWRDb25uZWN0aW9uKHRoaXMuU3RhdGUpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIExpc3RFbnRlcnByaXNlcygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLkxpc3RFbnRlcnByaXNlcyh0aGlzLlN0YXRlKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBMb2FkRW50ZXJwcmlzZUFzQ29kZSgpOiBQcm9taXNlPHZvaWQ+e1xuICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuTG9hZEVudGVycHJpc2VBc0NvZGUodGhpcy5TdGF0ZSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgU2F2ZUFwcGxpY2F0aW9uQXNDb2RlKFxuICAgIHJlcTogU2F2ZUFwcGxpY2F0aW9uQXNDb2RlRXZlbnRSZXF1ZXN0XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuaGFuZGxlU2F2ZUFwcGxpY2F0aW9uKHJlcSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgU2F2ZURGU01vZGlmaWVyKHJlcTogU2F2ZURGU01vZGlmaWVyRXZlbnRSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5oYW5kbGVTYXZlREZTTW9kaWZpZXIocmVxKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBTYXZlRW50ZXJwcmlzZUFzQ29kZShlYWM6IEVudGVycHJpc2VBc0NvZGUpOiBQcm9taXNlPHZvaWQ+ICB7XG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBlYWMpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIFNhdmVFbnZpcm9ubWVudEFzQ29kZShyZXE6IFNhdmVFbnZpcm9ubWVudEFzQ29kZUV2ZW50UmVxdWVzdCk6IFByb21pc2U8dm9pZD57XG4gICAgYXdhaXQgdGhpcy5oYW5kbGVTYXZlRW52aXJvbm1lbnQocmVxKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBTYXZlUHJvamVjdEFzQ29kZShyZXE6IFNhdmVQcm9qZWN0QXNDb2RlRXZlbnRSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPntcbiAgICBhd2FpdCB0aGlzLmhhbmRsZVNhdmVQcm9qZWN0KHJlcS5Qcm9qZWN0TG9va3VwLCByZXEuUHJvamVjdCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgU2V0QWN0aXZlRW50ZXJwcmlzZShldmVudFZhbHVlOiBhbnkpOiBQcm9taXNlPHZvaWQ+e1xuICAgIHRoaXMucHJvamVjdFNlcnZpY2UuU2V0QWN0aXZlRW50ZXJwcmlzZSh0aGlzLlN0YXRlLCBldmVudFZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBTZXRDcmVhdGluZ1Byb2plY3QoY3JlYXRpbmdQcm9qZWN0OiBib29sZWFuKTogUHJvbWlzZTx2b2lkPntcbiAgICAgIHRoaXMucHJvamVjdFNlcnZpY2UuU2V0Q3JlYXRpbmdQcm9qZWN0KGNyZWF0aW5nUHJvamVjdCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgU2V0RWRpdFByb2plY3RTZXR0aW5ncyhwcm9qZWN0TG9va3VwOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+e1xuICAgICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TZXRFZGl0UHJvamVjdFNldHRpbmdzKFxuICAgICAgICB0aGlzLlN0YXRlLFxuICAgICAgICBwcm9qZWN0TG9va3VwXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIFVucGFja0xvd0NvZGVVbml0KHJlcTogVW5wYWNrTG93Q29kZVVuaXRSZXF1ZXN0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKFxuICAgICAgY29uZmlybShcbiAgICAgICAgYEFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1bnBhY2sgYXBwbGljYXRpb24gJyR7cmVxLkFwcGxpY2F0aW9uTmFtZX0nIHdpdGggdmVyc2lvbiAnJHtyZXEuVmVyc2lvbn0nP2BcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuVW5wYWNrTG93Q29kZVVuaXQodGhpcy5TdGF0ZSwgcmVxKTtcbiAgICB9XG4gIH1cblxuXG4gIC8vICBIZWxwZXJzXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTYXZlQXBwbGljYXRpb24oXG4gICAgcmVxOiBTYXZlQXBwbGljYXRpb25Bc0NvZGVFdmVudFJlcXVlc3RcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2F2ZUVhQzogRW50ZXJwcmlzZUFzQ29kZSA9IHtcbiAgICAgIEVudGVycHJpc2VMb29rdXA6IHRoaXMuU3RhdGUuRWFDLkVudGVycHJpc2VMb29rdXAsXG4gICAgICBBcHBsaWNhdGlvbnM6IHt9LFxuICAgICAgUHJvamVjdHM6IHt9LFxuICAgIH07XG5cbiAgICBjb25zdCBleGlzdGluZ1Byb2ogPSB7XG4gICAgICAuLi50aGlzLlN0YXRlLkVhQy5Qcm9qZWN0c1tyZXEuUHJvamVjdExvb2t1cF0sXG4gICAgfTtcblxuICAgIGlmIChleGlzdGluZ1Byb2ouQXBwbGljYXRpb25Mb29rdXBzPy5pbmRleE9mKHJlcS5BcHBsaWNhdGlvbkxvb2t1cCkgPCAwKSB7XG4gICAgICBpZiAoIWV4aXN0aW5nUHJvai5BcHBsaWNhdGlvbkxvb2t1cHMpIHtcbiAgICAgICAgZXhpc3RpbmdQcm9qLkFwcGxpY2F0aW9uTG9va3VwcyA9IFtdO1xuICAgICAgfVxuXG4gICAgICBleGlzdGluZ1Byb2ouQXBwbGljYXRpb25Mb29rdXBzLnB1c2gocmVxLkFwcGxpY2F0aW9uTG9va3VwKTtcblxuICAgICAgc2F2ZUVhQy5Qcm9qZWN0c1tyZXEuUHJvamVjdExvb2t1cF0gPSBleGlzdGluZ1Byb2o7XG4gICAgfVxuXG4gICAgaWYgKHJlcS5BcHBsaWNhdGlvbikge1xuICAgICAgc2F2ZUVhQy5BcHBsaWNhdGlvbnNbcmVxLkFwcGxpY2F0aW9uTG9va3VwXSA9IHJlcS5BcHBsaWNhdGlvbjtcbiAgICB9XG5cbiAgICBhd2FpdCB0aGlzLnByb2plY3RTZXJ2aWNlLlNhdmVFbnRlcnByaXNlQXNDb2RlKHRoaXMuU3RhdGUsIHNhdmVFYUMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZVNhdmVERlNNb2RpZmllcihcbiAgICByZXE6IFNhdmVERlNNb2RpZmllckV2ZW50UmVxdWVzdFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBzYXZlRWFDOiBFbnRlcnByaXNlQXNDb2RlID0ge1xuICAgICAgRW50ZXJwcmlzZUxvb2t1cDogdGhpcy5TdGF0ZS5FYUMuRW50ZXJwcmlzZUxvb2t1cCxcbiAgICAgIE1vZGlmaWVyczoge30sXG4gICAgICBQcm9qZWN0czoge30sXG4gICAgfTtcblxuICAgIGlmIChyZXEuTW9kaWZpZXIpIHtcbiAgICAgIHNhdmVFYUMuTW9kaWZpZXJzW3JlcS5Nb2RpZmllckxvb2t1cF0gPSByZXEuTW9kaWZpZXI7XG4gICAgfVxuXG4gICAgaWYgKHJlcS5Qcm9qZWN0TG9va3VwKSB7XG4gICAgICBzYXZlRWFDLlByb2plY3RzW3JlcS5Qcm9qZWN0TG9va3VwXSA9IHtcbiAgICAgICAgTW9kaWZpZXJMb29rdXBzOiBbcmVxLk1vZGlmaWVyTG9va3VwXSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBzYXZlRWFDKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTYXZlRW52aXJvbm1lbnQoXG4gICAgcmVxOiBTYXZlRW52aXJvbm1lbnRBc0NvZGVFdmVudFJlcXVlc3RcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2F2ZUVhQzogRW50ZXJwcmlzZUFzQ29kZSA9IHtcbiAgICAgIEVudGVycHJpc2VMb29rdXA6IHRoaXMuU3RhdGU/LkVhQz8uRW50ZXJwcmlzZUxvb2t1cCxcbiAgICAgIERhdGFUb2tlbnM6IHt9LFxuICAgICAgRW52aXJvbm1lbnRzOiB7fSxcbiAgICB9O1xuXG4gICAgaWYgKHJlcS5FbnZpcm9ubWVudCkge1xuICAgICAgc2F2ZUVhQy5FbnZpcm9ubWVudHNbcmVxLkVudmlyb25tZW50TG9va3VwXSA9IHJlcS5FbnZpcm9ubWVudDtcbiAgICB9XG5cbiAgICBpZiAocmVxLkVudGVycHJpc2VEYXRhVG9rZW5zKSB7XG4gICAgICBzYXZlRWFDLkRhdGFUb2tlbnMgPSByZXEuRW50ZXJwcmlzZURhdGFUb2tlbnM7XG4gICAgfVxuXG4gICAgYXdhaXQgdGhpcy5wcm9qZWN0U2VydmljZS5TYXZlRW50ZXJwcmlzZUFzQ29kZSh0aGlzLlN0YXRlLCBzYXZlRWFDKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBoYW5kbGVTYXZlUHJvamVjdChcbiAgICBwcm9qZWN0TG9va3VwOiBzdHJpbmcsXG4gICAgcHJvamVjdDogRWFDUHJvamVjdEFzQ29kZVxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBwcm9qSG9zdHM6IHsgW2xvb2t1cDogc3RyaW5nXTogRWFDSG9zdCB9ID0ge307XG5cbiAgICBwcm9qZWN0Py5Ib3N0cz8uZm9yRWFjaCgoaG9zdCkgPT4ge1xuICAgICAgcHJvakhvc3RzW2hvc3RdID0gdGhpcy5TdGF0ZS5FYUMuSG9zdHNbaG9zdF07XG4gICAgfSk7XG5cbiAgICBjb25zdCBzYXZlRWFDOiBFbnRlcnByaXNlQXNDb2RlID0ge1xuICAgICAgRW50ZXJwcmlzZUxvb2t1cDogdGhpcy5TdGF0ZS5FYUMuRW50ZXJwcmlzZUxvb2t1cCxcbiAgICAgIEVudGVycHJpc2U6IHtcbiAgICAgICAgLi4udGhpcy5TdGF0ZS5FYUMuRW50ZXJwcmlzZSxcbiAgICAgICAgUHJpbWFyeUhvc3Q6IHByb2plY3QuSG9zdHNbMF0sXG4gICAgICB9LFxuICAgICAgSG9zdHM6IHByb2pIb3N0cyxcbiAgICAgIC8vIFByb3ZpZGVyczogdGhpcy5TdGF0ZS5FYUMuUHJvdmlkZXJzLCAgLy8gIFRPRE86ICBSZW1vdmUgYWZ0ZXIgYWxsIHByb3ZpZGVycyBBREIyQydzIGhhdmUgYmVlbiB1cGdyYWRlZFxuICAgICAgUHJvamVjdHM6IHt9LFxuICAgIH07XG5cbiAgICBzYXZlRWFDLlByb2plY3RzW3Byb2plY3RMb29rdXBdID0gcHJvamVjdDtcblxuICAgIGF3YWl0IHRoaXMucHJvamVjdFNlcnZpY2UuU2F2ZUVudGVycHJpc2VBc0NvZGUodGhpcy5TdGF0ZSwgc2F2ZUVhQyk7XG5cbiAgICB0aGlzLlNldEVkaXRQcm9qZWN0U2V0dGluZ3MocHJvamVjdExvb2t1cCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,131 @@
1
+ import { FormValuesModel } from './../models/form.values.model';
2
+ import { Injectable } from '@angular/core';
3
+ import { Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export class FormsService {
6
+ constructor() {
7
+ this.forms = [];
8
+ this.previousFormValues = [];
9
+ this.FormIsDirty = new Subject();
10
+ }
11
+ set Form(val) {
12
+ if (!val) {
13
+ return;
14
+ }
15
+ this._form = val;
16
+ this.forms.push(val);
17
+ this.createValuesReference(val);
18
+ }
19
+ get Form() {
20
+ return this._form;
21
+ }
22
+ /**
23
+ *
24
+ * @param val as string - enabled form name
25
+ * @param val as boolen - enable/disable all forms
26
+ *
27
+ * Enable / disable forms, use this when a form is being edited and
28
+ * all other forms need to be disabled
29
+ */
30
+ DisableForms(val) {
31
+ const preventEvent = { onlySelf: true, emitEvent: false };
32
+ this.forms.forEach((form) => {
33
+ if (typeof val === 'boolean') {
34
+ val ? form.Form.disable(preventEvent) : form.Form.enable(preventEvent);
35
+ }
36
+ else {
37
+ if (form.Id === val) {
38
+ form.Form.enable(preventEvent);
39
+ }
40
+ else {
41
+ form.Form.disable(preventEvent);
42
+ }
43
+ }
44
+ });
45
+ }
46
+ /**
47
+ * Create a reference of initial form data
48
+ * Use this to compare if values really changed, because
49
+ * the user could change values back to the original
50
+ *
51
+ * @param obj form data
52
+ */
53
+ createValuesReference(val) {
54
+ // const values: Array<{key: string, value: string}> = [];
55
+ const keyValues = {};
56
+ for (const [key, value] of Object.entries(val.Form.controls)) {
57
+ // values.push({key, value: value.value});
58
+ keyValues[key] = value.value;
59
+ }
60
+ // this.formsValues.push(new FormValuesModel(val.Id, val.Form.value));
61
+ this.previousFormValues.push(new FormValuesModel(val.Id, keyValues));
62
+ }
63
+ /**
64
+ * Update value reference after saves
65
+ *
66
+ * @param val form model with values
67
+ */
68
+ UpdateValuesReference(val) {
69
+ const index = this.previousFormValues.findIndex((x) => {
70
+ return x.Id === val.Id;
71
+ });
72
+ this.previousFormValues[index].Values = val.Form.value;
73
+ // TODO: look at consolidating updating this.forms and this.previousFormValues - shannon (7-14-21)
74
+ const formIndex = this.forms.findIndex((x) => {
75
+ return x.Id === val.Id;
76
+ });
77
+ this.forms[formIndex] = val;
78
+ }
79
+ /**
80
+ * Reset form values back to previous
81
+ *
82
+ * @param id form id
83
+ */
84
+ ResetFormValues(id) {
85
+ this.forms.find((form) => {
86
+ if (form.Id === id) {
87
+ form.Form.patchValue(this.GetPreviousFormValues(id).Values);
88
+ }
89
+ });
90
+ }
91
+ /**
92
+ *
93
+ * @param id form id to search for
94
+ *
95
+ * @returns previous form values
96
+ */
97
+ GetPreviousFormValues(id) {
98
+ return this.previousFormValues.find((x) => {
99
+ return x.Id === id;
100
+ });
101
+ }
102
+ /**
103
+ * Check for actual form changes, because the user
104
+ * could have canceled or changed the value back to the
105
+ * original
106
+ *
107
+ * @param id form id
108
+ * @param formToCheck form to be tested
109
+ */
110
+ ForRealThough(id, formToCheck) {
111
+ const formVals = this.previousFormValues.find((x) => {
112
+ return x.Id === id;
113
+ });
114
+ for (const key in formToCheck.controls) {
115
+ if (formToCheck.controls[key].value !== formVals.Values[key]) {
116
+ this.FormIsDirty.next(true);
117
+ return true;
118
+ }
119
+ }
120
+ this.FormIsDirty.next(false);
121
+ return false;
122
+ }
123
+ }
124
+ FormsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormsService_Factory() { return new FormsService(); }, token: FormsService, providedIn: "root" });
125
+ FormsService.decorators = [
126
+ { type: Injectable, args: [{
127
+ providedIn: 'root',
128
+ },] }
129
+ ];
130
+ FormsService.ctorParameters = () => [];
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9hcHBsaWNhdGlvbnMtZmxvdy9hcHBsaWNhdGlvbnMtZmxvdy9wcm9qZWN0cy9jb21tb24vc3JjLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2Zvcm1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFNL0IsTUFBTSxPQUFPLFlBQVk7SUF3SnJCO1FBQ0ksSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDckMsQ0FBQztJQXRKRCxJQUFXLElBQUksQ0FBQyxHQUFjO1FBRTFCLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFBRSxPQUFPO1NBQUU7UUFFckIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDWCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQWVEOzs7Ozs7O09BT0c7SUFDSSxZQUFZLENBQUMsR0FBcUI7UUFFckMsTUFBTSxZQUFZLEdBQTRDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFFbkcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFlLEVB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RUFBRSxLQUFLLEVBQUUsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssTUFBTSxHQUFHLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRTtZQUNwQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQzFELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QixPQUFPLElBQUksQ0FBQzthQUNmO1NBQ0o7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzs7O1lBMUpKLFVBQVUsU0FBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1WYWx1ZXNNb2RlbCB9IGZyb20gJy4vLi4vbW9kZWxzL2Zvcm0udmFsdWVzLm1vZGVsJztcbmltcG9ydCB7IEZvcm1Nb2RlbCB9IGZyb20gJy4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICB9KVxuXG5leHBvcnQgY2xhc3MgRm9ybXNTZXJ2aWNlIHtcblxuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgZm9ybXNcbiAgICAgKi9cbiAgICBwcml2YXRlIF9mb3JtOiBGb3JtTW9kZWw7XG4gICAgcHVibGljIHNldCBGb3JtKHZhbDogRm9ybU1vZGVsKSB7XG5cbiAgICAgICAgaWYgKCF2YWwpIHsgcmV0dXJuOyB9XG5cbiAgICAgICAgdGhpcy5fZm9ybSA9IHZhbDtcbiAgICAgICAgdGhpcy5mb3Jtcy5wdXNoKHZhbCk7XG4gICAgICAgIHRoaXMuY3JlYXRlVmFsdWVzUmVmZXJlbmNlKHZhbCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBGb3JtKCk6IEZvcm1Nb2RlbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb3JtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZW4gYW55IGZvcm0gaXMgYmVpbmcgZWRpdGVkXG4gICAgICovXG4gICAgcHVibGljIEZvcm1Jc0RpcnR5OiBTdWJqZWN0PGJvb2xlYW4+O1xuXG4gICAgcHJvdGVjdGVkIGZvcm1zOiBBcnJheTxGb3JtTW9kZWw+O1xuXG4gICAgLyoqXG4gICAgICogU3RvcmFnZSByZWZlcmVuY2UgZm9yIGludGlhbCBmb3JtIHZhbHVlc1xuICAgICAqL1xuICAgIC8vIHB1YmxpYyBmb3Jtc0luaXRpYWxWYWx1ZXM6IEFycmF5PEZvcm1Nb2RlbD47XG4gICAgcHJvdGVjdGVkIHByZXZpb3VzRm9ybVZhbHVlczogQXJyYXk8Rm9ybVZhbHVlc01vZGVsPjtcblxuICAgIC8qKlxuICAgICAqIFxuICAgICAqIEBwYXJhbSB2YWwgYXMgc3RyaW5nIC0gZW5hYmxlZCBmb3JtIG5hbWVcbiAgICAgKiBAcGFyYW0gdmFsIGFzIGJvb2xlbiAtIGVuYWJsZS9kaXNhYmxlIGFsbCBmb3Jtc1xuICAgICAqIFxuICAgICAqIEVuYWJsZSAvIGRpc2FibGUgZm9ybXMsIHVzZSB0aGlzIHdoZW4gYSBmb3JtIGlzIGJlaW5nIGVkaXRlZCBhbmQgXG4gICAgICogYWxsIG90aGVyIGZvcm1zIG5lZWQgdG8gYmUgZGlzYWJsZWRcbiAgICAgKi9cbiAgICBwdWJsaWMgRGlzYWJsZUZvcm1zKHZhbDogc3RyaW5nIHwgYm9vbGVhbik6IHZvaWQge1xuXG4gICAgICAgIGNvbnN0IHByZXZlbnRFdmVudDoge29ubHlTZWxmOiBib29sZWFuLCBlbWl0RXZlbnQ6IGJvb2xlYW59ID0geyBvbmx5U2VsZjogdHJ1ZSwgZW1pdEV2ZW50OiBmYWxzZSB9O1xuXG4gICAgICAgIHRoaXMuZm9ybXMuZm9yRWFjaCgoZm9ybTogRm9ybU1vZGVsKSA9PiB7XG5cbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgICAgICB2YWwgPyBmb3JtLkZvcm0uZGlzYWJsZShwcmV2ZW50RXZlbnQpIDogZm9ybS5Gb3JtLmVuYWJsZShwcmV2ZW50RXZlbnQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoZm9ybS5JZCA9PT0gdmFsKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvcm0uRm9ybS5lbmFibGUocHJldmVudEV2ZW50KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBmb3JtLkZvcm0uZGlzYWJsZShwcmV2ZW50RXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGUgYSByZWZlcmVuY2Ugb2YgaW5pdGlhbCBmb3JtIGRhdGFcbiAgICAgKiBVc2UgdGhpcyB0byBjb21wYXJlIGlmIHZhbHVlcyByZWFsbHkgY2hhbmdlZCwgYmVjYXVzZVxuICAgICAqIHRoZSB1c2VyIGNvdWxkIGNoYW5nZSB2YWx1ZXMgYmFjayB0byB0aGUgb3JpZ2luYWxcbiAgICAgKlxuICAgICAqIEBwYXJhbSBvYmogZm9ybSBkYXRhXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVZhbHVlc1JlZmVyZW5jZSh2YWw6IEZvcm1Nb2RlbCk6IHZvaWQge1xuXG4gICAgICAgIC8vIGNvbnN0IHZhbHVlczogQXJyYXk8e2tleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nfT4gPSBbXTtcbiAgICAgICAgY29uc3Qga2V5VmFsdWVzOiBvYmplY3QgPSB7fTtcblxuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh2YWwuRm9ybS5jb250cm9scykpIHtcblxuICAgICAgICAgICAgLy8gdmFsdWVzLnB1c2goe2tleSwgdmFsdWU6IHZhbHVlLnZhbHVlfSk7XG4gICAgICAgICAgICBrZXlWYWx1ZXNba2V5XSA9IHZhbHVlLnZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gdGhpcy5mb3Jtc1ZhbHVlcy5wdXNoKG5ldyBGb3JtVmFsdWVzTW9kZWwodmFsLklkLCB2YWwuRm9ybS52YWx1ZSkpO1xuICAgICAgICB0aGlzLnByZXZpb3VzRm9ybVZhbHVlcy5wdXNoKG5ldyBGb3JtVmFsdWVzTW9kZWwodmFsLklkLCBrZXlWYWx1ZXMpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdmFsdWUgcmVmZXJlbmNlIGFmdGVyIHNhdmVzXG4gICAgICogXG4gICAgICogQHBhcmFtIHZhbCBmb3JtIG1vZGVsIHdpdGggdmFsdWVzXG4gICAgICovXG4gICAgcHVibGljIFVwZGF0ZVZhbHVlc1JlZmVyZW5jZSh2YWw6IEZvcm1Nb2RlbCk6IHZvaWQge1xuXG4gICAgICAgIGNvbnN0IGluZGV4OiBudW1iZXIgPSB0aGlzLnByZXZpb3VzRm9ybVZhbHVlcy5maW5kSW5kZXgoKHg6IEZvcm1WYWx1ZXNNb2RlbCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHguSWQgPT09IHZhbC5JZDtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5wcmV2aW91c0Zvcm1WYWx1ZXNbaW5kZXhdLlZhbHVlcyA9IHZhbC5Gb3JtLnZhbHVlO1xuXG4gICAgICAgIC8vIFRPRE86IGxvb2sgYXQgY29uc29saWRhdGluZyB1cGRhdGluZyB0aGlzLmZvcm1zIGFuZCB0aGlzLnByZXZpb3VzRm9ybVZhbHVlcyAtIHNoYW5ub24gKDctMTQtMjEpXG4gICAgICAgIGNvbnN0IGZvcm1JbmRleDogbnVtYmVyID0gdGhpcy5mb3Jtcy5maW5kSW5kZXgoKHg6IEZvcm1Nb2RlbCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHguSWQgPT09IHZhbC5JZDtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5mb3Jtc1tmb3JtSW5kZXhdID0gdmFsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlc2V0IGZvcm0gdmFsdWVzIGJhY2sgdG8gcHJldmlvdXMgXG4gICAgICogXG4gICAgICogQHBhcmFtIGlkIGZvcm0gaWRcbiAgICAgKi9cbiAgICBwdWJsaWMgUmVzZXRGb3JtVmFsdWVzKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3Jtcy5maW5kKChmb3JtOiBGb3JtTW9kZWwpID0+IHtcbiAgICAgICAgICAgIGlmIChmb3JtLklkID09PSBpZCkge1xuICAgICAgICAgICAgICAgIGZvcm0uRm9ybS5wYXRjaFZhbHVlKHRoaXMuR2V0UHJldmlvdXNGb3JtVmFsdWVzKGlkKS5WYWx1ZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBcbiAgICAgKiBAcGFyYW0gaWQgZm9ybSBpZCB0byBzZWFyY2ggZm9yXG4gICAgICpcbiAgICAgKiBAcmV0dXJucyBwcmV2aW91cyBmb3JtIHZhbHVlc1xuICAgICAqL1xuICAgIHB1YmxpYyBHZXRQcmV2aW91c0Zvcm1WYWx1ZXMoaWQ6IHN0cmluZyk6IEZvcm1WYWx1ZXNNb2RlbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnByZXZpb3VzRm9ybVZhbHVlcy5maW5kKCh4OiBGb3JtVmFsdWVzTW9kZWwpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB4LklkID09PSBpZDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2sgZm9yIGFjdHVhbCBmb3JtIGNoYW5nZXMsIGJlY2F1c2UgdGhlIHVzZXJcbiAgICAgKiBjb3VsZCBoYXZlIGNhbmNlbGVkIG9yIGNoYW5nZWQgdGhlIHZhbHVlIGJhY2sgdG8gdGhlXG4gICAgICogb3JpZ2luYWxcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpZCBmb3JtIGlkXG4gICAgICogQHBhcmFtIGZvcm1Ub0NoZWNrIGZvcm0gdG8gYmUgdGVzdGVkXG4gICAgICovXG4gICAgcHVibGljIEZvclJlYWxUaG91Z2goaWQ6IHN0cmluZywgZm9ybVRvQ2hlY2s6IEZvcm1Hcm91cCk6IGJvb2xlYW4ge1xuXG4gICAgICAgIGNvbnN0IGZvcm1WYWxzOiBGb3JtVmFsdWVzTW9kZWwgPSB0aGlzLnByZXZpb3VzRm9ybVZhbHVlcy5maW5kKCh4OiBGb3JtVmFsdWVzTW9kZWwpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB4LklkID09PSBpZDtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gZm9ybVRvQ2hlY2suY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmIChmb3JtVG9DaGVjay5jb250cm9sc1trZXldLnZhbHVlICE9PSBmb3JtVmFscy5WYWx1ZXNba2V5XSkge1xuICAgICAgICAgICAgICAgIHRoaXMuRm9ybUlzRGlydHkubmV4dCh0cnVlKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuRm9ybUlzRGlydHkubmV4dChmYWxzZSk7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5mb3JtcyA9IFtdO1xuICAgICAgICB0aGlzLnByZXZpb3VzRm9ybVZhbHVlcyA9IFtdO1xuICAgICAgICB0aGlzLkZvcm1Jc0RpcnR5ID0gbmV3IFN1YmplY3QoKTtcbiAgICB9XG59XG4iXX0=