Files
----/后端源码/yifan.action-ai.cn/index/js/index.DvZY56Zp.js

226 lines
52 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["js/index.BD6gc-Wg.js","js/.pnpm.BudmgPu7.js","css/.pnpm.wMqTaTKD.css","js/element-plus.C1XeB8_q.js","css/element-plus.xU-M-F0J.css","js/_plugin-vue_export-helper.BCo6x5W8.js","js/index.vue_vue_type_script_setup_true_lang.DBU08lF5.js","js/dateUtil.f5zninan.js","js/ConfigInfoDrawer.DEHHhwES.js","js/SingleImageUpload.BGEYd3_j.js","css/SingleImageUpload.B6e3Oigh.css","js/codemirror.BdleaLZh.js","css/codemirror.DPQIqBY5.css","css/ConfigInfoDrawer.CP604VyX.css","js/quickStartManager.D4fuIsPx.js","js/index.Dj2UJJ26.js","css/index.Bv9LzoLL.css","js/index.D5YJbCHA.js","js/index.P4Rrf-tC.js","js/index.vue_vue_type_script_setup_true_lang.HxqFOEQ4.js","css/index.IlfU4mFs.css","css/index.72X2W3H8.css","js/401.CyxLoiaz.js","css/401.bU_mPX7Q.css","js/404.BMbQMEEY.js","css/404.Cr963Te_.css","js/500.-J3BlQqW.js","js/index.lcJcHlJH.js","js/index.vue_vue_type_script_setup_true_lang.DVkqBjwy.js","js/echarts.CmH5SDQe.js","js/common.BWIReEgr.js","css/index.BLeJt1Gx.css","js/profile.DmfWsW7n.js","css/profile.gjyaUVNT.css","js/InternalApp.mkc3M_YJ.js","css/InternalApp.C4hTVpEa.css","js/workplace.DmMyUXAZ.js","css/workplace.tn0RQdqM.css","js/index.B1fnIV41.js","css/index.DEdymui2.css","js/index.Da-S9Q-9.js","js/ai_config.BHEfvHhl.js","css/index.weVjgR2I.css","js/index.DwLCMCDB.js","js/knowledge_base.BBl-t2nA.js","css/index.DvGFAYbb.css","js/JobLogDrawer.pTRZEXJ_.js","js/JobLogDrawer.vue_vue_type_script_setup_true_lang.D_7uUDVX.js","js/index.DSbwPKqQ.js","css/index.oEnURFge.css","js/index.CEi5IP3a.js","css/index.7oZJN2lw.css","js/ExportModal.vue_vue_type_script_setup_true_lang.CZ8E9_Y6.js","js/exceljs.Be_qVvLB.js","js/index.9SZakzRo.js","js/UserTableSelect.vue_vue_type_script_setup_true_lang.w6_RIqRf.js","css/UserTableSelect.DWti2iGr.css","css/index.19bYL_Or.css","js/index.B-d1Zrnt.js","css/index.8mjHZe31.css","js/index.DZJNF0OP.js","css/index.Bo5qoafF.css","js/CustomNode.BDE2sCbo.js","css/CustomNode.CpLIZGhB.css","js/index.CZ02MN36.js","css/index.B5aTMfaz.css","js/index.BydulI3d.js","js/index.2cgJWvk9.js","css/index.CCoPlXYJ.css","js/index.W7mJNR5m.js","js/index.DF1sQ4io.js","js/ImportModal.vue_vue_type_script_setup_true_lang.B-s9nozZ.js","js/index.C3Sa_hzd.js","js/menu.SFFsPeEv.js","js/menu.enum.DOZVpmzQ.js","js/index.Ckczgym6.js","css/index.BnAAOEu0.css","js/index.DQyI9YS9.js","js/index.vue_vue_type_script_setup_true_lang.I__YyVnm.js","js/index.DTejqZeE.js","css/index.BNsMRgQu.css","js/index.CcfcKAyF.js","js/Login.BPYYXPKe.js","css/Login.Cz9nxt3u.css","js/Register.DqTzQGJc.js","js/ResetPwd.r16CjhH4.js","js/index copy.CfXRHaMF.js","css/index copy.DPJ6UNJr.css","js/index.GHRUmrdv.js","js/dept.DTclm3Og.js","js/DataDrawer.qNwp2EK4.js","js/DataDrawer.vue_vue_type_script_setup_true_lang.B7e8ceZC.js","js/index.DS5hWYYB.js","js/index.DwA3n7Er.js","css/index.CSuwyLE1.css","js/index.CwlnSDoR.js","css/index.qYYJxgrG.css","js/index.CqjYFVfy.js","js/index.vue_vue_type_script_setup_true_lang.DgXF6BHw.js","js/wangeditor.Dc8ZcsAm.js","css/wangeditor.BBlIT1EC.css","js/index.BYmT1T1U.js","js/index.D_LhM4oA.js","js/position.DGH_g-lc.js","js/PermissonDrawer.DHE79Q-z.js","js/PermissonDrawer.vue_vue_type_script_setup_true_lang.D_0S4J1J.js","js/role.CEA30EDt.js","js/index.Bu3PYKUN.js","js/DeptTree.DpP2WJiz.js","js/DeptTree.vue_vue_type_script_setup_true_lang.V9vpvjYC.js","js/UserTableSelect.DhT2KjPq.js","js/index.BETkL_Bg.js","js/index.CvBGGucB.js","css/index.PWKHwpxw.css","js/index.DaD0OqXX.js","css/index.Bgj-wn16.css","js/index.BAlKYt4o.js","js/index.DOO8VJTn.js","js/company_naming.BhvfD_JG.js","js/index.DBR2nqUt.js","js/index.jHUPh8Em.js","js/index.DbY3xVSs.js","js/index.kzpYEN1P.js","css/index.CZ9bNXgf.css"])))=>i.map(i=>d[i]);
import{dW as e,dX as t,ak as o,j as s,m as a,r as i,dY as r,dZ as n,d_ as l,d$ as c,e0 as d,e1 as u,e2 as m,e3 as p,J as h,aO as _,S as g,T as f,a0 as v,$ as w,o as E,e4 as y,e5 as T,bx as L}from"./.pnpm.BudmgPu7.js";import{e as D,z as S,E as P,a as b,b as A,c as C,d as R,f as I}from"./element-plus.C1XeB8_q.js";import{W as x}from"./codemirror.BdleaLZh.js";!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver(e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)}).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?t.credentials="include":"anonymous"===e.crossOrigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();var O=(e=>(e[e.SUCCESS=0]="SUCCESS",e[e.ERROR=1]="ERROR",e[e.EXCEPTION=-1]="EXCEPTION",e[e.UNAUTHORIZED=10403]="UNAUTHORIZED",e[e.TOKEN_EXPIRED=10401]="TOKEN_EXPIRED",e))(O||{}),V=(e=>(e.LEFT="left",e.TOP="top",e.MIX="mix",e))(V||{}),k=(e=>(e.OPENED="opened",e.CLOSED="closed",e))(k||{}),j=(e=>(e.DEFAULT="default",e.LARGE="large",e.SMALL="small",e))(j||{}),$=(e=>(e.LIGHT="light",e.DARK="dark",e.AUTO="auto",e))($||{}),N=(e=>(e.CLASSIC_BLUE="classic-blue",e.MINIMAL_WHITE="minimal-white",e))(N||{}),U=(e=>(e.ZH_CN="zh-cn",e.EN="en",e))(U||{}),M=(e=>(e.DESKTOP="desktop",e.MOBILE="mobile",e))(M||{});const{pkg:F}={pkg:{name:"fastapiadmin"}},q=window.matchMedia("(prefers-color-scheme: dark)"),z={
// 是否显示设置按钮
showSettings:!1,
// 桌面端工具项单独控制
showMenuSearch:!0,showFullscreen:!0,showSizeSelect:!0,showLangSelect:!0,
// 是否显示通知
showNotification:!0,
// 是否显示标签视图
showTagsView:!0,
// 是否显示应用Logo
showAppLogo:!0,
// 布局方式,默认为左侧布局
layout:V.LEFT,
// 主题,根据操作系统的色彩方案自动选择
theme:q.matches?$.DARK:$.LIGHT,
// 组件大小 default | medium | small | large
size:j.DEFAULT,
// 语言
language:U.ZH_CN,
// 主题颜色 - 修改此值时需同步修改 src/styles/variables.scss
themeColor:"#4080FF",
// 是否显示水印 (修改默认开启水印)
showWatermark:!0,
// 水印内容
watermarkContent:F.name,
// 侧边栏配色方案
sidebarColorScheme:N.CLASSIC_BLUE,
// 项目引导
guideVisible:!1,
/** 是否启动引导 */
showGuide:!0},B=[
// === 精选常用颜色 - 多样化色系 ===
"#4080FF",
// Arco Design 蓝 - 现代感强
"#52C41A",
// 成功绿 - 活力清新
"#722ED1",
// 优雅紫 - 高端大气
"#FA8C16",
// 活力橙 - 温暖友好
"#13C2C2",
// 青色 - 科技感
"#F5222D",
// 警示红 - 醒目强烈
"#EB2F96",
// 品红 - 时尚个性
"#EC4899",
// 玫瑰粉 - 浪漫温馨
"#10B981",
// 翠绿色 - 清新自然
// === 蓝色系 - 科技与专业 ===
"#409EFF",
// Element Plus 蓝 - 清新自然
"#2F54EB",
// 深蓝 - 稳重专业
"#1E40AF",
// 深蓝色 - 商务精英
"#1D4ED8",
// 皇家蓝 - 高端商务
// === 绿色系 - 自然与活力 ===
"#10B981",
// 翠绿色 - 清新自然
"#059669",
// 森林绿 - 生态环保
"#16A34A",
// 草绿色 - 健康活力
"#15803D",
// 深绿色 - 稳重大气
// === 紫色系 - 创意与优雅 ===
"#7C3AED",
// 紫罗兰 - 创意无限
"#8B5CF6",
// 浅紫色 - 时尚现代
"#6D28D9",
// 深紫色 - 神秘高端
"#5B21B6",
// 皇家紫 - 王者风范
// === 橙色系 - 温暖与活力 ===
"#F97316",
// 火橙色 - 热情奔放
"#EA580C",
// 深橙色 - 阳光活力
"#DC2626",
// 珊瑚红 - 温暖亲切
// === 青色系 - 科技与清新 ===
"#0891B2",
// 天蓝色 - 清新自然
"#0E7490",
// 深青色 - 专业科技
"#06B6D4",
// 青蓝色 - 海洋清新
// === 红色系 - 激情与警示 ===
"#DC2626",
// 猩红色 - 激情四射
"#B91C1C",
// 深红色 - 庄重严肃
// === 粉色系 - 温柔与时尚 ===
"#EC4899",
// 玫瑰粉 - 浪漫温馨
"#F472B6",
// 浅粉色 - 柔美可爱
// === 灰色系 - 简约与现代 ===
"#6B7280",
// 经典灰 - 简约现代
"#4B5563",
// 深灰色 - 商务专业
"#374151"],G=e("app",()=>{const e=t("device",M.DESKTOP),a=t("size",z.size),i=t("language",z.language),r=t("sidebarStatus",k.CLOSED),n=o({opened:r.value===k.OPENED,withoutAnimation:!1}),l=t("activeTopMenuPath",""),c=t("guideVisible",z.guideVisible),d=s(()=>"en"==(null==i?void 0:i.value)?D:S);return{device:e,sidebar:n,language:i,locale:d,size:a,activeTopMenu:function(e){l.value=e},toggleDevice:function(t){e.value=t},showGuide:function(e){c.value=e},changeSize:function(e){a.value=e},changeLanguage:function(e){i.value=e},toggleSidebar:function(){n.opened=!n.opened,r.value=n.opened?k.OPENED:k.CLOSED},closeSideBar:function(){n.opened=!1,r.value=k.CLOSED},openSideBar:function(){n.opened=!0,r.value=k.OPENED},activeTopMenuPath:l,guideVisible:c}});function W(e){const t=parseInt(e.slice(1),16);return[t>>16&255,t>>8&255,255&t]}function H(e,t,o){return`#${((1<<24)+(e<<16)+(t<<8)+o).toString(16).slice(1)}`}function K(e,t){const o=W(e);for(let s=0;s<3;s++)o[s]=Math.round(20.5*t+o[s]*(1-t));return H(o[0],o[1],o[2])}const X=(e,t)=>{const o=W(e);for(let s=0;s<3;s++)o[s]=Math.round(255*t+o[s]*(1-t));return H(o[0],o[1],o[2])};const J="access_token",Z="refresh_token",Q="remember_me",Y="showTagsView",ee="showAppLogo",te="showWatermark",oe="showSettings",se="showMenuSearch",ae="showFullscreen",ie="showSizeSelect",re="showLangSelect",ne="showNotification",le="showGuide",ce="sidebarColorScheme",de="layout",ue="themeColor",me="theme",pe=e("setting",()=>{const e=i(!1),o=t(Y,z.showTagsView),s=t(ee,z.showAppLogo),r=t(te,z.showWatermark),n=t(oe,z.showSettings),l=t(le,z.showGuide),c=t(se,z.showMenuSearch),d=t(ae,z.showFullscreen),u=t(ie,z.showSizeSelect),m=t(re,z.showLangSelect),p=t(ne,z.showNotification),h=t(ce,z.sidebarColorScheme),_=t(de,z.layout),g=t(ue,z.themeColor),f=t(me,z.theme),v={showTagsView:o,showAppLogo:s,showWatermark:r,showSettings:n,showGuide:l,showMenuSearch:c,showFullscreen:d,showSizeSelect:u,showLangSelect:m,showNotification:p,sidebarColorScheme:h,layout:_};return a([f,g],([e,t])=>{e===$.DARK?document.documentElement.classList.add($.DARK):document.documentElement.classList.remove($.DARK);const o=function(e,t){const o={primary:e};for(let s=1;s<=9;s++)o[`primary-light-${s}`]=t===$.LIGHT?`${X(e,s/10)}`:`${K(e,s/10)}`;return o["primary-dark-2"]=t===$.LIGHT?`${X(e,.2)}`:`${K(e,.3)}`,o}(t,e);!function(e){const t=document.documentElement;Object.entries(e).forEach(([e,o])=>{t.style.setProperty(`--el-color-${e}`,o)}),requestAnimationFrame(()=>{t.style.setProperty("--theme-update-trigger",Date.now().toString())})}(o)},{immediate:!0}),a([h],([e])=>{e===N.CLASSIC_BLUE?document.documentElement.classList.add("sidebar-color-blue"):document.documentElement.classList.remove("sidebar-color-blue")},{immediate:!0}),{
// 🎯 基础状态
settingsVisible:e,
// 🎯 界面显示状态
showTagsView:o,showAppLogo:s,showWatermark:r,showSettings:n,showGuide:l,
// 🎯 桌面端工具状态
showMenuSearch:c,showFullscreen:d,showSizeSelect:u,showLangSelect:m,showNotification:p,
// 🎯 布局和主题状态
sidebarColorScheme:h,layout:_,themeColor:g,theme:f,
// 🎯 更新方法
updateSetting:function(e,t){const o=v[e];o&&(o.value=t)},updateTheme:function(e){f.value=e},updateThemeColor:function(e){g.value=e},updateSidebarColorScheme:function(e){h.value=e},updateLayout:function(e){_.value=e},
// 🎯 面板控制
toggleSettingsPanel:function(){e.value=!e.value},showSettingsPanel:function(){e.value=!0},hideSettingsPanel:function(){e.value=!1},
// 🎯 重置功能
resetSettings:function(){o.value=z.showTagsView,s.value=z.showAppLogo,r.value=z.showWatermark,n.value=z.showSettings,l.value=z.showGuide,c.value=z.showMenuSearch,d.value=z.showFullscreen,u.value=z.showSizeSelect,m.value=z.showLangSelect,p.value=z.showNotification,h.value=z.sidebarColorScheme,_.value=z.layout,g.value=z.themeColor,f.value=z.theme}}}),he=e("tagsView",()=>{const e=i([]),t=i([]),o=r(),s=n();function a(t){t.path.startsWith("/redirect")||e.value.some(e=>e.name===t.name)||(t.affix?e.value.unshift(t):e.value.push(t))}function l(e){const o=e.name;t.value.includes(o)||e.keepAlive&&t.value.push(o)}function c(t){return new Promise(o=>{for(const[s,a]of e.value.entries())if(a.path===t.path){e.value.splice(s,1);break}o([...e.value])})}function d(e){const o=e.name;return new Promise(e=>{const s=t.value.indexOf(o);s>-1&&t.value.splice(s,1),e([...t.value])})}function u(t){return new Promise(o=>{e.value=e.value.filter(e=>(null==e?void 0:e.affix)||e.path===t.path),o([...e.value])})}function m(e){const o=e.name;return new Promise(e=>{const s=t.value.indexOf(o);t.value=s>-1?t.value.slice(s,s+1):[],e([...t.value])})}function p(o){return new Promise(s=>{c(o),d(o),s({visitedViews:[...e.value],cachedViews:[...t.value]})})}function h(e){return e.path===s.path}function _(e,t){const s=e.slice(-1)[0];s&&s.fullPath?o.push(s.fullPath):"Dashboard"===(null==t?void 0:t.name)?o.replace("/redirect"+t.fullPath):o.push("/")}return{visitedViews:e,cachedViews:t,addVisitedView:a,addCachedView:l,delVisitedView:c,delCachedView:d,delOtherVisitedViews:u,delOtherCachedViews:m,updateVisitedView:function(t){for(let o of e.value)if(o.path===t.path){o=Object.assign(o,t);break}},addView:function(e){a(e),l(e)},delView:p,delOtherViews:function(o){return new Promise(s=>{u(o),m(o),s({visitedViews:[...e.value],cachedViews:[...t.value]})})},delLeftViews:function(o){return new Promise(s=>{const a=e.value.findIndex(e=>e.path===o.path);-1!==a&&(e.value=e.value.filter((e,o)=>{if(o>=a||(null==e?void 0:e.affix))return!0;const s=t.value.indexOf(e.name);return s>-1&&t.value.splice(s,1),!1}),s({visitedViews:[...e.value]}))})},delRightViews:function(t){return new Promise(o=>{const s=e.value.findIndex(e=>e.path===t.path);-1!==s&&(e.value=e.value.filter((e,t)=>{if(t<=s||(null==e?void 0:e.affix))return!0}),o({visitedViews:[...e.value]}))})},delAllViews:function(){return new Promise(o=>{const s=e.value.filter(e=>null==e?void 0:e.affix);e.value=s,t.value=[],o({visitedViews:[...e.value],cachedViews:[...t.value]})})},delAllVisitedViews:function(){return new Promise(t=>{const o=e.value.filter(e=>null==e?void 0:e.affix);e.value=o,t([...e.value])})},delAllCachedViews:function(){return new Promise(e=>{t.value=[],e([...t.value])})},closeCurrentView:function(){var e,t;const o={name:s.name,title:s.meta.title,path:s.path,fullPath:s.fullPath,affix:null==(e=s.meta)?void 0:e.affix,keepAlive:null==(t=s.meta)?void 0:t.keepAlive,query:s.query};p(o).then(e=>{h(o)&&_(e.visitedViews,o)})},isActive:h,toLastView:_}}),_e={},ge=function(e,t,o){let s=Promise.resolve();if(t&&t.length>0){let e=function(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:"fulfilled",value:e}),e=>({status:"rejected",reason:e}))))};document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),a=(null==o?void 0:o.nonce)||(null==o?void 0:o.getAttribute("nonce"));s=e(t.map(e=>{if((e=function(e){return"/"+e}(e))in _e)return;_e[e]=!0;const t=e.endsWith(".css"),o=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${e}"]${o}`))return;const s=document.createElement("link");return s.rel=t?"stylesheet":"modulepreload",t||(s.as="script"),s.crossOrigin="",s.href=e,a&&s.setAttribute("nonce",a),document.head.appendChild(s),t?new Promise((t,o)=>{s.addEventListener("load",t),s.addEventListener("error",()=>o(new Error(`Unable to preload CSS for ${e}`)))}):void 0}))}function a(e){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return s.then(t=>{for(const e of t||[])"rejected"===e.status&&a(e.reason);return e().catch(a)})},fe=()=>ge(()=>import("./index.BD6gc-Wg.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16])),ve=[{path:"/redirect",meta:{hidden:!0},component:fe,children:[{path:"/redirect/:path(.*)",component:()=>ge(()=>import("./index.D5YJbCHA.js"),__vite__mapDeps([17,1,2]))}]},{path:"/login",name:"Login",meta:{hidden:!0},component:()=>ge(()=>import("./index.P4Rrf-tC.js"),__vite__mapDeps([18,3,1,2,4,6,19,5,20,11,12,21]))},{path:"/401",name:"401",meta:{hidden:!0,title:"401"},component:()=>ge(()=>import("./401.CyxLoiaz.js"),__vite__mapDeps([22,3,1,2,4,5,23]))},{path:"/404",name:"404",meta:{hidden:!0,title:"404"},component:()=>ge(()=>import("./404.BMbQMEEY.js"),__vite__mapDeps([24,3,1,2,4,5,25]))},{path:"/500",name:"500",meta:{hidden:!0,title:"500"},component:()=>ge(()=>import("./500.-J3BlQqW.js"),__vite__mapDeps([26,3,1,2,4]))},{path:"/:pathMatch(.*)*",component:()=>ge(()=>import("./404.BMbQMEEY.js"),__vite__mapDeps([24,3,1,2,4,5,25])),meta:{hidden:!0,title:"404"}},
// 以下内容必须放在后面
{path:"/",name:"/",redirect:"/home",component:fe,children:[{path:"home",component:()=>ge(()=>import("./index.lcJcHlJH.js"),__vite__mapDeps([27,3,1,2,4,28,29,5,15,30,11,12,31])),
// 用于 keep-alive 功能,需要与 SFC 中自动推导或显式声明的组件名称一致
// 参考文档: https://cn.vuejs.org/guide/built-ins/keep-alive.html#include-exclude
name:"Home",meta:{title:"首页",icon:"homepage",affix:!0,keepAlive:!0}},{path:"profile",name:"Profile",meta:{title:"个人中心",icon:"user",hidden:!0},component:()=>ge(()=>import("./profile.DmfWsW7n.js"),__vite__mapDeps([32,3,1,2,4,5,11,12,33]))},
// 应用内部打开页面
{path:"internal-app/:appId",name:"InternalApp",meta:{title:"内部应用",icon:"Monitor",hidden:!0,keepAlive:!1},component:()=>ge(()=>import("./InternalApp.mkc3M_YJ.js"),__vite__mapDeps([34,3,1,2,4,5,11,12,35]))}]}],we=l({history:c(),routes:ve,
// 刷新时,滚动条位置还原
scrollBehavior:()=>({left:0,top:0})});const Ee=Object.assign({"../../views/current/profile.vue":()=>ge(()=>import("./profile.DmfWsW7n.js"),__vite__mapDeps([32,3,1,2,4,5,11,12,33])),"../../views/dashboard/index.vue":()=>ge(()=>import("./index.lcJcHlJH.js"),__vite__mapDeps([27,3,1,2,4,28,29,5,15,30,11,12,31])),"../../views/dashboard/workplace.vue":()=>ge(()=>import("./workplace.DmMyUXAZ.js"),__vite__mapDeps([36,28,1,2,29,3,4,30,14,5,11,12,37])),"../../views/error/401.vue":()=>ge(()=>import("./401.CyxLoiaz.js"),__vite__mapDeps([22,3,1,2,4,5,23])),"../../views/error/404.vue":()=>ge(()=>import("./404.BMbQMEEY.js"),__vite__mapDeps([24,3,1,2,4,5,25])),"../../views/error/500.vue":()=>ge(()=>import("./500.-J3BlQqW.js"),__vite__mapDeps([26,3,1,2,4])),"../../views/module_application/ai/index.vue":()=>ge(()=>import("./index.B1fnIV41.js"),__vite__mapDeps([38,3,1,2,4,5,39])),"../../views/module_application/ai_config/index.vue":()=>ge(()=>import("./index.Da-S9Q-9.js"),__vite__mapDeps([40,3,1,2,4,41,5,11,12,42])),"../../views/module_application/ai_model/index.vue":()=>ge(()=>import("./index.DwLCMCDB.js"),__vite__mapDeps([43,3,1,2,4,41,44,5,11,12,45])),"../../views/module_application/job/components/JobLogDrawer.vue":()=>ge(()=>import("./JobLogDrawer.pTRZEXJ_.js"),__vite__mapDeps([46,47,3,1,2,4,48,5,49,50,51,52,53,7,11,12])),"../../views/module_application/job/index.vue":()=>ge(()=>import("./index.9SZakzRo.js"),__vite__mapDeps([54,3,1,2,4,48,5,49,55,56,50,51,47,52,53,7,11,12,57])),"../../views/module_application/knowledge_base/index.vue":()=>ge(()=>import("./index.B-d1Zrnt.js"),__vite__mapDeps([58,3,1,2,4,44,41,5,11,12,59])),"../../views/module_application/myapp/components/InternalApp.vue":()=>ge(()=>import("./InternalApp.mkc3M_YJ.js"),__vite__mapDeps([34,3,1,2,4,5,11,12,35])),"../../views/module_application/myapp/index.vue":()=>ge(()=>import("./index.DZJNF0OP.js"),__vite__mapDeps([60,3,1,2,4,48,5,49,55,56,7,11,12,61])),"../../views/module_application/workflow/CustomNode.vue":()=>ge(()=>import("./CustomNode.BDE2sCbo.js"),__vite__mapDeps([62,1,2,5,63])),"../../views/module_application/workflow/index.vue":()=>ge(()=>import("./index.CZ02MN36.js"),__vite__mapDeps([64,1,2,62,5,63,3,4,65])),"../../views/module_common/docs/index.vue":()=>ge(()=>import("./index.BydulI3d.js"),__vite__mapDeps([66,67,3,1,2,4,5,68])),"../../views/module_common/redoc/index.vue":()=>ge(()=>import("./index.W7mJNR5m.js"),__vite__mapDeps([69,67,3,1,2,4,5,68])),"../../views/module_example/demo/index.vue":()=>ge(()=>import("./index.DF1sQ4io.js"),__vite__mapDeps([70,3,1,2,4,48,5,49,55,56,71,52,53,50,51,7,11,12])),"../../views/module_generator/gencode/index.vue":()=>ge(()=>import("./index.C3Sa_hzd.js"),__vite__mapDeps([72,3,1,2,4,48,5,49,11,12,73,30,74])),"../../views/module_monitor/cache/index.vue":()=>ge(()=>import("./index.Ckczgym6.js"),__vite__mapDeps([75,3,1,2,4,29,5,11,12,76])),"../../views/module_monitor/online/index.vue":()=>ge(()=>import("./index.DQyI9YS9.js"),__vite__mapDeps([77,3,1,2,4,48,5,49,78,11,12])),"../../views/module_monitor/resource/index.vue":()=>ge(()=>import("./index.DTejqZeE.js"),__vite__mapDeps([79,3,1,2,4,48,5,49,11,12,80])),"../../views/module_monitor/server/index.vue":()=>ge(()=>import("./index.CcfcKAyF.js"),__vite__mapDeps([81,3,1,2,4,11,12])),"../../views/module_system/auth/components/Login.vue":()=>ge(()=>import("./Login.BPYYXPKe.js"),__vite__mapDeps([82,3,1,2,4,5,11,12,83])),"../../views/module_system/auth/components/Register.vue":()=>ge(()=>import("./Register.DqTzQGJc.js"),__vite__mapDeps([84,3,1,2,4,11,12])),"../../views/module_system/auth/components/ResetPwd.vue":()=>ge(()=>import("./ResetPwd.r16CjhH4.js"),__vite__mapDeps([85,3,1,2,4,11,12])),"../../views/module_system/auth/index copy.vue":()=>ge(()=>import("./index copy.CfXRHaMF.js"),__vite__mapDeps([86,3,1,2,4,6,19,5,20,11,12,87])),"../../views/module_system/auth/index.vue":()=>ge(()=>import("./index.P4Rrf-tC.js"),__vite__mapDeps([18,3,1,2,4,6,19,5,20,11,12,21])),"../../views/module_system/dept/index.vue":()=>ge(()=>import("./index.GHRUmrdv.js"),__vite__mapDeps([88,3,1,2,4,50,5,51,89,30,7,11,12])),"../../views/module_system/dict/components/DataDrawer.vue":()=>ge(()=>import("./DataDrawer.qNwp2EK4.js"),__vite__mapDeps([90,91,3,1,2,4,48,5,49,50,51,52,53,7,11,12])),"../../views/module_system/dict/index.vue":()=>ge(()=>import("./index.DS5hWYYB.js"),__vite__mapDeps([92,3,1,2,4,48,5,49,50,51,91,52,53,7,11,12])),"../../views/module_system/log/index.vue":()=>ge(()=>import("./index.DwA3n7Er.js"),__vite__mapDeps([93,3,1,2,4,48,5,49,78,50,51,55,56,52,53,7,11,12,94])),"../../views/module_system/menu/index.vue":()=>ge(()=>import("./index.CwlnSDoR.js"),__vite__mapDeps([95,3,1,2,4,5,50,51,73,74,30,7,11,12,96])),"../../views/module_system/notice/index.vue":()=>ge(()=>import("./index.CqjYFVfy.js"),__vite__mapDeps([97,3,1,2,4,98,99,100,48,5,49,50,51,55,56,52,53,7,11,12])),"../../views/module_system/param/components/ConfigInfoDrawer.vue":()=>ge(()=>import("./ConfigInfoDrawer.DEHHhwES.js"),__vite__mapDeps([8,3,1,2,4,9,5,10,11,12,13])),"../../views/module_system/param/index.vue":()=>ge(()=>import("./index.BYmT1T1U.js"),__vite__mapDeps([101,3,1,2,4,48,5,49,50,51,52,53,7,11,12])),"../../views/module_system/position/index.vue":()=>ge(()=>import("./index.D_LhM4oA.js"),__vite__mapDeps([102,3,1,2,4,48,5,49,50,51,103,55,56,52,53,7,11,12])),"../../views/module_system/role/components/PermissonDrawer.vue":()=>ge(()=>import("./PermissonDrawer.DHE79Q-z.js"),__vite__mapDeps([104,105,3,1,2,4,30,106,89,73,11,12])),"../../views/module_system/role/index.vue":()=>ge(()=>import("./index.Bu3PYKUN.js"),__vite__mapDeps([107,3,1,2,4,105,30,106,89,73,48,5,49,50,51,52,53,7,11,12])),"../../views/module_system/user/components/DeptTree.vue":()=>ge(()=>import("./DeptTree.DpP2WJiz.js"),__vite__mapDeps([108,109,3,1,2,4,89,30,11,12])),"../../views/module_system/user/components/UserTableSelect.vue":()=>ge(()=>import("./UserTableSelect.DhT2KjPq.js"),__vite__mapDeps([110,55,3,1,2,4,48,5,49,56,11,12])),"../../views/module_system/user/index.vue":()=>ge(()=>import("./index.BETkL_Bg.js"),__vite__mapDeps([111,3,1,2,4,48,5,49,50,51,30,103,89,106,7,109,55,56,71,52,53,11,12])),"../../views/module_yifan/yifan_about_us/index.vue":()=>ge(()=>import("./index.CvBGGucB.js"),__vite__mapDeps([112,3,1,2,4,5,11,12,113])),"../../views/module_yifan/yifan_about_video/index.vue":()=>ge(()=>import("./index.DaD0OqXX.js"),__vite__mapDeps([114,3,1,2,4,48,5,49,55,56,71,52,53,9,10,11,12,115])),"../../views/module_yifan/yifan_faq/index.vue":()=>ge(()=>import("./index.BAlKYt4o.js"),__vite__mapDeps([116,3,1,2,4,48,5,49,55,56,7,50,51,71,52,53,11,12])),"../../views/module_yifan/yifan_feedback/index.vue":()=>ge(()=>import("./index.DOO8VJTn.js"),__vite__mapDeps([117,3,1,2,4,48,5,49,71,52,53,11,12])),"../../views/module_yifan/yifan_naming_reports/company_naming.vue":()=>ge(()=>import("./company_naming.BhvfD_JG.js"),__vite__mapDeps([118,3,1,2,4,48,5,49,11,12])),"../../views/module_yifan/yifan_naming_solutions/index.vue":()=>ge(()=>import("./index.DBR2nqUt.js"),__vite__mapDeps([119,3,1,2,4,48,5,49,55,56,7,50,51,71,52,53,11,12])),"../../views/module_yifan/yifan_partner_apply/index.vue":()=>ge(()=>import("./index.jHUPh8Em.js"),__vite__mapDeps([120,3,1,2,4,48,5,49,71,52,53,11,12])),"../../views/module_yifan/yifan_privacy_policy/index.vue":()=>ge(()=>import("./index.DbY3xVSs.js"),__vite__mapDeps([121,3,1,2,4,48,5,49,71,52,53,98,99,100,11,12])),"../../views/module_yifan/yifan_wx_pay_order/index.vue":()=>ge(()=>import("./index.kzpYEN1P.js"),__vite__mapDeps([122,3,1,2,4,48,5,49,71,52,53,11,12,123])),"../../views/redirect/index.vue":()=>ge(()=>import("./index.D5YJbCHA.js"),__vite__mapDeps([17,1,2]))}),ye=()=>ge(()=>import("./index.BD6gc-Wg.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16])),Te=e=>e.map(e=>{const t={children:[],path:e.route_path,name:e.route_name,component:e.component_path,redirect:e.redirect,meta:{title:e.title,icon:e.icon||void 0,keepAlive:e.keep_alive,hidden:e.hidden,order:e.order,alwaysShow:e.always_show,params:e.params,affix:e.affix}};return e.children&&e.children.length>0&&(t.children=e.children?Te(e.children):[]),t}),Le=e("permission",()=>{const e=i([]),t=i([]),o=i(!1);return{routes:e,mixLayoutSideMenus:t,isRouteGenerated:o,generateRoutes:async function(){try{const t=Oe();t.hasGetRoute||await t.getUserInfo();const s=Te(t.routeList),a=De(s);return e.value=[...ve,...a],o.value=!0,a}catch(t){throw o.value=!1,t}},setMixLayoutSideMenus:o=>{const s=e.value.find(e=>e.path===o);t.value=(null==s?void 0:s.children)||[]},resetRouter:()=>{const s=new Set(ve.map(e=>e.name).filter(Boolean));e.value.forEach(e=>{e.name&&!s.has(e.name)&&we.removeRoute(e.name)}),e.value=[...ve],t.value=[],o.value=!1}}}),De=(e,t=!0)=>e.map(e=>{const o={...e};return o.children&&o.children.length>0?(o.component=t?ye:void 0,o.children=De(e.children,!1)):o.component=o.component&&Ee[`../../views/${o.component}.vue`]||Ee["../../views/error/404.vue"],o});function Se(){return Le(Ge)}class Pe{
/**
* localStorage 存储
*/
static set(e,t){localStorage.setItem(e,JSON.stringify(t))}static get(e,t){const o=localStorage.getItem(e);if(!o)return t;try{return JSON.parse(o)}catch{return o}}static remove(e){localStorage.removeItem(e)}
/**
* localStorage 清空
*/static clear(){localStorage.clear()}
/**
* sessionStorage 存储
*/static sessionSet(e,t){sessionStorage.setItem(e,JSON.stringify(t))}static sessionGet(e,t){const o=sessionStorage.getItem(e);if(!o)return t;try{return JSON.parse(o)}catch{return o}}static sessionRemove(e){sessionStorage.removeItem(e)}
/**
* sessionStorage 清空
*/static sessionClear(){sessionStorage.clear()}}class be{
/**
* 判断用户是否已登录
* @returns 是否已登录
*/
static isLoggedIn(){return!!be.getAccessToken()}
/**
* 获取当前有效的访问令牌
* 会根据"记住我"状态从适当的存储位置获取
* @returns 当前有效的访问令牌
*/static getAccessToken(){return Pe.get(Q,!1)?Pe.get(J,""):Pe.sessionGet(J,"")}
/**
* 获取刷新令牌
* @returns 当前有效的刷新令牌
*/static getRefreshToken(){return Pe.get(Q,!1)?Pe.get(Z,""):Pe.sessionGet(Z,"")}
/**
* 设置访问令牌和刷新令牌
* @param accessToken 访问令牌
* @param refreshToken 刷新令牌
* @param rememberMe 是否记住我
*/static setTokens(e,t,o){Pe.set(Q,o),o?(Pe.set(J,e),Pe.set(Z,t)):(Pe.sessionSet(J,e),Pe.sessionSet(Z,t),Pe.remove(J),Pe.remove(Z))}
/**
* 清除所有身份验证相关的数据
*/static clearAuth(){Pe.remove(J),Pe.remove(Z),Pe.sessionRemove(J),Pe.sessionRemove(Z)}
/**
* 获取"记住我"状态
* @returns 是否记住我
*/static getRememberMe(){return Pe.get(Q,!1)}}const Ae=d.create({baseURL:"/api/v1",timeout:"600000",headers:{"Content-Type":"application/json;charset=utf-8"},paramsSerializer:e=>u.stringify(e)});Ae.interceptors.request.use(e=>{const t=be.getAccessToken();return!e.headers.Authorization&&t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e},e=>(P.error(e),Promise.reject(e))),Ae.interceptors.response.use(e=>{var t,o,s;if("blob"===e.config.responseType)return e;const a=e.data;return a.code!==O.SUCCESS?(P.error(a.msg),Promise.reject(e)):("GET"===(null==(t=e.config.method)?void 0:t.toUpperCase())||(null==(o=e.config.url)?void 0:o.includes("login"))||(null==(s=e.config.url)?void 0:s.includes("logout"))||P.success(a.msg),e)},async e=>{var t,o,s,a,i;if(!e.response){let a="网络连接异常";return(null==(t=e.message)?void 0:t.includes("ECONNREFUSED"))?a="服务器连接失败,请检查后端服务是否正常运行":(null==(o=e.message)?void 0:o.includes("timeout"))?a="请求超时,请稍后重试":(null==(s=e.message)?void 0:s.includes("Network Error"))&&(a="网络连接错误,请检查您的网络设置"),P.error(a),Promise.reject(new Error(a))}const r=null==(a=e.response)?void 0:a.data;if("blob"===(null==(i=e.response)?void 0:i.config.responseType)&&e.response.data instanceof Blob)try{const t=await new Response(e.response.data).text(),o=JSON.parse(t);if(o.code===O.ERROR)return P.error(o.msg||"请求错误"),Promise.reject(new Error(o.msg||"请求错误"));if(o.code===O.EXCEPTION)return P.error(o.msg||"服务异常"),Promise.reject(new Error(o.msg||"服务异常"))}catch(n){return P.error("数据解析失败"),Promise.reject(new Error("数据解析失败"))}return(null==r?void 0:r.code)===O.TOKEN_EXPIRED?(await async function(t="请重新登录"){try{b({title:"提示",message:t,type:"warning",duration:3e3}),await Ve().resetAllState();const e=we.currentRoute.value.fullPath;await we.push(`/login?redirect=${encodeURIComponent(e)}`)}catch(e){P.error(e.message)}}("登录已过期,请重新登录"),Promise.reject(new Error(r.msg))):(null==r?void 0:r.code)===O.ERROR?(P.error(r.msg||"请求错误"),Promise.reject(new Error(r.msg||"请求错误"))):(null==r?void 0:r.code)===O.UNAUTHORIZED?(P.error(r.msg||"暂无权限"),Promise.reject(new Error(r.msg||"请求错误"))):(null==r?void 0:r.code)===O.EXCEPTION?(P.error(r.msg||"服务异常"),Promise.reject(new Error(r.msg||"服务异常"))):(P.error("请求处理失败,请稍后重试"),Promise.reject(new Error("请求处理失败")))});const Ce="/system/auth",Re={login:e=>Ae({url:`${Ce}/login`,method:"post",headers:{"Content-Type":"multipart/form-data"},data:e}),refreshToken:e=>Ae({url:`${Ce}/token/refresh`,method:"post",data:e}),getCaptcha:()=>Ae({url:`${Ce}/captcha/get`,method:"get"}),logout:e=>Ae({url:`${Ce}/logout`,method:"post",data:e})},Ie="/system/user",xe={getCurrentUserInfo:()=>Ae({url:`${Ie}/current/info`,method:"get"}),uploadCurrentUserAvatar:e=>Ae({url:`${Ie}/current/avatar/upload`,method:"post",data:e,headers:{"Content-Type":"multipart/form-data"}}),updateCurrentUserInfo:e=>Ae({url:`${Ie}/current/info/update`,method:"put",data:e}),changeCurrentUserPassword:e=>Ae({url:`${Ie}/current/password/change`,method:"put",data:e}),resetUserPassword:e=>Ae({url:`${Ie}/reset/password`,method:"put",data:e}),registerUser:e=>Ae({url:`${Ie}/register`,method:"post",data:e}),forgetPassword:e=>Ae({url:`${Ie}/forget/password`,method:"post",data:e}),listUser:e=>Ae({url:`${Ie}/list`,method:"get",params:e}),detailUser:e=>Ae({url:`${Ie}/detail/${e}`,method:"get"}),createUser:e=>Ae({url:`${Ie}/create`,method:"post",data:e}),updateUser:(e,t)=>Ae({url:`${Ie}/update/${e}`,method:"put",data:t}),deleteUser:e=>Ae({url:`${Ie}/delete`,method:"delete",data:e}),batchUser:e=>Ae({url:`${Ie}/available/setting`,method:"patch",data:e}),exportUser:e=>Ae({url:`${Ie}/export`,method:"post",data:e,responseType:"blob"}),downloadTemplateUser:()=>Ae({url:`${Ie}/import/template`,method:"post",responseType:"blob"}),importUser:e=>Ae({url:`${Ie}/import/data`,method:"post",data:e,headers:{"Content-Type":"multipart/form-data"}})},Oe=e("user",{state:()=>({basicInfo:{},routeList:[],prems:[],hasGetRoute:!1,
// 记住我状态
rememberMe:i(be.getRememberMe())}),getters:{getBasicInfo:e=>e.basicInfo,getRouteList:e=>e.routeList,getPerms:e=>e.prems,getHasGetRoute:e=>e.hasGetRoute},actions:{
// 获取用户信息
async getUserInfo(){const e=await xe.getCurrentUserInfo(),t=e.data.data.menus||[];delete e.data.data.menus,this.basicInfo={...this.basicInfo,...e.data.data},this.setRoute(t)},
// 设置用户信息
setUserInfo(e){this.basicInfo=e,this.setPermissions([])},
// 设置路由
setRoute(e){this.routeList=e,this.hasGetRoute=!0,this.setPermissions(e)},setPermissions(e){if(this.prems=[],!this.basicInfo.roles)return;const t=[...e,...this.basicInfo.roles.filter(e=>e.menus&&e.menus.length>0).flatMap(e=>e.menus).filter(e=>void 0!==e)],o=new Set,s=e=>{e.forEach(e=>{e.permission&&o.add(e.permission),e.children&&e.children.length>0&&s(e.children.filter(e=>void 0!==e))})};s(t),this.prems=Array.from(o)},setAvatar(e){this.basicInfo={...this.basicInfo,avatar:e}},clearUserInfo(){this.basicInfo={},this.routeList=[],this.hasGetRoute=!1},
// 登录
async login(e){const t=await Re.login(e);t.data.code===O.SUCCESS&&b({title:"通知",message:t.data.msg,type:"success"}),this.rememberMe=e.remember,be.setTokens(t.data.data.access_token,t.data.data.refresh_token,this.rememberMe)},
// 登出
async logout(){const e=await Re.logout({token:be.getAccessToken()});e.data.code===O.SUCCESS&&b({title:"通知",message:e.data.msg,type:"success"}),this.resetAllState()},
// 重置所有状态
resetAllState(){return be.clearAuth(),this.clearUserInfo(),Se().resetRouter(),he().delAllViews(),Ne().clearDictData(),Promise.resolve()},
// 刷新token
refreshToken(){const e=be.getRefreshToken();return e?new Promise((t,o)=>{Re.refreshToken({refresh_token:e}).then(e=>{be.setTokens(e.data.data.access_token,e.data.data.refresh_token,be.getRememberMe()),t()}).catch(e=>{o(e)})}):Promise.reject(new Error("没有有效的刷新令牌"))}},persist:!0});function Ve(){return Oe(Ge)}const ke="/system/dict",je={listDictType:e=>Ae({url:`${ke}/type/list`,method:"get",params:e}),optionDictType:()=>Ae({url:`${ke}/type/optionselect`,method:"get"}),detailDictType:e=>Ae({url:`${ke}/type/detail/${e}`,method:"get"}),createDictType:e=>Ae({url:`${ke}/type/create`,method:"post",data:e}),updateDictType:(e,t)=>Ae({url:`${ke}/type/update/${e}`,method:"put",data:t}),deleteDictType:e=>Ae({url:`${ke}/type/delete`,method:"delete",data:e}),batchDictType:e=>Ae({url:`${ke}/type/available/setting`,method:"patch",data:e}),exportDictType:e=>Ae({url:`${ke}/type/export`,method:"post",data:e,responseType:"blob"}),listDictData:e=>Ae({url:`${ke}/data/list`,method:"get",params:e}),detailDictData:e=>Ae({url:`${ke}/data/detail/${e}`,method:"get"}),createDictData:e=>Ae({url:`${ke}/data/create`,method:"post",data:e}),updateDictData:(e,t)=>Ae({url:`${ke}/data/update/${e}`,method:"put",data:t}),deleteDictData:e=>Ae({url:`${ke}/data/delete`,method:"delete",data:e}),batchDictData:e=>Ae({url:`${ke}/data/available/setting`,method:"patch",data:e}),exportDictData:e=>Ae({url:`${ke}/data/export`,method:"post",data:e,responseType:"blob"}),getInitDict:e=>Ae({url:`${ke}/data/info/${e}`,method:"get"})},$e=e("dict",{state:()=>({dictData:{},isLoaded:!1}),getters:{getDictData(){return this.dictData},
// 获取指定类型的字典数据,确保返回数组
getDictArray(){return e=>(this.dictData[e]||[]).filter(e=>void 0!==e.dict_value&&void 0!==e.dict_label).map(e=>({dict_value:e.dict_value,dict_label:e.dict_label}))}},actions:{
// 批量获取字典数据
async getDict(e){try{for(const t of e)if(!this.dictData[t]){const e=await je.getInitDict(t);this.dictData[t]=(e.data.data||[]).filter(e=>void 0!==e.dict_value&&void 0!==e.dict_label),this.isLoaded=!0}return e.reduce((e,t)=>(e[t]=this.getDictArray(t),e),{})}catch(t){return{}}},getDictLabel(e,t){const o=this.dictData[e].find(e=>e.dict_value===t);if(!o)return t;return{id:o.id,dict_value:o.dict_value,dict_label:o.dict_label,dict_type:o.dict_type,css_class:o.css_class,list_class:o.list_class,is_default:o.is_default,dict_sort:o.dict_sort,dict_type_id:o.dict_type_id,uuid:o.uuid,status:o.status,description:o.description,created_time:o.created_time,updated_time:o.updated_time}},clearDictData(){this.dictData={}}},persist:!0});function Ne(){return $e(Ge)}const Ue="/system/param",Me={uploadFile:e=>Ae({url:`${Ue}/upload`,method:"post",data:e,headers:{"Content-Type":"multipart/form-data"}}),getInitConfig:()=>Ae({url:`${Ue}/info`,method:"get"}),listParams:e=>Ae({url:`${Ue}/list`,method:"get",params:e}),detailParams:e=>Ae({url:`${Ue}/detail/${e}`,method:"get"}),createParams:e=>Ae({url:`${Ue}/create`,method:"post",data:e}),updateParams:(e,t)=>Ae({url:`${Ue}/update/${e}`,method:"put",data:t}),deleteParams:e=>Ae({url:`${Ue}/delete`,method:"delete",data:e}),exportParams:e=>Ae({url:`${Ue}/export`,method:"post",data:e,responseType:"blob"})},Fe=e("config",{state:()=>({configData:{},
// 存储系统配置
isConfigLoaded:!1}),actions:{async getConfig(){(await Me.getInitConfig()).data.data.forEach(e=>{void 0!==e.config_value&&(this.configData[e.config_key]=e)}),this.isConfigLoaded=!0}},persist:!0});const qe="/system/notice",ze={listNotice:e=>Ae({url:`${qe}/list`,method:"get",params:e}),listNoticeAvailable:()=>Ae({url:`${qe}/available`,method:"get"}),detailNotice:e=>Ae({url:`${qe}/detail/${e}`,method:"get"}),createNotice:e=>Ae({url:`${qe}/create`,method:"post",data:e}),updateNotice:(e,t)=>Ae({url:`${qe}/update/${e}`,method:"put",data:t}),deleteNotice:e=>Ae({url:`${qe}/delete`,method:"delete",data:e}),batchNotice:e=>Ae({url:`${qe}/available/setting`,method:"patch",data:e}),exportNotice:e=>Ae({url:`${qe}/export`,method:"post",data:e,responseType:"blob"})},Be=e("notice",{state:()=>({noticeList:[],total:0,isNoticeLoaded:!1,
// 已读通知ID集合前端持久化避免刷新后重复展示
readIds:[]}),actions:{async getNotice(){const e=(await ze.listNoticeAvailable()).data.data.items||[],t=new Set(this.readIds),o=e.filter(e=>void 0!==e.id&&!t.has(e.id));this.noticeList=o,this.total=o.length,this.isNoticeLoaded=!0},
// 标记单条通知为已读
markAsRead(e){void 0!==e&&(this.readIds.includes(e)||this.readIds.push(e),this.noticeList=this.noticeList.filter(t=>t.id!==e),this.total=this.noticeList.length)},
// 标记当前列表全部为已读
markAllAsRead(e=[]){const t=e.length?e:this.noticeList.map(e=>e.id).filter(e=>void 0!==e),o=new Set(this.readIds);t.forEach(e=>{o.has(e)||this.readIds.push(e)}),this.noticeList=this.noticeList.filter(e=>void 0!==e.id&&!this.readIds.includes(e.id)),this.total=this.noticeList.length},clearUserInfo(){this.noticeList=[],this.total=0,this.isNoticeLoaded=!1,this.readIds=[]}},persist:!0});const Ge=m();async function We(e={}){const{dictTypes:t,refreshUser:o=!0,refreshRoutes:s=!0,refreshConfig:a=!0,refreshNotice:i=!0,clearTags:r=!1,clearDictBefore:n=!1}=e,l=Ve(),c=Se(),d=Ne(),u=Be(Ge),m=Fe(Ge),p=he(Ge),h=[];if(o&&h.push(l.getUserInfo()),a&&h.push(m.getConfig()),i&&h.push(u.getNotice()),t&&t.length>0&&(n&&d.clearDictData(),h.push(d.getDict(t))),await Promise.allSettled(h),s){c.resetRouter();(await c.generateRoutes()).forEach(e=>we.addRoute(e))}r&&await p.delAllViews()}Ge.use(p);const He=h({__name:"App",setup(e){const t=G(),o=pe(),a=Oe(),i=s(()=>t.locale),r=s(()=>t.size),n=s(()=>{var e;return(null==(e=a.basicInfo)?void 0:e.name)||z.watermarkContent}),l=s(()=>o.theme===$.DARK?"rgba(255, 255, 255, .15)":"rgba(0, 0, 0, .15)");return(e,t)=>{const o=_("router-view"),s=A,a=C;return g(),f(a,{locale:E(i),size:E(r)},{default:v(()=>[w(s,{font:{color:E(l)},content:E(n),"z-index":9999,class:"wh-full"},{default:v(()=>[w(o)]),_:1},8,["font","content"])]),_:1},8,["locale","size"])}}}),Ke={mounted(e,t){const o=t.value;if(!o||"string"!=typeof o&&!Array.isArray(o))throw new Error("需要提供权限标识例如v-has-perm=\"'sys:user:add'\" 或 v-has-perm=\"['sys:user:add', 'sys:user:edit']\"");const{roles:s}=Oe().basicInfo,a=Oe().prems;if(s&&s.map(e=>e.code).includes("ADMIN")||o.includes("*:*:*"))return;!(Array.isArray(o)?o.some(e=>a.includes(e)):a.includes(o))&&e.parentNode&&e.parentNode.removeChild(e)}};const Xe={"zh-cn":{...{
// 公共部分
common:{confirm:"确定",cancel:"取消",reset:"重置",save:"保存",edit:"编辑",delete:"删除",add:"添加",clear:"清除",export:"导出",import:"导入",query:"查询",resetQuery:"重置查询",back:"返回",close:"关闭",refresh:"刷新",inputText:"请输入",selectText:"请选择",startTimeText:"开始时间",endTimeText:"结束时间",login:"登录",required:"该项为必填项",loginOut:"退出系统",document:"项目文档",reminder:"温馨提示",loginOutMessage:"是否退出本系统?",ok:"确定",reload:"重新加载",closeTab:"关闭标签页",closeTheLeftTab:"关闭左侧标签页",closeTheRightTab:"关闭右侧标签页",closeOther:"关闭其它标签页",closeAll:"关闭全部标签页",prevLabel:"上一步",nextLabel:"下一步",skipLabel:"跳过",doneLabel:"结束",menu:"菜单",menuDes:"以路由的结构渲染的菜单栏",collapse:"展开缩收",collapseDes:"展开和缩放菜单栏",tagsView:"标签页",tagsViewDes:"用于记录路由历史记录",tool:"工具",toolDes:"用于设置定制系统",shrink:"收起",expand:"展开",delMessage:"是否删除所选中数据?",delWarning:"提示",delOk:"确定",delCancel:"取消",delNoData:"请选择需要删除的数据",delSuccess:"删除成功",fullscreen:"全屏",size:"尺寸",columnSetting:"列设置",lengthRange:"长度在 {min} 到 {max} 个字符",notSpace:"不能包含空格",notSpecialCharacters:"不能包含特殊字符",isEqual:"两次输入不一致",setting:"设置",copySuccess:"复制成功",copyFailed:"复制失败"},
// 菜单国际化
route:{dashboard:"首页",document:"项目文档"},
// 登录页面国际化
login:{themeToggle:"主题切换",languageToggle:"语言切换",dark:"暗黑",light:"明亮",username:"请输入账号",password:"请输入密码",newPassword:"请输入新密码",login:"登 录",captchaCode:"请输入验证码",capsLock:"大写锁定已打开",rememberMe:"记住我",forgetPassword:"忘记密码?",message:{username:{required:"请输入账号"},password:{required:"请输入密码",min:"密码不能少于6位",confirm:"请再次确认密码",inconformity:"两次密码输入不一致"},captchaCode:{required:"请输入验证码"},mobile:{required:"请输入手机号",invalid:"手机号格式不正确",exist:"手机号已存在"},email:{required:"请输入邮箱",invalid:"邮箱格式不正确",exist:"邮箱已存在"},name:{required:"请输入名称",invalid:"名称格式不正确",min:"名称不能少于2位"},agree:{required:"请先勾选同意用户协议"}},otherLoginMethods:"其他",resetPassword:"重置密码",thinkOfPasswd:"想起密码?",register:"注册账号",agree:"我已同意并阅读",userAgreement:"用户协议",haveAccount:"已有账号?",noAccount:"您没有账号?",quickFill:"快速填写",reg:"注 册"},
// 导航栏国际化
navbar:{dashboard:"首页",logout:"退出登录",document:"项目文档",gitee:"项目地址",lock:"锁定屏幕",unlock:"解锁屏幕",profile:"个人中心",config:"配置中心",tour:"项目引导",refresh:"刷新",close:"关闭",closeLeft:"关闭左侧",closeRight:"关闭右侧",closeOther:"关闭其他",closeAll:"关闭所有",refreshCache:"刷新缓存"},lock:{lockScreen:"锁定屏幕",lockPassword:"锁屏密码",unlock:"点击解锁",backToLogin:"返回登录",entrySystem:"进入系统",placeholder:"请输入锁屏密码",required:"请输入必填项",message:"锁屏密码错误"},sizeSelect:{tooltip:"布局大小",default:"默认",large:"大型",small:"小型",message:{success:"切换布局大小成功!"}},langSelect:{message:{success:"切换语言成功!"}},settings:{project:"项目配置",theme:"主题设置",interface:"界面设置",navigation:"导航主题",themeColor:"主题颜色",themeColorTip:"主题颜色",customColor:"自定义颜色",darkMode:"暗黑模式",layoutSetting:"布局设置",sidebarColorScheme:"侧边栏配色",showTagsView:"显示页签",showAppLogo:"显示Logo",showWatermark:"显示水印",showDesktopTools:"桌面端工具设置",showMenuSearch:"显示菜单搜索",showFullscreen:"显示全屏切换",showSizeSelect:"显示布局大小",showLangSelect:"显示语言选择",showNotification:"显示通知",classicBlue:"经典蓝",minimalWhite:"极简白",copyConfig:"复制配置",resetConfig:"重置默认",copySuccess:"配置已复制到剪贴板",resetSuccess:"已重置为默认配置",copyDescription:"复制配置将生成当前设置的代码,重置将恢复所有设置为默认值",confirmReset:"确定要重置所有设置为默认值吗?此操作不可恢复。",applyToFile:"应用到文件",onlyCopy:"仅复制",leftLayout:"左侧模式",topLayout:"顶部模式",mixLayout:"混合模式",configManagement:"配置管理",copyConfigDescription:"生成当前设置的代码并复制到剪贴板,然后覆盖 src/settings.ts 文件",resetConfigDescription:"恢复所有设置为系统默认值",systemTheme:"系统主题",showGuide:"启动引导"},error:{noPermission:"抱歉,您无权访问此页面。",pageError:"抱歉,您访问的页面不存在。",networkError:"抱歉,服务器报告错误。",returnToHome:"返回首页"}}},en:{...{
// Common section
common:{confirm:"Confirm",cancel:"Cancel",reset:"Reset",save:"Save",edit:"Edit",delete:"Delete",add:"Add",clear:"Clear",export:"Export",import:"Import",query:"Query",resetQuery:"Reset Query",back:"Back",close:"Close",refresh:"Refresh",inputText:"Please enter",selectText:"Please select",startTimeText:"Start Time",endTimeText:"End Time",login:"Login",required:"This field is required",loginOut:"Logout",document:"Project Documentation",reminder:"Reminder",loginOutMessage:"Are you sure you want to log out?",ok:"OK",reload:"Reload",closeTab:"Close Tab",closeTheLeftTab:"Close Left Tabs",closeTheRightTab:"Close Right Tabs",closeOther:"Close Other Tabs",closeAll:"Close All Tabs",prevLabel:"Previous",nextLabel:"Next",skipLabel:"Skip",doneLabel:"Done",menu:"Menu",menuDes:"Menu rendered based on route structure",collapse:"Collapse/Expand",collapseDes:"Expand and collapse the menu bar",tagsView:"Tags View",tagsViewDes:"Used to record route history",tool:"Tool",toolDes:"Used to customize system settings",shrink:"Collapse",expand:"Expand",delMessage:"Delete selected data?",delWarning:"Warning",delOk:"OK",delCancel:"Cancel",delNoData:"Please select data to delete",delSuccess:"Deleted successfully",fullscreen:"Fullscreen",size:"Size",columnSetting:"Column Settings",lengthRange:"Length must be between {min} and {max} characters",notSpace:"Cannot contain spaces",notSpecialCharacters:"Cannot contain special characters",isEqual:"The two inputs are inconsistent",setting:"Settings",copySuccess:"Copy successfully",copyFailed:"Copy failed"},
// Menu internationalization
route:{dashboard:"Dashboard",document:"Document"},
// 登录页面国际化
login:{themeToggle:"Theme Switch",languageToggle:"Language Switch",dark:"Dark",light:"Light",username:"Please enter Username",password:"Please enter Password",newPassword:"Please enter new Password",login:"Login",captchaCode:"Please enter Verify Code",capsLock:"Caps Lock is On",rememberMe:"Remember Me",forgetPassword:"Forget Password?",message:{username:{required:"Please enter Username"},password:{required:"Please enter Password",min:"The password cannot be less than 6 characters",confirm:"Please confirm the password again",inconformity:"The two password entries are inconsistent"},captchaCode:{required:"Please enter Verify Code"},mobile:{required:"Please enter mobile number",invalid:"Invalid mobile number format",exist:"Mobile number already exists"},email:{required:"Please enter email",invalid:"Invalid email format",exist:"Email already exists"},name:{required:"Please enter account",invalid:"Invalid account format",min:"Account cannot be less than 2 characters"},agree:{required:"Please agree to the User Agreement"}},otherLoginMethods:"Other",resetPassword:"Reset password",thinkOfPasswd:"Remember your password?",register:"Register account",agree:"I have read and agree to the",userAgreement:"User Agreement",haveAccount:"Already have an account?",noAccount:"Don't have an account?",quickFill:"Quick fill",reg:"Register"},
// 导航栏国际化
navbar:{dashboard:"Dashboard",logout:"Logout",document:"Document",gitee:"Gitee",lock:"Lock",unlock:"Unlock",profile:"User Profile",config:"Config Center",tour:"Project Tour",refresh:"Refresh",close:"Close",closeLeft:"Close Left",closeRight:"Close Right",closeOther:"Close Other",closeAll:"Close All",refreshCache:"Refresh Cache"},lock:{lockScreen:"Lock screen",lockPassword:"Lock screen password",unlock:"Click to unlock",backToLogin:"Back to login",entrySystem:"Entry the system",placeholder:"Please enter the lock screen password",message:"Lock screen password error"},sizeSelect:{tooltip:"Layout Size",default:"Default",large:"Large",small:"Small",message:{success:"Switch Layout Size Successful!"}},langSelect:{message:{success:"Switch Language Successful!"}},settings:{project:"Project Settings",theme:"Theme",interface:"Interface",navigation:"Navigation",themeColor:"Theme Color",customColor:"Custom Color",showTagsView:"Show Tags View",showAppLogo:"Show App Logo",sidebarColorScheme:"Sidebar Color Scheme",showWatermark:"Show Watermark",showDesktopTools:"Desktop Tools Settings",showMenuSearch:"Show Menu Search",showFullscreen:"Show Fullscreen Toggle",showSizeSelect:"Show Layout Size",showLangSelect:"Show Language Select",showNotification:"Show Notification",classicBlue:"Classic Blue",minimalWhite:"Minimal White",copyConfig:"Copy Config",resetConfig:"Reset Default",copySuccess:"Configuration copied to clipboard",resetSuccess:"Reset to default configuration",copyDescription:"Copy config will generate current settings code, reset will restore all settings to default",confirmReset:"Are you sure to reset all settings to default? This operation cannot be undone.",applyToFile:"Apply to File",onlyCopy:"Only Copy",leftLayout:"Left Mode",topLayout:"Top Mode",mixLayout:"Mix Mode",configManagement:"Config Management",copyConfigDescription:"Generate current settings code and copy to clipboard, then overwrite src/settings.ts file",resetConfigDescription:"Restore all settings to system default values",systemTheme:"System Theme",showGuide:"Show Guide"},error:{noPermission:"Sorry, you don't have permission to access this page.",pageError:"Sorry, the page you visited does not exist.",networkError:"Sorry, the server reported an error.",returnToHome:"Return to home"}}}},Je=y({legacy:!1,locale:G(Ge).language,messages:Xe,globalInjection:!0});function Ze(){const e=["/login"];we.beforeEach(async(t,o,s)=>{T.start();try{if(be.isLoggedIn()){if("/login"===t.path)return void s({path:"/"});await async function(e,t,o){var s,a;const i=Le(),r=Oe();try{if(!i.isRouteGenerated){(null==(a=null==(s=r.basicInfo)?void 0:s.roles)?void 0:a.length)||await r.getUserInfo();return(await i.generateRoutes()).forEach(e=>{we.addRoute(e)}),void o({...e,replace:!0})}if(0===e.matched.length)return void o("/404");const t=e.params.title||e.query.title;t&&(e.meta.title=t),o()}catch(n){await Oe().resetAllState(),o("/login"),T.done()}we.afterEach(()=>{T.done()})}(t,0,s)}else e.includes(t.path)?s():(s(`/login?redirect=${encodeURIComponent(t.fullPath)}`),T.done())}catch(a){await Oe().resetAllState(),s("/login"),T.done()}}),we.afterEach(()=>{T.done()})}T.configure({
// 动画方式
easing:"ease",
// 递增进度条的速度
speed:500,
// 是否显示加载ico
showSpinner:!1,
// 自动递增间隔
trickleSpeed:200,
// 初始化时的最小百分比
minimum:.3});const Qe={install(e){!function(e){e.directive("hasPerm",Ke)}(e),function(e){e.use(we)}(e),function(e){e.use(Ge)}(e),function(e){e.use(Je)}(e),function(e){for(const[t,o]of Object.entries(R))e.component(t,o)}(e),Ze(),e.use(x),e.use(I)}},Ye=L(He);Ye.use(Qe);Ye.mount("#app"),(async()=>{var e,t,o;try{const s=Fe();await s.getConfig();const a=null==(e=s.configData.sys_web_title)?void 0:e.config_value,i=null==(t=s.configData.sys_web_favicon)?void 0:t.config_value,r=null==(o=s.configData.sys_web_logo)?void 0:o.config_value;if(a&&(document.title=a),i){const e=document.querySelector('link[rel="icon"]');e instanceof HTMLLinkElement&&(e.href=i)}if(r){const e=document.querySelector(".loading-container-logo");e instanceof HTMLImageElement&&(e.src=r)}}catch(s){}})();export{be as A,j as C,M as D,V as L,ze as N,Me as P,O as R,N as S,$ as T,xe as U,ge as _,pe as a,Le as b,Fe as c,z as d,Be as e,Oe as f,he as g,We as h,Je as i,$e as j,Ve as k,Ae as l,je as m,Re as n,U as o,we as r,B as t,G as u};