cax-design-system 2.7.4 → 2.7.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"cax-design-system-sidebar.mjs","sources":["../../src/app/components/sidebar/sidebar.ts","../../src/app/components/sidebar/sidebar.html","../../src/app/components/sidebar/sidebar.module.ts","../../src/app/components/sidebar/cax-design-system-sidebar.ts"],"sourcesContent":["import { animate, animation, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, DOCUMENT } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n Output,\n QueryList,\n Renderer2,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { caxConfig, CaxTemplate, SharedModule } from 'cax-design-system/api';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { DomHandler } from 'cax-design-system/dom';\nimport { TimesIcon } from 'cax-design-system/icons/times';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { Nullable, VoidListener } from 'cax-design-system/ts-helpers';\nimport { ZIndexUtils } from 'cax-design-system/utils';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}')]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n/**\n * Sidebar is a panel component displayed as an overlay at the edges of the screen.\n * @group Components\n */\n@Component({\n selector: 'cax-sidebar',\n templateUrl: './sidebar.html',\n styleUrls: ['./sidebar.scss'],\n animations: [trigger('panelState', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, RippleModule, SharedModule, TimesIcon, ButtonModule],\n host: {\n class: 'cax-element'\n }\n})\nexport class Sidebar implements AfterViewInit, AfterContentInit, OnDestroy {\n sidebarVisible = false;\n\n toggleSidebar() {\n this.sidebarVisible = this.visible;\n this.sidebarVisible = !this.sidebarVisible;\n }\n @Input() headerText: string = '';\n /**\n * Target element to attach the dialog, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Whether to block scrolling of the document when sidebar is active.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) blockScroll: boolean = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Aria label of the close icon.\n * @group Props\n */\n @Input() ariaCloseLabel: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * Whether an overlay mask is displayed behind the sidebar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) modal: boolean = true;\n /**\n * Whether to dismiss sidebar on click of the mask.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) dismissible: boolean = true;\n /**\n * Whether to display the close icon.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showCloseIcon: boolean = true;\n /**\n * Specifies if pressing escape key should hide the sidebar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) closeOnEscape: boolean = true;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Specifies the visibility of the dialog.\n * @group Props\n */\n @Input() get visible(): boolean {\n return this._visible as boolean;\n }\n set visible(val: boolean) {\n this._visible = val;\n this.visibleChange.emit(this._visible);\n }\n /**\n * Specifies the position of the sidebar, valid values are \"left\", \"right\", \"bottom\" and \"top\".\n * @group Props\n */\n @Input() get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n\n switch (value) {\n case 'left':\n this.transformOptions = 'translate3d(-100%, 0px, 0px)';\n break;\n case 'right':\n this.transformOptions = 'translate3d(100%, 0px, 0px)';\n break;\n case 'bottom':\n this.transformOptions = 'translate3d(0px, 100%, 0px)';\n break;\n case 'top':\n this.transformOptions = 'translate3d(0px, -100%, 0px)';\n break;\n }\n }\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n @Input() get fullScreen(): boolean {\n return this._fullScreen;\n }\n set fullScreen(value: boolean) {\n this._fullScreen = value;\n\n if (value) this.transformOptions = 'none';\n }\n @Input() mode: 'overlay' | 'inline' = 'overlay';\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n /**\n * Callback to invoke when dialog is shown.\n * @group Emits\n */\n @Output() onShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog is hidden.\n * @group Emits\n */\n @Output() onHide: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog visibility is changed.\n * @param {boolean} value - Visible value.\n * @group Emits\n */\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n initialized: boolean | undefined;\n\n _visible: boolean | undefined;\n\n _position: string = 'left';\n\n _fullScreen: boolean = false;\n\n container: Nullable<HTMLDivElement>;\n\n transformOptions: any = 'translate3d(-100%, 0px, 0px)';\n\n mask: Nullable<HTMLDivElement>;\n\n maskClickListener: VoidListener;\n\n documentEscapeListener: VoidListener;\n\n animationEndListener: VoidListener;\n\n @Input() contentTemplate: TemplateRef<any> | null = null;\n\n @Input() headerTemplate: TemplateRef<any> | null = null;\n @Input() headlessTemplate: TemplateRef<any> | null = null;\n\n @Input() footerTemplate: Nullable<TemplateRef<any>>;\n\n @Input() closeIconTemplate: TemplateRef<any> | null = null;\n\n /**\n * Inline style of the header section.\n * @group Props\n */\n @Input() headerStyle: { [klass: string]: any } = {}; // Changed to initialize with empty object\n\n // headlessTemplate: Nullable<TemplateRef<any>>;\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n public el: ElementRef,\n public renderer: Renderer2,\n public cd: ChangeDetectorRef,\n public config: caxConfig\n ) {}\n\n ngAfterViewInit() {\n this.initialized = true;\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n case 'closeicon':\n this.closeIconTemplate = item.template;\n break;\n case 'headless':\n this.headlessTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (event.code === 'Escape') {\n this.hide(false);\n }\n }\n\n show() {\n if (this.autoZIndex) {\n ZIndexUtils.set('modal', this.container, this.baseZIndex || this.config.zIndex.modal);\n }\n\n if (this.modal) {\n this.enableModality();\n }\n\n this.onShow.emit({});\n this.visibleChange.emit(true);\n }\n\n hide(emit: boolean = true) {\n if (emit) {\n this.onHide.emit({});\n }\n\n if (this.modal) {\n this.disableModality();\n }\n }\n\n close(event: Event) {\n this.hide();\n this.visible = false;\n this.visibleChange.emit(this.visible);\n event.preventDefault();\n }\n\n enableModality() {\n const activeDrawers = this.document.querySelectorAll('.cax-sidebar-active');\n const activeDrawersLength = activeDrawers.length;\n const zIndex = activeDrawersLength == 1 ? String(parseInt((this.container as HTMLDivElement).style.zIndex) - 1) : String(parseInt((activeDrawers[0] as HTMLElement).style.zIndex) - 1);\n\n if (!this.mask) {\n this.mask = this.renderer.createElement('div');\n this.renderer.setStyle(this.mask, 'zIndex', zIndex);\n DomHandler.addMultipleClasses(this.mask, 'cax-component-overlay cax-sidebar-mask cax-component-overlay cax-component-overlay-enter');\n\n if (this.dismissible) {\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event: any) => {\n if (this.dismissible) {\n this.close(event);\n }\n });\n }\n\n this.renderer.appendChild(this.document.body, this.mask);\n if (this.blockScroll) {\n DomHandler.blockBodyScroll();\n }\n }\n }\n\n disableModality() {\n if (this.mask) {\n DomHandler.addClass(this.mask, 'cax-component-overlay-leave');\n this.animationEndListener = this.renderer.listen(this.mask, 'animationend', this.destroyModal.bind(this));\n }\n }\n\n destroyModal() {\n this.unbindMaskClickListener();\n\n if (this.mask) {\n this.renderer.removeChild(this.document.body, this.mask);\n }\n\n if (this.blockScroll) {\n DomHandler.unblockBodyScroll();\n }\n\n this.unbindAnimationEndListener();\n this.mask = null;\n }\n\n onAnimationStart(event: any) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.appendContainer();\n this.show();\n\n if (this.closeOnEscape) {\n this.bindDocumentEscapeListener();\n }\n break;\n }\n }\n\n onAnimationEnd(event: any) {\n switch (event.toState) {\n case 'void':\n this.hide(false);\n ZIndexUtils.clear(this.container);\n this.unbindGlobalListeners();\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.container);\n else DomHandler.appendChild(this.container, this.appendTo);\n }\n }\n\n bindDocumentEscapeListener() {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt((this.container as HTMLDivElement).style.zIndex) === ZIndexUtils.get(this.container)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n unbindGlobalListeners() {\n this.unbindMaskClickListener();\n this.unbindDocumentEscapeListener();\n }\n\n unbindAnimationEndListener() {\n if (this.animationEndListener && this.mask) {\n this.animationEndListener();\n this.animationEndListener = null;\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['mode']) {\n this.modal = this.mode !== 'inline';\n }\n }\n ngOnDestroy() {\n this.initialized = false;\n\n if (this.visible && this.modal) {\n this.destroyModal();\n }\n\n if (this.appendTo && this.container) {\n this.renderer.appendChild(this.el.nativeElement, this.container);\n }\n\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.container = null;\n this.unbindGlobalListeners();\n this.unbindAnimationEndListener();\n }\n}\n","<div class=\"cax-sidebar-layout-wrapper\">\r\n <!-- Sidebar Panel -->\r\n <div\r\n #container\r\n [ngClass]=\"{\r\n 'cax-sidebar': true,\r\n 'cax-sidebar-active': visible,\r\n 'cax-sidebar-overlay': mode === 'overlay',\r\n 'cax-sidebar-inline': mode === 'inline',\r\n 'cax-sidebar-left': position === 'left' && !fullScreen,\r\n 'cax-sidebar-right': position === 'right' && !fullScreen,\r\n 'cax-sidebar-top': position === 'top' && !fullScreen,\r\n 'cax-sidebar-bottom': position === 'bottom' && !fullScreen,\r\n 'cax-sidebar-full': fullScreen\r\n }\"\r\n *ngIf=\"visible\"\r\n [@panelState]=\"{ value: 'visible', params: { transform: transformOptions, transition: transitionOptions } }\"\r\n (@panelState.start)=\"onAnimationStart($event)\"\r\n (@panelState.done)=\"onAnimationEnd($event)\"\r\n [ngStyle]=\"style\"\r\n [class]=\"styleClass\"\r\n role=\"complementary\"\r\n [attr.data-pc-name]=\"'sidebar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"sidebarTemplate\"></ng-container>\r\n\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate\"></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #notHeadless>\r\n <div class=\"cax-sidebar-header\" [ngStyle]=\"headerStyle\">\r\n <ng-container *ngIf=\"headerTemplate; else defaultHeader\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-template #defaultHeader>\r\n <div>{{ headerText || 'Sidebar' }}</div>\r\n </ng-template>\r\n\r\n <button\r\n type=\"button\"\r\n class=\"cax-sidebar-close cax-sidebar-icon-css cax-link\"\r\n (click)=\"close($event)\"\r\n (keydown.enter)=\"close($event)\"\r\n [attr.aria-label]=\"ariaCloseLabel\"\r\n *ngIf=\"showCloseIcon\"\r\n caxRipple\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n [attr.data-pc-groucax-section]=\"'iconcontainer'\"\r\n >\r\n <TimesIcon *ngIf=\"!closeIconTemplate\" class=\"cax-sidebar-close-icon\" [attr.data-pc-section]=\"'closeicon'\" />\r\n <span *ngIf=\"closeIconTemplate\" class=\"cax-sidebar-close-icon\" [attr.data-pc-section]=\"'closeicon'\">\r\n <ng-template *ngTemplateOutlet=\"closeIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n </div>\r\n\r\n <div class=\"cax-sidebar-content\"[attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </div>\r\n\r\n <div *ngIf=\"footerTemplate\" class=\"cax-sidebar-footer\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </div>\r\n\r\n <!-- Main Content Shifting with Sidebar -->\r\n <div\r\n class=\"cax-sidebar-content-wrapper\"\r\n [ngClass]=\"{\r\n 'shift-left': visible && mode === 'inline' && position === 'left',\r\n 'shift-right': visible && mode === 'inline' && position === 'right',\r\n 'shift-bottom':visible && mode === 'inline' && position === 'bottom',\r\n 'shift-top': visible && mode === 'inline' && position === 'top'\r\n }\"\r\n >\r\n <ng-content></ng-content>\r\n </div>\r\n</div>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SharedModule } from 'cax-design-system/api';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { TimesIcon } from 'cax-design-system/icons/times';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { Sidebar } from './sidebar';\n\n@NgModule({\n imports: [Sidebar, CommonModule, RippleModule, SharedModule, TimesIcon, ButtonModule],\n exports: [SharedModule, Sidebar]\n})\nexport class SidebarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cax-design-system-sidebar.mjs","sources":["../../src/app/components/sidebar/sidebar.ts","../../src/app/components/sidebar/sidebar.html","../../src/app/components/sidebar/sidebar.module.ts","../../src/app/components/sidebar/cax-design-system-sidebar.ts"],"sourcesContent":["import { animate, animation, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, DOCUMENT } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n Output,\n QueryList,\n Renderer2,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { caxConfig, CaxTemplate, SharedModule } from 'cax-design-system/api';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { DomHandler } from 'cax-design-system/dom';\nimport { TimesIcon } from 'cax-design-system/icons/times';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { Nullable, VoidListener } from 'cax-design-system/ts-helpers';\nimport { ZIndexUtils } from 'cax-design-system/utils';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}')]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n/**\n * Sidebar is a panel component displayed as an overlay at the edges of the screen.\n * @group Components\n */\n@Component({\n selector: 'cax-sidebar',\n templateUrl: './sidebar.html',\n styleUrls: ['./sidebar.scss'],\n animations: [trigger('panelState', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: true,\n imports: [CommonModule, RippleModule, SharedModule, TimesIcon, ButtonModule],\n host: {\n class: 'cax-element'\n }\n})\nexport class Sidebar implements AfterViewInit, AfterContentInit, OnDestroy {\n sidebarVisible = false;\n\n toggleSidebar() {\n this.sidebarVisible = this.visible;\n this.sidebarVisible = !this.sidebarVisible;\n }\n @Input() headerText: string = '';\n /**\n * Target element to attach the dialog, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any;\n /**\n * Whether to block scrolling of the document when sidebar is active.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) blockScroll: boolean = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Aria label of the close icon.\n * @group Props\n */\n @Input() ariaCloseLabel: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * Whether an overlay mask is displayed behind the sidebar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) modal: boolean = true;\n /**\n * Whether to dismiss sidebar on click of the mask.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) dismissible: boolean = true;\n /**\n * Whether to display the close icon.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) showCloseIcon: boolean = true;\n /**\n * Specifies if pressing escape key should hide the sidebar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) closeOnEscape: boolean = true;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Specifies the visibility of the dialog.\n * @group Props\n */\n @Input() get visible(): boolean {\n return this._visible as boolean;\n }\n set visible(val: boolean) {\n this._visible = val;\n this.visibleChange.emit(this._visible);\n }\n /**\n * Specifies the position of the sidebar, valid values are \"left\", \"right\", \"bottom\" and \"top\".\n * @group Props\n */\n @Input() get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n\n switch (value) {\n case 'left':\n this.transformOptions = 'translate3d(-100%, 0px, 0px)';\n break;\n case 'right':\n this.transformOptions = 'translate3d(100%, 0px, 0px)';\n break;\n case 'bottom':\n this.transformOptions = 'translate3d(0px, 100%, 0px)';\n break;\n case 'top':\n this.transformOptions = 'translate3d(0px, -100%, 0px)';\n break;\n }\n }\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n @Input() get fullScreen(): boolean {\n return this._fullScreen;\n }\n set fullScreen(value: boolean) {\n this._fullScreen = value;\n\n if (value) this.transformOptions = 'none';\n }\n @Input() mode: 'overlay' | 'inline' = 'overlay';\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n /**\n * Callback to invoke when dialog is shown.\n * @group Emits\n */\n @Output() onShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog is hidden.\n * @group Emits\n */\n @Output() onHide: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog visibility is changed.\n * @param {boolean} value - Visible value.\n * @group Emits\n */\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n initialized: boolean | undefined;\n\n _visible: boolean | undefined;\n\n _position: string = 'left';\n\n _fullScreen: boolean = false;\n\n container: Nullable<HTMLDivElement>;\n\n transformOptions: any = 'translate3d(-100%, 0px, 0px)';\n\n mask: Nullable<HTMLDivElement>;\n\n maskClickListener: VoidListener;\n\n documentEscapeListener: VoidListener;\n\n animationEndListener: VoidListener;\n\n @Input() contentTemplate: TemplateRef<any> | null = null;\n\n @Input() headerTemplate: TemplateRef<any> | null = null;\n @Input() headlessTemplate: TemplateRef<any> | null = null;\n\n @Input() footerTemplate: Nullable<TemplateRef<any>>;\n\n @Input() closeIconTemplate: TemplateRef<any> | null = null;\n\n /**\n * Inline style of the header section.\n * @group Props\n */\n @Input() headerStyle: { [klass: string]: any } = {}; // Changed to initialize with empty object\n\n // headlessTemplate: Nullable<TemplateRef<any>>;\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n public el: ElementRef,\n public renderer: Renderer2,\n public cd: ChangeDetectorRef,\n public config: caxConfig\n ) {}\n\n ngAfterViewInit() {\n this.initialized = true;\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n case 'header':\n this.headerTemplate = item.template;\n break;\n case 'footer':\n this.footerTemplate = item.template;\n break;\n case 'closeicon':\n this.closeIconTemplate = item.template;\n break;\n case 'headless':\n this.headlessTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n @HostBinding('class.sidebar-inline') isInlineMode = false;\n @ViewChild('container') sidebarElement!: ElementRef;\n private hasShifted = false;\n ngAfterViewChecked(): void {\n if (this.visible && this.sidebarElement && !this.hasShifted) {\n this.handleContentShift();\n this.hasShifted = true;\n } else if (!this.visible && this.hasShifted) {\n this.resetBodyShift(); // optional cleanup\n this.hasShifted = false;\n }\n }\n\n handleContentShift(): void {\n const body = document.body;\n body.style.margin = '0'; // Clear any old shifts\n\n if (!this.sidebarElement || this.mode !== 'inline') return;\n const sidebar = this.sidebarElement.nativeElement as HTMLElement;\n const width = sidebar.offsetWidth;\n const height = sidebar.offsetHeight;\n switch (this.position) {\n case 'left':\n body.style.marginLeft = `${width}px`;\n break;\n case 'right':\n body.style.marginRight = `${width}px`;\n break;\n case 'top':\n body.style.marginTop = `${height}px`;\n break;\n case 'bottom':\n body.style.marginBottom = `${height}px`;\n break;\n }\n }\n\n resetBodyShift(): void {\n const body = document.body;\n body.style.marginLeft = '';\n body.style.marginRight = '';\n body.style.marginTop = '';\n body.style.marginBottom = '';\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (event.code === 'Escape') {\n this.hide(false);\n }\n }\n\n show() {\n if (this.autoZIndex) {\n ZIndexUtils.set('modal', this.container, this.baseZIndex || this.config.zIndex.modal);\n }\n\n if (this.modal) {\n this.enableModality();\n }\n\n this.onShow.emit({});\n this.visibleChange.emit(true);\n }\n\n hide(emit: boolean = true) {\n if (emit) {\n this.onHide.emit({});\n }\n\n if (this.modal) {\n this.disableModality();\n }\n }\n\n close(event: Event) {\n this.hide();\n this.visible = false;\n this.visibleChange.emit(this.visible);\n event.preventDefault();\n }\n\n enableModality() {\n const activeDrawers = this.document.querySelectorAll('.cax-sidebar-active');\n const activeDrawersLength = activeDrawers.length;\n const zIndex = activeDrawersLength == 1 ? String(parseInt((this.container as HTMLDivElement).style.zIndex) - 1) : String(parseInt((activeDrawers[0] as HTMLElement).style.zIndex) - 1);\n\n if (!this.mask) {\n this.mask = this.renderer.createElement('div');\n this.renderer.setStyle(this.mask, 'zIndex', zIndex);\n DomHandler.addMultipleClasses(this.mask, 'cax-component-overlay cax-sidebar-mask cax-component-overlay cax-component-overlay-enter');\n\n if (this.dismissible) {\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event: any) => {\n if (this.dismissible) {\n this.close(event);\n }\n });\n }\n\n this.renderer.appendChild(this.document.body, this.mask);\n if (this.blockScroll) {\n DomHandler.blockBodyScroll();\n }\n }\n }\n\n disableModality() {\n if (this.mask) {\n DomHandler.addClass(this.mask, 'cax-component-overlay-leave');\n this.animationEndListener = this.renderer.listen(this.mask, 'animationend', this.destroyModal.bind(this));\n }\n }\n\n destroyModal() {\n this.unbindMaskClickListener();\n\n if (this.mask) {\n this.renderer.removeChild(this.document.body, this.mask);\n }\n\n if (this.blockScroll) {\n DomHandler.unblockBodyScroll();\n }\n\n this.unbindAnimationEndListener();\n this.mask = null;\n }\n\n onAnimationStart(event: any) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.appendContainer();\n this.show();\n\n if (this.closeOnEscape) {\n this.bindDocumentEscapeListener();\n }\n break;\n }\n }\n\n onAnimationEnd(event: any) {\n switch (event.toState) {\n case 'void':\n this.hide(false);\n ZIndexUtils.clear(this.container);\n this.unbindGlobalListeners();\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.container);\n else DomHandler.appendChild(this.container, this.appendTo);\n }\n }\n\n bindDocumentEscapeListener() {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt((this.container as HTMLDivElement).style.zIndex) === ZIndexUtils.get(this.container)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n unbindGlobalListeners() {\n this.unbindMaskClickListener();\n this.unbindDocumentEscapeListener();\n }\n\n unbindAnimationEndListener() {\n if (this.animationEndListener && this.mask) {\n this.animationEndListener();\n this.animationEndListener = null;\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes['mode']) {\n this.modal = this.mode !== 'inline';\n this.isInlineMode = this.mode === 'inline';\n this.handleContentShift();\n }\n\n if (changes['visible']) {\n this.handleContentShift();\n }\n }\n ngOnDestroy() {\n this.initialized = false;\n\n if (this.visible && this.modal) {\n this.destroyModal();\n }\n\n if (this.appendTo && this.container) {\n this.renderer.appendChild(this.el.nativeElement, this.container);\n }\n\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.container = null;\n this.unbindGlobalListeners();\n this.unbindAnimationEndListener();\n }\n}\n"," <!-- Sidebar Panel -->\r\n <div\r\n #container\r\n [ngClass]=\"{\r\n 'cax-sidebar': true,\r\n 'cax-sidebar-active': visible,\r\n 'cax-sidebar-overlay': mode === 'overlay',\r\n 'cax-sidebar-inline': mode === 'inline',\r\n 'cax-sidebar-left': position === 'left' && !fullScreen,\r\n 'cax-sidebar-right': position === 'right' && !fullScreen,\r\n 'cax-sidebar-top': position === 'top' && !fullScreen,\r\n 'cax-sidebar-bottom': position === 'bottom' && !fullScreen,\r\n 'cax-sidebar-full': fullScreen\r\n }\"\r\n *ngIf=\"visible\"\r\n [@panelState]=\"{ value: 'visible', params: { transform: transformOptions, transition: transitionOptions } }\"\r\n (@panelState.start)=\"onAnimationStart($event)\"\r\n (@panelState.done)=\"onAnimationEnd($event)\"\r\n [ngStyle]=\"style\"\r\n [class]=\"styleClass\"\r\n role=\"complementary\"\r\n [attr.data-pc-name]=\"'sidebar'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"sidebarTemplate\"></ng-container>\r\n\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate\"></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #notHeadless>\r\n <div class=\"cax-sidebar-header\" [ngStyle]=\"headerStyle\">\r\n <ng-container *ngIf=\"headerTemplate; else defaultHeader\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-template #defaultHeader>\r\n <div>{{ headerText || 'Sidebar' }}</div>\r\n </ng-template>\r\n\r\n <button\r\n type=\"button\"\r\n class=\"cax-sidebar-close cax-sidebar-icon-css cax-link\"\r\n (click)=\"close($event)\"\r\n (keydown.enter)=\"close($event)\"\r\n [attr.aria-label]=\"ariaCloseLabel\"\r\n *ngIf=\"showCloseIcon\"\r\n caxRipple\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n [attr.data-pc-groucax-section]=\"'iconcontainer'\"\r\n >\r\n <TimesIcon *ngIf=\"!closeIconTemplate\" class=\"cax-sidebar-close-icon\" [attr.data-pc-section]=\"'closeicon'\" />\r\n <span *ngIf=\"closeIconTemplate\" class=\"cax-sidebar-close-icon\" [attr.data-pc-section]=\"'closeicon'\">\r\n <ng-template *ngTemplateOutlet=\"closeIconTemplate\"></ng-template>\r\n </span>\r\n </button>\r\n </div>\r\n\r\n <div class=\"cax-sidebar-content\"[attr.data-pc-section]=\"'content'\">\r\n <ng-content></ng-content>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n </div>\r\n\r\n <div *ngIf=\"footerTemplate\" class=\"cax-sidebar-footer\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n </div>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SharedModule } from 'cax-design-system/api';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { TimesIcon } from 'cax-design-system/icons/times';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { Sidebar } from './sidebar';\n\n@NgModule({\n imports: [Sidebar, CommonModule, RippleModule, SharedModule, TimesIcon, ButtonModule],\n exports: [SharedModule, Sidebar]\n})\nexport class SidebarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -94,7 +94,7 @@ class ToastItem {
94
94
  }
95
95
  }
96
96
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: ToastItem, deps: [{ token: i0.NgZone }, { token: i1.caxConfig }], target: i0.ɵɵFactoryTarget.Component });
97
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: ToastItem, isStandalone: true, selector: "cax-toastItem", inputs: { message: "message", index: ["index", "index", numberAttribute], life: ["life", "life", numberAttribute], displayIcon: "displayIcon", template: "template", headlessTemplate: "headlessTemplate", showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions" }, outputs: { onClose: "onClose" }, host: { classAttribute: "cax-element" }, viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\r\n #container\r\n [attr.id]=\"message?.id\"\r\n [class]=\"message?.styleClass\"\r\n [ngClass]=\"['cax-toast-message-' + message?.severity, 'cax-toast-message']\"\r\n [@messageState]=\"{ value: 'visible', params: { showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n role=\"alert\"\r\n aria-live=\"assertive\"\r\n aria-atomic=\"true\"\r\n [attr.data-pc-name]=\"'toast'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\r\n </ng-container>\r\n <ng-template #notHeadless>\r\n <div class=\"cax-toast-message-content\" [ngClass]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngIf=\"!template\">\r\n <span *ngIf=\"displayIcon && message.icon\" [class]=\"'cax-toast-message-icon cax pi ' + message.icon\"></span>\r\n <span class=\"cax-toast-message-icon\" *ngIf=\"displayIcon && !message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\r\n <ng-container>\r\n <span class=\"cax cax-check-circle\" *ngIf=\"message.severity === 'success'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-info-circle\" *ngIf=\"message.severity === 'info'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-close-circle\" *ngIf=\"message.severity === 'error'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-danger-triangle\" *ngIf=\"message.severity === 'warn'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n </ng-container>\r\n </span>\r\n <div class=\"cax-toast-message-text\" [attr.data-pc-section]=\"'text'\">\r\n <div *ngIf=\"message.summary\" class=\"cax-toast-summary\" [attr.data-pc-section]=\"'summary'\">{{ message.summary }}</div>\r\n <div *ngIf=\"message.detail\" class=\"cax-toast-detail\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\r\n <cax-button\r\n *ngIf=\"message.action\"\r\n (click)=\"onItemClick($event, message.action)\"\r\n (keydown.enter)=\"onItemClick($event, message.action, i)\"\r\n [severity]=\"getButtonSeverity(message.severity)\"\r\n [label]=\"message.action.label\"\r\n [outlined]=\"message.action.outlined\"\r\n [disabled]=\"message.action.disabled\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"cax-toast-icon-close cax-link\"\r\n (click)=\"onCloseIconClick($event)\"\r\n (keydown.enter)=\"onCloseIconClick($event)\"\r\n *ngIf=\"message?.closable !== false\"\r\n caxRipple\r\n [attr.aria-label]=\"closeAriaLabel\"\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n >\r\n <span *ngIf=\"message.closeIcon\" [class]=\"'pt-1 text-base cax-toast-message-icon cax pi ' + message.closeIcon\"></span>\r\n <TimesIcon *ngIf=\"!message.closeIcon\" [styleClass]=\"'cax-toast-icon-close-icon'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i3.Ripple, selector: "[caxRipple]" }, { kind: "component", type: TimesIcon, selector: "TimesIcon" }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i4.Button, selector: "cax-button", inputs: ["type", "iconPos", "icon", "badge", "rightIcon", "leftIcon", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }], animations: [
97
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: ToastItem, isStandalone: true, selector: "cax-toastItem", inputs: { message: "message", index: ["index", "index", numberAttribute], life: ["life", "life", numberAttribute], displayIcon: "displayIcon", template: "template", headlessTemplate: "headlessTemplate", showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions" }, outputs: { onClose: "onClose" }, host: { classAttribute: "cax-element" }, viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\r\n #container\r\n [attr.id]=\"message?.id\"\r\n [class]=\"message?.styleClass\"\r\n [ngClass]=\"['cax-toast-message-' + message?.severity, 'cax-toast-message']\"\r\n [@messageState]=\"{ value: 'visible', params: { showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n role=\"alert\"\r\n aria-live=\"assertive\"\r\n aria-atomic=\"true\"\r\n [attr.data-pc-name]=\"'toast'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\r\n </ng-container>\r\n <ng-template #notHeadless>\r\n <div class=\"cax-toast-message-content\" [ngClass]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngIf=\"!template\">\r\n <span *ngIf=\"displayIcon && message.icon\" [class]=\"'cax-toast-message-icon cax pi ' + message.icon\"></span>\r\n <span class=\"cax-toast-message-icon\" *ngIf=\"displayIcon && !message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\r\n <ng-container>\r\n <span class=\"cax cax-check-circle-bold message-icon\" *ngIf=\"message.severity === 'success'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-info-circle-bold message-icon\" *ngIf=\"message.severity === 'info'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-close-circle-bold message-icon\" *ngIf=\"message.severity === 'error'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-danger-triangle-bold message-icon\" *ngIf=\"message.severity === 'warn'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n </ng-container>\r\n </span>\r\n <div class=\"cax-toast-message-text\" [attr.data-pc-section]=\"'text'\">\r\n <div *ngIf=\"message.summary\" class=\"cax-toast-summary\" [attr.data-pc-section]=\"'summary'\">{{ message.summary }}</div>\r\n <div *ngIf=\"message.detail\" class=\"cax-toast-detail\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\r\n <cax-button\r\n *ngIf=\"message.action\"\r\n (click)=\"onItemClick($event, message.action)\"\r\n (keydown.enter)=\"onItemClick($event, message.action, i)\"\r\n [severity]=\"getButtonSeverity(message.severity)\"\r\n [label]=\"message.action.label\"\r\n [outlined]=\"message.action.outlined\"\r\n [disabled]=\"message.action.disabled\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"cax-toast-icon-close cax-link\"\r\n (click)=\"onCloseIconClick($event)\"\r\n (keydown.enter)=\"onCloseIconClick($event)\"\r\n *ngIf=\"message?.closable !== false\"\r\n caxRipple\r\n [attr.aria-label]=\"closeAriaLabel\"\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n >\r\n <span *ngIf=\"message.closeIcon\" [class]=\"'pt-1 text-base cax-toast-message-icon cax pi ' + message.closeIcon\"></span>\r\n <TimesIcon *ngIf=\"!message.closeIcon\" [styleClass]=\"'cax-toast-icon-close-icon'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n", styles: ["@layer cax{.cax-toast{position:fixed;width:25%}.cax-toast-message{overflow:hidden}.cax-toast-message-content{display:flex;align-items:flex-start}.cax-toast-message-text{flex:1 1 auto}.cax-toast-top-right{top:20px;right:20px}.cax-toast-top-left{top:20px;left:20px}.cax-toast-bottom-left{bottom:20px;left:20px}.cax-toast-bottom-right{bottom:20px;right:20px}.cax-toast-top-center{top:20px;left:50%;transform:translate(-50%)}.cax-toast-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.cax-toast-center{left:50%;top:50%;min-width:20vw;transform:translate(-50%,-50%)}.cax-toast-icon-close{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;flex:none}.cax-toast-icon-close.cax-link{cursor:pointer}.cax-toast:has(.cax-toast-sm){width:25%}.cax-toast:has(.cax-toast-md){width:50%}.cax-toast:has(.cax-toast-lg){width:75%}.message-icon{font-size:24px!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RippleModule }, { kind: "directive", type: i3.Ripple, selector: "[caxRipple]" }, { kind: "component", type: TimesIcon, selector: "TimesIcon" }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i4.Button, selector: "cax-button", inputs: ["type", "iconPos", "icon", "badge", "rightIcon", "leftIcon", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }], animations: [
98
98
  trigger('messageState', [
99
99
  state('visible', style({
100
100
  transform: 'translateY(0)',
@@ -142,7 +142,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
142
142
  ])
143
143
  ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, RippleModule, TimesIcon, ButtonModule], host: {
144
144
  class: 'cax-element'
145
- }, template: "<div\r\n #container\r\n [attr.id]=\"message?.id\"\r\n [class]=\"message?.styleClass\"\r\n [ngClass]=\"['cax-toast-message-' + message?.severity, 'cax-toast-message']\"\r\n [@messageState]=\"{ value: 'visible', params: { showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n role=\"alert\"\r\n aria-live=\"assertive\"\r\n aria-atomic=\"true\"\r\n [attr.data-pc-name]=\"'toast'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\r\n </ng-container>\r\n <ng-template #notHeadless>\r\n <div class=\"cax-toast-message-content\" [ngClass]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngIf=\"!template\">\r\n <span *ngIf=\"displayIcon && message.icon\" [class]=\"'cax-toast-message-icon cax pi ' + message.icon\"></span>\r\n <span class=\"cax-toast-message-icon\" *ngIf=\"displayIcon && !message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\r\n <ng-container>\r\n <span class=\"cax cax-check-circle\" *ngIf=\"message.severity === 'success'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-info-circle\" *ngIf=\"message.severity === 'info'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-close-circle\" *ngIf=\"message.severity === 'error'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-danger-triangle\" *ngIf=\"message.severity === 'warn'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n </ng-container>\r\n </span>\r\n <div class=\"cax-toast-message-text\" [attr.data-pc-section]=\"'text'\">\r\n <div *ngIf=\"message.summary\" class=\"cax-toast-summary\" [attr.data-pc-section]=\"'summary'\">{{ message.summary }}</div>\r\n <div *ngIf=\"message.detail\" class=\"cax-toast-detail\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\r\n <cax-button\r\n *ngIf=\"message.action\"\r\n (click)=\"onItemClick($event, message.action)\"\r\n (keydown.enter)=\"onItemClick($event, message.action, i)\"\r\n [severity]=\"getButtonSeverity(message.severity)\"\r\n [label]=\"message.action.label\"\r\n [outlined]=\"message.action.outlined\"\r\n [disabled]=\"message.action.disabled\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"cax-toast-icon-close cax-link\"\r\n (click)=\"onCloseIconClick($event)\"\r\n (keydown.enter)=\"onCloseIconClick($event)\"\r\n *ngIf=\"message?.closable !== false\"\r\n caxRipple\r\n [attr.aria-label]=\"closeAriaLabel\"\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n >\r\n <span *ngIf=\"message.closeIcon\" [class]=\"'pt-1 text-base cax-toast-message-icon cax pi ' + message.closeIcon\"></span>\r\n <TimesIcon *ngIf=\"!message.closeIcon\" [styleClass]=\"'cax-toast-icon-close-icon'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n" }]
145
+ }, template: "<div\r\n #container\r\n [attr.id]=\"message?.id\"\r\n [class]=\"message?.styleClass\"\r\n [ngClass]=\"['cax-toast-message-' + message?.severity, 'cax-toast-message']\"\r\n [@messageState]=\"{ value: 'visible', params: { showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n role=\"alert\"\r\n aria-live=\"assertive\"\r\n aria-atomic=\"true\"\r\n [attr.data-pc-name]=\"'toast'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\r\n </ng-container>\r\n <ng-template #notHeadless>\r\n <div class=\"cax-toast-message-content\" [ngClass]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngIf=\"!template\">\r\n <span *ngIf=\"displayIcon && message.icon\" [class]=\"'cax-toast-message-icon cax pi ' + message.icon\"></span>\r\n <span class=\"cax-toast-message-icon\" *ngIf=\"displayIcon && !message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\r\n <ng-container>\r\n <span class=\"cax cax-check-circle-bold message-icon\" *ngIf=\"message.severity === 'success'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-info-circle-bold message-icon\" *ngIf=\"message.severity === 'info'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-close-circle-bold message-icon\" *ngIf=\"message.severity === 'error'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-danger-triangle-bold message-icon\" *ngIf=\"message.severity === 'warn'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n </ng-container>\r\n </span>\r\n <div class=\"cax-toast-message-text\" [attr.data-pc-section]=\"'text'\">\r\n <div *ngIf=\"message.summary\" class=\"cax-toast-summary\" [attr.data-pc-section]=\"'summary'\">{{ message.summary }}</div>\r\n <div *ngIf=\"message.detail\" class=\"cax-toast-detail\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\r\n <cax-button\r\n *ngIf=\"message.action\"\r\n (click)=\"onItemClick($event, message.action)\"\r\n (keydown.enter)=\"onItemClick($event, message.action, i)\"\r\n [severity]=\"getButtonSeverity(message.severity)\"\r\n [label]=\"message.action.label\"\r\n [outlined]=\"message.action.outlined\"\r\n [disabled]=\"message.action.disabled\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"cax-toast-icon-close cax-link\"\r\n (click)=\"onCloseIconClick($event)\"\r\n (keydown.enter)=\"onCloseIconClick($event)\"\r\n *ngIf=\"message?.closable !== false\"\r\n caxRipple\r\n [attr.aria-label]=\"closeAriaLabel\"\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n >\r\n <span *ngIf=\"message.closeIcon\" [class]=\"'pt-1 text-base cax-toast-message-icon cax pi ' + message.closeIcon\"></span>\r\n <TimesIcon *ngIf=\"!message.closeIcon\" [styleClass]=\"'cax-toast-icon-close-icon'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n", styles: ["@layer cax{.cax-toast{position:fixed;width:25%}.cax-toast-message{overflow:hidden}.cax-toast-message-content{display:flex;align-items:flex-start}.cax-toast-message-text{flex:1 1 auto}.cax-toast-top-right{top:20px;right:20px}.cax-toast-top-left{top:20px;left:20px}.cax-toast-bottom-left{bottom:20px;left:20px}.cax-toast-bottom-right{bottom:20px;right:20px}.cax-toast-top-center{top:20px;left:50%;transform:translate(-50%)}.cax-toast-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.cax-toast-center{left:50%;top:50%;min-width:20vw;transform:translate(-50%,-50%)}.cax-toast-icon-close{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;flex:none}.cax-toast-icon-close.cax-link{cursor:pointer}.cax-toast:has(.cax-toast-sm){width:25%}.cax-toast:has(.cax-toast-md){width:50%}.cax-toast:has(.cax-toast-lg){width:75%}.message-icon{font-size:24px!important}}\n"] }]
146
146
  }], ctorParameters: () => [{ type: i0.NgZone }, { type: i1.caxConfig }], propDecorators: { message: [{
147
147
  type: Input
148
148
  }], index: [{
@@ -429,13 +429,13 @@ class Toast {
429
429
  return size ? { [`cax-toast-${size}`]: size } : { [`cax-toast-${this.size}`]: this.size };
430
430
  }
431
431
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Toast, deps: [{ token: DOCUMENT }, { token: i0.Renderer2 }, { token: i1.MessageService }, { token: i0.ChangeDetectorRef }, { token: i1.caxConfig }], target: i0.ɵɵFactoryTarget.Component });
432
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: Toast, isStandalone: true, selector: "cax-toast", inputs: { key: "key", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], life: ["life", "life", numberAttribute], size: "size", displayIcon: "displayIcon", style: "style", styleClass: "styleClass", position: "position", preventOpenDuplicates: ["preventOpenDuplicates", "preventOpenDuplicates", booleanAttribute], preventDuplicates: ["preventDuplicates", "preventDuplicates", booleanAttribute], showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", breakpoints: "breakpoints" }, outputs: { onClose: "onClose" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div #container class=\"cax-toast cax-component\" [ngClass]=\"'cax-toast-' + _position\" [ngStyle]=\"style\" [class]=\"styleClass\">\r\n <cax-toastItem\r\n *ngFor=\"let msg of messages; let i = index\"\r\n [message]=\"msg\"\r\n [index]=\"i\"\r\n [life]=\"life\"\r\n [ngClass]=\"sizeClass(msg.size)\"\r\n [displayIcon]=\"displayIcon && (msg.displayIcon ?? true)\"\r\n (onClose)=\"onMessageClose($event)\"\r\n [template]=\"template\"\r\n [headlessTemplate]=\"headlessTemplate\"\r\n @toastAnimation\r\n (@toastAnimation.start)=\"onAnimationStart($event)\"\r\n (@toastAnimation.done)=\"onAnimationEnd($event)\"\r\n [showTransformOptions]=\"showTransformOptions\"\r\n [hideTransformOptions]=\"hideTransformOptions\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n ></cax-toastItem>\r\n</div>\r\n", styles: ["@layer cax{.cax-toast{position:fixed;width:25%}.cax-toast-message{overflow:hidden}.cax-toast-message-content{display:flex;align-items:flex-start}.cax-toast-message-text{flex:1 1 auto}.cax-toast-top-right{top:20px;right:20px}.cax-toast-top-left{top:20px;left:20px}.cax-toast-bottom-left{bottom:20px;left:20px}.cax-toast-bottom-right{bottom:20px;right:20px}.cax-toast-top-center{top:20px;left:50%;transform:translate(-50%)}.cax-toast-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.cax-toast-center{left:50%;top:50%;min-width:20vw;transform:translate(-50%,-50%)}.cax-toast-icon-close{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;flex:none}.cax-toast-icon-close.cax-link{cursor:pointer}.cax-toast:has(.cax-toast-sm){width:25%}.cax-toast:has(.cax-toast-md){width:50%}.cax-toast:has(.cax-toast-lg){width:75%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ToastItem, selector: "cax-toastItem", inputs: ["message", "index", "life", "displayIcon", "template", "headlessTemplate", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onClose"] }], animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
432
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: Toast, isStandalone: true, selector: "cax-toast", inputs: { key: "key", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], life: ["life", "life", numberAttribute], size: "size", displayIcon: "displayIcon", style: "style", styleClass: "styleClass", position: "position", preventOpenDuplicates: ["preventOpenDuplicates", "preventOpenDuplicates", booleanAttribute], preventDuplicates: ["preventDuplicates", "preventDuplicates", booleanAttribute], showTransformOptions: "showTransformOptions", hideTransformOptions: "hideTransformOptions", showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", breakpoints: "breakpoints" }, outputs: { onClose: "onClose" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div #container class=\"cax-toast cax-component\" [ngClass]=\"'cax-toast-' + _position\" [ngStyle]=\"style\" [class]=\"styleClass\">\r\n <cax-toastItem\r\n *ngFor=\"let msg of messages; let i = index\"\r\n [message]=\"msg\"\r\n [index]=\"i\"\r\n [life]=\"life\"\r\n [ngClass]=\"sizeClass(msg.size)\"\r\n [displayIcon]=\"displayIcon && (msg.displayIcon ?? true)\"\r\n (onClose)=\"onMessageClose($event)\"\r\n [template]=\"template\"\r\n [headlessTemplate]=\"headlessTemplate\"\r\n @toastAnimation\r\n (@toastAnimation.start)=\"onAnimationStart($event)\"\r\n (@toastAnimation.done)=\"onAnimationEnd($event)\"\r\n [showTransformOptions]=\"showTransformOptions\"\r\n [hideTransformOptions]=\"hideTransformOptions\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n ></cax-toastItem>\r\n</div>\r\n", styles: ["@layer cax{.cax-toast{position:fixed;width:25%}.cax-toast-message{overflow:hidden}.cax-toast-message-content{display:flex;align-items:flex-start}.cax-toast-message-text{flex:1 1 auto}.cax-toast-top-right{top:20px;right:20px}.cax-toast-top-left{top:20px;left:20px}.cax-toast-bottom-left{bottom:20px;left:20px}.cax-toast-bottom-right{bottom:20px;right:20px}.cax-toast-top-center{top:20px;left:50%;transform:translate(-50%)}.cax-toast-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.cax-toast-center{left:50%;top:50%;min-width:20vw;transform:translate(-50%,-50%)}.cax-toast-icon-close{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;flex:none}.cax-toast-icon-close.cax-link{cursor:pointer}.cax-toast:has(.cax-toast-sm){width:25%}.cax-toast:has(.cax-toast-md){width:50%}.cax-toast:has(.cax-toast-lg){width:75%}.message-icon{font-size:24px!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ToastItem, selector: "cax-toastItem", inputs: ["message", "index", "life", "displayIcon", "template", "headlessTemplate", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onClose"] }], animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
433
433
  }
434
434
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Toast, decorators: [{
435
435
  type: Component,
436
436
  args: [{ selector: 'cax-toast', animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, ToastItem], host: {
437
437
  class: 'cax-element'
438
- }, template: "<div #container class=\"cax-toast cax-component\" [ngClass]=\"'cax-toast-' + _position\" [ngStyle]=\"style\" [class]=\"styleClass\">\r\n <cax-toastItem\r\n *ngFor=\"let msg of messages; let i = index\"\r\n [message]=\"msg\"\r\n [index]=\"i\"\r\n [life]=\"life\"\r\n [ngClass]=\"sizeClass(msg.size)\"\r\n [displayIcon]=\"displayIcon && (msg.displayIcon ?? true)\"\r\n (onClose)=\"onMessageClose($event)\"\r\n [template]=\"template\"\r\n [headlessTemplate]=\"headlessTemplate\"\r\n @toastAnimation\r\n (@toastAnimation.start)=\"onAnimationStart($event)\"\r\n (@toastAnimation.done)=\"onAnimationEnd($event)\"\r\n [showTransformOptions]=\"showTransformOptions\"\r\n [hideTransformOptions]=\"hideTransformOptions\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n ></cax-toastItem>\r\n</div>\r\n", styles: ["@layer cax{.cax-toast{position:fixed;width:25%}.cax-toast-message{overflow:hidden}.cax-toast-message-content{display:flex;align-items:flex-start}.cax-toast-message-text{flex:1 1 auto}.cax-toast-top-right{top:20px;right:20px}.cax-toast-top-left{top:20px;left:20px}.cax-toast-bottom-left{bottom:20px;left:20px}.cax-toast-bottom-right{bottom:20px;right:20px}.cax-toast-top-center{top:20px;left:50%;transform:translate(-50%)}.cax-toast-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.cax-toast-center{left:50%;top:50%;min-width:20vw;transform:translate(-50%,-50%)}.cax-toast-icon-close{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;flex:none}.cax-toast-icon-close.cax-link{cursor:pointer}.cax-toast:has(.cax-toast-sm){width:25%}.cax-toast:has(.cax-toast-md){width:50%}.cax-toast:has(.cax-toast-lg){width:75%}}\n"] }]
438
+ }, template: "<div #container class=\"cax-toast cax-component\" [ngClass]=\"'cax-toast-' + _position\" [ngStyle]=\"style\" [class]=\"styleClass\">\r\n <cax-toastItem\r\n *ngFor=\"let msg of messages; let i = index\"\r\n [message]=\"msg\"\r\n [index]=\"i\"\r\n [life]=\"life\"\r\n [ngClass]=\"sizeClass(msg.size)\"\r\n [displayIcon]=\"displayIcon && (msg.displayIcon ?? true)\"\r\n (onClose)=\"onMessageClose($event)\"\r\n [template]=\"template\"\r\n [headlessTemplate]=\"headlessTemplate\"\r\n @toastAnimation\r\n (@toastAnimation.start)=\"onAnimationStart($event)\"\r\n (@toastAnimation.done)=\"onAnimationEnd($event)\"\r\n [showTransformOptions]=\"showTransformOptions\"\r\n [hideTransformOptions]=\"hideTransformOptions\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n ></cax-toastItem>\r\n</div>\r\n", styles: ["@layer cax{.cax-toast{position:fixed;width:25%}.cax-toast-message{overflow:hidden}.cax-toast-message-content{display:flex;align-items:flex-start}.cax-toast-message-text{flex:1 1 auto}.cax-toast-top-right{top:20px;right:20px}.cax-toast-top-left{top:20px;left:20px}.cax-toast-bottom-left{bottom:20px;left:20px}.cax-toast-bottom-right{bottom:20px;right:20px}.cax-toast-top-center{top:20px;left:50%;transform:translate(-50%)}.cax-toast-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.cax-toast-center{left:50%;top:50%;min-width:20vw;transform:translate(-50%,-50%)}.cax-toast-icon-close{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;flex:none}.cax-toast-icon-close.cax-link{cursor:pointer}.cax-toast:has(.cax-toast-sm){width:25%}.cax-toast:has(.cax-toast-md){width:50%}.cax-toast:has(.cax-toast-lg){width:75%}.message-icon{font-size:24px!important}}\n"] }]
439
439
  }], ctorParameters: () => [{ type: Document, decorators: [{
440
440
  type: Inject,
441
441
  args: [DOCUMENT]
@@ -1 +1 @@
1
- {"version":3,"file":"cax-design-system-toast.mjs","sources":["../../src/app/components/toast/toastitem.ts","../../src/app/components/toast/toastitem.html","../../src/app/components/toast/toast.ts","../../src/app/components/toast/toast.html","../../src/app/components/toast/toast.module.ts","../../src/app/components/toast/cax-design-system-toast.ts"],"sourcesContent":["import { trigger, state, style, transition, animate } from '@angular/animations';\nimport { Component, ViewEncapsulation, ChangeDetectionStrategy, AfterViewInit, OnDestroy, Input, numberAttribute, TemplateRef, Output, EventEmitter, ViewChild, ElementRef, NgZone } from '@angular/core';\nimport { Message, caxConfig } from 'cax-design-system/api';\nimport { ToastItemCloseEvent } from './toast.interface';\nimport { CommonModule } from '@angular/common';\nimport { TimesIcon } from 'cax-design-system/icons/times';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { ActionButtonItem } from 'cax-design-system/messages';\n\n@Component({\n selector: 'cax-toastItem',\n templateUrl: './toastitem.html',\n animations: [\n trigger('messageState', [\n state(\n 'visible',\n style({\n transform: 'translateY(0)',\n opacity: 1\n })\n ),\n transition('void => *', [\n style({\n transform: '{{showTransformParams}}',\n opacity: 0\n }),\n animate('{{showTransitionParams}}')\n ]),\n transition('* => void', [\n animate(\n '{{hideTransitionParams}}',\n style({\n height: 0,\n opacity: 0,\n transform: '{{hideTransformParams}}'\n })\n )\n ])\n ])\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [CommonModule, RippleModule, TimesIcon, ButtonModule],\n host: {\n class: 'cax-element'\n }\n})\nexport class ToastItem implements AfterViewInit, OnDestroy {\n @Input() message: Message | null | undefined;\n\n @Input({ transform: numberAttribute }) index: number | null | undefined;\n\n @Input({ transform: numberAttribute }) life: number;\n\n @Input() displayIcon: boolean = true;\n\n @Input() template: TemplateRef<any> | undefined;\n\n @Input() headlessTemplate: TemplateRef<any> | undefined;\n\n @Input() showTransformOptions: string | undefined;\n\n @Input() hideTransformOptions: string | undefined;\n\n @Input() showTransitionOptions: string | undefined;\n\n @Input() hideTransitionOptions: string | undefined;\n\n @Output() onClose: EventEmitter<ToastItemCloseEvent> = new EventEmitter();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n timeout: any;\n\n constructor(\n private zone: NgZone,\n private config: caxConfig\n ) {}\n\n ngAfterViewInit() {\n this.initTimeout();\n }\n\n initTimeout() {\n if (!this.message?.sticky) {\n this.zone.runOutsideAngular(() => {\n this.timeout = setTimeout(\n () => {\n this.onClose.emit({\n index: <number>this.index,\n message: <Message>this.message\n });\n },\n this.message?.life || this.life || 3000\n );\n });\n }\n }\n\n clearTimeout() {\n if (this.timeout) {\n clearTimeout(this.timeout);\n this.timeout = null;\n }\n }\n\n onMouseEnter() {\n this.clearTimeout();\n }\n\n onMouseLeave() {\n this.initTimeout();\n }\n\n onCloseIconClick = (event: Event) => {\n this.clearTimeout();\n\n this.onClose.emit({\n index: <number>this.index,\n message: <Message>this.message\n });\n\n event.preventDefault();\n };\n\n get closeAriaLabel() {\n return this.config.translation.aria ? this.config.translation.aria.close : undefined;\n }\n\n ngOnDestroy() {\n this.clearTimeout();\n }\n\n onItemClick(e: MouseEvent, item: ActionButtonItem) {\n if (item.command) {\n item.command({ originalEvent: e, item });\n }\n }\n\n getButtonSeverity(severity: 'success' | 'info' | 'error' | 'warn' | undefined) {\n switch (severity) {\n case 'success':\n return 'success';\n case 'info':\n return 'primary';\n case 'error':\n return 'danger';\n case 'warn':\n return 'warning';\n default:\n return 'primary';\n }\n }\n}\n","<div\r\n #container\r\n [attr.id]=\"message?.id\"\r\n [class]=\"message?.styleClass\"\r\n [ngClass]=\"['cax-toast-message-' + message?.severity, 'cax-toast-message']\"\r\n [@messageState]=\"{ value: 'visible', params: { showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n role=\"alert\"\r\n aria-live=\"assertive\"\r\n aria-atomic=\"true\"\r\n [attr.data-pc-name]=\"'toast'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\r\n </ng-container>\r\n <ng-template #notHeadless>\r\n <div class=\"cax-toast-message-content\" [ngClass]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngIf=\"!template\">\r\n <span *ngIf=\"displayIcon && message.icon\" [class]=\"'cax-toast-message-icon cax pi ' + message.icon\"></span>\r\n <span class=\"cax-toast-message-icon\" *ngIf=\"displayIcon && !message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\r\n <ng-container>\r\n <span class=\"cax cax-check-circle\" *ngIf=\"message.severity === 'success'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-info-circle\" *ngIf=\"message.severity === 'info'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-close-circle\" *ngIf=\"message.severity === 'error'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-danger-triangle\" *ngIf=\"message.severity === 'warn'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n </ng-container>\r\n </span>\r\n <div class=\"cax-toast-message-text\" [attr.data-pc-section]=\"'text'\">\r\n <div *ngIf=\"message.summary\" class=\"cax-toast-summary\" [attr.data-pc-section]=\"'summary'\">{{ message.summary }}</div>\r\n <div *ngIf=\"message.detail\" class=\"cax-toast-detail\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\r\n <cax-button\r\n *ngIf=\"message.action\"\r\n (click)=\"onItemClick($event, message.action)\"\r\n (keydown.enter)=\"onItemClick($event, message.action, i)\"\r\n [severity]=\"getButtonSeverity(message.severity)\"\r\n [label]=\"message.action.label\"\r\n [outlined]=\"message.action.outlined\"\r\n [disabled]=\"message.action.disabled\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"cax-toast-icon-close cax-link\"\r\n (click)=\"onCloseIconClick($event)\"\r\n (keydown.enter)=\"onCloseIconClick($event)\"\r\n *ngIf=\"message?.closable !== false\"\r\n caxRipple\r\n [attr.aria-label]=\"closeAriaLabel\"\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n >\r\n <span *ngIf=\"message.closeIcon\" [class]=\"'pt-1 text-base cax-toast-message-icon cax pi ' + message.closeIcon\"></span>\r\n <TimesIcon *ngIf=\"!message.closeIcon\" [styleClass]=\"'cax-toast-icon-close-icon'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n","import { AnimationEvent, animateChild, query, transition, trigger } from '@angular/animations';\nimport { CommonModule, DOCUMENT } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Message, MessageService, caxConfig, CaxTemplate } from 'cax-design-system/api';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'cax-design-system/utils';\nimport { Subscription } from 'rxjs';\nimport { ToastCloseEvent, ToastItemCloseEvent, ToastPositionType } from './toast.interface';\nimport { DomHandler } from 'cax-design-system/dom';\nimport { ToastItem } from './toastitem';\n\n/**\n * Toast is used to display messages in an overlay.\n * @group Components\n */\n@Component({\n selector: 'cax-toast',\n templateUrl: './toast.html',\n animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./toast.scss'],\n standalone: true,\n imports: [CommonModule, ToastItem],\n host: {\n class: 'cax-element'\n }\n})\nexport class Toast implements OnInit, AfterContentInit, OnDestroy {\n /**\n * Key of the message in case message is targeted to a specific toast component.\n * @group Props\n */\n @Input() key: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * The default time to display messages for in milliseconds.\n * @group Props\n */\n @Input({ transform: numberAttribute }) life: number = 3000;\n /**\n * Size of the message.\n * @group Props\n */\n @Input() size: 'sm' | 'md' | 'lg' = 'sm';\n /**\n * Display icon or not\n * @group Props\n */\n @Input() displayIcon: boolean = true;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Inline class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n /**\n * Position of the toast in viewport.\n * @group Props\n */\n @Input() get position(): ToastPositionType {\n return this._position;\n }\n\n set position(value: ToastPositionType) {\n this._position = value;\n this.cd.markForCheck();\n }\n\n /**\n * It does not add the new message if there is already a toast displayed with the same content\n * @group Props\n */\n @Input({ transform: booleanAttribute }) preventOpenDuplicates: boolean = false;\n /**\n * Displays only once a message with the same content.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) preventDuplicates: boolean = false;\n /**\n * Transform options of the show animation.\n * @group Props\n */\n @Input() showTransformOptions: string = 'translateY(100%)';\n /**\n * Transform options of the hide animation.\n * @group Props\n */\n @Input() hideTransformOptions: string = 'translateY(-100%)';\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '300ms ease-out';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '250ms ease-in';\n /**\n * Object literal to define styles per screen size.\n * @group Props\n */\n @Input() breakpoints: { [key: string]: any } | undefined;\n /**\n * Callback to invoke when a message is closed.\n * @param {ToastCloseEvent} event - custom close event.\n * @group Emits\n */\n @Output() onClose: EventEmitter<ToastCloseEvent> = new EventEmitter<ToastCloseEvent>();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n messageSubscription: Subscription | undefined;\n\n clearSubscription: Subscription | undefined;\n\n messages: Message[] | null | undefined;\n\n messagesArchieve: Message[] | undefined;\n\n template: TemplateRef<any> | undefined;\n\n headlessTemplate: TemplateRef<any> | undefined;\n\n _position: ToastPositionType = 'top-right';\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n private renderer: Renderer2,\n public messageService: MessageService,\n private cd: ChangeDetectorRef,\n public config: caxConfig\n ) {}\n\n styleElement: any;\n\n id: string = UniqueComponentId();\n\n ngOnInit() {\n this.messageSubscription = this.messageService.messageObserver.subscribe((messages) => {\n if (messages) {\n if (Array.isArray(messages)) {\n const filteredMessages = messages.filter((m) => this.canAdd(m));\n this.add(filteredMessages);\n } else if (this.canAdd(messages)) {\n this.add([messages]);\n }\n }\n });\n\n this.clearSubscription = this.messageService.clearObserver.subscribe((key) => {\n if (key) {\n if (this.key === key) {\n this.messages = null;\n }\n } else {\n this.messages = null;\n }\n\n this.cd.markForCheck();\n });\n }\n\n ngAfterViewInit() {\n if (this.breakpoints) {\n this.createStyle();\n }\n }\n\n add(messages: Message[]): void {\n this.messages = this.messages ? [...this.messages, ...messages] : [...messages];\n\n if (this.preventDuplicates) {\n this.messagesArchieve = this.messagesArchieve ? [...this.messagesArchieve, ...messages] : [...messages];\n }\n\n this.cd.markForCheck();\n }\n\n canAdd(message: Message): boolean {\n let allow = this.key === message.key;\n\n if (allow && this.preventOpenDuplicates) {\n allow = !this.containsMessage(this.messages!, message);\n }\n\n if (allow && this.preventDuplicates) {\n allow = !this.containsMessage(this.messagesArchieve!, message);\n }\n\n return allow;\n }\n\n containsMessage(collection: Message[], message: Message): boolean {\n if (!collection) {\n return false;\n }\n\n return (\n collection.find((m) => {\n return m.summary === message.summary && m.detail == message.detail && m.severity === message.severity;\n }) != null\n );\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'message':\n this.template = item.template;\n break;\n case 'headless':\n this.headlessTemplate = item.template;\n break;\n\n default:\n this.template = item.template;\n break;\n }\n });\n }\n\n onMessageClose(event: ToastItemCloseEvent) {\n this.messages?.splice(event.index, 1);\n\n this.onClose.emit({\n message: event.message\n });\n\n this.cd.detectChanges();\n }\n\n onAnimationStart(event: AnimationEvent) {\n if (event.fromState === 'void') {\n this.renderer.setAttribute(this.containerViewChild?.nativeElement, this.id, '');\n if (this.autoZIndex && this.containerViewChild?.nativeElement.style.zIndex === '') {\n ZIndexUtils.set('modal', this.containerViewChild?.nativeElement, this.baseZIndex || this.config.zIndex.modal);\n }\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n if (event.toState === 'void') {\n if (this.autoZIndex && ObjectUtils.isEmpty(this.messages)) {\n ZIndexUtils.clear(this.containerViewChild?.nativeElement);\n }\n }\n }\n\n createStyle() {\n if (!this.styleElement) {\n this.styleElement = this.renderer.createElement('style');\n this.styleElement.type = 'text/css';\n DomHandler.setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);\n this.renderer.appendChild(this.document.head, this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n let breakpointStyle = '';\n for (let styleProp in this.breakpoints[breakpoint]) {\n breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + ' !important;';\n }\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .cax-toast[${this.id}] {\n ${breakpointStyle}\n }\n }\n `;\n }\n\n this.renderer.setProperty(this.styleElement, 'innerHTML', innerHTML);\n }\n }\n\n destroyStyle() {\n if (this.styleElement) {\n this.renderer.removeChild(this.document.head, this.styleElement);\n this.styleElement = null;\n }\n }\n\n ngOnDestroy() {\n if (this.messageSubscription) {\n this.messageSubscription.unsubscribe();\n }\n\n if (this.containerViewChild && this.autoZIndex) {\n ZIndexUtils.clear(this.containerViewChild.nativeElement);\n }\n\n if (this.clearSubscription) {\n this.clearSubscription.unsubscribe();\n }\n\n this.destroyStyle();\n }\n\n //custom methods\n sizeClass(size?: 'sm' | 'md' | 'lg') {\n return size ? { [`cax-toast-${size}`]: size } : { [`cax-toast-${this.size}`]: this.size };\n }\n}\n","<div #container class=\"cax-toast cax-component\" [ngClass]=\"'cax-toast-' + _position\" [ngStyle]=\"style\" [class]=\"styleClass\">\r\n <cax-toastItem\r\n *ngFor=\"let msg of messages; let i = index\"\r\n [message]=\"msg\"\r\n [index]=\"i\"\r\n [life]=\"life\"\r\n [ngClass]=\"sizeClass(msg.size)\"\r\n [displayIcon]=\"displayIcon && (msg.displayIcon ?? true)\"\r\n (onClose)=\"onMessageClose($event)\"\r\n [template]=\"template\"\r\n [headlessTemplate]=\"headlessTemplate\"\r\n @toastAnimation\r\n (@toastAnimation.start)=\"onAnimationStart($event)\"\r\n (@toastAnimation.done)=\"onAnimationEnd($event)\"\r\n [showTransformOptions]=\"showTransformOptions\"\r\n [hideTransformOptions]=\"hideTransformOptions\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n ></cax-toastItem>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SharedModule } from 'cax-design-system/api';\nimport { Toast } from './toast';\n\n@NgModule({\n imports: [Toast, CommonModule],\n exports: [Toast, SharedModule]\n})\nexport class ToastModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cax-design-system-toast.mjs","sources":["../../src/app/components/toast/toastitem.ts","../../src/app/components/toast/toastitem.html","../../src/app/components/toast/toast.ts","../../src/app/components/toast/toast.html","../../src/app/components/toast/toast.module.ts","../../src/app/components/toast/cax-design-system-toast.ts"],"sourcesContent":["import { trigger, state, style, transition, animate } from '@angular/animations';\nimport { Component, ViewEncapsulation, ChangeDetectionStrategy, AfterViewInit, OnDestroy, Input, numberAttribute, TemplateRef, Output, EventEmitter, ViewChild, ElementRef, NgZone } from '@angular/core';\nimport { Message, caxConfig } from 'cax-design-system/api';\nimport { ToastItemCloseEvent } from './toast.interface';\nimport { CommonModule } from '@angular/common';\nimport { TimesIcon } from 'cax-design-system/icons/times';\nimport { RippleModule } from 'cax-design-system/ripple';\nimport { ButtonModule } from 'cax-design-system/button';\nimport { ActionButtonItem } from 'cax-design-system/messages';\n\n@Component({\n selector: 'cax-toastItem',\n templateUrl: './toastitem.html',\n styleUrls: ['./toast.scss'],\n animations: [\n trigger('messageState', [\n state(\n 'visible',\n style({\n transform: 'translateY(0)',\n opacity: 1\n })\n ),\n transition('void => *', [\n style({\n transform: '{{showTransformParams}}',\n opacity: 0\n }),\n animate('{{showTransitionParams}}')\n ]),\n transition('* => void', [\n animate(\n '{{hideTransitionParams}}',\n style({\n height: 0,\n opacity: 0,\n transform: '{{hideTransformParams}}'\n })\n )\n ])\n ])\n ],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [CommonModule, RippleModule, TimesIcon, ButtonModule],\n host: {\n class: 'cax-element'\n }\n})\nexport class ToastItem implements AfterViewInit, OnDestroy {\n @Input() message: Message | null | undefined;\n\n @Input({ transform: numberAttribute }) index: number | null | undefined;\n\n @Input({ transform: numberAttribute }) life: number;\n\n @Input() displayIcon: boolean = true;\n\n @Input() template: TemplateRef<any> | undefined;\n\n @Input() headlessTemplate: TemplateRef<any> | undefined;\n\n @Input() showTransformOptions: string | undefined;\n\n @Input() hideTransformOptions: string | undefined;\n\n @Input() showTransitionOptions: string | undefined;\n\n @Input() hideTransitionOptions: string | undefined;\n\n @Output() onClose: EventEmitter<ToastItemCloseEvent> = new EventEmitter();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n timeout: any;\n\n constructor(\n private zone: NgZone,\n private config: caxConfig\n ) {}\n\n ngAfterViewInit() {\n this.initTimeout();\n }\n\n initTimeout() {\n if (!this.message?.sticky) {\n this.zone.runOutsideAngular(() => {\n this.timeout = setTimeout(\n () => {\n this.onClose.emit({\n index: <number>this.index,\n message: <Message>this.message\n });\n },\n this.message?.life || this.life || 3000\n );\n });\n }\n }\n\n clearTimeout() {\n if (this.timeout) {\n clearTimeout(this.timeout);\n this.timeout = null;\n }\n }\n\n onMouseEnter() {\n this.clearTimeout();\n }\n\n onMouseLeave() {\n this.initTimeout();\n }\n\n onCloseIconClick = (event: Event) => {\n this.clearTimeout();\n\n this.onClose.emit({\n index: <number>this.index,\n message: <Message>this.message\n });\n\n event.preventDefault();\n };\n\n get closeAriaLabel() {\n return this.config.translation.aria ? this.config.translation.aria.close : undefined;\n }\n\n ngOnDestroy() {\n this.clearTimeout();\n }\n\n onItemClick(e: MouseEvent, item: ActionButtonItem) {\n if (item.command) {\n item.command({ originalEvent: e, item });\n }\n }\n\n getButtonSeverity(severity: 'success' | 'info' | 'error' | 'warn' | undefined) {\n switch (severity) {\n case 'success':\n return 'success';\n case 'info':\n return 'primary';\n case 'error':\n return 'danger';\n case 'warn':\n return 'warning';\n default:\n return 'primary';\n }\n }\n}\n","<div\r\n #container\r\n [attr.id]=\"message?.id\"\r\n [class]=\"message?.styleClass\"\r\n [ngClass]=\"['cax-toast-message-' + message?.severity, 'cax-toast-message']\"\r\n [@messageState]=\"{ value: 'visible', params: { showTransformParams: showTransformOptions, hideTransformParams: hideTransformOptions, showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\r\n (mouseenter)=\"onMouseEnter()\"\r\n (mouseleave)=\"onMouseLeave()\"\r\n role=\"alert\"\r\n aria-live=\"assertive\"\r\n aria-atomic=\"true\"\r\n [attr.data-pc-name]=\"'toast'\"\r\n [attr.data-pc-section]=\"'root'\"\r\n>\r\n <ng-container *ngIf=\"headlessTemplate; else notHeadless\">\r\n <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\r\n </ng-container>\r\n <ng-template #notHeadless>\r\n <div class=\"cax-toast-message-content\" [ngClass]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\r\n <ng-container *ngIf=\"!template\">\r\n <span *ngIf=\"displayIcon && message.icon\" [class]=\"'cax-toast-message-icon cax pi ' + message.icon\"></span>\r\n <span class=\"cax-toast-message-icon\" *ngIf=\"displayIcon && !message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\r\n <ng-container>\r\n <span class=\"cax cax-check-circle-bold message-icon\" *ngIf=\"message.severity === 'success'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-info-circle-bold message-icon\" *ngIf=\"message.severity === 'info'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-close-circle-bold message-icon\" *ngIf=\"message.severity === 'error'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n <span class=\"cax cax-danger-triangle-bold message-icon\" *ngIf=\"message.severity === 'warn'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\"></span>\r\n </ng-container>\r\n </span>\r\n <div class=\"cax-toast-message-text\" [attr.data-pc-section]=\"'text'\">\r\n <div *ngIf=\"message.summary\" class=\"cax-toast-summary\" [attr.data-pc-section]=\"'summary'\">{{ message.summary }}</div>\r\n <div *ngIf=\"message.detail\" class=\"cax-toast-detail\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\r\n <cax-button\r\n *ngIf=\"message.action\"\r\n (click)=\"onItemClick($event, message.action)\"\r\n (keydown.enter)=\"onItemClick($event, message.action, i)\"\r\n [severity]=\"getButtonSeverity(message.severity)\"\r\n [label]=\"message.action.label\"\r\n [outlined]=\"message.action.outlined\"\r\n [disabled]=\"message.action.disabled\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"cax-toast-icon-close cax-link\"\r\n (click)=\"onCloseIconClick($event)\"\r\n (keydown.enter)=\"onCloseIconClick($event)\"\r\n *ngIf=\"message?.closable !== false\"\r\n caxRipple\r\n [attr.aria-label]=\"closeAriaLabel\"\r\n [attr.data-pc-section]=\"'closebutton'\"\r\n >\r\n <span *ngIf=\"message.closeIcon\" [class]=\"'pt-1 text-base cax-toast-message-icon cax pi ' + message.closeIcon\"></span>\r\n <TimesIcon *ngIf=\"!message.closeIcon\" [styleClass]=\"'cax-toast-icon-close-icon'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\r\n </button>\r\n </div>\r\n </ng-template>\r\n</div>\r\n","import { AnimationEvent, animateChild, query, transition, trigger } from '@angular/animations';\nimport { CommonModule, DOCUMENT } from '@angular/common';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n QueryList,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Message, MessageService, caxConfig, CaxTemplate } from 'cax-design-system/api';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'cax-design-system/utils';\nimport { Subscription } from 'rxjs';\nimport { ToastCloseEvent, ToastItemCloseEvent, ToastPositionType } from './toast.interface';\nimport { DomHandler } from 'cax-design-system/dom';\nimport { ToastItem } from './toastitem';\n\n/**\n * Toast is used to display messages in an overlay.\n * @group Components\n */\n@Component({\n selector: 'cax-toast',\n templateUrl: './toast.html',\n animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./toast.scss'],\n standalone: true,\n imports: [CommonModule, ToastItem],\n host: {\n class: 'cax-element'\n }\n})\nexport class Toast implements OnInit, AfterContentInit, OnDestroy {\n /**\n * Key of the message in case message is targeted to a specific toast component.\n * @group Props\n */\n @Input() key: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * The default time to display messages for in milliseconds.\n * @group Props\n */\n @Input({ transform: numberAttribute }) life: number = 3000;\n /**\n * Size of the message.\n * @group Props\n */\n @Input() size: 'sm' | 'md' | 'lg' = 'sm';\n /**\n * Display icon or not\n * @group Props\n */\n @Input() displayIcon: boolean = true;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Inline class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n\n /**\n * Position of the toast in viewport.\n * @group Props\n */\n @Input() get position(): ToastPositionType {\n return this._position;\n }\n\n set position(value: ToastPositionType) {\n this._position = value;\n this.cd.markForCheck();\n }\n\n /**\n * It does not add the new message if there is already a toast displayed with the same content\n * @group Props\n */\n @Input({ transform: booleanAttribute }) preventOpenDuplicates: boolean = false;\n /**\n * Displays only once a message with the same content.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) preventDuplicates: boolean = false;\n /**\n * Transform options of the show animation.\n * @group Props\n */\n @Input() showTransformOptions: string = 'translateY(100%)';\n /**\n * Transform options of the hide animation.\n * @group Props\n */\n @Input() hideTransformOptions: string = 'translateY(-100%)';\n /**\n * Transition options of the show animation.\n * @group Props\n */\n @Input() showTransitionOptions: string = '300ms ease-out';\n /**\n * Transition options of the hide animation.\n * @group Props\n */\n @Input() hideTransitionOptions: string = '250ms ease-in';\n /**\n * Object literal to define styles per screen size.\n * @group Props\n */\n @Input() breakpoints: { [key: string]: any } | undefined;\n /**\n * Callback to invoke when a message is closed.\n * @param {ToastCloseEvent} event - custom close event.\n * @group Emits\n */\n @Output() onClose: EventEmitter<ToastCloseEvent> = new EventEmitter<ToastCloseEvent>();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n @ContentChildren(CaxTemplate) templates: QueryList<CaxTemplate> | undefined;\n\n messageSubscription: Subscription | undefined;\n\n clearSubscription: Subscription | undefined;\n\n messages: Message[] | null | undefined;\n\n messagesArchieve: Message[] | undefined;\n\n template: TemplateRef<any> | undefined;\n\n headlessTemplate: TemplateRef<any> | undefined;\n\n _position: ToastPositionType = 'top-right';\n\n constructor(\n @Inject(DOCUMENT) private document: Document,\n private renderer: Renderer2,\n public messageService: MessageService,\n private cd: ChangeDetectorRef,\n public config: caxConfig\n ) {}\n\n styleElement: any;\n\n id: string = UniqueComponentId();\n\n ngOnInit() {\n this.messageSubscription = this.messageService.messageObserver.subscribe((messages) => {\n if (messages) {\n if (Array.isArray(messages)) {\n const filteredMessages = messages.filter((m) => this.canAdd(m));\n this.add(filteredMessages);\n } else if (this.canAdd(messages)) {\n this.add([messages]);\n }\n }\n });\n\n this.clearSubscription = this.messageService.clearObserver.subscribe((key) => {\n if (key) {\n if (this.key === key) {\n this.messages = null;\n }\n } else {\n this.messages = null;\n }\n\n this.cd.markForCheck();\n });\n }\n\n ngAfterViewInit() {\n if (this.breakpoints) {\n this.createStyle();\n }\n }\n\n add(messages: Message[]): void {\n this.messages = this.messages ? [...this.messages, ...messages] : [...messages];\n\n if (this.preventDuplicates) {\n this.messagesArchieve = this.messagesArchieve ? [...this.messagesArchieve, ...messages] : [...messages];\n }\n\n this.cd.markForCheck();\n }\n\n canAdd(message: Message): boolean {\n let allow = this.key === message.key;\n\n if (allow && this.preventOpenDuplicates) {\n allow = !this.containsMessage(this.messages!, message);\n }\n\n if (allow && this.preventDuplicates) {\n allow = !this.containsMessage(this.messagesArchieve!, message);\n }\n\n return allow;\n }\n\n containsMessage(collection: Message[], message: Message): boolean {\n if (!collection) {\n return false;\n }\n\n return (\n collection.find((m) => {\n return m.summary === message.summary && m.detail == message.detail && m.severity === message.severity;\n }) != null\n );\n }\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'message':\n this.template = item.template;\n break;\n case 'headless':\n this.headlessTemplate = item.template;\n break;\n\n default:\n this.template = item.template;\n break;\n }\n });\n }\n\n onMessageClose(event: ToastItemCloseEvent) {\n this.messages?.splice(event.index, 1);\n\n this.onClose.emit({\n message: event.message\n });\n\n this.cd.detectChanges();\n }\n\n onAnimationStart(event: AnimationEvent) {\n if (event.fromState === 'void') {\n this.renderer.setAttribute(this.containerViewChild?.nativeElement, this.id, '');\n if (this.autoZIndex && this.containerViewChild?.nativeElement.style.zIndex === '') {\n ZIndexUtils.set('modal', this.containerViewChild?.nativeElement, this.baseZIndex || this.config.zIndex.modal);\n }\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n if (event.toState === 'void') {\n if (this.autoZIndex && ObjectUtils.isEmpty(this.messages)) {\n ZIndexUtils.clear(this.containerViewChild?.nativeElement);\n }\n }\n }\n\n createStyle() {\n if (!this.styleElement) {\n this.styleElement = this.renderer.createElement('style');\n this.styleElement.type = 'text/css';\n DomHandler.setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);\n this.renderer.appendChild(this.document.head, this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n let breakpointStyle = '';\n for (let styleProp in this.breakpoints[breakpoint]) {\n breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + ' !important;';\n }\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .cax-toast[${this.id}] {\n ${breakpointStyle}\n }\n }\n `;\n }\n\n this.renderer.setProperty(this.styleElement, 'innerHTML', innerHTML);\n }\n }\n\n destroyStyle() {\n if (this.styleElement) {\n this.renderer.removeChild(this.document.head, this.styleElement);\n this.styleElement = null;\n }\n }\n\n ngOnDestroy() {\n if (this.messageSubscription) {\n this.messageSubscription.unsubscribe();\n }\n\n if (this.containerViewChild && this.autoZIndex) {\n ZIndexUtils.clear(this.containerViewChild.nativeElement);\n }\n\n if (this.clearSubscription) {\n this.clearSubscription.unsubscribe();\n }\n\n this.destroyStyle();\n }\n\n //custom methods\n sizeClass(size?: 'sm' | 'md' | 'lg') {\n return size ? { [`cax-toast-${size}`]: size } : { [`cax-toast-${this.size}`]: this.size };\n }\n}\n","<div #container class=\"cax-toast cax-component\" [ngClass]=\"'cax-toast-' + _position\" [ngStyle]=\"style\" [class]=\"styleClass\">\r\n <cax-toastItem\r\n *ngFor=\"let msg of messages; let i = index\"\r\n [message]=\"msg\"\r\n [index]=\"i\"\r\n [life]=\"life\"\r\n [ngClass]=\"sizeClass(msg.size)\"\r\n [displayIcon]=\"displayIcon && (msg.displayIcon ?? true)\"\r\n (onClose)=\"onMessageClose($event)\"\r\n [template]=\"template\"\r\n [headlessTemplate]=\"headlessTemplate\"\r\n @toastAnimation\r\n (@toastAnimation.start)=\"onAnimationStart($event)\"\r\n (@toastAnimation.done)=\"onAnimationEnd($event)\"\r\n [showTransformOptions]=\"showTransformOptions\"\r\n [hideTransformOptions]=\"hideTransformOptions\"\r\n [showTransitionOptions]=\"showTransitionOptions\"\r\n [hideTransitionOptions]=\"hideTransitionOptions\"\r\n ></cax-toastItem>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SharedModule } from 'cax-design-system/api';\nimport { Toast } from './toast';\n\n@NgModule({\n imports: [Toast, CommonModule],\n exports: [Toast, SharedModule]\n})\nexport class ToastModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}