yh-pub 2.0.19 → 2.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/{AdminLogin-BO6LBhX4.js → AdminLogin-DRTlX2BK.js} +2 -2
  2. package/{AdminLogin-BO6LBhX4.js.map → AdminLogin-DRTlX2BK.js.map} +1 -1
  3. package/{Error-Cu8ZyNGy.js → Error-UEfuKWKS.js} +2 -2
  4. package/{Error-Cu8ZyNGy.js.map → Error-UEfuKWKS.js.map} +1 -1
  5. package/{Error401-BlxNP-z2.js → Error401-Bkv92P3b.js} +3 -3
  6. package/{Error401-BlxNP-z2.js.map → Error401-Bkv92P3b.js.map} +1 -1
  7. package/{Error404-DZ04uTX_.js → Error404-BCYn0Ny4.js} +3 -3
  8. package/{Error404-DZ04uTX_.js.map → Error404-BCYn0Ny4.js.map} +1 -1
  9. package/{Error500-EnaAvRHg.js → Error500-d-qzJeFw.js} +3 -3
  10. package/{Error500-EnaAvRHg.js.map → Error500-d-qzJeFw.js.map} +1 -1
  11. package/{HomeIndex-B-vY8ijY.js → HomeIndex-Dwt3Bs1F.js} +5 -4
  12. package/{HomeIndex-B-vY8ijY.js.map → HomeIndex-Dwt3Bs1F.js.map} +1 -1
  13. package/{IconExplorer-qW9wfu65.js → IconExplorer-WR15Yq3l.js} +2 -2
  14. package/{IconExplorer-qW9wfu65.js.map → IconExplorer-WR15Yq3l.js.map} +1 -1
  15. package/Index-Dwwn23se.js +5 -0
  16. package/Index-Dwwn23se.js.map +1 -0
  17. package/{MainLogin-BNH1G8-y.js → MainLogin-CEfqs-bw.js} +2 -2
  18. package/{MainLogin-BNH1G8-y.js.map → MainLogin-CEfqs-bw.js.map} +1 -1
  19. package/{MenuManage-Xm8iH8Qc.js → MenuManage-Dh5f0ylw.js} +5 -4
  20. package/{MenuManage-Xm8iH8Qc.js.map → MenuManage-Dh5f0ylw.js.map} +1 -1
  21. package/{OrgManage-dBnClzKk.js → OrgManage-DKB1h-uE.js} +2 -2
  22. package/{OrgManage-dBnClzKk.js.map → OrgManage-DKB1h-uE.js.map} +1 -1
  23. package/{RoleManage-Do66qpZN.js → RoleManage-BQ4XEXc9.js} +2 -2
  24. package/{RoleManage-Do66qpZN.js.map → RoleManage-BQ4XEXc9.js.map} +1 -1
  25. package/{SysConfig-CCm80eJB.js → SysConfig-M3_Y5iT1.js} +2 -2
  26. package/{SysConfig-CCm80eJB.js.map → SysConfig-M3_Y5iT1.js.map} +1 -1
  27. package/{TenantList--3JWscXe.js → TenantList-Bmrjd5U9.js} +2 -2
  28. package/{TenantList--3JWscXe.js.map → TenantList-Bmrjd5U9.js.map} +1 -1
  29. package/{index-B7FFNPt7.js → index-C6dsG-U1.js} +70 -69
  30. package/{index-B7FFNPt7.js.map → index-C6dsG-U1.js.map} +1 -1
  31. package/index.es.js +20 -18
  32. package/index.es.js.map +1 -1
  33. package/package.json +5 -1
  34. package/vite.js +71 -0
  35. package/Index-Cq0YTHU1.js +0 -5
  36. package/Index-Cq0YTHU1.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TenantList--3JWscXe.js","sources":["../components/business/admin/tenant/TenantForm.vue","../components/business/admin/tenant/TenantRoleManage.vue","../components/business/admin/tenant/TenantList.vue"],"sourcesContent":["<template>\n <el-dialog v-model=\"visible\" width=\"800px\" :title=\"ct('租户信息')\">\n <el-form ref=\"formRef\" :rules=\"rules\" :model=\"form\" label-width=\"140px\">\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"adClientId\" :label=\"ct('客户端ID')\">\n <el-input v-model=\"form.adClientId\" disabled :placeholder=\"ct('自动生成')\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"code\" :label=\"ct('客户端编码')\">\n <el-input v-model=\"form.code\"></el-input>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item prop=\"name\" :label=\"ct('客户端名称')\">\n <el-input v-model=\"form.name\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"orgValue\" :label=\"ct('组织机构编码')\">\n <el-input v-model=\"form.orgValue\"></el-input>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item prop=\"orgName\" :label=\"ct('组织机构名称')\">\n <el-input v-model=\"form.orgName\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"userName\" :label=\"ct('用户名称')\">\n <el-input v-model=\"form.userName\"></el-input>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item prop=\"userUserName\" :label=\"ct('登录账户名称')\">\n <el-input v-model=\"form.userUserName\" :disabled=\"type === 'add' ? false : true\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"24\">\n <el-form-item :label=\"ct('客户端备注')\">\n <el-input v-model=\"form.description\" type=\"textarea\" :rows=\"3\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n </el-form>\n <template #footer>\n <el-button type=\"primary\" @click=\"ok()\">{{ ct('保存') }}</el-button>\n <el-button @click=\"cancel()\">{{ ct('取消') }}</el-button>\n </template>\n </el-dialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, reactive, watch } from 'vue';\nimport { ElMessage } from 'element-plus';\nimport type { FormInstance, FormRules } from 'element-plus';\nimport { saTenantInsert, saTenantGetById, saTenantUpdate } from '../../../../api/tenantApi';\nimport type { TenantInfo, FormActionData } from './types';\n\timport { ct } from '../../../../utils/i18nHelp';\n\ninterface Props {\n actionData: FormActionData;\n}\nconst props = defineProps<Props>();\nconst emit = defineEmits<{\n getinfo: [];\n}>();\n\nconst visible = ref(false);\nconst formRef = ref<FormInstance>();\nconst type = ref<'add' | 'edit'>('add');\nconst form = reactive<Partial<TenantInfo>>({});\n\nconst rules: FormRules<TenantInfo> = {\n code: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n name: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n orgValue: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n orgName: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n userName: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n userUserName: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n};\n\nconst getById = (id: string) => {\n const param = {\n adClientId: id,\n };\n saTenantGetById(param).then((res) => {\n if ((res.data as any).data) {\n Object.assign(form, (res.data as any).data);\n }\n });\n};\n\nconst ok = async () => {\n if (!formRef.value) return;\n try {\n await formRef.value.validate();\n if (type.value === 'add') {\n saTenantInsert(form).then((res) => {\n if ((res.data as any).data) {\n ElMessage.success(ct('保存成功!'));\n visible.value = false;\n emit('getinfo');\n }\n });\n } else if (type.value === 'edit') {\n saTenantUpdate(form).then((res) => {\n if ((res.data as any).data) {\n ElMessage.success(ct('保存成功!'));\n visible.value = false;\n emit('getinfo');\n }\n });\n }\n } catch {\n // 验证失败\n }\n};\n\nconst cancel = () => {\n visible.value = false;\n};\n\nwatch(\n () => props.actionData,\n (val) => {\n type.value = val.type;\n if (val.type === 'add') {\n Object.keys(form).forEach((key) => {\n delete form[key as keyof TenantInfo];\n });\n visible.value = true;\n } else if (val.type === 'edit') {\n getById(val.id!);\n visible.value = true;\n } else {\n visible.value = false;\n }\n },\n { deep: true }\n);\n</script>\n","<template>\n <el-drawer :title=\"ct('分配权限')\" v-model=\"visible\" :width=\"800\" @close=\"cancel\">\n <el-row>\n <el-col :span=\"12\">\n <el-card :title=\"ct('菜单权限')\">\n <div class=\"drawer-content\">\n <el-tree\n ref=\"treeRef\"\n :data=\"permData\"\n :props=\"{ label: 'title', children: 'children' }\"\n show-checkbox\n node-key=\"key\"\n default-expand-parent\n v-loading=\"treeLoading\"\n @current-change=\"selectTree\"\n @check-change=\"checkedMenuTree\"></el-tree>\n </div>\n </el-card>\n </el-col>\n <el-col :span=\"12\">\n <el-card :title=\"ct('按钮权限')\">\n <div class=\"drawer-content\">\n <el-card v-for=\"(item, key) in curWindowBtnList\" :key=\"key\" style=\"margin-top: 5px\">\n <template #header>\n <span style=\"margin-left: 10px\">{{ item.NAME }}</span>\n <el-checkbox\n v-model=\"item.checkAll\"\n :indeterminate=\"item.indeterminate\"\n @change=\"handleCheckAll($event, item, key)\">\n {{ ct('全选') }}\n </el-checkbox>\n </template>\n <el-checkbox-group\n :model-value=\"item.checkChilds\"\n @update:model-value=\"(val) => checkAllGroupChange(val, key)\">\n <el-checkbox v-for=\"child in item.childs\" :key=\"child.ID\" :label=\"child.ID\">\n {{ child.NAME }}\n </el-checkbox>\n </el-checkbox-group>\n </el-card>\n <el-empty v-if=\"curWindowBtnList.length === 0\" :description=\"ct('暂无权限按钮')\"></el-empty>\n <div class=\"drawer-footer br\">\n <el-button type=\"primary\" :loading=\"submitPermLoading\" @click=\"submitPermEdit\">\n {{ ct('提交') }}\n </el-button>\n <el-button @click=\"cancel\">{{ ct('取消') }}</el-button>\n </div>\n </div>\n </el-card>\n </el-col>\n </el-row>\n </el-drawer>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, reactive, watch, nextTick } from 'vue';\nimport { ElMessage } from 'element-plus';\nimport { deepClone } from 'yh-client';\n\timport { ct } from '../../../../utils/i18nHelp';\nimport {\n saTenantGetById,\n saTenantGetMenuList,\n saTenantGetMenuWindowButton,\n saTenantGetRoleMenus,\n saTenantGetRoleWindowButton,\n saTenantSetMenus,\n} from '../../../../api/tenantApi';\nimport type { MenuTreeNode, WindowButton, ButtonPermissionMap, AuthActionData } from './types';\n\ninterface Props {\n actionData: AuthActionData;\n}\nconst props = defineProps<Props>();\nconst emit = defineEmits<{\n getinfo: [];\n}>();\n\nconst tenantInfo = reactive<Record<string, any>>({});\nconst submitPermLoading = ref(false);\nconst saveWinBtnList = ref<string[]>([]);\nconst unCheckedMenuTreeData = ref<Record<string, string>>({});\nconst roleMenuData = ref<Record<string, any>>({});\nconst curWindowBtnList = ref<WindowButton[]>([]);\nconst curSelectedMenuId = ref('');\nconst roleSavedBtnPermMap = ref<ButtonPermissionMap>({});\nconst checkedMenuKeys = ref<string[]>([]);\nconst expandedMenuKeys = ref<string[]>([]);\nconst permData = ref<MenuTreeNode[]>([]);\nconst treeLoading = ref(true);\nconst id = ref('');\nconst visible = ref(false);\nconst treeRef = ref();\n\nconst resetBtnPerData = () => {\n roleSavedBtnPermMap.value = {};\n unCheckedMenuTreeData.value = {};\n roleMenuData.value = {};\n curWindowBtnList.value = [];\n saveWinBtnList.value = [];\n};\n\nconst submitPermEdit = () => {\n submitPermLoading.value = true;\n const permMenuIds = checkedMenuKeys.value.join(',');\n const permMenuBtnIds: Record<string, string[]> = {};\n Object.keys(roleSavedBtnPermMap.value).forEach((key) => {\n permMenuBtnIds['W_' + key] = roleSavedBtnPermMap.value[key];\n });\n saTenantSetMenus({\n roleId: tenantInfo.adRoleId,\n ids: permMenuIds,\n btns: JSON.stringify(permMenuBtnIds),\n adClientId: tenantInfo.adClientId,\n adOrgId: tenantInfo.adOrgId,\n }).then((res) => {\n submitPermLoading.value = false;\n const data = res.data as any;\n if (data.result) {\n ElMessage.success(ct('操作成功'));\n cancel();\n } else {\n ElMessage.error(data.msg);\n }\n });\n};\n\nconst getRoleWindowButton = (roleId: string) => {\n saTenantGetRoleWindowButton({ adRoleId: roleId }).then((res) => {\n if ((res.data as any).data) {\n const data = (res.data as any).data;\n const roleBtnPermMap: ButtonPermissionMap = {};\n data.forEach((e: any) => {\n if (!roleBtnPermMap[e.sysWindowId]) {\n roleBtnPermMap[e.sysWindowId] = [];\n }\n roleBtnPermMap[e.sysWindowId].push(e.sysWindowButtonId);\n });\n roleSavedBtnPermMap.value = roleBtnPermMap;\n }\n });\n};\n\nconst cancel = () => {\n resetBtnPerData();\n visible.value = false;\n emit('getinfo');\n};\n\nconst getById = async (idVal: string) => {\n const param = {\n adClientId: idVal,\n };\n let data: any;\n await saTenantGetById(param).then((res) => {\n if ((res.data as any).data) {\n data = (res.data as any).data;\n }\n });\n return data;\n};\n\nconst getRoleMenus = async (roleId: string) => {\n const roleMenuDataTemp: Record<string, any> = {};\n expandedMenuKeys.value = [];\n checkedMenuKeys.value = [];\n\n await saTenantGetRoleMenus({ adRoleId: roleId }).then((res) => {\n const data = res.data as any;\n if (data.result) {\n data.data.forEach((e: any) => {\n if (e.MENU_TYPE !== 'GROUP') {\n roleMenuDataTemp[e.AD_MENU_ID] = e;\n checkedMenuKeys.value.push(e.AD_MENU_ID);\n } else {\n expandedMenuKeys.value.push(e.AD_MENU_ID);\n }\n });\n }\n });\n return roleMenuDataTemp;\n};\n\nconst initMenu = (roleMenuDataTemp: Record<string, any>) => {\n saTenantGetMenuList({}).then((res) => {\n const resData = res.data as any;\n if (resData.data) {\n const newTreeData: MenuTreeNode[] = [];\n const data = resData.data;\n data.forEach((e: any) => {\n newTreeData.push(parseTreeData(e, 0));\n });\n calNewTreeData(newTreeData, roleMenuDataTemp);\n permData.value = newTreeData;\n treeLoading.value = false;\n }\n });\n};\n\nconst calNewTreeData = (newTreeData: MenuTreeNode[], roleMenuDataTemp: Record<string, any>): number => {\n let checkedCount = 0;\n newTreeData.forEach((e) => {\n e.expand = true;\n\n if (roleMenuDataTemp[e.adMenuId]) {\n e.checked = true;\n checkedCount++;\n }\n\n if (e.children && e.children.length > 0) {\n const sonCheckedCount = calNewTreeData(e.children, roleMenuDataTemp);\n if (sonCheckedCount === e.children.length) {\n e.checked = true;\n e.selectable = true;\n e.indeterminate = false;\n } else if (sonCheckedCount > 0 && sonCheckedCount < e.children.length) {\n e.indeterminate = true;\n e.checked = false;\n e.selectable = true;\n } else {\n e.checked = false;\n e.indeterminate = false;\n }\n }\n });\n return checkedCount;\n};\n\nconst selectTree = (data: MenuTreeNode | null, node: any) => {\n if (data) {\n curSelectedMenuId.value = data.sysWindowId || '';\n if (!curSelectedMenuId.value) {\n curWindowBtnList.value = [];\n saveWinBtnList.value = roleSavedBtnPermMap.value[curSelectedMenuId.value] || [];\n return;\n }\n\n saTenantGetMenuWindowButton({ sysWindowId: curSelectedMenuId.value }).then((res) => {\n const resData = res.data as any;\n const { result, data: resDataInner } = resData;\n if (result && resDataInner) {\n const roleBtnData: WindowButton[] = [];\n const tempQyBtnData: Record<string, any[]> = {};\n\n resDataInner.forEach((tData: any) => {\n if (tData.TYPE === 'QY') {\n roleBtnData.push(tData);\n tempQyBtnData[tData.ID] = [];\n } else {\n if (tempQyBtnData[tData.PARENT_ID]) {\n tempQyBtnData[tData.PARENT_ID].push(tData);\n }\n }\n });\n\n roleBtnData.forEach((item) => {\n item.childs = tempQyBtnData[item.ID];\n const checkChilds = roleSavedBtnPermMap.value[curSelectedMenuId.value] || [];\n let tcount = 0;\n tempQyBtnData[item.ID].forEach((es: any) => {\n if (checkChilds.includes(es.ID)) {\n tcount++;\n }\n });\n if (tcount === tempQyBtnData[item.ID].length) {\n item.checkAll = true;\n item.indeterminate = false;\n } else if (tcount > 0) {\n item.checkAll = false;\n item.indeterminate = true;\n } else {\n item.checkAll = false;\n item.indeterminate = false;\n }\n item.checkChilds = checkChilds;\n });\n\n curWindowBtnList.value = roleBtnData;\n saveWinBtnList.value = roleSavedBtnPermMap.value[curSelectedMenuId.value] || [];\n }\n });\n }\n};\n\nconst checkedMenuTree = (data: MenuTreeNode, checked: boolean) => {\n if (data.menuType !== 'GROUP') {\n if (!checked) {\n if (!unCheckedMenuTreeData.value[data.adMenuId]) {\n unCheckedMenuTreeData.value[data.adMenuId] = '1';\n }\n } else {\n delete unCheckedMenuTreeData.value[data.adMenuId];\n }\n } else {\n getTreeCheckedDataLoop(data, !checked);\n }\n};\n\nconst getTreeCheckedDataLoop = (cv: MenuTreeNode, delFlag: boolean) => {\n if (delFlag) {\n if (!unCheckedMenuTreeData.value[cv.adMenuId]) {\n unCheckedMenuTreeData.value[cv.adMenuId] = '1';\n }\n if (cv.children && cv.children.length > 0) {\n cv.children.forEach((ss) => {\n getTreeCheckedDataLoop(ss, delFlag);\n });\n }\n } else {\n delete unCheckedMenuTreeData.value[cv.adMenuId];\n }\n};\n\nconst handleCheckAll = (checked: boolean, item: WindowButton, key: number) => {\n let checkChilds: string[] = [];\n if (!item.indeterminate) {\n item.checkAll = false;\n item.indeterminate = false;\n item.checkChilds = checkChilds;\n } else {\n checkChilds = item.childs.map((child) => child.ID);\n item.checkAll = true;\n item.indeterminate = false;\n item.checkChilds = checkChilds;\n }\n\n roleSavedBtnPermMap.value[curSelectedMenuId.value] = checkChilds;\n curWindowBtnList.value[key] = item;\n};\n\nconst checkAllGroupChange = (event: string[], key: number) => {\n const list = deepClone(curWindowBtnList.value);\n const currentItem = list[key];\n if (event.length > 0) {\n let containFlag = 0;\n let okCount = 0;\n for (let i = 0; i < currentItem.childs.length; i++) {\n if (event.includes(currentItem.childs[i].ID)) {\n okCount++;\n }\n }\n if (okCount === currentItem.childs.length) {\n containFlag = 2;\n } else {\n containFlag = 1;\n }\n if (containFlag === 1) {\n currentItem.checkAll = false;\n currentItem.indeterminate = okCount === 0 ? false : true;\n } else if (containFlag === 2) {\n currentItem.checkAll = true;\n currentItem.indeterminate = false;\n }\n } else {\n currentItem.checkAll = false;\n currentItem.indeterminate = false;\n }\n currentItem.checkChilds = event;\n curWindowBtnList.value[key] = currentItem;\n roleSavedBtnPermMap.value[curSelectedMenuId.value] = event;\n};\n\nconst parseTreeData = (curLevelData: any, curLevel: number): MenuTreeNode => {\n const newLevelData: any = { data: curLevelData };\n newLevelData.key = curLevelData.adMenuId;\n newLevelData.title = curLevelData.name;\n\n if (curLevelData._childs && curLevelData._childs.length > 0) {\n curLevelData._childs.forEach((sonTreeData: any) => {\n if (!newLevelData.children) {\n newLevelData.children = [];\n }\n newLevelData.children.push(parseTreeData(sonTreeData, curLevel + 1));\n });\n newLevelData.isLeaf = false;\n } else {\n newLevelData.isLeaf = true;\n }\n delete curLevelData._childs;\n return newLevelData;\n};\n\nwatch(\n () => props.actionData,\n async (val) => {\n id.value = val.id;\n const dataTemp = await getById(val.id);\n Object.assign(tenantInfo, dataTemp);\n getRoleWindowButton(tenantInfo.adRoleId);\n const roleMenuDataTemp = await getRoleMenus(tenantInfo.adRoleId);\n initMenu(roleMenuDataTemp);\n visible.value = true;\n },\n { deep: true }\n);\n</script>\n\n<style scoped>\n.drawer-footer {\n z-index: 10;\n width: 100%;\n position: absolute;\n bottom: 0;\n left: 0;\n border-top: 1px solid #e8e8e8;\n padding: 10px 16px;\n text-align: left;\n background: #fff;\n}\n\n.drawer-content {\n height: calc(100vh - 51px - 32px - 32px - 51px - 2px);\n overflow: auto;\n}\n</style>\n","<template>\n <el-form\n :model=\"searchForm\"\n class=\"ant-advanced-search-form\"\n inline>\n <el-form-item :label=\"ct('客户端编码')\">\n <el-input v-model=\"searchForm.code\" />\n </el-form-item>\n <el-form-item :label=\"ct('客户端名称')\">\n <el-input v-model=\"searchForm.name\" />\n </el-form-item>\n <el-form-item>\n <el-button\n type=\"primary\"\n @click=\"query()\">\n <YhIcon\n slot=\"icon\"\n name=\"search\"></YhIcon>\n {{ ct('查询') }}\n </el-button>\n </el-form-item>\n <el-form-item>\n <el-button\n type=\"primary\"\n @click=\"add()\">\n <YhIcon\n slot=\"icon\"\n name=\"plus\"></YhIcon>\n {{ ct('初始化租户') }}\n </el-button>\n </el-form-item>\n </el-form>\n <vxe-grid v-bind=\"pageListOptions\">\n <template #action=\"{row}\">\n <el-button\n type=\"primary\"\n size=\"small\"\n text\n style=\"margin-right: 5px\"\n @click=\"edit(row)\">\n {{ ct('编辑') }}\n </el-button>\n <el-button\n type=\"primary\"\n size=\"small\"\n text\n @click=\"authorization(row)\">\n {{ ct('授权') }}\n </el-button>\n <el-button\n type=\"danger\"\n size=\"small\"\n text\n @click=\"remove(row)\">\n {{ ct('删除') }}\n </el-button>\n </template>\n <template #pager>\n <vxe-pager\n :layouts=\"[\n 'Sizes',\n 'PrevJump',\n 'PrevPage',\n 'Number',\n 'NextPage',\n 'NextJump',\n 'FullJump',\n 'Total',\n ]\"\n v-model:current-page=\"tablePage.currentPage\"\n v-model:page-size=\"tablePage.pageSize\"\n :total=\"tablePage.total\"\n @page-change=\"handlePageChange\"></vxe-pager>\n </template>\n </vxe-grid>\n <TenantForm\n :actionData=\"toFormData\"\n @getinfo=\"query()\"></TenantForm>\n <TenantRoleManage\n :actionData=\"toRoleData\"\n @getinfo=\"query()\"></TenantRoleManage>\n</template>\n\n<script setup lang=\"ts\">\n import {reactive, onMounted} from 'vue';\n import {ElMessage, ElMessageBox} from 'element-plus';\n import type {VxeGridProps} from 'vxe-table';\n import TenantForm from './TenantForm.vue';\n import TenantRoleManage from './TenantRoleManage.vue';\n import {saTenantDelete, saTenantListPage} from '../../../../api/tenantApi';\n import type {TenantInfo, SearchForm, TablePage, FormActionData, AuthActionData} from './types';\n\t import {ct} from '../../../../utils/i18nHelp';\n\n // 响应式数据\n const toFormData = reactive<FormActionData>({} as FormActionData);\n const toRoleData = reactive<AuthActionData>({} as AuthActionData);\n const tablePage = reactive<TablePage>({\n total: 0,\n currentPage: 1,\n pageSize: 10,\n });\n const pageListOptions = reactive<VxeGridProps>({\n loading: false,\n border: false,\n showOverflow: true,\n align: 'center',\n columns: [\n {field: 'adClientId', title: ct('租户ID'), fixed: 'left', width: 200},\n {field: 'code', title: ct('客户端编码')},\n {field: 'name', title: ct('客户端名称')},\n {field: 'action', title: '操作', fixed: 'right', width: 300, slots: {default: 'action'}},\n ],\n data: [],\n });\n const searchForm = reactive<SearchForm>({});\n\n // 方法\n const handlePageChange = ({currentPage, pageSize}: {currentPage: number; pageSize: number}) => {\n tablePage.currentPage = currentPage;\n tablePage.pageSize = pageSize;\n query();\n };\n\n const query = () => {\n const param = {\n page: tablePage.currentPage,\n size: tablePage.pageSize,\n name: searchForm.name,\n code: searchForm.code,\n };\n pageListOptions.loading = true;\n saTenantListPage(param).then((res) => {\n const resData = res.data as any;\n if (resData.data.records) {\n pageListOptions.data = resData.data.records;\n tablePage.total = resData.data.total;\n tablePage.currentPage = resData.data.current;\n }\n pageListOptions.loading = false;\n });\n };\n\n const add = () => {\n Object.assign(toFormData, {type: 'add'} as FormActionData);\n };\n\n const edit = (row: TenantInfo) => {\n Object.assign(toFormData, {type: 'edit', id: row.adClientId});\n };\n\n const authorization = (row: TenantInfo) => {\n Object.assign(toRoleData, {id: row.adClientId});\n };\n\n const remove = (row: TenantInfo) => {\n ElMessageBox.confirm('这将删除租户以及租户下所有数据!是否删除?', '请确认', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n type: 'warning',\n })\n .then(() => {\n const param = {\n adClientId: row.adClientId,\n };\n saTenantDelete(param).then((res) => {\n const resData = res.data as any;\n if (resData.result) {\n ElMessage.success(resData.msg);\n query();\n } else {\n ElMessage.error(resData.msg);\n }\n });\n })\n .catch(() => {});\n };\n\n // 生命周期\n onMounted(() => {\n query();\n });\n</script>\n"],"names":["props","__props","emit","__emit","visible","ref","formRef","type","form","reactive","rules","ct","getById","id","saTenantGetById","res","ok","saTenantInsert","ElMessage","saTenantUpdate","cancel","watch","val","key","_createBlock","_component_el_dialog","$event","_unref","_createVNode","_component_el_button","_component_el_form","_component_el_row","_component_el_col","_component_el_form_item","_component_el_input","_cache","tenantInfo","submitPermLoading","saveWinBtnList","unCheckedMenuTreeData","roleMenuData","curWindowBtnList","curSelectedMenuId","roleSavedBtnPermMap","checkedMenuKeys","expandedMenuKeys","permData","treeLoading","treeRef","resetBtnPerData","submitPermEdit","permMenuIds","permMenuBtnIds","saTenantSetMenus","data","getRoleWindowButton","roleId","saTenantGetRoleWindowButton","roleBtnPermMap","e","idVal","param","getRoleMenus","roleMenuDataTemp","saTenantGetRoleMenus","initMenu","saTenantGetMenuList","resData","newTreeData","parseTreeData","calNewTreeData","checkedCount","sonCheckedCount","selectTree","node","saTenantGetMenuWindowButton","result","resDataInner","roleBtnData","tempQyBtnData","tData","item","checkChilds","tcount","es","checkedMenuTree","checked","getTreeCheckedDataLoop","cv","delFlag","ss","handleCheckAll","child","checkAllGroupChange","event","currentItem","deepClone","containFlag","okCount","i","curLevelData","curLevel","newLevelData","sonTreeData","dataTemp","_component_el_drawer","_component_el_card","_createElementVNode","_hoisted_1","_component_el_tree","_hoisted_2","_openBlock","_createElementBlock","_Fragment","_renderList","_hoisted_3","_toDisplayString","_component_el_checkbox","_component_el_checkbox_group","_createTextVNode","_component_el_empty","_hoisted_4","toFormData","toRoleData","tablePage","pageListOptions","searchForm","handlePageChange","currentPage","pageSize","query","saTenantListPage","add","edit","row","authorization","remove","ElMessageBox","saTenantDelete","onMounted","_component_YhIcon","_component_vxe_grid","_withCtx","_component_vxe_pager","TenantForm","TenantRoleManage"],"mappings":"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"}
1
+ {"version":3,"file":"TenantList-Bmrjd5U9.js","sources":["../components/business/admin/tenant/TenantForm.vue","../components/business/admin/tenant/TenantRoleManage.vue","../components/business/admin/tenant/TenantList.vue"],"sourcesContent":["<template>\n <el-dialog v-model=\"visible\" width=\"800px\" :title=\"ct('租户信息')\">\n <el-form ref=\"formRef\" :rules=\"rules\" :model=\"form\" label-width=\"140px\">\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"adClientId\" :label=\"ct('客户端ID')\">\n <el-input v-model=\"form.adClientId\" disabled :placeholder=\"ct('自动生成')\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"code\" :label=\"ct('客户端编码')\">\n <el-input v-model=\"form.code\"></el-input>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item prop=\"name\" :label=\"ct('客户端名称')\">\n <el-input v-model=\"form.name\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"orgValue\" :label=\"ct('组织机构编码')\">\n <el-input v-model=\"form.orgValue\"></el-input>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item prop=\"orgName\" :label=\"ct('组织机构名称')\">\n <el-input v-model=\"form.orgName\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"12\">\n <el-form-item prop=\"userName\" :label=\"ct('用户名称')\">\n <el-input v-model=\"form.userName\"></el-input>\n </el-form-item>\n </el-col>\n <el-col :span=\"12\">\n <el-form-item prop=\"userUserName\" :label=\"ct('登录账户名称')\">\n <el-input v-model=\"form.userUserName\" :disabled=\"type === 'add' ? false : true\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n <el-row>\n <el-col :span=\"24\">\n <el-form-item :label=\"ct('客户端备注')\">\n <el-input v-model=\"form.description\" type=\"textarea\" :rows=\"3\"></el-input>\n </el-form-item>\n </el-col>\n </el-row>\n </el-form>\n <template #footer>\n <el-button type=\"primary\" @click=\"ok()\">{{ ct('保存') }}</el-button>\n <el-button @click=\"cancel()\">{{ ct('取消') }}</el-button>\n </template>\n </el-dialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, reactive, watch } from 'vue';\nimport { ElMessage } from 'element-plus';\nimport type { FormInstance, FormRules } from 'element-plus';\nimport { saTenantInsert, saTenantGetById, saTenantUpdate } from '../../../../api/tenantApi';\nimport type { TenantInfo, FormActionData } from './types';\n\timport { ct } from '../../../../utils/i18nHelp';\n\ninterface Props {\n actionData: FormActionData;\n}\nconst props = defineProps<Props>();\nconst emit = defineEmits<{\n getinfo: [];\n}>();\n\nconst visible = ref(false);\nconst formRef = ref<FormInstance>();\nconst type = ref<'add' | 'edit'>('add');\nconst form = reactive<Partial<TenantInfo>>({});\n\nconst rules: FormRules<TenantInfo> = {\n code: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n name: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n orgValue: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n orgName: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n userName: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n userUserName: [{ required: true, message: ct('必须输入该项'), trigger: 'blur' }],\n};\n\nconst getById = (id: string) => {\n const param = {\n adClientId: id,\n };\n saTenantGetById(param).then((res) => {\n if ((res.data as any).data) {\n Object.assign(form, (res.data as any).data);\n }\n });\n};\n\nconst ok = async () => {\n if (!formRef.value) return;\n try {\n await formRef.value.validate();\n if (type.value === 'add') {\n saTenantInsert(form).then((res) => {\n if ((res.data as any).data) {\n ElMessage.success(ct('保存成功!'));\n visible.value = false;\n emit('getinfo');\n }\n });\n } else if (type.value === 'edit') {\n saTenantUpdate(form).then((res) => {\n if ((res.data as any).data) {\n ElMessage.success(ct('保存成功!'));\n visible.value = false;\n emit('getinfo');\n }\n });\n }\n } catch {\n // 验证失败\n }\n};\n\nconst cancel = () => {\n visible.value = false;\n};\n\nwatch(\n () => props.actionData,\n (val) => {\n type.value = val.type;\n if (val.type === 'add') {\n Object.keys(form).forEach((key) => {\n delete form[key as keyof TenantInfo];\n });\n visible.value = true;\n } else if (val.type === 'edit') {\n getById(val.id!);\n visible.value = true;\n } else {\n visible.value = false;\n }\n },\n { deep: true }\n);\n</script>\n","<template>\n <el-drawer :title=\"ct('分配权限')\" v-model=\"visible\" :width=\"800\" @close=\"cancel\">\n <el-row>\n <el-col :span=\"12\">\n <el-card :title=\"ct('菜单权限')\">\n <div class=\"drawer-content\">\n <el-tree\n ref=\"treeRef\"\n :data=\"permData\"\n :props=\"{ label: 'title', children: 'children' }\"\n show-checkbox\n node-key=\"key\"\n default-expand-parent\n v-loading=\"treeLoading\"\n @current-change=\"selectTree\"\n @check-change=\"checkedMenuTree\"></el-tree>\n </div>\n </el-card>\n </el-col>\n <el-col :span=\"12\">\n <el-card :title=\"ct('按钮权限')\">\n <div class=\"drawer-content\">\n <el-card v-for=\"(item, key) in curWindowBtnList\" :key=\"key\" style=\"margin-top: 5px\">\n <template #header>\n <span style=\"margin-left: 10px\">{{ item.NAME }}</span>\n <el-checkbox\n v-model=\"item.checkAll\"\n :indeterminate=\"item.indeterminate\"\n @change=\"handleCheckAll($event, item, key)\">\n {{ ct('全选') }}\n </el-checkbox>\n </template>\n <el-checkbox-group\n :model-value=\"item.checkChilds\"\n @update:model-value=\"(val) => checkAllGroupChange(val, key)\">\n <el-checkbox v-for=\"child in item.childs\" :key=\"child.ID\" :label=\"child.ID\">\n {{ child.NAME }}\n </el-checkbox>\n </el-checkbox-group>\n </el-card>\n <el-empty v-if=\"curWindowBtnList.length === 0\" :description=\"ct('暂无权限按钮')\"></el-empty>\n <div class=\"drawer-footer br\">\n <el-button type=\"primary\" :loading=\"submitPermLoading\" @click=\"submitPermEdit\">\n {{ ct('提交') }}\n </el-button>\n <el-button @click=\"cancel\">{{ ct('取消') }}</el-button>\n </div>\n </div>\n </el-card>\n </el-col>\n </el-row>\n </el-drawer>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, reactive, watch, nextTick } from 'vue';\nimport { ElMessage } from 'element-plus';\nimport { deepClone } from 'yh-client';\n\timport { ct } from '../../../../utils/i18nHelp';\nimport {\n saTenantGetById,\n saTenantGetMenuList,\n saTenantGetMenuWindowButton,\n saTenantGetRoleMenus,\n saTenantGetRoleWindowButton,\n saTenantSetMenus,\n} from '../../../../api/tenantApi';\nimport type { MenuTreeNode, WindowButton, ButtonPermissionMap, AuthActionData } from './types';\n\ninterface Props {\n actionData: AuthActionData;\n}\nconst props = defineProps<Props>();\nconst emit = defineEmits<{\n getinfo: [];\n}>();\n\nconst tenantInfo = reactive<Record<string, any>>({});\nconst submitPermLoading = ref(false);\nconst saveWinBtnList = ref<string[]>([]);\nconst unCheckedMenuTreeData = ref<Record<string, string>>({});\nconst roleMenuData = ref<Record<string, any>>({});\nconst curWindowBtnList = ref<WindowButton[]>([]);\nconst curSelectedMenuId = ref('');\nconst roleSavedBtnPermMap = ref<ButtonPermissionMap>({});\nconst checkedMenuKeys = ref<string[]>([]);\nconst expandedMenuKeys = ref<string[]>([]);\nconst permData = ref<MenuTreeNode[]>([]);\nconst treeLoading = ref(true);\nconst id = ref('');\nconst visible = ref(false);\nconst treeRef = ref();\n\nconst resetBtnPerData = () => {\n roleSavedBtnPermMap.value = {};\n unCheckedMenuTreeData.value = {};\n roleMenuData.value = {};\n curWindowBtnList.value = [];\n saveWinBtnList.value = [];\n};\n\nconst submitPermEdit = () => {\n submitPermLoading.value = true;\n const permMenuIds = checkedMenuKeys.value.join(',');\n const permMenuBtnIds: Record<string, string[]> = {};\n Object.keys(roleSavedBtnPermMap.value).forEach((key) => {\n permMenuBtnIds['W_' + key] = roleSavedBtnPermMap.value[key];\n });\n saTenantSetMenus({\n roleId: tenantInfo.adRoleId,\n ids: permMenuIds,\n btns: JSON.stringify(permMenuBtnIds),\n adClientId: tenantInfo.adClientId,\n adOrgId: tenantInfo.adOrgId,\n }).then((res) => {\n submitPermLoading.value = false;\n const data = res.data as any;\n if (data.result) {\n ElMessage.success(ct('操作成功'));\n cancel();\n } else {\n ElMessage.error(data.msg);\n }\n });\n};\n\nconst getRoleWindowButton = (roleId: string) => {\n saTenantGetRoleWindowButton({ adRoleId: roleId }).then((res) => {\n if ((res.data as any).data) {\n const data = (res.data as any).data;\n const roleBtnPermMap: ButtonPermissionMap = {};\n data.forEach((e: any) => {\n if (!roleBtnPermMap[e.sysWindowId]) {\n roleBtnPermMap[e.sysWindowId] = [];\n }\n roleBtnPermMap[e.sysWindowId].push(e.sysWindowButtonId);\n });\n roleSavedBtnPermMap.value = roleBtnPermMap;\n }\n });\n};\n\nconst cancel = () => {\n resetBtnPerData();\n visible.value = false;\n emit('getinfo');\n};\n\nconst getById = async (idVal: string) => {\n const param = {\n adClientId: idVal,\n };\n let data: any;\n await saTenantGetById(param).then((res) => {\n if ((res.data as any).data) {\n data = (res.data as any).data;\n }\n });\n return data;\n};\n\nconst getRoleMenus = async (roleId: string) => {\n const roleMenuDataTemp: Record<string, any> = {};\n expandedMenuKeys.value = [];\n checkedMenuKeys.value = [];\n\n await saTenantGetRoleMenus({ adRoleId: roleId }).then((res) => {\n const data = res.data as any;\n if (data.result) {\n data.data.forEach((e: any) => {\n if (e.MENU_TYPE !== 'GROUP') {\n roleMenuDataTemp[e.AD_MENU_ID] = e;\n checkedMenuKeys.value.push(e.AD_MENU_ID);\n } else {\n expandedMenuKeys.value.push(e.AD_MENU_ID);\n }\n });\n }\n });\n return roleMenuDataTemp;\n};\n\nconst initMenu = (roleMenuDataTemp: Record<string, any>) => {\n saTenantGetMenuList({}).then((res) => {\n const resData = res.data as any;\n if (resData.data) {\n const newTreeData: MenuTreeNode[] = [];\n const data = resData.data;\n data.forEach((e: any) => {\n newTreeData.push(parseTreeData(e, 0));\n });\n calNewTreeData(newTreeData, roleMenuDataTemp);\n permData.value = newTreeData;\n treeLoading.value = false;\n }\n });\n};\n\nconst calNewTreeData = (newTreeData: MenuTreeNode[], roleMenuDataTemp: Record<string, any>): number => {\n let checkedCount = 0;\n newTreeData.forEach((e) => {\n e.expand = true;\n\n if (roleMenuDataTemp[e.adMenuId]) {\n e.checked = true;\n checkedCount++;\n }\n\n if (e.children && e.children.length > 0) {\n const sonCheckedCount = calNewTreeData(e.children, roleMenuDataTemp);\n if (sonCheckedCount === e.children.length) {\n e.checked = true;\n e.selectable = true;\n e.indeterminate = false;\n } else if (sonCheckedCount > 0 && sonCheckedCount < e.children.length) {\n e.indeterminate = true;\n e.checked = false;\n e.selectable = true;\n } else {\n e.checked = false;\n e.indeterminate = false;\n }\n }\n });\n return checkedCount;\n};\n\nconst selectTree = (data: MenuTreeNode | null, node: any) => {\n if (data) {\n curSelectedMenuId.value = data.sysWindowId || '';\n if (!curSelectedMenuId.value) {\n curWindowBtnList.value = [];\n saveWinBtnList.value = roleSavedBtnPermMap.value[curSelectedMenuId.value] || [];\n return;\n }\n\n saTenantGetMenuWindowButton({ sysWindowId: curSelectedMenuId.value }).then((res) => {\n const resData = res.data as any;\n const { result, data: resDataInner } = resData;\n if (result && resDataInner) {\n const roleBtnData: WindowButton[] = [];\n const tempQyBtnData: Record<string, any[]> = {};\n\n resDataInner.forEach((tData: any) => {\n if (tData.TYPE === 'QY') {\n roleBtnData.push(tData);\n tempQyBtnData[tData.ID] = [];\n } else {\n if (tempQyBtnData[tData.PARENT_ID]) {\n tempQyBtnData[tData.PARENT_ID].push(tData);\n }\n }\n });\n\n roleBtnData.forEach((item) => {\n item.childs = tempQyBtnData[item.ID];\n const checkChilds = roleSavedBtnPermMap.value[curSelectedMenuId.value] || [];\n let tcount = 0;\n tempQyBtnData[item.ID].forEach((es: any) => {\n if (checkChilds.includes(es.ID)) {\n tcount++;\n }\n });\n if (tcount === tempQyBtnData[item.ID].length) {\n item.checkAll = true;\n item.indeterminate = false;\n } else if (tcount > 0) {\n item.checkAll = false;\n item.indeterminate = true;\n } else {\n item.checkAll = false;\n item.indeterminate = false;\n }\n item.checkChilds = checkChilds;\n });\n\n curWindowBtnList.value = roleBtnData;\n saveWinBtnList.value = roleSavedBtnPermMap.value[curSelectedMenuId.value] || [];\n }\n });\n }\n};\n\nconst checkedMenuTree = (data: MenuTreeNode, checked: boolean) => {\n if (data.menuType !== 'GROUP') {\n if (!checked) {\n if (!unCheckedMenuTreeData.value[data.adMenuId]) {\n unCheckedMenuTreeData.value[data.adMenuId] = '1';\n }\n } else {\n delete unCheckedMenuTreeData.value[data.adMenuId];\n }\n } else {\n getTreeCheckedDataLoop(data, !checked);\n }\n};\n\nconst getTreeCheckedDataLoop = (cv: MenuTreeNode, delFlag: boolean) => {\n if (delFlag) {\n if (!unCheckedMenuTreeData.value[cv.adMenuId]) {\n unCheckedMenuTreeData.value[cv.adMenuId] = '1';\n }\n if (cv.children && cv.children.length > 0) {\n cv.children.forEach((ss) => {\n getTreeCheckedDataLoop(ss, delFlag);\n });\n }\n } else {\n delete unCheckedMenuTreeData.value[cv.adMenuId];\n }\n};\n\nconst handleCheckAll = (checked: boolean, item: WindowButton, key: number) => {\n let checkChilds: string[] = [];\n if (!item.indeterminate) {\n item.checkAll = false;\n item.indeterminate = false;\n item.checkChilds = checkChilds;\n } else {\n checkChilds = item.childs.map((child) => child.ID);\n item.checkAll = true;\n item.indeterminate = false;\n item.checkChilds = checkChilds;\n }\n\n roleSavedBtnPermMap.value[curSelectedMenuId.value] = checkChilds;\n curWindowBtnList.value[key] = item;\n};\n\nconst checkAllGroupChange = (event: string[], key: number) => {\n const list = deepClone(curWindowBtnList.value);\n const currentItem = list[key];\n if (event.length > 0) {\n let containFlag = 0;\n let okCount = 0;\n for (let i = 0; i < currentItem.childs.length; i++) {\n if (event.includes(currentItem.childs[i].ID)) {\n okCount++;\n }\n }\n if (okCount === currentItem.childs.length) {\n containFlag = 2;\n } else {\n containFlag = 1;\n }\n if (containFlag === 1) {\n currentItem.checkAll = false;\n currentItem.indeterminate = okCount === 0 ? false : true;\n } else if (containFlag === 2) {\n currentItem.checkAll = true;\n currentItem.indeterminate = false;\n }\n } else {\n currentItem.checkAll = false;\n currentItem.indeterminate = false;\n }\n currentItem.checkChilds = event;\n curWindowBtnList.value[key] = currentItem;\n roleSavedBtnPermMap.value[curSelectedMenuId.value] = event;\n};\n\nconst parseTreeData = (curLevelData: any, curLevel: number): MenuTreeNode => {\n const newLevelData: any = { data: curLevelData };\n newLevelData.key = curLevelData.adMenuId;\n newLevelData.title = curLevelData.name;\n\n if (curLevelData._childs && curLevelData._childs.length > 0) {\n curLevelData._childs.forEach((sonTreeData: any) => {\n if (!newLevelData.children) {\n newLevelData.children = [];\n }\n newLevelData.children.push(parseTreeData(sonTreeData, curLevel + 1));\n });\n newLevelData.isLeaf = false;\n } else {\n newLevelData.isLeaf = true;\n }\n delete curLevelData._childs;\n return newLevelData;\n};\n\nwatch(\n () => props.actionData,\n async (val) => {\n id.value = val.id;\n const dataTemp = await getById(val.id);\n Object.assign(tenantInfo, dataTemp);\n getRoleWindowButton(tenantInfo.adRoleId);\n const roleMenuDataTemp = await getRoleMenus(tenantInfo.adRoleId);\n initMenu(roleMenuDataTemp);\n visible.value = true;\n },\n { deep: true }\n);\n</script>\n\n<style scoped>\n.drawer-footer {\n z-index: 10;\n width: 100%;\n position: absolute;\n bottom: 0;\n left: 0;\n border-top: 1px solid #e8e8e8;\n padding: 10px 16px;\n text-align: left;\n background: #fff;\n}\n\n.drawer-content {\n height: calc(100vh - 51px - 32px - 32px - 51px - 2px);\n overflow: auto;\n}\n</style>\n","<template>\n <el-form\n :model=\"searchForm\"\n class=\"ant-advanced-search-form\"\n inline>\n <el-form-item :label=\"ct('客户端编码')\">\n <el-input v-model=\"searchForm.code\" />\n </el-form-item>\n <el-form-item :label=\"ct('客户端名称')\">\n <el-input v-model=\"searchForm.name\" />\n </el-form-item>\n <el-form-item>\n <el-button\n type=\"primary\"\n @click=\"query()\">\n <YhIcon\n slot=\"icon\"\n name=\"search\"></YhIcon>\n {{ ct('查询') }}\n </el-button>\n </el-form-item>\n <el-form-item>\n <el-button\n type=\"primary\"\n @click=\"add()\">\n <YhIcon\n slot=\"icon\"\n name=\"plus\"></YhIcon>\n {{ ct('初始化租户') }}\n </el-button>\n </el-form-item>\n </el-form>\n <vxe-grid v-bind=\"pageListOptions\">\n <template #action=\"{row}\">\n <el-button\n type=\"primary\"\n size=\"small\"\n text\n style=\"margin-right: 5px\"\n @click=\"edit(row)\">\n {{ ct('编辑') }}\n </el-button>\n <el-button\n type=\"primary\"\n size=\"small\"\n text\n @click=\"authorization(row)\">\n {{ ct('授权') }}\n </el-button>\n <el-button\n type=\"danger\"\n size=\"small\"\n text\n @click=\"remove(row)\">\n {{ ct('删除') }}\n </el-button>\n </template>\n <template #pager>\n <vxe-pager\n :layouts=\"[\n 'Sizes',\n 'PrevJump',\n 'PrevPage',\n 'Number',\n 'NextPage',\n 'NextJump',\n 'FullJump',\n 'Total',\n ]\"\n v-model:current-page=\"tablePage.currentPage\"\n v-model:page-size=\"tablePage.pageSize\"\n :total=\"tablePage.total\"\n @page-change=\"handlePageChange\"></vxe-pager>\n </template>\n </vxe-grid>\n <TenantForm\n :actionData=\"toFormData\"\n @getinfo=\"query()\"></TenantForm>\n <TenantRoleManage\n :actionData=\"toRoleData\"\n @getinfo=\"query()\"></TenantRoleManage>\n</template>\n\n<script setup lang=\"ts\">\n import {reactive, onMounted} from 'vue';\n import {ElMessage, ElMessageBox} from 'element-plus';\n import type {VxeGridProps} from 'vxe-table';\n import TenantForm from './TenantForm.vue';\n import TenantRoleManage from './TenantRoleManage.vue';\n import {saTenantDelete, saTenantListPage} from '../../../../api/tenantApi';\n import type {TenantInfo, SearchForm, TablePage, FormActionData, AuthActionData} from './types';\n\t import {ct} from '../../../../utils/i18nHelp';\n\n // 响应式数据\n const toFormData = reactive<FormActionData>({} as FormActionData);\n const toRoleData = reactive<AuthActionData>({} as AuthActionData);\n const tablePage = reactive<TablePage>({\n total: 0,\n currentPage: 1,\n pageSize: 10,\n });\n const pageListOptions = reactive<VxeGridProps>({\n loading: false,\n border: false,\n showOverflow: true,\n align: 'center',\n columns: [\n {field: 'adClientId', title: ct('租户ID'), fixed: 'left', width: 200},\n {field: 'code', title: ct('客户端编码')},\n {field: 'name', title: ct('客户端名称')},\n {field: 'action', title: '操作', fixed: 'right', width: 300, slots: {default: 'action'}},\n ],\n data: [],\n });\n const searchForm = reactive<SearchForm>({});\n\n // 方法\n const handlePageChange = ({currentPage, pageSize}: {currentPage: number; pageSize: number}) => {\n tablePage.currentPage = currentPage;\n tablePage.pageSize = pageSize;\n query();\n };\n\n const query = () => {\n const param = {\n page: tablePage.currentPage,\n size: tablePage.pageSize,\n name: searchForm.name,\n code: searchForm.code,\n };\n pageListOptions.loading = true;\n saTenantListPage(param).then((res) => {\n const resData = res.data as any;\n if (resData.data.records) {\n pageListOptions.data = resData.data.records;\n tablePage.total = resData.data.total;\n tablePage.currentPage = resData.data.current;\n }\n pageListOptions.loading = false;\n });\n };\n\n const add = () => {\n Object.assign(toFormData, {type: 'add'} as FormActionData);\n };\n\n const edit = (row: TenantInfo) => {\n Object.assign(toFormData, {type: 'edit', id: row.adClientId});\n };\n\n const authorization = (row: TenantInfo) => {\n Object.assign(toRoleData, {id: row.adClientId});\n };\n\n const remove = (row: TenantInfo) => {\n ElMessageBox.confirm('这将删除租户以及租户下所有数据!是否删除?', '请确认', {\n confirmButtonText: '确定',\n cancelButtonText: '取消',\n type: 'warning',\n })\n .then(() => {\n const param = {\n adClientId: row.adClientId,\n };\n saTenantDelete(param).then((res) => {\n const resData = res.data as any;\n if (resData.result) {\n ElMessage.success(resData.msg);\n query();\n } else {\n ElMessage.error(resData.msg);\n }\n });\n })\n .catch(() => {});\n };\n\n // 生命周期\n onMounted(() => {\n query();\n });\n</script>\n"],"names":["props","__props","emit","__emit","visible","ref","formRef","type","form","reactive","rules","ct","getById","id","saTenantGetById","res","ok","saTenantInsert","ElMessage","saTenantUpdate","cancel","watch","val","key","_createBlock","_component_el_dialog","$event","_unref","_createVNode","_component_el_button","_component_el_form","_component_el_row","_component_el_col","_component_el_form_item","_component_el_input","_cache","tenantInfo","submitPermLoading","saveWinBtnList","unCheckedMenuTreeData","roleMenuData","curWindowBtnList","curSelectedMenuId","roleSavedBtnPermMap","checkedMenuKeys","expandedMenuKeys","permData","treeLoading","treeRef","resetBtnPerData","submitPermEdit","permMenuIds","permMenuBtnIds","saTenantSetMenus","data","getRoleWindowButton","roleId","saTenantGetRoleWindowButton","roleBtnPermMap","e","idVal","param","getRoleMenus","roleMenuDataTemp","saTenantGetRoleMenus","initMenu","saTenantGetMenuList","resData","newTreeData","parseTreeData","calNewTreeData","checkedCount","sonCheckedCount","selectTree","node","saTenantGetMenuWindowButton","result","resDataInner","roleBtnData","tempQyBtnData","tData","item","checkChilds","tcount","es","checkedMenuTree","checked","getTreeCheckedDataLoop","cv","delFlag","ss","handleCheckAll","child","checkAllGroupChange","event","currentItem","deepClone","containFlag","okCount","i","curLevelData","curLevel","newLevelData","sonTreeData","dataTemp","_component_el_drawer","_component_el_card","_createElementVNode","_hoisted_1","_component_el_tree","_hoisted_2","_openBlock","_createElementBlock","_Fragment","_renderList","_hoisted_3","_toDisplayString","_component_el_checkbox","_component_el_checkbox_group","_createTextVNode","_component_el_empty","_hoisted_4","toFormData","toRoleData","tablePage","pageListOptions","searchForm","handlePageChange","currentPage","pageSize","query","saTenantListPage","add","edit","row","authorization","remove","ElMessageBox","saTenantDelete","onMounted","_component_YhIcon","_component_vxe_grid","_withCtx","_component_vxe_pager","TenantForm","TenantRoleManage"],"mappings":"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"}
@@ -4,6 +4,7 @@ import { ref as Ae, computed as Xe, watch as eu, reactive as Qh, markRaw as ec,
4
4
  import { useRoute as tu, useRouter as Ya, createWebHashHistory as LL, createWebHistory as EL, createRouter as PL } from "vue-router";
5
5
  import { useClientStore as Yt, Config as gr, menusToAside as kL, httpRequest as ft, getRoutes as xC, getMenus as bC, clearStorage as RL, getStorage as wC, setStorage as SC, initTokens as NL, mergeConfig as OL, on as jL, clearAllTokens as VL, getConfig as j0 } from "yh-client";
6
6
  import BL, { ElMessage as wi, ElMessageBox as FL, ElConfigProvider as GL } from "element-plus";
7
+ import "./vite.js";
7
8
  const rs = Ni("yhApp", () => {
8
9
  const n = Ae(""), t = Ae(""), e = Ae(!1), r = Ae({
9
10
  size: "default",
@@ -594,7 +595,7 @@ const rf = Ni("yhTabs", () => {
594
595
  autoAdjustKeepAliveMax: o,
595
596
  computeKeepAliveInclude: s
596
597
  };
597
- }), U0 = "yh-layout-collapse", lZ = Ni("yhLayout", () => {
598
+ }), U0 = "yh-layout-collapse", uZ = Ni("yhLayout", () => {
598
599
  const n = Ae(!1), t = Ae(!1);
599
600
  function e() {
600
601
  n.value = !n.value, localStorage.setItem(U0, String(n.value));
@@ -742,7 +743,7 @@ const nu = Ni("routerStatus", () => {
742
743
  ), t.value = "switching";
743
744
  }
744
745
  };
745
- }), uZ = () => nu().showLoading(), hZ = () => nu().hideLoading(), cZ = () => nu().showSwitching(), Je = bL();
746
+ }), hZ = () => nu().showLoading(), cZ = () => nu().hideLoading(), fZ = () => nu().showSwitching(), Je = bL();
746
747
  let DC = null;
747
748
  const qL = (n) => {
748
749
  n && (DC = n);
@@ -756,7 +757,7 @@ const qL = (n) => {
756
757
  isBase: !0,
757
758
  keepAlive: !1
758
759
  },
759
- component: () => import("./MainLogin-BNH1G8-y.js")
760
+ component: () => import("./MainLogin-CEfqs-bw.js")
760
761
  },
761
762
  {
762
763
  path: "/admin/login",
@@ -767,7 +768,7 @@ const qL = (n) => {
767
768
  isBase: !0,
768
769
  keepAlive: !1
769
770
  },
770
- component: () => import("./AdminLogin-BO6LBhX4.js")
771
+ component: () => import("./AdminLogin-DRTlX2BK.js")
771
772
  },
772
773
  {
773
774
  path: "/401",
@@ -778,7 +779,7 @@ const qL = (n) => {
778
779
  isBase: !0,
779
780
  keepAlive: !1
780
781
  },
781
- component: () => import("./Error401-BlxNP-z2.js")
782
+ component: () => import("./Error401-Bkv92P3b.js")
782
783
  },
783
784
  {
784
785
  path: "/404",
@@ -789,7 +790,7 @@ const qL = (n) => {
789
790
  isBase: !0,
790
791
  keepAlive: !1
791
792
  },
792
- component: () => import("./Error404-DZ04uTX_.js")
793
+ component: () => import("./Error404-BCYn0Ny4.js")
793
794
  },
794
795
  {
795
796
  path: "/500",
@@ -800,16 +801,16 @@ const qL = (n) => {
800
801
  isBase: !0,
801
802
  keepAlive: !1
802
803
  },
803
- component: () => import("./Error500-EnaAvRHg.js")
804
+ component: () => import("./Error500-d-qzJeFw.js")
804
805
  }
805
806
  ], Ay = {
806
- "/home": () => import("./Error404-DZ04uTX_.js"),
807
+ "/home": () => import("./Error404-BCYn0Ny4.js"),
807
808
  // 临时使用404页面,后续可创建专门的首页
808
- "/401": () => import("./Error401-BlxNP-z2.js"),
809
- "/404": () => import("./Error404-DZ04uTX_.js"),
810
- "/500": () => import("./Error500-EnaAvRHg.js"),
811
- "/layout/main/system/roleManage": () => import("./RoleManage-Do66qpZN.js"),
812
- "/layout/main/system/orgManage": () => import("./OrgManage-dBnClzKk.js")
809
+ "/401": () => import("./Error401-Bkv92P3b.js"),
810
+ "/404": () => import("./Error404-BCYn0Ny4.js"),
811
+ "/500": () => import("./Error500-d-qzJeFw.js"),
812
+ "/layout/main/system/roleManage": () => import("./RoleManage-BQ4XEXc9.js"),
813
+ "/layout/main/system/orgManage": () => import("./OrgManage-DKB1h-uE.js")
813
814
  };
814
815
  let zl = {
815
816
  ...Ay
@@ -820,7 +821,7 @@ function WL(n) {
820
821
  function UL() {
821
822
  return zl;
822
823
  }
823
- function fZ(n, t) {
824
+ function dZ(n, t) {
824
825
  return Object.fromEntries(
825
826
  Object.entries(n).map(([e, r]) => [
826
827
  e.replace(t, "").replace(".vue", ""),
@@ -835,7 +836,7 @@ function fZ(n, t) {
835
836
  function YL(n) {
836
837
  zl = { ...zl, ...n };
837
838
  }
838
- function dZ() {
839
+ function vZ() {
839
840
  zl = { ...Ay };
840
841
  }
841
842
  function $L(n, t) {
@@ -892,7 +893,7 @@ const ZL = /* @__PURE__ */ Tt({
892
893
  }
893
894
  });
894
895
  let AC = (n, t) => n, De = (n, t) => AC(n, t);
895
- const vZ = (n) => {
896
+ const gZ = (n) => {
896
897
  AC = n;
897
898
  }, XL = {
898
899
  key: 0,
@@ -45538,9 +45539,9 @@ const yY = /* @__PURE__ */ Tt({
45538
45539
  ];
45539
45540
  function AY() {
45540
45541
  YL({
45541
- "/admin/saTenant": () => import("./TenantList--3JWscXe.js"),
45542
- "/admin/menu": () => import("./MenuManage-Xm8iH8Qc.js"),
45543
- "/admin/config": () => import("./SysConfig-CCm80eJB.js")
45542
+ "/admin/saTenant": () => import("./TenantList-Bmrjd5U9.js"),
45543
+ "/admin/menu": () => import("./MenuManage-Dh5f0ylw.js"),
45544
+ "/admin/config": () => import("./SysConfig-M3_Y5iT1.js")
45544
45545
  });
45545
45546
  }
45546
45547
  function zY() {
@@ -45699,7 +45700,7 @@ async function uL(n, t) {
45699
45700
  const r = {
45700
45701
  path: "/",
45701
45702
  name: "Index",
45702
- component: () => import("./Index-Cq0YTHU1.js"),
45703
+ component: () => import("./Index-Dwwn23se.js"),
45703
45704
  redirect: () => {
45704
45705
  const l = gr.get("homePath");
45705
45706
  return l || "/home";
@@ -45714,7 +45715,7 @@ async function uL(n, t) {
45714
45715
  isWhite: !0,
45715
45716
  keepAlive: !1
45716
45717
  },
45717
- component: DC || (() => import("./HomeIndex-B-vY8ijY.js"))
45718
+ component: DC || (() => import("./HomeIndex-Dwt3Bs1F.js"))
45718
45719
  }
45719
45720
  ]
45720
45721
  };
@@ -73254,7 +73255,7 @@ let Ih = null, xL = [];
73254
73255
  function q$(n) {
73255
73256
  n && (xL = Array.isArray(n) ? n : [n]);
73256
73257
  }
73257
- async function gZ() {
73258
+ async function pZ() {
73258
73259
  if (Ih) return Ih;
73259
73260
  const n = Cg.css_prefix_text, t = Cg.font_family, e = Cg.glyphs.map((r) => {
73260
73261
  const i = r.font_class || r.name;
@@ -73390,7 +73391,7 @@ function J$(n, t) {
73390
73391
  path: "icon-explorer",
73391
73392
  name: "IconExplorer",
73392
73393
  meta: { title: "图标库", keepAlive: !0, noPadding: !0 },
73393
- component: () => import("./IconExplorer-qW9wfu65.js")
73394
+ component: () => import("./IconExplorer-WR15Yq3l.js")
73394
73395
  }), console.log("router inited", n.currentRoute.value.fullPath), ((e = n.currentRoute) == null ? void 0 : e.value.fullPath) === "/404" && n.replace("/"), await K$();
73395
73396
  } catch (r) {
73396
73397
  console.error("[init] 业务路由加载失败:", r);
@@ -73428,7 +73429,7 @@ function Q$(n, t, e) {
73428
73429
  }), dL(), a;
73429
73430
  };
73430
73431
  }
73431
- function pZ(n = {}) {
73432
+ function yZ(n = {}) {
73432
73433
  const {
73433
73434
  el: t = "#app",
73434
73435
  router: e = {},
@@ -73447,15 +73448,15 @@ function pZ(n = {}) {
73447
73448
  }
73448
73449
  const Xf = rs(Je);
73449
73450
  Yt(Je);
73450
- const yZ = (n) => {
73451
+ const mZ = (n) => {
73451
73452
  Xf.setAppInfo(n);
73452
- }, mZ = (n) => {
73453
- Xf.setLogo(n);
73454
73453
  }, _Z = (n) => {
73454
+ Xf.setLogo(n);
73455
+ }, xZ = (n) => {
73455
73456
  Xf.setIsDev(n);
73456
- }, xZ = () => {
73457
+ }, bZ = () => {
73457
73458
  Xf.isDev ? ft.setBaseUrl(j0("baseUrl.dev")) : ft.setBaseUrl(j0("baseUrl.pro"));
73458
- }, bZ = (n, t, e) => {
73459
+ }, wZ = (n, t, e) => {
73459
73460
  console.error("Application error:", n), console.error("Component instance:", t), console.error("Error info:", e), wi.error("应用运行时发生错误");
73460
73461
  }, eZ = /* @__PURE__ */ Tt({
73461
73462
  __name: "ChartPie",
@@ -73517,7 +73518,7 @@ const yZ = (n) => {
73517
73518
  style: ns({ height: n.height })
73518
73519
  }, null, 4));
73519
73520
  }
73520
- }), wZ = /* @__PURE__ */ no(eZ, [["__scopeId", "data-v-78fcd6b8"]]), tZ = /* @__PURE__ */ Tt({
73521
+ }), SZ = /* @__PURE__ */ no(eZ, [["__scopeId", "data-v-78fcd6b8"]]), tZ = /* @__PURE__ */ Tt({
73521
73522
  __name: "ChartBar",
73522
73523
  props: {
73523
73524
  data: { default: () => ({}) },
@@ -73580,102 +73581,102 @@ const yZ = (n) => {
73580
73581
  style: ns({ height: n.height })
73581
73582
  }, null, 4));
73582
73583
  }
73583
- }), SZ = /* @__PURE__ */ no(tZ, [["__scopeId", "data-v-df866f6d"]]), TZ = (n) => ft.request({
73584
+ }), TZ = /* @__PURE__ */ no(tZ, [["__scopeId", "data-v-df866f6d"]]), CZ = (n) => ft.request({
73584
73585
  method: "POST",
73585
73586
  url: "/admin/tenant/setMenus",
73586
73587
  data: n,
73587
73588
  type: "json"
73588
- }), CZ = (n) => ft.request({
73589
+ }), DZ = (n) => ft.request({
73589
73590
  method: "POST",
73590
73591
  url: "/admin/tenant/removeMenus",
73591
73592
  data: n,
73592
73593
  type: "json"
73593
- }), DZ = (n) => ft.request({
73594
+ }), AZ = (n) => ft.request({
73594
73595
  method: "POST",
73595
73596
  url: "/admin/tenant/getMenuWindowButton",
73596
73597
  data: n,
73597
73598
  type: "json"
73598
- }), AZ = (n) => ft.request({
73599
+ }), zZ = (n) => ft.request({
73599
73600
  method: "POST",
73600
73601
  url: "/admin/tenant/getRoleWindowButton",
73601
73602
  data: n,
73602
73603
  type: "json"
73603
- }), zZ = (n) => ft.request({
73604
+ }), MZ = (n) => ft.request({
73604
73605
  method: "POST",
73605
73606
  url: "/admin/tenant/getRoleMenus",
73606
73607
  data: n,
73607
73608
  type: "json"
73608
- }), MZ = (n) => ft.request({
73609
+ }), IZ = (n) => ft.request({
73609
73610
  method: "POST",
73610
73611
  url: "/admin/tenant/getMenuList",
73611
73612
  data: n,
73612
73613
  type: "json"
73613
- }), IZ = (n) => ft.request({
73614
+ }), LZ = (n) => ft.request({
73614
73615
  method: "POST",
73615
73616
  url: "/admin/tenant/listPage",
73616
73617
  data: n,
73617
73618
  type: "json"
73618
- }), LZ = (n) => ft.request({
73619
+ }), EZ = (n) => ft.request({
73619
73620
  method: "POST",
73620
73621
  url: "/admin/tenant/getById",
73621
73622
  data: n,
73622
73623
  type: "json"
73623
- }), EZ = (n) => ft.request({
73624
+ }), PZ = (n) => ft.request({
73624
73625
  method: "POST",
73625
73626
  url: "/admin/tenant/insert",
73626
73627
  data: n,
73627
73628
  type: "json"
73628
- }), PZ = (n) => ft.request({
73629
+ }), kZ = (n) => ft.request({
73629
73630
  method: "POST",
73630
73631
  url: "/admin/tenant/update",
73631
73632
  data: n,
73632
73633
  type: "json"
73633
- }), kZ = (n) => ft.request({
73634
+ }), RZ = (n) => ft.request({
73634
73635
  method: "POST",
73635
73636
  url: "/admin/tenant/delete",
73636
73637
  data: n,
73637
73638
  type: "json"
73638
73639
  });
73639
73640
  export {
73640
- yZ as $,
73641
+ mZ as $,
73641
73642
  MY as A,
73642
73643
  Kh as B,
73643
- SZ as C,
73644
+ TZ as C,
73644
73645
  B0 as D,
73645
- bZ as E,
73646
+ wZ as E,
73646
73647
  HL as F,
73647
73648
  cL as G,
73648
73649
  jY as H,
73649
73650
  GY as I,
73650
- fZ as J,
73651
- pZ as K,
73651
+ dZ as J,
73652
+ yZ as K,
73652
73653
  F0 as L,
73653
73654
  zY as M,
73654
73655
  oL as N,
73655
73656
  FY as O,
73656
73657
  BY as P,
73657
- hZ as Q,
73658
+ cZ as Q,
73658
73659
  Ks as R,
73659
73660
  hL as S,
73660
73661
  uL as T,
73661
73662
  YL as U,
73662
73663
  Je as V,
73663
73664
  AY as W,
73664
- dZ as X,
73665
+ vZ as X,
73665
73666
  zh as Y,
73666
- CZ as Z,
73667
+ DZ as Z,
73667
73668
  no as _,
73668
73669
  dL as a,
73669
- xZ as a0,
73670
+ bZ as a0,
73670
73671
  WL as a1,
73671
- vZ as a2,
73672
+ gZ as a2,
73672
73673
  q$ as a3,
73673
- _Z as a4,
73674
- mZ as a5,
73675
- uZ as a6,
73676
- cZ as a7,
73674
+ xZ as a4,
73675
+ _Z as a5,
73676
+ hZ as a6,
73677
+ fZ as a7,
73677
73678
  TC as a8,
73678
- lZ as a9,
73679
+ uZ as a9,
73679
73680
  af as aa,
73680
73681
  nu as ab,
73681
73682
  is as ac,
@@ -73685,21 +73686,21 @@ export {
73685
73686
  bE as b,
73686
73687
  De as c,
73687
73688
  Tm as d,
73688
- wZ as e,
73689
+ SZ as e,
73689
73690
  vL as f,
73690
- gZ as g,
73691
- EZ as h,
73691
+ pZ as g,
73692
+ PZ as h,
73692
73693
  Sm as i,
73693
- PZ as j,
73694
- TZ as k,
73695
- AZ as l,
73696
- zZ as m,
73697
- MZ as n,
73698
- DZ as o,
73699
- IZ as p,
73700
- kZ as q,
73694
+ kZ as j,
73695
+ CZ as k,
73696
+ zZ as l,
73697
+ MZ as m,
73698
+ IZ as n,
73699
+ AZ as o,
73700
+ LZ as p,
73701
+ RZ as q,
73701
73702
  OY as r,
73702
- LZ as s,
73703
+ EZ as s,
73703
73704
  UL as t,
73704
73705
  rs as u,
73705
73706
  G0 as v,
@@ -73708,4 +73709,4 @@ export {
73708
73709
  V0 as y,
73709
73710
  q0 as z
73710
73711
  };
73711
- //# sourceMappingURL=index-B7FFNPt7.js.map
73712
+ //# sourceMappingURL=index-C6dsG-U1.js.map