@radix-ng/primitives 0.5.0 → 0.7.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/alert-dialog/README.md +1 -0
- package/alert-dialog/index.d.ts +6 -0
- package/alert-dialog/src/alert-dialog-cancel.directive.d.ts +7 -0
- package/alert-dialog/src/alert-dialog-content.directive.d.ts +8 -0
- package/alert-dialog/src/alert-dialog-root.directive.d.ts +9 -0
- package/alert-dialog/src/alert-dialog-title.directive.d.ts +5 -0
- package/alert-dialog/src/alert-dialog-trigger.directive.d.ts +7 -0
- package/alert-dialog/src/alert-dialog.service.d.ts +14 -0
- package/avatar/index.d.ts +3 -1
- package/avatar/src/avatar-fallback.directive.d.ts +10 -17
- package/avatar/src/avatar-image.directive.d.ts +10 -11
- package/avatar/src/avatar-root.directive.d.ts +21 -0
- package/avatar/src/avatar.config.d.ts +3 -2
- package/checkbox/src/checkbox.directive.d.ts +5 -3
- package/collapsible/README.md +1 -0
- package/collapsible/index.d.ts +3 -0
- package/collapsible/src/collapsible-content.directive.d.ts +11 -0
- package/collapsible/src/collapsible-root.directive.d.ts +52 -0
- package/collapsible/src/collapsible-trigger.directive.d.ts +26 -0
- package/esm2022/alert-dialog/index.mjs +7 -0
- package/esm2022/alert-dialog/radix-ng-primitives-alert-dialog.mjs +5 -0
- package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +26 -0
- package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +14 -0
- package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog.service.mjs +45 -0
- package/esm2022/avatar/index.mjs +2 -2
- package/esm2022/avatar/src/avatar-fallback.directive.mjs +23 -30
- package/esm2022/avatar/src/avatar-image.directive.mjs +29 -31
- package/esm2022/avatar/src/avatar-root.directive.mjs +38 -0
- package/esm2022/avatar/src/avatar.config.mjs +2 -2
- package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox.directive.mjs +16 -6
- package/esm2022/collapsible/index.mjs +4 -0
- package/esm2022/collapsible/radix-ng-primitives-collapsible.mjs +5 -0
- package/esm2022/collapsible/src/collapsible-content.directive.mjs +26 -0
- package/esm2022/collapsible/src/collapsible-root.directive.mjs +114 -0
- package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +49 -0
- package/esm2022/label/index.mjs +2 -2
- package/esm2022/label/src/label-root.directive.mjs +48 -0
- package/esm2022/progress/index.mjs +2 -2
- package/esm2022/progress/src/progress-indicator.directive.mjs +11 -10
- package/esm2022/progress/src/progress-root.directive.mjs +71 -0
- package/esm2022/radio/index.mjs +2 -4
- package/esm2022/radio/src/radio-indicator.directive.mjs +8 -13
- package/esm2022/radio/src/radio-item.directive.mjs +27 -42
- package/esm2022/radio/src/radio-root.directive.mjs +104 -0
- package/esm2022/roving-focus/index.mjs +1 -3
- package/esm2022/roving-focus/src/roving-focus-group.directive.mjs +9 -16
- package/esm2022/roving-focus/src/roving-focus-item.directive.mjs +21 -26
- package/esm2022/separator/src/separator.directive.mjs +12 -17
- package/esm2022/switch/index.mjs +3 -3
- package/esm2022/switch/src/switch-input.directive.mjs +30 -0
- package/esm2022/switch/src/switch-root.directive.mjs +71 -0
- package/esm2022/switch/src/switch-thumb.directive.mjs +10 -12
- package/esm2022/toggle/index.mjs +2 -2
- package/esm2022/toggle/src/toggle-root.directive.mjs +49 -0
- package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +9 -14
- package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +4 -4
- package/esm2022/toggle-group/src/toggle-group.directive.mjs +9 -12
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +150 -0
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-avatar.mjs +79 -90
- package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +18 -8
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +190 -0
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-label.mjs +20 -32
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs +55 -49
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-radio.mjs +69 -101
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +19 -42
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-separator.mjs +12 -17
- package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +77 -110
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +19 -27
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle.mjs +16 -32
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
- package/label/index.d.ts +1 -1
- package/label/src/label-root.directive.d.ts +13 -0
- package/package.json +14 -21
- package/progress/index.d.ts +2 -1
- package/progress/src/progress-indicator.directive.d.ts +2 -2
- package/progress/src/progress-root.directive.d.ts +29 -0
- package/radio/index.d.ts +1 -3
- package/radio/src/radio-indicator.directive.d.ts +3 -9
- package/radio/src/radio-item.directive.d.ts +9 -28
- package/radio/src/{radio-group.directive.d.ts → radio-root.directive.d.ts} +24 -17
- package/roving-focus/index.d.ts +0 -2
- package/roving-focus/src/roving-focus-group.directive.d.ts +4 -6
- package/roving-focus/src/roving-focus-item.directive.d.ts +6 -8
- package/separator/src/separator.directive.d.ts +14 -8
- package/switch/index.d.ts +3 -2
- package/switch/src/switch-input.directive.d.ts +6 -0
- package/switch/src/switch-root.directive.d.ts +34 -0
- package/switch/src/switch-thumb.directive.d.ts +2 -5
- package/toggle/index.d.ts +2 -1
- package/toggle/src/toggle-root.directive.d.ts +32 -0
- package/toggle-group/src/toggle-group-button.directive.d.ts +1 -4
- package/toggle-group/src/toggle-group-multi.directive.d.ts +1 -1
- package/toggle-group/src/toggle-group.directive.d.ts +2 -2
- package/accordion/README.md +0 -3
- package/accordion/index.d.ts +0 -7
- package/accordion/src/accordion/accordion.directive.d.ts +0 -64
- package/accordion/src/accordion/accordion.token.d.ts +0 -4
- package/accordion/src/accordion-content/accordion-content.directive.d.ts +0 -44
- package/accordion/src/accordion-header/accordion-header.directive.d.ts +0 -6
- package/accordion/src/accordion-item/accordion-item.directive.d.ts +0 -42
- package/accordion/src/accordion-item/accordion-item.token.d.ts +0 -4
- package/accordion/src/accordion-state.directive.d.ts +0 -28
- package/accordion/src/accordion-trigger/accordion-trigger.directive.d.ts +0 -23
- package/accordion/src/accordion.config.d.ts +0 -25
- package/avatar/src/avatar.directive.d.ts +0 -22
- package/avatar/src/avatar.token.d.ts +0 -4
- package/esm2022/accordion/index.mjs +0 -8
- package/esm2022/accordion/radix-ng-primitives-accordion.mjs +0 -5
- package/esm2022/accordion/src/accordion/accordion.directive.mjs +0 -108
- package/esm2022/accordion/src/accordion/accordion.token.mjs +0 -6
- package/esm2022/accordion/src/accordion-content/accordion-content.directive.mjs +0 -75
- package/esm2022/accordion/src/accordion-header/accordion-header.directive.mjs +0 -17
- package/esm2022/accordion/src/accordion-item/accordion-item.directive.mjs +0 -81
- package/esm2022/accordion/src/accordion-item/accordion-item.token.mjs +0 -6
- package/esm2022/accordion/src/accordion-state.directive.mjs +0 -49
- package/esm2022/accordion/src/accordion-trigger/accordion-trigger.directive.mjs +0 -49
- package/esm2022/accordion/src/accordion.config.mjs +0 -27
- package/esm2022/avatar/src/avatar.directive.mjs +0 -38
- package/esm2022/avatar/src/avatar.token.mjs +0 -6
- package/esm2022/label/src/label.directive.mjs +0 -60
- package/esm2022/overlay/index.mjs +0 -5
- package/esm2022/overlay/radix-ng-primitives-overlay.mjs +0 -5
- package/esm2022/overlay/src/overlay-arrow.directive.mjs +0 -59
- package/esm2022/overlay/src/overlay-arrow.token.mjs +0 -3
- package/esm2022/overlay/src/overlay-trigger.directive.mjs +0 -279
- package/esm2022/overlay/src/overlay-trigger.token.mjs +0 -9
- package/esm2022/overlay/src/overlay.directive.mjs +0 -51
- package/esm2022/overlay/src/overlay.token.mjs +0 -3
- package/esm2022/progress/src/progress.directive.mjs +0 -62
- package/esm2022/progress/src/progress.token.mjs +0 -6
- package/esm2022/radio/src/radio-group.directive.mjs +0 -108
- package/esm2022/radio/src/radio-group.token.mjs +0 -6
- package/esm2022/radio/src/radio-item.token.mjs +0 -6
- package/esm2022/roving-focus/src/roving-focus-group.token.mjs +0 -9
- package/esm2022/roving-focus/src/roving-focus-item.token.mjs +0 -6
- package/esm2022/switch/src/switch.directive.mjs +0 -125
- package/esm2022/switch/src/switch.token.mjs +0 -6
- package/esm2022/toggle/src/toggle.directive.mjs +0 -65
- package/esm2022/visually-hidden/index.mjs +0 -2
- package/esm2022/visually-hidden/radix-ng-primitives-visually-hidden.mjs +0 -5
- package/esm2022/visually-hidden/src/visually-hidden.directive.mjs +0 -42
- package/fesm2022/radix-ng-primitives-accordion.mjs +0 -394
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-overlay.mjs +0 -399
- package/fesm2022/radix-ng-primitives-overlay.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs +0 -49
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +0 -1
- package/label/src/label.directive.d.ts +0 -19
- package/overlay/README.md +0 -1
- package/overlay/index.d.ts +0 -4
- package/overlay/src/overlay-arrow.directive.d.ts +0 -29
- package/overlay/src/overlay-arrow.token.d.ts +0 -3
- package/overlay/src/overlay-trigger.directive.d.ts +0 -163
- package/overlay/src/overlay-trigger.token.d.ts +0 -7
- package/overlay/src/overlay.directive.d.ts +0 -29
- package/overlay/src/overlay.token.d.ts +0 -3
- package/progress/src/progress.directive.d.ts +0 -26
- package/progress/src/progress.token.d.ts +0 -4
- package/radio/src/radio-group.token.d.ts +0 -4
- package/radio/src/radio-item.token.d.ts +0 -4
- package/roving-focus/src/roving-focus-group.token.d.ts +0 -7
- package/roving-focus/src/roving-focus-item.token.d.ts +0 -4
- package/switch/src/switch.directive.d.ts +0 -73
- package/switch/src/switch.token.d.ts +0 -4
- package/toggle/src/toggle.directive.d.ts +0 -30
- package/visually-hidden/README.md +0 -3
- package/visually-hidden/index.d.ts +0 -1
- package/visually-hidden/src/visually-hidden.directive.d.ts +0 -11
@@ -1,61 +1,54 @@
|
|
1
|
-
import { Directive, Input, numberAttribute } from '@angular/core';
|
1
|
+
import { Directive, inject, Input, NgZone, numberAttribute } from '@angular/core';
|
2
|
+
import { injectAvatar } from './avatar-root.directive';
|
2
3
|
import { injectAvatarConfig } from './avatar.config';
|
3
|
-
import { RdxAvatarState } from './avatar.directive';
|
4
|
-
import { injectAvatar } from './avatar.token';
|
5
4
|
import * as i0 from "@angular/core";
|
6
5
|
export class RdxAvatarFallbackDirective {
|
7
6
|
constructor() {
|
8
|
-
/**
|
9
|
-
* Access the avatar
|
10
|
-
*/
|
11
7
|
this.avatar = injectAvatar();
|
12
|
-
/**
|
13
|
-
* Access the global configuration.
|
14
|
-
*/
|
15
8
|
this.config = injectAvatarConfig();
|
9
|
+
this.ngZone = inject(NgZone);
|
16
10
|
/**
|
17
|
-
* Define a delay before the fallback is shown.
|
11
|
+
* Define a delay before the fallback is shown.
|
12
|
+
* This is useful to only show the fallback for those with slower connections.
|
18
13
|
* @default 0
|
19
14
|
*/
|
20
|
-
this.
|
15
|
+
this.delayMs = this.config.delayMs;
|
21
16
|
/**
|
22
17
|
* Determine the delay has elapsed, and we can show the fallback.
|
23
18
|
*/
|
24
19
|
this.delayElapsed = false;
|
25
|
-
/**
|
26
|
-
* Store the timeout id.
|
27
|
-
*/
|
28
20
|
this.timeoutId = null;
|
29
21
|
}
|
30
|
-
/**
|
31
|
-
* Determine if this element should be hidden.
|
32
|
-
*/
|
33
22
|
get visible() {
|
34
|
-
|
35
|
-
return this.delayElapsed && this.avatar.state !== RdxAvatarState.Loaded;
|
23
|
+
return this.delayElapsed && this.avatar._state() !== 'loaded';
|
36
24
|
}
|
37
25
|
ngOnInit() {
|
38
|
-
this.
|
26
|
+
this.ngZone.runOutsideAngular(() => {
|
27
|
+
this.timeoutId = window.setTimeout(() => (this.delayElapsed = true), this.delayMs);
|
28
|
+
});
|
39
29
|
}
|
40
30
|
ngOnDestroy() {
|
41
|
-
|
42
|
-
|
43
|
-
|
31
|
+
this.ngZone.run(() => {
|
32
|
+
if (this.timeoutId) {
|
33
|
+
window.clearTimeout(this.timeoutId);
|
34
|
+
}
|
35
|
+
});
|
44
36
|
}
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
46
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxAvatarFallbackDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
38
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxAvatarFallbackDirective, isStandalone: true, selector: "span[AvatarFallback]", inputs: { delayMs: ["rdxDelayMs", "delayMs", numberAttribute] }, host: { properties: { "style.display": "visible ? null : \"none\"" } }, exportAs: ["AvatarFallback"], ngImport: i0 }); }
|
47
39
|
}
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxAvatarFallbackDirective, decorators: [{
|
49
41
|
type: Directive,
|
50
42
|
args: [{
|
51
|
-
selector: '[
|
43
|
+
selector: 'span[AvatarFallback]',
|
44
|
+
exportAs: 'AvatarFallback',
|
52
45
|
standalone: true,
|
53
46
|
host: {
|
54
47
|
'[style.display]': 'visible ? null : "none"'
|
55
48
|
}
|
56
49
|
}]
|
57
|
-
}], propDecorators: {
|
50
|
+
}], propDecorators: { delayMs: [{
|
58
51
|
type: Input,
|
59
|
-
args: [{ alias: '
|
52
|
+
args: [{ alias: 'rdxDelayMs', transform: numberAttribute }]
|
60
53
|
}] } });
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWZhbGxiYWNrLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvYXZhdGFyL3NyYy9hdmF0YXItZmFsbGJhY2suZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04sZUFBZSxFQUdsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBY3JELE1BQU0sT0FBTywwQkFBMEI7SUFSdkM7UUFTcUIsV0FBTSxHQUFHLFlBQVksRUFBRSxDQUFDO1FBRXhCLFdBQU0sR0FBRyxrQkFBa0IsRUFBRSxDQUFDO1FBRTlCLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekM7Ozs7V0FJRztRQUN5RCxZQUFPLEdBQy9ELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBTXhCOztXQUVHO1FBQ0ssaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFckIsY0FBUyxHQUFrQixJQUFJLENBQUM7S0FlM0M7SUF4QkcsSUFBYyxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLFFBQVEsQ0FBQztJQUNsRSxDQUFDO0lBU0QsUUFBUTtRQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZGLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ2pCLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBdENRLDBCQUEwQjtrR0FBMUIsMEJBQTBCLHFHQVlNLGVBQWU7OzJGQVovQywwQkFBMEI7a0JBUnRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixpQkFBaUIsRUFBRSx5QkFBeUI7cUJBQy9DO2lCQUNKOzhCQWErRCxPQUFPO3NCQUFsRSxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBEaXJlY3RpdmUsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBudW1iZXJBdHRyaWJ1dGUsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgaW5qZWN0QXZhdGFyIH0gZnJvbSAnLi9hdmF0YXItcm9vdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgaW5qZWN0QXZhdGFyQ29uZmlnIH0gZnJvbSAnLi9hdmF0YXIuY29uZmlnJztcblxuZXhwb3J0IGludGVyZmFjZSBBdmF0YXJGYWxsYmFja1Byb3BzIHtcbiAgICBkZWxheU1zPzogbnVtYmVyO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3NwYW5bQXZhdGFyRmFsbGJhY2tdJyxcbiAgICBleHBvcnRBczogJ0F2YXRhckZhbGxiYWNrJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS5kaXNwbGF5XSc6ICd2aXNpYmxlID8gbnVsbCA6IFwibm9uZVwiJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4QXZhdGFyRmFsbGJhY2tEaXJlY3RpdmUgaW1wbGVtZW50cyBBdmF0YXJGYWxsYmFja1Byb3BzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhdmF0YXIgPSBpbmplY3RBdmF0YXIoKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0QXZhdGFyQ29uZmlnKCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lIGEgZGVsYXkgYmVmb3JlIHRoZSBmYWxsYmFjayBpcyBzaG93bi5cbiAgICAgKiBUaGlzIGlzIHVzZWZ1bCB0byBvbmx5IHNob3cgdGhlIGZhbGxiYWNrIGZvciB0aG9zZSB3aXRoIHNsb3dlciBjb25uZWN0aW9ucy5cbiAgICAgKiBAZGVmYXVsdCAwXG4gICAgICovXG4gICAgQElucHV0KHsgYWxpYXM6ICdyZHhEZWxheU1zJywgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgZGVsYXlNczogbnVtYmVyID1cbiAgICAgICAgdGhpcy5jb25maWcuZGVsYXlNcztcblxuICAgIHByb3RlY3RlZCBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGVsYXlFbGFwc2VkICYmIHRoaXMuYXZhdGFyLl9zdGF0ZSgpICE9PSAnbG9hZGVkJztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmUgdGhlIGRlbGF5IGhhcyBlbGFwc2VkLCBhbmQgd2UgY2FuIHNob3cgdGhlIGZhbGxiYWNrLlxuICAgICAqL1xuICAgIHByaXZhdGUgZGVsYXlFbGFwc2VkID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHRpbWVvdXRJZDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy50aW1lb3V0SWQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiAodGhpcy5kZWxheUVsYXBzZWQgPSB0cnVlKSwgdGhpcy5kZWxheU1zKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy50aW1lb3V0SWQpIHtcbiAgICAgICAgICAgICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dElkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
@@ -1,50 +1,48 @@
|
|
1
|
-
import { Directive, ElementRef,
|
2
|
-
import {
|
3
|
-
import { injectAvatar } from './avatar.token';
|
1
|
+
import { Directive, ElementRef, EventEmitter, inject, Output } from '@angular/core';
|
2
|
+
import { injectAvatar } from './avatar-root.directive';
|
4
3
|
import * as i0 from "@angular/core";
|
5
4
|
export class RdxAvatarImageDirective {
|
6
5
|
constructor() {
|
7
|
-
/**
|
8
|
-
* Access the avatar
|
9
|
-
*/
|
10
6
|
this.avatar = injectAvatar();
|
11
|
-
/**
|
12
|
-
* Access the image element ref.
|
13
|
-
*/
|
14
7
|
this.elementRef = inject(ElementRef);
|
8
|
+
/* By default, it will only render when it has loaded.
|
9
|
+
* You can use the `onLoadingStatusChange` handler if you need more control.
|
10
|
+
*/
|
11
|
+
this.onLoadingStatusChange = new EventEmitter();
|
15
12
|
}
|
16
13
|
ngOnInit() {
|
17
|
-
|
18
|
-
this.avatar.setState(RdxAvatarState.Loading);
|
19
|
-
// if there is no src, we can report this as an error
|
14
|
+
this.avatar._setState('loading');
|
20
15
|
if (!this.elementRef.nativeElement.src) {
|
21
|
-
this.avatar.
|
16
|
+
this.avatar._setState('error');
|
22
17
|
}
|
23
|
-
// if the image has already loaded, we can report this to the avatar
|
24
18
|
if (this.elementRef.nativeElement.complete) {
|
25
|
-
this.avatar.
|
19
|
+
this.avatar._setState('loaded');
|
26
20
|
}
|
21
|
+
this.onLoadingStatusChange.emit(this.avatar._state());
|
27
22
|
}
|
28
|
-
|
29
|
-
this.avatar.
|
23
|
+
_onLoad() {
|
24
|
+
this.avatar._setState('loaded');
|
25
|
+
this.onLoadingStatusChange.emit('loaded');
|
30
26
|
}
|
31
|
-
|
32
|
-
this.avatar.
|
27
|
+
_onError() {
|
28
|
+
this.avatar._setState('error');
|
29
|
+
this.onLoadingStatusChange.emit('error');
|
33
30
|
}
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
35
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxAvatarImageDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
32
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxAvatarImageDirective, isStandalone: true, selector: "img[AvatarImage]", outputs: { onLoadingStatusChange: "onLoadingStatusChange" }, host: { listeners: { "load": "_onLoad()", "error": "_onError()" } }, exportAs: ["AvatarImage"], ngImport: i0 }); }
|
36
33
|
}
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxAvatarImageDirective, decorators: [{
|
38
35
|
type: Directive,
|
39
36
|
args: [{
|
40
|
-
selector: 'img[
|
41
|
-
|
37
|
+
selector: 'img[AvatarImage]',
|
38
|
+
exportAs: 'AvatarImage',
|
39
|
+
standalone: true,
|
40
|
+
host: {
|
41
|
+
'(load)': '_onLoad()',
|
42
|
+
'(error)': '_onError()'
|
43
|
+
}
|
42
44
|
}]
|
43
|
-
}], propDecorators: {
|
44
|
-
type:
|
45
|
-
args: ['load']
|
46
|
-
}], onError: [{
|
47
|
-
type: HostListener,
|
48
|
-
args: ['error']
|
45
|
+
}], propDecorators: { onLoadingStatusChange: [{
|
46
|
+
type: Output
|
49
47
|
}] } });
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLWltYWdlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvYXZhdGFyL3NyYy9hdmF0YXItaW1hZ2UuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBc0IsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBZTNFLE1BQU0sT0FBTyx1QkFBdUI7SUFUcEM7UUFVcUIsV0FBTSxHQUFHLFlBQVksRUFBRSxDQUFDO1FBRXhCLGVBQVUsR0FBRyxNQUFNLENBQStCLFVBQVUsQ0FBQyxDQUFDO1FBRS9FOztXQUVHO1FBQ08sMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQXNCLENBQUM7S0F5QjVFO0lBdkJHLFFBQVE7UUFDSixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVqQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUVELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQzs4R0FoQ1EsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBVG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsUUFBUSxFQUFFLFdBQVc7d0JBQ3JCLFNBQVMsRUFBRSxZQUFZO3FCQUMxQjtpQkFDSjs4QkFTYSxxQkFBcUI7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBJbWFnZUxvYWRpbmdTdGF0dXMsIGluamVjdEF2YXRhciB9IGZyb20gJy4vYXZhdGFyLXJvb3QuZGlyZWN0aXZlJztcblxuZXhwb3J0IGludGVyZmFjZSBBdmF0YXJJbWFnZVByb3BzIHtcbiAgICBvbkxvYWRpbmdTdGF0dXNDaGFuZ2U/OiBFdmVudEVtaXR0ZXI8SW1hZ2VMb2FkaW5nU3RhdHVzPjtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdpbWdbQXZhdGFySW1hZ2VdJyxcbiAgICBleHBvcnRBczogJ0F2YXRhckltYWdlJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhsb2FkKSc6ICdfb25Mb2FkKCknLFxuICAgICAgICAnKGVycm9yKSc6ICdfb25FcnJvcigpJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4QXZhdGFySW1hZ2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBdmF0YXJJbWFnZVByb3BzLCBPbkluaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYXZhdGFyID0gaW5qZWN0QXZhdGFyKCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MSW1hZ2VFbGVtZW50Pj4oRWxlbWVudFJlZik7XG5cbiAgICAvKiBCeSBkZWZhdWx0LCBpdCB3aWxsIG9ubHkgcmVuZGVyIHdoZW4gaXQgaGFzIGxvYWRlZC5cbiAgICAgKiBZb3UgY2FuIHVzZSB0aGUgYG9uTG9hZGluZ1N0YXR1c0NoYW5nZWAgaGFuZGxlciBpZiB5b3UgbmVlZCBtb3JlIGNvbnRyb2wuXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9uTG9hZGluZ1N0YXR1c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SW1hZ2VMb2FkaW5nU3RhdHVzPigpO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYXZhdGFyLl9zZXRTdGF0ZSgnbG9hZGluZycpO1xuXG4gICAgICAgIGlmICghdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc3JjKSB7XG4gICAgICAgICAgICB0aGlzLmF2YXRhci5fc2V0U3RhdGUoJ2Vycm9yJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29tcGxldGUpIHtcbiAgICAgICAgICAgIHRoaXMuYXZhdGFyLl9zZXRTdGF0ZSgnbG9hZGVkJyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9uTG9hZGluZ1N0YXR1c0NoYW5nZS5lbWl0KHRoaXMuYXZhdGFyLl9zdGF0ZSgpKTtcbiAgICB9XG5cbiAgICBfb25Mb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmF2YXRhci5fc2V0U3RhdGUoJ2xvYWRlZCcpO1xuICAgICAgICB0aGlzLm9uTG9hZGluZ1N0YXR1c0NoYW5nZS5lbWl0KCdsb2FkZWQnKTtcbiAgICB9XG5cbiAgICBfb25FcnJvcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hdmF0YXIuX3NldFN0YXRlKCdlcnJvcicpO1xuICAgICAgICB0aGlzLm9uTG9hZGluZ1N0YXR1c0NoYW5nZS5lbWl0KCdlcnJvcicpO1xuICAgIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import { Directive, inject, InjectionToken, signal } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
const RdxAvatarToken = new InjectionToken('RdxAvatarToken');
|
4
|
+
export function injectAvatar() {
|
5
|
+
return inject(RdxAvatarToken);
|
6
|
+
}
|
7
|
+
export class RdxAvatarRootDirective {
|
8
|
+
constructor() {
|
9
|
+
/**
|
10
|
+
* A readonly signal property that holds the current state of image loading.
|
11
|
+
* To set a new status, use the `setState` method of the component.
|
12
|
+
* @internal
|
13
|
+
*/
|
14
|
+
this._state = signal('idle');
|
15
|
+
}
|
16
|
+
/**
|
17
|
+
* Set the avatar state.
|
18
|
+
* @param state The new image loading status to set. This value should be one of the predefined states
|
19
|
+
* in the `ImageLoadingStatus`
|
20
|
+
* @returns void This method does not return a value.
|
21
|
+
* @internal
|
22
|
+
*/
|
23
|
+
_setState(state) {
|
24
|
+
this._state.set(state);
|
25
|
+
}
|
26
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxAvatarRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
27
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxAvatarRootDirective, isStandalone: true, selector: "span[AvatarRoot]", providers: [{ provide: RdxAvatarToken, useExisting: RdxAvatarRootDirective }], exportAs: ["AvatarRoot"], ngImport: i0 }); }
|
28
|
+
}
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxAvatarRootDirective, decorators: [{
|
30
|
+
type: Directive,
|
31
|
+
args: [{
|
32
|
+
selector: 'span[AvatarRoot]',
|
33
|
+
exportAs: 'AvatarRoot',
|
34
|
+
standalone: true,
|
35
|
+
providers: [{ provide: RdxAvatarToken, useExisting: RdxAvatarRootDirective }]
|
36
|
+
}]
|
37
|
+
}] });
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLXJvb3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9hdmF0YXIvc3JjL2F2YXRhci1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUxRSxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBeUIsZ0JBQWdCLENBQUMsQ0FBQztBQUVwRixNQUFNLFVBQVUsWUFBWTtJQUN4QixPQUFPLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBVUQsTUFBTSxPQUFPLHNCQUFzQjtJQU5uQztRQU9JOzs7O1dBSUc7UUFDTSxXQUFNLEdBQUcsTUFBTSxDQUFxQixNQUFNLENBQUMsQ0FBQztLQVl4RDtJQVZHOzs7Ozs7T0FNRztJQUNILFNBQVMsQ0FBQyxLQUF5QjtRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDOzhHQWpCUSxzQkFBc0I7a0dBQXRCLHNCQUFzQiwrREFGcEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLENBQUM7OzJGQUVwRSxzQkFBc0I7a0JBTmxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyx3QkFBd0IsRUFBRSxDQUFDO2lCQUNoRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IFJkeEF2YXRhclRva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeEF2YXRhclJvb3REaXJlY3RpdmU+KCdSZHhBdmF0YXJUb2tlbicpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0QXZhdGFyKCk6IFJkeEF2YXRhclJvb3REaXJlY3RpdmUge1xuICAgIHJldHVybiBpbmplY3QoUmR4QXZhdGFyVG9rZW4pO1xufVxuXG5leHBvcnQgdHlwZSBJbWFnZUxvYWRpbmdTdGF0dXMgPSAnaWRsZScgfCAnbG9hZGluZycgfCAnbG9hZGVkJyB8ICdlcnJvcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnc3BhbltBdmF0YXJSb290XScsXG4gICAgZXhwb3J0QXM6ICdBdmF0YXJSb290JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogUmR4QXZhdGFyVG9rZW4sIHVzZUV4aXN0aW5nOiBSZHhBdmF0YXJSb290RGlyZWN0aXZlIH1dXG59KVxuZXhwb3J0IGNsYXNzIFJkeEF2YXRhclJvb3REaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqIEEgcmVhZG9ubHkgc2lnbmFsIHByb3BlcnR5IHRoYXQgaG9sZHMgdGhlIGN1cnJlbnQgc3RhdGUgb2YgaW1hZ2UgbG9hZGluZy5cbiAgICAgKiBUbyBzZXQgYSBuZXcgc3RhdHVzLCB1c2UgdGhlIGBzZXRTdGF0ZWAgbWV0aG9kIG9mIHRoZSBjb21wb25lbnQuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcmVhZG9ubHkgX3N0YXRlID0gc2lnbmFsPEltYWdlTG9hZGluZ1N0YXR1cz4oJ2lkbGUnKTtcblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgYXZhdGFyIHN0YXRlLlxuICAgICAqIEBwYXJhbSBzdGF0ZSBUaGUgbmV3IGltYWdlIGxvYWRpbmcgc3RhdHVzIHRvIHNldC4gVGhpcyB2YWx1ZSBzaG91bGQgYmUgb25lIG9mIHRoZSBwcmVkZWZpbmVkIHN0YXRlc1xuICAgICAqICAgICAgICAgICAgICBpbiB0aGUgYEltYWdlTG9hZGluZ1N0YXR1c2BcbiAgICAgKiBAcmV0dXJucyB2b2lkIFRoaXMgbWV0aG9kIGRvZXMgbm90IHJldHVybiBhIHZhbHVlLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIF9zZXRTdGF0ZShzdGF0ZTogSW1hZ2VMb2FkaW5nU3RhdHVzKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N0YXRlLnNldChzdGF0ZSk7XG4gICAgfVxufVxuIl19
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { inject, InjectionToken } from '@angular/core';
|
2
2
|
export const defaultAvatarConfig = {
|
3
|
-
|
3
|
+
delayMs: 0
|
4
4
|
};
|
5
5
|
export const RdxAvatarConfigToken = new InjectionToken('RdxAvatarConfigToken');
|
6
6
|
export function provideRdxAvatarConfig(config) {
|
@@ -14,4 +14,4 @@ export function provideRdxAvatarConfig(config) {
|
|
14
14
|
export function injectAvatarConfig() {
|
15
15
|
return inject(RdxAvatarConfigToken, { optional: true }) ?? defaultAvatarConfig;
|
16
16
|
}
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvYXZhdGFyL3NyYy9hdmF0YXIuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBV2pFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFvQjtJQUNoRCxPQUFPLEVBQUUsQ0FBQztDQUNiLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLGNBQWMsQ0FBa0Isc0JBQXNCLENBQUMsQ0FBQztBQUVoRyxNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBZ0M7SUFDbkUsT0FBTztRQUNIO1lBQ0ksT0FBTyxFQUFFLG9CQUFvQjtZQUM3QixRQUFRLEVBQUUsRUFBRSxHQUFHLG1CQUFtQixFQUFFLEdBQUcsTUFBTSxFQUFFO1NBQ2xEO0tBQ0osQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCO0lBQzlCLE9BQU8sTUFBTSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksbUJBQW1CLENBQUM7QUFDbkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmR4QXZhdGFyQ29uZmlnIHtcbiAgICAvKipcbiAgICAgKiBEZWZpbmUgYSBkZWxheSBiZWZvcmUgdGhlIGZhbGxiYWNrIGlzIHNob3duLlxuICAgICAqIFRoaXMgaXMgdXNlZnVsIHRvIG9ubHkgc2hvdyB0aGUgZmFsbGJhY2sgZm9yIHRob3NlIHdpdGggc2xvd2VyIGNvbm5lY3Rpb25zLlxuICAgICAqIEBkZWZhdWx0IDBcbiAgICAgKi9cbiAgICBkZWxheU1zOiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0QXZhdGFyQ29uZmlnOiBSZHhBdmF0YXJDb25maWcgPSB7XG4gICAgZGVsYXlNczogMFxufTtcblxuZXhwb3J0IGNvbnN0IFJkeEF2YXRhckNvbmZpZ1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeEF2YXRhckNvbmZpZz4oJ1JkeEF2YXRhckNvbmZpZ1Rva2VuJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlUmR4QXZhdGFyQ29uZmlnKGNvbmZpZzogUGFydGlhbDxSZHhBdmF0YXJDb25maWc+KTogUHJvdmlkZXJbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogUmR4QXZhdGFyQ29uZmlnVG9rZW4sXG4gICAgICAgICAgICB1c2VWYWx1ZTogeyAuLi5kZWZhdWx0QXZhdGFyQ29uZmlnLCAuLi5jb25maWcgfVxuICAgICAgICB9XG4gICAgXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdEF2YXRhckNvbmZpZygpOiBSZHhBdmF0YXJDb25maWcge1xuICAgIHJldHVybiBpbmplY3QoUmR4QXZhdGFyQ29uZmlnVG9rZW4sIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gZGVmYXVsdEF2YXRhckNvbmZpZztcbn1cbiJdfQ==
|
@@ -5,10 +5,10 @@ export class RdxCheckboxIndicatorDirective {
|
|
5
5
|
constructor() {
|
6
6
|
this.checkbox = injectCheckbox();
|
7
7
|
}
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
9
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCheckboxIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxCheckboxIndicatorDirective, isStandalone: true, selector: "[rdxCheckboxIndicator]", host: { properties: { "style.pointer-events": "\"none\"", "attr.data-state": "checkbox.state", "attr.data-disabled": "checkbox.disabled ? \"\" : null" } }, ngImport: i0 }); }
|
10
10
|
}
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCheckboxIndicatorDirective, decorators: [{
|
12
12
|
type: Directive,
|
13
13
|
args: [{
|
14
14
|
selector: '[rdxCheckboxIndicator]',
|
@@ -41,10 +41,12 @@ export class RdxCheckboxDirective {
|
|
41
41
|
}
|
42
42
|
}
|
43
43
|
onClick() {
|
44
|
+
if (this.disabled) {
|
45
|
+
return;
|
46
|
+
}
|
44
47
|
this.checked = this.indeterminate ? true : !this.checked;
|
45
48
|
this.checkedChange.emit(this.checked);
|
46
49
|
this.onChange?.(this.checked);
|
47
|
-
// if the checkbox was indeterminate, it isn't anymore
|
48
50
|
if (this.indeterminate) {
|
49
51
|
this.indeterminate = false;
|
50
52
|
this.indeterminateChange.emit(this.indeterminate);
|
@@ -53,6 +55,14 @@ export class RdxCheckboxDirective {
|
|
53
55
|
onBlur() {
|
54
56
|
this.onTouched?.();
|
55
57
|
}
|
58
|
+
ngOnChanges(changes) {
|
59
|
+
if (changes['checked'] && !changes['checked'].isFirstChange()) {
|
60
|
+
this.checkedChange.emit(this.checked);
|
61
|
+
}
|
62
|
+
if (changes['indeterminate'] && !changes['indeterminate'].isFirstChange()) {
|
63
|
+
this.indeterminateChange.emit(this.indeterminate);
|
64
|
+
}
|
65
|
+
}
|
56
66
|
/**
|
57
67
|
* Sets the checked state of the checkbox.
|
58
68
|
* @param checked The checked state of the checkbox.
|
@@ -85,13 +95,13 @@ export class RdxCheckboxDirective {
|
|
85
95
|
setDisabledState(isDisabled) {
|
86
96
|
this.disabled = isDisabled;
|
87
97
|
}
|
88
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
89
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "
|
98
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCheckboxDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
99
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxCheckboxDirective, isStandalone: true, selector: "button[rdxCheckbox]", inputs: { checked: ["checked", "checked", booleanAttribute], indeterminate: ["indeterminate", "indeterminate", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { checkedChange: "checkedChange", indeterminateChange: "indeterminateChange" }, host: { attributes: { "type": "button", "role": "checkbox" }, listeners: { "keydown": "onKeydown($event)", "click": "onClick()", "blur": "onBlur()" }, properties: { "disabled": "disabled", "attr.aria-checked": "indeterminate ? \"mixed\" : checked", "attr.data-disabled": "disabled ? \"\" : null", "attr.data-state": "state" } }, providers: [
|
90
100
|
{ provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },
|
91
101
|
{ provide: NG_VALUE_ACCESSOR, useExisting: RdxCheckboxDirective, multi: true }
|
92
|
-
], ngImport: i0 }); }
|
102
|
+
], usesOnChanges: true, ngImport: i0 }); }
|
93
103
|
}
|
94
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
104
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCheckboxDirective, decorators: [{
|
95
105
|
type: Directive,
|
96
106
|
args: [{
|
97
107
|
selector: 'button[rdxCheckbox]',
|
@@ -132,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
132
142
|
type: HostListener,
|
133
143
|
args: ['blur']
|
134
144
|
}] } });
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9jaGVja2JveC9zcmMvY2hlY2tib3guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBa0JwRCxNQUFNLE9BQU8sb0JBQW9CO0lBaEJqQztRQWlCSTs7V0FFRztRQUNxQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXhEOztXQUVHO1FBRUgsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFFdEI7O1dBRUc7UUFDcUMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUV6RDs7V0FFRztRQUNnQixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFL0Q7O1dBRUc7UUFDZ0Isd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztLQXFGeEU7SUFuRkc7O09BRUc7SUFDSCxJQUFJLEtBQUs7UUFDTCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixPQUFPLGVBQWUsQ0FBQztRQUMzQixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNsRCxDQUFDO0lBZUQsU0FBUyxDQUFDLEtBQW9CO1FBQzFCLHFFQUFxRTtRQUNyRSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzNCLENBQUM7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ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUmR4Q2hlY2tib3hUb2tlbiB9IGZyb20gJy4vY2hlY2tib3gudG9rZW4nO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2J1dHRvbltyZHhDaGVja2JveF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogUmR4Q2hlY2tib3hUb2tlbiwgdXNlRXhpc3Rpbmc6IFJkeENoZWNrYm94RGlyZWN0aXZlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBSZHhDaGVja2JveERpcmVjdGl2ZSwgbXVsdGk6IHRydWUgfVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICB0eXBlOiAnYnV0dG9uJyxcbiAgICAgICAgcm9sZTogJ2NoZWNrYm94JyxcbiAgICAgICAgJ1tkaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICAgICAnW2F0dHIuYXJpYS1jaGVja2VkXSc6ICdpbmRldGVybWluYXRlID8gXCJtaXhlZFwiIDogY2hlY2tlZCcsXG4gICAgICAgICdbYXR0ci5kYXRhLWRpc2FibGVkXSc6ICdkaXNhYmxlZCA/IFwiXCIgOiBudWxsJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ3N0YXRlJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4Q2hlY2tib3hEaXJlY3RpdmUgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB3aGV0aGVyIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBjaGVja2VkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGluZGV0ZXJtaW5hdGUuXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gICAgaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB3aGV0aGVyIHRoZSBjaGVja2JveCBpcyBkaXNhYmxlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY2hlY2tib3ggY2hlY2tlZCBzdGF0ZSBjaGFuZ2VzLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBjaGVja2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBpbmRldGVybWluYXRlIHN0YXRlIGNoYW5nZXMuXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IGluZGV0ZXJtaW5hdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmUgdGhlIHN0YXRlXG4gICAgICovXG4gICAgZ2V0IHN0YXRlKCk6ICdjaGVja2VkJyB8ICd1bmNoZWNrZWQnIHwgJ2luZGV0ZXJtaW5hdGUnIHtcbiAgICAgICAgaWYgKHRoaXMuaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuICdpbmRldGVybWluYXRlJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5jaGVja2VkID8gJ2NoZWNrZWQnIDogJ3VuY2hlY2tlZCc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RvcmUgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBjaGVja2VkIHN0YXRlIGNoYW5nZXMuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHJpdmF0ZSBvbkNoYW5nZT86IChjaGVja2VkOiBib29sZWFuKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogU3RvcmUgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBibHVycmVkLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHByaXZhdGUgb25Ub3VjaGVkPzogKCkgPT4gdm9pZDtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICAvLyBBY2NvcmRpbmcgdG8gV0FJIEFSSUEsIENoZWNrYm94ZXMgZG9uJ3QgYWN0aXZhdGUgb24gZW50ZXIga2V5cHJlc3NcbiAgICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBvbkNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLmluZGV0ZXJtaW5hdGUgPyB0cnVlIDogIXRoaXMuY2hlY2tlZDtcbiAgICAgICAgdGhpcy5jaGVja2VkQ2hhbmdlLmVtaXQodGhpcy5jaGVja2VkKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZT8uKHRoaXMuY2hlY2tlZCk7XG5cbiAgICAgICAgLy8gaWYgdGhlIGNoZWNrYm94IHdhcyBpbmRldGVybWluYXRlLCBpdCBpc24ndCBhbnltb3JlXG4gICAgICAgIGlmICh0aGlzLmluZGV0ZXJtaW5hdGUpIHtcbiAgICAgICAgICAgIHRoaXMuaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5pbmRldGVybWluYXRlQ2hhbmdlLmVtaXQodGhpcy5pbmRldGVybWluYXRlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2JsdXInKVxuICAgIG9uQmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQ/LigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGNoZWNrZWQgc3RhdGUgb2YgdGhlIGNoZWNrYm94LlxuICAgICAqIEBwYXJhbSBjaGVja2VkIFRoZSBjaGVja2VkIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICB3cml0ZVZhbHVlKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja2VkID0gY2hlY2tlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlcnMgYSBjYWxsYmFjayBmdW5jdGlvbiB0aGF0IHNob3VsZCBiZSBjYWxsZWQgd2hlbiB0aGUgY2hlY2tib3ggY2hlY2tlZCBzdGF0ZSBjaGFuZ2VzLlxuICAgICAqIEBwYXJhbSBmbiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24uXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKGNoZWNrZWQ6IGJvb2xlYW4pID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBibHVycmVkLlxuICAgICAqIEBwYXJhbSBmbiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24uXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guXG4gICAgICogQHBhcmFtIGlzRGlzYWJsZWQgVGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxufVxuIl19
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9jaGVja2JveC9zcmMvY2hlY2tib3guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBb0JwRCxNQUFNLE9BQU8sb0JBQW9CO0lBaEJqQztRQWlCSTs7V0FFRztRQUNxQyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXhEOztXQUVHO1FBQ3FDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRTlEOztXQUVHO1FBQ3FDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFekQ7O1dBRUc7UUFDZ0Isa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRS9EOztXQUVHO1FBQ2dCLHdCQUFtQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7S0FpR3hFO0lBL0ZHOztPQUVHO0lBQ0gsSUFBSSxLQUFLO1FBQ0wsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsT0FBTyxlQUFlLENBQUM7UUFDM0IsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDbEQsQ0FBQztJQWVELFNBQVMsQ0FBQyxLQUFvQjtRQUMxQixxRUFBcUU7UUFDckUsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMzQixDQUFD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QkFBOUMsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFLRSxhQUFhO3NCQUFwRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUtFLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBS25CLGFBQWE7c0JBQS9CLE1BQU07Z0JBS1ksbUJBQW1CO3NCQUFyQyxNQUFNO2dCQXlCUCxTQUFTO3NCQURSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVNuQyxPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTztnQkFpQnJCLE1BQU07c0JBREwsWUFBWTt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgUmR4Q2hlY2tib3hUb2tlbiB9IGZyb20gJy4vY2hlY2tib3gudG9rZW4nO1xuXG5leHBvcnQgdHlwZSBDaGVja2JveFN0YXRlID0gJ3VuY2hlY2tlZCcgfCAnY2hlY2tlZCcgfCAnaW5kZXRlcm1pbmF0ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnYnV0dG9uW3JkeENoZWNrYm94XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBSZHhDaGVja2JveFRva2VuLCB1c2VFeGlzdGluZzogUmR4Q2hlY2tib3hEaXJlY3RpdmUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IFJkeENoZWNrYm94RGlyZWN0aXZlLCBtdWx0aTogdHJ1ZSB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHR5cGU6ICdidXR0b24nLFxuICAgICAgICByb2xlOiAnY2hlY2tib3gnLFxuICAgICAgICAnW2Rpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgICAgICdbYXR0ci5hcmlhLWNoZWNrZWRdJzogJ2luZGV0ZXJtaW5hdGUgPyBcIm1peGVkXCIgOiBjaGVja2VkJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkID8gXCJcIiA6IG51bGwnLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnc3RhdGUnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhDaGVja2JveERpcmVjdGl2ZSBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkNoYW5nZXMge1xuICAgIC8qKlxuICAgICAqIERlZmluZXMgd2hldGhlciB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgY2hlY2tlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB3aGV0aGVyIHRoZSBjaGVja2JveCBpcyBpbmRldGVybWluYXRlLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBpbmRldGVybWluYXRlID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGRpc2FibGVkLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBjaGVja2JveCBjaGVja2VkIHN0YXRlIGNoYW5nZXMuXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IGNoZWNrZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGluZGV0ZXJtaW5hdGUgc3RhdGUgY2hhbmdlcy5cbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgaW5kZXRlcm1pbmF0ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKlxuICAgICAqIERldGVybWluZSB0aGUgc3RhdGVcbiAgICAgKi9cbiAgICBnZXQgc3RhdGUoKTogQ2hlY2tib3hTdGF0ZSB7XG4gICAgICAgIGlmICh0aGlzLmluZGV0ZXJtaW5hdGUpIHtcbiAgICAgICAgICAgIHJldHVybiAnaW5kZXRlcm1pbmF0ZSc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuY2hlY2tlZCA/ICdjaGVja2VkJyA6ICd1bmNoZWNrZWQnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN0b3JlIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0aGF0IHNob3VsZCBiZSBjYWxsZWQgd2hlbiB0aGUgY2hlY2tib3ggY2hlY2tlZCBzdGF0ZSBjaGFuZ2VzLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHByaXZhdGUgb25DaGFuZ2U/OiAoY2hlY2tlZDogYm9vbGVhbikgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFN0b3JlIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0aGF0IHNob3VsZCBiZSBjYWxsZWQgd2hlbiB0aGUgY2hlY2tib3ggaXMgYmx1cnJlZC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcml2YXRlIG9uVG91Y2hlZD86ICgpID0+IHZvaWQ7XG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgICBvbktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgLy8gQWNjb3JkaW5nIHRvIFdBSSBBUklBLCBDaGVja2JveGVzIGRvbid0IGFjdGl2YXRlIG9uIGVudGVyIGtleXByZXNzXG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaW5kZXRlcm1pbmF0ZSA/IHRydWUgOiAhdGhpcy5jaGVja2VkO1xuICAgICAgICB0aGlzLmNoZWNrZWRDaGFuZ2UuZW1pdCh0aGlzLmNoZWNrZWQpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlPy4odGhpcy5jaGVja2VkKTtcblxuICAgICAgICBpZiAodGhpcy5pbmRldGVybWluYXRlKSB7XG4gICAgICAgICAgICB0aGlzLmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuaW5kZXRlcm1pbmF0ZUNoYW5nZS5lbWl0KHRoaXMuaW5kZXRlcm1pbmF0ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdibHVyJylcbiAgICBvbkJsdXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkPy4oKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzWydjaGVja2VkJ10gJiYgIWNoYW5nZXNbJ2NoZWNrZWQnXS5pc0ZpcnN0Q2hhbmdlKCkpIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tlZENoYW5nZS5lbWl0KHRoaXMuY2hlY2tlZCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNoYW5nZXNbJ2luZGV0ZXJtaW5hdGUnXSAmJiAhY2hhbmdlc1snaW5kZXRlcm1pbmF0ZSddLmlzRmlyc3RDaGFuZ2UoKSkge1xuICAgICAgICAgICAgdGhpcy5pbmRldGVybWluYXRlQ2hhbmdlLmVtaXQodGhpcy5pbmRldGVybWluYXRlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIGNoZWNrZWQgc3RhdGUgb2YgdGhlIGNoZWNrYm94LlxuICAgICAqIEBwYXJhbSBjaGVja2VkIFRoZSBjaGVja2VkIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICB3cml0ZVZhbHVlKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja2VkID0gY2hlY2tlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlcnMgYSBjYWxsYmFjayBmdW5jdGlvbiB0aGF0IHNob3VsZCBiZSBjYWxsZWQgd2hlbiB0aGUgY2hlY2tib3ggY2hlY2tlZCBzdGF0ZSBjaGFuZ2VzLlxuICAgICAqIEBwYXJhbSBmbiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24uXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKGNoZWNrZWQ6IGJvb2xlYW4pID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBibHVycmVkLlxuICAgICAqIEBwYXJhbSBmbiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24uXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guXG4gICAgICogQHBhcmFtIGlzRGlzYWJsZWQgVGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxufVxuIl19
|
@@ -0,0 +1,4 @@
|
|
1
|
+
export * from './src/collapsible-root.directive';
|
2
|
+
export * from './src/collapsible-trigger.directive';
|
3
|
+
export * from './src/collapsible-content.directive';
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2NvbGxhcHNpYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvY29sbGFwc2libGUtcm9vdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvY29sbGFwc2libGUtdHJpZ2dlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvY29sbGFwc2libGUtY29udGVudC5kaXJlY3RpdmUnO1xuIl19
|
@@ -0,0 +1,5 @@
|
|
1
|
+
/**
|
2
|
+
* Generated bundle index. Do not edit.
|
3
|
+
*/
|
4
|
+
export * from './index';
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaXgtbmctcHJpbWl0aXZlcy1jb2xsYXBzaWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvY29sbGFwc2libGUvcmFkaXgtbmctcHJpbWl0aXZlcy1jb2xsYXBzaWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { Directive, ElementRef, inject, InjectionToken } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export const RdxCollapsibleContentToken = new InjectionToken('RdxCollapsibleContentToken');
|
4
|
+
export class RdxCollapsibleContentDirective {
|
5
|
+
constructor() {
|
6
|
+
/**
|
7
|
+
* Reference to CollapsibleContent host element
|
8
|
+
*/
|
9
|
+
this.elementRef = inject(ElementRef);
|
10
|
+
}
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCollapsibleContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
12
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxCollapsibleContentDirective, isStandalone: true, selector: "[CollapsibleContent]", providers: [
|
13
|
+
{ provide: RdxCollapsibleContentToken, useExisting: RdxCollapsibleContentDirective }
|
14
|
+
], ngImport: i0 }); }
|
15
|
+
}
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCollapsibleContentDirective, decorators: [{
|
17
|
+
type: Directive,
|
18
|
+
args: [{
|
19
|
+
selector: '[CollapsibleContent]',
|
20
|
+
standalone: true,
|
21
|
+
providers: [
|
22
|
+
{ provide: RdxCollapsibleContentToken, useExisting: RdxCollapsibleContentDirective }
|
23
|
+
]
|
24
|
+
}]
|
25
|
+
}] });
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2libGUtY29udGVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2NvbGxhcHNpYmxlL3NyYy9jb2xsYXBzaWJsZS1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUU5RSxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxJQUFJLGNBQWMsQ0FDeEQsNEJBQTRCLENBQy9CLENBQUM7QUFTRixNQUFNLE9BQU8sOEJBQThCO0lBUDNDO1FBUUk7O1dBRUc7UUFDSCxlQUFVLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztLQUM1RDs4R0FMWSw4QkFBOEI7a0dBQTlCLDhCQUE4QixtRUFKNUI7WUFDUCxFQUFFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxXQUFXLEVBQUUsOEJBQThCLEVBQUU7U0FDdkY7OzJGQUVRLDhCQUE4QjtrQkFQMUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQLEVBQUUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLFdBQVcsZ0NBQWdDLEVBQUU7cUJBQ3ZGO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBSZHhDb2xsYXBzaWJsZUNvbnRlbnRUb2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZHhDb2xsYXBzaWJsZUNvbnRlbnREaXJlY3RpdmU+KFxuICAgICdSZHhDb2xsYXBzaWJsZUNvbnRlbnRUb2tlbidcbik7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW0NvbGxhcHNpYmxlQ29udGVudF0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogUmR4Q29sbGFwc2libGVDb250ZW50VG9rZW4sIHVzZUV4aXN0aW5nOiBSZHhDb2xsYXBzaWJsZUNvbnRlbnREaXJlY3RpdmUgfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUmR4Q29sbGFwc2libGVDb250ZW50RGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gQ29sbGFwc2libGVDb250ZW50IGhvc3QgZWxlbWVudFxuICAgICAqL1xuICAgIGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xufVxuIl19
|
@@ -0,0 +1,114 @@
|
|
1
|
+
import { contentChild, Directive, EventEmitter, inject, InjectionToken, Input, Output } from '@angular/core';
|
2
|
+
import { asyncScheduler } from 'rxjs';
|
3
|
+
import { RdxCollapsibleContentToken } from './collapsible-content.directive';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
const RdxCollapsibleToken = new InjectionToken('RdxCollapsibleToken');
|
6
|
+
export function injectCollapsible() {
|
7
|
+
return inject(RdxCollapsibleRootDirective);
|
8
|
+
}
|
9
|
+
export class RdxCollapsibleRootDirective {
|
10
|
+
constructor() {
|
11
|
+
/**
|
12
|
+
* Reference to RdxCollapsibleContent directive
|
13
|
+
* @private
|
14
|
+
* @ignore
|
15
|
+
*/
|
16
|
+
this.contentDirective = contentChild.required(RdxCollapsibleContentToken);
|
17
|
+
/**
|
18
|
+
* Stores collapsible state
|
19
|
+
* @private
|
20
|
+
* @ignore
|
21
|
+
*/
|
22
|
+
this._open = false;
|
23
|
+
/**
|
24
|
+
* Determines whether a directive is available for interaction
|
25
|
+
*/
|
26
|
+
this.disabled = false;
|
27
|
+
/**
|
28
|
+
* Emitted with new value when directive state changed
|
29
|
+
*/
|
30
|
+
this.openChange = new EventEmitter();
|
31
|
+
}
|
32
|
+
/**
|
33
|
+
* Sets the state of the directive. `true` - expanded, `false` - collapsed
|
34
|
+
* @param {boolean} value
|
35
|
+
*/
|
36
|
+
set open(value) {
|
37
|
+
if (value !== this._open) {
|
38
|
+
this.openChange.emit(value);
|
39
|
+
}
|
40
|
+
this._open = value;
|
41
|
+
this.setPresence();
|
42
|
+
}
|
43
|
+
/**
|
44
|
+
* Allows to change directive state
|
45
|
+
* @param {boolean | undefined} value
|
46
|
+
*/
|
47
|
+
setOpen(value) {
|
48
|
+
if (this.disabled) {
|
49
|
+
return;
|
50
|
+
}
|
51
|
+
if (value === undefined) {
|
52
|
+
this.open = !this._open;
|
53
|
+
}
|
54
|
+
else {
|
55
|
+
this.open = value;
|
56
|
+
}
|
57
|
+
this.setPresence();
|
58
|
+
}
|
59
|
+
/**
|
60
|
+
* Returns directive state (open | closed)
|
61
|
+
*/
|
62
|
+
getState() {
|
63
|
+
return this._open ? 'open' : 'closed';
|
64
|
+
}
|
65
|
+
/**
|
66
|
+
* Returns current directive state
|
67
|
+
*/
|
68
|
+
isOpen() {
|
69
|
+
return this._open;
|
70
|
+
}
|
71
|
+
/**
|
72
|
+
* Controls visibility of content
|
73
|
+
* @private
|
74
|
+
* @ignore
|
75
|
+
*/
|
76
|
+
setPresence() {
|
77
|
+
if (!this.contentDirective) {
|
78
|
+
return;
|
79
|
+
}
|
80
|
+
this.contentDirective().elementRef.nativeElement.setAttribute('data-state', this.getState());
|
81
|
+
if (this.isOpen()) {
|
82
|
+
this.contentDirective().elementRef.nativeElement.removeAttribute('hidden');
|
83
|
+
}
|
84
|
+
else {
|
85
|
+
asyncScheduler.schedule(() => {
|
86
|
+
const animations = this.contentDirective().elementRef.nativeElement.getAnimations();
|
87
|
+
if (animations === undefined || animations.length === 0) {
|
88
|
+
this.contentDirective().elementRef.nativeElement.setAttribute('hidden', '');
|
89
|
+
}
|
90
|
+
});
|
91
|
+
}
|
92
|
+
}
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCollapsibleRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
94
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "18.0.4", type: RdxCollapsibleRootDirective, isStandalone: true, selector: "[CollapsibleRoot]", inputs: { disabled: "disabled", open: "open" }, outputs: { openChange: "openChange" }, host: { properties: { "attr.data-state": "getState()" } }, providers: [{ provide: RdxCollapsibleToken, useExisting: RdxCollapsibleRootDirective }], queries: [{ propertyName: "contentDirective", first: true, predicate: RdxCollapsibleContentToken, descendants: true, isSignal: true }], exportAs: ["collapsibleRoot"], ngImport: i0 }); }
|
95
|
+
}
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCollapsibleRootDirective, decorators: [{
|
97
|
+
type: Directive,
|
98
|
+
args: [{
|
99
|
+
selector: '[CollapsibleRoot]',
|
100
|
+
standalone: true,
|
101
|
+
exportAs: 'collapsibleRoot',
|
102
|
+
providers: [{ provide: RdxCollapsibleToken, useExisting: RdxCollapsibleRootDirective }],
|
103
|
+
host: {
|
104
|
+
'[attr.data-state]': 'getState()'
|
105
|
+
}
|
106
|
+
}]
|
107
|
+
}], propDecorators: { disabled: [{
|
108
|
+
type: Input
|
109
|
+
}], open: [{
|
110
|
+
type: Input
|
111
|
+
}], openChange: [{
|
112
|
+
type: Output
|
113
|
+
}] } });
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2libGUtcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2NvbGxhcHNpYmxlL3NyYy9jb2xsYXBzaWJsZS1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsWUFBWSxFQUNaLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBRTdFLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxjQUFjLENBQThCLHFCQUFxQixDQUFDLENBQUM7QUFFbkcsTUFBTSxVQUFVLGlCQUFpQjtJQUM3QixPQUFPLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0FBQy9DLENBQUM7QUFhRCxNQUFNLE9BQU8sMkJBQTJCO0lBVHhDO1FBVUk7Ozs7V0FJRztRQUNjLHFCQUFnQixHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUV0Rjs7OztXQUlHO1FBQ0ssVUFBSyxHQUFHLEtBQUssQ0FBQztRQUV0Qjs7V0FFRztRQUNNLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFlMUI7O1dBRUc7UUFDTyxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztLQTZEdEQ7SUE3RUc7OztPQUdHO0lBQ0gsSUFBYSxJQUFJLENBQUMsS0FBYztRQUM1QixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBT0Q7OztPQUdHO0lBQ0gsT0FBTyxDQUFDLEtBQWU7UUFDbkIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEIsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUM1QixDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsUUFBUTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDMUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFdBQVc7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDekIsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FDekQsWUFBWSxFQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FDbEIsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0UsQ0FBQzthQUFNLENBQUM7WUFDSixjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRTtnQkFDekIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFFcEYsSUFBSSxVQUFVLEtBQUssU0FBUyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQ3RELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDaEYsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNMLENBQUM7OEdBaEdRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLGtOQUx6QixDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSwyQkFBMkIsRUFBRSxDQUFDLHdFQVc3QiwwQkFBMEI7OzJGQU4zRSwyQkFBMkI7a0JBVHZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsNkJBQTZCLEVBQUUsQ0FBQztvQkFDdkYsSUFBSSxFQUFFO3dCQUNGLG1CQUFtQixFQUFFLFlBQVk7cUJBQ3BDO2lCQUNKOzhCQW1CWSxRQUFRO3NCQUFoQixLQUFLO2dCQU1PLElBQUk7c0JBQWhCLEtBQUs7Z0JBWUksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgY29udGVudENoaWxkLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIElucHV0LFxuICAgIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFzeW5jU2NoZWR1bGVyIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJkeENvbGxhcHNpYmxlQ29udGVudFRva2VuIH0gZnJvbSAnLi9jb2xsYXBzaWJsZS1jb250ZW50LmRpcmVjdGl2ZSc7XG5cbmNvbnN0IFJkeENvbGxhcHNpYmxlVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48UmR4Q29sbGFwc2libGVSb290RGlyZWN0aXZlPignUmR4Q29sbGFwc2libGVUb2tlbicpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0Q29sbGFwc2libGUoKTogUmR4Q29sbGFwc2libGVSb290RGlyZWN0aXZlIHtcbiAgICByZXR1cm4gaW5qZWN0KFJkeENvbGxhcHNpYmxlUm9vdERpcmVjdGl2ZSk7XG59XG5cbmV4cG9ydCB0eXBlIFJkeENvbGxhcHNpYmxlU3RhdGUgPSAnb3BlbicgfCAnY2xvc2VkJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbQ29sbGFwc2libGVSb290XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBleHBvcnRBczogJ2NvbGxhcHNpYmxlUm9vdCcsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBSZHhDb2xsYXBzaWJsZVRva2VuLCB1c2VFeGlzdGluZzogUmR4Q29sbGFwc2libGVSb290RGlyZWN0aXZlIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ2dldFN0YXRlKCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhDb2xsYXBzaWJsZVJvb3REaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqIFJlZmVyZW5jZSB0byBSZHhDb2xsYXBzaWJsZUNvbnRlbnQgZGlyZWN0aXZlXG4gICAgICogQHByaXZhdGVcbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb250ZW50RGlyZWN0aXZlID0gY29udGVudENoaWxkLnJlcXVpcmVkKFJkeENvbGxhcHNpYmxlQ29udGVudFRva2VuKTtcblxuICAgIC8qKlxuICAgICAqIFN0b3JlcyBjb2xsYXBzaWJsZSBzdGF0ZVxuICAgICAqIEBwcml2YXRlXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIHByaXZhdGUgX29wZW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIERldGVybWluZXMgd2hldGhlciBhIGRpcmVjdGl2ZSBpcyBhdmFpbGFibGUgZm9yIGludGVyYWN0aW9uXG4gICAgICovXG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHN0YXRlIG9mIHRoZSBkaXJlY3RpdmUuIGB0cnVlYCAtIGV4cGFuZGVkLCBgZmFsc2VgIC0gY29sbGFwc2VkXG4gICAgICogQHBhcmFtIHtib29sZWFufSB2YWx1ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCBvcGVuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gdGhpcy5fb3Blbikge1xuICAgICAgICAgICAgdGhpcy5vcGVuQ2hhbmdlLmVtaXQodmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fb3BlbiA9IHZhbHVlO1xuICAgICAgICB0aGlzLnNldFByZXNlbmNlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRW1pdHRlZCB3aXRoIG5ldyB2YWx1ZSB3aGVuIGRpcmVjdGl2ZSBzdGF0ZSBjaGFuZ2VkXG4gICAgICovXG4gICAgQE91dHB1dCgpIG9wZW5DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKipcbiAgICAgKiBBbGxvd3MgdG8gY2hhbmdlIGRpcmVjdGl2ZSBzdGF0ZVxuICAgICAqIEBwYXJhbSB7Ym9vbGVhbiB8IHVuZGVmaW5lZH0gdmFsdWVcbiAgICAgKi9cbiAgICBzZXRPcGVuKHZhbHVlPzogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMub3BlbiA9ICF0aGlzLl9vcGVuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vcGVuID0gdmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldFByZXNlbmNlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBkaXJlY3RpdmUgc3RhdGUgKG9wZW4gfCBjbG9zZWQpXG4gICAgICovXG4gICAgZ2V0U3RhdGUoKTogUmR4Q29sbGFwc2libGVTdGF0ZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9vcGVuID8gJ29wZW4nIDogJ2Nsb3NlZCc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBjdXJyZW50IGRpcmVjdGl2ZSBzdGF0ZVxuICAgICAqL1xuICAgIGlzT3BlbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX29wZW47XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29udHJvbHMgdmlzaWJpbGl0eSBvZiBjb250ZW50XG4gICAgICogQHByaXZhdGVcbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgcHJpdmF0ZSBzZXRQcmVzZW5jZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRlbnREaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29udGVudERpcmVjdGl2ZSgpLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgICAnZGF0YS1zdGF0ZScsXG4gICAgICAgICAgICB0aGlzLmdldFN0YXRlKClcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAodGhpcy5pc09wZW4oKSkge1xuICAgICAgICAgICAgdGhpcy5jb250ZW50RGlyZWN0aXZlKCkuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnaGlkZGVuJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhc3luY1NjaGVkdWxlci5zY2hlZHVsZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgYW5pbWF0aW9ucyA9IHRoaXMuY29udGVudERpcmVjdGl2ZSgpLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRBbmltYXRpb25zKCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoYW5pbWF0aW9ucyA9PT0gdW5kZWZpbmVkIHx8IGFuaW1hdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudERpcmVjdGl2ZSgpLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2hpZGRlbicsICcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import { Directive } from '@angular/core';
|
2
|
+
import { injectCollapsible } from './collapsible-root.directive';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export class RdxCollapsibleTriggerDirective {
|
5
|
+
constructor() {
|
6
|
+
/**
|
7
|
+
* Reference to CollapsibleRoot
|
8
|
+
* @private
|
9
|
+
* @ignore
|
10
|
+
*/
|
11
|
+
this.collapsible = injectCollapsible();
|
12
|
+
}
|
13
|
+
/**
|
14
|
+
* Called on trigger clicked
|
15
|
+
*/
|
16
|
+
onOpenToggle() {
|
17
|
+
this.collapsible.setOpen();
|
18
|
+
}
|
19
|
+
/**
|
20
|
+
* Returns current directive state (open | closed)
|
21
|
+
* @ignore
|
22
|
+
*/
|
23
|
+
getState() {
|
24
|
+
return this.collapsible.getState();
|
25
|
+
}
|
26
|
+
/**
|
27
|
+
* Returns current trigger state
|
28
|
+
* @ignore
|
29
|
+
*/
|
30
|
+
getDisabled() {
|
31
|
+
return this.collapsible.disabled ? 'disabled' : undefined;
|
32
|
+
}
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCollapsibleTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
34
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxCollapsibleTriggerDirective, isStandalone: true, selector: "[CollapsibleTrigger]", host: { listeners: { "click": "onOpenToggle()" }, properties: { "attr.data-state": "getState()", "attr.aria-expanded": "getState() === \"open\" ? \"true\" : \"false\"", "disabled": "getDisabled()" } }, ngImport: i0 }); }
|
35
|
+
}
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxCollapsibleTriggerDirective, decorators: [{
|
37
|
+
type: Directive,
|
38
|
+
args: [{
|
39
|
+
selector: '[CollapsibleTrigger]',
|
40
|
+
standalone: true,
|
41
|
+
host: {
|
42
|
+
'(click)': 'onOpenToggle()',
|
43
|
+
'[attr.data-state]': 'getState()',
|
44
|
+
'[attr.aria-expanded]': 'getState() === "open" ? "true" : "false"',
|
45
|
+
'[disabled]': 'getDisabled()'
|
46
|
+
}
|
47
|
+
}]
|
48
|
+
}] });
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGFwc2libGUtdHJpZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2NvbGxhcHNpYmxlL3NyYy9jb2xsYXBzaWJsZS10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBdUIsTUFBTSw4QkFBOEIsQ0FBQzs7QUFZdEYsTUFBTSxPQUFPLDhCQUE4QjtJQVYzQztRQVdJOzs7O1dBSUc7UUFDYyxnQkFBVyxHQUFHLGlCQUFpQixFQUFFLENBQUM7S0F3QnREO0lBdEJHOztPQUVHO0lBQ0gsWUFBWTtRQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILFFBQVE7UUFDSixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFdBQVc7UUFDUCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUM5RCxDQUFDOzhHQTdCUSw4QkFBOEI7a0dBQTlCLDhCQUE4Qjs7MkZBQTlCLDhCQUE4QjtrQkFWMUMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLFNBQVMsRUFBRSxnQkFBZ0I7d0JBQzNCLG1CQUFtQixFQUFFLFlBQVk7d0JBQ2pDLHNCQUFzQixFQUFFLDBDQUEwQzt3QkFDbEUsWUFBWSxFQUFFLGVBQWU7cUJBQ2hDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGluamVjdENvbGxhcHNpYmxlLCBSZHhDb2xsYXBzaWJsZVN0YXRlIH0gZnJvbSAnLi9jb2xsYXBzaWJsZS1yb290LmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW0NvbGxhcHNpYmxlVHJpZ2dlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICAnKGNsaWNrKSc6ICdvbk9wZW5Ub2dnbGUoKScsXG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdnZXRTdGF0ZSgpJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtZXhwYW5kZWRdJzogJ2dldFN0YXRlKCkgPT09IFwib3BlblwiID8gXCJ0cnVlXCIgOiBcImZhbHNlXCInLFxuICAgICAgICAnW2Rpc2FibGVkXSc6ICdnZXREaXNhYmxlZCgpJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4Q29sbGFwc2libGVUcmlnZ2VyRGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gQ29sbGFwc2libGVSb290XG4gICAgICogQHByaXZhdGVcbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb2xsYXBzaWJsZSA9IGluamVjdENvbGxhcHNpYmxlKCk7XG5cbiAgICAvKipcbiAgICAgKiBDYWxsZWQgb24gdHJpZ2dlciBjbGlja2VkXG4gICAgICovXG4gICAgb25PcGVuVG9nZ2xlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbGxhcHNpYmxlLnNldE9wZW4oKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGN1cnJlbnQgZGlyZWN0aXZlIHN0YXRlIChvcGVuIHwgY2xvc2VkKVxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBnZXRTdGF0ZSgpOiBSZHhDb2xsYXBzaWJsZVN0YXRlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sbGFwc2libGUuZ2V0U3RhdGUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGN1cnJlbnQgdHJpZ2dlciBzdGF0ZVxuICAgICAqIEBpZ25vcmVcbiAgICAgKi9cbiAgICBnZXREaXNhYmxlZCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2xsYXBzaWJsZS5kaXNhYmxlZCA/ICdkaXNhYmxlZCcgOiB1bmRlZmluZWQ7XG4gICAgfVxufVxuIl19
|
package/esm2022/label/index.mjs
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export * from './src/label.directive';
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
1
|
+
export * from './src/label-root.directive';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2xhYmVsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9sYWJlbC1yb290LmRpcmVjdGl2ZSc7XG4iXX0=
|