feat: update add check plugin login modules

This commit is contained in:
2025-12-09 09:41:10 +08:00
parent 47ce1962c0
commit bc2298ff83
4 changed files with 364 additions and 46 deletions

View File

@@ -17,14 +17,15 @@
"license": "MIT",
"type": "module",
"dependencies": {
"@ant-design/x": "^2.0.1",
"@ant-design/x": "^2.1.0",
"@astrojs/mdx": "^4.3.12",
"@astrojs/react": "^4.4.2",
"@astrojs/sitemap": "^3.6.0",
"@floating-ui/dom": "^1.7.4",
"@kevisual/ai": "^0.0.19",
"@kevisual/context": "^0.0.4",
"@kevisual/kv-login": "^0.0.8",
"@kevisual/query": "0.0.29",
"@kevisual/query": "0.0.31",
"@kevisual/query-login": "^0.0.7",
"@kevisual/registry": "^0.0.1",
"@radix-ui/react-dialog": "^1.1.15",
@@ -37,7 +38,7 @@
"dayjs": "^1.11.19",
"es-toolkit": "^1.42.0",
"github-markdown-css": "^5.8.1",
"lucide-react": "^0.555.0",
"lucide-react": "^0.556.0",
"nanoid": "^5.1.6",
"qrcode": "^1.5.4",
"react": "^19.2.1",
@@ -47,7 +48,7 @@
"zustand": "^5.0.9"
},
"devDependencies": {
"@kevisual/router": "0.0.33",
"@kevisual/router": "0.0.36",
"@kevisual/store": "0.0.9",
"@kevisual/types": "^0.0.10",
"@tailwindcss/vite": "^4.1.17",
@@ -59,7 +60,7 @@
"react": "^19.2.1",
"tailwindcss": "^4.1.17",
"tw-animate-css": "^1.4.0",
"vite": "^7.2.6"
"vite": "^7.2.7"
},
"pnpm": {
"onlyBuiltDependencies": [

View File

@@ -1,4 +1,7 @@
import { checkPluginLogin } from './modules/login-handle';
import './pages/kv-login'
import './pages/kv-message'
export { loginEmitter } from './pages/kv-login'
export { checkPluginLogin }

View File

@@ -146,6 +146,29 @@ export const checkMpWechat = async () => {
closePage();
}
}
export const checkPluginLogin = async () => {
const userCheck = 'user-check';
const url = new URL(location.href);
const redirect = url.searchParams.get('redirect');
const redirectUrl = redirect ? decodeURIComponent(redirect) : '';
const checkKey = url.searchParams.get(userCheck);
if (redirect && checkKey) {
// 通过refresh_token 刷新token
const me = await query.getMe();
if (me.code === 200) {
message.success('登录插件中...');
const token = await query.cacheStore.getAccessToken();
const newRedirectUrl = new URL(redirectUrl);
newRedirectUrl.searchParams.set('token', token + '');
setTimeout(() => {
window.open(newRedirectUrl.toString(), '_blank');
}, 2000);
return;
}
// 刷新token失败登陆页自己跳转
}
console.log('checkKey', checkKey, redirectUrl);
}
const isWechat = () => {
const ua = navigator.userAgent.toLowerCase();
return /micromessenger/i.test(ua);

371
pnpm-lock.yaml generated
View File

@@ -9,8 +9,8 @@ importers:
.:
dependencies:
'@ant-design/x':
specifier: ^2.0.1
version: 2.0.1(antd@6.0.0(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
specifier: ^2.1.0
version: 2.1.0(antd@6.0.0(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
'@astrojs/mdx':
specifier: ^4.3.12
version: 4.3.12(astro@5.16.4(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.52.5)(terser@5.37.0)(typescript@5.8.3))
@@ -23,18 +23,21 @@ importers:
'@floating-ui/dom':
specifier: ^1.7.4
version: 1.7.4
'@kevisual/ai':
specifier: ^0.0.19
version: 0.0.19
'@kevisual/context':
specifier: ^0.0.4
version: 0.0.4
'@kevisual/kv-login':
specifier: ^0.0.8
version: 0.0.8(@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76))
version: 0.0.8(@kevisual/query@0.0.31)
'@kevisual/query':
specifier: 0.0.29
version: 0.0.29(ws@8.18.0)(zod@3.25.76)
specifier: 0.0.31
version: 0.0.31
'@kevisual/query-login':
specifier: ^0.0.7
version: 0.0.7(@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76))
version: 0.0.7(@kevisual/query@0.0.31)
'@kevisual/registry':
specifier: ^0.0.1
version: 0.0.1(typescript@5.8.3)
@@ -49,7 +52,7 @@ importers:
version: 1.2.4(@types/react@19.2.7)(react@19.2.1)
'@tailwindcss/vite':
specifier: ^4.1.17
version: 4.1.17(vite@7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))
version: 4.1.17(vite@7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))
astro:
specifier: ^5.16.4
version: 5.16.4(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.52.5)(terser@5.37.0)(typescript@5.8.3)
@@ -69,8 +72,8 @@ importers:
specifier: ^5.8.1
version: 5.8.1
lucide-react:
specifier: ^0.555.0
version: 0.555.0(react@19.2.1)
specifier: ^0.556.0
version: 0.556.0(react@19.2.1)
nanoid:
specifier: ^5.1.6
version: 5.1.6
@@ -94,8 +97,8 @@ importers:
version: 5.0.9(@types/react@19.2.7)(react@19.2.1)
devDependencies:
'@kevisual/router':
specifier: 0.0.33
version: 0.0.33
specifier: 0.0.36
version: 0.0.36
'@kevisual/store':
specifier: 0.0.9
version: 0.0.9
@@ -113,7 +116,7 @@ importers:
version: 19.2.3(@types/react@19.2.7)
'@vitejs/plugin-basic-ssl':
specifier: ^2.1.0
version: 2.1.0(vite@7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))
version: 2.1.0(vite@7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))
dotenv:
specifier: ^17.2.3
version: 17.2.3
@@ -124,8 +127,8 @@ importers:
specifier: ^1.4.0
version: 1.4.0
vite:
specifier: ^7.2.6
version: 7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
specifier: ^7.2.7
version: 7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
packages/user-login:
dependencies:
@@ -245,12 +248,16 @@ packages:
peerDependencies:
react: '>=16.9.0'
'@ant-design/x@2.0.1':
resolution: {integrity: sha512-s2I43bn6QnWYJAAwtIqa2RJr6WXjlPXLdqwTKtAFNLcyFZY4LwB7iVmmgwhqltYu0aP2MeTeFpdPCbMbUMJroA==}
'@ant-design/x@2.1.0':
resolution: {integrity: sha512-BkbOhaH9rJOlMtgIfDKB1mfU6t5vwSCRs9f87aGVqZjlhNhA3wt1JkFuB5WL/82JFrMzSsF1qpYpzByjAVTL0w==}
peerDependencies:
antd: ^6.0.1
mermaid: ^11.12.1
react: '>=18.0.0'
react-dom: '>=18.0.0'
peerDependenciesMeta:
mermaid:
optional: true
'@astrojs/compiler@2.13.0':
resolution: {integrity: sha512-mqVORhUJViA28fwHYaWmsXSzLO9osbdZ5ImUfxBarqsYdMlPbqAqGJCxsNzvppp1BEzc1mJNjOVvQqeDN8Vspw==}
@@ -871,6 +878,9 @@ packages:
'@jridgewell/trace-mapping@0.3.31':
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
'@kevisual/ai@0.0.19':
resolution: {integrity: sha512-AFc8m6OcHZNxCb88bvzhvwWTZ4EVYyPupBzPUsLKLpdNBvsqm9TRboKCM2brJj2cqHnm+H+RbAk9AcGJkYhRCA==}
'@kevisual/cache@0.0.2':
resolution: {integrity: sha512-2Cl5KF2Gi27uLfhO6CdTMFnRzx9vYnqevAo7d9ab3rOaqTgF8tLeAXglXyRbaWW3WUbHU2XaOb4r98uUsqIQQw==}
@@ -883,6 +893,12 @@ packages:
'@kevisual/kv-login@0.0.8':
resolution: {integrity: sha512-N6nDCwI0sZkjQAiJf7JpyVvn5x3Nf2qWp9U9vzSMDyYeV/PHNzMZIr42Woma2MGFwcjMRjcnJxIC7HWARVLLsQ==}
'@kevisual/logger@0.0.4':
resolution: {integrity: sha512-+fpr92eokSxoGOW1SIRl/27lPuO+zyY+feR5o2Q4YCNlAdt2x64NwC/w8r/3NEC5QenLgd4K0azyKTI2mHbARw==}
'@kevisual/permission@0.0.3':
resolution: {integrity: sha512-8JsA/5O5Ax/z+M+MYpFYdlioHE6jNmWMuFSokBWYs9CCAHNiSKMR01YLkoVDoPvncfH/Y8F5K/IEXRCbptuMNA==}
'@kevisual/query-login@0.0.6':
resolution: {integrity: sha512-ZdX+sxeQaM3PV9fZXofMlxFz1RmpYIkoi47exzUgw6DADjEryBAQKRXe2/oL20NsBTV8owqaagRqffAVjq5c5g==}
peerDependencies:
@@ -896,14 +912,17 @@ packages:
'@kevisual/query@0.0.29':
resolution: {integrity: sha512-rQZk0J073UuC1QGzuyq+pb4Y0hu8/Qx/xYHs9NbsmslM+RuMnd1zpXmvhXNj7Kn1MdYTH90ng2MlFLBkkQFaIg==}
'@kevisual/query@0.0.31':
resolution: {integrity: sha512-bBdepjmMICLpcj/a9fnn82/0CGGYUZiCV+usWsJZKAwVlZcnj+WtKmbgKT09KpP6g3jjYzYOaXHiNFB8N0bQAQ==}
'@kevisual/registry@0.0.1':
resolution: {integrity: sha512-//OHu9m4JDrMjgP8o8dcjZd3D3IAUkRVlkTSviouZEH7r5m7mccA3Hvzw0XJ/lelx6exC6LWsyv6c4uV0Dp+gw==}
'@kevisual/router@0.0.30':
resolution: {integrity: sha512-/mBo7aZFWjT4QfHkI5HPXfdgSwZzt3mAVei7dcNSBTPe9KQSoYKZ8BTq9VTUj3XE0sI6o1bZjlLYvinpVnZilw==}
'@kevisual/router@0.0.33':
resolution: {integrity: sha512-9z7TkSzCIGbXn9SuHPBdZpGwHlAuwA8iN5jNAZBUvbEvBRkBxlrbdCSe9fBYiAHueLm2AceFNrW74uulOiAkqA==}
'@kevisual/router@0.0.36':
resolution: {integrity: sha512-o7GAb5T0WwRuHnWe3KB0/SPVaNHrnsFSNAQ9XuWokobfDP1ACFvOR9/rjbC0fbGFaeTeRKAprixxKkY1sfunBw==}
'@kevisual/ssl@0.0.1':
resolution: {integrity: sha512-Uh7PCkR5x1kEGvlEn4PrKE5C7yM5MiBsWwneTZyQMJJ/yrV3FZELXGYHzsb/Kb7V10d5skool7BtlL92AJEZpQ==}
@@ -920,9 +939,47 @@ packages:
'@mdx-js/mdx@3.1.1':
resolution: {integrity: sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==}
'@noble/hashes@1.4.0':
resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==}
engines: {node: '>= 16'}
'@oslojs/encoding@1.1.0':
resolution: {integrity: sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ==}
'@peculiar/asn1-cms@2.6.0':
resolution: {integrity: sha512-2uZqP+ggSncESeUF/9Su8rWqGclEfEiz1SyU02WX5fUONFfkjzS2Z/F1Li0ofSmf4JqYXIOdCAZqIXAIBAT1OA==}
'@peculiar/asn1-csr@2.6.0':
resolution: {integrity: sha512-BeWIu5VpTIhfRysfEp73SGbwjjoLL/JWXhJ/9mo4vXnz3tRGm+NGm3KNcRzQ9VMVqwYS2RHlolz21svzRXIHPQ==}
'@peculiar/asn1-ecc@2.6.0':
resolution: {integrity: sha512-FF3LMGq6SfAOwUG2sKpPXblibn6XnEIKa+SryvUl5Pik+WR9rmRA3OCiwz8R3lVXnYnyRkSZsSLdml8H3UiOcw==}
'@peculiar/asn1-pfx@2.6.0':
resolution: {integrity: sha512-rtUvtf+tyKGgokHHmZzeUojRZJYPxoD/jaN1+VAB4kKR7tXrnDCA/RAWXAIhMJJC+7W27IIRGe9djvxKgsldCQ==}
'@peculiar/asn1-pkcs8@2.6.0':
resolution: {integrity: sha512-KyQ4D8G/NrS7Fw3XCJrngxmjwO/3htnA0lL9gDICvEQ+GJ+EPFqldcJQTwPIdvx98Tua+WjkdKHSC0/Km7T+lA==}
'@peculiar/asn1-pkcs9@2.6.0':
resolution: {integrity: sha512-b78OQ6OciW0aqZxdzliXGYHASeCvvw5caqidbpQRYW2mBtXIX2WhofNXTEe7NyxTb0P6J62kAAWLwn0HuMF1Fw==}
'@peculiar/asn1-rsa@2.6.0':
resolution: {integrity: sha512-Nu4C19tsrTsCp9fDrH+sdcOKoVfdfoQQ7S3VqjJU6vedR7tY3RLkQ5oguOIB3zFW33USDUuYZnPEQYySlgha4w==}
'@peculiar/asn1-schema@2.6.0':
resolution: {integrity: sha512-xNLYLBFTBKkCzEZIw842BxytQQATQv+lDTCEMZ8C196iJcJJMBUZxrhSTxLaohMyKK8QlzRNTRkUmanucnDSqg==}
'@peculiar/asn1-x509-attr@2.6.0':
resolution: {integrity: sha512-MuIAXFX3/dc8gmoZBkwJWxUWOSvG4MMDntXhrOZpJVMkYX+MYc/rUAU2uJOved9iJEoiUx7//3D8oG83a78UJA==}
'@peculiar/asn1-x509@2.6.0':
resolution: {integrity: sha512-uzYbPEpoQiBoTq0/+jZtpM6Gq6zADBx+JNFP3yqRgziWBxQ/Dt/HcuvRfm9zJTPdRcBqPNdaRHTVwpyiq6iNMA==}
'@peculiar/x509@1.14.2':
resolution: {integrity: sha512-r2w1Hg6pODDs0zfAKHkSS5HLkOLSeburtcgwvlLLWWCixw+MmW3U6kD5ddyvc2Y2YdbGuVwCF2S2ASoU1cFAag==}
engines: {node: '>=22.0.0'}
'@radix-ui/primitive@1.1.3':
resolution: {integrity: sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==}
@@ -1745,6 +1802,9 @@ packages:
'@types/node@22.10.3':
resolution: {integrity: sha512-DifAyw4BkrufCILvD3ucnuN8eydUfc/C1GlyrnI+LK6543w5/L3VeVgf05o3B4fqSXP1dKYLOZsKfutpxPzZrw==}
'@types/prismjs@1.26.5':
resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==}
'@types/qrcode@1.5.6':
resolution: {integrity: sha512-te7NQcV2BOvdj2b1hCAHzAoMNuj65kNBMz0KBaxM6c3VGBOhU0dURQKOtH8CFNI/dsKkwlv32p26qYQTWoB5bw==}
@@ -1856,6 +1916,10 @@ packages:
array-iterate@2.0.1:
resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==}
asn1js@3.0.6:
resolution: {integrity: sha512-UOCGPYbl0tv8+006qks/dTgV9ajs97X2p0FAbyS2iyCRrmLSRolDaHdp+v/CLgnzHc3fVB+CwYiUmei7ndFcgA==}
engines: {node: '>=12.0.0'}
astring@1.9.0:
resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==}
hasBin: true
@@ -1900,6 +1964,10 @@ packages:
buffer-from@1.1.2:
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
bytestreamjs@2.0.1:
resolution: {integrity: sha512-U1Z/ob71V/bXfVABvNr/Kumf5VyeQRBEm6Txb0PQ6S7V5GpBM3w4Cbqz/xPDicR5tN0uvDifng8C+5qECeGwyQ==}
engines: {node: '>=6.0.0'}
camelcase@5.3.1:
resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
engines: {node: '>=6'}
@@ -2246,6 +2314,9 @@ packages:
fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
fault@1.0.4:
resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==}
fdir@6.5.0:
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
engines: {node: '>=12.0.0'}
@@ -2269,6 +2340,10 @@ packages:
fontkit@2.0.4:
resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==}
format@0.2.2:
resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
engines: {node: '>=0.4.x'}
fresh@2.0.0:
resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==}
engines: {node: '>= 0.8'}
@@ -2350,6 +2425,12 @@ packages:
hastscript@9.0.1:
resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==}
highlight.js@10.7.3:
resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==}
highlightjs-vue@1.0.0:
resolution: {integrity: sha512-PDEfEF102G23vHmPhLyPboFCD+BkMGu+GuJe2d9/eH4FsCwvgBpnc9n0pGE+ffKdph38s6foEZiEjdgHdzp+IA==}
html-escaper@3.0.3:
resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==}
@@ -2557,9 +2638,15 @@ packages:
lodash-es@4.17.21:
resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
lodash.throttle@4.1.1:
resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==}
longest-streak@3.1.0:
resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
lowlight@1.20.0:
resolution: {integrity: sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==}
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
@@ -2571,8 +2658,8 @@ packages:
peerDependencies:
react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
lucide-react@0.555.0:
resolution: {integrity: sha512-D8FvHUGbxWBRQM90NZeIyhAvkFfsh3u9ekrMvJ30Z6gnpBHS6HC6ldLg7tL45hwiIz/u66eKDtdA23gwwGsAHA==}
lucide-react@0.556.0:
resolution: {integrity: sha512-iOb8dRk7kLaYBZhR2VlV1CeJGxChBgUthpSP8wom9jfj79qovgG6qcSdiy6vkoREKPnbUYzJsCn4o4PtG3Iy+A==}
peerDependencies:
react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -2907,6 +2994,10 @@ packages:
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
engines: {node: '>=12'}
pkijs@3.3.3:
resolution: {integrity: sha512-+KD8hJtqQMYoTuL1bbGOqxb4z+nZkTAwVdNtWwe8Tc2xNbEmdJYIYoc6Qt0uF55e6YW6KuTHw1DjQ18gMhzepw==}
engines: {node: '>=16.0.0'}
pngjs@5.0.0:
resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==}
engines: {node: '>=10.13.0'}
@@ -2929,6 +3020,13 @@ packages:
property-information@7.1.0:
resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==}
pvtsutils@1.3.6:
resolution: {integrity: sha512-PLgQXQ6H2FWCaeRak8vvk1GW462lMxB5s3Jm673N82zI4vqtVUPuZdffdZbPDFRoU8kAhItWFtPCWiPpp4/EDg==}
pvutils@1.1.5:
resolution: {integrity: sha512-KTqnxsgGiQ6ZAzZCVlJH5eOjSnvlyEgx1m8bkRJfOhmGRqfo5KLvmAlACQkrjEtOQ4B7wF9TdSLIs9O90MX9xA==}
engines: {node: '>=16.0.0'}
qrcode@1.5.4:
resolution: {integrity: sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==}
engines: {node: '>=10.13.0'}
@@ -3039,6 +3137,12 @@ packages:
'@types/react':
optional: true
react-syntax-highlighter@16.1.0:
resolution: {integrity: sha512-E40/hBiP5rCNwkeBN1vRP+xow1X0pndinO+z3h7HLsHyjztbyjfzNWNKuAsJj+7DLam9iT4AaaOZnueCU+Nplg==}
engines: {node: '>= 16.20.2'}
peerDependencies:
react: '>= 0.14.0'
react-toastify@11.0.5:
resolution: {integrity: sha512-EpqHBGvnSTtHYhCPLxML05NLY2ZX0JURbAdNYa6BUkk+amz4wbKBQvoKQAB0ardvSarUBuY4Q4s1sluAzZwkmA==}
peerDependencies:
@@ -3071,6 +3175,12 @@ packages:
recma-stringify@1.0.0:
resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==}
reflect-metadata@0.2.2:
resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==}
refractor@5.0.0:
resolution: {integrity: sha512-QXOrHQF5jOpjjLfiNk5GFnWhRXvxjUVnlFxkeDmewR5sXkr3iM46Zo+CnRR8B+MDVqkULW4EcLVcRBNOPXHosw==}
regex-recursion@6.0.2:
resolution: {integrity: sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==}
@@ -3169,9 +3279,9 @@ packages:
resolution: {integrity: sha512-6U6w6kSLrM9Zxo0D7mC7QdGS6ZZytMWBnj/vhF9p+dAHx6CwGezuRcO4VclTbrrI7mg7SD6zNiqXUuBHOVopNQ==}
engines: {node: '>=10'}
selfsigned@4.0.0:
resolution: {integrity: sha512-eP/1BEUCziBF/7p96ergE2JlGOMsGj9kIe77pD99G3ValgxDFwHA2oNCYW4rjlmYp8LXc684ypH0836GjSKw0A==}
engines: {node: '>=10'}
selfsigned@5.2.0:
resolution: {integrity: sha512-QKF6fsJgdKn5Cy1SekTuwUQ6LOLUdnO4gVne1+TGSAyL/CD1aznNCmBna+bQB9xyon7DiYbDtTR1cLaxDXuaVA==}
engines: {node: '>=15.6.0'}
semver@6.3.1:
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
@@ -3345,9 +3455,16 @@ packages:
typescript:
optional: true
tslib@1.14.1:
resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
tslib@2.8.1:
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
tsyringe@4.10.0:
resolution: {integrity: sha512-axr3IdNuVIxnaK5XGEUFTu3YmAQ6lllgrvqfEoR16g/HGnYY/6We4oWENtAnzK6/LpJ2ur9PAb80RBt7/U4ugw==}
engines: {node: '>= 6.0.0'}
tw-animate-css@1.4.0:
resolution: {integrity: sha512-7bziOlRqH0hJx80h/3mbicLW7o8qLsH5+RaLR2t+OHM3D0JlWGODQKQ4cxbK7WlvmUxpcj6Kgu6EKqjrGFe3QQ==}
@@ -3591,8 +3708,8 @@ packages:
yaml:
optional: true
vite@7.2.6:
resolution: {integrity: sha512-tI2l/nFHC5rLh7+5+o7QjKjSR04ivXDF4jcgV0f/bTQ+OJiITy5S6gaynVsEM+7RqzufMnVbIon6Sr5x1SDYaQ==}
vite@7.2.7:
resolution: {integrity: sha512-ITcnkFeR3+fI8P1wMgItjGrR10170d8auB4EpMLPqmx6uxElH3a/hHGQabSHKdqd4FXWO1nFIp9rRn7JQ34ACQ==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
@@ -3822,7 +3939,7 @@ snapshots:
resize-observer-polyfill: 1.5.1
throttle-debounce: 5.0.2
'@ant-design/x@2.0.1(antd@6.0.0(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(react-dom@19.2.1(react@19.2.1))(react@19.2.1)':
'@ant-design/x@2.1.0(antd@6.0.0(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(react-dom@19.2.1(react@19.2.1))(react@19.2.1)':
dependencies:
'@ant-design/colors': 8.0.0
'@ant-design/cssinjs': 2.0.1(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
@@ -3832,10 +3949,12 @@ snapshots:
'@babel/runtime': 7.28.4
antd: 6.0.0(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
classnames: 2.5.1
lodash.throttle: 4.1.1
rc-motion: 2.9.5(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
rc-util: 5.44.4(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
react: 19.2.1
react-dom: 19.2.1(react@19.2.1)
react-syntax-highlighter: 16.1.0(react@19.2.1)
'@astrojs/compiler@2.13.0': {}
@@ -4356,6 +4475,12 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.5
'@kevisual/ai@0.0.19':
dependencies:
'@kevisual/logger': 0.0.4
'@kevisual/permission': 0.0.3
'@kevisual/query': 0.0.31
'@kevisual/cache@0.0.2(rollup@4.52.5)(tslib@2.8.1)(typescript@5.8.3)':
dependencies:
'@rollup/plugin-commonjs': 28.0.3(rollup@4.52.5)
@@ -4374,15 +4499,19 @@ snapshots:
'@kevisual/context@0.0.4': {}
'@kevisual/kv-login@0.0.8(@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76))':
'@kevisual/kv-login@0.0.8(@kevisual/query@0.0.31)':
dependencies:
'@kevisual/context': 0.0.4
'@kevisual/query-login': 0.0.7(@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76))
'@kevisual/query-login': 0.0.7(@kevisual/query@0.0.31)
lit-html: 3.3.1
qrcode: 1.5.4
transitivePeerDependencies:
- '@kevisual/query'
'@kevisual/logger@0.0.4': {}
'@kevisual/permission@0.0.3': {}
'@kevisual/query-login@0.0.6(@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76))(rollup@4.52.5)(tslib@2.8.1)(typescript@5.8.3)':
dependencies:
'@kevisual/cache': 0.0.2(rollup@4.52.5)(tslib@2.8.1)(typescript@5.8.3)
@@ -4393,10 +4522,10 @@ snapshots:
- tslib
- typescript
'@kevisual/query-login@0.0.7(@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76))':
'@kevisual/query-login@0.0.7(@kevisual/query@0.0.31)':
dependencies:
'@kevisual/cache': 0.0.3
'@kevisual/query': 0.0.29(ws@8.18.0)(zod@3.25.76)
'@kevisual/query': 0.0.31
dotenv: 17.2.3
'@kevisual/query@0.0.29(ws@8.18.0)(zod@3.25.76)':
@@ -4406,6 +4535,8 @@ snapshots:
- ws
- zod
'@kevisual/query@0.0.31': {}
'@kevisual/registry@0.0.1(typescript@5.8.3)':
dependencies:
class-variance-authority: 0.7.1
@@ -4432,10 +4563,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@kevisual/router@0.0.33':
'@kevisual/router@0.0.36':
dependencies:
path-to-regexp: 8.3.0
selfsigned: 4.0.0
selfsigned: 5.2.0
send: 1.2.0
transitivePeerDependencies:
- supports-color
@@ -4478,8 +4609,100 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@noble/hashes@1.4.0': {}
'@oslojs/encoding@1.1.0': {}
'@peculiar/asn1-cms@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
'@peculiar/asn1-x509-attr': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-csr@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-ecc@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-pfx@2.6.0':
dependencies:
'@peculiar/asn1-cms': 2.6.0
'@peculiar/asn1-pkcs8': 2.6.0
'@peculiar/asn1-rsa': 2.6.0
'@peculiar/asn1-schema': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-pkcs8@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-pkcs9@2.6.0':
dependencies:
'@peculiar/asn1-cms': 2.6.0
'@peculiar/asn1-pfx': 2.6.0
'@peculiar/asn1-pkcs8': 2.6.0
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
'@peculiar/asn1-x509-attr': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-rsa@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-schema@2.6.0':
dependencies:
asn1js: 3.0.6
pvtsutils: 1.3.6
tslib: 2.8.1
'@peculiar/asn1-x509-attr@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
asn1js: 3.0.6
tslib: 2.8.1
'@peculiar/asn1-x509@2.6.0':
dependencies:
'@peculiar/asn1-schema': 2.6.0
asn1js: 3.0.6
pvtsutils: 1.3.6
tslib: 2.8.1
'@peculiar/x509@1.14.2':
dependencies:
'@peculiar/asn1-cms': 2.6.0
'@peculiar/asn1-csr': 2.6.0
'@peculiar/asn1-ecc': 2.6.0
'@peculiar/asn1-pkcs9': 2.6.0
'@peculiar/asn1-rsa': 2.6.0
'@peculiar/asn1-schema': 2.6.0
'@peculiar/asn1-x509': 2.6.0
pvtsutils: 1.3.6
reflect-metadata: 0.2.2
tslib: 2.8.1
tsyringe: 4.10.0
'@radix-ui/primitive@1.1.3': {}
'@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.7))(@types/react@19.2.7)(react-dom@19.2.1(react@19.2.1))(react@19.2.1)':
@@ -5227,12 +5450,12 @@ snapshots:
tailwindcss: 4.1.17
vite: 7.2.2(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
'@tailwindcss/vite@4.1.17(vite@7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))':
'@tailwindcss/vite@4.1.17(vite@7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))':
dependencies:
'@tailwindcss/node': 4.1.17
'@tailwindcss/oxide': 4.1.17
tailwindcss: 4.1.17
vite: 7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
vite: 7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
'@types/babel__core@7.20.5':
dependencies:
@@ -5291,6 +5514,8 @@ snapshots:
dependencies:
undici-types: 6.20.0
'@types/prismjs@1.26.5': {}
'@types/qrcode@1.5.6':
dependencies:
'@types/node': 22.10.3
@@ -5329,9 +5554,9 @@ snapshots:
dependencies:
vite: 7.2.2(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
'@vitejs/plugin-basic-ssl@2.1.0(vite@7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))':
'@vitejs/plugin-basic-ssl@2.1.0(vite@7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))':
dependencies:
vite: 7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
vite: 7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0)
'@vitejs/plugin-react@4.7.0(vite@6.4.1(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0))':
dependencies:
@@ -5450,6 +5675,12 @@ snapshots:
array-iterate@2.0.1: {}
asn1js@3.0.6:
dependencies:
pvtsutils: 1.3.6
pvutils: 1.1.5
tslib: 2.8.1
astring@1.9.0: {}
astro@5.16.4(idb-keyval@6.2.2)(jiti@2.6.1)(lightningcss@1.30.2)(rollup@4.52.5)(terser@5.37.0)(typescript@5.8.3):
@@ -5592,6 +5823,8 @@ snapshots:
buffer-from@1.1.2:
optional: true
bytestreamjs@2.0.1: {}
camelcase@5.3.1: {}
camelcase@8.0.0: {}
@@ -5931,6 +6164,10 @@ snapshots:
fast-deep-equal@3.1.3: {}
fault@1.0.4:
dependencies:
format: 0.2.2
fdir@6.5.0(picomatch@4.0.3):
optionalDependencies:
picomatch: 4.0.3
@@ -5959,6 +6196,8 @@ snapshots:
unicode-properties: 1.4.1
unicode-trie: 2.0.0
format@0.2.2: {}
fresh@2.0.0: {}
fsevents@2.3.3:
@@ -6124,6 +6363,10 @@ snapshots:
property-information: 7.1.0
space-separated-tokens: 2.0.2
highlight.js@10.7.3: {}
highlightjs-vue@1.0.0: {}
html-escaper@3.0.3: {}
html-parse-stringify@3.0.1:
@@ -6288,8 +6531,15 @@ snapshots:
lodash-es@4.17.21: {}
lodash.throttle@4.1.1: {}
longest-streak@3.1.0: {}
lowlight@1.20.0:
dependencies:
fault: 1.0.4
highlight.js: 10.7.3
lru-cache@10.4.3: {}
lru-cache@5.1.1:
@@ -6300,7 +6550,7 @@ snapshots:
dependencies:
react: 19.2.1
lucide-react@0.555.0(react@19.2.1):
lucide-react@0.556.0(react@19.2.1):
dependencies:
react: 19.2.1
@@ -6882,6 +7132,15 @@ snapshots:
picomatch@4.0.3: {}
pkijs@3.3.3:
dependencies:
'@noble/hashes': 1.4.0
asn1js: 3.0.6
bytestreamjs: 2.0.1
pvtsutils: 1.3.6
pvutils: 1.1.5
tslib: 2.8.1
pngjs@5.0.0: {}
postcss@8.5.6:
@@ -6901,6 +7160,12 @@ snapshots:
property-information@7.1.0: {}
pvtsutils@1.3.6:
dependencies:
tslib: 2.8.1
pvutils@1.1.5: {}
qrcode@1.5.4:
dependencies:
dijkstrajs: 1.0.3
@@ -7006,6 +7271,16 @@ snapshots:
optionalDependencies:
'@types/react': 19.2.7
react-syntax-highlighter@16.1.0(react@19.2.1):
dependencies:
'@babel/runtime': 7.28.4
highlight.js: 10.7.3
highlightjs-vue: 1.0.0
lowlight: 1.20.0
prismjs: 1.30.0
react: 19.2.1
refractor: 5.0.0
react-toastify@11.0.5(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
dependencies:
clsx: 2.1.1
@@ -7053,6 +7328,15 @@ snapshots:
unified: 11.0.5
vfile: 6.0.3
reflect-metadata@0.2.2: {}
refractor@5.0.0:
dependencies:
'@types/hast': 3.0.4
'@types/prismjs': 1.26.5
hastscript: 9.0.1
parse-entities: 4.0.2
regex-recursion@6.0.2:
dependencies:
regex-utilities: 2.3.0
@@ -7231,9 +7515,10 @@ snapshots:
dependencies:
node-forge: 1.3.1
selfsigned@4.0.0:
selfsigned@5.2.0:
dependencies:
node-forge: 1.3.1
'@peculiar/x509': 1.14.2
pkijs: 3.3.3
semver@6.3.1: {}
@@ -7426,8 +7711,14 @@ snapshots:
optionalDependencies:
typescript: 5.8.3
tslib@1.14.1: {}
tslib@2.8.1: {}
tsyringe@4.10.0:
dependencies:
tslib: 1.14.1
tw-animate-css@1.4.0: {}
type-fest@4.41.0: {}
@@ -7591,7 +7882,7 @@ snapshots:
lightningcss: 1.30.2
terser: 5.37.0
vite@7.2.6(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0):
vite@7.2.7(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.37.0):
dependencies:
esbuild: 0.25.11
fdir: 6.5.0(picomatch@4.0.3)