@radix-ng/primitives 0.10.0 → 0.11.1
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/accordion/src/accordion-content.directive.d.ts +8 -61
- package/accordion/src/accordion-header.directive.d.ts +2 -18
- package/accordion/src/accordion-item.directive.d.ts +54 -26
- package/accordion/src/accordion-root.directive.d.ts +41 -20
- package/accordion/src/accordion-trigger.directive.d.ts +6 -22
- package/collapsible/src/collapsible-content.directive.d.ts +8 -2
- package/collapsible/src/collapsible-content.token.d.ts +3 -0
- package/collapsible/src/collapsible-root.directive.d.ts +7 -4
- package/compodoc/documentation.json +11759 -0
- package/dialog/README.md +1 -0
- package/dialog/index.d.ts +1 -0
- package/esm2022/accordion/src/accordion-content.directive.mjs +29 -124
- package/esm2022/accordion/src/accordion-header.directive.mjs +10 -31
- package/esm2022/accordion/src/accordion-item.directive.mjs +149 -57
- package/esm2022/accordion/src/accordion-root.directive.mjs +103 -63
- package/esm2022/accordion/src/accordion-trigger.directive.mjs +22 -41
- package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog.service.mjs +3 -3
- package/esm2022/avatar/src/avatar-fallback.directive.mjs +3 -3
- package/esm2022/avatar/src/avatar-image.directive.mjs +3 -3
- package/esm2022/avatar/src/avatar-root.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox-button.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox-input.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox.directive.mjs +3 -3
- package/esm2022/collapsible/src/collapsible-content.directive.mjs +20 -7
- package/esm2022/collapsible/src/collapsible-content.token.mjs +3 -0
- package/esm2022/collapsible/src/collapsible-root.directive.mjs +17 -13
- package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +3 -3
- package/esm2022/dialog/index.mjs +2 -0
- package/esm2022/dialog/radix-ng-primitives-dialog.mjs +5 -0
- package/esm2022/dropdown-menu/src/dropdown-menu-content.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-checkbox.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-indicator.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-radio-group.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-radio.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-selectable.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-label.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-separator.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-trigger.directive.mjs +3 -3
- package/esm2022/label/src/label.directive.mjs +10 -5
- package/esm2022/menu/index.mjs +4 -4
- package/esm2022/menu/src/menu-content.directive.mjs +3 -3
- package/esm2022/menu/src/menu-directive.mjs +3 -3
- package/esm2022/menu/src/menu-group.directive.mjs +3 -3
- package/esm2022/menu/src/menu-item.directive.mjs +3 -3
- package/esm2022/menu/src/menu-label.directive.mjs +3 -3
- package/esm2022/menu/src/menu-separator.directive.mjs +3 -3
- package/esm2022/menubar/index.mjs +4 -4
- package/esm2022/menubar/src/menubar-content.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item-checkbox.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item-indicator.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item-radio.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-radio-group.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-root.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-separator.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-trigger.directive.mjs +3 -3
- package/esm2022/progress/src/progress-indicator.directive.mjs +3 -3
- package/esm2022/progress/src/progress-root.directive.mjs +3 -3
- package/esm2022/radio/src/radio-indicator.directive.mjs +10 -10
- package/esm2022/radio/src/radio-item.directive.mjs +29 -18
- package/esm2022/radio/src/radio-root.directive.mjs +110 -16
- package/esm2022/radio/src/radio-tokens.mjs +3 -0
- package/esm2022/separator/src/separator.directive.mjs +3 -3
- package/esm2022/switch/index.mjs +4 -4
- package/esm2022/switch/src/switch-input.directive.mjs +3 -3
- package/esm2022/switch/src/switch-root.directive.mjs +3 -3
- package/esm2022/switch/src/switch-thumb.directive.mjs +3 -3
- package/esm2022/tabs/index.mjs +4 -4
- package/esm2022/tabs/src/tabs-content.directive.mjs +3 -3
- package/esm2022/tabs/src/tabs-context.service.mjs +3 -3
- package/esm2022/tabs/src/tabs-list.directive.mjs +3 -3
- package/esm2022/tabs/src/tabs-root.directive.mjs +3 -3
- package/esm2022/tabs/src/tabs-trigger.directive.mjs +3 -3
- package/esm2022/toggle/src/toggle.directive.mjs +3 -3
- package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +3 -3
- package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +3 -3
- package/esm2022/toggle-group/src/toggle-group.directive.mjs +3 -3
- package/fesm2022/radix-ng-primitives-accordion.mjs +317 -323
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +18 -18
- package/fesm2022/radix-ng-primitives-avatar.mjs +9 -9
- package/fesm2022/radix-ng-primitives-checkbox.mjs +12 -12
- package/fesm2022/radix-ng-primitives-collapsible.mjs +61 -44
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs +4 -0
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +30 -30
- package/fesm2022/radix-ng-primitives-label.mjs +9 -4
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menu.mjs +22 -22
- package/fesm2022/radix-ng-primitives-menubar.mjs +31 -31
- package/fesm2022/radix-ng-primitives-progress.mjs +6 -6
- package/fesm2022/radix-ng-primitives-radio.mjs +182 -77
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-separator.mjs +3 -3
- package/fesm2022/radix-ng-primitives-switch.mjs +13 -13
- package/fesm2022/radix-ng-primitives-tabs.mjs +19 -19
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +9 -9
- package/fesm2022/radix-ng-primitives-toggle.mjs +3 -3
- package/label/src/label.directive.d.ts +9 -3
- package/package.json +7 -1
- package/radio/src/radio-indicator.directive.d.ts +4 -2
- package/radio/src/radio-item.directive.d.ts +10 -5
- package/radio/src/radio-root.directive.d.ts +19 -18
- package/radio/src/radio-tokens.d.ts +12 -0
package/dialog/README.md
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
# @radix-ng/primitives/dialog
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -1,137 +1,42 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import { animationFrameScheduler } from 'rxjs';
|
1
|
+
import { Directive, ElementRef, inject } from '@angular/core';
|
2
|
+
import { RdxAccordionItemDirective } from './accordion-item.directive';
|
4
3
|
import * as i0 from "@angular/core";
|
5
|
-
import * as i1 from "@angular/cdk/accordion";
|
6
|
-
export const RdxAccordionContentToken = new InjectionToken('RdxAccordionContentToken');
|
7
4
|
export class RdxAccordionContentDirective {
|
8
5
|
constructor() {
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
this.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
this.disabled = input(false);
|
25
|
-
/**
|
26
|
-
* @ignore
|
27
|
-
*/
|
28
|
-
this.accordionItem = inject(CdkAccordionItem);
|
29
|
-
/**
|
30
|
-
* @ignore
|
31
|
-
*/
|
32
|
-
this.orientation = 'vertical';
|
33
|
-
effect(() => {
|
34
|
-
if (this.state()) {
|
35
|
-
this.setPresence();
|
36
|
-
}
|
37
|
-
});
|
38
|
-
}
|
39
|
-
/**
|
40
|
-
* @ignore
|
41
|
-
*/
|
42
|
-
ngOnInit() {
|
43
|
-
this.togglePresence();
|
44
|
-
}
|
45
|
-
/**
|
46
|
-
* @ignore
|
47
|
-
*/
|
48
|
-
setOpen(state) {
|
49
|
-
if (this.disabled()) {
|
50
|
-
return;
|
51
|
-
}
|
52
|
-
if (state === undefined) {
|
53
|
-
this.state.update(() => (this.state() === 'open' ? 'closed' : 'open'));
|
54
|
-
}
|
55
|
-
else {
|
56
|
-
this.state.update(() => state);
|
6
|
+
this.item = inject(RdxAccordionItemDirective);
|
7
|
+
this.nativeElement = inject(ElementRef).nativeElement;
|
8
|
+
this.hidden = false;
|
9
|
+
}
|
10
|
+
onAnimationEnd() {
|
11
|
+
this.hidden = !this.item.expanded;
|
12
|
+
const { height, width } = this.nativeElement.getBoundingClientRect();
|
13
|
+
this.nativeElement.style.setProperty('--radix-collapsible-content-height', `${height}px`);
|
14
|
+
this.nativeElement.style.setProperty('--radix-collapsible-content-width', `${width}px`);
|
15
|
+
this.nativeElement.style.setProperty('--radix-accordion-content-height', 'var(--radix-collapsible-content-height)');
|
16
|
+
this.nativeElement.style.setProperty('--radix-accordion-content-width', 'var(--radix-collapsible-content-width)');
|
17
|
+
}
|
18
|
+
onToggle() {
|
19
|
+
if (!this.item.expanded) {
|
20
|
+
this.hidden = false;
|
57
21
|
}
|
58
22
|
}
|
59
|
-
|
60
|
-
|
61
|
-
*/
|
62
|
-
initialize() {
|
63
|
-
if (!this.initialized()) {
|
64
|
-
this.togglePresence();
|
65
|
-
animationFrameScheduler.schedule(() => {
|
66
|
-
this.elementRef.nativeElement.getAnimations().forEach((animation) => animation.cancel());
|
67
|
-
this.initialized.set(true);
|
68
|
-
});
|
69
|
-
}
|
70
|
-
}
|
71
|
-
/**
|
72
|
-
* @ignore
|
73
|
-
*/
|
74
|
-
setPresence() {
|
75
|
-
if (!this.initialized()) {
|
76
|
-
this.initialize();
|
77
|
-
return;
|
78
|
-
}
|
79
|
-
animationFrameScheduler.schedule(() => {
|
80
|
-
const animations = this.elementRef.nativeElement.getAnimations();
|
81
|
-
const hidden = this.elementRef.nativeElement.hasAttribute('hidden');
|
82
|
-
if (hidden) {
|
83
|
-
this.show();
|
84
|
-
const rect = this.elementRef.nativeElement.getBoundingClientRect();
|
85
|
-
const height = `${this.elementRef.nativeElement.scrollHeight /*rect.height*/}px`;
|
86
|
-
const width = `${rect.width}px`;
|
87
|
-
this.elementRef.nativeElement.style.setProperty('--radix-accordion-content-height', height);
|
88
|
-
this.elementRef.nativeElement.style.setProperty('--radix-accordion-content-width', width);
|
89
|
-
this.hide();
|
90
|
-
}
|
91
|
-
Promise.all(animations.map((animation) => animation.finished)).then(() => {
|
92
|
-
this.togglePresence();
|
93
|
-
});
|
94
|
-
});
|
95
|
-
}
|
96
|
-
/**
|
97
|
-
* @ignore
|
98
|
-
*/
|
99
|
-
togglePresence() {
|
100
|
-
if (this.state() === 'open') {
|
101
|
-
this.show();
|
102
|
-
}
|
103
|
-
else {
|
104
|
-
this.hide();
|
105
|
-
}
|
106
|
-
}
|
107
|
-
/**
|
108
|
-
* @ignore
|
109
|
-
*/
|
110
|
-
show() {
|
111
|
-
this.elementRef.nativeElement.removeAttribute('hidden');
|
112
|
-
}
|
113
|
-
/**
|
114
|
-
* @ignore
|
115
|
-
*/
|
116
|
-
hide() {
|
117
|
-
this.elementRef.nativeElement.setAttribute('hidden', '');
|
118
|
-
}
|
119
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RdxAccordionContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
120
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.1.2", type: RdxAccordionContentDirective, isStandalone: true, selector: "[rdxAccordionContent]", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-state": "state()", "attr.data-disabled": "disabled() ? \"\" : undefined", "attr.data-orientation": "orientation" } }, providers: [{ provide: RdxAccordionContentToken, useExisting: RdxAccordionContentDirective }], exportAs: ["rdxAccordionContent"], hostDirectives: [{ directive: i1.CdkAccordionItem }], ngImport: i0 }); }
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxAccordionContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
24
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxAccordionContentDirective, isStandalone: true, selector: "[rdxAccordionContent]", host: { listeners: { "animationend": "onAnimationEnd()" }, properties: { "attr.role": "\"region\"", "style.display": "hidden ? \"none\" : \"\"", "attr.data-state": "item.dataState", "attr.data-disabled": "item.disabled", "attr.data-orientation": "item.orientation" } }, exportAs: ["rdxAccordionContent"], ngImport: i0 }); }
|
121
25
|
}
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxAccordionContentDirective, decorators: [{
|
123
27
|
type: Directive,
|
124
28
|
args: [{
|
125
29
|
selector: '[rdxAccordionContent]',
|
126
30
|
standalone: true,
|
127
31
|
exportAs: 'rdxAccordionContent',
|
128
|
-
providers: [{ provide: RdxAccordionContentToken, useExisting: RdxAccordionContentDirective }],
|
129
32
|
host: {
|
130
|
-
'[attr.
|
131
|
-
'[
|
132
|
-
'[attr.data-
|
133
|
-
|
134
|
-
|
33
|
+
'[attr.role]': '"region"',
|
34
|
+
'[style.display]': 'hidden ? "none" : ""',
|
35
|
+
'[attr.data-state]': 'item.dataState',
|
36
|
+
'[attr.data-disabled]': 'item.disabled',
|
37
|
+
'[attr.data-orientation]': 'item.orientation',
|
38
|
+
'(animationend)': 'onAnimationEnd()'
|
39
|
+
}
|
135
40
|
}]
|
136
|
-
}]
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWNvbnRlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9hY2NvcmRpb24vc3JjL2FjY29yZGlvbi1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBSS9DLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUErQiwwQkFBMEIsQ0FBQyxDQUFDO0FBY3JILE1BQU0sT0FBTyw0QkFBNEI7SUEwQnJDO1FBekJBOztXQUVHO1FBQ2MsZUFBVSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDMUU7O1dBRUc7UUFDSyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQzs7V0FFRztRQUNILFVBQUssR0FBRyxNQUFNLENBQXdCLFFBQVEsQ0FBQyxDQUFDO1FBQ2hEOztXQUVHO1FBQ0gsYUFBUSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4Qjs7V0FFRztRQUNILGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDekM7O1dBRUc7UUFDSCxnQkFBVyxHQUE0QixVQUFVLENBQUM7UUFHOUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZCLENBQUM7UUFDTCxDQUFDLENBQUMs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LElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNLLElBQUk7UUFDUixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOztPQUVHO0lBQ0ssSUFBSTtRQUNSLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQzs4R0FqSVEsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsd1dBUjFCLENBQUMsRUFBRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsV0FBVyxFQUFFLDRCQUE0QixFQUFFLENBQUM7OzJGQVFwRiw0QkFBNEI7a0JBWnhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLFdBQVcsOEJBQThCLEVBQUUsQ0FBQztvQkFDN0YsSUFBSSxFQUFFO3dCQUNGLG1CQUFtQixFQUFFLFNBQVM7d0JBQzlCLHNCQUFzQixFQUFFLDZCQUE2Qjt3QkFDckQseUJBQXlCLEVBQUUsYUFBYTtxQkFDM0M7b0JBQ0QsY0FBYyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQ3JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrQWNjb3JkaW9uSXRlbSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hY2NvcmRpb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBlZmZlY3QsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5qZWN0aW9uVG9rZW4sIGlucHV0LCBPbkluaXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJkeEFjY29yZGlvbkl0ZW1TdGF0ZSB9IGZyb20gJy4vYWNjb3JkaW9uLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeEFjY29yZGlvbk9yaWVudGF0aW9uIH0gZnJvbSAnLi9hY2NvcmRpb24tcm9vdC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY29uc3QgUmR4QWNjb3JkaW9uQ29udGVudFRva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeEFjY29yZGlvbkNvbnRlbnREaXJlY3RpdmU+KCdSZHhBY2NvcmRpb25Db250ZW50VG9rZW4nKTtcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4QWNjb3JkaW9uQ29udGVudF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgZXhwb3J0QXM6ICdyZHhBY2NvcmRpb25Db250ZW50JyxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFJkeEFjY29yZGlvbkNvbnRlbnRUb2tlbiwgdXNlRXhpc3Rpbmc6IFJkeEFjY29yZGlvbkNvbnRlbnREaXJlY3RpdmUgfV0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnc3RhdGUoKScsXG4gICAgICAgICdbYXR0ci5kYXRhLWRpc2FibGVkXSc6ICdkaXNhYmxlZCgpID8gXCJcIiA6IHVuZGVmaW5lZCcsXG4gICAgICAgICdbYXR0ci5kYXRhLW9yaWVudGF0aW9uXSc6ICdvcmllbnRhdGlvbidcbiAgICB9LFxuICAgIGhvc3REaXJlY3RpdmVzOiBbQ2RrQWNjb3JkaW9uSXRlbV1cbn0pXG5leHBvcnQgY2xhc3MgUmR4QWNjb3JkaW9uQ29udGVudERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZWQgPSBzaWduYWwoZmFsc2UpO1xuICAgIC8qKlxuICAgICAqIEN1cnJlbnQgaXRlbSBzdGF0ZVxuICAgICAqL1xuICAgIHN0YXRlID0gc2lnbmFsPFJkeEFjY29yZGlvbkl0ZW1TdGF0ZT4oJ2Nsb3NlZCcpO1xuICAgIC8qKlxuICAgICAqIFdoZW4gdHJ1ZSwgcHJldmVudHMgdGhlIHVzZXIgZnJvbSBpbnRlcmFjdGluZyB3aXRoIHRoZSBhY2NvcmRpb24gYW5kIGFsbCBpdHMgaXRlbXMuXG4gICAgICovXG4gICAgZGlzYWJsZWQgPSBpbnB1dChmYWxzZSk7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIGFjY29yZGlvbkl0ZW0gPSBpbmplY3QoQ2RrQWNjb3JkaW9uSXRlbSk7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIG9yaWVudGF0aW9uOiBSZHhBY2NvcmRpb25PcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCc7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLnN0YXRlKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFByZXNlbmNlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50b2dnbGVQcmVzZW5jZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBzZXRPcGVuKHN0YXRlPzogUmR4QWNjb3JkaW9uSXRlbVN0YXRlIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnN0YXRlLnVwZGF0ZSgoKSA9PiAodGhpcy5zdGF0ZSgpID09PSAnb3BlbicgPyAnY2xvc2VkJyA6ICdvcGVuJykpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGUoKCkgPT4gc3RhdGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmluaXRpYWxpemVkKCkpIHtcbiAgICAgICAgICAgIHRoaXMudG9nZ2xlUHJlc2VuY2UoKTtcblxuICAgICAgICAgICAgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIuc2NoZWR1bGUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEFuaW1hdGlvbnMoKS5mb3JFYWNoKChhbmltYXRpb24pID0+IGFuaW1hdGlvbi5jYW5jZWwoKSk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmluaXRpYWxpemVkLnNldCh0cnVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHByaXZhdGUgc2V0UHJlc2VuY2UoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pbml0aWFsaXplZCgpKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxpemUoKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgYW5pbWF0aW9uRnJhbWVTY2hlZHVsZXIuc2NoZWR1bGUoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYW5pbWF0aW9ucyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEFuaW1hdGlvbnMoKTtcblxuICAgICAgICAgICAgY29uc3QgaGlkZGVuID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaGFzQXR0cmlidXRlKCdoaWRkZW4nKTtcblxuICAgICAgICAgICAgaWYgKGhpZGRlbikge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hvdygpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgcmVjdCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGAke3RoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodCAvKnJlY3QuaGVpZ2h0Ki99cHhgO1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpZHRoID0gYCR7cmVjdC53aWR0aH1weGA7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1yYWRpeC1hY2NvcmRpb24tY29udGVudC1oZWlnaHQnLCBoZWlnaHQpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tcmFkaXgtYWNjb3JkaW9uLWNvbnRlbnQtd2lkdGgnLCB3aWR0aCk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgUHJvbWlzZS5hbGwoYW5pbWF0aW9ucy5tYXAoKGFuaW1hdGlvbikgPT4gYW5pbWF0aW9uLmZpbmlzaGVkKSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50b2dnbGVQcmVzZW5jZSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBwcml2YXRlIHRvZ2dsZVByZXNlbmNlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zdGF0ZSgpID09PSAnb3BlbicpIHtcbiAgICAgICAgICAgIHRoaXMuc2hvdygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgcHJpdmF0ZSBzaG93KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2hpZGRlbicpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBwcml2YXRlIGhpZGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnaGlkZGVuJywgJycpO1xuICAgIH1cbn1cbiJdfQ==
|
41
|
+
}] });
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWNvbnRlbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9hY2NvcmRpb24vc3JjL2FjY29yZGlvbi1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBZXZFLE1BQU0sT0FBTyw0QkFBNEI7SUFiekM7UUFjdUIsU0FBSSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3pDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUUxRCxXQUFNLEdBQUcsS0FBSyxDQUFDO0tBeUI1QjtJQXZCYSxjQUFjO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUVsQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUVyRSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQyxDQUFDO1FBQzFGLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxtQ0FBbUMsRUFBRSxHQUFHLEtBQUssSUFBSSxDQUFDLENBQUM7UUFFeEYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNoQyxrQ0FBa0MsRUFDbEMseUNBQXlDLENBQzVDLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ2hDLGlDQUFpQyxFQUNqQyx3Q0FBd0MsQ0FDM0MsQ0FBQztJQUNOLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDeEIsQ0FBQztJQUNMLENBQUM7OEdBNUJRLDRCQUE0QjtrR0FBNUIsNEJBQTRCOzsyRkFBNUIsNEJBQTRCO2tCQWJ4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUscUJBQXFCO29CQUMvQixJQUFJLEVBQUU7d0JBQ0YsYUFBYSxFQUFFLFVBQVU7d0JBQ3pCLGlCQUFpQixFQUFFLHNCQUFzQjt3QkFDekMsbUJBQW1CLEVBQUUsZ0JBQWdCO3dCQUNyQyxzQkFBc0IsRUFBRSxlQUFlO3dCQUN2Qyx5QkFBeUIsRUFBRSxrQkFBa0I7d0JBQzdDLGdCQUFnQixFQUFFLGtCQUFrQjtxQkFDdkM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR4QWNjb3JkaW9uSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vYWNjb3JkaW9uLWl0ZW0uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4QWNjb3JkaW9uQ29udGVudF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgZXhwb3J0QXM6ICdyZHhBY2NvcmRpb25Db250ZW50JyxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5yb2xlXSc6ICdcInJlZ2lvblwiJyxcbiAgICAgICAgJ1tzdHlsZS5kaXNwbGF5XSc6ICdoaWRkZW4gPyBcIm5vbmVcIiA6IFwiXCInLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnaXRlbS5kYXRhU3RhdGUnLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAnaXRlbS5kaXNhYmxlZCcsXG4gICAgICAgICdbYXR0ci5kYXRhLW9yaWVudGF0aW9uXSc6ICdpdGVtLm9yaWVudGF0aW9uJyxcbiAgICAgICAgJyhhbmltYXRpb25lbmQpJzogJ29uQW5pbWF0aW9uRW5kKCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhBY2NvcmRpb25Db250ZW50RGlyZWN0aXZlIHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbSA9IGluamVjdChSZHhBY2NvcmRpb25JdGVtRGlyZWN0aXZlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmF0aXZlRWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50O1xuXG4gICAgcHJvdGVjdGVkIGhpZGRlbiA9IGZhbHNlO1xuXG4gICAgcHJvdGVjdGVkIG9uQW5pbWF0aW9uRW5kKCkge1xuICAgICAgICB0aGlzLmhpZGRlbiA9ICF0aGlzLml0ZW0uZXhwYW5kZWQ7XG5cbiAgICAgICAgY29uc3QgeyBoZWlnaHQsIHdpZHRoIH0gPSB0aGlzLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLXJhZGl4LWNvbGxhcHNpYmxlLWNvbnRlbnQtaGVpZ2h0JywgYCR7aGVpZ2h0fXB4YCk7XG4gICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1yYWRpeC1jb2xsYXBzaWJsZS1jb250ZW50LXdpZHRoJywgYCR7d2lkdGh9cHhgKTtcblxuICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXG4gICAgICAgICAgICAnLS1yYWRpeC1hY2NvcmRpb24tY29udGVudC1oZWlnaHQnLFxuICAgICAgICAgICAgJ3ZhcigtLXJhZGl4LWNvbGxhcHNpYmxlLWNvbnRlbnQtaGVpZ2h0KSdcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxuICAgICAgICAgICAgJy0tcmFkaXgtYWNjb3JkaW9uLWNvbnRlbnQtd2lkdGgnLFxuICAgICAgICAgICAgJ3ZhcigtLXJhZGl4LWNvbGxhcHNpYmxlLWNvbnRlbnQtd2lkdGgpJ1xuICAgICAgICApO1xuICAgIH1cblxuICAgIG9uVG9nZ2xlKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXRlbS5leHBhbmRlZCkge1xuICAgICAgICAgICAgdGhpcy5oaWRkZW4gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
@@ -1,44 +1,23 @@
|
|
1
|
-
import { Directive } from '@angular/core';
|
2
|
-
import {
|
1
|
+
import { Directive, inject } from '@angular/core';
|
2
|
+
import { RdxAccordionItemDirective } from './accordion-item.directive';
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export class RdxAccordionHeaderDirective {
|
5
5
|
constructor() {
|
6
|
-
|
7
|
-
* @ignore
|
8
|
-
*/
|
9
|
-
this.accordionItem = injectAccordionItem();
|
6
|
+
this.item = inject(RdxAccordionItemDirective);
|
10
7
|
}
|
11
|
-
|
12
|
-
|
13
|
-
*/
|
14
|
-
getState() {
|
15
|
-
return this.accordionItem.state();
|
16
|
-
}
|
17
|
-
/**
|
18
|
-
* @ignore
|
19
|
-
*/
|
20
|
-
getDisabled() {
|
21
|
-
return this.accordionItem.disabled() ? '' : undefined;
|
22
|
-
}
|
23
|
-
/**
|
24
|
-
* @ignore
|
25
|
-
*/
|
26
|
-
getOrientation() {
|
27
|
-
return this.accordionItem.orientation;
|
28
|
-
}
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RdxAccordionHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
30
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: RdxAccordionHeaderDirective, isStandalone: true, selector: "[rdxAccordionHeader]", host: { properties: { "attr.data-state": "getState()", "attr.data-disabled": "getDisabled()", "attr.data-orientation": "getOrientation()" } }, ngImport: i0 }); }
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxAccordionHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxAccordionHeaderDirective, isStandalone: true, selector: "[rdxAccordionHeader]", host: { properties: { "attr.data-state": "item.dataState", "attr.data-disabled": "item.disabled", "attr.data-orientation": "item.orientation" } }, ngImport: i0 }); }
|
31
10
|
}
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxAccordionHeaderDirective, decorators: [{
|
33
12
|
type: Directive,
|
34
13
|
args: [{
|
35
14
|
selector: '[rdxAccordionHeader]',
|
36
15
|
standalone: true,
|
37
16
|
host: {
|
38
|
-
'[attr.data-state]': '
|
39
|
-
'[attr.data-disabled]': '
|
40
|
-
'[attr.data-orientation]': '
|
17
|
+
'[attr.data-state]': 'item.dataState',
|
18
|
+
'[attr.data-disabled]': 'item.disabled',
|
19
|
+
'[attr.data-orientation]': 'item.orientation'
|
41
20
|
}
|
42
21
|
}]
|
43
22
|
}] });
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWhlYWRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2FjY29yZGlvbi9zcmMvYWNjb3JkaW9uLWhlYWRlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBV3ZFLE1BQU0sT0FBTywyQkFBMkI7SUFUeEM7UUFVdUIsU0FBSSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0tBQy9EOzhHQUZZLDJCQUEyQjtrR0FBM0IsMkJBQTJCOzsyRkFBM0IsMkJBQTJCO2tCQVR2QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsbUJBQW1CLEVBQUUsZ0JBQWdCO3dCQUNyQyxzQkFBc0IsRUFBRSxlQUFlO3dCQUN2Qyx5QkFBeUIsRUFBRSxrQkFBa0I7cUJBQ2hEO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJkeEFjY29yZGlvbkl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2FjY29yZGlvbi1pdGVtLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeEFjY29yZGlvbkhlYWRlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnaXRlbS5kYXRhU3RhdGUnLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAnaXRlbS5kaXNhYmxlZCcsXG4gICAgICAgICdbYXR0ci5kYXRhLW9yaWVudGF0aW9uXSc6ICdpdGVtLm9yaWVudGF0aW9uJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4QWNjb3JkaW9uSGVhZGVyRGlyZWN0aXZlIHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbSA9IGluamVjdChSZHhBY2NvcmRpb25JdGVtRGlyZWN0aXZlKTtcbn1cbiJdfQ==
|
@@ -1,83 +1,175 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import {
|
1
|
+
import { UniqueSelectionDispatcher } from '@angular/cdk/collections';
|
2
|
+
import { booleanAttribute, ChangeDetectorRef, ContentChild, Directive, EventEmitter, forwardRef, inject, Input, Output } from '@angular/core';
|
3
|
+
import { Subscription } from 'rxjs';
|
4
|
+
import { RdxAccordionContentDirective } from './accordion-content.directive';
|
5
|
+
import { RdxAccordionRootToken } from './accordion-root.directive';
|
6
|
+
import { RdxAccordionTriggerDirective } from './accordion-trigger.directive';
|
4
7
|
import * as i0 from "@angular/core";
|
5
|
-
|
6
|
-
export const RdxAccordionItemToken = new InjectionToken('RdxAccordionItemToken');
|
7
|
-
export function injectAccordionItem() {
|
8
|
-
return inject(RdxAccordionItemDirective);
|
9
|
-
}
|
8
|
+
let nextId = 0;
|
10
9
|
export class RdxAccordionItemDirective {
|
10
|
+
get dataState() {
|
11
|
+
return this.expanded ? 'open' : 'closed';
|
12
|
+
}
|
13
|
+
get orientation() {
|
14
|
+
return this.accordion.orientation;
|
15
|
+
}
|
16
|
+
/** Whether the AccordionItem is expanded. */
|
17
|
+
set expanded(expanded) {
|
18
|
+
// Only emit events and update the internal value if the value changes.
|
19
|
+
if (this._expanded !== expanded) {
|
20
|
+
this._expanded = expanded;
|
21
|
+
this.expandedChange.emit(expanded);
|
22
|
+
if (expanded) {
|
23
|
+
this.opened.emit();
|
24
|
+
/**
|
25
|
+
* In the unique selection dispatcher, the id parameter is the id of the CdkAccordionItem,
|
26
|
+
* the name value is the id of the accordion.
|
27
|
+
*/
|
28
|
+
const accordionId = this.accordion ? this.accordion.id : this.value;
|
29
|
+
this.expansionDispatcher.notify(this.value, accordionId);
|
30
|
+
}
|
31
|
+
else {
|
32
|
+
this.closed.emit();
|
33
|
+
}
|
34
|
+
// Ensures that the animation will run when the value is set outside of an `@Input`.
|
35
|
+
// This includes cases like the open, close and toggle methods.
|
36
|
+
this.changeDetectorRef.markForCheck();
|
37
|
+
}
|
38
|
+
}
|
39
|
+
get expanded() {
|
40
|
+
return this._expanded;
|
41
|
+
}
|
42
|
+
set value(value) {
|
43
|
+
this._value = value;
|
44
|
+
}
|
45
|
+
get value() {
|
46
|
+
return this._value || this.id;
|
47
|
+
}
|
48
|
+
/** Whether the AccordionItem is disabled. */
|
49
|
+
set disabled(value) {
|
50
|
+
this._disabled = value;
|
51
|
+
}
|
52
|
+
get disabled() {
|
53
|
+
return this.accordion.disabled ?? this._disabled;
|
54
|
+
}
|
11
55
|
constructor() {
|
56
|
+
this.accordion = inject(RdxAccordionRootToken, { skipSelf: true });
|
57
|
+
this.changeDetectorRef = inject(ChangeDetectorRef);
|
58
|
+
this.expansionDispatcher = inject(UniqueSelectionDispatcher);
|
12
59
|
/**
|
60
|
+
* The unique AccordionItem id.
|
13
61
|
* @ignore
|
14
62
|
*/
|
15
|
-
this.
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
this.
|
63
|
+
this.id = `rdx-accordion-item-${nextId++}`;
|
64
|
+
this._expanded = false;
|
65
|
+
this._disabled = false;
|
66
|
+
/** Event emitted every time the AccordionItem is closed. */
|
67
|
+
this.closed = new EventEmitter();
|
68
|
+
/** Event emitted every time the AccordionItem is opened. */
|
69
|
+
this.opened = new EventEmitter();
|
70
|
+
/** Event emitted when the AccordionItem is destroyed. */
|
71
|
+
this.destroyed = new EventEmitter();
|
20
72
|
/**
|
21
|
-
*
|
73
|
+
* Emits whenever the expanded state of the accordion changes.
|
74
|
+
* Primarily used to facilitate two-way binding.
|
75
|
+
* @docs-private
|
22
76
|
*/
|
23
|
-
this.
|
24
|
-
/**
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
77
|
+
this.expandedChange = new EventEmitter();
|
78
|
+
/** Subscription to openAll/closeAll events. */
|
79
|
+
this.openCloseAllSubscription = Subscription.EMPTY;
|
80
|
+
this.removeUniqueSelectionListener = this.expansionDispatcher.listen((id, accordionId) => {
|
81
|
+
if (this.accordion.isMultiple) {
|
82
|
+
if (this.accordion.id === accordionId && id.includes(this.value)) {
|
83
|
+
this.expanded = true;
|
84
|
+
}
|
85
|
+
}
|
86
|
+
else {
|
87
|
+
this.expanded = this.accordion.id === accordionId && id.includes(this.value);
|
88
|
+
}
|
89
|
+
});
|
90
|
+
// When an accordion item is hosted in an accordion, subscribe to open/close events.
|
91
|
+
if (this.accordion) {
|
92
|
+
this.openCloseAllSubscription = this.subscribeToOpenCloseAllActions();
|
35
93
|
}
|
36
|
-
|
37
|
-
|
94
|
+
}
|
95
|
+
/** Emits an event for the accordion item being destroyed. */
|
96
|
+
ngOnDestroy() {
|
97
|
+
this.opened.complete();
|
98
|
+
this.closed.complete();
|
99
|
+
this.destroyed.emit();
|
100
|
+
this.destroyed.complete();
|
101
|
+
this.removeUniqueSelectionListener();
|
102
|
+
this.openCloseAllSubscription.unsubscribe();
|
103
|
+
}
|
104
|
+
focus() {
|
105
|
+
this.trigger.focus();
|
106
|
+
}
|
107
|
+
/** Toggles the expanded state of the accordion item. */
|
108
|
+
toggle() {
|
109
|
+
if (!this.disabled) {
|
110
|
+
this.content.onToggle();
|
111
|
+
this.expanded = !this.expanded;
|
38
112
|
}
|
39
|
-
|
40
|
-
|
113
|
+
}
|
114
|
+
/** Sets the expanded state of the accordion item to false. */
|
115
|
+
close() {
|
116
|
+
if (!this.disabled) {
|
117
|
+
this.expanded = false;
|
41
118
|
}
|
42
|
-
this.accordionContent().setOpen(this.state());
|
43
119
|
}
|
44
|
-
/**
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
this.accordionContent().orientation = orientation;
|
120
|
+
/** Sets the expanded state of the accordion item to true. */
|
121
|
+
open() {
|
122
|
+
if (!this.disabled) {
|
123
|
+
this.expanded = true;
|
124
|
+
}
|
50
125
|
}
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
multi: true
|
126
|
+
subscribeToOpenCloseAllActions() {
|
127
|
+
return this.accordion.openCloseAllActions.subscribe((expanded) => {
|
128
|
+
// Only change expanded state if item is enabled
|
129
|
+
if (!this.disabled) {
|
130
|
+
this.expanded = expanded;
|
57
131
|
}
|
58
|
-
|
132
|
+
});
|
133
|
+
}
|
134
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxAccordionItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
135
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.1", type: RdxAccordionItemDirective, isStandalone: true, selector: "[rdxAccordionItem]", inputs: { expanded: ["expanded", "expanded", booleanAttribute], value: "value", disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { closed: "closed", opened: "opened", expandedChange: "expandedChange" }, host: { properties: { "attr.data-state": "dataState", "attr.data-disabled": "disabled", "attr.data-orientation": "orientation" } }, providers: [
|
136
|
+
{ provide: RdxAccordionRootToken, useValue: undefined }
|
137
|
+
], queries: [{ propertyName: "trigger", first: true, predicate: RdxAccordionTriggerDirective, descendants: true }, { propertyName: "content", first: true, predicate: i0.forwardRef(() => RdxAccordionContentDirective), descendants: true }], exportAs: ["rdxAccordionItem"], ngImport: i0 }); }
|
59
138
|
}
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1
|
139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxAccordionItemDirective, decorators: [{
|
61
140
|
type: Directive,
|
62
141
|
args: [{
|
63
142
|
selector: '[rdxAccordionItem]',
|
64
143
|
standalone: true,
|
65
144
|
exportAs: 'rdxAccordionItem',
|
66
|
-
providers: [
|
67
|
-
{
|
68
|
-
provide: RdxAccordionItemToken,
|
69
|
-
useExisting: RdxAccordionItemDirective,
|
70
|
-
multi: true
|
71
|
-
}
|
72
|
-
],
|
73
145
|
host: {
|
74
|
-
'[attr.data-state]': '
|
75
|
-
'[attr.data-disabled]': 'disabled
|
146
|
+
'[attr.data-state]': 'dataState',
|
147
|
+
'[attr.data-disabled]': 'disabled',
|
76
148
|
'[attr.data-orientation]': 'orientation'
|
77
149
|
},
|
78
|
-
|
150
|
+
providers: [
|
151
|
+
{ provide: RdxAccordionRootToken, useValue: undefined }
|
152
|
+
]
|
79
153
|
}]
|
80
|
-
}], propDecorators: {
|
154
|
+
}], ctorParameters: () => [], propDecorators: { trigger: [{
|
155
|
+
type: ContentChild,
|
156
|
+
args: [RdxAccordionTriggerDirective, { descendants: true }]
|
157
|
+
}], content: [{
|
158
|
+
type: ContentChild,
|
159
|
+
args: [forwardRef(() => RdxAccordionContentDirective), { descendants: true }]
|
160
|
+
}], expanded: [{
|
161
|
+
type: Input,
|
162
|
+
args: [{ transform: booleanAttribute }]
|
163
|
+
}], value: [{
|
81
164
|
type: Input
|
165
|
+
}], disabled: [{
|
166
|
+
type: Input,
|
167
|
+
args: [{ transform: booleanAttribute }]
|
168
|
+
}], closed: [{
|
169
|
+
type: Output
|
170
|
+
}], opened: [{
|
171
|
+
type: Output
|
172
|
+
}], expandedChange: [{
|
173
|
+
type: Output
|
82
174
|
}] } });
|
83
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9hY2NvcmRpb24vc3JjL2FjY29yZGlvbi1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBS3pFLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLElBQUksY0FBYyxDQUE0Qix1QkFBdUIsQ0FBQyxDQUFDO0FBRTVHLE1BQU0sVUFBVSxtQkFBbUI7SUFDL0IsT0FBTyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBb0JELE1BQU0sT0FBTyx5QkFBeUI7SUFsQnRDO1FBbUJJOztXQUVHO1FBQ0sscUJBQWdCLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzNFOztXQUVHO1FBQ0gsVUFBSyxHQUFHLE1BQU0sQ0FBd0IsUUFBUSxDQUFDLENBQUM7UUFDaEQ7O1dBRUc7UUFDSCxhQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCOztXQUVHO1FBQ0gsZ0JBQVcsR0FBNEIsVUFBVSxDQUFDO0tBNkJyRDtJQXpCRzs7T0FFRztJQUNILE9BQU8sQ0FBQyxLQUE2QjtRQUNqQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ2xCLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDM0UsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBRUQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWMsQ0FBQyxXQUFvQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUUvQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ3RELENBQUM7OEdBNUNRLHlCQUF5QjtrR0FBekIseUJBQXlCLDhkQWR2QjtZQUNQO2dCQUNJLE9BQU8sRUFBRSxxQkFBcUI7Z0JBQzlCLFdBQVcsRUFBRSx5QkFBeUI7Z0JBQ3RDLEtBQUssRUFBRSxJQUFJO2FBQ2Q7U0FDSix3RUFZZ0Qsd0JBQXdCOzsyRkFKaEUseUJBQXlCO2tCQWxCckMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFdBQVcsMkJBQTJCOzRCQUN0QyxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0YsbUJBQW1CLEVBQUUsU0FBUzt3QkFDOUIsc0JBQXNCLEVBQUUsNkJBQTZCO3dCQUNyRCx5QkFBeUIsRUFBRSxhQUFhO3FCQUMzQztvQkFDRCxjQUFjLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ2pDOzhCQW1CWSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtBY2NvcmRpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYWNjb3JkaW9uJztcbmltcG9ydCB7IGNvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBpbmplY3QsIEluamVjdGlvblRva2VuLCBJbnB1dCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR4QWNjb3JkaW9uQ29udGVudFRva2VuIH0gZnJvbSAnLi9hY2NvcmRpb24tY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4QWNjb3JkaW9uT3JpZW50YXRpb24gfSBmcm9tICcuL2FjY29yZGlvbi1yb290LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCB0eXBlIFJkeEFjY29yZGlvbkl0ZW1TdGF0ZSA9ICdvcGVuJyB8ICdjbG9zZWQnO1xuXG5leHBvcnQgY29uc3QgUmR4QWNjb3JkaW9uSXRlbVRva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeEFjY29yZGlvbkl0ZW1EaXJlY3RpdmU+KCdSZHhBY2NvcmRpb25JdGVtVG9rZW4nKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEFjY29yZGlvbkl0ZW0oKTogUmR4QWNjb3JkaW9uSXRlbURpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIGluamVjdChSZHhBY2NvcmRpb25JdGVtRGlyZWN0aXZlKTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4QWNjb3JkaW9uSXRlbV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgZXhwb3J0QXM6ICdyZHhBY2NvcmRpb25JdGVtJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogUmR4QWNjb3JkaW9uSXRlbVRva2VuLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IFJkeEFjY29yZGlvbkl0ZW1EaXJlY3RpdmUsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdzdGF0ZSgpJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkKCkgPyBcIlwiIDogdW5kZWZpbmVkJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtb3JpZW50YXRpb25dJzogJ29yaWVudGF0aW9uJ1xuICAgIH0sXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtDZGtBY2NvcmRpb25dXG59KVxuZXhwb3J0IGNsYXNzIFJkeEFjY29yZGlvbkl0ZW1EaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBwcml2YXRlIGFjY29yZGlvbkNvbnRlbnQgPSBjb250ZW50Q2hpbGQucmVxdWlyZWQoUmR4QWNjb3JkaW9uQ29udGVudFRva2VuKTtcbiAgICAvKipcbiAgICAgKiBDdXJyZW50IGl0ZW0gc3RhdGVcbiAgICAgKi9cbiAgICBzdGF0ZSA9IHNpZ25hbDxSZHhBY2NvcmRpb25JdGVtU3RhdGU+KCdjbG9zZWQnKTtcbiAgICAvKipcbiAgICAgKiBXaGVuIHRydWUsIHByZXZlbnRzIHRoZSB1c2VyIGZyb20gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgaXRlbS5cbiAgICAgKi9cbiAgICBkaXNhYmxlZCA9IGlucHV0KGZhbHNlKTtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgb3JpZW50YXRpb246IFJkeEFjY29yZGlvbk9yaWVudGF0aW9uID0gJ3ZlcnRpY2FsJztcblxuICAgIEBJbnB1dCgpIHZhbHVlPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlcyBjdXJyZW50IGl0ZW0gc3RhdGVcbiAgICAgKi9cbiAgICBzZXRPcGVuKHN0YXRlPzogUmR4QWNjb3JkaW9uSXRlbVN0YXRlKSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzdGF0ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnN0YXRlLnVwZGF0ZSgoKSA9PiAodGhpcy5zdGF0ZSgpID09PSAnb3BlbicgPyAnY2xvc2VkJyA6ICdvcGVuJykpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZS51cGRhdGUoKCkgPT4gc3RhdGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY2NvcmRpb25Db250ZW50KCkuc2V0T3Blbih0aGlzLnN0YXRlKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBzZXRPcmllbnRhdGlvbihvcmllbnRhdGlvbjogUmR4QWNjb3JkaW9uT3JpZW50YXRpb24pIHtcbiAgICAgICAgdGhpcy5vcmllbnRhdGlvbiA9IG9yaWVudGF0aW9uO1xuXG4gICAgICAgIHRoaXMuYWNjb3JkaW9uQ29udGVudCgpLm9yaWVudGF0aW9uID0gb3JpZW50YXRpb247XG4gICAgfVxufVxuIl19
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9hY2NvcmRpb24vc3JjL2FjY29yZGlvbi1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRSxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RSxPQUFPLEVBQTJCLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBSTdFLElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQztBQWNmLE1BQU0sT0FBTyx5QkFBeUI7SUFTbEMsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUM3QyxDQUFDO0lBUUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztJQUN0QyxDQUFDO0lBRUQsNkNBQTZDO0lBQzdDLElBQ0ksUUFBUSxDQUFDLFFBQWlCO1FBQzFCLHVFQUF1RTtRQUN2RSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7WUFDMUIsSUFBSSxDQUFDLGNBQWMs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QUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBWW5CLE1BQU07c0JBQXhCLE1BQU07Z0JBRVksTUFBTTtzQkFBeEIsTUFBTTtnQkFVWSxjQUFjO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNhYmxlT3B0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgVW5pcXVlU2VsZWN0aW9uRGlzcGF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XG5pbXBvcnQge1xuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29udGVudENoaWxkLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmR4QWNjb3JkaW9uQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4vYWNjb3JkaW9uLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeEFjY29yZGlvbk9yaWVudGF0aW9uLCBSZHhBY2NvcmRpb25Sb290VG9rZW4gfSBmcm9tICcuL2FjY29yZGlvbi1yb290LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZHhBY2NvcmRpb25UcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9hY2NvcmRpb24tdHJpZ2dlci5kaXJlY3RpdmUnO1xuXG5leHBvcnQgdHlwZSBSZHhBY2NvcmRpb25JdGVtU3RhdGUgPSAnb3BlbicgfCAnY2xvc2VkJztcblxubGV0IG5leHRJZCA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeEFjY29yZGlvbkl0ZW1dJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGV4cG9ydEFzOiAncmR4QWNjb3JkaW9uSXRlbScsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnZGF0YVN0YXRlJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtb3JpZW50YXRpb25dJzogJ29yaWVudGF0aW9uJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogUmR4QWNjb3JkaW9uUm9vdFRva2VuLCB1c2VWYWx1ZTogdW5kZWZpbmVkIH1dXG59KVxuZXhwb3J0IGNsYXNzIFJkeEFjY29yZGlvbkl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBGb2N1c2FibGVPcHRpb24sIE9uRGVzdHJveSB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjY29yZGlvbiA9IGluamVjdChSZHhBY2NvcmRpb25Sb290VG9rZW4sIHsgc2tpcFNlbGY6IHRydWUgfSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXhwYW5zaW9uRGlzcGF0Y2hlciA9IGluamVjdChVbmlxdWVTZWxlY3Rpb25EaXNwYXRjaGVyKTtcblxuICAgIEBDb250ZW50Q2hpbGQoUmR4QWNjb3JkaW9uVHJpZ2dlckRpcmVjdGl2ZSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSB0cmlnZ2VyOiBSZHhBY2NvcmRpb25UcmlnZ2VyRGlyZWN0aXZlO1xuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBSZHhBY2NvcmRpb25Db250ZW50RGlyZWN0aXZlKSwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIGNvbnRlbnQ6IFJkeEFjY29yZGlvbkNvbnRlbnREaXJlY3RpdmU7XG5cbiAgICBnZXQgZGF0YVN0YXRlKCk6IFJkeEFjY29yZGlvbkl0ZW1TdGF0ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLmV4cGFuZGVkID8gJ29wZW4nIDogJ2Nsb3NlZCc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhlIHVuaXF1ZSBBY2NvcmRpb25JdGVtIGlkLlxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICByZWFkb25seSBpZDogc3RyaW5nID0gYHJkeC1hY2NvcmRpb24taXRlbS0ke25leHRJZCsrfWA7XG5cbiAgICBnZXQgb3JpZW50YXRpb24oKTogUmR4QWNjb3JkaW9uT3JpZW50YXRpb24ge1xuICAgICAgICByZXR1cm4gdGhpcy5hY2NvcmRpb24ub3JpZW50YXRpb247XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgdGhlIEFjY29yZGlvbkl0ZW0gaXMgZXhwYW5kZWQuICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gICAgc2V0IGV4cGFuZGVkKGV4cGFuZGVkOiBib29sZWFuKSB7XG4gICAgICAgIC8vIE9ubHkgZW1pdCBldmVudHMgYW5kIHVwZGF0ZSB0aGUgaW50ZXJuYWwgdmFsdWUgaWYgdGhlIHZhbHVlIGNoYW5nZXMuXG4gICAgICAgIGlmICh0aGlzLl9leHBhbmRlZCAhPT0gZXhwYW5kZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2V4cGFuZGVkID0gZXhwYW5kZWQ7XG4gICAgICAgICAgICB0aGlzLmV4cGFuZGVkQ2hhbmdlLmVtaXQoZXhwYW5kZWQpO1xuXG4gICAgICAgICAgICBpZiAoZXhwYW5kZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5lZC5lbWl0KCk7XG4gICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICogSW4gdGhlIHVuaXF1ZSBzZWxlY3Rpb24gZGlzcGF0Y2hlciwgdGhlIGlkIHBhcmFtZXRlciBpcyB0aGUgaWQgb2YgdGhlIENka0FjY29yZGlvbkl0ZW0sXG4gICAgICAgICAgICAgICAgICogdGhlIG5hbWUgdmFsdWUgaXMgdGhlIGlkIG9mIHRoZSBhY2NvcmRpb24uXG4gICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgY29uc3QgYWNjb3JkaW9uSWQgPSB0aGlzLmFjY29yZGlvbiA/IHRoaXMuYWNjb3JkaW9uLmlkIDogdGhpcy52YWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmV4cGFuc2lvbkRpc3BhdGNoZXIubm90aWZ5KHRoaXMudmFsdWUsIGFjY29yZGlvbklkKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZWQuZW1pdCgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBFbnN1cmVzIHRoYXQgdGhlIGFuaW1hdGlvbiB3aWxsIHJ1biB3aGVuIHRoZSB2YWx1ZSBpcyBzZXQgb3V0c2lkZSBvZiBhbiBgQElucHV0YC5cbiAgICAgICAgICAgIC8vIFRoaXMgaW5jbHVkZXMgY2FzZXMgbGlrZSB0aGUgb3BlbiwgY2xvc2UgYW5kIHRvZ2dsZSBtZXRob2RzLlxuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2V4cGFuZGVkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2V4cGFuZGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZSB8fCB0aGlzLmlkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3ZhbHVlPzogc3RyaW5nO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIEFjY29yZGlvbkl0ZW0gaXMgZGlzYWJsZWQuICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hY2NvcmRpb24uZGlzYWJsZWQgPz8gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIGV2ZXJ5IHRpbWUgdGhlIEFjY29yZGlvbkl0ZW0gaXMgY2xvc2VkLiAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBjbG9zZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICAvKiogRXZlbnQgZW1pdHRlZCBldmVyeSB0aW1lIHRoZSBBY2NvcmRpb25JdGVtIGlzIG9wZW5lZC4gKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgb3BlbmVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBBY2NvcmRpb25JdGVtIGlzIGRlc3Ryb3llZC4gKi9cbiAgICByZWFkb25seSBkZXN0cm95ZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKlxuICAgICAqIEVtaXRzIHdoZW5ldmVyIHRoZSBleHBhbmRlZCBzdGF0ZSBvZiB0aGUgYWNjb3JkaW9uIGNoYW5nZXMuXG4gICAgICogUHJpbWFyaWx5IHVzZWQgdG8gZmFjaWxpdGF0ZSB0d28td2F5IGJpbmRpbmcuXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBleHBhbmRlZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgLyoqIFVucmVnaXN0ZXIgZnVuY3Rpb24gZm9yIGV4cGFuc2lvbkRpc3BhdGNoZXIuICovXG4gICAgcHJpdmF0ZSByZW1vdmVVbmlxdWVTZWxlY3Rpb25MaXN0ZW5lcjogKCkgPT4gdm9pZDtcblxuICAgIC8qKiBTdWJzY3JpcHRpb24gdG8gb3BlbkFsbC9jbG9zZUFsbCBldmVudHMuICovXG4gICAgcHJpdmF0ZSBvcGVuQ2xvc2VBbGxTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5yZW1vdmVVbmlxdWVTZWxlY3Rpb25MaXN0ZW5lciA9IHRoaXMuZXhwYW5zaW9uRGlzcGF0Y2hlci5saXN0ZW4oKGlkOiBzdHJpbmcsIGFjY29yZGlvbklkOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmFjY29yZGlvbi5pc011bHRpcGxlKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYWNjb3JkaW9uLmlkID09PSBhY2NvcmRpb25JZCAmJiBpZC5pbmNsdWRlcyh0aGlzLnZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmV4cGFuZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZXhwYW5kZWQgPSB0aGlzLmFjY29yZGlvbi5pZCA9PT0gYWNjb3JkaW9uSWQgJiYgaWQuaW5jbHVkZXModGhpcy52YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIFdoZW4gYW4gYWNjb3JkaW9uIGl0ZW0gaXMgaG9zdGVkIGluIGFuIGFjY29yZGlvbiwgc3Vic2NyaWJlIHRvIG9wZW4vY2xvc2UgZXZlbnRzLlxuICAgICAgICBpZiAodGhpcy5hY2NvcmRpb24pIHtcbiAgICAgICAgICAgIHRoaXMub3BlbkNsb3NlQWxsU3Vic2NyaXB0aW9uID0gdGhpcy5zdWJzY3JpYmVUb09wZW5DbG9zZUFsbEFjdGlvbnMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBFbWl0cyBhbiBldmVudCBmb3IgdGhlIGFjY29yZGlvbiBpdGVtIGJlaW5nIGRlc3Ryb3llZC4gKi9cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5vcGVuZWQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5jbG9zZWQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQuZW1pdCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3llZC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLnJlbW92ZVVuaXF1ZVNlbGVjdGlvbkxpc3RlbmVyKCk7XG4gICAgICAgIHRoaXMub3BlbkNsb3NlQWxsU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudHJpZ2dlci5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKiBUb2dnbGVzIHRoZSBleHBhbmRlZCBzdGF0ZSBvZiB0aGUgYWNjb3JkaW9uIGl0ZW0uICovXG4gICAgdG9nZ2xlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGVudC5vblRvZ2dsZSgpO1xuXG4gICAgICAgICAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogU2V0cyB0aGUgZXhwYW5kZWQgc3RhdGUgb2YgdGhlIGFjY29yZGlvbiBpdGVtIHRvIGZhbHNlLiAqL1xuICAgIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZXhwYW5kZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBTZXRzIHRoZSBleHBhbmRlZCBzdGF0ZSBvZiB0aGUgYWNjb3JkaW9uIGl0ZW0gdG8gdHJ1ZS4gKi9cbiAgICBvcGVuKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdWJzY3JpYmVUb09wZW5DbG9zZUFsbEFjdGlvbnMoKTogU3Vic2NyaXB0aW9uIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3JkaW9uLm9wZW5DbG9zZUFsbEFjdGlvbnMuc3Vic2NyaWJlKChleHBhbmRlZCkgPT4ge1xuICAgICAgICAgICAgLy8gT25seSBjaGFuZ2UgZXhwYW5kZWQgc3RhdGUgaWYgaXRlbSBpcyBlbmFibGVkXG4gICAgICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV4cGFuZGVkID0gZXhwYW5kZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|