ngx-tethys 20.0.1 → 20.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/action/index.d.ts +3 -3
- package/affix/index.d.ts +1 -1
- package/alert/index.d.ts +3 -3
- package/anchor/index.d.ts +3 -3
- package/arrow-switcher/index.d.ts +6 -6
- package/autocomplete/index.d.ts +7 -7
- package/avatar/index.d.ts +9 -9
- package/back-top/index.d.ts +3 -3
- package/badge/index.d.ts +6 -6
- package/breadcrumb/index.d.ts +7 -7
- package/button/index.d.ts +19 -19
- package/calendar/index.d.ts +8 -8
- package/card/index.d.ts +6 -6
- package/carousel/index.d.ts +4 -4
- package/cascader/index.d.ts +24 -24
- package/collapse/index.d.ts +4 -4
- package/color-picker/index.d.ts +16 -16
- package/comment/index.d.ts +3 -3
- package/copy/index.d.ts +2 -2
- package/core/index.d.ts +22 -22
- package/date-picker/index.d.ts +111 -111
- package/date-range/index.d.ts +5 -5
- package/dialog/index.d.ts +18 -18
- package/divider/index.d.ts +3 -3
- package/drag-drop/index.d.ts +7 -7
- package/dropdown/index.d.ts +10 -10
- package/empty/index.d.ts +12 -12
- package/fesm2022/ngx-tethys-action.mjs +14 -12
- package/fesm2022/ngx-tethys-action.mjs.map +1 -1
- package/fesm2022/ngx-tethys-affix.mjs +7 -7
- package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
- package/fesm2022/ngx-tethys-alert.mjs +10 -10
- package/fesm2022/ngx-tethys-anchor.mjs +11 -11
- package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
- package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
- package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
- package/fesm2022/ngx-tethys-autocomplete.mjs +19 -18
- package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
- package/fesm2022/ngx-tethys-avatar.mjs +23 -22
- package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
- package/fesm2022/ngx-tethys-back-top.mjs +7 -7
- package/fesm2022/ngx-tethys-badge.mjs +7 -7
- package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
- package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
- package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
- package/fesm2022/ngx-tethys-button.mjs +16 -16
- package/fesm2022/ngx-tethys-button.mjs.map +1 -1
- package/fesm2022/ngx-tethys-calendar.mjs +16 -16
- package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
- package/fesm2022/ngx-tethys-card.mjs +13 -13
- package/fesm2022/ngx-tethys-card.mjs.map +1 -1
- package/fesm2022/ngx-tethys-carousel.mjs +15 -15
- package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
- package/fesm2022/ngx-tethys-cascader.mjs +41 -34
- package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
- package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
- package/fesm2022/ngx-tethys-collapse.mjs +10 -10
- package/fesm2022/ngx-tethys-color-picker.mjs +65 -57
- package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-comment.mjs +13 -13
- package/fesm2022/ngx-tethys-copy.mjs +10 -10
- package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
- package/fesm2022/ngx-tethys-core.mjs +30 -25
- package/fesm2022/ngx-tethys-core.mjs.map +1 -1
- package/fesm2022/ngx-tethys-date-picker.mjs +184 -174
- package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-date-range.mjs +16 -16
- package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dialog.mjs +24 -24
- package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
- package/fesm2022/ngx-tethys-divider.mjs +7 -7
- package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dot.mjs +7 -7
- package/fesm2022/ngx-tethys-drag-drop.mjs +24 -24
- package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dropdown.mjs +48 -47
- package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
- package/fesm2022/ngx-tethys-empty.mjs +13 -13
- package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
- package/fesm2022/ngx-tethys-flexible-text.mjs +7 -7
- package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
- package/fesm2022/ngx-tethys-form.mjs +64 -61
- package/fesm2022/ngx-tethys-form.mjs.map +1 -1
- package/fesm2022/ngx-tethys-fullscreen.mjs +18 -15
- package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
- package/fesm2022/ngx-tethys-grid.mjs +34 -33
- package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
- package/fesm2022/ngx-tethys-guider.mjs +25 -24
- package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-i18n.mjs +3 -3
- package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
- package/fesm2022/ngx-tethys-icon.mjs +15 -13
- package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
- package/fesm2022/ngx-tethys-image.mjs +31 -29
- package/fesm2022/ngx-tethys-image.mjs.map +1 -1
- package/fesm2022/ngx-tethys-input-number.mjs +17 -10
- package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
- package/fesm2022/ngx-tethys-input.mjs +28 -27
- package/fesm2022/ngx-tethys-input.mjs.map +1 -1
- package/fesm2022/ngx-tethys-layout.mjs +63 -63
- package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
- package/fesm2022/ngx-tethys-list.mjs +21 -18
- package/fesm2022/ngx-tethys-list.mjs.map +1 -1
- package/fesm2022/ngx-tethys-loading.mjs +7 -7
- package/fesm2022/ngx-tethys-mention.mjs +35 -31
- package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
- package/fesm2022/ngx-tethys-menu.mjs +26 -26
- package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
- package/fesm2022/ngx-tethys-message.mjs +24 -24
- package/fesm2022/ngx-tethys-message.mjs.map +1 -1
- package/fesm2022/ngx-tethys-nav.mjs +27 -27
- package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
- package/fesm2022/ngx-tethys-notify.mjs +20 -20
- package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
- package/fesm2022/ngx-tethys-pagination.mjs +18 -18
- package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
- package/fesm2022/ngx-tethys-popover.mjs +22 -21
- package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
- package/fesm2022/ngx-tethys-progress.mjs +17 -17
- package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
- package/fesm2022/ngx-tethys-property-operation.mjs +11 -11
- package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
- package/fesm2022/ngx-tethys-property.mjs +12 -11
- package/fesm2022/ngx-tethys-property.mjs.map +1 -1
- package/fesm2022/ngx-tethys-radio.mjs +17 -17
- package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
- package/fesm2022/ngx-tethys-rate.mjs +12 -12
- package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
- package/fesm2022/ngx-tethys-resizable.mjs +21 -18
- package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
- package/fesm2022/ngx-tethys-result.mjs +11 -11
- package/fesm2022/ngx-tethys-result.mjs.map +1 -1
- package/fesm2022/ngx-tethys-segment.mjs +19 -16
- package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
- package/fesm2022/ngx-tethys-select.mjs +60 -38
- package/fesm2022/ngx-tethys-select.mjs.map +1 -1
- package/fesm2022/ngx-tethys-shared.mjs +82 -79
- package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
- package/fesm2022/ngx-tethys-skeleton.mjs +32 -32
- package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
- package/fesm2022/ngx-tethys-slide.mjs +37 -36
- package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
- package/fesm2022/ngx-tethys-slider.mjs +11 -11
- package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-space.mjs +10 -10
- package/fesm2022/ngx-tethys-statistic.mjs +7 -7
- package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
- package/fesm2022/ngx-tethys-stepper.mjs +22 -22
- package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
- package/fesm2022/ngx-tethys-strength.mjs +7 -7
- package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
- package/fesm2022/ngx-tethys-switch.mjs +7 -7
- package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
- package/fesm2022/ngx-tethys-table.mjs +28 -28
- package/fesm2022/ngx-tethys-table.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tabs.mjs +13 -13
- package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tag.mjs +11 -11
- package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
- package/fesm2022/ngx-tethys-testing.mjs +1 -1
- package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
- package/fesm2022/ngx-tethys-time-picker.mjs +22 -22
- package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-timeline.mjs +14 -14
- package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tooltip.mjs +19 -16
- package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
- package/fesm2022/ngx-tethys-transfer.mjs +15 -15
- package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tree-select.mjs +17 -17
- package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tree.mjs +50 -43
- package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
- package/fesm2022/ngx-tethys-typography.mjs +16 -16
- package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
- package/fesm2022/ngx-tethys-upload.mjs +26 -25
- package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
- package/fesm2022/ngx-tethys-util.mjs +11 -5
- package/fesm2022/ngx-tethys-util.mjs.map +1 -1
- package/fesm2022/ngx-tethys-vote.mjs +7 -7
- package/fesm2022/ngx-tethys-watermark.mjs +18 -15
- package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
- package/fesm2022/ngx-tethys.mjs +1 -1
- package/fesm2022/ngx-tethys.mjs.map +1 -1
- package/flexible-text/index.d.ts +5 -5
- package/form/index.d.ts +26 -22
- package/fullscreen/index.d.ts +4 -4
- package/grid/index.d.ts +12 -12
- package/guider/index.d.ts +10 -10
- package/i18n/index.d.ts +1 -1
- package/icon/index.d.ts +3 -3
- package/image/index.d.ts +12 -12
- package/input/index.d.ts +22 -22
- package/input-number/index.d.ts +4 -4
- package/layout/index.d.ts +16 -16
- package/list/index.d.ts +16 -15
- package/mention/index.d.ts +4 -4
- package/menu/index.d.ts +7 -7
- package/message/index.d.ts +5 -5
- package/nav/index.d.ts +12 -12
- package/notify/index.d.ts +1 -1
- package/package.json +1 -1
- package/pagination/index.d.ts +21 -17
- package/popover/index.d.ts +8 -8
- package/progress/index.d.ts +18 -18
- package/property/index.d.ts +6 -6
- package/property-operation/index.d.ts +3 -3
- package/radio/index.d.ts +6 -6
- package/rate/index.d.ts +5 -5
- package/resizable/index.d.ts +2 -2
- package/result/index.d.ts +8 -8
- package/schematics/testing/test-workspace.js +1 -0
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
- package/segment/index.d.ts +9 -9
- package/select/index.d.ts +21 -21
- package/shared/index.d.ts +29 -29
- package/skeleton/index.d.ts +52 -52
- package/slide/index.d.ts +5 -5
- package/slider/index.d.ts +6 -6
- package/space/index.d.ts +1 -1
- package/statistic/index.d.ts +18 -18
- package/stepper/index.d.ts +8 -8
- package/switch/index.d.ts +2 -2
- package/table/index.d.ts +24 -24
- package/tabs/index.d.ts +6 -6
- package/testing/index.d.ts +1 -1
- package/time-picker/index.d.ts +21 -21
- package/timeline/index.d.ts +8 -8
- package/tooltip/index.d.ts +12 -12
- package/transfer/index.d.ts +16 -16
- package/tree/index.d.ts +28 -28
- package/tree-select/index.d.ts +13 -13
- package/typography/index.d.ts +3 -3
- package/upload/index.d.ts +4 -4
- package/util/index.d.ts +17 -7
- package/vote/index.d.ts +2 -2
- package/watermark/index.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-message.mjs","sources":["../../../src/message/abstract/abstract-message-container.component.ts","../../../src/message/abstract/abstract-message-queue.service.ts","../../../src/message/abstract/abstract-message.component.ts","../../../src/message/abstract/abstract-message.service.ts","../../../src/message/abstract/abstract-message-ref.ts","../../../src/message/message.config.ts","../../../src/message/message-queue.service.ts","../../../src/message/message.component.ts","../../../src/message/message.component.html","../../../src/message/message-container.component.ts","../../../src/message/module.ts","../../../src/message/message-ref.ts","../../../src/message/message.service.ts","../../../src/message/ngx-tethys-message.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { coerceCssPixelValue } from 'ngx-tethys/util';\nimport { ThyGlobalMessageConfig } from '../message.config';\n\n/**\n * @internal\n */\n@Directive()\nexport abstract class ThyAbstractMessageContainerComponent {\n private elementRef = inject(ElementRef);\n\n @HostBinding('style.top')\n get offset(): string {\n return coerceCssPixelValue(this.defaultConfig.offset);\n }\n\n public abstract defaultConfig: ThyGlobalMessageConfig;\n\n toOverlayTop() {\n const globalOverlayWrapper = this.elementRef.nativeElement.closest('.cdk-global-overlay-wrapper');\n const overlayContainer = globalOverlayWrapper.parentElement;\n overlayContainer.appendChild(globalOverlayWrapper);\n }\n}\n","import { BehaviorSubject } from 'rxjs';\nimport { ThyGlobalMessageConfig } from '../message.config';\nimport { IThyAbstractMessageQueue, ThyAbstractMessageRef } from './abstract-message-ref';\nimport { signal } from '@angular/core';\n\n/**\n * @internal\n */\nexport class ThyAbstractMessageQueue<TReference extends ThyAbstractMessageRef = ThyAbstractMessageRef> implements IThyAbstractMessageQueue {\n queues = signal<TReference[]>([]);\n\n protected defaultConfig: ThyGlobalMessageConfig;\n\n setQueues(newValue: TReference[]) {\n this.queues.set(newValue);\n }\n\n constructor(defaultConfig: ThyGlobalMessageConfig) {\n this.defaultConfig = defaultConfig;\n }\n\n add(messageRef: TReference) {\n const queues = this.queues();\n if (queues.length >= this.defaultConfig.maxStack) {\n const closedRef = queues.shift();\n closedRef.close();\n }\n this.queues.set([...queues, messageRef]);\n }\n\n remove(id: string) {\n if (!id) {\n this.queues().forEach(item => item.close());\n this.queues.set([]);\n } else {\n const removeItem = this.queues().find(item => item.id === id);\n removeItem?.close();\n const afterRemovedQueues = this.queues().filter(item => item.id !== id);\n this.queues.set(afterRemovedQueues);\n }\n }\n}\n","import { Directive, HostListener, NgZone, OnDestroy, OnInit, inject, input } from '@angular/core';\nimport { ThyMessageBaseConfig } from '../message.config';\nimport { ThyAbstractMessageQueue } from './abstract-message-queue.service';\n\nexport const ANIMATION_IN_DURATION = 100;\nexport const ANIMATION_OUT_DURATION = 150;\nexport const HIDE_STYLE = { transform: 'translateX(0)', opacity: 0, height: 0, paddingTop: 0, paddingBottom: 0, margin: 0 };\n\n/**\n * @internal\n */\n@Directive()\nexport abstract class ThyAbstractMessageComponent<TConfig extends ThyMessageBaseConfig> implements OnInit, OnDestroy {\n private _ngZone = inject(NgZone);\n\n animationState: string;\n\n iconName = '';\n\n private closeTimer: any;\n\n protected abstract queue: ThyAbstractMessageQueue;\n\n readonly config = input<TConfig>(null, { alias: 'thyConfig' });\n\n ngOnInit() {\n const iconName: Record<string, string> = {\n success: 'check-circle-fill',\n info: 'info-circle-fill',\n warning: 'waring-fill',\n error: 'close-circle-fill'\n };\n\n this.iconName = iconName[this.config()?.type];\n this.createCloseTimer();\n }\n\n @HostListener('mouseenter')\n mouseenter() {\n if (this.config()?.pauseOnHover) {\n this.clearCloseTimer();\n }\n }\n\n @HostListener('mouseleave')\n mouseleave() {\n if (this.config()?.pauseOnHover) {\n this.createCloseTimer();\n }\n }\n\n close() {\n this._ngZone.runOutsideAngular(() => {\n this.animationState = 'componentHide';\n setTimeout(() => {\n this.queue.remove(this.config()?.id);\n }, ANIMATION_OUT_DURATION);\n });\n }\n\n private createCloseTimer() {\n const config = this.config();\n if (config?.duration) {\n this.closeTimer = setInterval(() => {\n this.clearCloseTimer();\n this.close();\n }, config.duration);\n }\n }\n\n private clearCloseTimer() {\n clearInterval(this.closeTimer);\n }\n\n ngOnDestroy() {\n this.clearCloseTimer();\n }\n}\n","import { ComponentType, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { Injector } from '@angular/core';\nimport { ThyAbstractMessageContainerComponent } from './abstract-message-container.component';\nimport { ThyAbstractMessageQueue } from './abstract-message-queue.service';\n\n/**\n * @internal\n */\nexport class ThyAbstractMessageService<TContainer extends ThyAbstractMessageContainerComponent> {\n protected container: TContainer;\n\n protected overlayRef: OverlayRef;\n\n private queue: ThyAbstractMessageQueue;\n\n constructor(\n private overlay: Overlay,\n private injector: Injector,\n queue: ThyAbstractMessageQueue\n ) {\n this.queue = queue;\n }\n\n protected createContainer(container: ComponentType<TContainer>): TContainer {\n if (this.container) {\n this.container.toOverlayTop();\n return this.container;\n }\n\n this.overlayRef = this.overlay.create({\n hasBackdrop: false,\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n positionStrategy: this.overlay.position().global()\n });\n const componentPortal = new ComponentPortal(container, null, this.injector);\n const componentRef = this.overlayRef.attach(componentPortal);\n return componentRef.instance;\n }\n\n remove(id?: string) {\n this.queue.remove(id);\n }\n}\n","import { OverlayRef } from '@angular/cdk/overlay';\nimport { Subject } from 'rxjs';\nimport { ThyMessageBaseConfig } from '../message.config';\nimport { WritableSignal, Signal } from '@angular/core';\n\nexport interface IThyAbstractMessageQueue<TReferences extends ThyAbstractMessageRef = ThyAbstractMessageRef> {\n queues: Signal<TReferences[]>;\n setQueues(newValue: TReferences[]): void;\n}\n\nexport class ThyAbstractMessageRef<TConfig extends ThyMessageBaseConfig = ThyMessageBaseConfig> {\n id: string;\n\n config: TConfig;\n\n private overlayRef: OverlayRef;\n\n private queueService: IThyAbstractMessageQueue;\n\n private _afterClosed = new Subject<void>();\n\n constructor(config: TConfig, overlayRef: OverlayRef, queueService: IThyAbstractMessageQueue) {\n this.id = config.id;\n this.config = config;\n this.overlayRef = overlayRef;\n this.queueService = queueService;\n }\n\n close() {\n this.queueService.setQueues(this.queueService.queues().filter(item => item.id !== this.id));\n this._afterClosed.next();\n this._afterClosed.complete();\n }\n\n afterClosed() {\n return this._afterClosed.asObservable();\n }\n\n getOverlayRef() {\n return this.overlayRef;\n }\n}\n","import { InjectionToken, TemplateRef } from '@angular/core';\nimport { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';\n\nexport type ThyMessageType = 'success' | 'error' | 'warning' | 'info' | 'loading';\n\nexport interface ThyGlobalMessageConfig {\n pauseOnHover?: boolean;\n\n duration?: number;\n\n maxStack?: number;\n\n offset?: string;\n\n showClose?: boolean;\n}\n\nexport const THY_MESSAGE_DEFAULT_CONFIG = new InjectionToken<ThyGlobalMessageConfig>('thy-message-default-config');\n\nexport const THY_MESSAGE_DEFAULT_CONFIG_VALUE: ThyGlobalMessageConfig = {\n offset: '20',\n duration: 4500,\n pauseOnHover: true,\n maxStack: 8,\n showClose: true\n};\n\nexport const THY_MESSAGE_DEFAULT_CONFIG_PROVIDER = {\n provide: THY_MESSAGE_DEFAULT_CONFIG,\n useValue: THY_MESSAGE_DEFAULT_CONFIG_VALUE\n};\n\nexport interface ThyMessageBaseConfig {\n id?: string;\n\n type?: string;\n\n pauseOnHover?: boolean;\n\n duration?: number;\n\n content?: string | ComponentTypeOrTemplateRef<any>;\n\n hostClass?: string | string[];\n}\n\nexport interface ThyMessageConfig extends ThyMessageBaseConfig {\n type?: ThyMessageType;\n\n content?: string | TemplateRef<any>;\n\n showClose?: boolean;\n}\n","import { Injectable, inject } from '@angular/core';\nimport { ThyAbstractMessageQueue } from './abstract';\nimport { ThyMessageRef } from './message-ref';\nimport { THY_MESSAGE_DEFAULT_CONFIG, THY_MESSAGE_DEFAULT_CONFIG_VALUE } from './message.config';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyMessageQueue extends ThyAbstractMessageQueue<ThyMessageRef> {\n constructor() {\n const defaultConfig = inject(THY_MESSAGE_DEFAULT_CONFIG);\n\n super({\n ...THY_MESSAGE_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n });\n }\n}\n","import { Component, HostBinding, effect, inject } from '@angular/core';\nimport { trigger, state, style, animate, transition } from '@angular/animations';\nimport { ThyMessageConfig } from './message.config';\nimport { ThyMessageQueue } from './message-queue.service';\nimport { ANIMATION_IN_DURATION, ANIMATION_OUT_DURATION, HIDE_STYLE, ThyAbstractMessageComponent } from './abstract';\nimport { ThyStringOrTemplateOutletDirective } from 'ngx-tethys/shared';\nimport { ThyIcon } from 'ngx-tethys/icon';\n\nimport { coerceArray } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\n\n/**\n * @internal\n */\n@Component({\n selector: 'thy-message',\n templateUrl: './message.component.html',\n host: {\n '[class]': \"'thy-message thy-message-' + config().type\"\n },\n animations: [\n trigger('flyInOut', [\n state('flyIn', style({ transform: 'translateY(0)', opacity: 1, height: '*' })),\n transition('void => flyIn', [\n style({ transform: 'translateY(-100%)', opacity: 0, height: '*' }),\n animate(ANIMATION_IN_DURATION)\n ]),\n transition('flyIn => componentHide', [animate(ANIMATION_OUT_DURATION, style(HIDE_STYLE))]),\n state('componentHide', style(HIDE_STYLE))\n ])\n ],\n imports: [ThyIcon, ThyStringOrTemplateOutletDirective]\n})\nexport class ThyMessage extends ThyAbstractMessageComponent<ThyMessageConfig> {\n @HostBinding('@flyInOut') animationState = 'flyIn';\n\n private hostRenderer = useHostRenderer();\n\n protected queue = inject(ThyMessageQueue);\n\n constructor() {\n super();\n effect(() => {\n const config = this.config();\n if (config?.hostClass) {\n const hostClass = coerceArray(config.hostClass);\n this.hostRenderer.updateClass(hostClass);\n }\n });\n }\n}\n","@let messageConfig = config();\n\n@if (iconName) {\n <thy-icon class=\"thy-message-icon\" [thyIconName]=\"iconName\"></thy-icon>\n} @else {\n <span class=\"thy-message-icon loading-icon\"></span>\n}\n<div class=\"thy-message-main\">\n <ng-container *thyStringOrTemplateOutlet=\"messageConfig?.content\"></ng-container>\n</div>\n@if (messageConfig?.showClose) {\n <thy-icon class=\"thy-message-close\" thyIconName=\"close\" (click)=\"close()\"></thy-icon>\n}\n","import { Component, ElementRef, inject } from '@angular/core';\nimport { ThyAbstractMessageContainerComponent } from './abstract';\nimport { ThyMessageQueue } from './message-queue.service';\nimport { THY_MESSAGE_DEFAULT_CONFIG, THY_MESSAGE_DEFAULT_CONFIG_VALUE } from './message.config';\nimport { ThyMessage } from './message.component';\nimport { AsyncPipe } from '@angular/common';\n\n/**\n * @internal\n */\n@Component({\n selector: 'thy-message-container',\n template: `\n @for (message of messageQueue.queues(); track message.id) {\n <thy-message [thyConfig]=\"message.config\"></thy-message>\n }\n `,\n imports: [ThyMessage],\n host: {\n class: 'thy-message-container'\n }\n})\nexport class ThyMessageContainer extends ThyAbstractMessageContainerComponent {\n messageQueue = inject(ThyMessageQueue);\n\n public defaultConfig = (() => {\n const defaultConfig = inject(THY_MESSAGE_DEFAULT_CONFIG);\n return {\n ...THY_MESSAGE_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n };\n })();\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyMessage } from './message.component';\nimport { ThyMessageContainer } from './message-container.component';\nimport { THY_MESSAGE_DEFAULT_CONFIG_PROVIDER } from './message.config';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, OverlayModule, PortalModule, ThyIconModule, ThyMessageContainer, ThyMessage],\n exports: [ThyMessageContainer, ThyMessage],\n providers: [THY_MESSAGE_DEFAULT_CONFIG_PROVIDER]\n})\nexport class ThyMessageModule {}\n","import { ThyAbstractMessageRef } from './abstract';\nimport { ThyMessageConfig } from './message.config';\n\nexport class ThyMessageRef extends ThyAbstractMessageRef<ThyMessageConfig> {}\n","import { Overlay } from '@angular/cdk/overlay';\nimport { Injectable, Injector, TemplateRef, inject } from '@angular/core';\nimport { ThyMessageContainer } from './message-container.component';\nimport { ThyMessageRef } from './message-ref';\nimport { ThyMessageQueue } from './message-queue.service';\nimport { ThyGlobalMessageConfig, ThyMessageConfig, THY_MESSAGE_DEFAULT_CONFIG, THY_MESSAGE_DEFAULT_CONFIG_VALUE } from './message.config';\nimport { ThyAbstractMessageService } from './abstract';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyMessageService extends ThyAbstractMessageService<ThyMessageContainer> {\n private messageQueue: ThyMessageQueue;\n\n private _lastMessageId = 0;\n\n private defaultConfig: ThyGlobalMessageConfig;\n\n constructor() {\n const overlay = inject(Overlay);\n const injector = inject(Injector);\n const messageQueue = inject(ThyMessageQueue);\n const config = inject(THY_MESSAGE_DEFAULT_CONFIG);\n\n super(overlay, injector, messageQueue);\n this.messageQueue = messageQueue;\n\n this.defaultConfig = {\n ...THY_MESSAGE_DEFAULT_CONFIG_VALUE,\n ...config\n };\n }\n\n /**\n * 打开 success 类型的 Message\n */\n success(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'success',\n content\n });\n }\n\n /**\n * 打开 error 类型的 Message\n */\n error(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'error',\n content\n });\n }\n\n /**\n * 打开 info 类型的 Message\n */\n info(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'info',\n content\n });\n }\n\n /**\n * 打开 warning 类型的 Message\n */\n warning(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'warning',\n content\n });\n }\n\n /**\n * 打开 loading 类型的 Message\n */\n loading(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'loading',\n content\n });\n }\n\n protected show(config: ThyMessageConfig): ThyMessageRef {\n this.container = this.createContainer(ThyMessageContainer);\n\n const messageConfig = this.formatOptions(config);\n const messageRef = new ThyMessageRef(messageConfig, this.overlayRef, this.messageQueue);\n this.messageQueue.add(messageRef);\n return messageRef;\n }\n\n private formatOptions(config: ThyMessageConfig) {\n return Object.assign({ id: String(this._lastMessageId++) }, this.defaultConfig, config);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-tethys-message.mjs","sources":["../../../src/message/abstract/abstract-message-container.component.ts","../../../src/message/abstract/abstract-message-queue.service.ts","../../../src/message/abstract/abstract-message.component.ts","../../../src/message/abstract/abstract-message.service.ts","../../../src/message/abstract/abstract-message-ref.ts","../../../src/message/message.config.ts","../../../src/message/message-queue.service.ts","../../../src/message/message.component.ts","../../../src/message/message.component.html","../../../src/message/message-container.component.ts","../../../src/message/module.ts","../../../src/message/message-ref.ts","../../../src/message/message.service.ts","../../../src/message/ngx-tethys-message.ts"],"sourcesContent":["import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { coerceCssPixelValue } from 'ngx-tethys/util';\nimport { ThyGlobalMessageConfig } from '../message.config';\n\n/**\n * @internal\n */\n@Directive()\nexport abstract class ThyAbstractMessageContainerComponent {\n private elementRef = inject(ElementRef);\n\n @HostBinding('style.top')\n get offset(): string {\n return coerceCssPixelValue(this.defaultConfig.offset!);\n }\n\n public abstract defaultConfig: ThyGlobalMessageConfig;\n\n toOverlayTop() {\n const globalOverlayWrapper = this.elementRef.nativeElement.closest('.cdk-global-overlay-wrapper');\n const overlayContainer = globalOverlayWrapper.parentElement;\n overlayContainer.appendChild(globalOverlayWrapper);\n }\n}\n","import { BehaviorSubject } from 'rxjs';\nimport { ThyGlobalMessageConfig } from '../message.config';\nimport { IThyAbstractMessageQueue, ThyAbstractMessageRef } from './abstract-message-ref';\nimport { signal } from '@angular/core';\n\n/**\n * @internal\n */\nexport class ThyAbstractMessageQueue<TReference extends ThyAbstractMessageRef = ThyAbstractMessageRef> implements IThyAbstractMessageQueue {\n queues = signal<TReference[]>([]);\n\n protected defaultConfig: ThyGlobalMessageConfig;\n\n setQueues(newValue: TReference[]) {\n this.queues.set(newValue);\n }\n\n constructor(defaultConfig: ThyGlobalMessageConfig) {\n this.defaultConfig = defaultConfig;\n }\n\n add(messageRef: TReference) {\n const queues = this.queues();\n if (queues.length >= this.defaultConfig.maxStack!) {\n const closedRef = queues.shift();\n closedRef?.close();\n }\n this.queues.set([...queues, messageRef]);\n }\n\n remove(id: string | undefined) {\n if (!id) {\n this.queues().forEach(item => item.close());\n this.queues.set([]);\n } else {\n const removeItem = this.queues().find(item => item.id === id);\n removeItem?.close();\n const afterRemovedQueues = this.queues().filter(item => item.id !== id);\n this.queues.set(afterRemovedQueues);\n }\n }\n}\n","import { Directive, HostListener, NgZone, OnDestroy, OnInit, inject, input } from '@angular/core';\nimport { ThyMessageBaseConfig } from '../message.config';\nimport { ThyAbstractMessageQueue } from './abstract-message-queue.service';\n\nexport const ANIMATION_IN_DURATION = 100;\nexport const ANIMATION_OUT_DURATION = 150;\nexport const HIDE_STYLE = { transform: 'translateX(0)', opacity: 0, height: 0, paddingTop: 0, paddingBottom: 0, margin: 0 };\n\n/**\n * @internal\n */\n@Directive()\nexport abstract class ThyAbstractMessageComponent<TConfig extends ThyMessageBaseConfig> implements OnInit, OnDestroy {\n private _ngZone = inject(NgZone);\n\n animationState?: string;\n\n iconName = '';\n\n private closeTimer: any;\n\n protected abstract queue: ThyAbstractMessageQueue;\n\n readonly config = input<TConfig | null>(null, { alias: 'thyConfig' });\n\n ngOnInit() {\n const iconName: Record<string, string> = {\n success: 'check-circle-fill',\n info: 'info-circle-fill',\n warning: 'waring-fill',\n error: 'close-circle-fill'\n };\n\n this.iconName = this.config()?.type ? iconName[this.config()!.type!] : '';\n this.createCloseTimer();\n }\n\n @HostListener('mouseenter')\n mouseenter() {\n if (this.config()?.pauseOnHover) {\n this.clearCloseTimer();\n }\n }\n\n @HostListener('mouseleave')\n mouseleave() {\n if (this.config()?.pauseOnHover) {\n this.createCloseTimer();\n }\n }\n\n close() {\n this._ngZone.runOutsideAngular(() => {\n this.animationState = 'componentHide';\n setTimeout(() => {\n this.queue.remove(this.config()?.id);\n }, ANIMATION_OUT_DURATION);\n });\n }\n\n private createCloseTimer() {\n const config = this.config();\n if (config?.duration) {\n this.closeTimer = setInterval(() => {\n this.clearCloseTimer();\n this.close();\n }, config.duration);\n }\n }\n\n private clearCloseTimer() {\n clearInterval(this.closeTimer);\n }\n\n ngOnDestroy() {\n this.clearCloseTimer();\n }\n}\n","import { ComponentType, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { Injector } from '@angular/core';\nimport { ThyAbstractMessageContainerComponent } from './abstract-message-container.component';\nimport { ThyAbstractMessageQueue } from './abstract-message-queue.service';\n\n/**\n * @internal\n */\nexport class ThyAbstractMessageService<TContainer extends ThyAbstractMessageContainerComponent> {\n protected container?: TContainer;\n\n protected overlayRef!: OverlayRef;\n\n private queue: ThyAbstractMessageQueue;\n\n constructor(\n private overlay: Overlay,\n private injector: Injector,\n queue: ThyAbstractMessageQueue\n ) {\n this.queue = queue;\n }\n\n protected createContainer(container: ComponentType<TContainer>): TContainer {\n if (this.container) {\n this.container.toOverlayTop();\n return this.container;\n }\n\n this.overlayRef = this.overlay.create({\n hasBackdrop: false,\n scrollStrategy: this.overlay.scrollStrategies.noop(),\n positionStrategy: this.overlay.position().global()\n });\n const componentPortal = new ComponentPortal(container, null, this.injector);\n const componentRef = this.overlayRef.attach(componentPortal);\n return componentRef.instance;\n }\n\n remove(id?: string) {\n this.queue.remove(id);\n }\n}\n","import { OverlayRef } from '@angular/cdk/overlay';\nimport { Subject } from 'rxjs';\nimport { ThyMessageBaseConfig } from '../message.config';\nimport { WritableSignal, Signal } from '@angular/core';\n\nexport interface IThyAbstractMessageQueue<TReferences extends ThyAbstractMessageRef = ThyAbstractMessageRef> {\n queues: Signal<TReferences[]>;\n setQueues(newValue: TReferences[]): void;\n}\n\nexport class ThyAbstractMessageRef<TConfig extends ThyMessageBaseConfig = ThyMessageBaseConfig> {\n id?: string;\n\n config!: TConfig;\n\n private overlayRef: OverlayRef;\n\n private queueService: IThyAbstractMessageQueue;\n\n private _afterClosed = new Subject<void>();\n\n constructor(config: TConfig, overlayRef: OverlayRef, queueService: IThyAbstractMessageQueue) {\n this.id = config.id;\n this.config = config;\n this.overlayRef = overlayRef;\n this.queueService = queueService;\n }\n\n close() {\n this.queueService.setQueues(this.queueService.queues().filter(item => item.id !== this.id));\n this._afterClosed.next();\n this._afterClosed.complete();\n }\n\n afterClosed() {\n return this._afterClosed.asObservable();\n }\n\n getOverlayRef() {\n return this.overlayRef;\n }\n}\n","import { InjectionToken, TemplateRef } from '@angular/core';\nimport { ComponentTypeOrTemplateRef } from 'ngx-tethys/core';\n\nexport type ThyMessageType = 'success' | 'error' | 'warning' | 'info' | 'loading';\n\nexport interface ThyGlobalMessageConfig {\n pauseOnHover?: boolean;\n\n duration?: number;\n\n maxStack?: number;\n\n offset?: string;\n\n showClose?: boolean;\n}\n\nexport const THY_MESSAGE_DEFAULT_CONFIG = new InjectionToken<ThyGlobalMessageConfig>('thy-message-default-config');\n\nexport const THY_MESSAGE_DEFAULT_CONFIG_VALUE: ThyGlobalMessageConfig = {\n offset: '20',\n duration: 4500,\n pauseOnHover: true,\n maxStack: 8,\n showClose: true\n};\n\nexport const THY_MESSAGE_DEFAULT_CONFIG_PROVIDER = {\n provide: THY_MESSAGE_DEFAULT_CONFIG,\n useValue: THY_MESSAGE_DEFAULT_CONFIG_VALUE\n};\n\nexport interface ThyMessageBaseConfig {\n id?: string;\n\n type?: string;\n\n pauseOnHover?: boolean;\n\n duration?: number;\n\n content?: string | ComponentTypeOrTemplateRef<any>;\n\n hostClass?: string | string[];\n}\n\nexport interface ThyMessageConfig extends ThyMessageBaseConfig {\n type?: ThyMessageType;\n\n content?: string | TemplateRef<any>;\n\n showClose?: boolean;\n}\n","import { Injectable, inject } from '@angular/core';\nimport { ThyAbstractMessageQueue } from './abstract';\nimport { ThyMessageRef } from './message-ref';\nimport { THY_MESSAGE_DEFAULT_CONFIG, THY_MESSAGE_DEFAULT_CONFIG_VALUE } from './message.config';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyMessageQueue extends ThyAbstractMessageQueue<ThyMessageRef> {\n constructor() {\n const defaultConfig = inject(THY_MESSAGE_DEFAULT_CONFIG);\n\n super({\n ...THY_MESSAGE_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n });\n }\n}\n","import { Component, HostBinding, effect, inject } from '@angular/core';\nimport { trigger, state, style, animate, transition } from '@angular/animations';\nimport { ThyMessageConfig } from './message.config';\nimport { ThyMessageQueue } from './message-queue.service';\nimport { ANIMATION_IN_DURATION, ANIMATION_OUT_DURATION, HIDE_STYLE, ThyAbstractMessageComponent } from './abstract';\nimport { ThyStringOrTemplateOutletDirective } from 'ngx-tethys/shared';\nimport { ThyIcon } from 'ngx-tethys/icon';\n\nimport { coerceArray } from 'ngx-tethys/util';\nimport { useHostRenderer } from '@tethys/cdk/dom';\n\n/**\n * @internal\n */\n@Component({\n selector: 'thy-message',\n templateUrl: './message.component.html',\n host: {\n '[class]': \"'thy-message thy-message-' + config().type\"\n },\n animations: [\n trigger('flyInOut', [\n state('flyIn', style({ transform: 'translateY(0)', opacity: 1, height: '*' })),\n transition('void => flyIn', [\n style({ transform: 'translateY(-100%)', opacity: 0, height: '*' }),\n animate(ANIMATION_IN_DURATION)\n ]),\n transition('flyIn => componentHide', [animate(ANIMATION_OUT_DURATION, style(HIDE_STYLE))]),\n state('componentHide', style(HIDE_STYLE))\n ])\n ],\n imports: [ThyIcon, ThyStringOrTemplateOutletDirective]\n})\nexport class ThyMessage extends ThyAbstractMessageComponent<ThyMessageConfig> {\n @HostBinding('@flyInOut') animationState = 'flyIn';\n\n private hostRenderer = useHostRenderer();\n\n protected queue = inject(ThyMessageQueue);\n\n constructor() {\n super();\n effect(() => {\n const config = this.config();\n if (config?.hostClass) {\n const hostClass = coerceArray(config.hostClass);\n this.hostRenderer.updateClass(hostClass);\n }\n });\n }\n}\n","@let messageConfig = config();\n\n@if (iconName) {\n <thy-icon class=\"thy-message-icon\" [thyIconName]=\"iconName\"></thy-icon>\n} @else {\n <span class=\"thy-message-icon loading-icon\"></span>\n}\n<div class=\"thy-message-main\">\n <ng-container *thyStringOrTemplateOutlet=\"messageConfig?.content\"></ng-container>\n</div>\n@if (messageConfig?.showClose) {\n <thy-icon class=\"thy-message-close\" thyIconName=\"close\" (click)=\"close()\"></thy-icon>\n}\n","import { Component, ElementRef, inject } from '@angular/core';\nimport { ThyAbstractMessageContainerComponent } from './abstract';\nimport { ThyMessageQueue } from './message-queue.service';\nimport { THY_MESSAGE_DEFAULT_CONFIG, THY_MESSAGE_DEFAULT_CONFIG_VALUE } from './message.config';\nimport { ThyMessage } from './message.component';\nimport { AsyncPipe } from '@angular/common';\n\n/**\n * @internal\n */\n@Component({\n selector: 'thy-message-container',\n template: `\n @for (message of messageQueue.queues(); track message.id) {\n <thy-message [thyConfig]=\"message.config\"></thy-message>\n }\n `,\n imports: [ThyMessage],\n host: {\n class: 'thy-message-container'\n }\n})\nexport class ThyMessageContainer extends ThyAbstractMessageContainerComponent {\n messageQueue = inject(ThyMessageQueue);\n\n public defaultConfig = (() => {\n const defaultConfig = inject(THY_MESSAGE_DEFAULT_CONFIG);\n return {\n ...THY_MESSAGE_DEFAULT_CONFIG_VALUE,\n ...defaultConfig\n };\n })();\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyIconModule } from 'ngx-tethys/icon';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { ThySharedModule } from 'ngx-tethys/shared';\nimport { ThyMessage } from './message.component';\nimport { ThyMessageContainer } from './message-container.component';\nimport { THY_MESSAGE_DEFAULT_CONFIG_PROVIDER } from './message.config';\n\n@NgModule({\n imports: [CommonModule, ThySharedModule, OverlayModule, PortalModule, ThyIconModule, ThyMessageContainer, ThyMessage],\n exports: [ThyMessageContainer, ThyMessage],\n providers: [THY_MESSAGE_DEFAULT_CONFIG_PROVIDER]\n})\nexport class ThyMessageModule {}\n","import { ThyAbstractMessageRef } from './abstract';\nimport { ThyMessageConfig } from './message.config';\n\nexport class ThyMessageRef extends ThyAbstractMessageRef<ThyMessageConfig> {}\n","import { Overlay } from '@angular/cdk/overlay';\nimport { Injectable, Injector, TemplateRef, inject } from '@angular/core';\nimport { ThyMessageContainer } from './message-container.component';\nimport { ThyMessageRef } from './message-ref';\nimport { ThyMessageQueue } from './message-queue.service';\nimport { ThyGlobalMessageConfig, ThyMessageConfig, THY_MESSAGE_DEFAULT_CONFIG, THY_MESSAGE_DEFAULT_CONFIG_VALUE } from './message.config';\nimport { ThyAbstractMessageService } from './abstract';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ThyMessageService extends ThyAbstractMessageService<ThyMessageContainer> {\n private messageQueue: ThyMessageQueue;\n\n private _lastMessageId = 0;\n\n private defaultConfig: ThyGlobalMessageConfig;\n\n constructor() {\n const overlay = inject(Overlay);\n const injector = inject(Injector);\n const messageQueue = inject(ThyMessageQueue);\n const config = inject(THY_MESSAGE_DEFAULT_CONFIG);\n\n super(overlay, injector, messageQueue);\n this.messageQueue = messageQueue;\n\n this.defaultConfig = {\n ...THY_MESSAGE_DEFAULT_CONFIG_VALUE,\n ...config\n };\n }\n\n /**\n * 打开 success 类型的 Message\n */\n success(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'success',\n content\n });\n }\n\n /**\n * 打开 error 类型的 Message\n */\n error(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'error',\n content\n });\n }\n\n /**\n * 打开 info 类型的 Message\n */\n info(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'info',\n content\n });\n }\n\n /**\n * 打开 warning 类型的 Message\n */\n warning(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'warning',\n content\n });\n }\n\n /**\n * 打开 loading 类型的 Message\n */\n loading(content: string | TemplateRef<any>, config?: ThyMessageConfig): ThyMessageRef {\n return this.show({\n ...(config || {}),\n type: 'loading',\n content\n });\n }\n\n protected show(config: ThyMessageConfig): ThyMessageRef {\n this.container = this.createContainer(ThyMessageContainer);\n\n const messageConfig = this.formatOptions(config);\n const messageRef = new ThyMessageRef(messageConfig, this.overlayRef, this.messageQueue);\n this.messageQueue.add(messageRef);\n return messageRef;\n }\n\n private formatOptions(config: ThyMessageConfig) {\n return Object.assign({ id: String(this._lastMessageId++) }, this.defaultConfig, config);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;AAIA;;AAEG;MAEmB,oCAAoC,CAAA;AAD1D,IAAA,WAAA,GAAA;AAEY,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAc1C,IAAA;AAZG,IAAA,IACI,MAAM,GAAA;QACN,OAAO,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,MAAO,CAAC;IAC1D;IAIA,YAAY,GAAA;AACR,QAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,6BAA6B,CAAC;AACjG,QAAA,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,aAAa;AAC3D,QAAA,gBAAgB,CAAC,WAAW,CAAC,oBAAoB,CAAC;IACtD;+GAdkB,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApC,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApC,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBADzD;;sBAII,WAAW;uBAAC,WAAW;;;ACN5B;;AAEG;MACU,uBAAuB,CAAA;AAKhC,IAAA,SAAS,CAAC,QAAsB,EAAA;AAC5B,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC7B;AAEA,IAAA,WAAA,CAAY,aAAqC,EAAA;AARjD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAe,EAAE,kDAAC;AAS7B,QAAA,IAAI,CAAC,aAAa,GAAG,aAAa;IACtC;AAEA,IAAA,GAAG,CAAC,UAAsB,EAAA;AACtB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;QAC5B,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,QAAS,EAAE;AAC/C,YAAA,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,EAAE;YAChC,SAAS,EAAE,KAAK,EAAE;QACtB;AACA,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C;AAEA,IAAA,MAAM,CAAC,EAAsB,EAAA;QACzB,IAAI,CAAC,EAAE,EAAE;AACL,YAAA,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;AAC3C,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB;aAAO;AACH,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;YAC7D,UAAU,EAAE,KAAK,EAAE;AACnB,YAAA,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACvC;IACJ;AACH;;ACrCM,MAAM,qBAAqB,GAAG;AAC9B,MAAM,sBAAsB,GAAG;AAC/B,MAAM,UAAU,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;AAEzH;;AAEG;MAEmB,2BAA2B,CAAA;AADjD,IAAA,WAAA,GAAA;AAEY,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QAIhC,IAAA,CAAA,QAAQ,GAAG,EAAE;AAMJ,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAiB,IAAI,0CAAI,KAAK,EAAE,WAAW,EAAA,CAAA,GAAA,CAApB,EAAE,KAAK,EAAE,WAAW,EAAE,GAAC;AAsDxE,IAAA;IApDG,QAAQ,GAAA;AACJ,QAAA,MAAM,QAAQ,GAA2B;AACrC,YAAA,OAAO,EAAE,mBAAmB;AAC5B,YAAA,IAAI,EAAE,kBAAkB;AACxB,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,KAAK,EAAE;SACV;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAG,CAAC,IAAK,CAAC,GAAG,EAAE;QACzE,IAAI,CAAC,gBAAgB,EAAE;IAC3B;IAGA,UAAU,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE;YAC7B,IAAI,CAAC,eAAe,EAAE;QAC1B;IACJ;IAGA,UAAU,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE;YAC7B,IAAI,CAAC,gBAAgB,EAAE;QAC3B;IACJ;IAEA,KAAK,GAAA;AACD,QAAA,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAK;AAChC,YAAA,IAAI,CAAC,cAAc,GAAG,eAAe;YACrC,UAAU,CAAC,MAAK;AACZ,gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;YACxC,CAAC,EAAE,sBAAsB,CAAC;AAC9B,QAAA,CAAC,CAAC;IACN;IAEQ,gBAAgB,GAAA;AACpB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;AAC5B,QAAA,IAAI,MAAM,EAAE,QAAQ,EAAE;AAClB,YAAA,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,MAAK;gBAC/B,IAAI,CAAC,eAAe,EAAE;gBACtB,IAAI,CAAC,KAAK,EAAE;AAChB,YAAA,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;QACvB;IACJ;IAEQ,eAAe,GAAA;AACnB,QAAA,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC;IAClC;IAEA,WAAW,GAAA;QACP,IAAI,CAAC,eAAe,EAAE;IAC1B;+GAhEkB,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA3B,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA3B,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADhD;;sBA0BI,YAAY;uBAAC,YAAY;;sBAOzB,YAAY;uBAAC,YAAY;;;ACtC9B;;AAEG;MACU,yBAAyB,CAAA;AAOlC,IAAA,WAAA,CACY,OAAgB,EAChB,QAAkB,EAC1B,KAA8B,EAAA;QAFtB,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,QAAQ,GAAR,QAAQ;AAGhB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;IACtB;AAEU,IAAA,eAAe,CAAC,SAAoC,EAAA;AAC1D,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;YAC7B,OAAO,IAAI,CAAC,SAAS;QACzB;QAEA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;AAClC,YAAA,WAAW,EAAE,KAAK;YAClB,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE;YACpD,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM;AACnD,SAAA,CAAC;AACF,QAAA,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;QAC3E,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC;QAC5D,OAAO,YAAY,CAAC,QAAQ;IAChC;AAEA,IAAA,MAAM,CAAC,EAAW,EAAA;AACd,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IACzB;AACH;;MCjCY,qBAAqB,CAAA;AAW9B,IAAA,WAAA,CAAY,MAAe,EAAE,UAAsB,EAAE,YAAsC,EAAA;AAFnF,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,OAAO,EAAQ;AAGtC,QAAA,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE;AACnB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU;AAC5B,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;IACpC;IAEA,KAAK,GAAA;QACD,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3F,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;AACxB,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;IAChC;IAEA,WAAW,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;IAC3C;IAEA,aAAa,GAAA;QACT,OAAO,IAAI,CAAC,UAAU;IAC1B;AACH;;MCxBY,0BAA0B,GAAG,IAAI,cAAc,CAAyB,4BAA4B;AAE1G,MAAM,gCAAgC,GAA2B;AACpE,IAAA,MAAM,EAAE,IAAI;AACZ,IAAA,QAAQ,EAAE,IAAI;AACd,IAAA,YAAY,EAAE,IAAI;AAClB,IAAA,QAAQ,EAAE,CAAC;AACX,IAAA,SAAS,EAAE;;AAGR,MAAM,mCAAmC,GAAG;AAC/C,IAAA,OAAO,EAAE,0BAA0B;AACnC,IAAA,QAAQ,EAAE;;;ACxBd;;AAEG;AAIG,MAAO,eAAgB,SAAQ,uBAAsC,CAAA;AACvE,IAAA,WAAA,GAAA;AACI,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,0BAA0B,CAAC;AAExD,QAAA,KAAK,CAAC;AACF,YAAA,GAAG,gCAAgC;AACnC,YAAA,GAAG;AACN,SAAA,CAAC;IACN;+GARS,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFZ,MAAM,EAAA,CAAA,CAAA;;4FAET,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE;AACf,iBAAA;;;ACCD;;AAEG;AAoBG,MAAO,UAAW,SAAQ,2BAA6C,CAAA;AAOzE,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,EAAE;QAPe,IAAA,CAAA,cAAc,GAAG,OAAO;QAE1C,IAAA,CAAA,YAAY,GAAG,eAAe,EAAE;AAE9B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAC,eAAe,CAAC;QAIrC,MAAM,CAAC,MAAK;AACR,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;AAC5B,YAAA,IAAI,MAAM,EAAE,SAAS,EAAE;gBACnB,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC;AAC/C,gBAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC;YAC5C;AACJ,QAAA,CAAC,CAAC;IACN;+GAhBS,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,UAAU,mNCjCvB,idAaA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDkBc,OAAO,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,kCAAkC,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,kCAAA,EAAA,2BAAA,CAAA,EAAA,QAAA,EAAA,CAAA,2BAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAXzC;YACR,OAAO,CAAC,UAAU,EAAE;AAChB,gBAAA,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC9E,UAAU,CAAC,eAAe,EAAE;AACxB,oBAAA,KAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;oBAClE,OAAO,CAAC,qBAAqB;iBAChC,CAAC;AACF,gBAAA,UAAU,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAC1F,gBAAA,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC;aAC3C;AACJ,SAAA,EAAA,CAAA,CAAA;;4FAGQ,UAAU,EAAA,UAAA,EAAA,CAAA;kBAnBtB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EAAA,IAAA,EAEjB;AACF,wBAAA,SAAS,EAAE;qBACd,EAAA,UAAA,EACW;wBACR,OAAO,CAAC,UAAU,EAAE;AAChB,4BAAA,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;4BAC9E,UAAU,CAAC,eAAe,EAAE;AACxB,gCAAA,KAAK,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gCAClE,OAAO,CAAC,qBAAqB;6BAChC,CAAC;AACF,4BAAA,UAAU,CAAC,wBAAwB,EAAE,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAC1F,4BAAA,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC;yBAC3C;AACJ,qBAAA,EAAA,OAAA,EACQ,CAAC,OAAO,EAAE,kCAAkC,CAAC,EAAA,QAAA,EAAA,idAAA,EAAA;;sBAGrD,WAAW;uBAAC,WAAW;;;AE3B5B;;AAEG;AAaG,MAAO,mBAAoB,SAAQ,oCAAoC,CAAA;AAZ7E,IAAA,WAAA,GAAA;;AAaI,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC;QAE/B,IAAA,CAAA,aAAa,GAAG,CAAC,MAAK;AACzB,YAAA,MAAM,aAAa,GAAG,MAAM,CAAC,0BAA0B,CAAC;YACxD,OAAO;AACH,gBAAA,GAAG,gCAAgC;AACnC,gBAAA,GAAG;aACN;QACL,CAAC,GAAG;AACP,IAAA;+GAVY,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAVlB;;;;AAIT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACS,UAAU,EAAA,QAAA,EAAA,aAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKX,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAZ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,QAAQ,EAAE;;;;AAIT,IAAA,CAAA;oBACD,OAAO,EAAE,CAAC,UAAU,CAAC;AACrB,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE;AACV;AACJ,iBAAA;;;MCNY,gBAAgB,CAAA;+GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAJf,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,UAAU,CAAA,EAAA,OAAA,EAAA,CAC1G,mBAAmB,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;AAGhC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,aAFd,CAAC,mCAAmC,CAAC,EAAA,OAAA,EAAA,CAFtC,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;;4FAI3G,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,UAAU,CAAC;AACrH,oBAAA,OAAO,EAAE,CAAC,mBAAmB,EAAE,UAAU,CAAC;oBAC1C,SAAS,EAAE,CAAC,mCAAmC;AAClD,iBAAA;;;ACXK,MAAO,aAAc,SAAQ,qBAAuC,CAAA;AAAG;;ACQvE,MAAO,iBAAkB,SAAQ,yBAA8C,CAAA;AAOjF,IAAA,WAAA,GAAA;AACI,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAC/B,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AACjC,QAAA,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC;AAC5C,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,0BAA0B,CAAC;AAEjD,QAAA,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC;QAVlC,IAAA,CAAA,cAAc,GAAG,CAAC;AAWtB,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;QAEhC,IAAI,CAAC,aAAa,GAAG;AACjB,YAAA,GAAG,gCAAgC;AACnC,YAAA,GAAG;SACN;IACL;AAEA;;AAEG;IACH,OAAO,CAAC,OAAkC,EAAE,MAAyB,EAAA;QACjE,OAAO,IAAI,CAAC,IAAI,CAAC;AACb,YAAA,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,YAAA,IAAI,EAAE,SAAS;YACf;AACH,SAAA,CAAC;IACN;AAEA;;AAEG;IACH,KAAK,CAAC,OAAkC,EAAE,MAAyB,EAAA;QAC/D,OAAO,IAAI,CAAC,IAAI,CAAC;AACb,YAAA,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,YAAA,IAAI,EAAE,OAAO;YACb;AACH,SAAA,CAAC;IACN;AAEA;;AAEG;IACH,IAAI,CAAC,OAAkC,EAAE,MAAyB,EAAA;QAC9D,OAAO,IAAI,CAAC,IAAI,CAAC;AACb,YAAA,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,YAAA,IAAI,EAAE,MAAM;YACZ;AACH,SAAA,CAAC;IACN;AAEA;;AAEG;IACH,OAAO,CAAC,OAAkC,EAAE,MAAyB,EAAA;QACjE,OAAO,IAAI,CAAC,IAAI,CAAC;AACb,YAAA,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,YAAA,IAAI,EAAE,SAAS;YACf;AACH,SAAA,CAAC;IACN;AAEA;;AAEG;IACH,OAAO,CAAC,OAAkC,EAAE,MAAyB,EAAA;QACjE,OAAO,IAAI,CAAC,IAAI,CAAC;AACb,YAAA,IAAI,MAAM,IAAI,EAAE,CAAC;AACjB,YAAA,IAAI,EAAE,SAAS;YACf;AACH,SAAA,CAAC;IACN;AAEU,IAAA,IAAI,CAAC,MAAwB,EAAA;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC;QAE1D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;AAChD,QAAA,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;AACvF,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;AACjC,QAAA,OAAO,UAAU;IACrB;AAEQ,IAAA,aAAa,CAAC,MAAwB,EAAA;QAC1C,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;IAC3F;+GAxFS,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cAFd,MAAM,EAAA,CAAA,CAAA;;4FAET,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE;AACf,iBAAA;;;ACVD;;AAEG;;;;"}
|
|
@@ -21,10 +21,10 @@ class ThyIconNavLink {
|
|
|
21
21
|
this.thyIconNavLinkIcon = input('', ...(ngDevMode ? [{ debugName: "thyIconNavLinkIcon" }] : []));
|
|
22
22
|
this.thyIconNavLinkActive = input(false, ...(ngDevMode ? [{ debugName: "thyIconNavLinkActive", transform: coerceBooleanProperty }] : [{ transform: coerceBooleanProperty }]));
|
|
23
23
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNavLink, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: ThyIconNavLink, isStandalone: true, selector: "[thyIconNavLink]", inputs: { thyIconNavLinkIcon: { classPropertyName: "thyIconNavLinkIcon", publicName: "thyIconNavLinkIcon", isSignal: true, isRequired: false, transformFunction: null }, thyIconNavLinkActive: { classPropertyName: "thyIconNavLinkActive", publicName: "thyIconNavLinkActive", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.active": "thyIconNavLinkActive()", "class.thy-icon-nav-link": "true" } }, ngImport: i0, template: '<ng-content></ng-content>@if (thyIconNavLinkIcon()) {<thy-icon [thyIconName]="thyIconNavLinkIcon()"></thy-icon>}', isInline: true, dependencies: [{ kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }] }); }
|
|
26
26
|
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNavLink, decorators: [{
|
|
28
28
|
type: Component,
|
|
29
29
|
args: [{
|
|
30
30
|
// eslint-disable-next-line @angular-eslint/component-selector
|
|
@@ -56,10 +56,10 @@ class ThyIconNav {
|
|
|
56
56
|
this.updateClasses();
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
60
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.
|
|
59
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNav, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
60
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: ThyIconNav, isStandalone: true, selector: "thy-icon-nav", inputs: { thyType: { classPropertyName: "thyType", publicName: "thyType", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-icon-nav": "this.isIconNav" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
61
61
|
}
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyIconNav, decorators: [{
|
|
63
63
|
type: Component,
|
|
64
64
|
args: [{ selector: 'thy-icon-nav', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n" }]
|
|
65
65
|
}], ctorParameters: () => [], propDecorators: { isIconNav: [{
|
|
@@ -153,10 +153,10 @@ class ThyNavItemDirective {
|
|
|
153
153
|
removeClass(className) {
|
|
154
154
|
this.hostRenderer.removeClass(className);
|
|
155
155
|
}
|
|
156
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
157
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.
|
|
156
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
157
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.15", type: ThyNavItemDirective, isStandalone: true, selector: "[thyNavLink],[thyNavItem]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, thyNavItemActive: { classPropertyName: "thyNavItemActive", publicName: "thyNavItemActive", isSignal: true, isRequired: false, transformFunction: null }, thyNavLinkActive: { classPropertyName: "thyNavLinkActive", publicName: "thyNavLinkActive", isSignal: true, isRequired: false, transformFunction: null }, thyNavItemDisabled: { classPropertyName: "thyNavItemDisabled", publicName: "thyNavItemDisabled", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.active": "thyNavItemActive() || thyNavLinkActive()", "class.disabled": "thyNavItemDisabled()" }, classAttribute: "thy-nav-item" }, queries: [{ propertyName: "links", predicate: i0.forwardRef(() => ThyNavItemDirective), descendants: true, isSignal: true }, { propertyName: "routers", predicate: RouterLinkActive, descendants: true, isSignal: true }], ngImport: i0 }); }
|
|
158
158
|
}
|
|
159
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
159
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavItemDirective, decorators: [{
|
|
160
160
|
type: Directive,
|
|
161
161
|
args: [{
|
|
162
162
|
selector: '[thyNavLink],[thyNavItem]',
|
|
@@ -222,10 +222,10 @@ class ThyNavInkBarDirective {
|
|
|
222
222
|
hide() {
|
|
223
223
|
this.elementRef.nativeElement.style.visibility = 'hidden';
|
|
224
224
|
}
|
|
225
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
226
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.
|
|
225
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavInkBarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
226
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: ThyNavInkBarDirective, isStandalone: true, selector: "thy-nav-ink-bar, [thyNavInkBar]", inputs: { isVertical: { classPropertyName: "isVertical", publicName: "isVertical", isSignal: true, isRequired: false, transformFunction: null }, showInkBar: { classPropertyName: "showInkBar", publicName: "showInkBar", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-nav-ink-bar-animated": "animated()" }, classAttribute: "thy-nav-ink-bar" }, ngImport: i0 }); }
|
|
227
227
|
}
|
|
228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
228
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavInkBarDirective, decorators: [{
|
|
229
229
|
type: Directive,
|
|
230
230
|
args: [{
|
|
231
231
|
selector: 'thy-nav-ink-bar, [thyNavInkBar]',
|
|
@@ -246,10 +246,10 @@ class BypassSecurityTrustHtmlPipe {
|
|
|
246
246
|
transform(format) {
|
|
247
247
|
return this.sanitizer.bypassSecurityTrustHtml(format);
|
|
248
248
|
}
|
|
249
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
250
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.
|
|
249
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BypassSecurityTrustHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
250
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: BypassSecurityTrustHtmlPipe, isStandalone: true, name: "bypassSecurityTrustHtml" }); }
|
|
251
251
|
}
|
|
252
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
252
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: BypassSecurityTrustHtmlPipe, decorators: [{
|
|
253
253
|
type: Pipe,
|
|
254
254
|
args: [{
|
|
255
255
|
name: 'bypassSecurityTrustHtml'
|
|
@@ -465,10 +465,10 @@ class ThyNav {
|
|
|
465
465
|
}
|
|
466
466
|
setMoreBtnOffset() {
|
|
467
467
|
const defaultMoreOperation = this.defaultMoreOperation();
|
|
468
|
-
const computedStyle = window.getComputedStyle(defaultMoreOperation
|
|
468
|
+
const computedStyle = window.getComputedStyle(defaultMoreOperation.nativeElement);
|
|
469
469
|
this.moreBtnOffset = {
|
|
470
|
-
height: defaultMoreOperation
|
|
471
|
-
width: defaultMoreOperation
|
|
470
|
+
height: defaultMoreOperation.nativeElement.offsetHeight + parseFloat(computedStyle?.marginBottom) || 0,
|
|
471
|
+
width: defaultMoreOperation.nativeElement.offsetWidth + parseFloat(computedStyle?.marginRight) || 0
|
|
472
472
|
};
|
|
473
473
|
}
|
|
474
474
|
setNavItemDivider() {
|
|
@@ -529,7 +529,7 @@ class ThyNav {
|
|
|
529
529
|
for (let i = 0; i < tabsLength; i += 1) {
|
|
530
530
|
const _totalWidth = i === tabsLength - 1 ? totalWidth + tabs[i].offset.width : totalWidth + tabs[i].offset.width + tabItemRight;
|
|
531
531
|
if (_totalWidth > this.wrapperOffset.width) {
|
|
532
|
-
|
|
532
|
+
const moreOperationWidth = this.moreBtnOffset.width;
|
|
533
533
|
if (totalWidth + moreOperationWidth <= this.wrapperOffset.width) {
|
|
534
534
|
endIndex = i - 1;
|
|
535
535
|
}
|
|
@@ -552,7 +552,7 @@ class ThyNav {
|
|
|
552
552
|
for (let i = 0; i < tabsLength; i += 1) {
|
|
553
553
|
const _totalHeight = totalHeight + tabs[i].offset.height;
|
|
554
554
|
if (_totalHeight > this.wrapperOffset.height) {
|
|
555
|
-
|
|
555
|
+
const moreOperationHeight = this.moreBtnOffset.height;
|
|
556
556
|
if (totalHeight + moreOperationHeight <= this.wrapperOffset.height) {
|
|
557
557
|
endIndex = i - 1;
|
|
558
558
|
}
|
|
@@ -617,10 +617,10 @@ class ThyNav {
|
|
|
617
617
|
this.navSubscription.unsubscribe();
|
|
618
618
|
}
|
|
619
619
|
}
|
|
620
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
621
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.
|
|
620
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNav, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
621
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: ThyNav, isStandalone: true, selector: "thy-nav", inputs: { thyType: { classPropertyName: "thyType", publicName: "thyType", isSignal: true, isRequired: false, transformFunction: null }, thySize: { classPropertyName: "thySize", publicName: "thySize", isSignal: true, isRequired: false, transformFunction: null }, thyHorizontal: { classPropertyName: "thyHorizontal", publicName: "thyHorizontal", isSignal: true, isRequired: false, transformFunction: null }, thyVertical: { classPropertyName: "thyVertical", publicName: "thyVertical", isSignal: true, isRequired: false, transformFunction: null }, thyFill: { classPropertyName: "thyFill", publicName: "thyFill", isSignal: true, isRequired: false, transformFunction: null }, thyResponsive: { classPropertyName: "thyResponsive", publicName: "thyResponsive", isSignal: true, isRequired: false, transformFunction: null }, thyPauseReCalculate: { classPropertyName: "thyPauseReCalculate", publicName: "thyPauseReCalculate", isSignal: true, isRequired: false, transformFunction: null }, thyInsideClosable: { classPropertyName: "thyInsideClosable", publicName: "thyInsideClosable", isSignal: true, isRequired: false, transformFunction: null }, thyPopoverOptions: { classPropertyName: "thyPopoverOptions", publicName: "thyPopoverOptions", isSignal: true, isRequired: false, transformFunction: null }, thyExtra: { classPropertyName: "thyExtra", publicName: "thyExtra", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-nav": "true", "class.thy-nav--vertical": "thyVertical()", "class.thy-nav--fill": "thyFill()" } }, queries: [{ propertyName: "routers", predicate: RouterLinkActive, descendants: true, isSignal: true }, { propertyName: "moreOperation", first: true, predicate: ["more"], descendants: true, isSignal: true }, { propertyName: "morePopover", first: true, predicate: ["morePopover"], descendants: true, isSignal: true }, { propertyName: "extra", first: true, predicate: ["extra"], descendants: true, isSignal: true }, { propertyName: "links", predicate: ThyNavItemDirective, descendants: true }], viewQueries: [{ propertyName: "defaultMoreOperation", first: true, predicate: ["moreOperationContainer"], descendants: true, isSignal: true }, { propertyName: "inkBar", first: true, predicate: ThyNavInkBarDirective, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"thy-nav-list\" [ngClass]=\"horizontal() ? 'justify-content-' + horizontal() : ''\" #navList>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n @if (thyResponsive()) {\n <a\n href=\"javascript:;\"\n class=\"thy-nav-more-container\"\n [class.d-none]=\"!showMore()\"\n [class.invisible]=\"!initialized\"\n #moreOperationContainer\n thyNavLink\n [thyNavItemActive]=\"moreActive\"\n (click)=\"openMoreMenu($event, navListPopover)\">\n @if (moreOperation()) {\n <ng-container [ngTemplateOutlet]=\"moreOperation()\"></ng-container>\n } @else {\n {{ locale().more }}\n <thy-icon thyIconName=\"angle-down\" class=\"thy-nav-more-icon\"></thy-icon>\n }\n </a>\n }\n @if (thyExtra() || extra()) {\n <div class=\"thy-nav-extra\">\n <ng-container [ngTemplateOutlet]=\"thyExtra() || extra()\"></ng-container>\n </div>\n }\n <thy-nav-ink-bar [showInkBar]=\"showInkBar\" [isVertical]=\"thyVertical()\"></thy-nav-ink-bar>\n</div>\n\n<ng-template #navListPopover>\n @if (morePopover()) {\n <ng-container [ngTemplateOutlet]=\"morePopover()\" [ngTemplateOutletContext]=\"{ $implicit: hiddenItems }\"></ng-container>\n } @else {\n <thy-dropdown-menu thyImmediateRender>\n @for (item of hiddenItems; track $index) {\n <span\n class=\"thy-nav-item-more\"\n thyDropdownMenuItem\n [thyDropdownMenuItemActive]=\"item.isActive\"\n (click)=\"navItemClick(item)\"\n [innerHTML]=\"item.elementRef.nativeElement.innerHTML | bypassSecurityTrustHtml\"></span>\n }\n </thy-dropdown-menu>\n }\n</ng-template>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: ThyNavItemDirective, selector: "[thyNavLink],[thyNavItem]", inputs: ["id", "thyNavItemActive", "thyNavLinkActive", "thyNavItemDisabled"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: ThyNavInkBarDirective, selector: "thy-nav-ink-bar, [thyNavInkBar]", inputs: ["isVertical", "showInkBar"] }, { kind: "component", type: ThyDropdownMenuComponent, selector: "thy-dropdown-menu", inputs: ["thyWidth", "thyImmediateRender"] }, { kind: "directive", type: ThyDropdownMenuItemDirective, selector: "[thyDropdownMenuItem]", inputs: ["thyType", "thyDisabled"] }, { kind: "directive", type: ThyDropdownMenuItemActiveDirective, selector: "[thyDropdownMenuItemActive]", inputs: ["thyDropdownMenuItemActive"] }, { kind: "pipe", type: BypassSecurityTrustHtmlPipe, name: "bypassSecurityTrustHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
622
622
|
}
|
|
623
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
623
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNav, decorators: [{
|
|
624
624
|
type: Component,
|
|
625
625
|
args: [{ selector: 'thy-nav', host: {
|
|
626
626
|
'[class.thy-nav]': 'true',
|
|
@@ -643,8 +643,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.14", ngImpo
|
|
|
643
643
|
}], routers: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => RouterLinkActive), { ...{ descendants: true }, isSignal: true }] }], moreOperation: [{ type: i0.ContentChild, args: ['more', { isSignal: true }] }], morePopover: [{ type: i0.ContentChild, args: ['morePopover', { isSignal: true }] }], extra: [{ type: i0.ContentChild, args: ['extra', { isSignal: true }] }], defaultMoreOperation: [{ type: i0.ViewChild, args: ['moreOperationContainer', { isSignal: true }] }], inkBar: [{ type: i0.ViewChild, args: [i0.forwardRef(() => ThyNavInkBarDirective), { isSignal: true }] }] } });
|
|
644
644
|
|
|
645
645
|
class ThyNavModule {
|
|
646
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
647
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
646
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
647
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, imports: [CommonModule,
|
|
648
648
|
ThyIconModule,
|
|
649
649
|
ThyPopoverModule,
|
|
650
650
|
ThyDropdownModule,
|
|
@@ -655,7 +655,7 @@ class ThyNavModule {
|
|
|
655
655
|
ThyIconNavLink,
|
|
656
656
|
BypassSecurityTrustHtmlPipe,
|
|
657
657
|
ThyNavInkBarDirective], exports: [ThyNav, ThyNavItemDirective, ThyIconNav, ThyIconNavLink, BypassSecurityTrustHtmlPipe] }); }
|
|
658
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
658
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, imports: [CommonModule,
|
|
659
659
|
ThyIconModule,
|
|
660
660
|
ThyPopoverModule,
|
|
661
661
|
ThyDropdownModule,
|
|
@@ -663,7 +663,7 @@ class ThyNavModule {
|
|
|
663
663
|
ThyNav,
|
|
664
664
|
ThyIconNavLink] }); }
|
|
665
665
|
}
|
|
666
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
666
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ThyNavModule, decorators: [{
|
|
667
667
|
type: NgModule,
|
|
668
668
|
args: [{
|
|
669
669
|
imports: [
|