@gravitee/ui-policy-studio-angular 15.13.0 → 16.0.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 (171) hide show
  1. package/fesm2022/gravitee-ui-policy-studio-angular-testing.mjs +1 -1
  2. package/fesm2022/gravitee-ui-policy-studio-angular-testing.mjs.map +1 -1
  3. package/fesm2022/gravitee-ui-policy-studio-angular.mjs +92 -95
  4. package/fesm2022/gravitee-ui-policy-studio-angular.mjs.map +1 -1
  5. package/index.d.ts +404 -3
  6. package/package.json +7 -11
  7. package/testing/index.d.ts +369 -3
  8. package/esm2022/gravitee-ui-policy-studio-angular.mjs +0 -5
  9. package/esm2022/lib/components/filter-pipe/gio-flter-connectors-by-mode.pipe.mjs +0 -43
  10. package/esm2022/lib/components/flow-details/gio-ps-flow-details.component.mjs +0 -184
  11. package/esm2022/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.component.mjs +0 -115
  12. package/esm2022/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.mjs +0 -179
  13. package/esm2022/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.mjs +0 -162
  14. package/esm2022/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.component.mjs +0 -81
  15. package/esm2022/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.component.mjs +0 -109
  16. package/esm2022/lib/components/flow-form-dialog/flow-native-form-dialog/gio-ps-flow-native-form-dialog.component.mjs +0 -89
  17. package/esm2022/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.component.mjs +0 -135
  18. package/esm2022/lib/components/flow-form-dialog/gio-ps-flow-form-dialog-result.model.mjs +0 -2
  19. package/esm2022/lib/components/flows-menu/gio-ps-flows-menu.component.mjs +0 -432
  20. package/esm2022/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component.mjs +0 -165
  21. package/esm2022/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.component.mjs +0 -53
  22. package/esm2022/lib/components/step-form/gio-ps-step-form.component.mjs +0 -158
  23. package/esm2022/lib/models/ApiProtocolType.mjs +0 -17
  24. package/esm2022/lib/models/ApiType.mjs +0 -17
  25. package/esm2022/lib/models/ConnectorsInfo.mjs +0 -2
  26. package/esm2022/lib/models/PolicySchemaFetcher.mjs +0 -2
  27. package/esm2022/lib/models/SaveOutput.mjs +0 -2
  28. package/esm2022/lib/models/flow/Flow.mjs +0 -2
  29. package/esm2022/lib/models/flow/FlowExecution.mjs +0 -17
  30. package/esm2022/lib/models/flow/HttpMethod.mjs +0 -43
  31. package/esm2022/lib/models/flow/Selector.mjs +0 -2
  32. package/esm2022/lib/models/flow/Step.mjs +0 -2
  33. package/esm2022/lib/models/flow/index.mjs +0 -21
  34. package/esm2022/lib/models/index.mjs +0 -24
  35. package/esm2022/lib/models/plan/Plan.mjs +0 -17
  36. package/esm2022/lib/models/plan/index.mjs +0 -17
  37. package/esm2022/lib/models/policy/GenericPolicy.mjs +0 -24
  38. package/esm2022/lib/models/policy/Policy.mjs +0 -44
  39. package/esm2022/lib/models/policy/SharedPolicyGroupPolicy.mjs +0 -17
  40. package/esm2022/lib/models/policy/index.mjs +0 -19
  41. package/esm2022/lib/policy-group-studio/gio-policy-group-studio.component.mjs +0 -228
  42. package/esm2022/lib/policy-studio/gio-policy-studio.component.mjs +0 -304
  43. package/esm2022/lib/policy-studio/gio-policy-studio.model.mjs +0 -17
  44. package/esm2022/lib/policy-studio/gio-policy-studio.service.mjs +0 -74
  45. package/esm2022/public-api.mjs +0 -22
  46. package/esm2022/testing/gravitee-ui-policy-studio-angular-testing.mjs +0 -5
  47. package/esm2022/testing/lib/components/flow-details/gio-ps-flow-details.harness.mjs +0 -56
  48. package/esm2022/testing/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.harness.mjs +0 -35
  49. package/esm2022/testing/lib/components/flow-details-phase/gio-ps-flow-details-phase.harness.mjs +0 -155
  50. package/esm2022/testing/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.harness.mjs +0 -69
  51. package/esm2022/testing/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.harness.mjs +0 -60
  52. package/esm2022/testing/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.harness.mjs +0 -128
  53. package/esm2022/testing/lib/components/flow-form-dialog/flow-native-form-dialog/gio-ps-flow-native-form-dialog.harness.mjs +0 -50
  54. package/esm2022/testing/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.harness.mjs +0 -98
  55. package/esm2022/testing/lib/components/flows-menu/gio-ps-flows-menu.harness.mjs +0 -91
  56. package/esm2022/testing/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness.mjs +0 -87
  57. package/esm2022/testing/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.harness.mjs +0 -30
  58. package/esm2022/testing/lib/components/step-form/gio-ps-step-form.harness.mjs +0 -56
  59. package/esm2022/testing/lib/models/ApiProtocolType.mjs +0 -17
  60. package/esm2022/testing/lib/models/ApiType.mjs +0 -17
  61. package/esm2022/testing/lib/models/ConnectorsInfo.fixture.mjs +0 -182
  62. package/esm2022/testing/lib/models/ConnectorsInfo.mjs +0 -2
  63. package/esm2022/testing/lib/models/PolicySchemaFetcher.mjs +0 -2
  64. package/esm2022/testing/lib/models/SaveOutput.mjs +0 -2
  65. package/esm2022/testing/lib/models/flow/Flow.fixture.mjs +0 -122
  66. package/esm2022/testing/lib/models/flow/Flow.mjs +0 -2
  67. package/esm2022/testing/lib/models/flow/FlowExecution.fixture.mjs +0 -43
  68. package/esm2022/testing/lib/models/flow/FlowExecution.mjs +0 -17
  69. package/esm2022/testing/lib/models/flow/HttpMethod.mjs +0 -43
  70. package/esm2022/testing/lib/models/flow/Selector.mjs +0 -2
  71. package/esm2022/testing/lib/models/flow/Step.fixture.mjs +0 -92
  72. package/esm2022/testing/lib/models/flow/Step.mjs +0 -2
  73. package/esm2022/testing/lib/models/flow/index-testing.mjs +0 -19
  74. package/esm2022/testing/lib/models/flow/index.mjs +0 -21
  75. package/esm2022/testing/lib/models/index-testing.mjs +0 -20
  76. package/esm2022/testing/lib/models/index.mjs +0 -24
  77. package/esm2022/testing/lib/models/plan/Plan.fixture.mjs +0 -31
  78. package/esm2022/testing/lib/models/plan/Plan.mjs +0 -17
  79. package/esm2022/testing/lib/models/plan/index-testing.mjs +0 -17
  80. package/esm2022/testing/lib/models/plan/index.mjs +0 -17
  81. package/esm2022/testing/lib/models/policy/GenericPolicy.mjs +0 -24
  82. package/esm2022/testing/lib/models/policy/Policy.fixture.mjs +0 -194
  83. package/esm2022/testing/lib/models/policy/Policy.mjs +0 -44
  84. package/esm2022/testing/lib/models/policy/SharedPolicyGroupPolicy.mjs +0 -17
  85. package/esm2022/testing/lib/models/policy/index-testing.mjs +0 -17
  86. package/esm2022/testing/lib/models/policy/index.mjs +0 -19
  87. package/esm2022/testing/lib/policy-group-studio/gio-policy-group-studio.harness.mjs +0 -52
  88. package/esm2022/testing/lib/policy-studio/gio-policy-studio.harness.mjs +0 -202
  89. package/esm2022/testing/lib/policy-studio/gio-policy-studio.model.mjs +0 -17
  90. package/esm2022/testing/public-testing-api.mjs +0 -19
  91. package/lib/components/filter-pipe/gio-flter-connectors-by-mode.pipe.d.ts +0 -8
  92. package/lib/components/flow-details/gio-ps-flow-details.component.d.ts +0 -29
  93. package/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.component.d.ts +0 -20
  94. package/lib/components/flow-details-phase/gio-ps-flow-details-phase.component.d.ts +0 -47
  95. package/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.component.d.ts +0 -33
  96. package/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.component.d.ts +0 -18
  97. package/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.component.d.ts +0 -21
  98. package/lib/components/flow-form-dialog/flow-native-form-dialog/gio-ps-flow-native-form-dialog.component.d.ts +0 -21
  99. package/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.component.d.ts +0 -24
  100. package/lib/components/flow-form-dialog/gio-ps-flow-form-dialog-result.model.d.ts +0 -2
  101. package/lib/components/flows-menu/gio-ps-flows-menu.component.d.ts +0 -57
  102. package/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.component.d.ts +0 -47
  103. package/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.component.d.ts +0 -24
  104. package/lib/components/step-form/gio-ps-step-form.component.d.ts +0 -35
  105. package/lib/models/ApiProtocolType.d.ts +0 -1
  106. package/lib/models/ApiType.d.ts +0 -1
  107. package/lib/models/ConnectorsInfo.d.ts +0 -7
  108. package/lib/models/PolicySchemaFetcher.d.ts +0 -5
  109. package/lib/models/SaveOutput.d.ts +0 -7
  110. package/lib/models/flow/Flow.d.ts +0 -24
  111. package/lib/models/flow/FlowExecution.d.ts +0 -11
  112. package/lib/models/flow/HttpMethod.d.ts +0 -3
  113. package/lib/models/flow/Selector.d.ts +0 -37
  114. package/lib/models/flow/Step.d.ts +0 -34
  115. package/lib/models/flow/index.d.ts +0 -5
  116. package/lib/models/index.d.ts +0 -8
  117. package/lib/models/plan/Plan.d.ts +0 -6
  118. package/lib/models/plan/index.d.ts +0 -1
  119. package/lib/models/policy/GenericPolicy.d.ts +0 -22
  120. package/lib/models/policy/Policy.d.ts +0 -28
  121. package/lib/models/policy/SharedPolicyGroupPolicy.d.ts +0 -11
  122. package/lib/models/policy/index.d.ts +0 -3
  123. package/lib/policy-group-studio/gio-policy-group-studio.component.d.ts +0 -70
  124. package/lib/policy-studio/gio-policy-studio.component.d.ts +0 -98
  125. package/lib/policy-studio/gio-policy-studio.model.d.ts +0 -17
  126. package/lib/policy-studio/gio-policy-studio.service.d.ts +0 -30
  127. package/public-api.d.ts +0 -3
  128. package/testing/lib/components/flow-details/gio-ps-flow-details.harness.d.ts +0 -12
  129. package/testing/lib/components/flow-details-info-bar/gio-ps-flow-details-info-bar.harness.d.ts +0 -5
  130. package/testing/lib/components/flow-details-phase/gio-ps-flow-details-phase.harness.d.ts +0 -69
  131. package/testing/lib/components/flow-details-phase-step/gio-ps-flow-details-phase-step.harness.d.ts +0 -21
  132. package/testing/lib/components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.harness.d.ts +0 -13
  133. package/testing/lib/components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.harness.d.ts +0 -37
  134. package/testing/lib/components/flow-form-dialog/flow-native-form-dialog/gio-ps-flow-native-form-dialog.harness.d.ts +0 -17
  135. package/testing/lib/components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.harness.d.ts +0 -33
  136. package/testing/lib/components/flows-menu/gio-ps-flows-menu.harness.d.ts +0 -31
  137. package/testing/lib/components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness.d.ts +0 -20
  138. package/testing/lib/components/step-edit-dialog/gio-ps-step-edit-dialog.harness.d.ts +0 -8
  139. package/testing/lib/components/step-form/gio-ps-step-form.harness.d.ts +0 -18
  140. package/testing/lib/models/ApiProtocolType.d.ts +0 -1
  141. package/testing/lib/models/ApiType.d.ts +0 -1
  142. package/testing/lib/models/ConnectorsInfo.d.ts +0 -7
  143. package/testing/lib/models/ConnectorsInfo.fixture.d.ts +0 -12
  144. package/testing/lib/models/PolicySchemaFetcher.d.ts +0 -5
  145. package/testing/lib/models/SaveOutput.d.ts +0 -7
  146. package/testing/lib/models/flow/Flow.d.ts +0 -24
  147. package/testing/lib/models/flow/Flow.fixture.d.ts +0 -6
  148. package/testing/lib/models/flow/FlowExecution.d.ts +0 -11
  149. package/testing/lib/models/flow/FlowExecution.fixture.d.ts +0 -3
  150. package/testing/lib/models/flow/HttpMethod.d.ts +0 -3
  151. package/testing/lib/models/flow/Selector.d.ts +0 -37
  152. package/testing/lib/models/flow/Step.d.ts +0 -34
  153. package/testing/lib/models/flow/Step.fixture.d.ts +0 -5
  154. package/testing/lib/models/flow/index-testing.d.ts +0 -3
  155. package/testing/lib/models/flow/index.d.ts +0 -5
  156. package/testing/lib/models/index-testing.d.ts +0 -4
  157. package/testing/lib/models/index.d.ts +0 -8
  158. package/testing/lib/models/plan/Plan.d.ts +0 -6
  159. package/testing/lib/models/plan/Plan.fixture.d.ts +0 -2
  160. package/testing/lib/models/plan/index-testing.d.ts +0 -1
  161. package/testing/lib/models/plan/index.d.ts +0 -1
  162. package/testing/lib/models/policy/GenericPolicy.d.ts +0 -22
  163. package/testing/lib/models/policy/Policy.d.ts +0 -28
  164. package/testing/lib/models/policy/Policy.fixture.d.ts +0 -4
  165. package/testing/lib/models/policy/SharedPolicyGroupPolicy.d.ts +0 -11
  166. package/testing/lib/models/policy/index-testing.d.ts +0 -1
  167. package/testing/lib/models/policy/index.d.ts +0 -3
  168. package/testing/lib/policy-group-studio/gio-policy-group-studio.harness.d.ts +0 -20
  169. package/testing/lib/policy-studio/gio-policy-studio.harness.d.ts +0 -78
  170. package/testing/lib/policy-studio/gio-policy-studio.model.d.ts +0 -17
  171. package/testing/public-testing-api.d.ts +0 -3
@@ -1,52 +0,0 @@
1
- /*
2
- * Copyright (C) 2024 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 { DivHarness } from '@gravitee/ui-particles-angular/testing';
18
- import { MatButtonHarness } from '@angular/material/button/testing';
19
- import { GioPolicyStudioDetailsPhaseHarness } from '../components/flow-details-phase/gio-ps-flow-details-phase.harness';
20
- import { GioPolicyStudioPoliciesCatalogDialogHarness } from '../components/policies-catalog-dialog/gio-ps-policies-catalog-dialog.harness';
21
- export class GioPolicyGroupStudioHarness extends ComponentHarness {
22
- constructor() {
23
- super(...arguments);
24
- this.phaseHarness = () => this.locatorFor(GioPolicyStudioDetailsPhaseHarness)();
25
- }
26
- static { this.hostSelector = 'gio-policy-group-studio'; }
27
- /**
28
- * Get Policy Group phase harness
29
- */
30
- async getPolicyGroupPhase() {
31
- return this.phaseHarness();
32
- }
33
- async clickAddStep(index) {
34
- const addStepBtn = await this.locatorForAll(DivHarness.with({ selector: '.content__step' }))().then(divs => divs[index]);
35
- await addStepBtn
36
- .childLocatorFor(MatButtonHarness.with({ selector: '.content__step__addBtn' }))()
37
- .then(btn => btn.click());
38
- }
39
- /**
40
- * Add a step to a policy-group
41
- * @param index Index where to add the step. (Add button index)
42
- * @param stepConfig Step to add
43
- */
44
- async addStep(index, stepConfig) {
45
- await this.clickAddStep(index);
46
- const catalogDialog = await this.documentRootLocatorFactory().locatorFor(GioPolicyStudioPoliciesCatalogDialogHarness)();
47
- await catalogDialog.selectPolicy(stepConfig.policyName);
48
- await (await catalogDialog.getStepForm()).setStepForm(stepConfig);
49
- await catalogDialog.clickAddPolicyButton();
50
- }
51
- }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBvbGljeS1ncm91cC1zdHVkaW8uaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL3BvbGljeS1ncm91cC1zdHVkaW8vZ2lvLXBvbGljeS1ncm91cC1zdHVkaW8uaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVwRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUV4SCxPQUFPLEVBQUUsMkNBQTJDLEVBQUUsTUFBTSw4RUFBOEUsQ0FBQztBQUUzSSxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsZ0JBQWdCO0lBQWpFOztRQUdVLGlCQUFZLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxrQ0FBa0MsQ0FBQyxFQUFFLENBQUM7SUFxQ3JGLENBQUM7YUF2Q2UsaUJBQVksR0FBRyx5QkFBeUIsQUFBNUIsQ0FBNkI7SUFJdkQ7O09BRUc7SUFDSSxLQUFLLENBQUMsbUJBQW1CO1FBQzlCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTSxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQWE7UUFDckMsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUV6SCxNQUFNLFVBQVU7YUFDYixlQUFlLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFLENBQUMsQ0FBQyxFQUFFO2FBQ2hGLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLE9BQU8sQ0FDbEIsS0FBYSxFQUNiLFVBRVk7UUFFWixNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0IsTUFBTSxhQUFhLEdBQUcsTUFBTSxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxVQUFVLENBQUMsMkNBQTJDLENBQUMsRUFBRSxDQUFDO1FBQ3hILE1BQU0sYUFBYSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEQsTUFBTSxDQUFDLE1BQU0sYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWxFLE1BQU0sYUFBYSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjQgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgRGl2SGFybmVzcyB9IGZyb20gJ0BncmF2aXRlZS91aS1wYXJ0aWNsZXMtYW5ndWxhci90ZXN0aW5nJztcbmltcG9ydCB7IE1hdEJ1dHRvbkhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24vdGVzdGluZyc7XG5cbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb0RldGFpbHNQaGFzZUhhcm5lc3MgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZGV0YWlscy1waGFzZS9naW8tcHMtZmxvdy1kZXRhaWxzLXBoYXNlLmhhcm5lc3MnO1xuaW1wb3J0IHsgU3RlcEZvcm0gfSBmcm9tICcuLi9jb21wb25lbnRzL3N0ZXAtZm9ybS9naW8tcHMtc3RlcC1mb3JtLmhhcm5lc3MnO1xuaW1wb3J0IHsgR2lvUG9saWN5U3R1ZGlvUG9saWNpZXNDYXRhbG9nRGlhbG9nSGFybmVzcyB9IGZyb20gJy4uL2NvbXBvbmVudHMvcG9saWNpZXMtY2F0YWxvZy1kaWFsb2cvZ2lvLXBzLXBvbGljaWVzLWNhdGFsb2ctZGlhbG9nLmhhcm5lc3MnO1xuXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5R3JvdXBTdHVkaW9IYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ2dpby1wb2xpY3ktZ3JvdXAtc3R1ZGlvJztcblxuICBwcml2YXRlIHBoYXNlSGFybmVzcyA9ICgpID0+IHRoaXMubG9jYXRvckZvcihHaW9Qb2xpY3lTdHVkaW9EZXRhaWxzUGhhc2VIYXJuZXNzKSgpO1xuXG4gIC8qKlxuICAgKiBHZXQgUG9saWN5IEdyb3VwIHBoYXNlIGhhcm5lc3NcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRQb2xpY3lHcm91cFBoYXNlKCk6IFByb21pc2U8R2lvUG9saWN5U3R1ZGlvRGV0YWlsc1BoYXNlSGFybmVzcz4ge1xuICAgIHJldHVybiB0aGlzLnBoYXNlSGFybmVzcygpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGNsaWNrQWRkU3RlcChpbmRleDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYWRkU3RlcEJ0biA9IGF3YWl0IHRoaXMubG9jYXRvckZvckFsbChEaXZIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5jb250ZW50X19zdGVwJyB9KSkoKS50aGVuKGRpdnMgPT4gZGl2c1tpbmRleF0pO1xuXG4gICAgYXdhaXQgYWRkU3RlcEJ0blxuICAgICAgLmNoaWxkTG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogJy5jb250ZW50X19zdGVwX19hZGRCdG4nIH0pKSgpXG4gICAgICAudGhlbihidG4gPT4gYnRuLmNsaWNrKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHN0ZXAgdG8gYSBwb2xpY3ktZ3JvdXBcbiAgICogQHBhcmFtIGluZGV4IEluZGV4IHdoZXJlIHRvIGFkZCB0aGUgc3RlcC4gKEFkZCBidXR0b24gaW5kZXgpXG4gICAqIEBwYXJhbSBzdGVwQ29uZmlnIFN0ZXAgdG8gYWRkXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgYWRkU3RlcChcbiAgICBpbmRleDogbnVtYmVyLFxuICAgIHN0ZXBDb25maWc6IHtcbiAgICAgIHBvbGljeU5hbWU6IHN0cmluZztcbiAgICB9ICYgU3RlcEZvcm0sXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuY2xpY2tBZGRTdGVwKGluZGV4KTtcblxuICAgIGNvbnN0IGNhdGFsb2dEaWFsb2cgPSBhd2FpdCB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KCkubG9jYXRvckZvcihHaW9Qb2xpY3lTdHVkaW9Qb2xpY2llc0NhdGFsb2dEaWFsb2dIYXJuZXNzKSgpO1xuICAgIGF3YWl0IGNhdGFsb2dEaWFsb2cuc2VsZWN0UG9saWN5KHN0ZXBDb25maWcucG9saWN5TmFtZSk7XG5cbiAgICBhd2FpdCAoYXdhaXQgY2F0YWxvZ0RpYWxvZy5nZXRTdGVwRm9ybSgpKS5zZXRTdGVwRm9ybShzdGVwQ29uZmlnKTtcblxuICAgIGF3YWl0IGNhdGFsb2dEaWFsb2cuY2xpY2tBZGRQb2xpY3lCdXR0b24oKTtcbiAgfVxufVxuIl19
@@ -1,202 +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 { ComponentHarness } from '@angular/cdk/testing';
17
- import { MatButtonHarness } from '@angular/material/button/testing';
18
- import { MatTabGroupHarness } from '@angular/material/tabs/testing';
19
- import { GioPolicyStudioFlowsMenuHarness } from '../components/flows-menu/gio-ps-flows-menu.harness';
20
- import { GioPolicyStudioDetailsHarness } from '../components/flow-details/gio-ps-flow-details.harness';
21
- import { GioPolicyStudioFlowProxyFormDialogHarness } from '../components/flow-form-dialog/flow-proxy-form-dialog/gio-ps-flow-proxy-form-dialog.harness';
22
- import { GioPolicyStudioFlowMessageFormDialogHarness } from '../components/flow-form-dialog/flow-message-form-dialog/gio-ps-flow-message-form-dialog.harness';
23
- import { GioPolicyStudioFlowExecutionFormDialogHarness } from '../components/flow-execution-form-dialog/gio-ps-flow-execution-form-dialog.harness';
24
- import { GioPolicyStudioDetailsPhaseHarness } from '../components/flow-details-phase/gio-ps-flow-details-phase.harness';
25
- import { GioPolicyStudioFlowNativeFormDialogHarness } from '../components/flow-form-dialog/flow-native-form-dialog/gio-ps-flow-native-form-dialog.harness';
26
- export class GioPolicyStudioHarness extends ComponentHarness {
27
- constructor() {
28
- super(...arguments);
29
- this.menuHarness = this.locatorFor(GioPolicyStudioFlowsMenuHarness);
30
- this.detailsHarness = this.locatorFor(GioPolicyStudioDetailsHarness);
31
- this.phaseHarness = (phaseType) => this.locatorFor(GioPolicyStudioDetailsPhaseHarness.with({ type: phaseType }))();
32
- }
33
- static { this.hostSelector = 'gio-policy-studio'; }
34
- async isReadOnly() {
35
- const menu = await this.menuHarness();
36
- const readOnlyMenu = await menu.isReadOnly();
37
- await this.selectFlowInMenu('.+');
38
- const details = await this.detailsHarness();
39
- const emptyDetails = await details.isDisplayEmptyFlow();
40
- if (!emptyDetails) {
41
- await this.selectFlowInMenu('.+');
42
- const readOnlyDetails = await details.isReadOnly();
43
- return readOnlyMenu && readOnlyDetails;
44
- }
45
- return readOnlyMenu;
46
- }
47
- /**
48
- * Add a flow to a plan or to "Common flows"
49
- *
50
- * @param groupName Plan name where to add the flow. You also can define "Common flows" to add a flow to this group.
51
- * @param flow Flow to add
52
- */
53
- async addFlow(groupName, flow) {
54
- await (await this.menuHarness()).addFlow(new RegExp(groupName, 'i'));
55
- await this.setFlowFormDialog(flow);
56
- }
57
- /**
58
- * Edit a flow configuration
59
- *
60
- * @param flowName Flow name to edit
61
- * @param flow
62
- */
63
- async editFlowConfig(flowName, flow) {
64
- (await this.menuHarness()).selectFlow(new RegExp(flowName, 'i'));
65
- await (await this.detailsHarness()).clickEditFlowBtn();
66
- await this.setFlowFormDialog(flow);
67
- }
68
- /**
69
- * Delete a flow
70
- *
71
- * @param flowName Flow name to delete
72
- */
73
- async deleteFlow(flowName) {
74
- (await this.menuHarness()).selectFlow(new RegExp(flowName, 'i'));
75
- await (await this.detailsHarness()).clickDeleteFlowBtn();
76
- }
77
- /**
78
- * Enable or disable a flow
79
- */
80
- async enableDisableFlow(flowName) {
81
- (await this.menuHarness()).selectFlow(new RegExp(flowName, 'i'));
82
- await (await this.detailsHarness()).clickEnableDisableFlowBtn();
83
- }
84
- /**
85
- * Duplicate a flow
86
- *
87
- * @param flowName Flow name to clone
88
- */
89
- async duplicateFlow(flowName) {
90
- await (await this.menuHarness()).clickDuplicateFlowBtn(new RegExp(flowName, 'i'));
91
- }
92
- /**
93
- * Select a flow in the menu
94
- *
95
- * @param flowName Flow name to select
96
- */
97
- async selectFlowInMenu(flowName) {
98
- await (await this.menuHarness()).selectFlow(new RegExp(flowName, 'i'));
99
- }
100
- /**
101
- * Get the list of flows in the menu
102
- */
103
- async getFlowsMenu() {
104
- return (await this.menuHarness()).getAllFlowsGroups();
105
- }
106
- /**
107
- * Get selected flow infos
108
- */
109
- async getSelectedFlowInfos() {
110
- return await (await this.detailsHarness()).getFlowInfos();
111
- }
112
- /**
113
- * Get selected flow phase harness
114
- * @param phaseType Phase type to get
115
- */
116
- async getSelectedFlowPhase(phaseType) {
117
- if (phaseType === 'PUBLISH' || phaseType === 'SUBSCRIBE') {
118
- const matTabsHarness = await this.locatorFor(MatTabGroupHarness.with({ selector: '.content__tabs' }))();
119
- await matTabsHarness.selectTab({ label: 'Event messages' });
120
- }
121
- const steps = await this.phaseHarness(phaseType);
122
- return steps ? steps : undefined;
123
- }
124
- /**
125
- * Get Save button state
126
- */
127
- async getSaveButtonState() {
128
- const saveButton = await this.locatorFor(MatButtonHarness.with({ ancestor: '.header__btn' }))();
129
- const disabled = await saveButton.isDisabled();
130
- const text = await saveButton.getText();
131
- if (text === 'Saving...') {
132
- return 'SAVING';
133
- }
134
- if (disabled) {
135
- return 'DISABLED';
136
- }
137
- return 'VISIBLE';
138
- }
139
- /**
140
- * Click on the "Save" button
141
- */
142
- async save() {
143
- await (await this.locatorFor(MatButtonHarness.with({ text: /Save/ }))()).click();
144
- }
145
- async setFlowFormDialog(flow) {
146
- const channelSelector = flow.selectors?.find(s => s.type === 'CHANNEL');
147
- const httpSelector = flow.selectors?.find(s => s.type === 'HTTP');
148
- const conditionSelector = flow.selectors?.find(s => s.type === 'CONDITION');
149
- if (!!channelSelector && !!httpSelector) {
150
- throw new Error('Channel and HTTP selectors are not be used together.');
151
- }
152
- if (channelSelector) {
153
- const flowFormNewDialog = await this.documentRootLocatorFactory().locatorFor(GioPolicyStudioFlowMessageFormDialogHarness)();
154
- const toChannelOperator = {
155
- STARTS_WITH: 'Starts with',
156
- EQUALS: 'Equals',
157
- };
158
- await flowFormNewDialog.setFlowFormValues({
159
- name: flow.name,
160
- channel: channelSelector?.channel,
161
- channelOperator: toChannelOperator[channelSelector.channelOperator],
162
- entrypoints: channelSelector?.entrypoints,
163
- operations: channelSelector?.operations,
164
- condition: conditionSelector?.condition,
165
- });
166
- await flowFormNewDialog.save();
167
- return;
168
- }
169
- if (httpSelector) {
170
- const flowFormNewDialog = await this.documentRootLocatorFactory().locatorFor(GioPolicyStudioFlowProxyFormDialogHarness)();
171
- await flowFormNewDialog.setFlowFormValues({
172
- name: flow.name,
173
- path: httpSelector?.path,
174
- pathOperator: httpSelector?.pathOperator,
175
- methods: httpSelector?.methods,
176
- condition: conditionSelector?.condition,
177
- });
178
- await flowFormNewDialog.save();
179
- return;
180
- }
181
- if (!channelSelector && !httpSelector) {
182
- const flowFormNewDialog = await this.documentRootLocatorFactory().locatorFor(GioPolicyStudioFlowNativeFormDialogHarness)();
183
- await flowFormNewDialog.setFlowFormValues({
184
- name: flow.name,
185
- });
186
- await flowFormNewDialog.save();
187
- return;
188
- }
189
- throw new Error('No selector found for this flow. Needed to select Message or Proxy flow form dialog.');
190
- }
191
- async setFlowExecutionConfig(flowExecution) {
192
- await (await this.menuHarness()).openFlowExecutionConfig();
193
- const flowExecutionDialog = await this.documentRootLocatorFactory().locatorFor(GioPolicyStudioFlowExecutionFormDialogHarness)();
194
- await flowExecutionDialog.setFlowFormValues(flowExecution);
195
- await flowExecutionDialog.save();
196
- }
197
- async getSearchInput() {
198
- const menu = await this.menuHarness();
199
- return menu.getSearchInput();
200
- }
201
- }
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBvbGljeS1zdHVkaW8uaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLXBvbGljeS1zdHVkaW8tYW5ndWxhci9zcmMvbGliL3BvbGljeS1zdHVkaW8vZ2lvLXBvbGljeS1zdHVkaW8uaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUVILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBSXBFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLDZGQUE2RixDQUFDO0FBQ3hKLE9BQU8sRUFBRSwyQ0FBMkMsRUFBRSxNQUFNLGlHQUFpRyxDQUFDO0FBQzlKLE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxNQUFNLG9GQUFvRixDQUFDO0FBQ25KLE9BQU8sRUFBRSxrQ0FBa0MsRUFBYSxNQUFNLG9FQUFvRSxDQUFDO0FBQ25JLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLCtGQUErRixDQUFDO0FBRTNKLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFBNUQ7O1FBR1UsZ0JBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFFL0QsbUJBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDZCQUE2QixDQUFDLENBQUM7UUFFaEUsaUJBQVksR0FBRyxDQUFDLFNBQW9CLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsa0NBQWtDLENB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QUFpQixHQUFHLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUMsVUFBVSxDQUFDLDBDQUEwQyxDQUFDLEVBQUUsQ0FBQztZQUMzSCxNQUFNLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDO2dCQUN4QyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7YUFDaEIsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMvQixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsc0ZBQXNGLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRU0sS0FBSyxDQUFDLHNCQUFzQixDQUFDLGFBQTRCO1FBQzlELE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFFM0QsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDLFVBQVUsQ0FBQyw2Q0FBNkMsQ0FBQyxFQUFFLENBQUM7UUFDaEksTUFBTSxtQkFBbUIsQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMzRCxNQUFNLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTSxLQUFLLENBQUMsY0FBYztRQUN6QixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0QyxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMiBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IE1hdEJ1dHRvbkhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24vdGVzdGluZyc7XG5pbXBvcnQgeyBNYXRUYWJHcm91cEhhcm5lc3MgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzL3Rlc3RpbmcnO1xuaW1wb3J0IHsgTWF0SW5wdXRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQvdGVzdGluZyc7XG5cbmltcG9ydCB7IENoYW5uZWxTZWxlY3RvciwgQ29uZGl0aW9uU2VsZWN0b3IsIEZsb3csIEZsb3dFeGVjdXRpb24sIEh0dHBTZWxlY3RvciB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBHaW9Qb2xpY3lTdHVkaW9GbG93c01lbnVIYXJuZXNzIH0gZnJvbSAnLi4vY29tcG9uZW50cy9mbG93cy1tZW51L2dpby1wcy1mbG93cy1tZW51Lmhhcm5lc3MnO1xuaW1wb3J0IHsgR2lvUG9saWN5U3R1ZGlvRGV0YWlsc0hhcm5lc3MgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZGV0YWlscy9naW8tcHMtZmxvdy1kZXRhaWxzLmhhcm5lc3MnO1xuaW1wb3J0IHsgR2lvUG9saWN5U3R1ZGlvRmxvd1Byb3h5Rm9ybURpYWxvZ0hhcm5lc3MgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZm9ybS1kaWFsb2cvZmxvdy1wcm94eS1mb3JtLWRpYWxvZy9naW8tcHMtZmxvdy1wcm94eS1mb3JtLWRpYWxvZy5oYXJuZXNzJztcbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb0Zsb3dNZXNzYWdlRm9ybURpYWxvZ0hhcm5lc3MgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZm9ybS1kaWFsb2cvZmxvdy1tZXNzYWdlLWZvcm0tZGlhbG9nL2dpby1wcy1mbG93LW1lc3NhZ2UtZm9ybS1kaWFsb2cuaGFybmVzcyc7XG5pbXBvcnQgeyBHaW9Qb2xpY3lTdHVkaW9GbG93RXhlY3V0aW9uRm9ybURpYWxvZ0hhcm5lc3MgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZXhlY3V0aW9uLWZvcm0tZGlhbG9nL2dpby1wcy1mbG93LWV4ZWN1dGlvbi1mb3JtLWRpYWxvZy5oYXJuZXNzJztcbmltcG9ydCB7IEdpb1BvbGljeVN0dWRpb0RldGFpbHNQaGFzZUhhcm5lc3MsIFBoYXNlVHlwZSB9IGZyb20gJy4uL2NvbXBvbmVudHMvZmxvdy1kZXRhaWxzLXBoYXNlL2dpby1wcy1mbG93LWRldGFpbHMtcGhhc2UuaGFybmVzcyc7XG5pbXBvcnQgeyBHaW9Qb2xpY3lTdHVkaW9GbG93TmF0aXZlRm9ybURpYWxvZ0hhcm5lc3MgfSBmcm9tICcuLi9jb21wb25lbnRzL2Zsb3ctZm9ybS1kaWFsb2cvZmxvdy1uYXRpdmUtZm9ybS1kaWFsb2cvZ2lvLXBzLWZsb3ctbmF0aXZlLWZvcm0tZGlhbG9nLmhhcm5lc3MnO1xuXG5leHBvcnQgY2xhc3MgR2lvUG9saWN5U3R1ZGlvSGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdnaW8tcG9saWN5LXN0dWRpbyc7XG5cbiAgcHJpdmF0ZSBtZW51SGFybmVzcyA9IHRoaXMubG9jYXRvckZvcihHaW9Qb2xpY3lTdHVkaW9GbG93c01lbnVIYXJuZXNzKTtcblxuICBwcml2YXRlIGRldGFpbHNIYXJuZXNzID0gdGhpcy5sb2NhdG9yRm9yKEdpb1BvbGljeVN0dWRpb0RldGFpbHNIYXJuZXNzKTtcblxuICBwcml2YXRlIHBoYXNlSGFybmVzcyA9IChwaGFzZVR5cGU6IFBoYXNlVHlwZSkgPT4gdGhpcy5sb2NhdG9yRm9yKEdpb1BvbGljeVN0dWRpb0RldGFpbHNQaGFzZUhhcm5lc3Mud2l0aCh7IHR5cGU6IHBoYXNlVHlwZSB9KSkoKTtcblxuICBwdWJsaWMgYXN5bmMgaXNSZWFkT25seSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBtZW51ID0gYXdhaXQgdGhpcy5tZW51SGFybmVzcygpO1xuICAgIGNvbnN0IHJlYWRPbmx5TWVudSA9IGF3YWl0IG1lbnUuaXNSZWFkT25seSgpO1xuXG4gICAgYXdhaXQgdGhpcy5zZWxlY3RGbG93SW5NZW51KCcuKycpO1xuXG4gICAgY29uc3QgZGV0YWlscyA9IGF3YWl0IHRoaXMuZGV0YWlsc0hhcm5lc3MoKTtcbiAgICBjb25zdCBlbXB0eURldGFpbHMgPSBhd2FpdCBkZXRhaWxzLmlzRGlzcGxheUVtcHR5RmxvdygpO1xuXG4gICAgaWYgKCFlbXB0eURldGFpbHMpIHtcbiAgICAgIGF3YWl0IHRoaXMuc2VsZWN0Rmxvd0luTWVudSgnLisnKTtcbiAgICAgIGNvbnN0IHJlYWRPbmx5RGV0YWlscyA9IGF3YWl0IGRldGFpbHMuaXNSZWFkT25seSgpO1xuICAgICAgcmV0dXJuIHJlYWRPbmx5TWVudSAmJiByZWFkT25seURldGFpbHM7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlYWRPbmx5TWVudTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBmbG93IHRvIGEgcGxhbiBvciB0byBcIkNvbW1vbiBmbG93c1wiXG4gICAqXG4gICAqIEBwYXJhbSBncm91cE5hbWUgUGxhbiBuYW1lIHdoZXJlIHRvIGFkZCB0aGUgZmxvdy4gWW91IGFsc28gY2FuIGRlZmluZSBcIkNvbW1vbiBmbG93c1wiIHRvIGFkZCBhIGZsb3cgdG8gdGhpcyBncm91cC5cbiAgICogQHBhcmFtIGZsb3cgRmxvdyB0byBhZGRcbiAgICovXG4gIHB1YmxpYyBhc3luYyBhZGRGbG93KGdyb3VwTmFtZTogc3RyaW5nLCBmbG93OiBGbG93KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMubWVudUhhcm5lc3MoKSkuYWRkRmxvdyhuZXcgUmVnRXhwKGdyb3VwTmFtZSwgJ2knKSk7XG5cbiAgICBhd2FpdCB0aGlzLnNldEZsb3dGb3JtRGlhbG9nKGZsb3cpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVkaXQgYSBmbG93IGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHBhcmFtIGZsb3dOYW1lIEZsb3cgbmFtZSB0byBlZGl0XG4gICAqIEBwYXJhbSBmbG93XG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZWRpdEZsb3dDb25maWcoZmxvd05hbWU6IHN0cmluZywgZmxvdzogUGFydGlhbDxGbG93Pik6IFByb21pc2U8dm9pZD4ge1xuICAgIChhd2FpdCB0aGlzLm1lbnVIYXJuZXNzKCkpLnNlbGVjdEZsb3cobmV3IFJlZ0V4cChmbG93TmFtZSwgJ2knKSk7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuZGV0YWlsc0hhcm5lc3MoKSkuY2xpY2tFZGl0Rmxvd0J0bigpO1xuXG4gICAgYXdhaXQgdGhpcy5zZXRGbG93Rm9ybURpYWxvZyhmbG93KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgYSBmbG93XG4gICAqXG4gICAqIEBwYXJhbSBmbG93TmFtZSBGbG93IG5hbWUgdG8gZGVsZXRlXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZGVsZXRlRmxvdyhmbG93TmFtZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgKGF3YWl0IHRoaXMubWVudUhhcm5lc3MoKSkuc2VsZWN0RmxvdyhuZXcgUmVnRXhwKGZsb3dOYW1lLCAnaScpKTtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5kZXRhaWxzSGFybmVzcygpKS5jbGlja0RlbGV0ZUZsb3dCdG4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmFibGUgb3IgZGlzYWJsZSBhIGZsb3dcbiAgICovXG4gIHB1YmxpYyBhc3luYyBlbmFibGVEaXNhYmxlRmxvdyhmbG93TmFtZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgKGF3YWl0IHRoaXMubWVudUhhcm5lc3MoKSkuc2VsZWN0RmxvdyhuZXcgUmVnRXhwKGZsb3dOYW1lLCAnaScpKTtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5kZXRhaWxzSGFybmVzcygpKS5jbGlja0VuYWJsZURpc2FibGVGbG93QnRuKCk7XG4gIH1cblxuICAvKipcbiAgICogRHVwbGljYXRlIGEgZmxvd1xuICAgKlxuICAgKiBAcGFyYW0gZmxvd05hbWUgRmxvdyBuYW1lIHRvIGNsb25lXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZHVwbGljYXRlRmxvdyhmbG93TmFtZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMubWVudUhhcm5lc3MoKSkuY2xpY2tEdXBsaWNhdGVGbG93QnRuKG5ldyBSZWdFeHAoZmxvd05hbWUsICdpJykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdCBhIGZsb3cgaW4gdGhlIG1lbnVcbiAgICpcbiAgICogQHBhcmFtIGZsb3dOYW1lIEZsb3cgbmFtZSB0byBzZWxlY3RcbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZWxlY3RGbG93SW5NZW51KGZsb3dOYW1lOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5tZW51SGFybmVzcygpKS5zZWxlY3RGbG93KG5ldyBSZWdFeHAoZmxvd05hbWUsICdpJykpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbGlzdCBvZiBmbG93cyBpbiB0aGUgbWVudVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEZsb3dzTWVudSgpOiBQcm9taXNlPFxuICAgIHtcbiAgICAgIG5hbWU6IHN0cmluZyB8IG51bGw7XG4gICAgICBmbG93czoge1xuICAgICAgICBuYW1lOiBzdHJpbmcgfCBudWxsO1xuICAgICAgICBpc1NlbGVjdGVkOiBib29sZWFuO1xuICAgICAgICBpbmZvczogc3RyaW5nIHwgbnVsbDtcbiAgICAgIH1bXTtcbiAgICB9W11cbiAgPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLm1lbnVIYXJuZXNzKCkpLmdldEFsbEZsb3dzR3JvdXBzKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHNlbGVjdGVkIGZsb3cgaW5mb3NcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3RlZEZsb3dJbmZvcygpOiBQcm9taXNlPFJlY29yZDxzdHJpbmcsIChzdHJpbmcgfCBudWxsKVtdPj4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy5kZXRhaWxzSGFybmVzcygpKS5nZXRGbG93SW5mb3MoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgc2VsZWN0ZWQgZmxvdyBwaGFzZSBoYXJuZXNzXG4gICAqIEBwYXJhbSBwaGFzZVR5cGUgUGhhc2UgdHlwZSB0byBnZXRcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3RlZEZsb3dQaGFzZShwaGFzZVR5cGU6IFBoYXNlVHlwZSk6IFByb21pc2U8R2lvUG9saWN5U3R1ZGlvRGV0YWlsc1BoYXNlSGFybmVzcyB8IHVuZGVmaW5lZD4ge1xuICAgIGlmIChwaGFzZVR5cGUgPT09ICdQVUJMSVNIJyB8fCBwaGFzZVR5cGUgPT09ICdTVUJTQ1JJQkUnKSB7XG4gICAgICBjb25zdCBtYXRUYWJzSGFybmVzcyA9IGF3YWl0IHRoaXMubG9jYXRvckZvcihNYXRUYWJHcm91cEhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiAnLmNvbnRlbnRfX3RhYnMnIH0pKSgpO1xuICAgICAgYXdhaXQgbWF0VGFic0hhcm5lc3Muc2VsZWN0VGFiKHsgbGFiZWw6ICdFdmVudCBtZXNzYWdlcycgfSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc3RlcHMgPSBhd2FpdCB0aGlzLnBoYXNlSGFybmVzcyhwaGFzZVR5cGUpO1xuXG4gICAgcmV0dXJuIHN0ZXBzID8gc3RlcHMgOiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0IFNhdmUgYnV0dG9uIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0U2F2ZUJ1dHRvblN0YXRlKCk6IFByb21pc2U8J1ZJU0lCTEUnIHwgJ0RJU0FCTEVEJyB8ICdTQVZJTkcnPiB7XG4gICAgY29uc3Qgc2F2ZUJ1dHRvbiA9IGF3YWl0IHRoaXMubG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyBhbmNlc3RvcjogJy5oZWFkZXJfX2J0bicgfSkpKCk7XG4gICAgY29uc3QgZGlzYWJsZWQgPSBhd2FpdCBzYXZlQnV0dG9uLmlzRGlzYWJsZWQoKTtcbiAgICBjb25zdCB0ZXh0ID0gYXdhaXQgc2F2ZUJ1dHRvbi5nZXRUZXh0KCk7XG5cbiAgICBpZiAodGV4dCA9PT0gJ1NhdmluZy4uLicpIHtcbiAgICAgIHJldHVybiAnU0FWSU5HJztcbiAgICB9XG5cbiAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiAnRElTQUJMRUQnO1xuICAgIH1cblxuICAgIHJldHVybiAnVklTSUJMRSc7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2sgb24gdGhlIFwiU2F2ZVwiIGJ1dHRvblxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNhdmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMubG9jYXRvckZvcihNYXRCdXR0b25IYXJuZXNzLndpdGgoeyB0ZXh0OiAvU2F2ZS8gfSkpKCkpLmNsaWNrKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNldEZsb3dGb3JtRGlhbG9nKGZsb3c6IFBhcnRpYWw8Rmxvdz4pIHtcbiAgICBjb25zdCBjaGFubmVsU2VsZWN0b3IgPSBmbG93LnNlbGVjdG9ycz8uZmluZChzID0+IHMudHlwZSA9PT0gJ0NIQU5ORUwnKSBhcyBDaGFubmVsU2VsZWN0b3IgfCB1bmRlZmluZWQ7XG4gICAgY29uc3QgaHR0cFNlbGVjdG9yID0gZmxvdy5zZWxlY3RvcnM/LmZpbmQocyA9PiBzLnR5cGUgPT09ICdIVFRQJykgYXMgSHR0cFNlbGVjdG9yIHwgdW5kZWZpbmVkO1xuICAgIGNvbnN0IGNvbmRpdGlvblNlbGVjdG9yID0gZmxvdy5zZWxlY3RvcnM/LmZpbmQocyA9PiBzLnR5cGUgPT09ICdDT05ESVRJT04nKSBhcyBDb25kaXRpb25TZWxlY3RvciB8IHVuZGVmaW5lZDtcblxuICAgIGlmICghIWNoYW5uZWxTZWxlY3RvciAmJiAhIWh0dHBTZWxlY3Rvcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDaGFubmVsIGFuZCBIVFRQIHNlbGVjdG9ycyBhcmUgbm90IGJlIHVzZWQgdG9nZXRoZXIuJyk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5uZWxTZWxlY3Rvcikge1xuICAgICAgY29uc3QgZmxvd0Zvcm1OZXdEaWFsb2cgPSBhd2FpdCB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KCkubG9jYXRvckZvcihHaW9Qb2xpY3lTdHVkaW9GbG93TWVzc2FnZUZvcm1EaWFsb2dIYXJuZXNzKSgpO1xuXG4gICAgICBjb25zdCB0b0NoYW5uZWxPcGVyYXRvciA9IHtcbiAgICAgICAgU1RBUlRTX1dJVEg6ICdTdGFydHMgd2l0aCcsXG4gICAgICAgIEVRVUFMUzogJ0VxdWFscycsXG4gICAgICB9O1xuXG4gICAgICBhd2FpdCBmbG93Rm9ybU5ld0RpYWxvZy5zZXRGbG93Rm9ybVZhbHVlcyh7XG4gICAgICAgIG5hbWU6IGZsb3cubmFtZSxcbiAgICAgICAgY2hhbm5lbDogY2hhbm5lbFNlbGVjdG9yPy5jaGFubmVsLFxuICAgICAgICBjaGFubmVsT3BlcmF0b3I6IHRvQ2hhbm5lbE9wZXJhdG9yW2NoYW5uZWxTZWxlY3Rvci5jaGFubmVsT3BlcmF0b3JdLFxuICAgICAgICBlbnRyeXBvaW50czogY2hhbm5lbFNlbGVjdG9yPy5lbnRyeXBvaW50cyxcbiAgICAgICAgb3BlcmF0aW9uczogY2hhbm5lbFNlbGVjdG9yPy5vcGVyYXRpb25zLFxuICAgICAgICBjb25kaXRpb246IGNvbmRpdGlvblNlbGVjdG9yPy5jb25kaXRpb24sXG4gICAgICB9KTtcblxuICAgICAgYXdhaXQgZmxvd0Zvcm1OZXdEaWFsb2cuc2F2ZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChodHRwU2VsZWN0b3IpIHtcbiAgICAgIGNvbnN0IGZsb3dGb3JtTmV3RGlhbG9nID0gYXdhaXQgdGhpcy5kb2N1bWVudFJvb3RMb2NhdG9yRmFjdG9yeSgpLmxvY2F0b3JGb3IoR2lvUG9saWN5U3R1ZGlvRmxvd1Byb3h5Rm9ybURpYWxvZ0hhcm5lc3MpKCk7XG5cbiAgICAgIGF3YWl0IGZsb3dGb3JtTmV3RGlhbG9nLnNldEZsb3dGb3JtVmFsdWVzKHtcbiAgICAgICAgbmFtZTogZmxvdy5uYW1lLFxuICAgICAgICBwYXRoOiBodHRwU2VsZWN0b3I/LnBhdGgsXG4gICAgICAgIHBhdGhPcGVyYXRvcjogaHR0cFNlbGVjdG9yPy5wYXRoT3BlcmF0b3IsXG4gICAgICAgIG1ldGhvZHM6IGh0dHBTZWxlY3Rvcj8ubWV0aG9kcyxcbiAgICAgICAgY29uZGl0aW9uOiBjb25kaXRpb25TZWxlY3Rvcj8uY29uZGl0aW9uLFxuICAgICAgfSk7XG5cbiAgICAgIGF3YWl0IGZsb3dGb3JtTmV3RGlhbG9nLnNhdmUoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIWNoYW5uZWxTZWxlY3RvciAmJiAhaHR0cFNlbGVjdG9yKSB7XG4gICAgICBjb25zdCBmbG93Rm9ybU5ld0RpYWxvZyA9IGF3YWl0IHRoaXMuZG9jdW1lbnRSb290TG9jYXRvckZhY3RvcnkoKS5sb2NhdG9yRm9yKEdpb1BvbGljeVN0dWRpb0Zsb3dOYXRpdmVGb3JtRGlhbG9nSGFybmVzcykoKTtcbiAgICAgIGF3YWl0IGZsb3dGb3JtTmV3RGlhbG9nLnNldEZsb3dGb3JtVmFsdWVzKHtcbiAgICAgICAgbmFtZTogZmxvdy5uYW1lLFxuICAgICAgfSk7XG4gICAgICBhd2FpdCBmbG93Rm9ybU5ld0RpYWxvZy5zYXZlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdObyBzZWxlY3RvciBmb3VuZCBmb3IgdGhpcyBmbG93LiBOZWVkZWQgdG8gc2VsZWN0IE1lc3NhZ2Ugb3IgUHJveHkgZmxvdyBmb3JtIGRpYWxvZy4nKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzZXRGbG93RXhlY3V0aW9uQ29uZmlnKGZsb3dFeGVjdXRpb246IEZsb3dFeGVjdXRpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5tZW51SGFybmVzcygpKS5vcGVuRmxvd0V4ZWN1dGlvbkNvbmZpZygpO1xuXG4gICAgY29uc3QgZmxvd0V4ZWN1dGlvbkRpYWxvZyA9IGF3YWl0IHRoaXMuZG9jdW1lbnRSb290TG9jYXRvckZhY3RvcnkoKS5sb2NhdG9yRm9yKEdpb1BvbGljeVN0dWRpb0Zsb3dFeGVjdXRpb25Gb3JtRGlhbG9nSGFybmVzcykoKTtcbiAgICBhd2FpdCBmbG93RXhlY3V0aW9uRGlhbG9nLnNldEZsb3dGb3JtVmFsdWVzKGZsb3dFeGVjdXRpb24pO1xuICAgIGF3YWl0IGZsb3dFeGVjdXRpb25EaWFsb2cuc2F2ZSgpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFNlYXJjaElucHV0KCk6IFByb21pc2U8TWF0SW5wdXRIYXJuZXNzPiB7XG4gICAgY29uc3QgbWVudSA9IGF3YWl0IHRoaXMubWVudUhhcm5lc3MoKTtcbiAgICByZXR1cm4gbWVudS5nZXRTZWFyY2hJbnB1dCgpO1xuICB9XG59XG4iXX0=
@@ -1,17 +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
- export {};
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLXBvbGljeS1zdHVkaW8ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wb2xpY3ktc3R1ZGlvLWFuZ3VsYXIvc3JjL2xpYi9wb2xpY3ktc3R1ZGlvL2dpby1wb2xpY3ktc3R1ZGlvLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoQykgMjAyMiBUaGUgR3Jhdml0ZWUgdGVhbSAoaHR0cDovL2dyYXZpdGVlLmlvKVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHsgRmxvdyB9IGZyb20gJy4uL21vZGVscyc7XG5cbi8vIE1vZGVsIHVzZWQgaW50ZXJuYWxseSBieSB0aGUgY29tcG9uZW50IGFuZCBpdCdzIGNoaWxkcmVuXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dWTSBleHRlbmRzIEZsb3cge1xuICBfaWQ6IHN0cmluZztcbiAgX2hhc0NoYW5nZWQ6IGJvb2xlYW47XG4gIF9wYXJlbnRGbG93R3JvdXBOYW1lPzogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBGbG93R3JvdXBWTSB7XG4gIF9pZDogc3RyaW5nO1xuICBfcGxhbklkPzogc3RyaW5nO1xuICBfaXNQbGFuOiBib29sZWFuO1xuICBuYW1lOiBzdHJpbmc7XG4gIGZsb3dzOiBGbG93Vk1bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQb2xpY3lEb2N1bWVudGF0aW9uIHtcbiAgY29udGVudDogc3RyaW5nO1xuICBsYW5ndWFnZTogJ01BUktET1dOJyB8ICdBU0NJSURPQyc7XG59XG4iXX0=
@@ -1,19 +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
- export * from './lib/models/index-testing';
17
- export * from './lib/policy-studio/gio-policy-studio.harness';
18
- export * from './lib/policy-group-studio/gio-policy-group-studio.harness';
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLXRlc3RpbmctYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcG9saWN5LXN0dWRpby1hbmd1bGFyL3NyYy9wdWJsaWMtdGVzdGluZy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYywyREFBMkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMjIgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaW5kZXgtdGVzdGluZyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3BvbGljeS1zdHVkaW8vZ2lvLXBvbGljeS1zdHVkaW8uaGFybmVzcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wb2xpY3ktZ3JvdXAtc3R1ZGlvL2dpby1wb2xpY3ktZ3JvdXAtc3R1ZGlvLmhhcm5lc3MnO1xuIl19
@@ -1,8 +0,0 @@
1
- import { PipeTransform } from '@angular/core';
2
- import { ConnectorInfo, ConnectorMode } from '../../models';
3
- import * as i0 from "@angular/core";
4
- export declare class GioFilterConnectorsByModePipe implements PipeTransform {
5
- transform(items: ConnectorInfo[], mode: ConnectorMode, activeModes?: ConnectorMode[]): ConnectorInfo[];
6
- static ɵfac: i0.ɵɵFactoryDeclaration<GioFilterConnectorsByModePipe, never>;
7
- static ɵpipe: i0.ɵɵPipeDeclaration<GioFilterConnectorsByModePipe, "gioFilterConnectorsByMode", true>;
8
- }
@@ -1,29 +0,0 @@
1
- import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
- import { MatDialog } from '@angular/material/dialog';
3
- import { FlowVM } from '../../policy-studio/gio-policy-studio.model';
4
- import { ApiType, ConnectorInfo, Operation, Policy, Step, GenericPolicy } from '../../models';
5
- import * as i0 from "@angular/core";
6
- export declare class GioPolicyStudioDetailsComponent implements OnChanges {
7
- private readonly matDialog;
8
- readOnly: boolean;
9
- loading: boolean;
10
- apiType: ApiType;
11
- flow?: FlowVM;
12
- entrypointsInfo: ConnectorInfo[];
13
- endpointsInfo: ConnectorInfo[];
14
- policies: Policy[];
15
- genericPolicies: GenericPolicy[];
16
- trialUrl?: string;
17
- flowChange: EventEmitter<FlowVM>;
18
- deleteFlow: EventEmitter<FlowVM>;
19
- messageFlowEntrypointsInfo: ConnectorInfo[];
20
- operations: Operation[];
21
- constructor(matDialog: MatDialog);
22
- ngOnChanges(changes: SimpleChanges): void;
23
- onEditFlow(): void;
24
- onDeleteFlow(): void;
25
- onEnableDisableFlow(): void;
26
- onStepsChange(flowPhase: 'connect' | 'interact' | 'request' | 'response' | 'publish' | 'subscribe', steps: Step[]): void;
27
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioDetailsComponent, never>;
28
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioDetailsComponent, "gio-ps-flow-details", never, { "readOnly": { "alias": "readOnly"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "apiType": { "alias": "apiType"; "required": false; }; "flow": { "alias": "flow"; "required": false; }; "entrypointsInfo": { "alias": "entrypointsInfo"; "required": false; }; "endpointsInfo": { "alias": "endpointsInfo"; "required": false; }; "policies": { "alias": "policies"; "required": false; }; "genericPolicies": { "alias": "genericPolicies"; "required": false; }; "trialUrl": { "alias": "trialUrl"; "required": false; }; }, { "flowChange": "flowChange"; "deleteFlow": "deleteFlow"; }, never, never, true, never>;
29
- }
@@ -1,20 +0,0 @@
1
- import { ConnectorInfo } from '../../models';
2
- import { FlowVM } from '../../policy-studio/gio-policy-studio.model';
3
- import * as i0 from "@angular/core";
4
- export declare class GioPolicyStudioDetailsInfoBarComponent {
5
- flow?: FlowVM;
6
- entrypointsInfo?: ConnectorInfo[];
7
- get condition(): string | undefined;
8
- get operations(): string[] | undefined;
9
- get channel(): string | undefined;
10
- get channelOperator(): string | undefined;
11
- get entrypoints(): ConnectorInfo[] | undefined;
12
- get path(): string | undefined;
13
- get pathOperator(): string | undefined;
14
- get methods(): {
15
- name: string;
16
- class: string;
17
- }[] | undefined;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioDetailsInfoBarComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioDetailsInfoBarComponent, "gio-ps-flow-details-info-bar", never, { "flow": { "alias": "flow"; "required": false; }; "entrypointsInfo": { "alias": "entrypointsInfo"; "required": false; }; }, {}, never, never, true, never>;
20
- }
@@ -1,47 +0,0 @@
1
- import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
- import { MatDialog } from '@angular/material/dialog';
3
- import { ApiType, ConnectorInfo, FlowPhase, Step } from '../../models';
4
- import { GenericPolicy } from '../../models/policy/GenericPolicy';
5
- import * as i0 from "@angular/core";
6
- type StepVM = {
7
- _id: string;
8
- type: 'connectors';
9
- connectors: {
10
- name?: string;
11
- icon?: string;
12
- }[];
13
- } | {
14
- _id: string;
15
- type: 'step';
16
- step: Step;
17
- index: number;
18
- };
19
- export declare class GioPolicyStudioDetailsPhaseComponent implements OnChanges {
20
- private readonly matDialog;
21
- readOnly: boolean;
22
- steps: Step[];
23
- name: string;
24
- description: string;
25
- startConnector: ConnectorInfo[];
26
- endConnector: ConnectorInfo[];
27
- apiType: ApiType;
28
- genericPolicies: GenericPolicy[];
29
- policyFlowPhase: FlowPhase;
30
- trialUrl?: string;
31
- disabledNotYetAvailable: boolean;
32
- stepsChange: EventEmitter<Step[]>;
33
- stepsVM: StepVM[];
34
- hasStartAndEndConnectors: boolean;
35
- constructor(matDialog: MatDialog);
36
- ngOnChanges(changes: SimpleChanges): void;
37
- onAddPolicy(index: number): void;
38
- onStepChange(index: number, stepToEdit: Step): void;
39
- onStepDeleted(index: number): void;
40
- onStepDisabled(index: number): void;
41
- onStepDuplicated(index: number): void;
42
- onStepMovedRight(index: number): void;
43
- onStepMovedLeft(index: number): void;
44
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioDetailsPhaseComponent, never>;
45
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioDetailsPhaseComponent, "gio-ps-flow-details-phase", never, { "readOnly": { "alias": "readOnly"; "required": false; }; "steps": { "alias": "steps"; "required": false; }; "name": { "alias": "name"; "required": false; }; "description": { "alias": "description"; "required": false; }; "startConnector": { "alias": "startConnector"; "required": false; }; "endConnector": { "alias": "endConnector"; "required": false; }; "apiType": { "alias": "apiType"; "required": false; }; "genericPolicies": { "alias": "genericPolicies"; "required": false; }; "policyFlowPhase": { "alias": "policyFlowPhase"; "required": false; }; "trialUrl": { "alias": "trialUrl"; "required": false; }; "disabledNotYetAvailable": { "alias": "disabledNotYetAvailable"; "required": false; }; }, { "stepsChange": "stepsChange"; }, never, never, true, never>;
46
- }
47
- export {};
@@ -1,33 +0,0 @@
1
- import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
- import { MatDialog } from '@angular/material/dialog';
3
- import { FlowPhase, Step, GenericPolicy, ApiType } from '../../models';
4
- import * as i0 from "@angular/core";
5
- export declare class GioPolicyStudioDetailsPhaseStepComponent implements OnChanges {
6
- private readonly matDialog;
7
- readOnly: boolean;
8
- step: Step;
9
- genericPolicies: GenericPolicy[];
10
- flowPhase: FlowPhase;
11
- apiType: ApiType;
12
- disableMoveRight: boolean;
13
- disableMoveLeft: boolean;
14
- stepChange: EventEmitter<Step>;
15
- deleted: EventEmitter<void>;
16
- disabled: EventEmitter<void>;
17
- duplicated: EventEmitter<void>;
18
- movedRight: EventEmitter<void>;
19
- movedLeft: EventEmitter<void>;
20
- protected genericPolicy?: GenericPolicy;
21
- protected policyNotFound: false | 'SHARED_POLICY_GROUP' | 'POLICY';
22
- protected get getPrerequisiteMessage(): string | undefined;
23
- constructor(matDialog: MatDialog);
24
- ngOnChanges(changes: SimpleChanges): void;
25
- onEditOrView(): void;
26
- onDisable(): void;
27
- onDelete(): void;
28
- onDuplicate(): void;
29
- onMoveRight(): void;
30
- onMoveLeft(): void;
31
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioDetailsPhaseStepComponent, never>;
32
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioDetailsPhaseStepComponent, "gio-ps-flow-details-phase-step", never, { "readOnly": { "alias": "readOnly"; "required": false; }; "step": { "alias": "step"; "required": false; }; "genericPolicies": { "alias": "genericPolicies"; "required": false; }; "flowPhase": { "alias": "flowPhase"; "required": true; }; "apiType": { "alias": "apiType"; "required": true; }; "disableMoveRight": { "alias": "disableMoveRight"; "required": false; }; "disableMoveLeft": { "alias": "disableMoveLeft"; "required": false; }; }, { "stepChange": "stepChange"; "deleted": "deleted"; "disabled": "disabled"; "duplicated": "duplicated"; "movedRight": "movedRight"; "movedLeft": "movedLeft"; }, never, never, true, never>;
33
- }
@@ -1,18 +0,0 @@
1
- import { MatDialogRef } from '@angular/material/dialog';
2
- import { UntypedFormGroup } from '@angular/forms';
3
- import { FlowExecution } from '../../models';
4
- import * as i0 from "@angular/core";
5
- export type GioPolicyStudioFlowExecutionFormDialogData = {
6
- flowExecution?: FlowExecution;
7
- readOnly?: boolean;
8
- };
9
- export declare class GioPolicyStudioFlowExecutionFormDialogComponent {
10
- dialogRef: MatDialogRef<GioPolicyStudioFlowExecutionFormDialogComponent, FlowExecution | undefined>;
11
- flowExecutionFormGroup?: UntypedFormGroup;
12
- existingFlowExecution?: FlowExecution;
13
- readOnly: boolean;
14
- constructor(dialogRef: MatDialogRef<GioPolicyStudioFlowExecutionFormDialogComponent, FlowExecution | undefined>, flowDialogData: GioPolicyStudioFlowExecutionFormDialogData);
15
- onSubmit(): void;
16
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioFlowExecutionFormDialogComponent, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioFlowExecutionFormDialogComponent, "gio-ps-flow-execution-form-dialog", never, {}, {}, never, never, true, never>;
18
- }
@@ -1,21 +0,0 @@
1
- import { MatDialogRef } from '@angular/material/dialog';
2
- import { UntypedFormGroup } from '@angular/forms';
3
- import { GioPolicyStudioFlowFormDialogResult } from '../gio-ps-flow-form-dialog-result.model';
4
- import { ConnectorInfo } from '../../../models';
5
- import { FlowVM } from '../../../policy-studio/gio-policy-studio.model';
6
- import * as i0 from "@angular/core";
7
- export type GioPolicyStudioFlowMessageFormDialogData = {
8
- flow?: FlowVM;
9
- entrypoints?: ConnectorInfo[];
10
- };
11
- export declare class GioPolicyStudioFlowMessageFormDialogComponent {
12
- dialogRef: MatDialogRef<GioPolicyStudioFlowMessageFormDialogComponent, GioPolicyStudioFlowFormDialogResult>;
13
- entrypoints: ConnectorInfo[];
14
- flowFormGroup?: UntypedFormGroup;
15
- existingFlow?: FlowVM;
16
- mode: 'create' | 'edit';
17
- constructor(dialogRef: MatDialogRef<GioPolicyStudioFlowMessageFormDialogComponent, GioPolicyStudioFlowFormDialogResult>, flowDialogData: GioPolicyStudioFlowMessageFormDialogData);
18
- onSubmit(): void;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioFlowMessageFormDialogComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioFlowMessageFormDialogComponent, "gio-ps-flow-message-form-dialog", never, {}, {}, never, never, true, never>;
21
- }
@@ -1,21 +0,0 @@
1
- import { MatDialogRef } from '@angular/material/dialog';
2
- import { UntypedFormGroup } from '@angular/forms';
3
- import { GioPolicyStudioFlowFormDialogResult } from '../gio-ps-flow-form-dialog-result.model';
4
- import { FlowVM } from '../../../policy-studio/gio-policy-studio.model';
5
- import * as i0 from "@angular/core";
6
- export type GioPolicyStudioFlowNativeFormDialogData = {
7
- flow?: FlowVM;
8
- parentGroupName?: string;
9
- };
10
- export declare class GioPolicyStudioFlowNativeFormDialogComponent {
11
- dialogRef: MatDialogRef<GioPolicyStudioFlowNativeFormDialogComponent, GioPolicyStudioFlowFormDialogResult>;
12
- flowFormGroup?: UntypedFormGroup;
13
- existingFlow?: FlowVM;
14
- mode: 'create' | 'edit';
15
- private defaultFlowName;
16
- constructor(dialogRef: MatDialogRef<GioPolicyStudioFlowNativeFormDialogComponent, GioPolicyStudioFlowFormDialogResult>, flowDialogData: GioPolicyStudioFlowNativeFormDialogData);
17
- onSubmit(): void;
18
- private getFlowName;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioFlowNativeFormDialogComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioFlowNativeFormDialogComponent, "gio-ps-flow-native-form-dialog", never, {}, {}, never, never, true, never>;
21
- }
@@ -1,24 +0,0 @@
1
- import { MatDialogRef } from '@angular/material/dialog';
2
- import { UntypedFormGroup } from '@angular/forms';
3
- import { GioPolicyStudioFlowFormDialogResult } from '../gio-ps-flow-form-dialog-result.model';
4
- import { HttpMethod } from '../../../models';
5
- import { FlowVM } from '../../../policy-studio/gio-policy-studio.model';
6
- import * as i0 from "@angular/core";
7
- export type GioPolicyStudioFlowProxyFormDialogData = {
8
- flow?: FlowVM;
9
- };
10
- type HttpMethodVM = HttpMethod | 'ALL';
11
- export declare class GioPolicyStudioFlowProxyFormDialogComponent {
12
- dialogRef: MatDialogRef<GioPolicyStudioFlowProxyFormDialogComponent, GioPolicyStudioFlowFormDialogResult>;
13
- flowFormGroup?: UntypedFormGroup;
14
- existingFlow?: FlowVM;
15
- mode: 'create' | 'edit';
16
- methods: HttpMethodVM[];
17
- constructor(dialogRef: MatDialogRef<GioPolicyStudioFlowProxyFormDialogComponent, GioPolicyStudioFlowFormDialogResult>, flowDialogData: GioPolicyStudioFlowProxyFormDialogData);
18
- onSubmit(): void;
19
- tagValidationHook(tag: string, validationCb: (shouldAddTag: boolean) => void): void;
20
- static ɵfac: i0.ɵɵFactoryDeclaration<GioPolicyStudioFlowProxyFormDialogComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<GioPolicyStudioFlowProxyFormDialogComponent, "gio-ps-flow-proxy-form-dialog", never, {}, {}, never, never, true, never>;
22
- }
23
- export declare const sanitizePath: (path: string) => string;
24
- export {};
@@ -1,2 +0,0 @@
1
- import { FlowVM } from '../../policy-studio/gio-policy-studio.model';
2
- export type GioPolicyStudioFlowFormDialogResult = FlowVM | false;