@design-system-rte/angular 0.15.0 → 0.17.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/esm2022/lib/components/banner/banner.component.mjs +3 -3
- package/esm2022/lib/components/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +1 -1
- package/esm2022/lib/components/breadcrumbs/breadcrumbs.component.mjs +2 -2
- package/esm2022/lib/components/button/button.component.mjs +2 -2
- package/esm2022/lib/components/card/card.component.mjs +40 -0
- package/esm2022/lib/components/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/components/checkbox-group/checkbox-group.component.mjs +3 -3
- package/esm2022/lib/components/divider/divider.component.mjs +3 -3
- package/esm2022/lib/components/icon-button/icon-button.component.mjs +13 -3
- package/esm2022/lib/components/icon-button-toggle/icon-button-toggle.component.mjs +1 -1
- package/esm2022/lib/components/link/link.component.mjs +3 -3
- package/esm2022/lib/components/modal/modal-trigger/modal-trigger.directive.mjs +31 -0
- package/esm2022/lib/components/modal/modal.component.mjs +48 -0
- package/esm2022/lib/components/modal/modal.directive.mjs +118 -0
- package/esm2022/lib/components/modal/modal.module.mjs +17 -0
- package/esm2022/lib/components/popover/popover.component.mjs +11 -28
- package/esm2022/lib/components/radio-button/radio-button.component.mjs +3 -3
- package/esm2022/lib/components/radio-button-group/radio-button-group.component.mjs +3 -3
- package/esm2022/lib/components/side-nav/base-side-nav/base-side-nav.component.mjs +63 -0
- package/esm2022/lib/components/side-nav/nav-item/nav-item.component.mjs +58 -0
- package/esm2022/lib/components/side-nav/nav-menu/nav-menu.component.mjs +90 -0
- package/esm2022/lib/components/side-nav/side-nav.component.mjs +96 -0
- package/esm2022/lib/components/text-input/text-input.component.mjs +3 -3
- package/esm2022/lib/components/textarea/textarea.component.mjs +3 -3
- package/esm2022/lib/components/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/lib/components/tooltip/tooltip.directive.mjs +11 -8
- package/esm2022/lib/services/focus-trap.service.mjs +64 -0
- package/esm2022/lib/services/overlay.service.mjs +19 -4
- package/esm2022/public-api.mjs +6 -1
- package/fesm2022/design-system-rte-angular.mjs +727 -153
- package/fesm2022/design-system-rte-angular.mjs.map +1 -1
- package/lib/components/badge/badge.directive.d.ts +1 -1
- package/lib/components/card/card.component.d.ts +19 -0
- package/lib/components/chip/chip.component.d.ts +1 -1
- package/lib/components/icon-button/icon-button.component.d.ts +8 -2
- package/lib/components/icon-button-toggle/icon-button-toggle.component.d.ts +1 -1
- package/lib/components/modal/modal-trigger/modal-trigger.directive.d.ts +11 -0
- package/lib/components/modal/modal.component.d.ts +28 -0
- package/lib/components/modal/modal.directive.d.ts +40 -0
- package/lib/components/modal/modal.module.d.ts +8 -0
- package/lib/components/popover/popover.component.d.ts +4 -5
- package/lib/components/side-nav/base-side-nav/base-side-nav.component.d.ts +26 -0
- package/lib/components/side-nav/nav-item/nav-item.component.d.ts +28 -0
- package/lib/components/side-nav/nav-menu/nav-menu.component.d.ts +42 -0
- package/lib/components/side-nav/side-nav.component.d.ts +33 -0
- package/lib/components/split-button/split-button.component.d.ts +1 -1
- package/lib/components/text-input/text-input.component.d.ts +3 -3
- package/lib/components/tooltip/tooltip.directive.d.ts +4 -3
- package/lib/services/focus-trap.service.d.ts +17 -0
- package/lib/services/overlay.service.d.ts +2 -1
- package/package.json +2 -2
- package/public-api.d.ts +5 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CommonModule } from "@angular/common";
|
|
2
2
|
import { ChangeDetectionStrategy, Component, computed, input, output } from "@angular/core";
|
|
3
3
|
import { buttonIconSize } from "@design-system-rte/core/components/button/common/common-button.constants";
|
|
4
|
+
import { BadgeDirective } from "../badge/badge.directive";
|
|
4
5
|
import { isValidIconName } from "../icon/icon-map";
|
|
5
6
|
import { IconComponent } from "../icon/icon.component";
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -16,19 +17,28 @@ export class IconButtonComponent {
|
|
|
16
17
|
this.compactSpacing = input(false);
|
|
17
18
|
this.ariaLabel = input(undefined);
|
|
18
19
|
this.ariaLabelledBy = input(undefined);
|
|
20
|
+
this.badgeCount = input();
|
|
21
|
+
this.badgeContent = input();
|
|
22
|
+
this.badgeType = input();
|
|
23
|
+
this.badgeIcon = input("settings");
|
|
19
24
|
this.buttonIconSize = computed(() => buttonIconSize[this.size()]);
|
|
20
25
|
this.isValidIconName = computed(() => isValidIconName(this.name()));
|
|
21
26
|
this.click = output();
|
|
27
|
+
this.shouldDisplayBadge = computed(() => {
|
|
28
|
+
const count = this.badgeCount();
|
|
29
|
+
const content = this.badgeContent();
|
|
30
|
+
return (count && count > 0 && content === "number") || content === "icon";
|
|
31
|
+
});
|
|
22
32
|
}
|
|
23
33
|
onClick(event) {
|
|
24
34
|
event.stopPropagation();
|
|
25
35
|
this.click.emit(event);
|
|
26
36
|
}
|
|
27
37
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: IconButtonComponent, isStandalone: true, selector: "rte-icon-button", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, compactSpacing: { classPropertyName: "compactSpacing", publicName: "compactSpacing", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, badgeCount: { classPropertyName: "badgeCount", publicName: "badgeCount", isSignal: true, isRequired: false, transformFunction: null }, badgeContent: { classPropertyName: "badgeContent", publicName: "badgeContent", isSignal: true, isRequired: false, transformFunction: null }, badgeType: { classPropertyName: "badgeType", publicName: "badgeType", isSignal: true, isRequired: false, transformFunction: null }, badgeIcon: { classPropertyName: "badgeIcon", publicName: "badgeIcon", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: "@if (shouldDisplayBadge()) {\n <button\n *ngIf=\"isValidIconName\"\n class=\"rte-icon-button {{ variant() }} size-{{ size() }}\"\n rteBadge\n [class.compact-spacing]=\"compactSpacing()\"\n [disabled]=\"disabled()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [type]=\"type()\"\n [rteBadgeType]=\"badgeType()!\"\n [rteBadgeSize]=\"size()\"\n [rteBadgeContent]=\"size() === 's' ? 'empty' : badgeContent()!\"\n [rteBadgeCount]=\"badgeCount()!\"\n [rteBadgeIcon]=\"badgeIcon()!\"\n (click)=\"onClick($event)\"\n >\n <rte-icon\n [name]=\"name()\"\n [appearance]=\"appearance()\"\n [size]=\"buttonIconSize()\"\n />\n </button>\n} @else {\n <button\n *ngIf=\"isValidIconName\"\n class=\"rte-icon-button {{ variant() }} size-{{ size() }}\"\n [class.compact-spacing]=\"compactSpacing()\"\n [disabled]=\"disabled()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [type]=\"type()\"\n (click)=\"onClick($event)\"\n >\n <rte-icon\n [name]=\"name()\"\n [appearance]=\"appearance()\"\n [size]=\"buttonIconSize()\"\n />\n </button>\n}\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-icon-button{display:flex;cursor:pointer;height:24px;align-items:center;gap:0px;flex-shrink:0}.rte-icon-button:focus-visible{outline:none;position:relative;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-icon-button.size-s{border-radius:4px;height:24px;padding:2px 4px}.rte-icon-button.size-s.compact-spacing{height:16px}.rte-icon-button.size-m{border-radius:4px;height:32px;padding:4px 6px}.rte-icon-button.size-m.compact-spacing{height:20px}.rte-icon-button.size-l{border-radius:8px;height:40px;padding:6px 8px}.rte-icon-button.size-l.compact-spacing{height:24px}.rte-icon-button.primary{background:var(--background-brand-default);border:var(--border-brand-default)}.rte-icon-button.primary ::ng-deep .rte-icon-container{color:var(--content-primary-inverse)}.rte-icon-button.primary:hover{background:var(--background-brand-hover);border:var(--background-brand-hover)}.rte-icon-button.primary:active{background:var(--background-brand-pressed)}.rte-icon-button.primary:disabled{background:var(--background-disabled);border:solid 1px var(--border-disabled);box-shadow:none;color:var(--content-disabled);cursor:default}.rte-icon-button.secondary{background:var(--background-default);border:solid 1px var(--border-brand-default);color:var(--content-brand-default)}.rte-icon-button.secondary:hover{background:var(--background-brand-inverse-hover);border:solid 1px var(--border-brand-default)}.rte-icon-button.secondary:active{background:var(--background-brand-inverse-pressed)}.rte-icon-button.secondary:disabled{background:var(--background-disabled);border:solid 1px var(--border-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.text{background:transparent;border:none;color:var(--content-brand-default)}.rte-icon-button.text:hover{background:var(--background-brand-inverse-hover)}.rte-icon-button.text:active{background:var(--background-brand-inverse-pressed)}.rte-icon-button.text:disabled{background:var(--background-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.transparent{background:transparent;border:none;color:var(--content-brand-default)}.rte-icon-button.transparent:hover{color:var(--content-brand-hover)}.rte-icon-button.transparent:active{color:var(--content-brand-pressed)}.rte-icon-button.transparent:disabled{box-shadow:none;background-color:var(--background-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.danger{background:var(--background-danger-default);border:none}.rte-icon-button.danger ::ng-deep .rte-icon-container{color:var(--content-primary-inverse)}.rte-icon-button.danger:hover{background:var(--background-danger-hover)}.rte-icon-button.danger:active{background:var(--background-danger-pressed)}.rte-icon-button.danger:disabled{background:var(--background-disabled);border:solid 1px var(--border-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.neutral{background:none;border:none;color:var(--content-primary)}.rte-icon-button.neutral:hover{color:var(--content-secondary)}.rte-icon-button.neutral:active{color:var(--content-tertiary)}.rte-icon-button.neutral:disabled{background:var(--background-disabled);box-shadow:none;color:var(--content-disabled);cursor:default}.rte-icon-button.reverse{background:none;border:none;color:var(--content-primary-inverse)}.rte-icon-button.reverse:hover{color:var(--background-hover)}.rte-icon-button.reverse:active{color:var(--content-primary-inverse)}.rte-icon-button.reverse:disabled{background:var(--background-disabled);box-shadow:none;color:var(--content-disabled);cursor:default}.rte-icon-button.compact-spacing{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "rte-icon", inputs: ["name", "size", "color", "classes", "appearance"] }, { kind: "directive", type: BadgeDirective, selector: "[rteBadge]", inputs: ["rteBadgeType", "rteBadgeSize", "rteBadgeContent", "rteBadgeCount", "rteBadgeIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29
39
|
}
|
|
30
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconButtonComponent, decorators: [{
|
|
31
41
|
type: Component,
|
|
32
|
-
args: [{ selector: "rte-icon-button", imports: [CommonModule, IconComponent], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n
|
|
42
|
+
args: [{ selector: "rte-icon-button", imports: [CommonModule, IconComponent, BadgeDirective], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (shouldDisplayBadge()) {\n <button\n *ngIf=\"isValidIconName\"\n class=\"rte-icon-button {{ variant() }} size-{{ size() }}\"\n rteBadge\n [class.compact-spacing]=\"compactSpacing()\"\n [disabled]=\"disabled()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [type]=\"type()\"\n [rteBadgeType]=\"badgeType()!\"\n [rteBadgeSize]=\"size()\"\n [rteBadgeContent]=\"size() === 's' ? 'empty' : badgeContent()!\"\n [rteBadgeCount]=\"badgeCount()!\"\n [rteBadgeIcon]=\"badgeIcon()!\"\n (click)=\"onClick($event)\"\n >\n <rte-icon\n [name]=\"name()\"\n [appearance]=\"appearance()\"\n [size]=\"buttonIconSize()\"\n />\n </button>\n} @else {\n <button\n *ngIf=\"isValidIconName\"\n class=\"rte-icon-button {{ variant() }} size-{{ size() }}\"\n [class.compact-spacing]=\"compactSpacing()\"\n [disabled]=\"disabled()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [type]=\"type()\"\n (click)=\"onClick($event)\"\n >\n <rte-icon\n [name]=\"name()\"\n [appearance]=\"appearance()\"\n [size]=\"buttonIconSize()\"\n />\n </button>\n}\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-icon-button{display:flex;cursor:pointer;height:24px;align-items:center;gap:0px;flex-shrink:0}.rte-icon-button:focus-visible{outline:none;position:relative;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-icon-button.size-s{border-radius:4px;height:24px;padding:2px 4px}.rte-icon-button.size-s.compact-spacing{height:16px}.rte-icon-button.size-m{border-radius:4px;height:32px;padding:4px 6px}.rte-icon-button.size-m.compact-spacing{height:20px}.rte-icon-button.size-l{border-radius:8px;height:40px;padding:6px 8px}.rte-icon-button.size-l.compact-spacing{height:24px}.rte-icon-button.primary{background:var(--background-brand-default);border:var(--border-brand-default)}.rte-icon-button.primary ::ng-deep .rte-icon-container{color:var(--content-primary-inverse)}.rte-icon-button.primary:hover{background:var(--background-brand-hover);border:var(--background-brand-hover)}.rte-icon-button.primary:active{background:var(--background-brand-pressed)}.rte-icon-button.primary:disabled{background:var(--background-disabled);border:solid 1px var(--border-disabled);box-shadow:none;color:var(--content-disabled);cursor:default}.rte-icon-button.secondary{background:var(--background-default);border:solid 1px var(--border-brand-default);color:var(--content-brand-default)}.rte-icon-button.secondary:hover{background:var(--background-brand-inverse-hover);border:solid 1px var(--border-brand-default)}.rte-icon-button.secondary:active{background:var(--background-brand-inverse-pressed)}.rte-icon-button.secondary:disabled{background:var(--background-disabled);border:solid 1px var(--border-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.text{background:transparent;border:none;color:var(--content-brand-default)}.rte-icon-button.text:hover{background:var(--background-brand-inverse-hover)}.rte-icon-button.text:active{background:var(--background-brand-inverse-pressed)}.rte-icon-button.text:disabled{background:var(--background-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.transparent{background:transparent;border:none;color:var(--content-brand-default)}.rte-icon-button.transparent:hover{color:var(--content-brand-hover)}.rte-icon-button.transparent:active{color:var(--content-brand-pressed)}.rte-icon-button.transparent:disabled{box-shadow:none;background-color:var(--background-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.danger{background:var(--background-danger-default);border:none}.rte-icon-button.danger ::ng-deep .rte-icon-container{color:var(--content-primary-inverse)}.rte-icon-button.danger:hover{background:var(--background-danger-hover)}.rte-icon-button.danger:active{background:var(--background-danger-pressed)}.rte-icon-button.danger:disabled{background:var(--background-disabled);border:solid 1px var(--border-disabled);color:var(--content-disabled);cursor:default}.rte-icon-button.neutral{background:none;border:none;color:var(--content-primary)}.rte-icon-button.neutral:hover{color:var(--content-secondary)}.rte-icon-button.neutral:active{color:var(--content-tertiary)}.rte-icon-button.neutral:disabled{background:var(--background-disabled);box-shadow:none;color:var(--content-disabled);cursor:default}.rte-icon-button.reverse{background:none;border:none;color:var(--content-primary-inverse)}.rte-icon-button.reverse:hover{color:var(--background-hover)}.rte-icon-button.reverse:active{color:var(--content-primary-inverse)}.rte-icon-button.reverse:disabled{background:var(--background-disabled);box-shadow:none;color:var(--content-disabled);cursor:default}.rte-icon-button.compact-spacing{padding:0}\n"] }]
|
|
33
43
|
}] });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvaWNvbi1idXR0b24vaWNvbi1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJNUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBRTFHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7QUFXdkQsTUFBTSxPQUFPLG1CQUFtQjtJQVJoQztRQVNXLGFBQVEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDakMsU0FBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXlDLENBQUM7UUFDL0QsU0FBSSxHQUFHLEtBQUssQ0FBYSxHQUFHLENBQUMsQ0FBQztRQUM5QixZQUFPLEdBQUcsS0FBSyxDQUFnQixTQUFTLENBQUMsQ0FBQztRQUMxQyxTQUFJLEdBQUcsS0FBSyxDQUFhLFFBQVEsQ0FBQyxDQUFDO1FBQ25DLGVBQVUsR0FBRyxLQUFLLENBQXdCLFVBQVUsQ0FBQyxDQUFDO1FBQ3RELG1CQUFjLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLGNBQVMsR0FBRyxLQUFLLENBQXFCLFNBQVMsQ0FBQyxDQUFDO1FBQ2pELG1CQUFjLEdBQUcsS0FBSyxDQUFxQixTQUFTLENBQUMsQ0FBQztRQUN0RCxlQUFVLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDN0IsaUJBQVksR0FBRyxLQUFLLEVBQWdCLENBQUM7UUFDckMsY0FBUyxHQUFHLEtBQUssRUFBYSxDQUFDO1FBQy9CLGNBQVMsR0FBRyxLQUFLLENBQXdDLFVBQVUsQ0FBQyxDQUFDO1FBRXJFLG1CQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTdELG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRS9ELFVBQUssR0FBRyxNQUFNLEVBQThCLENBQUM7UUFFN0MsdUJBQWtCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMxQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBRXBDLE9BQU8sQ0FBQyxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsSUFBSSxPQUFPLEtBQUssUUFBUSxDQUFDLElBQUksT0FBTyxLQUFLLE1BQU0sQ0FBQztRQUM1RSxDQUFDLENBQUMsQ0FBQztLQU1KO0lBSkMsT0FBTyxDQUFDLEtBQWlDO1FBQ3ZDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDOytHQS9CVSxtQkFBbUI7bUdBQW5CLG1CQUFtQiw4eERDcEJoQyw4ckNBeUNBLG0wSEQzQlksWUFBWSxtSUFBRSxhQUFhLGlIQUFFLGNBQWM7OzRGQU0xQyxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0UsaUJBQWlCLFdBQ2xCLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLENBQUMsY0FDMUMsSUFBSSxtQkFHQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmFkZ2VDb250ZW50LCBCYWRnZVR5cGUgfSBmcm9tIFwiQGRlc2lnbi1zeXN0ZW0tcnRlL2NvcmUvY29tcG9uZW50cy9iYWRnZS9iYWRnZS5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IEJ1dHRvblR5cGUgfSBmcm9tIFwiQGRlc2lnbi1zeXN0ZW0tcnRlL2NvcmUvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmludGVyZmFjZVwiO1xuaW1wb3J0IHsgQnV0dG9uU2l6ZSwgQnV0dG9uVmFyaWFudCB9IGZyb20gXCJAZGVzaWduLXN5c3RlbS1ydGUvY29yZS9jb21wb25lbnRzL2J1dHRvbi9jb21tb24vY29tbW9uLWJ1dHRvblwiO1xuaW1wb3J0IHsgYnV0dG9uSWNvblNpemUgfSBmcm9tIFwiQGRlc2lnbi1zeXN0ZW0tcnRlL2NvcmUvY29tcG9uZW50cy9idXR0b24vY29tbW9uL2NvbW1vbi1idXR0b24uY29uc3RhbnRzXCI7XG5cbmltcG9ydCB7IEJhZGdlRGlyZWN0aXZlIH0gZnJvbSBcIi4uL2JhZGdlL2JhZGdlLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgaXNWYWxpZEljb25OYW1lIH0gZnJvbSBcIi4uL2ljb24vaWNvbi1tYXBcIjtcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi9pY29uLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgUmVndWxhckljb25JZEtleSwgVG9nZ2xhYmxlSWNvbklkS2V5IH0gZnJvbSBcIi4uL2ljb24vaWNvbi5zZXJ2aWNlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJydGUtaWNvbi1idXR0b25cIixcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSWNvbkNvbXBvbmVudCwgQmFkZ2VEaXJlY3RpdmVdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZVVybDogXCIuL2ljb24tYnV0dG9uLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsOiBcIi4vaWNvbi1idXR0b24uY29tcG9uZW50LnNjc3NcIixcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEljb25CdXR0b25Db21wb25lbnQge1xuICByZWFkb25seSBkaXNhYmxlZCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgbmFtZSA9IGlucHV0LnJlcXVpcmVkPFJlZ3VsYXJJY29uSWRLZXkgfCBUb2dnbGFibGVJY29uSWRLZXk+KCk7XG4gIHJlYWRvbmx5IHNpemUgPSBpbnB1dDxCdXR0b25TaXplPihcIm1cIik7XG4gIHJlYWRvbmx5IHZhcmlhbnQgPSBpbnB1dDxCdXR0b25WYXJpYW50PihcInByaW1hcnlcIik7XG4gIHJlYWRvbmx5IHR5cGUgPSBpbnB1dDxCdXR0b25UeXBlPihcImJ1dHRvblwiKTtcbiAgcmVhZG9ubHkgYXBwZWFyYW5jZSA9IGlucHV0PFwib3V0bGluZWRcIiB8IFwiZmlsbGVkXCI+KFwib3V0bGluZWRcIik7XG4gIHJlYWRvbmx5IGNvbXBhY3RTcGFjaW5nID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBhcmlhTGFiZWwgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHJlYWRvbmx5IGFyaWFMYWJlbGxlZEJ5ID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICByZWFkb25seSBiYWRnZUNvdW50ID0gaW5wdXQ8bnVtYmVyPigpO1xuICByZWFkb25seSBiYWRnZUNvbnRlbnQgPSBpbnB1dDxCYWRnZUNvbnRlbnQ+KCk7XG4gIHJlYWRvbmx5IGJhZGdlVHlwZSA9IGlucHV0PEJhZGdlVHlwZT4oKTtcbiAgcmVhZG9ubHkgYmFkZ2VJY29uID0gaW5wdXQ8UmVndWxhckljb25JZEtleSB8IFRvZ2dsYWJsZUljb25JZEtleT4oXCJzZXR0aW5nc1wiKTtcblxuICByZWFkb25seSBidXR0b25JY29uU2l6ZSA9IGNvbXB1dGVkKCgpID0+IGJ1dHRvbkljb25TaXplW3RoaXMuc2l6ZSgpXSk7XG5cbiAgcmVhZG9ubHkgaXNWYWxpZEljb25OYW1lID0gY29tcHV0ZWQoKCkgPT4gaXNWYWxpZEljb25OYW1lKHRoaXMubmFtZSgpKSk7XG5cbiAgcmVhZG9ubHkgY2xpY2sgPSBvdXRwdXQ8TW91c2VFdmVudCB8IEtleWJvYXJkRXZlbnQ+KCk7XG5cbiAgcmVhZG9ubHkgc2hvdWxkRGlzcGxheUJhZGdlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvdW50ID0gdGhpcy5iYWRnZUNvdW50KCk7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuYmFkZ2VDb250ZW50KCk7XG5cbiAgICByZXR1cm4gKGNvdW50ICYmIGNvdW50ID4gMCAmJiBjb250ZW50ID09PSBcIm51bWJlclwiKSB8fCBjb250ZW50ID09PSBcImljb25cIjtcbiAgfSk7XG5cbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCB8IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmNsaWNrLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCJAaWYgKHNob3VsZERpc3BsYXlCYWRnZSgpKSB7XG4gIDxidXR0b25cbiAgICAqbmdJZj1cImlzVmFsaWRJY29uTmFtZVwiXG4gICAgY2xhc3M9XCJydGUtaWNvbi1idXR0b24ge3sgdmFyaWFudCgpIH19IHNpemUte3sgc2l6ZSgpIH19XCJcbiAgICBydGVCYWRnZVxuICAgIFtjbGFzcy5jb21wYWN0LXNwYWNpbmddPVwiY29tcGFjdFNwYWNpbmcoKVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsKClcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeSgpXCJcbiAgICBbdHlwZV09XCJ0eXBlKClcIlxuICAgIFtydGVCYWRnZVR5cGVdPVwiYmFkZ2VUeXBlKCkhXCJcbiAgICBbcnRlQmFkZ2VTaXplXT1cInNpemUoKVwiXG4gICAgW3J0ZUJhZGdlQ29udGVudF09XCJzaXplKCkgPT09ICdzJyA/ICdlbXB0eScgOiBiYWRnZUNvbnRlbnQoKSFcIlxuICAgIFtydGVCYWRnZUNvdW50XT1cImJhZGdlQ291bnQoKSFcIlxuICAgIFtydGVCYWRnZUljb25dPVwiYmFkZ2VJY29uKCkhXCJcbiAgICAoY2xpY2spPVwib25DbGljaygkZXZlbnQpXCJcbiAgPlxuICAgIDxydGUtaWNvblxuICAgICAgW25hbWVdPVwibmFtZSgpXCJcbiAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2UoKVwiXG4gICAgICBbc2l6ZV09XCJidXR0b25JY29uU2l6ZSgpXCJcbiAgICAvPlxuICA8L2J1dHRvbj5cbn0gQGVsc2Uge1xuICA8YnV0dG9uXG4gICAgKm5nSWY9XCJpc1ZhbGlkSWNvbk5hbWVcIlxuICAgIGNsYXNzPVwicnRlLWljb24tYnV0dG9uIHt7IHZhcmlhbnQoKSB9fSBzaXplLXt7IHNpemUoKSB9fVwiXG4gICAgW2NsYXNzLmNvbXBhY3Qtc3BhY2luZ109XCJjb21wYWN0U3BhY2luZygpXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwoKVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5KClcIlxuICAgIFt0eXBlXT1cInR5cGUoKVwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiXG4gID5cbiAgICA8cnRlLWljb25cbiAgICAgIFtuYW1lXT1cIm5hbWUoKVwiXG4gICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlKClcIlxuICAgICAgW3NpemVdPVwiYnV0dG9uSWNvblNpemUoKVwiXG4gICAgLz5cbiAgPC9idXR0b24+XG59XG4iXX0=
|
|
@@ -34,7 +34,7 @@ export class IconButtonToggleComponent {
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconButtonToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: IconButtonToggleComponent, isStandalone: true, selector: "rte-icon-button-toggle", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, compactSpacing: { classPropertyName: "compactSpacing", publicName: "compactSpacing", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null }, defaultSelected: { classPropertyName: "defaultSelected", publicName: "defaultSelected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: "<rte-icon-button \n [size]=\"size()\" \n [name]=\"name()\" \n [compactSpacing]=\"compactSpacing()\"\n [disabled]=\"disabled()\"\n [ariaLabel]=\"ariaLabel()\"\n [ariaLabelledBy]=\"ariaLabelledBy()\"\n [type]=\"type()\"\n [variant]=\"variant()\"\n [appearance]=\"isSelected() ? 'filled' : 'outlined'\"\n (click)=\"onClick($event)\"\n/>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IconButtonComponent, selector: "rte-icon-button", inputs: ["disabled", "name", "size", "variant", "type", "appearance", "compactSpacing", "ariaLabel", "ariaLabelledBy"], outputs: ["click"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: IconButtonToggleComponent, isStandalone: true, selector: "rte-icon-button-toggle", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, compactSpacing: { classPropertyName: "compactSpacing", publicName: "compactSpacing", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: true, isRequired: false, transformFunction: null }, defaultSelected: { classPropertyName: "defaultSelected", publicName: "defaultSelected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click: "click" }, ngImport: i0, template: "<rte-icon-button \n [size]=\"size()\" \n [name]=\"name()\" \n [compactSpacing]=\"compactSpacing()\"\n [disabled]=\"disabled()\"\n [ariaLabel]=\"ariaLabel()\"\n [ariaLabelledBy]=\"ariaLabelledBy()\"\n [type]=\"type()\"\n [variant]=\"variant()\"\n [appearance]=\"isSelected() ? 'filled' : 'outlined'\"\n (click)=\"onClick($event)\"\n/>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IconButtonComponent, selector: "rte-icon-button", inputs: ["disabled", "name", "size", "variant", "type", "appearance", "compactSpacing", "ariaLabel", "ariaLabelledBy", "badgeCount", "badgeContent", "badgeType", "badgeIcon"], outputs: ["click"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
38
38
|
}
|
|
39
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconButtonToggleComponent, decorators: [{
|
|
40
40
|
type: Component,
|
|
@@ -13,10 +13,10 @@ export class LinkComponent {
|
|
|
13
13
|
this.maxWidth = input();
|
|
14
14
|
}
|
|
15
15
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: LinkComponent, isStandalone: true, selector: "rte-link", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, subtle: { classPropertyName: "subtle", publicName: "subtle", isSignal: true, isRequired: false, transformFunction: null }, externalLink: { classPropertyName: "externalLink", publicName: "externalLink", isSignal: true, isRequired: false, transformFunction: null }, reverse: { classPropertyName: "reverse", publicName: "reverse", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<a\n href=\"{{ href() }}\"\n class=\"rte-link\"\n role=\"link\"\n [ngClass]=\"{ subtle: subtle(), reverse: reverse() }\"\n [target]=\"externalLink() ? '_blank' : undefined\"\n [rel]=\"externalLink() ? 'noopener noreferrer' : null\"\n [style.max-width]=\"maxWidth() + 'px'\"\n>\n <span class=\"rte-link-label\" [style.max-width]=\"maxWidth() + 'px'\">\n {{ label() }}\n </span>\n <rte-icon\n *ngIf=\"externalLink()\"\n name=\"external-link\"\n style=\"align-self: start; margin-left: 2px\"\n [size]=\"12\"\n ></rte-icon>\n</a>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-link{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Arial;font-weight:400;font-size:14px;line-height:20px;letter-spacing:0px;align-items:center;cursor:pointer;display:inline-flex;justify-content:center}.rte-link:visited{color:var(--content-link-visited);text-decoration:underline}.rte-link:visited:hover{color:var(--content-link-visited-hover);text-decoration:none}.rte-link:visited:active{color:var(--content-link-visited-
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: LinkComponent, isStandalone: true, selector: "rte-link", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, subtle: { classPropertyName: "subtle", publicName: "subtle", isSignal: true, isRequired: false, transformFunction: null }, externalLink: { classPropertyName: "externalLink", publicName: "externalLink", isSignal: true, isRequired: false, transformFunction: null }, reverse: { classPropertyName: "reverse", publicName: "reverse", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<a\n href=\"{{ href() }}\"\n class=\"rte-link\"\n role=\"link\"\n [ngClass]=\"{ subtle: subtle(), reverse: reverse() }\"\n [target]=\"externalLink() ? '_blank' : undefined\"\n [rel]=\"externalLink() ? 'noopener noreferrer' : null\"\n [style.max-width]=\"maxWidth() + 'px'\"\n>\n <span class=\"rte-link-label\" [style.max-width]=\"maxWidth() + 'px'\">\n {{ label() }}\n </span>\n <rte-icon\n *ngIf=\"externalLink()\"\n name=\"external-link\"\n style=\"align-self: start; margin-left: 2px\"\n [size]=\"12\"\n ></rte-icon>\n</a>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-link{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Arial;font-weight:400;font-size:14px;line-height:20px;letter-spacing:0px;align-items:center;cursor:pointer;display:inline-flex;justify-content:center}.rte-link:visited{color:var(--content-link-visited-default);text-decoration:underline}.rte-link:visited:hover{color:var(--content-link-visited-hover);text-decoration:none}.rte-link:visited:active{color:var(--content-link-visited-pressed);text-decoration:underline}.rte-link:visited:focus-visible{color:var(--content-link-visited-default);text-decoration:underline;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link:not(:visited){color:var(--content-link-default)}.rte-link:not(:visited):hover{color:var(--content-link-hover);text-decoration:none}.rte-link:not(:visited):active{color:var(--content-link-pressed);text-decoration:underline}.rte-link:not(:visited):focus-visible{color:var(--content-link-default);text-decoration:underline;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link.subtle:visited{color:var(--content-primary);text-decoration:none}.rte-link.subtle:visited:hover{color:var(--content-link-secondary);text-decoration:underline}.rte-link.subtle:visited:active{color:var(--content-link-primary);text-decoration:none}.rte-link.subtle:visited:focus-visible{color:var(--content-link-primary);text-decoration:none;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link.subtle:not(:visited){color:var(--content-primary);text-decoration:none}.rte-link.subtle:not(:visited):hover{color:var(--content-secondary);text-decoration:underline}.rte-link.subtle:not(:visited):active{color:var(--content-primary);text-decoration:none}.rte-link.subtle:not(:visited):focus-visible{color:var(--content-primary);text-decoration:none;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link.subtle.reverse{color:var(--content-primary-inverse);text-decoration:none}.rte-link.subtle.reverse:hover{color:var(--content-primary-inverse);text-decoration:underline}.rte-link.subtle.reverse:focus-visible{color:var(--content-primary-inverse);text-decoration:underline;outline:1px solid var(--border-inverse);outline-offset:4px;border-radius:4px}.rte-link.reverse{color:var(--content-primary-inverse);text-decoration:underline}.rte-link.reverse:hover{color:var(--content-primary-inverse);text-decoration:none}.rte-link.reverse:focus-visible{color:var(--content-primary-inverse);text-decoration:underline;outline:1px solid var(--border-inverse);outline-offset:4px;border-radius:4px}.rte-link .rte-link-external-icon{align-self:start;margin-left:2px}.rte-link .rte-link-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "rte-icon", inputs: ["name", "size", "color", "classes", "appearance"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
17
17
|
}
|
|
18
18
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LinkComponent, decorators: [{
|
|
19
19
|
type: Component,
|
|
20
|
-
args: [{ selector: "rte-link", imports: [CommonModule, IconComponent], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n href=\"{{ href() }}\"\n class=\"rte-link\"\n role=\"link\"\n [ngClass]=\"{ subtle: subtle(), reverse: reverse() }\"\n [target]=\"externalLink() ? '_blank' : undefined\"\n [rel]=\"externalLink() ? 'noopener noreferrer' : null\"\n [style.max-width]=\"maxWidth() + 'px'\"\n>\n <span class=\"rte-link-label\" [style.max-width]=\"maxWidth() + 'px'\">\n {{ label() }}\n </span>\n <rte-icon\n *ngIf=\"externalLink()\"\n name=\"external-link\"\n style=\"align-self: start; margin-left: 2px\"\n [size]=\"12\"\n ></rte-icon>\n</a>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-link{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Arial;font-weight:400;font-size:14px;line-height:20px;letter-spacing:0px;align-items:center;cursor:pointer;display:inline-flex;justify-content:center}.rte-link:visited{color:var(--content-link-visited);text-decoration:underline}.rte-link:visited:hover{color:var(--content-link-visited-hover);text-decoration:none}.rte-link:visited:active{color:var(--content-link-visited-
|
|
20
|
+
args: [{ selector: "rte-link", imports: [CommonModule, IconComponent], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n href=\"{{ href() }}\"\n class=\"rte-link\"\n role=\"link\"\n [ngClass]=\"{ subtle: subtle(), reverse: reverse() }\"\n [target]=\"externalLink() ? '_blank' : undefined\"\n [rel]=\"externalLink() ? 'noopener noreferrer' : null\"\n [style.max-width]=\"maxWidth() + 'px'\"\n>\n <span class=\"rte-link-label\" [style.max-width]=\"maxWidth() + 'px'\">\n {{ label() }}\n </span>\n <rte-icon\n *ngIf=\"externalLink()\"\n name=\"external-link\"\n style=\"align-self: start; margin-left: 2px\"\n [size]=\"12\"\n ></rte-icon>\n</a>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-link{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Arial;font-weight:400;font-size:14px;line-height:20px;letter-spacing:0px;align-items:center;cursor:pointer;display:inline-flex;justify-content:center}.rte-link:visited{color:var(--content-link-visited-default);text-decoration:underline}.rte-link:visited:hover{color:var(--content-link-visited-hover);text-decoration:none}.rte-link:visited:active{color:var(--content-link-visited-pressed);text-decoration:underline}.rte-link:visited:focus-visible{color:var(--content-link-visited-default);text-decoration:underline;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link:not(:visited){color:var(--content-link-default)}.rte-link:not(:visited):hover{color:var(--content-link-hover);text-decoration:none}.rte-link:not(:visited):active{color:var(--content-link-pressed);text-decoration:underline}.rte-link:not(:visited):focus-visible{color:var(--content-link-default);text-decoration:underline;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link.subtle:visited{color:var(--content-primary);text-decoration:none}.rte-link.subtle:visited:hover{color:var(--content-link-secondary);text-decoration:underline}.rte-link.subtle:visited:active{color:var(--content-link-primary);text-decoration:none}.rte-link.subtle:visited:focus-visible{color:var(--content-link-primary);text-decoration:none;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link.subtle:not(:visited){color:var(--content-primary);text-decoration:none}.rte-link.subtle:not(:visited):hover{color:var(--content-secondary);text-decoration:underline}.rte-link.subtle:not(:visited):active{color:var(--content-primary);text-decoration:none}.rte-link.subtle:not(:visited):focus-visible{color:var(--content-primary);text-decoration:none;outline:1px solid var(--border-brand-focused);outline-offset:4px;border-radius:4px}.rte-link.subtle.reverse{color:var(--content-primary-inverse);text-decoration:none}.rte-link.subtle.reverse:hover{color:var(--content-primary-inverse);text-decoration:underline}.rte-link.subtle.reverse:focus-visible{color:var(--content-primary-inverse);text-decoration:underline;outline:1px solid var(--border-inverse);outline-offset:4px;border-radius:4px}.rte-link.reverse{color:var(--content-primary-inverse);text-decoration:underline}.rte-link.reverse:hover{color:var(--content-primary-inverse);text-decoration:none}.rte-link.reverse:focus-visible{color:var(--content-primary-inverse);text-decoration:underline;outline:1px solid var(--border-inverse);outline-offset:4px;border-radius:4px}.rte-link .rte-link-external-icon{align-self:start;margin-left:2px}.rte-link .rte-link-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
|
|
21
21
|
}] });
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1ydGUtbGliL3NyYy9saWIvY29tcG9uZW50cy9saW5rL2xpbmsuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbGluay9saW5rLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQVV2RCxNQUFNLE9BQU8sYUFBYTtJQVIxQjtRQVNXLFVBQUssR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEIsU0FBSSxHQUFHLEtBQUssQ0FBUyxHQUFHLENBQUMsQ0FBQztRQUMxQixXQUFNLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9CLGlCQUFZLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDaEMsYUFBUSxHQUFHLEtBQUssRUFBVSxDQUFDO0tBQ3JDOytHQVBZLGFBQWE7bUdBQWIsYUFBYSxvMEJDYjFCLDJpQkFtQkEsbWhHRFpZLFlBQVksaU9BQUUsYUFBYTs7NEZBTTFCLGFBQWE7a0JBUnpCLFNBQVM7K0JBQ0UsVUFBVSxXQUNYLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxjQUMxQixJQUFJLG1CQUdDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi9pY29uLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwicnRlLWxpbmtcIixcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSWNvbkNvbXBvbmVudF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHRlbXBsYXRlVXJsOiBcIi4vbGluay5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybDogXCIuL2xpbmsuY29tcG9uZW50LnNjc3NcIixcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExpbmtDb21wb25lbnQge1xuICByZWFkb25seSBsYWJlbCA9IGlucHV0KFwiXCIpO1xuICByZWFkb25seSBocmVmID0gaW5wdXQ8c3RyaW5nPihcIiNcIik7XG4gIHJlYWRvbmx5IHN1YnRsZSA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcmVhZG9ubHkgZXh0ZXJuYWxMaW5rID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSByZXZlcnNlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBtYXhXaWR0aCA9IGlucHV0PG51bWJlcj4oKTtcbn1cbiIsIjxhXG4gIGhyZWY9XCJ7eyBocmVmKCkgfX1cIlxuICBjbGFzcz1cInJ0ZS1saW5rXCJcbiAgcm9sZT1cImxpbmtcIlxuICBbbmdDbGFzc109XCJ7IHN1YnRsZTogc3VidGxlKCksIHJldmVyc2U6IHJldmVyc2UoKSB9XCJcbiAgW3RhcmdldF09XCJleHRlcm5hbExpbmsoKSA/ICdfYmxhbmsnIDogdW5kZWZpbmVkXCJcbiAgW3JlbF09XCJleHRlcm5hbExpbmsoKSA/ICdub29wZW5lciBub3JlZmVycmVyJyA6IG51bGxcIlxuICBbc3R5bGUubWF4LXdpZHRoXT1cIm1heFdpZHRoKCkgKyAncHgnXCJcbj5cbiAgPHNwYW4gY2xhc3M9XCJydGUtbGluay1sYWJlbFwiIFtzdHlsZS5tYXgtd2lkdGhdPVwibWF4V2lkdGgoKSArICdweCdcIj5cbiAgICB7eyBsYWJlbCgpIH19XG4gIDwvc3Bhbj5cbiAgPHJ0ZS1pY29uXG4gICAgKm5nSWY9XCJleHRlcm5hbExpbmsoKVwiXG4gICAgbmFtZT1cImV4dGVybmFsLWxpbmtcIlxuICAgIHN0eWxlPVwiYWxpZ24tc2VsZjogc3RhcnQ7IG1hcmdpbi1sZWZ0OiAycHhcIlxuICAgIFtzaXplXT1cIjEyXCJcbiAgPjwvcnRlLWljb24+XG48L2E+XG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Directive, ElementRef, HostListener, inject, output } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ModalTriggerDirective {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.elementRef = inject(ElementRef);
|
|
6
|
+
this.modalTriggerKeyDown = output();
|
|
7
|
+
this.modalTriggerClicked = output();
|
|
8
|
+
}
|
|
9
|
+
onModalTriggerClicked(event) {
|
|
10
|
+
this.modalTriggerClicked.emit(event);
|
|
11
|
+
}
|
|
12
|
+
onKeyDown(event) {
|
|
13
|
+
this.modalTriggerKeyDown.emit(event);
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
16
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ModalTriggerDirective, isStandalone: true, selector: "[rteModalTrigger]", outputs: { modalTriggerKeyDown: "modalTriggerKeyDown", modalTriggerClicked: "modalTriggerClicked" }, host: { listeners: { "click": "onModalTriggerClicked($event)", "keydown": "onKeyDown($event)" } }, ngImport: i0 }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalTriggerDirective, decorators: [{
|
|
19
|
+
type: Directive,
|
|
20
|
+
args: [{
|
|
21
|
+
selector: "[rteModalTrigger]",
|
|
22
|
+
standalone: true,
|
|
23
|
+
}]
|
|
24
|
+
}], propDecorators: { onModalTriggerClicked: [{
|
|
25
|
+
type: HostListener,
|
|
26
|
+
args: ["click", ["$event"]]
|
|
27
|
+
}], onKeyDown: [{
|
|
28
|
+
type: HostListener,
|
|
29
|
+
args: ["keydown", ["$event"]]
|
|
30
|
+
}] } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtdHJpZ2dlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kcy1ydGUtbGliL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC10cmlnZ2VyL21vZGFsLXRyaWdnZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1wRixNQUFNLE9BQU8scUJBQXFCO0lBSmxDO1FBS1csZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVoQyx3QkFBbUIsR0FBRyxNQUFNLEVBQWlCLENBQUM7UUFFOUMsd0JBQW1CLEdBQUcsTUFBTSxFQUFTLENBQUM7S0FXaEQ7SUFSQyxxQkFBcUIsQ0FBQyxLQUFZO1FBQ2hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUdELFNBQVMsQ0FBQyxLQUFvQjtRQUM1QixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7K0dBZlUscUJBQXFCO21HQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhCQVNDLHFCQUFxQjtzQkFEcEIsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBTWpDLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBvdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW3J0ZU1vZGFsVHJpZ2dlcl1cIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxUcmlnZ2VyRGlyZWN0aXZlIHtcbiAgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICByZWFkb25seSBtb2RhbFRyaWdnZXJLZXlEb3duID0gb3V0cHV0PEtleWJvYXJkRXZlbnQ+KCk7XG5cbiAgcmVhZG9ubHkgbW9kYWxUcmlnZ2VyQ2xpY2tlZCA9IG91dHB1dDxFdmVudD4oKTtcblxuICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIiwgW1wiJGV2ZW50XCJdKVxuICBvbk1vZGFsVHJpZ2dlckNsaWNrZWQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbFRyaWdnZXJDbGlja2VkLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcihcImtleWRvd25cIiwgW1wiJGV2ZW50XCJdKVxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsVHJpZ2dlcktleURvd24uZW1pdChldmVudCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { CommonModule } from "@angular/common";
|
|
2
|
+
import { Component, input, viewChild, output, inject, signal, } from "@angular/core";
|
|
3
|
+
import { IconSize } from "@design-system-rte/core/components/icon/icon.constants";
|
|
4
|
+
import { FocusTrapService } from "../../services/focus-trap.service";
|
|
5
|
+
import { DividerComponent } from "../divider/divider.component";
|
|
6
|
+
import { IconComponent } from "../icon/icon.component";
|
|
7
|
+
import { IconButtonComponent } from "../icon-button/icon-button.component";
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@angular/common";
|
|
10
|
+
export class ModalComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.id = input();
|
|
13
|
+
this.icon = input();
|
|
14
|
+
this.iconAppearance = input("outlined");
|
|
15
|
+
this.title = input();
|
|
16
|
+
this.description = input();
|
|
17
|
+
this.secondaryButtonLabel = input();
|
|
18
|
+
this.isOpen = input(false);
|
|
19
|
+
this.size = input("m");
|
|
20
|
+
this.ariaDescribedby = input(undefined);
|
|
21
|
+
this.primaryButton = input(null);
|
|
22
|
+
this.secondaryButton = input(null);
|
|
23
|
+
this.customContent = input(null);
|
|
24
|
+
this.elementRef = viewChild("modal");
|
|
25
|
+
this.focusTrap = inject(FocusTrapService);
|
|
26
|
+
this.closeModal = output();
|
|
27
|
+
this.iconSize = signal(IconSize["xl"]);
|
|
28
|
+
}
|
|
29
|
+
ngAfterViewInit() {
|
|
30
|
+
const native = this.elementRef()?.nativeElement;
|
|
31
|
+
if (native) {
|
|
32
|
+
this.focusTrap.activate(native);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
ngOnDestroy() {
|
|
36
|
+
this.focusTrap.deactivate();
|
|
37
|
+
}
|
|
38
|
+
onClose() {
|
|
39
|
+
this.closeModal.emit();
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: ModalComponent, isStandalone: true, selector: "rte-modal", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, iconAppearance: { classPropertyName: "iconAppearance", publicName: "iconAppearance", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, secondaryButtonLabel: { classPropertyName: "secondaryButtonLabel", publicName: "secondaryButtonLabel", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedby: { classPropertyName: "ariaDescribedby", publicName: "ariaDescribedby", isSignal: true, isRequired: false, transformFunction: null }, primaryButton: { classPropertyName: "primaryButton", publicName: "primaryButton", isSignal: true, isRequired: false, transformFunction: null }, secondaryButton: { classPropertyName: "secondaryButton", publicName: "secondaryButton", isSignal: true, isRequired: false, transformFunction: null }, customContent: { classPropertyName: "customContent", publicName: "customContent", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closeModal: "closeModal" }, viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["modal"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"rte-modal-wrapper\">\n <div class=\"rte-modal-backdrop\" [attr.data-open]=\"isOpen()\"></div>\n <dialog\n #modal\n class=\"rte-modal-container\"\n [attr.aria-modal]=\"true\"\n [attr.aria-labelledby]=\"id() + '-modal-title'\"\n [attr.aria-describedby]=\"\n description() ? id() + '-modal-desc' : ariaDescribedby()\n \"\n [attr.data-size]=\"size()\"\n [attr.data-open]=\"isOpen()\"\n >\n <div class=\"rte-modal-header\">\n <div class=\"rte-modal-header-text\">\n <rte-icon\n *ngIf=\"icon()\"\n [name]=\"icon() ?? ''\"\n [size]=\"iconSize()\"\n [appearance]=\"iconAppearance()\"\n />\n <h2 class=\"rte-modal-title\" [id]=\"id() + '-modal-title'\">\n {{ title() }}\n </h2>\n <rte-icon-button\n data-testid=\"modal-close-button\"\n name=\"close\"\n size=\"l\"\n class=\"close-icon\"\n variant=\"neutral\"\n [ariaLabel]=\"'Close modal ' + id()\"\n (click)=\"onClose()\"\n />\n </div>\n <rte-divider />\n </div>\n <div *ngIf=\"description()\" class=\"rte-modal-content\">\n <p class=\"rte-modal-content-description\" [id]=\"id() + '-modal-desc'\">\n {{ description() }}\n </p>\n <ng-container [ngTemplateOutlet]=\"customContent()\"></ng-container>\n </div>\n <div class=\"rte-modal-footer\">\n <ng-container [ngTemplateOutlet]=\"secondaryButton()\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"primaryButton()\"></ng-container>\n </div>\n </dialog>\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;opacity:0;background-color:#201f1f80;transition:opacity .15s ease-out}.rte-modal-backdrop[data-open=true]{opacity:1}.rte-modal-container{box-shadow:0 8px 16px 0 var(--elevation-shadow-key),0 0 2px 0 var(--elevation-shadow-ambient);background:linear-gradient(0deg,var(--elevation-surface-shadow-4) 0%,var(--elevation-surface-shadow-4) 100%);border:none;box-sizing:border-box;position:absolute;max-height:90vh;top:50%;transform:translateY(-50%) scale(.98);display:flex;width:496px;padding:24px;flex-direction:column;align-items:flex-start;gap:24px;background-color:var(--background-default);border-radius:8px;opacity:0;transition:opacity .15s ease-in,transform .15s ease-in}.rte-modal-container[data-open=true]{opacity:1;transform:translateY(-50%) scale(1)}.rte-modal-container[data-size=s]{width:656px}.rte-modal-container[data-size=m]{width:936px}.rte-modal-container[data-size=l]{width:1168px}.rte-modal-container[data-size=xl]{width:1328px}.rte-modal-container .rte-modal-header{display:flex;flex-direction:column;gap:8px;width:100%;flex:0 0 auto}.rte-modal-container .rte-modal-header .rte-modal-header-text{display:flex;flex-direction:row;align-items:center;gap:8px}.rte-modal-container .rte-modal-header .rte-modal-header-text .rte-modal-title{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Nunito;font-weight:600;font-size:24px;line-height:32px;letter-spacing:-.5px;margin:0;overflow:hidden;color:var(--content-primary);text-overflow:ellipsis;flex:1 1 0}.rte-modal-container .rte-modal-content{display:flex;padding:1px;flex-direction:column;align-items:flex-start;gap:16px;color:var(--content-secondary);width:100%;overflow:auto}.rte-modal-container .rte-modal-content .rte-modal-content-description{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Arial;font-weight:400;font-size:14px;line-height:20px;letter-spacing:0px;margin:0;color:var(--content-secondary)}.rte-modal-container .rte-modal-footer{display:flex;padding:0;justify-content:flex-end;align-items:center;gap:24px;align-self:stretch;flex:0 0 auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconButtonComponent, selector: "rte-icon-button", inputs: ["disabled", "name", "size", "variant", "type", "appearance", "compactSpacing", "ariaLabel", "ariaLabelledBy", "badgeCount", "badgeContent", "badgeType", "badgeIcon"], outputs: ["click"] }, { kind: "component", type: IconComponent, selector: "rte-icon", inputs: ["name", "size", "color", "classes", "appearance"] }, { kind: "component", type: DividerComponent, selector: "rte-divider", inputs: ["orientation", "thickness", "appearance", "endPoint"] }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: "rte-modal", imports: [CommonModule, IconButtonComponent, IconComponent, DividerComponent], standalone: true, template: "<div class=\"rte-modal-wrapper\">\n <div class=\"rte-modal-backdrop\" [attr.data-open]=\"isOpen()\"></div>\n <dialog\n #modal\n class=\"rte-modal-container\"\n [attr.aria-modal]=\"true\"\n [attr.aria-labelledby]=\"id() + '-modal-title'\"\n [attr.aria-describedby]=\"\n description() ? id() + '-modal-desc' : ariaDescribedby()\n \"\n [attr.data-size]=\"size()\"\n [attr.data-open]=\"isOpen()\"\n >\n <div class=\"rte-modal-header\">\n <div class=\"rte-modal-header-text\">\n <rte-icon\n *ngIf=\"icon()\"\n [name]=\"icon() ?? ''\"\n [size]=\"iconSize()\"\n [appearance]=\"iconAppearance()\"\n />\n <h2 class=\"rte-modal-title\" [id]=\"id() + '-modal-title'\">\n {{ title() }}\n </h2>\n <rte-icon-button\n data-testid=\"modal-close-button\"\n name=\"close\"\n size=\"l\"\n class=\"close-icon\"\n variant=\"neutral\"\n [ariaLabel]=\"'Close modal ' + id()\"\n (click)=\"onClose()\"\n />\n </div>\n <rte-divider />\n </div>\n <div *ngIf=\"description()\" class=\"rte-modal-content\">\n <p class=\"rte-modal-content-description\" [id]=\"id() + '-modal-desc'\">\n {{ description() }}\n </p>\n <ng-container [ngTemplateOutlet]=\"customContent()\"></ng-container>\n </div>\n <div class=\"rte-modal-footer\">\n <ng-container [ngTemplateOutlet]=\"secondaryButton()\"></ng-container>\n <ng-container [ngTemplateOutlet]=\"primaryButton()\"></ng-container>\n </div>\n </dialog>\n</div>\n", styles: ["@import\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:wght,FILL,GRAD@400,0,0&display=swap\";@import\"https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap\";.rte-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;opacity:0;background-color:#201f1f80;transition:opacity .15s ease-out}.rte-modal-backdrop[data-open=true]{opacity:1}.rte-modal-container{box-shadow:0 8px 16px 0 var(--elevation-shadow-key),0 0 2px 0 var(--elevation-shadow-ambient);background:linear-gradient(0deg,var(--elevation-surface-shadow-4) 0%,var(--elevation-surface-shadow-4) 100%);border:none;box-sizing:border-box;position:absolute;max-height:90vh;top:50%;transform:translateY(-50%) scale(.98);display:flex;width:496px;padding:24px;flex-direction:column;align-items:flex-start;gap:24px;background-color:var(--background-default);border-radius:8px;opacity:0;transition:opacity .15s ease-in,transform .15s ease-in}.rte-modal-container[data-open=true]{opacity:1;transform:translateY(-50%) scale(1)}.rte-modal-container[data-size=s]{width:656px}.rte-modal-container[data-size=m]{width:936px}.rte-modal-container[data-size=l]{width:1168px}.rte-modal-container[data-size=xl]{width:1328px}.rte-modal-container .rte-modal-header{display:flex;flex-direction:column;gap:8px;width:100%;flex:0 0 auto}.rte-modal-container .rte-modal-header .rte-modal-header-text{display:flex;flex-direction:row;align-items:center;gap:8px}.rte-modal-container .rte-modal-header .rte-modal-header-text .rte-modal-title{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Nunito;font-weight:600;font-size:24px;line-height:32px;letter-spacing:-.5px;margin:0;overflow:hidden;color:var(--content-primary);text-overflow:ellipsis;flex:1 1 0}.rte-modal-container .rte-modal-content{display:flex;padding:1px;flex-direction:column;align-items:flex-start;gap:16px;color:var(--content-secondary);width:100%;overflow:auto}.rte-modal-container .rte-modal-content .rte-modal-content-description{font-feature-settings:\"liga\" off,\"clig\" off;font-style:normal;font-family:Arial;font-weight:400;font-size:14px;line-height:20px;letter-spacing:0px;margin:0;color:var(--content-secondary)}.rte-modal-container .rte-modal-footer{display:flex;padding:0;justify-content:flex-end;align-items:center;gap:24px;align-self:stretch;flex:0 0 auto}\n"] }]
|
|
47
|
+
}], ctorParameters: () => [] });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUdMLFNBQVMsRUFFVCxNQUFNLEVBQ04sTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFFbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFckUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7QUFTM0UsTUFBTSxPQUFPLGNBQWM7SUFtQnpCO1FBbEJTLE9BQUUsR0FBRyxLQUFLLEVBQXNCLENBQUM7UUFDakMsU0FBSSxHQUFHLEtBQUssRUFBc0IsQ0FBQztRQUNuQyxtQkFBYyxHQUFHLEtBQUssQ0FBd0IsVUFBVSxDQUFDLENBQUM7UUFDMUQsVUFBSyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQ3hCLGdCQUFXLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDOUIseUJBQW9CLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDdkMsV0FBTSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUMvQixTQUFJLEdBQUcsS0FBSyxDQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLG9CQUFlLEdBQUcsS0FBSyxDQUFxQixTQUFTLENBQUMsQ0FBQztRQUV2RCxrQkFBYSxHQUFHLEtBQUssQ0FBc0MsSUFBSSxDQUFDLENBQUM7UUFDakUsb0JBQWUsR0FBRyxLQUFLLENBQXNDLElBQUksQ0FBQyxDQUFDO1FBQ25FLGtCQUFhLEdBQUcsS0FBSyxDQUE4QixJQUFJLENBQUMsQ0FBQztRQUVqRCxlQUFVLEdBQUcsU0FBUyxDQUE2QixPQUFPLENBQUMsQ0FBQztRQUVyRSxjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFJcEMsZUFBVSxHQUFHLE1BQU0sRUFBUSxDQUFDO1FBRTVCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFKNUIsQ0FBQztJQU1oQixlQUFlO1FBQ2IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLGFBQWEsQ0FBQztRQUNoRCxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEMsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQzsrR0F0Q1UsY0FBYzttR0FBZCxjQUFjLHUwREM3QjNCLHNsREFnREEseTNFRHhCWSxZQUFZLDBTQUFFLG1CQUFtQixnUUFBRSxhQUFhLGlIQUFFLGdCQUFnQjs7NEZBS2pFLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0UsV0FBVyxXQUNaLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxjQUNqRSxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBpbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIE9uRGVzdHJveSxcbiAgdmlld0NoaWxkLFxuICBBZnRlclZpZXdJbml0LFxuICBvdXRwdXQsXG4gIGluamVjdCxcbiAgc2lnbmFsLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU2l6ZSB9IGZyb20gXCJAZGVzaWduLXN5c3RlbS1ydGUvY29yZS9jb21wb25lbnRzL2NvbW1vbi9jb21tb24tdHlwZXNcIjtcbmltcG9ydCB7IEljb25TaXplIH0gZnJvbSBcIkBkZXNpZ24tc3lzdGVtLXJ0ZS9jb3JlL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbnN0YW50c1wiO1xuXG5pbXBvcnQgeyBGb2N1c1RyYXBTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2ZvY3VzLXRyYXAuc2VydmljZVwiO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSBcIi4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSBcIi4uL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnRcIjtcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tIFwiLi4vaWNvbi9pY29uLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgSWNvbkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuLi9pY29uLWJ1dHRvbi9pY29uLWJ1dHRvbi5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInJ0ZS1tb2RhbFwiLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJY29uQnV0dG9uQ29tcG9uZW50LCBJY29uQ29tcG9uZW50LCBEaXZpZGVyQ29tcG9uZW50XSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGVVcmw6IFwiLi9tb2RhbC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybDogXCIuL21vZGFsLmNvbXBvbmVudC5zY3NzXCIsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgaWQgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIHJlYWRvbmx5IGljb24gPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIHJlYWRvbmx5IGljb25BcHBlYXJhbmNlID0gaW5wdXQ8XCJvdXRsaW5lZFwiIHwgXCJmaWxsZWRcIj4oXCJvdXRsaW5lZFwiKTtcbiAgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uID0gaW5wdXQ8c3RyaW5nPigpO1xuICByZWFkb25seSBzZWNvbmRhcnlCdXR0b25MYWJlbCA9IGlucHV0PHN0cmluZz4oKTtcbiAgcmVhZG9ubHkgaXNPcGVuID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBzaXplID0gaW5wdXQ8U2l6ZT4oXCJtXCIpO1xuICByZWFkb25seSBhcmlhRGVzY3JpYmVkYnkgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgcHJpbWFyeUJ1dHRvbiA9IGlucHV0PFRlbXBsYXRlUmVmPEJ1dHRvbkNvbXBvbmVudD4gfCBudWxsPihudWxsKTtcbiAgcmVhZG9ubHkgc2Vjb25kYXJ5QnV0dG9uID0gaW5wdXQ8VGVtcGxhdGVSZWY8QnV0dG9uQ29tcG9uZW50PiB8IG51bGw+KG51bGwpO1xuICByZWFkb25seSBjdXN0b21Db250ZW50ID0gaW5wdXQ8VGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4+KFwibW9kYWxcIik7XG5cbiAgcHJpdmF0ZSBmb2N1c1RyYXAgPSBpbmplY3QoRm9jdXNUcmFwU2VydmljZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHJlYWRvbmx5IGNsb3NlTW9kYWwgPSBvdXRwdXQ8dm9pZD4oKTtcblxuICByZWFkb25seSBpY29uU2l6ZSA9IHNpZ25hbChJY29uU2l6ZVtcInhsXCJdKTtcblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgbmF0aXZlID0gdGhpcy5lbGVtZW50UmVmKCk/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKG5hdGl2ZSkge1xuICAgICAgdGhpcy5mb2N1c1RyYXAuYWN0aXZhdGUobmF0aXZlKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmZvY3VzVHJhcC5kZWFjdGl2YXRlKCk7XG4gIH1cblxuICBvbkNsb3NlKCkge1xuICAgIHRoaXMuY2xvc2VNb2RhbC5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJydGUtbW9kYWwtd3JhcHBlclwiPlxuICA8ZGl2IGNsYXNzPVwicnRlLW1vZGFsLWJhY2tkcm9wXCIgW2F0dHIuZGF0YS1vcGVuXT1cImlzT3BlbigpXCI+PC9kaXY+XG4gIDxkaWFsb2dcbiAgICAjbW9kYWxcbiAgICBjbGFzcz1cInJ0ZS1tb2RhbC1jb250YWluZXJcIlxuICAgIFthdHRyLmFyaWEtbW9kYWxdPVwidHJ1ZVwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImlkKCkgKyAnLW1vZGFsLXRpdGxlJ1wiXG4gICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJcbiAgICAgIGRlc2NyaXB0aW9uKCkgPyBpZCgpICsgJy1tb2RhbC1kZXNjJyA6IGFyaWFEZXNjcmliZWRieSgpXG4gICAgXCJcbiAgICBbYXR0ci5kYXRhLXNpemVdPVwic2l6ZSgpXCJcbiAgICBbYXR0ci5kYXRhLW9wZW5dPVwiaXNPcGVuKClcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cInJ0ZS1tb2RhbC1oZWFkZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJydGUtbW9kYWwtaGVhZGVyLXRleHRcIj5cbiAgICAgICAgPHJ0ZS1pY29uXG4gICAgICAgICAgKm5nSWY9XCJpY29uKClcIlxuICAgICAgICAgIFtuYW1lXT1cImljb24oKSA/PyAnJ1wiXG4gICAgICAgICAgW3NpemVdPVwiaWNvblNpemUoKVwiXG4gICAgICAgICAgW2FwcGVhcmFuY2VdPVwiaWNvbkFwcGVhcmFuY2UoKVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxoMiBjbGFzcz1cInJ0ZS1tb2RhbC10aXRsZVwiIFtpZF09XCJpZCgpICsgJy1tb2RhbC10aXRsZSdcIj5cbiAgICAgICAgICB7eyB0aXRsZSgpIH19XG4gICAgICAgIDwvaDI+XG4gICAgICAgIDxydGUtaWNvbi1idXR0b25cbiAgICAgICAgICBkYXRhLXRlc3RpZD1cIm1vZGFsLWNsb3NlLWJ1dHRvblwiXG4gICAgICAgICAgbmFtZT1cImNsb3NlXCJcbiAgICAgICAgICBzaXplPVwibFwiXG4gICAgICAgICAgY2xhc3M9XCJjbG9zZS1pY29uXCJcbiAgICAgICAgICB2YXJpYW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgW2FyaWFMYWJlbF09XCInQ2xvc2UgbW9kYWwgJyArIGlkKClcIlxuICAgICAgICAgIChjbGljayk9XCJvbkNsb3NlKClcIlxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8cnRlLWRpdmlkZXIgLz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiZGVzY3JpcHRpb24oKVwiIGNsYXNzPVwicnRlLW1vZGFsLWNvbnRlbnRcIj5cbiAgICAgIDxwIGNsYXNzPVwicnRlLW1vZGFsLWNvbnRlbnQtZGVzY3JpcHRpb25cIiBbaWRdPVwiaWQoKSArICctbW9kYWwtZGVzYydcIj5cbiAgICAgICAge3sgZGVzY3JpcHRpb24oKSB9fVxuICAgICAgPC9wPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjdXN0b21Db250ZW50KClcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicnRlLW1vZGFsLWZvb3RlclwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzZWNvbmRhcnlCdXR0b24oKVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJwcmltYXJ5QnV0dG9uKClcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaWFsb2c+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { contentChild, Directive, ElementRef, inject, input, ViewContainerRef, } from "@angular/core";
|
|
2
|
+
import { ESCAPE_KEY } from "@design-system-rte/core/constants/keyboard/keyboard.constants";
|
|
3
|
+
import { OverlayService } from "../../services/overlay.service";
|
|
4
|
+
import { ModalTriggerDirective } from "./modal-trigger/modal-trigger.directive";
|
|
5
|
+
import { ModalComponent } from "./modal.component";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class ModalDirective {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.modalCompRef = null;
|
|
10
|
+
this.elementRef = inject(ElementRef);
|
|
11
|
+
this.viewContainerRef = inject(ViewContainerRef);
|
|
12
|
+
this.trigger = contentChild(ModalTriggerDirective);
|
|
13
|
+
this.rteModalId = input();
|
|
14
|
+
this.rteModalIcon = input();
|
|
15
|
+
this.rteModalIconAppearance = input("outlined");
|
|
16
|
+
this.rteModalTitle = input();
|
|
17
|
+
this.rteModalDescription = input();
|
|
18
|
+
this.rteModalIsOpen = input(false);
|
|
19
|
+
this.rteModalSize = input("m");
|
|
20
|
+
this.rteModalAriaDescribedby = input();
|
|
21
|
+
this.rteModalCloseOnClickOutside = input(true);
|
|
22
|
+
this.primaryButton = contentChild.required("primaryButton");
|
|
23
|
+
this.secondaryButton = contentChild("secondaryButton");
|
|
24
|
+
this.customContent = contentChild("customContent");
|
|
25
|
+
this.modalElement = null;
|
|
26
|
+
this.onMouseDown = (e) => this.handleClickAway(e);
|
|
27
|
+
this.onKeyDown = (e) => this.handleKeydown(e);
|
|
28
|
+
this.overlayService = inject(OverlayService);
|
|
29
|
+
this.hostElement = this.elementRef.nativeElement;
|
|
30
|
+
}
|
|
31
|
+
onTrigger() {
|
|
32
|
+
this.showModal();
|
|
33
|
+
}
|
|
34
|
+
ngAfterContentInit() {
|
|
35
|
+
document.addEventListener("mousedown", this.onMouseDown);
|
|
36
|
+
document.addEventListener("keydown", this.onKeyDown);
|
|
37
|
+
if (this.trigger()) {
|
|
38
|
+
this.trigger()?.modalTriggerClicked.subscribe(() => {
|
|
39
|
+
this.onTrigger();
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
ngOnDestroy() {
|
|
44
|
+
this.destroyModal();
|
|
45
|
+
}
|
|
46
|
+
showModal() {
|
|
47
|
+
if (this.modalCompRef) {
|
|
48
|
+
this.modalCompRef.destroy();
|
|
49
|
+
}
|
|
50
|
+
if (!this.primaryButton()) {
|
|
51
|
+
console.warn("Primary button required, add it as child to the modal directive.");
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
this.modalCompRef = this.overlayService.create(ModalComponent, this.viewContainerRef, true);
|
|
55
|
+
this.modalCompRef?.instance.closeModal.subscribe(() => {
|
|
56
|
+
this.closeModal();
|
|
57
|
+
});
|
|
58
|
+
this.modalElement = this.modalCompRef?.location.nativeElement.children[0].children[1];
|
|
59
|
+
this.assignInputsValues();
|
|
60
|
+
}
|
|
61
|
+
handleKeydown(event) {
|
|
62
|
+
if (event.key === ESCAPE_KEY && this.rteModalCloseOnClickOutside()) {
|
|
63
|
+
event.preventDefault();
|
|
64
|
+
this.closeModal();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
assignInputsValues() {
|
|
68
|
+
if (this.modalCompRef) {
|
|
69
|
+
this.modalCompRef.setInput("id", this.rteModalId());
|
|
70
|
+
this.modalCompRef.setInput("icon", this.rteModalIcon());
|
|
71
|
+
this.modalCompRef.setInput("iconAppearance", this.rteModalIconAppearance());
|
|
72
|
+
this.modalCompRef.setInput("title", this.rteModalTitle());
|
|
73
|
+
this.modalCompRef.setInput("description", this.rteModalDescription());
|
|
74
|
+
this.modalCompRef.setInput("size", this.rteModalSize());
|
|
75
|
+
this.modalCompRef.setInput("ariaDescribedby", this.rteModalAriaDescribedby());
|
|
76
|
+
this.modalCompRef.setInput("primaryButton", this.primaryButton());
|
|
77
|
+
this.modalCompRef.setInput("secondaryButton", this.secondaryButton());
|
|
78
|
+
this.modalCompRef.setInput("customContent", this.customContent());
|
|
79
|
+
requestAnimationFrame(() => {
|
|
80
|
+
requestAnimationFrame(() => {
|
|
81
|
+
this.modalCompRef?.setInput("isOpen", true);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
handleClickAway(event) {
|
|
87
|
+
const elements = [this.hostElement, this.modalElement];
|
|
88
|
+
if (elements.some((element) => !element))
|
|
89
|
+
return;
|
|
90
|
+
const shouldIgnore = elements.some((element) => element.contains(event.target));
|
|
91
|
+
if (!shouldIgnore && this.rteModalCloseOnClickOutside()) {
|
|
92
|
+
this.closeModal();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
closeModal() {
|
|
96
|
+
if (this.modalCompRef) {
|
|
97
|
+
this.modalCompRef.setInput("isOpen", false);
|
|
98
|
+
setTimeout(() => this.destroyModal(), 200);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
destroyModal() {
|
|
102
|
+
if (this.modalCompRef) {
|
|
103
|
+
this.modalCompRef.destroy();
|
|
104
|
+
this.modalCompRef = null;
|
|
105
|
+
this.overlayService.destroy();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
109
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "18.2.14", type: ModalDirective, isStandalone: true, selector: "[rteModal]", inputs: { rteModalId: { classPropertyName: "rteModalId", publicName: "rteModalId", isSignal: true, isRequired: false, transformFunction: null }, rteModalIcon: { classPropertyName: "rteModalIcon", publicName: "rteModalIcon", isSignal: true, isRequired: false, transformFunction: null }, rteModalIconAppearance: { classPropertyName: "rteModalIconAppearance", publicName: "rteModalIconAppearance", isSignal: true, isRequired: false, transformFunction: null }, rteModalTitle: { classPropertyName: "rteModalTitle", publicName: "rteModalTitle", isSignal: true, isRequired: false, transformFunction: null }, rteModalDescription: { classPropertyName: "rteModalDescription", publicName: "rteModalDescription", isSignal: true, isRequired: false, transformFunction: null }, rteModalIsOpen: { classPropertyName: "rteModalIsOpen", publicName: "rteModalIsOpen", isSignal: true, isRequired: false, transformFunction: null }, rteModalSize: { classPropertyName: "rteModalSize", publicName: "rteModalSize", isSignal: true, isRequired: false, transformFunction: null }, rteModalAriaDescribedby: { classPropertyName: "rteModalAriaDescribedby", publicName: "rteModalAriaDescribedby", isSignal: true, isRequired: false, transformFunction: null }, rteModalCloseOnClickOutside: { classPropertyName: "rteModalCloseOnClickOutside", publicName: "rteModalCloseOnClickOutside", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "trigger", first: true, predicate: ModalTriggerDirective, descendants: true, isSignal: true }, { propertyName: "primaryButton", first: true, predicate: ["primaryButton"], descendants: true, isSignal: true }, { propertyName: "secondaryButton", first: true, predicate: ["secondaryButton"], descendants: true, isSignal: true }, { propertyName: "customContent", first: true, predicate: ["customContent"], descendants: true, isSignal: true }], ngImport: i0 }); }
|
|
110
|
+
}
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalDirective, decorators: [{
|
|
112
|
+
type: Directive,
|
|
113
|
+
args: [{
|
|
114
|
+
selector: "[rteModal]",
|
|
115
|
+
standalone: true,
|
|
116
|
+
}]
|
|
117
|
+
}], ctorParameters: () => [] });
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxZQUFZLEVBQ1osU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0RBQStELENBQUM7QUFFM0YsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBR2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGNBQWM7SUE2QnpCO1FBNUJRLGlCQUFZLEdBQXdDLElBQUksQ0FBQztRQUl6RCxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRTNDLFlBQU8sR0FBRyxZQUFZLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUU5QyxlQUFVLEdBQUcsS0FBSyxFQUFzQixDQUFDO1FBQ3pDLGlCQUFZLEdBQUcsS0FBSyxFQUFzQixDQUFDO1FBQzNDLDJCQUFzQixHQUFHLEtBQUssQ0FBd0IsVUFBVSxDQUFDLENBQUM7UUFDbEUsa0JBQWEsR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUNoQyx3QkFBbUIsR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUN0QyxtQkFBYyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUN2QyxpQkFBWSxHQUFHLEtBQUssQ0FBTyxHQUFHLENBQUMsQ0FBQztRQUNoQyw0QkFBdUIs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bnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50UmVmLFxuICBjb250ZW50Q2hpbGQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgT25EZXN0cm95LFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU2l6ZSB9IGZyb20gXCJAZGVzaWduLXN5c3RlbS1ydGUvY29yZS9jb21wb25lbnRzL2NvbW1vbi9jb21tb24tdHlwZXNcIjtcbmltcG9ydCB7IEVTQ0FQRV9LRVkgfSBmcm9tIFwiQGRlc2lnbi1zeXN0ZW0tcnRlL2NvcmUvY29uc3RhbnRzL2tleWJvYXJkL2tleWJvYXJkLmNvbnN0YW50c1wiO1xuXG5pbXBvcnQgeyBPdmVybGF5U2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9vdmVybGF5LnNlcnZpY2VcIjtcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gXCIuLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudFwiO1xuXG5pbXBvcnQgeyBNb2RhbFRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tIFwiLi9tb2RhbC10cmlnZ2VyL21vZGFsLXRyaWdnZXIuZGlyZWN0aXZlXCI7XG5pbXBvcnQgeyBNb2RhbENvbXBvbmVudCB9IGZyb20gXCIuL21vZGFsLmNvbXBvbmVudFwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiW3J0ZU1vZGFsXVwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgbW9kYWxDb21wUmVmOiBDb21wb25lbnRSZWY8TW9kYWxDb21wb25lbnQ+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIG92ZXJsYXlTZXJ2aWNlOiBPdmVybGF5U2VydmljZTtcblxuICBwcml2YXRlIGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZiA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcblxuICByZWFkb25seSB0cmlnZ2VyID0gY29udGVudENoaWxkKE1vZGFsVHJpZ2dlckRpcmVjdGl2ZSk7XG5cbiAgcmVhZG9ubHkgcnRlTW9kYWxJZCA9IGlucHV0PHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcbiAgcmVhZG9ubHkgcnRlTW9kYWxJY29uID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICByZWFkb25seSBydGVNb2RhbEljb25BcHBlYXJhbmNlID0gaW5wdXQ8XCJvdXRsaW5lZFwiIHwgXCJmaWxsZWRcIj4oXCJvdXRsaW5lZFwiKTtcbiAgcmVhZG9ubHkgcnRlTW9kYWxUaXRsZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgcmVhZG9ubHkgcnRlTW9kYWxEZXNjcmlwdGlvbiA9IGlucHV0PHN0cmluZz4oKTtcbiAgcmVhZG9ubHkgcnRlTW9kYWxJc09wZW4gPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gIHJlYWRvbmx5IHJ0ZU1vZGFsU2l6ZSA9IGlucHV0PFNpemU+KFwibVwiKTtcbiAgcmVhZG9ubHkgcnRlTW9kYWxBcmlhRGVzY3JpYmVkYnkgPSBpbnB1dDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIHJlYWRvbmx5IHJ0ZU1vZGFsQ2xvc2VPbkNsaWNrT3V0c2lkZSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIHJlYWRvbmx5IHByaW1hcnlCdXR0b24gPSBjb250ZW50Q2hpbGQucmVxdWlyZWQ8QnV0dG9uQ29tcG9uZW50PihcInByaW1hcnlCdXR0b25cIik7XG4gIHJlYWRvbmx5IHNlY29uZGFyeUJ1dHRvbiA9IGNvbnRlbnRDaGlsZDxCdXR0b25Db21wb25lbnQ+KFwic2Vjb25kYXJ5QnV0dG9uXCIpO1xuICByZWFkb25seSBjdXN0b21Db250ZW50ID0gY29udGVudENoaWxkPHVua25vd24+KFwiY3VzdG9tQ29udGVudFwiKTtcblxuICBwcml2YXRlIG1vZGFsRWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIG9uTW91c2VEb3duID0gKGU6IE1vdXNlRXZlbnQpID0+IHRoaXMuaGFuZGxlQ2xpY2tBd2F5KGUpO1xuICBwcml2YXRlIG9uS2V5RG93biA9IChlOiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLmhhbmRsZUtleWRvd24oZSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5vdmVybGF5U2VydmljZSA9IGluamVjdChPdmVybGF5U2VydmljZSk7XG4gICAgdGhpcy5ob3N0RWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgb25UcmlnZ2VyKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd01vZGFsKCk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlZG93blwiLCB0aGlzLm9uTW91c2VEb3duKTtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwia2V5ZG93blwiLCB0aGlzLm9uS2V5RG93bik7XG4gICAgaWYgKHRoaXMudHJpZ2dlcigpKSB7XG4gICAgICB0aGlzLnRyaWdnZXIoKT8ubW9kYWxUcmlnZ2VyQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLm9uVHJpZ2dlcigpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95TW9kYWwoKTtcbiAgfVxuXG4gIHNob3dNb2RhbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tb2RhbENvbXBSZWYpIHtcbiAgICAgIHRoaXMubW9kYWxDb21wUmVmLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucHJpbWFyeUJ1dHRvbigpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXCJQcmltYXJ5IGJ1dHRvbiByZXF1aXJlZCwgYWRkIGl0IGFzIGNoaWxkIHRvIHRoZSBtb2RhbCBkaXJlY3RpdmUuXCIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMubW9kYWxDb21wUmVmID0gdGhpcy5vdmVybGF5U2VydmljZS5jcmVhdGUoTW9kYWxDb21wb25lbnQsIHRoaXMudmlld0NvbnRhaW5lclJlZiwgdHJ1ZSk7XG5cbiAgICB0aGlzLm1vZGFsQ29tcFJlZj8uaW5zdGFuY2UuY2xvc2VNb2RhbC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5jbG9zZU1vZGFsKCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLm1vZGFsRWxlbWVudCA9IHRoaXMubW9kYWxDb21wUmVmPy5sb2NhdGlvbi5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdLmNoaWxkcmVuWzFdO1xuXG4gICAgdGhpcy5hc3NpZ25JbnB1dHNWYWx1ZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldmVudC5rZXkgPT09IEVTQ0FQRV9LRVkgJiYgdGhpcy5ydGVNb2RhbENsb3NlT25DbGlja091dHNpZGUoKSkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuY2xvc2VNb2RhbCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXNzaWduSW5wdXRzVmFsdWVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1vZGFsQ29tcFJlZikge1xuICAgICAgdGhpcy5tb2RhbENvbXBSZWYuc2V0SW5wdXQoXCJpZFwiLCB0aGlzLnJ0ZU1vZGFsSWQoKSk7XG4gICAgICB0aGlzLm1vZGFsQ29tcFJlZi5zZXRJbnB1dChcImljb25cIiwgdGhpcy5ydGVNb2RhbEljb24oKSk7XG4gICAgICB0aGlzLm1vZGFsQ29tcFJlZi5zZXRJbnB1dChcImljb25BcHBlYXJhbmNlXCIsIHRoaXMucnRlTW9kYWxJY29uQXBwZWFyYW5jZSgpKTtcbiAgICAgIHRoaXMubW9kYWxDb21wUmVmLnNldElucHV0KFwidGl0bGVcIiwgdGhpcy5ydGVNb2RhbFRpdGxlKCkpO1xuICAgICAgdGhpcy5tb2RhbENvbXBSZWYuc2V0SW5wdXQoXCJkZXNjcmlwdGlvblwiLCB0aGlzLnJ0ZU1vZGFsRGVzY3JpcHRpb24oKSk7XG4gICAgICB0aGlzLm1vZGFsQ29tcFJlZi5zZXRJbnB1dChcInNpemVcIiwgdGhpcy5ydGVNb2RhbFNpemUoKSk7XG4gICAgICB0aGlzLm1vZGFsQ29tcFJlZi5zZXRJbnB1dChcImFyaWFEZXNjcmliZWRieVwiLCB0aGlzLnJ0ZU1vZGFsQXJpYURlc2NyaWJlZGJ5KCkpO1xuICAgICAgdGhpcy5tb2RhbENvbXBSZWYuc2V0SW5wdXQoXCJwcmltYXJ5QnV0dG9uXCIsIHRoaXMucHJpbWFyeUJ1dHRvbigpKTtcbiAgICAgIHRoaXMubW9kYWxDb21wUmVmLnNldElucHV0KFwic2Vjb25kYXJ5QnV0dG9uXCIsIHRoaXMuc2Vjb25kYXJ5QnV0dG9uKCkpO1xuICAgICAgdGhpcy5tb2RhbENvbXBSZWYuc2V0SW5wdXQoXCJjdXN0b21Db250ZW50XCIsIHRoaXMuY3VzdG9tQ29udGVudCgpKTtcbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5tb2RhbENvbXBSZWY/LnNldElucHV0KFwiaXNPcGVuXCIsIHRydWUpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQ2xpY2tBd2F5KGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgY29uc3QgZWxlbWVudHMgPSBbdGhpcy5ob3N0RWxlbWVudCwgdGhpcy5tb2RhbEVsZW1lbnRdIGFzIEhUTUxFbGVtZW50W107XG4gICAgaWYgKGVsZW1lbnRzLnNvbWUoKGVsZW1lbnQpID0+ICFlbGVtZW50KSkgcmV0dXJuO1xuICAgIGNvbnN0IHNob3VsZElnbm9yZSA9IGVsZW1lbnRzLnNvbWUoKGVsZW1lbnQpID0+IGVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKTtcbiAgICBpZiAoIXNob3VsZElnbm9yZSAmJiB0aGlzLnJ0ZU1vZGFsQ2xvc2VPbkNsaWNrT3V0c2lkZSgpKSB7XG4gICAgICB0aGlzLmNsb3NlTW9kYWwoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNsb3NlTW9kYWwoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubW9kYWxDb21wUmVmKSB7XG4gICAgICB0aGlzLm1vZGFsQ29tcFJlZi5zZXRJbnB1dChcImlzT3BlblwiLCBmYWxzZSk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5kZXN0cm95TW9kYWwoKSwgMjAwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lNb2RhbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tb2RhbENvbXBSZWYpIHtcbiAgICAgIHRoaXMubW9kYWxDb21wUmVmLmRlc3Ryb3koKTtcbiAgICAgIHRoaXMubW9kYWxDb21wUmVmID0gbnVsbDtcbiAgICAgIHRoaXMub3ZlcmxheVNlcnZpY2UuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { ModalTriggerDirective } from "./modal-trigger/modal-trigger.directive";
|
|
3
|
+
import { ModalDirective } from "./modal.directive";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ModalModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ModalModule, imports: [ModalDirective, ModalTriggerDirective], exports: [ModalDirective, ModalTriggerDirective] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalModule }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ModalModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
imports: [ModalDirective, ModalTriggerDirective],
|
|
14
|
+
exports: [ModalDirective, ModalTriggerDirective],
|
|
15
|
+
}]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtcnRlLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQU1uRCxNQUFNLE9BQU8sV0FBVzsrR0FBWCxXQUFXO2dIQUFYLFdBQVcsWUFIWixjQUFjLEVBQUUscUJBQXFCLGFBQ3JDLGNBQWMsRUFBRSxxQkFBcUI7Z0hBRXBDLFdBQVc7OzRGQUFYLFdBQVc7a0JBSnZCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDO29CQUNoRCxPQUFPLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUM7aUJBQ2pEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5pbXBvcnQgeyBNb2RhbFRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tIFwiLi9tb2RhbC10cmlnZ2VyL21vZGFsLXRyaWdnZXIuZGlyZWN0aXZlXCI7XG5pbXBvcnQgeyBNb2RhbERpcmVjdGl2ZSB9IGZyb20gXCIuL21vZGFsLmRpcmVjdGl2ZVwiO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbTW9kYWxEaXJlY3RpdmUsIE1vZGFsVHJpZ2dlckRpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtNb2RhbERpcmVjdGl2ZSwgTW9kYWxUcmlnZ2VyRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxNb2R1bGUge31cbiJdfQ==
|