ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
1 lines • 26.6 kB
Source Map (JSON)
{"version":3,"file":"ng-zorro-antd-mobile-popover.mjs","sources":["../../components/popover/popover-options.provider.ts","../../components/popover/popover-component-options.provider.ts","../../components/popover/popover.component.ts","../../components/popover/popover.component.html","../../components/popover/popover.directive.ts","../../components/popover/popover-item/popover-item.component.ts","../../components/popover/popover-item/popover-item.component.html","../../components/popover/popover-item/popover-item.module.ts","../../components/popover/popover.module.ts","../../components/popover/ng-zorro-antd-mobile-popover.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nexport interface PopoverOptionsInterface {\n mask?: boolean;\n visible?: boolean;\n placement?: string;\n appendToBody?: boolean;\n className?: string;\n autoClose?: boolean;\n}\n\n@Injectable()\nexport class PopoverOptions implements PopoverOptionsInterface {\n showArrow: boolean = false;\n mask: boolean = false;\n placement: string = 'bottom';\n appendToBody: boolean = false;\n className: string = '';\n autoClose: boolean = true;\n}\n","import { Injectable, TemplateRef } from '@angular/core';\nimport { PopoverOptions } from './popover-options.provider';\n\n@Injectable()\nexport class PopoverComponentOptions extends PopoverOptions {\n onAfterViewInit: () => void;\n hidePopover: () => void;\n overlay: TemplateRef<any>;\n}\n","import { Component, AfterViewInit, ViewEncapsulation, OnInit } from '@angular/core';\nimport { PopoverComponentOptions } from './popover-component-options.provider';\n\n@Component({\n selector: 'Popover',\n templateUrl: './popover.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class PopoverComponent implements OnInit, AfterViewInit {\n defaultProps: any = {\n prefixCls: 'am-popover'\n };\n maskCls: any = {};\n popoverCls: any = {};\n\n constructor(public options: PopoverComponentOptions) {}\n\n setClassMap() {\n this.maskCls = {\n [`${this.defaultProps.prefixCls}-mask`]: this.options.mask,\n [`${this.defaultProps.prefixCls}-mask-hidden`]: !this.options.mask\n };\n this.popoverCls = {\n [`${this.defaultProps.prefixCls}`]: true,\n [`${this.defaultProps.prefixCls}-placement-${this.options.placement}`]: true,\n [`${this.defaultProps.prefixCls}-${this.options.className}`]: true\n };\n }\n\n ngOnInit() {\n this.setClassMap();\n }\n ngAfterViewInit(): void {\n this.options.onAfterViewInit();\n }\n}\n","<ng-content></ng-content>\n<div [ngClass]=\"maskCls\" (click)=\"options.hidePopover()\"></div>\n<div [ngClass]=\"popoverCls\" style=\"color: currentcolor;\">\n <div class=\"{{ defaultProps.prefixCls }}-content\">\n <div *ngIf=\"options.showArrow\" class=\"{{ defaultProps.prefixCls }}-arrow\"></div>\n <div class=\"{{ defaultProps.prefixCls }}-inner\">\n <div class=\"{{ defaultProps.prefixCls }}-inner-wrapper\">\n <ng-template [ngTemplateOutlet]=\"options.overlay\" [ngTemplateOutletContext]=\"{ options: options }\">\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n","import {\n Directive,\n Input,\n Output,\n EventEmitter,\n HostListener,\n ViewContainerRef,\n ComponentRef,\n OnDestroy,\n ElementRef,\n OnInit,\n Injector,\n ComponentFactoryResolver,\n Renderer2,\n TemplateRef,\n ComponentFactory,\n OnChanges,\n SimpleChanges\n} from '@angular/core';\nimport { PopoverComponent } from './popover.component';\nimport { PopoverOptions } from './popover-options.provider';\nimport { PopoverComponentOptions } from './popover-component-options.provider';\nimport { getPositionElements } from 'ng-zorro-antd-mobile/core';\n\n@Directive({\n selector: '[Popover], [nzm-popover]',\n providers: [PopoverOptions]\n})\nexport class PopoverDirective implements OnInit, OnChanges, OnDestroy {\n popover: ComponentRef<PopoverComponent>;\n appendToBodyElement: HTMLElement;\n private _eventListeners: Array<() => void> = [];\n\n @Input()\n mask: boolean;\n @Input()\n showArrow: boolean;\n @Input()\n visible: boolean;\n @Input()\n placement: string;\n @Input()\n overlay: TemplateRef<any>;\n @Output()\n onVisibleChange: EventEmitter<boolean> = new EventEmitter(true);\n @Output()\n onSelect: EventEmitter<any> = new EventEmitter();\n @Input()\n appendToBody: boolean;\n @Input()\n className: string;\n @Input()\n autoClose: boolean;\n\n @HostListener('click')\n togglePopover(): void {\n if (!this.popover) {\n this.showPopover();\n } else {\n this.hidePopover();\n }\n }\n\n constructor(\n private _viewContainerRef: ViewContainerRef,\n private _elm: ElementRef,\n private _defaultOptions: PopoverOptions,\n private _cfr: ComponentFactoryResolver,\n private _renderer: Renderer2\n ) {}\n\n positionMap(placement): string {\n switch (placement) {\n case 'topLeft':\n return 'top-left';\n case 'topRight':\n return 'top-right';\n case 'bottomLeft':\n return 'bottom-left';\n case 'bottomRight':\n return 'bottom-right';\n case 'leftTop':\n return 'left-top';\n case 'leftBottom':\n return 'left-bottom';\n case 'rightTop':\n return 'right-top';\n case 'rightBottom':\n return 'right-bottom';\n case 'fullScreen':\n case 'landScape':\n return 'bottom';\n default:\n return placement;\n }\n }\n\n ngOnInit(): void {}\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.visible && changes.visible.currentValue) {\n setTimeout(() => {\n this.showPopover();\n }, 0);\n } else {\n setTimeout(() => {\n this.hidePopover();\n }, 0);\n }\n }\n\n ngOnDestroy() {\n this.hidePopover();\n }\n\n private onDocumentClick(event: Event): void {\n if (\n this.popover &&\n !this._elm.nativeElement.contains(event.target) &&\n !this.popover.location.nativeElement.contains(event.target)\n ) {\n this.hidePopover();\n }\n }\n\n private showPopover(): void {\n if (!this.popover) {\n setTimeout(() => {\n this._eventListeners = [\n this._renderer.listen('document', 'click', (event: Event) => this.onDocumentClick(event)),\n this._renderer.listen('document', 'touchend', (event: Event) => this.onDocumentClick(event)),\n this._renderer.listen('window', 'resize', () => this.positionPopover())\n ];\n });\n\n const options = new PopoverComponentOptions();\n options.placement = this.placement;\n Object.assign(options, this._defaultOptions, {\n hidePopover: (event): void => {\n this.hidePopover();\n },\n onAfterViewInit: (): void => {\n this.positionPopover();\n const children = document.getElementsByClassName('am-popover-inner-wrapper')[0].children;\n if (children.length > 0) {\n // 首先我们检查它是否包含子节点\n for (let i = 0; i < children.length; i++) {\n children[i].id = `${i}`;\n children[i].addEventListener(\n 'click',\n () => {\n if (this.onSelect) {\n this.onSelect.emit(children[i]);\n if (options.autoClose) {\n this.hidePopover();\n }\n }\n },\n false\n );\n }\n }\n }\n });\n\n const optionalParams: Array<keyof PopoverDirective> = [\n 'mask',\n 'showArrow',\n 'placement',\n 'appendToBody',\n 'overlay',\n 'className',\n 'autoClose'\n ];\n optionalParams.forEach(param => {\n if (typeof this[param] !== 'undefined') {\n (options as any)[param] = this[param];\n }\n });\n\n const componentFactory: ComponentFactory<PopoverComponent> = this._cfr.resolveComponentFactory(PopoverComponent);\n const childInjector = Injector.create(\n [\n {\n provide: PopoverComponentOptions,\n useValue: options\n }\n ],\n this._viewContainerRef.parentInjector\n );\n this.popover = this._viewContainerRef.createComponent(\n componentFactory,\n this._viewContainerRef.length,\n childInjector\n );\n if (options.appendToBody) {\n this.appendToBodyElement = document.body.appendChild(this.popover.location.nativeElement);\n }\n this.onVisibleChange.emit(true);\n }\n }\n\n private positionPopover(): void {\n if (this.popover) {\n const popoverElement = this.popover.location.nativeElement.children[1];\n const popoverPosition = getPositionElements(\n this._elm.nativeElement,\n popoverElement,\n this.positionMap(this.placement) || this._defaultOptions.placement,\n this.appendToBody || this._defaultOptions.appendToBody\n );\n if (this.placement === 'landScape') {\n this._renderer.setStyle(popoverElement, 'top', `${popoverPosition.top}px`);\n this._renderer.setStyle(popoverElement, 'left', `0px`);\n this._renderer.setStyle(popoverElement, 'width', `${window.innerWidth}px`);\n this._renderer.setStyle(popoverElement, 'max-height', `${window.innerHeight - popoverPosition.height}px`);\n } else if (this.placement === 'fullScreen') {\n this._renderer.setStyle(popoverElement, 'top', `${0}px`);\n this._renderer.setStyle(popoverElement, 'left', `0px`);\n this._renderer.setStyle(popoverElement, 'width', `${window.innerWidth}px`);\n this._renderer.setStyle(popoverElement, 'max-height', `${window.innerHeight - popoverPosition.height}px`);\n } else {\n this._renderer.setStyle(popoverElement, 'top', `${popoverPosition.top}px`);\n this._renderer.setStyle(popoverElement, 'left', `${popoverPosition.left}px`);\n }\n }\n }\n\n private hidePopover(): void {\n if (this.appendToBodyElement) {\n document.body.removeChild(this.appendToBodyElement);\n this.appendToBodyElement = null;\n }\n if (this.popover) {\n this.popover.destroy();\n delete this.popover;\n this.onVisibleChange.emit(false);\n this._eventListeners.forEach(fn => fn());\n this._eventListeners = [];\n }\n }\n}\n","import {\n Component,\n AfterContentInit,\n Input,\n Output,\n ElementRef,\n TemplateRef,\n HostBinding,\n HostListener,\n EventEmitter,\n ViewEncapsulation\n} from '@angular/core';\n\n@Component({\n selector: 'PopoverItem, nzm-popover-item',\n templateUrl: './popover-item.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class PopoverItemComponent implements AfterContentInit {\n defaultProps = {\n prefixCls: 'am-popover',\n disabled: false\n };\n isActive = false;\n\n private _style;\n private _icon: TemplateRef<any>;\n\n @Input()\n get icon(): TemplateRef<any> {\n return this._icon;\n }\n set icon(value: TemplateRef<any>) {\n this._icon = value;\n }\n @Input()\n get style() {\n return this._style;\n }\n set style(value) {\n this._style = value;\n }\n @Input()\n set disabled(value) {\n this.defaultProps.disabled = value;\n }\n @Output()\n select: EventEmitter<any> = new EventEmitter();\n\n @HostBinding('class.am-popover-item')\n amPopoverItem: boolean = true;\n @HostBinding('class.am-popover-item-active')\n get amPopoverItemActive(): boolean {\n return this.isActive;\n }\n @HostBinding('class.am-popover-item-disabled')\n get amPopoverItemDisabled(): boolean {\n return this.defaultProps.disabled;\n }\n\n @HostListener('touchstart', ['$event'])\n @HostListener('mousedown', ['$event'])\n touchStart(e) {\n this.select.emit();\n this.isActive = true;\n }\n\n constructor(private _elementRef: ElementRef) {}\n\n ngAfterContentInit() {}\n}\n","<div class=\"{{ defaultProps.prefixCls }}-item-container\">\n <span class=\"{{ defaultProps.prefixCls }}-item-icon\" aria-hidden=\"true\">\n <ng-template [ngTemplateOutlet]=\"icon\"></ng-template>\n </span>\n <span class=\"{{ defaultProps.prefixCls }}-item-content\">\n <ng-content></ng-content>\n </span>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PopoverItemComponent } from './popover-item.component';\nimport { IconModule } from 'ng-zorro-antd-mobile/icon';\n\n@NgModule({\n imports: [CommonModule, IconModule],\n exports: [PopoverItemComponent],\n declarations: [PopoverItemComponent]\n})\nexport class PopoverItemModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverComponent } from './popover.component';\nimport { PopoverOptions } from './popover-options.provider';\n\nexport function PopoverOptionsFactory(userOptions: PopoverOptions): PopoverOptions {\n const options: PopoverOptions = new PopoverOptions();\n Object.assign(options, userOptions);\n return options;\n}\n\n@NgModule({\n declarations: [PopoverDirective, PopoverComponent],\n imports: [CommonModule],\n exports: [PopoverDirective, PopoverComponent]\n})\nexport class PopoverModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.PopoverComponentOptions","i1.PopoverOptions","i1"],"mappings":"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"}