@design-system-rte/angular 0.14.0 → 0.16.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.
Files changed (52) hide show
  1. package/esm2022/lib/components/banner/banner.component.mjs +3 -3
  2. package/esm2022/lib/components/breadcrumbs/breadcrumb-item/breadcrumb-item.component.mjs +38 -0
  3. package/esm2022/lib/components/breadcrumbs/breadcrumbs.component.mjs +5 -4
  4. package/esm2022/lib/components/button/button.component.mjs +12 -17
  5. package/esm2022/lib/components/checkbox/checkbox.component.mjs +3 -3
  6. package/esm2022/lib/components/checkbox-group/checkbox-group.component.mjs +3 -3
  7. package/esm2022/lib/components/divider/divider.component.mjs +3 -3
  8. package/esm2022/lib/components/dropdown/dropdown-trigger/dropdown-trigger.directive.mjs +11 -3
  9. package/esm2022/lib/components/dropdown/dropdown.directive.mjs +12 -13
  10. package/esm2022/lib/components/dropdown/dropdown.utils.mjs +40 -0
  11. package/esm2022/lib/components/icon-button/icon-button.component.mjs +13 -3
  12. package/esm2022/lib/components/icon-button-toggle/icon-button-toggle.component.mjs +1 -1
  13. package/esm2022/lib/components/link/link.component.mjs +5 -3
  14. package/esm2022/lib/components/modal/modal-trigger/modal-trigger.directive.mjs +31 -0
  15. package/esm2022/lib/components/modal/modal.component.mjs +48 -0
  16. package/esm2022/lib/components/modal/modal.directive.mjs +118 -0
  17. package/esm2022/lib/components/modal/modal.module.mjs +17 -0
  18. package/esm2022/lib/components/popover/popover.component.mjs +11 -28
  19. package/esm2022/lib/components/radio-button/radio-button.component.mjs +3 -3
  20. package/esm2022/lib/components/radio-button-group/radio-button-group.component.mjs +3 -3
  21. package/esm2022/lib/components/split-button/split-button.component.mjs +31 -5
  22. package/esm2022/lib/components/text-input/text-input.component.mjs +3 -3
  23. package/esm2022/lib/components/textarea/textarea.component.mjs +3 -3
  24. package/esm2022/lib/components/tooltip/tooltip.directive.mjs +18 -3
  25. package/esm2022/lib/services/focus-trap.service.mjs +64 -0
  26. package/esm2022/lib/services/overlay.service.mjs +19 -4
  27. package/esm2022/public-api.mjs +4 -1
  28. package/fesm2022/design-system-rte-angular.mjs +1149 -774
  29. package/fesm2022/design-system-rte-angular.mjs.map +1 -1
  30. package/lib/components/breadcrumbs/breadcrumb-item/breadcrumb-item.component.d.ts +16 -0
  31. package/lib/components/breadcrumbs/breadcrumbs.component.d.ts +2 -1
  32. package/lib/components/button/button.component.d.ts +4 -12
  33. package/lib/components/chip/chip.component.d.ts +1 -1
  34. package/lib/components/dropdown/dropdown-trigger/dropdown-trigger.directive.d.ts +4 -1
  35. package/lib/components/dropdown/dropdown.directive.d.ts +3 -1
  36. package/lib/components/dropdown/dropdown.utils.d.ts +4 -0
  37. package/lib/components/icon-button/icon-button.component.d.ts +8 -2
  38. package/lib/components/icon-button-toggle/icon-button-toggle.component.d.ts +1 -1
  39. package/lib/components/link/link.component.d.ts +3 -1
  40. package/lib/components/modal/modal-trigger/modal-trigger.directive.d.ts +11 -0
  41. package/lib/components/modal/modal.component.d.ts +28 -0
  42. package/lib/components/modal/modal.directive.d.ts +40 -0
  43. package/lib/components/modal/modal.module.d.ts +8 -0
  44. package/lib/components/popover/popover.component.d.ts +5 -6
  45. package/lib/components/split-button/split-button.component.d.ts +11 -4
  46. package/lib/components/text-input/text-input.component.d.ts +1 -1
  47. package/lib/components/tooltip/tooltip.component.d.ts +1 -1
  48. package/lib/components/tooltip/tooltip.directive.d.ts +2 -1
  49. package/lib/services/focus-trap.service.d.ts +17 -0
  50. package/lib/services/overlay.service.d.ts +2 -1
  51. package/package.json +2 -2
  52. package/public-api.d.ts +3 -0
@@ -0,0 +1,16 @@
1
+ import { AfterViewInit } from "@angular/core";
2
+ import { BreadcrumbProps } from "@design-system-rte/core/components/breadcrumbs/breadcrumbs.interface";
3
+ import * as i0 from "@angular/core";
4
+ export declare class BreadcrumbItemComponent implements AfterViewInit {
5
+ readonly item: import("@angular/core").InputSignal<BreadcrumbProps | undefined>;
6
+ readonly isLast: import("@angular/core").InputSignal<boolean>;
7
+ readonly breadcrumbItemMaxWidth: import("@angular/core").InputSignal<number | undefined>;
8
+ readonly initialScrollWidth: import("@angular/core").WritableSignal<number>;
9
+ private elementRef;
10
+ readonly isEllipsisActive: import("@angular/core").Signal<boolean>;
11
+ readonly tooltipTriggerStyle: import("@angular/core").Signal<string>;
12
+ readonly linkStyle: import("@angular/core").Signal<string>;
13
+ ngAfterViewInit(): void;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbItemComponent, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbItemComponent, "rte-breadcrumb-item", never, { "item": { "alias": "item"; "required": false; "isSignal": true; }; "isLast": { "alias": "isLast"; "required": false; "isSignal": true; }; "breadcrumbItemMaxWidth": { "alias": "breadcrumbItemMaxWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
16
+ }
@@ -3,7 +3,8 @@ import * as i0 from "@angular/core";
3
3
  export declare class BreadcrumbsComponent {
4
4
  readonly items: import("@angular/core").InputSignal<BreadcrumbProps[]>;
5
5
  readonly ariaLabel: import("@angular/core").InputSignal<string>;
6
+ readonly breadcrumbItemMaxWidth: import("@angular/core").InputSignal<number>;
6
7
  readonly truncatedItems: import("@angular/core").Signal<BreadcrumbsTruncatedItems | null>;
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbsComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbsComponent, "rte-breadcrumbs", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbsComponent, "rte-breadcrumbs", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "breadcrumbItemMaxWidth": { "alias": "breadcrumbItemMaxWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
10
  }
@@ -1,17 +1,9 @@
1
- import { ButtonType } from "@design-system-rte/core/components/button/button.interface";
2
1
  import { ButtonSize, ButtonVariant } from "@design-system-rte/core/components/button/common/common-button";
3
2
  import * as i0 from "@angular/core";
4
3
  export declare class ButtonComponent {
5
- readonly label: import("@angular/core").InputSignal<string>;
6
- readonly variant: import("@angular/core").InputSignal<ButtonVariant>;
7
- readonly size: import("@angular/core").InputSignal<ButtonSize>;
8
- readonly disabled: import("@angular/core").InputSignal<boolean>;
9
- readonly icon: import("@angular/core").InputSignal<string>;
10
- readonly ariaLabel: import("@angular/core").InputSignal<string>;
11
- readonly ariaLabelledBy: import("@angular/core").InputSignal<string>;
12
- readonly buttonType: import("@angular/core").InputSignal<ButtonType>;
13
- readonly click: import("@angular/core").OutputEmitterRef<void>;
14
- onClick(event: MouseEvent | KeyboardEvent): void;
4
+ readonly rteButtonVariant: import("@angular/core").InputSignal<ButtonVariant>;
5
+ readonly rteButtonSize: import("@angular/core").InputSignal<ButtonSize>;
6
+ get classes(): string;
15
7
  static ɵfac: i0.ɵɵFactoryDeclaration<ButtonComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "rte-button", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "buttonType": { "alias": "buttonType"; "required": false; "isSignal": true; }; }, { "click": "click"; }, never, never, true, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<ButtonComponent, "button[rteButton]", never, { "rteButtonVariant": { "alias": "rteButtonVariant"; "required": false; "isSignal": true; }; "rteButtonSize": { "alias": "rteButtonSize"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
17
9
  }
@@ -4,7 +4,7 @@ export declare class ChipComponent {
4
4
  readonly label: import("@angular/core").InputSignal<string>;
5
5
  readonly selected: import("@angular/core").InputSignal<boolean>;
6
6
  readonly disabled: import("@angular/core").InputSignal<boolean>;
7
- readonly type: import("@angular/core").InputSignal<"input" | "multi" | "single">;
7
+ readonly type: import("@angular/core").InputSignal<"input" | "single" | "multi">;
8
8
  readonly compactSpacing: import("@angular/core").InputSignal<boolean>;
9
9
  readonly click: import("@angular/core").OutputEmitterRef<Event>;
10
10
  readonly close: import("@angular/core").OutputEmitterRef<Event>;
@@ -2,10 +2,13 @@ import { ElementRef } from "@angular/core";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class DropdownTriggerDirective {
4
4
  readonly elementRef: ElementRef<any>;
5
+ readonly rteDropdownTriggerActivateWithArrowDown: import("@angular/core").InputSignal<boolean>;
5
6
  readonly dropdownKeyDown: import("@angular/core").OutputEmitterRef<KeyboardEvent>;
6
7
  readonly dropdownTriggered: import("@angular/core").OutputEmitterRef<Event>;
8
+ readonly dropdownTriggerFocus: import("@angular/core").OutputEmitterRef<Event>;
7
9
  onDropdownTriggered(event: Event): void;
10
+ onDropdownTriggerFocus(event: Event): void;
8
11
  onKeyDown(event: KeyboardEvent): void;
9
12
  static ɵfac: i0.ɵɵFactoryDeclaration<DropdownTriggerDirective, never>;
10
- static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownTriggerDirective, "[rteDropdownTrigger]", never, {}, { "dropdownKeyDown": "dropdownKeyDown"; "dropdownTriggered": "dropdownTriggered"; }, never, never, true, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownTriggerDirective, "[rteDropdownTrigger]", never, { "rteDropdownTriggerActivateWithArrowDown": { "alias": "rteDropdownTriggerActivateWithArrowDown"; "required": false; "isSignal": true; }; }, { "dropdownKeyDown": "dropdownKeyDown"; "dropdownTriggered": "dropdownTriggered"; "dropdownTriggerFocus": "dropdownTriggerFocus"; }, never, never, true, never>;
11
14
  }
@@ -1,4 +1,5 @@
1
1
  import { AfterContentInit, ChangeDetectorRef, ComponentRef, DestroyRef, ElementRef, OnDestroy, Renderer2, ViewContainerRef } from "@angular/core";
2
+ import { Alignment } from "@design-system-rte/core/common/common-types";
2
3
  import { Position } from "@design-system-rte/core/components/common/common-types";
3
4
  import { DropdownService } from "../../services/dropdown.service";
4
5
  import { OverlayService } from "../../services/overlay.service";
@@ -10,6 +11,7 @@ export declare class DropdownDirective implements AfterContentInit, OnDestroy {
10
11
  readonly trigger: import("@angular/core").Signal<DropdownTriggerDirective | undefined>;
11
12
  readonly menu: import("@angular/core").Signal<DropdownMenuComponent | undefined>;
12
13
  readonly rteDropdownPosition: import("@angular/core").InputSignal<Position>;
14
+ readonly rteDropdownAlignment: import("@angular/core").InputSignal<Alignment>;
13
15
  readonly rteDropdownIsOpen: import("@angular/core").InputSignal<boolean>;
14
16
  readonly rteDropdownOffset: import("@angular/core").InputSignal<number>;
15
17
  readonly dropdownId: string;
@@ -43,5 +45,5 @@ export declare class DropdownDirective implements AfterContentInit, OnDestroy {
43
45
  private removeClickOutsideListener;
44
46
  private closeDropdown;
45
47
  static ɵfac: i0.ɵɵFactoryDeclaration<DropdownDirective, never>;
46
- static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownDirective, "[rteDropdown]", never, { "rteDropdownPosition": { "alias": "rteDropdownPosition"; "required": false; "isSignal": true; }; "rteDropdownIsOpen": { "alias": "rteDropdownIsOpen"; "required": false; "isSignal": true; }; "rteDropdownOffset": { "alias": "rteDropdownOffset"; "required": false; "isSignal": true; }; }, { "menuEvent": "menuEvent"; }, ["trigger", "menu"], never, true, never>;
48
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DropdownDirective, "[rteDropdown]", never, { "rteDropdownPosition": { "alias": "rteDropdownPosition"; "required": false; "isSignal": true; }; "rteDropdownAlignment": { "alias": "rteDropdownAlignment"; "required": false; "isSignal": true; }; "rteDropdownIsOpen": { "alias": "rteDropdownIsOpen"; "required": false; "isSignal": true; }; "rteDropdownOffset": { "alias": "rteDropdownOffset"; "required": false; "isSignal": true; }; }, { "menuEvent": "menuEvent"; }, ["trigger", "menu"], never, true, never>;
47
49
  }
@@ -0,0 +1,4 @@
1
+ export declare const focusNextElement: (dropdown: HTMLElement) => void;
2
+ export declare const focusPreviousElement: (dropdown: HTMLElement) => void;
3
+ export declare const focusDropdownFirstElement: (dropdownId: string) => void;
4
+ export declare const focusParentDropdownFirstElement: (dropdownId: string) => void;
@@ -1,3 +1,4 @@
1
+ import { BadgeContent, BadgeType } from "@design-system-rte/core/components/badge/badge.interface";
1
2
  import { ButtonType } from "@design-system-rte/core/components/button/button.interface";
2
3
  import { ButtonSize, ButtonVariant } from "@design-system-rte/core/components/button/common/common-button";
3
4
  import * as i0 from "@angular/core";
@@ -11,10 +12,15 @@ export declare class IconButtonComponent {
11
12
  readonly compactSpacing: import("@angular/core").InputSignal<boolean>;
12
13
  readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
13
14
  readonly ariaLabelledBy: import("@angular/core").InputSignal<string | undefined>;
15
+ readonly badgeCount: import("@angular/core").InputSignal<number | undefined>;
16
+ readonly badgeContent: import("@angular/core").InputSignal<BadgeContent | undefined>;
17
+ readonly badgeType: import("@angular/core").InputSignal<BadgeType | undefined>;
18
+ readonly badgeIcon: import("@angular/core").InputSignal<"add" | "apps" | "asterisk" | "bluetooth" | "check" | "close" | "compare" | "cut" | "download" | "exclamation" | "filter" | "forward" | "fullscreen" | "history" | "language" | "link" | "list" | "login" | "logout" | "menu" | "monitoring" | "ohm" | "paste" | "public" | "publish" | "radar" | "redo" | "reload" | "remove" | "reply" | "route" | "search" | "sort" | "timeline" | "tune" | "undo" | "upload" | "water" | "wifi" | "windmill" | "alt-route" | "arrow-alt-down" | "arrow-alt-down-left" | "arrow-alt-down-right" | "arrow-alt-left" | "arrow-alt-right" | "arrow-alt-up" | "arrow-alt-up-left" | "arrow-alt-up-right" | "arrow-angle-down-left" | "arrow-angle-down-right" | "arrow-angle-up-left" | "arrow-angle-up-right" | "arrow-chevron-down" | "arrow-chevron-left" | "arrow-chevron-right" | "arrow-chevron-up" | "arrow-double-down" | "arrow-double-left" | "arrow-double-right" | "arrow-double-up" | "arrow-down" | "arrow-down-left" | "arrow-down-right" | "arrow-drop-down" | "arrow-drop-up" | "arrow-left" | "arrow-right" | "arrow-up" | "arrow-up-left" | "arrow-up-right" | "attach-file" | "battery-alt-empty" | "battery-alt-full" | "battery-charging" | "battery-empty" | "battery-full" | "bluetooth-off" | "chart-bar" | "chart-bar-stacked" | "check-indeterminate" | "check-small" | "checkbox-empty" | "copy-all" | "crisis-alert" | "download-done" | "drag-handle" | "drag-indicator" | "explore-travel" | "external-link" | "filter-off" | "first-page" | "fullscreen-exit" | "hourglass-empty" | "info-i" | "last-page" | "link-off" | "location-disabled" | "menu-open" | "more-down" | "more-horiz" | "more-up" | "more-vert" | "open-in-full" | "play-pause" | "power-input" | "power-plug" | "power-settings" | "priority-high" | "question-mark" | "radio-button-empty" | "reply-all" | "side-navigation" | "support-agent" | "trending-down" | "trending-flat" | "trending-up" | "water-alt" | "wifi-off" | "zoom-in" | "zoom-out" | "add-circle" | "admin-panel-settings" | "analytics" | "archive" | "arrow-circle-chevron-down" | "arrow-circle-chevron-left" | "arrow-circle-chevron-right" | "arrow-circle-chevron-up" | "arrow-circle-down" | "arrow-circle-left" | "arrow-circle-right" | "arrow-circle-up" | "article" | "assignment-complete" | "assignment" | "battery-alert" | "battery-charging-full" | "bolt-alt-circle" | "bolt-alt" | "bolt-circle" | "bolt" | "bookmark" | "bookmarks" | "build" | "calendar-available" | "calendar-busy" | "calendar-month" | "calendar-today" | "call" | "cancel" | "category" | "chart-add" | "chart-area" | "chart-pie" | "chart-table" | "chat-alt" | "chat-alt-unread" | "chat" | "chat-unread" | "check-circle" | "checkbox" | "checkbox-indeterminate" | "clock" | "cloud-download" | "cloud" | "cloud-off" | "cloud-upload" | "comment-add" | "comment" | "copy" | "dangerous" | "dashboard" | "database" | "delete" | "desktop" | "devices" | "draft" | "eco" | "edit" | "electric-meter" | "error" | "explore" | "explore-off" | "fast-forward" | "fast-rewind" | "feedback" | "file-copy" | "file-download" | "file-upload" | "filter-alt" | "filter-alt-off" | "fire" | "fit-screen" | "flag" | "flash" | "flash-off" | "folder-add" | "folder" | "folder-move" | "folder-open" | "folder-shared" | "forum" | "group-add" | "group" | "groups" | "headphones" | "heart" | "help" | "home" | "hourglass" | "image-broken" | "image" | "image-gallery" | "inbox" | "info" | "keep" | "keep-off" | "label" | "laptop" | "left-panel-close" | "left-panel-open" | "light-off" | "lightbulb-alt" | "lightbulb-circle" | "lightbulb" | "list-alt" | "location-me" | "location-off" | "location-on" | "lock" | "lock-open" | "lock-open-right" | "mail" | "mail-unread" | "map" | "mic" | "mic-off" | "mode-dark" | "mode-light" | "notification" | "notification-important" | "notification-off" | "notification-unread" | "palette" | "pause-circle" | "pause" | "photo-camera" | "play-circle" | "play" | "power" | "power-off" | "power-plug-connect" | "power-settings-circle" | "power-solar" | "power-switch" | "power-wind" | "print" | "right-panel-close" | "right-panel-open" | "save" | "send" | "settings" | "share" | "skip-next" | "skip-previous" | "smartphone" | "star" | "sticky-note" | "stop-circle" | "stop" | "subtitles" | "text-snippet" | "trash-restore" | "unarchive" | "user-add" | "user-circle" | "user" | "user-settings" | "verified" | "video-camera" | "video-camera-off" | "video-gallery" | "view-agenda" | "view-column" | "view-grid" | "view-kanban" | "view-module" | "view-timeline" | "visibility-hide" | "visibility-show" | "volume-down" | "volume-mute" | "volume-off" | "volume-up" | "warning" | "waterdrop">;
14
19
  readonly buttonIconSize: import("@angular/core").Signal<number>;
15
20
  readonly isValidIconName: import("@angular/core").Signal<boolean>;
16
- readonly click: import("@angular/core").OutputEmitterRef<MouseEvent | KeyboardEvent>;
21
+ readonly click: import("@angular/core").OutputEmitterRef<KeyboardEvent | MouseEvent>;
22
+ readonly shouldDisplayBadge: import("@angular/core").Signal<boolean>;
17
23
  onClick(event: MouseEvent | KeyboardEvent): void;
18
24
  static ɵfac: i0.ɵɵFactoryDeclaration<IconButtonComponent, never>;
19
- static ɵcmp: i0.ɵɵComponentDeclaration<IconButtonComponent, "rte-icon-button", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "compactSpacing": { "alias": "compactSpacing"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; }, { "click": "click"; }, never, never, true, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<IconButtonComponent, "rte-icon-button", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "compactSpacing": { "alias": "compactSpacing"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "badgeCount": { "alias": "badgeCount"; "required": false; "isSignal": true; }; "badgeContent": { "alias": "badgeContent"; "required": false; "isSignal": true; }; "badgeType": { "alias": "badgeType"; "required": false; "isSignal": true; }; "badgeIcon": { "alias": "badgeIcon"; "required": false; "isSignal": true; }; }, { "click": "click"; }, never, never, true, never>;
20
26
  }
@@ -14,7 +14,7 @@ export declare class IconButtonToggleComponent {
14
14
  readonly internalSelected: import("@angular/core").WritableSignal<boolean>;
15
15
  readonly defaultSelected: import("@angular/core").InputSignal<boolean>;
16
16
  readonly isControlled: import("@angular/core").Signal<boolean>;
17
- readonly click: import("@angular/core").OutputEmitterRef<MouseEvent | KeyboardEvent>;
17
+ readonly click: import("@angular/core").OutputEmitterRef<KeyboardEvent | MouseEvent>;
18
18
  readonly isSelected: import("@angular/core").Signal<boolean | undefined>;
19
19
  private toggleInternalSelectedState;
20
20
  onClick(event: MouseEvent | KeyboardEvent): void;
@@ -4,6 +4,8 @@ export declare class LinkComponent {
4
4
  readonly href: import("@angular/core").InputSignal<string>;
5
5
  readonly subtle: import("@angular/core").InputSignal<boolean>;
6
6
  readonly externalLink: import("@angular/core").InputSignal<boolean>;
7
+ readonly reverse: import("@angular/core").InputSignal<boolean>;
8
+ readonly maxWidth: import("@angular/core").InputSignal<number | undefined>;
7
9
  static ɵfac: i0.ɵɵFactoryDeclaration<LinkComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<LinkComponent, "rte-link", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "subtle": { "alias": "subtle"; "required": false; "isSignal": true; }; "externalLink": { "alias": "externalLink"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<LinkComponent, "rte-link", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "subtle": { "alias": "subtle"; "required": false; "isSignal": true; }; "externalLink": { "alias": "externalLink"; "required": false; "isSignal": true; }; "reverse": { "alias": "reverse"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
11
  }
@@ -0,0 +1,11 @@
1
+ import { ElementRef } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export declare class ModalTriggerDirective {
4
+ readonly elementRef: ElementRef<any>;
5
+ readonly modalTriggerKeyDown: import("@angular/core").OutputEmitterRef<KeyboardEvent>;
6
+ readonly modalTriggerClicked: import("@angular/core").OutputEmitterRef<Event>;
7
+ onModalTriggerClicked(event: Event): void;
8
+ onKeyDown(event: KeyboardEvent): void;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<ModalTriggerDirective, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ModalTriggerDirective, "[rteModalTrigger]", never, {}, { "modalTriggerKeyDown": "modalTriggerKeyDown"; "modalTriggerClicked": "modalTriggerClicked"; }, never, never, true, never>;
11
+ }
@@ -0,0 +1,28 @@
1
+ import { TemplateRef, OnDestroy, AfterViewInit } from "@angular/core";
2
+ import { Size } from "@design-system-rte/core/components/common/common-types";
3
+ import { ButtonComponent } from "../button/button.component";
4
+ import * as i0 from "@angular/core";
5
+ export declare class ModalComponent implements AfterViewInit, OnDestroy {
6
+ readonly id: import("@angular/core").InputSignal<string | undefined>;
7
+ readonly icon: import("@angular/core").InputSignal<string | undefined>;
8
+ readonly iconAppearance: import("@angular/core").InputSignal<"outlined" | "filled">;
9
+ readonly title: import("@angular/core").InputSignal<string | undefined>;
10
+ readonly description: import("@angular/core").InputSignal<string | undefined>;
11
+ readonly secondaryButtonLabel: import("@angular/core").InputSignal<string | undefined>;
12
+ readonly isOpen: import("@angular/core").InputSignal<boolean>;
13
+ readonly size: import("@angular/core").InputSignal<Size>;
14
+ readonly ariaDescribedby: import("@angular/core").InputSignal<string | undefined>;
15
+ readonly primaryButton: import("@angular/core").InputSignal<TemplateRef<ButtonComponent> | null>;
16
+ readonly secondaryButton: import("@angular/core").InputSignal<TemplateRef<ButtonComponent> | null>;
17
+ readonly customContent: import("@angular/core").InputSignal<TemplateRef<unknown> | null>;
18
+ private readonly elementRef;
19
+ private focusTrap;
20
+ constructor();
21
+ readonly closeModal: import("@angular/core").OutputEmitterRef<void>;
22
+ readonly iconSize: import("@angular/core").WritableSignal<number>;
23
+ ngAfterViewInit(): void;
24
+ ngOnDestroy(): void;
25
+ onClose(): void;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<ModalComponent, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<ModalComponent, "rte-modal", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconAppearance": { "alias": "iconAppearance"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "secondaryButtonLabel": { "alias": "secondaryButtonLabel"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "ariaDescribedby": { "alias": "ariaDescribedby"; "required": false; "isSignal": true; }; "primaryButton": { "alias": "primaryButton"; "required": false; "isSignal": true; }; "secondaryButton": { "alias": "secondaryButton"; "required": false; "isSignal": true; }; "customContent": { "alias": "customContent"; "required": false; "isSignal": true; }; }, { "closeModal": "closeModal"; }, never, never, true, never>;
28
+ }
@@ -0,0 +1,40 @@
1
+ import { AfterContentInit, OnDestroy } from "@angular/core";
2
+ import { Size } from "@design-system-rte/core/components/common/common-types";
3
+ import { ButtonComponent } from "../button/button.component";
4
+ import { ModalTriggerDirective } from "./modal-trigger/modal-trigger.directive";
5
+ import * as i0 from "@angular/core";
6
+ export declare class ModalDirective implements AfterContentInit, OnDestroy {
7
+ private modalCompRef;
8
+ private hostElement;
9
+ private overlayService;
10
+ private elementRef;
11
+ private viewContainerRef;
12
+ readonly trigger: import("@angular/core").Signal<ModalTriggerDirective | undefined>;
13
+ readonly rteModalId: import("@angular/core").InputSignal<string | undefined>;
14
+ readonly rteModalIcon: import("@angular/core").InputSignal<string | undefined>;
15
+ readonly rteModalIconAppearance: import("@angular/core").InputSignal<"outlined" | "filled">;
16
+ readonly rteModalTitle: import("@angular/core").InputSignal<string | undefined>;
17
+ readonly rteModalDescription: import("@angular/core").InputSignal<string | undefined>;
18
+ readonly rteModalIsOpen: import("@angular/core").InputSignal<boolean>;
19
+ readonly rteModalSize: import("@angular/core").InputSignal<Size>;
20
+ readonly rteModalAriaDescribedby: import("@angular/core").InputSignal<string | undefined>;
21
+ readonly rteModalCloseOnClickOutside: import("@angular/core").InputSignal<boolean>;
22
+ readonly primaryButton: import("@angular/core").Signal<ButtonComponent>;
23
+ readonly secondaryButton: import("@angular/core").Signal<ButtonComponent | undefined>;
24
+ readonly customContent: import("@angular/core").Signal<unknown>;
25
+ private modalElement;
26
+ private onMouseDown;
27
+ private onKeyDown;
28
+ constructor();
29
+ onTrigger(): void;
30
+ ngAfterContentInit(): void;
31
+ ngOnDestroy(): void;
32
+ showModal(): void;
33
+ private handleKeydown;
34
+ private assignInputsValues;
35
+ private handleClickAway;
36
+ private closeModal;
37
+ private destroyModal;
38
+ static ɵfac: i0.ɵɵFactoryDeclaration<ModalDirective, never>;
39
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ModalDirective, "[rteModal]", never, { "rteModalId": { "alias": "rteModalId"; "required": false; "isSignal": true; }; "rteModalIcon": { "alias": "rteModalIcon"; "required": false; "isSignal": true; }; "rteModalIconAppearance": { "alias": "rteModalIconAppearance"; "required": false; "isSignal": true; }; "rteModalTitle": { "alias": "rteModalTitle"; "required": false; "isSignal": true; }; "rteModalDescription": { "alias": "rteModalDescription"; "required": false; "isSignal": true; }; "rteModalIsOpen": { "alias": "rteModalIsOpen"; "required": false; "isSignal": true; }; "rteModalSize": { "alias": "rteModalSize"; "required": false; "isSignal": true; }; "rteModalAriaDescribedby": { "alias": "rteModalAriaDescribedby"; "required": false; "isSignal": true; }; "rteModalCloseOnClickOutside": { "alias": "rteModalCloseOnClickOutside"; "required": false; "isSignal": true; }; }, {}, ["trigger", "primaryButton", "secondaryButton", "customContent"], never, true, never>;
40
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./modal.directive";
3
+ import * as i2 from "./modal-trigger/modal-trigger.directive";
4
+ export declare class ModalModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ModalModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ModalModule, never, [typeof i1.ModalDirective, typeof i2.ModalTriggerDirective], [typeof i1.ModalDirective, typeof i2.ModalTriggerDirective]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<ModalModule>;
8
+ }
@@ -1,9 +1,9 @@
1
- import { AfterViewInit } from "@angular/core";
1
+ import { AfterViewInit, OnDestroy } from "@angular/core";
2
2
  import { PopoverAlignment } from "@design-system-rte/core/components/popover/popover.interface";
3
3
  import * as i0 from "@angular/core";
4
- export declare class PopoverComponent implements AfterViewInit {
4
+ export declare class PopoverComponent implements AfterViewInit, OnDestroy {
5
5
  readonly primaryButtonLabel: import("@angular/core").InputSignal<string>;
6
- readonly position: import("@angular/core").InputSignal<"top" | "left" | "right" | "bottom">;
6
+ readonly position: import("@angular/core").InputSignal<"top" | "bottom" | "left" | "right">;
7
7
  readonly alignment: import("@angular/core").InputSignal<PopoverAlignment | undefined>;
8
8
  readonly content: import("@angular/core").InputSignal<string | undefined>;
9
9
  readonly arrow: import("@angular/core").InputSignal<boolean | undefined>;
@@ -16,14 +16,13 @@ export declare class PopoverComponent implements AfterViewInit {
16
16
  }>;
17
17
  readonly clickPrimaryButton: import("@angular/core").OutputEmitterRef<void>;
18
18
  readonly clickSecondaryButton: import("@angular/core").OutputEmitterRef<void>;
19
- private element;
20
19
  private elementRef;
20
+ private focusTrap;
21
21
  constructor();
22
22
  ngAfterViewInit(): void;
23
- handleKeydown(event: KeyboardEvent): void;
23
+ ngOnDestroy(): void;
24
24
  handleClickPrimaryButton(): void;
25
25
  handleClickSecondaryButton(): void;
26
- private focusFirstElement;
27
26
  static ɵfac: i0.ɵɵFactoryDeclaration<PopoverComponent, never>;
28
27
  static ɵcmp: i0.ɵɵComponentDeclaration<PopoverComponent, "rte-popover", never, { "primaryButtonLabel": { "alias": "primaryButtonLabel"; "required": true; "isSignal": true; }; "position": { "alias": "position"; "required": true; "isSignal": true; }; "alignment": { "alias": "alignment"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "arrow": { "alias": "arrow"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "secondaryButtonLabel": { "alias": "secondaryButtonLabel"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "coordinates": { "alias": "coordinates"; "required": false; "isSignal": true; }; }, { "clickPrimaryButton": "clickPrimaryButton"; "clickSecondaryButton": "clickSecondaryButton"; }, never, never, true, never>;
29
28
  }
@@ -1,21 +1,28 @@
1
- import { SplitButtonAppearance, SplitButtonPosition, SplitButtonSize } from "@design-system-rte/core/components/split-button/split-button.interface";
1
+ import { OnInit, OnDestroy } from "@angular/core";
2
+ import { Alignment, Position } from "@design-system-rte/core/components/common/common-types";
3
+ import { SplitButtonAppearance, SplitButtonItemProps, SplitButtonPosition, SplitButtonSize } from "@design-system-rte/core/components/split-button/split-button.interface";
2
4
  import * as i0 from "@angular/core";
3
- export declare class SplitButtonComponent {
5
+ export declare class SplitButtonComponent implements OnInit, OnDestroy {
4
6
  readonly appearance: import("@angular/core").InputSignal<SplitButtonAppearance>;
5
7
  readonly size: import("@angular/core").InputSignal<SplitButtonSize>;
6
8
  readonly label: import("@angular/core").InputSignal<string>;
7
9
  readonly compactSpacing: import("@angular/core").InputSignal<boolean>;
8
- readonly selected: import("@angular/core").InputSignal<boolean>;
9
10
  readonly position: import("@angular/core").InputSignal<SplitButtonPosition>;
10
11
  readonly icon: import("@angular/core").InputSignal<"add" | "apps" | "asterisk" | "bluetooth" | "check" | "close" | "compare" | "cut" | "download" | "exclamation" | "filter" | "forward" | "fullscreen" | "history" | "language" | "link" | "list" | "login" | "logout" | "menu" | "monitoring" | "ohm" | "paste" | "public" | "publish" | "radar" | "redo" | "reload" | "remove" | "reply" | "route" | "search" | "sort" | "timeline" | "tune" | "undo" | "upload" | "water" | "wifi" | "windmill" | "alt-route" | "arrow-alt-down" | "arrow-alt-down-left" | "arrow-alt-down-right" | "arrow-alt-left" | "arrow-alt-right" | "arrow-alt-up" | "arrow-alt-up-left" | "arrow-alt-up-right" | "arrow-angle-down-left" | "arrow-angle-down-right" | "arrow-angle-up-left" | "arrow-angle-up-right" | "arrow-chevron-down" | "arrow-chevron-left" | "arrow-chevron-right" | "arrow-chevron-up" | "arrow-double-down" | "arrow-double-left" | "arrow-double-right" | "arrow-double-up" | "arrow-down" | "arrow-down-left" | "arrow-down-right" | "arrow-drop-down" | "arrow-drop-up" | "arrow-left" | "arrow-right" | "arrow-up" | "arrow-up-left" | "arrow-up-right" | "attach-file" | "battery-alt-empty" | "battery-alt-full" | "battery-charging" | "battery-empty" | "battery-full" | "bluetooth-off" | "chart-bar" | "chart-bar-stacked" | "check-indeterminate" | "check-small" | "checkbox-empty" | "copy-all" | "crisis-alert" | "download-done" | "drag-handle" | "drag-indicator" | "explore-travel" | "external-link" | "filter-off" | "first-page" | "fullscreen-exit" | "hourglass-empty" | "info-i" | "last-page" | "link-off" | "location-disabled" | "menu-open" | "more-down" | "more-horiz" | "more-up" | "more-vert" | "open-in-full" | "play-pause" | "power-input" | "power-plug" | "power-settings" | "priority-high" | "question-mark" | "radio-button-empty" | "reply-all" | "side-navigation" | "support-agent" | "trending-down" | "trending-flat" | "trending-up" | "water-alt" | "wifi-off" | "zoom-in" | "zoom-out" | "add-circle" | "admin-panel-settings" | "analytics" | "archive" | "arrow-circle-chevron-down" | "arrow-circle-chevron-left" | "arrow-circle-chevron-right" | "arrow-circle-chevron-up" | "arrow-circle-down" | "arrow-circle-left" | "arrow-circle-right" | "arrow-circle-up" | "article" | "assignment-complete" | "assignment" | "battery-alert" | "battery-charging-full" | "bolt-alt-circle" | "bolt-alt" | "bolt-circle" | "bolt" | "bookmark" | "bookmarks" | "build" | "calendar-available" | "calendar-busy" | "calendar-month" | "calendar-today" | "call" | "cancel" | "category" | "chart-add" | "chart-area" | "chart-pie" | "chart-table" | "chat-alt" | "chat-alt-unread" | "chat" | "chat-unread" | "check-circle" | "checkbox" | "checkbox-indeterminate" | "clock" | "cloud-download" | "cloud" | "cloud-off" | "cloud-upload" | "comment-add" | "comment" | "copy" | "dangerous" | "dashboard" | "database" | "delete" | "desktop" | "devices" | "draft" | "eco" | "edit" | "electric-meter" | "error" | "explore" | "explore-off" | "fast-forward" | "fast-rewind" | "feedback" | "file-copy" | "file-download" | "file-upload" | "filter-alt" | "filter-alt-off" | "fire" | "fit-screen" | "flag" | "flash" | "flash-off" | "folder-add" | "folder" | "folder-move" | "folder-open" | "folder-shared" | "forum" | "group-add" | "group" | "groups" | "headphones" | "heart" | "help" | "home" | "hourglass" | "image-broken" | "image" | "image-gallery" | "inbox" | "info" | "keep" | "keep-off" | "label" | "laptop" | "left-panel-close" | "left-panel-open" | "light-off" | "lightbulb-alt" | "lightbulb-circle" | "lightbulb" | "list-alt" | "location-me" | "location-off" | "location-on" | "lock" | "lock-open" | "lock-open-right" | "mail" | "mail-unread" | "map" | "mic" | "mic-off" | "mode-dark" | "mode-light" | "notification" | "notification-important" | "notification-off" | "notification-unread" | "palette" | "pause-circle" | "pause" | "photo-camera" | "play-circle" | "play" | "power" | "power-off" | "power-plug-connect" | "power-settings-circle" | "power-solar" | "power-switch" | "power-wind" | "print" | "right-panel-close" | "right-panel-open" | "save" | "send" | "settings" | "share" | "skip-next" | "skip-previous" | "smartphone" | "star" | "sticky-note" | "stop-circle" | "stop" | "subtitles" | "text-snippet" | "trash-restore" | "unarchive" | "user-add" | "user-circle" | "user" | "user-settings" | "verified" | "video-camera" | "video-camera-off" | "video-gallery" | "view-agenda" | "view-column" | "view-grid" | "view-kanban" | "view-module" | "view-timeline" | "visibility-hide" | "visibility-show" | "volume-down" | "volume-mute" | "volume-off" | "volume-up" | "warning" | "waterdrop" | null>;
11
12
  readonly disabled: import("@angular/core").InputSignal<boolean>;
12
13
  readonly ariaLabelRight: import("@angular/core").InputSignal<string | undefined>;
14
+ readonly options: import("@angular/core").InputSignal<SplitButtonItemProps[]>;
13
15
  readonly splitButtonLeftIconSize: import("@angular/core").Signal<number>;
14
16
  readonly splitButtonRightIconSize: import("@angular/core").Signal<number>;
15
17
  readonly isOpen: import("@angular/core").WritableSignal<boolean>;
18
+ readonly internalPosition: import("@angular/core").Signal<Position>;
19
+ readonly internalAlignment: import("@angular/core").Signal<Alignment>;
20
+ handleClickOutside(event: MouseEvent): void;
21
+ ngOnInit(): void;
22
+ ngOnDestroy(): void;
16
23
  handleKeyDownOnRightButton(event: KeyboardEvent): void;
17
24
  handleKeyDownOnMenu(event: KeyboardEvent): void;
18
25
  private handleKeyDown;
19
26
  static ɵfac: i0.ɵɵFactoryDeclaration<SplitButtonComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<SplitButtonComponent, "rte-split-button", never, { "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "compactSpacing": { "alias": "compactSpacing"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabelRight": { "alias": "ariaLabelRight"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<SplitButtonComponent, "rte-split-button", never, { "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "compactSpacing": { "alias": "compactSpacing"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabelRight": { "alias": "ariaLabelRight"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
21
28
  }
@@ -28,7 +28,7 @@ export declare class TextInputComponent {
28
28
  readonly isHiddenInput: import("@angular/core").WritableSignal<boolean>;
29
29
  readonly displayedLeftIcon: import("@angular/core").Signal<"add" | "apps" | "asterisk" | "bluetooth" | "check" | "close" | "compare" | "cut" | "download" | "exclamation" | "filter" | "forward" | "fullscreen" | "history" | "language" | "link" | "list" | "login" | "logout" | "menu" | "monitoring" | "ohm" | "paste" | "public" | "publish" | "radar" | "redo" | "reload" | "remove" | "reply" | "route" | "search" | "sort" | "timeline" | "tune" | "undo" | "upload" | "water" | "wifi" | "windmill" | "alt-route" | "arrow-alt-down" | "arrow-alt-down-left" | "arrow-alt-down-right" | "arrow-alt-left" | "arrow-alt-right" | "arrow-alt-up" | "arrow-alt-up-left" | "arrow-alt-up-right" | "arrow-angle-down-left" | "arrow-angle-down-right" | "arrow-angle-up-left" | "arrow-angle-up-right" | "arrow-chevron-down" | "arrow-chevron-left" | "arrow-chevron-right" | "arrow-chevron-up" | "arrow-double-down" | "arrow-double-left" | "arrow-double-right" | "arrow-double-up" | "arrow-down" | "arrow-down-left" | "arrow-down-right" | "arrow-drop-down" | "arrow-drop-up" | "arrow-left" | "arrow-right" | "arrow-up" | "arrow-up-left" | "arrow-up-right" | "attach-file" | "battery-alt-empty" | "battery-alt-full" | "battery-charging" | "battery-empty" | "battery-full" | "bluetooth-off" | "chart-bar" | "chart-bar-stacked" | "check-indeterminate" | "check-small" | "checkbox-empty" | "copy-all" | "crisis-alert" | "download-done" | "drag-handle" | "drag-indicator" | "explore-travel" | "external-link" | "filter-off" | "first-page" | "fullscreen-exit" | "hourglass-empty" | "info-i" | "last-page" | "link-off" | "location-disabled" | "menu-open" | "more-down" | "more-horiz" | "more-up" | "more-vert" | "open-in-full" | "play-pause" | "power-input" | "power-plug" | "power-settings" | "priority-high" | "question-mark" | "radio-button-empty" | "reply-all" | "side-navigation" | "support-agent" | "trending-down" | "trending-flat" | "trending-up" | "water-alt" | "wifi-off" | "zoom-in" | "zoom-out" | "add-circle" | "admin-panel-settings" | "analytics" | "archive" | "arrow-circle-chevron-down" | "arrow-circle-chevron-left" | "arrow-circle-chevron-right" | "arrow-circle-chevron-up" | "arrow-circle-down" | "arrow-circle-left" | "arrow-circle-right" | "arrow-circle-up" | "article" | "assignment-complete" | "assignment" | "battery-alert" | "battery-charging-full" | "bolt-alt-circle" | "bolt-alt" | "bolt-circle" | "bolt" | "bookmark" | "bookmarks" | "build" | "calendar-available" | "calendar-busy" | "calendar-month" | "calendar-today" | "call" | "cancel" | "category" | "chart-add" | "chart-area" | "chart-pie" | "chart-table" | "chat-alt" | "chat-alt-unread" | "chat" | "chat-unread" | "check-circle" | "checkbox" | "checkbox-indeterminate" | "clock" | "cloud-download" | "cloud" | "cloud-off" | "cloud-upload" | "comment-add" | "comment" | "copy" | "dangerous" | "dashboard" | "database" | "delete" | "desktop" | "devices" | "draft" | "eco" | "edit" | "electric-meter" | "error" | "explore" | "explore-off" | "fast-forward" | "fast-rewind" | "feedback" | "file-copy" | "file-download" | "file-upload" | "filter-alt" | "filter-alt-off" | "fire" | "fit-screen" | "flag" | "flash" | "flash-off" | "folder-add" | "folder" | "folder-move" | "folder-open" | "folder-shared" | "forum" | "group-add" | "group" | "groups" | "headphones" | "heart" | "help" | "home" | "hourglass" | "image-broken" | "image" | "image-gallery" | "inbox" | "info" | "keep" | "keep-off" | "label" | "laptop" | "left-panel-close" | "left-panel-open" | "light-off" | "lightbulb-alt" | "lightbulb-circle" | "lightbulb" | "list-alt" | "location-me" | "location-off" | "location-on" | "lock" | "lock-open" | "lock-open-right" | "mail" | "mail-unread" | "map" | "mic" | "mic-off" | "mode-dark" | "mode-light" | "notification" | "notification-important" | "notification-off" | "notification-unread" | "palette" | "pause-circle" | "pause" | "photo-camera" | "play-circle" | "play" | "power" | "power-off" | "power-plug-connect" | "power-settings-circle" | "power-solar" | "power-switch" | "power-wind" | "print" | "right-panel-close" | "right-panel-open" | "save" | "send" | "settings" | "share" | "skip-next" | "skip-previous" | "smartphone" | "star" | "sticky-note" | "stop-circle" | "stop" | "subtitles" | "text-snippet" | "trash-restore" | "unarchive" | "user-add" | "user-circle" | "user" | "user-settings" | "verified" | "video-camera" | "video-camera-off" | "video-gallery" | "view-agenda" | "view-column" | "view-grid" | "view-kanban" | "view-module" | "view-timeline" | "visibility-hide" | "visibility-show" | "volume-down" | "volume-mute" | "volume-off" | "volume-up" | "warning" | "waterdrop" | null>;
30
30
  readonly displayCounter: import("@angular/core").Signal<boolean>;
31
- readonly rightIconName: import("@angular/core").Signal<"close" | "" | "visibility-show" | "visibility-hide">;
31
+ readonly rightIconName: import("@angular/core").Signal<"" | "close" | "visibility-show" | "visibility-hide">;
32
32
  readonly rightIconAriaLabel: import("@angular/core").Signal<"" | "show text" | "hide text" | "clear">;
33
33
  readonly shouldShowRightIcon: import("@angular/core").Signal<boolean>;
34
34
  private lastParentValue;
@@ -2,7 +2,7 @@ import { Alignment } from "@design-system-rte/core/common/common-types";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TooltipComponent {
4
4
  readonly label: import("@angular/core").InputSignal<string>;
5
- readonly position: import("@angular/core").InputSignal<"top" | "left" | "right" | "bottom">;
5
+ readonly position: import("@angular/core").InputSignal<"top" | "bottom" | "left" | "right">;
6
6
  readonly alignment: import("@angular/core").InputSignal<Alignment>;
7
7
  readonly arrow: import("@angular/core").InputSignal<boolean>;
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
@@ -5,6 +5,7 @@ export declare class TooltipDirective implements AfterViewInit, OnDestroy {
5
5
  readonly rteTooltipPosition: import("@angular/core").InputSignal<string>;
6
6
  readonly rteTooltipAlignment: import("@angular/core").InputSignal<string>;
7
7
  readonly rteTooltipArrow: import("@angular/core").InputSignal<boolean>;
8
+ readonly rteTooltipShouldFocusTrigger: import("@angular/core").InputSignal<boolean>;
8
9
  private tooltipRef;
9
10
  private hostElement;
10
11
  private overlayService;
@@ -24,5 +25,5 @@ export declare class TooltipDirective implements AfterViewInit, OnDestroy {
24
25
  private positionTooltip;
25
26
  private hideTooltip;
26
27
  static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirective, never>;
27
- static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[rteTooltip]", never, { "rteTooltip": { "alias": "rteTooltip"; "required": true; "isSignal": true; }; "rteTooltipPosition": { "alias": "rteTooltipPosition"; "required": false; "isSignal": true; }; "rteTooltipAlignment": { "alias": "rteTooltipAlignment"; "required": false; "isSignal": true; }; "rteTooltipArrow": { "alias": "rteTooltipArrow"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
28
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[rteTooltip]", never, { "rteTooltip": { "alias": "rteTooltip"; "required": true; "isSignal": true; }; "rteTooltipPosition": { "alias": "rteTooltipPosition"; "required": false; "isSignal": true; }; "rteTooltipAlignment": { "alias": "rteTooltipAlignment"; "required": false; "isSignal": true; }; "rteTooltipArrow": { "alias": "rteTooltipArrow"; "required": false; "isSignal": true; }; "rteTooltipShouldFocusTrigger": { "alias": "rteTooltipShouldFocusTrigger"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
28
29
  }
@@ -0,0 +1,17 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class FocusTrapService {
3
+ private keyUnlisten?;
4
+ private renderer;
5
+ private activeTrapElement;
6
+ private previouslyFocusedElement;
7
+ private focusable;
8
+ private rendererFactory;
9
+ constructor();
10
+ activate(element: HTMLElement): void;
11
+ deactivate(): void;
12
+ private focusFirstElement;
13
+ private handleTab;
14
+ private getFocusableElements;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<FocusTrapService, never>;
16
+ static ɵprov: i0.ɵɵInjectableDeclaration<FocusTrapService>;
17
+ }
@@ -3,9 +3,10 @@ import * as i0 from "@angular/core";
3
3
  export declare class OverlayService {
4
4
  private overlayRoot?;
5
5
  private activeOverlays;
6
+ private isNavigationFrozen;
6
7
  constructor();
7
8
  private getOverlayRoot;
8
- create<T>(component: Type<T>, viewContainer: ViewContainerRef): ComponentRef<T>;
9
+ create<T>(component: Type<T>, viewContainer: ViewContainerRef, freezeNavigation?: boolean): ComponentRef<T>;
9
10
  destroy(): void;
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<OverlayService, never>;
11
12
  static ɵprov: i0.ɵɵInjectableDeclaration<OverlayService>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@design-system-rte/angular",
3
- "version": "0.14.0",
3
+ "version": "0.16.0",
4
4
  "description": "Angular components for the Design System RTE",
5
5
  "license": "Apache-2.0",
6
6
  "publishConfig": {
@@ -11,7 +11,7 @@
11
11
  "@angular/core": "^18.2.14"
12
12
  },
13
13
  "dependencies": {
14
- "@design-system-rte/core": "^0.18.0",
14
+ "@design-system-rte/core": "^0.20.0",
15
15
  "tslib": "^2.3.0"
16
16
  },
17
17
  "sideEffects": false,
package/public-api.d.ts CHANGED
@@ -21,3 +21,6 @@ export * from "./lib/components/segmented-control/segmented-control.component";
21
21
  export * from "./lib/components/breadcrumbs/breadcrumbs.component";
22
22
  export * from "./lib/components/banner/banner.component";
23
23
  export * from "./lib/components/popover/popover.directive";
24
+ export * from "./lib/components/modal/modal-trigger/modal-trigger.directive";
25
+ export * from "./lib/components/modal/modal.directive";
26
+ export * from "./lib/components/modal/modal.module";