@gravitee/ui-policy-studio-angular 9.5.2 → 9.6.0-angular-16-c8d84dc

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 (100) hide show
  1. package/{esm2020 → esm2022}/lib/components/filter-pipe/gio-flter-connectors-by-mode.pipe.mjs +4 -4
  2. package/{esm2020 → esm2022}/lib/components/flow-details/gio-ps-flow-details.component.mjs +4 -4
  3. package/{esm2020 → esm2022}/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.component.mjs +4 -4
  4. package/{esm2020 → esm2022}/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.mjs +4 -4
  5. package/{esm2020 → esm2022}/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.mjs +4 -4
  6. package/{esm2020 → esm2022}/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.component.mjs +4 -4
  7. package/{esm2020 → esm2022}/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.component.mjs +4 -4
  8. package/{esm2020 → esm2022}/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.component.mjs +4 -4
  9. package/{esm2020 → esm2022}/lib/components/flows-menu/gio-ps-flows-menu.component.mjs +4 -4
  10. package/{esm2020 → esm2022}/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component.mjs +4 -4
  11. package/{esm2020 → esm2022}/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.component.mjs +4 -4
  12. package/{esm2020 → esm2022}/lib/components/step-form/gio-ps-step-form.component.mjs +4 -4
  13. package/{esm2020 → esm2022}/lib/gio-policy-studio.component.mjs +4 -4
  14. package/{esm2020 → esm2022}/lib/gio-policy-studio.module.mjs +53 -53
  15. package/{esm2020 → esm2022}/lib/gio-policy-studio.service.mjs +4 -4
  16. package/esm2022/testing/lib/components/flow-details/gio-ps-flow-details.harness.mjs +41 -0
  17. package/esm2022/testing/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.harness.mjs +35 -0
  18. package/esm2022/testing/lib/components/flow-details-phase/gio-ps-flow-details-phase.harness.mjs +126 -0
  19. package/esm2022/testing/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.harness.mjs +50 -0
  20. package/esm2022/testing/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.harness.mjs +60 -0
  21. package/esm2022/testing/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.harness.mjs +128 -0
  22. package/esm2022/testing/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.harness.mjs +98 -0
  23. package/esm2022/testing/lib/components/flows-menu/gio-ps-flows-menu.harness.mjs +71 -0
  24. package/esm2022/testing/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness.mjs +87 -0
  25. package/{esm2020 → esm2022}/testing/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.harness.mjs +2 -2
  26. package/esm2022/testing/lib/components/step-form/gio-ps-step-form.harness.mjs +49 -0
  27. package/esm2022/testing/lib/gio-policy-studio.harness.mjs +161 -0
  28. package/{fesm2020 → fesm2022}/gravitee-ui-policy-studio-angular-testing.mjs +12 -12
  29. package/{fesm2020 → fesm2022}/gravitee-ui-policy-studio-angular-testing.mjs.map +1 -1
  30. package/{fesm2020 → fesm2022}/gravitee-ui-policy-studio-angular.mjs +94 -94
  31. package/{fesm2020 → fesm2022}/gravitee-ui-policy-studio-angular.mjs.map +1 -1
  32. package/lib/components/flow-details/gio-ps-flow-details.component.d.ts +1 -1
  33. package/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.component.d.ts +1 -1
  34. package/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.d.ts +1 -1
  35. package/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.d.ts +1 -1
  36. package/lib/components/flows-menu/gio-ps-flows-menu.component.d.ts +1 -1
  37. package/lib/components/step-form/gio-ps-step-form.component.d.ts +1 -1
  38. package/lib/gio-policy-studio.component.d.ts +1 -1
  39. package/package.json +14 -22
  40. package/esm2020/testing/lib/components/flow-details/gio-ps-flow-details.harness.mjs +0 -41
  41. package/esm2020/testing/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.harness.mjs +0 -35
  42. package/esm2020/testing/lib/components/flow-details-phase/gio-ps-flow-details-phase.harness.mjs +0 -126
  43. package/esm2020/testing/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.harness.mjs +0 -50
  44. package/esm2020/testing/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.harness.mjs +0 -60
  45. package/esm2020/testing/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.harness.mjs +0 -128
  46. package/esm2020/testing/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.harness.mjs +0 -98
  47. package/esm2020/testing/lib/components/flows-menu/gio-ps-flows-menu.harness.mjs +0 -71
  48. package/esm2020/testing/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness.mjs +0 -87
  49. package/esm2020/testing/lib/components/step-form/gio-ps-step-form.harness.mjs +0 -49
  50. package/esm2020/testing/lib/gio-policy-studio.harness.mjs +0 -161
  51. package/fesm2015/gravitee-ui-policy-studio-angular-testing.mjs +0 -1443
  52. package/fesm2015/gravitee-ui-policy-studio-angular-testing.mjs.map +0 -1
  53. package/fesm2015/gravitee-ui-policy-studio-angular.mjs +0 -1645
  54. package/fesm2015/gravitee-ui-policy-studio-angular.mjs.map +0 -1
  55. /package/{esm2020 → esm2022}/gravitee-ui-policy-studio-angular.mjs +0 -0
  56. /package/{esm2020 → esm2022}/lib/components/flow-form-dialog/gio-ps-flow-form-dialog-result.model.mjs +0 -0
  57. /package/{esm2020 → esm2022}/lib/gio-policy-studio.model.mjs +0 -0
  58. /package/{esm2020 → esm2022}/lib/models/ConnectorsInfo.mjs +0 -0
  59. /package/{esm2020 → esm2022}/lib/models/PolicySchemaFetcher.mjs +0 -0
  60. /package/{esm2020 → esm2022}/lib/models/SaveOutput.mjs +0 -0
  61. /package/{esm2020 → esm2022}/lib/models/flow/ApiType.mjs +0 -0
  62. /package/{esm2020 → esm2022}/lib/models/flow/Flow.mjs +0 -0
  63. /package/{esm2020 → esm2022}/lib/models/flow/FlowExecution.mjs +0 -0
  64. /package/{esm2020 → esm2022}/lib/models/flow/HttpMethod.mjs +0 -0
  65. /package/{esm2020 → esm2022}/lib/models/flow/Selector.mjs +0 -0
  66. /package/{esm2020 → esm2022}/lib/models/flow/Step.mjs +0 -0
  67. /package/{esm2020 → esm2022}/lib/models/flow/index.mjs +0 -0
  68. /package/{esm2020 → esm2022}/lib/models/index.mjs +0 -0
  69. /package/{esm2020 → esm2022}/lib/models/plan/Plan.mjs +0 -0
  70. /package/{esm2020 → esm2022}/lib/models/plan/index.mjs +0 -0
  71. /package/{esm2020 → esm2022}/lib/models/policy/Policy.mjs +0 -0
  72. /package/{esm2020 → esm2022}/lib/models/policy/index.mjs +0 -0
  73. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  74. /package/{esm2020 → esm2022}/testing/gravitee-ui-policy-studio-angular-testing.mjs +0 -0
  75. /package/{esm2020 → esm2022}/testing/lib/models/ConnectorsInfo.fixture.mjs +0 -0
  76. /package/{esm2020 → esm2022}/testing/lib/models/ConnectorsInfo.mjs +0 -0
  77. /package/{esm2020 → esm2022}/testing/lib/models/PolicySchemaFetcher.mjs +0 -0
  78. /package/{esm2020 → esm2022}/testing/lib/models/SaveOutput.mjs +0 -0
  79. /package/{esm2020 → esm2022}/testing/lib/models/flow/ApiType.mjs +0 -0
  80. /package/{esm2020 → esm2022}/testing/lib/models/flow/Flow.fixture.mjs +0 -0
  81. /package/{esm2020 → esm2022}/testing/lib/models/flow/Flow.mjs +0 -0
  82. /package/{esm2020 → esm2022}/testing/lib/models/flow/FlowExecution.fixture.mjs +0 -0
  83. /package/{esm2020 → esm2022}/testing/lib/models/flow/FlowExecution.mjs +0 -0
  84. /package/{esm2020 → esm2022}/testing/lib/models/flow/HttpMethod.mjs +0 -0
  85. /package/{esm2020 → esm2022}/testing/lib/models/flow/Selector.mjs +0 -0
  86. /package/{esm2020 → esm2022}/testing/lib/models/flow/Step.fixture.mjs +0 -0
  87. /package/{esm2020 → esm2022}/testing/lib/models/flow/Step.mjs +0 -0
  88. /package/{esm2020 → esm2022}/testing/lib/models/flow/index-testing.mjs +0 -0
  89. /package/{esm2020 → esm2022}/testing/lib/models/flow/index.mjs +0 -0
  90. /package/{esm2020 → esm2022}/testing/lib/models/index-testing.mjs +0 -0
  91. /package/{esm2020 → esm2022}/testing/lib/models/index.mjs +0 -0
  92. /package/{esm2020 → esm2022}/testing/lib/models/plan/Plan.fixture.mjs +0 -0
  93. /package/{esm2020 → esm2022}/testing/lib/models/plan/Plan.mjs +0 -0
  94. /package/{esm2020 → esm2022}/testing/lib/models/plan/index-testing.mjs +0 -0
  95. /package/{esm2020 → esm2022}/testing/lib/models/plan/index.mjs +0 -0
  96. /package/{esm2020 → esm2022}/testing/lib/models/policy/Policy.fixture.mjs +0 -0
  97. /package/{esm2020 → esm2022}/testing/lib/models/policy/Policy.mjs +0 -0
  98. /package/{esm2020 → esm2022}/testing/lib/models/policy/index-testing.mjs +0 -0
  99. /package/{esm2020 → esm2022}/testing/lib/models/policy/index.mjs +0 -0
  100. /package/{esm2020 → esm2022}/testing/public-testing-api.mjs +0 -0
@@ -0,0 +1,128 @@
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 { ComponentHarness, parallel } from '@angular/cdk/testing';
17
+ import { MatButtonHarness } from '@angular/material/button/testing';
18
+ import { MatInputHarness } from '@angular/material/input/testing';
19
+ import { MatSelectHarness } from '@angular/material/select/testing';
20
+ export class GioPolicyStudioFlowMessageFormDialogHarness extends ComponentHarness {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.getSaveBtn = this.locatorFor(MatButtonHarness.with({ selector: '.actions__saveBtn' }));
24
+ this.getCancelBtn = this.locatorFor(MatButtonHarness.with({ selector: '.actions__cancelBtn' }));
25
+ this.nameInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="name"]' }));
26
+ this.channelOperatorInput = this.locatorFor(MatSelectHarness.with({ selector: '[formControlName="channelOperator"]' }));
27
+ this.channelInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="channel"]' }));
28
+ this.operationsInput = this.locatorFor(MatSelectHarness.with({ selector: '[formControlName="operations"]' }));
29
+ this.entrypointsInput = this.locatorFor(MatSelectHarness.with({ selector: '[formControlName="entrypoints"]' }));
30
+ this.conditionInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="condition"]' }));
31
+ }
32
+ static { this.hostSelector = 'gio-ps-flow-message-form-dialog'; }
33
+ async setFlowFormValues(flow) {
34
+ if (flow.name) {
35
+ const nameInput = await this.nameInput();
36
+ await nameInput.setValue(flow.name);
37
+ }
38
+ if (flow.channelOperator) {
39
+ const channelOperatorInput = await this.channelOperatorInput();
40
+ const entrypointsInput = await this.entrypointsInput();
41
+ await channelOperatorInput.open();
42
+ // Unselect all options before selecting the new one
43
+ for (const option of await entrypointsInput.getOptions()) {
44
+ if (await option.isSelected()) {
45
+ await option.click();
46
+ }
47
+ }
48
+ await channelOperatorInput.clickOptions({ text: new RegExp(flow.channelOperator, 'i') });
49
+ }
50
+ if (flow.channel) {
51
+ const channelInput = await this.channelInput();
52
+ await channelInput.setValue(flow.channel);
53
+ }
54
+ if (flow.operations) {
55
+ const operationsInput = await this.operationsInput();
56
+ await parallel(() => (flow.operations ?? []).map(async (operation) => {
57
+ await operationsInput.open();
58
+ // Unselect all options before selecting the new one
59
+ for (const option of await operationsInput.getOptions()) {
60
+ if (await option.isSelected()) {
61
+ await option.click();
62
+ }
63
+ }
64
+ await operationsInput.clickOptions({ text: new RegExp(operation, 'i') });
65
+ }));
66
+ }
67
+ if (flow.entrypoints) {
68
+ const entrypointsInput = await this.entrypointsInput();
69
+ await entrypointsInput.open();
70
+ // Unselect all options before selecting the new one
71
+ for (const option of await entrypointsInput.getOptions()) {
72
+ if (await option.isSelected()) {
73
+ await option.click();
74
+ }
75
+ }
76
+ await parallel(() => (flow.entrypoints ?? []).map(async (entrypoint) => {
77
+ await entrypointsInput.clickOptions({ text: new RegExp(entrypoint, 'i') });
78
+ }));
79
+ }
80
+ if (flow.condition) {
81
+ const conditionInput = await this.conditionInput();
82
+ await conditionInput.setValue(flow.condition);
83
+ }
84
+ }
85
+ async getName() {
86
+ return this.nameInput().then(input => input.getValue());
87
+ }
88
+ async getChannelOperator() {
89
+ return this.channelOperatorInput().then(input => input.getValueText());
90
+ }
91
+ async getChannel() {
92
+ return this.channelInput().then(input => input.getValue());
93
+ }
94
+ async getOperations() {
95
+ return this.operationsInput().then(input => input.getValueText());
96
+ }
97
+ async getEntrypoints() {
98
+ return this.entrypointsInput().then(input => input.getValueText());
99
+ }
100
+ async getCondition() {
101
+ return this.conditionInput().then(input => input.getValue());
102
+ }
103
+ async save() {
104
+ const button = await this.getSaveBtn();
105
+ await button.click();
106
+ }
107
+ async cancel() {
108
+ const button = await this.getCancelBtn();
109
+ await button.click();
110
+ }
111
+ async getFormValues() {
112
+ const name = await this.getName();
113
+ const channelOperator = await this.getChannelOperator();
114
+ const channel = await this.getChannel();
115
+ const entrypoints = (await this.getEntrypoints()).split(',');
116
+ const operations = (await this.getOperations()).split(',');
117
+ const condition = await this.getCondition();
118
+ return {
119
+ name,
120
+ channel,
121
+ channelOperator,
122
+ entrypoints,
123
+ operations,
124
+ condition,
125
+ };
126
+ }
127
+ }
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLWZsb3ctbWVzc2FnZS1mb3JtLWRpYWxvZy5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcG9saWN5LXN0dWRpby1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9mbG93LWZvcm0tZGlhbG9nL2Zsb3ctbWVzc2FnZS1mb3JtLWRpYWxvZy9naW8tcHMtZmxvdy1tZXNzYWdlLWZvcm0tZGlhbG9nLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBV3BFLE1BQU0sT0FBTywyQ0FBNEMsU0FBUSxnQkFBZ0I7SUFBakY7O1FBR1UsZUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZGLGlCQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0YsY0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSwwQkFBMEIsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1Rix5QkFBb0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEs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QUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN4QyxNQUFNLFdBQVcsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdELE1BQU0sVUFBVSxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUMsT0FBTztZQUNMLElBQUk7WUFDSixPQUFPO1lBQ1AsZUFBZTtZQUNmLFdBQVc7WUFDWCxVQUFVO1lBQ1YsU0FBUztTQUNWLENBQUM7SUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMiBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudEhhcm5lc3MsIHBhcmFsbGVsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0QnV0dG9uSGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi90ZXN0aW5nJztcbmltcG9ydCB7IE1hdElucHV0SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0L3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0U2VsZWN0SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdC90ZXN0aW5nJztcblxuZXhwb3J0IHR5cGUgR2lvUG9saWN5U3R1ZGlvRmxvd01lc3NhZ2VIYXJuZXNzRGF0YSA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICBjaGFubmVsT3BlcmF0b3I6IHN0cmluZztcbiAgY2hhbm5lbDogc3RyaW5nO1xuICBlbnRyeXBvaW50czogc3RyaW5nW107XG4gIG9wZXJhdGlvbnM6IHN0cmluZ1tdO1xuICBjb25kaXRpb246IHN0cmluZztcbn07XG5cbmV4cG9ydCBjbGFzcyBHaW9Qb2xpY3lTdHVkaW9GbG93TWVzc2FnZUZvcm1EaWFsb2dIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ2dpby1wcy1mbG93LW1lc3NhZ2UtZm9ybS1kaWFsb2cnO1xuXG4gIHByaXZhdGUgZ2V0U2F2ZUJ0biA9IHRoaXMubG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5hY3Rpb25zX19zYXZlQnRuJyB9KSk7XG4gIHByaXZhdGUgZ2V0Q2FuY2VsQnRuID0gdGhpcy5sb2NhdG9yRm9yKE1hdEJ1dHRvbkhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnLmFjdGlvbnNfX2NhbmNlbEJ0bicgfSkpO1xuICBwcml2YXRlIG5hbWVJbnB1dCA9IHRoaXMubG9jYXRvckZvcihNYXRJbnB1dEhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnW2Zvcm1Db250cm9sTmFtZT1cIm5hbWVcIl0nIH0pKTtcbiAgcHJpdmF0ZSBjaGFubmVsT3BlcmF0b3JJbnB1dCA9IHRoaXMubG9jYXRvckZvcihNYXRTZWxlY3RIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbE5hbWU9XCJjaGFubmVsT3BlcmF0b3JcIl0nIH0pKTtcbiAgcHJpdmF0ZSBjaGFubmVsSW5wdXQgPSB0aGlzLmxvY2F0b3JGb3IoTWF0SW5wdXRIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbE5hbWU9XCJjaGFubmVsXCJdJyB9KSk7XG4gIHByaXZhdGUgb3BlcmF0aW9uc0lucHV0ID0gdGhpcy5sb2NhdG9yRm9yKE1hdFNlbGVjdEhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnW2Zvcm1Db250cm9sTmFtZT1cIm9wZXJhdGlvbnNcIl0nIH0pKTtcbiAgcHJpdmF0ZSBlbnRyeXBvaW50c0lucHV0ID0gdGhpcy5sb2NhdG9yRm9yKE1hdFNlbGVjdEhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnW2Zvcm1Db250cm9sTmFtZT1cImVudHJ5cG9pbnRzXCJdJyB9KSk7XG4gIHByaXZhdGUgY29uZGl0aW9uSW5wdXQgPSB0aGlzLmxvY2F0b3JGb3IoTWF0SW5wdXRIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbE5hbWU9XCJjb25kaXRpb25cIl0nIH0pKTtcblxuICBwdWJsaWMgYXN5bmMgc2V0Rmxvd0Zvcm1WYWx1ZXMoZmxvdzoge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgY2hhbm5lbE9wZXJhdG9yPzogc3RyaW5nO1xuICAgIGNoYW5uZWw/OiBzdHJpbmc7XG4gICAgb3BlcmF0aW9ucz86IHN0cmluZ1tdO1xuICAgIGVudHJ5cG9pbnRzPzogc3RyaW5nW107XG4gICAgY29uZGl0aW9uPzogc3RyaW5nO1xuICB9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGZsb3cubmFtZSkge1xuICAgICAgY29uc3QgbmFtZUlucHV0ID0gYXdhaXQgdGhpcy5uYW1lSW5wdXQoKTtcbiAgICAgIGF3YWl0IG5hbWVJbnB1dC5zZXRWYWx1ZShmbG93Lm5hbWUpO1xuICAgIH1cbiAgICBpZiAoZmxvdy5jaGFubmVsT3BlcmF0b3IpIHtcbiAgICAgIGNvbnN0IGNoYW5uZWxPcGVyYXRvcklucHV0ID0gYXdhaXQgdGhpcy5jaGFubmVsT3BlcmF0b3JJbnB1dCgpO1xuICAgICAgY29uc3QgZW50cnlwb2ludHNJbnB1dCA9IGF3YWl0IHRoaXMuZW50cnlwb2ludHNJbnB1dCgpO1xuICAgICAgYXdhaXQgY2hhbm5lbE9wZXJhdG9ySW5wdXQub3BlbigpO1xuICAgICAgLy8gVW5zZWxlY3QgYWxsIG9wdGlvbnMgYmVmb3JlIHNlbGVjdGluZyB0aGUgbmV3IG9uZVxuICAgICAgZm9yIChjb25zdCBvcHRpb24gb2YgYXdhaXQgZW50cnlwb2ludHNJbnB1dC5nZXRPcHRpb25zKCkpIHtcbiAgICAgICAgaWYgKGF3YWl0IG9wdGlvbi5pc1NlbGVjdGVkKCkpIHtcbiAgICAgICAgICBhd2FpdCBvcHRpb24uY2xpY2soKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYXdhaXQgY2hhbm5lbE9wZXJhdG9ySW5wdXQuY2xpY2tPcHRpb25zKHsgdGV4dDogbmV3IFJlZ0V4cChmbG93LmNoYW5uZWxPcGVyYXRvciwgJ2knKSB9KTtcbiAgICB9XG4gICAgaWYgKGZsb3cuY2hhbm5lbCkge1xuICAgICAgY29uc3QgY2hhbm5lbElucHV0ID0gYXdhaXQgdGhpcy5jaGFubmVsSW5wdXQoKTtcbiAgICAgIGF3YWl0IGNoYW5uZWxJbnB1dC5zZXRWYWx1ZShmbG93LmNoYW5uZWwpO1xuICAgIH1cbiAgICBpZiAoZmxvdy5vcGVyYXRpb25zKSB7XG4gICAgICBjb25zdCBvcGVyYXRpb25zSW5wdXQgPSBhd2FpdCB0aGlzLm9wZXJhdGlvbnNJbnB1dCgpO1xuICAgICAgYXdhaXQgcGFyYWxsZWwoKCkgPT5cbiAgICAgICAgKGZsb3cub3BlcmF0aW9ucyA/PyBbXSkubWFwKGFzeW5jIG9wZXJhdGlvbiA9PiB7XG4gICAgICAgICAgYXdhaXQgb3BlcmF0aW9uc0lucHV0Lm9wZW4oKTtcbiAgICAgICAgICAvLyBVbnNlbGVjdCBhbGwgb3B0aW9ucyBiZWZvcmUgc2VsZWN0aW5nIHRoZSBuZXcgb25lXG4gICAgICAgICAgZm9yIChjb25zdCBvcHRpb24gb2YgYXdhaXQgb3BlcmF0aW9uc0lucHV0LmdldE9wdGlvbnMoKSkge1xuICAgICAgICAgICAgaWYgKGF3YWl0IG9wdGlvbi5pc1NlbGVjdGVkKCkpIHtcbiAgICAgICAgICAgICAgYXdhaXQgb3B0aW9uLmNsaWNrKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGF3YWl0IG9wZXJhdGlvbnNJbnB1dC5jbGlja09wdGlvbnMoeyB0ZXh0OiBuZXcgUmVnRXhwKG9wZXJhdGlvbiwgJ2knKSB9KTtcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH1cbiAgICBpZiAoZmxvdy5lbnRyeXBvaW50cykge1xuICAgICAgY29uc3QgZW50cnlwb2ludHNJbnB1dCA9IGF3YWl0IHRoaXMuZW50cnlwb2ludHNJbnB1dCgpO1xuICAgICAgYXdhaXQgZW50cnlwb2ludHNJbnB1dC5vcGVuKCk7XG4gICAgICAvLyBVbnNlbGVjdCBhbGwgb3B0aW9ucyBiZWZvcmUgc2VsZWN0aW5nIHRoZSBuZXcgb25lXG4gICAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBhd2FpdCBlbnRyeXBvaW50c0lucHV0LmdldE9wdGlvbnMoKSkge1xuICAgICAgICBpZiAoYXdhaXQgb3B0aW9uLmlzU2VsZWN0ZWQoKSkge1xuICAgICAgICAgIGF3YWl0IG9wdGlvbi5jbGljaygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhd2FpdCBwYXJhbGxlbCgoKSA9PlxuICAgICAgICAoZmxvdy5lbnRyeXBvaW50cyA/PyBbXSkubWFwKGFzeW5jIGVudHJ5cG9pbnQgPT4ge1xuICAgICAgICAgIGF3YWl0IGVudHJ5cG9pbnRzSW5wdXQuY2xpY2tPcHRpb25zKHsgdGV4dDogbmV3IFJlZ0V4cChlbnRyeXBvaW50LCAnaScpIH0pO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfVxuICAgIGlmIChmbG93LmNvbmRpdGlvbikge1xuICAgICAgY29uc3QgY29uZGl0aW9uSW5wdXQgPSBhd2FpdCB0aGlzLmNvbmRpdGlvbklucHV0KCk7XG4gICAgICBhd2FpdCBjb25kaXRpb25JbnB1dC5zZXRWYWx1ZShmbG93LmNvbmRpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldE5hbWUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5uYW1lSW5wdXQoKS50aGVuKGlucHV0ID0+IGlucHV0LmdldFZhbHVlKCkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldENoYW5uZWxPcGVyYXRvcigpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmNoYW5uZWxPcGVyYXRvcklucHV0KCkudGhlbihpbnB1dCA9PiBpbnB1dC5nZXRWYWx1ZVRleHQoKSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0Q2hhbm5lbCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmNoYW5uZWxJbnB1dCgpLnRoZW4oaW5wdXQgPT4gaW5wdXQuZ2V0VmFsdWUoKSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0T3BlcmF0aW9ucygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvbnNJbnB1dCgpLnRoZW4oaW5wdXQgPT4gaW5wdXQuZ2V0VmFsdWVUZXh0KCkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEVudHJ5cG9pbnRzKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuZW50cnlwb2ludHNJbnB1dCgpLnRoZW4oaW5wdXQgPT4gaW5wdXQuZ2V0VmFsdWVUZXh0KCkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldENvbmRpdGlvbigpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLmNvbmRpdGlvbklucHV0KCkudGhlbihpbnB1dCA9PiBpbnB1dC5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzYXZlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHRoaXMuZ2V0U2F2ZUJ0bigpO1xuICAgIGF3YWl0IGJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGNhbmNlbCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLmdldENhbmNlbEJ0bigpO1xuICAgIGF3YWl0IGJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEZvcm1WYWx1ZXMoKTogUHJvbWlzZTxHaW9Qb2xpY3lTdHVkaW9GbG93TWVzc2FnZUhhcm5lc3NEYXRhPiB7XG4gICAgY29uc3QgbmFtZSA9IGF3YWl0IHRoaXMuZ2V0TmFtZSgpO1xuICAgIGNvbnN0IGNoYW5uZWxPcGVyYXRvciA9IGF3YWl0IHRoaXMuZ2V0Q2hhbm5lbE9wZXJhdG9yKCk7XG4gICAgY29uc3QgY2hhbm5lbCA9IGF3YWl0IHRoaXMuZ2V0Q2hhbm5lbCgpO1xuICAgIGNvbnN0IGVudHJ5cG9pbnRzID0gKGF3YWl0IHRoaXMuZ2V0RW50cnlwb2ludHMoKSkuc3BsaXQoJywnKTtcbiAgICBjb25zdCBvcGVyYXRpb25zID0gKGF3YWl0IHRoaXMuZ2V0T3BlcmF0aW9ucygpKS5zcGxpdCgnLCcpO1xuICAgIGNvbnN0IGNvbmRpdGlvbiA9IGF3YWl0IHRoaXMuZ2V0Q29uZGl0aW9uKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWUsXG4gICAgICBjaGFubmVsLFxuICAgICAgY2hhbm5lbE9wZXJhdG9yLFxuICAgICAgZW50cnlwb2ludHMsXG4gICAgICBvcGVyYXRpb25zLFxuICAgICAgY29uZGl0aW9uLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,98 @@
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 { ComponentHarness } from '@angular/cdk/testing';
17
+ import { MatButtonHarness } from '@angular/material/button/testing';
18
+ import { MatInputHarness } from '@angular/material/input/testing';
19
+ import { MatSelectHarness } from '@angular/material/select/testing';
20
+ import { GioFormTagsInputHarness } from '@gravitee/ui-particles-angular';
21
+ export class GioPolicyStudioFlowProxyFormDialogHarness extends ComponentHarness {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.getSaveBtn = this.locatorFor(MatButtonHarness.with({ selector: '.actions__saveBtn' }));
25
+ this.getCancelBtn = this.locatorFor(MatButtonHarness.with({ selector: '.actions__cancelBtn' }));
26
+ this.nameInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="name"]' }));
27
+ this.pathOperatorInput = this.locatorFor(MatSelectHarness.with({ selector: '[formControlName="pathOperator"]' }));
28
+ this.pathInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="path"]' }));
29
+ this.methodsInput = this.locatorFor(GioFormTagsInputHarness.with({ selector: '[formControlName="methods"]' }));
30
+ this.conditionInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="condition"]' }));
31
+ }
32
+ static { this.hostSelector = 'gio-ps-flow-proxy-form-dialog'; }
33
+ async setFlowFormValues(flow) {
34
+ if (flow.name) {
35
+ const nameInput = await this.nameInput();
36
+ await nameInput.setValue(flow.name);
37
+ }
38
+ if (flow.pathOperator) {
39
+ const pathOperatorInput = await this.pathOperatorInput();
40
+ await pathOperatorInput.open();
41
+ // Unselect all options before selecting the new one
42
+ for (const option of await pathOperatorInput.getOptions()) {
43
+ if (await option.isSelected()) {
44
+ await option.click();
45
+ }
46
+ }
47
+ await pathOperatorInput.clickOptions({ text: new RegExp(flow.pathOperator, 'i') });
48
+ }
49
+ if (flow.path) {
50
+ const input = await this.pathInput();
51
+ await input.setValue(flow.path);
52
+ }
53
+ if (flow.methods) {
54
+ const methodsInput = await this.methodsInput();
55
+ await methodsInput.removeTag('ALL');
56
+ for (const method of flow.methods) {
57
+ await methodsInput.addTag(method);
58
+ }
59
+ }
60
+ if (flow.condition) {
61
+ const conditionInput = await this.conditionInput();
62
+ await conditionInput.setValue(flow.condition);
63
+ }
64
+ }
65
+ async getFlowFormValues() {
66
+ return {
67
+ name: await this.getFlowName(),
68
+ pathOperator: await this.getPathOperator(),
69
+ path: await this.getFlowPath(),
70
+ methods: await this.getMethods(),
71
+ condition: await this.getCondition(),
72
+ };
73
+ }
74
+ async getFlowName() {
75
+ return this.nameInput().then(input => input.getValue());
76
+ }
77
+ async getFlowPath() {
78
+ return this.pathInput().then(input => input.getValue());
79
+ }
80
+ async getPathOperator() {
81
+ return this.pathOperatorInput().then(input => input.getValueText());
82
+ }
83
+ async getMethods() {
84
+ return this.methodsInput().then(input => input.getTags());
85
+ }
86
+ async getCondition() {
87
+ return this.conditionInput().then(input => input.getValue());
88
+ }
89
+ async save() {
90
+ const button = await this.getSaveBtn();
91
+ await button.click();
92
+ }
93
+ async cancel() {
94
+ const button = await this.getCancelBtn();
95
+ await button.click();
96
+ }
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLWZsb3ctcHJveHktZm9ybS1kaWFsb2cuaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZmxvdy1mb3JtLWRpYWxvZy9mbG93LXByb3h5LWZvcm0tZGlhbG9nL2dpby1wcy1mbG93LXByb3h5LWZvcm0tZGlhbG9nLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFVekUsTUFBTSxPQUFPLHlDQUEwQyxTQUFRLGdCQUFnQjtJQUEvRTs7UUFHVSxlQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkYsaUJBQVksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxxQkFBcUIsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzRixjQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLDBCQUEwQixFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVGLHNCQUFpQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JB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QUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU0sS0FBSyxDQUFDLFdBQVc7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVNLEtBQUssQ0FBQyxlQUFlO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVNLEtBQUssQ0FBQyxVQUFVO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTSxLQUFLLENBQUMsWUFBWTtRQUN2QixPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU0sS0FBSyxDQUFDLElBQUk7UUFDZixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN2QyxNQUFNLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sS0FBSyxDQUFDLE1BQU07UUFDakIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDekMsTUFBTSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjIgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0QnV0dG9uSGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi90ZXN0aW5nJztcbmltcG9ydCB7IE1hdElucHV0SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0L3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0U2VsZWN0SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdC90ZXN0aW5nJztcbmltcG9ydCB7IEdpb0Zvcm1UYWdzSW5wdXRIYXJuZXNzIH0gZnJvbSAnQGdyYXZpdGVlL3VpLXBhcnRpY2xlcy1hbmd1bGFyJztcblxuZXhwb3J0IHR5cGUgR2lvUG9saWN5U3R1ZGlvRmxvd1Byb3h5SGFybmVzc0RhdGEgPSB7XG4gIG5hbWU6IHN0cmluZztcbiAgcGF0aE9wZXJhdG9yOiBzdHJpbmc7XG4gIHBhdGg6IHN0cmluZztcbiAgbWV0aG9kczogc3RyaW5nW107XG4gIGNvbmRpdGlvbjogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNsYXNzIEdpb1BvbGljeVN0dWRpb0Zsb3dQcm94eUZvcm1EaWFsb2dIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ2dpby1wcy1mbG93LXByb3h5LWZvcm0tZGlhbG9nJztcblxuICBwcml2YXRlIGdldFNhdmVCdG4gPSB0aGlzLmxvY2F0b3JGb3IoTWF0QnV0dG9uSGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICcuYWN0aW9uc19fc2F2ZUJ0bicgfSkpO1xuICBwcml2YXRlIGdldENhbmNlbEJ0biA9IHRoaXMubG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5hY3Rpb25zX19jYW5jZWxCdG4nIH0pKTtcbiAgcHJpdmF0ZSBuYW1lSW5wdXQgPSB0aGlzLmxvY2F0b3JGb3IoTWF0SW5wdXRIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCJdJyB9KSk7XG4gIHByaXZhdGUgcGF0aE9wZXJhdG9ySW5wdXQgPSB0aGlzLmxvY2F0b3JGb3IoTWF0U2VsZWN0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwicGF0aE9wZXJhdG9yXCJdJyB9KSk7XG4gIHByaXZhdGUgcGF0aElucHV0ID0gdGhpcy5sb2NhdG9yRm9yKE1hdElucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwicGF0aFwiXScgfSkpO1xuICBwcml2YXRlIG1ldGhvZHNJbnB1dCA9IHRoaXMubG9jYXRvckZvcihHaW9Gb3JtVGFnc0lucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwibWV0aG9kc1wiXScgfSkpO1xuICBwcml2YXRlIGNvbmRpdGlvbklucHV0ID0gdGhpcy5sb2NhdG9yRm9yKE1hdElucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwiY29uZGl0aW9uXCJdJyB9KSk7XG5cbiAgcHVibGljIGFzeW5jIHNldEZsb3dGb3JtVmFsdWVzKGZsb3c6IHtcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHBhdGhPcGVyYXRvcj86IHN0cmluZztcbiAgICBwYXRoPzogc3RyaW5nO1xuICAgIG1ldGhvZHM/OiBzdHJpbmdbXTtcbiAgICBjb25kaXRpb24/OiBzdHJpbmc7XG4gIH0pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoZmxvdy5uYW1lKSB7XG4gICAgICBjb25zdCBuYW1lSW5wdXQgPSBhd2FpdCB0aGlzLm5hbWVJbnB1dCgpO1xuICAgICAgYXdhaXQgbmFtZUlucHV0LnNldFZhbHVlKGZsb3cubmFtZSk7XG4gICAgfVxuICAgIGlmIChmbG93LnBhdGhPcGVyYXRvcikge1xuICAgICAgY29uc3QgcGF0aE9wZXJhdG9ySW5wdXQgPSBhd2FpdCB0aGlzLnBhdGhPcGVyYXRvcklucHV0KCk7XG4gICAgICBhd2FpdCBwYXRoT3BlcmF0b3JJbnB1dC5vcGVuKCk7XG5cbiAgICAgIC8vIFVuc2VsZWN0IGFsbCBvcHRpb25zIGJlZm9yZSBzZWxlY3RpbmcgdGhlIG5ldyBvbmVcbiAgICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIGF3YWl0IHBhdGhPcGVyYXRvcklucHV0LmdldE9wdGlvbnMoKSkge1xuICAgICAgICBpZiAoYXdhaXQgb3B0aW9uLmlzU2VsZWN0ZWQoKSkge1xuICAgICAgICAgIGF3YWl0IG9wdGlvbi5jbGljaygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhd2FpdCBwYXRoT3BlcmF0b3JJbnB1dC5jbGlja09wdGlvbnMoeyB0ZXh0OiBuZXcgUmVnRXhwKGZsb3cucGF0aE9wZXJhdG9yLCAnaScpIH0pO1xuICAgIH1cbiAgICBpZiAoZmxvdy5wYXRoKSB7XG4gICAgICBjb25zdCBpbnB1dCA9IGF3YWl0IHRoaXMucGF0aElucHV0KCk7XG4gICAgICBhd2FpdCBpbnB1dC5zZXRWYWx1ZShmbG93LnBhdGgpO1xuICAgIH1cbiAgICBpZiAoZmxvdy5tZXRob2RzKSB7XG4gICAgICBjb25zdCBtZXRob2RzSW5wdXQgPSBhd2FpdCB0aGlzLm1ldGhvZHNJbnB1dCgpO1xuICAgICAgYXdhaXQgbWV0aG9kc0lucHV0LnJlbW92ZVRhZygnQUxMJyk7XG4gICAgICBmb3IgKGNvbnN0IG1ldGhvZCBvZiBmbG93Lm1ldGhvZHMpIHtcbiAgICAgICAgYXdhaXQgbWV0aG9kc0lucHV0LmFkZFRhZyhtZXRob2QpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoZmxvdy5jb25kaXRpb24pIHtcbiAgICAgIGNvbnN0IGNvbmRpdGlvbklucHV0ID0gYXdhaXQgdGhpcy5jb25kaXRpb25JbnB1dCgpO1xuICAgICAgYXdhaXQgY29uZGl0aW9uSW5wdXQuc2V0VmFsdWUoZmxvdy5jb25kaXRpb24pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRGbG93Rm9ybVZhbHVlcygpOiBQcm9taXNlPEdpb1BvbGljeVN0dWRpb0Zsb3dQcm94eUhhcm5lc3NEYXRhPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWU6IGF3YWl0IHRoaXMuZ2V0Rmxvd05hbWUoKSxcbiAgICAgIHBhdGhPcGVyYXRvcjogYXdhaXQgdGhpcy5nZXRQYXRoT3BlcmF0b3IoKSxcbiAgICAgIHBhdGg6IGF3YWl0IHRoaXMuZ2V0Rmxvd1BhdGgoKSxcbiAgICAgIG1ldGhvZHM6IGF3YWl0IHRoaXMuZ2V0TWV0aG9kcygpLFxuICAgICAgY29uZGl0aW9uOiBhd2FpdCB0aGlzLmdldENvbmRpdGlvbigpLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0Rmxvd05hbWUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5uYW1lSW5wdXQoKS50aGVuKGlucHV0ID0+IGlucHV0LmdldFZhbHVlKCkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEZsb3dQYXRoKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMucGF0aElucHV0KCkudGhlbihpbnB1dCA9PiBpbnB1dC5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRQYXRoT3BlcmF0b3IoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5wYXRoT3BlcmF0b3JJbnB1dCgpLnRoZW4oaW5wdXQgPT4gaW5wdXQuZ2V0VmFsdWVUZXh0KCkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldE1ldGhvZHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIHJldHVybiB0aGlzLm1ldGhvZHNJbnB1dCgpLnRoZW4oaW5wdXQgPT4gaW5wdXQuZ2V0VGFncygpKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRDb25kaXRpb24oKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5jb25kaXRpb25JbnB1dCgpLnRoZW4oaW5wdXQgPT4gaW5wdXQuZ2V0VmFsdWUoKSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2F2ZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLmdldFNhdmVCdG4oKTtcbiAgICBhd2FpdCBidXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjYW5jZWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYnV0dG9uID0gYXdhaXQgdGhpcy5nZXRDYW5jZWxCdG4oKTtcbiAgICBhd2FpdCBidXR0b24uY2xpY2soKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,71 @@
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 { ComponentHarness, parallel } from '@angular/cdk/testing';
17
+ import { MatButtonHarness } from '@angular/material/button/testing';
18
+ import { MatIconHarness } from '@angular/material/icon/testing';
19
+ import { DivHarness } from '@gravitee/ui-particles-angular/testing';
20
+ export class GioPolicyStudioFlowsMenuHarness extends ComponentHarness {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.locateFlowsGroups = this.locatorForAll(DivHarness.with({ selector: '.list__flowsGroup' }));
24
+ this.locateFlowByText = (text) => this.locatorForOptional(DivHarness.with({ selector: '.list__flowsGroup__flow', text }));
25
+ this.locateGroupByText = (text) => this.locatorForOptional(DivHarness.with({ selector: '.list__flowsGroup', text }));
26
+ this.locateSelectedFlow = this.locatorForOptional(DivHarness.with({ selector: '.list__flowsGroup__flow.selected' }));
27
+ }
28
+ static { this.hostSelector = 'gio-ps-flows-menu'; }
29
+ async getAllFlowsGroups() {
30
+ const flowsGroups = await this.locateFlowsGroups();
31
+ return parallel(() => flowsGroups.map(async (flowsGroup) => {
32
+ const flowsGroupName = await flowsGroup.getText({ childSelector: '.list__flowsGroup__header__label' });
33
+ const flowsDiv = await flowsGroup.childLocatorForAll(DivHarness.with({ selector: '.list__flowsGroup__flow' }))();
34
+ const flowsInfos = parallel(() => flowsDiv.map(async (flowDiv) => {
35
+ return {
36
+ name: await flowDiv.getText({ childSelector: '.list__flowsGroup__flow__name' }),
37
+ infos: await flowDiv.getText({ childSelector: '.list__flowsGroup__flow__infos' }),
38
+ isSelected: await flowDiv.host().then(host => host.hasClass('selected')),
39
+ hasCondition: !!(await flowDiv.childLocatorFor(MatIconHarness.with({ name: 'gio:if' }))),
40
+ };
41
+ }));
42
+ return {
43
+ name: flowsGroupName,
44
+ flows: await flowsInfos,
45
+ };
46
+ }));
47
+ }
48
+ async getSelectedFlow() {
49
+ const selectedFlow = await this.locateSelectedFlow();
50
+ return selectedFlow ? { name: await selectedFlow.getText({ childSelector: '.list__flowsGroup__flow__name' }) } : null;
51
+ }
52
+ /**
53
+ * Select a flow by it's text content
54
+ */
55
+ async selectFlow(flowText) {
56
+ const flowsGroups = await this.locateFlowByText(flowText)();
57
+ if (flowsGroups) {
58
+ await flowsGroups.host().then(host => host.click());
59
+ }
60
+ }
61
+ async addFlow(groupName) {
62
+ const flowsGroups = await this.locateGroupByText(groupName)();
63
+ if (flowsGroups) {
64
+ await (await flowsGroups.childLocatorFor(MatButtonHarness.with({ ancestor: '.list__flowsGroup__header__addBtn' }))()).click();
65
+ }
66
+ }
67
+ async openFlowExecutionConfig() {
68
+ await (await this.locatorFor(MatButtonHarness.with({ selector: '.header__configBtn_edit' }))())?.click();
69
+ }
70
+ }
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLWZsb3dzLW1lbnUuaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZmxvd3MtbWVudS9naW8tcHMtZmxvd3MtbWVudS5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFcEUsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGdCQUFnQjtJQUFyRTs7UUFHVSxzQkFBaUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0YscUJBQWdCLEdBQUcsQ0FBQyxJQUFxQixFQUFFLEVBQUUsQ0FDbkQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUseUJBQXlCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRW5GLHNCQUFpQixHQUFHLENBQUMsSUFBcUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWhJLHVCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxD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QUMsdUJBQXVCO1FBQ2xDLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLHlCQUF5QixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUMzRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMiBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50SGFybmVzcywgcGFyYWxsZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBNYXRCdXR0b25IYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0SWNvbkhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uL3Rlc3RpbmcnO1xuaW1wb3J0IHsgRGl2SGFybmVzcyB9IGZyb20gJ0BncmF2aXRlZS91aS1wYXJ0aWNsZXMtYW5ndWxhci90ZXN0aW5nJztcblxuZXhwb3J0IGNsYXNzIEdpb1BvbGljeVN0dWRpb0Zsb3dzTWVudUhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnZ2lvLXBzLWZsb3dzLW1lbnUnO1xuXG4gIHByaXZhdGUgbG9jYXRlRmxvd3NHcm91cHMgPSB0aGlzLmxvY2F0b3JGb3JBbGwoRGl2SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICcubGlzdF9fZmxvd3NHcm91cCcgfSkpO1xuICBwcml2YXRlIGxvY2F0ZUZsb3dCeVRleHQgPSAodGV4dDogc3RyaW5nIHwgUmVnRXhwKSA9PlxuICAgIHRoaXMubG9jYXRvckZvck9wdGlvbmFsKERpdkhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnLmxpc3RfX2Zsb3dzR3JvdXBfX2Zsb3cnLCB0ZXh0IH0pKTtcblxuICBwdWJsaWMgbG9jYXRlR3JvdXBCeVRleHQgPSAodGV4dDogc3RyaW5nIHwgUmVnRXhwKSA9PiB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChEaXZIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5saXN0X19mbG93c0dyb3VwJywgdGV4dCB9KSk7XG5cbiAgcHJpdmF0ZSBsb2NhdGVTZWxlY3RlZEZsb3cgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChEaXZIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5saXN0X19mbG93c0dyb3VwX19mbG93LnNlbGVjdGVkJyB9KSk7XG5cbiAgcHVibGljIGFzeW5jIGdldEFsbEZsb3dzR3JvdXBzKCk6IFByb21pc2U8XG4gICAge1xuICAgICAgbmFtZTogc3RyaW5nIHwgbnVsbDtcbiAgICAgIGZsb3dzOiB7XG4gICAgICAgIG5hbWU6IHN0cmluZyB8IG51bGw7XG4gICAgICAgIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG4gICAgICAgIGluZm9zOiBzdHJpbmcgfCBudWxsO1xuICAgICAgICBoYXNDb25kaXRpb246IGJvb2xlYW47XG4gICAgICB9W107XG4gICAgfVtdXG4gID4ge1xuICAgIGNvbnN0IGZsb3dzR3JvdXBzID0gYXdhaXQgdGhpcy5sb2NhdGVGbG93c0dyb3VwcygpO1xuXG4gICAgcmV0dXJuIHBhcmFsbGVsKCgpID0+XG4gICAgICBmbG93c0dyb3Vwcy5tYXAoYXN5bmMgZmxvd3NHcm91cCA9PiB7XG4gICAgICAgIGNvbnN0IGZsb3dzR3JvdXBOYW1lID0gYXdhaXQgZmxvd3NHcm91cC5nZXRUZXh0KHsgY2hpbGRTZWxlY3RvcjogJy5saXN0X19mbG93c0dyb3VwX19oZWFkZXJfX2xhYmVsJyB9KTtcblxuICAgICAgICBjb25zdCBmbG93c0RpdiA9IGF3YWl0IGZsb3dzR3JvdXAuY2hpbGRMb2NhdG9yRm9yQWxsKERpdkhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnLmxpc3RfX2Zsb3dzR3JvdXBfX2Zsb3cnIH0pKSgpO1xuXG4gICAgICAgIGNvbnN0IGZsb3dzSW5mb3MgPSBwYXJhbGxlbCgoKSA9PlxuICAgICAgICAgIGZsb3dzRGl2Lm1hcChhc3luYyBmbG93RGl2ID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIG5hbWU6IGF3YWl0IGZsb3dEaXYuZ2V0VGV4dCh7IGNoaWxkU2VsZWN0b3I6ICcubGlzdF9fZmxvd3NHcm91cF9fZmxvd19fbmFtZScgfSksXG4gICAgICAgICAgICAgIGluZm9zOiBhd2FpdCBmbG93RGl2LmdldFRleHQoeyBjaGlsZFNlbGVjdG9yOiAnLmxpc3RfX2Zsb3dzR3JvdXBfX2Zsb3dfX2luZm9zJyB9KSxcbiAgICAgICAgICAgICAgaXNTZWxlY3RlZDogYXdhaXQgZmxvd0Rpdi5ob3N0KCkudGhlbihob3N0ID0+IGhvc3QuaGFzQ2xhc3MoJ3NlbGVjdGVkJykpLFxuICAgICAgICAgICAgICBoYXNDb25kaXRpb246ICEhKGF3YWl0IGZsb3dEaXYuY2hpbGRMb2NhdG9yRm9yKE1hdEljb25IYXJuZXNzLndpdGgoeyBuYW1lOiAnZ2lvOmlmJyB9KSkpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG5hbWU6IGZsb3dzR3JvdXBOYW1lLFxuICAgICAgICAgIGZsb3dzOiBhd2FpdCBmbG93c0luZm9zLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3RlZEZsb3coKTogUHJvbWlzZTx7IG5hbWU6IHN0cmluZyB8IG51bGwgfSB8IG51bGw+IHtcbiAgICBjb25zdCBzZWxlY3RlZEZsb3cgPSBhd2FpdCB0aGlzLmxvY2F0ZVNlbGVjdGVkRmxvdygpO1xuXG4gICAgcmV0dXJuIHNlbGVjdGVkRmxvdyA/IHsgbmFtZTogYXdhaXQgc2VsZWN0ZWRGbG93LmdldFRleHQoeyBjaGlsZFNlbGVjdG9yOiAnLmxpc3RfX2Zsb3dzR3JvdXBfX2Zsb3dfX25hbWUnIH0pIH0gOiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdCBhIGZsb3cgYnkgaXQncyB0ZXh0IGNvbnRlbnRcbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZWxlY3RGbG93KGZsb3dUZXh0OiBzdHJpbmcgfCBSZWdFeHApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBmbG93c0dyb3VwcyA9IGF3YWl0IHRoaXMubG9jYXRlRmxvd0J5VGV4dChmbG93VGV4dCkoKTtcblxuICAgIGlmIChmbG93c0dyb3Vwcykge1xuICAgICAgYXdhaXQgZmxvd3NHcm91cHMuaG9zdCgpLnRoZW4oaG9zdCA9PiBob3N0LmNsaWNrKCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBhZGRGbG93KGdyb3VwTmFtZTogc3RyaW5nIHwgUmVnRXhwKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZmxvd3NHcm91cHMgPSBhd2FpdCB0aGlzLmxvY2F0ZUdyb3VwQnlUZXh0KGdyb3VwTmFtZSkoKTtcblxuICAgIGlmIChmbG93c0dyb3Vwcykge1xuICAgICAgYXdhaXQgKGF3YWl0IGZsb3dzR3JvdXBzLmNoaWxkTG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBhbmNlc3RvcjogJy5saXN0X19mbG93c0dyb3VwX19oZWFkZXJfX2FkZEJ0bicgfSkpKCkpLmNsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIG9wZW5GbG93RXhlY3V0aW9uQ29uZmlnKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IChhd2FpdCB0aGlzLmxvY2F0b3JGb3IoTWF0QnV0dG9uSGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICcuaGVhZGVyX19jb25maWdCdG5fZWRpdCcgfSkpKCkpPy5jbGljaygpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,87 @@
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 { ComponentHarness, parallel } from '@angular/cdk/testing';
17
+ import { MatButtonHarness } from '@angular/material/button/testing';
18
+ import { DivHarness } from '@gravitee/ui-particles-angular/testing';
19
+ import { MatChipListboxHarness } from '@angular/material/chips/testing';
20
+ import { MatInputHarness } from '@angular/material/input/testing';
21
+ import { GioPolicyStudioStepFormHarness } from '../step-form/gio-ps-step-form.harness';
22
+ export class GioPolicyStudioPoliciesCatalogDialogHarness extends ComponentHarness {
23
+ constructor() {
24
+ super(...arguments);
25
+ this.policiesLocator = this.locatorForAll(DivHarness.with({ selector: '.policiesCatalog__list__policy' }));
26
+ this.getCategoriesFilter = this.locatorForOptional(MatChipListboxHarness.with({ selector: '[formControlName="categories"]' }));
27
+ }
28
+ static { this.hostSelector = 'gio-ps-policies-catalog-dialog'; }
29
+ async getPhase() {
30
+ const phase = await this.locatorFor('.title__phase')();
31
+ return phase.text();
32
+ }
33
+ async getPoliciesName() {
34
+ const policies = await this.locatorForAll('.policiesCatalog__list__policy__head__name')();
35
+ return parallel(() => policies.map(policy => policy.text()));
36
+ }
37
+ async selectPolicy(policyName) {
38
+ const policies = await this.policiesLocator();
39
+ for (const policy of policies) {
40
+ const name = await policy.getText({ childSelector: '.policiesCatalog__list__policy__head__name' });
41
+ if (name === policyName) {
42
+ const selectBtn = await policy.childLocatorFor(MatButtonHarness.with({ selector: '.policiesCatalog__list__policy__selectBtn' }))();
43
+ await selectBtn.click();
44
+ return;
45
+ }
46
+ }
47
+ throw new Error(`Policy ${policyName} not found`);
48
+ }
49
+ async getSelectedPolicyName() {
50
+ const policy = await this.locatorFor('.policyForm__info__head__name')();
51
+ return policy.text();
52
+ }
53
+ async hasRequestUpgradeButton() {
54
+ const requestUpgradeButton = await this.locatorForOptional(MatButtonHarness.with({ text: 'Request upgrade' }))();
55
+ return !!requestUpgradeButton;
56
+ }
57
+ async clickAddPolicyButton() {
58
+ const addBtn = await this.locatorFor(MatButtonHarness.with({ selector: '.actions__addBtn' }))();
59
+ await addBtn.click();
60
+ }
61
+ async getStepForm() {
62
+ return await this.locatorFor(GioPolicyStudioStepFormHarness)();
63
+ }
64
+ async getCategoriesSelection() {
65
+ const chipList = await this.getCategoriesFilter();
66
+ if (!chipList) {
67
+ return [];
68
+ }
69
+ const chips = await chipList.getChips();
70
+ return parallel(() => chips.map(async (chip) => {
71
+ const selected = await chip.isSelected();
72
+ const name = await chip.getText();
73
+ return { name, selected };
74
+ }));
75
+ }
76
+ async selectCategoryFilter(categoryName) {
77
+ const chipList = await this.getCategoriesFilter();
78
+ await chipList?.selectChips({ text: categoryName });
79
+ }
80
+ async searchFilter(search) {
81
+ const searchInput = await this.locatorFor(MatInputHarness.with({ selector: '[formControlName="search"]' }))();
82
+ if (searchInput) {
83
+ await searchInput.setValue(search);
84
+ }
85
+ }
86
+ }
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLXBvbGljaWVzLWNhdGFsb2ctZGlhbG9nLmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wb2xpY3ktc3R1ZGlvLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL3BvbGljaWVzLWNhdGFsb2ctZGlhbG9nL2dpby1wcy1wb2xpY2llcy1jYXRhbG9nLWRpYWxvZy5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQXdCLE1BQU0saUNBQWlDLENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWxFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRXZGLE1BQU0sT0FBTywyQ0FBNEMsU0FBUSxnQkFBZ0I7SUFBakY7O1FBR1Usb0JBQWUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsZ0NBQWdDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFdEcsd0JBQW1CLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxnQ0FBZ0MsRUFBRSxDQUFDLENBQUMsQ0FBQztJQXVFcEksQ0FBQzthQTNFZSxpQkFBWSxHQUFHLGdDQUFnQyxDQUFDO0lBS3ZELEtBQUssQ0FBQyxRQUFRO1FBQ25CLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFVB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LG9CQUFvQixDQUFDLFlBQW9CO1FBQ3BELE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDbEQsTUFBTSxRQUFRLEVBQUUsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBYztRQUN0QyxNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSw0QkFBNEIsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlHLElBQUksV0FBVyxFQUFFO1lBQ2YsTUFBTSxXQUFXLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjIgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzLCBwYXJhbGxlbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IE1hdEJ1dHRvbkhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24vdGVzdGluZyc7XG5pbXBvcnQgeyBEaXZIYXJuZXNzIH0gZnJvbSAnQGdyYXZpdGVlL3VpLXBhcnRpY2xlcy1hbmd1bGFyL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0Q2hpcExpc3Rib3hIYXJuZXNzLCBNYXRDaGlwT3B0aW9uSGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0SW5wdXRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQvdGVzdGluZyc7XG5cbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb1N0ZXBGb3JtSGFybmVzcyB9IGZyb20gJy4uL3N0ZXAtZm9ybS9naW8tcHMtc3RlcC1mb3JtLmhhcm5lc3MnO1xuXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5U3R1ZGlvUG9saWNpZXNDYXRhbG9nRGlhbG9nSGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdnaW8tcHMtcG9saWNpZXMtY2F0YWxvZy1kaWFsb2cnO1xuXG4gIHByaXZhdGUgcG9saWNpZXNMb2NhdG9yID0gdGhpcy5sb2NhdG9yRm9yQWxsKERpdkhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnLnBvbGljaWVzQ2F0YWxvZ19fbGlzdF9fcG9saWN5JyB9KSk7XG5cbiAgcHJpdmF0ZSBnZXRDYXRlZ29yaWVzRmlsdGVyID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoTWF0Q2hpcExpc3Rib3hIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbE5hbWU9XCJjYXRlZ29yaWVzXCJdJyB9KSk7XG4gIHB1YmxpYyBhc3luYyBnZXRQaGFzZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGNvbnN0IHBoYXNlID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yKCcudGl0bGVfX3BoYXNlJykoKTtcbiAgICByZXR1cm4gcGhhc2UudGV4dCgpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFBvbGljaWVzTmFtZSgpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgcG9saWNpZXMgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3JBbGwoJy5wb2xpY2llc0NhdGFsb2dfX2xpc3RfX3BvbGljeV9faGVhZF9fbmFtZScpKCk7XG4gICAgcmV0dXJuIHBhcmFsbGVsKCgpID0+IHBvbGljaWVzLm1hcChwb2xpY3kgPT4gcG9saWN5LnRleHQoKSkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlbGVjdFBvbGljeShwb2xpY3lOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBwb2xpY2llcyA9IGF3YWl0IHRoaXMucG9saWNpZXNMb2NhdG9yKCk7XG4gICAgZm9yIChjb25zdCBwb2xpY3kgb2YgcG9saWNpZXMpIHtcbiAgICAgIGNvbnN0IG5hbWUgPSBhd2FpdCBwb2xpY3kuZ2V0VGV4dCh7IGNoaWxkU2VsZWN0b3I6ICcucG9saWNpZXNDYXRhbG9nX19saXN0X19wb2xpY3lfX2hlYWRfX25hbWUnIH0pO1xuICAgICAgaWYgKG5hbWUgPT09IHBvbGljeU5hbWUpIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0QnRuID0gYXdhaXQgcG9saWN5LmNoaWxkTG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5wb2xpY2llc0NhdGFsb2dfX2xpc3RfX3BvbGljeV9fc2VsZWN0QnRuJyB9KSkoKTtcbiAgICAgICAgYXdhaXQgc2VsZWN0QnRuLmNsaWNrKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKGBQb2xpY3kgJHtwb2xpY3lOYW1lfSBub3QgZm91bmRgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3RlZFBvbGljeU5hbWUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBwb2xpY3kgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3IoJy5wb2xpY3lGb3JtX19pbmZvX19oZWFkX19uYW1lJykoKTtcbiAgICByZXR1cm4gcG9saWN5LnRleHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBoYXNSZXF1ZXN0VXBncmFkZUJ1dHRvbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXF1ZXN0VXBncmFkZUJ1dHRvbiA9IGF3YWl0IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKE1hdEJ1dHRvbkhhcm5lc3Mud2l0aCh7IHRleHQ6ICdSZXF1ZXN0IHVwZ3JhZGUnIH0pKSgpO1xuICAgIHJldHVybiAhIXJlcXVlc3RVcGdyYWRlQnV0dG9uO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGNsaWNrQWRkUG9saWN5QnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGFkZEJ0biA9IGF3YWl0IHRoaXMubG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5hY3Rpb25zX19hZGRCdG4nIH0pKSgpO1xuICAgIGF3YWl0IGFkZEJ0bi5jbGljaygpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFN0ZXBGb3JtKCk6IFByb21pc2U8R2lvUG9saWN5U3R1ZGlvU3RlcEZvcm1IYXJuZXNzPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMubG9jYXRvckZvcihHaW9Qb2xpY3lTdHVkaW9TdGVwRm9ybUhhcm5lc3MpKCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0Q2F0ZWdvcmllc1NlbGVjdGlvbigpOiBQcm9taXNlPHsgbmFtZTogc3RyaW5nOyBzZWxlY3RlZDogYm9vbGVhbiB9W10+IHtcbiAgICBjb25zdCBjaGlwTGlzdCA9IGF3YWl0IHRoaXMuZ2V0Q2F0ZWdvcmllc0ZpbHRlcigpO1xuICAgIGlmICghY2hpcExpc3QpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBjaGlwczogTWF0Q2hpcE9wdGlvbkhhcm5lc3NbXSA9IGF3YWl0IGNoaXBMaXN0LmdldENoaXBzKCk7XG5cbiAgICByZXR1cm4gcGFyYWxsZWwoKCkgPT5cbiAgICAgIGNoaXBzLm1hcChhc3luYyBjaGlwID0+IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBhd2FpdCBjaGlwLmlzU2VsZWN0ZWQoKTtcbiAgICAgICAgY29uc3QgbmFtZSA9IGF3YWl0IGNoaXAuZ2V0VGV4dCgpO1xuICAgICAgICByZXR1cm4geyBuYW1lLCBzZWxlY3RlZCB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzZWxlY3RDYXRlZ29yeUZpbHRlcihjYXRlZ29yeU5hbWU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNoaXBMaXN0ID0gYXdhaXQgdGhpcy5nZXRDYXRlZ29yaWVzRmlsdGVyKCk7XG4gICAgYXdhaXQgY2hpcExpc3Q/LnNlbGVjdENoaXBzKHsgdGV4dDogY2F0ZWdvcnlOYW1lIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHNlYXJjaEZpbHRlcihzZWFyY2g6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHNlYXJjaElucHV0ID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yKE1hdElucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwic2VhcmNoXCJdJyB9KSkoKTtcbiAgICBpZiAoc2VhcmNoSW5wdXQpIHtcbiAgICAgIGF3YWl0IHNlYXJjaElucHV0LnNldFZhbHVlKHNlYXJjaCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -16,6 +16,7 @@
16
16
  import { ComponentHarness } from '@angular/cdk/testing';
17
17
  import { GioPolicyStudioStepFormHarness } from '../step-form/gio-ps-step-form.harness';
18
18
  export class GioPolicyStudioStepEditDialogHarness extends ComponentHarness {
19
+ static { this.hostSelector = 'gio-ps-step-edit-dialog'; }
19
20
  async getPolicyName() {
20
21
  return (await this.locatorFor('.title__name')()).text();
21
22
  }
@@ -26,5 +27,4 @@ export class GioPolicyStudioStepEditDialogHarness extends ComponentHarness {
26
27
  return (await this.locatorFor('.actions__saveBtn')()).click();
27
28
  }
28
29
  }
29
- GioPolicyStudioStepEditDialogHarness.hostSelector = 'gio-ps-step-edit-dialog';
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLXN0ZXAtZWRpdC1kaWFsb2cuaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvc3RlcC1lZGl0LWRpYWxvZy9naW8tcHMtc3RlcC1lZGl0LWRpYWxvZy5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdkYsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLGdCQUFnQjtJQUdqRSxLQUFLLENBQUMsYUFBYTtRQUN4QixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxRCxDQUFDO0lBRU0sS0FBSyxDQUFDLFdBQVc7UUFDdEIsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDO0lBQ2pFLENBQUM7SUFFTSxLQUFLLENBQUMsSUFBSTtRQUNmLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEUsQ0FBQzs7QUFaYSxpREFBWSxHQUFHLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMiBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5cbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb1N0ZXBGb3JtSGFybmVzcyB9IGZyb20gJy4uL3N0ZXAtZm9ybS9naW8tcHMtc3RlcC1mb3JtLmhhcm5lc3MnO1xuXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5U3R1ZGlvU3RlcEVkaXREaWFsb2dIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ2dpby1wcy1zdGVwLWVkaXQtZGlhbG9nJztcblxuICBwdWJsaWMgYXN5bmMgZ2V0UG9saWN5TmFtZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5sb2NhdG9yRm9yKCcudGl0bGVfX25hbWUnKSgpKS50ZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0U3RlcEZvcm0oKTogUHJvbWlzZTxHaW9Qb2xpY3lTdHVkaW9TdGVwRm9ybUhhcm5lc3M+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5sb2NhdG9yRm9yKEdpb1BvbGljeVN0dWRpb1N0ZXBGb3JtSGFybmVzcykoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzYXZlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5sb2NhdG9yRm9yKCcuYWN0aW9uc19fc2F2ZUJ0bicpKCkpLmNsaWNrKCk7XG4gIH1cbn1cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLXN0ZXAtZWRpdC1kaWFsb2cuaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvc3RlcC1lZGl0LWRpYWxvZy9naW8tcHMtc3RlcC1lZGl0LWRpYWxvZy5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFdkYsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLGdCQUFnQjthQUMxRCxpQkFBWSxHQUFHLHlCQUF5QixDQUFDO0lBRWhELEtBQUssQ0FBQyxhQUFhO1FBQ3hCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFELENBQUM7SUFFTSxLQUFLLENBQUMsV0FBVztRQUN0QixPQUFPLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUM7SUFDakUsQ0FBQztJQUVNLEtBQUssQ0FBQyxJQUFJO1FBQ2YsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNoRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMiBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7IENvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5cbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb1N0ZXBGb3JtSGFybmVzcyB9IGZyb20gJy4uL3N0ZXAtZm9ybS9naW8tcHMtc3RlcC1mb3JtLmhhcm5lc3MnO1xuXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5U3R1ZGlvU3RlcEVkaXREaWFsb2dIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ2dpby1wcy1zdGVwLWVkaXQtZGlhbG9nJztcblxuICBwdWJsaWMgYXN5bmMgZ2V0UG9saWN5TmFtZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5sb2NhdG9yRm9yKCcudGl0bGVfX25hbWUnKSgpKS50ZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0U3RlcEZvcm0oKTogUHJvbWlzZTxHaW9Qb2xpY3lTdHVkaW9TdGVwRm9ybUhhcm5lc3M+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5sb2NhdG9yRm9yKEdpb1BvbGljeVN0dWRpb1N0ZXBGb3JtSGFybmVzcykoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzYXZlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5sb2NhdG9yRm9yKCcuYWN0aW9uc19fc2F2ZUJ0bicpKCkpLmNsaWNrKCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,49 @@
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 { ComponentHarness } from '@angular/cdk/testing';
17
+ import { MatInputHarness } from '@angular/material/input/testing';
18
+ export class GioPolicyStudioStepFormHarness extends ComponentHarness {
19
+ constructor() {
20
+ super(...arguments);
21
+ this.getDescriptionInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="description"]' }));
22
+ this.getConditionInput = this.locatorFor(MatInputHarness.with({ selector: '[formControlName="condition"]' }));
23
+ }
24
+ static { this.hostSelector = 'gio-ps-step-form'; }
25
+ async setStepForm(stepForm) {
26
+ if (stepForm.description) {
27
+ const descriptionInput = await this.getDescriptionInput();
28
+ await descriptionInput.setValue(stepForm.description);
29
+ }
30
+ if (stepForm.condition) {
31
+ const conditionInput = await this.getConditionInput();
32
+ await conditionInput.setValue(stepForm.condition);
33
+ }
34
+ if (stepForm.waitForPolicyFormCompletionCb) {
35
+ await stepForm.waitForPolicyFormCompletionCb(this.locatorFactory);
36
+ }
37
+ }
38
+ async getStepFormValue() {
39
+ const descriptionInput = await this.getDescriptionInput();
40
+ return {
41
+ description: await descriptionInput.getValue(),
42
+ };
43
+ }
44
+ async getDocumentation() {
45
+ const documentation = await this.locatorFor('.documentation__content > gio-asciidoctor')();
46
+ return documentation.getAttribute('ng-reflect-content');
47
+ }
48
+ }
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBzLXN0ZXAtZm9ybS5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcG9saWN5LXN0dWRpby1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zdGVwLWZvcm0vZ2lvLXBzLXN0ZXAtZm9ybS5oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsT0FBTyxFQUFFLGdCQUFnQixFQUFrQixNQUFNLHNCQUFzQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQVFsRSxNQUFNLE9BQU8sOEJBQStCLFNBQVEsZ0JBQWdCO0lBQXBFOztRQUdVLHdCQUFtQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxpQ0FBaUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU3RyxzQkFBaUIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsK0JBQStCLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUErQm5ILENBQUM7YUFuQ2UsaUJBQVksR0FBRyxrQkFBa0IsQ0FBQztJQU16QyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQWtCO1FBQ3pDLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUN4QixNQUFNLGdCQUFnQixHQUFHLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDMUQsTUFBTSxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxRQUFRLENBQUMsU0FBUyxFQUFFO1lBQ3RCLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDdEQsTUFBTSxjQUFjLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNuRDtRQUVELElBQUksUUFBUSxDQUFDLDZCQUE2QixFQUFFO1lBQzFDLE1BQU0sUUFBUSxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNuRTtJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsZ0JBQWdCO1FBRzNCLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUUxRCxPQUFPO1lBQ0wsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUMsUUFBUSxFQUFFO1NBQy9DLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLGdCQUFnQjtRQUMzQixNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsMkNBQTJDLENBQUMsRUFBRSxDQUFDO1FBQzNGLE9BQU8sYUFBYSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDIyIFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzLCBMb2NhdG9yRmFjdG9yeSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IE1hdElucHV0SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0L3Rlc3RpbmcnO1xuXG5leHBvcnQgdHlwZSBTdGVwRm9ybSA9IHtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGNvbmRpdGlvbj86IHN0cmluZztcbiAgLy8gQ2FsbGJhY2sgdG8gYWxsb3cgdG8gZmlsbCB0aGUgZmllbGRzIG9mIHRoZSBqc29uU2NoZW1hRm9ybSBzcGVjaWZpYyB0byBlYWNoIHBvbGljeSwgaWYgbmVjZXNzYXJ5LiBVc2VmdWwgaWYgc29tZSBhcmUgcmVxdWlyZWQuXG4gIHdhaXRGb3JQb2xpY3lGb3JtQ29tcGxldGlvbkNiPzogKGxvY2F0b3I6IExvY2F0b3JGYWN0b3J5KSA9PiBQcm9taXNlPHZvaWQ+O1xufTtcbmV4cG9ydCBjbGFzcyBHaW9Qb2xpY3lTdHVkaW9TdGVwRm9ybUhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnZ2lvLXBzLXN0ZXAtZm9ybSc7XG5cbiAgcHJpdmF0ZSBnZXREZXNjcmlwdGlvbklucHV0ID0gdGhpcy5sb2NhdG9yRm9yKE1hdElucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIl0nIH0pKTtcblxuICBwcml2YXRlIGdldENvbmRpdGlvbklucHV0ID0gdGhpcy5sb2NhdG9yRm9yKE1hdElucHV0SGFybmVzcy53aXRoKHsgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xOYW1lPVwiY29uZGl0aW9uXCJdJyB9KSk7XG5cbiAgcHVibGljIGFzeW5jIHNldFN0ZXBGb3JtKHN0ZXBGb3JtOiBTdGVwRm9ybSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChzdGVwRm9ybS5kZXNjcmlwdGlvbikge1xuICAgICAgY29uc3QgZGVzY3JpcHRpb25JbnB1dCA9IGF3YWl0IHRoaXMuZ2V0RGVzY3JpcHRpb25JbnB1dCgpO1xuICAgICAgYXdhaXQgZGVzY3JpcHRpb25JbnB1dC5zZXRWYWx1ZShzdGVwRm9ybS5kZXNjcmlwdGlvbik7XG4gICAgfVxuICAgIGlmIChzdGVwRm9ybS5jb25kaXRpb24pIHtcbiAgICAgIGNvbnN0IGNvbmRpdGlvbklucHV0ID0gYXdhaXQgdGhpcy5nZXRDb25kaXRpb25JbnB1dCgpO1xuICAgICAgYXdhaXQgY29uZGl0aW9uSW5wdXQuc2V0VmFsdWUoc3RlcEZvcm0uY29uZGl0aW9uKTtcbiAgICB9XG5cbiAgICBpZiAoc3RlcEZvcm0ud2FpdEZvclBvbGljeUZvcm1Db21wbGV0aW9uQ2IpIHtcbiAgICAgIGF3YWl0IHN0ZXBGb3JtLndhaXRGb3JQb2xpY3lGb3JtQ29tcGxldGlvbkNiKHRoaXMubG9jYXRvckZhY3RvcnkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTdGVwRm9ybVZhbHVlKCk6IFByb21pc2U8e1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB9PiB7XG4gICAgY29uc3QgZGVzY3JpcHRpb25JbnB1dCA9IGF3YWl0IHRoaXMuZ2V0RGVzY3JpcHRpb25JbnB1dCgpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBhd2FpdCBkZXNjcmlwdGlvbklucHV0LmdldFZhbHVlKCksXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXREb2N1bWVudGF0aW9uKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIGNvbnN0IGRvY3VtZW50YXRpb24gPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3IoJy5kb2N1bWVudGF0aW9uX19jb250ZW50ID4gZ2lvLWFzY2lpZG9jdG9yJykoKTtcbiAgICByZXR1cm4gZG9jdW1lbnRhdGlvbi5nZXRBdHRyaWJ1dGUoJ25nLXJlZmxlY3QtY29udGVudCcpO1xuICB9XG59XG4iXX0=