@design-system-rte/angular 0.12.0 → 0.13.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 (25) hide show
  1. package/esm2022/lib/components/badge/badge.component.mjs +8 -7
  2. package/esm2022/lib/components/badge/badge.directive.mjs +4 -4
  3. package/esm2022/lib/components/banner/banner.component.mjs +65 -0
  4. package/esm2022/lib/components/button/button.component.mjs +2 -2
  5. package/esm2022/lib/components/icon/icon.component.mjs +3 -3
  6. package/esm2022/lib/components/popover/popover.component.mjs +62 -0
  7. package/esm2022/lib/components/popover/popover.directive.mjs +147 -0
  8. package/esm2022/lib/components/segmented-control/segmented-control.component.mjs +6 -3
  9. package/esm2022/lib/components/tooltip/tooltip.component.mjs +2 -2
  10. package/esm2022/lib/components/tooltip/tooltip.directive.mjs +2 -2
  11. package/esm2022/lib/services/overlay.service.mjs +1 -9
  12. package/esm2022/public-api.mjs +3 -1
  13. package/fesm2022/design-system-rte-angular.mjs +278 -28
  14. package/fesm2022/design-system-rte-angular.mjs.map +1 -1
  15. package/lib/components/badge/badge.component.d.ts +5 -4
  16. package/lib/components/badge/badge.directive.d.ts +3 -3
  17. package/lib/components/banner/banner.component.d.ts +24 -0
  18. package/lib/components/divider/divider.component.d.ts +1 -1
  19. package/lib/components/popover/popover.component.d.ts +29 -0
  20. package/lib/components/popover/popover.directive.d.ts +41 -0
  21. package/lib/components/segmented-control/segmented-control.component.d.ts +2 -0
  22. package/lib/components/text-input/text-input.component.d.ts +1 -1
  23. package/lib/components/tooltip/tooltip.component.d.ts +3 -2
  24. package/package.json +2 -2
  25. package/public-api.d.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"design-system-rte-angular.mjs","sources":["../../../projects/ds-rte-lib/src/lib/components/button/button.component.ts","../../../projects/ds-rte-lib/src/lib/components/button/button.component.html","../../../projects/ds-rte-lib/src/lib/components/grid/grid.directive.ts","../../../projects/ds-rte-lib/src/lib/components/grid/col/col.directive.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon-map.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon.service.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon.component.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon.component.html","../../../projects/ds-rte-lib/src/lib/components/link/link.component.ts","../../../projects/ds-rte-lib/src/lib/components/link/link.component.html","../../../projects/ds-rte-lib/src/lib/components/radio-button/radio-button.component.ts","../../../projects/ds-rte-lib/src/lib/components/radio-button/radio-button.component.html","../../../projects/ds-rte-lib/src/lib/components/radio-button-group/radio-button-group.component.ts","../../../projects/ds-rte-lib/src/lib/components/radio-button-group/radio-button-group.component.html","../../../projects/ds-rte-lib/src/lib/components/checkbox/checkbox.component.ts","../../../projects/ds-rte-lib/src/lib/components/checkbox/checkbox.component.html","../../../projects/ds-rte-lib/src/lib/components/checkbox-group/checkbox-group.component.ts","../../../projects/ds-rte-lib/src/lib/components/checkbox-group/checkbox-group.component.html","../../../projects/ds-rte-lib/src/lib/services/overlay.service.ts","../../../projects/ds-rte-lib/src/lib/components/tooltip/tooltip.component.ts","../../../projects/ds-rte-lib/src/lib/components/tooltip/tooltip.component.html","../../../projects/ds-rte-lib/src/lib/components/tooltip/tooltip.directive.ts","../../../projects/ds-rte-lib/src/lib/components/split-button/split-button.component.ts","../../../projects/ds-rte-lib/src/lib/components/split-button/split-button.component.html","../../../projects/ds-rte-lib/src/lib/components/icon-button/icon-button.component.ts","../../../projects/ds-rte-lib/src/lib/components/icon-button/icon-button.component.html","../../../projects/ds-rte-lib/src/lib/components/icon-button-toggle/icon-button-toggle.component.ts","../../../projects/ds-rte-lib/src/lib/components/icon-button-toggle/icon-button-toggle.component.html","../../../projects/ds-rte-lib/src/lib/components/text-input/text-input.component.ts","../../../projects/ds-rte-lib/src/lib/components/text-input/text-input.component.html","../../../projects/ds-rte-lib/src/lib/components/chip/chip.component.ts","../../../projects/ds-rte-lib/src/lib/components/chip/chip.component.html","../../../projects/ds-rte-lib/src/lib/components/badge/badge.component.ts","../../../projects/ds-rte-lib/src/lib/components/badge/badge.component.html","../../../projects/ds-rte-lib/src/lib/components/badge/badge.directive.ts","../../../projects/ds-rte-lib/src/lib/components/textarea/textarea.component.ts","../../../projects/ds-rte-lib/src/lib/components/textarea/textarea.component.html","../../../projects/ds-rte-lib/src/lib/components/divider/divider.component.ts","../../../projects/ds-rte-lib/src/lib/components/divider/divider.component.html","../../../projects/ds-rte-lib/src/lib/components/switch/switch.component.ts","../../../projects/ds-rte-lib/src/lib/components/switch/switch.component.html","../../../projects/ds-rte-lib/src/lib/components/segmented-control/segmented-control.component.ts","../../../projects/ds-rte-lib/src/lib/components/segmented-control/segmented-control.component.html","../../../projects/ds-rte-lib/src/lib/components/breadcrumbs/breadcrumbs.component.ts","../../../projects/ds-rte-lib/src/lib/components/breadcrumbs/breadcrumbs.component.html","../../../projects/ds-rte-lib/src/design-system-rte-angular.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input, output } from \"@angular/core\";\nimport { ButtonType } from \"@design-system-rte/core/components/button/button.interface\";\nimport { ButtonSize, ButtonVariant } from \"@design-system-rte/core/components/button/common/common-button\";\n\n@Component({\n selector: \"rte-button\",\n imports: [],\n standalone: true,\n templateUrl: \"./button.component.html\",\n styleUrl: \"./button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ButtonComponent {\n readonly label = input(\"\");\n readonly variant = input<ButtonVariant>(\"primary\");\n readonly size = input<ButtonSize>(\"m\");\n readonly disabled = input(false);\n readonly icon = input<string>(\"\");\n readonly ariaLabel = input<string>(\"\");\n readonly ariaLabelledBy = input<string>(\"\");\n readonly buttonType = input<ButtonType>(\"button\");\n\n readonly click = output<void>();\n\n onClick(event: MouseEvent | KeyboardEvent): void {\n event.stopPropagation();\n this.click.emit();\n }\n}\n","<button\n class=\"rte-button {{ variant() }} size-{{ size() }}\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.type]=\"buttonType()\"\n [disabled]=\"disabled()\"\n (click)=\"onClick($event)\"\n>\n <span class=\"rte-button-label\">{{ label() }}</span>\n</button>","import { Directive, HostBinding, input } from \"@angular/core\";\nimport { GridType } from \"@design-system-rte/core/components/grid/grid.interface\";\n\n@Directive({\n selector: \"[rteGrid]\",\n standalone: true,\n})\nexport class GridDirective {\n readonly gridType = input<GridType>(\"fluid\");\n\n @HostBinding(\"class\")\n get hostClasses(): string {\n return \"grid\";\n }\n\n @HostBinding(\"attr.data-gridtype\")\n get hostDataClasses(): string {\n const variation = this.gridType();\n return `${variation}`;\n }\n constructor() {}\n}\n","import { Directive, HostBinding, input } from \"@angular/core\";\n\n@Directive({\n selector: \"[rteCol]\",\n standalone: true,\n})\nexport class ColDirective {\n readonly xxs = input<number>();\n readonly xs = input<number>();\n readonly s = input<number>();\n readonly m = input<number>();\n readonly l = input<number>();\n readonly xl = input<number>();\n\n @HostBinding(\"class\")\n get colClasses(): string {\n return [\n \"col\",\n this.generateColumnClass(\"col-xxs\", this.xxs()),\n this.generateColumnClass(\"col-xs\", this.xs()),\n this.generateColumnClass(\"col-s\", this.s()),\n this.generateColumnClass(\"col-m\", this.m()),\n this.generateColumnClass(\"col-l\", this.l()),\n this.generateColumnClass(\"col-xl\", this.xl()),\n ]\n .filter(Boolean)\n .join(\" \");\n }\n\n constructor() {}\n\n private generateColumnClass(prefix: string, size?: number): string {\n return size ? `${prefix}-${size}` : \"\";\n }\n}\n","// This file is auto-generated. Do not edit manually.\n\nimport { isValidIconName as isValidIconNameShared } from \"@design-system-rte/core/components/icon/icon-utils\";\n\nexport const RegularIcons = {\n add: \"add\",\n \"alt-route\": \"alt_route\",\n apps: \"apps\",\n \"arrow-alt-down\": \"arrow_alt_down\",\n \"arrow-alt-down-left\": \"arrow_alt_down_left\",\n \"arrow-alt-down-right\": \"arrow_alt_down_right\",\n \"arrow-alt-left\": \"arrow_alt_left\",\n \"arrow-alt-right\": \"arrow_alt_right\",\n \"arrow-alt-up\": \"arrow_alt_up\",\n \"arrow-alt-up-left\": \"arrow_alt_up_left\",\n \"arrow-alt-up-right\": \"arrow_alt_up_right\",\n \"arrow-angle-down-left\": \"arrow_angle_down_left\",\n \"arrow-angle-down-right\": \"arrow_angle_down_right\",\n \"arrow-angle-up-left\": \"arrow_angle_up_left\",\n \"arrow-angle-up-right\": \"arrow_angle_up_right\",\n \"arrow-chevron-down\": \"arrow_chevron_down\",\n \"arrow-chevron-left\": \"arrow_chevron_left\",\n \"arrow-chevron-right\": \"arrow_chevron_right\",\n \"arrow-chevron-up\": \"arrow_chevron_up\",\n \"arrow-double-down\": \"arrow_double_down\",\n \"arrow-double-left\": \"arrow_double_left\",\n \"arrow-double-right\": \"arrow_double_right\",\n \"arrow-double-up\": \"arrow_double_up\",\n \"arrow-down\": \"arrow_down\",\n \"arrow-down-left\": \"arrow_down_left\",\n \"arrow-down-right\": \"arrow_down_right\",\n \"arrow-drop-down\": \"arrow_drop_down\",\n \"arrow-drop-up\": \"arrow_drop_up\",\n \"arrow-left\": \"arrow_left\",\n \"arrow-right\": \"arrow_right\",\n \"arrow-up\": \"arrow_up\",\n \"arrow-up-left\": \"arrow_up_left\",\n \"arrow-up-right\": \"arrow_up_right\",\n asterisk: \"asterisk\",\n \"attach-file\": \"attach_file\",\n \"battery-alt-empty\": \"battery_alt_empty\",\n \"battery-alt-full\": \"battery_alt_full\",\n \"battery-charging\": \"battery_charging\",\n \"battery-empty\": \"battery_empty\",\n \"battery-full\": \"battery_full\",\n bluetooth: \"bluetooth\",\n \"bluetooth-off\": \"bluetooth_off\",\n \"chart-bar\": \"chart_bar\",\n \"chart-bar-stacked\": \"chart_bar_stacked\",\n check: \"check\",\n \"check-indeterminate\": \"check_indeterminate\",\n \"check-small\": \"check_small\",\n \"checkbox-empty\": \"checkbox_empty\",\n close: \"close\",\n compare: \"compare\",\n \"copy-all\": \"copy_all\",\n \"crisis-alert\": \"crisis_alert\",\n cut: \"cut\",\n download: \"download\",\n \"download-done\": \"download_done\",\n \"drag-handle\": \"drag_handle\",\n \"drag-indicator\": \"drag_indicator\",\n exclamation: \"exclamation\",\n \"explore-travel\": \"explore_travel\",\n \"external-link\": \"external_link\",\n filter: \"filter\",\n \"filter-off\": \"filter_off\",\n \"first-page\": \"first_page\",\n forward: \"forward\",\n fullscreen: \"fullscreen\",\n \"fullscreen-exit\": \"fullscreen_exit\",\n history: \"history\",\n \"hourglass-empty\": \"hourglass_empty\",\n \"info-i\": \"info_i\",\n language: \"language\",\n \"last-page\": \"last_page\",\n link: \"link\",\n \"link-off\": \"link_off\",\n list: \"list\",\n \"location-disabled\": \"location_disabled\",\n login: \"login\",\n logout: \"logout\",\n menu: \"menu\",\n \"menu-open\": \"menu_open\",\n monitoring: \"monitoring\",\n \"more-down\": \"more_down\",\n \"more-horiz\": \"more_horiz\",\n \"more-up\": \"more_up\",\n \"more-vert\": \"more_vert\",\n ohm: \"ohm\",\n \"open-in-full\": \"open_in_full\",\n paste: \"paste\",\n \"play-pause\": \"play_pause\",\n \"power-input\": \"power_input\",\n \"power-plug\": \"power_plug\",\n \"power-settings\": \"power_settings\",\n \"priority-high\": \"priority_high\",\n public: \"public\",\n publish: \"publish\",\n \"question-mark\": \"question_mark\",\n radar: \"radar\",\n \"radio-button-empty\": \"radio_button_empty\",\n redo: \"redo\",\n reload: \"reload\",\n remove: \"remove\",\n reply: \"reply\",\n \"reply-all\": \"reply_all\",\n route: \"route\",\n search: \"search\",\n \"side-navigation\": \"side_navigation\",\n sort: \"sort\",\n \"support-agent\": \"support_agent\",\n timeline: \"timeline\",\n \"trending-down\": \"trending_down\",\n \"trending-flat\": \"trending_flat\",\n \"trending-up\": \"trending_up\",\n tune: \"tune\",\n undo: \"undo\",\n upload: \"upload\",\n water: \"water\",\n \"water-alt\": \"water_alt\",\n wifi: \"wifi\",\n \"wifi-off\": \"wifi_off\",\n windmill: \"windmill\",\n \"zoom-in\": \"zoom_in\",\n \"zoom-out\": \"zoom_out\",\n};\n\nexport const TogglableIcons = {\n \"add-circle\": [\"add_circle_outlined\", \"add_circle_filled\"],\n \"admin-panel-settings\": [\"admin_panel_settings_outlined\", \"admin_panel_settings_filled\"],\n analytics: [\"analytics_outlined\", \"analytics_filled\"],\n archive: [\"archive_outlined\", \"archive_filled\"],\n \"arrow-circle-chevron-down\": [\"arrow_circle_chevron_down_outlined\", \"arrow_circle_chevron_down_filled\"],\n \"arrow-circle-chevron-left\": [\"arrow_circle_chevron_left_outlined\", \"arrow_circle_chevron_left_filled\"],\n \"arrow-circle-chevron-right\": [\"arrow_circle_chevron_right_outlined\", \"arrow_circle_chevron_right_filled\"],\n \"arrow-circle-chevron-up\": [\"arrow_circle_chevron_up_outlined\", \"arrow_circle_chevron_up_filled\"],\n \"arrow-circle-down\": [\"arrow_circle_down_outlined\", \"arrow_circle_down_filled\"],\n \"arrow-circle-left\": [\"arrow_circle_left_outlined\", \"arrow_circle_left_filled\"],\n \"arrow-circle-right\": [\"arrow_circle_right_outlined\", \"arrow_circle_right_filled\"],\n \"arrow-circle-up\": [\"arrow_circle_up_outlined\", \"arrow_circle_up_filled\"],\n article: [\"article_outlined\", \"article_filled\"],\n \"assignment-complete\": [\"assignment_complete_outlined\", \"assignment_complete_filled\"],\n assignment: [\"assignment_outlined\", \"assignment_filled\"],\n \"battery-alert\": [\"battery_alert_outlined\", \"battery_alert_filled\"],\n \"battery-charging-full\": [\"battery_charging_full_outlined\", \"battery_charging_full_filled\"],\n \"bolt-alt-circle\": [\"bolt_alt_circle_outlined\", \"bolt_alt_circle_filled\"],\n \"bolt-alt\": [\"bolt_alt_outlined\", \"bolt_alt_filled\"],\n \"bolt-circle\": [\"bolt_circle_outlined\", \"bolt_circle_filled\"],\n bolt: [\"bolt_outlined\", \"bolt_filled\"],\n bookmark: [\"bookmark_outlined\", \"bookmark_filled\"],\n bookmarks: [\"bookmarks_outlined\", \"bookmarks_filled\"],\n build: [\"build_outlined\", \"build_filled\"],\n \"calendar-available\": [\"calendar_available_outlined\", \"calendar_available_filled\"],\n \"calendar-busy\": [\"calendar_busy_outlined\", \"calendar_busy_filled\"],\n \"calendar-month\": [\"calendar_month_outlined\", \"calendar_month_filled\"],\n \"calendar-today\": [\"calendar_today_outlined\", \"calendar_today_filled\"],\n call: [\"call_outlined\", \"call_filled\"],\n cancel: [\"cancel_outlined\", \"cancel_filled\"],\n category: [\"category_outlined\", \"category_filled\"],\n \"chart-add\": [\"chart_add_outlined\", \"chart_add_filled\"],\n \"chart-area\": [\"chart_area_outlined\", \"chart_area_filled\"],\n \"chart-pie\": [\"chart_pie_outlined\", \"chart_pie_filled\"],\n \"chart-table\": [\"chart_table_outlined\", \"chart_table_filled\"],\n \"chat-alt\": [\"chat_alt_outlined\", \"chat_alt_filled\"],\n \"chat-alt-unread\": [\"chat_alt_unread_outlined\", \"chat_alt_unread_filled\"],\n chat: [\"chat_outlined\", \"chat_filled\"],\n \"chat-unread\": [\"chat_unread_outlined\", \"chat_unread_filled\"],\n \"check-circle\": [\"check_circle_outlined\", \"check_circle_filled\"],\n checkbox: [\"checkbox_outlined\", \"checkbox_filled\"],\n \"checkbox-indeterminate\": [\"checkbox_indeterminate_outlined\", \"checkbox_indeterminate_filled\"],\n clock: [\"clock_outlined\", \"clock_filled\"],\n \"cloud-download\": [\"cloud_download_outlined\", \"cloud_download_filled\"],\n cloud: [\"cloud_outlined\", \"cloud_filled\"],\n \"cloud-off\": [\"cloud_off_outlined\", \"cloud_off_filled\"],\n \"cloud-upload\": [\"cloud_upload_outlined\", \"cloud_upload_filled\"],\n \"comment-add\": [\"comment_add_outlined\", \"comment_add_filled\"],\n comment: [\"comment_outlined\", \"comment_filled\"],\n copy: [\"copy_outlined\", \"copy_filled\"],\n dangerous: [\"dangerous_outlined\", \"dangerous_filled\"],\n dashboard: [\"dashboard_outlined\", \"dashboard_filled\"],\n database: [\"database_outlined\", \"database_filled\"],\n delete: [\"delete_outlined\", \"delete_filled\"],\n desktop: [\"desktop_outlined\", \"desktop_filled\"],\n devices: [\"devices_outlined\", \"devices_filled\"],\n draft: [\"draft_outlined\", \"draft_filled\"],\n eco: [\"eco_outlined\", \"eco_filled\"],\n edit: [\"edit_outlined\", \"edit_filled\"],\n \"electric-meter\": [\"electric_meter_outlined\", \"electric_meter_filled\"],\n error: [\"error_outlined\", \"error_filled\"],\n explore: [\"explore_outlined\", \"explore_filled\"],\n \"explore-off\": [\"explore_off_outlined\", \"explore_off_filled\"],\n \"fast-forward\": [\"fast_forward_outlined\", \"fast_forward_filled\"],\n \"fast-rewind\": [\"fast_rewind_outlined\", \"fast_rewind_filled\"],\n feedback: [\"feedback_outlined\", \"feedback_filled\"],\n \"file-copy\": [\"file_copy_outlined\", \"file_copy_filled\"],\n \"file-download\": [\"file_download_outlined\", \"file_download_filled\"],\n \"file-upload\": [\"file_upload_outlined\", \"file_upload_filled\"],\n \"filter-alt\": [\"filter_alt_outlined\", \"filter_alt_filled\"],\n \"filter-alt-off\": [\"filter_alt_off_outlined\", \"filter_alt_off_filled\"],\n fire: [\"fire_outlined\", \"fire_filled\"],\n \"fit-screen\": [\"fit_screen_outlined\", \"fit_screen_filled\"],\n flag: [\"flag_outlined\", \"flag_filled\"],\n flash: [\"flash_outlined\", \"flash_filled\"],\n \"flash-off\": [\"flash_off_outlined\", \"flash_off_filled\"],\n \"folder-add\": [\"folder_add_outlined\", \"folder_add_filled\"],\n folder: [\"folder_outlined\", \"folder_filled\"],\n \"folder-move\": [\"folder_move_outlined\", \"folder_move_filled\"],\n \"folder-open\": [\"folder_open_outlined\", \"folder_open_filled\"],\n \"folder-shared\": [\"folder_shared_outlined\", \"folder_shared_filled\"],\n forum: [\"forum_outlined\", \"forum_filled\"],\n \"group-add\": [\"group_add_outlined\", \"group_add_filled\"],\n group: [\"group_outlined\", \"group_filled\"],\n groups: [\"groups_outlined\", \"groups_filled\"],\n headphones: [\"headphones_outlined\", \"headphones_filled\"],\n heart: [\"heart_outlined\", \"heart_filled\"],\n help: [\"help_outlined\", \"help_filled\"],\n home: [\"home_outlined\", \"home_filled\"],\n hourglass: [\"hourglass_outlined\", \"hourglass_filled\"],\n \"image-broken\": [\"image_broken_outlined\", \"image_broken_filled\"],\n image: [\"image_outlined\", \"image_filled\"],\n \"image-gallery\": [\"image_gallery_outlined\", \"image_gallery_filled\"],\n inbox: [\"inbox_outlined\", \"inbox_filled\"],\n info: [\"info_outlined\", \"info_filled\"],\n keep: [\"keep_outlined\", \"keep_filled\"],\n \"keep-off\": [\"keep_off_outlined\", \"keep_off_filled\"],\n label: [\"label_outlined\", \"label_filled\"],\n laptop: [\"laptop_outlined\", \"laptop_filled\"],\n \"left-panel-close\": [\"left_panel_close_outlined\", \"left_panel_close_filled\"],\n \"left-panel-open\": [\"left_panel_open_outlined\", \"left_panel_open_filled\"],\n \"light-off\": [\"light_off_outlined\", \"light_off_filled\"],\n \"lightbulb-alt\": [\"lightbulb_alt_outlined\", \"lightbulb_alt_filled\"],\n \"lightbulb-circle\": [\"lightbulb_circle_outlined\", \"lightbulb_circle_filled\"],\n lightbulb: [\"lightbulb_outlined\", \"lightbulb_filled\"],\n \"list-alt\": [\"list_alt_outlined\", \"list_alt_filled\"],\n \"location-me\": [\"location_me_outlined\", \"location_me_filled\"],\n \"location-off\": [\"location_off_outlined\", \"location_off_filled\"],\n \"location-on\": [\"location_on_outlined\", \"location_on_filled\"],\n lock: [\"lock_outlined\", \"lock_filled\"],\n \"lock-open\": [\"lock_open_outlined\", \"lock_open_filled\"],\n \"lock-open-right\": [\"lock_open_right_outlined\", \"lock_open_right_filled\"],\n mail: [\"mail_outlined\", \"mail_filled\"],\n \"mail-unread\": [\"mail_unread_outlined\", \"mail_unread_filled\"],\n map: [\"map_outlined\", \"map_filled\"],\n mic: [\"mic_outlined\", \"mic_filled\"],\n \"mic-off\": [\"mic_off_outlined\", \"mic_off_filled\"],\n \"mode-dark\": [\"mode_dark_outlined\", \"mode_dark_filled\"],\n \"mode-light\": [\"mode_light_outlined\", \"mode_light_filled\"],\n notification: [\"notification_outlined\", \"notification_filled\"],\n \"notification-important\": [\"notification_important_outlined\", \"notification_important_filled\"],\n \"notification-off\": [\"notification_off_outlined\", \"notification_off_filled\"],\n \"notification-unread\": [\"notification_unread_outlined\", \"notification_unread_filled\"],\n palette: [\"palette_outlined\", \"palette_filled\"],\n \"pause-circle\": [\"pause_circle_outlined\", \"pause_circle_filled\"],\n pause: [\"pause_outlined\", \"pause_filled\"],\n \"photo-camera\": [\"photo_camera_outlined\", \"photo_camera_filled\"],\n \"play-circle\": [\"play_circle_outlined\", \"play_circle_filled\"],\n play: [\"play_outlined\", \"play_filled\"],\n power: [\"power_outlined\", \"power_filled\"],\n \"power-off\": [\"power_off_outlined\", \"power_off_filled\"],\n \"power-plug-connect\": [\"power_plug_connect_outlined\", \"power_plug_connect_filled\"],\n \"power-settings-circle\": [\"power_settings_circle_outlined\", \"power_settings_circle_filled\"],\n \"power-solar\": [\"power_solar_outlined\", \"power_solar_filled\"],\n \"power-switch\": [\"power_switch_outlined\", \"power_switch_filled\"],\n \"power-wind\": [\"power_wind_outlined\", \"power_wind_filled\"],\n print: [\"print_outlined\", \"print_filled\"],\n \"right-panel-close\": [\"right_panel_close_outlined\", \"right_panel_close_filled\"],\n \"right-panel-open\": [\"right_panel_open_outlined\", \"right_panel_open_filled\"],\n save: [\"save_outlined\", \"save_filled\"],\n send: [\"send_outlined\", \"send_filled\"],\n settings: [\"settings_outlined\", \"settings_filled\"],\n share: [\"share_outlined\", \"share_filled\"],\n \"skip-next\": [\"skip_next_outlined\", \"skip_next_filled\"],\n \"skip-previous\": [\"skip_previous_outlined\", \"skip_previous_filled\"],\n smartphone: [\"smartphone_outlined\", \"smartphone_filled\"],\n star: [\"star_outlined\", \"star_filled\"],\n \"sticky-note\": [\"sticky_note_outlined\", \"sticky_note_filled\"],\n \"stop-circle\": [\"stop_circle_outlined\", \"stop_circle_filled\"],\n stop: [\"stop_outlined\", \"stop_filled\"],\n subtitles: [\"subtitles_outlined\", \"subtitles_filled\"],\n \"text-snippet\": [\"text_snippet_outlined\", \"text_snippet_filled\"],\n \"trash-restore\": [\"trash_restore_outlined\", \"trash_restore_filled\"],\n unarchive: [\"unarchive_outlined\", \"unarchive_filled\"],\n \"user-add\": [\"user_add_outlined\", \"user_add_filled\"],\n \"user-circle\": [\"user_circle_outlined\", \"user_circle_filled\"],\n user: [\"user_outlined\", \"user_filled\"],\n \"user-settings\": [\"user_settings_outlined\", \"user_settings_filled\"],\n verified: [\"verified_outlined\", \"verified_filled\"],\n \"video-camera\": [\"video_camera_outlined\", \"video_camera_filled\"],\n \"video-camera-off\": [\"video_camera_off_outlined\", \"video_camera_off_filled\"],\n \"video-gallery\": [\"video_gallery_outlined\", \"video_gallery_filled\"],\n \"view-agenda\": [\"view_agenda_outlined\", \"view_agenda_filled\"],\n \"view-column\": [\"view_column_outlined\", \"view_column_filled\"],\n \"view-grid\": [\"view_grid_outlined\", \"view_grid_filled\"],\n \"view-kanban\": [\"view_kanban_outlined\", \"view_kanban_filled\"],\n \"view-module\": [\"view_module_outlined\", \"view_module_filled\"],\n \"view-timeline\": [\"view_timeline_outlined\", \"view_timeline_filled\"],\n \"visibility-hide\": [\"visibility_hide_outlined\", \"visibility_hide_filled\"],\n \"visibility-show\": [\"visibility_show_outlined\", \"visibility_show_filled\"],\n \"volume-down\": [\"volume_down_outlined\", \"volume_down_filled\"],\n \"volume-mute\": [\"volume_mute_outlined\", \"volume_mute_filled\"],\n \"volume-off\": [\"volume_off_outlined\", \"volume_off_filled\"],\n \"volume-up\": [\"volume_up_outlined\", \"volume_up_filled\"],\n warning: [\"warning_outlined\", \"warning_filled\"],\n waterdrop: [\"waterdrop_outlined\", \"waterdrop_filled\"],\n};\n\nexport function isValidIconName(iconName: string): boolean {\n return isValidIconNameShared(iconName, RegularIcons, TogglableIcons);\n}\n","import { HttpClient } from \"@angular/common/http\";\nimport { inject, Injectable } from \"@angular/core\";\nimport { Observable } from \"rxjs\";\n\nimport { RegularIcons, TogglableIcons } from \"./icon-map\";\n\nexport type RegularIconIdKey = keyof typeof RegularIcons;\nexport type TogglableIconIdKey = keyof typeof TogglableIcons;\n\n@Injectable()\nexport class IconService {\n private http = inject(HttpClient);\n\n getSvg(name: RegularIconIdKey | TogglableIconIdKey, appearance: \"outlined\" | \"filled\"): Observable<string> {\n if (!this.http) {\n throw new Error(\"HttpClient is not available\");\n }\n const togglableIcon = TogglableIcons[name as TogglableIconIdKey];\n\n if (togglableIcon) {\n const [outlinedIconName, filledIconName] = togglableIcon;\n\n const iconName = appearance === \"filled\" ? filledIconName : outlinedIconName;\n return this.http.get(`assets/icons/${iconName}.svg`, { responseType: \"text\" });\n } else {\n const iconName = RegularIcons[name as RegularIconIdKey];\n if (!iconName) {\n throw new Error(`Icon ${name} not found`);\n }\n return this.http.get(`assets/icons/${iconName}.svg`, { responseType: \"text\" });\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n effect,\n inject,\n input,\n} from \"@angular/core\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\nimport { Observable } from \"rxjs\";\n\nimport { IconService, RegularIconIdKey, TogglableIconIdKey } from \"./icon.service\";\n\n@Component({\n selector: \"rte-icon\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./icon.component.html\",\n styleUrl: \"./icon.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [IconService],\n})\nexport class IconComponent {\n readonly name = input.required<string>();\n readonly size = input(20);\n readonly color = input(\"currentColor\");\n readonly classes = input(\"\");\n readonly appearance = input<\"outlined\" | \"filled\">();\n destroyRef = inject(DestroyRef);\n\n svgContent: SafeHtml | null = null;\n svg!: Observable<string>;\n\n private sanitizer = inject(DomSanitizer);\n private iconService = inject(IconService);\n private cdr = inject(ChangeDetectorRef);\n\n constructor() {\n effect(() => {\n this.setSvgContent(this.name());\n });\n }\n\n private setSvgContent(svgName: string) {\n const svgFile = this.iconService.getSvg(\n svgName as RegularIconIdKey | TogglableIconIdKey,\n this.appearance() || \"outlined\",\n );\n\n svgFile.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((res) => {\n const size = this.size();\n const svgWithSize = res.replace(/<svg([^>]*)>/, `<svg$1 width=\"${size}\" height=\"${size}\">`);\n\n this.svgContent = this.sanitizer.bypassSecurityTrustHtml(svgWithSize);\n this.cdr.markForCheck();\n });\n }\n}\n","<div class=\"rte-icon-container\" [innerHTML]=\"svgContent\" [style.height]=\"(size())+'px'\" [style.width]=\"(size())+'px'\"></div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input } from \"@angular/core\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-link\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./link.component.html\",\n styleUrl: \"./link.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LinkComponent {\n readonly label = input(\"\");\n readonly href = input<string>(\"#\");\n readonly subtle = input<boolean>(false);\n readonly externalLink = input<boolean>(false);\n}\n","<a href=\"{{ href() }}\" class=\"rte-link\" role=\"link\" [ngClass]=\"{'subtle': subtle()}\" [target]=\"externalLink() ? '_blank' : undefined\" [rel]=\"externalLink() ? 'noopener noreferrer' : null\">\n <span class=\"rte-link-label\">\n {{ label() }}\n </span>\n <rte-icon *ngIf=\"externalLink()\" name=\"external-link\" [size]=\"12\"></rte-icon>\n</a>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\nimport { labelSize } from \"@design-system-rte/core/components/radio-button/radio-button.constants\";\n\n@Component({\n selector: \"rte-radio-button\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./radio-button.component.html\",\n styleUrl: \"./radio-button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RadioButtonComponent {\n readonly label = input(\"\");\n readonly groupName = input(\"\");\n readonly showLabel = input(true);\n readonly disabled = input(false);\n readonly error = input(false);\n readonly readOnly = input(false);\n labelSize = labelSize;\n\n readonly isDisplayed = computed(() => !(this.disabled() && this.error()));\n}\n"," <div *ngIf=\"isDisplayed()\" class=\"rte-radio-button-container\">\n <input\n type=\"radio\"\n class=\"rte-radio-button\"\n [id]=\"label()\"\n [value]=\"label()\"\n [size]=\"labelSize\"\n [name]=\"groupName()\"\n [ngClass]=\"{'error': error(), 'read-only': readOnly()}\"\n [disabled]=\"disabled()\"\n />\n <label \n *ngIf=\"showLabel()\" \n class=\"rte-radio-button-label\" \n [for]=\"label()\"\n [ngClass]=\"{\n 'error': error(),\n 'read-only': readOnly(),\n 'disabled': disabled()\n }\"\n >\n {{ label() }}\n </label>\n </div>\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\n\nimport { RadioButtonComponent } from \"../radio-button/radio-button.component\";\n\n@Component({\n selector: \"rte-radio-button-group\",\n imports: [CommonModule, RadioButtonComponent],\n standalone: true,\n templateUrl: \"./radio-button-group.component.html\",\n styleUrl: \"./radio-button-group.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RadioButtonGroupComponent {\n readonly groupName = input(\"\");\n readonly items = input<string[]>([]);\n readonly direction = input(\"horizontal\");\n readonly showItemsLabel = input(true);\n readonly groupTitle = input(\"\");\n readonly showGroupTitle = input(false);\n readonly groupHelpText = input(\"\");\n readonly showHelpText = input(false);\n readonly errorMessage = input(\"\");\n readonly error = input(false);\n readonly disabled = input(false);\n readonly readOnly = input(false);\n\n readonly isDisplayed = computed(() => !(this.disabled() && this.error()));\n}\n","<div \n *ngIf=\"isDisplayed()\"\n class=\"radio-button-group-container\">\n <div\n class=\"radio-button-group-header\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'error': error(),\n 'read-only': readOnly(),\n }\">\n <h3\n *ngIf=\"showGroupTitle()\"\n class=\"group-title\"\n >\n {{ groupTitle() }}\n </h3>\n <p\n *ngIf=\"showHelpText()\"\n class=\"group-help-text\"\n >\n {{ groupHelpText() }}\n\n </p>\n <p\n *ngIf=\"error()\"\n class=\"group-error-message\"\n >\n {{ errorMessage() }}\n </p>\n </div>\n <div class=\"radio-button-group\" \n [ngClass]=\"{'horizontal': direction() === 'horizontal', 'vertical': direction() === 'vertical'}\">\n <ng-container \n *ngFor=\"let item of items()\">\n <rte-radio-button\n [label]=\"item\"\n [groupName]=\"groupName()\"\n [showLabel]=\"showItemsLabel()\"\n [disabled]=\"disabled()\"\n [error]=\"error()\"\n [readOnly]=\"readOnly()\"\n />\n </ng-container>\n </div>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input } from \"@angular/core\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-checkbox\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./checkbox.component.html\",\n styleUrl: \"./checkbox.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CheckboxComponent {\n readonly id = input.required<string>();\n readonly label = input.required<string>();\n readonly value = input(\"\");\n readonly indeterminate = input(false);\n readonly description = input(\"\");\n readonly showLabel = input(true);\n readonly disabled = input(false);\n readonly error = input(false);\n readonly errorMessage = input(\"\");\n readonly readOnly = input(false);\n readonly checked = input(false);\n readonly groupName = input(\"\");\n\n onKeydown(event: KeyboardEvent) {\n if (event.code === \"Space\") {\n if (this.readOnly()) {\n event.preventDefault();\n }\n }\n }\n}\n"," <div class=\"rte-checkbox-container\">\n <input\n type=\"checkbox\"\n class=\"rte-checkbox\"\n [id]=\"id()\"\n [value]=\"value()\"\n [ngClass]=\"{'error': error(), 'read-only': readOnly()}\"\n [disabled]=\"disabled()\"\n [indeterminate]=\"indeterminate()\"\n [checked]=\"checked()\"\n (keydown)=\"onKeydown($event)\"\n />\n <rte-icon class=\"rte-checkbox-icons rte-checkbox-icon-selected\" name=\"check-small\" [size]=\"16\"/> \n <rte-icon class=\"rte-checkbox-icons rte-checkbox-icon-indeterminated\" name=\"check-indeterminate\" [size]=\"16\" /> \n <div class=\"rte-checkbox-text-container\">\n <label \n *ngIf=\"showLabel()\" \n class=\"rte-checkbox-label\" \n [for]=\"id()\"\n [ngClass]=\"{\n 'error': error(),\n 'read-only': readOnly(),\n 'disabled': disabled()\n }\"\n >\n {{ label() }}\n </label>\n <p class=\"rte-checkbox-description\">{{ description() }}</p>\n <p *ngIf=\"error() && errorMessage()\" class=\"rte-checkbox-error\">{{ errorMessage() }}</p>\n </div>\n </div>\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\n\nimport { CheckboxComponent } from \"../checkbox/checkbox.component\";\n\n@Component({\n selector: \"rte-checkbox-group\",\n imports: [CommonModule, CheckboxComponent],\n standalone: true,\n templateUrl: \"./checkbox-group.component.html\",\n styleUrl: \"./checkbox-group.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CheckboxGroupComponent {\n readonly groupName = input.required<string>();\n readonly items = input.required<string[]>();\n readonly direction = input(\"horizontal\");\n readonly showItemsLabel = input(true);\n readonly groupTitle = input(\"\");\n readonly showGroupTitle = input(false);\n readonly groupHelpText = input(\"\");\n readonly showHelpText = input(false);\n readonly errorMessage = input(\"\");\n readonly error = input(false);\n readonly disabled = input(false);\n readonly readOnly = input(false);\n\n readonly isDisplayed = computed(() => !(this.disabled() && this.error()));\n}\n","<div \n *ngIf=\"isDisplayed()\"\n class=\"checkbox-group-container\">\n <div\n class=\"checkbox-group-header\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'error': error(),\n 'read-only': readOnly(),\n }\">\n <h3\n *ngIf=\"showGroupTitle()\"\n class=\"group-title\"\n >\n {{ groupTitle() }}\n </h3>\n <p\n *ngIf=\"showHelpText()\"\n class=\"group-help-text\"\n >\n {{ groupHelpText() }}\n\n </p>\n <p\n *ngIf=\"error()\"\n class=\"group-error-message\"\n >\n {{ errorMessage() }}\n </p>\n </div>\n <div class=\"checkbox-group\" \n [ngClass]=\"{'horizontal': direction() === 'horizontal', 'vertical': direction() === 'vertical'}\">\n <ng-container \n *ngFor=\"let item of items(); let i = index\">\n <rte-checkbox\n [id]=\"item + '-' + i\"\n [label]=\"item\"\n [groupName]=\"groupName()\"\n [showLabel]=\"showItemsLabel()\"\n [disabled]=\"disabled()\"\n [error]=\"error()\"\n [readOnly]=\"readOnly()\"\n />\n </ng-container>\n </div>\n</div>","// overlay.service.ts\nimport { Injectable, ComponentRef, Type, ViewContainerRef } from \"@angular/core\";\n\n@Injectable({ providedIn: \"root\" })\nexport class OverlayService {\n private overlayRoot?: HTMLElement;\n private activeOverlays = new Set<ComponentRef<unknown>>();\n\n constructor() {}\n\n private getOverlayRoot(): HTMLElement {\n if (!this.overlayRoot) {\n this.overlayRoot = document.getElementById(\"overlay-root\") as HTMLElement;\n\n if (!this.overlayRoot) {\n this.overlayRoot = document.createElement(\"div\");\n this.overlayRoot.id = \"overlay-root\";\n this.overlayRoot.style.position = \"fixed\";\n this.overlayRoot.style.top = \"0\";\n this.overlayRoot.style.left = \"0\";\n this.overlayRoot.style.width = \"100%\";\n this.overlayRoot.style.height = \"100%\";\n this.overlayRoot.style.pointerEvents = \"none\";\n this.overlayRoot.style.zIndex = \"1000\";\n document.body.appendChild(this.overlayRoot);\n }\n }\n return this.overlayRoot;\n }\n\n create<T>(component: Type<T>, viewContainer: ViewContainerRef): ComponentRef<T> {\n const root = this.getOverlayRoot();\n\n const componentRef = viewContainer.createComponent(component);\n\n root.appendChild(componentRef.location.nativeElement);\n this.activeOverlays.add(componentRef);\n\n const originalDestroy = componentRef.destroy.bind(componentRef);\n componentRef.destroy = () => {\n this.activeOverlays.delete(componentRef);\n originalDestroy();\n };\n\n return componentRef;\n }\n\n destroy() {\n if (this.activeOverlays.size === 0) {\n this.overlayRoot?.remove();\n this.overlayRoot = undefined;\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, input } from \"@angular/core\";\n\n@Component({\n selector: \"rte-tooltip\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./tooltip.component.html\",\n styleUrl: \"./tooltip.component.scss\",\n})\nexport class TooltipComponent {\n readonly label = input.required<string>();\n readonly position = input<string>(\"auto\");\n readonly alignment = input<string>(\"center\");\n readonly arrow = input<boolean>(true);\n}\n","<div\n class=\"tooltip {{ position() }} {{ alignment() }}\"\n [ngClass]=\"{ arrow: arrow() }\"\n>\n <span role=\"tooltip\" class=\"tooltip-label\"> {{ label() }} </span>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n inject,\n input,\n OnDestroy,\n Renderer2,\n ViewContainerRef,\n} from \"@angular/core\";\nimport { TOOLTIP_GAP, TOOLTIP_GAP_ARROW } from \"@design-system-rte/core/components/tooltip/tooltip.constants\";\nimport { getAutoPlacement, getCoordinates } from \"@design-system-rte/core/components/utils/auto-placement\";\n\nimport { OverlayService } from \"../../services/overlay.service\";\n\nimport { TooltipComponent } from \"./tooltip.component\";\n\n@Directive({\n selector: \"[rteTooltip]\",\n standalone: true,\n})\nexport class TooltipDirective implements AfterViewInit, OnDestroy {\n readonly rteTooltip = input.required<string>();\n readonly rteTooltipPosition = input(\"auto\");\n readonly rteTooltipAlignment = input(\"center\");\n readonly rteTooltipArrow = input(true);\n\n private tooltipRef: ComponentRef<TooltipComponent> | null = null;\n private hostElement: HTMLElement;\n private overlayService: OverlayService;\n\n private elementRef = inject(ElementRef);\n private viewContainerRef = inject(ViewContainerRef);\n private renderer = inject(Renderer2);\n private cdr = inject(ChangeDetectorRef);\n\n @HostListener(\"mouseenter\")\n onMouseEnter(): void {\n this.showTooltip();\n }\n\n @HostListener(\"mouseleave\")\n onMouseLeave(): void {\n this.hideTooltip();\n }\n\n @HostListener(\"focus\")\n onFocus(): void {\n this.showTooltip();\n }\n\n @HostListener(\"blur\")\n onBlur(): void {\n this.hideTooltip();\n }\n\n constructor() {\n this.overlayService = inject(OverlayService);\n this.hostElement = this.elementRef.nativeElement;\n this.hostElement.setAttribute(\"tabindex\", \"0\");\n }\n\n ngAfterViewInit() {\n window.addEventListener(\"scroll\", this.positionTooltip.bind(this));\n }\n\n ngOnDestroy() {\n window.removeEventListener(\"scroll\", this.positionTooltip.bind(this));\n }\n\n showTooltip(): void {\n if (this.tooltipRef) {\n this.tooltipRef.destroy();\n }\n\n this.tooltipRef = this.overlayService.create(TooltipComponent, this.viewContainerRef);\n this.assignDirectiveToComponent();\n this.positionTooltip();\n }\n\n private assignDirectiveToComponent(): void {\n if (this.tooltipRef) {\n const tooltipElement = this.tooltipRef.location.nativeElement;\n\n const position =\n this.rteTooltipPosition() === \"auto\"\n ? getAutoPlacement(\n this.hostElement,\n tooltipElement,\n \"top\",\n this.rteTooltipArrow() ? TOOLTIP_GAP_ARROW : TOOLTIP_GAP,\n )\n : this.rteTooltipPosition();\n\n this.tooltipRef.setInput(\"label\", this.rteTooltip());\n this.tooltipRef.setInput(\"position\", position);\n this.tooltipRef.setInput(\"alignment\", this.rteTooltipAlignment());\n this.tooltipRef.setInput(\"arrow\", this.rteTooltipArrow());\n }\n }\n\n private positionTooltip(): void {\n if (this.tooltipRef) {\n const tooltipElement = this.tooltipRef.location.nativeElement;\n\n const positions = getCoordinates(\n this.tooltipRef.instance.position(),\n this.hostElement,\n tooltipElement,\n this.rteTooltipArrow() ? TOOLTIP_GAP_ARROW : TOOLTIP_GAP,\n );\n\n this.renderer.setStyle(this.hostElement, \"position\", \"relative\");\n\n this.renderer.setStyle(tooltipElement, \"top\", `${positions.top}px`);\n this.renderer.setStyle(tooltipElement, \"left\", `${positions.left}px`);\n }\n }\n\n private hideTooltip(): void {\n if (this.tooltipRef) {\n const tooltipElement = this.tooltipRef.location.nativeElement;\n\n this.renderer.setStyle(tooltipElement, \"opacity\", \"0\");\n\n setTimeout(() => {\n if (this.tooltipRef) {\n this.tooltipRef.destroy();\n this.tooltipRef = null;\n this.overlayService.destroy();\n }\n }, 200);\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, signal } from \"@angular/core\";\nimport {\n splitButtonLeftIconSize,\n splitButtonRightIconSize,\n} from \"@design-system-rte/core/components/split-button/split-button.constants\";\nimport {\n SplitButtonAppearance,\n SplitButtonPosition,\n SplitButtonSize,\n} from \"@design-system-rte/core/components/split-button/split-button.interface\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\n@Component({\n selector: \"rte-split-button\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./split-button.component.html\",\n styleUrl: \"./split-button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SplitButtonComponent {\n readonly appearance = input<SplitButtonAppearance>(\"primary\");\n readonly size = input<SplitButtonSize>(\"m\");\n readonly label = input.required<string>();\n readonly compactSpacing = input(false);\n readonly selected = input(false);\n readonly position = input<SplitButtonPosition>(\"bottom-start\");\n readonly icon = input<RegularIconIdKey | TogglableIconIdKey | null>(null);\n readonly disabled = input(false);\n readonly ariaLabelRight = input<string>();\n\n readonly splitButtonLeftIconSize = computed(() => splitButtonLeftIconSize[this.size()]);\n readonly splitButtonRightIconSize = computed(() => splitButtonRightIconSize[this.size()]);\n\n readonly isOpen = signal(false);\n\n handleKeyDownOnRightButton(event: KeyboardEvent): void {\n this.handleKeyDown(event, \"ArrowDown\", () => this.isOpen.set(true));\n this.handleKeyDown(event, \"Escape\", () => this.isOpen.set(false));\n }\n\n handleKeyDownOnMenu(event: KeyboardEvent): void {\n this.handleKeyDown(event, \"Escape\", () => this.isOpen.set(false));\n }\n\n private handleKeyDown(event: KeyboardEvent, key: string, callback: () => void): void {\n if (event.key === key) {\n event.preventDefault();\n callback();\n }\n }\n}\n","<div \n class=\"split-button-container size-{{ size() }} {{appearance()}}\"\n [ngClass]=\"{'compact-spacing': compactSpacing()}\"\n>\n <button\n class=\"split-button-left size-{{ size() }}\"\n data-testid=\"Main action button\" \n type=\"button\"\n [disabled]=\"disabled()\"\n >\n <rte-icon \n *ngIf=\"icon()\"\n [name]=\"icon()!\"\n [size]=\"splitButtonLeftIconSize()\"\n />\n <p class=\"split-button-label size-{{ size() }}\">\n {{label()}}\n </p>\n </button>\n\n <div \n class=\"split-button-divider\"\n [ngClass]=\"{'disabled': disabled()}\"\n ></div>\n\n <div class=\"split-button-right-container\">\n <button\n class=\"split-button-right size-{{ size() }}\"\n data-testid=\"Menu button\"\n type=\"button\"\n aria-haspopup=\"menu\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-label]=\"ariaLabelRight()\"\n [attr.data-selected]=\"selected()\"\n [disabled]=\"disabled()\"\n (click)=\"isOpen.set(true)\"\n (mouseenter)=\"isOpen.set(true)\"\n (mouseleave)=\"isOpen.set(false)\"\n (keydown)=\"handleKeyDownOnRightButton($event)\"\n >\n <div class=\"split-button-right-icon-container\">\n <rte-icon name=\"arrow-chevron-down\" [size]=\"splitButtonRightIconSize()\"/>\n </div>\n </button>\n\n <div\n class=\"split-button-dropdown position-{{ position() }}\"\n role=\"menu\"\n data-testid=\"Menu container\"\n [style.visibility]=\"isOpen() ? 'visible' : 'hidden'\"\n (keydown)=\"handleKeyDownOnMenu($event)\"\n >\n <ng-content/>\n </div>\n </div>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, output } from \"@angular/core\";\nimport { ButtonType } from \"@design-system-rte/core/components/button/button.interface\";\nimport { ButtonSize, ButtonVariant } from \"@design-system-rte/core/components/button/common/common-button\";\nimport { buttonIconSize } from \"@design-system-rte/core/components/button/common/common-button.constants\";\n\nimport { isValidIconName } from \"../icon/icon-map\";\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\n@Component({\n selector: \"rte-icon-button\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./icon-button.component.html\",\n styleUrl: \"./icon-button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconButtonComponent {\n readonly disabled = input<boolean>(false);\n readonly name = input.required<RegularIconIdKey | TogglableIconIdKey>();\n readonly size = input<ButtonSize>(\"m\");\n readonly variant = input<ButtonVariant>(\"primary\");\n readonly type = input<ButtonType>(\"button\");\n readonly appearance = input<\"outlined\" | \"filled\">(\"outlined\");\n readonly compactSpacing = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined);\n readonly ariaLabelledBy = input<string | undefined>(undefined);\n\n readonly buttonIconSize = computed(() => buttonIconSize[this.size()]);\n\n readonly isValidIconName = computed(() => isValidIconName(this.name()));\n\n readonly click = output<MouseEvent | KeyboardEvent>();\n\n onClick(event: MouseEvent | KeyboardEvent): void {\n event.stopPropagation();\n this.click.emit(event);\n }\n}\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>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, output, signal } from \"@angular/core\";\nimport { ButtonType } from \"@design-system-rte/core/components/button/button.interface\";\nimport { ButtonSize, ButtonVariant } from \"@design-system-rte/core/components/button/common/common-button\";\nimport { buttonIconSize } from \"@design-system-rte/core/components/button/common/common-button.constants\";\n\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\nimport { IconButtonComponent } from \"../icon-button/icon-button.component\";\n\n@Component({\n selector: \"rte-icon-button-toggle\",\n imports: [CommonModule, IconButtonComponent],\n standalone: true,\n templateUrl: \"./icon-button-toggle.component.html\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconButtonToggleComponent {\n readonly disabled = input<boolean>(false);\n readonly name = input.required<RegularIconIdKey | TogglableIconIdKey>();\n readonly size = input<ButtonSize>(\"m\");\n readonly variant = input<ButtonVariant>(\"primary\");\n readonly type = input<ButtonType>(\"button\");\n readonly compactSpacing = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>();\n readonly ariaLabelledBy = input<string | undefined>();\n\n readonly selected = input<boolean | undefined>();\n\n readonly internalSelected = signal(false);\n\n readonly defaultSelected = input<boolean>(false);\n\n readonly isControlled = computed(() => this.selected() !== undefined);\n\n readonly click = output<MouseEvent | KeyboardEvent>();\n\n readonly isSelected = computed(() => {\n return this.isControlled() ? this.selected() : this.internalSelected();\n });\n\n private toggleInternalSelectedState(): void {\n this.internalSelected.set(!this.internalSelected());\n }\n\n onClick(event: MouseEvent | KeyboardEvent): void {\n event.stopPropagation();\n this.click.emit(event);\n if (!this.isControlled()) {\n this.toggleInternalSelectedState();\n }\n }\n\n readonly buttonIconSize = computed(() => buttonIconSize[this.size()]);\n}\n","<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/>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input, output, signal, computed, effect } from \"@angular/core\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\nimport { IconButtonComponent } from \"../icon-button/icon-button.component\";\nimport { LinkComponent } from \"../link/link.component\";\n\n@Component({\n selector: \"rte-text-input\",\n imports: [CommonModule, IconComponent, IconButtonComponent, LinkComponent],\n standalone: true,\n templateUrl: \"./text-input.component.html\",\n styleUrl: \"./text-input.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TextInputComponent {\n readonly id = input<string>();\n readonly label = input<string>(\"\");\n readonly labelPosition = input<\"top\" | \"side\">(\"top\");\n readonly required = input<boolean>(false);\n readonly showCounter = input<boolean>(false);\n readonly value = input<string>(\"\");\n readonly internalValue = signal<string>(this.value());\n readonly leftIcon = input<RegularIconIdKey | TogglableIconIdKey | null>(null);\n readonly showRightIcon = input<boolean>(true);\n readonly rightIconAction = input<\"clean\" | \"visibilityOn\" | \"visibilityOff\">(\"clean\");\n readonly showLabelRequirement = input<boolean>(false);\n readonly assistiveAppearance = input<\"description\" | \"error\" | \"success\" | \"link\">(\"description\");\n readonly showAssistiveIcon = input<boolean>(false);\n readonly assistiveTextLabel = input<string>(\"\");\n readonly error = input<boolean>(false);\n readonly maxLength = input<number>(150);\n readonly disabled = input<boolean>(false);\n readonly readOnly = input<boolean>(false);\n readonly width = input<string>(\"300px\");\n readonly ariaLabel = input<string>(\"\");\n readonly ariaRequired = input<boolean>(false);\n readonly ariaLabelledby = input<string>(\"\");\n\n readonly valueChange = output<string>();\n readonly rightIconClick = output<void>();\n\n readonly characterCount = signal<number>(this.internalValue().length);\n readonly isHiddenInput = signal<boolean>(this.showRightIcon() && this.rightIconAction() === \"visibilityOn\");\n readonly displayedLeftIcon = computed(() => (this.error() ? \"error\" : this.leftIcon()));\n\n readonly displayCounter = computed(() => this.showCounter() && typeof this.maxLength() === \"number\");\n\n readonly rightIconName = computed(() => {\n if ([\"visibilityOn\", \"visibilityOff\"].includes(this.rightIconAction())) {\n return this.isHiddenInput() ? \"visibility-show\" : \"visibility-hide\";\n } else if (this.rightIconAction() === \"clean\") {\n return \"close\";\n }\n return \"\";\n });\n\n readonly rightIconAriaLabel = computed(() => {\n if ([\"visibilityOn\", \"visibilityOff\"].includes(this.rightIconAction())) {\n return this.isHiddenInput() ? \"show text\" : \"hide text\";\n } else if (this.rightIconAction() === \"clean\") {\n return \"clear\";\n }\n return \"\";\n });\n\n readonly shouldShowRightIcon = computed(() => {\n if (this.readOnly() || this.disabled()) {\n return false;\n }\n if (this.rightIconAction() === \"clean\") {\n return !!this.internalValue()?.length && this.showRightIcon();\n }\n return this.showRightIcon() && !!this.rightIconAction();\n });\n\n private lastParentValue = this.value();\n\n constructor() {\n effect(\n () => {\n const parentValue = this.value();\n if (parentValue !== this.lastParentValue) {\n this.lastParentValue = parentValue;\n this.internalValue.set(parentValue);\n }\n },\n { allowSignalWrites: true },\n );\n }\n\n handleChange(event: Event): void {\n const input = event.target as HTMLInputElement;\n this.internalValue.set(input.value);\n this.valueChange.emit(input.value);\n if (this.maxLength()) {\n this.characterCount.set(input.value.length);\n }\n this.valueChange.emit(input.value);\n }\n\n onRightIconClickHandler(): void {\n this.rightIconClick.emit();\n this.triggerRightIconAction();\n }\n\n private toggleInputVisibility(): void {\n this.isHiddenInput.set(!this.isHiddenInput());\n }\n\n private triggerRightIconAction(): void {\n if (this.rightIconAction() === \"clean\") {\n this.internalValue.set(\"\");\n this.valueChange.emit(\"\");\n this.characterCount.set(0);\n }\n if ([\"visibilityOn\", \"visibilityOff\"].includes(this.rightIconAction())) {\n this.toggleInputVisibility();\n }\n }\n}\n","<div\n class=\"container {{labelPosition()}}\"\n [ngClass]=\"{'error': error()}\"\n [style.width]=\"width()\"\n>\n <ng-container *ngIf=\"label()\">\n <div class=\"text\">\n <div class=\"label-container\">\n <label class=\"input-label\" [id]=\"'input-label-' + id\" [for]=\"id()\">\n {{ label() }}\n </label>\n <ng-container *ngIf=\"required()\">\n <ng-container *ngIf=\"showLabelRequirement(); else requiredIcon\">\n <span class=\"required-text\">(obligatoire)</span>\n </ng-container>\n <ng-template #requiredIcon>\n <span class=\"required-icon-container\">\n <rte-icon name=\"asterisk\" [size]=\"8\" />\n </span>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!required() && showLabelRequirement()\">\n <span class=\"required-text\">(optionnel)</span>\n </ng-container>\n </div>\n <ng-container *ngIf=\"displayCounter() && labelPosition() === 'top'\">\n <p class=\"input-counter\" data-testid=\"input-counter\">\n {{ characterCount() }}/{{ maxLength() }}\n </p>\n </ng-container>\n </div>\n </ng-container>\n\n <div class=\"input-container\">\n <div\n class=\"input {{labelPosition()}}\"\n [ngClass]=\"{'disabled': disabled(), 'read-only': readOnly()}\"\n >\n <div class=\"input-bar\" [ngClass]=\"{'with-left-icon': displayedLeftIcon(), 'with-right-icon': rightIconAction()}\">\n <ng-container *ngIf=\"displayedLeftIcon()\">\n <rte-icon\n appearance=\"outlined\"\n class=\"left-icon\"\n aria-hidden=\"true\"\n [name]=\"displayedLeftIcon()!\"\n />\n </ng-container>\n\n <input\n #inputRef\n class=\"input-field\"\n [id]=\"id()\"\n [ngClass]=\"{'error': error()}\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledby()\"\n [attr.aria-required]=\"ariaRequired()\"\n [type]=\"isHiddenInput() ? 'password' : 'text'\"\n [maxLength]=\"maxLength()\"\n [disabled]=\"disabled()\"\n [readOnly]=\"readOnly()\"\n [value]=\"internalValue()\"\n (input)=\"handleChange($event)\"\n />\n\n <ng-container *ngIf=\"shouldShowRightIcon()\">\n <rte-icon-button\n appearance=\"outlined\"\n variant=\"transparent\"\n class=\"right-icon\"\n data-testid=\"right-icon\"\n [name]=\"rightIconName() || 'close'\"\n [ariaLabel]=\"rightIconAriaLabel()\"\n (click)=\"onRightIconClickHandler()\"\n />\n </ng-container>\n </div>\n </div>\n\n <ng-container *ngIf=\"assistiveTextLabel()\">\n <div class=\"assistive-text\">\n <ng-container *ngIf=\"showAssistiveIcon() && assistiveAppearance() === 'error'\">\n <rte-icon name=\"error\" appearance=\"outlined\" class=\"assistive-icon-error\" [size]=\"12\" />\n </ng-container>\n <ng-container *ngIf=\"showAssistiveIcon() && assistiveAppearance() === 'success'\">\n <rte-icon name=\"check\" appearance=\"outlined\" class=\"assistive-icon-success\" [size]=\"12\" />\n </ng-container>\n <ng-container *ngIf=\"assistiveAppearance() === 'link'; else assistiveLabel\">\n <rte-link [label]=\"assistiveTextLabel()\" />\n </ng-container>\n <ng-template #assistiveLabel>\n <p class=\"assistive-label\" [ngClass]=\"assistiveAppearance()\">\n {{ assistiveTextLabel() }}\n </p>\n </ng-template>\n </div>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"displayCounter() && labelPosition() === 'side'\">\n <p class=\"input-counter\" data-testid=\"input-counter\">\n {{ characterCount() }}/{{ maxLength() }}\n </p>\n </ng-container>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, output } from \"@angular/core\";\nimport { CHIP_TYPE_TO_ARIA_ROLE_MAP } from \"@design-system-rte/core/components/chip/chip.constants\";\nimport {\n BACKSPACE_KEY,\n DELETE_KEY,\n ENTER_KEY,\n SPACE_KEY,\n} from \"@design-system-rte/core/constants/keyboard/keyboard.constants\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-chip\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./chip.component.html\",\n styleUrl: \"./chip.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ChipComponent {\n readonly id = input<string | undefined>();\n readonly label = input<string>(\"\");\n readonly selected = input<boolean>(false);\n readonly disabled = input<boolean>(false);\n readonly type = input<\"single\" | \"multi\" | \"input\">(\"single\");\n readonly compactSpacing = input<boolean>(false);\n readonly click = output<Event>();\n readonly close = output<Event>();\n\n readonly isCheckable = computed(() => this.type() === \"single\" || this.type() === \"multi\");\n readonly role = computed(() => CHIP_TYPE_TO_ARIA_ROLE_MAP[this.type()] || null);\n\n onClick(event: Event) {\n event.stopPropagation();\n if (!this.disabled()) {\n this.click.emit(event);\n }\n }\n\n onKeyUp(event: KeyboardEvent) {\n event.preventDefault();\n if (!this.disabled()) {\n if (event.key === SPACE_KEY || event.key === ENTER_KEY) {\n const target = event.target as HTMLElement;\n const isCloseButton = target.classList.contains(\"chip-close-button\");\n if (isCloseButton) {\n target.click();\n } else {\n this.onClick(event);\n }\n } else if ((event.key === BACKSPACE_KEY || event.key === DELETE_KEY) && this.type() === \"input\") {\n const closeButton = (event.target as HTMLElement).querySelector(\n \".chip-close-button\",\n ) as HTMLButtonElement | null;\n if (closeButton) {\n closeButton.click();\n }\n }\n }\n }\n onBlur(event: FocusEvent) {\n event.stopPropagation();\n }\n onCloseClick(event: Event) {\n event.stopPropagation();\n if (!this.disabled()) {\n this.close.emit(event);\n }\n }\n}\n","<span\n class=\"chip\"\n tabindex=\"0\"\n [attr.role]=\"role()\"\n [attr.data-selected]=\"isCheckable() ? selected() : null\"\n [attr.data-disabled]=\"disabled()\"\n [attr.data-compact-spacing]=\"compactSpacing()\"\n [attr.data-type]=\"type()\"\n [attr.aria-checked]=\"isCheckable() ? selected() : null\"\n [attr.aria-disabled]=\"disabled()\"\n (click)=\"onClick($event)\"\n (keyup)=\"onKeyUp($event)\"\n (blur)=\"onBlur($event)\"\n>\n <ng-container *ngIf=\"type() === 'multi'\">\n <span class=\"chip-icon-container\">\n <span\n class=\"chip-icon\"\n [class.chip-icon--visible]=\"selected()\"\n [attr.aria-hidden]=\"!selected()\"\n >\n <rte-icon name=\"check-circle\" appearance=\"filled\" [size]=\"16\"></rte-icon>\n </span>\n <span\n class=\"chip-icon\"\n [class.chip-icon--visible]=\"!selected()\"\n [attr.aria-hidden]=\"selected()\"\n >\n <rte-icon name=\"radio-button-empty\" [size]=\"16\"></rte-icon>\n </span>\n </span>\n </ng-container>\n <span class=\"chip-label\" [attr.data-type]=\"type()\">{{ label() }}</span>\n <button\n *ngIf=\"type() === 'input'\"\n type=\"button\"\n class=\"chip-close-button\"\n [attr.aria-label]=\"'Supprimer ' + label()\"\n [disabled]=\"disabled()\"\n [value]=\"label()\"\n (click)=\"onCloseClick($event)\"\n >\n <rte-icon class=\"chip-close-button--icon\" name=\"close\" [size]=\"16\"></rte-icon>\n </button>\n</span>","import { CommonModule } from \"@angular/common\";\nimport { Component, input, computed, ChangeDetectionStrategy } from \"@angular/core\";\nimport { BadgeAppearance, BadgeSize, BadgeType } from \"@design-system-rte/core/components/badge/badge.interface\";\nimport {\n getBadgeIconSize,\n getDisplayCount,\n getShowBadge,\n getShowIcon,\n getShowText,\n} from \"@design-system-rte/core/components/badge/badge.utils\";\n\nimport { isValidIconName } from \"../icon/icon-map\";\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\n@Component({\n selector: \"rte-badge\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./badge.component.html\",\n styleUrl: \"./badge.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BadgeComponent {\n readonly badgeType = input<BadgeType>(\"brand\");\n readonly badgeSize = input<BadgeSize>(\"m\");\n readonly badgeAppearance = input<BadgeAppearance>(\"text\");\n readonly count = input<number | undefined>();\n readonly icon = input<RegularIconIdKey | TogglableIconIdKey>(\"notification\");\n\n readonly isValidIconName = computed(() => isValidIconName(this.icon()));\n\n readonly showIcon = computed(() =>\n getShowIcon({\n size: this.badgeSize(),\n appearance: this.badgeAppearance(),\n iconSize: this.iconSize(),\n }),\n );\n\n readonly showText = computed(() =>\n getShowText({\n size: this.badgeSize(),\n appearance: this.badgeAppearance(),\n count: this.count(),\n }),\n );\n\n readonly displayCount = computed(() => getDisplayCount(this.count()));\n readonly countOverflow = computed(() => this.showText() && this.displayCount().length > 2);\n readonly iconSize = computed(() => getBadgeIconSize(this.badgeSize()));\n\n readonly showBadge = computed(() =>\n getShowBadge({\n size: this.badgeSize(),\n appearance: this.badgeAppearance(),\n count: this.count(),\n iconSize: this.iconSize(),\n }),\n );\n}\n","<div\n class=\"badge size-{{ badgeSize() }} type-{{ badgeType() }}\"\n data-testid=\"badge\"\n [ngClass]=\"{'hidden': !showBadge(), 'count-overflow': countOverflow()}\"\n>\n <rte-icon\n *ngIf=\"showIcon()\"\n class=\"badge-icon\"\n [name]=\"icon()\"\n [size]=\"iconSize()!\"\n />\n <p *ngIf=\"showText()\" class=\"badge-text\">\n {{displayCount()}}\n </p>\n</div>\n","import {\n Directive,\n input,\n OnChanges,\n OnDestroy,\n ViewContainerRef,\n ComponentRef,\n inject,\n ElementRef,\n Renderer2,\n OnInit,\n} from \"@angular/core\";\nimport { BadgeType, BadgeSize, BadgeAppearance } from \"@design-system-rte/core/components/badge/badge.interface\";\n\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\nimport { BadgeComponent } from \"./badge.component\";\n\n@Directive({\n selector: \"[rteBadge]\",\n standalone: true,\n})\nexport class BadgeDirective implements OnInit, OnChanges, OnDestroy {\n readonly rteBadgeType = input<BadgeType>(\"brand\");\n readonly rteBadgeSize = input<BadgeSize>(\"m\");\n readonly rteBadgeAppearance = input<BadgeAppearance>(\"text\");\n readonly rteBadgeCount = input<number | undefined>();\n readonly rteBadgeIcon = input<RegularIconIdKey | TogglableIconIdKey>(\"settings\");\n\n private badgeComponentRef: ComponentRef<BadgeComponent> | null = null;\n private hostElement: HTMLElement;\n\n private readonly viewContainer = inject(ViewContainerRef);\n private readonly elementRef = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n\n constructor() {\n this.hostElement = this.elementRef.nativeElement;\n }\n\n ngOnInit(): void {\n this.badgeComponentRef = this.viewContainer.createComponent(BadgeComponent);\n this.assignDirectiveToComponent();\n this.appendComponentToHost();\n this.renderer.setStyle(this.hostElement, \"position\", \"relative\");\n }\n\n ngOnChanges(): void {\n this.assignDirectiveToComponent();\n }\n\n ngOnDestroy(): void {\n if (this.badgeComponentRef) {\n this.badgeComponentRef.destroy();\n }\n }\n\n private assignDirectiveToComponent(): void {\n if (this.badgeComponentRef) {\n this.badgeComponentRef.setInput(\"badgeType\", this.rteBadgeType());\n this.badgeComponentRef.setInput(\"badgeSize\", this.rteBadgeSize());\n this.badgeComponentRef.setInput(\"badgeAppearance\", this.rteBadgeAppearance());\n this.badgeComponentRef.setInput(\"count\", this.rteBadgeCount());\n this.badgeComponentRef.setInput(\"icon\", this.rteBadgeIcon());\n }\n }\n\n private appendComponentToHost(): void {\n if (this.badgeComponentRef) {\n this.renderer.appendChild(this.elementRef.nativeElement, this.badgeComponentRef.location.nativeElement);\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, input, computed, output, ElementRef, viewChild } from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport {\n TEXTAREA_ICON_SIZE,\n TEXTAREA_REQUIREMENT_INDICATOR_VALUE,\n} from \"@design-system-rte/core/components/textarea/textarea.constants\";\nimport type {\n TextareaAssistiveTextAppearance,\n TextareaLabelPosition,\n} from \"@design-system-rte/core/components/textarea/textarea.interface\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { LinkComponent } from \"../link/link.component\";\n\n@Component({\n selector: \"rte-textarea\",\n imports: [CommonModule, IconComponent, LinkComponent],\n standalone: true,\n templateUrl: \"./textarea.component.html\",\n styleUrl: \"./textarea.component.scss\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: TextareaComponent,\n multi: true,\n },\n ],\n})\nexport class TextareaComponent {\n readonly id = input<string | undefined>(undefined);\n readonly name = input<string | undefined>(undefined);\n readonly ariaLabelledby = input<string | undefined>(undefined);\n readonly label = input<string | undefined>(undefined);\n readonly labelId = input<string | undefined>(undefined);\n readonly labelPosition = input<TextareaLabelPosition>(\"top\");\n readonly assistiveTextLabel = input<string | undefined>(undefined);\n readonly assistiveTextAppearance = input<TextareaAssistiveTextAppearance>(\"description\");\n readonly assistiveTextLink = input<string | undefined>(undefined);\n readonly required = input<boolean>(false);\n readonly showLabelRequirement = input<boolean>(false);\n readonly resizeable = input<boolean | string>(true);\n readonly maxLength = input<number | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readOnly = input<boolean>(false);\n readonly value = input<string | undefined>(undefined);\n readonly rows = input<number>(3);\n readonly defaultValue = input<string | undefined>(undefined);\n readonly showCounter = input<boolean>(false);\n\n readonly assistiveTextIconSize = TEXTAREA_ICON_SIZE;\n\n readonly requirementIndicatorValue = computed(() =>\n this.required()\n ? this.showLabelRequirement()\n ? TEXTAREA_REQUIREMENT_INDICATOR_VALUE.required\n : TEXTAREA_REQUIREMENT_INDICATOR_VALUE.requiredIcon\n : TEXTAREA_REQUIREMENT_INDICATOR_VALUE.optional,\n );\n\n readonly change = output<Event>();\n readonly blur = output<FocusEvent>();\n\n readonly textareaRef = viewChild<ElementRef<HTMLTextAreaElement>>(\"textarea\");\n\n readonly isAssistiveTextLinkVisible = computed(\n () => this.assistiveTextAppearance() === \"link\" && this.assistiveTextLink() !== undefined,\n );\n\n characterCount = 0;\n\n readonly isCounterVisible = computed(() => {\n return this.showCounter() && this.maxLength();\n });\n\n onInput(event: Event) {\n const target = event.target as HTMLTextAreaElement;\n this.characterCount = target.value.length;\n this.change.emit(event);\n }\n\n onBlur(event: FocusEvent) {\n this.textareaRef()?.nativeElement?.scrollTo({ top: 0 });\n this.blur.emit(event);\n }\n}\n","<div class=\"container\" [attr.data-label-position]=\"labelPosition()\"> \n <label *ngIf=\"label() && labelPosition() === 'side'\" [attr.data-label-position]=\"labelPosition()\" [attr.id]=\"labelId()\" [attr.for]=\"id()\">{{label()}}<span *ngIf=\"required() || showLabelRequirement()\" class=\"requirement-indicator\" aria-hidden=\"true\" [ngClass]=\"{'required': required(), 'show-label-requirement': showLabelRequirement() }\">{{requirementIndicatorValue()}}</span></label>\n <div class=\"top-position-container\" [attr.data-label-position]=\"labelPosition()\">\n <div class=\"header-container\" [attr.data-label-position]=\"labelPosition()\">\n <label *ngIf=\"label() && labelPosition() === 'top'\" [attr.id]=\"labelId()\" [attr.for]=\"id()\">{{label()}}<span *ngIf=\"required() || showLabelRequirement()\" class=\"requirement-indicator\" aria-hidden=\"true\" [ngClass]=\"{'required': required(), 'show-label-requirement': showLabelRequirement() }\">{{requirementIndicatorValue()}}</span></label>\n <span *ngIf=\"isCounterVisible()\" class=\"character-counter\">{{ characterCount }}/{{ maxLength() }}</span>\n </div>\n <div class=\"textarea-container\" [attr.data-label-position]=\"labelPosition()\">\n <textarea\n #textarea\n class=\"textarea {{ assistiveTextAppearance() }}\"\n [class.resizeable]=\"resizeable()\"\n [attr.id]=\"id()\"\n [attr.name]=\"name()\"\n [attr.aria-labelledby]=\"labelId() || ariaLabelledby()\"\n [attr.required]=\"required() || null\"\n [attr.maxLength]=\"maxLength() !== undefined ? maxLength() : null\"\n [attr.disabled]=\"disabled() || null\"\n [attr.readonly]=\"readOnly() || null\"\n [value]=\"value() !== undefined ? value() : null\"\n [defaultValue]=\"defaultValue() !== undefined ? defaultValue() : null\"\n [attr.rows]=\"rows()\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n <rte-link *ngIf=\"isAssistiveTextLinkVisible()\" class=\"assistive-text-link\" [externalLink]=\"true\" [href]=\"assistiveTextLink() || ''\" [label]=\"assistiveTextLabel() || ''\">\n </rte-link>\n <div *ngIf=\"assistiveTextAppearance() !== 'link'\" class=\"assistive-text {{ assistiveTextAppearance() }}\" [ngClass]=\"{'disabled' : disabled()}\">\n <rte-icon *ngIf=\"assistiveTextAppearance() === 'error'\" name=\"error\" [size]=\"assistiveTextIconSize\"></rte-icon>\n <rte-icon *ngIf=\"assistiveTextAppearance() === 'success'\" name=\"check-circle\" [size]=\"assistiveTextIconSize\"></rte-icon>\n <span>{{ assistiveTextLabel() }}</span>\n </div>\n </div>\n </div>\n</div>\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\nimport { DividerProps } from \"@design-system-rte/core/components/divider/divider.interface\";\n\n@Component({\n selector: \"rte-divider\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./divider.component.html\",\n styleUrl: \"./divider.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DividerComponent {\n readonly orientation = input<DividerProps[\"orientation\"]>(\"horizontal\");\n readonly thickness = input<DividerProps[\"thickness\"]>(\"light\");\n readonly appearance = input<DividerProps[\"appearance\"]>(\"default\");\n readonly endPoint = input<DividerProps[\"endPoint\"]>(\"round\");\n\n readonly isHorizontal = computed(() => this.orientation() === \"horizontal\");\n}\n","@if (isHorizontal()) {\n <hr class=\"horizontal {{thickness()}} {{appearance()}} {{endPoint()}}\" />\n} @else {\n <div class=\"vertical {{thickness()}} {{appearance()}} {{endPoint()}}\" role=\"separator\"></div>\n}","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input, signal, OnInit, output } from \"@angular/core\";\nimport { switchHeight, switchWidth } from \"@design-system-rte/core/components/switch/switch.constants\";\nimport { SwitchProps } from \"@design-system-rte/core/components/switch/switch.interface\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-switch\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./switch.component.html\",\n styleUrl: \"./switch.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SwitchComponent implements OnInit {\n readonly label = input(\"\");\n readonly appearance = input<SwitchProps[\"appearance\"]>(\"brand\");\n readonly showLabel = input(true);\n readonly showIcon = input(true);\n readonly disabled = input(false);\n readonly readOnly = input(false);\n readonly checked = input(false);\n\n readonly stateChange = output<Event>();\n\n switchHeight = switchHeight;\n switchWidth = switchWidth;\n\n readonly isChecked = signal(false);\n\n ngOnInit() {\n this.isChecked.set(this.checked());\n }\n\n handleChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.isChecked.set(target.checked);\n this.stateChange.emit(event);\n }\n\n handleClick(event: MouseEvent): void {\n if (this.readOnly() || this.disabled()) {\n event.stopPropagation();\n } else {\n const inputElement = (event.currentTarget as HTMLInputElement).querySelector<HTMLInputElement>(\n 'input[type=\"checkbox\"]',\n );\n if (inputElement) {\n inputElement.checked = !this.isChecked();\n const changeEvent = new Event(\"change\", { bubbles: true });\n Object.defineProperty(changeEvent, \"target\", {\n value: inputElement,\n writable: false,\n });\n this.handleChange(changeEvent);\n }\n }\n }\n}\n","<div\n class=\"switch-container appearance-{{appearance()}}\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'read-only': readOnly(),\n 'checked': isChecked()\n }\"\n (click)=\"handleClick($event)\"\n>\n <input\n type=\"checkbox\"\n role=\"switch\"\n class=\"switch\"\n [attr.aria-checked]=\"isChecked()\"\n [attr.aria-label]=\"label()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-readonly]=\"readOnly()\"\n [ariaLabel]=\"label()\"\n [name]=\"label()\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'read-only': readOnly(),\n 'checked': isChecked()\n }\"\n [style.min-height.px]=\"switchHeight\"\n [style.min-width.px]=\"switchWidth\"\n [disabled]=\"disabled()\"\n [checked]=\"isChecked()\"\n />\n <div class=\"switch-icon-check\" [ngClass]=\"{'checked': isChecked() }\" (click)=\"handleClick($event)\">\n @if (showIcon()) {\n <rte-icon\n class=\"icon\"\n [name]=\"isChecked() ? 'check' : 'close'\"\n [size]=\"16\"\n (click)=\"handleClick($event)\"\n ></rte-icon>\n }\n </div>\n @if (showLabel() && label()) {\n <label\n class=\"switch-label\"\n [for]=\"label()\"\n >\n {{ label() }}\n </label>\n }\n</div>","import { CommonModule } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n viewChildren,\n AfterViewInit,\n OnDestroy,\n computed,\n signal,\n OnChanges,\n SimpleChanges,\n} from \"@angular/core\";\nimport {\n getSegmentPosition,\n focusNextNotSegmentElement,\n focusPreviousNotSegmentElement,\n focusNextSegmentElement,\n focusPreviousSegmentElement,\n isValidSegmentedControlOptions,\n} from \"@design-system-rte/core/components/segmented-control/segmented-control-utils\";\nimport {\n SegmentOptions,\n SegmentProps,\n} from \"@design-system-rte/core/components/segmented-control/segmented-control.interface\";\nimport { FOCUSABLE_ELEMENTS_QUERY } from \"@design-system-rte/core/constants/dom/dom.constants\";\nimport {\n ARROW_LEFT_KEY,\n ARROW_RIGHT_KEY,\n ENTER_KEY,\n SPACE_KEY,\n TAB_KEY,\n} from \"@design-system-rte/core/constants/keyboard/keyboard.constants\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\nconst segmentClass = \"rte-segment\";\nconst segmentSelector = `.${segmentClass}`;\n\n@Component({\n selector: \"rte-segmented-control\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./segmented-control.component.html\",\n styleUrl: \"./segmented-control.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SegmentedControlComponent implements OnChanges, AfterViewInit, OnDestroy {\n readonly options = input<SegmentOptions[]>([]);\n readonly change = output<string>();\n readonly selectedSegment = input<string>();\n readonly ariaLabel = input<string>();\n readonly ariaLabelledBy = input<string>();\n\n readonly segmentRefs = viewChildren<ElementRef<HTMLDivElement>>(\"segment\");\n\n readonly sliderLeft = signal(0);\n readonly sliderWidth = signal(0);\n\n readonly segmentSelectedIndicatorStyle = computed(() => ({\n left: `${this.sliderLeft()}px`,\n width: `${this.sliderWidth()}px`,\n }));\n\n readonly isValidOptions = computed(() => isValidSegmentedControlOptions(this.options()));\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes[\"selectedSegment\"]) {\n this.updateSelectedSegmentIndicator();\n }\n }\n\n ngAfterViewInit() {\n this.updateSelectedSegmentIndicator();\n window.addEventListener(\"resize\", this.updateSelectedSegmentIndicator.bind(this));\n window.addEventListener(\"keydown\", this.onGlobalKeyDown.bind(this));\n\n this.segmentRefs().forEach((segmentElement) => {\n segmentElement.nativeElement.addEventListener(\"focus\", this.focusCurrentSegmentElement.bind(this));\n });\n }\n\n ngOnDestroy() {\n window.removeEventListener(\"resize\", this.updateSelectedSegmentIndicator.bind(this));\n window.removeEventListener(\"keydown\", this.onGlobalKeyDown.bind(this));\n\n this.segmentRefs().forEach((segmentElement) => {\n segmentElement.nativeElement.addEventListener(\"focus\", this.focusCurrentSegmentElement.bind(this));\n });\n }\n\n selectSegment(id: string) {\n this.change.emit(id);\n }\n\n isSegmentSelected(id: string): boolean {\n return this.selectedSegment() === id;\n }\n\n handleKeyUp(event: KeyboardEvent) {\n event.preventDefault();\n if (event.key === ARROW_RIGHT_KEY || event.key === ARROW_LEFT_KEY) {\n const allSegmentElements =\n Array.from(\n document.activeElement?.parentElement?.parentElement?.querySelectorAll(\n segmentSelector,\n ) as NodeListOf<HTMLElement>,\n ) || [];\n\n const currentActiveSegmentElementIndex = Array.from(allSegmentElements).findIndex(\n (element) => element === document.activeElement,\n );\n\n if (event.key === ARROW_RIGHT_KEY) {\n focusNextSegmentElement(currentActiveSegmentElementIndex, allSegmentElements);\n } else if (event.key === ARROW_LEFT_KEY) {\n focusPreviousSegmentElement(currentActiveSegmentElementIndex, allSegmentElements);\n }\n } else if (event.key === SPACE_KEY || event.key === ENTER_KEY) {\n const target = event.target as HTMLElement;\n const dataId = target.getAttribute(\"data-id\");\n this.selectSegment(dataId || \"\");\n }\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === TAB_KEY || event.key === SPACE_KEY || event.key === ENTER_KEY) {\n event.preventDefault();\n }\n if (event.key === TAB_KEY) {\n const allFocusableElements = Array.from(document.querySelectorAll(FOCUSABLE_ELEMENTS_QUERY)) as HTMLElement[];\n const currentActiveElement = document.activeElement;\n const currentIndex = allFocusableElements.indexOf(currentActiveElement as HTMLElement);\n\n if (event.shiftKey) {\n focusPreviousNotSegmentElement(currentIndex, allFocusableElements, segmentClass);\n } else {\n focusNextNotSegmentElement(currentIndex, allFocusableElements, segmentClass);\n }\n }\n }\n\n getSegmentPosition(index: number): SegmentProps[\"position\"] {\n return getSegmentPosition(index, this.options().length);\n }\n\n private updateSelectedSegmentIndicator() {\n const idx = this.options().findIndex((opt) => opt.id === this.selectedSegment());\n const segment = this.segmentRefs()[idx]?.nativeElement;\n\n if (segment) {\n this.sliderWidth.set(segment.offsetWidth);\n this.sliderLeft.set(segment.offsetLeft);\n }\n }\n\n private lastKeydown: string | null = null;\n\n private onGlobalKeyDown = (event: KeyboardEvent) => {\n this.lastKeydown = event.key;\n };\n\n private focusCurrentSegmentElement() {\n if (this.lastKeydown === \"Tab\") {\n const selectedSegmentElement = this.segmentRefs().find((segment) =>\n segment.nativeElement.classList.contains(\"selected\"),\n )?.nativeElement;\n if (selectedSegmentElement) {\n selectedSegmentElement.focus();\n } else {\n this.segmentRefs()[0]?.nativeElement?.focus();\n }\n }\n }\n}\n","<div *ngIf=\"isValidOptions()\" class=\"rte-segmented-control\" role=\"radiogroup\" [attr.aria-label]=\"ariaLabel()\">\n <span class=\"rte-segment-selected-indicator\" [ngStyle]=\"segmentSelectedIndicatorStyle()\"></span>\n <ng-container *ngFor=\"let option of options(); let idx = index\">\n <div class=\"rte-segment-container\" [attr.data-position]=\"getSegmentPosition(idx)\">\n <div\n #segment\n role=\"radio\"\n class=\"rte-segment\"\n tabindex=\"0\"\n [attr.data-id]=\"option.id\"\n [attr.data-segment-type]=\"option.icon ? 'icon' : 'label'\"\n [class.selected]=\"isSegmentSelected(option.id)\"\n [attr.aria-checked]=\"isSegmentSelected(option.id)\"\n [attr.aria-label]=\"option.label\"\n (click)=\"selectSegment(option.id)\"\n (keydown)=\"handleKeyDown($event)\"\n (keyup)=\"handleKeyUp($event)\"\n >\n <rte-icon\n *ngIf=\"isSegmentSelected(option.id)\"\n name=\"check-small\"\n class=\"rte-selected-icon\"\n [size]=\"24\"\n />\n <div class=\"rte-segment-content\">\n <ng-container *ngIf=\"option.icon; else label\">\n <rte-icon [name]=\"option.icon\" [size]=\"24\" [appearance]=\"isSegmentSelected(option.id) ? 'filled' : 'outlined' \"></rte-icon>\n </ng-container>\n <ng-template #label>\n <span class=\"rte-segment-label\">{{ option.label }}</span>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\nimport { BREADCRUMBS_DEFAULT_ARIA_LABEL } from \"@design-system-rte/core/components/breadcrumbs/breadcrumbs.constants\";\nimport {\n BreadcrumbProps,\n BreadcrumbsTruncatedItems,\n} from \"@design-system-rte/core/components/breadcrumbs/breadcrumbs.interface\";\nimport {\n getBreadcrumbsTruncatedItems,\n shouldTruncateBreadcrumbs,\n} from \"@design-system-rte/core/components/breadcrumbs/breadcrumbs.utils\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { LinkComponent } from \"../link/link.component\";\nimport { TooltipDirective } from \"../tooltip/tooltip.directive\";\n\n@Component({\n selector: \"rte-breadcrumbs\",\n imports: [CommonModule, LinkComponent, TooltipDirective, IconComponent],\n standalone: true,\n templateUrl: \"./breadcrumbs.component.html\",\n styleUrl: \"./breadcrumbs.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BreadcrumbsComponent {\n readonly items = input<BreadcrumbProps[]>([]);\n readonly ariaLabel = input<string>(BREADCRUMBS_DEFAULT_ARIA_LABEL);\n\n readonly truncatedItems = computed<BreadcrumbsTruncatedItems | null>(() => {\n if (shouldTruncateBreadcrumbs(this.items())) {\n return getBreadcrumbsTruncatedItems(this.items());\n }\n return null;\n });\n\n // TODO: replace this placeholder functionality for the Dropdown component\n readonly truncatedItemsText = computed(() => {\n return (\n this.truncatedItems()\n ?.truncated.map((item) => item.label)\n .join(\", \") || \"\"\n );\n });\n}\n","<nav\n class=\"breadcrumbs-container\"\n role=\"navigation\"\n [attr.aria-label]=\"ariaLabel()\"\n [ngClass]=\"{'truncated': truncatedItems()?.truncated?.length}\"\n>\n @if (truncatedItems()?.truncated?.length) {\n <div class=\"breadcrumb-item\">\n <rte-link\n [href]=\"truncatedItems()!.root.link\"\n [label]=\"truncatedItems()!.root.label\"\n [subtle]=\"true\"\n />\n </div>\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n <span class=\"breadcrumb-item\">\n <rte-icon name=\"more-horiz\" tabIndex=\"0\" role=\"menu\" aria-label=\"More items\" data-testid=\"show-more\" rteTooltipPosition=\"bottom\" [size]=\"12\" [rteTooltip]=\"truncatedItemsText()\"/>\n </span>\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n @for (item of truncatedItems()!.remaining; track item.link; let i = $index) {\n <div class=\"breadcrumb-item\">\n @if (i === truncatedItems()!.remaining.length - 1) {\n <a role=\"link\" aria-current=\"page\" tabindex=\"0\" [attr.aria-label]=\"item.label\">\n {{ item.label }}\n </a>\n } @else {\n <rte-link [href]=\"item.link\" [label]=\"item.label\" [subtle]=\"true\"/>\n }\n </div>\n @if (i < truncatedItems()!.remaining.length - 1) {\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n }\n }\n } @else {\n @for (item of items(); track item.link; let i = $index) {\n <div class=\"breadcrumb-item\">\n @if (i === items().length - 1) {\n <a role=\"link\" aria-current=\"page\" tabindex=\"0\" [attr.aria-label]=\"item.label\">\n {{ item.label }}\n </a>\n } @else {\n <rte-link [href]=\"item.link\" [label]=\"item.label\" [subtle]=\"true\"/>\n }\n </div>\n @if (i < items().length - 1) {\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n }\n }\n }\n</nav>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["isValidIconNameShared"],"mappings":"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"}
1
+ {"version":3,"file":"design-system-rte-angular.mjs","sources":["../../../projects/ds-rte-lib/src/lib/components/button/button.component.ts","../../../projects/ds-rte-lib/src/lib/components/button/button.component.html","../../../projects/ds-rte-lib/src/lib/components/grid/grid.directive.ts","../../../projects/ds-rte-lib/src/lib/components/grid/col/col.directive.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon-map.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon.service.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon.component.ts","../../../projects/ds-rte-lib/src/lib/components/icon/icon.component.html","../../../projects/ds-rte-lib/src/lib/components/link/link.component.ts","../../../projects/ds-rte-lib/src/lib/components/link/link.component.html","../../../projects/ds-rte-lib/src/lib/components/radio-button/radio-button.component.ts","../../../projects/ds-rte-lib/src/lib/components/radio-button/radio-button.component.html","../../../projects/ds-rte-lib/src/lib/components/radio-button-group/radio-button-group.component.ts","../../../projects/ds-rte-lib/src/lib/components/radio-button-group/radio-button-group.component.html","../../../projects/ds-rte-lib/src/lib/components/checkbox/checkbox.component.ts","../../../projects/ds-rte-lib/src/lib/components/checkbox/checkbox.component.html","../../../projects/ds-rte-lib/src/lib/components/checkbox-group/checkbox-group.component.ts","../../../projects/ds-rte-lib/src/lib/components/checkbox-group/checkbox-group.component.html","../../../projects/ds-rte-lib/src/lib/services/overlay.service.ts","../../../projects/ds-rte-lib/src/lib/components/tooltip/tooltip.component.ts","../../../projects/ds-rte-lib/src/lib/components/tooltip/tooltip.component.html","../../../projects/ds-rte-lib/src/lib/components/tooltip/tooltip.directive.ts","../../../projects/ds-rte-lib/src/lib/components/split-button/split-button.component.ts","../../../projects/ds-rte-lib/src/lib/components/split-button/split-button.component.html","../../../projects/ds-rte-lib/src/lib/components/icon-button/icon-button.component.ts","../../../projects/ds-rte-lib/src/lib/components/icon-button/icon-button.component.html","../../../projects/ds-rte-lib/src/lib/components/icon-button-toggle/icon-button-toggle.component.ts","../../../projects/ds-rte-lib/src/lib/components/icon-button-toggle/icon-button-toggle.component.html","../../../projects/ds-rte-lib/src/lib/components/text-input/text-input.component.ts","../../../projects/ds-rte-lib/src/lib/components/text-input/text-input.component.html","../../../projects/ds-rte-lib/src/lib/components/chip/chip.component.ts","../../../projects/ds-rte-lib/src/lib/components/chip/chip.component.html","../../../projects/ds-rte-lib/src/lib/components/badge/badge.component.ts","../../../projects/ds-rte-lib/src/lib/components/badge/badge.component.html","../../../projects/ds-rte-lib/src/lib/components/badge/badge.directive.ts","../../../projects/ds-rte-lib/src/lib/components/textarea/textarea.component.ts","../../../projects/ds-rte-lib/src/lib/components/textarea/textarea.component.html","../../../projects/ds-rte-lib/src/lib/components/divider/divider.component.ts","../../../projects/ds-rte-lib/src/lib/components/divider/divider.component.html","../../../projects/ds-rte-lib/src/lib/components/switch/switch.component.ts","../../../projects/ds-rte-lib/src/lib/components/switch/switch.component.html","../../../projects/ds-rte-lib/src/lib/components/segmented-control/segmented-control.component.ts","../../../projects/ds-rte-lib/src/lib/components/segmented-control/segmented-control.component.html","../../../projects/ds-rte-lib/src/lib/components/breadcrumbs/breadcrumbs.component.ts","../../../projects/ds-rte-lib/src/lib/components/breadcrumbs/breadcrumbs.component.html","../../../projects/ds-rte-lib/src/lib/components/banner/banner.component.ts","../../../projects/ds-rte-lib/src/lib/components/banner/banner.component.html","../../../projects/ds-rte-lib/src/lib/components/popover/popover.component.ts","../../../projects/ds-rte-lib/src/lib/components/popover/popover.component.html","../../../projects/ds-rte-lib/src/lib/components/popover/popover.directive.ts","../../../projects/ds-rte-lib/src/design-system-rte-angular.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input, output } from \"@angular/core\";\nimport { ButtonType } from \"@design-system-rte/core/components/button/button.interface\";\nimport { ButtonSize, ButtonVariant } from \"@design-system-rte/core/components/button/common/common-button\";\n\n@Component({\n selector: \"rte-button\",\n imports: [],\n standalone: true,\n templateUrl: \"./button.component.html\",\n styleUrl: \"./button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ButtonComponent {\n readonly label = input(\"\");\n readonly variant = input<ButtonVariant>(\"primary\");\n readonly size = input<ButtonSize>(\"m\");\n readonly disabled = input(false);\n readonly icon = input<string>(\"\");\n readonly ariaLabel = input<string>(\"\");\n readonly ariaLabelledBy = input<string>(\"\");\n readonly buttonType = input<ButtonType>(\"button\");\n\n readonly click = output<void>();\n\n onClick(event: MouseEvent | KeyboardEvent): void {\n event.stopPropagation();\n this.click.emit();\n }\n}\n","<button\n class=\"rte-button {{ variant() }} size-{{ size() }}\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n [attr.type]=\"buttonType()\"\n [disabled]=\"disabled()\"\n (click)=\"onClick($event)\"\n>\n <span class=\"rte-button-label\">{{ label() }}</span>\n</button>","import { Directive, HostBinding, input } from \"@angular/core\";\nimport { GridType } from \"@design-system-rte/core/components/grid/grid.interface\";\n\n@Directive({\n selector: \"[rteGrid]\",\n standalone: true,\n})\nexport class GridDirective {\n readonly gridType = input<GridType>(\"fluid\");\n\n @HostBinding(\"class\")\n get hostClasses(): string {\n return \"grid\";\n }\n\n @HostBinding(\"attr.data-gridtype\")\n get hostDataClasses(): string {\n const variation = this.gridType();\n return `${variation}`;\n }\n constructor() {}\n}\n","import { Directive, HostBinding, input } from \"@angular/core\";\n\n@Directive({\n selector: \"[rteCol]\",\n standalone: true,\n})\nexport class ColDirective {\n readonly xxs = input<number>();\n readonly xs = input<number>();\n readonly s = input<number>();\n readonly m = input<number>();\n readonly l = input<number>();\n readonly xl = input<number>();\n\n @HostBinding(\"class\")\n get colClasses(): string {\n return [\n \"col\",\n this.generateColumnClass(\"col-xxs\", this.xxs()),\n this.generateColumnClass(\"col-xs\", this.xs()),\n this.generateColumnClass(\"col-s\", this.s()),\n this.generateColumnClass(\"col-m\", this.m()),\n this.generateColumnClass(\"col-l\", this.l()),\n this.generateColumnClass(\"col-xl\", this.xl()),\n ]\n .filter(Boolean)\n .join(\" \");\n }\n\n constructor() {}\n\n private generateColumnClass(prefix: string, size?: number): string {\n return size ? `${prefix}-${size}` : \"\";\n }\n}\n","// This file is auto-generated. Do not edit manually.\n\nimport { isValidIconName as isValidIconNameShared } from \"@design-system-rte/core/components/icon/icon-utils\";\n\nexport const RegularIcons = {\n add: \"add\",\n \"alt-route\": \"alt_route\",\n apps: \"apps\",\n \"arrow-alt-down\": \"arrow_alt_down\",\n \"arrow-alt-down-left\": \"arrow_alt_down_left\",\n \"arrow-alt-down-right\": \"arrow_alt_down_right\",\n \"arrow-alt-left\": \"arrow_alt_left\",\n \"arrow-alt-right\": \"arrow_alt_right\",\n \"arrow-alt-up\": \"arrow_alt_up\",\n \"arrow-alt-up-left\": \"arrow_alt_up_left\",\n \"arrow-alt-up-right\": \"arrow_alt_up_right\",\n \"arrow-angle-down-left\": \"arrow_angle_down_left\",\n \"arrow-angle-down-right\": \"arrow_angle_down_right\",\n \"arrow-angle-up-left\": \"arrow_angle_up_left\",\n \"arrow-angle-up-right\": \"arrow_angle_up_right\",\n \"arrow-chevron-down\": \"arrow_chevron_down\",\n \"arrow-chevron-left\": \"arrow_chevron_left\",\n \"arrow-chevron-right\": \"arrow_chevron_right\",\n \"arrow-chevron-up\": \"arrow_chevron_up\",\n \"arrow-double-down\": \"arrow_double_down\",\n \"arrow-double-left\": \"arrow_double_left\",\n \"arrow-double-right\": \"arrow_double_right\",\n \"arrow-double-up\": \"arrow_double_up\",\n \"arrow-down\": \"arrow_down\",\n \"arrow-down-left\": \"arrow_down_left\",\n \"arrow-down-right\": \"arrow_down_right\",\n \"arrow-drop-down\": \"arrow_drop_down\",\n \"arrow-drop-up\": \"arrow_drop_up\",\n \"arrow-left\": \"arrow_left\",\n \"arrow-right\": \"arrow_right\",\n \"arrow-up\": \"arrow_up\",\n \"arrow-up-left\": \"arrow_up_left\",\n \"arrow-up-right\": \"arrow_up_right\",\n asterisk: \"asterisk\",\n \"attach-file\": \"attach_file\",\n \"battery-alt-empty\": \"battery_alt_empty\",\n \"battery-alt-full\": \"battery_alt_full\",\n \"battery-charging\": \"battery_charging\",\n \"battery-empty\": \"battery_empty\",\n \"battery-full\": \"battery_full\",\n bluetooth: \"bluetooth\",\n \"bluetooth-off\": \"bluetooth_off\",\n \"chart-bar\": \"chart_bar\",\n \"chart-bar-stacked\": \"chart_bar_stacked\",\n check: \"check\",\n \"check-indeterminate\": \"check_indeterminate\",\n \"check-small\": \"check_small\",\n \"checkbox-empty\": \"checkbox_empty\",\n close: \"close\",\n compare: \"compare\",\n \"copy-all\": \"copy_all\",\n \"crisis-alert\": \"crisis_alert\",\n cut: \"cut\",\n download: \"download\",\n \"download-done\": \"download_done\",\n \"drag-handle\": \"drag_handle\",\n \"drag-indicator\": \"drag_indicator\",\n exclamation: \"exclamation\",\n \"explore-travel\": \"explore_travel\",\n \"external-link\": \"external_link\",\n filter: \"filter\",\n \"filter-off\": \"filter_off\",\n \"first-page\": \"first_page\",\n forward: \"forward\",\n fullscreen: \"fullscreen\",\n \"fullscreen-exit\": \"fullscreen_exit\",\n history: \"history\",\n \"hourglass-empty\": \"hourglass_empty\",\n \"info-i\": \"info_i\",\n language: \"language\",\n \"last-page\": \"last_page\",\n link: \"link\",\n \"link-off\": \"link_off\",\n list: \"list\",\n \"location-disabled\": \"location_disabled\",\n login: \"login\",\n logout: \"logout\",\n menu: \"menu\",\n \"menu-open\": \"menu_open\",\n monitoring: \"monitoring\",\n \"more-down\": \"more_down\",\n \"more-horiz\": \"more_horiz\",\n \"more-up\": \"more_up\",\n \"more-vert\": \"more_vert\",\n ohm: \"ohm\",\n \"open-in-full\": \"open_in_full\",\n paste: \"paste\",\n \"play-pause\": \"play_pause\",\n \"power-input\": \"power_input\",\n \"power-plug\": \"power_plug\",\n \"power-settings\": \"power_settings\",\n \"priority-high\": \"priority_high\",\n public: \"public\",\n publish: \"publish\",\n \"question-mark\": \"question_mark\",\n radar: \"radar\",\n \"radio-button-empty\": \"radio_button_empty\",\n redo: \"redo\",\n reload: \"reload\",\n remove: \"remove\",\n reply: \"reply\",\n \"reply-all\": \"reply_all\",\n route: \"route\",\n search: \"search\",\n \"side-navigation\": \"side_navigation\",\n sort: \"sort\",\n \"support-agent\": \"support_agent\",\n timeline: \"timeline\",\n \"trending-down\": \"trending_down\",\n \"trending-flat\": \"trending_flat\",\n \"trending-up\": \"trending_up\",\n tune: \"tune\",\n undo: \"undo\",\n upload: \"upload\",\n water: \"water\",\n \"water-alt\": \"water_alt\",\n wifi: \"wifi\",\n \"wifi-off\": \"wifi_off\",\n windmill: \"windmill\",\n \"zoom-in\": \"zoom_in\",\n \"zoom-out\": \"zoom_out\",\n};\n\nexport const TogglableIcons = {\n \"add-circle\": [\"add_circle_outlined\", \"add_circle_filled\"],\n \"admin-panel-settings\": [\"admin_panel_settings_outlined\", \"admin_panel_settings_filled\"],\n analytics: [\"analytics_outlined\", \"analytics_filled\"],\n archive: [\"archive_outlined\", \"archive_filled\"],\n \"arrow-circle-chevron-down\": [\"arrow_circle_chevron_down_outlined\", \"arrow_circle_chevron_down_filled\"],\n \"arrow-circle-chevron-left\": [\"arrow_circle_chevron_left_outlined\", \"arrow_circle_chevron_left_filled\"],\n \"arrow-circle-chevron-right\": [\"arrow_circle_chevron_right_outlined\", \"arrow_circle_chevron_right_filled\"],\n \"arrow-circle-chevron-up\": [\"arrow_circle_chevron_up_outlined\", \"arrow_circle_chevron_up_filled\"],\n \"arrow-circle-down\": [\"arrow_circle_down_outlined\", \"arrow_circle_down_filled\"],\n \"arrow-circle-left\": [\"arrow_circle_left_outlined\", \"arrow_circle_left_filled\"],\n \"arrow-circle-right\": [\"arrow_circle_right_outlined\", \"arrow_circle_right_filled\"],\n \"arrow-circle-up\": [\"arrow_circle_up_outlined\", \"arrow_circle_up_filled\"],\n article: [\"article_outlined\", \"article_filled\"],\n \"assignment-complete\": [\"assignment_complete_outlined\", \"assignment_complete_filled\"],\n assignment: [\"assignment_outlined\", \"assignment_filled\"],\n \"battery-alert\": [\"battery_alert_outlined\", \"battery_alert_filled\"],\n \"battery-charging-full\": [\"battery_charging_full_outlined\", \"battery_charging_full_filled\"],\n \"bolt-alt-circle\": [\"bolt_alt_circle_outlined\", \"bolt_alt_circle_filled\"],\n \"bolt-alt\": [\"bolt_alt_outlined\", \"bolt_alt_filled\"],\n \"bolt-circle\": [\"bolt_circle_outlined\", \"bolt_circle_filled\"],\n bolt: [\"bolt_outlined\", \"bolt_filled\"],\n bookmark: [\"bookmark_outlined\", \"bookmark_filled\"],\n bookmarks: [\"bookmarks_outlined\", \"bookmarks_filled\"],\n build: [\"build_outlined\", \"build_filled\"],\n \"calendar-available\": [\"calendar_available_outlined\", \"calendar_available_filled\"],\n \"calendar-busy\": [\"calendar_busy_outlined\", \"calendar_busy_filled\"],\n \"calendar-month\": [\"calendar_month_outlined\", \"calendar_month_filled\"],\n \"calendar-today\": [\"calendar_today_outlined\", \"calendar_today_filled\"],\n call: [\"call_outlined\", \"call_filled\"],\n cancel: [\"cancel_outlined\", \"cancel_filled\"],\n category: [\"category_outlined\", \"category_filled\"],\n \"chart-add\": [\"chart_add_outlined\", \"chart_add_filled\"],\n \"chart-area\": [\"chart_area_outlined\", \"chart_area_filled\"],\n \"chart-pie\": [\"chart_pie_outlined\", \"chart_pie_filled\"],\n \"chart-table\": [\"chart_table_outlined\", \"chart_table_filled\"],\n \"chat-alt\": [\"chat_alt_outlined\", \"chat_alt_filled\"],\n \"chat-alt-unread\": [\"chat_alt_unread_outlined\", \"chat_alt_unread_filled\"],\n chat: [\"chat_outlined\", \"chat_filled\"],\n \"chat-unread\": [\"chat_unread_outlined\", \"chat_unread_filled\"],\n \"check-circle\": [\"check_circle_outlined\", \"check_circle_filled\"],\n checkbox: [\"checkbox_outlined\", \"checkbox_filled\"],\n \"checkbox-indeterminate\": [\"checkbox_indeterminate_outlined\", \"checkbox_indeterminate_filled\"],\n clock: [\"clock_outlined\", \"clock_filled\"],\n \"cloud-download\": [\"cloud_download_outlined\", \"cloud_download_filled\"],\n cloud: [\"cloud_outlined\", \"cloud_filled\"],\n \"cloud-off\": [\"cloud_off_outlined\", \"cloud_off_filled\"],\n \"cloud-upload\": [\"cloud_upload_outlined\", \"cloud_upload_filled\"],\n \"comment-add\": [\"comment_add_outlined\", \"comment_add_filled\"],\n comment: [\"comment_outlined\", \"comment_filled\"],\n copy: [\"copy_outlined\", \"copy_filled\"],\n dangerous: [\"dangerous_outlined\", \"dangerous_filled\"],\n dashboard: [\"dashboard_outlined\", \"dashboard_filled\"],\n database: [\"database_outlined\", \"database_filled\"],\n delete: [\"delete_outlined\", \"delete_filled\"],\n desktop: [\"desktop_outlined\", \"desktop_filled\"],\n devices: [\"devices_outlined\", \"devices_filled\"],\n draft: [\"draft_outlined\", \"draft_filled\"],\n eco: [\"eco_outlined\", \"eco_filled\"],\n edit: [\"edit_outlined\", \"edit_filled\"],\n \"electric-meter\": [\"electric_meter_outlined\", \"electric_meter_filled\"],\n error: [\"error_outlined\", \"error_filled\"],\n explore: [\"explore_outlined\", \"explore_filled\"],\n \"explore-off\": [\"explore_off_outlined\", \"explore_off_filled\"],\n \"fast-forward\": [\"fast_forward_outlined\", \"fast_forward_filled\"],\n \"fast-rewind\": [\"fast_rewind_outlined\", \"fast_rewind_filled\"],\n feedback: [\"feedback_outlined\", \"feedback_filled\"],\n \"file-copy\": [\"file_copy_outlined\", \"file_copy_filled\"],\n \"file-download\": [\"file_download_outlined\", \"file_download_filled\"],\n \"file-upload\": [\"file_upload_outlined\", \"file_upload_filled\"],\n \"filter-alt\": [\"filter_alt_outlined\", \"filter_alt_filled\"],\n \"filter-alt-off\": [\"filter_alt_off_outlined\", \"filter_alt_off_filled\"],\n fire: [\"fire_outlined\", \"fire_filled\"],\n \"fit-screen\": [\"fit_screen_outlined\", \"fit_screen_filled\"],\n flag: [\"flag_outlined\", \"flag_filled\"],\n flash: [\"flash_outlined\", \"flash_filled\"],\n \"flash-off\": [\"flash_off_outlined\", \"flash_off_filled\"],\n \"folder-add\": [\"folder_add_outlined\", \"folder_add_filled\"],\n folder: [\"folder_outlined\", \"folder_filled\"],\n \"folder-move\": [\"folder_move_outlined\", \"folder_move_filled\"],\n \"folder-open\": [\"folder_open_outlined\", \"folder_open_filled\"],\n \"folder-shared\": [\"folder_shared_outlined\", \"folder_shared_filled\"],\n forum: [\"forum_outlined\", \"forum_filled\"],\n \"group-add\": [\"group_add_outlined\", \"group_add_filled\"],\n group: [\"group_outlined\", \"group_filled\"],\n groups: [\"groups_outlined\", \"groups_filled\"],\n headphones: [\"headphones_outlined\", \"headphones_filled\"],\n heart: [\"heart_outlined\", \"heart_filled\"],\n help: [\"help_outlined\", \"help_filled\"],\n home: [\"home_outlined\", \"home_filled\"],\n hourglass: [\"hourglass_outlined\", \"hourglass_filled\"],\n \"image-broken\": [\"image_broken_outlined\", \"image_broken_filled\"],\n image: [\"image_outlined\", \"image_filled\"],\n \"image-gallery\": [\"image_gallery_outlined\", \"image_gallery_filled\"],\n inbox: [\"inbox_outlined\", \"inbox_filled\"],\n info: [\"info_outlined\", \"info_filled\"],\n keep: [\"keep_outlined\", \"keep_filled\"],\n \"keep-off\": [\"keep_off_outlined\", \"keep_off_filled\"],\n label: [\"label_outlined\", \"label_filled\"],\n laptop: [\"laptop_outlined\", \"laptop_filled\"],\n \"left-panel-close\": [\"left_panel_close_outlined\", \"left_panel_close_filled\"],\n \"left-panel-open\": [\"left_panel_open_outlined\", \"left_panel_open_filled\"],\n \"light-off\": [\"light_off_outlined\", \"light_off_filled\"],\n \"lightbulb-alt\": [\"lightbulb_alt_outlined\", \"lightbulb_alt_filled\"],\n \"lightbulb-circle\": [\"lightbulb_circle_outlined\", \"lightbulb_circle_filled\"],\n lightbulb: [\"lightbulb_outlined\", \"lightbulb_filled\"],\n \"list-alt\": [\"list_alt_outlined\", \"list_alt_filled\"],\n \"location-me\": [\"location_me_outlined\", \"location_me_filled\"],\n \"location-off\": [\"location_off_outlined\", \"location_off_filled\"],\n \"location-on\": [\"location_on_outlined\", \"location_on_filled\"],\n lock: [\"lock_outlined\", \"lock_filled\"],\n \"lock-open\": [\"lock_open_outlined\", \"lock_open_filled\"],\n \"lock-open-right\": [\"lock_open_right_outlined\", \"lock_open_right_filled\"],\n mail: [\"mail_outlined\", \"mail_filled\"],\n \"mail-unread\": [\"mail_unread_outlined\", \"mail_unread_filled\"],\n map: [\"map_outlined\", \"map_filled\"],\n mic: [\"mic_outlined\", \"mic_filled\"],\n \"mic-off\": [\"mic_off_outlined\", \"mic_off_filled\"],\n \"mode-dark\": [\"mode_dark_outlined\", \"mode_dark_filled\"],\n \"mode-light\": [\"mode_light_outlined\", \"mode_light_filled\"],\n notification: [\"notification_outlined\", \"notification_filled\"],\n \"notification-important\": [\"notification_important_outlined\", \"notification_important_filled\"],\n \"notification-off\": [\"notification_off_outlined\", \"notification_off_filled\"],\n \"notification-unread\": [\"notification_unread_outlined\", \"notification_unread_filled\"],\n palette: [\"palette_outlined\", \"palette_filled\"],\n \"pause-circle\": [\"pause_circle_outlined\", \"pause_circle_filled\"],\n pause: [\"pause_outlined\", \"pause_filled\"],\n \"photo-camera\": [\"photo_camera_outlined\", \"photo_camera_filled\"],\n \"play-circle\": [\"play_circle_outlined\", \"play_circle_filled\"],\n play: [\"play_outlined\", \"play_filled\"],\n power: [\"power_outlined\", \"power_filled\"],\n \"power-off\": [\"power_off_outlined\", \"power_off_filled\"],\n \"power-plug-connect\": [\"power_plug_connect_outlined\", \"power_plug_connect_filled\"],\n \"power-settings-circle\": [\"power_settings_circle_outlined\", \"power_settings_circle_filled\"],\n \"power-solar\": [\"power_solar_outlined\", \"power_solar_filled\"],\n \"power-switch\": [\"power_switch_outlined\", \"power_switch_filled\"],\n \"power-wind\": [\"power_wind_outlined\", \"power_wind_filled\"],\n print: [\"print_outlined\", \"print_filled\"],\n \"right-panel-close\": [\"right_panel_close_outlined\", \"right_panel_close_filled\"],\n \"right-panel-open\": [\"right_panel_open_outlined\", \"right_panel_open_filled\"],\n save: [\"save_outlined\", \"save_filled\"],\n send: [\"send_outlined\", \"send_filled\"],\n settings: [\"settings_outlined\", \"settings_filled\"],\n share: [\"share_outlined\", \"share_filled\"],\n \"skip-next\": [\"skip_next_outlined\", \"skip_next_filled\"],\n \"skip-previous\": [\"skip_previous_outlined\", \"skip_previous_filled\"],\n smartphone: [\"smartphone_outlined\", \"smartphone_filled\"],\n star: [\"star_outlined\", \"star_filled\"],\n \"sticky-note\": [\"sticky_note_outlined\", \"sticky_note_filled\"],\n \"stop-circle\": [\"stop_circle_outlined\", \"stop_circle_filled\"],\n stop: [\"stop_outlined\", \"stop_filled\"],\n subtitles: [\"subtitles_outlined\", \"subtitles_filled\"],\n \"text-snippet\": [\"text_snippet_outlined\", \"text_snippet_filled\"],\n \"trash-restore\": [\"trash_restore_outlined\", \"trash_restore_filled\"],\n unarchive: [\"unarchive_outlined\", \"unarchive_filled\"],\n \"user-add\": [\"user_add_outlined\", \"user_add_filled\"],\n \"user-circle\": [\"user_circle_outlined\", \"user_circle_filled\"],\n user: [\"user_outlined\", \"user_filled\"],\n \"user-settings\": [\"user_settings_outlined\", \"user_settings_filled\"],\n verified: [\"verified_outlined\", \"verified_filled\"],\n \"video-camera\": [\"video_camera_outlined\", \"video_camera_filled\"],\n \"video-camera-off\": [\"video_camera_off_outlined\", \"video_camera_off_filled\"],\n \"video-gallery\": [\"video_gallery_outlined\", \"video_gallery_filled\"],\n \"view-agenda\": [\"view_agenda_outlined\", \"view_agenda_filled\"],\n \"view-column\": [\"view_column_outlined\", \"view_column_filled\"],\n \"view-grid\": [\"view_grid_outlined\", \"view_grid_filled\"],\n \"view-kanban\": [\"view_kanban_outlined\", \"view_kanban_filled\"],\n \"view-module\": [\"view_module_outlined\", \"view_module_filled\"],\n \"view-timeline\": [\"view_timeline_outlined\", \"view_timeline_filled\"],\n \"visibility-hide\": [\"visibility_hide_outlined\", \"visibility_hide_filled\"],\n \"visibility-show\": [\"visibility_show_outlined\", \"visibility_show_filled\"],\n \"volume-down\": [\"volume_down_outlined\", \"volume_down_filled\"],\n \"volume-mute\": [\"volume_mute_outlined\", \"volume_mute_filled\"],\n \"volume-off\": [\"volume_off_outlined\", \"volume_off_filled\"],\n \"volume-up\": [\"volume_up_outlined\", \"volume_up_filled\"],\n warning: [\"warning_outlined\", \"warning_filled\"],\n waterdrop: [\"waterdrop_outlined\", \"waterdrop_filled\"],\n};\n\nexport function isValidIconName(iconName: string): boolean {\n return isValidIconNameShared(iconName, RegularIcons, TogglableIcons);\n}\n","import { HttpClient } from \"@angular/common/http\";\nimport { inject, Injectable } from \"@angular/core\";\nimport { Observable } from \"rxjs\";\n\nimport { RegularIcons, TogglableIcons } from \"./icon-map\";\n\nexport type RegularIconIdKey = keyof typeof RegularIcons;\nexport type TogglableIconIdKey = keyof typeof TogglableIcons;\n\n@Injectable()\nexport class IconService {\n private http = inject(HttpClient);\n\n getSvg(name: RegularIconIdKey | TogglableIconIdKey, appearance: \"outlined\" | \"filled\"): Observable<string> {\n if (!this.http) {\n throw new Error(\"HttpClient is not available\");\n }\n const togglableIcon = TogglableIcons[name as TogglableIconIdKey];\n\n if (togglableIcon) {\n const [outlinedIconName, filledIconName] = togglableIcon;\n\n const iconName = appearance === \"filled\" ? filledIconName : outlinedIconName;\n return this.http.get(`assets/icons/${iconName}.svg`, { responseType: \"text\" });\n } else {\n const iconName = RegularIcons[name as RegularIconIdKey];\n if (!iconName) {\n throw new Error(`Icon ${name} not found`);\n }\n return this.http.get(`assets/icons/${iconName}.svg`, { responseType: \"text\" });\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n effect,\n inject,\n input,\n} from \"@angular/core\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { DomSanitizer, SafeHtml } from \"@angular/platform-browser\";\nimport { Observable } from \"rxjs\";\n\nimport { IconService, RegularIconIdKey, TogglableIconIdKey } from \"./icon.service\";\n\n@Component({\n selector: \"rte-icon\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./icon.component.html\",\n styleUrl: \"./icon.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [IconService],\n})\nexport class IconComponent {\n readonly name = input.required<string>();\n readonly size = input(20);\n readonly color = input(\"currentColor\");\n readonly classes = input(\"\");\n readonly appearance = input<\"outlined\" | \"filled\">();\n destroyRef = inject(DestroyRef);\n\n svgContent: SafeHtml | null = null;\n svg!: Observable<string>;\n\n private sanitizer = inject(DomSanitizer);\n private iconService = inject(IconService);\n private cdr = inject(ChangeDetectorRef);\n\n constructor() {\n effect(() => {\n this.setSvgContent(this.name());\n });\n }\n\n private setSvgContent(svgName: string) {\n const svgFile = this.iconService.getSvg(\n svgName as RegularIconIdKey | TogglableIconIdKey,\n this.appearance() || \"outlined\",\n );\n\n svgFile.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((res) => {\n const size = this.size();\n const svgWithSize = res.replace(/<svg([^>]*)>/, `<svg$1 width=\"${size}\" height=\"${size}\">`);\n\n this.svgContent = this.sanitizer.bypassSecurityTrustHtml(svgWithSize);\n this.cdr.markForCheck();\n });\n }\n}\n","<div class=\"rte-icon-container\" [innerHTML]=\"svgContent\" [style.height]=\"(size())+'px'\" [style.width]=\"(size())+'px'\"></div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input } from \"@angular/core\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-link\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./link.component.html\",\n styleUrl: \"./link.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LinkComponent {\n readonly label = input(\"\");\n readonly href = input<string>(\"#\");\n readonly subtle = input<boolean>(false);\n readonly externalLink = input<boolean>(false);\n}\n","<a href=\"{{ href() }}\" class=\"rte-link\" role=\"link\" [ngClass]=\"{'subtle': subtle()}\" [target]=\"externalLink() ? '_blank' : undefined\" [rel]=\"externalLink() ? 'noopener noreferrer' : null\">\n <span class=\"rte-link-label\">\n {{ label() }}\n </span>\n <rte-icon *ngIf=\"externalLink()\" name=\"external-link\" [size]=\"12\"></rte-icon>\n</a>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\nimport { labelSize } from \"@design-system-rte/core/components/radio-button/radio-button.constants\";\n\n@Component({\n selector: \"rte-radio-button\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./radio-button.component.html\",\n styleUrl: \"./radio-button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RadioButtonComponent {\n readonly label = input(\"\");\n readonly groupName = input(\"\");\n readonly showLabel = input(true);\n readonly disabled = input(false);\n readonly error = input(false);\n readonly readOnly = input(false);\n labelSize = labelSize;\n\n readonly isDisplayed = computed(() => !(this.disabled() && this.error()));\n}\n"," <div *ngIf=\"isDisplayed()\" class=\"rte-radio-button-container\">\n <input\n type=\"radio\"\n class=\"rte-radio-button\"\n [id]=\"label()\"\n [value]=\"label()\"\n [size]=\"labelSize\"\n [name]=\"groupName()\"\n [ngClass]=\"{'error': error(), 'read-only': readOnly()}\"\n [disabled]=\"disabled()\"\n />\n <label \n *ngIf=\"showLabel()\" \n class=\"rte-radio-button-label\" \n [for]=\"label()\"\n [ngClass]=\"{\n 'error': error(),\n 'read-only': readOnly(),\n 'disabled': disabled()\n }\"\n >\n {{ label() }}\n </label>\n </div>\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\n\nimport { RadioButtonComponent } from \"../radio-button/radio-button.component\";\n\n@Component({\n selector: \"rte-radio-button-group\",\n imports: [CommonModule, RadioButtonComponent],\n standalone: true,\n templateUrl: \"./radio-button-group.component.html\",\n styleUrl: \"./radio-button-group.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class RadioButtonGroupComponent {\n readonly groupName = input(\"\");\n readonly items = input<string[]>([]);\n readonly direction = input(\"horizontal\");\n readonly showItemsLabel = input(true);\n readonly groupTitle = input(\"\");\n readonly showGroupTitle = input(false);\n readonly groupHelpText = input(\"\");\n readonly showHelpText = input(false);\n readonly errorMessage = input(\"\");\n readonly error = input(false);\n readonly disabled = input(false);\n readonly readOnly = input(false);\n\n readonly isDisplayed = computed(() => !(this.disabled() && this.error()));\n}\n","<div \n *ngIf=\"isDisplayed()\"\n class=\"radio-button-group-container\">\n <div\n class=\"radio-button-group-header\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'error': error(),\n 'read-only': readOnly(),\n }\">\n <h3\n *ngIf=\"showGroupTitle()\"\n class=\"group-title\"\n >\n {{ groupTitle() }}\n </h3>\n <p\n *ngIf=\"showHelpText()\"\n class=\"group-help-text\"\n >\n {{ groupHelpText() }}\n\n </p>\n <p\n *ngIf=\"error()\"\n class=\"group-error-message\"\n >\n {{ errorMessage() }}\n </p>\n </div>\n <div class=\"radio-button-group\" \n [ngClass]=\"{'horizontal': direction() === 'horizontal', 'vertical': direction() === 'vertical'}\">\n <ng-container \n *ngFor=\"let item of items()\">\n <rte-radio-button\n [label]=\"item\"\n [groupName]=\"groupName()\"\n [showLabel]=\"showItemsLabel()\"\n [disabled]=\"disabled()\"\n [error]=\"error()\"\n [readOnly]=\"readOnly()\"\n />\n </ng-container>\n </div>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input } from \"@angular/core\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-checkbox\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./checkbox.component.html\",\n styleUrl: \"./checkbox.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CheckboxComponent {\n readonly id = input.required<string>();\n readonly label = input.required<string>();\n readonly value = input(\"\");\n readonly indeterminate = input(false);\n readonly description = input(\"\");\n readonly showLabel = input(true);\n readonly disabled = input(false);\n readonly error = input(false);\n readonly errorMessage = input(\"\");\n readonly readOnly = input(false);\n readonly checked = input(false);\n readonly groupName = input(\"\");\n\n onKeydown(event: KeyboardEvent) {\n if (event.code === \"Space\") {\n if (this.readOnly()) {\n event.preventDefault();\n }\n }\n }\n}\n"," <div class=\"rte-checkbox-container\">\n <input\n type=\"checkbox\"\n class=\"rte-checkbox\"\n [id]=\"id()\"\n [value]=\"value()\"\n [ngClass]=\"{'error': error(), 'read-only': readOnly()}\"\n [disabled]=\"disabled()\"\n [indeterminate]=\"indeterminate()\"\n [checked]=\"checked()\"\n (keydown)=\"onKeydown($event)\"\n />\n <rte-icon class=\"rte-checkbox-icons rte-checkbox-icon-selected\" name=\"check-small\" [size]=\"16\"/> \n <rte-icon class=\"rte-checkbox-icons rte-checkbox-icon-indeterminated\" name=\"check-indeterminate\" [size]=\"16\" /> \n <div class=\"rte-checkbox-text-container\">\n <label \n *ngIf=\"showLabel()\" \n class=\"rte-checkbox-label\" \n [for]=\"id()\"\n [ngClass]=\"{\n 'error': error(),\n 'read-only': readOnly(),\n 'disabled': disabled()\n }\"\n >\n {{ label() }}\n </label>\n <p class=\"rte-checkbox-description\">{{ description() }}</p>\n <p *ngIf=\"error() && errorMessage()\" class=\"rte-checkbox-error\">{{ errorMessage() }}</p>\n </div>\n </div>\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\n\nimport { CheckboxComponent } from \"../checkbox/checkbox.component\";\n\n@Component({\n selector: \"rte-checkbox-group\",\n imports: [CommonModule, CheckboxComponent],\n standalone: true,\n templateUrl: \"./checkbox-group.component.html\",\n styleUrl: \"./checkbox-group.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CheckboxGroupComponent {\n readonly groupName = input.required<string>();\n readonly items = input.required<string[]>();\n readonly direction = input(\"horizontal\");\n readonly showItemsLabel = input(true);\n readonly groupTitle = input(\"\");\n readonly showGroupTitle = input(false);\n readonly groupHelpText = input(\"\");\n readonly showHelpText = input(false);\n readonly errorMessage = input(\"\");\n readonly error = input(false);\n readonly disabled = input(false);\n readonly readOnly = input(false);\n\n readonly isDisplayed = computed(() => !(this.disabled() && this.error()));\n}\n","<div \n *ngIf=\"isDisplayed()\"\n class=\"checkbox-group-container\">\n <div\n class=\"checkbox-group-header\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'error': error(),\n 'read-only': readOnly(),\n }\">\n <h3\n *ngIf=\"showGroupTitle()\"\n class=\"group-title\"\n >\n {{ groupTitle() }}\n </h3>\n <p\n *ngIf=\"showHelpText()\"\n class=\"group-help-text\"\n >\n {{ groupHelpText() }}\n\n </p>\n <p\n *ngIf=\"error()\"\n class=\"group-error-message\"\n >\n {{ errorMessage() }}\n </p>\n </div>\n <div class=\"checkbox-group\" \n [ngClass]=\"{'horizontal': direction() === 'horizontal', 'vertical': direction() === 'vertical'}\">\n <ng-container \n *ngFor=\"let item of items(); let i = index\">\n <rte-checkbox\n [id]=\"item + '-' + i\"\n [label]=\"item\"\n [groupName]=\"groupName()\"\n [showLabel]=\"showItemsLabel()\"\n [disabled]=\"disabled()\"\n [error]=\"error()\"\n [readOnly]=\"readOnly()\"\n />\n </ng-container>\n </div>\n</div>","import { Injectable, ComponentRef, Type, ViewContainerRef } from \"@angular/core\";\n\n@Injectable({ providedIn: \"root\" })\nexport class OverlayService {\n private overlayRoot?: HTMLElement;\n private activeOverlays = new Set<ComponentRef<unknown>>();\n\n constructor() {}\n\n private getOverlayRoot(): HTMLElement {\n if (!this.overlayRoot) {\n this.overlayRoot = document.getElementById(\"overlay-root\") as HTMLElement;\n\n if (!this.overlayRoot) {\n this.overlayRoot = document.createElement(\"div\");\n this.overlayRoot.id = \"overlay-root\";\n document.body.appendChild(this.overlayRoot);\n }\n }\n return this.overlayRoot;\n }\n\n create<T>(component: Type<T>, viewContainer: ViewContainerRef): ComponentRef<T> {\n const root = this.getOverlayRoot();\n\n const componentRef = viewContainer.createComponent(component);\n\n root.appendChild(componentRef.location.nativeElement);\n this.activeOverlays.add(componentRef);\n\n const originalDestroy = componentRef.destroy.bind(componentRef);\n componentRef.destroy = () => {\n this.activeOverlays.delete(componentRef);\n originalDestroy();\n };\n\n return componentRef;\n }\n\n destroy() {\n if (this.activeOverlays.size === 0) {\n this.overlayRoot?.remove();\n this.overlayRoot = undefined;\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, input } from \"@angular/core\";\nimport { Alignment, Position } from \"@design-system-rte/core/common/common-types\";\n\n@Component({\n selector: \"rte-tooltip\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./tooltip.component.html\",\n styleUrl: \"./tooltip.component.scss\",\n})\nexport class TooltipComponent {\n readonly label = input.required<string>();\n readonly position = input<Exclude<Position, \"auto\">>(\"top\");\n readonly alignment = input<Alignment>(\"center\");\n readonly arrow = input<boolean>(true);\n}\n","<div\n class=\"tooltip {{ position() }} {{ alignment() }}\"\n [ngClass]=\"{ arrow: arrow() }\"\n>\n <span role=\"tooltip\" class=\"tooltip-label\"> {{ label() }} </span>\n</div>\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n inject,\n input,\n OnDestroy,\n Renderer2,\n ViewContainerRef,\n} from \"@angular/core\";\nimport { TOOLTIP_GAP, TOOLTIP_GAP_ARROW } from \"@design-system-rte/core/components/tooltip/tooltip.constants\";\nimport { getAutoPlacement, getCoordinates } from \"@design-system-rte/core/components/utils/auto-placement\";\n\nimport { OverlayService } from \"../../services/overlay.service\";\n\nimport { TooltipComponent } from \"./tooltip.component\";\n\n@Directive({\n selector: \"[rteTooltip]\",\n standalone: true,\n})\nexport class TooltipDirective implements AfterViewInit, OnDestroy {\n readonly rteTooltip = input.required<string>();\n readonly rteTooltipPosition = input(\"auto\");\n readonly rteTooltipAlignment = input(\"center\");\n readonly rteTooltipArrow = input(true);\n\n private tooltipRef: ComponentRef<TooltipComponent> | null = null;\n private hostElement: HTMLElement;\n private overlayService: OverlayService;\n\n private elementRef = inject(ElementRef);\n private viewContainerRef = inject(ViewContainerRef);\n private renderer = inject(Renderer2);\n private cdr = inject(ChangeDetectorRef);\n\n @HostListener(\"mouseenter\")\n onMouseEnter(): void {\n this.showTooltip();\n }\n\n @HostListener(\"mouseleave\")\n onMouseLeave(): void {\n this.hideTooltip();\n }\n\n @HostListener(\"focus\")\n onFocus(): void {\n this.showTooltip();\n }\n\n @HostListener(\"blur\")\n onBlur(): void {\n this.hideTooltip();\n }\n\n constructor() {\n this.overlayService = inject(OverlayService);\n this.hostElement = this.elementRef.nativeElement;\n this.hostElement.setAttribute(\"tabindex\", \"0\");\n }\n\n ngAfterViewInit() {\n window.addEventListener(\"scroll\", this.positionTooltip.bind(this));\n }\n\n ngOnDestroy() {\n window.removeEventListener(\"scroll\", this.positionTooltip.bind(this));\n }\n\n showTooltip(): void {\n if (this.tooltipRef) {\n this.tooltipRef.destroy();\n }\n\n this.tooltipRef = this.overlayService.create(TooltipComponent, this.viewContainerRef);\n this.assignDirectiveToComponent();\n this.positionTooltip();\n }\n\n private assignDirectiveToComponent(): void {\n if (this.tooltipRef) {\n const tooltipElement = this.tooltipRef.location.nativeElement;\n\n const position =\n this.rteTooltipPosition() === \"auto\"\n ? getAutoPlacement(\n this.hostElement,\n tooltipElement,\n \"top\",\n this.rteTooltipArrow() ? TOOLTIP_GAP_ARROW : TOOLTIP_GAP,\n true,\n )\n : this.rteTooltipPosition();\n\n this.tooltipRef.setInput(\"label\", this.rteTooltip());\n this.tooltipRef.setInput(\"position\", position);\n this.tooltipRef.setInput(\"alignment\", this.rteTooltipAlignment());\n this.tooltipRef.setInput(\"arrow\", this.rteTooltipArrow());\n }\n }\n\n private positionTooltip(): void {\n if (this.tooltipRef) {\n const tooltipElement = this.tooltipRef.location.nativeElement;\n\n const positions = getCoordinates(\n this.tooltipRef.instance.position(),\n this.hostElement,\n tooltipElement,\n this.rteTooltipArrow() ? TOOLTIP_GAP_ARROW : TOOLTIP_GAP,\n );\n\n this.renderer.setStyle(this.hostElement, \"position\", \"relative\");\n\n this.renderer.setStyle(tooltipElement, \"top\", `${positions.top}px`);\n this.renderer.setStyle(tooltipElement, \"left\", `${positions.left}px`);\n }\n }\n\n private hideTooltip(): void {\n if (this.tooltipRef) {\n const tooltipElement = this.tooltipRef.location.nativeElement;\n\n this.renderer.setStyle(tooltipElement, \"opacity\", \"0\");\n\n setTimeout(() => {\n if (this.tooltipRef) {\n this.tooltipRef.destroy();\n this.tooltipRef = null;\n this.overlayService.destroy();\n }\n }, 200);\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, signal } from \"@angular/core\";\nimport {\n splitButtonLeftIconSize,\n splitButtonRightIconSize,\n} from \"@design-system-rte/core/components/split-button/split-button.constants\";\nimport {\n SplitButtonAppearance,\n SplitButtonPosition,\n SplitButtonSize,\n} from \"@design-system-rte/core/components/split-button/split-button.interface\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\n@Component({\n selector: \"rte-split-button\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./split-button.component.html\",\n styleUrl: \"./split-button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SplitButtonComponent {\n readonly appearance = input<SplitButtonAppearance>(\"primary\");\n readonly size = input<SplitButtonSize>(\"m\");\n readonly label = input.required<string>();\n readonly compactSpacing = input(false);\n readonly selected = input(false);\n readonly position = input<SplitButtonPosition>(\"bottom-start\");\n readonly icon = input<RegularIconIdKey | TogglableIconIdKey | null>(null);\n readonly disabled = input(false);\n readonly ariaLabelRight = input<string>();\n\n readonly splitButtonLeftIconSize = computed(() => splitButtonLeftIconSize[this.size()]);\n readonly splitButtonRightIconSize = computed(() => splitButtonRightIconSize[this.size()]);\n\n readonly isOpen = signal(false);\n\n handleKeyDownOnRightButton(event: KeyboardEvent): void {\n this.handleKeyDown(event, \"ArrowDown\", () => this.isOpen.set(true));\n this.handleKeyDown(event, \"Escape\", () => this.isOpen.set(false));\n }\n\n handleKeyDownOnMenu(event: KeyboardEvent): void {\n this.handleKeyDown(event, \"Escape\", () => this.isOpen.set(false));\n }\n\n private handleKeyDown(event: KeyboardEvent, key: string, callback: () => void): void {\n if (event.key === key) {\n event.preventDefault();\n callback();\n }\n }\n}\n","<div \n class=\"split-button-container size-{{ size() }} {{appearance()}}\"\n [ngClass]=\"{'compact-spacing': compactSpacing()}\"\n>\n <button\n class=\"split-button-left size-{{ size() }}\"\n data-testid=\"Main action button\" \n type=\"button\"\n [disabled]=\"disabled()\"\n >\n <rte-icon \n *ngIf=\"icon()\"\n [name]=\"icon()!\"\n [size]=\"splitButtonLeftIconSize()\"\n />\n <p class=\"split-button-label size-{{ size() }}\">\n {{label()}}\n </p>\n </button>\n\n <div \n class=\"split-button-divider\"\n [ngClass]=\"{'disabled': disabled()}\"\n ></div>\n\n <div class=\"split-button-right-container\">\n <button\n class=\"split-button-right size-{{ size() }}\"\n data-testid=\"Menu button\"\n type=\"button\"\n aria-haspopup=\"menu\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-label]=\"ariaLabelRight()\"\n [attr.data-selected]=\"selected()\"\n [disabled]=\"disabled()\"\n (click)=\"isOpen.set(true)\"\n (mouseenter)=\"isOpen.set(true)\"\n (mouseleave)=\"isOpen.set(false)\"\n (keydown)=\"handleKeyDownOnRightButton($event)\"\n >\n <div class=\"split-button-right-icon-container\">\n <rte-icon name=\"arrow-chevron-down\" [size]=\"splitButtonRightIconSize()\"/>\n </div>\n </button>\n\n <div\n class=\"split-button-dropdown position-{{ position() }}\"\n role=\"menu\"\n data-testid=\"Menu container\"\n [style.visibility]=\"isOpen() ? 'visible' : 'hidden'\"\n (keydown)=\"handleKeyDownOnMenu($event)\"\n >\n <ng-content/>\n </div>\n </div>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, output } from \"@angular/core\";\nimport { ButtonType } from \"@design-system-rte/core/components/button/button.interface\";\nimport { ButtonSize, ButtonVariant } from \"@design-system-rte/core/components/button/common/common-button\";\nimport { buttonIconSize } from \"@design-system-rte/core/components/button/common/common-button.constants\";\n\nimport { isValidIconName } from \"../icon/icon-map\";\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\n@Component({\n selector: \"rte-icon-button\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./icon-button.component.html\",\n styleUrl: \"./icon-button.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconButtonComponent {\n readonly disabled = input<boolean>(false);\n readonly name = input.required<RegularIconIdKey | TogglableIconIdKey>();\n readonly size = input<ButtonSize>(\"m\");\n readonly variant = input<ButtonVariant>(\"primary\");\n readonly type = input<ButtonType>(\"button\");\n readonly appearance = input<\"outlined\" | \"filled\">(\"outlined\");\n readonly compactSpacing = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined);\n readonly ariaLabelledBy = input<string | undefined>(undefined);\n\n readonly buttonIconSize = computed(() => buttonIconSize[this.size()]);\n\n readonly isValidIconName = computed(() => isValidIconName(this.name()));\n\n readonly click = output<MouseEvent | KeyboardEvent>();\n\n onClick(event: MouseEvent | KeyboardEvent): void {\n event.stopPropagation();\n this.click.emit(event);\n }\n}\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>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, output, signal } from \"@angular/core\";\nimport { ButtonType } from \"@design-system-rte/core/components/button/button.interface\";\nimport { ButtonSize, ButtonVariant } from \"@design-system-rte/core/components/button/common/common-button\";\nimport { buttonIconSize } from \"@design-system-rte/core/components/button/common/common-button.constants\";\n\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\nimport { IconButtonComponent } from \"../icon-button/icon-button.component\";\n\n@Component({\n selector: \"rte-icon-button-toggle\",\n imports: [CommonModule, IconButtonComponent],\n standalone: true,\n templateUrl: \"./icon-button-toggle.component.html\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IconButtonToggleComponent {\n readonly disabled = input<boolean>(false);\n readonly name = input.required<RegularIconIdKey | TogglableIconIdKey>();\n readonly size = input<ButtonSize>(\"m\");\n readonly variant = input<ButtonVariant>(\"primary\");\n readonly type = input<ButtonType>(\"button\");\n readonly compactSpacing = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>();\n readonly ariaLabelledBy = input<string | undefined>();\n\n readonly selected = input<boolean | undefined>();\n\n readonly internalSelected = signal(false);\n\n readonly defaultSelected = input<boolean>(false);\n\n readonly isControlled = computed(() => this.selected() !== undefined);\n\n readonly click = output<MouseEvent | KeyboardEvent>();\n\n readonly isSelected = computed(() => {\n return this.isControlled() ? this.selected() : this.internalSelected();\n });\n\n private toggleInternalSelectedState(): void {\n this.internalSelected.set(!this.internalSelected());\n }\n\n onClick(event: MouseEvent | KeyboardEvent): void {\n event.stopPropagation();\n this.click.emit(event);\n if (!this.isControlled()) {\n this.toggleInternalSelectedState();\n }\n }\n\n readonly buttonIconSize = computed(() => buttonIconSize[this.size()]);\n}\n","<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/>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input, output, signal, computed, effect } from \"@angular/core\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\nimport { IconButtonComponent } from \"../icon-button/icon-button.component\";\nimport { LinkComponent } from \"../link/link.component\";\n\n@Component({\n selector: \"rte-text-input\",\n imports: [CommonModule, IconComponent, IconButtonComponent, LinkComponent],\n standalone: true,\n templateUrl: \"./text-input.component.html\",\n styleUrl: \"./text-input.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TextInputComponent {\n readonly id = input<string>();\n readonly label = input<string>(\"\");\n readonly labelPosition = input<\"top\" | \"side\">(\"top\");\n readonly required = input<boolean>(false);\n readonly showCounter = input<boolean>(false);\n readonly value = input<string>(\"\");\n readonly internalValue = signal<string>(this.value());\n readonly leftIcon = input<RegularIconIdKey | TogglableIconIdKey | null>(null);\n readonly showRightIcon = input<boolean>(true);\n readonly rightIconAction = input<\"clean\" | \"visibilityOn\" | \"visibilityOff\">(\"clean\");\n readonly showLabelRequirement = input<boolean>(false);\n readonly assistiveAppearance = input<\"description\" | \"error\" | \"success\" | \"link\">(\"description\");\n readonly showAssistiveIcon = input<boolean>(false);\n readonly assistiveTextLabel = input<string>(\"\");\n readonly error = input<boolean>(false);\n readonly maxLength = input<number>(150);\n readonly disabled = input<boolean>(false);\n readonly readOnly = input<boolean>(false);\n readonly width = input<string>(\"300px\");\n readonly ariaLabel = input<string>(\"\");\n readonly ariaRequired = input<boolean>(false);\n readonly ariaLabelledby = input<string>(\"\");\n\n readonly valueChange = output<string>();\n readonly rightIconClick = output<void>();\n\n readonly characterCount = signal<number>(this.internalValue().length);\n readonly isHiddenInput = signal<boolean>(this.showRightIcon() && this.rightIconAction() === \"visibilityOn\");\n readonly displayedLeftIcon = computed(() => (this.error() ? \"error\" : this.leftIcon()));\n\n readonly displayCounter = computed(() => this.showCounter() && typeof this.maxLength() === \"number\");\n\n readonly rightIconName = computed(() => {\n if ([\"visibilityOn\", \"visibilityOff\"].includes(this.rightIconAction())) {\n return this.isHiddenInput() ? \"visibility-show\" : \"visibility-hide\";\n } else if (this.rightIconAction() === \"clean\") {\n return \"close\";\n }\n return \"\";\n });\n\n readonly rightIconAriaLabel = computed(() => {\n if ([\"visibilityOn\", \"visibilityOff\"].includes(this.rightIconAction())) {\n return this.isHiddenInput() ? \"show text\" : \"hide text\";\n } else if (this.rightIconAction() === \"clean\") {\n return \"clear\";\n }\n return \"\";\n });\n\n readonly shouldShowRightIcon = computed(() => {\n if (this.readOnly() || this.disabled()) {\n return false;\n }\n if (this.rightIconAction() === \"clean\") {\n return !!this.internalValue()?.length && this.showRightIcon();\n }\n return this.showRightIcon() && !!this.rightIconAction();\n });\n\n private lastParentValue = this.value();\n\n constructor() {\n effect(\n () => {\n const parentValue = this.value();\n if (parentValue !== this.lastParentValue) {\n this.lastParentValue = parentValue;\n this.internalValue.set(parentValue);\n }\n },\n { allowSignalWrites: true },\n );\n }\n\n handleChange(event: Event): void {\n const input = event.target as HTMLInputElement;\n this.internalValue.set(input.value);\n this.valueChange.emit(input.value);\n if (this.maxLength()) {\n this.characterCount.set(input.value.length);\n }\n this.valueChange.emit(input.value);\n }\n\n onRightIconClickHandler(): void {\n this.rightIconClick.emit();\n this.triggerRightIconAction();\n }\n\n private toggleInputVisibility(): void {\n this.isHiddenInput.set(!this.isHiddenInput());\n }\n\n private triggerRightIconAction(): void {\n if (this.rightIconAction() === \"clean\") {\n this.internalValue.set(\"\");\n this.valueChange.emit(\"\");\n this.characterCount.set(0);\n }\n if ([\"visibilityOn\", \"visibilityOff\"].includes(this.rightIconAction())) {\n this.toggleInputVisibility();\n }\n }\n}\n","<div\n class=\"container {{labelPosition()}}\"\n [ngClass]=\"{'error': error()}\"\n [style.width]=\"width()\"\n>\n <ng-container *ngIf=\"label()\">\n <div class=\"text\">\n <div class=\"label-container\">\n <label class=\"input-label\" [id]=\"'input-label-' + id\" [for]=\"id()\">\n {{ label() }}\n </label>\n <ng-container *ngIf=\"required()\">\n <ng-container *ngIf=\"showLabelRequirement(); else requiredIcon\">\n <span class=\"required-text\">(obligatoire)</span>\n </ng-container>\n <ng-template #requiredIcon>\n <span class=\"required-icon-container\">\n <rte-icon name=\"asterisk\" [size]=\"8\" />\n </span>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!required() && showLabelRequirement()\">\n <span class=\"required-text\">(optionnel)</span>\n </ng-container>\n </div>\n <ng-container *ngIf=\"displayCounter() && labelPosition() === 'top'\">\n <p class=\"input-counter\" data-testid=\"input-counter\">\n {{ characterCount() }}/{{ maxLength() }}\n </p>\n </ng-container>\n </div>\n </ng-container>\n\n <div class=\"input-container\">\n <div\n class=\"input {{labelPosition()}}\"\n [ngClass]=\"{'disabled': disabled(), 'read-only': readOnly()}\"\n >\n <div class=\"input-bar\" [ngClass]=\"{'with-left-icon': displayedLeftIcon(), 'with-right-icon': rightIconAction()}\">\n <ng-container *ngIf=\"displayedLeftIcon()\">\n <rte-icon\n appearance=\"outlined\"\n class=\"left-icon\"\n aria-hidden=\"true\"\n [name]=\"displayedLeftIcon()!\"\n />\n </ng-container>\n\n <input\n #inputRef\n class=\"input-field\"\n [id]=\"id()\"\n [ngClass]=\"{'error': error()}\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledby()\"\n [attr.aria-required]=\"ariaRequired()\"\n [type]=\"isHiddenInput() ? 'password' : 'text'\"\n [maxLength]=\"maxLength()\"\n [disabled]=\"disabled()\"\n [readOnly]=\"readOnly()\"\n [value]=\"internalValue()\"\n (input)=\"handleChange($event)\"\n />\n\n <ng-container *ngIf=\"shouldShowRightIcon()\">\n <rte-icon-button\n appearance=\"outlined\"\n variant=\"transparent\"\n class=\"right-icon\"\n data-testid=\"right-icon\"\n [name]=\"rightIconName() || 'close'\"\n [ariaLabel]=\"rightIconAriaLabel()\"\n (click)=\"onRightIconClickHandler()\"\n />\n </ng-container>\n </div>\n </div>\n\n <ng-container *ngIf=\"assistiveTextLabel()\">\n <div class=\"assistive-text\">\n <ng-container *ngIf=\"showAssistiveIcon() && assistiveAppearance() === 'error'\">\n <rte-icon name=\"error\" appearance=\"outlined\" class=\"assistive-icon-error\" [size]=\"12\" />\n </ng-container>\n <ng-container *ngIf=\"showAssistiveIcon() && assistiveAppearance() === 'success'\">\n <rte-icon name=\"check\" appearance=\"outlined\" class=\"assistive-icon-success\" [size]=\"12\" />\n </ng-container>\n <ng-container *ngIf=\"assistiveAppearance() === 'link'; else assistiveLabel\">\n <rte-link [label]=\"assistiveTextLabel()\" />\n </ng-container>\n <ng-template #assistiveLabel>\n <p class=\"assistive-label\" [ngClass]=\"assistiveAppearance()\">\n {{ assistiveTextLabel() }}\n </p>\n </ng-template>\n </div>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"displayCounter() && labelPosition() === 'side'\">\n <p class=\"input-counter\" data-testid=\"input-counter\">\n {{ characterCount() }}/{{ maxLength() }}\n </p>\n </ng-container>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input, output } from \"@angular/core\";\nimport { CHIP_TYPE_TO_ARIA_ROLE_MAP } from \"@design-system-rte/core/components/chip/chip.constants\";\nimport {\n BACKSPACE_KEY,\n DELETE_KEY,\n ENTER_KEY,\n SPACE_KEY,\n} from \"@design-system-rte/core/constants/keyboard/keyboard.constants\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-chip\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./chip.component.html\",\n styleUrl: \"./chip.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ChipComponent {\n readonly id = input<string | undefined>();\n readonly label = input<string>(\"\");\n readonly selected = input<boolean>(false);\n readonly disabled = input<boolean>(false);\n readonly type = input<\"single\" | \"multi\" | \"input\">(\"single\");\n readonly compactSpacing = input<boolean>(false);\n readonly click = output<Event>();\n readonly close = output<Event>();\n\n readonly isCheckable = computed(() => this.type() === \"single\" || this.type() === \"multi\");\n readonly role = computed(() => CHIP_TYPE_TO_ARIA_ROLE_MAP[this.type()] || null);\n\n onClick(event: Event) {\n event.stopPropagation();\n if (!this.disabled()) {\n this.click.emit(event);\n }\n }\n\n onKeyUp(event: KeyboardEvent) {\n event.preventDefault();\n if (!this.disabled()) {\n if (event.key === SPACE_KEY || event.key === ENTER_KEY) {\n const target = event.target as HTMLElement;\n const isCloseButton = target.classList.contains(\"chip-close-button\");\n if (isCloseButton) {\n target.click();\n } else {\n this.onClick(event);\n }\n } else if ((event.key === BACKSPACE_KEY || event.key === DELETE_KEY) && this.type() === \"input\") {\n const closeButton = (event.target as HTMLElement).querySelector(\n \".chip-close-button\",\n ) as HTMLButtonElement | null;\n if (closeButton) {\n closeButton.click();\n }\n }\n }\n }\n onBlur(event: FocusEvent) {\n event.stopPropagation();\n }\n onCloseClick(event: Event) {\n event.stopPropagation();\n if (!this.disabled()) {\n this.close.emit(event);\n }\n }\n}\n","<span\n class=\"chip\"\n tabindex=\"0\"\n [attr.role]=\"role()\"\n [attr.data-selected]=\"isCheckable() ? selected() : null\"\n [attr.data-disabled]=\"disabled()\"\n [attr.data-compact-spacing]=\"compactSpacing()\"\n [attr.data-type]=\"type()\"\n [attr.aria-checked]=\"isCheckable() ? selected() : null\"\n [attr.aria-disabled]=\"disabled()\"\n (click)=\"onClick($event)\"\n (keyup)=\"onKeyUp($event)\"\n (blur)=\"onBlur($event)\"\n>\n <ng-container *ngIf=\"type() === 'multi'\">\n <span class=\"chip-icon-container\">\n <span\n class=\"chip-icon\"\n [class.chip-icon--visible]=\"selected()\"\n [attr.aria-hidden]=\"!selected()\"\n >\n <rte-icon name=\"check-circle\" appearance=\"filled\" [size]=\"16\"></rte-icon>\n </span>\n <span\n class=\"chip-icon\"\n [class.chip-icon--visible]=\"!selected()\"\n [attr.aria-hidden]=\"selected()\"\n >\n <rte-icon name=\"radio-button-empty\" [size]=\"16\"></rte-icon>\n </span>\n </span>\n </ng-container>\n <span class=\"chip-label\" [attr.data-type]=\"type()\">{{ label() }}</span>\n <button\n *ngIf=\"type() === 'input'\"\n type=\"button\"\n class=\"chip-close-button\"\n [attr.aria-label]=\"'Supprimer ' + label()\"\n [disabled]=\"disabled()\"\n [value]=\"label()\"\n (click)=\"onCloseClick($event)\"\n >\n <rte-icon class=\"chip-close-button--icon\" name=\"close\" [size]=\"16\"></rte-icon>\n </button>\n</span>","import { CommonModule } from \"@angular/common\";\nimport { Component, input, computed, ChangeDetectionStrategy } from \"@angular/core\";\nimport { BadgeContent, BadgeSize, BadgeType } from \"@design-system-rte/core/components/badge/badge.interface\";\nimport {\n getBadgeIconSize,\n getDisplayCount,\n getShowBadge,\n getShowIcon,\n getShowText,\n} from \"@design-system-rte/core/components/badge/badge.utils\";\n\nimport { isValidIconName } from \"../icon/icon-map\";\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-badge\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./badge.component.html\",\n styleUrl: \"./badge.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BadgeComponent {\n readonly badgeType = input<BadgeType>(\"brand\");\n readonly badgeSize = input<BadgeSize>(\"m\");\n readonly badgeContent = input<BadgeContent>(\"number\");\n readonly count = input<number | undefined>();\n readonly icon = input<string>(\"notification\");\n readonly simpleBadge = input<boolean>(false);\n\n readonly isValidIconName = computed(() => isValidIconName(this.icon()));\n\n readonly showIcon = computed(() =>\n getShowIcon({\n size: this.badgeSize(),\n content: this.badgeContent(),\n iconSize: this.iconSize(),\n }),\n );\n\n readonly showText = computed(() =>\n getShowText({\n size: this.badgeSize(),\n content: this.badgeContent(),\n count: this.count(),\n }),\n );\n\n readonly displayCount = computed(() => getDisplayCount(this.count()));\n readonly countOverflow = computed(() => this.showText() && this.displayCount().length > 2);\n readonly iconSize = computed(() => getBadgeIconSize(this.badgeSize()));\n\n readonly showBadge = computed(() =>\n getShowBadge({\n size: this.badgeSize(),\n content: this.badgeContent(),\n count: this.count(),\n iconSize: this.iconSize(),\n }),\n );\n}\n","<div\n class=\"badge size-{{ badgeSize() }} type-{{ badgeType() }}\"\n data-testid=\"badge\"\n [attr.data-simple-badge]=\"simpleBadge()\"\n [ngClass]=\"{ hidden: !showBadge(), 'count-overflow': countOverflow() }\"\n>\n <rte-icon\n *ngIf=\"showIcon()\"\n class=\"badge-icon\"\n [name]=\"icon()\"\n [size]=\"iconSize()!\"\n />\n <span *ngIf=\"showText()\" class=\"badge-text\">\n {{ displayCount() }}\n </span>\n</div>\n","import {\n Directive,\n input,\n OnChanges,\n OnDestroy,\n ViewContainerRef,\n ComponentRef,\n inject,\n ElementRef,\n Renderer2,\n OnInit,\n} from \"@angular/core\";\nimport { BadgeType, BadgeSize, BadgeContent } from \"@design-system-rte/core/components/badge/badge.interface\";\n\nimport { RegularIconIdKey, TogglableIconIdKey } from \"../icon/icon.service\";\n\nimport { BadgeComponent } from \"./badge.component\";\n\n@Directive({\n selector: \"[rteBadge]\",\n standalone: true,\n})\nexport class BadgeDirective implements OnInit, OnChanges, OnDestroy {\n readonly rteBadgeType = input<BadgeType>(\"brand\");\n readonly rteBadgeSize = input<BadgeSize>(\"m\");\n readonly rteBadgeContent = input<BadgeContent>(\"number\");\n readonly rteBadgeCount = input<number | undefined>();\n readonly rteBadgeIcon = input<RegularIconIdKey | TogglableIconIdKey>(\"settings\");\n\n private badgeComponentRef: ComponentRef<BadgeComponent> | null = null;\n private hostElement: HTMLElement;\n\n private readonly viewContainer = inject(ViewContainerRef);\n private readonly elementRef = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n\n constructor() {\n this.hostElement = this.elementRef.nativeElement;\n }\n\n ngOnInit(): void {\n this.badgeComponentRef = this.viewContainer.createComponent(BadgeComponent);\n this.assignDirectiveToComponent();\n this.appendComponentToHost();\n this.renderer.setStyle(this.hostElement, \"position\", \"relative\");\n }\n\n ngOnChanges(): void {\n this.assignDirectiveToComponent();\n }\n\n ngOnDestroy(): void {\n if (this.badgeComponentRef) {\n this.badgeComponentRef.destroy();\n }\n }\n\n private assignDirectiveToComponent(): void {\n if (this.badgeComponentRef) {\n this.badgeComponentRef.setInput(\"badgeType\", this.rteBadgeType());\n this.badgeComponentRef.setInput(\"badgeSize\", this.rteBadgeSize());\n this.badgeComponentRef.setInput(\"badgeContent\", this.rteBadgeContent());\n this.badgeComponentRef.setInput(\"count\", this.rteBadgeCount());\n this.badgeComponentRef.setInput(\"icon\", this.rteBadgeIcon());\n }\n }\n\n private appendComponentToHost(): void {\n if (this.badgeComponentRef) {\n this.renderer.appendChild(this.elementRef.nativeElement, this.badgeComponentRef.location.nativeElement);\n }\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { Component, input, computed, output, ElementRef, viewChild } from \"@angular/core\";\nimport { NG_VALUE_ACCESSOR } from \"@angular/forms\";\nimport {\n TEXTAREA_ICON_SIZE,\n TEXTAREA_REQUIREMENT_INDICATOR_VALUE,\n} from \"@design-system-rte/core/components/textarea/textarea.constants\";\nimport type {\n TextareaAssistiveTextAppearance,\n TextareaLabelPosition,\n} from \"@design-system-rte/core/components/textarea/textarea.interface\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { LinkComponent } from \"../link/link.component\";\n\n@Component({\n selector: \"rte-textarea\",\n imports: [CommonModule, IconComponent, LinkComponent],\n standalone: true,\n templateUrl: \"./textarea.component.html\",\n styleUrl: \"./textarea.component.scss\",\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: TextareaComponent,\n multi: true,\n },\n ],\n})\nexport class TextareaComponent {\n readonly id = input<string | undefined>(undefined);\n readonly name = input<string | undefined>(undefined);\n readonly ariaLabelledby = input<string | undefined>(undefined);\n readonly label = input<string | undefined>(undefined);\n readonly labelId = input<string | undefined>(undefined);\n readonly labelPosition = input<TextareaLabelPosition>(\"top\");\n readonly assistiveTextLabel = input<string | undefined>(undefined);\n readonly assistiveTextAppearance = input<TextareaAssistiveTextAppearance>(\"description\");\n readonly assistiveTextLink = input<string | undefined>(undefined);\n readonly required = input<boolean>(false);\n readonly showLabelRequirement = input<boolean>(false);\n readonly resizeable = input<boolean | string>(true);\n readonly maxLength = input<number | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readOnly = input<boolean>(false);\n readonly value = input<string | undefined>(undefined);\n readonly rows = input<number>(3);\n readonly defaultValue = input<string | undefined>(undefined);\n readonly showCounter = input<boolean>(false);\n\n readonly assistiveTextIconSize = TEXTAREA_ICON_SIZE;\n\n readonly requirementIndicatorValue = computed(() =>\n this.required()\n ? this.showLabelRequirement()\n ? TEXTAREA_REQUIREMENT_INDICATOR_VALUE.required\n : TEXTAREA_REQUIREMENT_INDICATOR_VALUE.requiredIcon\n : TEXTAREA_REQUIREMENT_INDICATOR_VALUE.optional,\n );\n\n readonly change = output<Event>();\n readonly blur = output<FocusEvent>();\n\n readonly textareaRef = viewChild<ElementRef<HTMLTextAreaElement>>(\"textarea\");\n\n readonly isAssistiveTextLinkVisible = computed(\n () => this.assistiveTextAppearance() === \"link\" && this.assistiveTextLink() !== undefined,\n );\n\n characterCount = 0;\n\n readonly isCounterVisible = computed(() => {\n return this.showCounter() && this.maxLength();\n });\n\n onInput(event: Event) {\n const target = event.target as HTMLTextAreaElement;\n this.characterCount = target.value.length;\n this.change.emit(event);\n }\n\n onBlur(event: FocusEvent) {\n this.textareaRef()?.nativeElement?.scrollTo({ top: 0 });\n this.blur.emit(event);\n }\n}\n","<div class=\"container\" [attr.data-label-position]=\"labelPosition()\"> \n <label *ngIf=\"label() && labelPosition() === 'side'\" [attr.data-label-position]=\"labelPosition()\" [attr.id]=\"labelId()\" [attr.for]=\"id()\">{{label()}}<span *ngIf=\"required() || showLabelRequirement()\" class=\"requirement-indicator\" aria-hidden=\"true\" [ngClass]=\"{'required': required(), 'show-label-requirement': showLabelRequirement() }\">{{requirementIndicatorValue()}}</span></label>\n <div class=\"top-position-container\" [attr.data-label-position]=\"labelPosition()\">\n <div class=\"header-container\" [attr.data-label-position]=\"labelPosition()\">\n <label *ngIf=\"label() && labelPosition() === 'top'\" [attr.id]=\"labelId()\" [attr.for]=\"id()\">{{label()}}<span *ngIf=\"required() || showLabelRequirement()\" class=\"requirement-indicator\" aria-hidden=\"true\" [ngClass]=\"{'required': required(), 'show-label-requirement': showLabelRequirement() }\">{{requirementIndicatorValue()}}</span></label>\n <span *ngIf=\"isCounterVisible()\" class=\"character-counter\">{{ characterCount }}/{{ maxLength() }}</span>\n </div>\n <div class=\"textarea-container\" [attr.data-label-position]=\"labelPosition()\">\n <textarea\n #textarea\n class=\"textarea {{ assistiveTextAppearance() }}\"\n [class.resizeable]=\"resizeable()\"\n [attr.id]=\"id()\"\n [attr.name]=\"name()\"\n [attr.aria-labelledby]=\"labelId() || ariaLabelledby()\"\n [attr.required]=\"required() || null\"\n [attr.maxLength]=\"maxLength() !== undefined ? maxLength() : null\"\n [attr.disabled]=\"disabled() || null\"\n [attr.readonly]=\"readOnly() || null\"\n [value]=\"value() !== undefined ? value() : null\"\n [defaultValue]=\"defaultValue() !== undefined ? defaultValue() : null\"\n [attr.rows]=\"rows()\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n <rte-link *ngIf=\"isAssistiveTextLinkVisible()\" class=\"assistive-text-link\" [externalLink]=\"true\" [href]=\"assistiveTextLink() || ''\" [label]=\"assistiveTextLabel() || ''\">\n </rte-link>\n <div *ngIf=\"assistiveTextAppearance() !== 'link'\" class=\"assistive-text {{ assistiveTextAppearance() }}\" [ngClass]=\"{'disabled' : disabled()}\">\n <rte-icon *ngIf=\"assistiveTextAppearance() === 'error'\" name=\"error\" [size]=\"assistiveTextIconSize\"></rte-icon>\n <rte-icon *ngIf=\"assistiveTextAppearance() === 'success'\" name=\"check-circle\" [size]=\"assistiveTextIconSize\"></rte-icon>\n <span>{{ assistiveTextLabel() }}</span>\n </div>\n </div>\n </div>\n</div>\n","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\nimport { DividerProps } from \"@design-system-rte/core/components/divider/divider.interface\";\n\n@Component({\n selector: \"rte-divider\",\n imports: [CommonModule],\n standalone: true,\n templateUrl: \"./divider.component.html\",\n styleUrl: \"./divider.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DividerComponent {\n readonly orientation = input<DividerProps[\"orientation\"]>(\"horizontal\");\n readonly thickness = input<DividerProps[\"thickness\"]>(\"light\");\n readonly appearance = input<DividerProps[\"appearance\"]>(\"default\");\n readonly endPoint = input<DividerProps[\"endPoint\"]>(\"round\");\n\n readonly isHorizontal = computed(() => this.orientation() === \"horizontal\");\n}\n","@if (isHorizontal()) {\n <hr class=\"horizontal {{thickness()}} {{appearance()}} {{endPoint()}}\" />\n} @else {\n <div class=\"vertical {{thickness()}} {{appearance()}} {{endPoint()}}\" role=\"separator\"></div>\n}","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, input, signal, OnInit, output } from \"@angular/core\";\nimport { switchHeight, switchWidth } from \"@design-system-rte/core/components/switch/switch.constants\";\nimport { SwitchProps } from \"@design-system-rte/core/components/switch/switch.interface\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\n@Component({\n selector: \"rte-switch\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./switch.component.html\",\n styleUrl: \"./switch.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SwitchComponent implements OnInit {\n readonly label = input(\"\");\n readonly appearance = input<SwitchProps[\"appearance\"]>(\"brand\");\n readonly showLabel = input(true);\n readonly showIcon = input(true);\n readonly disabled = input(false);\n readonly readOnly = input(false);\n readonly checked = input(false);\n\n readonly stateChange = output<Event>();\n\n switchHeight = switchHeight;\n switchWidth = switchWidth;\n\n readonly isChecked = signal(false);\n\n ngOnInit() {\n this.isChecked.set(this.checked());\n }\n\n handleChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.isChecked.set(target.checked);\n this.stateChange.emit(event);\n }\n\n handleClick(event: MouseEvent): void {\n if (this.readOnly() || this.disabled()) {\n event.stopPropagation();\n } else {\n const inputElement = (event.currentTarget as HTMLInputElement).querySelector<HTMLInputElement>(\n 'input[type=\"checkbox\"]',\n );\n if (inputElement) {\n inputElement.checked = !this.isChecked();\n const changeEvent = new Event(\"change\", { bubbles: true });\n Object.defineProperty(changeEvent, \"target\", {\n value: inputElement,\n writable: false,\n });\n this.handleChange(changeEvent);\n }\n }\n }\n}\n","<div\n class=\"switch-container appearance-{{appearance()}}\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'read-only': readOnly(),\n 'checked': isChecked()\n }\"\n (click)=\"handleClick($event)\"\n>\n <input\n type=\"checkbox\"\n role=\"switch\"\n class=\"switch\"\n [attr.aria-checked]=\"isChecked()\"\n [attr.aria-label]=\"label()\"\n [attr.aria-disabled]=\"disabled()\"\n [attr.aria-readonly]=\"readOnly()\"\n [ariaLabel]=\"label()\"\n [name]=\"label()\"\n [ngClass]=\"{\n 'disabled': disabled(),\n 'read-only': readOnly(),\n 'checked': isChecked()\n }\"\n [style.min-height.px]=\"switchHeight\"\n [style.min-width.px]=\"switchWidth\"\n [disabled]=\"disabled()\"\n [checked]=\"isChecked()\"\n />\n <div class=\"switch-icon-check\" [ngClass]=\"{'checked': isChecked() }\" (click)=\"handleClick($event)\">\n @if (showIcon()) {\n <rte-icon\n class=\"icon\"\n [name]=\"isChecked() ? 'check' : 'close'\"\n [size]=\"16\"\n (click)=\"handleClick($event)\"\n ></rte-icon>\n }\n </div>\n @if (showLabel() && label()) {\n <label\n class=\"switch-label\"\n [for]=\"label()\"\n >\n {{ label() }}\n </label>\n }\n</div>","import { CommonModule } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n viewChildren,\n AfterViewInit,\n OnDestroy,\n computed,\n signal,\n OnChanges,\n SimpleChanges,\n} from \"@angular/core\";\nimport {\n getSegmentPosition,\n focusNextNotSegmentElement,\n focusPreviousNotSegmentElement,\n focusNextSegmentElement,\n focusPreviousSegmentElement,\n isValidSegmentedControlOptions,\n} from \"@design-system-rte/core/components/segmented-control/segmented-control-utils\";\nimport {\n SegmentOptions,\n SegmentProps,\n} from \"@design-system-rte/core/components/segmented-control/segmented-control.interface\";\nimport { FOCUSABLE_ELEMENTS_QUERY } from \"@design-system-rte/core/constants/dom/dom.constants\";\nimport {\n ARROW_LEFT_KEY,\n ARROW_RIGHT_KEY,\n ENTER_KEY,\n SPACE_KEY,\n TAB_KEY,\n} from \"@design-system-rte/core/constants/keyboard/keyboard.constants\";\n\nimport { IconComponent } from \"../icon/icon.component\";\n\nconst segmentClass = \"rte-segment\";\nconst segmentSelector = `.${segmentClass}`;\n\n@Component({\n selector: \"rte-segmented-control\",\n imports: [CommonModule, IconComponent],\n standalone: true,\n templateUrl: \"./segmented-control.component.html\",\n styleUrl: \"./segmented-control.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SegmentedControlComponent implements OnChanges, AfterViewInit, OnDestroy {\n readonly options = input<SegmentOptions[]>([]);\n readonly change = output<string>();\n readonly selectedSegment = input<string>();\n readonly ariaLabel = input<string>();\n readonly ariaLabelledBy = input<string>();\n\n readonly segmentRefs = viewChildren<ElementRef<HTMLDivElement>>(\"segment\");\n\n readonly sliderLeft = signal(0);\n readonly sliderWidth = signal(0);\n readonly sliderTop = signal(0);\n\n readonly segmentSelectedIndicatorStyle = computed(() => ({\n left: `${this.sliderLeft()}px`,\n top: `${this.sliderTop()}px`,\n width: `${this.sliderWidth()}px`,\n }));\n\n readonly isValidOptions = computed(() => isValidSegmentedControlOptions(this.options()));\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes[\"selectedSegment\"]) {\n this.updateSelectedSegmentIndicator();\n }\n }\n\n ngAfterViewInit() {\n this.updateSelectedSegmentIndicator();\n window.addEventListener(\"resize\", this.updateSelectedSegmentIndicator.bind(this));\n window.addEventListener(\"keydown\", this.onGlobalKeyDown.bind(this));\n\n this.segmentRefs().forEach((segmentElement) => {\n segmentElement.nativeElement.addEventListener(\"focus\", this.focusCurrentSegmentElement.bind(this));\n });\n }\n\n ngOnDestroy() {\n window.removeEventListener(\"resize\", this.updateSelectedSegmentIndicator.bind(this));\n window.removeEventListener(\"keydown\", this.onGlobalKeyDown.bind(this));\n\n this.segmentRefs().forEach((segmentElement) => {\n segmentElement.nativeElement.addEventListener(\"focus\", this.focusCurrentSegmentElement.bind(this));\n });\n }\n\n selectSegment(id: string) {\n this.change.emit(id);\n }\n\n isSegmentSelected(id: string): boolean {\n return this.selectedSegment() === id;\n }\n\n handleKeyUp(event: KeyboardEvent) {\n event.preventDefault();\n if (event.key === ARROW_RIGHT_KEY || event.key === ARROW_LEFT_KEY) {\n const allSegmentElements =\n Array.from(\n document.activeElement?.parentElement?.parentElement?.querySelectorAll(\n segmentSelector,\n ) as NodeListOf<HTMLElement>,\n ) || [];\n\n const currentActiveSegmentElementIndex = Array.from(allSegmentElements).findIndex(\n (element) => element === document.activeElement,\n );\n\n if (event.key === ARROW_RIGHT_KEY) {\n focusNextSegmentElement(currentActiveSegmentElementIndex, allSegmentElements);\n } else if (event.key === ARROW_LEFT_KEY) {\n focusPreviousSegmentElement(currentActiveSegmentElementIndex, allSegmentElements);\n }\n } else if (event.key === SPACE_KEY || event.key === ENTER_KEY) {\n const target = event.target as HTMLElement;\n const dataId = target.getAttribute(\"data-id\");\n this.selectSegment(dataId || \"\");\n }\n }\n\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === TAB_KEY || event.key === SPACE_KEY || event.key === ENTER_KEY) {\n event.preventDefault();\n }\n if (event.key === TAB_KEY) {\n const allFocusableElements = Array.from(document.querySelectorAll(FOCUSABLE_ELEMENTS_QUERY)) as HTMLElement[];\n const currentActiveElement = document.activeElement;\n const currentIndex = allFocusableElements.indexOf(currentActiveElement as HTMLElement);\n\n if (event.shiftKey) {\n focusPreviousNotSegmentElement(currentIndex, allFocusableElements, segmentClass);\n } else {\n focusNextNotSegmentElement(currentIndex, allFocusableElements, segmentClass);\n }\n }\n }\n\n getSegmentPosition(index: number): SegmentProps[\"position\"] {\n return getSegmentPosition(index, this.options().length);\n }\n\n private updateSelectedSegmentIndicator() {\n const idx = this.options().findIndex((opt) => opt.id === this.selectedSegment());\n const segment = this.segmentRefs()[idx]?.nativeElement;\n\n if (segment) {\n this.sliderWidth.set(segment.offsetWidth);\n this.sliderTop.set(segment.offsetTop);\n this.sliderLeft.set(segment.offsetLeft);\n }\n }\n\n private lastKeydown: string | null = null;\n\n private onGlobalKeyDown = (event: KeyboardEvent) => {\n this.lastKeydown = event.key;\n };\n\n private focusCurrentSegmentElement() {\n if (this.lastKeydown === \"Tab\") {\n const selectedSegmentElement = this.segmentRefs().find((segment) =>\n segment.nativeElement.classList.contains(\"selected\"),\n )?.nativeElement;\n if (selectedSegmentElement) {\n selectedSegmentElement.focus();\n } else {\n this.segmentRefs()[0]?.nativeElement?.focus();\n }\n }\n }\n}\n","<div *ngIf=\"isValidOptions()\" class=\"rte-segmented-control\" role=\"radiogroup\" [attr.aria-label]=\"ariaLabel()\">\n <span class=\"rte-segment-selected-indicator\" [ngStyle]=\"segmentSelectedIndicatorStyle()\"></span>\n <ng-container *ngFor=\"let option of options(); let idx = index\">\n <div class=\"rte-segment-container\" [attr.data-position]=\"getSegmentPosition(idx)\">\n <div\n #segment\n role=\"radio\"\n class=\"rte-segment\"\n tabindex=\"0\"\n [attr.data-id]=\"option.id\"\n [attr.data-segment-type]=\"option.icon ? 'icon' : 'label'\"\n [class.selected]=\"isSegmentSelected(option.id)\"\n [attr.aria-checked]=\"isSegmentSelected(option.id)\"\n [attr.aria-label]=\"option.label\"\n (click)=\"selectSegment(option.id)\"\n (keydown)=\"handleKeyDown($event)\"\n (keyup)=\"handleKeyUp($event)\"\n >\n <rte-icon\n *ngIf=\"isSegmentSelected(option.id)\"\n name=\"check-small\"\n class=\"rte-selected-icon\"\n [size]=\"24\"\n />\n <div class=\"rte-segment-content\">\n <ng-container *ngIf=\"option.icon; else label\">\n <rte-icon [name]=\"option.icon\" [size]=\"24\" [appearance]=\"isSegmentSelected(option.id) ? 'filled' : 'outlined' \"></rte-icon>\n </ng-container>\n <ng-template #label>\n <span class=\"rte-segment-label\">{{ option.label }}</span>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</div>","import { CommonModule } from \"@angular/common\";\nimport { ChangeDetectionStrategy, Component, computed, input } from \"@angular/core\";\nimport { BREADCRUMBS_DEFAULT_ARIA_LABEL } from \"@design-system-rte/core/components/breadcrumbs/breadcrumbs.constants\";\nimport {\n BreadcrumbProps,\n BreadcrumbsTruncatedItems,\n} from \"@design-system-rte/core/components/breadcrumbs/breadcrumbs.interface\";\nimport {\n getBreadcrumbsTruncatedItems,\n shouldTruncateBreadcrumbs,\n} from \"@design-system-rte/core/components/breadcrumbs/breadcrumbs.utils\";\n\nimport { IconComponent } from \"../icon/icon.component\";\nimport { LinkComponent } from \"../link/link.component\";\nimport { TooltipDirective } from \"../tooltip/tooltip.directive\";\n\n@Component({\n selector: \"rte-breadcrumbs\",\n imports: [CommonModule, LinkComponent, TooltipDirective, IconComponent],\n standalone: true,\n templateUrl: \"./breadcrumbs.component.html\",\n styleUrl: \"./breadcrumbs.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BreadcrumbsComponent {\n readonly items = input<BreadcrumbProps[]>([]);\n readonly ariaLabel = input<string>(BREADCRUMBS_DEFAULT_ARIA_LABEL);\n\n readonly truncatedItems = computed<BreadcrumbsTruncatedItems | null>(() => {\n if (shouldTruncateBreadcrumbs(this.items())) {\n return getBreadcrumbsTruncatedItems(this.items());\n }\n return null;\n });\n\n // TODO: replace this placeholder functionality for the Dropdown component\n readonly truncatedItemsText = computed(() => {\n return (\n this.truncatedItems()\n ?.truncated.map((item) => item.label)\n .join(\", \") || \"\"\n );\n });\n}\n","<nav\n class=\"breadcrumbs-container\"\n role=\"navigation\"\n [attr.aria-label]=\"ariaLabel()\"\n [ngClass]=\"{'truncated': truncatedItems()?.truncated?.length}\"\n>\n @if (truncatedItems()?.truncated?.length) {\n <div class=\"breadcrumb-item\">\n <rte-link\n [href]=\"truncatedItems()!.root.link\"\n [label]=\"truncatedItems()!.root.label\"\n [subtle]=\"true\"\n />\n </div>\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n <span class=\"breadcrumb-item\">\n <rte-icon name=\"more-horiz\" tabIndex=\"0\" role=\"menu\" aria-label=\"More items\" data-testid=\"show-more\" rteTooltipPosition=\"bottom\" [size]=\"12\" [rteTooltip]=\"truncatedItemsText()\"/>\n </span>\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n @for (item of truncatedItems()!.remaining; track item.link; let i = $index) {\n <div class=\"breadcrumb-item\">\n @if (i === truncatedItems()!.remaining.length - 1) {\n <a role=\"link\" aria-current=\"page\" tabindex=\"0\" [attr.aria-label]=\"item.label\">\n {{ item.label }}\n </a>\n } @else {\n <rte-link [href]=\"item.link\" [label]=\"item.label\" [subtle]=\"true\"/>\n }\n </div>\n @if (i < truncatedItems()!.remaining.length - 1) {\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n }\n }\n } @else {\n @for (item of items(); track item.link; let i = $index) {\n <div class=\"breadcrumb-item\">\n @if (i === items().length - 1) {\n <a role=\"link\" aria-current=\"page\" tabindex=\"0\" [attr.aria-label]=\"item.label\">\n {{ item.label }}\n </a>\n } @else {\n <rte-link [href]=\"item.link\" [label]=\"item.label\" [subtle]=\"true\"/>\n }\n </div>\n @if (i < items().length - 1) {\n <span aria-hidden=\"true\" class=\"separator\">/</span>\n }\n }\n }\n</nav>\n","import { CommonModule } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n signal,\n SimpleChanges,\n OnInit,\n OnChanges,\n} from \"@angular/core\";\nimport { BannerPosition, BannerType } from \"@design-system-rte/core/components/banner/banner.interface\";\n\nimport { ButtonComponent } from \"../button/button.component\";\nimport { IconComponent } from \"../icon/icon.component\";\nimport { IconButtonComponent } from \"../icon-button/icon-button.component\";\n\n@Component({\n selector: \"rte-banner\",\n imports: [CommonModule, IconComponent, IconButtonComponent, ButtonComponent],\n standalone: true,\n templateUrl: \"./banner.component.html\",\n styleUrl: \"./banner.component.scss\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BannerComponent implements OnInit, OnChanges {\n readonly type = input<BannerType>(\"default\");\n readonly message = input.required<string>();\n readonly position = input<BannerPosition>(\"push\");\n readonly title = input<string>();\n readonly closable = input<boolean>(false);\n readonly showIcon = input<boolean>(false);\n readonly isOpen = input<boolean>(true);\n readonly actionLabel = input<string>();\n\n readonly click = output<void>();\n\n readonly visible = signal(false);\n readonly rendering = signal(false);\n\n readonly close = output<void>();\n\n ngOnInit() {\n this.visible.set(this.isOpen());\n this.rendering.set(this.isOpen());\n if (this.closable() === false && this.position() === \"overlay\") {\n console.warn(\"Banner: 'closable' and 'close' props must be set when 'position' has 'overlay' value.\");\n return;\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes[\"isOpen\"]) {\n if (this.isOpen()) this.openBanner();\n else {\n this.closeBanner();\n }\n }\n }\n\n clickAction() {\n this.click.emit();\n }\n\n closeBanner() {\n this.visible.set(false);\n setTimeout(() => {\n this.rendering.set(false);\n this.close.emit();\n }, 200);\n }\n\n private openBanner() {\n if (this.rendering()) return;\n this.rendering.set(true);\n requestAnimationFrame(() => {\n requestAnimationFrame(() => this.visible.set(true));\n });\n }\n}\n","<section\n *ngIf=\"rendering()\"\n class=\"rte-banner-container {{ type() }} {{ position() }}\"\n [ngClass]=\"{ open: visible(), close: !visible() }\"\n [attr.role]=\"type() === 'default' ? 'status' : 'alert'\"\n>\n <div class=\"rte-banner\">\n <div *ngIf=\"showIcon()\" class=\"rte-banner-icon\">\n <rte-icon [name]=\"type() === 'default' ? 'info' : 'error'\" [size]=\"32\" />\n </div>\n <div class=\"rte-banner-content\">\n <span *ngIf=\"title()\" class=\"rte-banner-title\">{{ title() }}</span>\n <div *ngIf=\"message()\" class=\"rte-banner-message\">\n <span>{{ message() }}</span>\n <rte-button\n *ngIf=\"actionLabel()\"\n variant=\"neutral\"\n size=\"s\"\n [label]=\"actionLabel()!\"\n [ariaLabel]=\"actionLabel()!\"\n (click)=\"clickAction()\"\n />\n </div>\n </div>\n <div *ngIf=\"closable()\" class=\"rte-banner-close-icon\">\n <rte-icon-button\n name=\"close\"\n variant=\"neutral\"\n ariaLabel=\"close banner\"\n (click)=\"closeBanner()\"\n />\n </div>\n </div>\n</section>\n","import { CommonModule } from \"@angular/common\";\nimport { Component, ElementRef, inject, input, output, AfterViewInit } from \"@angular/core\";\nimport { PopoverAlignment, PopoverPosition } from \"@design-system-rte/core/components/popover/popover.interface\";\nimport { FOCUSABLE_ELEMENTS_QUERY } from \"@design-system-rte/core/constants/dom/dom.constants\";\nimport { TAB_KEY } from \"@design-system-rte/core/constants/keyboard/keyboard.constants\";\n\nimport { ButtonComponent } from \"../button/button.component\";\n\n@Component({\n selector: \"rte-popover\",\n imports: [CommonModule, ButtonComponent],\n standalone: true,\n templateUrl: \"./popover.component.html\",\n styleUrl: \"./popover.component.scss\",\n})\nexport class PopoverComponent implements AfterViewInit {\n readonly primaryButtonLabel = input.required<string>();\n readonly position = input.required<Exclude<PopoverPosition, \"auto\">>();\n readonly alignment = input<PopoverAlignment>();\n readonly content = input<string>();\n readonly arrow = input<boolean>();\n readonly title = input<string>();\n readonly secondaryButtonLabel = input<string>();\n readonly isOpen = input<boolean>(false);\n readonly coordinates = input<{ top: number; left: number }>({ top: 0, left: 0 });\n\n readonly clickPrimaryButton = output<void>();\n readonly clickSecondaryButton = output<void>();\n\n private element: HTMLElement;\n\n private elementRef = inject(ElementRef);\n\n constructor() {\n this.element = this.elementRef.nativeElement;\n }\n\n ngAfterViewInit() {\n this.focusFirstElement();\n }\n\n handleKeydown(event: KeyboardEvent) {\n if (event.key === TAB_KEY) {\n if (this.isOpen()) {\n const focusable = this.element.querySelectorAll(FOCUSABLE_ELEMENTS_QUERY);\n const first = focusable[0] as HTMLElement;\n const last = focusable[focusable.length - 1] as HTMLElement;\n if (event.shiftKey && document.activeElement === first) {\n event.preventDefault();\n last.focus();\n } else if (!event.shiftKey && document.activeElement === last) {\n event.preventDefault();\n first.focus();\n }\n }\n }\n }\n\n handleClickPrimaryButton() {\n this.clickPrimaryButton.emit();\n }\n handleClickSecondaryButton() {\n this.clickSecondaryButton.emit();\n }\n\n private focusFirstElement() {\n const focusable = this.element.querySelectorAll(FOCUSABLE_ELEMENTS_QUERY);\n if (focusable.length > 0) (focusable[0] as HTMLElement).focus();\n }\n}\n","<div\n #root\n class=\"rte-popover\"\n role=\"dialog\"\n aria-modal=\"true\"\n [attr.data-arrow]=\"arrow()\"\n [attr.data-position]=\"position()\"\n [attr.data-alignment]=\"alignment()\"\n [attr.data-open]=\"isOpen()\"\n [style]=\"{ top: coordinates().top + 'px', left: coordinates().left + 'px' }\"\n (keydown)=\"handleKeydown($event)\"\n>\n <div class=\"popoverInner\">\n <div class=\"popoverContentContainer\">\n <div *ngIf=\"title\" class=\"popoverTitle\">{{ title() }}</div>\n <div class=\"popoverContent\">{{ content() }}</div>\n </div>\n <div class=\"popoverButtonContainer\">\n <rte-button\n *ngIf=\"secondaryButtonLabel()\"\n variant=\"secondary\"\n [label]=\"secondaryButtonLabel() || ''\"\n (click)=\"handleClickSecondaryButton()\"\n />\n <rte-button\n variant=\"primary\"\n [label]=\"primaryButtonLabel()\"\n (click)=\"handleClickPrimaryButton()\"\n />\n </div>\n </div>\n</div>\n","import {\n AfterViewInit,\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n inject,\n input,\n OnDestroy,\n output,\n Renderer2,\n ViewContainerRef,\n} from \"@angular/core\";\nimport { POPOVER_GAP, POPOVER_GAP_ARROW } from \"@design-system-rte/core/components/popover/popover.constants\";\nimport {\n getAutoAlignment,\n getAutoPlacement,\n getCoordinates,\n} from \"@design-system-rte/core/components/utils/auto-placement\";\nimport { ESCAPE_KEY } from \"@design-system-rte/core/constants/keyboard/keyboard.constants\";\n\nimport { OverlayService } from \"../../services/overlay.service\";\n\nimport { PopoverComponent } from \"./popover.component\";\n\n@Directive({\n selector: \"[rtePopover]\",\n standalone: true,\n})\nexport class PopoverDirective implements AfterViewInit, OnDestroy {\n readonly rtePopoverContent = input.required<string>();\n readonly rtePopoverTitle = input<string>();\n readonly rtePopoverPosition = input(\"auto\");\n readonly rtePopoverAlignment = input(\"center\");\n readonly rtePopoverArrow = input(true);\n readonly rtePopoverPrimaryButtonLabel = input<string>();\n readonly rtePopoverSecondaryButtonLabel = input<string>();\n readonly clickPrimaryButton = output<void>();\n readonly clickSecondaryButton = output<void>();\n readonly rtePopoverCloseOnClickOutside = input<boolean>(true);\n readonly rtePopoverCloseOnEscape = input<boolean>(true);\n\n private popoverRef: ComponentRef<PopoverComponent> | null = null;\n private hostElement: HTMLElement;\n private overlayService: OverlayService;\n\n private elementRef = inject(ElementRef);\n private viewContainerRef = inject(ViewContainerRef);\n private renderer = inject(Renderer2);\n\n private subPrimary?: { unsubscribe(): void };\n private subSecondary?: { unsubscribe(): void };\n\n private onScroll = () => this.positionPopover();\n private onMouseDown = (e: MouseEvent) => this.handleClickAway(e);\n private onKeyDown = (e: KeyboardEvent) => this.handleKeydown(e);\n\n @HostListener(\"click\")\n onClick(): void {\n if (!this.popoverRef) {\n this.showPopover();\n }\n }\n\n constructor() {\n this.overlayService = inject(OverlayService);\n this.hostElement = this.elementRef.nativeElement;\n this.hostElement.setAttribute(\"tabindex\", \"0\");\n }\n\n ngAfterViewInit() {\n window.addEventListener(\"scroll\", this.onScroll);\n document.addEventListener(\"mousedown\", this.onMouseDown);\n document.addEventListener(\"keydown\", this.onKeyDown);\n }\n\n ngOnDestroy() {\n window.removeEventListener(\"scroll\", this.onScroll);\n document.removeEventListener(\"mousedown\", this.onMouseDown);\n document.removeEventListener(\"keydown\", this.onKeyDown);\n this.destroyPopover();\n }\n\n showPopover(): void {\n if (this.popoverRef) {\n this.popoverRef.destroy();\n }\n this.popoverRef = this.overlayService.create(PopoverComponent, this.viewContainerRef);\n\n this.subPrimary?.unsubscribe();\n this.subSecondary?.unsubscribe();\n this.subPrimary = this.popoverRef.instance.clickPrimaryButton.subscribe(() => this.handleClickPrimaryButton());\n this.subSecondary = this.popoverRef.instance.clickSecondaryButton.subscribe(() =>\n this.handleClickSecondaryButton(),\n );\n\n this.assignDirectiveToComponent();\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n this.positionPopover();\n });\n });\n }\n\n private handleClickAway(event: MouseEvent) {\n const elements = [this.hostElement, this.popoverRef?.location.nativeElement] as HTMLElement[];\n if (elements.some((element) => !element)) return;\n const shouldIgnore = elements.some((element) => element.contains(event.target as Node));\n if (!shouldIgnore && this.rtePopoverCloseOnClickOutside()) {\n this.hidePopover();\n }\n }\n\n private handleKeydown(event: KeyboardEvent) {\n if (event.key === ESCAPE_KEY && this.rtePopoverCloseOnEscape()) {\n event.preventDefault();\n this.hidePopover();\n }\n }\n\n private assignDirectiveToComponent(): void {\n if (this.popoverRef) {\n const popoverElement = this.popoverRef.location.nativeElement.children[0];\n\n const position =\n this.rtePopoverPosition() === \"auto\"\n ? getAutoPlacement(\n this.hostElement,\n popoverElement,\n \"top\",\n this.rtePopoverArrow() ? POPOVER_GAP_ARROW : POPOVER_GAP,\n )\n : this.rtePopoverPosition();\n\n this.popoverRef.setInput(\"title\", this.rtePopoverTitle());\n this.popoverRef.setInput(\"content\", this.rtePopoverContent());\n this.popoverRef.setInput(\"position\", position);\n this.popoverRef.setInput(\"alignment\", this.rtePopoverAlignment());\n this.popoverRef.setInput(\"arrow\", this.rtePopoverArrow());\n this.popoverRef.setInput(\"primaryButtonLabel\", this.rtePopoverPrimaryButtonLabel());\n this.popoverRef.setInput(\"secondaryButtonLabel\", this.rtePopoverSecondaryButtonLabel());\n }\n }\n\n private handleClickPrimaryButton() {\n if (!this.popoverRef) return;\n this.clickPrimaryButton.emit();\n this.hidePopover();\n }\n\n private handleClickSecondaryButton() {\n this.clickSecondaryButton?.emit();\n this.hidePopover();\n }\n\n private positionPopover(): void {\n if (this.popoverRef) {\n const popoverElement = this.popoverRef.location.nativeElement.children[0];\n\n const autoAlignment = getAutoAlignment(this.hostElement, popoverElement, this.popoverRef.instance.position());\n this.popoverRef.setInput(\"alignment\", autoAlignment);\n\n const positions = getCoordinates(\n this.popoverRef.instance.position(),\n this.hostElement,\n popoverElement,\n this.rtePopoverArrow() ? POPOVER_GAP_ARROW : POPOVER_GAP,\n autoAlignment,\n );\n\n this.renderer.setStyle(this.hostElement, \"position\", \"relative\");\n\n this.renderer.setStyle(popoverElement, \"position\", \"absolute\");\n\n this.renderer.setStyle(popoverElement, \"top\", `${positions.top}px`);\n this.renderer.setStyle(popoverElement, \"left\", `${positions.left}px`);\n this.popoverRef.setInput(\"isOpen\", true);\n }\n }\n\n private hidePopover(): void {\n if (this.popoverRef) {\n this.popoverRef.setInput(\"isOpen\", false);\n\n setTimeout(() => this.destroyPopover(), 200);\n }\n }\n\n private destroyPopover(): void {\n if (this.popoverRef) {\n this.subPrimary?.unsubscribe();\n this.subSecondary?.unsubscribe();\n this.subPrimary = undefined;\n this.subSecondary = undefined;\n this.popoverRef.destroy();\n this.popoverRef = null;\n this.overlayService.destroy();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["isValidIconNameShared"],"mappings":"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"}