{"version":3,"file":"vts-voffice-ng-vts-transfer.mjs","sources":["../../components/transfer/transfer-search.component.ts","../../components/transfer/transfer-list.component.ts","../../components/transfer/transfer.component.ts","../../components/transfer/transfer.module.ts","../../components/transfer/public-api.ts","../../components/transfer/vts-voffice-ng-vts-transfer.ts"],"sourcesContent":["/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  Output,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\n\r\n@Component({\r\n  selector: '[vts-transfer-search]',\r\n  exportAs: 'vtsTransferSearch',\r\n  preserveWhitespaces: false,\r\n  template: `\r\n    <input\r\n      [(ngModel)]=\"value\"\r\n      (ngModelChange)=\"_handle()\"\r\n      [disabled]=\"disabled\"\r\n      [placeholder]=\"placeholder\"\r\n      class=\"vts-input vts-transfer-list-search\"\r\n      [ngClass]=\"{ 'vts-input-disabled': disabled }\"\r\n    />\r\n    <a\r\n      *ngIf=\"value && value.length > 0; else def\"\r\n      class=\"vts-transfer-list-search-action\"\r\n      (click)=\"_clear()\"\r\n    >\r\n      <i vts-icon vtsType=\"Close\"></i>\r\n    </a>\r\n    <ng-template #def>\r\n      <span class=\"vts-transfer-list-search-action\">\r\n        <i vts-icon vtsType=\"Search\"></i>\r\n      </span>\r\n    </ng-template>\r\n  `,\r\n  encapsulation: ViewEncapsulation.None,\r\n  changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class VtsTransferSearchComponent implements OnChanges {\r\n  // region: fields\r\n\r\n  @Input() placeholder?: string;\r\n  @Input() value?: string;\r\n  @Input() disabled: boolean = false;\r\n\r\n  @Output() readonly valueChanged = new EventEmitter<string>();\r\n  @Output() readonly valueClear = new EventEmitter<void>();\r\n\r\n  // endregion\r\n\r\n  constructor(private cdr: ChangeDetectorRef) {}\r\n\r\n  _handle(): void {\r\n    this.valueChanged.emit(this.value);\r\n  }\r\n\r\n  _clear(): void {\r\n    if (this.disabled) {\r\n      return;\r\n    }\r\n    this.value = '';\r\n    this.valueClear.emit();\r\n  }\r\n\r\n  ngOnChanges(): void {\r\n    this.cdr.detectChanges();\r\n  }\r\n}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  Output,\r\n  TemplateRef,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\n\r\nimport { TransferDirection, TransferItem } from './interface';\r\n\r\n@Component({\r\n  selector: 'vts-transfer-list',\r\n  exportAs: 'vtsTransferList',\r\n  preserveWhitespaces: false,\r\n  template: `\r\n    <ng-template #defaultRenderList>\r\n      <ul *ngIf=\"stat.shownCount > 0\" class=\"vts-transfer-list-content\">\r\n        <li\r\n          *ngFor=\"let item of validData\"\r\n          (click)=\"onItemSelect(item)\"\r\n          class=\"vts-transfer-list-content-item\"\r\n          [ngClass]=\"{\r\n            'vts-transfer-list-content-item-disabled': disabled || item.disabled\r\n          }\"\r\n        >\r\n          <label\r\n            vts-checkbox\r\n            [vtsChecked]=\"item.checked\"\r\n            (vtsCheckedChange)=\"onItemSelect(item)\"\r\n            (click)=\"$event.stopPropagation()\"\r\n            [vtsDisabled]=\"disabled || item.disabled\"\r\n          >\r\n            <ng-container *ngIf=\"!render; else renderContainer\">\r\n              {{ item.title }}\r\n            </ng-container>\r\n            <ng-template #renderContainer></ng-template>\r\n            <!-- <ng-template\r\n              #renderContainer\r\n              [ngTemplateOutlet]=\"render\"\r\n              [ngTemplateOutletContext]=\"{ $implicit: item }\"\r\n            ></ng-template>\r\n            -->\r\n          </label>\r\n        </li>\r\n      </ul>\r\n      <div *ngIf=\"stat.shownCount === 0\" class=\"vts-transfer-list-body-not-found\">\r\n        <vts-embed-empty\r\n          [vtsComponentName]=\"'transfer'\"\r\n          [specificContent]=\"notFoundContent\"\r\n        ></vts-embed-empty>\r\n      </div>\r\n    </ng-template>\r\n    <div class=\"vts-transfer-list-header\">\r\n      <label\r\n        *ngIf=\"showSelectAll\"\r\n        vts-checkbox\r\n        [vtsChecked]=\"stat.checkAll\"\r\n        (vtsCheckedChange)=\"onItemSelectAll($event)\"\r\n        [vtsIndeterminate]=\"stat.checkHalf\"\r\n        [vtsDisabled]=\"stat.shownCount == 0 || disabled\"\r\n      ></label>\r\n      <span class=\"vts-transfer-list-header-selected\">\r\n        <span>\r\n          {{ (stat.checkCount > 0 ? stat.checkCount + '/' : '') + stat.shownCount }}\r\n          {{ validData.length > 1 ? itemsUnit : itemUnit }}\r\n        </span>\r\n        <span *ngIf=\"titleText\" class=\"vts-transfer-list-header-title\">\r\n          {{ titleText }}\r\n        </span>\r\n      </span>\r\n    </div>\r\n    <div\r\n      class=\"{{\r\n        showSearch\r\n          ? 'vts-transfer-list-body vts-transfer-list-body-with-search'\r\n          : 'vts-transfer-list-body'\r\n      }}\"\r\n      [ngClass]=\"{ 'vts-transfer__nodata': stat.shownCount === 0 }\"\r\n    >\r\n      <div *ngIf=\"showSearch\" class=\"vts-transfer-list-body-search-wrapper\">\r\n        <div\r\n          vts-transfer-search\r\n          (valueChanged)=\"handleFilter($event)\"\r\n          (valueClear)=\"handleClear()\"\r\n          [placeholder]=\"searchPlaceholder\"\r\n          [disabled]=\"disabled\"\r\n          [value]=\"filter\"\r\n        ></div>\r\n      </div>\r\n      <ng-container *ngIf=\"renderList; else defaultRenderList\">\r\n        <div class=\"vts-transfer-list-body-customize-wrapper\">\r\n          <ng-container></ng-container>\r\n          <!-- <ng-container\r\n            *ngTemplateOutlet=\"\r\n              renderList;\r\n              context: {\r\n                $implicit: validData,\r\n                direction: direction,\r\n                disabled: disabled,\r\n                onItemSelectAll: onItemSelectAll,\r\n                onItemSelect: onItemSelect,\r\n                stat: stat\r\n              }\r\n            \"\r\n          ></ng-container>\r\n            -->\r\n        </div>\r\n      </ng-container>\r\n    </div>\r\n    <div *ngIf=\"footer\" class=\"vts-transfer-list-footer\">\r\n      <ng-template></ng-template>\r\n      <!-- <ng-template\r\n        [ngTemplateOutlet]=\"footer\"\r\n        [ngTemplateOutletContext]=\"{ $implicit: direction }\"\r\n      ></ng-template>\r\n            --> \r\n    </div>\r\n  `,\r\n  encapsulation: ViewEncapsulation.None,\r\n  changeDetection: ChangeDetectionStrategy.OnPush,\r\n  host: {\r\n    '[class.vts-transfer-list-with-footer]': '!!footer'\r\n  }\r\n})\r\nexport class VtsTransferListComponent {\r\n  // #region fields\r\n\r\n  @Input() direction: TransferDirection = 'left';\r\n  @Input() titleText = '';\r\n  @Input() showSelectAll = true;\r\n\r\n  @Input() dataSource: TransferItem[] = [];\r\n\r\n  @Input() itemUnit: string | undefined = '';\r\n  @Input() itemsUnit: string | undefined = '';\r\n  @Input() filter = '';\r\n  @Input() disabled: boolean = false;\r\n  @Input() showSearch?: boolean;\r\n  @Input() searchPlaceholder?: string;\r\n  @Input() notFoundContent?: string;\r\n  @Input() filterOption?: (inputValue: string, item: TransferItem) => boolean;\r\n\r\n  @Input() renderList: TemplateRef<void> | null = null;\r\n  @Input() render: TemplateRef<void> | null = null;\r\n  @Input() footer: TemplateRef<void> | null = null;\r\n\r\n  // events\r\n  @Output()\r\n  readonly handleSelectAll: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n  @Output()\r\n  readonly handleSelect: EventEmitter<TransferItem> = new EventEmitter();\r\n  @Output() readonly filterChange: EventEmitter<{\r\n    direction: TransferDirection;\r\n    value: string;\r\n  }> = new EventEmitter();\r\n\r\n  stat = {\r\n    checkAll: false,\r\n    checkHalf: false,\r\n    checkCount: 0,\r\n    shownCount: 0\r\n  };\r\n\r\n  get validData(): TransferItem[] {\r\n    return this.dataSource.filter(w => !w.hide);\r\n  }\r\n\r\n  onItemSelect = (item: TransferItem) => {\r\n    if (this.disabled || item.disabled) {\r\n      return;\r\n    }\r\n    item.checked = !item.checked;\r\n    this.updateCheckStatus();\r\n    this.handleSelect.emit(item);\r\n  };\r\n\r\n  onItemSelectAll = (status: boolean) => {\r\n    this.dataSource.forEach(item => {\r\n      if (!item.disabled && !item.hide) {\r\n        item.checked = status;\r\n      }\r\n    });\r\n\r\n    this.updateCheckStatus();\r\n    this.handleSelectAll.emit(status);\r\n  };\r\n\r\n  private updateCheckStatus(): void {\r\n    const validCount = this.dataSource.filter(w => !w.disabled).length;\r\n    this.stat.checkCount = this.dataSource.filter(w => w.checked && !w.disabled).length;\r\n    this.stat.shownCount = this.validData.length;\r\n    this.stat.checkAll = validCount > 0 && validCount === this.stat.checkCount;\r\n    this.stat.checkHalf = this.stat.checkCount > 0 && !this.stat.checkAll;\r\n  }\r\n\r\n  // #endregion\r\n\r\n  // #region search\r\n\r\n  handleFilter(value: string): void {\r\n    this.filter = value;\r\n    this.dataSource.forEach(item => {\r\n      item.hide = value.length > 0 && !this.matchFilter(value, item);\r\n    });\r\n    this.stat.shownCount = this.validData.length;\r\n    this.filterChange.emit({ direction: this.direction, value });\r\n  }\r\n\r\n  handleClear(): void {\r\n    this.handleFilter('');\r\n  }\r\n\r\n  private matchFilter(text: string, item: TransferItem): boolean {\r\n    if (this.filterOption) {\r\n      return this.filterOption(text, item);\r\n    }\r\n    return item.title.includes(text);\r\n  }\r\n\r\n  // #endregion\r\n\r\n  constructor(private cdr: ChangeDetectorRef, private elementRef: ElementRef) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-transfer-list');\r\n  }\r\n\r\n  markForCheck(): void {\r\n    this.updateCheckStatus();\r\n    this.cdr.markForCheck();\r\n  }\r\n}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport { Direction, Directionality } from '@angular/cdk/bidi';\r\nimport {\r\n  ChangeDetectionStrategy,\r\n  ChangeDetectorRef,\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  OnChanges,\r\n  OnDestroy,\r\n  OnInit,\r\n  Optional,\r\n  Output,\r\n  QueryList,\r\n  SimpleChanges,\r\n  TemplateRef,\r\n  ViewChildren,\r\n  ViewEncapsulation\r\n} from '@angular/core';\r\nimport { BooleanInput, NgStyleInterface, VtsSafeAny } from '@vts-voffice/ng-vts/core/types';\r\nimport { InputBoolean, toArray } from '@vts-voffice/ng-vts/core/util';\r\nimport { VtsI18nService, VtsTransferI18nInterface } from '@vts-voffice/ng-vts/i18n';\r\n\r\nimport { Observable, of, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport {\r\n  TransferCanMove,\r\n  TransferChange,\r\n  TransferDirection,\r\n  TransferItem,\r\n  TransferSearchChange,\r\n  TransferSelectChange\r\n} from './interface';\r\nimport { VtsTransferListComponent } from './transfer-list.component';\r\n\r\n@Component({\r\n  selector: 'vts-transfer',\r\n  exportAs: 'vtsTransfer',\r\n  preserveWhitespaces: false,\r\n  template: `\r\n    <vts-transfer-list\r\n      class=\"vts-transfer-list\"\r\n      [ngStyle]=\"vtsListStyle\"\r\n      data-direction=\"left\"\r\n      direction=\"left\"\r\n      [titleText]=\"vtsTitles[0]\"\r\n      [showSelectAll]=\"vtsShowSelectAll\"\r\n      [dataSource]=\"leftDataSource\"\r\n      [filter]=\"leftFilter\"\r\n      [filterOption]=\"vtsCustomFilterFn\"\r\n      (filterChange)=\"handleFilterChange($event)\"\r\n      [renderList]=\"vtsRenderList && vtsRenderList[0]\"\r\n      [render]=\"vtsRender\"\r\n      [disabled]=\"vtsDisabled\"\r\n      [showSearch]=\"vtsShowSearch\"\r\n      [searchPlaceholder]=\"vtsSearchPlaceholder || locale?.searchPlaceholder\"\r\n      [notFoundContent]=\"vtsNoResult\"\r\n      [itemUnit]=\"vtsItemUnit || locale?.itemUnit\"\r\n      [itemsUnit]=\"vtsItemsUnit || locale?.itemsUnit\"\r\n      [footer]=\"vtsFooter\"\r\n      (handleSelect)=\"handleLeftSelect($event)\"\r\n      (handleSelectAll)=\"handleLeftSelectAll($event)\"\r\n    ></vts-transfer-list>\r\n    <div *ngIf=\"dir !== 'rtl'\" class=\"vts-transfer-operation\">\r\n      <button\r\n        vts-button\r\n        (click)=\"moveToLeft()\"\r\n        [disabled]=\"vtsDisabled || !leftActive\"\r\n        [vtsType]=\"'primary'\"\r\n        [vtsSize]=\"'sm'\"\r\n      >\r\n        <i vts-icon vtsType=\"ChevronLeft\"></i>\r\n        <span *ngIf=\"vtsOperations[1]\">{{ vtsOperations[1] }}</span>\r\n      </button>\r\n      <button\r\n        vts-button\r\n        (click)=\"moveToRight()\"\r\n        [disabled]=\"vtsDisabled || !rightActive\"\r\n        [vtsType]=\"'primary'\"\r\n        [vtsSize]=\"'sm'\"\r\n      >\r\n        <i vts-icon vtsType=\"ChevronRight\"></i>\r\n        <span *ngIf=\"vtsOperations[0]\">{{ vtsOperations[0] }}</span>\r\n      </button>\r\n    </div>\r\n    <div *ngIf=\"dir === 'rtl'\" class=\"vts-transfer-operation\">\r\n      <button\r\n        vts-button\r\n        (click)=\"moveToRight()\"\r\n        [disabled]=\"vtsDisabled || !rightActive\"\r\n        [vtsType]=\"'primary'\"\r\n        [vtsSize]=\"'sm'\"\r\n      >\r\n        <i vts-icon vtsType=\"ChevronLeft\"></i>\r\n        <span *ngIf=\"vtsOperations[0]\">{{ vtsOperations[0] }}</span>\r\n      </button>\r\n      <button\r\n        vts-button\r\n        (click)=\"moveToLeft()\"\r\n        [disabled]=\"vtsDisabled || !leftActive\"\r\n        [vtsType]=\"'primary'\"\r\n        [vtsSize]=\"'sm'\"\r\n      >\r\n        <i vts-icon vtsType=\"ChevronRight\"></i>\r\n        <span *ngIf=\"vtsOperations[1]\">{{ vtsOperations[1] }}</span>\r\n      </button>\r\n    </div>\r\n    <vts-transfer-list\r\n      class=\"vts-transfer-list\"\r\n      [ngStyle]=\"vtsListStyle\"\r\n      data-direction=\"right\"\r\n      direction=\"right\"\r\n      [titleText]=\"vtsTitles[1]\"\r\n      [showSelectAll]=\"vtsShowSelectAll\"\r\n      [dataSource]=\"rightDataSource\"\r\n      [filter]=\"rightFilter\"\r\n      [filterOption]=\"vtsCustomFilterFn\"\r\n      (filterChange)=\"handleFilterChange($event)\"\r\n      [renderList]=\"vtsRenderList && vtsRenderList[1]\"\r\n      [render]=\"vtsRender\"\r\n      [disabled]=\"vtsDisabled\"\r\n      [showSearch]=\"vtsShowSearch\"\r\n      [searchPlaceholder]=\"vtsSearchPlaceholder || locale?.searchPlaceholder\"\r\n      [notFoundContent]=\"vtsNoResult\"\r\n      [itemUnit]=\"vtsItemUnit || locale?.itemUnit\"\r\n      [itemsUnit]=\"vtsItemsUnit || locale?.itemsUnit\"\r\n      [footer]=\"vtsFooter\"\r\n      (handleSelect)=\"handleRightSelect($event)\"\r\n      (handleSelectAll)=\"handleRightSelectAll($event)\"\r\n    ></vts-transfer-list>\r\n  `,\r\n  host: {\r\n    '[class.vts-transfer-rtl]': `dir === 'rtl'`,\r\n    '[class.vts-transfer-disabled]': `vtsDisabled`,\r\n    '[class.vts-transfer-customize-list]': `vtsRenderList`\r\n  },\r\n  encapsulation: ViewEncapsulation.None,\r\n  changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class VtsTransferComponent implements OnInit, OnChanges, OnDestroy {\r\n  static ngAcceptInputType_vtsDisabled: BooleanInput;\r\n  static ngAcceptInputType_vtsShowSelectAll: BooleanInput;\r\n  static ngAcceptInputType_vtsShowSearch: BooleanInput;\r\n\r\n  private unsubscribe$ = new Subject<void>();\r\n\r\n  @ViewChildren(VtsTransferListComponent)\r\n  lists!: QueryList<VtsTransferListComponent>;\r\n  locale!: VtsTransferI18nInterface;\r\n\r\n  leftFilter = '';\r\n  rightFilter = '';\r\n  dir: Direction = 'ltr';\r\n\r\n  // #region fields\r\n\r\n  @Input() @InputBoolean() vtsDisabled = false;\r\n  @Input() vtsDataSource: TransferItem[] = [];\r\n  @Input() vtsTitles: string[] = ['', ''];\r\n  @Input() vtsOperations: string[] = [];\r\n  @Input() vtsListStyle: NgStyleInterface = {};\r\n  @Input() @InputBoolean() vtsShowSelectAll = true;\r\n  @Input() vtsItemUnit?: string;\r\n  @Input() vtsItemsUnit?: string;\r\n  @Input() vtsCanMove: (arg: TransferCanMove) => Observable<TransferItem[]> = (\r\n    arg: TransferCanMove\r\n  ) => of(arg.list);\r\n  @Input() vtsRenderList: Array<TemplateRef<VtsSafeAny> | null> | null = null;\r\n  @Input() vtsRender: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() vtsFooter: TemplateRef<VtsSafeAny> | null = null;\r\n  @Input() @InputBoolean() vtsShowSearch = false;\r\n  @Input() vtsCustomFilterFn?: (inputValue: string, item: TransferItem) => boolean;\r\n  @Input() vtsSearchPlaceholder?: string;\r\n  @Input() vtsNoResult?: string;\r\n  @Input() vtsTargetKeys: string[] = [];\r\n  @Input() vtsSelectedKeys: string[] = [];\r\n\r\n  // events\r\n  @Output() readonly vtsChange = new EventEmitter<TransferChange>();\r\n  @Output() readonly vtsSearchChange = new EventEmitter<TransferSearchChange>();\r\n  @Output() readonly vtsSelectChange = new EventEmitter<TransferSelectChange>();\r\n\r\n  // #endregion\r\n\r\n  // #region process data\r\n\r\n  // left\r\n  leftDataSource: TransferItem[] = [];\r\n\r\n  // right\r\n  rightDataSource: TransferItem[] = [];\r\n\r\n  private splitDataSource(): void {\r\n    this.leftDataSource = [];\r\n    this.rightDataSource = [];\r\n    this.vtsDataSource.forEach(record => {\r\n      if (record.direction === 'right') {\r\n        record.direction = 'right';\r\n        this.rightDataSource.push(record);\r\n      } else {\r\n        record.direction = 'left';\r\n        this.leftDataSource.push(record);\r\n      }\r\n    });\r\n  }\r\n\r\n  private getCheckedData(direction: TransferDirection): TransferItem[] {\r\n    return this[direction === 'left' ? 'leftDataSource' : 'rightDataSource'].filter(w => w.checked);\r\n  }\r\n\r\n  handleLeftSelectAll = (checked: boolean) => this.handleSelect('left', checked);\r\n  handleRightSelectAll = (checked: boolean) => this.handleSelect('right', checked);\r\n\r\n  handleLeftSelect = (item: TransferItem) => this.handleSelect('left', !!item.checked, item);\r\n  handleRightSelect = (item: TransferItem) => this.handleSelect('right', !!item.checked, item);\r\n\r\n  handleSelect(direction: TransferDirection, checked: boolean, item?: TransferItem): void {\r\n    const list = this.getCheckedData(direction);\r\n    this.updateOperationStatus(direction, list.length);\r\n    this.vtsSelectChange.emit({ direction, checked, list, item });\r\n  }\r\n\r\n  handleFilterChange(ret: { direction: TransferDirection; value: string }): void {\r\n    this.vtsSearchChange.emit(ret);\r\n  }\r\n\r\n  // #endregion\r\n\r\n  // #region operation\r\n\r\n  leftActive = false;\r\n  rightActive = false;\r\n\r\n  private updateOperationStatus(direction: TransferDirection, count?: number): void {\r\n    this[direction === 'right' ? 'leftActive' : 'rightActive'] =\r\n      (typeof count === 'undefined'\r\n        ? this.getCheckedData(direction).filter(w => !w.disabled).length\r\n        : count) > 0;\r\n  }\r\n\r\n  moveToLeft = () => this.moveTo('left');\r\n  moveToRight = () => this.moveTo('right');\r\n\r\n  moveTo(direction: TransferDirection): void {\r\n    const oppositeDirection = direction === 'left' ? 'right' : 'left';\r\n    this.updateOperationStatus(oppositeDirection, 0);\r\n    const datasource = direction === 'left' ? this.rightDataSource : this.leftDataSource;\r\n    const moveList = datasource.filter(item => item.checked === true && !item.disabled);\r\n    this.vtsCanMove({ direction, list: moveList }).subscribe(\r\n      newMoveList =>\r\n        this.truthMoveTo(\r\n          direction,\r\n          newMoveList.filter(i => !!i)\r\n        ),\r\n      () => moveList.forEach(i => (i.checked = false))\r\n    );\r\n  }\r\n\r\n  private truthMoveTo(direction: TransferDirection, list: TransferItem[]): void {\r\n    const oppositeDirection = direction === 'left' ? 'right' : 'left';\r\n    const datasource = direction === 'left' ? this.rightDataSource : this.leftDataSource;\r\n    const targetDatasource = direction === 'left' ? this.leftDataSource : this.rightDataSource;\r\n    for (const item of list) {\r\n      item.checked = false;\r\n      item.hide = false;\r\n      item.direction = direction;\r\n      datasource.splice(datasource.indexOf(item), 1);\r\n    }\r\n    targetDatasource.splice(0, 0, ...list);\r\n    this.updateOperationStatus(oppositeDirection);\r\n    this.vtsChange.emit({\r\n      from: oppositeDirection,\r\n      to: direction,\r\n      list\r\n    });\r\n    this.markForCheckAllList();\r\n  }\r\n\r\n  // #endregion\r\n\r\n  constructor(\r\n    private cdr: ChangeDetectorRef,\r\n    private i18n: VtsI18nService,\r\n    private elementRef: ElementRef,\r\n    @Optional() private directionality: Directionality\r\n  ) {\r\n    // TODO: move to host after View Engine deprecation\r\n    this.elementRef.nativeElement.classList.add('vts-transfer');\r\n  }\r\n\r\n  private markForCheckAllList(): void {\r\n    if (!this.lists) {\r\n      return;\r\n    }\r\n    this.lists.forEach(i => i.markForCheck());\r\n  }\r\n\r\n  private handleVtsTargetKeys(): void {\r\n    const keys = toArray(this.vtsTargetKeys);\r\n    const hasOwnKey = (e: TransferItem) => e.hasOwnProperty('key');\r\n    this.leftDataSource.forEach(e => {\r\n      if (hasOwnKey(e) && keys.indexOf(e.key) !== -1 && !e.disabled) {\r\n        e.checked = true;\r\n      }\r\n    });\r\n    this.moveToRight();\r\n  }\r\n\r\n  private handleVtsSelectedKeys(): void {\r\n    const keys = toArray(this.vtsSelectedKeys);\r\n    this.vtsDataSource.forEach(e => {\r\n      if (keys.indexOf(e.key) !== -1) {\r\n        e.checked = true;\r\n      }\r\n    });\r\n    const term = (ld: TransferItem) => ld.disabled === false && ld.checked === true;\r\n    this.rightActive = this.leftDataSource.some(term);\r\n    this.leftActive = this.rightDataSource.some(term);\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.i18n.localeChange.pipe(takeUntil(this.unsubscribe$)).subscribe(() => {\r\n      this.locale = this.i18n.getLocaleData('Transfer');\r\n      this.markForCheckAllList();\r\n    });\r\n\r\n    this.dir = this.directionality.value;\r\n    this.directionality.change\r\n      ?.pipe(takeUntil(this.unsubscribe$))\r\n      .subscribe((direction: Direction) => {\r\n        this.dir = direction;\r\n        this.cdr.detectChanges();\r\n      });\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    if (changes.vtsDataSource) {\r\n      this.splitDataSource();\r\n      this.updateOperationStatus('left');\r\n      this.updateOperationStatus('right');\r\n      this.cdr.detectChanges();\r\n      this.markForCheckAllList();\r\n    }\r\n    if (changes.vtsTargetKeys) {\r\n      this.handleVtsTargetKeys();\r\n    }\r\n    if (changes.vtsSelectedKeys) {\r\n      this.handleVtsSelectedKeys();\r\n    }\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.unsubscribe$.next();\r\n    this.unsubscribe$.complete();\r\n  }\r\n}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nimport { BidiModule } from '@angular/cdk/bidi';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { VtsButtonModule } from '@vts-voffice/ng-vts/button';\r\nimport { VtsCheckboxModule } from '@vts-voffice/ng-vts/checkbox';\r\nimport { VtsEmptyModule } from '@vts-voffice/ng-vts/empty';\r\nimport { VtsI18nModule } from '@vts-voffice/ng-vts/i18n';\r\nimport { VtsIconModule } from '@vts-voffice/ng-vts/icon';\r\nimport { VtsInputModule } from '@vts-voffice/ng-vts/input';\r\n\r\nimport { VtsTransferListComponent } from './transfer-list.component';\r\nimport { VtsTransferSearchComponent } from './transfer-search.component';\r\nimport { VtsTransferComponent } from './transfer.component';\r\n\r\n@NgModule({\r\n  imports: [\r\n    BidiModule,\r\n    CommonModule,\r\n    FormsModule,\r\n    VtsCheckboxModule,\r\n    VtsButtonModule,\r\n    VtsInputModule,\r\n    VtsI18nModule,\r\n    VtsIconModule,\r\n    VtsEmptyModule\r\n  ],\r\n  declarations: [VtsTransferComponent, VtsTransferListComponent, VtsTransferSearchComponent],\r\n  exports: [VtsTransferComponent]\r\n})\r\nexport class VtsTransferModule {}\r\n","/**\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\r\n */\r\n\r\nexport * from './interface';\r\nexport { VtsTransferListComponent } from './transfer-list.component';\r\nexport { VtsTransferSearchComponent } from './transfer-search.component';\r\nexport { VtsTransferComponent } from './transfer.component';\r\nexport { VtsTransferModule } from './transfer.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i4.VtsTransferSearchComponent","i1","i4","i5","i6","i7.VtsTransferListComponent"],"mappings":"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"}