@koobiq/components 18.29.0 → 18.31.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.
- package/code-block/_code-block-theme.scss +4 -12
- package/code-block/code-block-tokens.scss +3 -2
- package/code-block/code-block.scss +41 -10
- package/core/common-behaviors/error-state.d.ts +18 -0
- package/core/common-behaviors/index.d.ts +1 -1
- package/core/formatters/filesize/size.d.ts +19 -3
- package/core/forms/validators.d.ts +13 -0
- package/core/option/_option-theme.scss +24 -2
- package/core/pop-up/pop-up-trigger.d.ts +3 -4
- package/core/pop-up/pop-up.d.ts +2 -1
- package/core/select/common.d.ts +3 -3
- package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +1 -1
- package/datepicker/datepicker-input.directive.d.ts +14 -5
- package/datepicker/datepicker-module.d.ts +1 -1
- package/datepicker/datepicker-toggle.component.d.ts +22 -0
- package/datepicker/datepicker-toggle.scss +6 -0
- package/ellipsis-center/ellipsis-center.directive.d.ts +8 -2
- package/esm2022/actions-panel/actions-panel-container.mjs +2 -2
- package/esm2022/code-block/code-block.mjs +6 -3
- package/esm2022/core/common-behaviors/error-state.mjs +28 -1
- package/esm2022/core/common-behaviors/index.mjs +2 -2
- package/esm2022/core/formatters/filesize/formatter.mjs +6 -9
- package/esm2022/core/formatters/filesize/size.mjs +15 -17
- package/esm2022/core/forms/validators.mjs +22 -1
- package/esm2022/core/option/option.mjs +2 -2
- package/esm2022/core/pop-up/pop-up-trigger.mjs +19 -10
- package/esm2022/core/pop-up/pop-up.mjs +6 -2
- package/esm2022/core/select/common.mjs +6 -4
- package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +1 -1
- package/esm2022/datepicker/datepicker-input.directive.mjs +66 -6
- package/esm2022/datepicker/datepicker-module.mjs +8 -3
- package/esm2022/datepicker/datepicker-toggle.component.mjs +94 -10
- package/esm2022/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +14 -4
- package/esm2022/file-upload/file-upload.mjs +2 -1
- package/esm2022/file-upload/multiple-file-upload.component.mjs +21 -7
- package/esm2022/file-upload/single-file-upload.component.mjs +16 -7
- package/esm2022/filter-bar/filter-bar.mjs +11 -3
- package/esm2022/filter-bar/filter-bar.types.mjs +1 -1
- package/esm2022/filter-bar/filter-search.mjs +2 -2
- package/esm2022/filter-bar/filters.mjs +2 -2
- package/esm2022/filter-bar/pipe-add.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-button.mjs +1 -1
- package/esm2022/filter-bar/pipes/pipe-date.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +29 -9
- package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +30 -10
- package/esm2022/filter-bar/pipes/pipe-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-text.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +2 -2
- package/esm2022/form-field/form-field.mjs +8 -8
- package/esm2022/form-field/stepper.mjs +20 -4
- package/esm2022/icon/icon-button.component.mjs +2 -2
- package/esm2022/list/list-selection.component.mjs +5 -4
- package/esm2022/list/list.component.mjs +2 -2
- package/esm2022/overflow-items/overflow-items.mjs +43 -70
- package/esm2022/popover/popover.component.mjs +10 -4
- package/esm2022/select/select.component.mjs +34 -17
- package/esm2022/tabs/tab-group.component.mjs +1 -1
- package/esm2022/timezone/timezone-option.component.mjs +2 -2
- package/esm2022/timezone/timezone-select.component.mjs +2 -2
- package/esm2022/tooltip/tooltip.component.mjs +12 -3
- package/esm2022/top-bar/top-bar.mjs +2 -2
- package/esm2022/tree/toggle.mjs +2 -2
- package/esm2022/tree/tree-option.component.mjs +5 -4
- package/esm2022/tree/tree-selection.component.mjs +2 -2
- package/esm2022/tree/tree.mjs +2 -2
- package/esm2022/tree-select/tree-select.component.mjs +32 -13
- package/fesm2022/koobiq-components-actions-panel.mjs +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +5 -2
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +99 -41
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +159 -11
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +2 -2
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-ellipsis-center.mjs +13 -3
- package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +32 -10
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +75 -27
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +25 -10
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +2 -2
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +6 -5
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-overflow-items.mjs +42 -69
- package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +9 -3
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +33 -16
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +1 -1
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +4 -4
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +11 -2
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-top-bar.mjs +2 -2
- package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +31 -12
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +10 -9
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/_file-upload-theme.scss +38 -22
- package/file-upload/file-upload-tokens.scss +37 -14
- package/file-upload/file-upload.d.ts +1 -0
- package/file-upload/multiple-file-upload.component.d.ts +12 -5
- package/file-upload/multiple-file-upload.component.scss +66 -69
- package/file-upload/single-file-upload.component.d.ts +7 -1
- package/file-upload/single-file-upload.component.scss +8 -0
- package/filter-bar/filter-bar.d.ts +7 -1
- package/filter-bar/filter-bar.types.d.ts +5 -0
- package/filter-bar/pipes/pipe-multi-select.d.ts +5 -1
- package/filter-bar/pipes/pipe-multi-tree-select.d.ts +5 -1
- package/form-field/form-field.d.ts +3 -1
- package/form-field/stepper.d.ts +15 -1
- package/icon/_icon-button-theme.scss +67 -85
- package/list/_list-theme.scss +24 -2
- package/list/list-tokens.scss +5 -0
- package/overflow-items/overflow-items.d.ts +16 -25
- package/package.json +6 -6
- package/popover/popover.component.d.ts +4 -2
- package/schematics/ng-add/index.js +5 -5
- package/select/select.component.d.ts +8 -1
- package/tooltip/tooltip.component.d.ts +8 -1
- package/top-bar/top-bar.scss +1 -0
- package/tree/_tree-theme.scss +30 -7
- package/tree/tree-option.scss +5 -2
- package/tree/tree-tokens.scss +5 -0
- package/tree-select/tree-select.component.d.ts +8 -1
|
@@ -327,13 +327,8 @@
|
|
|
327
327
|
@include kbq-code-block-style(filled);
|
|
328
328
|
}
|
|
329
329
|
|
|
330
|
-
.kbq-code-
|
|
331
|
-
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
.kbq-code-block__content.cdk-keyboard-focused {
|
|
335
|
-
outline: none;
|
|
336
|
-
border-color: var(--kbq-states-line-focus-theme);
|
|
330
|
+
.kbq-code-block__main.cdk-keyboard-focused {
|
|
331
|
+
outline-color: var(--kbq-states-line-focus-theme);
|
|
337
332
|
}
|
|
338
333
|
}
|
|
339
334
|
}
|
|
@@ -342,12 +337,9 @@
|
|
|
342
337
|
.kbq-code-block {
|
|
343
338
|
@include kbq-typography-level-to-styles-css-variables(typography, mono-codeblock);
|
|
344
339
|
|
|
345
|
-
.kbq-code-
|
|
340
|
+
.kbq-code-block__pre,
|
|
341
|
+
.kbq-code-block__code {
|
|
346
342
|
font: inherit;
|
|
347
|
-
|
|
348
|
-
.kbq-code-block__code {
|
|
349
|
-
font: inherit;
|
|
350
|
-
}
|
|
351
343
|
}
|
|
352
344
|
}
|
|
353
345
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
.kbq-code-block {
|
|
2
|
-
--kbq-code-block-size-container-border-width:
|
|
3
|
-
--kbq-code-block-size-container-border-
|
|
2
|
+
--kbq-code-block-size-container-border-width: var(--kbq-size-border-width);
|
|
3
|
+
--kbq-code-block-size-container-border-width-focused: 2px;
|
|
4
|
+
--kbq-code-block-size-container-border-radius: var(--kbq-size-border-radius);
|
|
4
5
|
--kbq-code-block-size-with-header-content-padding-top: var(--kbq-size-xxs);
|
|
5
6
|
--kbq-code-block-size-with-header-content-padding-bottom: var(--kbq-size-l);
|
|
6
7
|
--kbq-code-block-size-with-header-content-padding-horizontal: var(--kbq-size-xl);
|
|
@@ -4,11 +4,13 @@
|
|
|
4
4
|
display: flex;
|
|
5
5
|
flex-direction: column;
|
|
6
6
|
position: relative;
|
|
7
|
-
|
|
7
|
+
|
|
8
8
|
border-width: var(--kbq-code-block-size-container-border-width);
|
|
9
9
|
border-style: solid;
|
|
10
10
|
border-radius: var(--kbq-code-block-size-container-border-radius);
|
|
11
|
+
|
|
11
12
|
box-sizing: border-box;
|
|
13
|
+
|
|
12
14
|
hyphens: none;
|
|
13
15
|
-ms-hyphens: none;
|
|
14
16
|
-moz-hyphens: none;
|
|
@@ -44,21 +46,30 @@
|
|
|
44
46
|
}
|
|
45
47
|
|
|
46
48
|
&:has(.kbq-code-block__view-all) {
|
|
47
|
-
.kbq-code-
|
|
49
|
+
.kbq-code-block__main {
|
|
48
50
|
.kbq-code-block__code {
|
|
49
51
|
padding-bottom: var(--kbq-size-3xl) !important;
|
|
50
52
|
}
|
|
51
53
|
}
|
|
52
54
|
}
|
|
53
55
|
|
|
54
|
-
.kbq-code-
|
|
56
|
+
.kbq-code-block__main {
|
|
55
57
|
flex-grow: 1;
|
|
56
|
-
margin: 0;
|
|
57
58
|
flex-direction: column;
|
|
58
|
-
|
|
59
|
-
border-style: solid;
|
|
59
|
+
|
|
60
60
|
border-radius: var(--kbq-code-block-size-container-border-radius);
|
|
61
61
|
|
|
62
|
+
&.cdk-keyboard-focused {
|
|
63
|
+
outline-style: solid;
|
|
64
|
+
outline-width: var(--kbq-code-block-size-container-border-width-focused);
|
|
65
|
+
outline-offset: -1px;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.kbq-code-block__pre {
|
|
69
|
+
margin: 0;
|
|
70
|
+
flex-grow: 1;
|
|
71
|
+
}
|
|
72
|
+
|
|
62
73
|
.kbq-code-block__code {
|
|
63
74
|
tab-size: var(--kbq-code-block-tab-size);
|
|
64
75
|
padding: var(--kbq-code-block-size-with-header-content-padding-top)
|
|
@@ -107,12 +118,18 @@
|
|
|
107
118
|
}
|
|
108
119
|
|
|
109
120
|
&.kbq-code-block_view-all {
|
|
110
|
-
.kbq-code-
|
|
121
|
+
.kbq-code-block__main {
|
|
111
122
|
max-height: unset;
|
|
112
123
|
overflow: auto;
|
|
113
124
|
}
|
|
114
125
|
}
|
|
115
126
|
|
|
127
|
+
&:not(.kbq-code-block_view-all) {
|
|
128
|
+
.kbq-code-block__main {
|
|
129
|
+
overflow: hidden;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
116
133
|
&.kbq-code-block_hide-tabs {
|
|
117
134
|
.kbq-code-block__header {
|
|
118
135
|
padding: 0;
|
|
@@ -126,7 +143,7 @@
|
|
|
126
143
|
padding: var(--kbq-size-s) var(--kbq-size-m);
|
|
127
144
|
}
|
|
128
145
|
|
|
129
|
-
.kbq-code-
|
|
146
|
+
.kbq-code-block__main {
|
|
130
147
|
position: relative;
|
|
131
148
|
|
|
132
149
|
.kbq-code-block__code {
|
|
@@ -140,12 +157,24 @@
|
|
|
140
157
|
}
|
|
141
158
|
}
|
|
142
159
|
|
|
160
|
+
&:not(.kbq-code-block_hide-tabs) {
|
|
161
|
+
.kbq-code-block__header {
|
|
162
|
+
border-radius: var(--kbq-code-block-size-container-border-radius)
|
|
163
|
+
var(--kbq-code-block-size-container-border-radius) 0 0;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
.kbq-code-block__main {
|
|
167
|
+
border-radius: 0 0 var(--kbq-code-block-size-container-border-radius)
|
|
168
|
+
var(--kbq-code-block-size-container-border-radius);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
143
172
|
&.kbq-code-block_show-actionbar .kbq-code-block__actionbar {
|
|
144
173
|
display: flex;
|
|
145
174
|
}
|
|
146
175
|
|
|
147
176
|
&:not(:has(.kbq-code-block__view-all)) {
|
|
148
|
-
.kbq-code-
|
|
177
|
+
.kbq-code-block__main {
|
|
149
178
|
overflow: auto;
|
|
150
179
|
}
|
|
151
180
|
}
|
|
@@ -154,8 +183,10 @@
|
|
|
154
183
|
display: flex;
|
|
155
184
|
justify-content: center;
|
|
156
185
|
width: 100%;
|
|
186
|
+
|
|
157
187
|
position: absolute;
|
|
158
|
-
bottom:
|
|
188
|
+
bottom: calc(var(--kbq-code-block-size-container-border-width) * -1);
|
|
189
|
+
|
|
159
190
|
border-radius: var(--kbq-code-block-size-container-border-radius);
|
|
160
191
|
|
|
161
192
|
.kbq-code-block__view-all__wrapper {
|
|
@@ -26,3 +26,21 @@ export interface HasErrorState {
|
|
|
26
26
|
* For component with `errorState` and need to update `errorState`.
|
|
27
27
|
*/
|
|
28
28
|
export declare function mixinErrorState<T extends AbstractConstructor<HasErrorState>>(base: T): CanUpdateErrorStateCtor & T;
|
|
29
|
+
/**
|
|
30
|
+
* Class that tracks the error state of a component.
|
|
31
|
+
* @docs-private
|
|
32
|
+
*/
|
|
33
|
+
export declare class KbqErrorStateTracker implements CanUpdateErrorState {
|
|
34
|
+
private defaultMatcher;
|
|
35
|
+
ngControl: NgControl | null;
|
|
36
|
+
private parentFormGroup;
|
|
37
|
+
private parentForm;
|
|
38
|
+
private stateChanges;
|
|
39
|
+
/** Whether the tracker is currently in an error state. */
|
|
40
|
+
errorState: boolean;
|
|
41
|
+
/** User-defined matcher for the error state. */
|
|
42
|
+
errorStateMatcher: ErrorStateMatcher;
|
|
43
|
+
constructor(defaultMatcher: ErrorStateMatcher | null, ngControl: NgControl | null, parentFormGroup: FormGroupDirective | null, parentForm: NgForm | null, stateChanges: Subject<void>);
|
|
44
|
+
/** Updates the error state based on the provided error state matcher. */
|
|
45
|
+
updateErrorState(): void;
|
|
46
|
+
}
|
|
@@ -4,7 +4,7 @@ export * from './clipboard';
|
|
|
4
4
|
export { CanColor, CanColorCtor, KbqColorDirective, KbqComponentColors, mixinColor, ThemePalette } from './color';
|
|
5
5
|
export { KBQ_SANITY_CHECKS, KbqCommonModule } from './common-module';
|
|
6
6
|
export { CanDisable, CanDisableCtor, mixinDisabled } from './disabled';
|
|
7
|
-
export { CanUpdateErrorState, CanUpdateErrorStateCtor, mixinErrorState } from './error-state';
|
|
7
|
+
export { CanUpdateErrorState, CanUpdateErrorStateCtor, KbqErrorStateTracker, mixinErrorState } from './error-state';
|
|
8
8
|
export { KbqDefaultSizes } from './size';
|
|
9
9
|
export { HasTabIndex, HasTabIndexCtor, mixinTabIndex } from './tabindex';
|
|
10
10
|
export declare const KBQ_PARENT_ANIMATION_COMPONENT: InjectionToken<any>;
|
|
@@ -12,14 +12,30 @@ export declare const formatDataSize: (value: number, precision: number, system:
|
|
|
12
12
|
* Converts a byte value into locale-independent file size parts: numeric value and unit abbreviation.
|
|
13
13
|
*
|
|
14
14
|
* @param value - size in bytes.
|
|
15
|
-
* @param precision - digits after the decimal point (e.g., `2` → "1.02 KB").
|
|
16
15
|
* @param system - unit system defining abbreviations and base scaling (SI/IEC).
|
|
17
16
|
* @returns Object with the formatted size info.
|
|
18
17
|
*
|
|
19
18
|
* @example
|
|
20
|
-
*
|
|
19
|
+
* getFormattedSizeParts(1500, 'SI'); // { value: "1.50", unit: "KB" }
|
|
21
20
|
*/
|
|
22
|
-
export declare
|
|
21
|
+
export declare function getFormattedSizeParts(value: number, system: KbqUnitSystem): {
|
|
22
|
+
value: string;
|
|
23
|
+
unit: string;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Converts a byte value into locale-independent file size parts: numeric value and unit abbreviation.
|
|
27
|
+
*
|
|
28
|
+
* @param value - size in bytes.
|
|
29
|
+
* @param _precision param is deprecated, use `Intl.NumberFormat` rounding options instead.
|
|
30
|
+
* @param system - unit system defining abbreviations and base scaling (SI/IEC).
|
|
31
|
+
* @returns Object with the formatted size info.
|
|
32
|
+
* @deprecated `_precision` - this param will be remove in next major version.
|
|
33
|
+
* @TODO remove deprecated (#DS-3849).
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* getFormattedSizeParts(1500, 2, 'SI'); // { value: "1.50", unit: "KB" }
|
|
37
|
+
*/
|
|
38
|
+
export declare function getFormattedSizeParts(value: number, _precision: number, system: KbqUnitSystem): {
|
|
23
39
|
value: string;
|
|
24
40
|
unit: string;
|
|
25
41
|
};
|
|
@@ -104,4 +104,17 @@ export declare class FileValidators {
|
|
|
104
104
|
* ```
|
|
105
105
|
*/
|
|
106
106
|
static maxFileSize(maxSize: number): ValidatorFn;
|
|
107
|
+
/**
|
|
108
|
+
* Validator that checks whether file's name or MIME type
|
|
109
|
+
* matches one of the accepted extensions or MIME types.
|
|
110
|
+
*
|
|
111
|
+
* @param accept - Array of allowed file extensions or MIME types.
|
|
112
|
+
* @returns ValidatorFn that returns validation error if file type is not accepted, or null otherwise.
|
|
113
|
+
*/
|
|
114
|
+
static isCorrectExtension(accept: (`.${string}` | `${string}/${string}`)[]): ValidatorFn;
|
|
107
115
|
}
|
|
116
|
+
/**
|
|
117
|
+
* Type helper describing accepted file types, referring to:
|
|
118
|
+
* @link https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/input/file#unique_file_type_specifiers
|
|
119
|
+
*/
|
|
120
|
+
export type KbqFileTypeSpecifier = Parameters<typeof FileValidators.isCorrectExtension>[0];
|
|
@@ -24,12 +24,20 @@
|
|
|
24
24
|
@include kbq-option(states-hover);
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
&:active:not(.kbq-disabled) {
|
|
28
|
+
@include kbq-option(states-active);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&.kbq-selected:not(.kbq-disabled) {
|
|
28
32
|
@include kbq-option(states-selected);
|
|
29
33
|
|
|
30
|
-
&:hover
|
|
34
|
+
&:hover {
|
|
31
35
|
@include kbq-option(states-selected-hover);
|
|
32
36
|
}
|
|
37
|
+
|
|
38
|
+
&:active {
|
|
39
|
+
@include kbq-option(states-selected-active);
|
|
40
|
+
}
|
|
33
41
|
}
|
|
34
42
|
|
|
35
43
|
&.kbq-disabled {
|
|
@@ -47,6 +55,20 @@
|
|
|
47
55
|
}
|
|
48
56
|
}
|
|
49
57
|
|
|
58
|
+
.kbq-option-multiple {
|
|
59
|
+
&.kbq-selected:not(.kbq-disabled) {
|
|
60
|
+
@include kbq-option(multiple-states-selected);
|
|
61
|
+
|
|
62
|
+
&:hover {
|
|
63
|
+
@include kbq-option(multiple-states-selected-hover);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&:active {
|
|
67
|
+
@include kbq-option(multiple-states-selected-active);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
50
72
|
.cdk-keyboard-focused {
|
|
51
73
|
.kbq-option.kbq-focused,
|
|
52
74
|
.kbq-option.kbq-active {
|
|
@@ -6,8 +6,6 @@ import { BehaviorSubject, Observable, Subscription } from 'rxjs';
|
|
|
6
6
|
import { AsyncScheduler } from 'rxjs/internal/scheduler/AsyncScheduler';
|
|
7
7
|
import { PopUpPlacements } from './constants';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
|
-
/** parameter is used in interval to hide the popup */
|
|
10
|
-
export declare const hidingIntervalForHover = 500;
|
|
11
9
|
export declare abstract class KbqPopUpTrigger<T> implements OnInit, OnDestroy {
|
|
12
10
|
/** Stream that emits when the popupTrigger is hovered. */
|
|
13
11
|
readonly hovered: BehaviorSubject<boolean>;
|
|
@@ -50,8 +48,8 @@ export declare abstract class KbqPopUpTrigger<T> implements OnInit, OnDestroy {
|
|
|
50
48
|
};
|
|
51
49
|
protected mouseEvent?: MouseEvent;
|
|
52
50
|
protected strategy: FlexibleConnectedPositionStrategy;
|
|
53
|
-
/**
|
|
54
|
-
protected
|
|
51
|
+
/** Hide pop-up with timeout. Need if you want to show pop-up after leaving trigger */
|
|
52
|
+
protected hideWithTimeout: boolean;
|
|
55
53
|
abstract updateClassMap(newPlacement?: string): void;
|
|
56
54
|
abstract updateData(): void;
|
|
57
55
|
abstract closingActions(): Observable<any>;
|
|
@@ -71,6 +69,7 @@ export declare abstract class KbqPopUpTrigger<T> implements OnInit, OnDestroy {
|
|
|
71
69
|
resetOrigin(): void;
|
|
72
70
|
onPositionChange: ($event: ConnectedOverlayPositionChange) => void;
|
|
73
71
|
initListeners(): void;
|
|
72
|
+
getMouseLeaveListener(): (delay?: number) => void;
|
|
74
73
|
/** Updates the position of the current popover. */
|
|
75
74
|
updatePosition(reapplyPosition?: boolean): void;
|
|
76
75
|
focus(): void;
|
package/core/pop-up/pop-up.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AnimationEvent } from '@angular/animations';
|
|
2
|
-
import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2, TemplateRef } from '@angular/core';
|
|
2
|
+
import { ChangeDetectorRef, DestroyRef, ElementRef, EventEmitter, OnDestroy, Renderer2, TemplateRef } from '@angular/core';
|
|
3
3
|
import { BehaviorSubject, Observable, Subject } from 'rxjs';
|
|
4
4
|
import { PopUpVisibility } from './constants';
|
|
5
5
|
import { KbqPopUpTrigger } from './pop-up-trigger';
|
|
@@ -8,6 +8,7 @@ export declare abstract class KbqPopUp implements OnDestroy {
|
|
|
8
8
|
protected readonly renderer: Renderer2;
|
|
9
9
|
protected readonly elementRef: ElementRef<any>;
|
|
10
10
|
protected readonly changeDetectorRef: ChangeDetectorRef;
|
|
11
|
+
readonly destroyRef: DestroyRef;
|
|
11
12
|
/** Stream that emits when the popup item is hovered. */
|
|
12
13
|
readonly hovered: BehaviorSubject<boolean>;
|
|
13
14
|
trigger: KbqPopUpTrigger<unknown>;
|
package/core/select/common.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { CdkConnectedOverlay } from '@angular/cdk/overlay';
|
|
2
|
-
import { AfterContentInit, OnDestroy } from '@angular/core';
|
|
3
|
-
import { Subscription } from 'rxjs';
|
|
2
|
+
import { AfterContentInit, EventEmitter, OnDestroy } from '@angular/core';
|
|
4
3
|
import { KbqFormFieldRef } from '../form-field';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
export declare class KbqSelectTrigger {
|
|
@@ -17,9 +16,10 @@ export declare class KbqSelectFooter {
|
|
|
17
16
|
}
|
|
18
17
|
export declare class KbqSelectSearch implements AfterContentInit, OnDestroy {
|
|
19
18
|
protected formField: KbqFormFieldRef;
|
|
20
|
-
|
|
19
|
+
readonly changes: EventEmitter<string>;
|
|
21
20
|
isSearchChanged: boolean;
|
|
22
21
|
get ngControl(): any;
|
|
22
|
+
private searchChangesSubscription;
|
|
23
23
|
constructor(formField: KbqFormFieldRef);
|
|
24
24
|
setPlaceholder(value: string): void;
|
|
25
25
|
hasPlaceholder(): boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { KbqColorDirective } from '../../common-behaviors';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
export type KbqPseudoCheckboxState = 'unchecked' | 'checked' | 'indeterminate';
|
|
3
|
+
export type KbqPseudoCheckboxState = 'unchecked' | 'checked' | 'indeterminate' | boolean;
|
|
4
4
|
/**
|
|
5
5
|
* Component that shows a simplified checkbox without including any kind of "real" checkbox.
|
|
6
6
|
* Meant to be used when the checkbox is purely decorative and a large number of them will be
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
|
|
1
|
+
import { AfterContentInit, DoCheck, ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
|
|
2
2
|
import { AbstractControl, ControlValueAccessor, ValidationErrors, Validator } from '@angular/forms';
|
|
3
|
-
import { DateAdapter, KbqDateFormats, KbqLocaleService } from '@koobiq/components/core';
|
|
3
|
+
import { DateAdapter, ErrorStateMatcher, KbqDateFormats, KbqLocaleService } from '@koobiq/components/core';
|
|
4
4
|
import { KbqFormFieldControl } from '@koobiq/components/form-field';
|
|
5
5
|
import { KbqWarningTooltipTrigger } from '@koobiq/components/tooltip';
|
|
6
6
|
import { Subject } from 'rxjs';
|
|
@@ -31,14 +31,13 @@ export declare class KbqDatepickerInputEvent<D> {
|
|
|
31
31
|
targetElement: HTMLElement);
|
|
32
32
|
}
|
|
33
33
|
/** Directive used to connect an input to a KbqDatepicker. */
|
|
34
|
-
export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, ControlValueAccessor, Validator, OnDestroy {
|
|
34
|
+
export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, ControlValueAccessor, Validator, OnDestroy, DoCheck, AfterContentInit {
|
|
35
35
|
elementRef: ElementRef<HTMLInputElement>;
|
|
36
36
|
private readonly renderer;
|
|
37
37
|
readonly adapter: DateAdapter<D>;
|
|
38
38
|
private readonly dateFormats;
|
|
39
39
|
private localeService;
|
|
40
40
|
readonly stateChanges: Subject<void>;
|
|
41
|
-
readonly errorState: boolean;
|
|
42
41
|
controlType: string;
|
|
43
42
|
focused: boolean;
|
|
44
43
|
datepicker: KbqDatepicker<D>;
|
|
@@ -48,6 +47,9 @@ export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, Co
|
|
|
48
47
|
valueChange: EventEmitter<D | null>;
|
|
49
48
|
/** Emits when the disabled state has changed */
|
|
50
49
|
disabledChange: EventEmitter<boolean>;
|
|
50
|
+
/** Object used to control when error messages are shown. */
|
|
51
|
+
get errorStateMatcher(): ErrorStateMatcher;
|
|
52
|
+
set errorStateMatcher(value: ErrorStateMatcher);
|
|
51
53
|
get placeholder(): string;
|
|
52
54
|
set placeholder(value: string);
|
|
53
55
|
private _placeholder;
|
|
@@ -90,6 +92,8 @@ export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, Co
|
|
|
90
92
|
get ngControl(): any;
|
|
91
93
|
get isReadOnly(): boolean;
|
|
92
94
|
get dateInputFormat(): string;
|
|
95
|
+
get errorState(): boolean;
|
|
96
|
+
set errorState(value: boolean);
|
|
93
97
|
private get readyForParse();
|
|
94
98
|
private get selectionStart();
|
|
95
99
|
private set selectionStart(value);
|
|
@@ -109,11 +113,14 @@ export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, Co
|
|
|
109
113
|
private thirdDigit;
|
|
110
114
|
private separatorPositions;
|
|
111
115
|
private usePlaceholderFromInput;
|
|
116
|
+
private errorStateTracker;
|
|
112
117
|
constructor(elementRef: ElementRef<HTMLInputElement>, renderer: Renderer2, adapter: DateAdapter<D>, dateFormats: KbqDateFormats, localeService: KbqLocaleService);
|
|
118
|
+
ngDoCheck(): void;
|
|
113
119
|
onContainerClick(): void;
|
|
114
120
|
focus(): void;
|
|
115
121
|
focusChanged(isFocused: boolean): void;
|
|
116
122
|
onTouched: () => void;
|
|
123
|
+
ngAfterContentInit(): void;
|
|
117
124
|
ngOnDestroy(): void;
|
|
118
125
|
/** @docs-private */
|
|
119
126
|
registerOnValidatorChange(fn: () => void): void;
|
|
@@ -131,6 +138,8 @@ export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, Co
|
|
|
131
138
|
onBlur(): void;
|
|
132
139
|
onPaste($event: any): any;
|
|
133
140
|
toISO8601(value: D): string;
|
|
141
|
+
/** Refreshes the error state of the input. */
|
|
142
|
+
updateErrorState(): void;
|
|
134
143
|
private saveTimePart;
|
|
135
144
|
private updateLocaleParams;
|
|
136
145
|
private setFormat;
|
|
@@ -191,5 +200,5 @@ export declare class KbqDatepickerInput<D> implements KbqFormFieldControl<D>, Co
|
|
|
191
200
|
private createDateTime;
|
|
192
201
|
private correctCursorPosition;
|
|
193
202
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqDatepickerInput<any>, [null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
194
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqDatepickerInput<any>, "input[kbqDatepicker], input[kbqCalendar]", ["kbqDatepickerInput"], { "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "kbqDatepicker": { "alias": "kbqDatepicker"; "required": false; }; "kbqCalendar": { "alias": "kbqCalendar"; "required": false; }; "kbqDatepickerFilter": { "alias": "kbqDatepickerFilter"; "required": false; }; "value": { "alias": "value"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "id": { "alias": "id"; "required": false; }; "kbqValidationTooltip": { "alias": "kbqValidationTooltip"; "required": false; }; }, { "incorrectInput": "incorrectInput"; "dateChange": "dateChange"; "dateInput": "dateInput"; }, never, never, false, never>;
|
|
203
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqDatepickerInput<any>, "input[kbqDatepicker], input[kbqCalendar]", ["kbqDatepickerInput"], { "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "kbqDatepicker": { "alias": "kbqDatepicker"; "required": false; }; "kbqCalendar": { "alias": "kbqCalendar"; "required": false; }; "kbqDatepickerFilter": { "alias": "kbqDatepickerFilter"; "required": false; }; "value": { "alias": "value"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "id": { "alias": "id"; "required": false; }; "kbqValidationTooltip": { "alias": "kbqValidationTooltip"; "required": false; }; }, { "incorrectInput": "incorrectInput"; "dateChange": "dateChange"; "dateInput": "dateInput"; }, never, never, false, never>;
|
|
195
204
|
}
|
|
@@ -15,6 +15,6 @@ import * as i13 from "@koobiq/components/icon";
|
|
|
15
15
|
import * as i14 from "@angular/common";
|
|
16
16
|
export declare class KbqDatepickerModule {
|
|
17
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqDatepickerModule, never>;
|
|
18
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqDatepickerModule, [typeof i1.KbqCalendar, typeof i2.KbqCalendarBody, typeof i3.KbqDatepicker, typeof i3.KbqDatepickerContent, typeof i4.KbqDatepickerInput, typeof i5.KbqDatepickerToggle, typeof i5.KbqDatepickerToggleIcon, typeof i6.KbqMonthView, typeof i7.KbqCalendarHeader], [typeof i8.KbqButtonModule, typeof i9.OverlayModule, typeof i10.A11yModule, typeof i11.PortalModule, typeof i12.KbqSelectModule, typeof i13.KbqIconModule, typeof i14.NgClass, typeof i14.TitleCasePipe], [typeof i1.KbqCalendar, typeof i2.KbqCalendarBody, typeof i3.KbqDatepicker, typeof i3.KbqDatepickerContent, typeof i4.KbqDatepickerInput, typeof i5.KbqDatepickerToggle, typeof i5.KbqDatepickerToggleIcon, typeof i6.KbqMonthView, typeof i7.KbqCalendarHeader]>;
|
|
18
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqDatepickerModule, [typeof i1.KbqCalendar, typeof i2.KbqCalendarBody, typeof i3.KbqDatepicker, typeof i3.KbqDatepickerContent, typeof i4.KbqDatepickerInput, typeof i5.KbqDatepickerToggle, typeof i5.KbqDatepickerToggleIcon, typeof i6.KbqMonthView, typeof i7.KbqCalendarHeader], [typeof i8.KbqButtonModule, typeof i9.OverlayModule, typeof i10.A11yModule, typeof i11.PortalModule, typeof i12.KbqSelectModule, typeof i13.KbqIconModule, typeof i5.KbqDatepickerToggleIconComponent, typeof i14.NgClass, typeof i14.TitleCasePipe], [typeof i1.KbqCalendar, typeof i2.KbqCalendarBody, typeof i3.KbqDatepicker, typeof i3.KbqDatepickerContent, typeof i4.KbqDatepickerInput, typeof i5.KbqDatepickerToggle, typeof i5.KbqDatepickerToggleIcon, typeof i5.KbqDatepickerToggleIconComponent, typeof i6.KbqMonthView, typeof i7.KbqCalendarHeader]>;
|
|
19
19
|
static ɵinj: i0.ɵɵInjectorDeclaration<KbqDatepickerModule>;
|
|
20
20
|
}
|
|
@@ -8,6 +8,28 @@ export declare class KbqDatepickerToggleIcon {
|
|
|
8
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqDatepickerToggleIcon, never>;
|
|
9
9
|
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqDatepickerToggleIcon, "[kbqDatepickerToggleIcon]", never, {}, {}, never, never, false, never>;
|
|
10
10
|
}
|
|
11
|
+
export declare class KbqDatepickerToggleIconComponent<D> implements AfterContentInit, OnChanges, OnDestroy {
|
|
12
|
+
/** Whether the toggle button is disabled. */
|
|
13
|
+
get disabled(): boolean;
|
|
14
|
+
set disabled(value: boolean);
|
|
15
|
+
private _disabled;
|
|
16
|
+
/** Datepicker instance that the button will toggle. */
|
|
17
|
+
datepicker: KbqDatepicker<D>;
|
|
18
|
+
private readonly destroyRef;
|
|
19
|
+
private readonly cdr;
|
|
20
|
+
private stateChangesSubscription;
|
|
21
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
22
|
+
ngAfterContentInit(): void;
|
|
23
|
+
ngOnDestroy(): void;
|
|
24
|
+
/** Open datepicker */
|
|
25
|
+
open($event: MouseEvent): void;
|
|
26
|
+
private watchStateChanges;
|
|
27
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqDatepickerToggleIconComponent<any>, never>;
|
|
28
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqDatepickerToggleIconComponent<any>, "kbq-datepicker-toggle-icon", never, { "disabled": { "alias": "disabled"; "required": false; }; "datepicker": { "alias": "for"; "required": false; }; }, {}, never, ["[kbqDatepickerToggleIcon]"], true, never>;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @deprecated Use `KbqDatepickerToggleIconComponent` instead
|
|
32
|
+
*/
|
|
11
33
|
export declare class KbqDatepickerToggle<D> implements AfterContentInit, OnChanges, OnDestroy {
|
|
12
34
|
intl: KbqDatepickerIntl;
|
|
13
35
|
private changeDetectorRef;
|
|
@@ -4,19 +4,25 @@ import { Subject } from 'rxjs';
|
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class KbqEllipsisCenterDirective extends KbqTooltipTrigger implements OnInit, AfterViewInit, OnDestroy {
|
|
6
6
|
private renderer;
|
|
7
|
+
private cdr;
|
|
7
8
|
set kbqEllipsisCenter(value: string);
|
|
8
9
|
minVisibleLength: number;
|
|
9
10
|
charWidth: number;
|
|
11
|
+
/**
|
|
12
|
+
* Debounce time (ms) for resize events before recalculating ellipsis position.
|
|
13
|
+
* @default 50
|
|
14
|
+
*/
|
|
15
|
+
debounceInterval: number;
|
|
10
16
|
readonly resizeStream: Subject<Event>;
|
|
11
17
|
private _kbqEllipsisCenter;
|
|
12
18
|
private resizeSubscription;
|
|
13
|
-
private readonly debounceInterval;
|
|
14
19
|
ngOnInit(): void;
|
|
15
20
|
ngAfterViewInit(): void;
|
|
16
21
|
ngOnDestroy(): void;
|
|
17
22
|
private refresh;
|
|
18
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqEllipsisCenterDirective, never>;
|
|
19
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqEllipsisCenterDirective, "[kbqEllipsisCenter]", never, { "kbqEllipsisCenter": { "alias": "kbqEllipsisCenter"; "required": false; }; "minVisibleLength": { "alias": "minVisibleLength"; "required": false; }; "charWidth": { "alias": "charWidth"; "required": false; }; }, {}, never, never, false, never>;
|
|
24
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqEllipsisCenterDirective, "[kbqEllipsisCenter]", never, { "kbqEllipsisCenter": { "alias": "kbqEllipsisCenter"; "required": false; }; "minVisibleLength": { "alias": "minVisibleLength"; "required": false; }; "charWidth": { "alias": "charWidth"; "required": false; }; "debounceInterval": { "alias": "debounceInterval"; "required": false; }; }, {}, never, never, false, never>;
|
|
25
|
+
static ngAcceptInputType_debounceInterval: unknown;
|
|
20
26
|
}
|
|
21
27
|
export declare class KbqEllipsisCenterModule {
|
|
22
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqEllipsisCenterModule, never>;
|
|
@@ -178,7 +178,7 @@ export class KbqActionsPanelContainer extends CdkDialogContainer {
|
|
|
178
178
|
<i kbq-icon="kbq-xmark-circle_16"></i>
|
|
179
179
|
</button>
|
|
180
180
|
}
|
|
181
|
-
`, isInline: true, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}.kbq-actions-panel-overlay-container{position:relative}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "component", type: i1.KbqDivider, selector: "kbq-divider", inputs: ["vertical", "inset", "paddings"] }, { kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i2.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i2.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i3.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqToolTipModule }, { kind: "directive", type: i4.KbqTooltipTrigger, selector: "[kbqTooltip]", inputs: ["kbqVisible", "kbqPlacement", "kbqRelativeToPointer", "kbqPlacementPriority", "kbqTooltip", "kbqTooltipDisabled", "kbqEnterDelay", "kbqLeaveDelay", "kbqTrigger", "kbqTooltipClass", "kbqTooltipContext", "kbqTooltipColor", "kbqTooltipArrow", "kbqTooltipOffset"], outputs: ["kbqPlacementChange", "kbqVisibleChange"], exportAs: ["kbqTooltip"] }], animations: [KBQ_ACTIONS_PANEL_CONTAINER_ANIMATION], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
|
181
|
+
`, isInline: true, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}.kbq-actions-panel-overlay-container{position:relative}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "component", type: i1.KbqDivider, selector: "kbq-divider", inputs: ["vertical", "inset", "paddings"] }, { kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i2.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i2.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i3.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqToolTipModule }, { kind: "directive", type: i4.KbqTooltipTrigger, selector: "[kbqTooltip]", inputs: ["hideWithTimeout", "kbqVisible", "kbqPlacement", "kbqRelativeToPointer", "kbqPlacementPriority", "kbqTooltip", "kbqTooltipDisabled", "kbqEnterDelay", "kbqLeaveDelay", "kbqTrigger", "kbqTooltipClass", "kbqTooltipContext", "kbqTooltipColor", "kbqTooltipArrow", "kbqTooltipOffset"], outputs: ["kbqPlacementChange", "kbqVisibleChange"], exportAs: ["kbqTooltip"] }], animations: [KBQ_ACTIONS_PANEL_CONTAINER_ANIMATION], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
|
182
182
|
}
|
|
183
183
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqActionsPanelContainer, decorators: [{
|
|
184
184
|
type: Component,
|
|
@@ -214,4 +214,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
214
214
|
'(keydown.escape)': 'handleEscape($event)'
|
|
215
215
|
}, changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}.kbq-actions-panel-overlay-container{position:relative}\n"] }]
|
|
216
216
|
}] });
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1wYW5lbC1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2FjdGlvbnMtcGFuZWwvYWN0aW9ucy1wYW5lbC1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILE9BQU8sRUFDUCxZQUFZLEVBRVosS0FBSyxFQUNMLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixjQUFjLEVBR2QsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFDSCxrQkFBa0IsRUFFbEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixjQUFjLEVBQ2pCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBRS9ELDJDQUEyQztBQUMzQyxNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FBRyxJQUFJLGNBQWMsQ0FDcEUsd0NBQXdDLEVBQ3hDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FDakQsQ0FBQztBQUVGLHFFQUFxRTtBQUNyRSxNQUFNLENBQUMsTUFBTSwwQ0FBMEMsR0FBRyxDQUN0RCxhQUFpRCxFQUN6QyxFQUFFLENBQUMsQ0FBQztJQUNaLE9BQU8sRUFBRSxzQ0FBc0M7SUFDL0MsUUFBUSxFQUFFLGFBQWE7Q0FDMUIsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSCxNQUFNLHFDQUFxQyxHQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUU7SUFDM0QsS0FBSyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUN4RCxVQUFVLENBQ04sb0NBQW9DLEVBQ3BDLEtBQUssQ0FBQztRQUNGLE9BQU8sQ0FBQyxHQUFHLHFCQUFxQixDQUFDLFFBQVEsSUFBSSxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNoRixLQUFLLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDO0tBQ2xELENBQUMsQ0FDTDtJQUNELFVBQVUsQ0FDTixpQkFBaUIsRUFDakIsS0FBSyxDQUFDO1FBQ0YsT0FBTyxDQUFDLEdBQUcscUJBQXFCLENBQUMsT0FBTyxJQUFJLGtCQUFrQixDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQy9FLEtBQUssQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDbEQsQ0FBQyxDQUNMO0NBQ0osQ0FBQyxDQUFDO0FBRUg7Ozs7R0FJRztBQStDSCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsa0JBQWtCO0lBOUNoRTs7UUErQ0k7Ozs7V0FJRztRQUNPLG1CQUFjLEdBQWtDLE1BQU0sQ0FBQztRQUVqRTs7OztXQUlHO1FBQ00sMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFLcEU7Ozs7V0FJRztRQUNnQixXQUFNLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFekMsaUJBQVksR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QixrQkFBYSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRWhGOzs7O1dBSUc7UUFDZ0Isd0JBQW1CLEdBQUcsUUFBUSxDQUM3QyxJQUFJLENBQUMsYUFBYTtZQUNkLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFjLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7WUFDM0YsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxDQUMzRCxDQUFDO0tBK0ZMO0lBN0ZZLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sS0FBSztRQUNYLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDO1lBQ2hDLDBHQUEwRztZQUMxRyx1RUFBdUU7WUFDdkUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM1QyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxtQkFBbUI7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDO1lBQy9CLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMzQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxlQUFlLENBQUMsS0FBcUI7UUFDM0MsSUFBSSxLQUFLLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN0QixDQUFDO1FBRUQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLGdCQUFnQixDQUFDLEtBQXFCO1FBQzVDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxZQUFZLENBQUMsS0FBb0I7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDNUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqQixDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ2dCLGdCQUFnQjtRQUMvQixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU8sbUJBQW1CO1FBQ3ZCLE1BQU0sRUFBRSxjQUFjLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBRXZDLElBQUksY0FBYyxFQUFFLENBQUM7WUFDakIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDM0csQ0FBQztpQkFBTSxDQUFDO2dCQUNKLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1lBQzNFLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztrSUFwSVEsd0JBQXdCO3NIQUF4Qix3QkFBd0IsMmFBcEN2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FpQlQsK29EQXhCRyxlQUFlLGdKQUNmLGdCQUFnQiw4SUFDaEIsZUFBZSwrTkFDZixhQUFhLDJJQUNiLGdCQUFnQiwyYkF5QlIsQ0FBQyxxQ0FBcUMsQ0FBQzs7NEZBYzFDLHdCQUF3QjtrQkE5Q3BDLFNBQVM7aUNBQ00sSUFBSSxXQUNQO3dCQUNMLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3FCQUNuQixZQUNTLDZCQUE2QixZQUM3Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FpQlQsY0FLVyxDQUFDLHFDQUFxQyxDQUFDLFFBQzdDO3dCQUNGLEtBQUssRUFBRSw2QkFBNkI7d0JBQ3BDLHlDQUF5QyxFQUFFLDRCQUE0Qjt3QkFDdkUsVUFBVSxFQUFFLGdCQUFnQjt3QkFDNUIsZ0JBQWdCLEVBQUUsMEJBQTBCO3dCQUM1QyxlQUFlLEVBQUUseUJBQXlCO3dCQUMxQyxrQkFBa0IsRUFBRSxzQkFBc0I7cUJBQzdDLG1CQUdnQix1QkFBdUIsQ0FBQyxPQUFPLGlCQUNqQyxpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBhbmltYXRlLFxuICAgIGFuaW1hdGVDaGlsZCxcbiAgICBBbmltYXRpb25FdmVudCxcbiAgICBncm91cCxcbiAgICBxdWVyeSxcbiAgICBzdGF0ZSxcbiAgICBzdHlsZSxcbiAgICB0cmFuc2l0aW9uLFxuICAgIHRyaWdnZXJcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDZGtEaWFsb2dDb250YWluZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IENka1BvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBPbkRlc3Ryb3ksXG4gICAgUHJvdmlkZXIsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBLYnFCdXR0b25Nb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgS0JRX0xPQ0FMRV9TRVJWSUNFLFxuICAgIEticUFjdGlvbnNQYW5lbExvY2FsZUNvbmZpZ3VyYXRpb24sXG4gICAgS2JxQW5pbWF0aW9uQ3VydmVzLFxuICAgIEticUFuaW1hdGlvbkR1cmF0aW9ucyxcbiAgICBydVJVTG9jYWxlRGF0YVxufSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFEaXZpZGVyTW9kdWxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2RpdmlkZXInO1xuaW1wb3J0IHsgS2JxSWNvbk1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7IEticVRvb2xUaXBNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBtYXAsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLYnFBY3Rpb25zUGFuZWwgfSBmcm9tICcuL2FjdGlvbnMtcGFuZWwnO1xuaW1wb3J0IHsgS2JxQWN0aW9uc1BhbmVsQ29uZmlnIH0gZnJvbSAnLi9hY3Rpb25zLXBhbmVsLWNvbmZpZyc7XG5cbi8qKiBMb2NhbGl6YXRpb24gY29uZmlndXJhdGlvbiBwcm92aWRlci4gKi9cbmV4cG9ydCBjb25zdCBLQlFfQUNUSU9OU19QQU5FTF9MT0NBTEVfQ09ORklHVVJBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxLYnFBY3Rpb25zUGFuZWxMb2NhbGVDb25maWd1cmF0aW9uPihcbiAgICAnS0JRX0FDVElPTlNfUEFORUxfTE9DQUxFX0NPTkZJR1VSQVRJT04nLFxuICAgIHsgZmFjdG9yeTogKCkgPT4gcnVSVUxvY2FsZURhdGEuYWN0aW9uc1BhbmVsIH1cbik7XG5cbi8qKiBVdGlsaXR5IHByb3ZpZGVyIGZvciBgS0JRX0FDVElPTlNfUEFORUxfTE9DQUxFX0NPTkZJR1VSQVRJT05gLiAqL1xuZXhwb3J0IGNvbnN0IGticUFjdGlvbnNQYW5lbExvY2FsZUNvbmZpZ3VyYXRpb25Qcm92aWRlciA9IChcbiAgICBjb25maWd1cmF0aW9uOiBLYnFBY3Rpb25zUGFuZWxMb2NhbGVDb25maWd1cmF0aW9uXG4pOiBQcm92aWRlciA9PiAoe1xuICAgIHByb3ZpZGU6IEtCUV9BQ1RJT05TX1BBTkVMX0xPQ0FMRV9DT05GSUdVUkFUSU9OLFxuICAgIHVzZVZhbHVlOiBjb25maWd1cmF0aW9uXG59KTtcblxuLyoqXG4gKiBBbmltYXRpb24gdGhhdCBzaG93cyBhbmQgaGlkZXMgdGhlIGFjdGlvbnMgcGFuZWwuXG4gKi9cbmNvbnN0IEtCUV9BQ1RJT05TX1BBTkVMX0NPTlRBSU5FUl9BTklNQVRJT04gPSB0cmlnZ2VyKCdzdGF0ZScsIFtcbiAgICBzdGF0ZSgndm9pZCwgaGlkZGVuJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDEwMCUpJyB9KSksXG4gICAgc3RhdGUoJ3Zpc2libGUnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCUpJyB9KSksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJ3Zpc2libGUgPT4gdm9pZCwgdmlzaWJsZSA9PiBoaWRkZW4nLFxuICAgICAgICBncm91cChbXG4gICAgICAgICAgICBhbmltYXRlKGAke0ticUFuaW1hdGlvbkR1cmF0aW9ucy5FbnRlcmluZ30gJHtLYnFBbmltYXRpb25DdXJ2ZXMuU3RhbmRhcmRDdXJ2ZX1gKSxcbiAgICAgICAgICAgIHF1ZXJ5KCdAKicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgICAgIF0pXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAndm9pZCA9PiB2aXNpYmxlJyxcbiAgICAgICAgZ3JvdXAoW1xuICAgICAgICAgICAgYW5pbWF0ZShgJHtLYnFBbmltYXRpb25EdXJhdGlvbnMuRXhpdGluZ30gJHtLYnFBbmltYXRpb25DdXJ2ZXMuU3RhbmRhcmRDdXJ2ZX1gKSxcbiAgICAgICAgICAgIHF1ZXJ5KCdAKicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgICAgIF0pXG4gICAgKVxuXSk7XG5cbi8qKlxuICogSW50ZXJuYWwgY29tcG9uZW50IHRoYXQgd3JhcHMgdXNlci1wcm92aWRlZCBhY3Rpb25zIHBhbmVsIGNvbnRlbnQuXG4gKlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ2RrUG9ydGFsT3V0bGV0LFxuICAgICAgICBLYnFEaXZpZGVyTW9kdWxlLFxuICAgICAgICBLYnFCdXR0b25Nb2R1bGUsXG4gICAgICAgIEticUljb25Nb2R1bGUsXG4gICAgICAgIEticVRvb2xUaXBNb2R1bGVcbiAgICBdLFxuICAgIHNlbGVjdG9yOiAna2JxLWFjdGlvbnMtcGFuZWwtY29udGFpbmVyJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWFjdGlvbnMtcGFuZWwtY29udGFpbmVyX19jb250ZW50XCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgY2RrUG9ydGFsT3V0bGV0IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBAaWYgKCFjb25maWcuZGlzYWJsZUNsb3NlKSB7XG4gICAgICAgICAgICA8a2JxLWRpdmlkZXIgY2xhc3M9XCJrYnEtYWN0aW9ucy1wYW5lbC1jb250YWluZXJfX3ZlcnRpY2FsLWRpdmlkZXJcIiBbdmVydGljYWxdPVwidHJ1ZVwiIC8+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJrYnEtYWN0aW9ucy1wYW5lbC1jb250YWluZXJfX2Nsb3NlLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2ticVRvb2x0aXBdPVwibG9jYWxlQ29uZmlndXJhdGlvbigpIS5jbG9zZVRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFtrYnFUb29sdGlwT2Zmc2V0XT1cIjE2XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICAgICAgICAgICAgY29sb3I9XCJjb250cmFzdFwiXG4gICAgICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpIGticS1pY29uPVwia2JxLXhtYXJrLWNpcmNsZV8xNlwiPjwvaT5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgYCxcbiAgICBzdHlsZVVybHM6IFtcbiAgICAgICAgJy4vYWN0aW9ucy1wYW5lbC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuL2FjdGlvbnMtcGFuZWwtY29udGFpbmVyLnNjc3MnXG4gICAgXSxcbiAgICBhbmltYXRpb25zOiBbS0JRX0FDVElPTlNfUEFORUxfQ09OVEFJTkVSX0FOSU1BVElPTl0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1hY3Rpb25zLXBhbmVsLWNvbnRhaW5lcicsXG4gICAgICAgICdbY2xhc3Mua2JxLWFjdGlvbnMtcGFuZWwtY29udGFpbmVyX3J0bF0nOiAnY29uZmlnLmRpcmVjdGlvbiA9PT0gXCJydGxcIicsXG4gICAgICAgICdbQHN0YXRlXSc6ICdhbmltYXRpb25TdGF0ZScsXG4gICAgICAgICcoQHN0YXRlLnN0YXJ0KSc6ICdvbkFuaW1hdGlvblN0YXJ0KCRldmVudCknLFxuICAgICAgICAnKEBzdGF0ZS5kb25lKSc6ICdvbkFuaW1hdGlvbkRvbmUoJGV2ZW50KScsXG4gICAgICAgICcoa2V5ZG93bi5lc2NhcGUpJzogJ2hhbmRsZUVzY2FwZSgkZXZlbnQpJ1xuICAgIH0sXG4gICAgLy8gVXNlcyB0aGUgYERlZmF1bHRgIGNoYW5nZSBkZXRlY3Rpb24gc3RyYXRlZ3kgYXMgcGFyZW50IGBDZGtEaWFsb2dDb250YWluZXJgOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi8xOC4yLjE0L3NyYy9jZGsvZGlhbG9nL2RpYWxvZy1jb250YWluZXIudHMjTDYwXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgS2JxQWN0aW9uc1BhbmVsQ29udGFpbmVyIGV4dGVuZHMgQ2RrRGlhbG9nQ29udGFpbmVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBUaGUgc3RhdGUgb2YgdGhlIGFjdGlvbnMgcGFuZWwgYW5pbWF0aW9ucy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYW5pbWF0aW9uU3RhdGU6ICd2b2lkJyB8ICd2aXNpYmxlJyB8ICdoaWRkZW4nID0gJ3ZvaWQnO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgd2hlbmV2ZXIgdGhlIHN0YXRlIG9mIHRoZSBhbmltYXRpb24gY2hhbmdlcy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICByZWFkb25seSBhbmltYXRpb25TdGF0ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFuaW1hdGlvbkV2ZW50PigpO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGFjdGlvbnMgcGFuZWwgY29udGFpbmVyIGhhcyBiZWVuIGRlc3Ryb3llZC4gKi9cbiAgICBwcml2YXRlIGRlc3Ryb3llZDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEFjdGlvbnMgcGFuZWwgY29uZmlndXJhdGlvbi5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KEticUFjdGlvbnNQYW5lbENvbmZpZyk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGlvbnNQYW5lbCA9IGluamVjdChLYnFBY3Rpb25zUGFuZWwpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2UgPSBpbmplY3QoS0JRX0xPQ0FMRV9TRVJWSUNFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgLyoqXG4gICAgICogQWN0aW9ucyBwYW5lbCBsb2NhbGUgY29uZmlndXJhdGlvbi5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9jYWxlQ29uZmlndXJhdGlvbiA9IHRvU2lnbmFsPEticUFjdGlvbnNQYW5lbExvY2FsZUNvbmZpZ3VyYXRpb24+KFxuICAgICAgICB0aGlzLmxvY2FsZVNlcnZpY2VcbiAgICAgICAgICAgID8gdGhpcy5sb2NhbGVTZXJ2aWNlLmNoYW5nZXMucGlwZShtYXAoKCkgPT4gdGhpcy5sb2NhbGVTZXJ2aWNlIS5nZXRQYXJhbXMoJ2FjdGlvbnNQYW5lbCcpKSlcbiAgICAgICAgICAgIDogb2YoaW5qZWN0KEtCUV9BQ1RJT05TX1BBTkVMX0xPQ0FMRV9DT05GSUdVUkFUSU9OKSlcbiAgICApO1xuXG4gICAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbG9zZSB0aGUgYWN0aW9ucyBwYW5lbC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWN0aW9uc1BhbmVsLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RhcnQgYW5pbWF0aW9uIG9mIHRoZSBhY3Rpb25zIHBhbmVsIGVudHJhbmNlIGludG8gdmlldy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBzdGFydE9wZW5BbmltYXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGUgPSAndmlzaWJsZSc7XG4gICAgICAgICAgICAvLyBhbmltYXRpb25TdGF0ZSBsaXZlcyBpbiBob3N0IGJpbmRpbmdzIGFuZCBgZGV0ZWN0Q2hhbmdlc2AgZG9lcyBub3QgcmVmcmVzaCBob3N0IGJpbmRpbmdzICBzbyB3ZSBoYXZlIHRvXG4gICAgICAgICAgICAvLyBjYWxsIGBtYXJrRm9yQ2hlY2tgIHRvIGVuc3VyZSB0aGUgaG9zdCB2aWV3IGlzIHJlZnJlc2hlZCBldmVudHVhbGx5LlxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTdGFydCBhbmltYXRpb24gb2YgdGhlIGFjdGlvbnMgcGFuZWwgZXhpdGluZyBmcm9tIHZpZXcuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgc3RhcnRDbG9zZUFuaW1hdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9ICdoaWRkZW4nO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIGFuaW1hdGlvbiBkb25lIGV2ZW50cy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgb25BbmltYXRpb25Eb25lKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gJ3Zpc2libGUnKSB7XG4gICAgICAgICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMgYW5pbWF0aW9uIHN0YXJ0IGV2ZW50cy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgb25BbmltYXRpb25TdGFydChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGFuZGxlcyBlc2NhcGUga2V5IGV2ZW50cy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXNjYXBlKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb25maWcuZGlzYWJsZUNsb3NlKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBvdmVycmlkZSBfY29udGVudEF0dGFjaGVkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFwcGx5Q29udGFpbmVyQ2xhc3MoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwcGx5Q29udGFpbmVyQ2xhc3MoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgY29udGFpbmVyQ2xhc3MgfSA9IHRoaXMuY29uZmlnO1xuXG4gICAgICAgIGlmIChjb250YWluZXJDbGFzcykge1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY29udGFpbmVyQ2xhc3MpKSB7XG4gICAgICAgICAgICAgICAgY29udGFpbmVyQ2xhc3MuZm9yRWFjaCgoY3NzQ2xhc3MpID0+IHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBjc3NDbGFzcykpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgY29udGFpbmVyQ2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
217
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1wYW5lbC1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2FjdGlvbnMtcGFuZWwvYWN0aW9ucy1wYW5lbC1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILE9BQU8sRUFDUCxZQUFZLEVBRVosS0FBSyxFQUNMLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEVBQ1YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixjQUFjLEVBR2QsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFDSCxrQkFBa0IsRUFFbEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixjQUFjLEVBQ2pCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUscUJBQXFC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ZCxcbiAgICBBbmltYXRpb25FdmVudCxcbiAgICBncm91cCxcbiAgICBxdWVyeSxcbiAgICBzdGF0ZSxcbiAgICBzdHlsZSxcbiAgICB0cmFuc2l0aW9uLFxuICAgIHRyaWdnZXJcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDZGtEaWFsb2dDb250YWluZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IENka1BvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBPbkRlc3Ryb3ksXG4gICAgUHJvdmlkZXIsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBLYnFCdXR0b25Nb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7XG4gICAgS0JRX0xPQ0FMRV9TRVJWSUNFLFxuICAgIEticUFjdGlvbnNQYW5lbExvY2FsZUNvbmZpZ3VyYXRpb24sXG4gICAgS2JxQW5pbWF0aW9uQ3VydmVzLFxuICAgIEticUFuaW1hdGlvbkR1cmF0aW9ucyxcbiAgICBydVJVTG9jYWxlRGF0YVxufSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFEaXZpZGVyTW9kdWxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2RpdmlkZXInO1xuaW1wb3J0IHsgS2JxSWNvbk1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9pY29uJztcbmltcG9ydCB7IEticVRvb2xUaXBNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBtYXAsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLYnFBY3Rpb25zUGFuZWwgfSBmcm9tICcuL2FjdGlvbnMtcGFuZWwnO1xuaW1wb3J0IHsgS2JxQWN0aW9uc1BhbmVsQ29uZmlnIH0gZnJvbSAnLi9hY3Rpb25zLXBhbmVsLWNvbmZpZyc7XG5cbi8qKiBMb2NhbGl6YXRpb24gY29uZmlndXJhdGlvbiBwcm92aWRlci4gKi9cbmV4cG9ydCBjb25zdCBLQlFfQUNUSU9OU19QQU5FTF9MT0NBTEVfQ09ORklHVVJBVElPTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxLYnFBY3Rpb25zUGFuZWxMb2NhbGVDb25maWd1cmF0aW9uPihcbiAgICAnS0JRX0FDVElPTlNfUEFORUxfTE9DQUxFX0NPTkZJR1VSQVRJT04nLFxuICAgIHsgZmFjdG9yeTogKCkgPT4gcnVSVUxvY2FsZURhdGEuYWN0aW9uc1BhbmVsIH1cbik7XG5cbi8qKiBVdGlsaXR5IHByb3ZpZGVyIGZvciBgS0JRX0FDVElPTlNfUEFORUxfTE9DQUxFX0NPTkZJR1VSQVRJT05gLiAqL1xuZXhwb3J0IGNvbnN0IGticUFjdGlvbnNQYW5lbExvY2FsZUNvbmZpZ3VyYXRpb25Qcm92aWRlciA9IChcbiAgICBjb25maWd1cmF0aW9uOiBLYnFBY3Rpb25zUGFuZWxMb2NhbGVDb25maWd1cmF0aW9uXG4pOiBQcm92aWRlciA9PiAoe1xuICAgIHByb3ZpZGU6IEtCUV9BQ1RJT05TX1BBTkVMX0xPQ0FMRV9DT05GSUdVUkFUSU9OLFxuICAgIHVzZVZhbHVlOiBjb25maWd1cmF0aW9uXG59KTtcblxuLyoqXG4gKiBBbmltYXRpb24gdGhhdCBzaG93cyBhbmQgaGlkZXMgdGhlIGFjdGlvbnMgcGFuZWwuXG4gKi9cbmNvbnN0IEtCUV9BQ1RJT05TX1BBTkVMX0NPTlRBSU5FUl9BTklNQVRJT04gPSB0cmlnZ2VyKCdzdGF0ZScsIFtcbiAgICBzdGF0ZSgndm9pZCwgaGlkZGVuJywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDEwMCUpJyB9KSksXG4gICAgc3RhdGUoJ3Zpc2libGUnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCUpJyB9KSksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICAgJ3Zpc2libGUgPT4gdm9pZCwgdmlzaWJsZSA9PiBoaWRkZW4nLFxuICAgICAgICBncm91cChbXG4gICAgICAgICAgICBhbmltYXRlKGAke0ticUFuaW1hdGlvbkR1cmF0aW9ucy5FbnRlcmluZ30gJHtLYnFBbmltYXRpb25DdXJ2ZXMuU3RhbmRhcmRDdXJ2ZX1gKSxcbiAgICAgICAgICAgIHF1ZXJ5KCdAKicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgICAgIF0pXG4gICAgKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgICAndm9pZCA9PiB2aXNpYmxlJyxcbiAgICAgICAgZ3JvdXAoW1xuICAgICAgICAgICAgYW5pbWF0ZShgJHtLYnFBbmltYXRpb25EdXJhdGlvbnMuRXhpdGluZ30gJHtLYnFBbmltYXRpb25DdXJ2ZXMuU3RhbmRhcmRDdXJ2ZX1gKSxcbiAgICAgICAgICAgIHF1ZXJ5KCdAKicsIGFuaW1hdGVDaGlsZCgpLCB7IG9wdGlvbmFsOiB0cnVlIH0pXG4gICAgICAgIF0pXG4gICAgKVxuXSk7XG5cbi8qKlxuICogSW50ZXJuYWwgY29tcG9uZW50IHRoYXQgd3JhcHMgdXNlci1wcm92aWRlZCBhY3Rpb25zIHBhbmVsIGNvbnRlbnQuXG4gKlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ2RrUG9ydGFsT3V0bGV0LFxuICAgICAgICBLYnFEaXZpZGVyTW9kdWxlLFxuICAgICAgICBLYnFCdXR0b25Nb2R1bGUsXG4gICAgICAgIEticUljb25Nb2R1bGUsXG4gICAgICAgIEticVRvb2xUaXBNb2R1bGVcbiAgICBdLFxuICAgIHNlbGVjdG9yOiAna2JxLWFjdGlvbnMtcGFuZWwtY29udGFpbmVyJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWFjdGlvbnMtcGFuZWwtY29udGFpbmVyX19jb250ZW50XCI+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgY2RrUG9ydGFsT3V0bGV0IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBAaWYgKCFjb25maWcuZGlzYWJsZUNsb3NlKSB7XG4gICAgICAgICAgICA8a2JxLWRpdmlkZXIgY2xhc3M9XCJrYnEtYWN0aW9ucy1wYW5lbC1jb250YWluZXJfX3ZlcnRpY2FsLWRpdmlkZXJcIiBbdmVydGljYWxdPVwidHJ1ZVwiIC8+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJrYnEtYWN0aW9ucy1wYW5lbC1jb250YWluZXJfX2Nsb3NlLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2ticVRvb2x0aXBdPVwibG9jYWxlQ29uZmlndXJhdGlvbigpIS5jbG9zZVRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFtrYnFUb29sdGlwT2Zmc2V0XT1cIjE2XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICAgICAgICAgICAgY29sb3I9XCJjb250cmFzdFwiXG4gICAgICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxpIGticS1pY29uPVwia2JxLXhtYXJrLWNpcmNsZV8xNlwiPjwvaT5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgYCxcbiAgICBzdHlsZVVybHM6IFtcbiAgICAgICAgJy4vYWN0aW9ucy1wYW5lbC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuL2FjdGlvbnMtcGFuZWwtY29udGFpbmVyLnNjc3MnXG4gICAgXSxcbiAgICBhbmltYXRpb25zOiBbS0JRX0FDVElPTlNfUEFORUxfQ09OVEFJTkVSX0FOSU1BVElPTl0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1hY3Rpb25zLXBhbmVsLWNvbnRhaW5lcicsXG4gICAgICAgICdbY2xhc3Mua2JxLWFjdGlvbnMtcGFuZWwtY29udGFpbmVyX3J0bF0nOiAnY29uZmlnLmRpcmVjdGlvbiA9PT0gXCJydGxcIicsXG4gICAgICAgICdbQHN0YXRlXSc6ICdhbmltYXRpb25TdGF0ZScsXG4gICAgICAgICcoQHN0YXRlLnN0YXJ0KSc6ICdvbkFuaW1hdGlvblN0YXJ0KCRldmVudCknLFxuICAgICAgICAnKEBzdGF0ZS5kb25lKSc6ICdvbkFuaW1hdGlvbkRvbmUoJGV2ZW50KScsXG4gICAgICAgICcoa2V5ZG93bi5lc2NhcGUpJzogJ2hhbmRsZUVzY2FwZSgkZXZlbnQpJ1xuICAgIH0sXG4gICAgLy8gVXNlcyB0aGUgYERlZmF1bHRgIGNoYW5nZSBkZXRlY3Rpb24gc3RyYXRlZ3kgYXMgcGFyZW50IGBDZGtEaWFsb2dDb250YWluZXJgOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi8xOC4yLjE0L3NyYy9jZGsvZGlhbG9nL2RpYWxvZy1jb250YWluZXIudHMjTDYwXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgS2JxQWN0aW9uc1BhbmVsQ29udGFpbmVyIGV4dGVuZHMgQ2RrRGlhbG9nQ29udGFpbmVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICAvKipcbiAgICAgKiBUaGUgc3RhdGUgb2YgdGhlIGFjdGlvbnMgcGFuZWwgYW5pbWF0aW9ucy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYW5pbWF0aW9uU3RhdGU6ICd2b2lkJyB8ICd2aXNpYmxlJyB8ICdoaWRkZW4nID0gJ3ZvaWQnO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgd2hlbmV2ZXIgdGhlIHN0YXRlIG9mIHRoZSBhbmltYXRpb24gY2hhbmdlcy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICByZWFkb25seSBhbmltYXRpb25TdGF0ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFuaW1hdGlvbkV2ZW50PigpO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGFjdGlvbnMgcGFuZWwgY29udGFpbmVyIGhhcyBiZWVuIGRlc3Ryb3llZC4gKi9cbiAgICBwcml2YXRlIGRlc3Ryb3llZDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEFjdGlvbnMgcGFuZWwgY29uZmlndXJhdGlvbi5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KEticUFjdGlvbnNQYW5lbENvbmZpZyk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGlvbnNQYW5lbCA9IGluamVjdChLYnFBY3Rpb25zUGFuZWwpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsZVNlcnZpY2UgPSBpbmplY3QoS0JRX0xPQ0FMRV9TRVJWSUNFLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgLyoqXG4gICAgICogQWN0aW9ucyBwYW5lbCBsb2NhbGUgY29uZmlndXJhdGlvbi5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9jYWxlQ29uZmlndXJhdGlvbiA9IHRvU2lnbmFsPEticUFjdGlvbnNQYW5lbExvY2FsZUNvbmZpZ3VyYXRpb24+KFxuICAgICAgICB0aGlzLmxvY2FsZVNlcnZpY2VcbiAgICAgICAgICAgID8gdGhpcy5sb2NhbGVTZXJ2aWNlLmNoYW5nZXMucGlwZShtYXAoKCkgPT4gdGhpcy5sb2NhbGVTZXJ2aWNlIS5nZXRQYXJhbXMoJ2FjdGlvbnNQYW5lbCcpKSlcbiAgICAgICAgICAgIDogb2YoaW5qZWN0KEtCUV9BQ1RJT05TX1BBTkVMX0xPQ0FMRV9DT05GSUdVUkFUSU9OKSlcbiAgICApO1xuXG4gICAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbG9zZSB0aGUgYWN0aW9ucyBwYW5lbC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgY2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYWN0aW9uc1BhbmVsLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RhcnQgYW5pbWF0aW9uIG9mIHRoZSBhY3Rpb25zIHBhbmVsIGVudHJhbmNlIGludG8gdmlldy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBzdGFydE9wZW5BbmltYXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kZXN0cm95ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGUgPSAndmlzaWJsZSc7XG4gICAgICAgICAgICAvLyBhbmltYXRpb25TdGF0ZSBsaXZlcyBpbiBob3N0IGJpbmRpbmdzIGFuZCBgZGV0ZWN0Q2hhbmdlc2AgZG9lcyBub3QgcmVmcmVzaCBob3N0IGJpbmRpbmdzICBzbyB3ZSBoYXZlIHRvXG4gICAgICAgICAgICAvLyBjYWxsIGBtYXJrRm9yQ2hlY2tgIHRvIGVuc3VyZSB0aGUgaG9zdCB2aWV3IGlzIHJlZnJlc2hlZCBldmVudHVhbGx5LlxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTdGFydCBhbmltYXRpb24gb2YgdGhlIGFjdGlvbnMgcGFuZWwgZXhpdGluZyBmcm9tIHZpZXcuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgc3RhcnRDbG9zZUFuaW1hdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRlc3Ryb3llZCkge1xuICAgICAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9ICdoaWRkZW4nO1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIGFuaW1hdGlvbiBkb25lIGV2ZW50cy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgb25BbmltYXRpb25Eb25lKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoZXZlbnQudG9TdGF0ZSA9PT0gJ3Zpc2libGUnKSB7XG4gICAgICAgICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMgYW5pbWF0aW9uIHN0YXJ0IGV2ZW50cy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgb25BbmltYXRpb25TdGFydChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZUNoYW5nZWQuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGFuZGxlcyBlc2NhcGUga2V5IGV2ZW50cy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgaGFuZGxlRXNjYXBlKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb25maWcuZGlzYWJsZUNsb3NlKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBvdmVycmlkZSBfY29udGVudEF0dGFjaGVkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFwcGx5Q29udGFpbmVyQ2xhc3MoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwcGx5Q29udGFpbmVyQ2xhc3MoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgY29udGFpbmVyQ2xhc3MgfSA9IHRoaXMuY29uZmlnO1xuXG4gICAgICAgIGlmIChjb250YWluZXJDbGFzcykge1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY29udGFpbmVyQ2xhc3MpKSB7XG4gICAgICAgICAgICAgICAgY29udGFpbmVyQ2xhc3MuZm9yRWFjaCgoY3NzQ2xhc3MpID0+IHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBjc3NDbGFzcykpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgY29udGFpbmVyQ2xhc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19
|