UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

1 lines 42.1 kB
{"version":3,"file":"ng-zorro-antd-float-button.mjs","sources":["../../components/float-button/float-button-content.component.ts","../../components/float-button/float-button.component.ts","../../components/float-button/float-button-top.component.ts","../../components/float-button/float-button-group.component.ts","../../components/float-button/float-button.module.ts","../../components/float-button/typings.ts","../../components/float-button/public-api.ts","../../components/float-button/ng-zorro-antd-float-button.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, TemplateRef } from '@angular/core';\n\nimport { NzBadgeComponent } from 'ng-zorro-antd/badge';\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzShapeSCType } from 'ng-zorro-antd/core/types';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzFloatButtonBadge } from './typings';\n\n@Component({\n selector: 'nz-float-button-content',\n exportAs: 'nzFloatButtonContent',\n imports: [NzIconModule, NzOutletModule, NzBadgeComponent, NgTemplateOutlet],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (nzBadge()) {\n <nz-badge\n [nzDot]=\"nzBadge()?.nzDot\"\n [nzShowDot]=\"nzBadge()?.nzDot\"\n [nzCount]=\"nzBadge()?.nzCount\"\n [nzShowZero]=\"nzBadge()?.nzShowZero\"\n [nzOverflowCount]=\"nzBadge()?.nzOverflowCount!\"\n [nzColor]=\"nzBadge()?.nzColor\"\n [nzOffset]=\"nzBadge()?.nzOffset\"\n [nzSize]=\"nzBadge()?.nzSize || 'default'\"\n >\n <ng-container *ngTemplateOutlet=\"button\" />\n </nz-badge>\n } @else {\n <ng-container *ngTemplateOutlet=\"button\" />\n }\n <ng-template #button>\n <div class=\"ant-float-btn-body\">\n <div class=\"ant-float-btn-content\">\n @if (nzDescription() || nzIcon()) {\n @if (nzIcon()) {\n <div class=\"ant-float-btn-icon\">\n <ng-container *nzStringTemplateOutlet=\"nzIcon(); let icon\">\n <nz-icon [nzType]=\"icon\" nzTheme=\"outline\" />\n </ng-container>\n </div>\n }\n @if (nzDescription() && nzShape() === 'square') {\n <div class=\"ant-float-btn-description\">\n <ng-container *nzStringTemplateOutlet=\"nzDescription()\">\n {{ nzDescription() }}\n </ng-container>\n </div>\n }\n } @else {\n <div class=\"ant-float-btn-icon\">\n <nz-icon nzType=\"file-text\" nzTheme=\"outline\" />\n </div>\n }\n </div>\n </div>\n </ng-template>\n `\n})\nexport class NzFloatButtonContentComponent {\n readonly nzBadge = input<NzFloatButtonBadge | null>(null);\n readonly nzIcon = input<string | TemplateRef<void> | null>(null);\n readonly nzDescription = input<string | TemplateRef<void> | null>(null);\n readonly nzShape = input<NzShapeSCType>('circle');\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n linkedSignal,\n output,\n TemplateRef\n} from '@angular/core';\n\nimport { NzBadgeModule } from 'ng-zorro-antd/badge';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzShapeSCType } from 'ng-zorro-antd/core/types';\nimport { generateClassName } from 'ng-zorro-antd/core/util';\n\nimport { NzFloatButtonContentComponent } from './float-button-content.component';\nimport { NzFloatButtonBadge, NzFloatButtonType } from './typings';\n\nconst CLASS_NAME = 'ant-float-btn';\n\n@Component({\n selector: 'nz-float-button',\n exportAs: 'nzFloatButton',\n imports: [NzButtonModule, NzFloatButtonContentComponent, NzBadgeModule, NgTemplateOutlet],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (!!nzHref()) {\n <a\n [target]=\"nzTarget()\"\n [href]=\"nzHref()\"\n nz-button\n [nzType]=\"nzType()\"\n [class.ant-float-btn-default]=\"nzType() === 'default'\"\n class=\"ant-float-btn-inner\"\n (click)=\"nzOnClick.emit(true)\"\n >\n <ng-container *ngTemplateOutlet=\"contentTemplate\" />\n </a>\n } @else {\n <button\n nz-button\n [nzType]=\"nzType()\"\n [class.ant-float-btn-default]=\"nzType() === 'default'\"\n class=\"ant-float-btn-inner\"\n (click)=\"nzOnClick.emit(true)\"\n >\n <ng-container *ngTemplateOutlet=\"contentTemplate\" />\n </button>\n }\n <ng-template #contentTemplate>\n <nz-float-button-content\n [nzBadge]=\"nzBadge()\"\n [nzIcon]=\"nzIcon()\"\n [nzDescription]=\"nzDescription()\"\n [nzShape]=\"shape()\"\n />\n </ng-template>\n `,\n host: {\n '[class]': 'class()'\n }\n})\nexport class NzFloatButtonComponent {\n readonly nzHref = input<string | null>(null);\n readonly nzTarget = input<string | null>(null);\n readonly nzType = input<NzFloatButtonType>('default');\n readonly nzIcon = input<string | TemplateRef<void> | null>(null);\n readonly nzDescription = input<string | TemplateRef<void> | null>(null);\n readonly nzShape = input<NzShapeSCType>('circle');\n readonly nzBadge = input<NzFloatButtonBadge | null>(null);\n readonly nzOnClick = output<boolean>();\n\n readonly shape = linkedSignal(() => this.nzShape());\n protected readonly dir = inject(Directionality).valueSignal;\n protected readonly class = computed<string[]>(() => {\n const dir = this.dir();\n const classes = [CLASS_NAME, this.generateClass(this.shape())];\n if (dir === 'rtl') {\n classes.push(this.generateClass(dir));\n }\n return classes;\n });\n\n private generateClass(suffix: string): string {\n return generateClassName(CLASS_NAME, suffix);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { normalizePassiveListenerOptions, Platform } from '@angular/cdk/platform';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n DOCUMENT,\n effect,\n ElementRef,\n inject,\n input,\n linkedSignal,\n NgZone,\n numberAttribute,\n OnInit,\n output,\n signal,\n TemplateRef,\n untracked,\n viewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subject, Subscription } from 'rxjs';\nimport { debounceTime, takeUntil } from 'rxjs/operators';\n\nimport { withAnimationCheck } from 'ng-zorro-antd/core/animation';\nimport { withConfigFactory } from 'ng-zorro-antd/core/config';\nimport { NzScrollService } from 'ng-zorro-antd/core/services';\nimport { NzShapeSCType } from 'ng-zorro-antd/core/types';\nimport { fromEventOutsideAngular, generateClassName } from 'ng-zorro-antd/core/util';\n\nimport { NzFloatButtonComponent } from './float-button.component';\nimport { NzFloatButtonBadge, NzFloatButtonType } from './typings';\n\nconst withConfig = withConfigFactory('floatButton');\nconst CLASS_NAME = 'ant-float-btn';\n\nconst passiveEventListenerOptions = normalizePassiveListenerOptions({ passive: true });\n\n@Component({\n selector: 'nz-float-button-top',\n exportAs: 'nzFloatButtonTop',\n imports: [NzFloatButtonComponent],\n template: `\n @if (visible()) {\n <nz-float-button\n #backTop\n [nzIcon]=\"nzIcon() || 'vertical-align-top'\"\n [nzDescription]=\"nzDescription()\"\n [nzHref]=\"nzHref()\"\n [nzType]=\"nzType()\"\n [nzShape]=\"shape()\"\n [nzBadge]=\"nzBadge()\"\n [animate.enter]=\"fadeAnimationEnter()\"\n [animate.leave]=\"fadeAnimationLeave()\"\n />\n }\n `,\n host: {\n '[class]': 'class()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None\n})\nexport class NzFloatButtonTopComponent implements OnInit {\n private readonly scrollSrv = inject(NzScrollService);\n private readonly platform = inject(Platform);\n private readonly ngZone = inject(NgZone);\n private readonly directionality = inject(Directionality);\n private readonly destroyRef = inject(DestroyRef);\n private readonly document = inject(DOCUMENT);\n\n readonly backTop = viewChild('backTop', { read: ElementRef });\n\n readonly nzVisibilityHeight = input<number>();\n readonly nzHref = input<string | null>(null);\n readonly nzType = input<NzFloatButtonType>('default');\n readonly nzShape = input<NzShapeSCType>('circle');\n readonly nzIcon = input<string | TemplateRef<void> | null>(null);\n readonly nzDescription = input<TemplateRef<void> | null>(null);\n readonly nzTemplate = input<TemplateRef<void> | null>(null);\n readonly nzTarget = input<string | HTMLElement | null>(null);\n readonly nzDuration = input(450, { transform: numberAttribute });\n readonly nzBadge = input<NzFloatButtonBadge | null>(null);\n readonly nzOnClick = output<boolean>();\n\n protected readonly visible = signal<boolean>(false);\n // compact global config\n private readonly visibilityHeight = withConfig('nzVisibilityHeight', this.nzVisibilityHeight, 400);\n readonly shape = linkedSignal(() => this.nzShape());\n protected readonly class = computed<string[]>(() => {\n const dir = this.directionality.valueSignal();\n const classes = [CLASS_NAME, `${CLASS_NAME}-top`, this.generateClass(this.shape())];\n if (dir === 'rtl') {\n classes.push(this.generateClass(dir));\n }\n return classes;\n });\n\n protected readonly fadeAnimationEnter = withAnimationCheck(() => `${CLASS_NAME}-top-motion-enter`);\n protected readonly fadeAnimationLeave = withAnimationCheck(() => `${CLASS_NAME}-top-motion-leave`);\n\n private target?: HTMLElement | null = null;\n private backTopClickSubscription = Subscription.EMPTY;\n private scrollListenerDestroy$ = new Subject<void>();\n\n constructor() {\n this.destroyRef.onDestroy(() => {\n this.scrollListenerDestroy$.next();\n this.scrollListenerDestroy$.complete();\n });\n\n effect(() => {\n const target = this.nzTarget();\n if (target) {\n this.target = typeof target === 'string' ? this.document.querySelector(target) : target;\n this.registerScrollEvent();\n }\n });\n\n effect(onCleanup => {\n const backTop = this.backTop();\n if (backTop) {\n this.backTopClickSubscription.unsubscribe();\n this.backTopClickSubscription = fromEventOutsideAngular(backTop.nativeElement, 'click')\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => {\n this.scrollSrv.scrollTo(this.getTarget(), 0, { duration: this.nzDuration() });\n this.ngZone.run(() => this.nzOnClick.emit(true));\n });\n }\n return onCleanup(() => {\n this.backTopClickSubscription.unsubscribe();\n });\n });\n\n effect(() => {\n this.visibilityHeight();\n untracked(() => this.handleScroll());\n });\n }\n\n ngOnInit(): void {\n this.registerScrollEvent();\n }\n\n private getTarget(): HTMLElement | Window {\n return this.target || window;\n }\n\n private handleScroll(): void {\n if (\n !this.platform.isBrowser ||\n this.visible() === this.scrollSrv.getScroll(this.getTarget()) > this.visibilityHeight()\n ) {\n return;\n }\n this.visible.update(v => !v);\n }\n\n private registerScrollEvent(): void {\n if (!this.platform.isBrowser) {\n return;\n }\n this.scrollListenerDestroy$.next();\n this.handleScroll();\n fromEventOutsideAngular(this.getTarget(), 'scroll', passiveEventListenerOptions as AddEventListenerOptions)\n .pipe(debounceTime(50), takeUntil(this.scrollListenerDestroy$))\n .subscribe(() => this.handleScroll());\n }\n\n private generateClass(suffix: string): string {\n return generateClassName(CLASS_NAME, suffix);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChildren,\n effect,\n inject,\n input,\n linkedSignal,\n output,\n TemplateRef\n} from '@angular/core';\n\nimport { withAnimationCheck } from 'ng-zorro-antd/core/animation';\nimport { NzFourDirectionType, NzShapeSCType } from 'ng-zorro-antd/core/types';\nimport { generateClassName } from 'ng-zorro-antd/core/util';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzFloatButtonTopComponent } from './float-button-top.component';\nimport { NzFloatButtonComponent } from './float-button.component';\nimport { NzFloatButtonType } from './typings';\n\nconst CLASS_NAME = 'ant-float-btn-group';\n\n@Component({\n selector: 'nz-float-button-group',\n exportAs: 'nzFloatButtonGroup',\n imports: [NzFloatButtonComponent, NzIconModule, NgTemplateOutlet],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (!isMenuMode()) {\n <ng-container *ngTemplateOutlet=\"menu\" />\n } @else {\n @if (open()) {\n <div class=\"ant-float-btn-group-wrap\" [animate.enter]=\"enterAnimation()\" [animate.leave]=\"leaveAnimation()\">\n <ng-container *ngTemplateOutlet=\"menu\" />\n </div>\n }\n <nz-float-button\n class=\"ant-float-btn-group-trigger\"\n [nzType]=\"nzType()\"\n [nzIcon]=\"open() ? close : nzIcon()\"\n [nzShape]=\"nzShape()\"\n [nzDescription]=\"open() ? null : nzDescription()\"\n (nzOnClick)=\"open() ? clickCloseMenu() : clickOpenMenu()\"\n (mouseover)=\"hoverOpenMenu()\"\n />\n }\n <ng-template #menu><ng-content /></ng-template>\n <ng-template #close>\n <nz-icon nzType=\"close\" nzTheme=\"outline\" />\n </ng-template>\n `,\n host: {\n '[class]': 'class()',\n '(mouseleave)': 'hoverCloseMenu()'\n }\n})\nexport class NzFloatButtonGroupComponent {\n readonly nzFloatButtonComponents = contentChildren(NzFloatButtonComponent);\n readonly nzFloatButtonTopComponents = contentChildren(NzFloatButtonTopComponent);\n\n readonly nzHref = input<string | null>(null);\n readonly nzTarget = input<string | null>(null);\n readonly nzType = input<NzFloatButtonType>('default');\n readonly nzIcon = input<string | TemplateRef<void> | null>(null);\n readonly nzDescription = input<string | TemplateRef<void> | null>(null);\n readonly nzShape = input<NzShapeSCType>('circle');\n readonly nzTrigger = input<'click' | 'hover' | null>(null);\n readonly nzOpen = input<boolean | null>(null);\n readonly nzPlacement = input<NzFourDirectionType>('top');\n\n /**\n * @deprecated Use `nzOpenChange` instead. This will be removed in v23.0.0.\n */\n readonly nzOnOpenChange = output<boolean>();\n readonly nzOpenChange = output<boolean>();\n\n protected readonly dir = inject(Directionality).valueSignal;\n protected readonly open = linkedSignal<boolean>(() => !!this.nzOpen());\n protected readonly isMenuMode = computed(\n () => !!this.nzTrigger() && ['click', 'hover'].includes(this.nzTrigger() as string)\n );\n protected readonly isControlledMode = computed(() => this.nzOpen() !== null);\n protected readonly class = computed<string[]>(() => {\n const shape = this.nzShape();\n const dir = this.dir();\n const classes = [CLASS_NAME, this.generateClass(shape)];\n if (!this.isMenuMode()) {\n classes.push(this.generateClass(`${shape}-shadow`));\n } else {\n classes.push(this.generateClass(this.nzPlacement()));\n }\n if (dir === 'rtl') {\n classes.push(this.generateClass(dir));\n }\n return classes;\n });\n protected readonly enterAnimation = withAnimationCheck(() => `ant-float-btn-enter-${this.nzPlacement()}`);\n protected readonly leaveAnimation = withAnimationCheck(() => `ant-float-btn-leave-${this.nzPlacement()}`);\n\n constructor() {\n effect(() => {\n if (this.nzFloatButtonComponents()) {\n this.nzFloatButtonComponents().forEach(item => {\n item.shape.set(this.nzShape());\n });\n }\n if (this.nzFloatButtonTopComponents()) {\n this.nzFloatButtonTopComponents().forEach(item => {\n item.shape.set(this.nzShape());\n });\n }\n });\n }\n\n clickOpenMenu(): void {\n this.handleEvent('click', true);\n }\n\n hoverOpenMenu(): void {\n this.handleEvent('hover', true);\n }\n\n clickCloseMenu(): void {\n this.handleEvent('click', false);\n }\n\n hoverCloseMenu(): void {\n this.handleEvent('hover', false);\n }\n\n private handleEvent(type: 'click' | 'hover', isOpen: boolean): void {\n if (this.nzTrigger() !== type || this.open() === isOpen) {\n return;\n }\n\n if (!this.isControlledMode()) {\n this.open.set(isOpen);\n }\n this.nzOpenChange.emit(isOpen);\n this.nzOnOpenChange.emit(isOpen);\n }\n\n private generateClass(suffix: string): string {\n return generateClassName(CLASS_NAME, suffix);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzFloatButtonContentComponent } from './float-button-content.component';\nimport { NzFloatButtonGroupComponent } from './float-button-group.component';\nimport { NzFloatButtonTopComponent } from './float-button-top.component';\nimport { NzFloatButtonComponent } from './float-button.component';\n\n@NgModule({\n exports: [\n NzFloatButtonComponent,\n NzFloatButtonGroupComponent,\n NzFloatButtonTopComponent,\n NzFloatButtonContentComponent\n ],\n imports: [\n NzFloatButtonComponent,\n NzFloatButtonGroupComponent,\n NzFloatButtonTopComponent,\n NzFloatButtonContentComponent\n ]\n})\nexport class NzFloatButtonModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { TemplateRef } from '@angular/core';\n\nimport { NzSizeDSType } from 'ng-zorro-antd/core/types';\n\nexport type NzFloatButtonType = 'primary' | 'default';\n\n// omit nzShowDot, nzTitle, nzStatus, nzText\nexport interface NzFloatButtonBadgeProps {\n nzShowZero: boolean;\n nzDot: boolean;\n nzOverflowCount: number;\n nzColor: string;\n nzCount: number | TemplateRef<void>;\n nzOffset: [number, number];\n nzSize: NzSizeDSType;\n}\n\nexport type NzFloatButtonBadge = Partial<NzFloatButtonBadgeProps>;\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './float-button.component';\nexport * from './float-button-content.component';\nexport * from './float-button-group.component';\nexport * from './float-button-top.component';\nexport * from './float-button.module';\nexport * from './typings';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["CLASS_NAME","i1","i2"],"mappings":"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"}