@acorex/components 19.1.0 → 19.3.0-next.0
Sign up to get free protection for your applications and to get access to all the features.
- package/action-sheet/lib/action-sheet.class.d.ts +10 -0
- package/action-sheet/lib/action-sheet.component.d.ts +22 -3
- package/action-sheet/lib/action-sheet.service.d.ts +5 -2
- package/common/lib/classes/components.class.d.ts +1 -0
- package/decorators/lib/components/close-button.component.d.ts +2 -1
- package/fesm2022/acorex-components-action-sheet.mjs +225 -67
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +17 -17
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +21 -5
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +530 -0
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -0
- package/fesm2022/acorex-components-map.mjs +0 -1
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +245 -75
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +1 -1
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +39 -0
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -0
- package/fesm2022/acorex-components-popup.mjs +1 -1
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +1 -1
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +9 -8
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +136 -123
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +37 -0
- package/fesm2022/acorex-components-video-player.mjs.map +1 -0
- package/grid-layout-builder/README.md +3 -0
- package/grid-layout-builder/index.d.ts +4 -0
- package/grid-layout-builder/lib/grid-layout-builder.module.d.ts +9 -0
- package/grid-layout-builder/lib/grid-layout-container.component.d.ts +233 -0
- package/grid-layout-builder/lib/grid-layout-widget.component.d.ts +95 -0
- package/grid-layout-builder/lib/types.d.ts +33 -0
- package/media-viewer/index.d.ts +0 -1
- package/media-viewer/lib/media-viewer-container/media-viewer-container.component.d.ts +21 -6
- package/media-viewer/lib/media-viewer-tools/file-info/file-info.component.d.ts +1 -2
- package/media-viewer/lib/media-viewer-tools/pdf-reader/pdf-reader.component.d.ts +3 -3
- package/media-viewer/lib/media-viewer-tools/video-player/video-player.component.d.ts +3 -3
- package/media-viewer/lib/media-viewer.module.d.ts +17 -15
- package/package.json +15 -2
- package/pdf-reader/README.md +3 -0
- package/pdf-reader/index.d.ts +2 -0
- package/pdf-reader/lib/pdf-reader/pdf-reader.component.d.ts +8 -0
- package/pdf-reader/lib/pdf-reader.module.d.ts +7 -0
- package/tabs/lib/tabs.class.d.ts +1 -1
- package/toast/lib/toast.class.d.ts +1 -0
- package/toast/lib/toast.component.d.ts +4 -0
- package/toast/lib/toast.service.d.ts +3 -4
- package/video-player/README.md +3 -0
- package/video-player/index.d.ts +2 -0
- package/video-player/lib/video-player/video-player.component.d.ts +6 -0
- package/video-player/lib/video-player.module.d.ts +7 -0
- package/media-viewer/lib/media-viewer-thumbnail/media-viewer-thumbnail.component.d.ts +0 -11
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-tabs.mjs","sources":["../../../../libs/components/tabs/src/lib/tab-content.directive.ts","../../../../libs/components/tabs/src/lib/tab-item.component.ts","../../../../libs/components/tabs/src/lib/tabs.class.ts","../../../../libs/components/tabs/src/lib/tabs.component.ts","../../../../libs/components/tabs/src/lib/tabs.module.ts","../../../../libs/components/tabs/src/acorex-components-tabs.ts"],"sourcesContent":["import { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[axTabContent]',\n exportAs: 'axTabContent',\n inputs: ['portal: axTabContent'],\n standalone: false\n})\nexport class AXTabContentDirective {\n constructor(private _viewContainerRef: ViewContainerRef) {}\n\n private _portal: TemplateRef<any> | undefined;\n public get portal(): TemplateRef<any> | undefined {\n return this._portal;\n }\n public set portal(v: TemplateRef<any> | undefined) {\n if (v) {\n this._portal = v;\n this._viewContainerRef.clear();\n this._viewContainerRef.createEmbeddedView(v, null, 0);\n }\n }\n}\n","import { AXClickEvent, MXComponentOptionChanged, MXInteractiveComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostListener,\n Input,\n Output,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @category\n * Represents an individual tab item in a tab component.\n */\n@Component({\n selector: 'ax-tab-item',\n template: `\n @if (headerTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"headerTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: {\n text: this.text,\n key: this.key,\n active: this.active,\n disabled: this.disabled,\n },\n }\"\n ></ng-container>\n } @else {\n <ng-content select=\"ax-prefix\"></ng-content>\n <div class=\"ax-tab-item-text\">{{ text }}</div>\n <ng-content select=\"ax-suffix\"></ng-content>\n }\n <ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: ['disabled'],\n outputs: ['disabledChange', 'onClick', 'onBlur', 'onFocus'],\n standalone: false\n})\nexport class AXTabItemComponent extends MXInteractiveComponent {\n /**\n * Defines the text content to be displayed within the component.\n */\n @Input()\n text: string;\n\n /**\n * Defines a unique identifier for the component instance.\n */\n @Input()\n key: string;\n\n @ViewChild('content')\n template: TemplateRef<unknown>;\n\n /**\n * Defines a custom template for the component's header.\n */\n @Input()\n headerTemplate: TemplateRef<unknown>;\n\n /**\n * Emits an event when the `active` state of the component changes.\n * @event\n */\n @Output()\n activeChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /**\n * Emits an event when the component is clicked.\n * @event\n */\n @Output()\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n\n /** @ignore */\n private _active = false;\n\n /**\n * Gets or sets the component's active state, controlling its behavior and appearance.\n * @param value {boolean}\n */\n @Input()\n public get active(): boolean {\n return this._active;\n }\n public set active(value: boolean) {\n this.setOption({\n name: 'active',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n\n /**\n * @ignore\n */\n @HostListener('click', ['$event'])\n private __hostClick(e: MouseEvent) {\n if (!this.disabled) {\n this.getHostElement().scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'center' });\n this.onClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n }\n\n /**\n * @ignore\n */\n protected override internalOptionChanged(option: MXComponentOptionChanged<any>): void {\n //TODO: change to hostbind\n const classListRef = this.getHostElement().classList;\n if (option.name == 'disabled') {\n option.value ? classListRef.add('ax-state-disabled') : classListRef.remove('ax-state-disabled');\n }\n if (option.name == 'active') {\n option.value ? classListRef.add('ax-state-active') : classListRef.remove('ax-state-active');\n }\n }\n\n getStats() {\n return {\n width: this.getHostElement().clientWidth,\n height: this.getHostElement().clientHeight,\n left: this.getHostElement().offsetLeft,\n top: this.getHostElement().offsetTop,\n };\n }\n}\n","import { AXEvent } from '@acorex/components/common';\nimport { AXTabItemComponent } from './tab-item.component';\n\nexport class AXTabStripChangedEvent extends AXEvent {\n tab: AXTabItemComponent;\n index: number;\n}\n\nexport type AXTabLook = 'default' | 'pills' | 'pills-color' | 'with-line' | 'classic' | 'custom';\n\nexport type AXTabLocation = 'top' | 'bottom' | 'start' | 'end';\n","import { MXBaseComponent } from '@acorex/components/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n effect,\n ElementRef,\n EventEmitter,\n HostBinding,\n inject,\n input,\n Input,\n NgZone,\n Output,\n QueryList,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXTabContentDirective } from './tab-content.directive';\nimport { AXTabItemComponent } from './tab-item.component';\nimport { AXTabLocation, AXTabLook, AXTabStripChangedEvent } from './tabs.class';\n\n/**\n * @category\n * A component that serves as a container for tab items.\n */\n@Component({\n selector: 'ax-tabs',\n template: `<ng-content select=\"ax-tab-item\"></ng-content><span class=\"ax-tab-indicator\" #indicator></span>`,\n styleUrl: './tabs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n})\nexport class AXTabsComponent extends MXBaseComponent implements AfterViewInit, AfterContentInit {\n /**\n * @ignore\n */\n @ContentChildren(AXTabItemComponent)\n private _contentTabs!: QueryList<AXTabItemComponent>;\n\n /**\n * Sets the appearance style of the tab component.\n * @defaultValue 'default'\n */\n look = input<AXTabLook>('default');\n\n /**\n * Specifies the position of the tab component.\n * @defaultValue 'bottom'\n */\n location = input<AXTabLocation>('bottom');\n\n /**\n * @defaultValue 'false'\n * Specifies whether the component should resize to fit its parent container.\n */\n @Input()\n fitParent = false;\n\n /**\n * @defaultValue 'false'\n * Applies a minimum width constraint to the component.\n */\n @Input()\n minWidth = false;\n\n /**\n * The `AXTabContentDirective` associated with the tab.\n */\n @Input()\n content!: AXTabContentDirective;\n\n private indicator = viewChild<ElementRef<HTMLSpanElement>>('indicator');\n\n private zone = inject(NgZone);\n\n /** @ignore */\n private _isUserInteraction = false;\n\n get items(): AXTabItemComponent[] {\n return this._contentTabs.toArray();\n }\n\n /** @ignore */\n private _selectedItem!: AXTabItemComponent;\n\n /** @ignore */\n get selectedIndex(): number {\n return this.items.indexOf(this._selectedItem);\n }\n\n /** @ignore */\n get selectedItem(): AXTabItemComponent {\n return this._selectedItem;\n }\n\n private changes: ResizeObserver;\n private activeTab = signal<AXTabItemComponent>(null);\n\n #tabChange = effect(() => {\n if (this.activeTab() && this.look() === 'with-line' && this.location()) {\n setTimeout(() => {\n this.setIndicatorPosition(this.activeTab());\n });\n }\n });\n\n /**\n * @event\n */\n @Output()\n onActiveTabChanged: EventEmitter<AXTabStripChangedEvent> = new EventEmitter<AXTabStripChangedEvent>();\n\n /** @ignore */\n @HostBinding('class')\n private get __hostClass(): string[] {\n const cssClasses: string[] = [];\n cssClasses.push(`ax-look-${this.look()}`);\n cssClasses.push(`ax-${this.location()}`);\n if (this.fitParent) cssClasses.push(`ax-tabs-fit`);\n return cssClasses;\n }\n\n /** @ignore */\n ngAfterContentInit() {\n this._contentTabs.changes.subscribe(() => {\n this._bindOnClickEvent();\n });\n }\n\n /** @ignore */\n ngAfterViewInit() {\n this._bindOnClickEvent();\n this.zone.runOutsideAngular(() => {\n this.changes = new ResizeObserver((entries) => {\n if (entries[0].contentRect.width) {\n this.setIndicatorPosition(this.activeTab());\n this.changes.disconnect();\n }\n });\n if (this.activeTab()) this.changes.observe(this.activeTab().getHostElement());\n });\n }\n\n /** @ignore */\n private _bindOnClickEvent() {\n const selected = this.items.find((c) => c.active) || this.items[0];\n this.select(selected);\n this.items.forEach((c) => {\n if (!c.onClick.length) {\n c.onClick.subscribe((t) => {\n this._isUserInteraction = t.nativeEvent?.isTrusted;\n this.select(c);\n });\n }\n });\n }\n\n /**\n * Activates the specified tab and updates the content.\n *\n * @param {number | AXTabItemComponent}\n */\n select(tab: number | AXTabItemComponent) {\n const tabItem: AXTabItemComponent = typeof tab == 'number' ? this.items[tab] : tab;\n this.activeTab.set(tabItem);\n //\n if (!tab || this.selectedItem == tabItem) return;\n this._selectedItem = tabItem;\n //\n this.items.forEach((c) => (c.active = false));\n tabItem.active = true;\n if (this.content) {\n this.content.portal = tabItem.template;\n }\n this.cdr.markForCheck();\n this.onActiveTabChanged.emit({\n component: this,\n isUserInteraction: this._isUserInteraction,\n tab: tabItem,\n index: this.selectedIndex,\n });\n this._isUserInteraction = false;\n }\n\n private setIndicatorPosition(tabItem: AXTabItemComponent) {\n const indicatorStyle = this.indicator().nativeElement.style;\n const itemStats = tabItem.getStats();\n if (this.location() === 'top' || this.location() === 'bottom') {\n indicatorStyle.width = `${itemStats.width}px`;\n indicatorStyle.height = `3px`;\n indicatorStyle.left = `${itemStats.left}px`;\n indicatorStyle.right = `unset`;\n if (this.location() === 'top') {\n indicatorStyle.top = `0px`;\n indicatorStyle.bottom = `unset`;\n }\n if (this.location() === 'bottom') {\n indicatorStyle.top = `unset`;\n indicatorStyle.bottom = `0px`;\n }\n }\n if (this.location() === 'start' || this.location() === 'end') {\n indicatorStyle.width = ` 0.125rem`;\n indicatorStyle.height = `${itemStats.height}px`;\n indicatorStyle.top = `${itemStats.top}px`;\n indicatorStyle.bottom = `unset`;\n if (this.location() === 'start') {\n indicatorStyle.left = `0px`;\n indicatorStyle.right = `unset`;\n }\n if (this.location() === 'end') {\n indicatorStyle.left = `unset`;\n indicatorStyle.right = `0px`;\n }\n }\n }\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXTabContentDirective } from './tab-content.directive';\nimport { AXTabItemComponent } from './tab-item.component';\nimport { AXTabsComponent } from './tabs.component';\n\nconst COMPONENT = [AXTabsComponent, AXTabItemComponent, AXTabContentDirective];\nconst MODULES = [CommonModule, PortalModule, AXDecoratorModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXTabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-tabs.mjs","sources":["../../../../libs/components/tabs/src/lib/tab-content.directive.ts","../../../../libs/components/tabs/src/lib/tab-item.component.ts","../../../../libs/components/tabs/src/lib/tabs.class.ts","../../../../libs/components/tabs/src/lib/tabs.component.ts","../../../../libs/components/tabs/src/lib/tabs.module.ts","../../../../libs/components/tabs/src/acorex-components-tabs.ts"],"sourcesContent":["import { Directive, TemplateRef, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[axTabContent]',\n exportAs: 'axTabContent',\n inputs: ['portal: axTabContent'],\n standalone: false\n})\nexport class AXTabContentDirective {\n constructor(private _viewContainerRef: ViewContainerRef) {}\n\n private _portal: TemplateRef<any> | undefined;\n public get portal(): TemplateRef<any> | undefined {\n return this._portal;\n }\n public set portal(v: TemplateRef<any> | undefined) {\n if (v) {\n this._portal = v;\n this._viewContainerRef.clear();\n this._viewContainerRef.createEmbeddedView(v, null, 0);\n }\n }\n}\n","import { AXClickEvent, MXComponentOptionChanged, MXInteractiveComponent } from '@acorex/components/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostListener,\n Input,\n Output,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\n/**\n * @category\n * Represents an individual tab item in a tab component.\n */\n@Component({\n selector: 'ax-tab-item',\n template: `\n @if (headerTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"headerTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: {\n text: this.text,\n key: this.key,\n active: this.active,\n disabled: this.disabled,\n },\n }\"\n ></ng-container>\n } @else {\n <ng-content select=\"ax-prefix\"></ng-content>\n <div class=\"ax-tab-item-text\">{{ text }}</div>\n <ng-content select=\"ax-suffix\"></ng-content>\n }\n <ng-template #content>\n <ng-content select=\"ax-content\"> </ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: ['disabled'],\n outputs: ['disabledChange', 'onClick', 'onBlur', 'onFocus'],\n standalone: false\n})\nexport class AXTabItemComponent extends MXInteractiveComponent {\n /**\n * Defines the text content to be displayed within the component.\n */\n @Input()\n text: string;\n\n /**\n * Defines a unique identifier for the component instance.\n */\n @Input()\n key: string;\n\n @ViewChild('content')\n template: TemplateRef<unknown>;\n\n /**\n * Defines a custom template for the component's header.\n */\n @Input()\n headerTemplate: TemplateRef<unknown>;\n\n /**\n * Emits an event when the `active` state of the component changes.\n * @event\n */\n @Output()\n activeChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /**\n * Emits an event when the component is clicked.\n * @event\n */\n @Output()\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n\n /** @ignore */\n private _active = false;\n\n /**\n * Gets or sets the component's active state, controlling its behavior and appearance.\n * @param value {boolean}\n */\n @Input()\n public get active(): boolean {\n return this._active;\n }\n public set active(value: boolean) {\n this.setOption({\n name: 'active',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n\n /**\n * @ignore\n */\n @HostListener('click', ['$event'])\n private __hostClick(e: MouseEvent) {\n if (!this.disabled) {\n this.getHostElement().scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'center' });\n this.onClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n }\n\n /**\n * @ignore\n */\n protected override internalOptionChanged(option: MXComponentOptionChanged<any>): void {\n //TODO: change to hostbind\n const classListRef = this.getHostElement().classList;\n if (option.name == 'disabled') {\n option.value ? classListRef.add('ax-state-disabled') : classListRef.remove('ax-state-disabled');\n }\n if (option.name == 'active') {\n option.value ? classListRef.add('ax-state-active') : classListRef.remove('ax-state-active');\n }\n }\n\n getStats() {\n return {\n width: this.getHostElement().clientWidth,\n height: this.getHostElement().clientHeight,\n left: this.getHostElement().offsetLeft,\n top: this.getHostElement().offsetTop,\n };\n }\n}\n","import { AXEvent } from '@acorex/components/common';\nimport { AXTabItemComponent } from './tab-item.component';\n\nexport class AXTabStripChangedEvent extends AXEvent {\n tab: AXTabItemComponent;\n index: number;\n}\n\nexport type AXTabLook =\n | 'default'\n | 'pills'\n | 'pills-color'\n | 'with-line'\n | 'with-line-color'\n | 'classic'\n | 'custom';\n\nexport type AXTabLocation = 'top' | 'bottom' | 'start' | 'end';\n","import { MXBaseComponent } from '@acorex/components/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n effect,\n ElementRef,\n EventEmitter,\n HostBinding,\n inject,\n input,\n Input,\n NgZone,\n Output,\n QueryList,\n signal,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXTabContentDirective } from './tab-content.directive';\nimport { AXTabItemComponent } from './tab-item.component';\nimport { AXTabLocation, AXTabLook, AXTabStripChangedEvent } from './tabs.class';\n\n/**\n * @category\n * A component that serves as a container for tab items.\n */\n@Component({\n selector: 'ax-tabs',\n template: `<ng-content select=\"ax-tab-item\"></ng-content><span class=\"ax-tab-indicator\" #indicator></span>`,\n styleUrl: './tabs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n})\nexport class AXTabsComponent extends MXBaseComponent implements AfterViewInit, AfterContentInit {\n /**\n * @ignore\n */\n @ContentChildren(AXTabItemComponent)\n private _contentTabs!: QueryList<AXTabItemComponent>;\n\n /**\n * Sets the appearance style of the tab component.\n * @defaultValue 'default'\n */\n look = input<AXTabLook>('default');\n\n /**\n * Specifies the position of the tab component.\n * @defaultValue 'bottom'\n */\n location = input<AXTabLocation>('bottom');\n\n /**\n * @defaultValue 'false'\n * Specifies whether the component should resize to fit its parent container.\n */\n @Input()\n fitParent = false;\n\n /**\n * @defaultValue 'false'\n * Applies a minimum width constraint to the component.\n */\n @Input()\n minWidth = false;\n\n /**\n * The `AXTabContentDirective` associated with the tab.\n */\n @Input()\n content!: AXTabContentDirective;\n\n private indicator = viewChild<ElementRef<HTMLSpanElement>>('indicator');\n\n private zone = inject(NgZone);\n\n /** @ignore */\n private _isUserInteraction = false;\n\n get items(): AXTabItemComponent[] {\n return this._contentTabs.toArray();\n }\n\n /** @ignore */\n private _selectedItem!: AXTabItemComponent;\n\n /** @ignore */\n get selectedIndex(): number {\n return this.items.indexOf(this._selectedItem);\n }\n\n /** @ignore */\n get selectedItem(): AXTabItemComponent {\n return this._selectedItem;\n }\n\n private changes: ResizeObserver;\n private activeTab = signal<AXTabItemComponent>(null);\n\n #tabChange = effect(() => {\n if (this.activeTab() && this.location()) {\n if (this.look() === 'with-line-color' || this.look() === 'with-line')\n setTimeout(() => {\n this.setIndicatorPosition(this.activeTab());\n });\n }\n });\n\n /**\n * @event\n */\n @Output()\n onActiveTabChanged: EventEmitter<AXTabStripChangedEvent> = new EventEmitter<AXTabStripChangedEvent>();\n\n /** @ignore */\n @HostBinding('class')\n private get __hostClass(): string[] {\n const cssClasses: string[] = [];\n cssClasses.push(`ax-look-${this.look()}`);\n cssClasses.push(`ax-${this.location()}`);\n if (this.fitParent) cssClasses.push(`ax-tabs-fit`);\n return cssClasses;\n }\n\n /** @ignore */\n ngAfterContentInit() {\n this._contentTabs.changes.subscribe(() => {\n this._bindOnClickEvent();\n });\n }\n\n /** @ignore */\n ngAfterViewInit() {\n this._bindOnClickEvent();\n this.zone.runOutsideAngular(() => {\n this.changes = new ResizeObserver((entries) => {\n if (entries[0].contentRect.width) {\n this.setIndicatorPosition(this.activeTab());\n this.changes.disconnect();\n }\n });\n if (this.activeTab()) this.changes.observe(this.activeTab().getHostElement());\n });\n }\n\n /** @ignore */\n private _bindOnClickEvent() {\n const selected = this.items.find((c) => c.active) || this.items[0];\n this.select(selected);\n this.items.forEach((c) => {\n if (!c.onClick.length) {\n c.onClick.subscribe((t) => {\n this._isUserInteraction = t.nativeEvent?.isTrusted;\n this.select(c);\n });\n }\n });\n }\n\n /**\n * Activates the specified tab and updates the content.\n *\n * @param {number | AXTabItemComponent}\n */\n select(tab: number | AXTabItemComponent) {\n const tabItem: AXTabItemComponent = typeof tab == 'number' ? this.items[tab] : tab;\n this.activeTab.set(tabItem);\n //\n if (!tab || this.selectedItem == tabItem) return;\n this._selectedItem = tabItem;\n //\n this.items.forEach((c) => (c.active = false));\n tabItem.active = true;\n if (this.content) {\n this.content.portal = tabItem.template;\n }\n this.cdr.markForCheck();\n this.onActiveTabChanged.emit({\n component: this,\n isUserInteraction: this._isUserInteraction,\n tab: tabItem,\n index: this.selectedIndex,\n });\n this._isUserInteraction = false;\n }\n\n private setIndicatorPosition(tabItem: AXTabItemComponent) {\n const indicatorStyle = this.indicator().nativeElement.style;\n const itemStats = tabItem.getStats();\n if (this.location() === 'top' || this.location() === 'bottom') {\n indicatorStyle.width = `${itemStats.width}px`;\n indicatorStyle.height = `var(--ax-tab-indicator-size)`;\n indicatorStyle.left = `${itemStats.left}px`;\n indicatorStyle.right = `unset`;\n if (this.location() === 'top') {\n indicatorStyle.top = `0px`;\n indicatorStyle.bottom = `unset`;\n }\n if (this.location() === 'bottom') {\n indicatorStyle.top = `unset`;\n indicatorStyle.bottom = `0px`;\n }\n }\n if (this.location() === 'start' || this.location() === 'end') {\n indicatorStyle.width = ` var(--ax-tab-indicator-size)`;\n indicatorStyle.height = `${itemStats.height}px`;\n indicatorStyle.top = `${itemStats.top}px`;\n indicatorStyle.bottom = `unset`;\n if (this.location() === 'start') {\n indicatorStyle.left = `0px`;\n indicatorStyle.right = `unset`;\n }\n if (this.location() === 'end') {\n indicatorStyle.left = `unset`;\n indicatorStyle.right = `0px`;\n }\n }\n }\n}\n","import { AXDecoratorModule } from '@acorex/components/decorators';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXTabContentDirective } from './tab-content.directive';\nimport { AXTabItemComponent } from './tab-item.component';\nimport { AXTabsComponent } from './tabs.component';\n\nconst COMPONENT = [AXTabsComponent, AXTabItemComponent, AXTabContentDirective];\nconst MODULES = [CommonModule, PortalModule, AXDecoratorModule];\n\n@NgModule({\n declarations: [...COMPONENT],\n imports: [...MODULES],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXTabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -1,98 +1,20 @@
|
|
1
1
|
import { MXBaseComponent, AXClosbaleComponent } from '@acorex/components/common';
|
2
|
-
import * as i1 from '@angular/cdk/dialog';
|
3
|
-
import {
|
2
|
+
import * as i1$1 from '@angular/cdk/dialog';
|
3
|
+
import { Dialog, DIALOG_DATA, DialogModule } from '@angular/cdk/dialog';
|
4
4
|
import * as i0 from '@angular/core';
|
5
|
-
import {
|
6
|
-
import * as i2 from '@acorex/components/decorators';
|
7
|
-
import { AXDecoratorModule } from '@acorex/components/decorators';
|
8
|
-
import * as i3 from '@angular/common';
|
9
|
-
import { CommonModule } from '@angular/common';
|
5
|
+
import { InjectionToken, inject, signal, Injectable, Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, HostBinding, NgModule } from '@angular/core';
|
10
6
|
import * as i4 from '@acorex/core/translation';
|
11
7
|
import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
|
8
|
+
import * as i1 from '@angular/cdk/overlay';
|
9
|
+
import { GlobalPositionStrategy } from '@angular/cdk/overlay';
|
12
10
|
import { AX_GLOBAL_CONFIG } from '@acorex/core/config';
|
13
11
|
import { set } from 'lodash-es';
|
12
|
+
import * as i2 from '@acorex/components/decorators';
|
13
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
14
|
+
import * as i3 from '@angular/common';
|
15
|
+
import { CommonModule } from '@angular/common';
|
14
16
|
import { AXButtonModule } from '@acorex/components/button';
|
15
17
|
import { AXLoadingModule } from '@acorex/components/loading';
|
16
|
-
import * as i1$1 from '@angular/cdk/overlay';
|
17
|
-
import { GlobalPositionStrategy } from '@angular/cdk/overlay';
|
18
|
-
|
19
|
-
/**
|
20
|
-
* The Button is a component which detects user interaction and triggers a corresponding event
|
21
|
-
*
|
22
|
-
* @category Components
|
23
|
-
*/
|
24
|
-
class AXToastComponent extends MXBaseComponent {
|
25
|
-
/**
|
26
|
-
* @ignore
|
27
|
-
*/
|
28
|
-
constructor(config, dialogRef) {
|
29
|
-
super();
|
30
|
-
this.config = config;
|
31
|
-
this.dialogRef = dialogRef;
|
32
|
-
/** @ignore */
|
33
|
-
this._toastWidth = 100;
|
34
|
-
}
|
35
|
-
/** @ignore */
|
36
|
-
ngOnInit() {
|
37
|
-
super.ngOnInit();
|
38
|
-
if (this.config.timeOut) {
|
39
|
-
setTimeout(() => {
|
40
|
-
this.close();
|
41
|
-
}, this.config.timeOut);
|
42
|
-
}
|
43
|
-
if (!this.config.icon) {
|
44
|
-
switch (this.config.color) {
|
45
|
-
case 'success':
|
46
|
-
this._icon = 'ax-icon ax-icon-check-circle';
|
47
|
-
break;
|
48
|
-
case 'warning':
|
49
|
-
this._icon = 'ax-icon ax-icon-warning';
|
50
|
-
break;
|
51
|
-
case 'danger':
|
52
|
-
this._icon = 'ax-icon ax-icon-error';
|
53
|
-
break;
|
54
|
-
case 'info':
|
55
|
-
this._icon = 'ax-icon ax-icon-info';
|
56
|
-
break;
|
57
|
-
default:
|
58
|
-
this._icon = this.config.icon || 'ax-icon ax-icon-check-circle';
|
59
|
-
break;
|
60
|
-
}
|
61
|
-
}
|
62
|
-
else {
|
63
|
-
this._icon = this.config.icon;
|
64
|
-
}
|
65
|
-
}
|
66
|
-
/** @ignore */
|
67
|
-
_handleButtonClick(button) {
|
68
|
-
if (button.onClick) {
|
69
|
-
button.onClick({ source: button });
|
70
|
-
}
|
71
|
-
}
|
72
|
-
/** @ignore */
|
73
|
-
get __hostClass() {
|
74
|
-
return `ax-${this.config.color}`;
|
75
|
-
}
|
76
|
-
/** @ignore */
|
77
|
-
close() {
|
78
|
-
this.dialogRef.close({
|
79
|
-
component: this,
|
80
|
-
htmlElement: this.getHostElement(),
|
81
|
-
});
|
82
|
-
}
|
83
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastComponent, deps: [{ token: DIALOG_DATA }, { token: i1.DialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
84
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXToastComponent, isStandalone: false, selector: "ax-toast", host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], usesInheritance: true, ngImport: i0, template: "<span class=\"ax-toast-icon ax-icon-solid {{ _icon }}\"></span>\n<div class=\"ax-toast-content\">\n <div class=\"ax-toast-title\" [class.ax-mb-2]=\"config.title && config.content\">{{ config.title | translate | async }}\n </div>\n <div class=\"ax-toast-content\" [innerHTML]=\"config.content\"></div>\n</div>\n@if(config.closeButton){\n<ax-close-button></ax-close-button>\n}\n@if(config.timeOutProgress && config.timeOut){\n<div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"config.timeOut\"></div>\n}", styles: [".ax-dark ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-800));color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-title{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary ax-button[class$=blank]{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-progress{background-color:rgba(var(--ax-color-primary-200))}.ax-dark ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-800));color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-title{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary ax-button[class$=blank]{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-progress{background-color:rgba(var(--ax-color-secondary-200))}.ax-dark ax-toast.ax-success{background-color:rgba(var(--ax-color-success-800));color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-title{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success ax-button[class$=blank]{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-progress{background-color:rgba(var(--ax-color-success-200))}.ax-dark ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-800));color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-title{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning ax-button[class$=blank]{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-progress{background-color:rgba(var(--ax-color-warning-200))}.ax-dark ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-title{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger ax-button[class$=blank]{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-progress{background-color:rgba(var(--ax-color-danger-200))}.ax-dark ax-toast.ax-info{background-color:rgba(var(--ax-color-info-800));color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-title{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info ax-button[class$=blank]{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-progress{background-color:rgba(var(--ax-color-info-200))}ax-toast{position:relative;display:flex;width:98vw;overflow:hidden;border-radius:var(--ax-rounded-border-default);padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--ax-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ax-shadow-colored: 0 4px 6px -1px var(--ax-shadow-color), 0 2px 4px -2px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow)}@media (min-width: 768px){ax-toast{width:24rem}}ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-toast.ax-primary .ax-toast-progress{color:rgba(var(--ax-color-primary-800))}ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-500));color:rgba(var(--ax-color-secondary-fore))}ax-toast.ax-secondary .ax-toast-progress{color:rgba(var(--ax-color-secondary-800))}ax-toast.ax-success{background-color:rgba(var(--ax-color-success-500));color:rgba(var(--ax-color-success-fore))}ax-toast.ax-success .ax-toast-progress{color:rgba(var(--ax-color-success-800))}ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-500));color:rgba(var(--ax-color-warning-fore))}ax-toast.ax-warning .ax-toast-progress{color:rgba(var(--ax-color-warning-800))}ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-500));color:rgba(var(--ax-color-danger-fore))}ax-toast.ax-danger .ax-toast-progress{color:rgba(var(--ax-color-danger-800))}ax-toast.ax-info{background-color:rgba(var(--ax-color-info-500));color:rgba(var(--ax-color-info-fore))}ax-toast.ax-info .ax-toast-progress{color:rgba(var(--ax-color-info-800))}ax-toast.ax-ghost{background-color:rgba(var(--ax-color-ghost));color:rgba(var(--ax-color-ghost-fore))}ax-toast.ax-ghost .ax-toast-progress{background-color:rgba(var(--ax-color-ghost-fore))}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem;line-height:1}ax-toast .ax-toast-icon{margin-inline-end:.5rem}ax-toast .ax-toast-content{display:flex;flex:1 1 0%;flex-direction:column}ax-toast .ax-toast-content .ax-toast-title{font-weight:500;line-height:1.5rem}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.75rem;margin-bottom:.75rem;display:flex;gap:.5rem}ax-toast ax-icon-close{height:fit-content}ax-toast ax-icon-close:hover{opacity:.75}ax-toast .ax-toast-progress{animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:#ffffff75;position:absolute;bottom:0;inset-inline-end:0px;inset-inline-start:0px;height:.25rem;width:100%}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"], dependencies: [{ kind: "component", type: i2.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["icon"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
85
|
-
}
|
86
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastComponent, decorators: [{
|
87
|
-
type: Component,
|
88
|
-
args: [{ selector: 'ax-toast', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], standalone: false, template: "<span class=\"ax-toast-icon ax-icon-solid {{ _icon }}\"></span>\n<div class=\"ax-toast-content\">\n <div class=\"ax-toast-title\" [class.ax-mb-2]=\"config.title && config.content\">{{ config.title | translate | async }}\n </div>\n <div class=\"ax-toast-content\" [innerHTML]=\"config.content\"></div>\n</div>\n@if(config.closeButton){\n<ax-close-button></ax-close-button>\n}\n@if(config.timeOutProgress && config.timeOut){\n<div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"config.timeOut\"></div>\n}", styles: [".ax-dark ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-800));color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-title{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary ax-button[class$=blank]{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-progress{background-color:rgba(var(--ax-color-primary-200))}.ax-dark ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-800));color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-title{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary ax-button[class$=blank]{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-progress{background-color:rgba(var(--ax-color-secondary-200))}.ax-dark ax-toast.ax-success{background-color:rgba(var(--ax-color-success-800));color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-title{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success ax-button[class$=blank]{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-progress{background-color:rgba(var(--ax-color-success-200))}.ax-dark ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-800));color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-title{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning ax-button[class$=blank]{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-progress{background-color:rgba(var(--ax-color-warning-200))}.ax-dark ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-title{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger ax-button[class$=blank]{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-progress{background-color:rgba(var(--ax-color-danger-200))}.ax-dark ax-toast.ax-info{background-color:rgba(var(--ax-color-info-800));color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-title{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info ax-button[class$=blank]{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-progress{background-color:rgba(var(--ax-color-info-200))}ax-toast{position:relative;display:flex;width:98vw;overflow:hidden;border-radius:var(--ax-rounded-border-default);padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--ax-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ax-shadow-colored: 0 4px 6px -1px var(--ax-shadow-color), 0 2px 4px -2px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow)}@media (min-width: 768px){ax-toast{width:24rem}}ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-toast.ax-primary .ax-toast-progress{color:rgba(var(--ax-color-primary-800))}ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-500));color:rgba(var(--ax-color-secondary-fore))}ax-toast.ax-secondary .ax-toast-progress{color:rgba(var(--ax-color-secondary-800))}ax-toast.ax-success{background-color:rgba(var(--ax-color-success-500));color:rgba(var(--ax-color-success-fore))}ax-toast.ax-success .ax-toast-progress{color:rgba(var(--ax-color-success-800))}ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-500));color:rgba(var(--ax-color-warning-fore))}ax-toast.ax-warning .ax-toast-progress{color:rgba(var(--ax-color-warning-800))}ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-500));color:rgba(var(--ax-color-danger-fore))}ax-toast.ax-danger .ax-toast-progress{color:rgba(var(--ax-color-danger-800))}ax-toast.ax-info{background-color:rgba(var(--ax-color-info-500));color:rgba(var(--ax-color-info-fore))}ax-toast.ax-info .ax-toast-progress{color:rgba(var(--ax-color-info-800))}ax-toast.ax-ghost{background-color:rgba(var(--ax-color-ghost));color:rgba(var(--ax-color-ghost-fore))}ax-toast.ax-ghost .ax-toast-progress{background-color:rgba(var(--ax-color-ghost-fore))}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem;line-height:1}ax-toast .ax-toast-icon{margin-inline-end:.5rem}ax-toast .ax-toast-content{display:flex;flex:1 1 0%;flex-direction:column}ax-toast .ax-toast-content .ax-toast-title{font-weight:500;line-height:1.5rem}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.75rem;margin-bottom:.75rem;display:flex;gap:.5rem}ax-toast ax-icon-close{height:fit-content}ax-toast ax-icon-close:hover{opacity:.75}ax-toast .ax-toast-progress{animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:#ffffff75;position:absolute;bottom:0;inset-inline-end:0px;inset-inline-start:0px;height:.25rem;width:100%}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"] }]
|
89
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
90
|
-
type: Inject,
|
91
|
-
args: [DIALOG_DATA]
|
92
|
-
}] }, { type: i1.DialogRef }], propDecorators: { __hostClass: [{
|
93
|
-
type: HostBinding,
|
94
|
-
args: ['class']
|
95
|
-
}] } });
|
96
18
|
|
97
19
|
const AX_TOAST_CONFIG = new InjectionToken('AX_TOAST_CONFIG', {
|
98
20
|
providedIn: 'root',
|
@@ -121,14 +43,13 @@ class AXToastService {
|
|
121
43
|
constructor(scrollStrategyOptions) {
|
122
44
|
this.scrollStrategyOptions = scrollStrategyOptions;
|
123
45
|
this.dialog = inject(Dialog);
|
124
|
-
this.translationService = inject(AXTranslationService);
|
125
46
|
this.defaultConfig = inject(AX_TOAST_CONFIG);
|
126
|
-
this.
|
127
|
-
this.
|
128
|
-
this.
|
129
|
-
this.
|
130
|
-
this.
|
131
|
-
this.
|
47
|
+
this.translationService = inject(AXTranslationService);
|
48
|
+
this.reserveCounter = signal(0);
|
49
|
+
this.activeToasts = signal([]);
|
50
|
+
this.reservedToasts = signal([]);
|
51
|
+
this.toastCounterElement = signal(null);
|
52
|
+
this.moreToastsConfig = signal({ color: 'primary', location: 'bottom-center' });
|
132
53
|
this.scrollStrategy = this.scrollStrategyOptions.noop();
|
133
54
|
}
|
134
55
|
primary(content) {
|
@@ -168,15 +89,19 @@ class AXToastService {
|
|
168
89
|
}
|
169
90
|
show(config) {
|
170
91
|
config = { ...this.defaultConfig, ...config };
|
171
|
-
this.
|
172
|
-
|
173
|
-
|
92
|
+
this.moreToastsConfig.set({
|
93
|
+
color: config.color,
|
94
|
+
location: config.location,
|
95
|
+
timeOut: config.timeOut,
|
96
|
+
timeOutProgress: config.timeOutProgress,
|
97
|
+
});
|
98
|
+
if (this.defaultConfig.limit > 0 && this.activeToasts().length >= this.defaultConfig.limit) {
|
174
99
|
const reservedRef = {
|
175
100
|
close: () => {
|
176
101
|
console.warn('Reserved notification cannot be closed until it is displayed.');
|
177
102
|
},
|
178
103
|
};
|
179
|
-
this.reservedToasts.
|
104
|
+
this.reservedToasts.update((prev) => [...prev, { config, reservedRef }]);
|
180
105
|
this.handleReservedToastCounter();
|
181
106
|
return reservedRef;
|
182
107
|
}
|
@@ -199,16 +124,16 @@ class AXToastService {
|
|
199
124
|
positionStrategy,
|
200
125
|
scrollStrategy: this.scrollStrategy,
|
201
126
|
});
|
202
|
-
this.activeToasts.
|
127
|
+
this.activeToasts.update((prev) => [...prev, dialogRef.id]);
|
203
128
|
this.handleReservedToastCounter();
|
204
129
|
const toastRef = dialogRef.componentInstance;
|
205
130
|
dialogRef.closed.subscribe(() => {
|
206
|
-
this.activeToasts
|
131
|
+
this.activeToasts.set(this.activeToasts().filter((id) => id !== dialogRef.id));
|
207
132
|
this.handleShowReservedToast();
|
208
133
|
this.handleReservedToastCounter();
|
209
134
|
setTimeout(() => {
|
210
135
|
this.reposition(config.location, gap);
|
211
|
-
}
|
136
|
+
});
|
212
137
|
});
|
213
138
|
return {
|
214
139
|
close: () => {
|
@@ -217,47 +142,51 @@ class AXToastService {
|
|
217
142
|
};
|
218
143
|
}
|
219
144
|
hideAll() {
|
145
|
+
this.reserveCounter.set(0);
|
146
|
+
this.reservedToasts.set([]);
|
147
|
+
this.activeToasts.set([]);
|
220
148
|
this.dialog.closeAll();
|
221
|
-
this.reserveCounter = 0;
|
222
|
-
this.reservedToasts = [];
|
223
|
-
this.activeToasts = [];
|
224
149
|
this.handleReservedToastCounter();
|
225
150
|
}
|
226
151
|
handleShowReservedToast() {
|
227
|
-
if (this.activeToasts.length > this.defaultConfig.limit - 1)
|
152
|
+
if (this.activeToasts().length > this.defaultConfig.limit - 1)
|
228
153
|
return;
|
229
|
-
if (!this.reservedToasts.length)
|
154
|
+
if (!this.reservedToasts().length)
|
230
155
|
return;
|
231
|
-
const { config, reservedRef } = this.reservedToasts.shift();
|
156
|
+
const { config, reservedRef } = this.reservedToasts().shift();
|
232
157
|
const displayedRef = this.displayToast(config);
|
233
158
|
this.handleReservedToastCounter();
|
234
159
|
reservedRef.close = displayedRef.close;
|
235
160
|
}
|
236
161
|
handleReservedToastCounter() {
|
237
|
-
const reservedCount = this.reservedToasts.length;
|
238
|
-
if (reservedCount === this.reserveCounter)
|
162
|
+
const reservedCount = this.reservedToasts().length;
|
163
|
+
if (reservedCount === this.reserveCounter())
|
239
164
|
return;
|
240
|
-
this.reserveCounter
|
241
|
-
if (reservedCount === 0 && this.toastCounterElement !== null) {
|
242
|
-
this.toastCounterElement.close();
|
165
|
+
this.reserveCounter.set(reservedCount);
|
166
|
+
if (reservedCount === 0 && this.toastCounterElement() !== null) {
|
167
|
+
this.toastCounterElement().close();
|
243
168
|
return;
|
244
169
|
}
|
245
170
|
if (reservedCount > 0) {
|
246
|
-
if (this.toastCounterElement !== null) {
|
247
|
-
this.toastCounterElement.close();
|
171
|
+
if (this.toastCounterElement() !== null) {
|
172
|
+
this.toastCounterElement().close();
|
248
173
|
}
|
249
|
-
this.
|
174
|
+
const remainingTime = this.dialog.getDialogById(this.activeToasts()[0]).componentRef.instance.createdDate();
|
175
|
+
this.createReservedCounterToast(remainingTime);
|
250
176
|
}
|
251
177
|
}
|
252
|
-
async createReservedCounterToast() {
|
178
|
+
async createReservedCounterToast(remainingTime) {
|
179
|
+
const timeOut = Math.min(this.moreToastsConfig().timeOut - (new Date().getTime() - remainingTime), this.moreToastsConfig().timeOut);
|
253
180
|
const opt = {
|
254
181
|
closeButton: false,
|
255
|
-
color: this.
|
256
|
-
location: this.
|
182
|
+
color: this.moreToastsConfig().color,
|
183
|
+
location: this.moreToastsConfig().location,
|
257
184
|
title: await this.translationService.translateAsync('more-toast', {
|
258
|
-
params: { number: this.reserveCounter },
|
185
|
+
params: { number: this.reserveCounter() },
|
259
186
|
}),
|
260
|
-
|
187
|
+
timeOut,
|
188
|
+
timeOutProgress: this.moreToastsConfig().timeOutProgress,
|
189
|
+
closeAllButton: true,
|
261
190
|
};
|
262
191
|
const gap = this.defaultConfig.gap;
|
263
192
|
const pos = this.getPosition(opt.location) + gap + 'px';
|
@@ -275,7 +204,7 @@ class AXToastService {
|
|
275
204
|
positionStrategy,
|
276
205
|
scrollStrategy: this.scrollStrategy,
|
277
206
|
});
|
278
|
-
this.toastCounterElement
|
207
|
+
this.toastCounterElement.set(dialogRef.componentInstance);
|
279
208
|
}
|
280
209
|
reposition(toastLocation, gap) {
|
281
210
|
const list = this.dialog.openDialogs
|
@@ -337,12 +266,96 @@ class AXToastService {
|
|
337
266
|
break;
|
338
267
|
}
|
339
268
|
}
|
340
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastService, deps: [{ token: i1
|
269
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastService, deps: [{ token: i1.ScrollStrategyOptions }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
341
270
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastService }); }
|
342
271
|
}
|
343
272
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastService, decorators: [{
|
344
273
|
type: Injectable
|
345
|
-
}], ctorParameters: () => [{ type: i1
|
274
|
+
}], ctorParameters: () => [{ type: i1.ScrollStrategyOptions }] });
|
275
|
+
|
276
|
+
/**
|
277
|
+
* The Button is a component which detects user interaction and triggers a corresponding event
|
278
|
+
*
|
279
|
+
* @category Components
|
280
|
+
*/
|
281
|
+
class AXToastComponent extends MXBaseComponent {
|
282
|
+
/**
|
283
|
+
* @ignore
|
284
|
+
*/
|
285
|
+
constructor(config, dialogRef) {
|
286
|
+
super();
|
287
|
+
this.config = config;
|
288
|
+
this.dialogRef = dialogRef;
|
289
|
+
this.toastService = inject(AXToastService);
|
290
|
+
this.createdDate = signal(0);
|
291
|
+
/** @ignore */
|
292
|
+
this._toastWidth = 100;
|
293
|
+
}
|
294
|
+
/** @ignore */
|
295
|
+
ngOnInit() {
|
296
|
+
super.ngOnInit();
|
297
|
+
if (this.config.timeOut) {
|
298
|
+
this.createdDate.set(new Date().getTime());
|
299
|
+
setTimeout(() => {
|
300
|
+
this.close();
|
301
|
+
}, this.config.timeOut);
|
302
|
+
}
|
303
|
+
if (!this.config.icon) {
|
304
|
+
switch (this.config.color) {
|
305
|
+
case 'success':
|
306
|
+
this._icon = 'ax-icon ax-icon-check-circle';
|
307
|
+
break;
|
308
|
+
case 'warning':
|
309
|
+
this._icon = 'ax-icon ax-icon-warning';
|
310
|
+
break;
|
311
|
+
case 'danger':
|
312
|
+
this._icon = 'ax-icon ax-icon-error';
|
313
|
+
break;
|
314
|
+
case 'info':
|
315
|
+
this._icon = 'ax-icon ax-icon-info';
|
316
|
+
break;
|
317
|
+
default:
|
318
|
+
this._icon = this.config.icon || 'ax-icon ax-icon-check-circle';
|
319
|
+
break;
|
320
|
+
}
|
321
|
+
}
|
322
|
+
else {
|
323
|
+
this._icon = this.config.icon;
|
324
|
+
}
|
325
|
+
}
|
326
|
+
/** @ignore */
|
327
|
+
_handleButtonClick(button) {
|
328
|
+
if (button.onClick) {
|
329
|
+
button.onClick({ source: button });
|
330
|
+
}
|
331
|
+
}
|
332
|
+
/** @ignore */
|
333
|
+
get __hostClass() {
|
334
|
+
return `ax-${this.config.color}`;
|
335
|
+
}
|
336
|
+
/** @ignore */
|
337
|
+
close() {
|
338
|
+
this.dialogRef.close({
|
339
|
+
component: this,
|
340
|
+
htmlElement: this.getHostElement(),
|
341
|
+
});
|
342
|
+
}
|
343
|
+
closeAll() {
|
344
|
+
this.toastService.hideAll();
|
345
|
+
}
|
346
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastComponent, deps: [{ token: DIALOG_DATA }, { token: i1$1.DialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
347
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: AXToastComponent, isStandalone: false, selector: "ax-toast", host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], usesInheritance: true, ngImport: i0, template: "<span class=\"ax-toast-icon ax-icon-solid {{ _icon }}\"></span>\n<div class=\"ax-toast-content\">\n <div class=\"ax-toast-title\" [class.ax-mb-2]=\"config.title && config.content\">\n {{ config.title | translate | async }}\n </div>\n <div class=\"ax-toast-content\" [innerHTML]=\"config.content\"></div>\n</div>\n@if (config.closeButton) {\n <ax-close-button></ax-close-button>\n} @else if (config.closeAllButton) {\n <ax-close-button [closeAll]=\"true\"></ax-close-button>\n}\n@if (config.timeOutProgress && config.timeOut) {\n <div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"config.timeOut\"></div>\n}\n", styles: [".ax-dark ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-800));color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-title{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary ax-button[class$=blank]{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-progress{background-color:rgba(var(--ax-color-primary-200))}.ax-dark ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-800));color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-title{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary ax-button[class$=blank]{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-progress{background-color:rgba(var(--ax-color-secondary-200))}.ax-dark ax-toast.ax-success{background-color:rgba(var(--ax-color-success-800));color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-title{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success ax-button[class$=blank]{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-progress{background-color:rgba(var(--ax-color-success-200))}.ax-dark ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-800));color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-title{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning ax-button[class$=blank]{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-progress{background-color:rgba(var(--ax-color-warning-200))}.ax-dark ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-title{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger ax-button[class$=blank]{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-progress{background-color:rgba(var(--ax-color-danger-200))}.ax-dark ax-toast.ax-info{background-color:rgba(var(--ax-color-info-800));color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-title{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info ax-button[class$=blank]{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-progress{background-color:rgba(var(--ax-color-info-200))}ax-toast{position:relative;display:flex;width:98vw;overflow:hidden;border-radius:var(--ax-rounded-border-default);padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--ax-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ax-shadow-colored: 0 4px 6px -1px var(--ax-shadow-color), 0 2px 4px -2px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow)}@media (min-width: 768px){ax-toast{width:24rem}}ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-toast.ax-primary .ax-toast-progress{color:rgba(var(--ax-color-primary-800))}ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-500));color:rgba(var(--ax-color-secondary-fore))}ax-toast.ax-secondary .ax-toast-progress{color:rgba(var(--ax-color-secondary-800))}ax-toast.ax-success{background-color:rgba(var(--ax-color-success-500));color:rgba(var(--ax-color-success-fore))}ax-toast.ax-success .ax-toast-progress{color:rgba(var(--ax-color-success-800))}ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-500));color:rgba(var(--ax-color-warning-fore))}ax-toast.ax-warning .ax-toast-progress{color:rgba(var(--ax-color-warning-800))}ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-500));color:rgba(var(--ax-color-danger-fore))}ax-toast.ax-danger .ax-toast-progress{color:rgba(var(--ax-color-danger-800))}ax-toast.ax-info{background-color:rgba(var(--ax-color-info-500));color:rgba(var(--ax-color-info-fore))}ax-toast.ax-info .ax-toast-progress{color:rgba(var(--ax-color-info-800))}ax-toast.ax-ghost{background-color:rgba(var(--ax-color-ghost));color:rgba(var(--ax-color-ghost-fore))}ax-toast.ax-ghost .ax-toast-progress{background-color:rgba(var(--ax-color-ghost-fore))}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem;line-height:1}ax-toast .ax-toast-icon{margin-inline-end:.5rem}ax-toast .ax-toast-content{display:flex;flex:1 1 0%;flex-direction:column}ax-toast .ax-toast-content .ax-toast-title{font-weight:500;line-height:1.5rem}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.75rem;margin-bottom:.75rem;display:flex;gap:.5rem}ax-toast ax-icon-close{height:fit-content}ax-toast ax-icon-close:hover{opacity:.75}ax-toast .ax-toast-progress{animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:#ffffff75;position:absolute;bottom:0;inset-inline-end:0px;inset-inline-start:0px;height:.25rem;width:100%}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"], dependencies: [{ kind: "component", type: i2.AXDecoratorCloseButtonComponent, selector: "ax-close-button", inputs: ["closeAll", "icon"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
348
|
+
}
|
349
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: AXToastComponent, decorators: [{
|
350
|
+
type: Component,
|
351
|
+
args: [{ selector: 'ax-toast', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXClosbaleComponent, useExisting: AXToastComponent }], standalone: false, template: "<span class=\"ax-toast-icon ax-icon-solid {{ _icon }}\"></span>\n<div class=\"ax-toast-content\">\n <div class=\"ax-toast-title\" [class.ax-mb-2]=\"config.title && config.content\">\n {{ config.title | translate | async }}\n </div>\n <div class=\"ax-toast-content\" [innerHTML]=\"config.content\"></div>\n</div>\n@if (config.closeButton) {\n <ax-close-button></ax-close-button>\n} @else if (config.closeAllButton) {\n <ax-close-button [closeAll]=\"true\"></ax-close-button>\n}\n@if (config.timeOutProgress && config.timeOut) {\n <div class=\"ax-toast-progress\" [style.animation-duration.ms]=\"config.timeOut\"></div>\n}\n", styles: [".ax-dark ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-800));color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-title{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary ax-button[class$=blank]{color:rgba(var(--ax-color-primary-fore))}.ax-dark ax-toast.ax-primary .ax-toast-progress{background-color:rgba(var(--ax-color-primary-200))}.ax-dark ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-800));color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-title{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary ax-button[class$=blank]{color:rgba(var(--ax-color-secondary-fore))}.ax-dark ax-toast.ax-secondary .ax-toast-progress{background-color:rgba(var(--ax-color-secondary-200))}.ax-dark ax-toast.ax-success{background-color:rgba(var(--ax-color-success-800));color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-title{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success ax-button[class$=blank]{color:rgba(var(--ax-color-success-fore))}.ax-dark ax-toast.ax-success .ax-toast-progress{background-color:rgba(var(--ax-color-success-200))}.ax-dark ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-800));color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-title{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning ax-button[class$=blank]{color:rgba(var(--ax-color-warning-fore))}.ax-dark ax-toast.ax-warning .ax-toast-progress{background-color:rgba(var(--ax-color-warning-200))}.ax-dark ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-title{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger ax-button[class$=blank]{color:rgba(var(--ax-color-danger-fore))}.ax-dark ax-toast.ax-danger .ax-toast-progress{background-color:rgba(var(--ax-color-danger-200))}.ax-dark ax-toast.ax-info{background-color:rgba(var(--ax-color-info-800));color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-title{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info ax-button[class$=blank]{color:rgba(var(--ax-color-info-fore))}.ax-dark ax-toast.ax-info .ax-toast-progress{background-color:rgba(var(--ax-color-info-200))}ax-toast{position:relative;display:flex;width:98vw;overflow:hidden;border-radius:var(--ax-rounded-border-default);padding:.75rem 1rem;font-size:.875rem;line-height:1.25rem;--ax-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ax-shadow-colored: 0 4px 6px -1px var(--ax-shadow-color), 0 2px 4px -2px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow)}@media (min-width: 768px){ax-toast{width:24rem}}ax-toast.ax-primary{background-color:rgba(var(--ax-color-primary-500));color:rgba(var(--ax-color-primary-fore))}ax-toast.ax-primary .ax-toast-progress{color:rgba(var(--ax-color-primary-800))}ax-toast.ax-secondary{background-color:rgba(var(--ax-color-secondary-500));color:rgba(var(--ax-color-secondary-fore))}ax-toast.ax-secondary .ax-toast-progress{color:rgba(var(--ax-color-secondary-800))}ax-toast.ax-success{background-color:rgba(var(--ax-color-success-500));color:rgba(var(--ax-color-success-fore))}ax-toast.ax-success .ax-toast-progress{color:rgba(var(--ax-color-success-800))}ax-toast.ax-warning{background-color:rgba(var(--ax-color-warning-500));color:rgba(var(--ax-color-warning-fore))}ax-toast.ax-warning .ax-toast-progress{color:rgba(var(--ax-color-warning-800))}ax-toast.ax-danger{background-color:rgba(var(--ax-color-danger-500));color:rgba(var(--ax-color-danger-fore))}ax-toast.ax-danger .ax-toast-progress{color:rgba(var(--ax-color-danger-800))}ax-toast.ax-info{background-color:rgba(var(--ax-color-info-500));color:rgba(var(--ax-color-info-fore))}ax-toast.ax-info .ax-toast-progress{color:rgba(var(--ax-color-info-800))}ax-toast.ax-ghost{background-color:rgba(var(--ax-color-ghost));color:rgba(var(--ax-color-ghost-fore))}ax-toast.ax-ghost .ax-toast-progress{background-color:rgba(var(--ax-color-ghost-fore))}ax-toast .ax-toast-icon,ax-toast .ax-icon-close{font-size:1.25rem;line-height:1}ax-toast .ax-toast-icon{margin-inline-end:.5rem}ax-toast .ax-toast-content{display:flex;flex:1 1 0%;flex-direction:column}ax-toast .ax-toast-content .ax-toast-title{font-weight:500;line-height:1.5rem}ax-toast .ax-toast-content .ax-toast-buttons{margin-top:.75rem;margin-bottom:.75rem;display:flex;gap:.5rem}ax-toast ax-icon-close{height:fit-content}ax-toast ax-icon-close:hover{opacity:.75}ax-toast .ax-toast-progress{animation-duration:4s;animation-timing-function:linear;animation-name:progressBar;background-color:#ffffff75;position:absolute;bottom:0;inset-inline-end:0px;inset-inline-start:0px;height:.25rem;width:100%}@keyframes progressBar{0%{width:100%}to{width:0%}}\n"] }]
|
352
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
353
|
+
type: Inject,
|
354
|
+
args: [DIALOG_DATA]
|
355
|
+
}] }, { type: i1$1.DialogRef }], propDecorators: { __hostClass: [{
|
356
|
+
type: HostBinding,
|
357
|
+
args: ['class']
|
358
|
+
}] } });
|
346
359
|
|
347
360
|
const COMPONENT = [AXToastComponent];
|
348
361
|
const MODULES = [CommonModule, AXButtonModule, AXDecoratorModule, AXLoadingModule, DialogModule, AXTranslationModule];
|