@cqa-lib/cqa-ui 1.1.187 → 1.1.189

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 (24) hide show
  1. package/esm2020/lib/dynamic-select/dynamic-select-field.component.mjs +27 -3
  2. package/esm2020/lib/test-case-details/normal-step/normal-step.component.mjs +31 -6
  3. package/esm2020/lib/test-case-details/step-details-drawer/step-details-drawer-data.mjs +3 -0
  4. package/esm2020/lib/test-case-details/step-details-drawer/step-details-drawer-field.config.mjs +188 -0
  5. package/esm2020/lib/test-case-details/step-details-drawer/step-details-drawer-ref.mjs +28 -0
  6. package/esm2020/lib/test-case-details/step-details-drawer/step-details-drawer.component.mjs +291 -0
  7. package/esm2020/lib/test-case-details/step-details-drawer/step-details-drawer.service.mjs +67 -0
  8. package/esm2020/lib/ui-kit.module.mjs +8 -3
  9. package/esm2020/lib/utils/tw-overlay-container.mjs +6 -3
  10. package/esm2020/public-api.mjs +6 -1
  11. package/fesm2015/cqa-lib-cqa-ui.mjs +626 -12
  12. package/fesm2015/cqa-lib-cqa-ui.mjs.map +1 -1
  13. package/fesm2020/cqa-lib-cqa-ui.mjs +616 -12
  14. package/fesm2020/cqa-lib-cqa-ui.mjs.map +1 -1
  15. package/lib/dynamic-select/dynamic-select-field.component.d.ts +6 -0
  16. package/lib/test-case-details/step-details-drawer/step-details-drawer-data.d.ts +7 -0
  17. package/lib/test-case-details/step-details-drawer/step-details-drawer-field.config.d.ts +51 -0
  18. package/lib/test-case-details/step-details-drawer/step-details-drawer-ref.d.ts +13 -0
  19. package/lib/test-case-details/step-details-drawer/step-details-drawer.component.d.ts +60 -0
  20. package/lib/test-case-details/step-details-drawer/step-details-drawer.service.d.ts +22 -0
  21. package/lib/ui-kit.module.d.ts +21 -20
  22. package/package.json +1 -1
  23. package/public-api.d.ts +5 -0
  24. package/styles.css +1 -1
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const STEP_DETAILS_DRAWER_DATA = new InjectionToken('STEP_DETAILS_DRAWER_DATA');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1kZXRhaWxzLWRyYXdlci1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi90ZXN0LWNhc2UtZGV0YWlscy9zdGVwLWRldGFpbHMtZHJhd2VyL3N0ZXAtZGV0YWlscy1kcmF3ZXItZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUS9DLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUF3QiwwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRlc3RDYXNlU3RlcENvbmZpZyB9IGZyb20gJy4uL3Rlc3QtY2FzZS1zdGVwLm1vZGVscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RlcERldGFpbHNEcmF3ZXJEYXRhIHtcbiAgc3RlcDogVGVzdENhc2VTdGVwQ29uZmlnO1xuICBzdGVwTnVtYmVyOiBudW1iZXIgfCBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBTVEVQX0RFVEFJTFNfRFJBV0VSX0RBVEEgPSBuZXcgSW5qZWN0aW9uVG9rZW48U3RlcERldGFpbHNEcmF3ZXJEYXRhPignU1RFUF9ERVRBSUxTX0RSQVdFUl9EQVRBJyk7XG4iXX0=
@@ -0,0 +1,188 @@
1
+ /**
2
+ * Configuration for Step Details Drawer (Edit In Depth).
3
+ * Form is fully dynamic by Step Type – no hardcoded field lists.
4
+ */
5
+ import { isNormalStepConfig, isApiStepConfig, isAiAgentStepConfig, } from '../test-case-step.models';
6
+ /**
7
+ * Resolves drawer step type from a test case step config.
8
+ */
9
+ export function getStepDetailsStepType(step) {
10
+ if (!step)
11
+ return null;
12
+ if (isApiStepConfig(step))
13
+ return 'api';
14
+ if (isAiAgentStepConfig(step))
15
+ return 'aiAgent';
16
+ if (isNormalStepConfig(step) && step.eventType === 'custom')
17
+ return 'custom';
18
+ return null;
19
+ }
20
+ /**
21
+ * Fields shown per step type (configuration-based).
22
+ * Custom: Description, Metadata, Retry Count (if configured), Advanced (if configured).
23
+ * API: Method, URL, Headers, Body, Save Output as Variable, Advanced (if configured).
24
+ * AI Agent: Agent Task, Type, Metadata, Environment, Description, Constraints (toggles + Max Retries), Advanced (toggles + Retry Count, Iframe locator, Other Locators).
25
+ */
26
+ export const STEP_DETAILS_FIELDS_BY_TYPE = {
27
+ custom: ['description', 'metadata', 'retryCount', 'advanced'],
28
+ api: ['method', 'url', 'headers', 'body', 'saveOutputAsVariable', 'advanced'],
29
+ aiAgent: [
30
+ 'agentTask',
31
+ 'type',
32
+ 'metadata',
33
+ 'environment',
34
+ 'description',
35
+ 'onlyUseAttachedContext',
36
+ 'takeScreenshotsWhenVerifying',
37
+ 'maxRetries',
38
+ 'advanced',
39
+ 'retryCount',
40
+ 'iframeLocator',
41
+ 'otherLocators',
42
+ ],
43
+ };
44
+ export const STEP_DETAILS_FIELD_META = {
45
+ description: { key: 'description', label: 'Description', placeholder: 'Text Input', controlType: 'text', section: 'main' },
46
+ metadata: { key: 'metadata', label: 'Metadata', placeholder: 'Text Input', controlType: 'text', section: 'main' },
47
+ retryCount: {
48
+ key: 'retryCount',
49
+ label: 'Retry Count',
50
+ placeholder: 'Dynamic search selector from library or manual',
51
+ controlType: 'dropdown',
52
+ section: 'advanced',
53
+ options: [
54
+ { value: '0', label: '0' },
55
+ { value: '1', label: '1' },
56
+ { value: '2', label: '2' },
57
+ { value: '3', label: '3' },
58
+ ],
59
+ },
60
+ advanced: { key: 'advanced', label: 'Advanced', controlType: 'toggleGroup' },
61
+ method: {
62
+ key: 'method',
63
+ label: 'Method',
64
+ placeholder: 'Method',
65
+ controlType: 'dropdown',
66
+ section: 'main',
67
+ options: [
68
+ { value: 'GET', label: 'GET' },
69
+ { value: 'POST', label: 'POST' },
70
+ { value: 'PUT', label: 'PUT' },
71
+ { value: 'DELETE', label: 'DELETE' },
72
+ { value: 'PATCH', label: 'PATCH' },
73
+ ],
74
+ },
75
+ url: { key: 'url', label: 'URL', placeholder: 'URL', controlType: 'text', section: 'main' },
76
+ headers: { key: 'headers', label: 'Headers', controlType: 'text', section: 'main' },
77
+ body: { key: 'body', label: 'Body', placeholder: 'Request body', controlType: 'code', section: 'main' },
78
+ saveOutputAsVariable: {
79
+ key: 'saveOutputAsVariable',
80
+ label: 'Save Output as Variable',
81
+ placeholder: 'Variable name',
82
+ controlType: 'text',
83
+ section: 'main',
84
+ },
85
+ agentTask: {
86
+ key: 'agentTask',
87
+ label: 'Agent Task',
88
+ placeholder: 'What should the agent achieve?',
89
+ controlType: 'textarea',
90
+ section: 'main',
91
+ required: true,
92
+ rows: 4,
93
+ tip: 'Tip: Use numbered steps or bullet points for complex tasks.',
94
+ },
95
+ type: {
96
+ key: 'type',
97
+ label: 'Type',
98
+ placeholder: 'Type',
99
+ controlType: 'dropdown',
100
+ section: 'main',
101
+ options: [
102
+ { value: 'default', label: 'Default' },
103
+ { value: 'browser', label: 'Browser' },
104
+ ],
105
+ },
106
+ environment: {
107
+ key: 'environment',
108
+ label: 'Environment',
109
+ placeholder: 'Environment',
110
+ controlType: 'dropdown',
111
+ section: 'main',
112
+ options: [
113
+ { value: 'default', label: 'Default' },
114
+ { value: 'staging', label: 'Staging' },
115
+ { value: 'prod', label: 'Production' },
116
+ ],
117
+ },
118
+ maxRetries: {
119
+ key: 'maxRetries',
120
+ label: 'Max Retries',
121
+ placeholder: '3 retries (recommended)',
122
+ controlType: 'dropdown',
123
+ section: 'constraints',
124
+ options: [
125
+ { value: '0', label: '0' },
126
+ { value: '1', label: '1' },
127
+ { value: '2', label: '2' },
128
+ { value: '3', label: '3 retries (recommended)' },
129
+ ],
130
+ },
131
+ onlyUseAttachedContext: {
132
+ key: 'onlyUseAttachedContext',
133
+ label: 'Use existing elements only',
134
+ subLabel: 'Only use elements from the attached context',
135
+ controlType: 'toggle',
136
+ section: 'constraints',
137
+ },
138
+ takeScreenshotsWhenVerifying: {
139
+ key: 'takeScreenshotsWhenVerifying',
140
+ label: 'Capture evidence',
141
+ subLabel: 'Take screenshots when verifying conditions',
142
+ controlType: 'toggle',
143
+ section: 'constraints',
144
+ },
145
+ iframeLocator: {
146
+ key: 'iframeLocator',
147
+ label: 'Iframe locator',
148
+ placeholder: 'Dynamic search selector from library or manual',
149
+ controlType: 'dropdown',
150
+ section: 'advanced',
151
+ options: [
152
+ { value: 'manual', label: 'Dynamic search selector from library or manual' },
153
+ ],
154
+ },
155
+ otherLocators: {
156
+ key: 'otherLocators',
157
+ label: 'Other Locators',
158
+ placeholder: 'Dynamic search selector from library or manual',
159
+ controlType: 'dropdown',
160
+ section: 'advanced',
161
+ options: [
162
+ { value: 'manual', label: 'Dynamic search selector from library or manual' },
163
+ ],
164
+ },
165
+ continueOnError: {
166
+ key: 'continueOnError',
167
+ label: 'Continue on Error',
168
+ subLabel: "Don't fail the test if this step fails.",
169
+ controlType: 'toggle',
170
+ section: 'advanced',
171
+ },
172
+ disabled: {
173
+ key: 'disabled',
174
+ label: 'Disabled',
175
+ subLabel: 'Skip this step during execution.',
176
+ controlType: 'toggle',
177
+ section: 'advanced',
178
+ },
179
+ };
180
+ /** Toggle fields always shown inside the Advanced section. */
181
+ export const ADVANCED_TOGGLE_KEYS = ['continueOnError', 'disabled'];
182
+ /** Field keys shown inside Advanced (per step type), in addition to ADVANCED_TOGGLE_KEYS. */
183
+ export const ADVANCED_SUBFIELDS_BY_TYPE = {
184
+ custom: [],
185
+ api: [],
186
+ aiAgent: ['retryCount', 'iframeLocator', 'otherLocators'],
187
+ };
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1kZXRhaWxzLWRyYXdlci1maWVsZC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3Rlc3QtY2FzZS1kZXRhaWxzL3N0ZXAtZGV0YWlscy1kcmF3ZXIvc3RlcC1kZXRhaWxzLWRyYXdlci1maWVsZC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUtMLGtCQUFrQixFQUNsQixlQUFlLEVBQ2YsbUJBQW1CLEdBQ3BCLE1BQU0sMEJBQTBCLENBQUM7QUEyQmxDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLElBQTJDO0lBQ2hGLElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFDdkIsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDeEMsSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLENBQUM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUNoRCxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFLLElBQXlCLENBQUMsU0FBUyxLQUFLLFFBQVE7UUFBRSxPQUFPLFFBQVEsQ0FBQztJQUNuRyxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUF1RDtJQUM3RixNQUFNLEVBQUUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLENBQUM7SUFDN0QsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLHNCQUFzQixFQUFFLFVBQVUsQ0FBQztJQUM3RSxPQUFPLEVBQUU7UUFDUCxXQUFXO1FBQ1gsTUFBTTtRQUNOLFVBQVU7UUFDVixhQUFhO1FBQ2IsYUFBYTtRQUNiLHdCQUF3QjtRQUN4Qiw4QkFBOEI7UUFDOUIsWUFBWTtRQUNaLFVBQVU7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VyxFQUFFLFFBQVE7UUFDckIsT0FBTyxFQUFFLFVBQVU7S0FDcEI7Q0FDRixDQUFDO0FBRUYsOERBQThEO0FBQzlELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUEwQixDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBRTNGLDZGQUE2RjtBQUM3RixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBdUQ7SUFDNUYsTUFBTSxFQUFFLEVBQUU7SUFDVixHQUFHLEVBQUUsRUFBRTtJQUNQLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZSxDQUFDO0NBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIFN0ZXAgRGV0YWlscyBEcmF3ZXIgKEVkaXQgSW4gRGVwdGgpLlxuICogRm9ybSBpcyBmdWxseSBkeW5hbWljIGJ5IFN0ZXAgVHlwZSDigJMgbm8gaGFyZGNvZGVkIGZpZWxkIGxpc3RzLlxuICovXG5cbmltcG9ydCB7XG4gIFRlc3RDYXNlU3RlcENvbmZpZyxcbiAgTm9ybWFsU3RlcENvbmZpZyxcbiAgQXBpU3RlcENvbmZpZyxcbiAgQWlBZ2VudFN0ZXBDb25maWcsXG4gIGlzTm9ybWFsU3RlcENvbmZpZyxcbiAgaXNBcGlTdGVwQ29uZmlnLFxuICBpc0FpQWdlbnRTdGVwQ29uZmlnLFxufSBmcm9tICcuLi90ZXN0LWNhc2Utc3RlcC5tb2RlbHMnO1xuXG4vKiogRmllbGQga2V5cyB1c2VkIGZvciBjb25maWd1cmF0aW9uLWJhc2VkIHJlbmRlcmluZy4gKi9cbmV4cG9ydCB0eXBlIFN0ZXBEZXRhaWxzRmllbGRLZXkgPVxuICB8ICdkZXNjcmlwdGlvbidcbiAgfCAnbWV0YWRhdGEnXG4gIHwgJ3JldHJ5Q291bnQnXG4gIHwgJ2FkdmFuY2VkJ1xuICB8ICdtZXRob2QnXG4gIHwgJ3VybCdcbiAgfCAnaGVhZGVycydcbiAgfCAnYm9keSdcbiAgfCAnc2F2ZU91dHB1dEFzVmFyaWFibGUnXG4gIHwgJ2FnZW50VGFzaydcbiAgfCAndHlwZSdcbiAgfCAnZW52aXJvbm1lbnQnXG4gIHwgJ21heFJldHJpZXMnXG4gIHwgJ29ubHlVc2VBdHRhY2hlZENvbnRleHQnXG4gIHwgJ3Rha2VTY3JlZW5zaG90c1doZW5WZXJpZnlpbmcnXG4gIHwgJ2lmcmFtZUxvY2F0b3InXG4gIHwgJ290aGVyTG9jYXRvcnMnXG4gIHwgJ2NvbnRpbnVlT25FcnJvcidcbiAgfCAnZGlzYWJsZWQnO1xuXG4vKiogU3RlcCB0eXBlIGZvciB0aGUgZHJhd2VyIChkcml2ZXMgd2hpY2ggZmllbGRzIGFyZSBzaG93bikuICovXG5leHBvcnQgdHlwZSBTdGVwRGV0YWlsc1N0ZXBUeXBlID0gJ2N1c3RvbScgfCAnYXBpJyB8ICdhaUFnZW50JztcblxuLyoqXG4gKiBSZXNvbHZlcyBkcmF3ZXIgc3RlcCB0eXBlIGZyb20gYSB0ZXN0IGNhc2Ugc3RlcCBjb25maWcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTdGVwRGV0YWlsc1N0ZXBUeXBlKHN0ZXA6IFRlc3RDYXNlU3RlcENvbmZpZyB8IG51bGwgfCB1bmRlZmluZWQpOiBTdGVwRGV0YWlsc1N0ZXBUeXBlIHwgbnVsbCB7XG4gIGlmICghc3RlcCkgcmV0dXJuIG51bGw7XG4gIGlmIChpc0FwaVN0ZXBDb25maWcoc3RlcCkpIHJldHVybiAnYXBpJztcbiAgaWYgKGlzQWlBZ2VudFN0ZXBDb25maWcoc3RlcCkpIHJldHVybiAnYWlBZ2VudCc7XG4gIGlmIChpc05vcm1hbFN0ZXBDb25maWcoc3RlcCkgJiYgKHN0ZXAgYXMgTm9ybWFsU3RlcENvbmZpZykuZXZlbnRUeXBlID09PSAnY3VzdG9tJykgcmV0dXJuICdjdXN0b20nO1xuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBGaWVsZHMgc2hvd24gcGVyIHN0ZXAgdHlwZSAoY29uZmlndXJhdGlvbi1iYXNlZCkuXG4gKiBDdXN0b206IERlc2NyaXB0aW9uLCBNZXRhZGF0YSwgUmV0cnkgQ291bnQgKGlmIGNvbmZpZ3VyZWQpLCBBZHZhbmNlZCAoaWYgY29uZmlndXJlZCkuXG4gKiBBUEk6IE1ldGhvZCwgVVJMLCBIZWFkZXJzLCBCb2R5LCBTYXZlIE91dHB1dCBhcyBWYXJpYWJsZSwgQWR2YW5jZWQgKGlmIGNvbmZpZ3VyZWQpLlxuICogQUkgQWdlbnQ6IEFnZW50IFRhc2ssIFR5cGUsIE1ldGFkYXRhLCBFbnZpcm9ubWVudCwgRGVzY3JpcHRpb24sIENvbnN0cmFpbnRzICh0b2dnbGVzICsgTWF4IFJldHJpZXMpLCBBZHZhbmNlZCAodG9nZ2xlcyArIFJldHJ5IENvdW50LCBJZnJhbWUgbG9jYXRvciwgT3RoZXIgTG9jYXRvcnMpLlxuICovXG5leHBvcnQgY29uc3QgU1RFUF9ERVRBSUxTX0ZJRUxEU19CWV9UWVBFOiBSZWNvcmQ8U3RlcERldGFpbHNTdGVwVHlwZSwgU3RlcERldGFpbHNGaWVsZEtleVtdPiA9IHtcbiAgY3VzdG9tOiBbJ2Rlc2NyaXB0aW9uJywgJ21ldGFkYXRhJywgJ3JldHJ5Q291bnQnLCAnYWR2YW5jZWQnXSxcbiAgYXBpOiBbJ21ldGhvZCcsICd1cmwnLCAnaGVhZGVycycsICdib2R5JywgJ3NhdmVPdXRwdXRBc1ZhcmlhYmxlJywgJ2FkdmFuY2VkJ10sXG4gIGFpQWdlbnQ6IFtcbiAgICAnYWdlbnRUYXNrJyxcbiAgICAndHlwZScsXG4gICAgJ21ldGFkYXRhJyxcbiAgICAnZW52aXJvbm1lbnQnLFxuICAgICdkZXNjcmlwdGlvbicsXG4gICAgJ29ubHlVc2VBdHRhY2hlZENvbnRleHQnLFxuICAgICd0YWtlU2NyZWVuc2hvdHNXaGVuVmVyaWZ5aW5nJyxcbiAgICAnbWF4UmV0cmllcycsXG4gICAgJ2FkdmFuY2VkJyxcbiAgICAncmV0cnlDb3VudCcsXG4gICAgJ2lmcmFtZUxvY2F0b3InLFxuICAgICdvdGhlckxvY2F0b3JzJyxcbiAgXSxcbn07XG5cbi8qKiBTZWN0aW9uIGZvciBncm91cGluZyBmaWVsZHMgKG1haW4gZm9ybSwgY29uc3RyYWludHMsIG9yIGluc2lkZSBhZHZhbmNlZCkuICovXG5leHBvcnQgdHlwZSBTdGVwRGV0YWlsc0ZpZWxkU2VjdGlvbiA9ICdtYWluJyB8ICdjb25zdHJhaW50cycgfCAnYWR2YW5jZWQnO1xuXG4vKiogT3B0aW9uIGZvciBkcm9wZG93biBmaWVsZHMgKHZhbHVlL2xhYmVsKS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RlcERldGFpbHNTZWxlY3RPcHRpb24ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xufVxuXG4vKiogTWV0YWRhdGEgcGVyIGZpZWxkIChsYWJlbCwgcGxhY2Vob2xkZXIsIGNvbnRyb2wgdHlwZSwgdmlzaWJpbGl0eSkuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXBEZXRhaWxzRmllbGRNZXRhIHtcbiAga2V5OiBTdGVwRGV0YWlsc0ZpZWxkS2V5O1xuICBsYWJlbDogc3RyaW5nO1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgY29udHJvbFR5cGU6ICd0ZXh0JyB8ICd0ZXh0YXJlYScgfCAnZHJvcGRvd24nIHwgJ2NvZGUnIHwgJ3RvZ2dsZUdyb3VwJyB8ICd0b2dnbGUnO1xuICAvKiogU2VjdGlvbiBmb3IgZ3JvdXBpbmc7IHVzZWQgZm9yIGNvbmRpdGlvbmFsIGhlYWRpbmdzIChlLmcuIFwiQ29uc3RyYWludHNcIikuICovXG4gIHNlY3Rpb24/OiBTdGVwRGV0YWlsc0ZpZWxkU2VjdGlvbjtcbiAgLyoqIERyb3Bkb3duIG9wdGlvbnMgKGZvciBjb250cm9sVHlwZSA9PT0gJ2Ryb3Bkb3duJykuICovXG4gIG9wdGlvbnM/OiBTdGVwRGV0YWlsc1NlbGVjdE9wdGlvbltdO1xuICAvKiogV2hldGhlciB0aGUgZmllbGQgaXMgcmVxdWlyZWQgKGUuZy4gc2hvdyBSZXF1aXJlZCBwaWxsKS4gKi9cbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAvKiogVGV4dGFyZWEgcm93cy4gKi9cbiAgcm93cz86IG51bWJlcjtcbiAgLyoqIEhlbHBlciB0ZXh0IG9yIHRpcCBiZWxvdyB0aGUgZmllbGQuICovXG4gIHRpcD86IHN0cmluZztcbiAgLyoqIFN1Yi1sYWJlbCBvciBkZXNjcmlwdGlvbiBmb3IgdG9nZ2xlcyAoZS5nLiBcIk9ubHkgdXNlIGVsZW1lbnRzIGZyb20gdGhlIGF0dGFjaGVkIGNvbnRleHRcIikuICovXG4gIHN1YkxhYmVsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgU1RFUF9ERVRBSUxTX0ZJRUxEX01FVEE6IFJlY29yZDxTdGVwRGV0YWlsc0ZpZWxkS2V5LCBTdGVwRGV0YWlsc0ZpZWxkTWV0YT4gPSB7XG4gIGRlc2NyaXB0aW9uOiB7IGtleTogJ2Rlc2NyaXB0aW9uJywgbGFiZWw6ICdEZXNjcmlwdGlvbicsIHBsYWNlaG9sZGVyOiAnVGV4dCBJbnB1dCcsIGNvbnRyb2xUeXBlOiAndGV4dCcsIHNlY3Rpb246ICdtYWluJyB9LFxuICBtZXRhZGF0YTogeyBrZXk6ICdtZXRhZGF0YScsIGxhYmVsOiAnTWV0YWRhdGEnLCBwbGFjZWhvbGRlcjogJ1RleHQgSW5wdXQnLCBjb250cm9sVHlwZTogJ3RleHQnLCBzZWN0aW9uOiAnbWFpbicgfSxcbiAgcmV0cnlDb3VudDoge1xuICAgIGtleTogJ3JldHJ5Q291bnQnLFxuICAgIGxhYmVsOiAnUmV0cnkgQ291bnQnLFxuICAgIHBsYWNlaG9sZGVyOiAnRHluYW1pYyBzZWFyY2ggc2VsZWN0b3IgZnJvbSBsaWJyYXJ5IG9yIG1hbnVhbCcsXG4gICAgY29udHJvbFR5cGU6ICdkcm9wZG93bicsXG4gICAgc2VjdGlvbjogJ2FkdmFuY2VkJyxcbiAgICBvcHRpb25zOiBbXG4gICAgICB7IHZhbHVlOiAnMCcsIGxhYmVsOiAnMCcgfSxcbiAgICAgIHsgdmFsdWU6ICcxJywgbGFiZWw6ICcxJyB9LFxuICAgICAgeyB2YWx1ZTogJzInLCBsYWJlbDogJzInIH0sXG4gICAgICB7IHZhbHVlOiAnMycsIGxhYmVsOiAnMycgfSxcbiAgICBdLFxuICB9LFxuICBhZHZhbmNlZDogeyBrZXk6ICdhZHZhbmNlZCcsIGxhYmVsOiAnQWR2YW5jZWQnLCBjb250cm9sVHlwZTogJ3RvZ2dsZUdyb3VwJyB9LFxuICBtZXRob2Q6IHtcbiAgICBrZXk6ICdtZXRob2QnLFxuICAgIGxhYmVsOiAnTWV0aG9kJyxcbiAgICBwbGFjZWhvbGRlcjogJ01ldGhvZCcsXG4gICAgY29udHJvbFR5cGU6ICdkcm9wZG93bicsXG4gICAgc2VjdGlvbjogJ21haW4nLFxuICAgIG9wdGlvbnM6IFtcbiAgICAgIHsgdmFsdWU6ICdHRVQnLCBsYWJlbDogJ0dFVCcgfSxcbiAgICAgIHsgdmFsdWU6ICdQT1NUJywgbGFiZWw6ICdQT1NUJyB9LFxuICAgICAgeyB2YWx1ZTogJ1BVVCcsIGxhYmVsOiAnUFVUJyB9LFxuICAgICAgeyB2YWx1ZTogJ0RFTEVURScsIGxhYmVsOiAnREVMRVRFJyB9LFxuICAgICAgeyB2YWx1ZTogJ1BBVENIJywgbGFiZWw6ICdQQVRDSCcgfSxcbiAgICBdLFxuICB9LFxuICB1cmw6IHsga2V5OiAndXJsJywgbGFiZWw6ICdVUkwnLCBwbGFjZWhvbGRlcjogJ1VSTCcsIGNvbnRyb2xUeXBlOiAndGV4dCcsIHNlY3Rpb246ICdtYWluJyB9LFxuICBoZWFkZXJzOiB7IGtleTogJ2hlYWRlcnMnLCBsYWJlbDogJ0hlYWRlcnMnLCBjb250cm9sVHlwZTogJ3RleHQnLCBzZWN0aW9uOiAnbWFpbicgfSxcbiAgYm9keTogeyBrZXk6ICdib2R5JywgbGFiZWw6ICdCb2R5JywgcGxhY2Vob2xkZXI6ICdSZXF1ZXN0IGJvZHknLCBjb250cm9sVHlwZTogJ2NvZGUnLCBzZWN0aW9uOiAnbWFpbicgfSxcbiAgc2F2ZU91dHB1dEFzVmFyaWFibGU6IHtcbiAgICBrZXk6ICdzYXZlT3V0cHV0QXNWYXJpYWJsZScsXG4gICAgbGFiZWw6ICdTYXZlIE91dHB1dCBhcyBWYXJpYWJsZScsXG4gICAgcGxhY2Vob2xkZXI6ICdWYXJpYWJsZSBuYW1lJyxcbiAgICBjb250cm9sVHlwZTogJ3RleHQnLFxuICAgIHNlY3Rpb246ICdtYWluJyxcbiAgfSxcbiAgYWdlbnRUYXNrOiB7XG4gICAga2V5OiAnYWdlbnRUYXNrJyxcbiAgICBsYWJlbDogJ0FnZW50IFRhc2snLFxuICAgIHBsYWNlaG9sZGVyOiAnV2hhdCBzaG91bGQgdGhlIGFnZW50IGFjaGlldmU/JyxcbiAgICBjb250cm9sVHlwZTogJ3RleHRhcmVhJyxcbiAgICBzZWN0aW9uOiAnbWFpbicsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgcm93czogNCxcbiAgICB0aXA6ICdUaXA6IFVzZSBudW1iZXJlZCBzdGVwcyBvciBidWxsZXQgcG9pbnRzIGZvciBjb21wbGV4IHRhc2tzLicsXG4gIH0sXG4gIHR5cGU6IHtcbiAgICBrZXk6ICd0eXBlJyxcbiAgICBsYWJlbDogJ1R5cGUnLFxuICAgIHBsYWNlaG9sZGVyOiAnVHlwZScsXG4gICAgY29udHJvbFR5cGU6ICdkcm9wZG93bicsXG4gICAgc2VjdGlvbjogJ21haW4nLFxuICAgIG9wdGlvbnM6IFtcbiAgICAgIHsgdmFsdWU6ICdkZWZhdWx0JywgbGFiZWw6ICdEZWZhdWx0JyB9LFxuICAgICAgeyB2YWx1ZTogJ2Jyb3dzZXInLCBsYWJlbDogJ0Jyb3dzZXInIH0sXG4gICAgXSxcbiAgfSxcbiAgZW52aXJvbm1lbnQ6IHtcbiAgICBrZXk6ICdlbnZpcm9ubWVudCcsXG4gICAgbGFiZWw6ICdFbnZpcm9ubWVudCcsXG4gICAgcGxhY2Vob2xkZXI6ICdFbnZpcm9ubWVudCcsXG4gICAgY29udHJvbFR5cGU6ICdkcm9wZG93bicsXG4gICAgc2VjdGlvbjogJ21haW4nLFxuICAgIG9wdGlvbnM6IFtcbiAgICAgIHsgdmFsdWU6ICdkZWZhdWx0JywgbGFiZWw6ICdEZWZhdWx0JyB9LFxuICAgICAgeyB2YWx1ZTogJ3N0YWdpbmcnLCBsYWJlbDogJ1N0YWdpbmcnIH0sXG4gICAgICB7IHZhbHVlOiAncHJvZCcsIGxhYmVsOiAnUHJvZHVjdGlvbicgfSxcbiAgICBdLFxuICB9LFxuICBtYXhSZXRyaWVzOiB7XG4gICAga2V5OiAnbWF4UmV0cmllcycsXG4gICAgbGFiZWw6ICdNYXggUmV0cmllcycsXG4gICAgcGxhY2Vob2xkZXI6ICczIHJldHJpZXMgKHJlY29tbWVuZGVkKScsXG4gICAgY29udHJvbFR5cGU6ICdkcm9wZG93bicsXG4gICAgc2VjdGlvbjogJ2NvbnN0cmFpbnRzJyxcbiAgICBvcHRpb25zOiBbXG4gICAgICB7IHZhbHVlOiAnMCcsIGxhYmVsOiAnMCcgfSxcbiAgICAgIHsgdmFsdWU6ICcxJywgbGFiZWw6ICcxJyB9LFxuICAgICAgeyB2YWx1ZTogJzInLCBsYWJlbDogJzInIH0sXG4gICAgICB7IHZhbHVlOiAnMycsIGxhYmVsOiAnMyByZXRyaWVzIChyZWNvbW1lbmRlZCknIH0sXG4gICAgXSxcbiAgfSxcbiAgb25seVVzZUF0dGFjaGVkQ29udGV4dDoge1xuICAgIGtleTogJ29ubHlVc2VBdHRhY2hlZENvbnRleHQnLFxuICAgIGxhYmVsOiAnVXNlIGV4aXN0aW5nIGVsZW1lbnRzIG9ubHknLFxuICAgIHN1YkxhYmVsOiAnT25seSB1c2UgZWxlbWVudHMgZnJvbSB0aGUgYXR0YWNoZWQgY29udGV4dCcsXG4gICAgY29udHJvbFR5cGU6ICd0b2dnbGUnLFxuICAgIHNlY3Rpb246ICdjb25zdHJhaW50cycsXG4gIH0sXG4gIHRha2VTY3JlZW5zaG90c1doZW5WZXJpZnlpbmc6IHtcbiAgICBrZXk6ICd0YWtlU2NyZWVuc2hvdHNXaGVuVmVyaWZ5aW5nJyxcbiAgICBsYWJlbDogJ0NhcHR1cmUgZXZpZGVuY2UnLFxuICAgIHN1YkxhYmVsOiAnVGFrZSBzY3JlZW5zaG90cyB3aGVuIHZlcmlmeWluZyBjb25kaXRpb25zJyxcbiAgICBjb250cm9sVHlwZTogJ3RvZ2dsZScsXG4gICAgc2VjdGlvbjogJ2NvbnN0cmFpbnRzJyxcbiAgfSxcbiAgaWZyYW1lTG9jYXRvcjoge1xuICAgIGtleTogJ2lmcmFtZUxvY2F0b3InLFxuICAgIGxhYmVsOiAnSWZyYW1lIGxvY2F0b3InLFxuICAgIHBsYWNlaG9sZGVyOiAnRHluYW1pYyBzZWFyY2ggc2VsZWN0b3IgZnJvbSBsaWJyYXJ5IG9yIG1hbnVhbCcsXG4gICAgY29udHJvbFR5cGU6ICdkcm9wZG93bicsXG4gICAgc2VjdGlvbjogJ2FkdmFuY2VkJyxcbiAgICBvcHRpb25zOiBbXG4gICAgICB7IHZhbHVlOiAnbWFudWFsJywgbGFiZWw6ICdEeW5hbWljIHNlYXJjaCBzZWxlY3RvciBmcm9tIGxpYnJhcnkgb3IgbWFudWFsJyB9LFxuICAgIF0sXG4gIH0sXG4gIG90aGVyTG9jYXRvcnM6IHtcbiAgICBrZXk6ICdvdGhlckxvY2F0b3JzJyxcbiAgICBsYWJlbDogJ090aGVyIExvY2F0b3JzJyxcbiAgICBwbGFjZWhvbGRlcjogJ0R5bmFtaWMgc2VhcmNoIHNlbGVjdG9yIGZyb20gbGlicmFyeSBvciBtYW51YWwnLFxuICAgIGNvbnRyb2xUeXBlOiAnZHJvcGRvd24nLFxuICAgIHNlY3Rpb246ICdhZHZhbmNlZCcsXG4gICAgb3B0aW9uczogW1xuICAgICAgeyB2YWx1ZTogJ21hbnVhbCcsIGxhYmVsOiAnRHluYW1pYyBzZWFyY2ggc2VsZWN0b3IgZnJvbSBsaWJyYXJ5IG9yIG1hbnVhbCcgfSxcbiAgICBdLFxuICB9LFxuICBjb250aW51ZU9uRXJyb3I6IHtcbiAgICBrZXk6ICdjb250aW51ZU9uRXJyb3InLFxuICAgIGxhYmVsOiAnQ29udGludWUgb24gRXJyb3InLFxuICAgIHN1YkxhYmVsOiBcIkRvbid0IGZhaWwgdGhlIHRlc3QgaWYgdGhpcyBzdGVwIGZhaWxzLlwiLFxuICAgIGNvbnRyb2xUeXBlOiAndG9nZ2xlJyxcbiAgICBzZWN0aW9uOiAnYWR2YW5jZWQnLFxuICB9LFxuICBkaXNhYmxlZDoge1xuICAgIGtleTogJ2Rpc2FibGVkJyxcbiAgICBsYWJlbDogJ0Rpc2FibGVkJyxcbiAgICBzdWJMYWJlbDogJ1NraXAgdGhpcyBzdGVwIGR1cmluZyBleGVjdXRpb24uJyxcbiAgICBjb250cm9sVHlwZTogJ3RvZ2dsZScsXG4gICAgc2VjdGlvbjogJ2FkdmFuY2VkJyxcbiAgfSxcbn07XG5cbi8qKiBUb2dnbGUgZmllbGRzIGFsd2F5cyBzaG93biBpbnNpZGUgdGhlIEFkdmFuY2VkIHNlY3Rpb24uICovXG5leHBvcnQgY29uc3QgQURWQU5DRURfVE9HR0xFX0tFWVM6IFN0ZXBEZXRhaWxzRmllbGRLZXlbXSA9IFsnY29udGludWVPbkVycm9yJywgJ2Rpc2FibGVkJ107XG5cbi8qKiBGaWVsZCBrZXlzIHNob3duIGluc2lkZSBBZHZhbmNlZCAocGVyIHN0ZXAgdHlwZSksIGluIGFkZGl0aW9uIHRvIEFEVkFOQ0VEX1RPR0dMRV9LRVlTLiAqL1xuZXhwb3J0IGNvbnN0IEFEVkFOQ0VEX1NVQkZJRUxEU19CWV9UWVBFOiBSZWNvcmQ8U3RlcERldGFpbHNTdGVwVHlwZSwgU3RlcERldGFpbHNGaWVsZEtleVtdPiA9IHtcbiAgY3VzdG9tOiBbXSxcbiAgYXBpOiBbXSxcbiAgYWlBZ2VudDogWydyZXRyeUNvdW50JywgJ2lmcmFtZUxvY2F0b3InLCAnb3RoZXJMb2NhdG9ycyddLFxufTtcbiJdfQ==
@@ -0,0 +1,28 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ export class StepDetailsDrawerRef {
4
+ constructor(overlayRef) {
5
+ this.overlayRef = overlayRef;
6
+ this.closed$ = new Subject();
7
+ this.isClosed = false;
8
+ this.overlayRef.detachments().subscribe(() => this.finishClose(undefined));
9
+ }
10
+ close(result) {
11
+ if (this.isClosed)
12
+ return;
13
+ this.finishClose(result);
14
+ this.overlayRef.dispose();
15
+ }
16
+ afterClosed() {
17
+ return this.closed$.asObservable();
18
+ }
19
+ finishClose(result) {
20
+ if (this.isClosed)
21
+ return;
22
+ this.isClosed = true;
23
+ this.closed$.next(result);
24
+ this.closed$.complete();
25
+ }
26
+ }
27
+ export const STEP_DETAILS_DRAWER_REF = new InjectionToken('STEP_DETAILS_DRAWER_REF');
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcC1kZXRhaWxzLWRyYXdlci1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3Rlc3QtY2FzZS1kZXRhaWxzL3N0ZXAtZGV0YWlscy1kcmF3ZXIvc3RlcC1kZXRhaWxzLWRyYXdlci1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsWUFBNkIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUhsQyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQXVCLENBQUM7UUFDdEQsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUd2QixJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFnQjtRQUNwQixJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxNQUEyQjtRQUM3QyxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUF1Qix5QkFBeUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjbGFzcyBTdGVwRGV0YWlsc0RyYXdlclJlZjxUUmVzdWx0ID0gdW5rbm93bj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGNsb3NlZCQgPSBuZXcgU3ViamVjdDxUUmVzdWx0IHwgdW5kZWZpbmVkPigpO1xuICBwcml2YXRlIGlzQ2xvc2VkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBvdmVybGF5UmVmOiBPdmVybGF5UmVmKSB7XG4gICAgdGhpcy5vdmVybGF5UmVmLmRldGFjaG1lbnRzKCkuc3Vic2NyaWJlKCgpID0+IHRoaXMuZmluaXNoQ2xvc2UodW5kZWZpbmVkKSk7XG4gIH1cblxuICBjbG9zZShyZXN1bHQ/OiBUUmVzdWx0KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNDbG9zZWQpIHJldHVybjtcbiAgICB0aGlzLmZpbmlzaENsb3NlKHJlc3VsdCk7XG4gICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgfVxuXG4gIGFmdGVyQ2xvc2VkKCk6IE9ic2VydmFibGU8VFJlc3VsdCB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLmNsb3NlZCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIGZpbmlzaENsb3NlKHJlc3VsdDogVFJlc3VsdCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzQ2xvc2VkKSByZXR1cm47XG4gICAgdGhpcy5pc0Nsb3NlZCA9IHRydWU7XG4gICAgdGhpcy5jbG9zZWQkLm5leHQocmVzdWx0KTtcbiAgICB0aGlzLmNsb3NlZCQuY29tcGxldGUoKTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgU1RFUF9ERVRBSUxTX0RSQVdFUl9SRUYgPSBuZXcgSW5qZWN0aW9uVG9rZW48U3RlcERldGFpbHNEcmF3ZXJSZWY+KCdTVEVQX0RFVEFJTFNfRFJBV0VSX1JFRicpO1xuIl19