@lowcodeunit/applications-flow-common 1.34.59-krakyn-app → 1.34.62-lets-get-social-ish

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 (21) hide show
  1. package/esm2020/lib/controls/dfs-modifiers-form/dfs-modifiers-form.component.mjs +4 -2
  2. package/esm2020/lib/controls/security-toggle/security-toggle.component.mjs +2 -2
  3. package/esm2020/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.mjs +9 -9
  4. package/esm2020/lib/dialogs/source-control-dialog/source-control-dialog.component.mjs +12 -12
  5. package/esm2020/lib/elements/main-feed-card/main-feed-card.component.mjs +3 -4
  6. package/esm2020/lib/elements/projects/controls/project-items/project-items.component.mjs +4 -2
  7. package/esm2020/lib/elements/projects/controls/tabs/devops/devops.component.mjs +4 -6
  8. package/esm2020/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.mjs +4 -2
  9. package/esm2020/lib/services/applications-flow.service.mjs +22 -2
  10. package/esm2020/lib/services/eac.service.mjs +13 -53
  11. package/esm2020/lib/services/project.service.mjs +81 -1
  12. package/fesm2015/lowcodeunit-applications-flow-common.mjs +150 -87
  13. package/fesm2015/lowcodeunit-applications-flow-common.mjs.map +1 -1
  14. package/fesm2020/lowcodeunit-applications-flow-common.mjs +148 -85
  15. package/fesm2020/lowcodeunit-applications-flow-common.mjs.map +1 -1
  16. package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts +1 -2
  17. package/lib/elements/main-feed-card/main-feed-card.component.d.ts +1 -1
  18. package/lib/services/applications-flow.service.d.ts +4 -0
  19. package/lib/services/eac.service.d.ts +4 -5
  20. package/lib/services/project.service.d.ts +4 -0
  21. package/package.json +1 -1
@@ -209,13 +209,33 @@ class ApplicationsFlowService {
209
209
  headers: this.loadHeaders(),
210
210
  });
211
211
  }
212
+ DeleteApplication(appLookup) {
213
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/applications/${appLookup}`, {
214
+ headers: this.loadHeaders(),
215
+ });
216
+ }
217
+ DeleteDevOpsAction(doaLookup) {
218
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/devops-actions/${doaLookup}`, {
219
+ headers: this.loadHeaders(),
220
+ });
221
+ }
222
+ DeleteProject(projectLookup) {
223
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/projects/${projectLookup}`, {
224
+ headers: this.loadHeaders(),
225
+ });
226
+ }
227
+ DeleteSourceControl(scLookup) {
228
+ return this.http.delete(`${this.apiRoot}/api/lowcodeunit/manage/source-controls/${scLookup}`, {
229
+ headers: this.loadHeaders(),
230
+ });
231
+ }
212
232
  EnsureUserEnterprise() {
213
233
  return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/enterprise/ensure`, {}, {
214
234
  headers: this.loadHeaders(),
215
235
  });
216
236
  }
217
237
  EnterpriseAsCodeRemovals(removals) {
218
- return this.http.post(`${this.apiRoot}/api/lowcodeunit/removals/eac`, removals, {
238
+ return this.http.post(`${this.apiRoot}/api/lowcodeunit/manage/eac`, {
219
239
  headers: this.loadHeaders(),
220
240
  });
221
241
  }
@@ -343,6 +363,88 @@ class ProjectService {
343
363
  // }
344
364
  // });
345
365
  // }
366
+ DeleteApplication(state, appLookup) {
367
+ return __awaiter(this, void 0, void 0, function* () {
368
+ return new Promise((resolve, reject) => {
369
+ state.Loading = true;
370
+ this.appsFlowSvc.DeleteApplication(appLookup).subscribe((response) => __awaiter(this, void 0, void 0, function* () {
371
+ if (response.Status.Code === 0) {
372
+ const eac = yield this.LoadEnterpriseAsCode(state);
373
+ resolve(eac);
374
+ }
375
+ else {
376
+ state.Loading = false;
377
+ reject(response.Status);
378
+ console.log(response);
379
+ }
380
+ }), (err) => {
381
+ state.Loading = false;
382
+ reject(err);
383
+ console.log(err);
384
+ });
385
+ });
386
+ });
387
+ }
388
+ DeleteDevOpsAction(state, doaLookup) {
389
+ return new Promise((resolve, reject) => {
390
+ state.Loading = true;
391
+ this.appsFlowSvc.DeleteDevOpsAction(doaLookup).subscribe((response) => __awaiter(this, void 0, void 0, function* () {
392
+ if (response.Status.Code === 0) {
393
+ const eac = yield this.LoadEnterpriseAsCode(state);
394
+ resolve(eac);
395
+ }
396
+ else {
397
+ state.Loading = false;
398
+ reject(response.Status);
399
+ console.log(response);
400
+ }
401
+ }), (err) => {
402
+ state.Loading = false;
403
+ reject(err);
404
+ console.log(err);
405
+ });
406
+ });
407
+ }
408
+ DeleteProject(state, projectLookup) {
409
+ return new Promise((resolve, reject) => {
410
+ state.Loading = true;
411
+ this.appsFlowSvc.DeleteProject(projectLookup).subscribe((response) => __awaiter(this, void 0, void 0, function* () {
412
+ if (response.Status.Code === 0) {
413
+ const eac = yield this.LoadEnterpriseAsCode(state);
414
+ resolve(eac);
415
+ }
416
+ else {
417
+ state.Loading = false;
418
+ reject(response.Status);
419
+ console.log(response);
420
+ }
421
+ }), (err) => {
422
+ state.Loading = false;
423
+ reject(err);
424
+ console.log(err);
425
+ });
426
+ });
427
+ }
428
+ DeleteSourceControl(state, scLookup) {
429
+ return new Promise((resolve, reject) => {
430
+ state.Loading = true;
431
+ this.appsFlowSvc.DeleteSourceControl(scLookup).subscribe((response) => __awaiter(this, void 0, void 0, function* () {
432
+ if (response.Status.Code === 0) {
433
+ const eac = yield this.LoadEnterpriseAsCode(state);
434
+ resolve(eac);
435
+ }
436
+ else {
437
+ state.Loading = false;
438
+ reject(response.Status);
439
+ console.log(response);
440
+ }
441
+ }), (err) => {
442
+ state.Loading = false;
443
+ reject(err);
444
+ console.log(err);
445
+ });
446
+ });
447
+ }
346
448
  EnsureUserEnterprise(state) {
347
449
  return new Promise((resolve, reject) => {
348
450
  state.Loading = true;
@@ -852,70 +954,28 @@ class EaCService {
852
954
  DeleteApplication(appLookup, appName) {
853
955
  return __awaiter(this, void 0, void 0, function* () {
854
956
  if (confirm(`Are you sure you want to delete application '${appName}'?`)) {
855
- const eac = {
856
- EnterpriseLookup: this.State.EaC.EnterpriseLookup,
857
- Applications: {},
858
- };
859
- eac.Applications[appLookup] = {
860
- Application: {},
861
- };
862
- return yield this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
863
- }
864
- });
865
- }
866
- DeleteDevOpsAction(doaLookup, doaName) {
867
- return __awaiter(this, void 0, void 0, function* () {
868
- if (confirm(`Are you sure you want to delete Build Pipeline '${doaName}'?`)) {
869
- const eac = {
870
- EnterpriseLookup: this.State.EaC.EnterpriseLookup,
871
- Environments: {},
872
- };
873
- eac.Environments[this.State.EaC.Enterprise.PrimaryEnvironment] = {
874
- DevOpsActions: {},
875
- };
876
- eac.Environments[this.State.EaC.Enterprise.PrimaryEnvironment].DevOpsActions[doaLookup] = {};
877
- return yield this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
957
+ yield this.projectService.DeleteApplication(this.State, appLookup);
878
958
  }
879
959
  });
880
960
  }
881
- DeleteModifier(modifierLookup, modifierName) {
961
+ DeleteDevOpsAction(doaLookup) {
882
962
  return __awaiter(this, void 0, void 0, function* () {
883
- if (confirm(`Are you sure you want to delete Modifier '${modifierName}'?`)) {
884
- const eac = {
885
- EnterpriseLookup: this.State.EaC.EnterpriseLookup,
886
- Modifiers: {},
887
- };
888
- eac.Modifiers[modifierLookup] = {};
889
- return yield this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
963
+ if (confirm(`Are you sure you want to delete DevOps action '${doaLookup}'?`)) {
964
+ yield this.projectService.DeleteDevOpsAction(this.State, doaLookup);
890
965
  }
891
966
  });
892
967
  }
893
- DeleteProject(projectLookup, projectName) {
968
+ DeleteProject(projectLookup) {
894
969
  return __awaiter(this, void 0, void 0, function* () {
895
- if (confirm(`Are you sure you want to delete Project '${projectName}'?`)) {
896
- const eac = {
897
- EnterpriseLookup: this.State.EaC.EnterpriseLookup,
898
- Projects: {},
899
- };
900
- eac.Projects[projectLookup] = {
901
- Project: {},
902
- };
903
- return yield this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
970
+ if (confirm(`Are you sure you want to delete Project '${projectLookup}'?`)) {
971
+ yield this.projectService.DeleteProject(this.State, projectLookup);
904
972
  }
905
973
  });
906
974
  }
907
- DeleteSourceControl(srcLookup, srcName) {
975
+ DeleteSourceControl(scLookup) {
908
976
  return __awaiter(this, void 0, void 0, function* () {
909
- if (confirm(`Are you sure you want to delete Source Control '${srcName}'?`)) {
910
- const eac = {
911
- EnterpriseLookup: this.State.EaC.EnterpriseLookup,
912
- Environments: {},
913
- };
914
- eac.Environments[this.State.EaC.Enterprise.PrimaryEnvironment] = {
915
- Sources: {},
916
- };
917
- eac.Environments[this.State.EaC.Enterprise.PrimaryEnvironment].Sources[srcLookup] = {};
918
- return yield this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
977
+ if (confirm(`Are you sure you want to delete Source Control '${scLookup}'?`)) {
978
+ yield this.projectService.DeleteSourceControl(this.State, scLookup);
919
979
  }
920
980
  });
921
981
  }
@@ -929,7 +989,7 @@ class EaCService {
929
989
  }
930
990
  EnterpriseAsCodeRemovals(eac) {
931
991
  return __awaiter(this, void 0, void 0, function* () {
932
- return this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
992
+ return yield this.projectService.EnterpriseAsCodeRemovals(this.State, eac);
933
993
  });
934
994
  }
935
995
  GetActiveEnterprise() {
@@ -1046,7 +1106,7 @@ class EaCService {
1046
1106
  saveEaC.Modifiers[req.ModifierLookups[0]] = req.Modifier;
1047
1107
  }
1048
1108
  if (req.ProjectLookups) {
1049
- req.ProjectLookups.forEach((lookup) => {
1109
+ req.ProjectLookups.forEach(lookup => {
1050
1110
  saveEaC.Projects[lookup] = {
1051
1111
  ModifierLookups: req.ModifierLookups,
1052
1112
  };
@@ -1122,7 +1182,9 @@ class ProjectItemsComponent {
1122
1182
  }
1123
1183
  // API Methods
1124
1184
  DeleteProject(projectLookup, projectName) {
1125
- this.eacSvc.DeleteProject(projectLookup, projectName).then();
1185
+ if (confirm(`Are you sure you want to delete project '${projectName}'?`)) {
1186
+ this.eacSvc.DeleteProject(projectLookup);
1187
+ }
1126
1188
  }
1127
1189
  GetPrimaryHost(project) {
1128
1190
  return project.Hosts[project.Hosts.length - 1];
@@ -2588,11 +2650,9 @@ class DevOpsComponent {
2588
2650
  this.SetEditingSourceControl(Guid.CreateRaw());
2589
2651
  }
2590
2652
  DeleteSourceControl(scLookup) {
2591
- // if (
2592
- // confirm(`Are you sure you want to delete source control '${scLookup}'?`)
2593
- // ) {
2594
- // this.eacSvc.DeleteSourceControl(scLookup);
2595
- // }
2653
+ if (confirm(`Are you sure you want to delete source control '${scLookup}'?`)) {
2654
+ this.eacSvc.DeleteSourceControl(scLookup);
2655
+ }
2596
2656
  }
2597
2657
  DevOpsActionLookupChanged(event) {
2598
2658
  this.configureDevOpsAction();
@@ -2782,7 +2842,9 @@ class DFSModifiersComponent {
2782
2842
  this.SetEditingModifier(Guid.CreateRaw());
2783
2843
  }
2784
2844
  DeleteModifier(modifierLookup, modifierName) {
2785
- this.eacSvc.DeleteModifier(modifierLookup, modifierName).then();
2845
+ if (confirm(`Are you sure you want to delete modifier '${modifierName}'?`)) {
2846
+ this.eacSvc.DeleteSourceControl(modifierLookup);
2847
+ }
2786
2848
  }
2787
2849
  SaveModifier(projectLookup = null) {
2788
2850
  const saveMdfrReq = {
@@ -4283,22 +4345,22 @@ class SourceControlDialogComponent {
4283
4345
  get State() {
4284
4346
  return this.eacSvc.State;
4285
4347
  }
4286
- ngOnInit() { }
4348
+ ngOnInit() {
4349
+ }
4287
4350
  CloseDialog() {
4288
4351
  this.dialogRef.close();
4289
4352
  }
4290
- DeleteSourceControl() {
4291
- this.eacSvc
4292
- .DeleteSourceControl(this.data.scLookup, this.data.scName)
4293
- .then((status) => {
4353
+ DeleteSourceControl(scLookup) {
4354
+ if (confirm(`Are you sure you want to delete source control '${scLookup}'?`)) {
4355
+ this.eacSvc.DeleteSourceControl(scLookup);
4294
4356
  this.CloseDialog();
4295
- });
4357
+ }
4296
4358
  }
4297
4359
  HandleSaveStatusEvent(event) {
4298
- console.log('event to save: ', event);
4360
+ console.log("event to save: ", event);
4299
4361
  if (event.Code === 0) {
4300
- this.snackBar.open('Source Control Succesfully Saved', 'Dismiss', {
4301
- duration: 5000,
4362
+ this.snackBar.open("Source Control Succesfully Saved", "Dismiss", {
4363
+ duration: 5000
4302
4364
  });
4303
4365
  this.CloseDialog();
4304
4366
  }
@@ -4311,10 +4373,10 @@ class SourceControlDialogComponent {
4311
4373
  }
4312
4374
  }
4313
4375
  SourceControlDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: SourceControlDialogComponent, deps: [{ token: i2$3.MatDialogRef }, { token: EaCService }, { token: MAT_DIALOG_DATA }, { token: i3$1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component });
4314
- SourceControlDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: SourceControlDialogComponent, selector: "lcu-source-control-dialog", viewQueries: [{ propertyName: "DevopsSourceControl", first: true, predicate: DevopsSourceControlFormComponent, descendants: true }], ngImport: i0, template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Source Control</h2>\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <ng-container *ngIf=\"!HasConnection\">\n <lcu-git-auth></lcu-git-auth>\n </ng-container>\n\n <ng-conatiner *ngIf=\"HasConnection\" fxLayout=\"column\">\n <div fxLayoutAlign=\"center center\">\n <lcu-devops-source-control-form\n [environment]=\"data.environment\"\n [environment-lookup]=\"data.environmentLookup\"\n [editing-source-control-lookup]=\"data.scLookup\"\n (save-status-event)=\"HandleSaveStatusEvent($event)\"\n >\n </lcu-devops-source-control-form>\n </div>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n </ng-conatiner>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"space-between center\"\n>\n <div fxLayoutAlign=\"start center\">\n <button\n mat-raised-button\n color=\"warn\"\n (click)=\"DeleteSourceControl()\"\n matTooltip=\"Delete {{ data.scName }}\"\n >\n Delete\n </button>\n </div>\n\n <div fxLayoutAlign=\"end center\">\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"43%\"\n (click)=\"CloseDialog()\"\n >\n Cancel\n </button>\n\n <button\n class=\"action-button\"\n mat-raised-button\n *ngIf=\"!State?.Loading\"\n fxFlex=\"30%\"\n color=\"primary\"\n (click)=\"SaveSourceControl()\"\n [disabled]=\"\n !DevOpsSourceControlFormGroup?.valid ||\n !DevOpsSourceControlFormGroup?.dirty\n \"\n >\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n </div>\n</mat-dialog-actions>\n", styles: [".dialog-header{width:100%}.action-button{margin:0 10px}\n"], components: [{ type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: GitAuthComponent, selector: "lcu-git-auth" }, { type: DevopsSourceControlFormComponent, selector: "lcu-devops-source-control-form", inputs: ["editing-source-control-lookup", "environment", "environment-lookup"], outputs: ["save-status-event"] }], directives: [{ type: i8.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i2$3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i2$3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i4$1.MatError, selector: "mat-error", inputs: ["id"] }, { type: i2$3.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i11.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }] });
4376
+ SourceControlDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: SourceControlDialogComponent, selector: "lcu-source-control-dialog", viewQueries: [{ propertyName: "DevopsSourceControl", first: true, predicate: DevopsSourceControlFormComponent, descendants: true }], ngImport: i0, template: "\n<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Source Control</h2>\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n\n <ng-container *ngIf=\"!HasConnection\">\n \n <lcu-git-auth></lcu-git-auth>\n\n </ng-container>\n\n <ng-conatiner *ngIf=\"HasConnection\" fxLayout=\"column\">\n\n <div fxLayoutAlign=\"center center\">\n <lcu-devops-source-control-form\n [environment]=\"data.environment\"\n [environment-lookup]=\"data.environmentLookup\"\n [editing-source-control-lookup]=\"data.scLookup\"\n (save-status-event)=\"HandleSaveStatusEvent($event)\">\n </lcu-devops-source-control-form>\n </div>\n \n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\" >\n {{ ErrorMessage }}\n </mat-error>\n\n </ng-conatiner>\n\n</mat-dialog-content>\n\n<mat-dialog-actions \n class=\"actions-container\" \n div fxLayout=\"row\" \n fxLayoutAlign=\"space-between center\"\n \n>\n <div fxLayoutAlign=\"start center\">\n <button\n mat-raised-button\n color=\"warn\"\n (click)=\"DeleteSourceControl(data.scLookup)\"\n matTooltip=\"Delete {{ data.scLookup }}\"\n >\n Delete\n </button>\n </div>\n\n <div fxLayoutAlign=\"end center\">\n <button \n class=\"action-button\"\n mat-raised-button\n fxFlex=\"43%\"\n (click)=\"CloseDialog()\">\n Cancel\n\n </button>\n\n\n\n <button \n class=\"action-button\"\n mat-raised-button \n *ngIf=\"!State?.Loading\" \n fxFlex=\"30%\" \n color=\"primary\" \n (click)=\"SaveSourceControl()\"\n [disabled]=\"!DevOpsSourceControlFormGroup?.valid || !DevOpsSourceControlFormGroup?.dirty\">\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n </div>\n\n</mat-dialog-actions>\n\n\n\n", styles: [".dialog-header{width:100%}.action-button{margin:0 10px}\n"], components: [{ type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: GitAuthComponent, selector: "lcu-git-auth" }, { type: DevopsSourceControlFormComponent, selector: "lcu-devops-source-control-form", inputs: ["editing-source-control-lookup", "environment", "environment-lookup"], outputs: ["save-status-event"] }], directives: [{ type: i8.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i2$3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i2$3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i4$1.MatError, selector: "mat-error", inputs: ["id"] }, { type: i2$3.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i11.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }] });
4315
4377
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: SourceControlDialogComponent, decorators: [{
4316
4378
  type: Component,
4317
- args: [{ selector: 'lcu-source-control-dialog', template: "<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Source Control</h2>\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n <ng-container *ngIf=\"!HasConnection\">\n <lcu-git-auth></lcu-git-auth>\n </ng-container>\n\n <ng-conatiner *ngIf=\"HasConnection\" fxLayout=\"column\">\n <div fxLayoutAlign=\"center center\">\n <lcu-devops-source-control-form\n [environment]=\"data.environment\"\n [environment-lookup]=\"data.environmentLookup\"\n [editing-source-control-lookup]=\"data.scLookup\"\n (save-status-event)=\"HandleSaveStatusEvent($event)\"\n >\n </lcu-devops-source-control-form>\n </div>\n\n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\">\n {{ ErrorMessage }}\n </mat-error>\n </ng-conatiner>\n</mat-dialog-content>\n\n<mat-dialog-actions\n class=\"actions-container\"\n div\n fxLayout=\"row\"\n fxLayoutAlign=\"space-between center\"\n>\n <div fxLayoutAlign=\"start center\">\n <button\n mat-raised-button\n color=\"warn\"\n (click)=\"DeleteSourceControl()\"\n matTooltip=\"Delete {{ data.scName }}\"\n >\n Delete\n </button>\n </div>\n\n <div fxLayoutAlign=\"end center\">\n <button\n class=\"action-button\"\n mat-raised-button\n fxFlex=\"43%\"\n (click)=\"CloseDialog()\"\n >\n Cancel\n </button>\n\n <button\n class=\"action-button\"\n mat-raised-button\n *ngIf=\"!State?.Loading\"\n fxFlex=\"30%\"\n color=\"primary\"\n (click)=\"SaveSourceControl()\"\n [disabled]=\"\n !DevOpsSourceControlFormGroup?.valid ||\n !DevOpsSourceControlFormGroup?.dirty\n \"\n >\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n </div>\n</mat-dialog-actions>\n", styles: [".dialog-header{width:100%}.action-button{margin:0 10px}\n"] }]
4379
+ args: [{ selector: 'lcu-source-control-dialog', template: "\n<div class=\"dialog-header\" fxLayoutAlign=\"space-between center\">\n <h2 mat-dialog-title>Source Control</h2>\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<mat-dialog-content>\n\n <ng-container *ngIf=\"!HasConnection\">\n \n <lcu-git-auth></lcu-git-auth>\n\n </ng-container>\n\n <ng-conatiner *ngIf=\"HasConnection\" fxLayout=\"column\">\n\n <div fxLayoutAlign=\"center center\">\n <lcu-devops-source-control-form\n [environment]=\"data.environment\"\n [environment-lookup]=\"data.environmentLookup\"\n [editing-source-control-lookup]=\"data.scLookup\"\n (save-status-event)=\"HandleSaveStatusEvent($event)\">\n </lcu-devops-source-control-form>\n </div>\n \n <mat-error *ngIf=\"ErrorMessage\" fxLayoutAlign=\"center center\" >\n {{ ErrorMessage }}\n </mat-error>\n\n </ng-conatiner>\n\n</mat-dialog-content>\n\n<mat-dialog-actions \n class=\"actions-container\" \n div fxLayout=\"row\" \n fxLayoutAlign=\"space-between center\"\n \n>\n <div fxLayoutAlign=\"start center\">\n <button\n mat-raised-button\n color=\"warn\"\n (click)=\"DeleteSourceControl(data.scLookup)\"\n matTooltip=\"Delete {{ data.scLookup }}\"\n >\n Delete\n </button>\n </div>\n\n <div fxLayoutAlign=\"end center\">\n <button \n class=\"action-button\"\n mat-raised-button\n fxFlex=\"43%\"\n (click)=\"CloseDialog()\">\n Cancel\n\n </button>\n\n\n\n <button \n class=\"action-button\"\n mat-raised-button \n *ngIf=\"!State?.Loading\" \n fxFlex=\"30%\" \n color=\"primary\" \n (click)=\"SaveSourceControl()\"\n [disabled]=\"!DevOpsSourceControlFormGroup?.valid || !DevOpsSourceControlFormGroup?.dirty\">\n <!-- <mat-icon>save</mat-icon> -->\n Save\n </button>\n </div>\n\n</mat-dialog-actions>\n\n\n\n", styles: [".dialog-header{width:100%}.action-button{margin:0 10px}\n"] }]
4318
4380
  }], ctorParameters: function () {
4319
4381
  return [{ type: i2$3.MatDialogRef }, { type: EaCService }, { type: undefined, decorators: [{
4320
4382
  type: Inject,
@@ -4396,21 +4458,20 @@ class MainFeedCardComponent {
4396
4458
  }
4397
4459
  else if (action.ActionType == 'Modal') {
4398
4460
  if (action.Action == 'AddSourceControl') {
4399
- this.OpenSourceControlDialog(null, null);
4461
+ this.OpenSourceControlDialog(null);
4400
4462
  }
4401
4463
  else {
4402
4464
  alert('other modaled ' + action.Action);
4403
4465
  }
4404
4466
  }
4405
4467
  }
4406
- OpenSourceControlDialog(scLookup, scName) {
4468
+ OpenSourceControlDialog(scLookup) {
4407
4469
  const dialogRef = this.dialog.open(SourceControlDialogComponent, {
4408
4470
  width: '550px',
4409
4471
  data: {
4410
4472
  environment: this.Environment,
4411
4473
  environmentLookup: this.ActiveEnvironmentLookup,
4412
4474
  scLookup: scLookup,
4413
- scName: scName,
4414
4475
  },
4415
4476
  });
4416
4477
  dialogRef.afterClosed().subscribe((result) => {
@@ -4566,10 +4627,10 @@ class SecurityToggleComponent {
4566
4627
  }
4567
4628
  }
4568
4629
  SecurityToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: SecurityToggleComponent, deps: [{ token: EaCService }, { token: i1$2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
4569
- SecurityToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: SecurityToggleComponent, selector: "lcu-security-toggle", inputs: { EditingApplication: ["editing-application", "EditingApplication"] }, outputs: { SaveFormEvent: "save-form-event" }, ngImport: i0, template: "<form\n class=\"security-form\"\n [formGroup]=\"SecurityFormGroup\"\n (ngSubmit)=\"SecuritySubmit()\"\n>\n <mat-card class=\"flow-card\">\n <!-- SKELETON LOADING -->\n <ng-container *ngIf=\"State?.Loading\">\n <mat-card-header fxLayoutAlign=\"space-between center\">\n <mat-card-title skeleton-text [effect]=\"SkeletonEffect\">\n Security Settings\n </mat-card-title>\n <div fxLayoutAlign=\"space-around center\">\n <div skeleton-text [effect]=\"SkeletonEffect\">XXX</div>\n\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\">\n info_outline\n </mat-icon>\n </div>\n </mat-card-header>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <div\n fxFlex=\"100%\"\n skeleton-text\n [effect]=\"SkeletonEffect\"\n fxLayoutAlign=\"center center\"\n >\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\"> save </mat-icon>\n\n Save Settings\n </div>\n </mat-card-actions>\n </ng-container>\n <!-- END SKELETON LOADING -->\n\n <!-- BEGIN ACTUAL CONTENT -->\n\n <ng-container *ngIf=\"!State?.Loading\">\n <mat-card-header>\n <mat-card-title> Security Settings </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-slide-toggle\n formControlName=\"isPrivate\"\n matTooltip=\"Is Secure Application?\"\n >\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Secured Application is one that requires the user to be authenticated to use the application. The application is hosted behind an identity wall.\"\n >\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <div>\n <div *ngIf=\"IsPrivateFormControl.value\">\n <div>\n <mat-slide-toggle formControlName=\"isTriggerSignIn\">\n Is Trigger Sign In Application?\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Trigger Sign In Application will direct the user to sign in if they are not already.\"\n >\n info_outline\n </mat-icon>\n </div>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <button\n mat-raised-button\n type=\"submit\"\n fxFlex=\"100%\"\n color=\"primary\"\n [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\"\n >\n <mat-icon>save</mat-icon>\n Save Settings\n </button>\n </mat-card-actions>\n </ng-container>\n </mat-card>\n</form>\n", styles: ["::ng-deep .mat-tooltip{color:#000!important}.flow-card{margin:32px 20px}\n"], components: [{ type: i1$1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i1$1.MatCardHeader, selector: "mat-card-header" }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5$2.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i1$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i4$3.SkeletonTextDirective, selector: "[skeleton-text]", inputs: ["effect"] }, { type: i1$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { type: i8.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i11.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i4$1.MatSuffix, selector: "[matSuffix]" }, { type: i1$1.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }] });
4630
+ SecurityToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: SecurityToggleComponent, selector: "lcu-security-toggle", inputs: { EditingApplication: ["editing-application", "EditingApplication"] }, outputs: { SaveFormEvent: "save-form-event" }, ngImport: i0, template: "<form\n class=\"security-form\"\n [formGroup]=\"SecurityFormGroup\"\n (ngSubmit)=\"SecuritySubmit()\"\n>\n <mat-card class=\"flow-card\">\n <!-- SKELETON LOADING -->\n <ng-container *ngIf=\"State?.Loading\">\n <mat-card-header fxLayoutAlign=\"space-between center\">\n <mat-card-title skeleton-text [effect]=\"SkeletonEffect\">\n Security Settings\n </mat-card-title>\n <div fxLayoutAlign=\"space-around center\">\n <div skeleton-text [effect]=\"SkeletonEffect\">XXX</div>\n\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\">\n info_outline\n </mat-icon>\n </div>\n </mat-card-header>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <div\n fxFlex=\"100%\"\n skeleton-text\n [effect]=\"SkeletonEffect\"\n fxLayoutAlign=\"center center\"\n >\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\"> save </mat-icon>\n\n Save Settings\n </div>\n </mat-card-actions>\n </ng-container>\n <!-- END SKELETON LOADING -->\n\n <!-- BEGIN ACTUAL CONTENT -->\n\n <ng-container *ngIf=\"!State?.Loading\">\n <mat-card-header>\n <mat-card-title> Security Settings </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-slide-toggle\n formControlName=\"isPrivate\"\n matTooltip=\"Is Secure Application?\"\n >\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Secured Application is one that requires the user to be authenticated to use the application. The application is hosted behind an identity wall.\"\n >\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <div>\n <div *ngIf=\"IsPrivateFormControl.value\">\n <div>\n <mat-slide-toggle formControlName=\"isTriggerSignIn\">\n Is Trigger Sign In Application?\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Trigger Sign In Application will direct the user to sign in if they are not already.\"\n >\n info_outline\n </mat-icon>\n </div>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <button\n mat-raised-button\n type=\"submit\"\n fxFlex=\"100%\"\n color=\"primary\"\n [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\"\n >\n <mat-icon>save</mat-icon>\n Save Settings\n </button>\n </mat-card-actions>\n </ng-container>\n </mat-card>\n</form>\n", styles: [".flow-card{margin:32px 20px}\n"], components: [{ type: i1$1.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { type: i1$1.MatCardHeader, selector: "mat-card-header" }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i5$2.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i1$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1$2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i1$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { type: i4$3.SkeletonTextDirective, selector: "[skeleton-text]", inputs: ["effect"] }, { type: i1$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { type: i8.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i1$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1$2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i11.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i4$1.MatSuffix, selector: "[matSuffix]" }, { type: i1$1.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }] });
4570
4631
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: SecurityToggleComponent, decorators: [{
4571
4632
  type: Component,
4572
- args: [{ selector: 'lcu-security-toggle', template: "<form\n class=\"security-form\"\n [formGroup]=\"SecurityFormGroup\"\n (ngSubmit)=\"SecuritySubmit()\"\n>\n <mat-card class=\"flow-card\">\n <!-- SKELETON LOADING -->\n <ng-container *ngIf=\"State?.Loading\">\n <mat-card-header fxLayoutAlign=\"space-between center\">\n <mat-card-title skeleton-text [effect]=\"SkeletonEffect\">\n Security Settings\n </mat-card-title>\n <div fxLayoutAlign=\"space-around center\">\n <div skeleton-text [effect]=\"SkeletonEffect\">XXX</div>\n\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\">\n info_outline\n </mat-icon>\n </div>\n </mat-card-header>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <div\n fxFlex=\"100%\"\n skeleton-text\n [effect]=\"SkeletonEffect\"\n fxLayoutAlign=\"center center\"\n >\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\"> save </mat-icon>\n\n Save Settings\n </div>\n </mat-card-actions>\n </ng-container>\n <!-- END SKELETON LOADING -->\n\n <!-- BEGIN ACTUAL CONTENT -->\n\n <ng-container *ngIf=\"!State?.Loading\">\n <mat-card-header>\n <mat-card-title> Security Settings </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-slide-toggle\n formControlName=\"isPrivate\"\n matTooltip=\"Is Secure Application?\"\n >\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Secured Application is one that requires the user to be authenticated to use the application. The application is hosted behind an identity wall.\"\n >\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <div>\n <div *ngIf=\"IsPrivateFormControl.value\">\n <div>\n <mat-slide-toggle formControlName=\"isTriggerSignIn\">\n Is Trigger Sign In Application?\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Trigger Sign In Application will direct the user to sign in if they are not already.\"\n >\n info_outline\n </mat-icon>\n </div>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <button\n mat-raised-button\n type=\"submit\"\n fxFlex=\"100%\"\n color=\"primary\"\n [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\"\n >\n <mat-icon>save</mat-icon>\n Save Settings\n </button>\n </mat-card-actions>\n </ng-container>\n </mat-card>\n</form>\n", styles: ["::ng-deep .mat-tooltip{color:#000!important}.flow-card{margin:32px 20px}\n"] }]
4633
+ args: [{ selector: 'lcu-security-toggle', template: "<form\n class=\"security-form\"\n [formGroup]=\"SecurityFormGroup\"\n (ngSubmit)=\"SecuritySubmit()\"\n>\n <mat-card class=\"flow-card\">\n <!-- SKELETON LOADING -->\n <ng-container *ngIf=\"State?.Loading\">\n <mat-card-header fxLayoutAlign=\"space-between center\">\n <mat-card-title skeleton-text [effect]=\"SkeletonEffect\">\n Security Settings\n </mat-card-title>\n <div fxLayoutAlign=\"space-around center\">\n <div skeleton-text [effect]=\"SkeletonEffect\">XXX</div>\n\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\">\n info_outline\n </mat-icon>\n </div>\n </mat-card-header>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <div\n fxFlex=\"100%\"\n skeleton-text\n [effect]=\"SkeletonEffect\"\n fxLayoutAlign=\"center center\"\n >\n <mat-icon skeleton-text [effect]=\"SkeletonEffect\"> save </mat-icon>\n\n Save Settings\n </div>\n </mat-card-actions>\n </ng-container>\n <!-- END SKELETON LOADING -->\n\n <!-- BEGIN ACTUAL CONTENT -->\n\n <ng-container *ngIf=\"!State?.Loading\">\n <mat-card-header>\n <mat-card-title> Security Settings </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-slide-toggle\n formControlName=\"isPrivate\"\n matTooltip=\"Is Secure Application?\"\n >\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Secured Application is one that requires the user to be authenticated to use the application. The application is hosted behind an identity wall.\"\n >\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <div>\n <div *ngIf=\"IsPrivateFormControl.value\">\n <div>\n <mat-slide-toggle formControlName=\"isTriggerSignIn\">\n Is Trigger Sign In Application?\n </mat-slide-toggle>\n\n <mat-icon\n matSuffix\n matTooltip=\"A Trigger Sign In Application will direct the user to sign in if they are not already.\"\n >\n info_outline\n </mat-icon>\n </div>\n </div>\n </div>\n </mat-card-content>\n\n <mat-card-actions fxLayoutAlign=\"center center\">\n <button\n mat-raised-button\n type=\"submit\"\n fxFlex=\"100%\"\n color=\"primary\"\n [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\"\n >\n <mat-icon>save</mat-icon>\n Save Settings\n </button>\n </mat-card-actions>\n </ng-container>\n </mat-card>\n</form>\n", styles: [".flow-card{margin:32px 20px}\n"] }]
4573
4634
  }], ctorParameters: function () { return [{ type: EaCService }, { type: i1$2.FormBuilder }]; }, propDecorators: { EditingApplication: [{
4574
4635
  type: Input,
4575
4636
  args: ['editing-application']
@@ -5318,22 +5379,22 @@ class BuildPipelineDialogComponent {
5318
5379
  get State() {
5319
5380
  return this.eacSvc.State;
5320
5381
  }
5321
- ngOnInit() { }
5382
+ ngOnInit() {
5383
+ }
5322
5384
  CloseDialog() {
5323
5385
  this.dialogRef.close();
5324
5386
  }
5325
5387
  DeleteDevOpsAction() {
5326
- this.eacSvc
5327
- .DeleteDevOpsAction(this.data.devopsActionLookup, this.data.doaName)
5328
- .then((status) => {
5388
+ if (confirm(`Are you sure you want to delete build pipeline '${this.data.doaName}'?`)) {
5389
+ this.eacSvc.DeleteDevOpsAction(this.data.devopsActionLookup);
5329
5390
  this.CloseDialog();
5330
- });
5391
+ }
5331
5392
  }
5332
5393
  HandleResponseEvent(event) {
5333
- console.log('Response Event: ', event);
5394
+ console.log("Response Event: ", event);
5334
5395
  if (event.Code === 0) {
5335
- this.snackBar.open('Build Pipeline Created Succesfully', 'Dismiss', {
5336
- duration: 5000,
5396
+ this.snackBar.open("Build Pipeline Created Succesfully", "Dismiss", {
5397
+ duration: 5000
5337
5398
  });
5338
5399
  this.CloseDialog();
5339
5400
  }
@@ -6536,7 +6597,9 @@ class DFSModifiersFormComponent {
6536
6597
  this.SetEditingModifier(Guid.CreateRaw());
6537
6598
  }
6538
6599
  DeleteModifier(modifierLookup, modifierName) {
6539
- this.eacSvc.DeleteModifier(modifierLookup, modifierName).then();
6600
+ if (confirm(`Are you sure you want to delete modifier '${modifierName}'?`)) {
6601
+ this.eacSvc.DeleteSourceControl(modifierLookup);
6602
+ }
6540
6603
  }
6541
6604
  SaveModifierForAllProjects(projectLookups) {
6542
6605
  const saveMdfrReq = {