{"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  readonly nzOnOpenChange = 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.isControlledMode() || this.open() === isOpen) {\n      return;\n    }\n    this.open.set(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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"}