@lowcodeunit/applications-flow-common 1.33.131-lets-get-social-ish → 1.33.134-angular-13

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 (257) hide show
  1. package/esm2020/lcu.api.mjs +53 -0
  2. package/esm2020/lib/applications-flow.module.mjs +248 -0
  3. package/esm2020/lib/elements/analytics-card/analytics-card.component.mjs +28 -0
  4. package/esm2020/lib/elements/base-form/base-form.component.mjs +57 -0
  5. package/esm2020/lib/elements/column-info-card/column-info-card.component.mjs +50 -0
  6. package/esm2020/lib/elements/dynamic-tabs/dynamic-tabs.component.mjs +74 -0
  7. package/esm2020/lib/elements/feed-card-sm/feed-card-sm.component.mjs +40 -0
  8. package/esm2020/lib/elements/flow-tool/flow-tool.component.mjs +77 -0
  9. package/esm2020/lib/elements/form-card/form-card.component.mjs +33 -0
  10. package/esm2020/lib/elements/gh-control/gh-control.component.mjs +78 -0
  11. package/esm2020/lib/elements/main-feed-card/main-feed-card.component.mjs +34 -0
  12. package/esm2020/lib/elements/project-info-card/project-info-card.component.mjs +46 -0
  13. package/esm2020/lib/elements/projects/controls/builds/builds.component.mjs +35 -0
  14. package/esm2020/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.mjs +145 -0
  15. package/esm2020/lib/elements/projects/controls/forms/source-control/source-control.component.mjs +287 -0
  16. package/esm2020/lib/elements/projects/controls/git-auth/git-auth.component.mjs +26 -0
  17. package/esm2020/lib/elements/projects/controls/header/header.component.mjs +83 -0
  18. package/esm2020/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.mjs +118 -0
  19. package/esm2020/lib/elements/projects/controls/project-items/project-items.component.mjs +54 -0
  20. package/esm2020/lib/elements/projects/controls/project-tabs/project-tabs.component.mjs +103 -0
  21. package/esm2020/lib/elements/projects/controls/recent-activities/recent-activities.component.mjs +14 -0
  22. package/esm2020/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.mjs +563 -0
  23. package/esm2020/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.mjs +72 -0
  24. package/esm2020/lib/elements/projects/controls/tabs/devops/devops.component.mjs +242 -0
  25. package/esm2020/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.mjs +179 -0
  26. package/esm2020/lib/elements/projects/controls/tabs/domains/domains.component.mjs +137 -0
  27. package/esm2020/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.mjs +90 -0
  28. package/esm2020/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.mjs +142 -0
  29. package/esm2020/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.mjs +124 -0
  30. package/esm2020/lib/elements/projects/controls/tabs/general/general.component.mjs +40 -0
  31. package/esm2020/lib/elements/projects/projects.component.mjs +219 -0
  32. package/esm2020/lib/elements/slotted-card/slotted-card.component.mjs +40 -0
  33. package/esm2020/lib/elements/three-column/three-column.component.mjs +30 -0
  34. package/esm2020/lib/elements/two-column-header/two-column-header.component.mjs +15 -0
  35. package/esm2020/lib/models/actions.model.mjs +3 -0
  36. package/esm2020/lib/models/base-form-config.model.mjs +6 -0
  37. package/esm2020/lib/models/card-form-config.model.mjs +6 -0
  38. package/esm2020/lib/models/card-slot.model.mjs +3 -0
  39. package/esm2020/lib/models/dev-settings-preset.model.mjs +3 -0
  40. package/esm2020/lib/models/domain.model.mjs +3 -0
  41. package/esm2020/lib/models/dynamic-tabs.model.mjs +6 -0
  42. package/esm2020/lib/models/form-actions.model.mjs +3 -0
  43. package/esm2020/lib/models/form.model.mjs +6 -0
  44. package/esm2020/lib/models/form.values.model.mjs +11 -0
  45. package/esm2020/lib/models/project-actions.model.mjs +6 -0
  46. package/esm2020/lib/models/slot-action.model.mjs +3 -0
  47. package/esm2020/lib/services/applications-flow-events.service.mjs +84 -0
  48. package/esm2020/lib/services/applications-flow.service.mjs +132 -0
  49. package/esm2020/lib/services/forms.service.mjs +132 -0
  50. package/esm2020/lib/services/npm.service.mjs +77 -0
  51. package/esm2020/lib/services/project.service.mjs +303 -0
  52. package/esm2020/lib/state/applications-flow-state.context.mjs +36 -0
  53. package/esm2020/lib/state/applications-flow.state.mjs +72 -0
  54. package/esm2020/lowcodeunit-applications-flow-common.mjs +5 -0
  55. package/fesm2015/lowcodeunit-applications-flow-common.mjs +4108 -0
  56. package/fesm2015/lowcodeunit-applications-flow-common.mjs.map +1 -0
  57. package/fesm2020/lowcodeunit-applications-flow-common.mjs +4052 -0
  58. package/fesm2020/lowcodeunit-applications-flow-common.mjs.map +1 -0
  59. package/lcu.api.d.ts +28 -3
  60. package/lib/applications-flow.module.d.ts +39 -1
  61. package/lib/elements/analytics-card/analytics-card.component.d.ts +3 -1
  62. package/lib/elements/base-form/base-form.component.d.ts +6 -4
  63. package/lib/elements/column-info-card/column-info-card.component.d.ts +3 -1
  64. package/lib/elements/dynamic-tabs/dynamic-tabs.component.d.ts +3 -1
  65. package/lib/elements/feed-card-sm/feed-card-sm.component.d.ts +3 -1
  66. package/lib/elements/flow-tool/flow-tool.component.d.ts +30 -0
  67. package/lib/elements/form-card/form-card.component.d.ts +3 -1
  68. package/lib/elements/gh-control/gh-control.component.d.ts +3 -1
  69. package/lib/elements/main-feed-card/main-feed-card.component.d.ts +3 -1
  70. package/lib/elements/project-info-card/project-info-card.component.d.ts +3 -1
  71. package/lib/elements/projects/controls/builds/builds.component.d.ts +6 -2
  72. package/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.d.ts +6 -4
  73. package/lib/elements/projects/controls/forms/source-control/source-control.component.d.ts +6 -2
  74. package/lib/elements/projects/controls/git-auth/git-auth.component.d.ts +3 -1
  75. package/lib/elements/projects/controls/header/header.component.d.ts +6 -4
  76. package/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.d.ts +3 -1
  77. package/lib/elements/projects/controls/project-items/project-items.component.d.ts +6 -4
  78. package/lib/elements/projects/controls/project-tabs/project-tabs.component.d.ts +3 -1
  79. package/lib/elements/projects/controls/recent-activities/recent-activities.component.d.ts +3 -1
  80. package/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.d.ts +6 -4
  81. package/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.d.ts +3 -1
  82. package/lib/elements/projects/controls/tabs/devops/devops.component.d.ts +6 -4
  83. package/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.d.ts +6 -4
  84. package/lib/elements/projects/controls/tabs/domains/domains.component.d.ts +6 -4
  85. package/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.d.ts +6 -4
  86. package/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.d.ts +6 -4
  87. package/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.d.ts +6 -4
  88. package/lib/elements/projects/controls/tabs/general/general.component.d.ts +3 -1
  89. package/lib/elements/projects/projects.component.d.ts +14 -5
  90. package/lib/elements/slotted-card/slotted-card.component.d.ts +5 -4
  91. package/lib/elements/three-column/three-column.component.d.ts +3 -1
  92. package/lib/elements/two-column-header/two-column-header.component.d.ts +3 -1
  93. package/lib/models/actions.model.d.ts +0 -1
  94. package/lib/models/base-form-config.model.d.ts +0 -1
  95. package/lib/models/card-form-config.model.d.ts +0 -1
  96. package/lib/models/card-slot.model.d.ts +0 -1
  97. package/lib/models/dev-settings-preset.model.d.ts +0 -1
  98. package/lib/models/domain.model.d.ts +0 -1
  99. package/lib/models/dynamic-tabs.model.d.ts +0 -1
  100. package/lib/models/form-actions.model.d.ts +0 -1
  101. package/lib/models/form.model.d.ts +0 -1
  102. package/lib/models/form.values.model.d.ts +0 -1
  103. package/lib/models/project-actions.model.d.ts +0 -1
  104. package/lib/models/slot-action.model.d.ts +0 -1
  105. package/lib/services/applications-flow-events.service.d.ts +60 -0
  106. package/lib/services/applications-flow.service.d.ts +3 -3
  107. package/lib/services/forms.service.d.ts +3 -1
  108. package/lib/services/npm.service.d.ts +3 -1
  109. package/lib/services/project.service.d.ts +3 -1
  110. package/lib/state/applications-flow-state.context.d.ts +3 -1
  111. package/lib/state/applications-flow.state.d.ts +0 -1
  112. package/lowcodeunit-applications-flow-common.d.ts +1 -34
  113. package/package.json +20 -12
  114. package/bundles/lowcodeunit-applications-flow-common.umd.js +0 -6867
  115. package/bundles/lowcodeunit-applications-flow-common.umd.js.map +0 -1
  116. package/bundles/lowcodeunit-applications-flow-common.umd.min.js +0 -16
  117. package/bundles/lowcodeunit-applications-flow-common.umd.min.js.map +0 -1
  118. package/esm2015/lcu.api.js +0 -27
  119. package/esm2015/lib/applications-flow.module.js +0 -212
  120. package/esm2015/lib/controls/build-pipeline-form/build-pipeline-form.component.js +0 -213
  121. package/esm2015/lib/controls/devops-source-control-form/devops-source-control-form.component.js +0 -412
  122. package/esm2015/lib/controls/edit-application-form/edit-application-form.component.js +0 -60
  123. package/esm2015/lib/controls/processor-details-form/processor-details-form.component.js +0 -321
  124. package/esm2015/lib/controls/security-toggle/security-toggle.component.js +0 -50
  125. package/esm2015/lib/controls/source-control-form/source-control-form.component.js +0 -61
  126. package/esm2015/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.js +0 -25
  127. package/esm2015/lib/dialogs/source-control-dialog/source-control-dialog.component.js +0 -25
  128. package/esm2015/lib/elements/analytics-card/analytics-card.component.js +0 -21
  129. package/esm2015/lib/elements/base-form/base-form.component.js +0 -61
  130. package/esm2015/lib/elements/breadcrumb/breadcrumb.component.js +0 -115
  131. package/esm2015/lib/elements/card-carousel/card-carousel.component.js +0 -67
  132. package/esm2015/lib/elements/column-info-card/column-info-card.component.js +0 -31
  133. package/esm2015/lib/elements/dynamic-tabs/dynamic-tabs.component.js +0 -69
  134. package/esm2015/lib/elements/feed-card-sm/feed-card-sm.component.js +0 -31
  135. package/esm2015/lib/elements/form-card/form-card.component.js +0 -22
  136. package/esm2015/lib/elements/gh-control/gh-control.component.js +0 -72
  137. package/esm2015/lib/elements/main-feed-card/main-feed-card.component.js +0 -24
  138. package/esm2015/lib/elements/project-info-card/project-info-card.component.js +0 -32
  139. package/esm2015/lib/elements/projects/controls/builds/builds.component.js +0 -26
  140. package/esm2015/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.js +0 -145
  141. package/esm2015/lib/elements/projects/controls/forms/source-control/source-control.component.js +0 -262
  142. package/esm2015/lib/elements/projects/controls/git-auth/git-auth.component.js +0 -25
  143. package/esm2015/lib/elements/projects/controls/header/header.component.js +0 -75
  144. package/esm2015/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.js +0 -102
  145. package/esm2015/lib/elements/projects/controls/project-items/project-items.component.js +0 -49
  146. package/esm2015/lib/elements/projects/controls/project-tabs/project-tabs.component.js +0 -91
  147. package/esm2015/lib/elements/projects/controls/recent-activities/recent-activities.component.js +0 -15
  148. package/esm2015/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.js +0 -590
  149. package/esm2015/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.js +0 -62
  150. package/esm2015/lib/elements/projects/controls/tabs/devops/devops.component.js +0 -202
  151. package/esm2015/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.js +0 -178
  152. package/esm2015/lib/elements/projects/controls/tabs/domains/domains.component.js +0 -133
  153. package/esm2015/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.js +0 -86
  154. package/esm2015/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.js +0 -129
  155. package/esm2015/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.js +0 -113
  156. package/esm2015/lib/elements/projects/controls/tabs/general/general.component.js +0 -46
  157. package/esm2015/lib/elements/projects/projects.component.js +0 -99
  158. package/esm2015/lib/elements/slotted-card/slotted-card.component.js +0 -29
  159. package/esm2015/lib/elements/three-column/three-column.component.js +0 -32
  160. package/esm2015/lib/elements/two-column-header/two-column-header.component.js +0 -15
  161. package/esm2015/lib/models/actions.model.js +0 -3
  162. package/esm2015/lib/models/base-form-config.model.js +0 -6
  163. package/esm2015/lib/models/card-form-config.model.js +0 -6
  164. package/esm2015/lib/models/card-slot.model.js +0 -3
  165. package/esm2015/lib/models/dev-settings-preset.model.js +0 -3
  166. package/esm2015/lib/models/domain.model.js +0 -3
  167. package/esm2015/lib/models/dynamic-tabs.model.js +0 -6
  168. package/esm2015/lib/models/form-actions.model.js +0 -3
  169. package/esm2015/lib/models/form.model.js +0 -6
  170. package/esm2015/lib/models/form.values.model.js +0 -11
  171. package/esm2015/lib/models/project-actions.model.js +0 -6
  172. package/esm2015/lib/models/slot-action.model.js +0 -3
  173. package/esm2015/lib/services/applications-flow.service.js +0 -144
  174. package/esm2015/lib/services/eac.service.js +0 -218
  175. package/esm2015/lib/services/forms.service.js +0 -131
  176. package/esm2015/lib/services/npm.service.js +0 -79
  177. package/esm2015/lib/services/project.service.js +0 -318
  178. package/esm2015/lib/state/applications-flow-state.context.js +0 -37
  179. package/esm2015/lib/state/applications-flow.state.js +0 -72
  180. package/esm2015/lowcodeunit-applications-flow-common.js +0 -38
  181. package/fesm2015/lowcodeunit-applications-flow-common.js +0 -5286
  182. package/fesm2015/lowcodeunit-applications-flow-common.js.map +0 -1
  183. package/lcu.api.d.ts.map +0 -1
  184. package/lib/applications-flow.module.d.ts.map +0 -1
  185. package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts +0 -43
  186. package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts.map +0 -1
  187. package/lib/controls/devops-source-control-form/devops-source-control-form.component.d.ts +0 -81
  188. package/lib/controls/devops-source-control-form/devops-source-control-form.component.d.ts.map +0 -1
  189. package/lib/controls/edit-application-form/edit-application-form.component.d.ts +0 -17
  190. package/lib/controls/edit-application-form/edit-application-form.component.d.ts.map +0 -1
  191. package/lib/controls/processor-details-form/processor-details-form.component.d.ts +0 -65
  192. package/lib/controls/processor-details-form/processor-details-form.component.d.ts.map +0 -1
  193. package/lib/controls/security-toggle/security-toggle.component.d.ts +0 -18
  194. package/lib/controls/security-toggle/security-toggle.component.d.ts.map +0 -1
  195. package/lib/controls/source-control-form/source-control-form.component.d.ts +0 -25
  196. package/lib/controls/source-control-form/source-control-form.component.d.ts.map +0 -1
  197. package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts +0 -16
  198. package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts.map +0 -1
  199. package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts +0 -16
  200. package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts.map +0 -1
  201. package/lib/elements/analytics-card/analytics-card.component.d.ts.map +0 -1
  202. package/lib/elements/base-form/base-form.component.d.ts.map +0 -1
  203. package/lib/elements/breadcrumb/breadcrumb.component.d.ts +0 -33
  204. package/lib/elements/breadcrumb/breadcrumb.component.d.ts.map +0 -1
  205. package/lib/elements/card-carousel/card-carousel.component.d.ts +0 -14
  206. package/lib/elements/card-carousel/card-carousel.component.d.ts.map +0 -1
  207. package/lib/elements/column-info-card/column-info-card.component.d.ts.map +0 -1
  208. package/lib/elements/dynamic-tabs/dynamic-tabs.component.d.ts.map +0 -1
  209. package/lib/elements/feed-card-sm/feed-card-sm.component.d.ts.map +0 -1
  210. package/lib/elements/form-card/form-card.component.d.ts.map +0 -1
  211. package/lib/elements/gh-control/gh-control.component.d.ts.map +0 -1
  212. package/lib/elements/main-feed-card/main-feed-card.component.d.ts.map +0 -1
  213. package/lib/elements/project-info-card/project-info-card.component.d.ts.map +0 -1
  214. package/lib/elements/projects/controls/builds/builds.component.d.ts.map +0 -1
  215. package/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.d.ts.map +0 -1
  216. package/lib/elements/projects/controls/forms/source-control/source-control.component.d.ts.map +0 -1
  217. package/lib/elements/projects/controls/git-auth/git-auth.component.d.ts.map +0 -1
  218. package/lib/elements/projects/controls/header/header.component.d.ts.map +0 -1
  219. package/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.d.ts.map +0 -1
  220. package/lib/elements/projects/controls/project-items/project-items.component.d.ts.map +0 -1
  221. package/lib/elements/projects/controls/project-tabs/project-tabs.component.d.ts.map +0 -1
  222. package/lib/elements/projects/controls/recent-activities/recent-activities.component.d.ts.map +0 -1
  223. package/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.d.ts.map +0 -1
  224. package/lib/elements/projects/controls/tabs/apps-flow/npm-package-select/npm-package-select.component.d.ts.map +0 -1
  225. package/lib/elements/projects/controls/tabs/devops/devops.component.d.ts.map +0 -1
  226. package/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.d.ts.map +0 -1
  227. package/lib/elements/projects/controls/tabs/domains/domains.component.d.ts.map +0 -1
  228. package/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.d.ts.map +0 -1
  229. package/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.d.ts.map +0 -1
  230. package/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.d.ts.map +0 -1
  231. package/lib/elements/projects/controls/tabs/general/general.component.d.ts.map +0 -1
  232. package/lib/elements/projects/projects.component.d.ts.map +0 -1
  233. package/lib/elements/slotted-card/slotted-card.component.d.ts.map +0 -1
  234. package/lib/elements/three-column/three-column.component.d.ts.map +0 -1
  235. package/lib/elements/two-column-header/two-column-header.component.d.ts.map +0 -1
  236. package/lib/models/actions.model.d.ts.map +0 -1
  237. package/lib/models/base-form-config.model.d.ts.map +0 -1
  238. package/lib/models/card-form-config.model.d.ts.map +0 -1
  239. package/lib/models/card-slot.model.d.ts.map +0 -1
  240. package/lib/models/dev-settings-preset.model.d.ts.map +0 -1
  241. package/lib/models/domain.model.d.ts.map +0 -1
  242. package/lib/models/dynamic-tabs.model.d.ts.map +0 -1
  243. package/lib/models/form-actions.model.d.ts.map +0 -1
  244. package/lib/models/form.model.d.ts.map +0 -1
  245. package/lib/models/form.values.model.d.ts.map +0 -1
  246. package/lib/models/project-actions.model.d.ts.map +0 -1
  247. package/lib/models/slot-action.model.d.ts.map +0 -1
  248. package/lib/services/applications-flow.service.d.ts.map +0 -1
  249. package/lib/services/eac.service.d.ts +0 -54
  250. package/lib/services/eac.service.d.ts.map +0 -1
  251. package/lib/services/forms.service.d.ts.map +0 -1
  252. package/lib/services/npm.service.d.ts.map +0 -1
  253. package/lib/services/project.service.d.ts.map +0 -1
  254. package/lib/state/applications-flow-state.context.d.ts.map +0 -1
  255. package/lib/state/applications-flow.state.d.ts.map +0 -1
  256. package/lowcodeunit-applications-flow-common.d.ts.map +0 -1
  257. package/lowcodeunit-applications-flow-common.metadata.json +0 -1
@@ -1,144 +0,0 @@
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
- }
129
- // Helpers
130
- loadHeaders() {
131
- return {};
132
- }
133
- }
134
- ApplicationsFlowService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ApplicationsFlowService_Factory() { return new ApplicationsFlowService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.LCUServiceSettings)); }, token: ApplicationsFlowService, providedIn: "root" });
135
- ApplicationsFlowService.decorators = [
136
- { type: Injectable, args: [{
137
- providedIn: 'root',
138
- },] }
139
- ];
140
- ApplicationsFlowService.ctorParameters = () => [
141
- { type: HttpClient },
142
- { type: LCUServiceSettings }
143
- ];
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb25zLWZsb3cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9hcHBsaWNhdGlvbnMtZmxvdy9hcHBsaWNhdGlvbnMtZmxvdy9wcm9qZWN0cy9jb21tb24vc3JjLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2FwcGxpY2F0aW9ucy1mbG93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7O0FBVWpELE1BQU0sT0FBTyx1QkFBdUI7SUFJbEMsY0FBYztJQUVkLGVBQWU7SUFDZixZQUNZLElBQWdCLEVBQ2hCLFFBQTRCO1FBRDVCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBb0I7UUFFdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxjQUFjO0lBQ1AscUJBQXFCLENBQUMsWUFBb0I7UUFDL0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDbkIsR0FBRyxJQUFJLENBQUMsT0FBTywwQ0FBMEMsWUFBWSxZQUFZLEVBQ2pGLEVBQUUsRUFDRjtZQUNFLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO1NBQzVCLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTSxnQkFBZ0IsQ0FDckIsWUFBb0IsRUFDcEIsUUFBZ0I7UUFFaEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDbkIsR0FBRyxJQUFJLENBQUMsT0FBTyx5Q0FBeUMsWUFBWSxlQUFlLEVBQ25GO1lBQ0UsSUFBSSxFQUFFLFFBQVE7U0FDZixFQUNEO1lBQ0UsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFX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aHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTENVU2VydmljZVNldHRpbmdzIH0gZnJvbSAnQGxjdS9jb21tb24nO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEVudGVycHJpc2VBc0NvZGUgfSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIFVucGFja0xvd0NvZGVVbml0UmVxdWVzdCxcclxufSBmcm9tICcuLi9zdGF0ZS9hcHBsaWNhdGlvbnMtZmxvdy5zdGF0ZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXBwbGljYXRpb25zRmxvd1NlcnZpY2Uge1xyXG4gIC8vICBGaWVsZHNcclxuICBwcm90ZWN0ZWQgYXBpUm9vdDogc3RyaW5nO1xyXG5cclxuICAvLyAgUHJvcGVydGllc1xyXG5cclxuICAvLyBDb25zdHJ1Y3RvcnNcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzOiBMQ1VTZXJ2aWNlU2V0dGluZ3NcclxuICApIHtcclxuICAgIHRoaXMuYXBpUm9vdCA9IHNldHRpbmdzLkFQSVJvb3Q7XHJcbiAgfVxyXG5cclxuICAvLyBBUEkgTWV0aG9kc1xyXG4gIHB1YmxpYyBDb25maWd1cmVEZXZPcHNBY3Rpb24oYWN0aW9uTG9va3VwOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZGV2b3BzL2FjdGlvbnMvJHthY3Rpb25Mb29rdXB9L2NvbmZpZ3VyZWAsXHJcbiAgICAgIHt9LFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIENyZWF0ZVJlcG9zaXRvcnkoXHJcbiAgICBvcmdhbml6YXRpb246IHN0cmluZyxcclxuICAgIHJlcG9OYW1lOiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9naXRodWIvb3JnYW5pemF0aW9ucy8ke29yZ2FuaXphdGlvbn0vcmVwb3NpdG9yaWVzYCxcclxuICAgICAge1xyXG4gICAgICAgIE5hbWU6IHJlcG9OYW1lLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZUFwcGxpY2F0aW9uKGFwcExvb2t1cDogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvYXBwbGljYXRpb25zLyR7YXBwTG9va3VwfWAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRGVsZXRlRGV2T3BzQWN0aW9uKGRvYUxvb2t1cDogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZGV2b3BzLWFjdGlvbnMvJHtkb2FMb29rdXB9YCxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBEZWxldGVQcm9qZWN0KHByb2plY3RMb29rdXA6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL3Byb2plY3RzLyR7cHJvamVjdExvb2t1cH1gLFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIERlbGV0ZVNvdXJjZUNvbnRyb2woc2NMb29rdXA6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL3NvdXJjZS1jb250cm9scy8ke3NjTG9va3VwfWAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgRW5zdXJlVXNlckVudGVycHJpc2UoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvbWFuYWdlL2VudGVycHJpc2UvZW5zdXJlYCxcclxuICAgICAge30sXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgR2V0QWN0aXZlRW50ZXJwcmlzZSgpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9lbnRlcnByaXNlcy9hY3RpdmVgLFxyXG4gICAgICB7XHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgICB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIEhhc1ZhbGlkQ29ubmVjdGlvbigpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L2dpdGh1Yi9jb25uZWN0aW9uL3ZhbGlkYCxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMaXN0UHJvamVjdHMoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9wcm9qZWN0c2AsIHtcclxuICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdEJyYW5jaGVzKFxyXG4gICAgb3JnYW5pemF0aW9uOiBzdHJpbmcsXHJcbiAgICByZXBvc2l0b3J5OiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L2dpdGh1Yi9vcmdhbml6YXRpb25zLyR7b3JnYW5pemF0aW9ufS9yZXBvc2l0b3JpZXMvJHtyZXBvc2l0b3J5fS9icmFuY2hlc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdEJ1aWxkUGF0aHMoXHJcbiAgICBvcmdhbml6YXRpb246IHN0cmluZyxcclxuICAgIHJlcG9zaXRvcnk6IHN0cmluZyxcclxuICAgIGJyYW5jaDogc3RyaW5nID0gJydcclxuICApOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L2dpdGh1Yi9vcmdhbml6YXRpb25zLyR7b3JnYW5pemF0aW9ufS9yZXBvc2l0b3JpZXMvJHtyZXBvc2l0b3J5fS9idWlsZC1wYXRocz9icmFuY2g9JHticmFuY2h9YCxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBMaXN0RW50ZXJwcmlzZXMoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZW50ZXJwcmlzZXMvbGlzdGAsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdE9yZ2FuaXphdGlvbnMoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9naXRodWIvb3JnYW5pemF0aW9uc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTGlzdFJlcG9zaXRvcmllcyhvcmdhbml6YXRpb246IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChcclxuICAgICAgYCR7dGhpcy5hcGlSb290fS9hcGkvbG93Y29kZXVuaXQvZ2l0aHViL29yZ2FuaXphdGlvbnMvJHtvcmdhbml6YXRpb259L3JlcG9zaXRvcmllc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTG9hZEVudGVycHJpc2VBc0NvZGUoKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9lYWNgLCB7XHJcbiAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIExvYWRQcm9qZWN0SG9zdGluZ0RldGFpbHMoXHJcbiAgICBvcmdhbml6YXRpb246IHN0cmluZyxcclxuICAgIHJlcG9zaXRvcnk6IHN0cmluZyxcclxuICAgIGJyYW5jaDogc3RyaW5nXHJcbiAgKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIGJyYW5jaCA9IGVuY29kZVVSSUNvbXBvbmVudChicmFuY2gpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvcHJvamVjdHMvb3JnYW5pemF0aW9ucy8ke29yZ2FuaXphdGlvbn0vcmVwb3NpdG9yaWVzLyR7cmVwb3NpdG9yeX0vYnJhbmNoZXMvJHticmFuY2h9L2hvc3RpbmcvZGV0YWlsc2AsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgTmV3TG9hZFByb2plY3RIb3N0aW5nRGV0YWlscygpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoXHJcblxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvcHJvamVjdHMvaG9zdGluZy9kZXRhaWxzYCxcclxuXHJcbiAgICAgIHtcclxuXHJcbiAgICAgICAgaGVhZGVyczogdGhpcy5sb2FkSGVhZGVycygpLFxyXG5cclxuICAgICAgfVxyXG5cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgU2F2ZUVudGVycHJpc2VBc0NvZGUoZWFjOiBFbnRlcnByaXNlQXNDb2RlKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZWFjYCwgZWFjLCB7XHJcbiAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIFNldEFjdGl2ZUVudGVycHJpc2UoYWN0aXZlRW50TG9va3VwOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC9tYW5hZ2UvZW50ZXJwcmlzZXMvYWN0aXZlYCxcclxuICAgICAge1xyXG4gICAgICAgIEFjdGl2ZUVudGVycHJpc2VMb29rdXA6IGFjdGl2ZUVudExvb2t1cCxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIGhlYWRlcnM6IHRoaXMubG9hZEhlYWRlcnMoKSxcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBVbnBhY2tMb3dDb2RlVW5pdChyZXE6IFVucGFja0xvd0NvZGVVbml0UmVxdWVzdCk6IE9ic2VydmFibGU8b2JqZWN0PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoXHJcbiAgICAgIGAke3RoaXMuYXBpUm9vdH0vYXBpL2xvd2NvZGV1bml0L21hbmFnZS9wcm9qZWN0cy91bnBhY2tgLFxyXG4gICAgICByZXEsXHJcbiAgICAgIHtcclxuICAgICAgICBoZWFkZXJzOiB0aGlzLmxvYWRIZWFkZXJzKCksXHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgVXNlckZlZWQocGFnZTogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KFxyXG4gICAgICBgJHt0aGlzLmFwaVJvb3R9L2FwaS9sb3djb2RldW5pdC91c2VyZmVlZD9wYWdlPSR7cGFnZX0mcGFnZVNpemU9JHtwYWdlU2l6ZX1gLFxyXG4gICAgICB7fSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvLyAgSGVscGVyc1xyXG4gIHByb3RlY3RlZCBsb2FkSGVhZGVycygpOiB7IFtoZWFkZXI6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIH0ge1xyXG4gICAgcmV0dXJuIHt9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,218 +0,0 @@
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==
@@ -1,131 +0,0 @@
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=