@lowcodeunit/applications-flow-common 1.33.114-lets-get-social-ish → 1.33.118-lets-get-social-ish

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/bundles/lowcodeunit-applications-flow-common.umd.js +217 -62
  2. package/bundles/lowcodeunit-applications-flow-common.umd.js.map +1 -1
  3. package/bundles/lowcodeunit-applications-flow-common.umd.min.js +1 -1
  4. package/bundles/lowcodeunit-applications-flow-common.umd.min.js.map +1 -1
  5. package/esm2015/lib/applications-flow.module.js +8 -4
  6. package/esm2015/lib/controls/build-pipeline-form/build-pipeline-form.component.js +33 -49
  7. package/esm2015/lib/controls/processor-details-form/processor-details-form.component.js +15 -8
  8. package/esm2015/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.js +2 -2
  9. package/esm2015/lib/elements/breadcrumb/breadcrumb.component.js +115 -0
  10. package/esm2015/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.js +1 -2
  11. package/esm2015/lib/services/applications-flow.service.js +3 -5
  12. package/esm2015/lowcodeunit-applications-flow-common.js +2 -1
  13. package/fesm2015/lowcodeunit-applications-flow-common.js +166 -63
  14. package/fesm2015/lowcodeunit-applications-flow-common.js.map +1 -1
  15. package/lib/applications-flow.module.d.ts.map +1 -1
  16. package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts +2 -2
  17. package/lib/controls/build-pipeline-form/build-pipeline-form.component.d.ts.map +1 -1
  18. package/lib/controls/processor-details-form/processor-details-form.component.d.ts +1 -0
  19. package/lib/controls/processor-details-form/processor-details-form.component.d.ts.map +1 -1
  20. package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts +0 -1
  21. package/lib/dialogs/build-pipeline-dialog/build-pipeline-dialog.component.d.ts.map +1 -1
  22. package/lib/elements/breadcrumb/breadcrumb.component.d.ts +33 -0
  23. package/lib/elements/breadcrumb/breadcrumb.component.d.ts.map +1 -0
  24. package/lib/elements/projects/controls/hosting-details-form-group/hosting-details-form-group.component.d.ts.map +1 -1
  25. package/lib/services/applications-flow.service.d.ts +1 -1
  26. package/lib/services/applications-flow.service.d.ts.map +1 -1
  27. package/lowcodeunit-applications-flow-common.d.ts +1 -0
  28. package/lowcodeunit-applications-flow-common.d.ts.map +1 -1
  29. package/lowcodeunit-applications-flow-common.metadata.json +1 -1
  30. package/package.json +1 -1
@@ -12,6 +12,7 @@ export { BuildPipelineDialogComponent as ɵbe } from './lib/dialogs/build-pipeli
12
12
  export { SourceControlDialogComponent as ɵbd } from './lib/dialogs/source-control-dialog/source-control-dialog.component';
13
13
  export { AnalyticsCardComponent as ɵs } from './lib/elements/analytics-card/analytics-card.component';
14
14
  export { BaseFormComponent as ɵj } from './lib/elements/base-form/base-form.component';
15
+ export { BreadcrumbComponent as ɵbg } from './lib/elements/breadcrumb/breadcrumb.component';
15
16
  export { CardCarouselComponent as ɵx } from './lib/elements/card-carousel/card-carousel.component';
16
17
  export { ColumnInfoCardComponent as ɵp } from './lib/elements/column-info-card/column-info-card.component';
17
18
  export { DynamicTabsComponent as ɵa } from './lib/elements/dynamic-tabs/dynamic-tabs.component';
@@ -34,4 +35,4 @@ export { BaseFormTestComponent as ɵk } from './lib/elements/projects/controls/t
34
35
  export { GeneralComponent as ɵd } from './lib/elements/projects/controls/tabs/general/general.component';
35
36
  export { SlottedCardComponent as ɵq } from './lib/elements/slotted-card/slotted-card.component';
36
37
  export { TwoColumnHeaderComponent as ɵw } from './lib/elements/two-column-header/two-column-header.component';
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG93Y29kZXVuaXQtYXBwbGljYXRpb25zLWZsb3ctY29tbW9uLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL2FwcGxpY2F0aW9ucy1mbG93L2FwcGxpY2F0aW9ucy1mbG93L3Byb2plY3RzL2NvbW1vbi9zcmMvIiwic291cmNlcyI6WyJsb3djb2RldW5pdC1hcHBsaWNhdGlvbnMtZmxvdy1jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFdBQVcsQ0FBQztBQUUxQixPQUFPLEVBQUMsMEJBQTBCLElBQUksR0FBRyxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDbkgsT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEdBQUcsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3ZJLE9BQU8sRUFBQyw0QkFBNEIsSUFBSSxHQUFHLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUN6SCxPQUFPLEVBQUMsNkJBQTZCLElBQUksRUFBRSxFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDM0gsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxHQUFHLEVBQUMsTUFBTSxrRUFBa0UsQ0FBQztBQUNuSCxPQUFPLEVBQUMsNEJBQTRCLElBQUksR0FBRyxFQUFDLE1BQU0scUVBQXFFLENBQUM7QUFDeEgsT0FBTyxFQUFDLDRCQUE0QixJQUFJLEdBQUcsRUFBQyxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNwRyxPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyx1QkFBdUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUN6RyxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDOUYsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQzdGLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDeEYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdEQUF3RCxDQUFDO0FBQ25HLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUM1RyxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMERBQTBELENBQUM7QUFDL0YsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQ25ILE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUNoSCxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0sZ0ZBQWdGLENBQUM7QUFDL0gsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFFQUFxRSxDQUFDO0FBQzVHLE9BQU8sRUFBQyx5QkFBeUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxpR0FBaUcsQ0FBQztBQUNoSixPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLCtEQUErRCxDQUFDO0FBQ3BHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw2RUFBNkUsQ0FBQztBQUN4SCxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDdkcsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZGQUE2RixDQUFDO0FBQ3hJLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUN2RyxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDOUYsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLDhEQUE4RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xjdS5hcGknO1xuXG5leHBvcnQge0J1aWxkUGlwZWxpbmVGb3JtQ29tcG9uZW50IGFzIMm1YmJ9IGZyb20gJy4vbGliL2NvbnRyb2xzL2J1aWxkLXBpcGVsaW5lLWZvcm0vYnVpbGQtcGlwZWxpbmUtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0IHtEZXZvcHNTb3VyY2VDb250cm9sRm9ybUNvbXBvbmVudCBhcyDJtWJjfSBmcm9tICcuL2xpYi9jb250cm9scy9kZXZvcHMtc291cmNlLWNvbnRyb2wtZm9ybS9kZXZvcHMtc291cmNlLWNvbnRyb2wtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0IHtFZGl0QXBwbGljYXRpb25Gb3JtQ29tcG9uZW50IGFzIMm1YmZ9IGZyb20gJy4vbGliL2NvbnRyb2xzL2VkaXQtYXBwbGljYXRpb24tZm9ybS9lZGl0LWFwcGxpY2F0aW9uLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCB7UHJvY2Vzc29yRGV0YWlsc0Zvcm1Db21wb25lbnQgYXMgybV6fSBmcm9tICcuL2xpYi9jb250cm9scy9wcm9jZXNzb3ItZGV0YWlscy1mb3JtL3Byb2Nlc3Nvci1kZXRhaWxzLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCB7U2VjdXJpdHlUb2dnbGVDb21wb25lbnQgYXMgybV5fSBmcm9tICcuL2xpYi9jb250cm9scy9zZWN1cml0eS10b2dnbGUvc2VjdXJpdHktdG9nZ2xlLmNvbXBvbmVudCc7XG5leHBvcnQge1NvdXJjZUNvbnRyb2xGb3JtQ29tcG9uZW50IGFzIMm1YmF9IGZyb20gJy4vbGliL2NvbnRyb2xzL3NvdXJjZS1jb250cm9sLWZvcm0vc291cmNlLWNvbnRyb2wtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0IHtCdWlsZFBpcGVsaW5lRGlhbG9nQ29tcG9uZW50IGFzIMm1YmV9IGZyb20gJy4vbGliL2RpYWxvZ3MvYnVpbGQtcGlwZWxpbmUtZGlhbG9nL2J1aWxkLXBpcGVsaW5lLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0IHtTb3VyY2VDb250cm9sRGlhbG9nQ29tcG9uZW50IGFzIMm1YmR9IGZyb20gJy4vbGliL2RpYWxvZ3Mvc291cmNlLWNvbnRyb2wtZGlhbG9nL3NvdXJjZS1jb250cm9sLWRpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0IHtBbmFseXRpY3NDYXJkQ29tcG9uZW50IGFzIMm1c30gZnJvbSAnLi9saWIvZWxlbWVudHMvYW5hbHl0aWNzLWNhcmQvYW5hbHl0aWNzLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCB7QmFzZUZvcm1Db21wb25lbnQgYXMgybVqfSBmcm9tICcuL2xpYi9lbGVtZW50cy9iYXNlLWZvcm0vYmFzZS1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQge0NhcmRDYXJvdXNlbENvbXBvbmVudCBhcyDJtXh9IGZyb20gJy4vbGliL2VsZW1lbnRzL2NhcmQtY2Fyb3VzZWwvY2FyZC1jYXJvdXNlbC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb2x1bW5JbmZvQ2FyZENvbXBvbmVudCBhcyDJtXB9IGZyb20gJy4vbGliL2VsZW1lbnRzL2NvbHVtbi1pbmZvLWNhcmQvY29sdW1uLWluZm8tY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHtEeW5hbWljVGFic0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2VsZW1lbnRzL2R5bmFtaWMtdGFicy9keW5hbWljLXRhYnMuY29tcG9uZW50JztcbmV4cG9ydCB7RmVlZENhcmRTbUNvbXBvbmVudCBhcyDJtXR9IGZyb20gJy4vbGliL2VsZW1lbnRzL2ZlZWQtY2FyZC1zbS9mZWVkLWNhcmQtc20uY29tcG9uZW50JztcbmV4cG9ydCB7Rm9ybUNhcmRDb21wb25lbnQgYXMgybVpfSBmcm9tICcuL2xpYi9lbGVtZW50cy9mb3JtLWNhcmQvZm9ybS1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQge0doQ29udHJvbENvbXBvbmVudCBhcyDJtXV9IGZyb20gJy4vbGliL2VsZW1lbnRzL2doLWNvbnRyb2wvZ2gtY29udHJvbC5jb21wb25lbnQnO1xuZXhwb3J0IHtNYWluRmVlZENhcmRDb21wb25lbnQgYXMgybV2fSBmcm9tICcuL2xpYi9lbGVtZW50cy9tYWluLWZlZWQtY2FyZC9tYWluLWZlZWQtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9qZWN0SW5mb0NhcmRDb21wb25lbnQgYXMgybVyfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0LWluZm8tY2FyZC9wcm9qZWN0LWluZm8tY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHtCdWlsZHNDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy9idWlsZHMvYnVpbGRzLmNvbXBvbmVudCc7XG5leHBvcnQge0hlYWRlckNvbXBvbmVudCBhcyDJtWJ9IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCB7UHJvamVjdEl0ZW1zQ29tcG9uZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvcHJvamVjdC1pdGVtcy9wcm9qZWN0LWl0ZW1zLmNvbXBvbmVudCc7XG5leHBvcnQge1Byb2plY3RUYWJzQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvcHJvamVjdC10YWJzL3Byb2plY3QtdGFicy5jb21wb25lbnQnO1xuZXhwb3J0IHtSZWNlbnRBY3Rpdml0aWVzQ29tcG9uZW50IGFzIMm1aH0gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvcmVjZW50LWFjdGl2aXRpZXMvcmVjZW50LWFjdGl2aXRpZXMuY29tcG9uZW50JztcbmV4cG9ydCB7QXBwc0Zsb3dDb21wb25lbnQgYXMgybVsfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2FwcHMtZmxvdy9hcHBzLWZsb3cuY29tcG9uZW50JztcbmV4cG9ydCB7TnBtUGFja2FnZVNlbGVjdENvbXBvbmVudCBhcyDJtW99IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3RhYnMvYXBwcy1mbG93L25wbS1wYWNrYWdlLXNlbGVjdC9ucG0tcGFja2FnZS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCB7RGV2T3BzQ29tcG9uZW50IGFzIMm1bX0gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvdGFicy9kZXZvcHMvZGV2b3BzLmNvbXBvbmVudCc7XG5leHBvcnQge0RGU01vZGlmaWVyc0NvbXBvbmVudCBhcyDJtW59IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3RhYnMvZGZzLW1vZGlmaWVycy9kZnMtbW9kaWZpZXJzLmNvbXBvbmVudCc7XG5leHBvcnQge0RvbWFpbnNDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2RvbWFpbnMvZG9tYWlucy5jb21wb25lbnQnO1xuZXhwb3J0IHtCYXNlRm9ybVRlc3RDb21wb25lbnQgYXMgybVrfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2dlbmVyYWwvZm9ybXMvYmFzZS1mb3JtLXRlc3QvYmFzZS1mb3JtLXRlc3QuY29tcG9uZW50JztcbmV4cG9ydCB7R2VuZXJhbENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3RhYnMvZ2VuZXJhbC9nZW5lcmFsLmNvbXBvbmVudCc7XG5leHBvcnQge1Nsb3R0ZWRDYXJkQ29tcG9uZW50IGFzIMm1cX0gZnJvbSAnLi9saWIvZWxlbWVudHMvc2xvdHRlZC1jYXJkL3Nsb3R0ZWQtY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHtUd29Db2x1bW5IZWFkZXJDb21wb25lbnQgYXMgybV3fSBmcm9tICcuL2xpYi9lbGVtZW50cy90d28tY29sdW1uLWhlYWRlci90d28tY29sdW1uLWhlYWRlci5jb21wb25lbnQnOyJdfQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG93Y29kZXVuaXQtYXBwbGljYXRpb25zLWZsb3ctY29tbW9uLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL2FwcGxpY2F0aW9ucy1mbG93L2FwcGxpY2F0aW9ucy1mbG93L3Byb2plY3RzL2NvbW1vbi9zcmMvIiwic291cmNlcyI6WyJsb3djb2RldW5pdC1hcHBsaWNhdGlvbnMtZmxvdy1jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFdBQVcsQ0FBQztBQUUxQixPQUFPLEVBQUMsMEJBQTBCLElBQUksR0FBRyxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDbkgsT0FBTyxFQUFDLGdDQUFnQyxJQUFJLEdBQUcsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQ3ZJLE9BQU8sRUFBQyw0QkFBNEIsSUFBSSxHQUFHLEVBQUMsTUFBTSxzRUFBc0UsQ0FBQztBQUN6SCxPQUFPLEVBQUMsNkJBQTZCLElBQUksRUFBRSxFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDM0gsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxHQUFHLEVBQUMsTUFBTSxrRUFBa0UsQ0FBQztBQUNuSCxPQUFPLEVBQUMsNEJBQTRCLElBQUksR0FBRyxFQUFDLE1BQU0scUVBQXFFLENBQUM7QUFDeEgsT0FBTyxFQUFDLDRCQUE0QixJQUFJLEdBQUcsRUFBQyxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNwRyxPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEdBQUcsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDekcsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUM3RixPQUFPLEVBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDckYsT0FBTyxFQUFDLGtCQUFrQixJQUFJLEVBQUUsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3REFBd0QsQ0FBQztBQUNuRyxPQUFPLEVBQUMsd0JBQXdCLElBQUksRUFBRSxFQUFDLE1BQU0sOERBQThELENBQUM7QUFDNUcsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwwREFBMEQsQ0FBQztBQUMvRixPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3RUFBd0UsQ0FBQztBQUNuSCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sc0VBQXNFLENBQUM7QUFDaEgsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLGdGQUFnRixDQUFDO0FBQy9ILE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxRUFBcUUsQ0FBQztBQUM1RyxPQUFPLEVBQUMseUJBQXlCLElBQUksRUFBRSxFQUFDLE1BQU0saUdBQWlHLENBQUM7QUFDaEosT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUNwRyxPQUFPLEVBQUMscUJBQXFCLElBQUksRUFBRSxFQUFDLE1BQU0sNkVBQTZFLENBQUM7QUFDeEgsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBQ3ZHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw2RkFBNkYsQ0FBQztBQUN4SSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDdkcsT0FBTyxFQUFDLG9CQUFvQixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQzlGLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4REFBOEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9sY3UuYXBpJztcblxuZXhwb3J0IHtCdWlsZFBpcGVsaW5lRm9ybUNvbXBvbmVudCBhcyDJtWJifSBmcm9tICcuL2xpYi9jb250cm9scy9idWlsZC1waXBlbGluZS1mb3JtL2J1aWxkLXBpcGVsaW5lLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCB7RGV2b3BzU291cmNlQ29udHJvbEZvcm1Db21wb25lbnQgYXMgybViY30gZnJvbSAnLi9saWIvY29udHJvbHMvZGV2b3BzLXNvdXJjZS1jb250cm9sLWZvcm0vZGV2b3BzLXNvdXJjZS1jb250cm9sLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCB7RWRpdEFwcGxpY2F0aW9uRm9ybUNvbXBvbmVudCBhcyDJtWJmfSBmcm9tICcuL2xpYi9jb250cm9scy9lZGl0LWFwcGxpY2F0aW9uLWZvcm0vZWRpdC1hcHBsaWNhdGlvbi1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQge1Byb2Nlc3NvckRldGFpbHNGb3JtQ29tcG9uZW50IGFzIMm1en0gZnJvbSAnLi9saWIvY29udHJvbHMvcHJvY2Vzc29yLWRldGFpbHMtZm9ybS9wcm9jZXNzb3ItZGV0YWlscy1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQge1NlY3VyaXR5VG9nZ2xlQ29tcG9uZW50IGFzIMm1eX0gZnJvbSAnLi9saWIvY29udHJvbHMvc2VjdXJpdHktdG9nZ2xlL3NlY3VyaXR5LXRvZ2dsZS5jb21wb25lbnQnO1xuZXhwb3J0IHtTb3VyY2VDb250cm9sRm9ybUNvbXBvbmVudCBhcyDJtWJhfSBmcm9tICcuL2xpYi9jb250cm9scy9zb3VyY2UtY29udHJvbC1mb3JtL3NvdXJjZS1jb250cm9sLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCB7QnVpbGRQaXBlbGluZURpYWxvZ0NvbXBvbmVudCBhcyDJtWJlfSBmcm9tICcuL2xpYi9kaWFsb2dzL2J1aWxkLXBpcGVsaW5lLWRpYWxvZy9idWlsZC1waXBlbGluZS1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCB7U291cmNlQ29udHJvbERpYWxvZ0NvbXBvbmVudCBhcyDJtWJkfSBmcm9tICcuL2xpYi9kaWFsb2dzL3NvdXJjZS1jb250cm9sLWRpYWxvZy9zb3VyY2UtY29udHJvbC1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCB7QW5hbHl0aWNzQ2FyZENvbXBvbmVudCBhcyDJtXN9IGZyb20gJy4vbGliL2VsZW1lbnRzL2FuYWx5dGljcy1jYXJkL2FuYWx5dGljcy1jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQge0Jhc2VGb3JtQ29tcG9uZW50IGFzIMm1an0gZnJvbSAnLi9saWIvZWxlbWVudHMvYmFzZS1mb3JtL2Jhc2UtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0IHtCcmVhZGNydW1iQ29tcG9uZW50IGFzIMm1Ymd9IGZyb20gJy4vbGliL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuZXhwb3J0IHtDYXJkQ2Fyb3VzZWxDb21wb25lbnQgYXMgybV4fSBmcm9tICcuL2xpYi9lbGVtZW50cy9jYXJkLWNhcm91c2VsL2NhcmQtY2Fyb3VzZWwuY29tcG9uZW50JztcbmV4cG9ydCB7Q29sdW1uSW5mb0NhcmRDb21wb25lbnQgYXMgybVwfSBmcm9tICcuL2xpYi9lbGVtZW50cy9jb2x1bW4taW5mby1jYXJkL2NvbHVtbi1pbmZvLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCB7RHluYW1pY1RhYnNDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9lbGVtZW50cy9keW5hbWljLXRhYnMvZHluYW1pYy10YWJzLmNvbXBvbmVudCc7XG5leHBvcnQge0ZlZWRDYXJkU21Db21wb25lbnQgYXMgybV0fSBmcm9tICcuL2xpYi9lbGVtZW50cy9mZWVkLWNhcmQtc20vZmVlZC1jYXJkLXNtLmNvbXBvbmVudCc7XG5leHBvcnQge0Zvcm1DYXJkQ29tcG9uZW50IGFzIMm1aX0gZnJvbSAnLi9saWIvZWxlbWVudHMvZm9ybS1jYXJkL2Zvcm0tY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0IHtHaENvbnRyb2xDb21wb25lbnQgYXMgybV1fSBmcm9tICcuL2xpYi9lbGVtZW50cy9naC1jb250cm9sL2doLWNvbnRyb2wuY29tcG9uZW50JztcbmV4cG9ydCB7TWFpbkZlZWRDYXJkQ29tcG9uZW50IGFzIMm1dn0gZnJvbSAnLi9saWIvZWxlbWVudHMvbWFpbi1mZWVkLWNhcmQvbWFpbi1mZWVkLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCB7UHJvamVjdEluZm9DYXJkQ29tcG9uZW50IGFzIMm1cn0gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdC1pbmZvLWNhcmQvcHJvamVjdC1pbmZvLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCB7QnVpbGRzQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvYnVpbGRzL2J1aWxkcy5jb21wb25lbnQnO1xuZXhwb3J0IHtIZWFkZXJDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQge1Byb2plY3RJdGVtc0NvbXBvbmVudCBhcyDJtWZ9IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3Byb2plY3QtaXRlbXMvcHJvamVjdC1pdGVtcy5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9qZWN0VGFic0NvbXBvbmVudCBhcyDJtWN9IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3Byb2plY3QtdGFicy9wcm9qZWN0LXRhYnMuY29tcG9uZW50JztcbmV4cG9ydCB7UmVjZW50QWN0aXZpdGllc0NvbXBvbmVudCBhcyDJtWh9IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3JlY2VudC1hY3Rpdml0aWVzL3JlY2VudC1hY3Rpdml0aWVzLmNvbXBvbmVudCc7XG5leHBvcnQge0FwcHNGbG93Q29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvdGFicy9hcHBzLWZsb3cvYXBwcy1mbG93LmNvbXBvbmVudCc7XG5leHBvcnQge05wbVBhY2thZ2VTZWxlY3RDb21wb25lbnQgYXMgybVvfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2FwcHMtZmxvdy9ucG0tcGFja2FnZS1zZWxlY3QvbnBtLXBhY2thZ2Utc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Rldk9wc0NvbXBvbmVudCBhcyDJtW19IGZyb20gJy4vbGliL2VsZW1lbnRzL3Byb2plY3RzL2NvbnRyb2xzL3RhYnMvZGV2b3BzL2Rldm9wcy5jb21wb25lbnQnO1xuZXhwb3J0IHtERlNNb2RpZmllcnNDb21wb25lbnQgYXMgybVufSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2Rmcy1tb2RpZmllcnMvZGZzLW1vZGlmaWVycy5jb21wb25lbnQnO1xuZXhwb3J0IHtEb21haW5zQ29tcG9uZW50IGFzIMm1ZX0gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvdGFicy9kb21haW5zL2RvbWFpbnMuY29tcG9uZW50JztcbmV4cG9ydCB7QmFzZUZvcm1UZXN0Q29tcG9uZW50IGFzIMm1a30gZnJvbSAnLi9saWIvZWxlbWVudHMvcHJvamVjdHMvY29udHJvbHMvdGFicy9nZW5lcmFsL2Zvcm1zL2Jhc2UtZm9ybS10ZXN0L2Jhc2UtZm9ybS10ZXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0dlbmVyYWxDb21wb25lbnQgYXMgybVkfSBmcm9tICcuL2xpYi9lbGVtZW50cy9wcm9qZWN0cy9jb250cm9scy90YWJzL2dlbmVyYWwvZ2VuZXJhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtTbG90dGVkQ2FyZENvbXBvbmVudCBhcyDJtXF9IGZyb20gJy4vbGliL2VsZW1lbnRzL3Nsb3R0ZWQtY2FyZC9zbG90dGVkLWNhcmQuY29tcG9uZW50JztcbmV4cG9ydCB7VHdvQ29sdW1uSGVhZGVyQ29tcG9uZW50IGFzIMm1d30gZnJvbSAnLi9saWIvZWxlbWVudHMvdHdvLWNvbHVtbi1oZWFkZXIvdHdvLWNvbHVtbi1oZWFkZXIuY29tcG9uZW50JzsiXX0=
@@ -270,10 +270,8 @@ class ApplicationsFlowService {
270
270
  headers: this.loadHeaders(),
271
271
  });
272
272
  }
273
- UserFeed() {
274
- return this.http.post(`${this.apiRoot}/api/lowcodeunit/userfeed`, {}, {
275
- headers: this.loadHeaders(),
276
- });
273
+ UserFeed(page, pageSize) {
274
+ return this.http.get(`${this.apiRoot}/api/lowcodeunit/userfeed?page=${page}&pageSize=${pageSize}`, {});
277
275
  }
278
276
  // Helpers
279
277
  loadHeaders() {
@@ -1049,7 +1047,6 @@ class HostingDetailsFormGroupComponent {
1049
1047
  ngOnChanges() { }
1050
1048
  ngOnInit() {
1051
1049
  var _a, _b, _c;
1052
- console.log("made it to hosting details");
1053
1050
  this.BuildPipeline =
1054
1051
  this.BuildPipeline || ((_a = this.Details) === null || _a === void 0 ? void 0 : _a.HostingOptions)
1055
1052
  ? (_c = (_b = this.Details) === null || _b === void 0 ? void 0 : _b.HostingOptions[0]) === null || _c === void 0 ? void 0 : _c.Lookup : '';
@@ -3901,7 +3898,7 @@ class ProcessorDetailsFormComponent {
3901
3898
  this.formBldr = formBldr;
3902
3899
  this.eacSvc = eacSvc;
3903
3900
  this.redirectTooltip = '';
3904
- this.SaveFormEvent = new EventEmitter;
3901
+ this.SaveFormEvent = new EventEmitter();
3905
3902
  }
3906
3903
  get APIRootFormControl() {
3907
3904
  var _a;
@@ -4014,7 +4011,7 @@ class ProcessorDetailsFormComponent {
4014
4011
  this.setupProcessorDetailsForm();
4015
4012
  }
4016
4013
  SubmitProcessorDetails() {
4017
- console.log("submitting proc details: ", this.ProcessorDetailsFormGroup.value);
4014
+ console.log('submitting proc details: ', this.ProcessorDetailsFormGroup.value);
4018
4015
  this.SaveFormEvent.emit(this.ProcessorDetailsFormGroup.value);
4019
4016
  }
4020
4017
  ProcessorTypeChanged(event) {
@@ -4069,6 +4066,9 @@ class ProcessorDetailsFormComponent {
4069
4066
  case 'GitHubOAuth':
4070
4067
  this.setupLCUGitHubOAuthForm();
4071
4068
  break;
4069
+ case 'WordPress':
4070
+ this.setupLCUWordPressForm();
4071
+ break;
4072
4072
  // case 'NPM':
4073
4073
  // this.setupLCUNPMForm();
4074
4074
  // break;
@@ -4084,10 +4084,10 @@ class ProcessorDetailsFormComponent {
4084
4084
  setupProcessorDetailsForm() {
4085
4085
  var _a, _b;
4086
4086
  this.ProcessorType = ((_b = (_a = this.EditingApplication) === null || _a === void 0 ? void 0 : _a.Processor) === null || _b === void 0 ? void 0 : _b.Type) || '';
4087
- console.log("EDITING APP = ", this.EditingApplication);
4087
+ console.log('EDITING APP = ', this.EditingApplication);
4088
4088
  if (this.EditingApplication != null) {
4089
4089
  this.ProcessorDetailsFormGroup = this.formBldr.group({
4090
- procType: [this.ProcessorType, [Validators.required]]
4090
+ procType: [this.ProcessorType, [Validators.required]],
4091
4091
  });
4092
4092
  this.setupDfsForm();
4093
4093
  this.setupLcuTypeSubForm();
@@ -4132,6 +4132,10 @@ class ProcessorDetailsFormComponent {
4132
4132
  this.ProcessorDetailsFormGroup.addControl('clientId', this.formBldr.control(((_a = this.EditingApplication.LowCodeUnit) === null || _a === void 0 ? void 0 : _a.ClientID) || '', [Validators.required]));
4133
4133
  this.ProcessorDetailsFormGroup.addControl('clientSecret', this.formBldr.control(((_b = this.EditingApplication.LowCodeUnit) === null || _b === void 0 ? void 0 : _b.ClientSecret) || '', [Validators.required]));
4134
4134
  }
4135
+ setupLCUWordPressForm() {
4136
+ var _a;
4137
+ this.ProcessorDetailsFormGroup.addControl('apiRoot', this.formBldr.control(((_a = this.EditingApplication.LowCodeUnit) === null || _a === void 0 ? void 0 : _a.APIRoot) || '', [Validators.required]));
4138
+ }
4135
4139
  setupProxyForm() {
4136
4140
  var _a, _b;
4137
4141
  this.LCUType = ((_a = this.EditingApplication.LowCodeUnit) === null || _a === void 0 ? void 0 : _a.Type) || '';
@@ -4189,7 +4193,7 @@ class ProcessorDetailsFormComponent {
4189
4193
  ProcessorDetailsFormComponent.decorators = [
4190
4194
  { type: Component, args: [{
4191
4195
  selector: 'lcu-processor-details-form',
4192
- 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 \n <div>\n <mat-slide-toggle \n class=\"spread\" \n formControlName=\"includeRequest\">\n Include Path and Query?\n </mat-slide-toggle>\n\n <mat-icon\n class=\"spread\"\n matSuffix\n matTooltip=\"Should the redirect include the path and query?\"\n >\n info_outline\n </mat-icon>\n </div>\n </div>\n </div>\n </mat-card-content>\n <mat-card-actions fxLayoutAlign=\"center center\">\n\n <button \n mat-raised-button \n type=\"submit\" \n fxFlex=\"100%\" \n color=\"primary\" \n [disabled]=\"!ProcessorDetailsFormGroup.valid || !ProcessorDetailsFormGroup.dirty\">\n <mat-icon>save</mat-icon>\n Save Processor Details\n </button>\n\n </mat-card-actions>\n</mat-card>\n</form>\n \n",
4196
+ 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=\"WordPress\">WordPress</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\n <div *ngSwitchCase=\"'WordPress'\">\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 </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 \n <div>\n <mat-slide-toggle \n class=\"spread\" \n formControlName=\"includeRequest\">\n Include Path and Query?\n </mat-slide-toggle>\n\n <mat-icon\n class=\"spread\"\n matSuffix\n matTooltip=\"Should the redirect include the path and query?\"\n >\n info_outline\n </mat-icon>\n </div>\n </div>\n </div>\n </mat-card-content>\n <mat-card-actions fxLayoutAlign=\"center center\">\n\n <button \n mat-raised-button \n type=\"submit\" \n fxFlex=\"100%\" \n color=\"primary\" \n [disabled]=\"!ProcessorDetailsFormGroup.valid || !ProcessorDetailsFormGroup.dirty\">\n <mat-icon>save</mat-icon>\n Save Processor Details\n </button>\n\n </mat-card-actions>\n</mat-card>\n</form>\n \n",
4193
4197
  styles: [""]
4194
4198
  },] }
4195
4199
  ];
@@ -4271,12 +4275,6 @@ class BuildPipelineFormComponent {
4271
4275
  this.appsFlowSvc = appsFlowSvc;
4272
4276
  this.HostingDetails = new ProjectHostingDetails();
4273
4277
  }
4274
- // @Input('main-branch')
4275
- // public MainBranch: string;
4276
- // @Input('organization')
4277
- // public Organization: string;
4278
- // @Input('repository')
4279
- // public Repository: string;
4280
4278
  get Artifact() {
4281
4279
  var _a, _b;
4282
4280
  // console.log("ARTIFACT: ", this.Environment?.Artifacts[this.ArtifactLookup]);
@@ -4291,7 +4289,7 @@ class BuildPipelineFormComponent {
4291
4289
  }
4292
4290
  get BuildPipelineFormControl() {
4293
4291
  var _a;
4294
- return (_a = this.BuildPipelineFormGroup) === null || _a === void 0 ? void 0 : _a.controls.buildPipeline;
4292
+ return (_a = this.BuildPipelineFormGroup) === null || _a === void 0 ? void 0 : _a.get('buildPipeline');
4295
4293
  }
4296
4294
  get DevOpsAction() {
4297
4295
  return this.Environment.DevOpsActions && this.DevOpsActionLookup
@@ -4327,24 +4325,30 @@ class BuildPipelineFormComponent {
4327
4325
  return this.Environment.Sources || {};
4328
4326
  }
4329
4327
  ngOnInit() {
4330
- this.BuildPipelineFormGroup = this.formBuilder.group({});
4331
- if (this.BuildPipelineFormGroup != null) {
4332
- this.BuildPipelineFormGroup.removeControl('hostingDetails');
4333
- }
4334
- this.BuildPipelineFormGroup.addControl('hostingDetails', this.formBuilder.group({
4328
+ // console.log('BuildPipeline = ', this.BuildPipeline)
4329
+ // this.BuildPipelineFormGroup = this.formBuilder.group({});
4330
+ // if (this.BuildPipelineFormGroup != null) {
4331
+ // this.BuildPipelineFormGroup.removeControl('hostingDetails');
4332
+ // }
4333
+ // this.BuildPipelineFormGroup.addControl(
4334
+ // 'hostingDetails',
4335
+ this.BuildPipelineFormGroup = this.formBuilder.group({
4335
4336
  buildPipeline: [this.BuildPipeline, [Validators.required]],
4336
- }));
4337
+ });
4338
+ // );
4337
4339
  this.loadProjectHostingDetails();
4340
+ // this.setupControlsForForm();
4338
4341
  }
4339
4342
  //API METHODS
4340
4343
  BuildPipelineChanged() {
4341
- var _a, _b;
4342
- console.log("build pipeline value: ", (_a = this.BuildPipelineFormControl) === null || _a === void 0 ? void 0 : _a.value);
4343
- this.BuildPipeline = (_b = this.BuildPipelineFormControl) === null || _b === void 0 ? void 0 : _b.value;
4344
+ var _a;
4345
+ //for some reason this value is coming back undefined
4346
+ // console.log("build pipeline value: ", this.BuildPipelineFormControl?.value)
4347
+ this.BuildPipeline = (_a = this.BuildPipelineFormControl) === null || _a === void 0 ? void 0 : _a.value;
4344
4348
  this.setupControlsForForm();
4345
4349
  }
4346
4350
  SubmitBuildPipeline() {
4347
- console.log("submitting build pipeline: ", this.BuildPipelineFormGroup.value);
4351
+ // console.log("submitting build pipeline: ", this.BuildPipelineFormGroup.value);
4348
4352
  this.SaveEnvironment();
4349
4353
  }
4350
4354
  SaveEnvironment() {
@@ -4390,36 +4394,26 @@ class BuildPipelineFormComponent {
4390
4394
  const doa = Object.assign(Object.assign({}, this.DevOpsAction), { Name: this.DevOpsActionNameFormControl.value });
4391
4395
  saveEnvReq.Environment.DevOpsActions[devOpsActionLookup] = doa;
4392
4396
  }
4393
- // let source: EaCSourceControl = {
4394
- // ...this.EditingSourceControl,
4395
- // Branches: this.EditingSourceControl.SelectedBranches,
4396
- // MainBranch: this.EditingSourceControl.MainBranchFormControl.value,
4397
- // };
4398
- // source = {
4399
- // ...source,
4400
- // Type: 'GitHub',
4401
- // Name: this.EditingSourceControlLookup,
4402
- // DevOpsActionTriggerLookups: [devOpsActionLookup],
4403
- // Organization:
4404
- // this.EditingSourceControl.OrganizationFormControl.value,
4405
- // Repository: this.EditingSourceControl.RepositoryFormControl.value,
4406
- // };
4407
- // const scLookup = `github://${source.Organization}/${source.Repository}`;
4408
- // saveEnvReq.Environment.Sources[scLookup] = source;
4409
4397
  this.eacSvc.SaveEnvironmentAsCode(saveEnvReq);
4410
4398
  }
4411
4399
  // Helpers
4412
4400
  setupControlsForForm() {
4401
+ // this.BuildPipeline =
4402
+ // this.BuildPipeline || this.HostingDetails?.HostingOptions
4403
+ // ? this.HostingDetails?.HostingOptions[0]?.Lookup
4404
+ // : '';
4413
4405
  var _a, _b, _c, _d, _e, _f;
4406
+ // console.log("hosting details: ", this.HostingDetails)
4414
4407
  for (const ctrlName in this.BuildPipelineFormGroup.controls) {
4415
4408
  //devOpsAction doesn't exist
4416
4409
  //removes hosting details
4417
4410
  if (ctrlName !== 'buildPipeline' && ctrlName !== 'devOpsAction') {
4418
- console.log("removing control: ", ctrlName);
4411
+ // console.log("removing control: ", ctrlName)
4419
4412
  this.BuildPipelineFormGroup.removeControl(ctrlName);
4420
4413
  }
4421
4414
  }
4422
4415
  this.BuildPipelineFormGroup.addControl('devOpsActionName', this.formBuilder.control(((_a = this.DevOpsAction) === null || _a === void 0 ? void 0 : _a.Name) || ((_b = this.SelectedHostingOption) === null || _b === void 0 ? void 0 : _b.Name) || '', [Validators.required]));
4416
+ // console.log("selected hosting options: ", this.SelectedHostingOption.Inputs);
4423
4417
  (_d = (_c = this.SelectedHostingOption) === null || _c === void 0 ? void 0 : _c.Inputs) === null || _d === void 0 ? void 0 : _d.forEach((input) => {
4424
4418
  const validators = input.Required ? [Validators.required] : [];
4425
4419
  this.BuildPipelineFormGroup.addControl(input.Lookup, this.formBuilder.control(this.Artifact[input.Lookup] || input.DefaultValue || '', validators));
@@ -4443,22 +4437,16 @@ class BuildPipelineFormComponent {
4443
4437
  }
4444
4438
  loadProjectHostingDetails() {
4445
4439
  this.HostingDetails.Loading = true;
4446
- // this.Organization,
4447
- // this.Repository,
4448
- // this.MainBranch
4449
- // "powhound4",
4450
- // "RedwoodCrystals",
4451
- // "master"
4452
4440
  this.appsFlowSvc
4453
4441
  .NewLoadProjectHostingDetails()
4454
4442
  .subscribe((response) => {
4455
- var _a, _b, _c;
4443
+ var _a, _b;
4456
4444
  this.HostingDetails = response.Model;
4457
- console.log("response: ", response);
4445
+ // console.log("response: ", response);
4458
4446
  this.HostingDetails.Loading = false;
4459
- this.BuildPipeline =
4460
- ((_a = this.HostingDetails) === null || _a === void 0 ? void 0 : _a.HostingOptions) ? (_c = (_b = this.HostingDetails) === null || _b === void 0 ? void 0 : _b.HostingOptions[0]) === null || _c === void 0 ? void 0 : _c.Lookup : '';
4461
- console.log("Build Pipeline HERE= ", this.BuildPipeline);
4447
+ const hostOption = (_b = (_a = this.HostingDetails) === null || _a === void 0 ? void 0 : _a.HostingOptions) === null || _b === void 0 ? void 0 : _b.find((ho) => ho.Path === this.DevOpsAction.Path);
4448
+ this.BuildPipeline = hostOption.Lookup;
4449
+ // console.log("Build Pipeline HERE= ", this.BuildPipeline);
4462
4450
  this.setupControlsForForm();
4463
4451
  }, (err) => {
4464
4452
  console.log("ERR: ", err);
@@ -4470,7 +4458,7 @@ class BuildPipelineFormComponent {
4470
4458
  BuildPipelineFormComponent.decorators = [
4471
4459
  { type: Component, args: [{
4472
4460
  selector: 'lcu-build-pipeline-form',
4473
- template: "<form class=\"form-card\" [formGroup]=\"BuildPipelineFormGroup\" (ngSubmit)=\"SubmitBuildPipeline()\">\n <mat-card\n class=\"spread\" \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\n <div *ngIf=\"!HostingDetails?.Loading\">\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n formControlName=\"buildPipeline\"\n placeholder=\"Build Pipeline\"\n [disabled]=\"Disabled\"\n (selectionChange)=\"BuildPipelineChanged()\"\n required\n >\n <ng-container\n *ngFor=\"let hostOption of HostingDetails?.HostingOptions; let i = index\"\n >\n <mat-option [value]=\"hostOption?.Lookup\">\n {{ hostOption.Name }}\n </mat-option>\n </ng-container>\n </mat-select>\n \n <mat-hint>\n <ng-container *ngFor=\"let hostOption of HostingDetails?.HostingOptions\">\n <span *ngIf=\"BuildPipeline == hostOption?.Lookup\">\n {{ hostOption.Description }}\n </span>\n </ng-container>\n </mat-hint>\n </mat-form-field>\n \n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"devOpsActionName\"\n placeholder=\"Name of DevOps Action\"\n required=\"true\"\n />\n </mat-form-field>\n \n <ng-container *ngFor=\"let input of SelectedHostingOption?.Inputs\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n [formControlName]=\"input.Lookup\"\n [placeholder]=\"input.Placeholder\"\n [required]=\"input.Required\"\n />\n \n <mat-hint>{{ input.Hint }}</mat-hint>\n </mat-form-field>\n </ng-container>\n \n <div *ngIf=\"BuildPipeline == 'npm-release'\">\n <mat-form-field class=\"mat-full-width with-hint padding-bottom-4\">\n <mat-icon matPrefix>security</mat-icon>\n \n <input\n id=\"npm-token\"\n matInput\n type=\"text\"\n formControlName=\"npmToken\"\n placeholder=\"NPM token\"\n [required]=\"!Disabled\"\n style=\"-webkit-text-security: disc;\"\n />\n <mat-hint>\n Securely publish to NPM, provide an NPM Personal Access Token (PAT) with publish access to the organization used for your NPM packages. \n Learn how to create and view access tokens \n <a\n href=\"https://docs.npmjs.com/creating-and-viewing-access-tokens\"\n target=\"_blank\"\n >\n here.\n </a>\n </mat-hint>\n </mat-form-field>\n </div>\n </div>\n \n <div *ngIf=\"HostingDetails?.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\">Loading hosting details</h4>\n </div>\n </div>\n </div>\n </ng-container>\n </mat-card-content>\n <mat-card-actions fxLayoutAlign=\"center center\">\n\n <button \n mat-raised-button \n type=\"submit\" \n fxFlex=\"100%\" \n color=\"primary\" \n [disabled]=\"!BuildPipelineFormGroup.valid || !BuildPipelineFormGroup.dirty\">\n <mat-icon>save</mat-icon>\n Save Build Pipeline\n </button>\n \n </mat-card-actions>\n </mat-card>\n</form>\n",
4461
+ template: "<form class=\"form-card\" [formGroup]=\"BuildPipelineFormGroup\" (ngSubmit)=\"SubmitBuildPipeline()\">\n <mat-card\n class=\"spread\" \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\n <div *ngIf=\"!HostingDetails?.Loading\">\n <mat-form-field class=\"mat-full-width\">\n <mat-select\n formControlName=\"buildPipeline\"\n placeholder=\"Build Pipeline\"\n [disabled]=\"Disabled\"\n (selectionChange)=\"BuildPipelineChanged()\"\n required\n >\n <ng-container\n *ngFor=\"let hostOption of HostingDetails?.HostingOptions; let i = index\"\n >\n <mat-option [value]=\"hostOption.Lookup\">\n {{ hostOption.Name }}\n </mat-option>\n </ng-container>\n </mat-select>\n \n <mat-hint>\n <ng-container *ngFor=\"let hostOption of HostingDetails?.HostingOptions\">\n <span *ngIf=\"BuildPipeline == hostOption?.Lookup\">\n {{ hostOption.Description }}\n </span>\n </ng-container>\n </mat-hint>\n </mat-form-field>\n \n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n formControlName=\"devOpsActionName\"\n placeholder=\"Name of DevOps Action\"\n required=\"true\"\n />\n </mat-form-field>\n \n <ng-container *ngFor=\"let input of SelectedHostingOption?.Inputs\">\n <mat-form-field class=\"mat-full-width\">\n <input\n matInput\n [formControlName]=\"input.Lookup\"\n [placeholder]=\"input.Placeholder\"\n [required]=\"input.Required\"\n />\n \n <mat-hint>{{ input.Hint }}</mat-hint>\n </mat-form-field>\n </ng-container>\n \n <div *ngIf=\"BuildPipeline == 'npm-release'\">\n <mat-form-field class=\"mat-full-width with-hint padding-bottom-4\">\n <mat-icon matPrefix>security</mat-icon>\n \n <input\n id=\"npm-token\"\n matInput\n type=\"text\"\n formControlName=\"npmToken\"\n placeholder=\"NPM token\"\n [required]=\"!Disabled\"\n style=\"-webkit-text-security: disc;\"\n />\n <mat-hint>\n Securely publish to NPM, provide an NPM Personal Access Token (PAT) with publish access to the organization used for your NPM packages. \n Learn how to create and view access tokens \n <a\n href=\"https://docs.npmjs.com/creating-and-viewing-access-tokens\"\n target=\"_blank\"\n >\n here.\n </a>\n </mat-hint>\n </mat-form-field>\n </div>\n </div>\n \n <div *ngIf=\"HostingDetails?.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\">Loading hosting details</h4>\n </div>\n </div>\n </div>\n </mat-card-content>\n <mat-card-actions fxLayoutAlign=\"center center\">\n\n <button \n mat-raised-button \n type=\"submit\" \n fxFlex=\"100%\" \n color=\"primary\" \n [disabled]=\"!BuildPipelineFormGroup.valid || !BuildPipelineFormGroup.dirty\">\n <mat-icon>save</mat-icon>\n Save Build Pipeline\n </button>\n \n </mat-card-actions>\n </mat-card>\n</form>\n",
4474
4462
  styles: [""]
4475
4463
  },] }
4476
4464
  ];
@@ -4480,11 +4468,11 @@ BuildPipelineFormComponent.ctorParameters = () => [
4480
4468
  { type: ApplicationsFlowService }
4481
4469
  ];
4482
4470
  BuildPipelineFormComponent.propDecorators = {
4483
- BuildPipeline: [{ type: Input, args: ['build-pipeline',] }],
4484
4471
  DevOpsActionLookup: [{ type: Input, args: ['devops-action-lookup',] }],
4485
4472
  Disabled: [{ type: Input, args: ['disabled',] }],
4486
4473
  Environment: [{ type: Input, args: ['environment',] }],
4487
- EnvironmentLookup: [{ type: Input, args: ['environment-lookup',] }]
4474
+ EnvironmentLookup: [{ type: Input, args: ['environment-lookup',] }],
4475
+ HostingDetails: [{ type: Input, args: ['hosting-details',] }]
4488
4476
  };
4489
4477
 
4490
4478
  class DevopsSourceControlFormComponent {
@@ -4929,7 +4917,7 @@ class BuildPipelineDialogComponent {
4929
4917
  BuildPipelineDialogComponent.decorators = [
4930
4918
  { type: Component, args: [{
4931
4919
  selector: 'lcu-build-pipeline-dialog',
4932
- template: "<div class=\"dialog-header\" fxLayoutAlign=\"end center\">\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<lcu-build-pipeline-form \n [build-pipeline]=\"data.buildPipeline\" \n [devops-action-lookup]=\"data.devopsActionLookup\"\n [environment]=\"data.environment\" \n [environment-lookup]=\"data.environmentLookup\">\n\n</lcu-build-pipeline-form>",
4920
+ template: "<div class=\"dialog-header\" fxLayoutAlign=\"end center\">\n <button mat-icon-button (click)=\"CloseDialog()\">\n <mat-icon>cancel</mat-icon>\n </button>\n</div>\n\n<lcu-build-pipeline-form \n [devops-action-lookup]=\"data.devopsActionLookup\"\n [environment]=\"data.environment\" \n [environment-lookup]=\"data.environmentLookup\"\n >\n\n</lcu-build-pipeline-form>",
4933
4921
  styles: [".dialog-header{width:100%}"]
4934
4922
  },] }
4935
4923
  ];
@@ -4996,6 +4984,118 @@ EditApplicationFormComponent.propDecorators = {
4996
4984
  SaveFormEvent: [{ type: Output, args: ['save-form-event',] }]
4997
4985
  };
4998
4986
 
4987
+ class BreadcrumbComponent {
4988
+ constructor(eacSvc) {
4989
+ this.eacSvc = eacSvc;
4990
+ }
4991
+ get ApplicationsBank() {
4992
+ var _a, _b;
4993
+ return ((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Applications) || {};
4994
+ }
4995
+ get Applications() {
4996
+ var _a;
4997
+ const apps = {};
4998
+ (_a = this.SelectedProject) === null || _a === void 0 ? void 0 : _a.ApplicationLookups.forEach((appLookup) => {
4999
+ apps[appLookup] = this.ApplicationsBank[appLookup];
5000
+ });
5001
+ return apps;
5002
+ }
5003
+ get SelectedApplication() {
5004
+ var _a, _b;
5005
+ return ((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Applications[this.ApplicationLookup]) || {};
5006
+ }
5007
+ get CurrentRouteApplicationLookups() {
5008
+ return Object.keys(this.RoutedApplications[this.SelectedRoute] || {});
5009
+ }
5010
+ get Projects() {
5011
+ var _a, _b;
5012
+ return ((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects) || {};
5013
+ }
5014
+ get ProjectLookups() {
5015
+ var _a, _b;
5016
+ return Object.keys(((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects) || {});
5017
+ }
5018
+ get Routes() {
5019
+ return Object.keys(this.RoutedApplications || {});
5020
+ }
5021
+ get RoutedApplications() {
5022
+ const appLookups = Object.keys(this.Applications);
5023
+ const apps = appLookups.map((appLookup) => this.Applications[appLookup]);
5024
+ let appRoutes = apps.map((app) => {
5025
+ var _a;
5026
+ return (_a = app.LookupConfig) === null || _a === void 0 ? void 0 : _a.PathRegex.replace('.*', '');
5027
+ }) || [];
5028
+ appRoutes = appRoutes.filter((ar) => ar != null);
5029
+ let routeBases = [];
5030
+ appRoutes.forEach((appRoute) => {
5031
+ const appRouteParts = appRoute.split('/');
5032
+ const appRouteBase = `/${appRouteParts[1]}`;
5033
+ if (routeBases.indexOf(appRouteBase) < 0) {
5034
+ routeBases.push(appRouteBase);
5035
+ }
5036
+ });
5037
+ let workingAppLookups = [...(appLookups || [])];
5038
+ routeBases = routeBases.sort((a, b) => b.localeCompare(a));
5039
+ const routeSet = routeBases.reduce((prevRouteMap, currentRouteBase) => {
5040
+ const routeMap = Object.assign({}, prevRouteMap);
5041
+ const filteredAppLookups = workingAppLookups.filter((wal) => {
5042
+ var _a;
5043
+ const wa = this.Applications[wal];
5044
+ return (_a = wa.LookupConfig) === null || _a === void 0 ? void 0 : _a.PathRegex.startsWith(currentRouteBase);
5045
+ });
5046
+ routeMap[currentRouteBase] =
5047
+ filteredAppLookups.reduce((prevAppMap, appLookup) => {
5048
+ const appMap = Object.assign({}, prevAppMap);
5049
+ appMap[appLookup] = this.Applications[appLookup];
5050
+ return appMap;
5051
+ }, {}) || {};
5052
+ workingAppLookups = workingAppLookups.filter((wa) => {
5053
+ return filteredAppLookups.indexOf(wa) < 0;
5054
+ });
5055
+ return routeMap;
5056
+ }, {}) || {};
5057
+ let routeSetKeys = Object.keys(routeSet);
5058
+ routeSetKeys = routeSetKeys.sort((a, b) => a.localeCompare(b));
5059
+ const routeSetResult = {};
5060
+ routeSetKeys.forEach((rsk) => (routeSetResult[rsk] = routeSet[rsk]));
5061
+ return routeSetResult;
5062
+ }
5063
+ get SelectedProject() {
5064
+ var _a, _b;
5065
+ return ((_b = (_a = this.State) === null || _a === void 0 ? void 0 : _a.EaC) === null || _b === void 0 ? void 0 : _b.Projects[this.ProjectLookup]) || {};
5066
+ }
5067
+ get State() {
5068
+ return this.eacSvc.State;
5069
+ }
5070
+ ngOnInit() {
5071
+ this.handleStateChange().then((eac) => { });
5072
+ console.log("Selected project: ", this.SelectedProject.Project);
5073
+ console.log("SelectedRoute:", this.SelectedRoute);
5074
+ }
5075
+ handleStateChange() {
5076
+ return __awaiter(this, void 0, void 0, function* () {
5077
+ this.State.Loading = true;
5078
+ yield this.eacSvc.EnsureUserEnterprise();
5079
+ });
5080
+ }
5081
+ }
5082
+ BreadcrumbComponent.decorators = [
5083
+ { type: Component, args: [{
5084
+ selector: 'lcu-breadcrumb',
5085
+ template: "<div class=\"breadcrumb-container\" fxLayout=\"row\">\n\n <div *ngIf=\"Enterprise\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <div class=\"crumb-name\" [routerLink]=\"['/enterprises']\">{{Enterprise.Name}}</div>\n\n <button mat-icon-button [matMenuTriggerFor]=\"enterpriseMenu\">\n <mat-icon>expand_more</mat-icon>\n </button>\n\n <mat-menu #enterpriseMenu=\"matMenu\" xPosition=\"before\">\n <button mat-menu-item [routerLink]=\"['/enterprises']\">\n <span>{{Enterprise.Name}}</span>\n </button>\n </mat-menu>\n\n </div>\n\n <div *ngIf=\"ProjectLookup && SelectedProject\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n\n <span class=\"seperator\">/</span>\n\n <div class=\"crumb-name\" [routerLink]=\"['/projects', projectLookup]\">{{SelectedProject.Project.Name}}</div>\n\n <button mat-icon-button [matMenuTriggerFor]=\"projectMenu\">\n <mat-icon>expand_more</mat-icon>\n </button>\n\n \n \n <mat-menu #projectMenu=\"matMenu\" xPosition=\"before\">\n <button mat-menu-item *ngFor=\"let projectLookup of ProjectLookups\" [routerLink]=\"['/projects', projectLookup]\">\n <span *ngIf=\"Projects[projectLookup]; let pro;\">{{pro.Project.Name}}</span>\n </button>\n </mat-menu>\n\n </div>\n\n <div *ngIf=\"SelectedRoute\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <span class=\"seperator\">/</span>\n\n <div class=\"crumb-name\" [routerLink]=\"['/routes', SelectedRoute, ProjectLookup]\">{{SelectedRoute}}</div>\n\n <button mat-icon-button [matMenuTriggerFor]=\"routeMenu\">\n <mat-icon>expand_more</mat-icon>\n </button>\n \n \n <mat-menu #routeMenu=\"matMenu\" xPosition=\"before\">\n <button mat-menu-item *ngFor=\"let appRoute of Routes\" [routerLink]=\"['/routes', appRoute, ProjectLookup]\">\n <span *ngIf=\"appRoute\">{{appRoute}}</span>\n </button>\n </mat-menu>\n\n </div>\n\n <div *ngIf=\"SelectedApplication && ApplicationLookup\" fxLayout=\"row\" fxLayoutAlign=\"center center\">\n\n <span class=\"seperator\">/</span>\n\n <div class=\"crumb-name\" \n [routerLink]=\"['/applications', ApplicationLookup, SelectedRoute, ProjectLookup]\">\n {{SelectedApplication.Application.Name}}</div>\n\n <button mat-icon-button [matMenuTriggerFor]=\"applicationMenu\">\n <mat-icon>expand_more</mat-icon>\n </button>\n \n <mat-menu #applicationMenu=\"matMenu\" xPosition=\"before\">\n <button mat-menu-item *ngFor=\"let appLookup of CurrentRouteApplicationLookups\"\n [routerLink]=\"['/applications', appLookup, SelectedRoute, ProjectLookup]\">\n <span *ngIf=\"RoutedApplications[SelectedRoute][appLookup];\n let app\">{{app.Application.Name}}</span>\n </button>\n </mat-menu>\n\n </div>\n\n\n</div>\n",
5086
+ styles: [".breadcrumb-container{background-color:#ebecf0;margin:10px 30px}.seperator{font-size:25px;padding:10px}.crumb-name{cursor:pointer}"]
5087
+ },] }
5088
+ ];
5089
+ BreadcrumbComponent.ctorParameters = () => [
5090
+ { type: EaCService }
5091
+ ];
5092
+ BreadcrumbComponent.propDecorators = {
5093
+ Enterprise: [{ type: Input, args: ['enterprise',] }],
5094
+ ApplicationLookup: [{ type: Input, args: ['application-lookup',] }],
5095
+ ProjectLookup: [{ type: Input, args: ['project-lookup',] }],
5096
+ SelectedRoute: [{ type: Input, args: ['selected-route',] }]
5097
+ };
5098
+
4999
5099
  class ApplicationsFlowModule {
5000
5100
  static forRoot() {
5001
5101
  return {
@@ -5053,7 +5153,8 @@ ApplicationsFlowModule.decorators = [
5053
5153
  DevopsSourceControlFormComponent,
5054
5154
  SourceControlDialogComponent,
5055
5155
  BuildPipelineDialogComponent,
5056
- EditApplicationFormComponent
5156
+ EditApplicationFormComponent,
5157
+ BreadcrumbComponent
5057
5158
  ],
5058
5159
  imports: [
5059
5160
  FathymSharedModule,
@@ -5106,7 +5207,8 @@ ApplicationsFlowModule.decorators = [
5106
5207
  DevopsSourceControlFormComponent,
5107
5208
  SourceControlDialogComponent,
5108
5209
  BuildPipelineDialogComponent,
5109
- EditApplicationFormComponent
5210
+ EditApplicationFormComponent,
5211
+ BreadcrumbComponent
5110
5212
  ],
5111
5213
  entryComponents: [
5112
5214
  ApplicationsFlowProjectsElementComponent,
@@ -5146,7 +5248,8 @@ ApplicationsFlowModule.decorators = [
5146
5248
  DevopsSourceControlFormComponent,
5147
5249
  SourceControlDialogComponent,
5148
5250
  BuildPipelineDialogComponent,
5149
- EditApplicationFormComponent
5251
+ EditApplicationFormComponent,
5252
+ BreadcrumbComponent
5150
5253
  ],
5151
5254
  },] }
5152
5255
  ];
@@ -5179,5 +5282,5 @@ class FormModel {
5179
5282
  * Generated bundle index. Do not edit.
5180
5283
  */
5181
5284
 
5182
- 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, EditApplicationFormComponent as ɵbf, 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 };
5285
+ 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, EditApplicationFormComponent as ɵbf, BreadcrumbComponent as ɵbg, 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 };
5183
5286
  //# sourceMappingURL=lowcodeunit-applications-flow-common.js.map