@lowcodeunit/applications-flow-common 1.33.93-lets-get-social-ish → 1.33.99-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.
- package/bundles/lowcodeunit-applications-flow-common.umd.js +1149 -493
- package/bundles/lowcodeunit-applications-flow-common.umd.js.map +1 -1
- package/bundles/lowcodeunit-applications-flow-common.umd.min.js +2 -2
- package/bundles/lowcodeunit-applications-flow-common.umd.min.js.map +1 -1
- package/esm2015/lcu.api.js +2 -1
- package/esm2015/lib/applications-flow.module.js +22 -6
- package/esm2015/lib/controls/build-pipeline-form/build-pipeline-form.component.js +69 -0
- package/esm2015/lib/controls/devops-source-control-form/devops-source-control-form.component.js +418 -0
- package/esm2015/lib/controls/processor-details-form/processor-details-form.component.js +2 -2
- package/esm2015/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.js +22 -0
- package/esm2015/lib/dialogs/source-control-dialog/source-control-dialog.component.js +22 -0
- package/esm2015/lib/elements/base-form/base-form.component.js +5 -5
- package/esm2015/lib/elements/projects/controls/builds/builds.component.js +4 -9
- package/esm2015/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.js +6 -6
- package/esm2015/lib/elements/projects/controls/forms/source-control/source-control.component.js +3 -6
- package/esm2015/lib/elements/projects/controls/header/header.component.js +7 -7
- package/esm2015/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.js +1 -1
- package/esm2015/lib/elements/projects/controls/project-items/project-items.component.js +7 -7
- package/esm2015/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.js +8 -10
- package/esm2015/lib/elements/projects/controls/tabs/devops/devops.component.js +7 -7
- package/esm2015/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.js +7 -7
- package/esm2015/lib/elements/projects/controls/tabs/domains/domains.component.js +6 -6
- package/esm2015/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.js +6 -6
- package/esm2015/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.js +6 -6
- package/esm2015/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.js +6 -6
- package/esm2015/lib/elements/projects/projects.component.js +16 -143
- package/esm2015/lib/services/eac.service.js +217 -0
- package/esm2015/lowcodeunit-applications-flow-common.js +32 -29
- package/fesm2015/lowcodeunit-applications-flow-common.js +765 -239
- package/fesm2015/lowcodeunit-applications-flow-common.js.map +1 -1
- package/lcu.api.d.ts +1 -0
- package/lcu.api.d.ts.map +1 -1
- package/lib/applications-flow.module.d.ts.map +1 -1
- package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts +28 -0
- package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts.map +1 -0
- package/lib/controls/devops-source-control-form/devops-source-control-form.component.d.ts +75 -0
- package/lib/controls/devops-source-control-form/devops-source-control-form.component.d.ts.map +1 -0
- package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts +14 -0
- package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts.map +1 -0
- package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts +14 -0
- package/lib/dialogs/source-control-dialog/source-control-dialog.component.d.ts.map +1 -0
- package/lib/elements/base-form/base-form.component.d.ts +3 -3
- package/lib/elements/base-form/base-form.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/builds/builds.component.d.ts +1 -3
- package/lib/elements/projects/controls/builds/builds.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.d.ts +3 -3
- package/lib/elements/projects/controls/create-project-wizard/create-project-wizard.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/forms/source-control/source-control.component.d.ts +1 -3
- package/lib/elements/projects/controls/forms/source-control/source-control.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/header/header.component.d.ts +3 -3
- package/lib/elements/projects/controls/header/header.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/project-items/project-items.component.d.ts +3 -3
- package/lib/elements/projects/controls/project-items/project-items.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/apps-flow/apps-flow.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/devops/devops.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/devops/devops.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/dfs-modifiers/dfs-modifiers.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/domains/domains.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/domains/domains.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/general/forms/base-form-test/base-form-test.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/general/forms/project-details/project-details.component.d.ts.map +1 -1
- package/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.d.ts +3 -3
- package/lib/elements/projects/controls/tabs/general/forms/root-directory/root-directory.component.d.ts.map +1 -1
- package/lib/elements/projects/projects.component.d.ts +4 -11
- package/lib/elements/projects/projects.component.d.ts.map +1 -1
- package/lib/services/eac.service.d.ts +54 -0
- package/lib/services/eac.service.d.ts.map +1 -0
- package/lowcodeunit-applications-flow-common.d.ts +31 -28
- package/lowcodeunit-applications-flow-common.d.ts.map +1 -1
- package/lowcodeunit-applications-flow-common.metadata.json +1 -1
- package/package.json +1 -1
- package/esm2015/lib/services/applications-flow-events.service.js +0 -83
- package/lib/services/applications-flow-events.service.d.ts +0 -58
- package/lib/services/applications-flow-events.service.d.ts.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ɵɵdefineInjectable, Injectable, ɵɵinject, INJECTOR, Injector,
|
|
1
|
+
import { ɵɵdefineInjectable, Injectable, ɵɵinject, INJECTOR, Injector, Component, Input, EventEmitter, Output, ViewChild, ComponentFactoryResolver, ViewContainerRef, ChangeDetectorRef, Inject, NgModule } from '@angular/core';
|
|
2
2
|
import { Subject, Observable } from 'rxjs';
|
|
3
3
|
import { __awaiter } from 'tslib';
|
|
4
4
|
import { HttpClient, HttpBackend } from '@angular/common/http';
|
|
@@ -11,6 +11,7 @@ import { map, debounceTime, switchMap } from 'rxjs/operators';
|
|
|
11
11
|
import { BreakpointObserver } from '@angular/cdk/layout';
|
|
12
12
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
13
13
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
14
|
+
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
14
15
|
|
|
15
16
|
/**
|
|
16
17
|
* Model for form values
|
|
@@ -707,159 +708,123 @@ class SaveEnvironmentAsCodeEventRequest {
|
|
|
707
708
|
}
|
|
708
709
|
class SaveProjectAsCodeEventRequest {
|
|
709
710
|
}
|
|
710
|
-
class
|
|
711
|
-
//
|
|
712
|
-
constructor() {
|
|
713
|
-
this.
|
|
714
|
-
this.
|
|
715
|
-
this.DeleteProjectEvent = new EventEmitter();
|
|
716
|
-
this.DeleteSourceControlEvent = new EventEmitter();
|
|
717
|
-
this.EnsureUserEnterpriseEvent = new EventEmitter();
|
|
718
|
-
this.LoadEnterpriseAsCodeEvent = new EventEmitter();
|
|
719
|
-
this.SaveApplicationAsCodeEvent = new EventEmitter();
|
|
720
|
-
this.SaveDFSModifierEvent = new EventEmitter();
|
|
721
|
-
this.SaveEnterpriseAsCodeEvent = new EventEmitter();
|
|
722
|
-
this.SaveEnvironmentAsCodeEvent = new EventEmitter();
|
|
723
|
-
this.SaveProjectAsCodeEvent = new EventEmitter();
|
|
724
|
-
this.SetCreatingProjectEvent = new EventEmitter();
|
|
725
|
-
this.SetEditProjectSettingsEvent = new EventEmitter();
|
|
726
|
-
this.UnpackLowCodeUnitEvent = new EventEmitter();
|
|
711
|
+
class EaCService {
|
|
712
|
+
// Constructors
|
|
713
|
+
constructor(projectService) {
|
|
714
|
+
this.projectService = projectService;
|
|
715
|
+
this.State = new ApplicationsFlowState();
|
|
727
716
|
}
|
|
728
|
-
//
|
|
729
|
-
|
|
730
|
-
this.
|
|
717
|
+
// API Methods
|
|
718
|
+
get CreatingProject() {
|
|
719
|
+
return this.projectService.CreatingProject;
|
|
720
|
+
}
|
|
721
|
+
DeleteApplication(appLookup, appName) {
|
|
722
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
723
|
+
if (confirm(`Are you sure you want to delete application '${appName}'?`)) {
|
|
724
|
+
yield this.projectService.DeleteApplication(this.State, appLookup);
|
|
725
|
+
}
|
|
726
|
+
});
|
|
731
727
|
}
|
|
732
728
|
DeleteDevOpsAction(doaLookup) {
|
|
733
|
-
this
|
|
729
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
730
|
+
if (confirm(`Are you sure you want to delete DevOps action '${doaLookup}'?`)) {
|
|
731
|
+
yield this.projectService.DeleteDevOpsAction(this.State, doaLookup);
|
|
732
|
+
}
|
|
733
|
+
});
|
|
734
734
|
}
|
|
735
735
|
DeleteProject(projectLookup) {
|
|
736
|
-
this
|
|
736
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
737
|
+
if (confirm(`Are you sure you want to delete Project '${projectLookup}'?`)) {
|
|
738
|
+
yield this.projectService.DeleteProject(this.State, projectLookup);
|
|
739
|
+
}
|
|
740
|
+
});
|
|
737
741
|
}
|
|
738
742
|
DeleteSourceControl(scLookup) {
|
|
739
|
-
this
|
|
743
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
744
|
+
if (confirm(`Are you sure you want to delete Source Control '${scLookup}'?`)) {
|
|
745
|
+
yield this.projectService.DeleteSourceControl(this.State, scLookup);
|
|
746
|
+
}
|
|
747
|
+
});
|
|
740
748
|
}
|
|
749
|
+
// this.appsFlowEventsSvc.EnsureUserEnterpriseEvent.subscribe(async () => {
|
|
750
|
+
// await this.projectService.EnsureUserEnterprise(this.State);
|
|
751
|
+
// });
|
|
741
752
|
EnsureUserEnterprise() {
|
|
742
|
-
this
|
|
753
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
754
|
+
yield this.projectService.EnsureUserEnterprise(this.State);
|
|
755
|
+
});
|
|
756
|
+
}
|
|
757
|
+
GetActiveEnterprise() {
|
|
758
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
759
|
+
yield this.projectService.GetActiveEnterprise(this.State);
|
|
760
|
+
});
|
|
761
|
+
}
|
|
762
|
+
get EditingProjectLookup() {
|
|
763
|
+
return this.projectService.EditingProjectLookup;
|
|
764
|
+
}
|
|
765
|
+
HasValidConnection() {
|
|
766
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
767
|
+
yield this.projectService.HasValidConnection(this.State);
|
|
768
|
+
});
|
|
769
|
+
}
|
|
770
|
+
ListEnterprises() {
|
|
771
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
772
|
+
yield this.projectService.ListEnterprises(this.State);
|
|
773
|
+
});
|
|
743
774
|
}
|
|
744
|
-
// public ListProjects(withLoading: boolean): void {
|
|
745
|
-
// this.ListProjectsEvent.emit(withLoading);
|
|
746
|
-
// }
|
|
747
775
|
LoadEnterpriseAsCode() {
|
|
748
|
-
this
|
|
776
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
777
|
+
yield this.projectService.LoadEnterpriseAsCode(this.State);
|
|
778
|
+
});
|
|
749
779
|
}
|
|
750
780
|
SaveApplicationAsCode(req) {
|
|
751
|
-
this
|
|
781
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
782
|
+
yield this.handleSaveApplication(req);
|
|
783
|
+
});
|
|
752
784
|
}
|
|
753
785
|
SaveDFSModifier(req) {
|
|
754
|
-
this
|
|
786
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
787
|
+
yield this.handleSaveDFSModifier(req);
|
|
788
|
+
});
|
|
755
789
|
}
|
|
756
790
|
SaveEnterpriseAsCode(eac) {
|
|
757
|
-
this
|
|
791
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
792
|
+
yield this.projectService.SaveEnterpriseAsCode(this.State, eac);
|
|
793
|
+
});
|
|
758
794
|
}
|
|
759
795
|
SaveEnvironmentAsCode(req) {
|
|
760
|
-
this
|
|
796
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
797
|
+
yield this.handleSaveEnvironment(req);
|
|
798
|
+
});
|
|
761
799
|
}
|
|
762
800
|
SaveProjectAsCode(req) {
|
|
763
|
-
this
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
this.SetCreatingProjectEvent.emit(creatingProject);
|
|
767
|
-
}
|
|
768
|
-
SetEditProjectSettings(projectLookup) {
|
|
769
|
-
this.SetEditProjectSettingsEvent.emit(projectLookup);
|
|
770
|
-
}
|
|
771
|
-
UnpackLowCodeUnit(req) {
|
|
772
|
-
this.UnpackLowCodeUnitEvent.emit(req);
|
|
773
|
-
}
|
|
774
|
-
}
|
|
775
|
-
ApplicationsFlowEventsService.ɵprov = ɵɵdefineInjectable({ factory: function ApplicationsFlowEventsService_Factory() { return new ApplicationsFlowEventsService(); }, token: ApplicationsFlowEventsService, providedIn: "root" });
|
|
776
|
-
ApplicationsFlowEventsService.decorators = [
|
|
777
|
-
{ type: Injectable, args: [{
|
|
778
|
-
providedIn: 'root',
|
|
779
|
-
},] }
|
|
780
|
-
];
|
|
781
|
-
ApplicationsFlowEventsService.ctorParameters = () => [];
|
|
782
|
-
|
|
783
|
-
class ApplicationsFlowProjectsElementState {
|
|
784
|
-
}
|
|
785
|
-
class ApplicationsFlowProjectsContext extends LCUElementContext {
|
|
786
|
-
}
|
|
787
|
-
const SELECTOR_APPLICATIONS_FLOW_PROJECTS_ELEMENT = 'applications-flow-projects-element';
|
|
788
|
-
class ApplicationsFlowProjectsElementComponent extends LcuElementComponent {
|
|
789
|
-
// Constructors
|
|
790
|
-
constructor(injector, appsFlowSvc, projectService, appsFlowEventsSvc) {
|
|
791
|
-
super(injector);
|
|
792
|
-
this.injector = injector;
|
|
793
|
-
this.appsFlowSvc = appsFlowSvc;
|
|
794
|
-
this.projectService = projectService;
|
|
795
|
-
this.appsFlowEventsSvc = appsFlowEventsSvc;
|
|
796
|
-
this.State = new ApplicationsFlowState();
|
|
797
|
-
this.setServices();
|
|
798
|
-
}
|
|
799
|
-
// Properties
|
|
800
|
-
get ActiveEnvironment() {
|
|
801
|
-
var _a, _b;
|
|
802
|
-
return (_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Environments[this.ActiveEnvironmentLookup];
|
|
803
|
-
}
|
|
804
|
-
get ActiveEnvironmentLookup() {
|
|
805
|
-
var _a, _b;
|
|
806
|
-
// TODO: Eventually support multiple environments
|
|
807
|
-
const envLookups = Object.keys(((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Environments) || {});
|
|
808
|
-
return envLookups[0];
|
|
809
|
-
}
|
|
810
|
-
get CreatingProject() {
|
|
811
|
-
return this.projectService.CreatingProject;
|
|
812
|
-
}
|
|
813
|
-
get EditingProject() {
|
|
814
|
-
var _a, _b, _c, _d;
|
|
815
|
-
return ((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects) ? (_d = (_c = this.State) === null || _c === void 0 ? void 0 : _c.EaC) === null || _d === void 0 ? void 0 : _d.Projects[this.EditingProjectLookup] : null;
|
|
816
|
-
}
|
|
817
|
-
get EditingProjectLookup() {
|
|
818
|
-
return this.projectService.EditingProjectLookup;
|
|
819
|
-
}
|
|
820
|
-
get ProjectLookups() {
|
|
821
|
-
var _a, _b;
|
|
822
|
-
return Object.keys(((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects) || {});
|
|
801
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
802
|
+
yield this.handleSaveProject(req.ProjectLookup, req.Project);
|
|
803
|
+
});
|
|
823
804
|
}
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
this.handleStateChange().then((eac) => { });
|
|
829
|
-
// this.setupProjectMonitor();
|
|
805
|
+
SetActiveEnterprise(eventValue) {
|
|
806
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
807
|
+
this.projectService.SetActiveEnterprise(this.State, eventValue);
|
|
808
|
+
});
|
|
830
809
|
}
|
|
831
|
-
|
|
832
|
-
ActiveEnterpriseChanged(event) {
|
|
810
|
+
SetCreatingProject(creatingProject) {
|
|
833
811
|
return __awaiter(this, void 0, void 0, function* () {
|
|
834
|
-
|
|
812
|
+
this.projectService.SetCreatingProject(creatingProject);
|
|
835
813
|
});
|
|
836
814
|
}
|
|
837
|
-
|
|
838
|
-
this
|
|
839
|
-
|
|
840
|
-
.ConfigureDevOpsAction(devOpsActionLookup)
|
|
841
|
-
.subscribe((response) => {
|
|
842
|
-
if (response.Status.Code === 0) {
|
|
843
|
-
this.projectService.LoadEnterpriseAsCode(this.State);
|
|
844
|
-
}
|
|
845
|
-
else {
|
|
846
|
-
this.State.Loading = false;
|
|
847
|
-
}
|
|
815
|
+
SetEditProjectSettings(projectLookup) {
|
|
816
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
817
|
+
yield this.projectService.SetEditProjectSettings(this.State, projectLookup);
|
|
848
818
|
});
|
|
849
819
|
}
|
|
850
|
-
|
|
851
|
-
handleStateChange() {
|
|
852
|
-
var _a;
|
|
820
|
+
UnpackLowCodeUnit(req) {
|
|
853
821
|
return __awaiter(this, void 0, void 0, function* () {
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
yield this.projectService.EnsureUserEnterprise(this.State);
|
|
857
|
-
yield this.projectService.ListEnterprises(this.State);
|
|
858
|
-
if (((_a = this.State.Enterprises) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
859
|
-
yield this.projectService.GetActiveEnterprise(this.State);
|
|
822
|
+
if (confirm(`Are you sure you want to unpack application '${req.ApplicationName}' with version '${req.Version}'?`)) {
|
|
823
|
+
yield this.projectService.UnpackLowCodeUnit(this.State, req);
|
|
860
824
|
}
|
|
861
825
|
});
|
|
862
826
|
}
|
|
827
|
+
// Helpers
|
|
863
828
|
handleSaveApplication(req) {
|
|
864
829
|
var _a;
|
|
865
830
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -920,7 +885,7 @@ class ApplicationsFlowProjectsElementComponent extends LcuElementComponent {
|
|
|
920
885
|
var _a;
|
|
921
886
|
return __awaiter(this, void 0, void 0, function* () {
|
|
922
887
|
const projHosts = {};
|
|
923
|
-
(_a = project === null || project === void 0 ? void 0 : project.Hosts) === null || _a === void 0 ? void 0 : _a.forEach(host => {
|
|
888
|
+
(_a = project === null || project === void 0 ? void 0 : project.Hosts) === null || _a === void 0 ? void 0 : _a.forEach((host) => {
|
|
924
889
|
projHosts[host] = this.State.EaC.Hosts[host];
|
|
925
890
|
});
|
|
926
891
|
const saveEaC = {
|
|
@@ -932,57 +897,99 @@ class ApplicationsFlowProjectsElementComponent extends LcuElementComponent {
|
|
|
932
897
|
};
|
|
933
898
|
saveEaC.Projects[projectLookup] = project;
|
|
934
899
|
yield this.projectService.SaveEnterpriseAsCode(this.State, saveEaC);
|
|
935
|
-
this.
|
|
900
|
+
this.SetEditProjectSettings(projectLookup);
|
|
936
901
|
});
|
|
937
902
|
}
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
this.
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
903
|
+
}
|
|
904
|
+
EaCService.ɵprov = ɵɵdefineInjectable({ factory: function EaCService_Factory() { return new EaCService(ɵɵinject(ProjectService)); }, token: EaCService, providedIn: "root" });
|
|
905
|
+
EaCService.decorators = [
|
|
906
|
+
{ type: Injectable, args: [{
|
|
907
|
+
providedIn: 'root',
|
|
908
|
+
},] }
|
|
909
|
+
];
|
|
910
|
+
EaCService.ctorParameters = () => [
|
|
911
|
+
{ type: ProjectService }
|
|
912
|
+
];
|
|
913
|
+
|
|
914
|
+
class ApplicationsFlowProjectsElementState {
|
|
915
|
+
}
|
|
916
|
+
class ApplicationsFlowProjectsContext extends LCUElementContext {
|
|
917
|
+
}
|
|
918
|
+
const SELECTOR_APPLICATIONS_FLOW_PROJECTS_ELEMENT = 'applications-flow-projects-element';
|
|
919
|
+
class ApplicationsFlowProjectsElementComponent extends LcuElementComponent {
|
|
920
|
+
// Constructors
|
|
921
|
+
constructor(injector, appsFlowSvc, eacSvc) {
|
|
922
|
+
super(injector);
|
|
923
|
+
this.injector = injector;
|
|
924
|
+
this.appsFlowSvc = appsFlowSvc;
|
|
925
|
+
this.eacSvc = eacSvc;
|
|
926
|
+
}
|
|
927
|
+
// Properties
|
|
928
|
+
get ActiveEnvironment() {
|
|
929
|
+
var _a, _b;
|
|
930
|
+
return (_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Environments[this.ActiveEnvironmentLookup];
|
|
931
|
+
}
|
|
932
|
+
get ActiveEnvironmentLookup() {
|
|
933
|
+
var _a, _b;
|
|
934
|
+
// TODO: Eventually support multiple environments
|
|
935
|
+
const envLookups = Object.keys(((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Environments) || {});
|
|
936
|
+
return envLookups[0];
|
|
937
|
+
}
|
|
938
|
+
get CreatingProject() {
|
|
939
|
+
return this.eacSvc.CreatingProject;
|
|
940
|
+
}
|
|
941
|
+
get EditingProject() {
|
|
942
|
+
var _a, _b, _c, _d;
|
|
943
|
+
return ((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects) ? (_d = (_c = this.State) === null || _c === void 0 ? void 0 : _c.EaC) === null || _d === void 0 ? void 0 : _d.Projects[this.EditingProjectLookup] : null;
|
|
944
|
+
}
|
|
945
|
+
get EditingProjectLookup() {
|
|
946
|
+
return this.eacSvc.EditingProjectLookup;
|
|
947
|
+
}
|
|
948
|
+
get ProjectLookups() {
|
|
949
|
+
var _a, _b;
|
|
950
|
+
return Object.keys(((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects) || {});
|
|
951
|
+
}
|
|
952
|
+
get State() {
|
|
953
|
+
return this.eacSvc.State;
|
|
954
|
+
}
|
|
955
|
+
// Life Cycle
|
|
956
|
+
ngOnDestroy() { }
|
|
957
|
+
ngOnInit() {
|
|
958
|
+
super.ngOnInit();
|
|
959
|
+
this.handleStateChange().then((eac) => { });
|
|
960
|
+
// this.setupProjectMonitor();
|
|
961
|
+
}
|
|
962
|
+
// API Methods
|
|
963
|
+
ActiveEnterpriseChanged(event) {
|
|
964
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
965
|
+
yield this.eacSvc.SetActiveEnterprise(event.value);
|
|
977
966
|
});
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
this.
|
|
982
|
-
|
|
983
|
-
|
|
967
|
+
}
|
|
968
|
+
ConfigureDevOpsAction(devOpsActionLookup) {
|
|
969
|
+
this.State.Loading = true;
|
|
970
|
+
this.appsFlowSvc
|
|
971
|
+
.ConfigureDevOpsAction(devOpsActionLookup)
|
|
972
|
+
.subscribe((response) => {
|
|
973
|
+
if (response.Status.Code === 0) {
|
|
974
|
+
this.eacSvc.LoadEnterpriseAsCode();
|
|
984
975
|
}
|
|
985
|
-
|
|
976
|
+
else {
|
|
977
|
+
this.State.Loading = false;
|
|
978
|
+
}
|
|
979
|
+
});
|
|
980
|
+
}
|
|
981
|
+
// Helpers
|
|
982
|
+
handleStateChange() {
|
|
983
|
+
var _a;
|
|
984
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
985
|
+
this.State.Loading = true;
|
|
986
|
+
yield this.eacSvc.HasValidConnection();
|
|
987
|
+
yield this.eacSvc.EnsureUserEnterprise();
|
|
988
|
+
yield this.eacSvc.ListEnterprises();
|
|
989
|
+
if (((_a = this.State.Enterprises) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
990
|
+
yield this.eacSvc.GetActiveEnterprise();
|
|
991
|
+
}
|
|
992
|
+
});
|
|
986
993
|
}
|
|
987
994
|
}
|
|
988
995
|
ApplicationsFlowProjectsElementComponent.decorators = [
|
|
@@ -995,8 +1002,7 @@ ApplicationsFlowProjectsElementComponent.decorators = [
|
|
|
995
1002
|
ApplicationsFlowProjectsElementComponent.ctorParameters = () => [
|
|
996
1003
|
{ type: Injector },
|
|
997
1004
|
{ type: ApplicationsFlowService },
|
|
998
|
-
{ type:
|
|
999
|
-
{ type: ApplicationsFlowEventsService }
|
|
1005
|
+
{ type: EaCService }
|
|
1000
1006
|
];
|
|
1001
1007
|
|
|
1002
1008
|
class HostingDetailsFormGroupComponent {
|
|
@@ -1101,10 +1107,9 @@ HostingDetailsFormGroupComponent.propDecorators = {
|
|
|
1101
1107
|
|
|
1102
1108
|
class SourceControlFormControlsComponent {
|
|
1103
1109
|
// Constructors
|
|
1104
|
-
constructor(formBuilder, appsFlowSvc
|
|
1110
|
+
constructor(formBuilder, appsFlowSvc) {
|
|
1105
1111
|
this.formBuilder = formBuilder;
|
|
1106
1112
|
this.appsFlowSvc = appsFlowSvc;
|
|
1107
|
-
this.appsFlowEventsSvc = appsFlowEventsSvc;
|
|
1108
1113
|
this.SeparatorKeysCodes = [ENTER, COMMA];
|
|
1109
1114
|
this.BranchesChanged = new EventEmitter();
|
|
1110
1115
|
this.SelectedBranches = [];
|
|
@@ -1341,8 +1346,7 @@ SourceControlFormControlsComponent.decorators = [
|
|
|
1341
1346
|
];
|
|
1342
1347
|
SourceControlFormControlsComponent.ctorParameters = () => [
|
|
1343
1348
|
{ type: FormBuilder },
|
|
1344
|
-
{ type: ApplicationsFlowService }
|
|
1345
|
-
{ type: ApplicationsFlowEventsService }
|
|
1349
|
+
{ type: ApplicationsFlowService }
|
|
1346
1350
|
];
|
|
1347
1351
|
SourceControlFormControlsComponent.propDecorators = {
|
|
1348
1352
|
BranchesChanged: [{ type: Output, args: ['branches-changed',] }],
|
|
@@ -1361,10 +1365,10 @@ SourceControlFormControlsComponent.propDecorators = {
|
|
|
1361
1365
|
|
|
1362
1366
|
class CreateProjectWizardComponent {
|
|
1363
1367
|
// Constructors
|
|
1364
|
-
constructor(formBuilder, appsFlowSvc,
|
|
1368
|
+
constructor(formBuilder, appsFlowSvc, eacSvc) {
|
|
1365
1369
|
this.formBuilder = formBuilder;
|
|
1366
1370
|
this.appsFlowSvc = appsFlowSvc;
|
|
1367
|
-
this.
|
|
1371
|
+
this.eacSvc = eacSvc;
|
|
1368
1372
|
this.HostingDetails = new ProjectHostingDetails();
|
|
1369
1373
|
}
|
|
1370
1374
|
// Fields
|
|
@@ -1403,7 +1407,7 @@ class CreateProjectWizardComponent {
|
|
|
1403
1407
|
}
|
|
1404
1408
|
// API Methods
|
|
1405
1409
|
Cancel() {
|
|
1406
|
-
this.
|
|
1410
|
+
this.eacSvc.SetCreatingProject(false);
|
|
1407
1411
|
}
|
|
1408
1412
|
ConfigureRepository() {
|
|
1409
1413
|
this.loadProjectHostingDetails();
|
|
@@ -1491,7 +1495,7 @@ CreateProjectWizardComponent.decorators = [
|
|
|
1491
1495
|
CreateProjectWizardComponent.ctorParameters = () => [
|
|
1492
1496
|
{ type: FormBuilder },
|
|
1493
1497
|
{ type: ApplicationsFlowService },
|
|
1494
|
-
{ type:
|
|
1498
|
+
{ type: EaCService }
|
|
1495
1499
|
];
|
|
1496
1500
|
CreateProjectWizardComponent.propDecorators = {
|
|
1497
1501
|
SourceControl: [{ type: ViewChild, args: [SourceControlFormControlsComponent,] }],
|
|
@@ -1567,10 +1571,10 @@ DynamicTabsComponent.propDecorators = {
|
|
|
1567
1571
|
|
|
1568
1572
|
class HeaderComponent {
|
|
1569
1573
|
// Constructors
|
|
1570
|
-
constructor(formBuilder, lcuSettings,
|
|
1574
|
+
constructor(formBuilder, lcuSettings, eacSvc) {
|
|
1571
1575
|
this.formBuilder = formBuilder;
|
|
1572
1576
|
this.lcuSettings = lcuSettings;
|
|
1573
|
-
this.
|
|
1577
|
+
this.eacSvc = eacSvc;
|
|
1574
1578
|
}
|
|
1575
1579
|
get HasProjects() {
|
|
1576
1580
|
return this.ProjectLookups && this.ProjectLookups.length > 0;
|
|
@@ -1609,13 +1613,13 @@ class HeaderComponent {
|
|
|
1609
1613
|
TrustedProviderLookups: ['ADB2C'],
|
|
1610
1614
|
},
|
|
1611
1615
|
};
|
|
1612
|
-
this.
|
|
1616
|
+
this.eacSvc.SaveProjectAsCode({
|
|
1613
1617
|
ProjectLookup: Guid.CreateRaw(),
|
|
1614
1618
|
Project: proj,
|
|
1615
1619
|
});
|
|
1616
1620
|
}
|
|
1617
1621
|
EnableCreatingProject() {
|
|
1618
|
-
this.
|
|
1622
|
+
this.eacSvc.SetCreatingProject(true);
|
|
1619
1623
|
}
|
|
1620
1624
|
}
|
|
1621
1625
|
HeaderComponent.decorators = [
|
|
@@ -1628,7 +1632,7 @@ HeaderComponent.decorators = [
|
|
|
1628
1632
|
HeaderComponent.ctorParameters = () => [
|
|
1629
1633
|
{ type: FormBuilder },
|
|
1630
1634
|
{ type: LCUServiceSettings },
|
|
1631
|
-
{ type:
|
|
1635
|
+
{ type: EaCService }
|
|
1632
1636
|
];
|
|
1633
1637
|
HeaderComponent.propDecorators = {
|
|
1634
1638
|
CreatingProject: [{ type: Input, args: ['creating-project',] }],
|
|
@@ -1643,9 +1647,9 @@ class CardFormConfigModel {
|
|
|
1643
1647
|
}
|
|
1644
1648
|
|
|
1645
1649
|
class DomainsComponent {
|
|
1646
|
-
constructor(formsService,
|
|
1650
|
+
constructor(formsService, eacSvc) {
|
|
1647
1651
|
this.formsService = formsService;
|
|
1648
|
-
this.
|
|
1652
|
+
this.eacSvc = eacSvc;
|
|
1649
1653
|
}
|
|
1650
1654
|
/**
|
|
1651
1655
|
* Access form control for root directory
|
|
@@ -1743,7 +1747,7 @@ class DomainsComponent {
|
|
|
1743
1747
|
* Save changes
|
|
1744
1748
|
*/
|
|
1745
1749
|
save() {
|
|
1746
|
-
this.
|
|
1750
|
+
this.eacSvc.SaveProjectAsCode({
|
|
1747
1751
|
ProjectLookup: this.ProjectLookup,
|
|
1748
1752
|
Project: Object.assign(Object.assign({}, this.Project), {
|
|
1749
1753
|
// Hosts: [...this.Project.Hosts, this.Domain.value],
|
|
@@ -1764,7 +1768,7 @@ DomainsComponent.decorators = [
|
|
|
1764
1768
|
];
|
|
1765
1769
|
DomainsComponent.ctorParameters = () => [
|
|
1766
1770
|
{ type: FormsService },
|
|
1767
|
-
{ type:
|
|
1771
|
+
{ type: EaCService }
|
|
1768
1772
|
];
|
|
1769
1773
|
DomainsComponent.propDecorators = {
|
|
1770
1774
|
Data: [{ type: Input, args: ['data',] }]
|
|
@@ -1820,10 +1824,10 @@ GeneralComponent.propDecorators = {
|
|
|
1820
1824
|
|
|
1821
1825
|
class AppsFlowComponent {
|
|
1822
1826
|
// Constructors
|
|
1823
|
-
constructor(formBldr, appsFlowSvc,
|
|
1827
|
+
constructor(formBldr, appsFlowSvc, eacSvc) {
|
|
1824
1828
|
this.formBldr = formBldr;
|
|
1825
1829
|
this.appsFlowSvc = appsFlowSvc;
|
|
1826
|
-
this.
|
|
1830
|
+
this.eacSvc = eacSvc;
|
|
1827
1831
|
this.EditingApplicationLookup = null;
|
|
1828
1832
|
this.redirectTooltip = '';
|
|
1829
1833
|
// this.IsPermanent = false;
|
|
@@ -2036,9 +2040,7 @@ class AppsFlowComponent {
|
|
|
2036
2040
|
this.SetEditingApplication(Guid.CreateRaw());
|
|
2037
2041
|
}
|
|
2038
2042
|
DeleteApplication(appLookup, appName) {
|
|
2039
|
-
|
|
2040
|
-
this.appsFlowEventsSvc.DeleteApplication(appLookup);
|
|
2041
|
-
}
|
|
2043
|
+
this.eacSvc.DeleteApplication(appLookup, appName);
|
|
2042
2044
|
}
|
|
2043
2045
|
LCUTypeChanged(event) {
|
|
2044
2046
|
this.LCUType = event.value;
|
|
@@ -2177,7 +2179,7 @@ class AppsFlowComponent {
|
|
|
2177
2179
|
else if (app) {
|
|
2178
2180
|
app.SourceControlLookup = null;
|
|
2179
2181
|
}
|
|
2180
|
-
this.
|
|
2182
|
+
this.eacSvc.SaveApplicationAsCode(saveAppReq);
|
|
2181
2183
|
}
|
|
2182
2184
|
SetEditingApplication(appLookup) {
|
|
2183
2185
|
this.EditingApplicationLookup = appLookup;
|
|
@@ -2197,7 +2199,7 @@ class AppsFlowComponent {
|
|
|
2197
2199
|
}
|
|
2198
2200
|
Unpack(appLookup, app) {
|
|
2199
2201
|
var _a, _b, _c;
|
|
2200
|
-
this.
|
|
2202
|
+
this.eacSvc.UnpackLowCodeUnit({
|
|
2201
2203
|
ApplicationLookup: appLookup,
|
|
2202
2204
|
ApplicationName: (_a = app.Application) === null || _a === void 0 ? void 0 : _a.Name,
|
|
2203
2205
|
Version: ((_b = app.LowCodeUnit) === null || _b === void 0 ? void 0 : _b.Version) || ((_c = app.LowCodeUnit) === null || _c === void 0 ? void 0 : _c.Build),
|
|
@@ -2397,7 +2399,7 @@ AppsFlowComponent.decorators = [
|
|
|
2397
2399
|
AppsFlowComponent.ctorParameters = () => [
|
|
2398
2400
|
{ type: FormBuilder },
|
|
2399
2401
|
{ type: ApplicationsFlowService },
|
|
2400
|
-
{ type:
|
|
2402
|
+
{ type: EaCService }
|
|
2401
2403
|
];
|
|
2402
2404
|
AppsFlowComponent.propDecorators = {
|
|
2403
2405
|
Data: [{ type: Input, args: ['data',] }],
|
|
@@ -2406,10 +2408,10 @@ AppsFlowComponent.propDecorators = {
|
|
|
2406
2408
|
|
|
2407
2409
|
class DevOpsComponent {
|
|
2408
2410
|
// Constructors
|
|
2409
|
-
constructor(formBldr, appsFlowSvc,
|
|
2411
|
+
constructor(formBldr, appsFlowSvc, eacSvc) {
|
|
2410
2412
|
this.formBldr = formBldr;
|
|
2411
2413
|
this.appsFlowSvc = appsFlowSvc;
|
|
2412
|
-
this.
|
|
2414
|
+
this.eacSvc = eacSvc;
|
|
2413
2415
|
this.EditingSourceControlLookup = null;
|
|
2414
2416
|
this.HostingDetails = new ProjectHostingDetails();
|
|
2415
2417
|
}
|
|
@@ -2483,7 +2485,7 @@ class DevOpsComponent {
|
|
|
2483
2485
|
}
|
|
2484
2486
|
DeleteSourceControl(scLookup) {
|
|
2485
2487
|
if (confirm(`Are you sure you want to delete source control '${scLookup}'?`)) {
|
|
2486
|
-
this.
|
|
2488
|
+
this.eacSvc.DeleteSourceControl(scLookup);
|
|
2487
2489
|
}
|
|
2488
2490
|
}
|
|
2489
2491
|
DevOpsActionLookupChanged(event) {
|
|
@@ -2537,7 +2539,7 @@ class DevOpsComponent {
|
|
|
2537
2539
|
source = Object.assign(Object.assign({}, source), { Type: 'GitHub', Name: this.EditingSourceControlLookup, DevOpsActionTriggerLookups: [devOpsActionLookup], Organization: this.SourceControlFormControls.OrganizationFormControl.value, Repository: this.SourceControlFormControls.RepositoryFormControl.value });
|
|
2538
2540
|
const scLookup = `github://${source.Organization}/${source.Repository}`;
|
|
2539
2541
|
saveEnvReq.Environment.Sources[scLookup] = source;
|
|
2540
|
-
this.
|
|
2542
|
+
this.eacSvc.SaveEnvironmentAsCode(saveEnvReq);
|
|
2541
2543
|
}
|
|
2542
2544
|
SetEditingSourceControl(scLookup) {
|
|
2543
2545
|
this.EditingSourceControlLookup = scLookup;
|
|
@@ -2590,7 +2592,7 @@ DevOpsComponent.decorators = [
|
|
|
2590
2592
|
DevOpsComponent.ctorParameters = () => [
|
|
2591
2593
|
{ type: FormBuilder },
|
|
2592
2594
|
{ type: ApplicationsFlowService },
|
|
2593
|
-
{ type:
|
|
2595
|
+
{ type: EaCService }
|
|
2594
2596
|
];
|
|
2595
2597
|
DevOpsComponent.propDecorators = {
|
|
2596
2598
|
Data: [{ type: Input, args: ['data',] }],
|
|
@@ -2600,10 +2602,10 @@ DevOpsComponent.propDecorators = {
|
|
|
2600
2602
|
|
|
2601
2603
|
class DFSModifiersComponent {
|
|
2602
2604
|
// Constructors
|
|
2603
|
-
constructor(formBldr, appsFlowSvc,
|
|
2605
|
+
constructor(formBldr, appsFlowSvc, eacSvc) {
|
|
2604
2606
|
this.formBldr = formBldr;
|
|
2605
2607
|
this.appsFlowSvc = appsFlowSvc;
|
|
2606
|
-
this.
|
|
2608
|
+
this.eacSvc = eacSvc;
|
|
2607
2609
|
this.EditingModifierLookup = null;
|
|
2608
2610
|
}
|
|
2609
2611
|
get DetailsFormControl() {
|
|
@@ -2677,7 +2679,7 @@ class DFSModifiersComponent {
|
|
|
2677
2679
|
}
|
|
2678
2680
|
DeleteModifier(modifierLookup, modifierName) {
|
|
2679
2681
|
if (confirm(`Are you sure you want to delete modifier '${modifierName}'?`)) {
|
|
2680
|
-
this.
|
|
2682
|
+
this.eacSvc.DeleteSourceControl(modifierLookup);
|
|
2681
2683
|
}
|
|
2682
2684
|
}
|
|
2683
2685
|
SaveModifier(projectLookup = null) {
|
|
@@ -2700,7 +2702,7 @@ class DFSModifiersComponent {
|
|
|
2700
2702
|
break;
|
|
2701
2703
|
}
|
|
2702
2704
|
saveMdfrReq.Modifier.Details = JSON.stringify(details);
|
|
2703
|
-
this.
|
|
2705
|
+
this.eacSvc.SaveDFSModifier(saveMdfrReq);
|
|
2704
2706
|
}
|
|
2705
2707
|
SetEditingModifier(modifierLookup) {
|
|
2706
2708
|
this.EditingModifierLookup = modifierLookup;
|
|
@@ -2765,7 +2767,7 @@ DFSModifiersComponent.decorators = [
|
|
|
2765
2767
|
DFSModifiersComponent.ctorParameters = () => [
|
|
2766
2768
|
{ type: FormBuilder },
|
|
2767
2769
|
{ type: ApplicationsFlowService },
|
|
2768
|
-
{ type:
|
|
2770
|
+
{ type: EaCService }
|
|
2769
2771
|
];
|
|
2770
2772
|
DFSModifiersComponent.propDecorators = {
|
|
2771
2773
|
Data: [{ type: Input, args: ['data',] }]
|
|
@@ -2857,8 +2859,8 @@ ProjectTabsComponent.propDecorators = {
|
|
|
2857
2859
|
|
|
2858
2860
|
class ProjectItemsComponent {
|
|
2859
2861
|
// Constructors
|
|
2860
|
-
constructor(
|
|
2861
|
-
this.
|
|
2862
|
+
constructor(eacSvc) {
|
|
2863
|
+
this.eacSvc = eacSvc;
|
|
2862
2864
|
}
|
|
2863
2865
|
// Fields
|
|
2864
2866
|
// Properties
|
|
@@ -2871,7 +2873,7 @@ class ProjectItemsComponent {
|
|
|
2871
2873
|
// API Methods
|
|
2872
2874
|
DeleteProject(projectLookup, projectName) {
|
|
2873
2875
|
if (confirm(`Are you sure you want to delete project '${projectName}'?`)) {
|
|
2874
|
-
this.
|
|
2876
|
+
this.eacSvc.DeleteProject(projectLookup);
|
|
2875
2877
|
}
|
|
2876
2878
|
}
|
|
2877
2879
|
GetPrimaryHost(project) {
|
|
@@ -2884,7 +2886,7 @@ class ProjectItemsComponent {
|
|
|
2884
2886
|
* Event to edit project settings
|
|
2885
2887
|
*/
|
|
2886
2888
|
ProjectSettings(projectLookup) {
|
|
2887
|
-
this.
|
|
2889
|
+
this.eacSvc.SetEditProjectSettings(projectLookup);
|
|
2888
2890
|
}
|
|
2889
2891
|
}
|
|
2890
2892
|
ProjectItemsComponent.decorators = [
|
|
@@ -2895,7 +2897,7 @@ ProjectItemsComponent.decorators = [
|
|
|
2895
2897
|
},] }
|
|
2896
2898
|
];
|
|
2897
2899
|
ProjectItemsComponent.ctorParameters = () => [
|
|
2898
|
-
{ type:
|
|
2900
|
+
{ type: EaCService }
|
|
2899
2901
|
];
|
|
2900
2902
|
ProjectItemsComponent.propDecorators = {
|
|
2901
2903
|
Projects: [{ type: Input, args: ['projects',] }],
|
|
@@ -2903,9 +2905,7 @@ ProjectItemsComponent.propDecorators = {
|
|
|
2903
2905
|
};
|
|
2904
2906
|
|
|
2905
2907
|
class BuildsComponent {
|
|
2906
|
-
constructor(
|
|
2907
|
-
this.appsFlowEventsSvc = appsFlowEventsSvc;
|
|
2908
|
-
}
|
|
2908
|
+
constructor() { }
|
|
2909
2909
|
ngOnInit() { }
|
|
2910
2910
|
ngOnDestroy() {
|
|
2911
2911
|
}
|
|
@@ -2924,9 +2924,7 @@ BuildsComponent.decorators = [
|
|
|
2924
2924
|
styles: ["@import url(\"https://fonts.googleapis.com/icon?family=Material+Icons\");@import url(\"https://fonts.googleapis.com/css?family=Encode+Sans+Condensed:400,900&display=swap\");@import url(\"https://fonts.googleapis.com/css?family=Open+Sans:300,400,700&display=swap\");.disable-autofill-background-default input:-webkit-autofill,.disable-autofill-background-default input:-webkit-autofill:focus,.disable-autofill-background-default input:-webkit-autofill:hover,.disable-autofill-background-default select:-webkit-autofill,.disable-autofill-background-default select:-webkit-autofill:focus,.disable-autofill-background-default select:-webkit-autofill:hover,.disable-autofill-background-default textarea:-webkit-autofill,.disable-autofill-background-default textarea:-webkit-autofill:focus,.disable-autofill-background-default textarea:-webkit-autofill:hover{-webkit-transition:background-color 5000s!important;transition:background-color 5000s!important}.list-item-disabled{cursor:not-allowed!important;filter:alpha(opacity=50);opacity:.5}.filler{display:inline-block!important;flex:1 1 auto}.sticky{position:-webkit-sticky;position:sticky;top:0;z-index:750}.inline{display:inline-block}.contents,.page-element{display:contents}.mat-spinner{margin:auto}.mat-full-width{width:100%}.spread{margin:2rem}.spread-thin{margin:1rem}.overlay{position:-webkit-sticky!important;position:sticky!important}.overlay.top{top:0}.overlay.bottom{bottom:0}.margin-0{margin:0!important}.margin-top-0,.margin-y-0{margin-top:0!important}.margin-right-0,.margin-x-0{margin-right:0!important}.margin-bottom-0,.margin-y-0{margin-bottom:0!important}.margin-left-0,.margin-x-0{margin-left:0!important}.margin-1{margin:.25rem!important}.margin-top-1,.margin-y-1{margin-top:.25rem!important}.margin-right-1,.margin-x-1{margin-right:.25rem!important}.margin-bottom-1,.margin-y-1{margin-bottom:.25rem!important}.margin-left-1,.margin-x-1{margin-left:.25rem!important}.margin-2{margin:.5rem!important}.margin-top-2,.margin-y-2{margin-top:.5rem!important}.margin-right-2,.margin-x-2{margin-right:.5rem!important}.margin-bottom-2,.margin-y-2{margin-bottom:.5rem!important}.margin-left-2,.margin-x-2{margin-left:.5rem!important}.margin-3{margin:1rem!important}.margin-top-3,.margin-y-3{margin-top:1rem!important}.margin-top-bottom-3{margin:1rem 0!important}.margin-right-3,.margin-x-3{margin-right:1rem!important}.margin-bottom-3,.margin-y-3{margin-bottom:1rem!important}.margin-left-3,.margin-x-3{margin-left:1rem!important}.margin-4{margin:2rem!important}.margin-top-4,.margin-y-4{margin-top:2rem!important}.margin-right-4,.margin-x-4{margin-right:2rem!important}.margin-bottom-4,.margin-y-4{margin-bottom:2rem!important}.margin-left-4,.margin-x-4{margin-left:2rem!important}.margin-right-5,.margin-x-5{margin-right:4rem!important}.margin-bottom-5,.margin-y-5{margin-bottom:4rem!important}.margin-left-5,.margin-x-5{margin-left:4rem!important}.margin-5{margin:4rem!important}.margin-top-5,.margin-y-5{margin-top:4rem!important}.margin-right-6,.margin-x-6{margin-right:4.5rem!important}.margin-bottom-6,.margin-y-6{margin-bottom:4.5rem!important}.margin-left-6,.margin-x-6{margin-left:4.5rem!important}.margin-7{margin:6rem!important}.margin-top-7,.margin-y-7{margin-top:6rem!important}.margin-right-7,.margin-x-7{margin-right:6rem!important}.margin-bottom-7,.margin-y-7{margin-bottom:6rem!important}.margin-left-7,.margin-x-7{margin-left:6rem!important}.margin-8{margin:7.5rem!important}.margin-top-8,.margin-y-8{margin-top:7.5rem!important}.margin-right-8,.margin-x-8{margin-right:7.5rem!important}.margin-bottom-8,.margin-y-8{margin-bottom:7.5rem!important}.margin-left-8,.margin-x-8{margin-left:7.5rem!important}.margin-9{margin:9rem!important}.margin-top-9,.margin-y-9{margin-top:9rem!important}.margin-right-9,.margin-x-9{margin-right:9rem!important}.margin-bottom-9,.margin-y-9{margin-bottom:9rem!important}.margin-left-9,.margin-x-9{margin-left:9rem!important}.padding-0{padding:0!important}.padding-top-0,.padding-y-0{padding-top:0!important}.padding-right-0,.padding-x-0{padding-right:0!important}.padding-bottom-0,.padding-y-0{padding-bottom:0!important}.padding-left-0,.padding-x-0{padding-left:0!important}.padding-1{padding:.25rem!important}.padding-top-1,.padding-y-1{padding-top:.25rem!important}.padding-right-1,.padding-x-1{padding-right:.25rem!important}.padding-bottom-1,.padding-y-1{padding-bottom:.25rem!important}.padding-left-1,.padding-x-1{padding-left:.25rem!important}.padding-2{padding:.5rem!important}.padding-top-2,.padding-y-2{padding-top:.5rem!important}.padding-right-2,.padding-x-2{padding-right:.5rem!important}.padding-bottom-2,.padding-y-2{padding-bottom:.5rem!important}.padding-left-2,.padding-x-2{padding-left:.5rem!important}.padding-3{padding:1rem!important}.padding-top-3,.padding-y-3{padding-top:1rem!important}.padding-right-3,.padding-x-3{padding-right:1rem!important}.padding-bottom-3,.padding-y-3{padding-bottom:1rem!important}.padding-left-3,.padding-x-3{padding-left:1rem!important}.padding-4{padding:2rem!important}.padding-top-4,.padding-y-4{padding-top:2rem!important}.padding-right-4,.padding-x-4{padding-right:2rem!important}.padding-bottom-4,.padding-y-4{padding-bottom:2rem!important}.padding-left-4,.padding-x-4{padding-left:2rem!important}.padding-5{padding:4rem!important}.padding-top-5,.padding-y-5{padding-top:4rem!important}.padding-right-5,.padding-x-5{padding-right:4rem!important}.padding-bottom-5,.padding-y-5{padding-bottom:4rem!important}.padding-left-5,.padding-x-5{padding-left:4rem!important}.margin-n1{margin:-.25rem!important}.margin-top-n1,.margin-y-n1{margin-top:-.25rem!important}.margin-right-n1,.margin-x-n1{margin-right:-.25rem!important}.margin-bottom-n1,.margin-y-n1{margin-bottom:-.25rem!important}.margin-left-n1,.margin-x-n1{margin-left:-.25rem!important}.margin-n2{margin:-.5rem!important}.margin-top-n2,.margin-y-n2{margin-top:-.5rem!important}.margin-right-n2,.margin-x-n2{margin-right:-.5rem!important}.margin-bottom-n2,.margin-y-n2{margin-bottom:-.5rem!important}.margin-left-n2,.margin-x-n2{margin-left:-.5rem!important}.margin-n3{margin:-1rem!important}.margin-top-n3,.margin-y-n3{margin-top:-1rem!important}.margin-right-n3,.margin-x-n3{margin-right:-1rem!important}.margin-bottom-n3,.margin-y-n3{margin-bottom:-1rem!important}.margin-left-n3,.margin-x-n3{margin-left:-1rem!important}.margin-n4{margin:-2rem!important}.margin-top-n4,.margin-y-n4{margin-top:-2rem!important}.margin-right-n4,.margin-x-n4{margin-right:-2rem!important}.margin-bottom-n4,.margin-y-n4{margin-bottom:-2rem!important}.margin-left-n4,.margin-x-n4{margin-left:-2rem!important}.margin-n5{margin:-4rem!important}.margin-top-n5,.margin-y-n5{margin-top:-4rem!important}.margin-right-n5,.margin-x-n5{margin-right:-4rem!important}.margin-bottom-n5,.margin-y-n5{margin-bottom:-4rem!important}.margin-left-n5,.margin-x-n5{margin-left:-4rem!important}.margin-auto{margin:auto!important}.margin-top-auto,.margin-y-auto{margin-top:auto!important}.margin-right-auto,.margin-x-auto{margin-right:auto!important}.margin-bottom-auto,.margin-y-auto{margin-bottom:auto!important}.margin-left-auto,.margin-x-auto{margin-left:auto!important}@media (min-width:576px){.margin-sm-0{margin:0!important}.margin-top-sm-0,.margin-y-sm-0{margin-top:0!important}.margin-right-sm-0,.margin-x-sm-0{margin-right:0!important}.margin-bottom-sm-0,.margin-y-sm-0{margin-bottom:0!important}.margin-left-sm-0,.margin-x-sm-0{margin-left:0!important}.margin-sm-1{margin:.25rem!important}.margin-top-sm-1,.margin-y-sm-1{margin-top:.25rem!important}.margin-right-sm-1,.margin-x-sm-1{margin-right:.25rem!important}.margin-bottom-sm-1,.margin-y-sm-1{margin-bottom:.25rem!important}.margin-left-sm-1,.margin-x-sm-1{margin-left:.25rem!important}.margin-sm-2{margin:.5rem!important}.margin-top-sm-2,.margin-y-sm-2{margin-top:.5rem!important}.margin-right-sm-2,.margin-x-sm-2{margin-right:.5rem!important}.margin-bottom-sm-2,.margin-y-sm-2{margin-bottom:.5rem!important}.margin-left-sm-2,.margin-x-sm-2{margin-left:.5rem!important}.margin-sm-3{margin:1rem!important}.margin-top-sm-3,.margin-y-sm-3{margin-top:1rem!important}.margin-right-sm-3,.margin-x-sm-3{margin-right:1rem!important}.margin-bottom-sm-3,.margin-y-sm-3{margin-bottom:1rem!important}.margin-left-sm-3,.margin-x-sm-3{margin-left:1rem!important}.margin-sm-4{margin:2rem!important}.margin-top-sm-4,.margin-y-sm-4{margin-top:2rem!important}.margin-right-sm-4,.margin-x-sm-4{margin-right:2rem!important}.margin-bottom-sm-4,.margin-y-sm-4{margin-bottom:2rem!important}.margin-left-sm-4,.margin-x-sm-4{margin-left:2rem!important}.margin-sm-5{margin:4rem!important}.margin-top-sm-5,.margin-y-sm-5{margin-top:4rem!important}.margin-right-sm-5,.margin-x-sm-5{margin-right:4rem!important}.margin-bottom-sm-5,.margin-y-sm-5{margin-bottom:4rem!important}.margin-left-sm-5,.margin-x-sm-5{margin-left:4rem!important}.padding-sm-0{padding:0!important}.padding-top-sm-0,.padding-y-sm-0{padding-top:0!important}.padding-right-sm-0,.padding-x-sm-0{padding-right:0!important}.padding-bottom-sm-0,.padding-y-sm-0{padding-bottom:0!important}.padding-left-sm-0,.padding-x-sm-0{padding-left:0!important}.padding-sm-1{padding:.25rem!important}.padding-top-sm-1,.padding-y-sm-1{padding-top:.25rem!important}.padding-right-sm-1,.padding-x-sm-1{padding-right:.25rem!important}.padding-bottom-sm-1,.padding-y-sm-1{padding-bottom:.25rem!important}.padding-left-sm-1,.padding-x-sm-1{padding-left:.25rem!important}.padding-sm-2{padding:.5rem!important}.padding-top-sm-2,.padding-y-sm-2{padding-top:.5rem!important}.padding-right-sm-2,.padding-x-sm-2{padding-right:.5rem!important}.padding-bottom-sm-2,.padding-y-sm-2{padding-bottom:.5rem!important}.padding-left-sm-2,.padding-x-sm-2{padding-left:.5rem!important}.padding-sm-3{padding:1rem!important}.padding-top-sm-3,.padding-y-sm-3{padding-top:1rem!important}.padding-right-sm-3,.padding-x-sm-3{padding-right:1rem!important}.padding-bottom-sm-3,.padding-y-sm-3{padding-bottom:1rem!important}.padding-left-sm-3,.padding-x-sm-3{padding-left:1rem!important}.padding-sm-4{padding:2rem!important}.padding-top-sm-4,.padding-y-sm-4{padding-top:2rem!important}.padding-right-sm-4,.padding-x-sm-4{padding-right:2rem!important}.padding-bottom-sm-4,.padding-y-sm-4{padding-bottom:2rem!important}.padding-left-sm-4,.padding-x-sm-4{padding-left:2rem!important}.padding-sm-5{padding:4rem!important}.padding-top-sm-5,.padding-y-sm-5{padding-top:4rem!important}.padding-right-sm-5,.padding-x-sm-5{padding-right:4rem!important}.padding-bottom-sm-5,.padding-y-sm-5{padding-bottom:4rem!important}.padding-left-sm-5,.padding-x-sm-5{padding-left:4rem!important}.margin-sm-n1{margin:-.25rem!important}.margin-top-sm-n1,.margin-y-sm-n1{margin-top:-.25rem!important}.margin-right-sm-n1,.margin-x-sm-n1{margin-right:-.25rem!important}.margin-bottom-sm-n1,.margin-y-sm-n1{margin-bottom:-.25rem!important}.margin-left-sm-n1,.margin-x-sm-n1{margin-left:-.25rem!important}.margin-sm-n2{margin:-.5rem!important}.margin-top-sm-n2,.margin-y-sm-n2{margin-top:-.5rem!important}.margin-right-sm-n2,.margin-x-sm-n2{margin-right:-.5rem!important}.margin-bottom-sm-n2,.margin-y-sm-n2{margin-bottom:-.5rem!important}.margin-left-sm-n2,.margin-x-sm-n2{margin-left:-.5rem!important}.margin-sm-n3{margin:-1rem!important}.margin-top-sm-n3,.margin-y-sm-n3{margin-top:-1rem!important}.margin-right-sm-n3,.margin-x-sm-n3{margin-right:-1rem!important}.margin-bottom-sm-n3,.margin-y-sm-n3{margin-bottom:-1rem!important}.margin-left-sm-n3,.margin-x-sm-n3{margin-left:-1rem!important}.margin-sm-n4{margin:-2rem!important}.margin-top-sm-n4,.margin-y-sm-n4{margin-top:-2rem!important}.margin-right-sm-n4,.margin-x-sm-n4{margin-right:-2rem!important}.margin-bottom-sm-n4,.margin-y-sm-n4{margin-bottom:-2rem!important}.margin-left-sm-n4,.margin-x-sm-n4{margin-left:-2rem!important}.margin-sm-n5{margin:-4rem!important}.margin-top-sm-n5,.margin-y-sm-n5{margin-top:-4rem!important}.margin-right-sm-n5,.margin-x-sm-n5{margin-right:-4rem!important}.margin-bottom-sm-n5,.margin-y-sm-n5{margin-bottom:-4rem!important}.margin-left-sm-n5,.margin-x-sm-n5{margin-left:-4rem!important}.margin-sm-auto{margin:auto!important}.margin-top-sm-auto,.margin-y-sm-auto{margin-top:auto!important}.margin-right-sm-auto,.margin-x-sm-auto{margin-right:auto!important}.margin-bottom-sm-auto,.margin-y-sm-auto{margin-bottom:auto!important}.margin-left-sm-auto,.margin-x-sm-auto{margin-left:auto!important}}@media (min-width:768px){.margin-md-0{margin:0!important}.margin-top-md-0,.margin-y-md-0{margin-top:0!important}.margin-right-md-0,.margin-x-md-0{margin-right:0!important}.margin-bottom-md-0,.margin-y-md-0{margin-bottom:0!important}.margin-left-md-0,.margin-x-md-0{margin-left:0!important}.margin-md-1{margin:.25rem!important}.margin-top-md-1,.margin-y-md-1{margin-top:.25rem!important}.margin-right-md-1,.margin-x-md-1{margin-right:.25rem!important}.margin-bottom-md-1,.margin-y-md-1{margin-bottom:.25rem!important}.margin-left-md-1,.margin-x-md-1{margin-left:.25rem!important}.margin-md-2{margin:.5rem!important}.margin-top-md-2,.margin-y-md-2{margin-top:.5rem!important}.margin-right-md-2,.margin-x-md-2{margin-right:.5rem!important}.margin-bottom-md-2,.margin-y-md-2{margin-bottom:.5rem!important}.margin-left-md-2,.margin-x-md-2{margin-left:.5rem!important}.margin-md-3{margin:1rem!important}.margin-top-md-3,.margin-y-md-3{margin-top:1rem!important}.margin-right-md-3,.margin-x-md-3{margin-right:1rem!important}.margin-bottom-md-3,.margin-y-md-3{margin-bottom:1rem!important}.margin-left-md-3,.margin-x-md-3{margin-left:1rem!important}.margin-md-4{margin:2rem!important}.margin-top-md-4,.margin-y-md-4{margin-top:2rem!important}.margin-right-md-4,.margin-x-md-4{margin-right:2rem!important}.margin-bottom-md-4,.margin-y-md-4{margin-bottom:2rem!important}.margin-left-md-4,.margin-x-md-4{margin-left:2rem!important}.margin-md-5{margin:4rem!important}.margin-top-md-5,.margin-y-md-5{margin-top:4rem!important}.margin-right-md-5,.margin-x-md-5{margin-right:4rem!important}.margin-bottom-md-5,.margin-y-md-5{margin-bottom:4rem!important}.margin-left-md-5,.margin-x-md-5{margin-left:4rem!important}.padding-md-0{padding:0!important}.padding-top-md-0,.padding-y-md-0{padding-top:0!important}.padding-right-md-0,.padding-x-md-0{padding-right:0!important}.padding-bottom-md-0,.padding-y-md-0{padding-bottom:0!important}.padding-left-md-0,.padding-x-md-0{padding-left:0!important}.padding-md-1{padding:.25rem!important}.padding-top-md-1,.padding-y-md-1{padding-top:.25rem!important}.padding-right-md-1,.padding-x-md-1{padding-right:.25rem!important}.padding-bottom-md-1,.padding-y-md-1{padding-bottom:.25rem!important}.padding-left-md-1,.padding-x-md-1{padding-left:.25rem!important}.padding-md-2{padding:.5rem!important}.padding-top-md-2,.padding-y-md-2{padding-top:.5rem!important}.padding-right-md-2,.padding-x-md-2{padding-right:.5rem!important}.padding-bottom-md-2,.padding-y-md-2{padding-bottom:.5rem!important}.padding-left-md-2,.padding-x-md-2{padding-left:.5rem!important}.padding-md-3{padding:1rem!important}.padding-top-md-3,.padding-y-md-3{padding-top:1rem!important}.padding-right-md-3,.padding-x-md-3{padding-right:1rem!important}.padding-bottom-md-3,.padding-y-md-3{padding-bottom:1rem!important}.padding-left-md-3,.padding-x-md-3{padding-left:1rem!important}.padding-md-4{padding:2rem!important}.padding-top-md-4,.padding-y-md-4{padding-top:2rem!important}.padding-right-md-4,.padding-x-md-4{padding-right:2rem!important}.padding-bottom-md-4,.padding-y-md-4{padding-bottom:2rem!important}.padding-left-md-4,.padding-x-md-4{padding-left:2rem!important}.padding-md-5{padding:4rem!important}.padding-top-md-5,.padding-y-md-5{padding-top:4rem!important}.padding-right-md-5,.padding-x-md-5{padding-right:4rem!important}.padding-bottom-md-5,.padding-y-md-5{padding-bottom:4rem!important}.padding-left-md-5,.padding-x-md-5{padding-left:4rem!important}.margin-md-n1{margin:-.25rem!important}.margin-top-md-n1,.margin-y-md-n1{margin-top:-.25rem!important}.margin-right-md-n1,.margin-x-md-n1{margin-right:-.25rem!important}.margin-bottom-md-n1,.margin-y-md-n1{margin-bottom:-.25rem!important}.margin-left-md-n1,.margin-x-md-n1{margin-left:-.25rem!important}.margin-md-n2{margin:-.5rem!important}.margin-top-md-n2,.margin-y-md-n2{margin-top:-.5rem!important}.margin-right-md-n2,.margin-x-md-n2{margin-right:-.5rem!important}.margin-bottom-md-n2,.margin-y-md-n2{margin-bottom:-.5rem!important}.margin-left-md-n2,.margin-x-md-n2{margin-left:-.5rem!important}.margin-md-n3{margin:-1rem!important}.margin-top-md-n3,.margin-y-md-n3{margin-top:-1rem!important}.margin-right-md-n3,.margin-x-md-n3{margin-right:-1rem!important}.margin-bottom-md-n3,.margin-y-md-n3{margin-bottom:-1rem!important}.margin-left-md-n3,.margin-x-md-n3{margin-left:-1rem!important}.margin-md-n4{margin:-2rem!important}.margin-top-md-n4,.margin-y-md-n4{margin-top:-2rem!important}.margin-right-md-n4,.margin-x-md-n4{margin-right:-2rem!important}.margin-bottom-md-n4,.margin-y-md-n4{margin-bottom:-2rem!important}.margin-left-md-n4,.margin-x-md-n4{margin-left:-2rem!important}.margin-md-n5{margin:-4rem!important}.margin-top-md-n5,.margin-y-md-n5{margin-top:-4rem!important}.margin-right-md-n5,.margin-x-md-n5{margin-right:-4rem!important}.margin-bottom-md-n5,.margin-y-md-n5{margin-bottom:-4rem!important}.margin-left-md-n5,.margin-x-md-n5{margin-left:-4rem!important}.margin-md-auto{margin:auto!important}.margin-top-md-auto,.margin-y-md-auto{margin-top:auto!important}.margin-right-md-auto,.margin-x-md-auto{margin-right:auto!important}.margin-bottom-md-auto,.margin-y-md-auto{margin-bottom:auto!important}.margin-left-md-auto,.margin-x-md-auto{margin-left:auto!important}}@media (min-width:992px){.margin-lg-0{margin:0!important}.margin-top-lg-0,.margin-y-lg-0{margin-top:0!important}.margin-right-lg-0,.margin-x-lg-0{margin-right:0!important}.margin-bottom-lg-0,.margin-y-lg-0{margin-bottom:0!important}.margin-left-lg-0,.margin-x-lg-0{margin-left:0!important}.margin-lg-1{margin:.25rem!important}.margin-top-lg-1,.margin-y-lg-1{margin-top:.25rem!important}.margin-right-lg-1,.margin-x-lg-1{margin-right:.25rem!important}.margin-bottom-lg-1,.margin-y-lg-1{margin-bottom:.25rem!important}.margin-left-lg-1,.margin-x-lg-1{margin-left:.25rem!important}.margin-lg-2{margin:.5rem!important}.margin-top-lg-2,.margin-y-lg-2{margin-top:.5rem!important}.margin-right-lg-2,.margin-x-lg-2{margin-right:.5rem!important}.margin-bottom-lg-2,.margin-y-lg-2{margin-bottom:.5rem!important}.margin-left-lg-2,.margin-x-lg-2{margin-left:.5rem!important}.margin-lg-3{margin:1rem!important}.margin-top-lg-3,.margin-y-lg-3{margin-top:1rem!important}.margin-right-lg-3,.margin-x-lg-3{margin-right:1rem!important}.margin-bottom-lg-3,.margin-y-lg-3{margin-bottom:1rem!important}.margin-left-lg-3,.margin-x-lg-3{margin-left:1rem!important}.margin-lg-4{margin:2rem!important}.margin-top-lg-4,.margin-y-lg-4{margin-top:2rem!important}.margin-right-lg-4,.margin-x-lg-4{margin-right:2rem!important}.margin-bottom-lg-4,.margin-y-lg-4{margin-bottom:2rem!important}.margin-left-lg-4,.margin-x-lg-4{margin-left:2rem!important}.margin-lg-5{margin:4rem!important}.margin-top-lg-5,.margin-y-lg-5{margin-top:4rem!important}.margin-right-lg-5,.margin-x-lg-5{margin-right:4rem!important}.margin-bottom-lg-5,.margin-y-lg-5{margin-bottom:4rem!important}.margin-left-lg-5,.margin-x-lg-5{margin-left:4rem!important}.padding-lg-0{padding:0!important}.padding-top-lg-0,.padding-y-lg-0{padding-top:0!important}.padding-right-lg-0,.padding-x-lg-0{padding-right:0!important}.padding-bottom-lg-0,.padding-y-lg-0{padding-bottom:0!important}.padding-left-lg-0,.padding-x-lg-0{padding-left:0!important}.padding-lg-1{padding:.25rem!important}.padding-top-lg-1,.padding-y-lg-1{padding-top:.25rem!important}.padding-right-lg-1,.padding-x-lg-1{padding-right:.25rem!important}.padding-bottom-lg-1,.padding-y-lg-1{padding-bottom:.25rem!important}.padding-left-lg-1,.padding-x-lg-1{padding-left:.25rem!important}.padding-lg-2{padding:.5rem!important}.padding-top-lg-2,.padding-y-lg-2{padding-top:.5rem!important}.padding-right-lg-2,.padding-x-lg-2{padding-right:.5rem!important}.padding-bottom-lg-2,.padding-y-lg-2{padding-bottom:.5rem!important}.padding-left-lg-2,.padding-x-lg-2{padding-left:.5rem!important}.padding-lg-3{padding:1rem!important}.padding-top-lg-3,.padding-y-lg-3{padding-top:1rem!important}.padding-right-lg-3,.padding-x-lg-3{padding-right:1rem!important}.padding-bottom-lg-3,.padding-y-lg-3{padding-bottom:1rem!important}.padding-left-lg-3,.padding-x-lg-3{padding-left:1rem!important}.padding-lg-4{padding:2rem!important}.padding-top-lg-4,.padding-y-lg-4{padding-top:2rem!important}.padding-right-lg-4,.padding-x-lg-4{padding-right:2rem!important}.padding-bottom-lg-4,.padding-y-lg-4{padding-bottom:2rem!important}.padding-left-lg-4,.padding-x-lg-4{padding-left:2rem!important}.padding-lg-5{padding:4rem!important}.padding-top-lg-5,.padding-y-lg-5{padding-top:4rem!important}.padding-right-lg-5,.padding-x-lg-5{padding-right:4rem!important}.padding-bottom-lg-5,.padding-y-lg-5{padding-bottom:4rem!important}.padding-left-lg-5,.padding-x-lg-5{padding-left:4rem!important}.margin-lg-n1{margin:-.25rem!important}.margin-top-lg-n1,.margin-y-lg-n1{margin-top:-.25rem!important}.margin-right-lg-n1,.margin-x-lg-n1{margin-right:-.25rem!important}.margin-bottom-lg-n1,.margin-y-lg-n1{margin-bottom:-.25rem!important}.margin-left-lg-n1,.margin-x-lg-n1{margin-left:-.25rem!important}.margin-lg-n2{margin:-.5rem!important}.margin-top-lg-n2,.margin-y-lg-n2{margin-top:-.5rem!important}.margin-right-lg-n2,.margin-x-lg-n2{margin-right:-.5rem!important}.margin-bottom-lg-n2,.margin-y-lg-n2{margin-bottom:-.5rem!important}.margin-left-lg-n2,.margin-x-lg-n2{margin-left:-.5rem!important}.margin-lg-n3{margin:-1rem!important}.margin-top-lg-n3,.margin-y-lg-n3{margin-top:-1rem!important}.margin-right-lg-n3,.margin-x-lg-n3{margin-right:-1rem!important}.margin-bottom-lg-n3,.margin-y-lg-n3{margin-bottom:-1rem!important}.margin-left-lg-n3,.margin-x-lg-n3{margin-left:-1rem!important}.margin-lg-n4{margin:-2rem!important}.margin-top-lg-n4,.margin-y-lg-n4{margin-top:-2rem!important}.margin-right-lg-n4,.margin-x-lg-n4{margin-right:-2rem!important}.margin-bottom-lg-n4,.margin-y-lg-n4{margin-bottom:-2rem!important}.margin-left-lg-n4,.margin-x-lg-n4{margin-left:-2rem!important}.margin-lg-n5{margin:-4rem!important}.margin-top-lg-n5,.margin-y-lg-n5{margin-top:-4rem!important}.margin-right-lg-n5,.margin-x-lg-n5{margin-right:-4rem!important}.margin-bottom-lg-n5,.margin-y-lg-n5{margin-bottom:-4rem!important}.margin-left-lg-n5,.margin-x-lg-n5{margin-left:-4rem!important}.margin-lg-auto{margin:auto!important}.margin-top-lg-auto,.margin-y-lg-auto{margin-top:auto!important}.margin-right-lg-auto,.margin-x-lg-auto{margin-right:auto!important}.margin-bottom-lg-auto,.margin-y-lg-auto{margin-bottom:auto!important}.margin-left-lg-auto,.margin-x-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.margin-xl-0{margin:0!important}.margin-top-xl-0,.margin-y-xl-0{margin-top:0!important}.margin-right-xl-0,.margin-x-xl-0{margin-right:0!important}.margin-bottom-xl-0,.margin-y-xl-0{margin-bottom:0!important}.margin-left-xl-0,.margin-x-xl-0{margin-left:0!important}.margin-xl-1{margin:.25rem!important}.margin-top-xl-1,.margin-y-xl-1{margin-top:.25rem!important}.margin-right-xl-1,.margin-x-xl-1{margin-right:.25rem!important}.margin-bottom-xl-1,.margin-y-xl-1{margin-bottom:.25rem!important}.margin-left-xl-1,.margin-x-xl-1{margin-left:.25rem!important}.margin-xl-2{margin:.5rem!important}.margin-top-xl-2,.margin-y-xl-2{margin-top:.5rem!important}.margin-right-xl-2,.margin-x-xl-2{margin-right:.5rem!important}.margin-bottom-xl-2,.margin-y-xl-2{margin-bottom:.5rem!important}.margin-left-xl-2,.margin-x-xl-2{margin-left:.5rem!important}.margin-xl-3{margin:1rem!important}.margin-top-xl-3,.margin-y-xl-3{margin-top:1rem!important}.margin-right-xl-3,.margin-x-xl-3{margin-right:1rem!important}.margin-bottom-xl-3,.margin-y-xl-3{margin-bottom:1rem!important}.margin-left-xl-3,.margin-x-xl-3{margin-left:1rem!important}.margin-xl-4{margin:2rem!important}.margin-top-xl-4,.margin-y-xl-4{margin-top:2rem!important}.margin-right-xl-4,.margin-x-xl-4{margin-right:2rem!important}.margin-bottom-xl-4,.margin-y-xl-4{margin-bottom:2rem!important}.margin-left-xl-4,.margin-x-xl-4{margin-left:2rem!important}.margin-xl-5{margin:4rem!important}.margin-top-xl-5,.margin-y-xl-5{margin-top:4rem!important}.margin-right-xl-5,.margin-x-xl-5{margin-right:4rem!important}.margin-bottom-xl-5,.margin-y-xl-5{margin-bottom:4rem!important}.margin-left-xl-5,.margin-x-xl-5{margin-left:4rem!important}.padding-xl-0{padding:0!important}.padding-top-xl-0,.padding-y-xl-0{padding-top:0!important}.padding-right-xl-0,.padding-x-xl-0{padding-right:0!important}.padding-bottom-xl-0,.padding-y-xl-0{padding-bottom:0!important}.padding-left-xl-0,.padding-x-xl-0{padding-left:0!important}.padding-xl-1{padding:.25rem!important}.padding-top-xl-1,.padding-y-xl-1{padding-top:.25rem!important}.padding-right-xl-1,.padding-x-xl-1{padding-right:.25rem!important}.padding-bottom-xl-1,.padding-y-xl-1{padding-bottom:.25rem!important}.padding-left-xl-1,.padding-x-xl-1{padding-left:.25rem!important}.padding-xl-2{padding:.5rem!important}.padding-top-xl-2,.padding-y-xl-2{padding-top:.5rem!important}.padding-right-xl-2,.padding-x-xl-2{padding-right:.5rem!important}.padding-bottom-xl-2,.padding-y-xl-2{padding-bottom:.5rem!important}.padding-left-xl-2,.padding-x-xl-2{padding-left:.5rem!important}.padding-xl-3{padding:1rem!important}.padding-top-xl-3,.padding-y-xl-3{padding-top:1rem!important}.padding-right-xl-3,.padding-x-xl-3{padding-right:1rem!important}.padding-bottom-xl-3,.padding-y-xl-3{padding-bottom:1rem!important}.padding-left-xl-3,.padding-x-xl-3{padding-left:1rem!important}.padding-xl-4{padding:2rem!important}.padding-top-xl-4,.padding-y-xl-4{padding-top:2rem!important}.padding-right-xl-4,.padding-x-xl-4{padding-right:2rem!important}.padding-bottom-xl-4,.padding-y-xl-4{padding-bottom:2rem!important}.padding-left-xl-4,.padding-x-xl-4{padding-left:2rem!important}.padding-xl-5{padding:4rem!important}.padding-top-xl-5,.padding-y-xl-5{padding-top:4rem!important}.padding-right-xl-5,.padding-x-xl-5{padding-right:4rem!important}.padding-bottom-xl-5,.padding-y-xl-5{padding-bottom:4rem!important}.padding-left-xl-5,.padding-x-xl-5{padding-left:4rem!important}.margin-xl-n1{margin:-.25rem!important}.margin-top-xl-n1,.margin-y-xl-n1{margin-top:-.25rem!important}.margin-right-xl-n1,.margin-x-xl-n1{margin-right:-.25rem!important}.margin-bottom-xl-n1,.margin-y-xl-n1{margin-bottom:-.25rem!important}.margin-left-xl-n1,.margin-x-xl-n1{margin-left:-.25rem!important}.margin-xl-n2{margin:-.5rem!important}.margin-top-xl-n2,.margin-y-xl-n2{margin-top:-.5rem!important}.margin-right-xl-n2,.margin-x-xl-n2{margin-right:-.5rem!important}.margin-bottom-xl-n2,.margin-y-xl-n2{margin-bottom:-.5rem!important}.margin-left-xl-n2,.margin-x-xl-n2{margin-left:-.5rem!important}.margin-xl-n3{margin:-1rem!important}.margin-top-xl-n3,.margin-y-xl-n3{margin-top:-1rem!important}.margin-right-xl-n3,.margin-x-xl-n3{margin-right:-1rem!important}.margin-bottom-xl-n3,.margin-y-xl-n3{margin-bottom:-1rem!important}.margin-left-xl-n3,.margin-x-xl-n3{margin-left:-1rem!important}.margin-xl-n4{margin:-2rem!important}.margin-top-xl-n4,.margin-y-xl-n4{margin-top:-2rem!important}.margin-right-xl-n4,.margin-x-xl-n4{margin-right:-2rem!important}.margin-bottom-xl-n4,.margin-y-xl-n4{margin-bottom:-2rem!important}.margin-left-xl-n4,.margin-x-xl-n4{margin-left:-2rem!important}.margin-xl-n5{margin:-4rem!important}.margin-top-xl-n5,.margin-y-xl-n5{margin-top:-4rem!important}.margin-right-xl-n5,.margin-x-xl-n5{margin-right:-4rem!important}.margin-bottom-xl-n5,.margin-y-xl-n5{margin-bottom:-4rem!important}.margin-left-xl-n5,.margin-x-xl-n5{margin-left:-4rem!important}.margin-xl-auto{margin:auto!important}.margin-top-xl-auto,.margin-y-xl-auto{margin-top:auto!important}.margin-right-xl-auto,.margin-x-xl-auto{margin-right:auto!important}.margin-bottom-xl-auto,.margin-y-xl-auto{margin-bottom:auto!important}.margin-left-xl-auto,.margin-x-xl-auto{margin-left:auto!important}}.h1{font-size:2em}.h2{font-size:1.5em}.h3{font-size:1.17em}.h4{font-size:1em}.h5{font-size:.83em}.h6{font-size:.67em}.cursor-alias{cursor:alias}.cursor-all-scroll{cursor:all-scroll}.cursor-auto{cursor:auto}.cursor-cell{cursor:cell}.cursor-context-menu{cursor:context-menu}.cursor-col-resize{cursor:col-resize}.cursor-copy{cursor:copy}.cursor-crosshair{cursor:crosshair}.cursor-default{cursor:default}.cursor-e-resize{cursor:e-resize}.cursor-ew-resize{cursor:ew-resize}.cursor-grab{cursor:-webkit-grab;cursor:grab}.cursor-grabbing{cursor:-webkit-grabbing;cursor:grabbing}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-n-resize{cursor:n-resize}.cursor-ne-resize{cursor:ne-resize}.cursor-nesw-resize{cursor:nesw-resize}.cursor-ns-resize{cursor:ns-resize}.cursor-nw-resize{cursor:nw-resize}.cursor-nwse-resize{cursor:nwse-resize}.cursor-no-drop{cursor:no-drop}.cursor-none{cursor:none}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-progress{cursor:progress}.cursor-row-resize{cursor:row-resize}.cursor-s-resize{cursor:s-resize}.cursor-se-resize{cursor:se-resize}.cursor-sw-resize{cursor:sw-resize}.cursor-text{cursor:text}.cursor-w-resize{cursor:w-resize}.cursor-wait{cursor:wait}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.mat-tooltip{font-size:15px!important}body,html{height:100%}body{font-family:opens sans regular,sans-serif;margin:0;padding:0}iframe{border:none}.mat-badge-content{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:600}.mat-badge-small .mat-badge-content{font-size:9px}.mat-badge-large .mat-badge-content{font-size:24px}.mat-h1,.mat-headline,.mat-typography h1{font:400 24px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography h2{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 16px}.mat-h5,.mat-typography h5{font:400 11.62px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-h6,.mat-typography h6{font:400 9.38px/20px Roboto,Helvetica Neue,sans-serif;margin:0 0 12px}.mat-body-2,.mat-body-strong{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body,.mat-body-1,.mat-typography{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-body-1 p,.mat-body p,.mat-typography p{margin:0 0 12px}.mat-caption,.mat-small{font:400 12px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.05em;margin:0 0 56px}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.02em;margin:0 0 64px}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto,Helvetica Neue,sans-serif;letter-spacing:-.005em;margin:0 0 64px}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0 0 64px}.mat-bottom-sheet-container{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-button,.mat-fab,.mat-flat-button,.mat-icon-button,.mat-mini-fab,.mat-raised-button,.mat-stroked-button{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-button-toggle,.mat-card{font-family:Roboto,Helvetica Neue,sans-serif}.mat-card-title{font-size:24px;font-weight:500}.mat-card-header .mat-card-title{font-size:20px}.mat-card-content,.mat-card-subtitle{font-size:14px}.mat-checkbox{font-family:Roboto,Helvetica Neue,sans-serif}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:14px;font-weight:500}.mat-chip .mat-chip-remove.mat-icon,.mat-chip .mat-chip-trailing-icon.mat-icon{font-size:18px}.mat-table{font-family:Roboto,Helvetica Neue,sans-serif}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell,.mat-footer-cell{font-size:14px}.mat-calendar{font-family:Roboto,Helvetica Neue,sans-serif}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-expansion-panel-header{font-family:Roboto,Helvetica Neue,sans-serif;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-form-field{font-family:Roboto,Helvetica Neue,sans-serif;font-size:inherit;font-weight:400;letter-spacing:normal;line-height:1.125}.mat-form-field-wrapper{padding-bottom:1.34375em}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{border-top:.84375em solid transparent;padding:.5em 0}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34375em) scale(.75);width:133.3333333333%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34374em) scale(.75);width:133.3333433333%}.mat-form-field-label-wrapper{padding-top:.84375em;top:-.84375em}.mat-form-field-label{top:1.34375em}.mat-form-field-underline{bottom:1.34375em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.6666666667em;top:calc(100% - 1.79167em)}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-infix{padding:.4375em 0}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{-ms-transform:translateY(-1.28125em) scale(.75);transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);width:133.3333333333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{-ms-transform:translateY(-1.28124em) scale(.75);transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00101px);width:133.3333433333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{-ms-transform:translateY(-1.28123em) scale(.75);transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00102px);width:133.3333533333%}.mat-form-field-appearance-legacy .mat-form-field-label{top:1.28125em}.mat-form-field-appearance-legacy .mat-form-field-underline{bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{margin-top:.5416666667em;top:calc(100% - 1.66667em)}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28122em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28121em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.2812em) scale(.75)}}.mat-form-field-appearance-fill .mat-form-field-infix{padding:.25em 0 .75em}.mat-form-field-appearance-fill .mat-form-field-label{margin-top:-.5em;top:1.09375em}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59374em) scale(.75);width:133.3333433333%}.mat-form-field-appearance-outline .mat-form-field-infix{padding:1em 0}.mat-form-field-appearance-outline .mat-form-field-label{margin-top:-.25em;top:1.84375em}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59375em) scale(.75);width:133.3333333333%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59374em) scale(.75);width:133.3333433333%}.mat-grid-tile-footer,.mat-grid-tile-header{font-size:14px}.mat-grid-tile-footer .mat-line,.mat-grid-tile-header .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-grid-tile-footer .mat-line:nth-child(n+2),.mat-grid-tile-header .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px}.mat-radio-button,.mat-select{font-family:Roboto,Helvetica Neue,sans-serif}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content,.mat-slider-thumb-label-text{font-family:Roboto,Helvetica Neue,sans-serif}.mat-slider-thumb-label-text{font-size:12px;font-weight:500}.mat-stepper-horizontal,.mat-stepper-vertical{font-family:Roboto,Helvetica Neue,sans-serif}.mat-step-label{font-size:14px;font-weight:400}.mat-step-sub-label-error{font-weight:400}.mat-step-label-error{font-size:14px}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group,.mat-tab-label,.mat-tab-link{font-family:Roboto,Helvetica Neue,sans-serif}.mat-tab-label,.mat-tab-link{font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;margin:0}.mat-tooltip{font-family:Roboto,Helvetica Neue,sans-serif;font-size:10px;padding-bottom:6px;padding-top:6px}.mat-tooltip-handset{font-size:14px;padding-bottom:8px;padding-top:8px}.mat-list-item,.mat-list-option{font-family:Roboto,Helvetica Neue,sans-serif}.mat-list-base .mat-list-item{font-size:16px}.mat-list-base .mat-list-item .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-list-option{font-size:16px}.mat-list-base .mat-list-option .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:500}.mat-list-base[dense] .mat-list-item{font-size:12px}.mat-list-base[dense] .mat-list-item .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2),.mat-list-base[dense] .mat-list-option{font-size:12px}.mat-list-base[dense] .mat-list-option .mat-line{box-sizing:border-box;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-subheader{font-family:Roboto,Helvetica Neue,sans-serif;font-size:12px;font-weight:500}.mat-option{font-family:Roboto,Helvetica Neue,sans-serif;font-size:16px}.mat-optgroup-label{font:500 14px/24px Roboto,Helvetica Neue,sans-serif;letter-spacing:normal}.mat-simple-snackbar{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px}.mat-simple-snackbar-action{font-family:inherit;font-size:inherit;font-weight:500;line-height:1}.mat-tree{font-family:Roboto,Helvetica Neue,sans-serif}.mat-nested-tree-node,.mat-tree-node{font-size:14px;font-weight:400}.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{border-radius:50%;pointer-events:none;position:absolute;transform:scale(0);transition:opacity,transform 0ms cubic-bezier(0,0,.2,1)}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-visually-hidden{-moz-appearance:none;-webkit-appearance:none;border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;outline:0;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.cdk-global-overlay-wrapper,.cdk-overlay-container{height:100%;left:0;pointer-events:none;top:0;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-pane{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{box-sizing:border-box;max-height:100%;max-width:100%;pointer-events:auto}.cdk-overlay-backdrop{-webkit-tap-highlight-color:transparent;bottom:0;left:0;opacity:0;pointer-events:auto;position:absolute;right:0;top:0;transition:opacity .4s cubic-bezier(.25,.8,.25,1);z-index:1000}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop,.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.cdk-overlay-connected-position-bounding-box{display:flex;flex-direction:column;min-height:1px;min-width:1px;position:absolute;z-index:1000}.cdk-global-scrollblock{overflow-y:scroll;position:fixed;width:100%}@-webkit-keyframes cdk-text-field-autofill-start{\n /*!*/}@keyframes cdk-text-field-autofill-start{\n /*!*/}@-webkit-keyframes cdk-text-field-autofill-end{\n /*!*/}@keyframes cdk-text-field-autofill-end{\n /*!*/}.cdk-text-field-autofill-monitored:-webkit-autofill{-webkit-animation:cdk-text-field-autofill-start 0s 1ms;animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){-webkit-animation:cdk-text-field-autofill-end 0s 1ms;animation:cdk-text-field-autofill-end 0s 1ms}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{box-sizing:content-box!important;height:auto!important;overflow:hidden!important;padding:2px 0!important}textarea.cdk-textarea-autosize-measuring-firefox{box-sizing:content-box!important;height:0!important;padding:2px 0!important}.mat-focus-indicator,.mat-mdc-focus-indicator{position:relative}.header,.title{font-family:Encode Sans Condensed,sans-serif;font-weight:900}.paragraph-title,.tagline{font-family:Open Sans,sans-serif;font-weight:400}.paragraph-title-bold .tagLine-bold{font-family:Open Sans,sans-serif;font-weight:700}.plain-text,.remarks{font-family:Open Sans,sans-serif;font-weight:300}.plain-text-bold{font-family:Open Sans,sans-serif;font-weight:700}.flex-column{flex-direction:column}.flex-column,.flex-row{box-sizing:border-box;display:flex}.flex-row{flex-direction:row}.flex-row-center{align-items:center;justify-content:center}.mat-button-large{font-size:18px;font-weight:700;line-height:48px;padding:0 24px!important}.mat-round{border-radius:.5em}:root{--background:#050505;--cyan-accent:rgba(132,255,255,0.75);--green-accent:#00e676;--initial-accent:#9cd8d7;--initial-dark-background:#222;--initial-dark-text:hsla(0,0%,100%,0.87);--initial-light-background:#f2f2f2;--initial-light-background:#fff;--initial-light-text:rgba(0,0,0,0.87);--initial-primary:#4a918e;--initial-warn:#ef4351;--orange-accent:#ff9800;--pink-accent:#e91e63;--purple-accent:#9c27b0;--success:#00e676;--yellow-accent:#fdd835}body{background-color:var(--initial-dark-background)}::ng-deep .mat-tooltip{font-size:16px!important}:host .valid-control{color:var(--green-accent)}:host .invalid-control{color:var(--theme-warn-500)}:host .actions .item:not(:last-child){margin-right:0}:host .project-thumbnail img{height:50px;width:auto}:host .active{background-color:var(--theme-accent-400)}:host .active,:host .inactive{transition:background-color 1s linear}:host .inactive{background-color:rgba(242,245,169,0)}:host .expansion-panel{margin-bottom:10px;width:100%}:host .expansion-container{max-height:300px;overflow-y:auto}:host .divider-fill-vert{background-color:var(--theme-accent-500);bottom:10%;min-height:100%;min-width:5px;top:10%}:host .divider-fill-hor{background-color:var(--theme-accent-500);height:5px;width:100%}:host .form-disabled{background-color:#797979;border-radius:4px;opacity:.5}::ng-deep input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-text-fill-color:hsla(0,0%,100%,.8705882352941177);-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}@media (max-width:768px){.spread{margin:1em!important}}@media (max-width:480px){.spread{margin:.5em!important}}.spinner-logo{display:none!important}.success{color:var(--success)}.error{color:var(--theme-warn-500)}.icon-bg{border-radius:50%;padding:3px}.name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:150px}"]
|
|
2925
2925
|
},] }
|
|
2926
2926
|
];
|
|
2927
|
-
BuildsComponent.ctorParameters = () => [
|
|
2928
|
-
{ type: ApplicationsFlowEventsService }
|
|
2929
|
-
];
|
|
2927
|
+
BuildsComponent.ctorParameters = () => [];
|
|
2930
2928
|
BuildsComponent.propDecorators = {
|
|
2931
2929
|
Projects: [{ type: Input, args: ['projects',] }]
|
|
2932
2930
|
};
|
|
@@ -2967,9 +2965,9 @@ FormCardComponent.propDecorators = {
|
|
|
2967
2965
|
};
|
|
2968
2966
|
|
|
2969
2967
|
class ProjectNameComponent {
|
|
2970
|
-
constructor(formsService,
|
|
2968
|
+
constructor(formsService, eacSvc) {
|
|
2971
2969
|
this.formsService = formsService;
|
|
2972
|
-
this.
|
|
2970
|
+
this.eacSvc = eacSvc;
|
|
2973
2971
|
}
|
|
2974
2972
|
/**
|
|
2975
2973
|
* Access form control for description
|
|
@@ -3039,7 +3037,7 @@ class ProjectNameComponent {
|
|
|
3039
3037
|
* Save form
|
|
3040
3038
|
*/
|
|
3041
3039
|
save() {
|
|
3042
|
-
this.
|
|
3040
|
+
this.eacSvc.SaveProjectAsCode({
|
|
3043
3041
|
ProjectLookup: this.ProjectLookup,
|
|
3044
3042
|
Project: Object.assign(Object.assign({}, this.Project), { Project: Object.assign(Object.assign({}, (this.Project || {})), { Description: this.Description.value, Name: this.Name.value }) }),
|
|
3045
3043
|
});
|
|
@@ -3083,7 +3081,7 @@ ProjectNameComponent.decorators = [
|
|
|
3083
3081
|
];
|
|
3084
3082
|
ProjectNameComponent.ctorParameters = () => [
|
|
3085
3083
|
{ type: FormsService },
|
|
3086
|
-
{ type:
|
|
3084
|
+
{ type: EaCService }
|
|
3087
3085
|
];
|
|
3088
3086
|
ProjectNameComponent.propDecorators = {
|
|
3089
3087
|
Project: [{ type: Input, args: ['project',] }],
|
|
@@ -3091,9 +3089,9 @@ ProjectNameComponent.propDecorators = {
|
|
|
3091
3089
|
};
|
|
3092
3090
|
|
|
3093
3091
|
class RootDirectoryComponent {
|
|
3094
|
-
constructor(formsService,
|
|
3092
|
+
constructor(formsService, eacSvc) {
|
|
3095
3093
|
this.formsService = formsService;
|
|
3096
|
-
this.
|
|
3094
|
+
this.eacSvc = eacSvc;
|
|
3097
3095
|
}
|
|
3098
3096
|
/**
|
|
3099
3097
|
* Access form control for root directory
|
|
@@ -3158,7 +3156,7 @@ class RootDirectoryComponent {
|
|
|
3158
3156
|
* Save form
|
|
3159
3157
|
*/
|
|
3160
3158
|
save() {
|
|
3161
|
-
this.
|
|
3159
|
+
this.eacSvc.SaveProjectAsCode({
|
|
3162
3160
|
ProjectLookup: this.ProjectLookup,
|
|
3163
3161
|
Project: Object.assign({}, this.Project),
|
|
3164
3162
|
});
|
|
@@ -3191,7 +3189,7 @@ RootDirectoryComponent.decorators = [
|
|
|
3191
3189
|
];
|
|
3192
3190
|
RootDirectoryComponent.ctorParameters = () => [
|
|
3193
3191
|
{ type: FormsService },
|
|
3194
|
-
{ type:
|
|
3192
|
+
{ type: EaCService }
|
|
3195
3193
|
];
|
|
3196
3194
|
RootDirectoryComponent.propDecorators = {
|
|
3197
3195
|
Project: [{ type: Input, args: ['project',] }],
|
|
@@ -3199,9 +3197,9 @@ RootDirectoryComponent.propDecorators = {
|
|
|
3199
3197
|
};
|
|
3200
3198
|
|
|
3201
3199
|
class BaseFormComponent {
|
|
3202
|
-
constructor(formsService,
|
|
3200
|
+
constructor(formsService, eac) {
|
|
3203
3201
|
this.formsService = formsService;
|
|
3204
|
-
this.
|
|
3202
|
+
this.eac = eac;
|
|
3205
3203
|
}
|
|
3206
3204
|
ngOnInit() {
|
|
3207
3205
|
this.setupForm();
|
|
@@ -3253,7 +3251,7 @@ BaseFormComponent.decorators = [
|
|
|
3253
3251
|
];
|
|
3254
3252
|
BaseFormComponent.ctorParameters = () => [
|
|
3255
3253
|
{ type: FormsService },
|
|
3256
|
-
{ type:
|
|
3254
|
+
{ type: EaCService }
|
|
3257
3255
|
];
|
|
3258
3256
|
|
|
3259
3257
|
class BaseFormConfigModel {
|
|
@@ -3263,10 +3261,10 @@ class BaseFormConfigModel {
|
|
|
3263
3261
|
}
|
|
3264
3262
|
|
|
3265
3263
|
class BaseFormTestComponent extends BaseFormComponent {
|
|
3266
|
-
constructor(formsService,
|
|
3267
|
-
super(formsService,
|
|
3264
|
+
constructor(formsService, eacSvc) {
|
|
3265
|
+
super(formsService, eacSvc);
|
|
3268
3266
|
this.formsService = formsService;
|
|
3269
|
-
this.
|
|
3267
|
+
this.eacSvc = eacSvc;
|
|
3270
3268
|
}
|
|
3271
3269
|
/**
|
|
3272
3270
|
* Access form control for description
|
|
@@ -3338,7 +3336,7 @@ BaseFormTestComponent.decorators = [
|
|
|
3338
3336
|
];
|
|
3339
3337
|
BaseFormTestComponent.ctorParameters = () => [
|
|
3340
3338
|
{ type: FormsService },
|
|
3341
|
-
{ type:
|
|
3339
|
+
{ type: EaCService }
|
|
3342
3340
|
];
|
|
3343
3341
|
|
|
3344
3342
|
class GitAuthComponent {
|
|
@@ -4146,7 +4144,7 @@ class ProcessorDetailsFormComponent {
|
|
|
4146
4144
|
ProcessorDetailsFormComponent.decorators = [
|
|
4147
4145
|
{ type: Component, args: [{
|
|
4148
4146
|
selector: 'lcu-processor-details-form',
|
|
4149
|
-
template: "<form class=\"processor-details-form\" [formGroup]=\"ProcessorDetailsFormGroup\" (ngSubmit)=\"SubmitProcessorDetails()\">\n<mat-card class=\"spread flow-card\">\n <mat-card-header>\n <mat-card-title> Processor Details </mat-card-title>\n </mat-card-header>\n\n <mat-card-content>\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"procType\"\n (selectionChange)=\"ProcessorTypeChanged($event)\"\n required\n >\n <mat-option value=\"DFS\">View Package</mat-option>\n\n <mat-option value=\"Redirect\">Redirect</mat-option>\n\n <mat-option value=\"Proxy\">Proxy</mat-option>\n\n <mat-option value=\"OAuth\">OAuth</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"ProcessorType\">\n <div *ngSwitchCase=\"'DFS'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Default File\"\n formControlName=\"defaultFile\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"lcuType\"\n (selectionChange)=\"LCUTypeChanged($event)\"\n required\n >\n <mat-option value=\"NPM\">NPM</mat-option>\n\n <mat-option value=\"GitHub\">GitHub</mat-option>\n\n <!-- <mat-option value=\"Zip\">Zip</mat-option> -->\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"LCUType\">\n <div *ngSwitchCase=\"'GitHub'\">\n <lcu-source-control-form-controls\n [build-path]=\"EditingApplication?.LowCodeUnit?.Path\"\n [form-group]=\"ProcessorDetailsFormGroup\"\n [source-control]=\"DefaultSourceControl\"\n [use-branches]=\"false\"\n [use-build-path]=\"true\"\n ></lcu-source-control-form-controls>\n\n <mat-form-field\n class=\"mat-full-width\"\n *ngIf=\"\n SourceControlFormControls?.RepositoryFormControl?.valid\n \"\n >\n <input\n matInput\n placeholder=\"Build\"\n formControlName=\"build\"\n required\n />\n\n <mat-hint>\n Current Build:\n {{ EditingApplication?.LowCodeUnit?.CurrentBuild }}\n </mat-hint>\n </mat-form-field>\n </div>\n\n <div *ngSwitchCase=\"'NPM'\">\n <lcu-npm-package-select\n [npm-package]=\"EditingApplication?.LowCodeUnit?.Package\"\n [npm-package-version]=\"\n EditingApplication?.LowCodeUnit?.Version\n \"\n [form-group]=\"ProcessorDetailsFormGroup\"\n ></lcu-npm-package-select>\n\n <mat-hint>\n Current Version:\n {{ EditingApplication?.LowCodeUnit?.CurrentVersion }}\n </mat-hint>\n </div>\n </div>\n </div>\n\n <div *ngSwitchCase=\"'OAuth'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Scopes (space separated)\"\n formControlName=\"scopes\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Token Lookup\"\n formControlName=\"tokenLookup\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"lcuType\"\n (selectionChange)=\"LCUTypeChanged($event)\"\n required\n >\n <mat-option value=\"GitHubOAuth\">GitHub</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"LCUType\">\n <div *ngSwitchCase=\"'GitHubOAuth'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Client ID\"\n formControlName=\"clientId\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Client Secret\"\n formControlName=\"clientSecret\"\n required\n />\n </mat-form-field>\n </div>\n </div>\n </div>\n\n <div *ngSwitchCase=\"'Proxy'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Inbound Path\"\n formControlName=\"inboundPath\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"lcuType\"\n (selectionChange)=\"LCUTypeChanged($event)\"\n required\n >\n <mat-option value=\"API\">API</mat-option>\n\n <mat-option value=\"SPA\">Single Page Application</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"LCUType\">\n <div *ngSwitchCase=\"'API'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"API Root\"\n formControlName=\"apiRoot\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Allowed Methods (separate with spaces)\"\n formControlName=\"methods\"\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Security ({header}~{value})\"\n formControlName=\"security\"\n required\n />\n </mat-form-field>\n </div>\n\n <div *ngSwitchCase=\"'SPA'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"SPA Root\"\n formControlName=\"spaRoot\"\n required\n />\n </mat-form-field>\n </div>\n </div>\n </div>\n\n <div *ngSwitchCase=\"'Redirect'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Redirect URL\"\n formControlName=\"redirect\"\n required\n />\n </mat-form-field>\n\n <div>\n <mat-slide-toggle \n class=\"spread\" \n formControlName=\"permanent\">\n Is Permanent?\n </mat-slide-toggle>\n\n <mat-slide-toggle\n class=\"spread\"\n formControlName=\"preserveMethod\"\n >\n Preserve Method?\n </mat-slide-toggle>\n\n <mat-icon\n class=\"spread\"\n matSuffix\n (mouseenter)=\"DetermineTooltipText()\"\n matTooltip={{redirectTooltip}}\n >\n info_outline\n </mat-icon>\n\n <!-- <mat-icon\n *ngIf=\"!IsPermanent && !IsPreserve\"\n\n class=\"spread\"\n matSuffix\n matTooltip=\"302 \u2013 Not Permanent and Not Preserve\"\n >\n info_outline\n </mat-icon> -->\n\n <!-- <mat-icon\n *ngIf=\"!IsPermanent && IsPreserve\"\n class=\"spread\"\n matSuffix\n matTooltip=\"307 \u2013 Not Permanent and Preserve\"\n >\n info_outline\n </mat-icon> -->\n\n <!-- <mat-icon\n *ngIf=\"IsPermanent && IsPreserve\"\n class=\"spread\"\n matSuffix\n matTooltip=\"308 \u2013 Permanent and Preserve\"\n >\n info_outline\n </mat-icon> -->\n\n \n\n <!-- <mat-icon\n class=\"spread\"\n matSuffix\n matTooltip=\"Values used to control the redirect type. Permanent and Not Preserve = 301; Not Permanent and Not Preserve = 302; Permanent and Preserve = 308; Not Permanent and Not Preserve = 307;\"\n >\n info_outline\n </mat-icon> -->\n </div>\n </div>\n </div>\n </mat-card-content>\n <mat-card-actions>\n <!-- [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\" -->\n <button mat-raised-button type=\"submit\" >Save
|
|
4147
|
+
template: "<form class=\"processor-details-form\" [formGroup]=\"ProcessorDetailsFormGroup\" (ngSubmit)=\"SubmitProcessorDetails()\">\n<mat-card class=\"spread flow-card\">\n <mat-card-header>\n <mat-card-title> Processor Details </mat-card-title>\n </mat-card-header>\n\n <mat-card-content>\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"procType\"\n (selectionChange)=\"ProcessorTypeChanged($event)\"\n required\n >\n <mat-option value=\"DFS\">View Package</mat-option>\n\n <mat-option value=\"Redirect\">Redirect</mat-option>\n\n <mat-option value=\"Proxy\">Proxy</mat-option>\n\n <mat-option value=\"OAuth\">OAuth</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"ProcessorType\">\n <div *ngSwitchCase=\"'DFS'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Default File\"\n formControlName=\"defaultFile\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"lcuType\"\n (selectionChange)=\"LCUTypeChanged($event)\"\n required\n >\n <mat-option value=\"NPM\">NPM</mat-option>\n\n <mat-option value=\"GitHub\">GitHub</mat-option>\n\n <!-- <mat-option value=\"Zip\">Zip</mat-option> -->\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"LCUType\">\n <div *ngSwitchCase=\"'GitHub'\">\n <lcu-source-control-form-controls\n [build-path]=\"EditingApplication?.LowCodeUnit?.Path\"\n [form-group]=\"ProcessorDetailsFormGroup\"\n [source-control]=\"DefaultSourceControl\"\n [use-branches]=\"false\"\n [use-build-path]=\"true\"\n ></lcu-source-control-form-controls>\n\n <mat-form-field\n class=\"mat-full-width\"\n *ngIf=\"\n SourceControlFormControls?.RepositoryFormControl?.valid\n \"\n >\n <input\n matInput\n placeholder=\"Build\"\n formControlName=\"build\"\n required\n />\n\n <mat-hint>\n Current Build:\n {{ EditingApplication?.LowCodeUnit?.CurrentBuild }}\n </mat-hint>\n </mat-form-field>\n </div>\n\n <div *ngSwitchCase=\"'NPM'\">\n <lcu-npm-package-select\n [npm-package]=\"EditingApplication?.LowCodeUnit?.Package\"\n [npm-package-version]=\"\n EditingApplication?.LowCodeUnit?.Version\n \"\n [form-group]=\"ProcessorDetailsFormGroup\"\n ></lcu-npm-package-select>\n\n <mat-hint>\n Current Version:\n {{ EditingApplication?.LowCodeUnit?.CurrentVersion }}\n </mat-hint>\n </div>\n </div>\n </div>\n\n <div *ngSwitchCase=\"'OAuth'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Scopes (space separated)\"\n formControlName=\"scopes\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Token Lookup\"\n formControlName=\"tokenLookup\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"lcuType\"\n (selectionChange)=\"LCUTypeChanged($event)\"\n required\n >\n <mat-option value=\"GitHubOAuth\">GitHub</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"LCUType\">\n <div *ngSwitchCase=\"'GitHubOAuth'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Client ID\"\n formControlName=\"clientId\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Client Secret\"\n formControlName=\"clientSecret\"\n required\n />\n </mat-form-field>\n </div>\n </div>\n </div>\n\n <div *ngSwitchCase=\"'Proxy'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Inbound Path\"\n formControlName=\"inboundPath\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n placeholder=\"Type\"\n formControlName=\"lcuType\"\n (selectionChange)=\"LCUTypeChanged($event)\"\n required\n >\n <mat-option value=\"API\">API</mat-option>\n\n <mat-option value=\"SPA\">Single Page Application</mat-option>\n </mat-select>\n </mat-form-field>\n\n <div [ngSwitch]=\"LCUType\">\n <div *ngSwitchCase=\"'API'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"API Root\"\n formControlName=\"apiRoot\"\n required\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Allowed Methods (separate with spaces)\"\n formControlName=\"methods\"\n />\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Security ({header}~{value})\"\n formControlName=\"security\"\n required\n />\n </mat-form-field>\n </div>\n\n <div *ngSwitchCase=\"'SPA'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"SPA Root\"\n formControlName=\"spaRoot\"\n required\n />\n </mat-form-field>\n </div>\n </div>\n </div>\n\n <div *ngSwitchCase=\"'Redirect'\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n placeholder=\"Redirect URL\"\n formControlName=\"redirect\"\n required\n />\n </mat-form-field>\n\n <div>\n <mat-slide-toggle \n class=\"spread\" \n formControlName=\"permanent\">\n Is Permanent?\n </mat-slide-toggle>\n\n <mat-slide-toggle\n class=\"spread\"\n formControlName=\"preserveMethod\"\n >\n Preserve Method?\n </mat-slide-toggle>\n\n <mat-icon\n class=\"spread\"\n matSuffix\n (mouseenter)=\"DetermineTooltipText()\"\n matTooltip={{redirectTooltip}}\n >\n info_outline\n </mat-icon>\n\n <!-- <mat-icon\n *ngIf=\"!IsPermanent && !IsPreserve\"\n\n class=\"spread\"\n matSuffix\n matTooltip=\"302 \u2013 Not Permanent and Not Preserve\"\n >\n info_outline\n </mat-icon> -->\n\n <!-- <mat-icon\n *ngIf=\"!IsPermanent && IsPreserve\"\n class=\"spread\"\n matSuffix\n matTooltip=\"307 \u2013 Not Permanent and Preserve\"\n >\n info_outline\n </mat-icon> -->\n\n <!-- <mat-icon\n *ngIf=\"IsPermanent && IsPreserve\"\n class=\"spread\"\n matSuffix\n matTooltip=\"308 \u2013 Permanent and Preserve\"\n >\n info_outline\n </mat-icon> -->\n\n \n\n <!-- <mat-icon\n class=\"spread\"\n matSuffix\n matTooltip=\"Values used to control the redirect type. Permanent and Not Preserve = 301; Not Permanent and Not Preserve = 302; Permanent and Preserve = 308; Not Permanent and Not Preserve = 307;\"\n >\n info_outline\n </mat-icon> -->\n </div>\n </div>\n </div>\n </mat-card-content>\n <mat-card-actions>\n <!-- [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\" -->\n <button mat-raised-button type=\"submit\" >Save</button>\n </mat-card-actions>\n</mat-card>\n</form>\n \n",
|
|
4150
4148
|
styles: [""]
|
|
4151
4149
|
},] }
|
|
4152
4150
|
];
|
|
@@ -4213,6 +4211,522 @@ SourceControlFormComponent.propDecorators = {
|
|
|
4213
4211
|
SourceControlFormControls: [{ type: ViewChild, args: [SourceControlFormControlsComponent,] }]
|
|
4214
4212
|
};
|
|
4215
4213
|
|
|
4214
|
+
class BuildPipelineFormComponent {
|
|
4215
|
+
constructor(formBldr, appsFlowSvc) {
|
|
4216
|
+
this.formBldr = formBldr;
|
|
4217
|
+
this.appsFlowSvc = appsFlowSvc;
|
|
4218
|
+
this.HostingDetails = new ProjectHostingDetails();
|
|
4219
|
+
}
|
|
4220
|
+
//PROPERTIES
|
|
4221
|
+
get Artifact() {
|
|
4222
|
+
var _a, _b;
|
|
4223
|
+
return ((_a = this.Environment) === null || _a === void 0 ? void 0 : _a.Artifacts) && this.ArtifactLookup
|
|
4224
|
+
? ((_b = this.Environment) === null || _b === void 0 ? void 0 : _b.Artifacts[this.ArtifactLookup]) || {}
|
|
4225
|
+
: {};
|
|
4226
|
+
}
|
|
4227
|
+
get ArtifactLookup() {
|
|
4228
|
+
var _a, _b;
|
|
4229
|
+
const artLookup = ((_a = this.DevOpsAction) === null || _a === void 0 ? void 0 : _a.ArtifactLookups) ? (_b = this.DevOpsAction) === null || _b === void 0 ? void 0 : _b.ArtifactLookups[0] : null;
|
|
4230
|
+
return artLookup;
|
|
4231
|
+
}
|
|
4232
|
+
get DevOpsAction() {
|
|
4233
|
+
return this.Environment.DevOpsActions && this.DevOpsActionLookup
|
|
4234
|
+
? this.Environment.DevOpsActions[this.DevOpsActionLookup] || {}
|
|
4235
|
+
: {};
|
|
4236
|
+
}
|
|
4237
|
+
get DevOpsActions() {
|
|
4238
|
+
return this.Environment.DevOpsActions || {};
|
|
4239
|
+
}
|
|
4240
|
+
get EditingSourceControl() {
|
|
4241
|
+
var _a, _b;
|
|
4242
|
+
let sc = ((_a = this.Environment) === null || _a === void 0 ? void 0 : _a.Sources) ? (_b = this.Environment) === null || _b === void 0 ? void 0 : _b.Sources[this.EditingSourceControlLookup] : null;
|
|
4243
|
+
if (sc == null && this.EditingSourceControlLookup) {
|
|
4244
|
+
sc = {};
|
|
4245
|
+
}
|
|
4246
|
+
return sc;
|
|
4247
|
+
}
|
|
4248
|
+
// @Input('main-branch')
|
|
4249
|
+
// public MainBranch: string;
|
|
4250
|
+
// @Input('organization')
|
|
4251
|
+
// public Organization: string;
|
|
4252
|
+
// @Input('repository')
|
|
4253
|
+
// public Repository: string;
|
|
4254
|
+
get SourceControlLookups() {
|
|
4255
|
+
return Object.keys(this.SourceControls || {});
|
|
4256
|
+
}
|
|
4257
|
+
get SourceControls() {
|
|
4258
|
+
return this.Environment.Sources || {};
|
|
4259
|
+
}
|
|
4260
|
+
ngOnInit() {
|
|
4261
|
+
}
|
|
4262
|
+
}
|
|
4263
|
+
BuildPipelineFormComponent.decorators = [
|
|
4264
|
+
{ type: Component, args: [{
|
|
4265
|
+
selector: 'lcu-build-pipeline-form',
|
|
4266
|
+
template: "<div class=\"form-card\" fxFlex=\"35%\" fxFlex.lt-md=\"100%\">\n <mat-card\n class=\"spread\"\n *ngIf=\"EditingSourceControl?.Branches?.length > 0\"\n >\n <mat-card-header>\n <mat-card-title> Build Pipeline </mat-card-title>\n\n <mat-hint>\n Changes made here are reflected for all sources using this\n DevOpsAction\n </mat-hint>\n </mat-card-header>\n\n <mat-card-content>\n\n <ng-container>\n <!-- [details]=\"HostingDetails\" \n [organization]=\"Organization\"\n [formGroup]=\"DevOpsFormGroup\"-->\n\n <lcu-hosting-details-form-group\n [artifact]=\"Artifact\"\n [devops-action]=\"DevOpsActions[DevOpsActionLookup]\"\n \n \n [disabled]=\"false\"\n ></lcu-hosting-details-form-group>\n </ng-container>\n </mat-card-content>\n </mat-card>\n </div>\n",
|
|
4267
|
+
styles: [""]
|
|
4268
|
+
},] }
|
|
4269
|
+
];
|
|
4270
|
+
BuildPipelineFormComponent.ctorParameters = () => [
|
|
4271
|
+
{ type: FormBuilder },
|
|
4272
|
+
{ type: ApplicationsFlowService }
|
|
4273
|
+
];
|
|
4274
|
+
BuildPipelineFormComponent.propDecorators = {
|
|
4275
|
+
DevOpsActionLookup: [{ type: Input, args: ['devops-action-lookup',] }],
|
|
4276
|
+
Environment: [{ type: Input, args: ['environment',] }]
|
|
4277
|
+
};
|
|
4278
|
+
|
|
4279
|
+
class DevopsSourceControlFormComponent {
|
|
4280
|
+
// Constructors
|
|
4281
|
+
constructor(formBuilder, appsFlowSvc, eacSvc) {
|
|
4282
|
+
this.formBuilder = formBuilder;
|
|
4283
|
+
this.appsFlowSvc = appsFlowSvc;
|
|
4284
|
+
this.eacSvc = eacSvc;
|
|
4285
|
+
this.SeparatorKeysCodes = [ENTER, COMMA];
|
|
4286
|
+
this.BuildPath = null;
|
|
4287
|
+
// this.EditingSourceControlLookup = null;
|
|
4288
|
+
this.HostingDetails = new ProjectHostingDetails();
|
|
4289
|
+
this.SelectedBranches = [];
|
|
4290
|
+
this.SourceControlRoot = '';
|
|
4291
|
+
this.UseBranches = true;
|
|
4292
|
+
this.UseBuildPath = false;
|
|
4293
|
+
}
|
|
4294
|
+
// Fields
|
|
4295
|
+
// Properties
|
|
4296
|
+
get BranchesFormControl() {
|
|
4297
|
+
return this.DevOpsSourceControlFormGroup.get(this.SourceControlRoot + 'branches');
|
|
4298
|
+
}
|
|
4299
|
+
get BuildPathFormControl() {
|
|
4300
|
+
return this.DevOpsSourceControlFormGroup.get(this.SourceControlRoot + 'buildPath');
|
|
4301
|
+
}
|
|
4302
|
+
get DevOpsActionLookups() {
|
|
4303
|
+
return Object.keys(this.DevOpsActions || {});
|
|
4304
|
+
}
|
|
4305
|
+
get DevOpsActionLookup() {
|
|
4306
|
+
var _a, _b, _c;
|
|
4307
|
+
if (!!((_a = this.DevOpsActionLookupFormControl) === null || _a === void 0 ? void 0 : _a.value)) {
|
|
4308
|
+
return this.DevOpsActionLookupFormControl.value;
|
|
4309
|
+
}
|
|
4310
|
+
if (!!((_b = this.EditingSourceControl) === null || _b === void 0 ? void 0 : _b.DevOpsActionTriggerLookups)) {
|
|
4311
|
+
return (_c = this.EditingSourceControl) === null || _c === void 0 ? void 0 : _c.DevOpsActionTriggerLookups[0];
|
|
4312
|
+
}
|
|
4313
|
+
else {
|
|
4314
|
+
return null;
|
|
4315
|
+
}
|
|
4316
|
+
}
|
|
4317
|
+
get DevOpsActionLookupFormControl() {
|
|
4318
|
+
return this.DevOpsSourceControlFormGroup.get('devOpsActionLookup');
|
|
4319
|
+
}
|
|
4320
|
+
get DevOpsActions() {
|
|
4321
|
+
return this.Environment.DevOpsActions || {};
|
|
4322
|
+
}
|
|
4323
|
+
get EditingSourceControl() {
|
|
4324
|
+
var _a, _b;
|
|
4325
|
+
let sc = ((_a = this.Environment) === null || _a === void 0 ? void 0 : _a.Sources) ? (_b = this.Environment) === null || _b === void 0 ? void 0 : _b.Sources[this.EditingSourceControlLookup] : null;
|
|
4326
|
+
if (sc == null && this.EditingSourceControlLookup) {
|
|
4327
|
+
sc = {};
|
|
4328
|
+
}
|
|
4329
|
+
return sc;
|
|
4330
|
+
}
|
|
4331
|
+
get MainBranchFormControl() {
|
|
4332
|
+
return this.DevOpsSourceControlFormGroup.get(this.SourceControlRoot + 'mainBranch');
|
|
4333
|
+
}
|
|
4334
|
+
get OrganizationFormControl() {
|
|
4335
|
+
return this.DevOpsSourceControlFormGroup.get(this.SourceControlRoot + 'organization');
|
|
4336
|
+
}
|
|
4337
|
+
get RepositoryFormControl() {
|
|
4338
|
+
return this.DevOpsSourceControlFormGroup.get(this.SourceControlRoot + 'repository');
|
|
4339
|
+
}
|
|
4340
|
+
// Life Cycle
|
|
4341
|
+
ngAfterViewInit() { }
|
|
4342
|
+
ngOnDestroy() {
|
|
4343
|
+
this.destroyFormControls();
|
|
4344
|
+
}
|
|
4345
|
+
ngOnInit() {
|
|
4346
|
+
console.log("org: ", this.EditingSourceControl);
|
|
4347
|
+
console.log("lookup: ", this.EditingSourceControlLookup);
|
|
4348
|
+
if (this.EditingSourceControlLookup === null) {
|
|
4349
|
+
this.CreateNewSourceControl();
|
|
4350
|
+
}
|
|
4351
|
+
console.log("org: ", this.EditingSourceControl);
|
|
4352
|
+
if (this.EditingSourceControl != null) {
|
|
4353
|
+
this.DevOpsSourceControlFormGroup = this.formBuilder.group({});
|
|
4354
|
+
this.setupFormControls();
|
|
4355
|
+
}
|
|
4356
|
+
this.RefreshOrganizations();
|
|
4357
|
+
}
|
|
4358
|
+
// API Methods
|
|
4359
|
+
AddBranchOption(event) {
|
|
4360
|
+
this.addBranchOption(event.value);
|
|
4361
|
+
event.input.value = '';
|
|
4362
|
+
}
|
|
4363
|
+
BranchOptionSelected(event) {
|
|
4364
|
+
this.addBranchOption(event.option.value);
|
|
4365
|
+
}
|
|
4366
|
+
BranchesChanged(branches) {
|
|
4367
|
+
this.loadProjectHostingDetails();
|
|
4368
|
+
}
|
|
4369
|
+
BuildPathChanged(event) {
|
|
4370
|
+
}
|
|
4371
|
+
CreateNewSourceControl() {
|
|
4372
|
+
this.SetEditingSourceControl(Guid.CreateRaw());
|
|
4373
|
+
}
|
|
4374
|
+
CreateRepository() {
|
|
4375
|
+
this.CreatingRepository = true;
|
|
4376
|
+
this.RepositoryFormControl.reset();
|
|
4377
|
+
}
|
|
4378
|
+
CancelCreateRepository() {
|
|
4379
|
+
this.CreatingRepository = false;
|
|
4380
|
+
}
|
|
4381
|
+
DevOpsActionLookupChanged(event) {
|
|
4382
|
+
this.configureDevOpsAction();
|
|
4383
|
+
}
|
|
4384
|
+
MainBranchChanged(event) {
|
|
4385
|
+
this.emitBranchesChanged();
|
|
4386
|
+
}
|
|
4387
|
+
OrganizationChanged(event) {
|
|
4388
|
+
const org = this.OrganizationFormControl;
|
|
4389
|
+
this.RepositoryFormControl.reset();
|
|
4390
|
+
if (this.UseBranches) {
|
|
4391
|
+
this.BranchesFormControl.reset();
|
|
4392
|
+
this.SelectedBranches = [];
|
|
4393
|
+
}
|
|
4394
|
+
this.listRepositories();
|
|
4395
|
+
}
|
|
4396
|
+
RefreshOrganizations() {
|
|
4397
|
+
var _a, _b, _c;
|
|
4398
|
+
// this.Loading = true;
|
|
4399
|
+
this.listOrganizations();
|
|
4400
|
+
(_a = this.OrganizationFormControl) === null || _a === void 0 ? void 0 : _a.reset();
|
|
4401
|
+
(_b = this.RepositoryFormControl) === null || _b === void 0 ? void 0 : _b.reset();
|
|
4402
|
+
if (this.UseBranches) {
|
|
4403
|
+
(_c = this.BranchesFormControl) === null || _c === void 0 ? void 0 : _c.reset();
|
|
4404
|
+
}
|
|
4405
|
+
}
|
|
4406
|
+
RemoveBranchOption(option) {
|
|
4407
|
+
const index = this.SelectedBranches.indexOf(option);
|
|
4408
|
+
if (index >= 0) {
|
|
4409
|
+
this.SelectedBranches.splice(index, 1);
|
|
4410
|
+
}
|
|
4411
|
+
this.emitBranchesChanged();
|
|
4412
|
+
}
|
|
4413
|
+
RepositoryChanged(event) {
|
|
4414
|
+
const repo = this.RepositoryFormControl;
|
|
4415
|
+
if (this.UseBranches) {
|
|
4416
|
+
this.BranchesFormControl.reset();
|
|
4417
|
+
this.SelectedBranches = [];
|
|
4418
|
+
this.listBranches();
|
|
4419
|
+
}
|
|
4420
|
+
if (!this.UseBranches) {
|
|
4421
|
+
this.listBuildPaths();
|
|
4422
|
+
}
|
|
4423
|
+
}
|
|
4424
|
+
SaveRepository() {
|
|
4425
|
+
this.Loading = true;
|
|
4426
|
+
const org = this.OrganizationFormControl.value;
|
|
4427
|
+
const repoName = this.RepositoryFormControl.value;
|
|
4428
|
+
this.appsFlowSvc
|
|
4429
|
+
.CreateRepository(org, repoName)
|
|
4430
|
+
.subscribe((response) => {
|
|
4431
|
+
if (response.Status.Code === 0) {
|
|
4432
|
+
this.listRepositories(repoName);
|
|
4433
|
+
this.CreatingRepository = false;
|
|
4434
|
+
}
|
|
4435
|
+
else {
|
|
4436
|
+
// TODO: Need to surface an error to the user...
|
|
4437
|
+
this.Loading = false;
|
|
4438
|
+
}
|
|
4439
|
+
});
|
|
4440
|
+
}
|
|
4441
|
+
SetEditingSourceControl(scLookup) {
|
|
4442
|
+
this.EditingSourceControlLookup = scLookup;
|
|
4443
|
+
}
|
|
4444
|
+
SubmitSourceControl() {
|
|
4445
|
+
console.log("source control submitted");
|
|
4446
|
+
}
|
|
4447
|
+
// public SaveSourceControl(): void {
|
|
4448
|
+
// const saveEnvReq: SaveEnvironmentAsCodeEventRequest = {
|
|
4449
|
+
// Environment: {
|
|
4450
|
+
// ...this.Environment,
|
|
4451
|
+
// Artifacts: this.Environment.Artifacts || {},
|
|
4452
|
+
// DevOpsActions: this.Environment.DevOpsActions || {},
|
|
4453
|
+
// Secrets: this.Environment.Secrets || {},
|
|
4454
|
+
// Sources: this.Environment.Sources || {},
|
|
4455
|
+
// },
|
|
4456
|
+
// EnvironmentLookup: this.EnvironmentLookup,
|
|
4457
|
+
// EnterpriseDataTokens: {},
|
|
4458
|
+
// };
|
|
4459
|
+
// let artifactLookup: string;
|
|
4460
|
+
// // let artifact: EaCArtifact = {
|
|
4461
|
+
// // ...this.Artifact,
|
|
4462
|
+
// // ...this.HostingDetailsFormControls
|
|
4463
|
+
// // .SelectedHostingOptionInputControlValues,
|
|
4464
|
+
// // };
|
|
4465
|
+
// if (!this.ArtifactLookup) {
|
|
4466
|
+
// artifactLookup = Guid.CreateRaw();
|
|
4467
|
+
// artifact = {
|
|
4468
|
+
// ...artifact,
|
|
4469
|
+
// Type: this.HostingDetailsFormControls.SelectedHostingOption
|
|
4470
|
+
// .ArtifactType,
|
|
4471
|
+
// Name: this.HostingDetailsFormControls.SelectedHostingOption.Name,
|
|
4472
|
+
// NPMRegistry: 'https://registry.npmjs.org/',
|
|
4473
|
+
// };
|
|
4474
|
+
// } else {
|
|
4475
|
+
// artifactLookup = this.ArtifactLookup;
|
|
4476
|
+
// }
|
|
4477
|
+
// saveEnvReq.Environment.Artifacts[artifactLookup] = artifact;
|
|
4478
|
+
// let devOpsActionLookup: string;
|
|
4479
|
+
// if (!this.DevOpsActionLookup) {
|
|
4480
|
+
// devOpsActionLookup = Guid.CreateRaw();
|
|
4481
|
+
// // const doa: EaCDevOpsAction = {
|
|
4482
|
+
// // ...this.DevOpsAction,
|
|
4483
|
+
// // ArtifactLookups: [artifactLookup],
|
|
4484
|
+
// // Name: this.HostingDetailsFormControls.DevOpsActionNameFormControl.value,
|
|
4485
|
+
// // Path: this.HostingDetailsFormControls.SelectedHostingOption.Path,
|
|
4486
|
+
// // Templates:
|
|
4487
|
+
// // this.HostingDetailsFormControls.SelectedHostingOption.Templates,
|
|
4488
|
+
// // };
|
|
4489
|
+
// if (this.HostingDetailsFormControls.NPMTokenFormControl?.value) {
|
|
4490
|
+
// const secretLookup = 'npm-access-token';
|
|
4491
|
+
// doa.SecretLookups = [secretLookup];
|
|
4492
|
+
// saveEnvReq.Environment.Secrets[secretLookup] = {
|
|
4493
|
+
// Name: 'NPM Access Token',
|
|
4494
|
+
// DataTokenLookup: secretLookup,
|
|
4495
|
+
// KnownAs: 'NPM_TOKEN',
|
|
4496
|
+
// };
|
|
4497
|
+
// saveEnvReq.EnterpriseDataTokens[secretLookup] = {
|
|
4498
|
+
// Name: saveEnvReq.Environment.Secrets[secretLookup].Name,
|
|
4499
|
+
// Description: saveEnvReq.Environment.Secrets[secretLookup].Name,
|
|
4500
|
+
// Value: this.NPMTokenFormControl.value,
|
|
4501
|
+
// };
|
|
4502
|
+
// }
|
|
4503
|
+
// saveEnvReq.Environment.DevOpsActions[devOpsActionLookup] = doa;
|
|
4504
|
+
// } else {
|
|
4505
|
+
// devOpsActionLookup = this.DevOpsActionLookupFormControl.value;
|
|
4506
|
+
// const doa: EaCDevOpsAction = {
|
|
4507
|
+
// ...this.DevOpsAction,
|
|
4508
|
+
// Name: this.HostingDetailsFormControls.DevOpsActionNameFormControl.value,
|
|
4509
|
+
// };
|
|
4510
|
+
// saveEnvReq.Environment.DevOpsActions[devOpsActionLookup] = doa;
|
|
4511
|
+
// }
|
|
4512
|
+
// let source: EaCSourceControl = {
|
|
4513
|
+
// ...this.EditingSourceControl,
|
|
4514
|
+
// Branches: this.SelectedBranches,
|
|
4515
|
+
// MainBranch: this.MainBranchFormControl.value,
|
|
4516
|
+
// };
|
|
4517
|
+
// source = {
|
|
4518
|
+
// ...source,
|
|
4519
|
+
// Type: 'GitHub',
|
|
4520
|
+
// Name: this.EditingSourceControlLookup,
|
|
4521
|
+
// DevOpsActionTriggerLookups: [devOpsActionLookup],
|
|
4522
|
+
// Organization:
|
|
4523
|
+
// this.OrganizationFormControl.value,
|
|
4524
|
+
// Repository: this.RepositoryFormControl.value,
|
|
4525
|
+
// };
|
|
4526
|
+
// const scLookup = `github://${source.Organization}/${source.Repository}`;
|
|
4527
|
+
// saveEnvReq.Environment.Sources[scLookup] = source;
|
|
4528
|
+
// this.eacSvc.SaveEnvironmentAsCode(saveEnvReq);
|
|
4529
|
+
// }
|
|
4530
|
+
// Helpers
|
|
4531
|
+
addBranchOption(value) {
|
|
4532
|
+
value = (value || '').trim();
|
|
4533
|
+
if (value && this.SelectedBranches.indexOf(value) < 0) {
|
|
4534
|
+
this.SelectedBranches.push(value);
|
|
4535
|
+
}
|
|
4536
|
+
this.BranchesInput.nativeElement.blur();
|
|
4537
|
+
this.emitBranchesChanged();
|
|
4538
|
+
}
|
|
4539
|
+
configureDevOpsAction() {
|
|
4540
|
+
setTimeout(() => {
|
|
4541
|
+
this.DevOpsActionLookupFormControl.setValue(this.DevOpsActionLookup);
|
|
4542
|
+
}, 0);
|
|
4543
|
+
}
|
|
4544
|
+
destroyFormControls() {
|
|
4545
|
+
var _a, _b, _c, _d;
|
|
4546
|
+
this.DevOpsSourceControlFormGroup.removeControl([this.SourceControlRoot, 'mainBranch'].join(''));
|
|
4547
|
+
(_a = this.DevOpsSourceControlFormGroup) === null || _a === void 0 ? void 0 : _a.removeControl([this.SourceControlRoot, 'branches'].join(''));
|
|
4548
|
+
(_b = this.DevOpsSourceControlFormGroup) === null || _b === void 0 ? void 0 : _b.removeControl([this.SourceControlRoot, 'buildPath'].join(''));
|
|
4549
|
+
this.SelectedBranches = [];
|
|
4550
|
+
(_c = this.DevOpsSourceControlFormGroup) === null || _c === void 0 ? void 0 : _c.removeControl([this.SourceControlRoot, 'organization'].join(''));
|
|
4551
|
+
(_d = this.DevOpsSourceControlFormGroup) === null || _d === void 0 ? void 0 : _d.removeControl([this.SourceControlRoot, 'repository'].join(''));
|
|
4552
|
+
}
|
|
4553
|
+
emitBranchesChanged() {
|
|
4554
|
+
var _a, _b;
|
|
4555
|
+
if (((_a = this.SelectedBranches) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
|
|
4556
|
+
(!this.MainBranchFormControl.value ||
|
|
4557
|
+
this.SelectedBranches.indexOf(this.MainBranchFormControl.value) < 0)) {
|
|
4558
|
+
this.MainBranchFormControl.setValue(this.SelectedBranches.find((branch) => branch === 'main' || branch === 'master') || this.SelectedBranches[0]);
|
|
4559
|
+
}
|
|
4560
|
+
else if (((_b = this.SelectedBranches) === null || _b === void 0 ? void 0 : _b.length) <= 0) {
|
|
4561
|
+
this.MainBranchFormControl.reset();
|
|
4562
|
+
}
|
|
4563
|
+
this.BranchesFormControl.setValue(this.SelectedBranches.join(','));
|
|
4564
|
+
this.BranchesChanged(this.SelectedBranches || []);
|
|
4565
|
+
}
|
|
4566
|
+
listBranches() {
|
|
4567
|
+
if (this.UseBranches) {
|
|
4568
|
+
this.Loading = true;
|
|
4569
|
+
this.appsFlowSvc
|
|
4570
|
+
.ListBranches(this.OrganizationFormControl.value, this.RepositoryFormControl.value)
|
|
4571
|
+
.subscribe((response) => {
|
|
4572
|
+
var _a, _b, _c;
|
|
4573
|
+
this.BranchOptions = response.Model;
|
|
4574
|
+
this.Loading = false;
|
|
4575
|
+
if (((_b = (_a = this.EditingSourceControl) === null || _a === void 0 ? void 0 : _a.Branches) === null || _b === void 0 ? void 0 : _b.length) > 0) {
|
|
4576
|
+
this.SelectedBranches = this.EditingSourceControl.Branches;
|
|
4577
|
+
}
|
|
4578
|
+
else if (((_c = this.BranchOptions) === null || _c === void 0 ? void 0 : _c.length) === 1) {
|
|
4579
|
+
this.BranchesFormControl.setValue(this.BranchOptions[0].Name);
|
|
4580
|
+
this.SelectedBranches = [this.BranchOptions[0].Name];
|
|
4581
|
+
}
|
|
4582
|
+
this.emitBranchesChanged();
|
|
4583
|
+
this.listBuildPaths();
|
|
4584
|
+
});
|
|
4585
|
+
}
|
|
4586
|
+
}
|
|
4587
|
+
listBuildPaths() {
|
|
4588
|
+
if (this.UseBuildPath) {
|
|
4589
|
+
this.Loading = true;
|
|
4590
|
+
this.appsFlowSvc
|
|
4591
|
+
.ListBuildPaths(this.OrganizationFormControl.value, this.RepositoryFormControl.value)
|
|
4592
|
+
.subscribe((response) => {
|
|
4593
|
+
var _a;
|
|
4594
|
+
this.BuildPathOptions = response.Model;
|
|
4595
|
+
this.Loading = false;
|
|
4596
|
+
if (((_a = this.BuildPathOptions) === null || _a === void 0 ? void 0 : _a.length) === 1) {
|
|
4597
|
+
this.BuildPathFormControl.setValue(this.BuildPathOptions[0]);
|
|
4598
|
+
}
|
|
4599
|
+
});
|
|
4600
|
+
}
|
|
4601
|
+
}
|
|
4602
|
+
listOrganizations() {
|
|
4603
|
+
this.Loading = true;
|
|
4604
|
+
this.appsFlowSvc
|
|
4605
|
+
.ListOrganizations()
|
|
4606
|
+
.subscribe((response) => {
|
|
4607
|
+
var _a;
|
|
4608
|
+
this.OrganizationOptions = response.Model;
|
|
4609
|
+
this.Loading = false;
|
|
4610
|
+
if ((_a = this.EditingSourceControl) === null || _a === void 0 ? void 0 : _a.Organization) {
|
|
4611
|
+
setTimeout(() => {
|
|
4612
|
+
var _a;
|
|
4613
|
+
this.OrganizationFormControl.setValue(this.EditingSourceControl.Organization);
|
|
4614
|
+
this.listRepositories((_a = this.EditingSourceControl) === null || _a === void 0 ? void 0 : _a.Repository);
|
|
4615
|
+
}, 0);
|
|
4616
|
+
}
|
|
4617
|
+
});
|
|
4618
|
+
}
|
|
4619
|
+
listRepositories(activeRepo = null) {
|
|
4620
|
+
this.Loading = true;
|
|
4621
|
+
this.appsFlowSvc
|
|
4622
|
+
.ListRepositories(this.OrganizationFormControl.value)
|
|
4623
|
+
.subscribe((response) => {
|
|
4624
|
+
var _a;
|
|
4625
|
+
this.RepositoryOptions = response.Model;
|
|
4626
|
+
this.Loading = false;
|
|
4627
|
+
if (activeRepo) {
|
|
4628
|
+
setTimeout(() => {
|
|
4629
|
+
this.RepositoryFormControl.setValue(activeRepo);
|
|
4630
|
+
this.listBranches();
|
|
4631
|
+
if (!this.UseBranches) {
|
|
4632
|
+
this.listBuildPaths();
|
|
4633
|
+
}
|
|
4634
|
+
}, 0);
|
|
4635
|
+
}
|
|
4636
|
+
else if (((_a = this.RepositoryOptions) === null || _a === void 0 ? void 0 : _a.length) <= 0) {
|
|
4637
|
+
this.CreatingRepository = true;
|
|
4638
|
+
}
|
|
4639
|
+
});
|
|
4640
|
+
}
|
|
4641
|
+
loadProjectHostingDetails() {
|
|
4642
|
+
var _a, _b, _c, _d;
|
|
4643
|
+
if (((_a = this.SelectedBranches) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
4644
|
+
this.HostingDetails.Loading = true;
|
|
4645
|
+
this.appsFlowSvc
|
|
4646
|
+
.LoadProjectHostingDetails((_b = this.OrganizationFormControl) === null || _b === void 0 ? void 0 : _b.value, (_c = this.RepositoryFormControl) === null || _c === void 0 ? void 0 : _c.value, (_d = this.MainBranchFormControl) === null || _d === void 0 ? void 0 : _d.value)
|
|
4647
|
+
.subscribe((response) => {
|
|
4648
|
+
this.HostingDetails = response.Model;
|
|
4649
|
+
this.HostingDetails.Loading = false;
|
|
4650
|
+
this.configureDevOpsAction();
|
|
4651
|
+
}, (err) => {
|
|
4652
|
+
this.HostingDetails.Loading = false;
|
|
4653
|
+
});
|
|
4654
|
+
}
|
|
4655
|
+
}
|
|
4656
|
+
setupFormControls() {
|
|
4657
|
+
// this.destroyFormControls();
|
|
4658
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
4659
|
+
this.DevOpsSourceControlFormGroup.addControl('devOpsActionLookup', new FormControl(this.DevOpsActionLookup || '', []));
|
|
4660
|
+
this.DevOpsSourceControlFormGroup.addControl([this.SourceControlRoot, 'organization'].join(''), new FormControl((_a = this.EditingSourceControl.Organization) !== null && _a !== void 0 ? _a : '', Validators.required));
|
|
4661
|
+
this.DevOpsSourceControlFormGroup.addControl([this.SourceControlRoot, 'repository'].join(''), new FormControl((_b = this.EditingSourceControl.Repository) !== null && _b !== void 0 ? _b : '', Validators.required));
|
|
4662
|
+
if (this.UseBranches) {
|
|
4663
|
+
this.DevOpsSourceControlFormGroup.addControl([this.SourceControlRoot, 'branches'].join(''), new FormControl((_d = (_c = this.EditingSourceControl) === null || _c === void 0 ? void 0 : _c.Branches) !== null && _d !== void 0 ? _d : '', Validators.required));
|
|
4664
|
+
this.SelectedBranches = (_e = this.EditingSourceControl) === null || _e === void 0 ? void 0 : _e.Branches;
|
|
4665
|
+
this.DevOpsSourceControlFormGroup.addControl([this.SourceControlRoot, 'mainBranch'].join(''), new FormControl((_f = this.EditingSourceControl.MainBranch) !== null && _f !== void 0 ? _f : '', Validators.required));
|
|
4666
|
+
}
|
|
4667
|
+
if (this.UseBuildPath) {
|
|
4668
|
+
this.DevOpsSourceControlFormGroup.addControl([this.SourceControlRoot, 'buildPath'].join(''), new FormControl((_g = this.BuildPath) !== null && _g !== void 0 ? _g : '', Validators.required));
|
|
4669
|
+
}
|
|
4670
|
+
}
|
|
4671
|
+
}
|
|
4672
|
+
DevopsSourceControlFormComponent.decorators = [
|
|
4673
|
+
{ type: Component, args: [{
|
|
4674
|
+
selector: 'lcu-devops-source-control-form',
|
|
4675
|
+
template: "<form class=\"form-card\" [formGroup]=\"DevOpsSourceControlFormGroup\" (ngSubmit)=\"SubmitSourceControl()\">\n\n <mat-card class=\"spread\" class=\"sc-card\">\n <mat-card-header>\n <mat-card-title> Source Control </mat-card-title>\n\n <div fxFlex></div>\n\n <mat-icon matSuffix matTooltip=\"Configure source control, DevOps CI/CD, and artifacts.\">\n info_outline\n </mat-icon>\n </mat-card-header>\n\n <mat-card-content>\n <div class=\"card\">\n <mat-form-field class=\"mat-full-width\">\n <mat-select formControlName=\"devOpsActionLookup\" placeholder=\"DevOps Action\"\n [disabled]=\"HostingDetails?.Loading\" (selectionChange)=\"DevOpsActionLookupChanged($event)\">\n <ng-container *ngFor=\"let devOpsActionLookup of DevOpsActionLookups\">\n <mat-option [value]=\"devOpsActionLookup\" *ngIf=\"DevOpsActions[devOpsActionLookup]; let devOpsAction\">\n {{ devOpsAction.Name }}\n </mat-option>\n </ng-container>\n\n <mat-option value=\"\">-- Create New --</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"card\" *ngIf=\"OrganizationFormControl?.valid || !Loading\">\n <mat-form-field class=\"mat-full-width with-hint\" *ngIf=\"OrganizationOptions?.length > 0\">\n <mat-icon class=\"org-icon\" matPrefix>corporate_fare</mat-icon>\n\n <mat-select [formControlName]=\"SourceControlRoot + 'organization'\" placeholder=\"Organization\"\n (selectionChange)=\"OrganizationChanged($event)\" [disabled]=\"Loading || HostingDetails?.Loading\" required>\n <ng-container *ngFor=\"let orgOpt of OrganizationOptions\">\n <mat-option [value]=\"orgOpt.Name\">\n {{ orgOpt.Name }}\n </mat-option>\n </ng-container>\n </mat-select>\n\n <mat-icon matSuffix (click)=\"RefreshOrganizations()\" matTooltip=\"Refresh Organization\"> refresh </mat-icon>\n\n <a matSuffix href=\"/.oauth/github?oauth-force-edit=true\" target=\"_blank\" color=\"accent\">\n <mat-icon color=\"accent\" matTooltip=\"Re-authorize Organizations\"> launch </mat-icon>\n </a>\n\n <mat-hint>\n If you don't have an organization or would like to create a new one,\n <a href=\"https://github.com/account/organizations/new\" target=\"_blank\">\n start here\n </a>\n </mat-hint>\n </mat-form-field>\n </div>\n\n <div class=\"card\" *ngIf=\"\n RepositoryFormControl?.valid ||\n (OrganizationFormControl?.valid && !Loading)\n \">\n <mat-form-field class=\"mat-full-width\">\n <mat-icon class=\"org-icon\" matPrefix>description</mat-icon>\n\n <mat-select [formControlName]=\"SourceControlRoot + 'repository'\" [placeholder]=\"\n OrganizationFormControl?.valid\n ? 'Repository'\n : 'Repository (select organization first)'\n \" [disabled]=\"\n !OrganizationFormControl?.valid || Loading || HostingDetails?.Loading\n \" (selectionChange)=\"RepositoryChanged($event)\" *ngIf=\"!CreatingRepository\" required>\n <ng-container *ngFor=\"let repoOpt of RepositoryOptions\">\n <mat-option [value]=\"repoOpt.Name\">\n {{ repoOpt.Name }}\n </mat-option>\n </ng-container>\n </mat-select>\n\n <input matInput placeholder=\"Repository (creates new if does not exist)\"\n [formControlName]=\"SourceControlRoot + 'repository'\" *ngIf=\"CreatingRepository\"\n [fxHide]=\"Loading || HostingDetails?.Loading\" required />\n\n <mat-icon matSuffix (click)=\"CreateRepository()\" [fxHide]=\"Loading || HostingDetails?.Loading\"\n *ngIf=\"!CreatingRepository && OrganizationFormControl?.valid\">\n add_circle\n </mat-icon>\n\n <button mat-button type=\"button\" (click)=\"SaveRepository()\"\n *ngIf=\"CreatingRepository && RepositoryFormControl?.valid\">\n\n <mat-icon matSuffix color=\"primary\">\n save\n </mat-icon>\n </button>\n\n <button mat-button type=\"button\" (click)=\"CancelCreateRepository()\" *ngIf=\"CreatingRepository\">\n\n <mat-icon matSuffix>\n cancel\n </mat-icon>\n </button>\n </mat-form-field>\n </div>\n\n <div class=\"card\" *ngIf=\"\n (BranchesFormControl?.valid ||\n (OrganizationFormControl?.valid &&\n RepositoryFormControl?.valid &&\n !Loading)) &&\n !CreatingRepository &&\n UseBranches\n \">\n <mat-form-field class=\"mat-full-width\">\n <mat-icon class=\"org-icon\" matPrefix>account_tree</mat-icon>\n\n <mat-label>Selected Branches</mat-label>\n\n <mat-autocomplete (optionSelected)=\"BranchOptionSelected($event)\" #branchOptions=\"matAutocomplete\">\n <ng-container *ngFor=\"let branchOpt of BranchOptions\">\n <mat-option [value]=\"branchOpt.Name\">\n {{ branchOpt.Name }}\n </mat-option>\n </ng-container>\n </mat-autocomplete>\n\n <mat-chip-list #selectedBranches>\n <mat-chip [removable]=\"true\" (removed)=\"RemoveBranchOption(selBranch)\"\n *ngFor=\"let selBranch of SelectedBranches\">\n {{ selBranch }}\n <mat-icon matChipRemove>cancel</mat-icon>\n </mat-chip>\n\n <input matInput placeholder=\"New Branch...\" [formControlName]=\"SourceControlRoot + 'branches'\" #branches\n [matAutocomplete]=\"branchOptions\" [matChipInputFor]=\"selectedBranches\"\n [matChipInputSeparatorKeyCodes]=\"SeparatorKeysCodes\" [matChipInputAddOnBlur]=\"true\"\n (matChipInputTokenEnd)=\"AddBranchOption($event)\" [disabled]=\"Loading || HostingDetails?.Loading\"\n required />\n </mat-chip-list>\n </mat-form-field>\n\n <mat-form-field class=\"mat-full-width with-hint\" [fxShow]=\"SelectedBranches?.length > 1\">\n <mat-icon class=\"org-icon\" matPrefix>account_tree</mat-icon>\n\n <mat-select [formControlName]=\"SourceControlRoot + 'mainBranch'\" placeholder=\"Main Branch\"\n [disabled]=\"Loading || HostingDetails?.Loading\" (selectionChange)=\"MainBranchChanged($event)\" required>\n <ng-container *ngFor=\"let branch of SelectedBranches\">\n <mat-option [value]=\"branch\">\n {{ branch }}\n </mat-option>\n </ng-container>\n </mat-select>\n\n <mat-icon matSuffix (click)=\"RefreshOrganizations()\"> refresh </mat-icon>\n\n <a matSuffix mat-icon-button href=\"/.oauth/github?oauth-force-edit=true\" target=\"_blank\" color=\"accent\">\n <mat-icon matTooltip=\"Re-authorize Organizations\" color=\"accent\"> launch </mat-icon>\n </a>\n\n <mat-hint>\n If you don't have an organization or would like to create a new one,\n <a href=\"https://github.com/account/organizations/new\" target=\"_blank\">\n start here\n </a>\n </mat-hint>\n </mat-form-field>\n </div>\n\n <div class=\"card\" *ngIf=\"\n (BuildPathFormControl?.valid ||\n (OrganizationFormControl?.valid &&\n RepositoryFormControl?.valid &&\n !Loading)) &&\n !CreatingRepository &&\n UseBuildPath\n \">\n <mat-form-field class=\"mat-full-width with-hint\">\n <mat-icon class=\"org-icon\" matPrefix>build</mat-icon>\n\n <mat-select [formControlName]=\"SourceControlRoot + 'buildPath'\" placeholder=\"Build Path\"\n [disabled]=\"Loading || BuildPathDisabled\" (selectionChange)=\"BuildPathChanged($event)\" required>\n <ng-container *ngFor=\"let buildPath of BuildPathOptions\">\n <mat-option [value]=\"buildPath\">\n {{ buildPath }}\n </mat-option>\n </ng-container>\n </mat-select>\n\n <mat-hint>\n The build path identifies which build action to use for your\n configuration.\n </mat-hint>\n </mat-form-field>\n </div>\n\n <div *ngIf=\"Loading\">\n <div class=\"spread\">\n <lcu-loader style=\"margin: auto\" [loading]=\"true\"></lcu-loader>\n\n <div class=\"margin-3\">\n <h4 class=\"mat-title\" *ngIf=\"!OrganizationFormControl?.valid\">\n Loading organizations\n </h4>\n\n <h4 class=\"mat-title\" *ngIf=\"\n OrganizationFormControl?.valid && !RepositoryFormControl?.valid\n \">\n Loading repositories\n </h4>\n\n <h4 class=\"mat-title\" *ngIf=\"RepositoryFormControl?.valid && !BranchesFormControl?.valid\">\n Loading branches\n </h4>\n\n <h4 class=\"mat-title\" *ngIf=\"\n (RepositoryFormControl?.valid || BranchesFormControl?.valid) &&\n !BuildPathFormControl?.valid\n \">\n Loading build paths\n </h4>\n </div>\n </div>\n </div>\n <!-- </div> -->\n\n </mat-card-content>\n <mat-card-actions fxLayoutAlign=\"center center\">\n <!-- [disabled]=\"!SecurityFormGroup.valid || !SecurityFormGroup.dirty\" -->\n <button mat-raised-button type=\"submit\">Save</button>\n </mat-card-actions>\n </mat-card>\n</form>",
|
|
4676
|
+
styles: [".form-card,.sc-card{width:100%}"]
|
|
4677
|
+
},] }
|
|
4678
|
+
];
|
|
4679
|
+
DevopsSourceControlFormComponent.ctorParameters = () => [
|
|
4680
|
+
{ type: FormBuilder },
|
|
4681
|
+
{ type: ApplicationsFlowService },
|
|
4682
|
+
{ type: EaCService }
|
|
4683
|
+
];
|
|
4684
|
+
DevopsSourceControlFormComponent.propDecorators = {
|
|
4685
|
+
BranchesInput: [{ type: ViewChild, args: ['branches',] }],
|
|
4686
|
+
EditingSourceControlLookup: [{ type: Input, args: ['editing-source-control-lookup',] }],
|
|
4687
|
+
Environment: [{ type: Input, args: ['environment',] }]
|
|
4688
|
+
};
|
|
4689
|
+
|
|
4690
|
+
class SourceControlDialogComponent {
|
|
4691
|
+
constructor(dialogRef, data) {
|
|
4692
|
+
this.dialogRef = dialogRef;
|
|
4693
|
+
this.data = data;
|
|
4694
|
+
}
|
|
4695
|
+
ngOnInit() {
|
|
4696
|
+
}
|
|
4697
|
+
}
|
|
4698
|
+
SourceControlDialogComponent.decorators = [
|
|
4699
|
+
{ type: Component, args: [{
|
|
4700
|
+
selector: 'lcu-source-control-dialog',
|
|
4701
|
+
template: "\n<div fxLayoutAlign=\"center center\">\n<lcu-devops-source-control-form\n [environment]=\"data.environment\"\n [editing-source-control-lookup]=\"data.scLookup\">\n</lcu-devops-source-control-form>\n</div>",
|
|
4702
|
+
styles: [""]
|
|
4703
|
+
},] }
|
|
4704
|
+
];
|
|
4705
|
+
SourceControlDialogComponent.ctorParameters = () => [
|
|
4706
|
+
{ type: MatDialogRef },
|
|
4707
|
+
{ type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
|
|
4708
|
+
];
|
|
4709
|
+
|
|
4710
|
+
class BuildPipelineDialogComponent {
|
|
4711
|
+
constructor(dialogRef, data) {
|
|
4712
|
+
this.dialogRef = dialogRef;
|
|
4713
|
+
this.data = data;
|
|
4714
|
+
}
|
|
4715
|
+
ngOnInit() {
|
|
4716
|
+
}
|
|
4717
|
+
}
|
|
4718
|
+
BuildPipelineDialogComponent.decorators = [
|
|
4719
|
+
{ type: Component, args: [{
|
|
4720
|
+
selector: 'lcu-build-pipeline-dialog',
|
|
4721
|
+
template: "<lcu-build-pipeline-form\n[devops-action-lookup]=\"data.devopsActionLookup\"\n[environment]=\"data.environment\"\n>\n\n</lcu-build-pipeline-form>\n",
|
|
4722
|
+
styles: [""]
|
|
4723
|
+
},] }
|
|
4724
|
+
];
|
|
4725
|
+
BuildPipelineDialogComponent.ctorParameters = () => [
|
|
4726
|
+
{ type: MatDialogRef },
|
|
4727
|
+
{ type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }
|
|
4728
|
+
];
|
|
4729
|
+
|
|
4216
4730
|
class ApplicationsFlowModule {
|
|
4217
4731
|
static forRoot() {
|
|
4218
4732
|
return {
|
|
@@ -4223,7 +4737,7 @@ class ApplicationsFlowModule {
|
|
|
4223
4737
|
ProjectService,
|
|
4224
4738
|
NPMService,
|
|
4225
4739
|
FormsService,
|
|
4226
|
-
|
|
4740
|
+
EaCService
|
|
4227
4741
|
],
|
|
4228
4742
|
};
|
|
4229
4743
|
}
|
|
@@ -4265,7 +4779,11 @@ ApplicationsFlowModule.decorators = [
|
|
|
4265
4779
|
CardCarouselComponent,
|
|
4266
4780
|
SecurityToggleComponent,
|
|
4267
4781
|
ProcessorDetailsFormComponent,
|
|
4268
|
-
SourceControlFormComponent
|
|
4782
|
+
SourceControlFormComponent,
|
|
4783
|
+
BuildPipelineFormComponent,
|
|
4784
|
+
DevopsSourceControlFormComponent,
|
|
4785
|
+
SourceControlDialogComponent,
|
|
4786
|
+
BuildPipelineDialogComponent
|
|
4269
4787
|
],
|
|
4270
4788
|
imports: [
|
|
4271
4789
|
FathymSharedModule,
|
|
@@ -4313,7 +4831,11 @@ ApplicationsFlowModule.decorators = [
|
|
|
4313
4831
|
CardCarouselComponent,
|
|
4314
4832
|
SecurityToggleComponent,
|
|
4315
4833
|
ProcessorDetailsFormComponent,
|
|
4316
|
-
SourceControlFormComponent
|
|
4834
|
+
SourceControlFormComponent,
|
|
4835
|
+
BuildPipelineFormComponent,
|
|
4836
|
+
DevopsSourceControlFormComponent,
|
|
4837
|
+
SourceControlDialogComponent,
|
|
4838
|
+
BuildPipelineDialogComponent
|
|
4317
4839
|
],
|
|
4318
4840
|
entryComponents: [
|
|
4319
4841
|
ApplicationsFlowProjectsElementComponent,
|
|
@@ -4348,7 +4870,11 @@ ApplicationsFlowModule.decorators = [
|
|
|
4348
4870
|
CardCarouselComponent,
|
|
4349
4871
|
SecurityToggleComponent,
|
|
4350
4872
|
ProcessorDetailsFormComponent,
|
|
4351
|
-
SourceControlFormComponent
|
|
4873
|
+
SourceControlFormComponent,
|
|
4874
|
+
BuildPipelineFormComponent,
|
|
4875
|
+
DevopsSourceControlFormComponent,
|
|
4876
|
+
SourceControlDialogComponent,
|
|
4877
|
+
BuildPipelineDialogComponent
|
|
4352
4878
|
],
|
|
4353
4879
|
},] }
|
|
4354
4880
|
];
|
|
@@ -4381,5 +4907,5 @@ class FormModel {
|
|
|
4381
4907
|
* Generated bundle index. Do not edit.
|
|
4382
4908
|
*/
|
|
4383
4909
|
|
|
4384
|
-
export { ActionsModel, ApplicationsFlowModule, ApplicationsFlowProjectsContext, ApplicationsFlowProjectsElementComponent, ApplicationsFlowProjectsElementState, ApplicationsFlowService, ApplicationsFlowState, ApplicationsFlowStateContext, BaseFormConfigModel, CardFormConfigModel, CreateProjectWizardComponent, DevSettingsPresetModel, DomainModel, DynamicTabsModel, FormActionsModel, FormModel, FormValuesModel, FormsService, GitAuthComponent, GitHubBranch, GitHubOrganization, GitHubRepository, GitHubSetupState, GitHubWorkflowRun, HostingDetailsFormGroupComponent, NPMService, ProjectActionsModel, ProjectHostingDetails, ProjectHostingOption, ProjectHostingOptionInput, ProjectNameComponent, ProjectService, RootDirectoryComponent, SELECTOR_APPLICATIONS_FLOW_PROJECTS_ELEMENT, SourceControlFormControlsComponent, ThreeColumnComponent, UnpackLowCodeUnitRequest,
|
|
4910
|
+
export { ActionsModel, ApplicationsFlowModule, ApplicationsFlowProjectsContext, ApplicationsFlowProjectsElementComponent, ApplicationsFlowProjectsElementState, ApplicationsFlowService, ApplicationsFlowState, ApplicationsFlowStateContext, BaseFormConfigModel, CardFormConfigModel, CreateProjectWizardComponent, DevSettingsPresetModel, DomainModel, DynamicTabsModel, EaCService, FormActionsModel, FormModel, FormValuesModel, FormsService, GitAuthComponent, GitHubBranch, GitHubOrganization, GitHubRepository, GitHubSetupState, GitHubWorkflowRun, HostingDetailsFormGroupComponent, NPMService, ProjectActionsModel, ProjectHostingDetails, ProjectHostingOption, ProjectHostingOptionInput, ProjectNameComponent, ProjectService, RootDirectoryComponent, SELECTOR_APPLICATIONS_FLOW_PROJECTS_ELEMENT, SaveApplicationAsCodeEventRequest, SaveDFSModifierEventRequest, SaveEnvironmentAsCodeEventRequest, SaveProjectAsCodeEventRequest, SourceControlFormControlsComponent, ThreeColumnComponent, UnpackLowCodeUnitRequest, DynamicTabsComponent as ɵa, HeaderComponent as ɵb, SourceControlFormComponent as ɵba, BuildPipelineFormComponent as ɵbb, DevopsSourceControlFormComponent as ɵbc, SourceControlDialogComponent as ɵbd, BuildPipelineDialogComponent as ɵbe, ProjectTabsComponent as ɵc, GeneralComponent as ɵd, DomainsComponent as ɵe, ProjectItemsComponent as ɵf, BuildsComponent as ɵg, RecentActivitiesComponent as ɵh, FormCardComponent as ɵi, BaseFormComponent as ɵj, BaseFormTestComponent as ɵk, AppsFlowComponent as ɵl, DevOpsComponent as ɵm, DFSModifiersComponent as ɵn, NpmPackageSelectComponent as ɵo, ColumnInfoCardComponent as ɵp, SlottedCardComponent as ɵq, ProjectInfoCardComponent as ɵr, AnalyticsCardComponent as ɵs, FeedCardSmComponent as ɵt, GhControlComponent as ɵu, MainFeedCardComponent as ɵv, TwoColumnHeaderComponent as ɵw, CardCarouselComponent as ɵx, SecurityToggleComponent as ɵy, ProcessorDetailsFormComponent as ɵz };
|
|
4385
4911
|
//# sourceMappingURL=lowcodeunit-applications-flow-common.js.map
|