UNPKG

ng-zorro-antd

Version:

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

2 lines 18 kB
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/cdk/keycodes"),require("rxjs"),require("rxjs/operators"),require("@angular/cdk/overlay"),require("@angular/common"),require("@angular/core"),require("@angular/forms"),require("ng-zorro-antd/core"),require("ng-zorro-antd/empty"),require("ng-zorro-antd/icon"),require("ng-zorro-antd/tree")):"function"==typeof define&&define.amd?define("ng-zorro-antd/tree-select",["exports","@angular/cdk/keycodes","rxjs","rxjs/operators","@angular/cdk/overlay","@angular/common","@angular/core","@angular/forms","ng-zorro-antd/core","ng-zorro-antd/empty","ng-zorro-antd/icon","ng-zorro-antd/tree"],n):n((e["ng-zorro-antd"]=e["ng-zorro-antd"]||{},e["ng-zorro-antd"]["tree-select"]={}),e.ng.cdk.keycodes,e.rxjs,e.rxjs.operators,e.ng.cdk.overlay,e.ng.common,e.ng.core,e.ng.forms,e["ng-zorro-antd"].core,e["ng-zorro-antd"].empty,e["ng-zorro-antd"].icon,e["ng-zorro-antd"].tree)}(this,function(e,i,n,o,t,l,a,r,s,c,p,d){"use strict";var u=function(e,n){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var t in n)n.hasOwnProperty(t)&&(e[t]=n[t])})(e,n)};function h(e,n){function t(){this.constructor=e}u(e,n),e.prototype=null===n?Object.create(n):(t.prototype=n.prototype,new t)}function z(e,n,t,o){var i,l=arguments.length,a=l<3?n:null===o?o=Object.getOwnPropertyDescriptor(n,t):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,n,t,o);else for(var r=e.length-1;0<=r;r--)(i=e[r])&&(a=(l<3?i(a):3<l?i(n,t,a):i(n,t))||a);return 3<l&&a&&Object.defineProperty(n,t,a),a}function y(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function g(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var o,i,l=t.call(e),a=[];try{for(;(void 0===n||0<n--)&&!(o=l.next()).done;)a.push(o.value)}catch(r){i={error:r}}finally{try{o&&!o.done&&(t=l["return"])&&t.call(l)}finally{if(i)throw i.error}}return a}function f(){for(var e=[],n=0;n<arguments.length;n++)e=e.concat(g(arguments[n]));return e}var v,m=(h(C,v=s.NzTreeBaseService),C.decorators=[{type:a.Injectable}],C);function C(){return null!==v&&v.apply(this,arguments)||this}function S(e){return e.get(m)}var b,O=(h(w,b=s.NzTreeBase),Object.defineProperty(w.prototype,"placeHolderDisplay",{get:function(){return this.inputValue||this.isComposing||this.selectedNodes.length?"none":"block"},enumerable:!0,configurable:!0}),Object.defineProperty(w.prototype,"searchDisplay",{get:function(){return this.nzOpen?"block":"none"},enumerable:!0,configurable:!0}),Object.defineProperty(w.prototype,"isMultiple",{get:function(){return this.nzMultiple||this.nzCheckable},enumerable:!0,configurable:!0}),Object.defineProperty(w.prototype,"selectedValueDisplay",{get:function(){var e=!1,n=1;return this.nzShowSearch&&this.nzOpen?(e=!(this.inputValue||this.isComposing))&&(n=.4):e=!0,{display:e?"block":"none",opacity:""+n}},enumerable:!0,configurable:!0}),w.prototype.ngOnInit=function(){this.isDestroy=!1,this.selectionChangeSubscription=this.subscribeSelectionChange()},w.prototype.ngOnDestroy=function(){this.isDestroy=!0,this.closeDropDown(),this.selectionChangeSubscription.unsubscribe()},w.prototype.setDisabledState=function(e){this.nzDisabled=e,this.closeDropDown()},w.prototype.ngOnChanges=function(e){e.hasOwnProperty("nzNodes")&&this.updateSelectedNodes(!0)},w.prototype.writeValue=function(e){var n=this;s.isNotNil(e)?(this.isMultiple&&Array.isArray(e)?this.value=e:this.value=[e],this.updateSelectedNodes(!0)):(this.value=[],this.selectedNodes.forEach(function(e){n.removeSelected(e,!1)}),this.selectedNodes=[]),this.cdr.markForCheck()},w.prototype.registerOnChange=function(e){this.onChange=e},w.prototype.registerOnTouched=function(e){this.onTouched=e},w.prototype.trigger=function(){this.nzDisabled||!this.nzDisabled&&this.nzOpen?this.closeDropDown():(this.openDropdown(),(this.nzShowSearch||this.isMultiple)&&this.focusOnInput())},w.prototype.openDropdown=function(){this.nzDisabled||(this.nzOpen=!0,this.nzOpenChange.emit(this.nzOpen),this.updateCdkConnectedOverlayStatus(),this.updatePosition())},w.prototype.closeDropDown=function(){this.onTouched(),this.nzOpen=!1,this.nzOpenChange.emit(this.nzOpen),this.cdr.markForCheck()},w.prototype.onKeyDownInput=function(e){var n=e.keyCode,t=e.target;if(this.isMultiple&&!t.value&&n===i.BACKSPACE&&(e.preventDefault(),this.selectedNodes.length)){var o=this.selectedNodes[this.selectedNodes.length-1];this.removeSelected(o),this.nzTreeService.triggerEventChange$.next({eventName:"removeSelect",node:o})}},w.prototype.onExpandedKeysChange=function(e){this.nzExpandChange.emit(e),this.nzDefaultExpandedKeys=f(e.keys)},w.prototype.setInputValue=function(e){this.inputValue=e,this.updateInputWidth(),this.updatePosition()},w.prototype.removeSelected=function(e,n,t){void 0===n&&(n=!0),e.isSelected=!1,e.isChecked=!1,this.nzCheckable?this.nzTreeService.conduct(e):this.nzTreeService.setSelectedNodeList(e,this.nzMultiple),n&&this.nzRemoved.emit(e),t&&t.stopPropagation&&t.stopPropagation()},w.prototype.focusOnInput=function(){var e=this;setTimeout(function(){e.inputElement&&e.inputElement.nativeElement.focus()})},w.prototype.subscribeSelectionChange=function(){var t=this;return n.merge(this.nzTreeClick.pipe(o.tap(function(e){var n=e.node;!t.nzCheckable||n.isDisabled||n.isDisableCheckbox||(n.isChecked=!n.isChecked,t.nzTreeService.conduct(n)),t.nzCheckable&&(n.isSelected=!1)}),o.filter(function(e){var n=e.node;return t.nzCheckable?!n.isDisabled&&!n.isDisableCheckbox:!n.isDisabled})),this.nzCheckable?this.nzTreeCheckBoxChange:n.of(),this.nzCleared,this.nzRemoved).subscribe(function(){t.updateSelectedNodes();var e=t.selectedNodes.map(function(e){return e.key});t.value=f(e),(t.nzShowSearch||t.isMultiple)&&(t.inputValue="",t.isNotFound=!1),t.isMultiple?(t.onChange(e),t.focusOnInput(),t.updatePosition()):(t.closeDropDown(),t.onChange(e.length?e[0]:null))})},w.prototype.updateSelectedNodes=function(e){if(void 0===e&&(e=!1),e){var n=this.coerceTreeNodes(this.nzNodes);this.nzTreeService.isMultiple=this.isMultiple,this.nzTreeService.initTree(n),this.nzCheckable?this.nzTreeService.calcCheckedKeys(this.value,n):this.nzTreeService.calcSelectedKeys(this.value,n,this.isMultiple)}this.selectedNodes=f(this.nzCheckable?this.getCheckedNodeList():this.getSelectedNodeList())},w.prototype.updatePosition=function(){var e=this;setTimeout(function(){e.cdkConnectedOverlay&&e.cdkConnectedOverlay.overlayRef&&e.cdkConnectedOverlay.overlayRef.updatePosition()})},w.prototype.onPositionChange=function(e){this.dropDownPosition=e.connectionPair.originY},w.prototype.updateInputWidth=function(){this.isMultiple&&this.inputElement&&(this.inputValue||this.isComposing?this.renderer.setStyle(this.inputElement.nativeElement,"width",this.inputElement.nativeElement.scrollWidth+"px"):this.renderer.removeStyle(this.inputElement.nativeElement,"width"))},w.prototype.onClearSelection=function(e){var n=this;e.stopPropagation(),e.preventDefault(),this.selectedNodes.forEach(function(e){n.removeSelected(e,!1)}),this.nzCleared.emit()},w.prototype.setSearchValues=function(e){var n=this;Promise.resolve().then(function(){n.isNotFound=(n.nzShowSearch||n.isMultiple)&&!!n.inputValue&&0===e.matchedKeys.length})},w.prototype.updateCdkConnectedOverlayStatus=function(){this.triggerWidth=this.cdkOverlayOrigin.elementRef.nativeElement.getBoundingClientRect().width},w.prototype.trackValue=function(e,n){return n.key},w.decorators=[{type:a.Component,args:[{selector:"nz-tree-select",exportAs:"nzTreeSelect",animations:[s.slideMotion,s.zoomMotion],template:'<ng-template #inputTemplate>\n <input\n #inputElement\n autocomplete="off"\n class="ant-select-search__field"\n (compositionstart)="isComposing = true"\n (compositionend)="isComposing = false"\n (keydown)="onKeyDownInput($event)"\n [ngModel]="inputValue"\n (ngModelChange)="setInputValue($event)"\n [disabled]="nzDisabled">\n</ng-template>\n\n<ng-template\n cdkConnectedOverlay\n nzConnectedOverlay\n [cdkConnectedOverlayOrigin]="cdkOverlayOrigin"\n [cdkConnectedOverlayOpen]="nzOpen"\n [cdkConnectedOverlayHasBackdrop]="true"\n [cdkConnectedOverlayMinWidth]="nzDropdownMatchSelectWidth? null : triggerWidth"\n [cdkConnectedOverlayWidth]="nzDropdownMatchSelectWidth? triggerWidth : null"\n (backdropClick)="closeDropDown()"\n (detach)="closeDropDown()"\n (positionChange)="onPositionChange($event)">\n <div class="ant-select-dropdown ant-select-tree-dropdown"\n [@slideMotion]="nzOpen ? dropDownPosition : \'void\'"\n [nzNoAnimation]="noAnimation?.nzNoAnimation"\n [class.ant-select-dropdown--single]="!nzMultiple"\n [class.ant-select-dropdown--multiple]="nzMultiple"\n [class.ant-select-dropdown-placement-bottomLeft]="dropDownPosition === \'bottom\'"\n [class.ant-select-dropdown-placement-topLeft]="dropDownPosition === \'top\'"\n [ngStyle]="nzDropdownStyle">\n <nz-tree\n #treeRef\n [hidden]="isNotFound"\n nzNoAnimation\n nzSelectMode\n [nzData]="nzNodes"\n [nzMultiple]="nzMultiple"\n [nzSearchValue]="inputValue"\n [nzShowIcon]="nzShowIcon"\n [nzCheckable]="nzCheckable"\n [nzAsyncData]="nzAsyncData"\n [nzShowExpand]="nzShowExpand"\n [nzShowLine]="nzShowLine"\n [nzExpandedIcon]="nzExpandedIcon"\n [nzExpandAll]="nzDefaultExpandAll"\n [nzExpandedKeys]="nzDefaultExpandedKeys"\n [nzCheckedKeys]="nzCheckable ? value : []"\n [nzSelectedKeys]="!nzCheckable ? value : []"\n [nzTreeTemplate]="nzTreeTemplate"\n (nzExpandChange)="onExpandedKeysChange($event)"\n (nzClick)="nzTreeClick.emit($event)"\n (nzCheckedKeysChange)="updateSelectedNodes()"\n (nzSelectedKeysChange)="updateSelectedNodes()"\n (nzCheckBoxChange)="nzTreeCheckBoxChange.emit($event)"\n (nzSearchValueChange)="setSearchValues($event)">\n </nz-tree>\n <span *ngIf="nzNodes.length === 0 || isNotFound" class="ant-select-not-found">\n <nz-embed-empty [nzComponentName]="\'tree-select\'" [specificContent]="nzNotFoundContent"></nz-embed-empty>\n </span>\n </div>\n</ng-template>\n\n<div\n cdkOverlayOrigin\n class="ant-select-selection"\n [class.ant-select-selection--single]="!isMultiple"\n [class.ant-select-selection--multiple]="isMultiple"\n tabindex="0">\n <ng-container *ngIf="!isMultiple">\n <div class="ant-select-selection__rendered">\n <div\n *ngIf="nzPlaceHolder && selectedNodes.length === 0"\n [style.display]="placeHolderDisplay"\n class="ant-select-selection__placeholder">\n {{ nzPlaceHolder }}\n </div>\n\n <div\n *ngIf="selectedNodes.length === 1"\n class="ant-select-selection-selected-value"\n [attr.title]="nzDisplayWith(selectedNodes[0])"\n [ngStyle]="selectedValueDisplay">\n {{ nzDisplayWith(selectedNodes[0]) }}\n </div>\n\n <div\n *ngIf="nzShowSearch"\n [style.display]="searchDisplay"\n class="ant-select-search ant-select-search--inline">\n <div class="ant-select-search__field__wrap">\n <ng-template [ngTemplateOutlet]="inputTemplate"></ng-template>\n <span class="ant-select-search__field__mirror">{{inputValue}}&nbsp;</span>\n </div>\n </div>\n\n </div>\n </ng-container>\n <ng-container *ngIf="isMultiple">\n <ul class="ant-select-selection__rendered">\n <div\n *ngIf="nzPlaceHolder && selectedNodes.length === 0"\n [style.display]="placeHolderDisplay"\n class="ant-select-selection__placeholder">\n {{ nzPlaceHolder }}\n </div>\n <ng-container *ngFor="let node of selectedNodes | slice: 0 : nzMaxTagCount; trackBy:trackValue">\n <li\n [@zoomMotion]\n [nzNoAnimation]="noAnimation?.nzNoAnimation"\n [attr.title]="nzDisplayWith(node)"\n [class.ant-select-selection__choice__disabled]="node.isDisabled"\n class="ant-select-selection__choice">\n <span *ngIf="!node.isDisabled" class="ant-select-selection__choice__remove"\n (mousedown)="$event.preventDefault()"\n (click)="removeSelected(node, true, $event)">\n <i nz-icon type="close" class="ant-select-remove-icon"></i>\n </span>\n <span class="ant-select-selection__choice__content">{{ nzDisplayWith(node) }}</span>\n </li>\n </ng-container>\n <li [@zoomMotion]\n *ngIf="selectedNodes.length > nzMaxTagCount"\n class="ant-select-selection__choice">\n <div class="ant-select-selection__choice__content">\n <ng-container *ngIf="nzMaxTagPlaceholder">\n <ng-template\n [ngTemplateOutlet]="nzMaxTagPlaceholder"\n [ngTemplateOutletContext]="{ $implicit: selectedNodes | slice: nzMaxTagCount}">\n </ng-template>\n </ng-container>\n <ng-container *ngIf="!nzMaxTagPlaceholder">\n + {{ selectedNodes.length - nzMaxTagCount }} ...\n </ng-container>\n </div>\n </li>\n <li class="ant-select-search ant-select-search--inline">\n <ng-template [ngTemplateOutlet]="inputTemplate"></ng-template>\n </li>\n </ul>\n </ng-container>\n <span *ngIf="nzAllowClear" class="ant-select-selection__clear"\n (mousedown)="$event.preventDefault()"\n (click)="onClearSelection($event)">\n <i nz-icon type="close-circle" class="ant-select-clear-icon" theme="fill"></i>\n </span>\n <span *ngIf="!isMultiple" class="ant-select-arrow">\n <i nz-icon type="down" class="ant-select-arrow-icon"></i>\n </span>\n</div>',providers:[m,{provide:s.NzTreeHigherOrderServiceToken,useFactory:S,deps:[[new a.Self,a.Injector]]},{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef(function(){return w}),multi:!0}],host:{"[class.ant-select-lg]":'nzSize==="large"',"[class.ant-select-sm]":'nzSize==="small"',"[class.ant-select-enabled]":"!nzDisabled","[class.ant-select-disabled]":"nzDisabled","[class.ant-select-allow-clear]":"nzAllowClear","[class.ant-select-open]":"nzOpen","(click)":"trigger()"},styles:["\n .ant-select-dropdown {\n top: 100%;\n left: 0;\n position: relative;\n width: 100%;\n margin-top: 4px;\n margin-bottom: 4px;\n overflow: auto;\n }\n "]}]}],w.ctorParameters=function(){return[{type:m},{type:a.Renderer2},{type:a.ChangeDetectorRef},{type:a.ElementRef},{type:s.NzNoAnimationDirective,decorators:[{type:a.Host},{type:a.Optional}]}]},w.propDecorators={nzAllowClear:[{type:a.Input}],nzShowExpand:[{type:a.Input}],nzShowLine:[{type:a.Input}],nzDropdownMatchSelectWidth:[{type:a.Input}],nzCheckable:[{type:a.Input}],nzShowIcon:[{type:a.Input}],nzShowSearch:[{type:a.Input}],nzDisabled:[{type:a.Input}],nzAsyncData:[{type:a.Input}],nzMultiple:[{type:a.Input}],nzDefaultExpandAll:[{type:a.Input}],nzExpandedIcon:[{type:a.Input}],nzNotFoundContent:[{type:a.Input}],nzNodes:[{type:a.Input}],nzOpen:[{type:a.Input}],nzSize:[{type:a.Input}],nzPlaceHolder:[{type:a.Input}],nzDropdownStyle:[{type:a.Input}],nzDefaultExpandedKeys:[{type:a.Input}],nzDisplayWith:[{type:a.Input}],nzMaxTagCount:[{type:a.Input}],nzMaxTagPlaceholder:[{type:a.Input}],nzOpenChange:[{type:a.Output}],nzCleared:[{type:a.Output}],nzRemoved:[{type:a.Output}],nzExpandChange:[{type:a.Output}],nzTreeClick:[{type:a.Output}],nzTreeCheckBoxChange:[{type:a.Output}],inputElement:[{type:a.ViewChild,args:["inputElement"]}],treeRef:[{type:a.ViewChild,args:["treeRef"]}],cdkOverlayOrigin:[{type:a.ViewChild,args:[t.CdkOverlayOrigin]}],cdkConnectedOverlay:[{type:a.ViewChild,args:[t.CdkConnectedOverlay]}],nzTreeTemplate:[{type:a.Input},{type:a.ContentChild,args:["nzTreeTemplate"]}]},z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzAllowClear",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzShowExpand",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzShowLine",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzDropdownMatchSelectWidth",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzCheckable",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzShowIcon",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzShowSearch",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzDisabled",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzAsyncData",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzMultiple",void 0),z([s.InputBoolean(),y("design:type",Object)],w.prototype,"nzDefaultExpandAll",void 0),w);function w(e,n,t,o,i){var l=b.call(this,e)||this;return l.renderer=n,l.cdr=t,l.elementRef=o,l.noAnimation=i,l.nzAllowClear=!0,l.nzShowExpand=!0,l.nzShowLine=!1,l.nzDropdownMatchSelectWidth=!0,l.nzCheckable=!1,l.nzShowIcon=!1,l.nzShowSearch=!1,l.nzDisabled=!1,l.nzAsyncData=!1,l.nzMultiple=!1,l.nzDefaultExpandAll=!1,l.nzNodes=[],l.nzOpen=!1,l.nzSize="default",l.nzPlaceHolder="",l.nzDefaultExpandedKeys=[],l.nzDisplayWith=function(e){return e.title},l.nzOpenChange=new a.EventEmitter,l.nzCleared=new a.EventEmitter,l.nzRemoved=new a.EventEmitter,l.nzExpandChange=new a.EventEmitter,l.nzTreeClick=new a.EventEmitter,l.nzTreeCheckBoxChange=new a.EventEmitter,l.isComposing=!1,l.isDestroy=!0,l.isNotFound=!1,l.inputValue="",l.dropDownPosition="bottom",l.selectedNodes=[],l.value=[],l.onTouched=function(){return null},l.renderer.addClass(l.elementRef.nativeElement,"ant-select"),l}var D=(k.decorators=[{type:a.NgModule,args:[{imports:[l.CommonModule,t.OverlayModule,r.FormsModule,d.NzTreeModule,p.NzIconModule,c.NzEmptyModule,s.NzOverlayModule,s.NzNoAnimationModule],declarations:[O],exports:[O]}]}],k);function k(){}e.higherOrderServiceFactory=S,e.NzTreeSelectComponent=O,e.NzTreeSelectModule=D,e.NzTreeSelectService=m,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=ng-zorro-antd-tree-select.umd.min.js.map