{"version":3,"file":"yunzai-table-user.mjs","sources":["../../../../packages/bcs/yunzai-table-user/yunzai-table-user.service.ts","../../../../packages/bcs/yunzai-table-user/yunzai-table-user.component.ts","../../../../packages/bcs/yunzai-table-user/yunzai-table-user.module.ts","../../../../packages/bcs/yunzai-table-user/yunzai-table-user.ts"],"sourcesContent":["import { inject, Injectable } from '@angular/core';\nimport { catchError, map, Observable, throwError } from 'rxjs';\n\nimport { _HttpClient } from '@yelon/theme';\nimport { Page, YunzaiPageResponse, YunzaiResponse } from '@yelon/util';\n\nimport { YunzaiTableUser, YunzaiTableUserParam } from './yunzai-table-user.types';\n\n@Injectable()\nexport class YunzaiTableUserService {\n  private readonly http: _HttpClient = inject(_HttpClient);\n\n  users(page: Page<YunzaiTableUserParam>): Observable<YunzaiPageResponse<YunzaiTableUser>> {\n    return this.http.post(`/auth/baseUser/queryListForPage`, page).pipe(\n      map((response: YunzaiPageResponse<YunzaiTableUser>) => {\n        return response;\n      }),\n      catchError(e => {\n        return throwError(e);\n      })\n    );\n  }\n\n  usersByIds(ids: string[]): Observable<YunzaiTableUser[]> {\n    return this.http.post(`/auth/baseUser/users`, { userIds: ids }).pipe(\n      map((response: YunzaiResponse<YunzaiTableUser[]>) => {\n        return response.data;\n      })\n    );\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { AfterViewInit, Component, EventEmitter, inject, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { debounceTime, Subject, takeUntil } from 'rxjs';\n\nimport { STColumn, STComponent, STData, STModule, STRequestOptions } from '@yelon/abc/st';\nimport { SFComponent, SFSchema, SFValue, YelonFormModule } from '@yelon/form';\nimport { I18nPipe } from '@yelon/theme';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzCardModule } from 'ng-zorro-antd/card';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzEmptyModule } from 'ng-zorro-antd/empty';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzMenuModule } from 'ng-zorro-antd/menu';\n\nimport { YunzaiTableUserService } from './yunzai-table-user.service';\nimport {\n  YunzaiTableUser,\n  YunzaiTableUserParam,\n  YunzaiTableUserProps,\n  YunzaiTableUserRole,\n  YunzaiTableUserState\n} from './yunzai-table-user.types';\n\n@Component({\n  selector: 'yunzai-table-user',\n  template: `\n    @if (wrapped) {\n      <nz-card>\n        <ng-container [ngTemplateOutlet]=\"tableTpl\" />\n      </nz-card>\n    } @else {\n      <ng-container [ngTemplateOutlet]=\"tableTpl\" />\n    }\n\n    <ng-template #tableTpl>\n      <div class=\"yz-select-contacts-modal-right\" style=\"width:67%\">\n        <ng-container [ngTemplateOutlet]=\"form\" />\n        <st #st [scroll]=\"scroll\" [size]=\"'small'\" [bordered]=\"true\">\n          <ng-template st-row=\"checkbox_all\" let-item type=\"title\">\n            @if (!disableCheck) {\n              <label nz-checkbox (change)=\"onCheckedAll($event)\" [nzChecked]=\"isAllChecked()\"></label>\n            }\n          </ng-template>\n          <ng-template st-row=\"checkbox\" let-item let-index=\"index\">\n            @if (!disableCheck) {\n              <label nz-checkbox (change)=\"onCheckedItem(item)\" [nzChecked]=\"isChecked(item)\"></label>\n            }\n          </ng-template>\n          <ng-template st-row=\"rolesName\" let-item let-index=\"index\">{{ renderRoles(item.roles) }}</ng-template>\n        </st>\n      </div>\n      <div class=\"yz-select-contacts-modal-right\" style=\"width:33%\">\n        @if (list) {\n          <ng-container [ngTemplateOutlet]=\"listTpl\" />\n        }\n      </div>\n    </ng-template>\n\n    <ng-template #listTpl>\n      <div class=\"right-list-title\">\n        <h3>{{ 'table-user.checked' | i18n }}</h3>\n        @if (hasCheck) {\n          <div>\n            <a style=\"cursor: default;\">{{ checked.length }} </a>\n            <nz-divider nzType=\"vertical\" />\n            <a style=\"cursor: pointer\" href=\"javascript:;\" (click)=\"unCheckAll()\">{{ 'table-user.clear' | i18n }}</a>\n          </div>\n        }\n      </div>\n\n      <div class=\"yz-selected-contacts\">\n        @if (!hasCheck) {\n          <nz-empty style=\"margin: 90px auto;\" />\n        }\n        <ul nz-menu nzMode=\"inline\" class=\"yz-role-contacts\">\n          @for (item of checked; track checked) {\n            <li nz-menu-item class=\"people-item\">\n              <div class=\"people-item-right\">{{ item?.realName || '--' }}</div>\n              <span class=\"del-btn\" (click)=\"unCheck(item)\">\n                <nz-icon nzType=\"close\" nzTheme=\"outline\"></nz-icon>\n              </span>\n            </li>\n          }\n        </ul>\n      </div>\n    </ng-template>\n\n    <ng-template #form>\n      <sf layout=\"inline\" #sf [schema]=\"schema\" button=\"none\" />\n      <button nz-button nzType=\"primary\" (click)=\"onReset()\">{{ 'reset' | i18n }}</button>\n    </ng-template>\n  `,\n\n  providers: [YunzaiTableUserService],\n  imports: [\n    CommonModule,\n    YelonFormModule,\n    STModule,\n    I18nPipe,\n    NzCheckboxModule,\n    NzDividerModule,\n    NzButtonModule,\n    NzEmptyModule,\n    NzIconModule,\n    NzMenuModule,\n    NzCardModule\n  ]\n})\nexport class YunzaiTableUserComponent implements OnInit, AfterViewInit {\n  @ViewChild('st') st!: STComponent;\n  @ViewChild('sf') sf!: SFComponent;\n  @Input() props?: YunzaiTableUserProps;\n\n  @Output() readonly onChecked: EventEmitter<YunzaiTableUser[]> = new EventEmitter<YunzaiTableUser[]>();\n  private readonly service: YunzaiTableUserService = inject(YunzaiTableUserService);\n  private $destroy = new Subject();\n\n  state: YunzaiTableUserState = {\n    columns: [\n      { index: 'checkbox', render: 'checkbox', renderTitle: 'checkbox_all', width: 20, fixed: 'left' },\n      { index: 'no', type: 'no', title: { i18n: 'table-user.no' }, width: 50 },\n      { index: 'realName', title: { i18n: 'table-user.realName' }, width: 100 },\n      { index: 'userCode', title: { i18n: 'table-user.usercode' }, width: 100 },\n      { index: 'dept.deptName', title: { i18n: 'table-user.deptName' }, width: 100 },\n      { index: 'rolesName', render: 'rolesName', title: { i18n: 'table-user.roleName' }, width: 100 },\n      { index: 'idCard', title: { i18n: 'table-user.idcard' }, width: 100 }\n    ],\n    data: [],\n    dataBackup: [],\n    page: {\n      pageNum: 1,\n      pageSize: 30,\n      pageParam: {}\n    },\n    schema: {\n      properties: {\n        realName: {\n          type: 'string',\n          ui: {\n            widget: 'string',\n            i18n: 'realName'\n          }\n        },\n        userCode: {\n          type: 'string',\n          ui: {\n            i18n: 'userCode'\n          }\n        },\n        idCard: {\n          type: 'string',\n          ui: {\n            i18n: 'idCard'\n          }\n        }\n      }\n    },\n    check: {\n      data: []\n    }\n  };\n\n  get wrapped(): boolean {\n    return !!this.props?.wrap;\n  }\n\n  get schema(): SFSchema {\n    return this.state.schema;\n  }\n\n  get disableCheck(): boolean {\n    return !!this.props?.check?.disable;\n  }\n\n  get pageCheck(): boolean {\n    return !!this.props?.check?.pageCheck;\n  }\n\n  get hasCheck(): boolean {\n    return this.state.check.data.length > 0;\n  }\n\n  get list(): boolean {\n    return !!this.props?.list;\n  }\n\n  get checked(): YunzaiTableUser[] {\n    return this.state.check.data as YunzaiTableUser[];\n  }\n\n  get scroll(): {\n    x?: string | null;\n    y?: string | null;\n  } {\n    if (this.props && this.props.scroll) return this.props.scroll;\n    return { x: '1200px', y: '600px' };\n  }\n\n  get inSearch(): boolean {\n    const value = this.sf.value;\n    return Object.keys(value).length > 0;\n  }\n\n  get userIds(): string[] {\n    return this.props?.userIds || [];\n  }\n\n  ngOnInit(): void {\n    this.setupPropsToState();\n  }\n\n  ngAfterViewInit(): void {\n    this.setupTable();\n    this.hookSearch();\n  }\n\n  setupPropsToState(): void {\n    if (!this.props) return;\n    this.setupPropsData();\n    this.setupPropsPage();\n    this.setupPropsColumns();\n    this.setupPropsFilteredColumns();\n    this.setupPropsCustomColumns();\n    this.setupPropsChecked();\n  }\n\n  setupTable(): void {\n    if (!this.st) return;\n    this.setupTableData();\n    this.setupTablePage();\n    this.setupTableColumn();\n    this.setupTableRequest();\n    this.setupTableResponse();\n    this.onQuery();\n  }\n\n  setupPropsData(): void {\n    if (!this.props) return;\n    if (this.props.data && this.props.data.length > 0) {\n      this.state.data = this.props.data;\n      this.state.dataBackup = this.props.data;\n    } else {\n      this.state.data = '/auth/baseUser/queryListForPage';\n    }\n  }\n\n  setupPropsPage(): void {\n    if (!this.props || !this.props.page) return;\n    this.state.page = JSON.parse(JSON.stringify(this.props.page));\n  }\n\n  setupPropsColumns(): void {\n    if (!this.props || !this.props.additionalColumns) return;\n    let columns: STColumn[] = [];\n    if (this.props && this.props.additionalColumns) {\n      columns = columns.concat(this.props.additionalColumns);\n    }\n    columns = columns.concat(this.state.columns);\n    this.state.columns = columns;\n  }\n\n  setupPropsFilteredColumns(): void {\n    if (!this.props || !this.props.filteredColumns || this.props.filteredColumns.length === 0) return;\n    this.state.columns = this.state.columns.filter(col => !this.props?.filteredColumns?.includes(col.index as string));\n  }\n\n  setupPropsCustomColumns(): void {\n    if (!this.props || !this.props.customColumns || this.props.customColumns.length === 0) return;\n    const temp: STColumn[] = [];\n    this.state.columns.forEach(stateColumn => {\n      this.props?.customColumns?.forEach((customColumn: STColumn) => {\n        if (stateColumn.index === customColumn.index) {\n          temp.push(customColumn);\n        } else {\n          temp.push(stateColumn);\n        }\n      });\n    });\n    this.state.columns = [...temp];\n  }\n\n  setupPropsChecked(): void {\n    if (!this.props || !this.props.check || !this.props.check.data) return;\n    this.state.check.data = this.props.check.data;\n    if (this.userIds.length > 0) {\n      this.service.usersByIds(this.userIds).subscribe(users => {\n        this.state.check.data = this.state.check.data.concat(users);\n        this.onChecked.emit(this.state.check.data as any);\n      });\n    } else {\n      this.onChecked.emit(this.state.check.data as any);\n    }\n  }\n\n  setupTableData(): void {\n    if (!this.st) return;\n    this.st.data = this.state.data;\n  }\n\n  setupTablePage(): void {\n    if (!this.st) return;\n    this.st.pi = this.state.page.pageNum;\n    this.st.ps = this.state.page.pageSize;\n  }\n\n  setupTableColumn(): void {\n    if (!this.st) return;\n    this.st.resetColumns({ columns: this.state.columns });\n  }\n\n  setupTableRequest(): void {\n    if (!this.st) return;\n    this.st.req = {\n      allInBody: true,\n      method: 'POST',\n      reName: {\n        pi: 'pageNum',\n        ps: 'pageSize'\n      },\n      process: (requestOptions: STRequestOptions) => {\n        requestOptions.body.pageParam = this.state.page.pageParam;\n        return requestOptions;\n      }\n    };\n  }\n\n  setupTableResponse(): void {\n    if (!this.st) return;\n    this.st.res = {\n      reName: {\n        list: 'list',\n        total: 'total'\n      },\n      process: (data: STData[]) => {\n        if (!this.pageCheck) this.resetChecked();\n        return data;\n      }\n    };\n  }\n\n  resetChecked(): void {\n    if (!this.props || !this.props.check || !this.props.check.data) return;\n    this.state.check.data = this.props.check.data.map(id => {\n      return { userId: id };\n    });\n  }\n\n  onCheckedItem(data: YunzaiTableUser): void {\n    // remove\n    if (this.isChecked(data)) {\n      this.state.check.data = this.state.check.data.filter(u => u['userId'] !== data.userId);\n    }\n    // add\n    else if (!this.isChecked(data)) {\n      this.state.check.data = this.state.check.data.concat([data]);\n    }\n    this.onChecked.emit(this.state.check.data as YunzaiTableUser[]);\n  }\n\n  onCheckedAll(e: any): void {\n    const checkedAll = e.target.labels[0].innerHTML.includes('checked');\n    if (checkedAll) {\n      const data = this.st._data.filter(\n        std =>\n          !this.state.check.data.find(scd => {\n            return std['userId'] === scd['userId'];\n          })\n      );\n      this.state.check.data = this.state.check.data.concat(data);\n    } else {\n      this.state.check.data = this.state.check.data.filter(s => {\n        return !this.st._data.find(std => std['userId'] === s['userId']);\n      });\n    }\n    this.onChecked.emit(this.state.check.data as YunzaiTableUser[]);\n  }\n\n  isChecked(data: STData): boolean {\n    return !!this.state.check.data.find(u => u['userId'] === data['userId']);\n  }\n\n  isAllChecked(): boolean {\n    if (this.st._data.length > 0) {\n      return this.isArraySubset(this.st._data, this.state.check.data);\n    }\n    return false;\n  }\n\n  isArraySubset(subset: any[], superset: any[]): boolean {\n    return subset.every(item => superset.some(superItem => superItem.userId === item.userId));\n  }\n\n  renderRoles(roles: YunzaiTableUserRole[]): string {\n    return roles.map(r => r.roleName).join(',');\n  }\n\n  unCheck(user: YunzaiTableUser): void {\n    this.state.check.data = this.state.check.data.filter(d => d['userId'] != user.userId);\n    this.onChecked.emit(this.state.check.data as YunzaiTableUser[]);\n  }\n\n  unCheckAll(): void {\n    this.state.check.data = [];\n    this.onChecked.emit(this.state.check.data as YunzaiTableUser[]);\n  }\n\n  hookSearch(): void {\n    this.sf.formValueChange.pipe(takeUntil(this.$destroy), debounceTime(1000)).subscribe(event => {\n      const { value } = event;\n      this.onSearch(value);\n    });\n  }\n\n  onSearch(value: SFValue = {}): void {\n    if (!this.inSearch) return;\n    if (Array.isArray(this.state.data) && Array.isArray(this.state.dataBackup)) {\n      let tempData = this.state.dataBackup;\n      if (value['realName']) tempData = tempData.filter(d => d.realName.includes(value['realName']));\n      if (value['idCard']) tempData = this.state.dataBackup.filter(d => (d.idCard = value['idCard']));\n      if (value['userCode']) tempData = this.state.dataBackup.filter(d => (d.userCode = value['userCode']));\n      this.st.data = tempData;\n      this.st.reload();\n    }\n    if (typeof this.state.data === 'string') {\n      this.state.page.pageParam = { ...this.state.page.pageParam, ...value };\n      this.onQuery();\n    }\n  }\n\n  onReset(): void {\n    this.sf.reset();\n    this.state.page.pageParam = {};\n    this.onQuery();\n  }\n\n  public onQuery(): void {\n    if (!this.st) return;\n    if (Array.isArray(this.state.data) && Array.isArray(this.state.dataBackup)) {\n      this.st.data = this.state.dataBackup;\n    }\n    this.st.reload();\n  }\n\n  public setTableParam(param: YunzaiTableUserParam): void {\n    if (this.inSearch) {\n      this.state.page.pageParam = { ...param, ...this.sf.value };\n      this.onSearch(this.sf.value);\n    }\n    if (!this.inSearch) {\n      this.state.page.pageParam = param;\n      this.setupTable();\n    }\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { STModule } from '@yelon/abc/st';\nimport { YelonFormModule } from '@yelon/form';\nimport { I18nPipe } from '@yelon/theme';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzCardModule } from 'ng-zorro-antd/card';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzEmptyModule } from 'ng-zorro-antd/empty';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzMenuModule } from 'ng-zorro-antd/menu';\n\nimport { YunzaiTableUserComponent } from './yunzai-table-user.component';\nimport { YunzaiTableUserService } from './yunzai-table-user.service';\n\nexport const COMPONENTS = [YunzaiTableUserComponent];\n\n@NgModule({\n  imports: [\n    CommonModule,\n    YelonFormModule,\n    STModule,\n    I18nPipe,\n    NzCheckboxModule,\n    NzDividerModule,\n    NzButtonModule,\n    NzEmptyModule,\n    NzIconModule,\n    NzMenuModule,\n    NzCardModule,\n    ...COMPONENTS\n  ],\n  providers: [YunzaiTableUserService],\n  exports: COMPONENTS\n})\nexport class YunzaiTableUserModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}