var R = (l, n, e) => new Promise((i, a) => {
  var s = (d) => {
    try {
      f(e.next(d));
    } catch (h) {
      a(h);
    }
  }, m = (d) => {
    try {
      f(e.throw(d));
    } catch (h) {
      a(h);
    }
  }, f = (d) => d.done ? i(d.value) : Promise.resolve(d.value).then(s, m);
  f((e = e.apply(l, n)).next());
});
import { defineComponent as w, createVNode as N, h as V, resolveComponent as S, resolveDirective as A, openBlock as t, createElementBlock as o, createElementVNode as c, toDisplayString as I, Fragment as j, renderList as M, withDirectives as _, createBlock as g, withCtx as b, resolveDynamicComponent as W, createCommentVNode as r, createTextVNode as $, vShow as q, renderSlot as y, normalizeStyle as P, createSlots as z } from "vue";
import { _ as X, d as K, l as G, U as J, a9 as Q } from "./index2.js";
import { u as Y, a as Z, g as ll, C as el, F as nl, T as F, S as ul, b as al, c as sl, d as tl, E as il } from "./Table.js";
const ol = w({
  compatConfig: {
    MODE: 3
  },
  name: "ATableSummaryRow",
  setup(l, n) {
    let {
      slots: e
    } = n;
    return () => {
      var i;
      return N("tr", null, [(i = e.default) === null || i === void 0 ? void 0 : i.call(e)]);
    };
  }
}), rl = w({
  name: "ATableSummaryCell",
  props: ["index", "colSpan", "rowSpan", "align"],
  setup(l, n) {
    let {
      attrs: e,
      slots: i
    } = n;
    const a = Y(), s = Z();
    return () => {
      const {
        index: m,
        colSpan: f = 1,
        rowSpan: d,
        align: h
      } = l, {
        prefixCls: T,
        direction: k
      } = a, {
        scrollColumnIndex: v,
        stickyOffsets: D,
        flattenColumns: u
      } = s, C = m + f - 1 + 1 === v ? f + 1 : f, H = ll(m, m + C - 1, u, D, k);
      return N(el, X({
        class: e.class,
        index: m,
        component: "td",
        prefixCls: T,
        record: null,
        dataIndex: null,
        align: h,
        colSpan: C,
        rowSpan: d,
        customRender: () => {
          var x;
          return (x = i.default) === null || x === void 0 ? void 0 : x.call(i);
        }
      }, H), null);
    };
  }
}), O = w({
  name: "ATableColumn",
  slots: Object,
  render() {
    return null;
  }
}), U = w({
  name: "ATableColumnGroup",
  slots: Object,
  __ANT_TABLE_COLUMN_GROUP: !0,
  render() {
    return null;
  }
}), E = ol, L = rl, B = K(nl, {
  Cell: L,
  Row: E,
  name: "ATableSummary"
}), dl = K(F, {
  SELECTION_ALL: ul,
  SELECTION_INVERT: al,
  SELECTION_NONE: sl,
  SELECTION_COLUMN: tl,
  EXPAND_COLUMN: il,
  Column: O,
  ColumnGroup: U,
  Summary: B,
  install: (l) => (l.component(B.name, B), l.component(L.name, L), l.component(E.name, E), l.component(F.name, F), l.component(O.name, O), l.component(U.name, U), l)
}), cl = {
  name: "ListTableTreeLayout",
  components: {},
  data() {
    return {
      _: this,
      importLoading: !1,
      exportLoading: !1,
      importVisible: !1,
      isFilter: !1,
      isMoreFilter: !1,
      layoutHeight: 0,
      tableScrollPx: 0,
      spinning: !1,
      sideWidth: 232,
      selectedRowKeys: [],
      renderColumns: [],
      startX: 0,
      dragWidth: 0,
      renderButtons: [],
      iconMap: {
        add: "PlusCircleOutlined",
        edit: "FormOutlined",
        delete: "DeleteOutlined",
        remove: "DeleteOutlined",
        import: "UploadOutlined",
        export: "DownloadOutlined",
        assign: "ClusterOutlined",
        execute: "PlayOircleOutlined",
        pause: "PauseOircleOutlined",
        resume: "PoweroffOutlined",
        approve: "HighlightOutlined",
        setting: "SettingOutlined",
        TopOfType: "VerticalAlignTopOutlined",
        TOP: "VerticalAlignTopOutlined",
        synchronize: "SyncOutlined"
      },
      list: [
        {
          id: "05014c3403504200a8ba0aef78da778b",
          createBy: {
            id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
            createBy: null,
            createDate: null,
            updateBy: null,
            updateDate: null,
            remarks: null,
            delFlag: null,
            sqlMap: {},
            title: null,
            key: null,
            value: null,
            profilesDbType: null,
            router: null,
            client: null,
            searchValue: null,
            no: null,
            campusName: null,
            name: null,
            phone: null,
            mobile: null,
            email: null,
            loginName: null,
            accountStatus: null,
            password: null,
            officeCode: null,
            positionName: null,
            roleName: null,
            loginFlag: null,
            userType: null,
            userTypeName: null,
            createDateStr: null,
            avatar: null,
            fileIds: null,
            roleIds: null,
            officeId: null,
            positionId: null,
            deputyOfficePositionIds: null,
            userOfficePositions: null,
            roles: null,
            companys: null,
            depts: null,
            positions: null,
            campusId: null,
            unitId: null,
            parentIds: null,
            campusIds: null,
            unitIds: null,
            certNo: null,
            isUpdatedPassword: null,
            employeeId: null,
            startTime: null,
            endTime: null,
            unitName: null,
            className: null,
            cover: null,
            campusIdOrUnitId: null,
            isEnabledPassPolicy: null,
            isEnabledPolicyUpdatePassword: null,
            isPasswordPolicyExpires: null,
            officeIds: null,
            positionIds: null,
            userTypes: null,
            thirdUserId: null,
            cardTypeName: null,
            sex: null,
            mainPositionName: null,
            deputyPositionNames: null,
            superiorLeaderName: null,
            majorName: null,
            gradeName: null,
            extendFieldValues: null,
            isAssignUser: null,
            configName: null,
            admin: !1,
            isNewRecord: !1
          },
          createDate: "2023-05-26 14:49:33",
          updateBy: {
            id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
            createBy: null,
            createDate: null,
            updateBy: null,
            updateDate: null,
            remarks: null,
            delFlag: null,
            sqlMap: {},
            title: null,
            key: null,
            value: null,
            profilesDbType: null,
            router: null,
            client: null,
            searchValue: null,
            no: "admin",
            campusName: null,
            name: "内置管理员",
            phone: null,
            mobile: null,
            email: null,
            loginName: null,
            accountStatus: null,
            password: null,
            officeCode: null,
            positionName: null,
            roleName: null,
            loginFlag: null,
            userType: null,
            userTypeName: null,
            createDateStr: null,
            avatar: null,
            fileIds: null,
            roleIds: null,
            officeId: null,
            positionId: null,
            deputyOfficePositionIds: null,
            userOfficePositions: null,
            roles: null,
            companys: null,
            depts: null,
            positions: null,
            campusId: null,
            unitId: null,
            parentIds: null,
            campusIds: null,
            unitIds: null,
            certNo: null,
            isUpdatedPassword: null,
            employeeId: null,
            startTime: null,
            endTime: null,
            unitName: null,
            className: null,
            cover: null,
            campusIdOrUnitId: null,
            isEnabledPassPolicy: null,
            isEnabledPolicyUpdatePassword: null,
            isPasswordPolicyExpires: null,
            officeIds: null,
            positionIds: null,
            userTypes: null,
            thirdUserId: null,
            cardTypeName: null,
            sex: null,
            mainPositionName: null,
            deputyPositionNames: null,
            superiorLeaderName: null,
            majorName: null,
            gradeName: null,
            extendFieldValues: null,
            isAssignUser: null,
            configName: null,
            admin: !1,
            isNewRecord: !1
          },
          updateDate: "2023-05-26 14:49:33",
          remarks: null,
          delFlag: !1,
          sqlMap: {},
          title: "hy测试目录",
          key: "05014c3403504200a8ba0aef78da778b",
          value: "05014c3403504200a8ba0aef78da778b",
          profilesDbType: null,
          router: null,
          client: null,
          searchValue: null,
          parent: {
            id: "0",
            createBy: null,
            createDate: null,
            updateBy: null,
            updateDate: null,
            remarks: null,
            delFlag: null,
            sqlMap: {},
            title: null,
            key: "0",
            value: "0",
            profilesDbType: null,
            router: null,
            client: null,
            searchValue: null,
            parent: null,
            parentCode: null,
            code: null,
            name: null,
            sort: null,
            fullName: null,
            parentIds: null,
            depth: null,
            dlrSort: null,
            isLeaf: null,
            children: null,
            disabled: null,
            fullNames: null,
            setNum: 0,
            isNewRecord: !1
          },
          parentCode: null,
          code: "gtcsml",
          name: "hy测试目录",
          sort: 1,
          fullName: "hy测试目录",
          parentIds: "0,",
          depth: 1,
          dlrSort: null,
          isLeaf: !1,
          children: [
            {
              id: "e879adca386046f2baf85aabc1c233c1",
              createBy: {
                id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                createBy: null,
                createDate: null,
                updateBy: null,
                updateDate: null,
                remarks: null,
                delFlag: null,
                sqlMap: {},
                title: null,
                key: null,
                value: null,
                profilesDbType: null,
                router: null,
                client: null,
                searchValue: null,
                no: null,
                campusName: null,
                name: null,
                phone: null,
                mobile: null,
                email: null,
                loginName: null,
                accountStatus: null,
                password: null,
                officeCode: null,
                positionName: null,
                roleName: null,
                loginFlag: null,
                userType: null,
                userTypeName: null,
                createDateStr: null,
                avatar: null,
                fileIds: null,
                roleIds: null,
                officeId: null,
                positionId: null,
                deputyOfficePositionIds: null,
                userOfficePositions: null,
                roles: null,
                companys: null,
                depts: null,
                positions: null,
                campusId: null,
                unitId: null,
                parentIds: null,
                campusIds: null,
                unitIds: null,
                certNo: null,
                isUpdatedPassword: null,
                employeeId: null,
                startTime: null,
                endTime: null,
                unitName: null,
                className: null,
                cover: null,
                campusIdOrUnitId: null,
                isEnabledPassPolicy: null,
                isEnabledPolicyUpdatePassword: null,
                isPasswordPolicyExpires: null,
                officeIds: null,
                positionIds: null,
                userTypes: null,
                thirdUserId: null,
                cardTypeName: null,
                sex: null,
                mainPositionName: null,
                deputyPositionNames: null,
                superiorLeaderName: null,
                majorName: null,
                gradeName: null,
                extendFieldValues: null,
                isAssignUser: null,
                configName: null,
                admin: !1,
                isNewRecord: !1
              },
              createDate: "2023-05-26 14:50:21",
              updateBy: {
                id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                createBy: null,
                createDate: null,
                updateBy: null,
                updateDate: null,
                remarks: null,
                delFlag: null,
                sqlMap: {},
                title: null,
                key: null,
                value: null,
                profilesDbType: null,
                router: null,
                client: null,
                searchValue: null,
                no: "admin",
                campusName: null,
                name: "内置管理员",
                phone: null,
                mobile: null,
                email: null,
                loginName: null,
                accountStatus: null,
                password: null,
                officeCode: null,
                positionName: null,
                roleName: null,
                loginFlag: null,
                userType: null,
                userTypeName: null,
                createDateStr: null,
                avatar: null,
                fileIds: null,
                roleIds: null,
                officeId: null,
                positionId: null,
                deputyOfficePositionIds: null,
                userOfficePositions: null,
                roles: null,
                companys: null,
                depts: null,
                positions: null,
                campusId: null,
                unitId: null,
                parentIds: null,
                campusIds: null,
                unitIds: null,
                certNo: null,
                isUpdatedPassword: null,
                employeeId: null,
                startTime: null,
                endTime: null,
                unitName: null,
                className: null,
                cover: null,
                campusIdOrUnitId: null,
                isEnabledPassPolicy: null,
                isEnabledPolicyUpdatePassword: null,
                isPasswordPolicyExpires: null,
                officeIds: null,
                positionIds: null,
                userTypes: null,
                thirdUserId: null,
                cardTypeName: null,
                sex: null,
                mainPositionName: null,
                deputyPositionNames: null,
                superiorLeaderName: null,
                majorName: null,
                gradeName: null,
                extendFieldValues: null,
                isAssignUser: null,
                configName: null,
                admin: !1,
                isNewRecord: !1
              },
              updateDate: "2023-05-26 14:50:21",
              remarks: null,
              delFlag: !1,
              sqlMap: {},
              title: "二级目录1",
              key: "e879adca386046f2baf85aabc1c233c1",
              value: "e879adca386046f2baf85aabc1c233c1",
              profilesDbType: null,
              router: null,
              client: null,
              searchValue: null,
              parent: {
                id: "05014c3403504200a8ba0aef78da778b",
                createBy: null,
                createDate: null,
                updateBy: null,
                updateDate: null,
                remarks: null,
                delFlag: null,
                sqlMap: {},
                title: "hy测试目录",
                key: "05014c3403504200a8ba0aef78da778b",
                value: "05014c3403504200a8ba0aef78da778b",
                profilesDbType: null,
                router: null,
                client: null,
                searchValue: null,
                parent: null,
                parentCode: null,
                code: null,
                name: "hy测试目录",
                sort: null,
                fullName: null,
                parentIds: null,
                depth: null,
                dlrSort: null,
                isLeaf: null,
                children: null,
                disabled: null,
                fullNames: null,
                setNum: 0,
                isNewRecord: !1
              },
              parentCode: "gtcsml",
              code: "hy21",
              name: "二级目录1",
              sort: 10,
              fullName: "hy测试目录/二级目录1",
              parentIds: "0,05014c3403504200a8ba0aef78da778b,",
              depth: 2,
              dlrSort: null,
              isLeaf: !1,
              children: [
                {
                  id: "e7071697ff01491da28bf88e143409b0",
                  createBy: {
                    id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                    createBy: null,
                    createDate: null,
                    updateBy: null,
                    updateDate: null,
                    remarks: null,
                    delFlag: null,
                    sqlMap: {},
                    title: null,
                    key: null,
                    value: null,
                    profilesDbType: null,
                    router: null,
                    client: null,
                    searchValue: null,
                    no: null,
                    campusName: null,
                    name: null,
                    phone: null,
                    mobile: null,
                    email: null,
                    loginName: null,
                    accountStatus: null,
                    password: null,
                    officeCode: null,
                    positionName: null,
                    roleName: null,
                    loginFlag: null,
                    userType: null,
                    userTypeName: null,
                    createDateStr: null,
                    avatar: null,
                    fileIds: null,
                    roleIds: null,
                    officeId: null,
                    positionId: null,
                    deputyOfficePositionIds: null,
                    userOfficePositions: null,
                    roles: null,
                    companys: null,
                    depts: null,
                    positions: null,
                    campusId: null,
                    unitId: null,
                    parentIds: null,
                    campusIds: null,
                    unitIds: null,
                    certNo: null,
                    isUpdatedPassword: null,
                    employeeId: null,
                    startTime: null,
                    endTime: null,
                    unitName: null,
                    className: null,
                    cover: null,
                    campusIdOrUnitId: null,
                    isEnabledPassPolicy: null,
                    isEnabledPolicyUpdatePassword: null,
                    isPasswordPolicyExpires: null,
                    officeIds: null,
                    positionIds: null,
                    userTypes: null,
                    thirdUserId: null,
                    cardTypeName: null,
                    sex: null,
                    mainPositionName: null,
                    deputyPositionNames: null,
                    superiorLeaderName: null,
                    majorName: null,
                    gradeName: null,
                    extendFieldValues: null,
                    isAssignUser: null,
                    configName: null,
                    admin: !1,
                    isNewRecord: !1
                  },
                  createDate: "2023-05-26 14:51:14",
                  updateBy: {
                    id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                    createBy: null,
                    createDate: null,
                    updateBy: null,
                    updateDate: null,
                    remarks: null,
                    delFlag: null,
                    sqlMap: {},
                    title: null,
                    key: null,
                    value: null,
                    profilesDbType: null,
                    router: null,
                    client: null,
                    searchValue: null,
                    no: "admin",
                    campusName: null,
                    name: "内置管理员",
                    phone: null,
                    mobile: null,
                    email: null,
                    loginName: null,
                    accountStatus: null,
                    password: null,
                    officeCode: null,
                    positionName: null,
                    roleName: null,
                    loginFlag: null,
                    userType: null,
                    userTypeName: null,
                    createDateStr: null,
                    avatar: null,
                    fileIds: null,
                    roleIds: null,
                    officeId: null,
                    positionId: null,
                    deputyOfficePositionIds: null,
                    userOfficePositions: null,
                    roles: null,
                    companys: null,
                    depts: null,
                    positions: null,
                    campusId: null,
                    unitId: null,
                    parentIds: null,
                    campusIds: null,
                    unitIds: null,
                    certNo: null,
                    isUpdatedPassword: null,
                    employeeId: null,
                    startTime: null,
                    endTime: null,
                    unitName: null,
                    className: null,
                    cover: null,
                    campusIdOrUnitId: null,
                    isEnabledPassPolicy: null,
                    isEnabledPolicyUpdatePassword: null,
                    isPasswordPolicyExpires: null,
                    officeIds: null,
                    positionIds: null,
                    userTypes: null,
                    thirdUserId: null,
                    cardTypeName: null,
                    sex: null,
                    mainPositionName: null,
                    deputyPositionNames: null,
                    superiorLeaderName: null,
                    majorName: null,
                    gradeName: null,
                    extendFieldValues: null,
                    isAssignUser: null,
                    configName: null,
                    admin: !1,
                    isNewRecord: !1
                  },
                  updateDate: "2023-05-26 14:53:11",
                  remarks: null,
                  delFlag: !1,
                  sqlMap: {},
                  title: "目录3-1",
                  key: "e7071697ff01491da28bf88e143409b0",
                  value: "e7071697ff01491da28bf88e143409b0",
                  profilesDbType: null,
                  router: null,
                  client: null,
                  searchValue: null,
                  parent: {
                    id: "e879adca386046f2baf85aabc1c233c1",
                    createBy: null,
                    createDate: null,
                    updateBy: null,
                    updateDate: null,
                    remarks: null,
                    delFlag: null,
                    sqlMap: {},
                    title: "二级目录1",
                    key: "e879adca386046f2baf85aabc1c233c1",
                    value: "e879adca386046f2baf85aabc1c233c1",
                    profilesDbType: null,
                    router: null,
                    client: null,
                    searchValue: null,
                    parent: null,
                    parentCode: null,
                    code: null,
                    name: "二级目录1",
                    sort: null,
                    fullName: null,
                    parentIds: null,
                    depth: null,
                    dlrSort: null,
                    isLeaf: null,
                    children: null,
                    disabled: null,
                    fullNames: null,
                    setNum: 0,
                    isNewRecord: !1
                  },
                  parentCode: "hy21",
                  code: "ml4",
                  name: "目录3-1",
                  sort: 10,
                  fullName: "hy测试目录/二级目录1/目录3-1",
                  parentIds: "0,05014c3403504200a8ba0aef78da778b,e879adca386046f2baf85aabc1c233c1,",
                  depth: 3,
                  dlrSort: null,
                  isLeaf: !0,
                  children: null,
                  disabled: null,
                  fullNames: null,
                  setNum: 1,
                  isNewRecord: !1
                },
                {
                  id: "2e2a69ef7fdb4ea6910f79673a826966",
                  createBy: {
                    id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                    createBy: null,
                    createDate: null,
                    updateBy: null,
                    updateDate: null,
                    remarks: null,
                    delFlag: null,
                    sqlMap: {},
                    title: null,
                    key: null,
                    value: null,
                    profilesDbType: null,
                    router: null,
                    client: null,
                    searchValue: null,
                    no: null,
                    campusName: null,
                    name: null,
                    phone: null,
                    mobile: null,
                    email: null,
                    loginName: null,
                    accountStatus: null,
                    password: null,
                    officeCode: null,
                    positionName: null,
                    roleName: null,
                    loginFlag: null,
                    userType: null,
                    userTypeName: null,
                    createDateStr: null,
                    avatar: null,
                    fileIds: null,
                    roleIds: null,
                    officeId: null,
                    positionId: null,
                    deputyOfficePositionIds: null,
                    userOfficePositions: null,
                    roles: null,
                    companys: null,
                    depts: null,
                    positions: null,
                    campusId: null,
                    unitId: null,
                    parentIds: null,
                    campusIds: null,
                    unitIds: null,
                    certNo: null,
                    isUpdatedPassword: null,
                    employeeId: null,
                    startTime: null,
                    endTime: null,
                    unitName: null,
                    className: null,
                    cover: null,
                    campusIdOrUnitId: null,
                    isEnabledPassPolicy: null,
                    isEnabledPolicyUpdatePassword: null,
                    isPasswordPolicyExpires: null,
                    officeIds: null,
                    positionIds: null,
                    userTypes: null,
                    thirdUserId: null,
                    cardTypeName: null,
                    sex: null,
                    mainPositionName: null,
                    deputyPositionNames: null,
                    superiorLeaderName: null,
                    majorName: null,
                    gradeName: null,
                    extendFieldValues: null,
                    isAssignUser: null,
                    configName: null,
                    admin: !1,
                    isNewRecord: !1
                  },
                  createDate: "2023-05-26 14:51:35",
                  updateBy: {
                    id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                    createBy: null,
                    createDate: null,
                    updateBy: null,
                    updateDate: null,
                    remarks: null,
                    delFlag: null,
                    sqlMap: {},
                    title: null,
                    key: null,
                    value: null,
                    profilesDbType: null,
                    router: null,
                    client: null,
                    searchValue: null,
                    no: "admin",
                    campusName: null,
                    name: "内置管理员",
                    phone: null,
                    mobile: null,
                    email: null,
                    loginName: null,
                    accountStatus: null,
                    password: null,
                    officeCode: null,
                    positionName: null,
                    roleName: null,
                    loginFlag: null,
                    userType: null,
                    userTypeName: null,
                    createDateStr: null,
                    avatar: null,
                    fileIds: null,
                    roleIds: null,
                    officeId: null,
                    positionId: null,
                    deputyOfficePositionIds: null,
                    userOfficePositions: null,
                    roles: null,
                    companys: null,
                    depts: null,
                    positions: null,
                    campusId: null,
                    unitId: null,
                    parentIds: null,
                    campusIds: null,
                    unitIds: null,
                    certNo: null,
                    isUpdatedPassword: null,
                    employeeId: null,
                    startTime: null,
                    endTime: null,
                    unitName: null,
                    className: null,
                    cover: null,
                    campusIdOrUnitId: null,
                    isEnabledPassPolicy: null,
                    isEnabledPolicyUpdatePassword: null,
                    isPasswordPolicyExpires: null,
                    officeIds: null,
                    positionIds: null,
                    userTypes: null,
                    thirdUserId: null,
                    cardTypeName: null,
                    sex: null,
                    mainPositionName: null,
                    deputyPositionNames: null,
                    superiorLeaderName: null,
                    majorName: null,
                    gradeName: null,
                    extendFieldValues: null,
                    isAssignUser: null,
                    configName: null,
                    admin: !1,
                    isNewRecord: !1
                  },
                  updateDate: "2023-05-26 14:52:00",
                  remarks: null,
                  delFlag: !1,
                  sqlMap: {},
                  title: "目录 3",
                  key: "2e2a69ef7fdb4ea6910f79673a826966",
                  value: "2e2a69ef7fdb4ea6910f79673a826966",
                  profilesDbType: null,
                  router: null,
                  client: null,
                  searchValue: null,
                  parent: {
                    id: "e879adca386046f2baf85aabc1c233c1",
                    createBy: null,
                    createDate: null,
                    updateBy: null,
                    updateDate: null,
                    remarks: null,
                    delFlag: null,
                    sqlMap: {},
                    title: "二级目录1",
                    key: "e879adca386046f2baf85aabc1c233c1",
                    value: "e879adca386046f2baf85aabc1c233c1",
                    profilesDbType: null,
                    router: null,
                    client: null,
                    searchValue: null,
                    parent: null,
                    parentCode: null,
                    code: null,
                    name: "二级目录1",
                    sort: null,
                    fullName: null,
                    parentIds: null,
                    depth: null,
                    dlrSort: null,
                    isLeaf: null,
                    children: null,
                    disabled: null,
                    fullNames: null,
                    setNum: 0,
                    isNewRecord: !1
                  },
                  parentCode: "hy21",
                  code: "ml3",
                  name: "目录 3",
                  sort: 20,
                  fullName: "hy测试目录/二级目录1/目录 3",
                  parentIds: "0,05014c3403504200a8ba0aef78da778b,e879adca386046f2baf85aabc1c233c1,",
                  depth: 3,
                  dlrSort: null,
                  isLeaf: !0,
                  children: null,
                  disabled: null,
                  fullNames: null,
                  setNum: 0,
                  isNewRecord: !1
                }
              ],
              disabled: null,
              fullNames: null,
              setNum: 0,
              isNewRecord: !1
            },
            {
              id: "b75fbf1235af489099429ef29d6dd794",
              createBy: {
                id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                createBy: null,
                createDate: null,
                updateBy: null,
                updateDate: null,
                remarks: null,
                delFlag: null,
                sqlMap: {},
                title: null,
                key: null,
                value: null,
                profilesDbType: null,
                router: null,
                client: null,
                searchValue: null,
                no: null,
                campusName: null,
                name: null,
                phone: null,
                mobile: null,
                email: null,
                loginName: null,
                accountStatus: null,
                password: null,
                officeCode: null,
                positionName: null,
                roleName: null,
                loginFlag: null,
                userType: null,
                userTypeName: null,
                createDateStr: null,
                avatar: null,
                fileIds: null,
                roleIds: null,
                officeId: null,
                positionId: null,
                deputyOfficePositionIds: null,
                userOfficePositions: null,
                roles: null,
                companys: null,
                depts: null,
                positions: null,
                campusId: null,
                unitId: null,
                parentIds: null,
                campusIds: null,
                unitIds: null,
                certNo: null,
                isUpdatedPassword: null,
                employeeId: null,
                startTime: null,
                endTime: null,
                unitName: null,
                className: null,
                cover: null,
                campusIdOrUnitId: null,
                isEnabledPassPolicy: null,
                isEnabledPolicyUpdatePassword: null,
                isPasswordPolicyExpires: null,
                officeIds: null,
                positionIds: null,
                userTypes: null,
                thirdUserId: null,
                cardTypeName: null,
                sex: null,
                mainPositionName: null,
                deputyPositionNames: null,
                superiorLeaderName: null,
                majorName: null,
                gradeName: null,
                extendFieldValues: null,
                isAssignUser: null,
                configName: null,
                admin: !1,
                isNewRecord: !1
              },
              createDate: "2023-05-26 14:50:49",
              updateBy: {
                id: "e4bd7695bfb7474a8cf22c6b09dabcc4",
                createBy: null,
                createDate: null,
                updateBy: null,
                updateDate: null,
                remarks: null,
                delFlag: null,
                sqlMap: {},
                title: null,
                key: null,
                value: null,
                profilesDbType: null,
                router: null,
                client: null,
                searchValue: null,
                no: "admin",
                campusName: null,
                name: "内置管理员",
                phone: null,
                mobile: null,
                email: null,
                loginName: null,
                accountStatus: null,
                password: null,
                officeCode: null,
                positionName: null,
                roleName: null,
                loginFlag: null,
                userType: null,
                userTypeName: null,
                createDateStr: null,
                avatar: null,
                fileIds: null,
                roleIds: null,
                officeId: null,
                positionId: null,
                deputyOfficePositionIds: null,
                userOfficePositions: null,
                roles: null,
                companys: null,
                depts: null,
                positions: null,
                campusId: null,
                unitId: null,
                parentIds: null,
                campusIds: null,
                unitIds: null,
                certNo: null,
                isUpdatedPassword: null,
                employeeId: null,
                startTime: null,
                endTime: null,
                unitName: null,
                className: null,
                cover: null,
                campusIdOrUnitId: null,
                isEnabledPassPolicy: null,
                isEnabledPolicyUpdatePassword: null,
                isPasswordPolicyExpires: null,
                officeIds: null,
                positionIds: null,
                userTypes: null,
                thirdUserId: null,
                cardTypeName: null,
                sex: null,
                mainPositionName: null,
                deputyPositionNames: null,
                superiorLeaderName: null,
                majorName: null,
                gradeName: null,
                extendFieldValues: null,
                isAssignUser: null,
                configName: null,
                admin: !1,
                isNewRecord: !1
              },
              updateDate: "2023-05-26 14:50:49",
              remarks: null,
              delFlag: !1,
              sqlMap: {},
              title: "二级目录2",
              key: "b75fbf1235af489099429ef29d6dd794",
              value: "b75fbf1235af489099429ef29d6dd794",
              profilesDbType: null,
              router: null,
              client: null,
              searchValue: null,
              parent: {
                id: "05014c3403504200a8ba0aef78da778b",
                createBy: null,
                createDate: null,
                updateBy: null,
                updateDate: null,
                remarks: null,
                delFlag: null,
                sqlMap: {},
                title: "hy测试目录",
                key: "05014c3403504200a8ba0aef78da778b",
                value: "05014c3403504200a8ba0aef78da778b",
                profilesDbType: null,
                router: null,
                client: null,
                searchValue: null,
                parent: null,
                parentCode: null,
                code: null,
                name: "hy测试目录",
                sort: null,
                fullName: null,
                parentIds: null,
                depth: null,
                dlrSort: null,
                isLeaf: null,
                children: null,
                disabled: null,
                fullNames: null,
                setNum: 0,
                isNewRecord: !1
              },
              parentCode: "gtcsml",
              code: "hy22",
              name: "二级目录2",
              sort: 20,
              fullName: "hy测试目录/二级目录2",
              parentIds: "0,05014c3403504200a8ba0aef78da778b,",
              depth: 2,
              dlrSort: null,
              isLeaf: !0,
              children: null,
              disabled: null,
              fullNames: null,
              setNum: 0,
              isNewRecord: !1
            }
          ],
          disabled: null,
          fullNames: null,
          setNum: 5,
          isNewRecord: !1
        }
      ],
      tableData: [],
      expandedRowKeys: []
    };
  },
  props: {
    // 页面标题
    title: {
      type: String,
      required: !0
    },
    buttons: {
      type: Array,
      default() {
        return [
          {
            name: "添加",
            key: "add",
            show: !0,
            type: "primary",
            icon: "plus-circle",
            api: null
          },
          {
            name: "批量删除",
            key: "remove",
            action: "remove",
            show: !0,
            icon: "delete",
            api: null
          },
          {
            name: "导入",
            key: "import",
            show: !0,
            icon: "upload",
            api: null,
            templateApi: null
          },
          {
            name: "导出",
            key: "export",
            show: !0,
            icon: "download",
            api: null
          }
        ];
      }
    },
    // 列表checkbox列
    isSelection: {
      type: Boolean,
      default: !1
    },
    showBtnIcon: {
      type: Boolean,
      default: !0
    },
    showPagination: {
      type: Boolean,
      default: !0
    },
    columns: {
      type: Array,
      default() {
        return [];
      }
    },
    rowKey: {
      type: [Function, String],
      default: "id"
    },
    tableLoading: {
      type: Boolean,
      default: !1
    },
    loadData: {
      type: Function,
      required: !0
    }
  },
  watch: {
    buttons: {
      handler(l) {
        l.length && this.initRenderButtons(l);
      },
      immediate: !0,
      deep: !0
    }
  },
  methods: {
    isFunction(l, n = "") {
      return !!(l && typeof l == "function");
    },
    renderIcon(l) {
      return typeof l.icon == "string" ? l.icon : typeof l.icon == "boolean" && l.icon ? this.iconMap[l.key] : "";
    },
    initRenderButtons(l) {
      this.renderButtons = l.map((n) => (n.key === "remove" && (this.showSelection = !0), n));
    },
    initTable() {
      this.$nextTick(() => {
        this.layoutHeight = this.$refs.layout.parentNode.offsetHeight - 50, this.setLayoutHeight(), this.renderColumns = this.columns.map((l) => ((l.template || l.isClick || l.dataIndex === "action" && !l.customRender) && !l.scopedSlots && (l.scopedSlots = { customRender: l.dataIndex }), l)), this.reload();
      });
    },
    initComponent() {
      this.initTable();
    },
    toggleFilter() {
      this.isMoreFilter = !this.isMoreFilter, this.setLayoutHeight();
    },
    dispatchApi(l, n) {
      return this[l](n);
    },
    // 查询条件重置
    filterReset() {
      this.$emit("reset");
    },
    reload() {
      this.loadData({ pageNo: 1, pageSize: 0 }).then((l) => {
        !l.list || !l.list.length ? this.tableData = this.list : this.tableData = l.list;
      });
    },
    // 树列表 - 新增/编辑/详情 时 不刷新
    setFilterParams() {
      console.log(this.$parent);
    },
    // 按钮回调
    btnCallback(l) {
      this.$emit("btnCallback", l.key, this.selectedRowKeys), this[l.key] ? this[l.key](l) : this.handAction(l);
    },
    // 其他未定义按钮方法生成
    handAction(l) {
      if (l.selection !== !1 && !this.selectedRowKeys.length) {
        this.$message.warn(`请选择要${l.name}的数据`);
        return;
      }
      if (this.isFunction(l.api, l.name)) {
        if (l.confirm) {
          this.$confirm({
            title: `${l.name}`,
            content: () => V("div", { style: "color:red" }, `确认要{${l.name}}数据吗？`),
            onOk: () => {
              this.spinning = !0, l.api(this.selectedRowKeys).then(() => {
                this.$message.success(`${l.name}成功`), this.$emit("reset");
              }).finally(() => {
                this.spinning = !1;
              });
            }
          });
          return;
        }
        this.spinning = !0, l.api(this.selectedRowKeys).then(() => {
          this.$message.success(`${l.name}成功`), this.$emit("reset");
        }).finally(() => {
          this.spinning = !1;
        });
      }
    },
    // 设置列表路由地址
    setHistoryPath() {
      const l = this.$route;
      sessionStorage.setItem("backPath", l.path);
    },
    // 添加方法
    add() {
      this.$emit("btnCallback", "add");
    },
    // 删除方法
    remove() {
      if (!this.selectedRowKeys.length) {
        this.$notification.warn({
          key: "only-you",
          message: "操作失败",
          description: "请选择要删除的数据"
        });
        return;
      }
      this.isFunction("deletesApi") && this.$confirm({
        title: "确认删除",
        content: () => V("div", { style: "color: red" }, "确认要批量删除数据吗？"),
        onOk: () => {
          this.spinning = !0, this.dispatchApi("deletesApi", this.selectedRowKeys).then(() => {
            this.$notification.success({
              key: "only-you",
              message: "操作成功",
              description: "删除成功"
            }), this.$emit("reset");
          }).finally(() => {
            this.spinning = !1;
          });
        }
      });
    },
    // 导入方法
    import() {
      this.importVisible = !0;
    },
    // 导出方法
    export() {
      this.isFunction("exportApi") && (this.spinning = !0, this.exportApi().then(() => {
        this.spinning = !1;
      }));
    },
    // 导入回调
    importExcel(l) {
      this.importLoading = !0, this.isFunction("importApi") && this.importApi(l).then((n) => {
        this.importLoading = !1, this.$notification.success({
          key: "only-you",
          message: "操作成功",
          description: (e) => e("div", { domProps: { innerHTML: n } })
        }), this.$emit("reset");
      });
    },
    // 模板下载回调
    exportExcelTemplate() {
      this.isFunction("templateApi") && (this.exportLoading = !0, this.templateApi().finally(() => {
        this.exportLoading = !1;
      }));
    },
    // 表格可点击列事件回调
    tableColCallback(l, n) {
      this.$emit("tableColCallback", l, n);
    },
    onSelectChange(l) {
      this.selectedRowKeys = l;
    },
    // 设置表格滚动条高度
    setLayoutHeight() {
      this.$nextTick(() => {
        const n = this.$refs.filters && this.$refs.filters.offsetHeight || 0, e = this.$refs.tabs && this.$refs.tabs.offsetHeight || 0;
        this.tableScrollPx = this.layoutHeight - n - 60 - e;
      });
    },
    // 树表格展开
    handExpand(l, n) {
      return R(this, null, function* () {
        this.$emit("handExpand", l, n);
      });
    }
  },
  mounted() {
    this.initComponent();
  },
  directives: {
    sidedrag: {
      mounted(l, n) {
        l.style.cursor = "e-resize";
        const e = n.value;
        document.addEventListener("selectstart", (i) => {
          i.preventDefault();
        }), l.onmousedown = (i) => {
          e.startX = i.clientX, e.dragWidth = e.sideWidth, document.onmousemove = (a) => {
            const s = a.clientX - e.startX;
            if (s < 0) {
              if (e.dragWidth + s <= 232) return;
              e.sideWidth = e.dragWidth + s;
            } else {
              if (e.dragWidth + s >= 500) return;
              e.sideWidth = e.dragWidth + s;
            }
          }, document.onmouseup = () => {
            document.onmousemove = document.onmousedown = null;
          };
        };
      }
    }
  }
}, pl = {
  class: "list-layout",
  ref: "layout"
}, ml = { class: "tools" }, fl = { class: "title" }, yl = { class: "btns" }, hl = { style: { "margin-left": "8px" } }, bl = {
  class: "list-filter-wrap",
  ref: "filters"
}, Nl = {
  key: 0,
  class: "filter-content"
}, Il = { class: "filter" }, gl = {
  key: 1,
  class: "reset-wrap"
}, Pl = {
  key: 1,
  class: "filter-more-content"
}, wl = {
  key: 2,
  class: "desc-wrap"
}, Tl = { class: "table-content" }, kl = {
  key: 0,
  class: "tabs-wrap",
  ref: "tabs"
}, vl = { class: "table-container" }, Dl = ["onClick"], Cl = { class: "other" };
function xl(l, n, e, i, a, s) {
  const m = J, f = S("down-outlined"), d = S("up-outlined"), h = S("sync-outlined"), T = Q, k = dl, v = A("action"), D = A("sidedrag");
  return t(), o("div", pl, [
    c("div", ml, [
      c("div", fl, I(e.title), 1),
      c("div", yl, [
        (t(!0), o(j, null, M(a.renderButtons, (u) => (t(), o("span", {
          class: "item-btn",
          key: u.key
        }, [
          _((t(), g(m, {
            class: "btn",
            disabled: !!u.disabled,
            type: u.type || u.key === "add" ? "primary" : "default",
            onClick: (p) => s.btnCallback(u)
          }, {
            icon: b(() => [
              s.renderIcon(u) ? (t(), g(W(s.renderIcon(u)), { key: 0 })) : r("", !0)
            ]),
            default: b(() => [
              $(" " + I(u.name), 1)
            ]),
            _: 2
          }, 1032, ["disabled", "type", "onClick"])), [
            [v, u.action || u.key],
            [q, u.show !== !1]
          ])
        ]))), 128)),
        c("span", hl, [
          y(l.$slots, "otherBtns", { selections: a.selectedRowKeys }, void 0, !0)
        ])
      ])
    ]),
    c("div", {
      class: "list-layout-main",
      style: P({ height: a.layoutHeight + "px" })
    }, [
      l.$slots.tree ? (t(), o("div", {
        key: 0,
        class: "side",
        ref: "side",
        style: P({ height: a.layoutHeight + "px", width: a.sideWidth + "px" })
      }, [
        y(l.$slots, "tree", {}, void 0, !0)
      ], 4)) : r("", !0),
      l.$slots.tree ? _((t(), o("div", {
        key: 1,
        class: "side-bar",
        style: P({ height: a.layoutHeight + "px", backgroundColor: l.$theme.bgColor })
      }, null, 4)), [
        [D, a._]
      ]) : r("", !0),
      l.$slots.empty ? r("", !0) : (t(), o("div", {
        key: 2,
        class: "layout-list-content",
        style: P({ height: a.layoutHeight + "px" })
      }, [
        c("div", bl, [
          l.$slots.filter ? (t(), o("div", Nl, [
            c("div", Il, [
              y(l.$slots, "filter", {}, void 0, !0)
            ]),
            l.$slots.filterMore ? (t(), o("a", {
              key: 0,
              class: "filter-more-btn",
              onClick: n[0] || (n[0] = (...u) => s.toggleFilter && s.toggleFilter(...u))
            }, [
              $(I(a.isMoreFilter ? "收起" : "更多") + " ", 1),
              a.isMoreFilter ? (t(), g(d, {
                key: 1,
                style: { "font-size": "12px" }
              })) : (t(), g(f, {
                key: 0,
                style: { "font-size": "12px" }
              }))
            ])) : r("", !0),
            l.$slots.filter ? (t(), o("div", gl, [
              N(T, {
                placement: "top",
                overlayStyle: { maxWidth: "500px" }
              }, {
                title: b(() => n[2] || (n[2] = [
                  c("span", null, "条件重置", -1)
                ])),
                default: b(() => [
                  N(m, {
                    style: { "padding-bottom": "2px" },
                    onClick: s.filterReset
                  }, {
                    icon: b(() => [
                      N(h)
                    ]),
                    _: 1
                  }, 8, ["onClick"])
                ]),
                _: 1
              })
            ])) : r("", !0)
          ])) : r("", !0),
          l.$slots.filterMore ? _((t(), o("div", Pl, [
            y(l.$slots, "filterMore", {}, void 0, !0)
          ], 512)), [
            [q, a.isMoreFilter]
          ]) : r("", !0),
          l.$slots.desc ? (t(), o("div", wl, [
            y(l.$slots, "desc", {}, void 0, !0)
          ])) : r("", !0)
        ], 512),
        c("div", Tl, [
          l.$slots.tabs ? (t(), o("div", kl, [
            y(l.$slots, "tabs", {}, void 0, !0)
          ], 512)) : r("", !0),
          c("div", vl, [
            N(k, {
              ref: "table",
              size: "middle",
              scroll: { y: a.tableScrollPx },
              rowKey: e.rowKey,
              tableLoading: e.tableLoading,
              columns: a.renderColumns,
              dataSource: a.tableData,
              expandedRowKeys: a.expandedRowKeys,
              "onUpdate:expandedRowKeys": n[1] || (n[1] = (u) => a.expandedRowKeys = u),
              rowSelection: e.buttons.includes("remove") || e.isSelection ? { selectedRowKeys: a.selectedRowKeys, onChange: s.onSelectChange } : null,
              pagination: !1,
              onExpand: s.handExpand
            }, z({ _: 2 }, [
              M(a.renderColumns, (u) => ({
                name: "bodyCell",
                fn: b((p) => [
                  u.template && p.column.dataIndex === u.dataIndex ? y(l.$slots, u.dataIndex, {
                    key: 0,
                    text: p.text,
                    record: p.record,
                    item: u
                  }, void 0, !0) : r("", !0),
                  u.isClick && p.column.dataIndex === u.dataIndex ? (t(), o("a", {
                    key: u.dataIndex,
                    onClick: (C) => s.tableColCallback(u.dataIndex, p.record)
                  }, I(p.text.name), 9, Dl)) : r("", !0),
                  p.column.dataIndex === "action" ? y(l.$slots, "action", {
                    key: 2,
                    record: p.record
                  }, void 0, !0) : r("", !0)
                ])
              }))
            ]), 1032, ["scroll", "rowKey", "tableLoading", "columns", "dataSource", "expandedRowKeys", "rowSelection", "onExpand"])
          ])
        ])
      ], 4))
    ], 4),
    c("div", Cl, [
      y(l.$slots, "other", {}, void 0, !0)
    ])
  ], 512);
}
const Ul = /* @__PURE__ */ G(cl, [["render", xl], ["__scopeId", "data-v-6df2e6bf"]]);
export {
  Ul as default
};
