Merge branch 'v2' of github.com:ikechan8370/chatgpt-plugin into v2

This commit is contained in:
ikechan8370 2023-10-19 20:22:47 +08:00
commit 3abfcc5d71
44 changed files with 216 additions and 175 deletions

View file

@ -7,7 +7,6 @@ import websocket from '@fastify/websocket'
import fs from 'fs' import fs from 'fs'
import path from 'path' import path from 'path'
import os from 'os' import os from 'os'
import schedule from 'node-schedule'
import websocketclient from 'ws' import websocketclient from 'ws'
import { Config } from '../utils/config.js' import { Config } from '../utils/config.js'
@ -17,6 +16,7 @@ import { getPublicIP, getUserData, getMasterQQ, randomString, getUin } from '../
import webRoute from './modules/web_route.js' import webRoute from './modules/web_route.js'
import webUser from './modules/user.js' import webUser from './modules/user.js'
import webPrompt from './modules/prompts.js' import webPrompt from './modules/prompts.js'
import Guoba from './modules/guoba.js'
import SettingView from './modules/setting_view.js' import SettingView from './modules/setting_view.js'
const __dirname = path.resolve() const __dirname = path.resolve()
@ -24,41 +24,6 @@ const server = fastify({
logger: Config.debug logger: Config.debug
}) })
let Statistics = {
SystemAccess: {
count: 0,
oldCount: 0
},
CacheFile: {
count: 0,
oldCount: 0
},
WebAccess: {
count: 0,
oldCount: 0
},
SystemLoad: {
count: 0,
oldCount: 0
}
}
async function getLoad() {
// 获取当前操作系统平台
const platform = os.platform()
// 判断平台是Linux还是Windows
if (platform === 'linux') {
// 如果是Linux使用os.loadavg()方法获取负载平均值
const loadAvg = os.loadavg()
return loadAvg[0] * 100
} else if (platform === 'win32') {
// 如果是Windows不获取性能
return 0
} else {
return 0
}
}
async function setUserData(qq, data) { async function setUserData(qq, data) {
const dir = 'resources/ChatGPTCache/user' const dir = 'resources/ChatGPTCache/user'
const filename = `${qq}.json` const filename = `${qq}.json`
@ -84,6 +49,7 @@ await server.register(webRoute)
await server.register(webUser) await server.register(webUser)
await server.register(SettingView) await server.register(SettingView)
await server.register(webPrompt) await server.register(webPrompt)
await server.register(Guoba)
// 无法访问端口的情况下创建与media的通讯 // 无法访问端口的情况下创建与media的通讯
async function mediaLink() { async function mediaLink() {
@ -290,7 +256,6 @@ export async function createServer() {
time: data.time time: data.time
}) })
await setUserData(body.qq, user) await setUserData(body.qq, user)
Statistics.CacheFile.count += 1
reply.send({ file: body.entry, cacheUrl: `http://${ip}:${Config.serverPort || 3321}/page/${body.entry}` }) reply.send({ file: body.entry, cacheUrl: `http://${ip}:${Config.serverPort || 3321}/page/${body.entry}` })
} catch (err) { } catch (err) {
server.log.error(`用户生成缓存${body.entry}时发生错误: ${err}`) server.log.error(`用户生成缓存${body.entry}时发生错误: ${err}`)
@ -299,12 +264,6 @@ export async function createServer() {
} }
return reply return reply
}) })
// 获取系统状态
server.post('/system-statistics', async (request, reply) => {
Statistics.SystemLoad.count = await getLoad()
reply.send(Statistics)
return reply
})
// 清除缓存数据 // 清除缓存数据
server.post('/cleanCache', async (request, reply) => { server.post('/cleanCache', async (request, reply) => {
@ -333,6 +292,7 @@ export async function createServer() {
connection.socket.send(JSON.stringify(response)) connection.socket.send(JSON.stringify(response))
}) })
connection.socket.on('message', async (message) => { connection.socket.on('message', async (message) => {
const isTrss = Array.isArray(Bot.uin)
try { try {
const data = JSON.parse(message) const data = JSON.parse(message)
const user = UserInfo(data.token) const user = UserInfo(data.token)
@ -344,10 +304,14 @@ export async function createServer() {
} }
if (data.id && data.message) { if (data.id && data.message) {
if (data.group) { if (data.group) {
Bot.sendGroupMsg(parseInt(data.id), data.message, data.quotable) if (isTrss) {
Bot[user.user].pickGroup(parseInt(data.id)).sendMsg(data.message)
} else {
Bot.sendGroupMsg(parseInt(data.id), data.message, data.quotable)
}
} else { } else {
if (Array.isArray(Bot.uin)) { if (isTrss) {
Bot.pickFriend(parseInt(data.id)).sendMsg(data.message) Bot[user.user].pickFriend(parseInt(data.id)).sendMsg(data.message)
} else { } else {
Bot.sendPrivateMsg(parseInt(data.id), data.message, data.quotable) Bot.sendPrivateMsg(parseInt(data.id), data.message, data.quotable)
} }
@ -365,7 +329,6 @@ export async function createServer() {
} }
break break
case 'login': // 登录 case 'login': // 登录
if (user) { if (user) {
clients[user.user] = connection.socket clients[user.user] = connection.socket
connection.login = true connection.login = true
@ -379,13 +342,17 @@ export async function createServer() {
await connection.socket.send(JSON.stringify({ command: data.command, state: false, error: '请先登录账号' })) await connection.socket.send(JSON.stringify({ command: data.command, state: false, error: '请先登录账号' }))
return return
} }
if (user.autho != 'admin') { if (user?.autho != 'admin') {
await connection.socket.send(JSON.stringify({ command: data.command, state: true, error: '普通用户无需进行初始化' })) await connection.socket.send(JSON.stringify({ command: data.command, state: true, error: '普通用户无需进行初始化' }))
return return
} }
const groupList = Bot.getGroupList() let _Bot = Bot
if (isTrss) {
_Bot = Bot[user.user]
}
const groupList = await _Bot.getGroupList()
groupList.forEach(async (item) => { groupList.forEach(async (item) => {
const group = Bot.pickGroup(item.group_id) const group = _Bot.pickGroup(item.group_id)
const groupMessages = await group.getChatHistory() const groupMessages = await group.getChatHistory()
groupMessages.forEach(async (e) => { groupMessages.forEach(async (e) => {
const messageData = { const messageData = {
@ -410,12 +377,14 @@ export async function createServer() {
await connection.socket.send(JSON.stringify(messageData)) await connection.socket.send(JSON.stringify(messageData))
}) })
}) })
break break
default: default:
await connection.socket.send(JSON.stringify({ "data": data })) await connection.socket.send(JSON.stringify({ "data": data }))
break break
} }
} catch (error) { } catch (error) {
console.error(error)
await connection.socket.send(JSON.stringify({ "error": error.message })) await connection.socket.send(JSON.stringify({ "error": error.message }))
} }
}) })
@ -432,7 +401,7 @@ export async function createServer() {
message: e.message, message: e.message,
sender: e.sender, sender: e.sender,
group: { group: {
isGroup: e.isGroup, isGroup: e.isGroup || e.group_id != undefined,
group_id: e.group_id, group_id: e.group_id,
group_name: e.group_name group_name: e.group_name
}, },
@ -606,28 +575,6 @@ export async function createServer() {
return reply return reply
}) })
server.addHook('onRequest', (request, reply, done) => {
if (request.method == 'POST') { Statistics.SystemAccess.count += 1 }
if (request.method == 'GET') { Statistics.WebAccess.count += 1 }
done()
})
// 定时任务
let rule = new schedule.RecurrenceRule()
rule.hour = 0
rule.minute = 0
let job_Statistics = schedule.scheduleJob(rule, function () {
Statistics.SystemAccess.oldCount = Statistics.SystemAccess.count
Statistics.CacheFile.oldCount = Statistics.CacheFile.count
Statistics.WebAccess.oldCount = Statistics.WebAccess.count
Statistics.SystemAccess.count = 0
Statistics.CacheFile.count = 0
Statistics.WebAccess.count = 0
})
let job_Statistics_SystemLoad = schedule.scheduleJob('0 * * * *', async function () {
Statistics.SystemLoad.count = await getLoad()
Statistics.SystemLoad.oldCount = Statistics.SystemLoad.count
})
server.listen({ server.listen({
port: Config.serverPort || 3321, port: Config.serverPort || 3321,
host: '::' host: '::'

72
server/modules/guoba.js Normal file
View file

@ -0,0 +1,72 @@
import { UserInfo } from './user_data.js'
async function Guoba(fastify, options) {
// 获取锅巴登陆链接
fastify.post('/guobaLogin', async (request, reply) => {
const token = request.cookies.token || request.body?.token || 'unknown'
let user = UserInfo(token)
if (user && user.autho == 'admin') {
try {
let { LoginService } = await import('../../../Guoba-Plugin/server/service/both/LoginService.js')
const guobaLoginService = new LoginService()
const guobaAPI = await guobaLoginService.setQuickLogin(user.user)
reply.send({ guoba: guobaAPI })
}
catch (err) {
console.error(err)
reply.send({ state: false, error: err })
}
} else {
reply.send({ state: false, error: '用户权限不足' })
}
return reply
})
// 代理锅巴接口
fastify.post('/guobaApi', async (request, reply) => {
const body = request.body || {}
const token = request.cookies.token || request.body?.token || 'unknown'
let user = UserInfo(token)
if (user && user.autho == 'admin' && body.guobaToken) {
try {
let { getAllWebAddress } = await import('../../../Guoba-Plugin/utils/common.js')
const { custom, local, remote } = await getAllWebAddress()
if (local.length > 0) {
const guobaOptions = {
method: body.post ? 'POST' : 'GET',
headers: {
'Content-Type': 'application/json',
'Guoba-Access-Token': body.guobaToken
}
}
if (body.data) {
if (body.post) {
guobaOptions.body = JSON.stringify(body.data)
} else {
let paramsArray = []
Object.keys(body.data).forEach(key => paramsArray.push(key + '=' + body.data[key]))
if (paramsArray.length > 0) {
body.path += '?' + paramsArray.join('&')
}
}
}
const response = await fetch(`${local[0]}/${body.path}`, guobaOptions)
if (response.ok) {
const json = await response.json()
reply.send(json)
}
} else {
reply.send({ state: false, error: '锅巴接口异常' })
}
}
catch (err) {
console.error(err)
reply.send({ state: false, error: err })
}
} else {
reply.send({ state: false, error: '用户权限不足' })
}
return reply
})
}
export default Guoba

View file

@ -6,12 +6,27 @@ async function User(fastify, options) {
// 登录 // 登录
fastify.post('/login', async (request, reply) => { fastify.post('/login', async (request, reply) => {
const body = request.body || {} const body = request.body || {}
let guobaLoginService
let guobaAPI = ''
try {
let { LoginService } = await import('../../../Guoba-Plugin/server/service/both/LoginService.js')
let { getAllWebAddress } = await import('../../../Guoba-Plugin/utils/common.js')
guobaLoginService = new LoginService()
guobaAPI = await getAllWebAddress()
}
catch (err) {
console.error(err)
guobaLoginService = {
signToken: () => {return null}
}
}
if (body.qq && body.passwd) { if (body.qq && body.passwd) {
const token = randomString(32) const token = randomString(32)
if (body.qq == getUin() && await redis.get('CHATGPT:ADMIN_PASSWD') == body.passwd) { if (body.qq == getUin() && await redis.get('CHATGPT:ADMIN_PASSWD') == body.passwd) {
const guobaToken = await guobaLoginService.signToken(body.qq)
AddUser({ user: body.qq, token: token, autho: 'admin' }) AddUser({ user: body.qq, token: token, autho: 'admin' })
reply.setCookie('token', token, { path: '/' }) reply.setCookie('token', token, { path: '/' })
reply.send({ login: true, autho: 'admin', token: token }) reply.send({ login: true, autho: 'admin', token: token, guobaToken: guobaToken, guoba: guobaAPI })
} else { } else {
const user = await getUserData(body.qq) const user = await getUserData(body.qq)
if (user.passwd != '' && user.passwd === body.passwd) { if (user.passwd != '' && user.passwd === body.passwd) {
@ -26,9 +41,10 @@ async function User(fastify, options) {
const token = randomString(32) const token = randomString(32)
const opt = await redis.get(`CHATGPT:SERVER_QUICK`) const opt = await redis.get(`CHATGPT:SERVER_QUICK`)
if (opt && body.otp == opt) { if (opt && body.otp == opt) {
const guobaToken = await guobaLoginService.signToken(getUin())
AddUser({ user: getUin(), token: token, autho: 'admin' }) AddUser({ user: getUin(), token: token, autho: 'admin' })
reply.setCookie('token', token, { path: '/' }) reply.setCookie('token', token, { path: '/' })
reply.send({ login: true, autho: 'admin', token: token, user: getUin() }) reply.send({ login: true, autho: 'admin', token: token, user: getUin(), guobaToken: guobaToken, guoba: guobaAPI })
} else { } else {
reply.send({ login: false, err: `快捷登录代码错误,请检查后重试` }) reply.send({ login: false, err: `快捷登录代码错误,请检查后重试` })
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{m as g,V as t}from"./VCheckboxBtn.b7a3a8e0.js";import{p as A,ae as F,af as I,n as B,u as U,ag as D,ah as R,o as _,ac as $,ai as j,aj as l,D as u,J as c}from"./index.f985de17.js";const J=A({...F(),...I(g(),["inline"])},"VCheckbox"),z=B()({name:"VCheckbox",inheritAttrs:!1,props:J(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,r){let{attrs:d,slots:a}=r;const s=U(e,"modelValue"),{isFocused:n,focus:i,blur:m}=D(e),V=R(),b=_(()=>e.id||`checkbox-${V}`);return $(()=>{const[p,k]=j(d),[f,M]=l.filterProps(e),[h,N]=t.filterProps(e);return u(l,c({class:["v-checkbox",e.class]},p,f,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:b.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:v,messagesId:x,isDisabled:P,isReadonly:C}=o;return u(t,c(h,{id:v.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},k,{modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,onFocus:i,onBlur:m}),a)}})}),{}}});export{z as V}; import{m as g,V as t}from"./VCheckboxBtn.ae1aff4b.js";import{p as A,ae as F,af as I,n as B,u as U,ag as D,ah as R,o as _,ac as $,ai as j,aj as l,D as u,J as c}from"./index.a457a291.js";const J=A({...F(),...I(g(),["inline"])},"VCheckbox"),z=B()({name:"VCheckbox",inheritAttrs:!1,props:J(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,r){let{attrs:d,slots:a}=r;const s=U(e,"modelValue"),{isFocused:n,focus:i,blur:m}=D(e),V=R(),b=_(()=>e.id||`checkbox-${V}`);return $(()=>{const[p,k]=j(d),[f,M]=l.filterProps(e),[h,N]=t.filterProps(e);return u(l,c({class:["v-checkbox",e.class]},p,f,{modelValue:s.value,"onUpdate:modelValue":o=>s.value=o,id:b.value,focused:n.value,style:e.style}),{...a,default:o=>{let{id:v,messagesId:x,isDisabled:P,isReadonly:C}=o;return u(t,c(h,{id:v.value,"aria-describedby":x.value,disabled:P.value,readonly:C.value},k,{modelValue:s.value,"onUpdate:modelValue":y=>s.value=y,onFocus:i,onBlur:m}),a)}})}),{}}});export{z as V};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
import{p as w,O as V,o as D,aD as b,b4 as O,av as k,a_ as x,b5 as L,b6 as j,n as B,u as R,b7 as T,a$ as A,aR as P,ax as C,J as I,ac as N,aT as K,D as S,G as $,b3 as z,b8 as G}from"./index.a457a291.js";const J=(t,f,e)=>t==null||f==null?-1:t.toString().toLocaleLowerCase().indexOf(f.toString().toLocaleLowerCase()),_=w({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Q(t,f,e){var v,l,s;const r=[],d=(v=e==null?void 0:e.default)!=null?v:J,n=e!=null&&e.filterKeys?k(e.filterKeys):!1,m=Object.keys((l=e==null?void 0:e.customKeyFilter)!=null?l:{}).length;if(!(t!=null&&t.length))return r;e:for(let c=0;c<t.length;c++){const a=t[c],o={},i={};let u=-1;if(f&&!(e!=null&&e.noFilter)){if(typeof a=="object"){const h=n||Object.keys(a);for(const F of h){const E=x(a,F,a),M=(s=e==null?void 0:e.customKeyFilter)==null?void 0:s[F];if(u=M?M(E,f,a):d(E,f,a),u!==-1&&u!==!1)M?o[F]=u:i[F]=u;else if((e==null?void 0:e.filterMode)==="every")continue e}}else u=d(a,f,a),u!==-1&&u!==!1&&(i.title=u);const g=Object.keys(i).length,y=Object.keys(o).length;if(!g&&!y||(e==null?void 0:e.filterMode)==="union"&&y!==m&&!g||(e==null?void 0:e.filterMode)==="intersection"&&(y!==m||!g))continue}r.push({index:c,matches:{...i,...o}})}return r}function H(t,f,e,r){const d=V([]),n=V(new Map),m=D(()=>r!=null&&r.transform?b(f).map(r==null?void 0:r.transform):b(f));O(()=>{const l=typeof e=="function"?e():b(e),s=typeof l!="string"&&typeof l!="number"?"":String(l),c=Q(m.value,s,{customKeyFilter:t.customKeyFilter,default:t.customFilter,filterKeys:t.filterKeys,filterMode:t.filterMode,noFilter:t.noFilter}),a=b(f),o=[],i=new Map;c.forEach(u=>{let{index:g,matches:y}=u;const h=a[g];o.push(h),i.set(h.value,y)}),d.value=o,n.value=i});function v(l){return n.value.get(l.value)}return{filteredItems:d,filteredMatches:n,getMatches:v}}const U=w({fullscreen:Boolean,retainFocus:{type:Boolean,default:!0},scrollable:Boolean,...L({origin:"center center",scrollStrategy:"block",transition:{component:j},zIndex:2400})},"VDialog"),X=B()({name:"VDialog",props:U(),emits:{"update:modelValue":t=>!0},setup(t,f){let{slots:e}=f;const r=R(t,"modelValue"),{scopeId:d}=T(),n=V();function m(l){var a,o;const s=l.relatedTarget,c=l.target;if(s!==c&&((a=n.value)==null?void 0:a.contentEl)&&((o=n.value)==null?void 0:o.globalTop)&&![document,n.value.contentEl].includes(c)&&!n.value.contentEl.contains(c)){const i=G(n.value.contentEl);if(!i.length)return;const u=i[0],g=i[i.length-1];s===u?g.focus():u.focus()}}A&&P(()=>r.value&&t.retainFocus,l=>{l?document.addEventListener("focusin",m):document.removeEventListener("focusin",m)},{immediate:!0}),P(r,async l=>{var s,c;await C(),l?(s=n.value.contentEl)==null||s.focus({preventScroll:!0}):(c=n.value.activatorEl)==null||c.focus({preventScroll:!0})});const v=D(()=>I({"aria-haspopup":"dialog","aria-expanded":String(r.value)},t.activatorProps));return N(()=>{const[l]=K.filterProps(t);return S(K,I({ref:n,class:["v-dialog",{"v-dialog--fullscreen":t.fullscreen,"v-dialog--scrollable":t.scrollable},t.class],style:t.style},l,{modelValue:r.value,"onUpdate:modelValue":s=>r.value=s,"aria-modal":"true",activatorProps:v.value,role:"dialog"},d),{activator:e.activator,default:function(){for(var s=arguments.length,c=new Array(s),a=0;a<s;a++)c[a]=arguments[a];return S($,{root:"VDialog"},{default:()=>{var o;return[(o=e.default)==null?void 0:o.call(e,...c)]}})}})}),z({},n)}});export{X as V,_ as m,H as u};

View file

@ -1 +0,0 @@
.v-select .v-field .v-text-field__prefix,.v-select .v-field .v-text-field__suffix,.v-select .v-field .v-field__input,.v-select .v-field.v-field{cursor:pointer}.v-select .v-field .v-field__input>input{align-self:flex-start;opacity:1;flex:0 0;position:absolute;width:100%;transition:none;pointer-events:none;caret-color:transparent}.v-select .v-field--dirty .v-select__selection{margin-inline-end:2px}.v-select .v-select__selection-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-select__content{overflow:hidden;box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity),0 1px 10px 0 var(--v-shadow-key-ambient-opacity);border-radius:4px}.v-select__selection{display:inline-flex;align-items:center;letter-spacing:inherit;line-height:inherit;max-width:100%}.v-select .v-select__selection{margin-top:var(--v-input-chips-margin-top);margin-bottom:var(--v-input-chips-margin-bottom)}.v-select .v-select__selection:first-child{margin-inline-start:0}.v-select--selected .v-field .v-field__input>input{opacity:0}.v-select__menu-icon{margin-inline-start:4px;transition:.2s cubic-bezier(.4,0,.2,1)}.v-select--active-menu .v-select__menu-icon{opacity:var(--v-high-emphasis-opacity);transform:rotate(180deg)}.v-virtual-scroll{display:block;flex:1 1 auto;max-width:100%;overflow:auto;position:relative}.v-virtual-scroll__container{display:block}.v-dialog{align-items:center;justify-content:center;margin:auto}.v-dialog>.v-overlay__content{max-height:calc(100% - 48px);width:calc(100% - 48px);max-width:calc(100% - 48px);margin:24px;display:flex;flex-direction:column}.v-dialog>.v-overlay__content>.v-card,.v-dialog>.v-overlay__content>.v-sheet,.v-dialog>.v-overlay__content>form>.v-card,.v-dialog>.v-overlay__content>form>.v-sheet{--v-scrollbar-offset: 0px;border-radius:6px;overflow-y:auto;box-shadow:0 11px 15px -7px var(--v-shadow-key-umbra-opacity),0 24px 38px 3px var(--v-shadow-key-penumbra-opacity),0 9px 46px 8px var(--v-shadow-key-ambient-opacity)}.v-dialog>.v-overlay__content>.v-card,.v-dialog>.v-overlay__content>form>.v-card{display:flex;flex-direction:column}.v-dialog>.v-overlay__content>.v-card>.v-card-item,.v-dialog>.v-overlay__content>form>.v-card>.v-card-item{padding:20px}.v-dialog>.v-overlay__content>.v-card>.v-card-item+.v-card-text,.v-dialog>.v-overlay__content>form>.v-card>.v-card-item+.v-card-text{padding-top:0}.v-dialog>.v-overlay__content>.v-card>.v-card-text,.v-dialog>.v-overlay__content>form>.v-card>.v-card-text{font-size:inherit;letter-spacing:.0094rem;line-height:inherit;padding:20px}.v-dialog--fullscreen{--v-scrollbar-offset: 0px}.v-dialog--fullscreen>.v-overlay__content{border-radius:0;margin:0;padding:0;width:100%;height:100%;max-width:100%;max-height:100%;overflow-y:auto;top:0;left:0}.v-dialog--fullscreen>.v-overlay__content>.v-card,.v-dialog--fullscreen>.v-overlay__content>.v-sheet,.v-dialog--fullscreen>.v-overlay__content>form>.v-card,.v-dialog--fullscreen>.v-overlay__content>form>.v-sheet{min-height:100%;min-width:100%;border-radius:0}.v-dialog--scrollable>.v-overlay__content,.v-dialog--scrollable>.v-overlay__content>form{display:flex;overflow:hidden}.v-dialog--scrollable>.v-overlay__content>.v-card,.v-dialog--scrollable>.v-overlay__content>form>.v-card{display:flex;flex:1 1 100%;flex-direction:column;max-height:100%;max-width:100%}.v-dialog--scrollable>.v-overlay__content>.v-card>.v-card-text,.v-dialog--scrollable>.v-overlay__content>form>.v-card>.v-card-text{backface-visibility:hidden;overflow-y:auto}

View file

@ -0,0 +1 @@
.v-dialog{align-items:center;justify-content:center;margin:auto}.v-dialog>.v-overlay__content{max-height:calc(100% - 48px);width:calc(100% - 48px);max-width:calc(100% - 48px);margin:24px;display:flex;flex-direction:column}.v-dialog>.v-overlay__content>.v-card,.v-dialog>.v-overlay__content>.v-sheet,.v-dialog>.v-overlay__content>form>.v-card,.v-dialog>.v-overlay__content>form>.v-sheet{--v-scrollbar-offset: 0px;border-radius:6px;overflow-y:auto;box-shadow:0 11px 15px -7px var(--v-shadow-key-umbra-opacity),0 24px 38px 3px var(--v-shadow-key-penumbra-opacity),0 9px 46px 8px var(--v-shadow-key-ambient-opacity)}.v-dialog>.v-overlay__content>.v-card,.v-dialog>.v-overlay__content>form>.v-card{display:flex;flex-direction:column}.v-dialog>.v-overlay__content>.v-card>.v-card-item,.v-dialog>.v-overlay__content>form>.v-card>.v-card-item{padding:20px}.v-dialog>.v-overlay__content>.v-card>.v-card-item+.v-card-text,.v-dialog>.v-overlay__content>form>.v-card>.v-card-item+.v-card-text{padding-top:0}.v-dialog>.v-overlay__content>.v-card>.v-card-text,.v-dialog>.v-overlay__content>form>.v-card>.v-card-text{font-size:inherit;letter-spacing:.0094rem;line-height:inherit;padding:20px}.v-dialog--fullscreen{--v-scrollbar-offset: 0px}.v-dialog--fullscreen>.v-overlay__content{border-radius:0;margin:0;padding:0;width:100%;height:100%;max-width:100%;max-height:100%;overflow-y:auto;top:0;left:0}.v-dialog--fullscreen>.v-overlay__content>.v-card,.v-dialog--fullscreen>.v-overlay__content>.v-sheet,.v-dialog--fullscreen>.v-overlay__content>form>.v-card,.v-dialog--fullscreen>.v-overlay__content>form>.v-sheet{min-height:100%;min-width:100%;border-radius:0}.v-dialog--scrollable>.v-overlay__content,.v-dialog--scrollable>.v-overlay__content>form{display:flex;overflow:hidden}.v-dialog--scrollable>.v-overlay__content>.v-card,.v-dialog--scrollable>.v-overlay__content>form>.v-card{display:flex;flex:1 1 100%;flex-direction:column;max-height:100%;max-width:100%}.v-dialog--scrollable>.v-overlay__content>.v-card>.v-card-text,.v-dialog--scrollable>.v-overlay__content>form>.v-card>.v-card-text{backface-visibility:hidden;overflow-y:auto}

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
.v-select .v-field .v-text-field__prefix,.v-select .v-field .v-text-field__suffix,.v-select .v-field .v-field__input,.v-select .v-field.v-field{cursor:pointer}.v-select .v-field .v-field__input>input{align-self:flex-start;opacity:1;flex:0 0;position:absolute;width:100%;transition:none;pointer-events:none;caret-color:transparent}.v-select .v-field--dirty .v-select__selection{margin-inline-end:2px}.v-select .v-select__selection-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-select__content{overflow:hidden;box-shadow:0 2px 4px -1px var(--v-shadow-key-umbra-opacity),0 4px 5px 0 var(--v-shadow-key-penumbra-opacity),0 1px 10px 0 var(--v-shadow-key-ambient-opacity);border-radius:4px}.v-select__selection{display:inline-flex;align-items:center;letter-spacing:inherit;line-height:inherit;max-width:100%}.v-select .v-select__selection{margin-top:var(--v-input-chips-margin-top);margin-bottom:var(--v-input-chips-margin-bottom)}.v-select .v-select__selection:first-child{margin-inline-start:0}.v-select--selected .v-field .v-field__input>input{opacity:0}.v-select__menu-icon{margin-inline-start:4px;transition:.2s cubic-bezier(.4,0,.2,1)}.v-select--active-menu .v-select__menu-icon{opacity:var(--v-high-emphasis-opacity);transform:rotate(180deg)}.v-virtual-scroll{display:block;flex:1 1 auto;max-width:100%;overflow:auto;position:relative}.v-virtual-scroll__container{display:block}

View file

@ -1 +1 @@
import{p as d,m as h,a as m,j as b,k as v,n as c,q as f,t as u,ac as g,D as t,ad as T}from"./index.f985de17.js";const x=d({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,...h(),...m(),...b(),...v()},"VTable"),V=c()({name:"VTable",props:x(),setup(a,n){let{slots:e}=n;const{themeClasses:r}=f(a),{densityClasses:i}=u(a);return g(()=>t(a.tag,{class:["v-table",{"v-table--fixed-height":!!a.height,"v-table--fixed-header":a.fixedHeader,"v-table--fixed-footer":a.fixedFooter,"v-table--has-top":!!e.top,"v-table--has-bottom":!!e.bottom,"v-table--hover":a.hover},r.value,i.value,a.class],style:a.style},{default:()=>{var o,s,l;return[(o=e.top)==null?void 0:o.call(e),e.default?t("div",{class:"v-table__wrapper",style:{height:T(a.height)}},[t("table",null,[e.default()])]):(s=e.wrapper)==null?void 0:s.call(e),(l=e.bottom)==null?void 0:l.call(e)]}})),{}}});export{V,x as m}; import{p as d,m as h,a as m,j as b,k as v,n as c,q as f,t as u,ac as g,D as t,ad as T}from"./index.a457a291.js";const x=d({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,...h(),...m(),...b(),...v()},"VTable"),V=c()({name:"VTable",props:x(),setup(a,n){let{slots:e}=n;const{themeClasses:r}=f(a),{densityClasses:i}=u(a);return g(()=>t(a.tag,{class:["v-table",{"v-table--fixed-height":!!a.height,"v-table--fixed-header":a.fixedHeader,"v-table--fixed-footer":a.fixedFooter,"v-table--has-top":!!e.top,"v-table--has-bottom":!!e.bottom,"v-table--hover":a.hover},r.value,i.value,a.class],style:a.style},{default:()=>{var o,s,l;return[(o=e.top)==null?void 0:o.call(e),e.default?t("div",{class:"v-table__wrapper",style:{height:T(a.height)}},[t("table",null,[e.default()])]):(s=e.wrapper)==null?void 0:s.call(e),(l=e.bottom)==null?void 0:l.call(e)]}})),{}}});export{V,x as m};

View file

@ -1 +1 @@
import{p as Z,ae as p,bf as ee,n as te,bg as ae,u as ne,ag as le,o as y,O as x,aq as oe,b4 as ue,b8 as ie,aT as m,bh as re,ac as se,ai as ce,aj as _,bi as de,D as o,bj as fe,J as I,a2 as R,ar as z,as as ve,bk as xe,bl as me,a_ as ge,ax as S,bm as he,ad as we,az as Ve}from"./index.f985de17.js";const ye=Z({autoGrow:Boolean,autofocus:Boolean,counter:[Boolean,Number,String],counterValue:Function,prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,noResize:Boolean,rows:{type:[Number,String],default:5,validator:e=>!isNaN(parseFloat(e))},maxRows:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},suffix:String,modelModifiers:Object,...p(),...ee()},"VTextarea"),be=te()({name:"VTextarea",directives:{Intersect:ae},inheritAttrs:!1,props:ye(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,A){let{attrs:F,emit:M,slots:i}=A;const u=ne(e,"modelValue"),{isFocused:f,focus:D,blur:G}=le(e),E=y(()=>typeof e.counterValue=="function"?e.counterValue(u.value):(u.value||"").toString().length),U=y(()=>{if(F.maxlength)return F.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter});function O(t,n){var a,l;!e.autofocus||!t||(l=(a=n[0].target)==null?void 0:a.focus)==null||l.call(a)}const T=x(),g=x(),B=oe(""),h=x(),j=y(()=>e.persistentPlaceholder||f.value||e.active);function b(){var t;h.value!==document.activeElement&&((t=h.value)==null||t.focus()),f.value||D()}function $(t){b(),M("click:control",t)}function q(t){M("mousedown:control",t)}function J(t){t.stopPropagation(),b(),S(()=>{u.value="",he(e["onClick:clear"],t)})}function K(t){var a;const n=t.target;if(u.value=n.value,(a=e.modelModifiers)!=null&&a.trim){const l=[n.selectionStart,n.selectionEnd];S(()=>{n.selectionStart=l[0],n.selectionEnd=l[1]})}}const c=x(),w=x(+e.rows),C=y(()=>["plain","underlined"].includes(e.variant));ue(()=>{e.autoGrow||(w.value=+e.rows)});function d(){!e.autoGrow||S(()=>{if(!c.value||!g.value)return;const t=getComputedStyle(c.value),n=getComputedStyle(g.value.$el),a=parseFloat(t.getPropertyValue("--v-field-padding-top"))+parseFloat(t.getPropertyValue("--v-input-padding-top"))+parseFloat(t.getPropertyValue("--v-field-padding-bottom")),l=c.value.scrollHeight,V=parseFloat(t.lineHeight),P=Math.max(parseFloat(e.rows)*V+a,parseFloat(n.getPropertyValue("--v-input-control-height"))),k=parseFloat(e.maxRows)*V+a||1/0,s=Ve(l!=null?l:0,P,k);w.value=Math.floor((s-a)/V),B.value=we(s)})}ie(d),m(u,d),m(()=>e.rows,d),m(()=>e.maxRows,d),m(()=>e.density,d);let r;return m(c,t=>{t?(r=new ResizeObserver(d),r.observe(c.value)):r==null||r.disconnect()}),re(()=>{r==null||r.disconnect()}),se(()=>{const t=!!(i.counter||e.counter||e.counterValue),n=!!(t||i.details),[a,l]=ce(F),[{modelValue:V,...P}]=_.filterProps(e),[k]=de(e);return o(_,I({ref:T,modelValue:u.value,"onUpdate:modelValue":s=>u.value=s,class:["v-textarea v-text-field",{"v-textarea--prefixed":e.prefix,"v-textarea--suffixed":e.suffix,"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-textarea--auto-grow":e.autoGrow,"v-textarea--no-resize":e.noResize||e.autoGrow,"v-text-field--plain-underlined":C.value},e.class],style:e.style},a,P,{centerAffix:w.value===1&&!C.value,focused:f.value}),{...i,default:s=>{let{isDisabled:v,isDirty:H,isReadonly:L,isValid:Q}=s;return o(fe,I({ref:g,style:{"--v-textarea-control-height":B.value},onClick:$,onMousedown:q,"onClick:clear":J,"onClick:prependInner":e["onClick:prependInner"],"onClick:appendInner":e["onClick:appendInner"]},k,{active:j.value||H.value,centerAffix:w.value===1&&!C.value,dirty:H.value||e.dirty,disabled:v.value,focused:f.value,error:Q.value===!1}),{...i,default:W=>{let{props:{class:N,...X}}=W;return o(R,null,[e.prefix&&o("span",{class:"v-text-field__prefix"},[e.prefix]),z(o("textarea",I({ref:h,class:N,value:u.value,onInput:K,autofocus:e.autofocus,readonly:L.value,disabled:v.value,placeholder:e.placeholder,rows:e.rows,name:e.name,onFocus:b,onBlur:G},X,l),null),[[ve("intersect"),{handler:O},null,{once:!0}]]),e.autoGrow&&z(o("textarea",{class:[N,"v-textarea__sizer"],"onUpdate:modelValue":Y=>u.value=Y,ref:c,readonly:!0,"aria-hidden":"true"},null),[[xe,u.value]]),e.suffix&&o("span",{class:"v-text-field__suffix"},[e.suffix])])}})},details:n?s=>{var v;return o(R,null,[(v=i.details)==null?void 0:v.call(i,s),t&&o(R,null,[o("span",null,null),o(me,{active:e.persistentCounter||f.value,value:E.value,max:U.value},i.counter)])])}:void 0})}),ge({},T,g,h)}});export{be as V}; import{p as Z,ae as p,bg as ee,n as te,bh as ae,u as ne,ag as le,o as y,O as x,aq as oe,b4 as ue,bd as ie,aR as m,bi as re,ac as se,ai as ce,aj as z,bj as de,D as o,bk as fe,J as R,a2 as I,ar as A,as as ve,bl as xe,bm as me,b3 as ge,ax as S,bn as he,ad as we,az as Ve}from"./index.a457a291.js";const ye=Z({autoGrow:Boolean,autofocus:Boolean,counter:[Boolean,Number,String],counterValue:Function,prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,noResize:Boolean,rows:{type:[Number,String],default:5,validator:e=>!isNaN(parseFloat(e))},maxRows:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},suffix:String,modelModifiers:Object,...p(),...ee()},"VTextarea"),Fe=te()({name:"VTextarea",directives:{Intersect:ae},inheritAttrs:!1,props:ye(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,_){let{attrs:b,emit:M,slots:i}=_;const u=ne(e,"modelValue"),{isFocused:f,focus:D,blur:G}=le(e),E=y(()=>typeof e.counterValue=="function"?e.counterValue(u.value):(u.value||"").toString().length),U=y(()=>{if(b.maxlength)return b.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter});function O(t,n){var a,l;!e.autofocus||!t||(l=(a=n[0].target)==null?void 0:a.focus)==null||l.call(a)}const B=x(),g=x(),H=oe(""),h=x(),j=y(()=>e.persistentPlaceholder||f.value||e.active);function F(){var t;h.value!==document.activeElement&&((t=h.value)==null||t.focus()),f.value||D()}function $(t){F(),M("click:control",t)}function q(t){M("mousedown:control",t)}function J(t){t.stopPropagation(),F(),S(()=>{u.value="",he(e["onClick:clear"],t)})}function K(t){var a;const n=t.target;if(u.value=n.value,(a=e.modelModifiers)!=null&&a.trim){const l=[n.selectionStart,n.selectionEnd];S(()=>{n.selectionStart=l[0],n.selectionEnd=l[1]})}}const c=x(),w=x(+e.rows),C=y(()=>["plain","underlined"].includes(e.variant));ue(()=>{e.autoGrow||(w.value=+e.rows)});function d(){!e.autoGrow||S(()=>{if(!c.value||!g.value)return;const t=getComputedStyle(c.value),n=getComputedStyle(g.value.$el),a=parseFloat(t.getPropertyValue("--v-field-padding-top"))+parseFloat(t.getPropertyValue("--v-input-padding-top"))+parseFloat(t.getPropertyValue("--v-field-padding-bottom")),l=c.value.scrollHeight,V=parseFloat(t.lineHeight),P=Math.max(parseFloat(e.rows)*V+a,parseFloat(n.getPropertyValue("--v-input-control-height"))),k=parseFloat(e.maxRows)*V+a||1/0,s=Ve(l!=null?l:0,P,k);w.value=Math.floor((s-a)/V),H.value=we(s)})}ie(d),m(u,d),m(()=>e.rows,d),m(()=>e.maxRows,d),m(()=>e.density,d);let r;return m(c,t=>{t?(r=new ResizeObserver(d),r.observe(c.value)):r==null||r.disconnect()}),re(()=>{r==null||r.disconnect()}),se(()=>{const t=!!(i.counter||e.counter||e.counterValue),n=!!(t||i.details),[a,l]=ce(b),[{modelValue:V,...P}]=z.filterProps(e),[k]=de(e);return o(z,R({ref:B,modelValue:u.value,"onUpdate:modelValue":s=>u.value=s,class:["v-textarea v-text-field",{"v-textarea--prefixed":e.prefix,"v-textarea--suffixed":e.suffix,"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-textarea--auto-grow":e.autoGrow,"v-textarea--no-resize":e.noResize||e.autoGrow,"v-text-field--plain-underlined":C.value},e.class],style:e.style},a,P,{centerAffix:w.value===1&&!C.value,focused:f.value}),{...i,default:s=>{let{isDisabled:v,isDirty:N,isReadonly:L,isValid:Q}=s;return o(fe,R({ref:g,style:{"--v-textarea-control-height":H.value},onClick:$,onMousedown:q,"onClick:clear":J,"onClick:prependInner":e["onClick:prependInner"],"onClick:appendInner":e["onClick:appendInner"]},k,{active:j.value||N.value,centerAffix:w.value===1&&!C.value,dirty:N.value||e.dirty,disabled:v.value,focused:f.value,error:Q.value===!1}),{...i,default:W=>{let{props:{class:T,...X}}=W;return o(I,null,[e.prefix&&o("span",{class:"v-text-field__prefix"},[e.prefix]),A(o("textarea",R({ref:h,class:T,value:u.value,onInput:K,autofocus:e.autofocus,readonly:L.value,disabled:v.value,placeholder:e.placeholder,rows:e.rows,name:e.name,onFocus:F,onBlur:G},X,l),null),[[ve("intersect"),{handler:O},null,{once:!0}]]),e.autoGrow&&A(o("textarea",{class:[T,"v-textarea__sizer"],"onUpdate:modelValue":Y=>u.value=Y,ref:c,readonly:!0,"aria-hidden":"true"},null),[[xe,u.value]]),e.suffix&&o("span",{class:"v-text-field__suffix"},[e.suffix])])}})},details:n?s=>{var v;return o(I,null,[(v=i.details)==null?void 0:v.call(i,s),t&&o(I,null,[o("span",null,null),o(me,{active:e.persistentCounter||f.value,value:E.value,max:U.value},i.counter)])])}:void 0})}),ge({},B,g,h)}});export{Fe as V};

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{d as a,h as e,V as n,r as o}from"./index.f985de17.js";const s=a({setup(){const t=o("router-view");return()=>e(n,{class:"layout-wrapper layout-blank"},{default:()=>e(t)})}});export{s as default}; import{d as a,h as e,V as n,r as o}from"./index.a457a291.js";const s=a({setup(){const t=o("router-view");return()=>e(n,{class:"layout-wrapper layout-blank"},{default:()=>e(t)})}});export{s as default};

View file

@ -1 +1 @@
.avatar-center[data-v-57768842]{position:absolute;border:3px solid rgb(var(--v-theme-surface));inset-block-start:-2rem;inset-inline-start:1rem}.member-pricing-bg[data-v-57768842]{position:relative;background-color:rgba(var(--v-theme-on-surface),var(--v-hover-opacity))}.membership-pricing sup[data-v-57768842]{inset-block-start:9px}.v-rating{max-width:100%;display:inline-flex;white-space:nowrap}.v-rating--readonly{pointer-events:none}.v-rating__wrapper{align-items:center;display:inline-flex;flex-direction:column}.v-rating__wrapper--bottom{flex-direction:column-reverse}.v-rating__item{display:inline-flex;position:relative}.v-rating__item label{cursor:pointer}.v-rating__item .v-btn--variant-plain{opacity:1}.v-rating__item .v-btn{transition-property:transform}.v-rating__item .v-btn .v-icon{transition:inherit;transition-timing-function:cubic-bezier(0,0,.2,1)}.v-rating--hover .v-rating__item:hover:not(.v-rating__item--focused) .v-btn{transform:scale(1.25)}.v-rating__item--half{overflow:hidden;position:absolute;clip-path:polygon(0 0,50% 0,50% 100%,0 100%);z-index:1}.v-rating__item--half .v-btn__overlay,.v-rating__item--half:hover .v-btn__overlay{opacity:0}.v-rating__hidden{height:0;opacity:0;position:absolute;width:0} .avatar-center[data-v-cd7ddfc4]{position:absolute;border:3px solid rgb(var(--v-theme-surface));inset-block-start:-2rem;inset-inline-start:1rem}.member-pricing-bg[data-v-cd7ddfc4]{position:relative;background-color:rgba(var(--v-theme-on-surface),var(--v-hover-opacity))}.membership-pricing sup[data-v-cd7ddfc4]{inset-block-start:9px}.v-rating{max-width:100%;display:inline-flex;white-space:nowrap}.v-rating--readonly{pointer-events:none}.v-rating__wrapper{align-items:center;display:inline-flex;flex-direction:column}.v-rating__wrapper--bottom{flex-direction:column-reverse}.v-rating__item{display:inline-flex;position:relative}.v-rating__item label{cursor:pointer}.v-rating__item .v-btn--variant-plain{opacity:1}.v-rating__item .v-btn{transition-property:transform}.v-rating__item .v-btn .v-icon{transition:inherit;transition-timing-function:cubic-bezier(0,0,.2,1)}.v-rating--hover .v-rating__item:hover:not(.v-rating__item--focused) .v-btn{transform:scale(1.25)}.v-rating__item--half{overflow:hidden;position:absolute;clip-path:polygon(0 0,50% 0,50% 100%,0 100%);z-index:1}.v-rating__item--half .v-btn__overlay,.v-rating__item--half:hover .v-btn__overlay{opacity:0}.v-rating__hidden{height:0;opacity:0;position:absolute;width:0}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{Q as a,a1 as o,a0 as c,a2 as d,a3 as m,D as i,S as e,W as s,F as u,bn as r,a4 as n,a5 as p,U as f,H as h}from"./index.f985de17.js";const _={class:"d-flex align-center flex-wrap"},b={class:"text-center"},V={__name:"icons",setup(g){const l=["mdi-ab-testing","mdi-abacus","mdi-abjad-arabic","mdi-abjad-hebrew","mdi-abugida-devanagari","mdi-abugida-thai","mdi-access-point","mdi-access-point-check","mdi-access-point-minus","mdi-access-point-network","mdi-access-point-network-off","mdi-access-point-off","mdi-access-point-plus","mdi-access-point-remove","mdi-account-alert-outline","mdi-account-arrow-left-outline","mdi-account-arrow-right-outline","mdi-account-box-multiple-outline","mdi-account-box-outline","mdi-account-cancel-outline","mdi-account-cash-outline","mdi-account-check-outline","mdi-account-child-outline","mdi-account-circle-outline","mdi-account-clock-outline","mdi-account-cog-outline","mdi-account-details-outline","mdi-alarm-light-outline","mdi-alert-box-outline","mdi-alert-circle-check-outline","mdi-alert-decagram-outline","mdi-alert-minus-outline","mdi-alert-outline","mdi-alert-plus-outline","mdi-check-outline","mdi-clipboard-outline","mdi-clipboard-play-outline","mdi-close-outline","mdi-cloud-check-outline","mdi-cloud-download-outline","mdi-cog-outline","mdi-compass-off-outline","mdi-contactless-payment-circle-outline","mdi-crown-outline","mdi-delete-outline","mdi-diamond-outline","mdi-email-open-outline","mdi-emoticon-happy-outline","mdi-file-multiple-outline","mdi-flask-empty-outline"];return(k,x)=>(a(),o("div",null,[c("div",_,[(a(),o(d,null,m(l,t=>i(f,{key:t,class:"mb-6 me-6"},{default:e(()=>[i(s,{class:"py-3 px-4"},{default:e(()=>[i(u,{size:"30",icon:t},null,8,["icon"])]),_:2},1024),i(r,{location:"top",activator:"parent"},{default:e(()=>[n(p(t),1)]),_:2},1024)]),_:2},1024)),64))]),c("div",b,[i(h,{href:"https://materialdesignicons.com/",rel:"noopener noreferrer",color:"primary",target:"_blank"},{default:e(()=>[n(" View All Material Design Icons ")]),_:1})])]))}};export{V as default}; import{Q as a,a1 as o,a0 as c,a2 as d,a3 as m,D as i,S as e,W as s,F as u,bo as r,a4 as n,a5 as p,U as f,H as h}from"./index.a457a291.js";const _={class:"d-flex align-center flex-wrap"},b={class:"text-center"},V={__name:"icons",setup(g){const l=["mdi-ab-testing","mdi-abacus","mdi-abjad-arabic","mdi-abjad-hebrew","mdi-abugida-devanagari","mdi-abugida-thai","mdi-access-point","mdi-access-point-check","mdi-access-point-minus","mdi-access-point-network","mdi-access-point-network-off","mdi-access-point-off","mdi-access-point-plus","mdi-access-point-remove","mdi-account-alert-outline","mdi-account-arrow-left-outline","mdi-account-arrow-right-outline","mdi-account-box-multiple-outline","mdi-account-box-outline","mdi-account-cancel-outline","mdi-account-cash-outline","mdi-account-check-outline","mdi-account-child-outline","mdi-account-circle-outline","mdi-account-clock-outline","mdi-account-cog-outline","mdi-account-details-outline","mdi-alarm-light-outline","mdi-alert-box-outline","mdi-alert-circle-check-outline","mdi-alert-decagram-outline","mdi-alert-minus-outline","mdi-alert-outline","mdi-alert-plus-outline","mdi-check-outline","mdi-clipboard-outline","mdi-clipboard-play-outline","mdi-close-outline","mdi-cloud-check-outline","mdi-cloud-download-outline","mdi-cog-outline","mdi-compass-off-outline","mdi-contactless-payment-circle-outline","mdi-crown-outline","mdi-delete-outline","mdi-diamond-outline","mdi-email-open-outline","mdi-emoticon-happy-outline","mdi-file-multiple-outline","mdi-flask-empty-outline"];return(k,x)=>(a(),o("div",null,[c("div",_,[(a(),o(d,null,m(l,t=>i(f,{key:t,class:"mb-6 me-6"},{default:e(()=>[i(s,{class:"py-3 px-4"},{default:e(()=>[i(u,{size:"30",icon:t},null,8,["icon"])]),_:2},1024),i(r,{location:"top",activator:"parent"},{default:e(()=>[n(p(t),1)]),_:2},1024)]),_:2},1024)),64))]),c("div",b,[i(h,{href:"https://materialdesignicons.com/",rel:"noopener noreferrer",color:"primary",target:"_blank"},{default:e(()=>[n(" View All Material Design Icons ")]),_:1})])]))}};export{V as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,4 +1,4 @@
import{ak as commonjsGlobal}from"./index.f985de17.js";var md5$1={exports:{}};/** import{ak as commonjsGlobal}from"./index.a457a291.js";var md5$1={exports:{}};/**
* [js-md5]{@link https://github.com/emn178/js-md5} * [js-md5]{@link https://github.com/emn178/js-md5}
* *
* @namespace md5 * @namespace md5

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{bs as b,Q as y,a1 as x,a3 as T,D as e,aD as d,H as g,a2 as C,O as _,o as D,r as I,S as a,aE as M,a0 as s,bt as L,aF as P,a4 as c,W as v,Z as U,aN as B,_ as F,T as n,$ as m,at as N,Y as V,U as S,aC as p}from"./index.f985de17.js";import{a as j,b as A,c as E,d as H}from"./auth-v1-tree.f5524167.js";import{b as h}from"./route-block.7577f022.js";import{V as R}from"./VCheckbox.833361ee.js";import"./VCheckboxBtn.b7a3a8e0.js";const $={__name:"AuthProvider",setup(k){const o=b(),u=[{icon:"mdi-facebook",color:"#4267b2",colorInDark:"#4267b2"},{icon:"mdi-twitter",color:"#1da1f2",colorInDark:"#1da1f2"},{icon:"mdi-github",color:"#272727",colorInDark:"#fff"},{icon:"mdi-google",color:"#db4437",colorInDark:"#db4437"}];return(f,r)=>(y(),x(C,null,T(u,i=>e(g,{key:i.icon,icon:i.icon,variant:"text",color:d(o).global.name.value==="dark"?i.colorInDark:i.color},null,8,["icon","color"])),64))}};const O={class:"auth-wrapper d-flex align-center justify-center pa-4"},Q={class:"d-flex"},W=["innerHTML"],Y=s("h5",{class:"text-h5 font-weight-semibold mb-1"}," Adventure starts here \u{1F680} ",-1),Z=s("p",{class:"mb-0"}," Make your app management easy and fun! ",-1),q={class:"d-flex align-center mt-1 mb-4"},z=s("span",{class:"me-1"},"I agree to",-1),G=s("a",{href:"javascript:void(0)",class:"text-primary"},"privacy policy & terms",-1),J=s("span",null,"Already have an account?",-1),K=s("span",{class:"mx-4"},"or",-1),X={__name:"register",setup(k){const o=_({username:"",email:"",password:"",privacyPolicies:!1}),u=b(),f=D(()=>u.global.name.value==="light"?j:A),r=_(!1);return(i,t)=>{const w=I("RouterLink");return y(),x("div",O,[e(S,{class:"auth-card pa-4 pt-7","max-width":"448"},{default:a(()=>[e(M,{class:"justify-center"},{prepend:a(()=>[s("div",Q,[s("div",{innerHTML:d(L)},null,8,W)])]),default:a(()=>[e(P,{class:"font-weight-semibold text-2xl text-uppercase"},{default:a(()=>[c(" Materio ")]),_:1})]),_:1}),e(v,{class:"pt-2"},{default:a(()=>[Y,Z]),_:1}),e(v,null,{default:a(()=>[e(U,{onSubmit:t[5]||(t[5]=B(()=>{},["prevent"]))},{default:a(()=>[e(F,null,{default:a(()=>[e(n,{cols:"12"},{default:a(()=>[e(m,{modelValue:o.value.username,"onUpdate:modelValue":t[0]||(t[0]=l=>o.value.username=l),label:"Username"},null,8,["modelValue"])]),_:1}),e(n,{cols:"12"},{default:a(()=>[e(m,{modelValue:o.value.email,"onUpdate:modelValue":t[1]||(t[1]=l=>o.value.email=l),label:"Email",type:"email"},null,8,["modelValue"])]),_:1}),e(n,{cols:"12"},{default:a(()=>[e(m,{modelValue:o.value.password,"onUpdate:modelValue":t[2]||(t[2]=l=>o.value.password=l),label:"Password",type:r.value?"text":"password","append-inner-icon":r.value?"mdi-eye-off-outline":"mdi-eye-outline","onClick:appendInner":t[3]||(t[3]=l=>r.value=!r.value)},null,8,["modelValue","type","append-inner-icon"]),s("div",q,[e(R,{id:"privacy-policy",modelValue:o.value.privacyPolicies,"onUpdate:modelValue":t[4]||(t[4]=l=>o.value.privacyPolicies=l),inline:""},null,8,["modelValue"]),e(N,{for:"privacy-policy",style:{opacity:"1"}},{default:a(()=>[z,G]),_:1})]),e(g,{block:"",type:"submit"},{default:a(()=>[c(" Sign up ")]),_:1})]),_:1}),e(n,{cols:"12",class:"text-center text-base"},{default:a(()=>[J,e(w,{class:"text-primary ms-2",to:"login"},{default:a(()=>[c(" Sign in instead ")]),_:1})]),_:1}),e(n,{cols:"12",class:"d-flex align-center"},{default:a(()=>[e(V),K,e(V)]),_:1}),e(n,{cols:"12",class:"text-center"},{default:a(()=>[e($)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(p,{class:"auth-footer-start-tree d-none d-md-block",src:d(E),width:250},null,8,["src"]),e(p,{src:d(H),class:"auth-footer-end-tree d-none d-md-block",width:350},null,8,["src"]),e(p,{class:"auth-footer-mask d-none d-md-block",src:d(f)},null,8,["src"])])}}};typeof h=="function"&&h(X);export{X as default}; import{bt as b,Q as y,a1 as x,a3 as T,D as e,aD as d,H as g,a2 as C,O as _,o as D,r as I,S as a,aE as M,a0 as s,bu as L,aF as P,a4 as c,W as v,Z as U,aO as B,_ as F,T as n,$ as m,at as S,Y as V,U as j,aC as p}from"./index.a457a291.js";import{a as A,b as E,c as H,d as N}from"./auth-v1-tree.f5524167.js";import{b as h}from"./route-block.7577f022.js";import{V as R}from"./VCheckbox.650ef329.js";import"./VCheckboxBtn.ae1aff4b.js";const $={__name:"AuthProvider",setup(k){const o=b(),u=[{icon:"mdi-facebook",color:"#4267b2",colorInDark:"#4267b2"},{icon:"mdi-twitter",color:"#1da1f2",colorInDark:"#1da1f2"},{icon:"mdi-github",color:"#272727",colorInDark:"#fff"},{icon:"mdi-google",color:"#db4437",colorInDark:"#db4437"}];return(f,r)=>(y(),x(C,null,T(u,i=>e(g,{key:i.icon,icon:i.icon,variant:"text",color:d(o).global.name.value==="dark"?i.colorInDark:i.color},null,8,["icon","color"])),64))}};const O={class:"auth-wrapper d-flex align-center justify-center pa-4"},Q={class:"d-flex"},W=["innerHTML"],Y=s("h5",{class:"text-h5 font-weight-semibold mb-1"}," Adventure starts here \u{1F680} ",-1),Z=s("p",{class:"mb-0"}," Make your app management easy and fun! ",-1),q={class:"d-flex align-center mt-1 mb-4"},z=s("span",{class:"me-1"},"I agree to",-1),G=s("a",{href:"javascript:void(0)",class:"text-primary"},"privacy policy & terms",-1),J=s("span",null,"Already have an account?",-1),K=s("span",{class:"mx-4"},"or",-1),X={__name:"register",setup(k){const o=_({username:"",email:"",password:"",privacyPolicies:!1}),u=b(),f=D(()=>u.global.name.value==="light"?A:E),r=_(!1);return(i,t)=>{const w=I("RouterLink");return y(),x("div",O,[e(j,{class:"auth-card pa-4 pt-7","max-width":"448"},{default:a(()=>[e(M,{class:"justify-center"},{prepend:a(()=>[s("div",Q,[s("div",{innerHTML:d(L)},null,8,W)])]),default:a(()=>[e(P,{class:"font-weight-semibold text-2xl text-uppercase"},{default:a(()=>[c(" Materio ")]),_:1})]),_:1}),e(v,{class:"pt-2"},{default:a(()=>[Y,Z]),_:1}),e(v,null,{default:a(()=>[e(U,{onSubmit:t[5]||(t[5]=B(()=>{},["prevent"]))},{default:a(()=>[e(F,null,{default:a(()=>[e(n,{cols:"12"},{default:a(()=>[e(m,{modelValue:o.value.username,"onUpdate:modelValue":t[0]||(t[0]=l=>o.value.username=l),label:"Username"},null,8,["modelValue"])]),_:1}),e(n,{cols:"12"},{default:a(()=>[e(m,{modelValue:o.value.email,"onUpdate:modelValue":t[1]||(t[1]=l=>o.value.email=l),label:"Email",type:"email"},null,8,["modelValue"])]),_:1}),e(n,{cols:"12"},{default:a(()=>[e(m,{modelValue:o.value.password,"onUpdate:modelValue":t[2]||(t[2]=l=>o.value.password=l),label:"Password",type:r.value?"text":"password","append-inner-icon":r.value?"mdi-eye-off-outline":"mdi-eye-outline","onClick:appendInner":t[3]||(t[3]=l=>r.value=!r.value)},null,8,["modelValue","type","append-inner-icon"]),s("div",q,[e(R,{id:"privacy-policy",modelValue:o.value.privacyPolicies,"onUpdate:modelValue":t[4]||(t[4]=l=>o.value.privacyPolicies=l),inline:""},null,8,["modelValue"]),e(S,{for:"privacy-policy",style:{opacity:"1"}},{default:a(()=>[z,G]),_:1})]),e(g,{block:"",type:"submit"},{default:a(()=>[c(" Sign up ")]),_:1})]),_:1}),e(n,{cols:"12",class:"text-center text-base"},{default:a(()=>[J,e(w,{class:"text-primary ms-2",to:"login"},{default:a(()=>[c(" Sign in instead ")]),_:1})]),_:1}),e(n,{cols:"12",class:"d-flex align-center"},{default:a(()=>[e(V),K,e(V)]),_:1}),e(n,{cols:"12",class:"text-center"},{default:a(()=>[e($)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(p,{class:"auth-footer-start-tree d-none d-md-block",src:d(H),width:250},null,8,["src"]),e(p,{src:d(N),class:"auth-footer-end-tree d-none d-md-block",width:350},null,8,["src"]),e(p,{class:"auth-footer-mask d-none d-md-block",src:d(f)},null,8,["src"])])}}};typeof h=="function"&&h(X);export{X as default};

File diff suppressed because one or more lines are too long

View file

@ -1 +0,0 @@
import{K as F,O as i,Q as B,R as S,S as a,D as e,bv as I,bJ as H,a4 as n,Y as J,aI as f,H as c,J as V,U as k,aF as C,W as P,b1 as Y,_ as y,T as N,$ as q,aH as x,aY as z,a5 as A,bn as O,a0 as w,F as Q,aD as W,P as D}from"./index.f985de17.js";import{d as b}from"./VDialog.311575a1.js";import{q as j}from"./VDataTable.fa01315e.js";import"./VCheckboxBtn.b7a3a8e0.js";import"./VTable.e8eece46.js";const E=w("span",{class:"text-h5"},"\u65B0\u589EToken",-1),G=["onClick"],L={__name:"BingTokens",setup(R){const s=F(),_=i([{title:"Token",align:"start",sortable:!1,key:"Token"},{title:"\u7528\u91CF",key:"Usage"},{title:"\u72B6\u6001",key:"State"},{title:"",key:"actions",sortable:!1}]),r=i(),d=i(),u=i(),m=i(),g=i(),U=o=>o>800?"error":o>600?"warning":"success",p=()=>{D.post(`${s.getters.serverApi}sysconfig`,{token:s.getters.userToken}).then(o=>{o.data&&(o.data.error?s.commit("app/ADD_SNACKBAR",{message:o.data.error,color:"error"}):r.value=o.data.redisConfig.bingTokens)}).catch(o=>{s.commit("app/ADD_SNACKBAR",{message:o.message,color:"error"}),console.log(o)})},v=o=>{s.getters.runmode==="online"?D.post(`${s.getters.serverApi}saveconfig`,{token:s.getters.userToken,...o}).then(l=>{var t;(t=l.data)!=null&&t.error?s.commit("app/ADD_SNACKBAR",{message:l.data.error,color:"error"}):s.commit("app/ADD_SNACKBAR",{message:"\u4FDD\u5B58\u6210\u529F",color:"success"}),p()}).catch(l=>{p(),s.commit("app/ADD_SNACKBAR",{message:l.message,color:"error"}),console.log(l)}):s.commit("app/ADD_SNACKBAR",{message:"\u4EC5\u652F\u6301\u5728\u7EBF\u6A21\u5F0F\u64CD\u4F5C",color:"warn"})},h=()=>{const o={redisConfig:{bingTokens:[...r.value,{Token:m.value,State:"\u6B63\u5E38",Usage:0}]}};v(o),d.value=!1},K=()=>{const o=r.value.findIndex(t=>t.Token===g.value);o!==-1&&r.value.splice(o,1);const l={redisConfig:{bingTokens:[...r.value]}};v(l),u.value=!1},$=async o=>{try{await navigator.clipboard.writeText(o),s.commit("app/ADD_SNACKBAR",{message:"\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F",color:"info"})}catch(l){console.error("\u526A\u8D34\u677F\u590D\u5236\u5931\u8D25: ",l)}};return p(),(o,l)=>(B(),S(W(j),{headers:_.value,items:r.value,class:"elevation-1"},{top:a(()=>[e(I,{flat:""},{default:a(()=>[e(H,null,{default:a(()=>[n("Bing Token \u7BA1\u7406")]),_:1}),e(J,{class:"mx-4",inset:"",vertical:""}),e(f),e(b,{modelValue:d.value,"onUpdate:modelValue":l[2]||(l[2]=t=>d.value=t),"max-width":"500px"},{activator:a(({props:t})=>[e(c,V({color:"primary",dark:"",class:"mb-2"},t),{default:a(()=>[n(" \u6DFB\u52A0Token ")]),_:2},1040)]),default:a(()=>[e(k,null,{default:a(()=>[e(C,null,{default:a(()=>[E]),_:1}),e(P,null,{default:a(()=>[e(Y,null,{default:a(()=>[e(y,null,{default:a(()=>[e(N,{cols:"12"},{default:a(()=>[e(q,{modelValue:m.value,"onUpdate:modelValue":l[0]||(l[0]=t=>m.value=t),label:"Token"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1}),e(x,null,{default:a(()=>[e(f),e(c,{color:"blue-darken-1",variant:"text",onClick:l[1]||(l[1]=t=>{d.value=!1,m.value=""})},{default:a(()=>[n(" \u53D6\u6D88 ")]),_:1}),e(c,{color:"blue-darken-1",variant:"text",onClick:h},{default:a(()=>[n(" \u6DFB\u52A0 ")]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),e(b,{modelValue:u.value,"onUpdate:modelValue":l[4]||(l[4]=t=>u.value=t),"max-width":"550px"},{default:a(()=>[e(k,null,{default:a(()=>[e(C,{class:"text-h5"},{default:a(()=>[n("\u662F\u5426\u786E\u8BA4\u5220\u9664\u8BE5Token\uFF1F\u5220\u9664\u540E\u5C06\u65E0\u6CD5\u6062\u590D\uFF01")]),_:1}),e(x,null,{default:a(()=>[e(f),e(c,{color:"blue-darken-1",variant:"text",onClick:l[3]||(l[3]=t=>u.value=!1)},{default:a(()=>[n("\u53D6\u6D88")]),_:1}),e(c,{color:"error",variant:"text",onClick:K},{default:a(()=>[n("\u786E\u8BA4\u5220\u9664")]),_:1}),e(f)]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})]),"item.Usage":a(({item:t})=>[e(z,{color:U(t.columns.Usage)},{default:a(()=>[n(A(t.columns.Usage),1)]),_:2},1032,["color"])]),"item.Token":a(({item:t})=>[e(O,{activator:"parent",location:"bottom",text:t.columns.Token},{activator:a(({props:T})=>[w("span",V(T,{onClick:M=>$(t.columns.Token)}),A(t.columns.Token.substring(0,50))+"... ",17,G)]),_:2},1032,["text"])]),"item.actions":a(({item:t})=>[e(Q,{size:"small",onClick:T=>{g.value=t.raw.Token,u.value=!0}},{default:a(()=>[n(" mdi-delete ")]),_:2},1032,["onClick"])]),_:1},8,["headers","items"]))}},oe={__name:"tokens",setup(R){return(s,_)=>(B(),S(y,null,{default:a(()=>[e(N,{cols:"12"},{default:a(()=>[e(k,null,{default:a(()=>[e(L)]),_:1})]),_:1})]),_:1}))}};export{oe as default};

View file

@ -0,0 +1 @@
import{K as F,O as i,Q as B,R as S,S as a,D as e,bw as I,bK as H,a4 as n,Y as P,aI as f,H as c,J as V,U as k,aF as C,W as q,aV as z,_ as w,T as y,$ as J,aH as x,aU as O,a5 as A,bo as Q,a0 as N,F as W,aD as Y,P as D}from"./index.a457a291.js";import{V as b}from"./VDialog.368f468c.js";import{q as j}from"./VDataTable.e3c98ce6.js";import"./VSelect.5c080fb6.js";import"./VCheckboxBtn.ae1aff4b.js";import"./VTable.4358e1b9.js";const E=N("span",{class:"text-h5"},"\u65B0\u589EToken",-1),G=["onClick"],L={__name:"BingTokens",setup(U){const s=F(),_=i([{title:"Token",align:"start",sortable:!1,key:"Token"},{title:"\u7528\u91CF",key:"Usage"},{title:"\u72B6\u6001",key:"State"},{title:"",key:"actions",sortable:!1}]),r=i(),d=i(),u=i(),m=i(),g=i(),K=o=>o>800?"error":o>600?"warning":"success",p=()=>{D.post(`${s.getters.serverApi}sysconfig`,{token:s.getters.userToken}).then(o=>{o.data&&(o.data.error?s.commit("app/ADD_SNACKBAR",{message:o.data.error,color:"error"}):r.value=o.data.redisConfig.bingTokens)}).catch(o=>{s.commit("app/ADD_SNACKBAR",{message:o.message,color:"error"}),console.log(o)})},v=o=>{s.getters.runmode==="online"?D.post(`${s.getters.serverApi}saveconfig`,{token:s.getters.userToken,...o}).then(l=>{var t;(t=l.data)!=null&&t.error?s.commit("app/ADD_SNACKBAR",{message:l.data.error,color:"error"}):s.commit("app/ADD_SNACKBAR",{message:"\u4FDD\u5B58\u6210\u529F",color:"success"}),p()}).catch(l=>{p(),s.commit("app/ADD_SNACKBAR",{message:l.message,color:"error"}),console.log(l)}):s.commit("app/ADD_SNACKBAR",{message:"\u4EC5\u652F\u6301\u5728\u7EBF\u6A21\u5F0F\u64CD\u4F5C",color:"warn"})},R=()=>{const o={redisConfig:{bingTokens:[...r.value,{Token:m.value,State:"\u6B63\u5E38",Usage:0}]}};v(o),d.value=!1},h=()=>{const o=r.value.findIndex(t=>t.Token===g.value);o!==-1&&r.value.splice(o,1);const l={redisConfig:{bingTokens:[...r.value]}};v(l),u.value=!1},$=async o=>{try{await navigator.clipboard.writeText(o),s.commit("app/ADD_SNACKBAR",{message:"\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F",color:"info"})}catch(l){console.error("\u526A\u8D34\u677F\u590D\u5236\u5931\u8D25: ",l)}};return p(),(o,l)=>(B(),S(Y(j),{headers:_.value,items:r.value,class:"elevation-1"},{top:a(()=>[e(I,{flat:""},{default:a(()=>[e(H,null,{default:a(()=>[n("Bing Token \u7BA1\u7406")]),_:1}),e(P,{class:"mx-4",inset:"",vertical:""}),e(f),e(b,{modelValue:d.value,"onUpdate:modelValue":l[2]||(l[2]=t=>d.value=t),"max-width":"500px"},{activator:a(({props:t})=>[e(c,V({color:"primary",dark:"",class:"mb-2"},t),{default:a(()=>[n(" \u6DFB\u52A0Token ")]),_:2},1040)]),default:a(()=>[e(k,null,{default:a(()=>[e(C,null,{default:a(()=>[E]),_:1}),e(q,null,{default:a(()=>[e(z,null,{default:a(()=>[e(w,null,{default:a(()=>[e(y,{cols:"12"},{default:a(()=>[e(J,{modelValue:m.value,"onUpdate:modelValue":l[0]||(l[0]=t=>m.value=t),label:"Token"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1}),e(x,null,{default:a(()=>[e(f),e(c,{color:"blue-darken-1",variant:"text",onClick:l[1]||(l[1]=t=>{d.value=!1,m.value=""})},{default:a(()=>[n(" \u53D6\u6D88 ")]),_:1}),e(c,{color:"blue-darken-1",variant:"text",onClick:R},{default:a(()=>[n(" \u6DFB\u52A0 ")]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),e(b,{modelValue:u.value,"onUpdate:modelValue":l[4]||(l[4]=t=>u.value=t),"max-width":"550px"},{default:a(()=>[e(k,null,{default:a(()=>[e(C,{class:"text-h5"},{default:a(()=>[n("\u662F\u5426\u786E\u8BA4\u5220\u9664\u8BE5Token\uFF1F\u5220\u9664\u540E\u5C06\u65E0\u6CD5\u6062\u590D\uFF01")]),_:1}),e(x,null,{default:a(()=>[e(f),e(c,{color:"blue-darken-1",variant:"text",onClick:l[3]||(l[3]=t=>u.value=!1)},{default:a(()=>[n("\u53D6\u6D88")]),_:1}),e(c,{color:"error",variant:"text",onClick:h},{default:a(()=>[n("\u786E\u8BA4\u5220\u9664")]),_:1}),e(f)]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})]),"item.Usage":a(({item:t})=>[e(O,{color:K(t.columns.Usage)},{default:a(()=>[n(A(t.columns.Usage),1)]),_:2},1032,["color"])]),"item.Token":a(({item:t})=>[e(Q,{activator:"parent",location:"bottom",text:t.columns.Token},{activator:a(({props:T})=>[N("span",V(T,{onClick:M=>$(t.columns.Token)}),A(t.columns.Token.substring(0,50))+"... ",17,G)]),_:2},1032,["text"])]),"item.actions":a(({item:t})=>[e(W,{size:"small",onClick:T=>{g.value=t.raw.Token,u.value=!0}},{default:a(()=>[n(" mdi-delete ")]),_:2},1032,["onClick"])]),_:1},8,["headers","items"]))}},le={__name:"tokens",setup(U){return(s,_)=>(B(),S(w,null,{default:a(()=>[e(y,{cols:"12"},{default:a(()=>[e(k,null,{default:a(()=>[e(L)]),_:1})]),_:1})]),_:1}))}};export{le as default};

View file

@ -1 +1 @@
import{aB as c,Q as l,R as n,S as e,D as s,W as d,U as _,a0 as t,_ as h,T as o}from"./index.f985de17.js";const u={},r=t("div",null,[t("h1",{class:"text-h1"}," Heading 1 "),t("span",null,"font-size: 6rem / line-height: 6rem / font-weight: 300")],-1),m=t("div",null,[t("h2",{class:"text-h2"}," Heading 2 "),t("span",null,"font-size: 3.75rem / line-height: 3.75rem / font-weight: 300")],-1),f=t("div",null,[t("h3",{class:"text-h3"}," Heading 3 "),t("span",null,"font-size: 3rem / line-height: 3.125rem / font-weight: 400")],-1),p=t("div",null,[t("h4",{class:"text-h4"}," Heading 4 "),t("span",null,"font-size: 2.125rem / line-height: 2.5rem / font-weight: 400")],-1),x=t("div",null,[t("h5",{class:"text-h5"}," Heading 5 "),t("span",null,"font-size: 1.5rem / line-height: 2rem / font-weight: 400")],-1),g=t("div",null,[t("h6",{class:"text-h6"}," Heading 6 "),t("span",null,"font-size: 1.25rem / line-height: 2rem / font-weight: 500")],-1);function b(a,i){return l(),n(_,{title:"Headlines"},{default:e(()=>[s(d,{class:"d-flex flex-column gap-y-8"},{default:e(()=>[r,m,f,p,x,g]),_:1})]),_:1})}const w=c(u,[["render",b]]),k={},y=t("span",{class:"text-subtitle-1 text-no-wrap"},"text-subtitle-1",-1),z=t("p",{class:"text-subtitle-1 text-truncate mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),C=t("small",null,"font-size: 1rem / line-height: 1.75rem / font-weight: 400",-1),v=t("span",{class:"text-subtitle-2 text-no-wrap"},"text-subtitle-2",-1),$=t("p",{class:"text-subtitle-2 mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),H=t("small",null,"font-size: 0.875rem / line-height: 1.375rem / font-weight: 500",-1),T=t("span",{class:"text-body-1 text-no-wrap"},"text-body-1",-1),V=t("p",{class:"text-body-1 mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),B=t("small",null,"font-size: 1rem / line-height: 1.5rem / font-weight: 400",-1),N=t("span",{class:"text-body-2 text-no-wrap"},"text-body-2",-1),R=t("p",{class:"text-body-2 mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),D=t("small",null,"font-size: 0.875rem / line-height: 1.25rem / font-weight: 400",-1),Q=t("span",{class:"text-caption"},"text-caption",-1),S=t("p",{class:"text-caption mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),U=t("small",null,"font-size: 0.75rem / line-height: 1.25rem / font-weight: 400",-1),W=t("span",{class:"text-overline text-no-wrap"},"text-overline",-1),j=t("p",{class:"text-overline mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),q=t("small",null,"font-size: 0.75rem / line-height: 2rem / font-weight: 500",-1),A=t("span",{class:"text-button"},"text-button",-1),E=t("p",{class:"text-button mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),F=t("small",null,"font-size: 0.875rem / line-height: 2.25rem / font-weight: 500",-1);function G(a,i){return l(),n(_,{title:"Texts"},{default:e(()=>[s(d,null,{default:e(()=>[s(h,null,{default:e(()=>[s(o,{cols:"4",md:"2"},{default:e(()=>[y]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[z,C]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[v]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[$,H]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[T]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[V,B]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[N]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[R,D]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[Q]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[S,U]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[W]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[j,q]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[A]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[E,F]),_:1})]),_:1})]),_:1})]),_:1})}const I=c(k,[["render",G]]),L={__name:"typography",setup(a){return(i,J)=>(l(),n(h,null,{default:e(()=>[s(o,{cols:"12"},{default:e(()=>[s(w)]),_:1}),s(o,{cols:"12"},{default:e(()=>[s(I)]),_:1})]),_:1}))}};export{L as default}; import{aB as c,Q as l,R as n,S as e,D as s,W as d,U as _,a0 as t,_ as h,T as o}from"./index.a457a291.js";const u={},r=t("div",null,[t("h1",{class:"text-h1"}," Heading 1 "),t("span",null,"font-size: 6rem / line-height: 6rem / font-weight: 300")],-1),m=t("div",null,[t("h2",{class:"text-h2"}," Heading 2 "),t("span",null,"font-size: 3.75rem / line-height: 3.75rem / font-weight: 300")],-1),f=t("div",null,[t("h3",{class:"text-h3"}," Heading 3 "),t("span",null,"font-size: 3rem / line-height: 3.125rem / font-weight: 400")],-1),p=t("div",null,[t("h4",{class:"text-h4"}," Heading 4 "),t("span",null,"font-size: 2.125rem / line-height: 2.5rem / font-weight: 400")],-1),x=t("div",null,[t("h5",{class:"text-h5"}," Heading 5 "),t("span",null,"font-size: 1.5rem / line-height: 2rem / font-weight: 400")],-1),g=t("div",null,[t("h6",{class:"text-h6"}," Heading 6 "),t("span",null,"font-size: 1.25rem / line-height: 2rem / font-weight: 500")],-1);function b(a,i){return l(),n(_,{title:"Headlines"},{default:e(()=>[s(d,{class:"d-flex flex-column gap-y-8"},{default:e(()=>[r,m,f,p,x,g]),_:1})]),_:1})}const w=c(u,[["render",b]]),k={},y=t("span",{class:"text-subtitle-1 text-no-wrap"},"text-subtitle-1",-1),z=t("p",{class:"text-subtitle-1 text-truncate mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),C=t("small",null,"font-size: 1rem / line-height: 1.75rem / font-weight: 400",-1),v=t("span",{class:"text-subtitle-2 text-no-wrap"},"text-subtitle-2",-1),$=t("p",{class:"text-subtitle-2 mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),H=t("small",null,"font-size: 0.875rem / line-height: 1.375rem / font-weight: 500",-1),T=t("span",{class:"text-body-1 text-no-wrap"},"text-body-1",-1),V=t("p",{class:"text-body-1 mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),B=t("small",null,"font-size: 1rem / line-height: 1.5rem / font-weight: 400",-1),N=t("span",{class:"text-body-2 text-no-wrap"},"text-body-2",-1),R=t("p",{class:"text-body-2 mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),D=t("small",null,"font-size: 0.875rem / line-height: 1.25rem / font-weight: 400",-1),Q=t("span",{class:"text-caption"},"text-caption",-1),S=t("p",{class:"text-caption mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),U=t("small",null,"font-size: 0.75rem / line-height: 1.25rem / font-weight: 400",-1),W=t("span",{class:"text-overline text-no-wrap"},"text-overline",-1),j=t("p",{class:"text-overline mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),q=t("small",null,"font-size: 0.75rem / line-height: 2rem / font-weight: 500",-1),A=t("span",{class:"text-button"},"text-button",-1),E=t("p",{class:"text-button mb-0"}," Cupcake ipsum dolor sit amet fruitcake donut chocolate. ",-1),F=t("small",null,"font-size: 0.875rem / line-height: 2.25rem / font-weight: 500",-1);function G(a,i){return l(),n(_,{title:"Texts"},{default:e(()=>[s(d,null,{default:e(()=>[s(h,null,{default:e(()=>[s(o,{cols:"4",md:"2"},{default:e(()=>[y]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[z,C]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[v]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[$,H]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[T]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[V,B]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[N]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[R,D]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[Q]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[S,U]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[W]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[j,q]),_:1}),s(o,{cols:"4",md:"2"},{default:e(()=>[A]),_:1}),s(o,{cols:"8",md:"10"},{default:e(()=>[E,F]),_:1})]),_:1})]),_:1})]),_:1})}const I=c(k,[["render",G]]),L={__name:"typography",setup(a){return(i,J)=>(l(),n(h,null,{default:e(()=>[s(o,{cols:"12"},{default:e(()=>[s(w)]),_:1}),s(o,{cols:"12"},{default:e(()=>[s(I)]),_:1})]),_:1}))}};export{L as default};

View file

@ -7,8 +7,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>ChatGPT 工具箱</title> <title>ChatGPT 工具箱</title>
<link rel="stylesheet" type="text/css" href="./loader.css" /> <link rel="stylesheet" type="text/css" href="./loader.css" />
<script type="module" crossorigin src="./assets/index.f985de17.js"></script> <script type="module" crossorigin src="./assets/index.a457a291.js"></script>
<link rel="stylesheet" href="./assets/index.7236eb96.css"> <link rel="stylesheet" href="./assets/index.6bc88549.css">
</head> </head>
<body> <body>

View file

@ -101,12 +101,12 @@ export default class SydneyAIClient {
this.opts.host = 'https://edgeservices.bing.com/edgesvc' this.opts.host = 'https://edgeservices.bing.com/edgesvc'
} }
logger.mark('使用host' + this.opts.host) logger.mark('使用host' + this.opts.host)
let response = await fetch(`${this.opts.host}/turing/conversation/create?bundleVersion=1.1055.6`, fetchOptions) let response = await fetch(`${this.opts.host}/turing/conversation/create?bundleVersion=1.1055.10`, fetchOptions)
let text = await response.text() let text = await response.text()
let retry = 10 let retry = 10
while (retry >= 0 && response.status === 200 && !text) { while (retry >= 0 && response.status === 200 && !text) {
await delay(400) await delay(400)
response = await fetch(`${this.opts.host}/turing/conversation/create`, fetchOptions) response = await fetch(`${this.opts.host}/turing/conversation/create?bundleVersion=1.1055.10`, fetchOptions)
text = await response.text() text = await response.text()
retry-- retry--
} }

View file

@ -840,17 +840,17 @@ export function getMaxModelTokens (model = 'gpt-3.5-turbo') {
export function getUin (e) { export function getUin (e) {
if (e?.bot?.uin) return e.bot.uin if (e?.bot?.uin) return e.bot.uin
if (e) { if (Array.isArray(Bot.uin)) {
if (Array.isArray(e.bot.uin)) { if (Config.trssBotUin && Bot.uin.indexOf(Config.trssBotUin) > -1) {return Config.trssBotUin}
if (Config.trssBotUin && e.bot.uin.indexOf(Config.trssBotUin) > -1) return Config.trssBotUin else {
else return e.bot.uin[0] Bot.uin.forEach((u) => {
} else return e.bot.uin if (Bot[u].self_id) {
} else { return Bot[u].self_id
if (Array.isArray(Bot.uin)) { }
if (Config.trssBotUin && Bot.uin.indexOf(Config.trssBotUin) > -1) return Config.trssBotUin })
else return Bot.uin[0] return Bot.uin[Bot.uin.length - 1]
} else return Bot.uin }
} } else return Bot.uin
} }
/** /**