@gravitee/ui-policy-studio-angular 7.12.0 → 7.13.0

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 (75) hide show
  1. package/esm2020/lib/components/flow-details/gio-ps-flow-details.component.mjs +4 -3
  2. package/esm2020/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.mjs +19 -19
  3. package/esm2020/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.mjs +77 -0
  4. package/esm2020/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component.mjs +11 -5
  5. package/esm2020/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.component.mjs +46 -0
  6. package/esm2020/lib/components/step-form/gio-ps-step-form.component.mjs +78 -0
  7. package/esm2020/lib/gio-policy-studio.component.mjs +44 -14
  8. package/esm2020/lib/gio-policy-studio.module.mjs +13 -11
  9. package/esm2020/lib/gio-policy-studio.service.mjs +66 -0
  10. package/esm2020/lib/models/PolicySchemaFetcher.mjs +2 -0
  11. package/esm2020/lib/models/index.mjs +2 -1
  12. package/esm2020/testing/lib/components/flow-details-phase/gio-ps-flow-details-phase.harness.mjs +53 -7
  13. package/esm2020/testing/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.harness.mjs +42 -0
  14. package/esm2020/testing/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness.mjs +55 -0
  15. package/esm2020/testing/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.harness.mjs +30 -0
  16. package/esm2020/testing/lib/components/step-form/gio-ps-step-form.harness.mjs +37 -0
  17. package/esm2020/testing/lib/gio-policy-studio.harness.mjs +8 -8
  18. package/esm2020/testing/lib/models/PolicySchemaFetcher.mjs +2 -0
  19. package/esm2020/testing/lib/models/flow/Step.fixture.mjs +10 -9
  20. package/esm2020/testing/lib/models/index.mjs +2 -1
  21. package/fesm2015/gravitee-ui-policy-studio-angular-testing.mjs +171 -27
  22. package/fesm2015/gravitee-ui-policy-studio-angular-testing.mjs.map +1 -1
  23. package/fesm2015/gravitee-ui-policy-studio-angular.mjs +214 -555
  24. package/fesm2015/gravitee-ui-policy-studio-angular.mjs.map +1 -1
  25. package/fesm2020/gravitee-ui-policy-studio-angular-testing.mjs +185 -25
  26. package/fesm2020/gravitee-ui-policy-studio-angular-testing.mjs.map +1 -1
  27. package/fesm2020/gravitee-ui-policy-studio-angular.mjs +220 -611
  28. package/fesm2020/gravitee-ui-policy-studio-angular.mjs.map +1 -1
  29. package/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.d.ts +4 -2
  30. package/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.d.ts +18 -0
  31. package/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component.d.ts +4 -2
  32. package/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.component.d.ts +18 -0
  33. package/lib/components/step-form/gio-ps-step-form.component.d.ts +23 -0
  34. package/lib/gio-policy-studio.component.d.ts +30 -2
  35. package/lib/gio-policy-studio.module.d.ts +4 -4
  36. package/lib/gio-policy-studio.service.d.ts +26 -0
  37. package/lib/models/PolicySchemaFetcher.d.ts +4 -0
  38. package/lib/models/index.d.ts +1 -0
  39. package/package.json +1 -1
  40. package/testing/lib/components/flow-details-phase/gio-ps-flow-details-phase.harness.d.ts +29 -4
  41. package/testing/lib/components/{flow-details-phase-policy/gio-ps-flow-details-phase-policy.harness.d.ts → flow-details-phase-step/gio-ps-flow-details-phase-step.harness.d.ts} +4 -3
  42. package/testing/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness.d.ts +12 -0
  43. package/testing/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.harness.d.ts +8 -0
  44. package/testing/lib/components/step-form/gio-ps-step-form.harness.d.ts +11 -0
  45. package/testing/lib/gio-policy-studio.harness.d.ts +4 -7
  46. package/testing/lib/models/PolicySchemaFetcher.d.ts +4 -0
  47. package/testing/lib/models/flow/Step.fixture.d.ts +2 -2
  48. package/testing/lib/models/index.d.ts +1 -0
  49. package/esm2020/lib/components/flow-details-phase-policy/gio-ps-flow-details-phase-policy.component.mjs +0 -58
  50. package/esm2020/lib/components/policy-form/gio-ps-policy-form.component.mjs +0 -30
  51. package/esm2020/lib/components/policy-form-dialog/gio-ps-policy-form-dialog.component.mjs +0 -43
  52. package/esm2020/lib/models/ConnectorsInfo.fixture.mjs +0 -152
  53. package/esm2020/lib/models/flow/Flow.fixture.mjs +0 -66
  54. package/esm2020/lib/models/flow/FlowExecution.fixture.mjs +0 -43
  55. package/esm2020/lib/models/flow/Step.fixture.mjs +0 -70
  56. package/esm2020/lib/models/flow/index-testing.mjs +0 -19
  57. package/esm2020/lib/models/index-testing.mjs +0 -20
  58. package/esm2020/lib/models/plan/Plan.fixture.mjs +0 -31
  59. package/esm2020/lib/models/plan/index-testing.mjs +0 -17
  60. package/esm2020/lib/models/policy/Policy.fixture.mjs +0 -133
  61. package/esm2020/lib/models/policy/index-testing.mjs +0 -17
  62. package/esm2020/testing/lib/components/flow-details-phase-policy/gio-ps-flow-details-phase-policy.harness.mjs +0 -38
  63. package/lib/components/flow-details-phase-policy/gio-ps-flow-details-phase-policy.component.d.ts +0 -13
  64. package/lib/components/policy-form/gio-ps-policy-form.component.d.ts +0 -8
  65. package/lib/components/policy-form-dialog/gio-ps-policy-form-dialog.component.d.ts +0 -17
  66. package/lib/models/ConnectorsInfo.fixture.d.ts +0 -10
  67. package/lib/models/flow/Flow.fixture.d.ts +0 -3
  68. package/lib/models/flow/FlowExecution.fixture.d.ts +0 -3
  69. package/lib/models/flow/Step.fixture.d.ts +0 -4
  70. package/lib/models/flow/index-testing.d.ts +0 -3
  71. package/lib/models/index-testing.d.ts +0 -4
  72. package/lib/models/plan/Plan.fixture.d.ts +0 -2
  73. package/lib/models/plan/index-testing.d.ts +0 -1
  74. package/lib/models/policy/Policy.fixture.d.ts +0 -4
  75. package/lib/models/policy/index-testing.d.ts +0 -1
@@ -9,12 +9,13 @@ declare type StepVM = {
9
9
  icon?: string;
10
10
  }[];
11
11
  } | {
12
- type: 'policy';
12
+ type: 'step';
13
13
  step: Step;
14
+ index: number;
14
15
  };
15
16
  export declare class GioPolicyStudioDetailsPhaseComponent implements OnChanges {
16
17
  private readonly matDialog;
17
- steps?: Step[];
18
+ steps: Step[];
18
19
  name: string;
19
20
  description: string;
20
21
  startConnector: ConnectorInfo[];
@@ -28,6 +29,7 @@ export declare class GioPolicyStudioDetailsPhaseComponent implements OnChanges {
28
29
  constructor(matDialog: MatDialog);
29
30
  ngOnChanges(changes: SimpleChanges): void;
30
31
  onAddPolicy(index: number): void;
32
+ onStepChange(index: number, stepToEdit: Step): void;
31
33
  static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioDetailsPhaseComponent, never>;
32
34
  static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioDetailsPhaseComponent, "gio-ps-flow-details-phase", never, { "steps": "steps"; "name": "name"; "description": "description"; "startConnector": "startConnector"; "endConnector": "endConnector"; "apiType": "apiType"; "policies": "policies"; "policyExecutionPhase": "policyExecutionPhase"; }, { "stepsChange": "stepsChange"; }, never, never>;
33
35
  }
@@ -0,0 +1,18 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
+ import { MatDialog } from '@angular/material/dialog';
3
+ import { Policy, Step } from '../../models';
4
+ import * as i0 from "@angular/core";
5
+ export declare class GioPolicyStudioDetailsPhaseStepComponent implements OnChanges {
6
+ private readonly matDialog;
7
+ step: Step;
8
+ policies: Policy[];
9
+ stepChange: EventEmitter<Step>;
10
+ policy?: Policy;
11
+ constructor(matDialog: MatDialog);
12
+ ngOnChanges(changes: SimpleChanges): void;
13
+ onEdit(): void;
14
+ onDisable(): void;
15
+ onDelete(): void;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioDetailsPhaseStepComponent, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioDetailsPhaseStepComponent, "gio-ps-flow-details-phase-step", never, { "step": "step"; "policies": "policies"; }, { "stepChange": "stepChange"; }, never, never>;
18
+ }
@@ -1,17 +1,19 @@
1
1
  import { MatDialogRef } from '@angular/material/dialog';
2
- import { ApiType, ExecutionPhase, Policy } from '../../models';
2
+ import { ApiType, ExecutionPhase, Policy, Step } from '../../models';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare type GioPolicyStudioPoliciesCatalogDialogData = {
5
5
  policies: Policy[];
6
6
  executionPhase: ExecutionPhase;
7
7
  apiType: ApiType;
8
8
  };
9
- export declare type GioPolicyStudioPoliciesCatalogDialogResult = undefined | Policy;
9
+ export declare type GioPolicyStudioPoliciesCatalogDialogResult = undefined | Step;
10
10
  export declare class GioPolicyStudioPoliciesCatalogDialogComponent {
11
11
  dialogRef: MatDialogRef<GioPolicyStudioPoliciesCatalogDialogComponent, GioPolicyStudioPoliciesCatalogDialogResult>;
12
12
  policies: Policy[];
13
13
  executionPhaseLabel: string;
14
14
  selectedPolicy?: Policy;
15
+ stepToAdd?: Step;
16
+ isValid: boolean;
15
17
  constructor(dialogRef: MatDialogRef<GioPolicyStudioPoliciesCatalogDialogComponent, GioPolicyStudioPoliciesCatalogDialogResult>, flowDialogData: GioPolicyStudioPoliciesCatalogDialogData);
16
18
  onSelectPolicy(policy: Policy): void;
17
19
  onAddPolicy(): void;
@@ -0,0 +1,18 @@
1
+ import { MatDialogRef } from '@angular/material/dialog';
2
+ import { Policy, Step } from '../../models';
3
+ import * as i0 from "@angular/core";
4
+ export declare type GioPolicyStudioStepEditDialogData = {
5
+ policy: Policy;
6
+ step: Step;
7
+ };
8
+ export declare type GioPolicyStudioStepEditDialogResult = undefined | Step;
9
+ export declare class GioPolicyStudioStepEditDialogComponent {
10
+ dialogRef: MatDialogRef<GioPolicyStudioStepEditDialogComponent, GioPolicyStudioStepEditDialogResult>;
11
+ policy: Policy;
12
+ step: Step;
13
+ isValid: boolean;
14
+ constructor(dialogRef: MatDialogRef<GioPolicyStudioStepEditDialogComponent, GioPolicyStudioStepEditDialogResult>, flowDialogData: GioPolicyStudioStepEditDialogData);
15
+ onSave(): void;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioStepEditDialogComponent, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioStepEditDialogComponent, "gio-ps-step-edit-dialog", never, {}, {}, never, never>;
18
+ }
@@ -0,0 +1,23 @@
1
+ import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
2
+ import { FormGroup } from '@angular/forms';
3
+ import { GioPolicyStudioService } from '../../gio-policy-studio.service';
4
+ import { Policy, Step } from '../../models';
5
+ import * as i0 from "@angular/core";
6
+ export declare class GioPolicyStudioStepFormComponent implements OnChanges, OnInit, OnDestroy {
7
+ private readonly policyStudioService;
8
+ step?: Step;
9
+ policy: Policy;
10
+ stepChange: EventEmitter<Step>;
11
+ isValid: EventEmitter<boolean>;
12
+ policySchema$?: unknown;
13
+ policyDocumentation$?: unknown;
14
+ stepForm?: FormGroup;
15
+ private unsubscribe$;
16
+ constructor(policyStudioService: GioPolicyStudioService);
17
+ ngOnChanges(changes: SimpleChanges): void;
18
+ ngOnInit(): void;
19
+ ngOnDestroy(): void;
20
+ private initStepForm;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioStepFormComponent, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioStepFormComponent, "gio-ps-step-form", never, { "step": "step"; "policy": "policy"; }, { "stepChange": "stepChange"; "isValid": "isValid"; }, never, never>;
23
+ }
@@ -1,9 +1,17 @@
1
1
  import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
- import { ApiType, ConnectorInfo, Flow, FlowExecution, Plan, Policy, SaveOutput } from './models';
2
+ import { ApiType, ConnectorInfo, Flow, FlowExecution, Plan, Policy, PolicyDocumentationFetcher, PolicySchemaFetcher, SaveOutput } from './models';
3
3
  import { FlowGroupVM, FlowVM } from './gio-policy-studio.model';
4
+ import { GioPolicyStudioService } from './gio-policy-studio.service';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class GioPolicyStudioComponent implements OnChanges {
7
+ private readonly policyStudioService;
8
+ /**
9
+ * API type (required)
10
+ */
6
11
  apiType: ApiType;
12
+ /**
13
+ * Flow execution config (required)
14
+ */
7
15
  flowExecution: FlowExecution;
8
16
  /**
9
17
  * List of entrypoints to display
@@ -13,9 +21,28 @@ export declare class GioPolicyStudioComponent implements OnChanges {
13
21
  * List of endpoints to display
14
22
  */
15
23
  endpointsInfo: ConnectorInfo[];
24
+ /**
25
+ * List of common flows to add to common flows group
26
+ */
16
27
  commonFlows: Flow[];
28
+ /**
29
+ * List of plans with their flows
30
+ */
17
31
  plans: Plan[];
32
+ /**
33
+ * List of policies usable in the policy studio
34
+ */
18
35
  policies: Policy[];
36
+ /**
37
+ * Called when Policy Studio needs to fetch the policy schema
38
+ * @returns Observable of the policy schema
39
+ */
40
+ policySchemaFetcher: PolicySchemaFetcher;
41
+ /**
42
+ * Called when Policy Studio needs to fetch the policy documentation
43
+ * @returns Observable of the policy documentation
44
+ */
45
+ policyDocumentationFetcher: PolicyDocumentationFetcher;
19
46
  /**
20
47
  * Return what is needed to save.
21
48
  **/
@@ -26,6 +53,7 @@ export declare class GioPolicyStudioComponent implements OnChanges {
26
53
  disableSaveButton: boolean;
27
54
  private initialFlowsGroups;
28
55
  private hasFlowExecutionChanged;
56
+ constructor(policyStudioService: GioPolicyStudioService);
29
57
  ngOnChanges(changes: SimpleChanges): void;
30
58
  onFlowExecutionChange(flowExecution: FlowExecution): void;
31
59
  onFlowsGroupsChange(flowsGroups: FlowGroupVM[]): void;
@@ -33,5 +61,5 @@ export declare class GioPolicyStudioComponent implements OnChanges {
33
61
  onDeleteSelectedFlow(flow: FlowVM): void;
34
62
  onSave(): void;
35
63
  static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioComponent, "gio-policy-studio", never, { "apiType": "apiType"; "flowExecution": "flowExecution"; "entrypointsInfo": "entrypointsInfo"; "endpointsInfo": "endpointsInfo"; "commonFlows": "commonFlows"; "plans": "plans"; "policies": "policies"; }, { "save": "save"; }, never, never>;
64
+ static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioComponent, "gio-policy-studio", never, { "apiType": "apiType"; "flowExecution": "flowExecution"; "entrypointsInfo": "entrypointsInfo"; "endpointsInfo": "endpointsInfo"; "commonFlows": "commonFlows"; "plans": "plans"; "policies": "policies"; "policySchemaFetcher": "policySchemaFetcher"; "policyDocumentationFetcher": "policyDocumentationFetcher"; }, { "save": "save"; }, never, never>;
37
65
  }
@@ -7,11 +7,11 @@ import * as i5 from "./components/flow-form-dialog/flow-message-form-dialog/gio-
7
7
  import * as i6 from "./components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.component";
8
8
  import * as i7 from "./components/flow-details-info-bar/gio-ps-flow-details-info-bar.component";
9
9
  import * as i8 from "./components/flow-details-phase/gio-ps-flow-details-phase.component";
10
- import * as i9 from "./components/flow-details-phase-policy/gio-ps-flow-details-phase-policy.component";
10
+ import * as i9 from "./components/flow-details-phase-step/gio-ps-flow-details-phase-step.component";
11
11
  import * as i10 from "./components/filter-pipe/gio-flter-connectors-by-mode.pipe";
12
12
  import * as i11 from "./components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component";
13
- import * as i12 from "./components/policy-form-dialog/gio-ps-policy-form-dialog.component";
14
- import * as i13 from "./components/policy-form/gio-ps-policy-form.component";
13
+ import * as i12 from "./components/step-edit-dialog/gio-ps-step-edit-dialog.component";
14
+ import * as i13 from "./components/step-form/gio-ps-step-form.component";
15
15
  import * as i14 from "@angular/common";
16
16
  import * as i15 from "@angular/forms";
17
17
  import * as i16 from "@angular/material/button";
@@ -26,6 +26,6 @@ import * as i24 from "@angular/material/menu";
26
26
  import * as i25 from "@gravitee/ui-particles-angular";
27
27
  export declare class GioPolicyStudioModule {
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioModule, never>;
29
- static ɵmod: i0.ɵɵNgModuleDeclaration<GioPolicyStudioModule, [typeof i1.GioPolicyStudioComponent, typeof i2.GioPolicyStudioFlowsMenuComponent, typeof i3.GioPolicyStudioDetailsComponent, typeof i4.GioPolicyStudioFlowExecutionFormDialogComponent, typeof i5.GioPolicyStudioFlowMessageFormDialogComponent, typeof i6.GioPolicyStudioFlowProxyFormDialogComponent, typeof i7.GioPolicyStudioDetailsInfoBarComponent, typeof i8.GioPolicyStudioDetailsPhaseComponent, typeof i9.GioPolicyStudioDetailsPhasePolicyComponent, typeof i10.GioFilterConnectorsByModePipe, typeof i11.GioPolicyStudioPoliciesCatalogDialogComponent, typeof i12.GioPolicyStudioPolicyFormDialogComponent, typeof i13.GioPolicyStudioPolicyFormComponent], [typeof i14.CommonModule, typeof i15.ReactiveFormsModule, typeof i16.MatButtonModule, typeof i17.MatTooltipModule, typeof i18.MatFormFieldModule, typeof i19.MatInputModule, typeof i20.MatSelectModule, typeof i21.MatSlideToggleModule, typeof i22.MatDialogModule, typeof i23.MatTabsModule, typeof i24.MatMenuModule, typeof i25.GioIconsModule, typeof i25.GioFormSlideToggleModule, typeof i25.GioFormTagsInputModule, typeof i25.GioBannerModule], [typeof i1.GioPolicyStudioComponent]>;
29
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GioPolicyStudioModule, [typeof i1.GioPolicyStudioComponent, typeof i2.GioPolicyStudioFlowsMenuComponent, typeof i3.GioPolicyStudioDetailsComponent, typeof i4.GioPolicyStudioFlowExecutionFormDialogComponent, typeof i5.GioPolicyStudioFlowMessageFormDialogComponent, typeof i6.GioPolicyStudioFlowProxyFormDialogComponent, typeof i7.GioPolicyStudioDetailsInfoBarComponent, typeof i8.GioPolicyStudioDetailsPhaseComponent, typeof i9.GioPolicyStudioDetailsPhaseStepComponent, typeof i10.GioFilterConnectorsByModePipe, typeof i11.GioPolicyStudioPoliciesCatalogDialogComponent, typeof i12.GioPolicyStudioStepEditDialogComponent, typeof i13.GioPolicyStudioStepFormComponent], [typeof i14.CommonModule, typeof i15.ReactiveFormsModule, typeof i16.MatButtonModule, typeof i17.MatTooltipModule, typeof i18.MatFormFieldModule, typeof i19.MatInputModule, typeof i20.MatSelectModule, typeof i21.MatSlideToggleModule, typeof i22.MatDialogModule, typeof i23.MatTabsModule, typeof i24.MatMenuModule, typeof i25.GioIconsModule, typeof i25.GioFormSlideToggleModule, typeof i25.GioFormTagsInputModule, typeof i25.GioBannerModule], [typeof i1.GioPolicyStudioComponent]>;
30
30
  static ɵinj: i0.ɵɵInjectorDeclaration<GioPolicyStudioModule>;
31
31
  }
@@ -0,0 +1,26 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Policy, PolicySchemaFetcher } from './models';
3
+ export declare class GioPolicyStudioService {
4
+ private schemasCache;
5
+ private documentationsCache;
6
+ private policySchemaFetcher?;
7
+ private policyDocumentationFetcher?;
8
+ setPolicySchemaFetcher(policySchemaFetcher: PolicySchemaFetcher): void;
9
+ setPolicyDocumentationFetcher(policyDocumentationFetcher: PolicySchemaFetcher): void;
10
+ /**
11
+ * Call the policy schema fetcher to get the schema for the given policy. If the
12
+ * schema has already been fetched, it will be returned from the cache.
13
+ *
14
+ * @param policy to get the schema for
15
+ * @returns the schema for the policy
16
+ */
17
+ getPolicySchema(policy: Policy): Observable<unknown>;
18
+ /**
19
+ * Call the policy documentation fetcher to get the documentation for the given policy. If the
20
+ * documentation has already been fetched, it will be returned from the cache.
21
+ *
22
+ * @param policy to get the documentation for
23
+ * @returns the documentation for the policy
24
+ */
25
+ getPolicyDocumentation(policy: Policy): Observable<unknown>;
26
+ }
@@ -0,0 +1,4 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Policy } from './policy/Policy';
3
+ export declare type PolicySchemaFetcher = (policy: Policy) => Observable<unknown>;
4
+ export declare type PolicyDocumentationFetcher = (policy: Policy) => Observable<unknown>;
@@ -3,3 +3,4 @@ export * from './plan';
3
3
  export * from './policy';
4
4
  export * from './ConnectorsInfo';
5
5
  export * from './SaveOutput';
6
+ export * from './PolicySchemaFetcher';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gravitee/ui-policy-studio-angular",
3
- "version": "7.12.0",
3
+ "version": "7.13.0",
4
4
  "description": "Gravitee.io - UI Policy Studio Angular",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,8 +1,17 @@
1
1
  import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
2
+ import { GioPolicyStudioDetailsPhaseStepHarness } from '../flow-details-phase-step/gio-ps-flow-details-phase-step.harness';
2
3
  export declare type PhaseType = 'REQUEST' | 'RESPONSE' | 'PUBLISH' | 'SUBSCRIBE';
3
4
  export declare type GioPolicyStudioDetailsPhaseHarnessFilters = BaseHarnessFilters & {
4
5
  type?: PhaseType;
5
6
  };
7
+ export declare type StepCard = {
8
+ name: string;
9
+ type: 'connector';
10
+ } | {
11
+ name: string;
12
+ description?: string;
13
+ type: 'step';
14
+ };
6
15
  export declare class GioPolicyStudioDetailsPhaseHarness extends ComponentHarness {
7
16
  static hostSelector: string;
8
17
  private getHeaderName;
@@ -13,8 +22,24 @@ export declare class GioPolicyStudioDetailsPhaseHarness extends ComponentHarness
13
22
  * @return a `HarnessPredicate` configured with the given options.
14
23
  */
15
24
  static with(options?: GioPolicyStudioDetailsPhaseHarnessFilters): HarnessPredicate<GioPolicyStudioDetailsPhaseHarness>;
16
- getSteps(): Promise<{
17
- text: string;
18
- type: 'connector' | 'policy';
19
- }[] | null>;
25
+ getSteps(): Promise<StepCard[] | 'DISABLED'>;
26
+ getStep(index: number): Promise<GioPolicyStudioDetailsPhaseStepHarness>;
27
+ clickAddStep(index: number): Promise<void>;
28
+ /**
29
+ * Add a step to a phase
30
+ * @param index Index where to add the step. (Add button index)
31
+ * @param stepConfig Step to add
32
+ */
33
+ addStep(index: number, stepConfig: {
34
+ policyName: string;
35
+ description?: string;
36
+ }): Promise<void>;
37
+ /**
38
+ * Edit a step configuration
39
+ * @param index Index of the policy step to edit
40
+ * @param stepConfig Step configuration
41
+ */
42
+ editStep(index: number, stepConfig: {
43
+ description?: string;
44
+ }): Promise<void>;
20
45
  }
@@ -1,6 +1,6 @@
1
1
  import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
2
- export declare type GioPolicyStudioDetailsPhasePolicyHarnessFilters = BaseHarnessFilters;
3
- export declare class GioPolicyStudioDetailsPhasePolicyHarness extends ComponentHarness {
2
+ export declare type GioPolicyStudioDetailsPhaseStepHarnessFilters = BaseHarnessFilters;
3
+ export declare class GioPolicyStudioDetailsPhaseStepHarness extends ComponentHarness {
4
4
  static hostSelector: string;
5
5
  /**
6
6
  * Get Harness with the given filter.
@@ -8,7 +8,8 @@ export declare class GioPolicyStudioDetailsPhasePolicyHarness extends ComponentH
8
8
  * @param options Options for filtering which input instances are considered a match.
9
9
  * @return a `HarnessPredicate` configured with the given options.
10
10
  */
11
- static with(options?: GioPolicyStudioDetailsPhasePolicyHarnessFilters): HarnessPredicate<GioPolicyStudioDetailsPhasePolicyHarness>;
11
+ static with(options?: GioPolicyStudioDetailsPhaseStepHarnessFilters): HarnessPredicate<GioPolicyStudioDetailsPhaseStepHarness>;
12
12
  getName(): Promise<string>;
13
+ getDescription(): Promise<string | undefined>;
13
14
  clickOnEdit(): Promise<void>;
14
15
  }
@@ -0,0 +1,12 @@
1
+ import { ComponentHarness } from '@angular/cdk/testing';
2
+ import { GioPolicyStudioStepFormHarness } from '../step-form/gio-ps-step-form.harness';
3
+ export declare class GioPolicyStudioPoliciesCatalogDialogHarness extends ComponentHarness {
4
+ static hostSelector: string;
5
+ private policiesLocator;
6
+ getPhase(): Promise<string>;
7
+ getPoliciesName(): Promise<string[]>;
8
+ selectPolicy(policyName: string): Promise<void>;
9
+ getSelectedPolicyName(): Promise<string>;
10
+ clickAddPolicyButton(): Promise<void>;
11
+ getStepForm(): Promise<GioPolicyStudioStepFormHarness>;
12
+ }
@@ -0,0 +1,8 @@
1
+ import { ComponentHarness } from '@angular/cdk/testing';
2
+ import { GioPolicyStudioStepFormHarness } from '../step-form/gio-ps-step-form.harness';
3
+ export declare class GioPolicyStudioStepEditDialogHarness extends ComponentHarness {
4
+ static hostSelector: string;
5
+ getPolicyName(): Promise<string>;
6
+ getStepForm(): Promise<GioPolicyStudioStepFormHarness>;
7
+ save(): Promise<void>;
8
+ }
@@ -0,0 +1,11 @@
1
+ import { ComponentHarness } from '@angular/cdk/testing';
2
+ export declare class GioPolicyStudioStepFormHarness extends ComponentHarness {
3
+ static hostSelector: string;
4
+ private getDescriptionInput;
5
+ setStepForm(stepForm: {
6
+ description?: string;
7
+ }): Promise<void>;
8
+ getStepFormValue(): Promise<{
9
+ description?: string;
10
+ }>;
11
+ }
@@ -1,6 +1,6 @@
1
1
  import { ComponentHarness } from '@angular/cdk/testing';
2
2
  import { Flow, FlowExecution } from './models';
3
- import { PhaseType } from './components/flow-details-phase/gio-ps-flow-details-phase.harness';
3
+ import { GioPolicyStudioDetailsPhaseHarness, PhaseType } from './components/flow-details-phase/gio-ps-flow-details-phase.harness';
4
4
  export declare class GioPolicyStudioHarness extends ComponentHarness {
5
5
  static hostSelector: string;
6
6
  private menuHarness;
@@ -48,13 +48,10 @@ export declare class GioPolicyStudioHarness extends ComponentHarness {
48
48
  */
49
49
  getSelectedFlowInfos(): Promise<Record<string, (string | null)[]>>;
50
50
  /**
51
- * Get selected flow steps phase
52
- * @param tabLabel Select tabs before try to find phase. Useful to find Event phases for Message API
51
+ * Get selected flow phase harness
52
+ * @param phaseType Phase type to get
53
53
  */
54
- getSelectedFlowSteps(phaseType: PhaseType, tabLabel?: string): Promise<{
55
- text: string;
56
- type: 'connector' | 'policy';
57
- }[] | 'DISABLED'>;
54
+ getSelectedFlowPhase(phaseType: PhaseType): Promise<GioPolicyStudioDetailsPhaseHarness | undefined>;
58
55
  /**
59
56
  * Click on the "Save" button
60
57
  */
@@ -0,0 +1,4 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Policy } from './policy/Policy';
3
+ export declare type PolicySchemaFetcher = (policy: Policy) => Observable<unknown>;
4
+ export declare type PolicyDocumentationFetcher = (policy: Policy) => Observable<unknown>;
@@ -1,4 +1,4 @@
1
1
  import { Step } from './Step';
2
- export declare function fakeMockPolicyStep(modifier?: Partial<Step> | ((base: Step) => Step)): Step;
2
+ export declare function fakeTestPolicyStep(modifier?: Partial<Step> | ((base: Step) => Step)): Step;
3
3
  export declare function fakeRateLimitStep(modifier?: Partial<Step> | ((base: Step) => Step)): Step;
4
- export declare function fakeXmlToJsonStep(modifier?: Partial<Step> | ((base: Step) => Step)): Step;
4
+ export declare function fakeJsonToXmlStep(modifier?: Partial<Step> | ((base: Step) => Step)): Step;
@@ -3,3 +3,4 @@ export * from './plan';
3
3
  export * from './policy';
4
4
  export * from './ConnectorsInfo';
5
5
  export * from './SaveOutput';
6
+ export * from './PolicySchemaFetcher';
@@ -1,58 +0,0 @@
1
- /*
2
- * Copyright (C) 2022 The Gravitee team (http://gravitee.io)
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, Input } from '@angular/core';
17
- import { GioPolicyStudioPolicyFormDialogComponent, } from '../policy-form-dialog/gio-ps-policy-form-dialog.component';
18
- import { fakeTestPolicy } from '../../models/index-testing';
19
- import * as i0 from "@angular/core";
20
- import * as i1 from "@angular/material/dialog";
21
- import * as i2 from "@angular/material/icon";
22
- import * as i3 from "@angular/material/button";
23
- import * as i4 from "@angular/material/menu";
24
- import * as i5 from "@angular/common";
25
- export class GioPolicyStudioDetailsPhasePolicyComponent {
26
- constructor(matDialog) {
27
- this.matDialog = matDialog;
28
- }
29
- onEdit() {
30
- this.matDialog
31
- .open(GioPolicyStudioPolicyFormDialogComponent, {
32
- data: {
33
- policy: fakeTestPolicy(),
34
- step: this.step,
35
- },
36
- role: 'alertdialog',
37
- id: 'gioPolicyStudioPolicyFormDialog',
38
- width: '1000px',
39
- })
40
- .afterClosed()
41
- .subscribe();
42
- }
43
- onDisable() {
44
- throw new Error('Wip');
45
- }
46
- onDelete() {
47
- throw new Error('Wip');
48
- }
49
- }
50
- GioPolicyStudioDetailsPhasePolicyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioPolicyStudioDetailsPhasePolicyComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
51
- GioPolicyStudioDetailsPhasePolicyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioPolicyStudioDetailsPhasePolicyComponent, selector: "gio-ps-flow-details-phase-policy", inputs: { step: "step" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n\n<div class=\"info\">\n <div class=\"info__primary\">\n <mat-icon class=\"info__primary__icon\" svgIcon=\"gio:gift\"></mat-icon>\n\n <span *ngIf=\"step.name\" class=\"info__primary__name\">{{ step.name }}</span>\n </div>\n\n <div *ngIf=\"step.description\" class=\"info__secondary\">{{ step.description }}</div>\n</div>\n\n<button class=\"menuBtn\" mat-icon-button [matMenuTriggerFor]=\"policyMenu\"><mat-icon svgIcon=\"gio:more-vertical\"></mat-icon></button>\n\n<mat-menu #policyMenu=\"matMenu\">\n <button mat-menu-item (click)=\"onEdit()\">\n <mat-icon svgIcon=\"gio:edit-pencil\"></mat-icon>\n <span>Edit</span>\n </button>\n\n <button disabled mat-menu-item (click)=\"onDisable()\">\n <mat-icon svgIcon=\"gio:prohibition\"></mat-icon>\n <span>Disable \uD83D\uDEA7</span>\n </button>\n\n <button disabled mat-menu-item (click)=\"onDelete()\">\n <mat-icon svgIcon=\"gio:trash\"></mat-icon>\n <span>Delete \uD83D\uDEA7</span>\n </button>\n</mat-menu>\n", styles: [":host{display:flex;align-items:center;padding:8px;border:1px solid #d3d5dc;border-radius:8px}.info{display:flex;max-width:300px;flex-direction:column;margin-left:4px;gap:4px}.info__primary{display:flex;align-items:center}.info__primary__icon{min-width:24px;flex:1 1 24px;margin-right:8px}.info__primary__name{overflow:hidden;flex:1 1 auto;text-overflow:ellipsis;white-space:nowrap}.info__secondary{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;color:#606274;-webkit-line-clamp:2}.info__secondary:empty{display:none}\n"], components: [{ type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }] });
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioPolicyStudioDetailsPhasePolicyComponent, decorators: [{
53
- type: Component,
54
- args: [{ selector: 'gio-ps-flow-details-phase-policy', template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n\n<div class=\"info\">\n <div class=\"info__primary\">\n <mat-icon class=\"info__primary__icon\" svgIcon=\"gio:gift\"></mat-icon>\n\n <span *ngIf=\"step.name\" class=\"info__primary__name\">{{ step.name }}</span>\n </div>\n\n <div *ngIf=\"step.description\" class=\"info__secondary\">{{ step.description }}</div>\n</div>\n\n<button class=\"menuBtn\" mat-icon-button [matMenuTriggerFor]=\"policyMenu\"><mat-icon svgIcon=\"gio:more-vertical\"></mat-icon></button>\n\n<mat-menu #policyMenu=\"matMenu\">\n <button mat-menu-item (click)=\"onEdit()\">\n <mat-icon svgIcon=\"gio:edit-pencil\"></mat-icon>\n <span>Edit</span>\n </button>\n\n <button disabled mat-menu-item (click)=\"onDisable()\">\n <mat-icon svgIcon=\"gio:prohibition\"></mat-icon>\n <span>Disable \uD83D\uDEA7</span>\n </button>\n\n <button disabled mat-menu-item (click)=\"onDelete()\">\n <mat-icon svgIcon=\"gio:trash\"></mat-icon>\n <span>Delete \uD83D\uDEA7</span>\n </button>\n</mat-menu>\n", styles: [":host{display:flex;align-items:center;padding:8px;border:1px solid #d3d5dc;border-radius:8px}.info{display:flex;max-width:300px;flex-direction:column;margin-left:4px;gap:4px}.info__primary{display:flex;align-items:center}.info__primary__icon{min-width:24px;flex:1 1 24px;margin-right:8px}.info__primary__name{overflow:hidden;flex:1 1 auto;text-overflow:ellipsis;white-space:nowrap}.info__secondary{font:400 12px/16px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:normal;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;color:#606274;-webkit-line-clamp:2}.info__secondary:empty{display:none}\n"] }]
55
- }], ctorParameters: function () { return [{ type: i1.MatDialog }]; }, propDecorators: { step: [{
56
- type: Input
57
- }] } });
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLWZsb3ctZGV0YWlscy1waGFzZS1wb2xpY3kuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcG9saWN5LXN0dWRpby1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9mbG93LWRldGFpbHMtcGhhc2UtcG9saWN5L2dpby1wcy1mbG93LWRldGFpbHMtcGhhc2UtcG9saWN5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZmxvdy1kZXRhaWxzLXBoYXNlLXBvbGljeS9naW8tcHMtZmxvdy1kZXRhaWxzLXBoYXNlLXBvbGljeS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSWpELE9BQU8sRUFDTCx3Q0FBd0MsR0FHekMsTUFBTSwyREFBMkQsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7QUFPNUQsTUFBTSxPQUFPLDBDQUEwQztJQUlyRCxZQUE2QixTQUFvQjtRQUFwQixjQUFTLEdBQVQsU0FBUyxDQUFXO0lBQUcsQ0FBQztJQUU5QyxNQUFNO1FBQ1gsSUFBSSxDQUFDLFNBQVM7YUFDWCxJQUFJLENBQ0gsd0NBQXdDLEVBQ3hDO1lBQ0UsSUFBSSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxjQUFjLEVBQUU7Z0JBQ3hCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTthQUNoQjtZQUNELElBQUksRUFBRSxhQUFhO1lBQ25CLEVBQUUsRUFBRSxpQ0FBaUM7WUFDckMsS0FBSyxFQUFFLFFBQVE7U0FDaEIsQ0FDRjthQUNBLFdBQVcsRUFBRTthQUNiLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFTSxTQUFTO1FBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQzs7d0lBOUJVLDBDQUEwQzs0SEFBMUMsMENBQTBDLGtHQy9CdkQsOG5EQThDQTs0RkRmYSwwQ0FBMEM7a0JBTHRELFNBQVM7K0JBQ0Usa0NBQWtDO2dHQU1yQyxJQUFJO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIyIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuaW1wb3J0IHsgU3RlcCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQge1xuICBHaW9Qb2xpY3lTdHVkaW9Qb2xpY3lGb3JtRGlhbG9nQ29tcG9uZW50LFxuICBHaW9Qb2xpY3lTdHVkaW9Qb2xpY3lGb3JtRGlhbG9nRGF0YSxcbiAgR2lvUG9saWN5U3R1ZGlvUG9saWN5Rm9ybURpYWxvZ1Jlc3VsdCxcbn0gZnJvbSAnLi4vcG9saWN5LWZvcm0tZGlhbG9nL2dpby1wcy1wb2xpY3ktZm9ybS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IGZha2VUZXN0UG9saWN5IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2luZGV4LXRlc3RpbmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnaW8tcHMtZmxvdy1kZXRhaWxzLXBoYXNlLXBvbGljeScsXG4gIHRlbXBsYXRlVXJsOiAnLi9naW8tcHMtZmxvdy1kZXRhaWxzLXBoYXNlLXBvbGljeS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dpby1wcy1mbG93LWRldGFpbHMtcGhhc2UtcG9saWN5LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEdpb1BvbGljeVN0dWRpb0RldGFpbHNQaGFzZVBvbGljeUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdGVwITogU3RlcDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG1hdERpYWxvZzogTWF0RGlhbG9nKSB7fVxuXG4gIHB1YmxpYyBvbkVkaXQoKSB7XG4gICAgdGhpcy5tYXREaWFsb2dcbiAgICAgIC5vcGVuPEdpb1BvbGljeVN0dWRpb1BvbGljeUZvcm1EaWFsb2dDb21wb25lbnQsIEdpb1BvbGljeVN0dWRpb1BvbGljeUZvcm1EaWFsb2dEYXRhLCBHaW9Qb2xpY3lTdHVkaW9Qb2xpY3lGb3JtRGlhbG9nUmVzdWx0PihcbiAgICAgICAgR2lvUG9saWN5U3R1ZGlvUG9saWN5Rm9ybURpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAge1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIHBvbGljeTogZmFrZVRlc3RQb2xpY3koKSxcbiAgICAgICAgICAgIHN0ZXA6IHRoaXMuc3RlcCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJvbGU6ICdhbGVydGRpYWxvZycsXG4gICAgICAgICAgaWQ6ICdnaW9Qb2xpY3lTdHVkaW9Qb2xpY3lGb3JtRGlhbG9nJyxcbiAgICAgICAgICB3aWR0aDogJzEwMDBweCcsXG4gICAgICAgIH0sXG4gICAgICApXG4gICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG9uRGlzYWJsZSgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1dpcCcpO1xuICB9XG5cbiAgcHVibGljIG9uRGVsZXRlKCkge1xuICAgIHRocm93IG5ldyBFcnJvcignV2lwJyk7XG4gIH1cbn1cbiIsIjwhLS1cblxuICAgIENvcHlyaWdodCAoQykgMjAyMyBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICAgIFxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICAgIFxuICAgICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gICAgXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbi0tPlxuXG48ZGl2IGNsYXNzPVwiaW5mb1wiPlxuICA8ZGl2IGNsYXNzPVwiaW5mb19fcHJpbWFyeVwiPlxuICAgIDxtYXQtaWNvbiBjbGFzcz1cImluZm9fX3ByaW1hcnlfX2ljb25cIiBzdmdJY29uPVwiZ2lvOmdpZnRcIj48L21hdC1pY29uPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJzdGVwLm5hbWVcIiBjbGFzcz1cImluZm9fX3ByaW1hcnlfX25hbWVcIj57eyBzdGVwLm5hbWUgfX08L3NwYW4+XG4gIDwvZGl2PlxuXG4gIDxkaXYgKm5nSWY9XCJzdGVwLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJpbmZvX19zZWNvbmRhcnlcIj57eyBzdGVwLmRlc2NyaXB0aW9uIH19PC9kaXY+XG48L2Rpdj5cblxuPGJ1dHRvbiBjbGFzcz1cIm1lbnVCdG5cIiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cInBvbGljeU1lbnVcIj48bWF0LWljb24gc3ZnSWNvbj1cImdpbzptb3JlLXZlcnRpY2FsXCI+PC9tYXQtaWNvbj48L2J1dHRvbj5cblxuPG1hdC1tZW51ICNwb2xpY3lNZW51PVwibWF0TWVudVwiPlxuICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uRWRpdCgpXCI+XG4gICAgPG1hdC1pY29uIHN2Z0ljb249XCJnaW86ZWRpdC1wZW5jaWxcIj48L21hdC1pY29uPlxuICAgIDxzcGFuPkVkaXQ8L3NwYW4+XG4gIDwvYnV0dG9uPlxuXG4gIDxidXR0b24gZGlzYWJsZWQgbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwib25EaXNhYmxlKClcIj5cbiAgICA8bWF0LWljb24gc3ZnSWNvbj1cImdpbzpwcm9oaWJpdGlvblwiPjwvbWF0LWljb24+XG4gICAgPHNwYW4+RGlzYWJsZSDwn5qnPC9zcGFuPlxuICA8L2J1dHRvbj5cblxuICA8YnV0dG9uIGRpc2FibGVkIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm9uRGVsZXRlKClcIj5cbiAgICA8bWF0LWljb24gc3ZnSWNvbj1cImdpbzp0cmFzaFwiPjwvbWF0LWljb24+XG4gICAgPHNwYW4+RGVsZXRlIPCfmqc8L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9tYXQtbWVudT5cbiJdfQ==
@@ -1,30 +0,0 @@
1
- /*
2
- * Copyright (C) 2022 The Gravitee team (http://gravitee.io)
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, Input } from '@angular/core';
17
- import * as i0 from "@angular/core";
18
- export class GioPolicyStudioPolicyFormComponent {
19
- }
20
- GioPolicyStudioPolicyFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioPolicyStudioPolicyFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
- GioPolicyStudioPolicyFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioPolicyStudioPolicyFormComponent, selector: "gio-ps-policy-form", inputs: { step: "step", policy: "policy" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n\n<div class=\"settings\">\n <div class=\"settings__header\">Settings</div>\n\n <div class=\"settings__content\">\uD83D\uDEA7 WIP \uD83D\uDEA7</div>\n</div>\n\n<div class=\"documentation\">\n <div class=\"documentation__header\">Documentation</div>\n\n <div class=\"documentation__content\">\uD83D\uDEA7 WIP \uD83D\uDEA7</div>\n</div>\n", styles: [":host{display:flex;flex-direction:row;border:1px solid #d3d5dc;border-radius:8px}.settings{display:flex;flex:1 1 auto;flex-direction:column}.settings__header{border-right:1px solid #d3d5dc}.settings__content{padding:16px;border-right:1px solid #d3d5dc}.documentation{display:flex;flex:1 1 auto;flex-direction:column}.documentation__content{padding:16px}.settings__header,.documentation__header{padding:16px;border-bottom:1px solid #d3d5dc;font:600 14px/20px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}\n"] });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioPolicyStudioPolicyFormComponent, decorators: [{
23
- type: Component,
24
- args: [{ selector: 'gio-ps-policy-form', template: "<!--\n\n Copyright (C) 2023 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n\n<div class=\"settings\">\n <div class=\"settings__header\">Settings</div>\n\n <div class=\"settings__content\">\uD83D\uDEA7 WIP \uD83D\uDEA7</div>\n</div>\n\n<div class=\"documentation\">\n <div class=\"documentation__header\">Documentation</div>\n\n <div class=\"documentation__content\">\uD83D\uDEA7 WIP \uD83D\uDEA7</div>\n</div>\n", styles: [":host{display:flex;flex-direction:row;border:1px solid #d3d5dc;border-radius:8px}.settings{display:flex;flex:1 1 auto;flex-direction:column}.settings__header{border-right:1px solid #d3d5dc}.settings__content{padding:16px;border-right:1px solid #d3d5dc}.documentation{display:flex;flex:1 1 auto;flex-direction:column}.documentation__content{padding:16px}.settings__header,.documentation__header{padding:16px;border-bottom:1px solid #d3d5dc;font:600 14px/20px Golos UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:.4px}\n"] }]
25
- }], propDecorators: { step: [{
26
- type: Input
27
- }], policy: [{
28
- type: Input
29
- }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLXBvbGljeS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvcG9saWN5LWZvcm0vZ2lvLXBzLXBvbGljeS1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvcG9saWN5LWZvcm0vZ2lvLXBzLXBvbGljeS1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBU2pELE1BQU0sT0FBTyxrQ0FBa0M7O2dJQUFsQyxrQ0FBa0M7b0hBQWxDLGtDQUFrQyxzR0N4Qi9DLHEvQkE2QkE7NEZETGEsa0NBQWtDO2tCQUw5QyxTQUFTOytCQUNFLG9CQUFvQjs4QkFNdkIsSUFBSTtzQkFEVixLQUFLO2dCQUlDLE1BQU07c0JBRFosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjIgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFBvbGljeSwgU3RlcCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dpby1wcy1wb2xpY3ktZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9naW8tcHMtcG9saWN5LWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tcHMtcG9saWN5LWZvcm0uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5U3R1ZGlvUG9saWN5Rm9ybUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzdGVwPzogU3RlcDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcG9saWN5ITogUG9saWN5O1xufVxuIiwiPCEtLVxuXG4gICAgQ29weXJpZ2h0IChDKSAyMDIzIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gICAgXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gICAgXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAgICBcbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuLS0+XG5cbjxkaXYgY2xhc3M9XCJzZXR0aW5nc1wiPlxuICA8ZGl2IGNsYXNzPVwic2V0dGluZ3NfX2hlYWRlclwiPlNldHRpbmdzPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cInNldHRpbmdzX19jb250ZW50XCI+8J+apyBXSVAg8J+apzwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJkb2N1bWVudGF0aW9uXCI+XG4gIDxkaXYgY2xhc3M9XCJkb2N1bWVudGF0aW9uX19oZWFkZXJcIj5Eb2N1bWVudGF0aW9uPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImRvY3VtZW50YXRpb25fX2NvbnRlbnRcIj7wn5qnIFdJUCDwn5qnPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,43 +0,0 @@
1
- /*
2
- * Copyright (C) 2015 The Gravitee team (http://gravitee.io)
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License");
5
- * you may not use this file except in compliance with the License.
6
- * You may obtain a copy of the License at
7
- *
8
- * http://www.apache.org/licenses/LICENSE-2.0
9
- *
10
- * Unless required by applicable law or agreed to in writing, software
11
- * distributed under the License is distributed on an "AS IS" BASIS,
12
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
- * See the License for the specific language governing permissions and
14
- * limitations under the License.
15
- */
16
- import { Component, Inject } from '@angular/core';
17
- import { MAT_DIALOG_DATA } from '@angular/material/dialog';
18
- import * as i0 from "@angular/core";
19
- import * as i1 from "@angular/material/dialog";
20
- import * as i2 from "@angular/material/icon";
21
- import * as i3 from "@angular/material/button";
22
- import * as i4 from "../policy-form/gio-ps-policy-form.component";
23
- import * as i5 from "@angular/common";
24
- export class GioPolicyStudioPolicyFormDialogComponent {
25
- constructor(dialogRef, flowDialogData) {
26
- this.dialogRef = dialogRef;
27
- this.policy = flowDialogData.policy;
28
- this.step = flowDialogData.step;
29
- }
30
- onSave() {
31
- this.dialogRef.close();
32
- }
33
- }
34
- GioPolicyStudioPolicyFormDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioPolicyStudioPolicyFormDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
35
- GioPolicyStudioPolicyFormDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GioPolicyStudioPolicyFormDialogComponent, selector: "gio-ps-policy-form-dialog", ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<h2 mat-dialog-title class=\"title\">\n <mat-icon class=\"title__icon\" [svgIcon]=\"policy.icon ?? 'gio:puzzle'\"></mat-icon>\n\n <span *ngIf=\"policy.name\" class=\"title__name\">{{ policy.name }}</span>\n\n <button class=\"title__closeBtn\" mat-icon-button aria-label=\"Close dialog\" [mat-dialog-close]=\"\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </button>\n</h2>\n\n<mat-dialog-content class=\"content\">\n <gio-ps-policy-form [policy]=\"policy\" [step]=\"step\"></gio-ps-policy-form>\n</mat-dialog-content>\n\n<mat-dialog-actions class=\"actions\">\n <button class=\"actions__cancelBtn\" mat-flat-button [mat-dialog-close]=\"\">Cancel</button>\n <button class=\"actions__saveBtn\" color=\"primary\" mat-stroked-button role=\"dialog\" (click)=\"onSave()\">Save</button>\n</mat-dialog-actions>\n", styles: [".title__closeBtn{top:-20px;right:-20px;float:right}\n"], components: [{ type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i4.GioPolicyStudioPolicyFormComponent, selector: "gio-ps-policy-form", inputs: ["step", "policy"] }], directives: [{ type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }] });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GioPolicyStudioPolicyFormDialogComponent, decorators: [{
37
- type: Component,
38
- args: [{ selector: 'gio-ps-policy-form-dialog', template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<h2 mat-dialog-title class=\"title\">\n <mat-icon class=\"title__icon\" [svgIcon]=\"policy.icon ?? 'gio:puzzle'\"></mat-icon>\n\n <span *ngIf=\"policy.name\" class=\"title__name\">{{ policy.name }}</span>\n\n <button class=\"title__closeBtn\" mat-icon-button aria-label=\"Close dialog\" [mat-dialog-close]=\"\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </button>\n</h2>\n\n<mat-dialog-content class=\"content\">\n <gio-ps-policy-form [policy]=\"policy\" [step]=\"step\"></gio-ps-policy-form>\n</mat-dialog-content>\n\n<mat-dialog-actions class=\"actions\">\n <button class=\"actions__cancelBtn\" mat-flat-button [mat-dialog-close]=\"\">Cancel</button>\n <button class=\"actions__saveBtn\" color=\"primary\" mat-stroked-button role=\"dialog\" (click)=\"onSave()\">Save</button>\n</mat-dialog-actions>\n", styles: [".title__closeBtn{top:-20px;right:-20px;float:right}\n"] }]
39
- }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
40
- type: Inject,
41
- args: [MAT_DIALOG_DATA]
42
- }] }]; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLXBvbGljeS1mb3JtLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wb2xpY3ktc3R1ZGlvLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL3BvbGljeS1mb3JtLWRpYWxvZy9naW8tcHMtcG9saWN5LWZvcm0tZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvcG9saWN5LWZvcm0tZGlhbG9nL2dpby1wcy1wb2xpY3ktZm9ybS1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7O0FBZ0J6RSxNQUFNLE9BQU8sd0NBQXdDO0lBSW5ELFlBQ1MsU0FBd0csRUFDdEYsY0FBbUQ7UUFEckUsY0FBUyxHQUFULFNBQVMsQ0FBK0Y7UUFHL0csSUFBSSxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxJQUFJLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekIsQ0FBQzs7c0lBZFUsd0NBQXdDLDhDQU16QyxlQUFlOzBIQU5kLHdDQUF3QyxpRUNoQ3JELHc4Q0FtQ0E7NEZESGEsd0NBQXdDO2tCQUxwRCxTQUFTOytCQUNFLDJCQUEyQjs7MEJBVWxDLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBQb2xpY3ksIFN0ZXAgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG5leHBvcnQgdHlwZSBHaW9Qb2xpY3lTdHVkaW9Qb2xpY3lGb3JtRGlhbG9nRGF0YSA9IHtcbiAgcG9saWN5OiBQb2xpY3k7XG4gIHN0ZXA6IFN0ZXA7XG59O1xuXG5leHBvcnQgdHlwZSBHaW9Qb2xpY3lTdHVkaW9Qb2xpY3lGb3JtRGlhbG9nUmVzdWx0ID0gdW5kZWZpbmVkO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnaW8tcHMtcG9saWN5LWZvcm0tZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dpby1wcy1wb2xpY3ktZm9ybS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tcHMtcG9saWN5LWZvcm0tZGlhbG9nLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEdpb1BvbGljeVN0dWRpb1BvbGljeUZvcm1EaWFsb2dDb21wb25lbnQge1xuICBwdWJsaWMgcG9saWN5ITogUG9saWN5O1xuICBwdWJsaWMgc3RlcCE6IFN0ZXA7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEdpb1BvbGljeVN0dWRpb1BvbGljeUZvcm1EaWFsb2dDb21wb25lbnQsIEdpb1BvbGljeVN0dWRpb1BvbGljeUZvcm1EaWFsb2dSZXN1bHQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBmbG93RGlhbG9nRGF0YTogR2lvUG9saWN5U3R1ZGlvUG9saWN5Rm9ybURpYWxvZ0RhdGEsXG4gICkge1xuICAgIHRoaXMucG9saWN5ID0gZmxvd0RpYWxvZ0RhdGEucG9saWN5O1xuICAgIHRoaXMuc3RlcCA9IGZsb3dEaWFsb2dEYXRhLnN0ZXA7XG4gIH1cblxuICBwdWJsaWMgb25TYXZlKCk6IHZvaWQge1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gIH1cbn1cbiIsIjwhLS1cblxuICAgIENvcHlyaWdodCAoQykgMjAxNSBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbi0tPlxuPGgyIG1hdC1kaWFsb2ctdGl0bGUgY2xhc3M9XCJ0aXRsZVwiPlxuICA8bWF0LWljb24gY2xhc3M9XCJ0aXRsZV9faWNvblwiIFtzdmdJY29uXT1cInBvbGljeS5pY29uID8/ICdnaW86cHV6emxlJ1wiPjwvbWF0LWljb24+XG5cbiAgPHNwYW4gKm5nSWY9XCJwb2xpY3kubmFtZVwiIGNsYXNzPVwidGl0bGVfX25hbWVcIj57eyBwb2xpY3kubmFtZSB9fTwvc3Bhbj5cblxuICA8YnV0dG9uIGNsYXNzPVwidGl0bGVfX2Nsb3NlQnRuXCIgbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJDbG9zZSBkaWFsb2dcIiBbbWF0LWRpYWxvZy1jbG9zZV09XCJcIj5cbiAgICA8bWF0LWljb24gc3ZnSWNvbj1cImdpbzpjYW5jZWxcIj48L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvaDI+XG5cbjxtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJjb250ZW50XCI+XG4gIDxnaW8tcHMtcG9saWN5LWZvcm0gW3BvbGljeV09XCJwb2xpY3lcIiBbc3RlcF09XCJzdGVwXCI+PC9naW8tcHMtcG9saWN5LWZvcm0+XG48L21hdC1kaWFsb2ctY29udGVudD5cblxuPG1hdC1kaWFsb2ctYWN0aW9ucyBjbGFzcz1cImFjdGlvbnNcIj5cbiAgPGJ1dHRvbiBjbGFzcz1cImFjdGlvbnNfX2NhbmNlbEJ0blwiIG1hdC1mbGF0LWJ1dHRvbiBbbWF0LWRpYWxvZy1jbG9zZV09XCJcIj5DYW5jZWw8L2J1dHRvbj5cbiAgPGJ1dHRvbiBjbGFzcz1cImFjdGlvbnNfX3NhdmVCdG5cIiBjb2xvcj1cInByaW1hcnlcIiBtYXQtc3Ryb2tlZC1idXR0b24gcm9sZT1cImRpYWxvZ1wiIChjbGljayk9XCJvblNhdmUoKVwiPlNhdmU8L2J1dHRvbj5cbjwvbWF0LWRpYWxvZy1hY3Rpb25zPlxuIl19