first commit
|
|
@ -0,0 +1,4 @@
|
||||||
|
NODE_ENV = 'development'
|
||||||
|
|
||||||
|
# Base API
|
||||||
|
VITE_APP_BASE_URL=''
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
NODE_ENV = 'production'
|
||||||
|
VITE_APP_BASE_URL=''
|
||||||
|
|
@ -0,0 +1,54 @@
|
||||||
|
/* eslint-env node */
|
||||||
|
require('@rushstack/eslint-patch/modern-module-resolution')
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
root: true,
|
||||||
|
ignorePatterns: ['/auto-imports.d.ts', '/components.d.ts'],
|
||||||
|
extends: [
|
||||||
|
'plugin:vue/vue3-essential',
|
||||||
|
'eslint:recommended',
|
||||||
|
'@vue/eslint-config-typescript/recommended',
|
||||||
|
'@vue/eslint-config-prettier',
|
||||||
|
'./.eslintrc-auto-import.json'
|
||||||
|
],
|
||||||
|
rules: {
|
||||||
|
'prettier/prettier': [
|
||||||
|
'warn',
|
||||||
|
{
|
||||||
|
semi: false,
|
||||||
|
singleQuote: true,
|
||||||
|
printWidth: 100,
|
||||||
|
proseWrap: 'preserve',
|
||||||
|
bracketSameLine: false,
|
||||||
|
endOfLine: 'lf',
|
||||||
|
tabWidth: 4,
|
||||||
|
useTabs: false,
|
||||||
|
trailingComma: 'none'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
'vue/multi-word-component-names': 'off',
|
||||||
|
'@typescript-eslint/no-explicit-any': 'off',
|
||||||
|
'@typescript-eslint/ban-ts-comment': 'off',
|
||||||
|
'no-undef': 'off',
|
||||||
|
'vue/prefer-import-from-vue': 'off',
|
||||||
|
'no-prototype-builtins': 'off',
|
||||||
|
'prefer-spread': 'off',
|
||||||
|
'@typescript-eslint/no-non-null-assertion': 'off',
|
||||||
|
'@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
|
||||||
|
'vue/html-self-closing': [
|
||||||
|
'error',
|
||||||
|
{
|
||||||
|
html: {
|
||||||
|
void: 'always',
|
||||||
|
normal: 'always',
|
||||||
|
component: 'always'
|
||||||
|
},
|
||||||
|
svg: 'always',
|
||||||
|
math: 'always'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
globals: {
|
||||||
|
module: 'readonly'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
# Logs
|
||||||
|
logs
|
||||||
|
*.log
|
||||||
|
npm-debug.log*
|
||||||
|
yarn-debug.log*
|
||||||
|
yarn-error.log*
|
||||||
|
pnpm-debug.log*
|
||||||
|
lerna-debug.log*
|
||||||
|
yarn
|
||||||
|
node_modules
|
||||||
|
.DS_Store
|
||||||
|
dist
|
||||||
|
dist-ssr
|
||||||
|
coverage
|
||||||
|
*.local
|
||||||
|
|
||||||
|
# unplugin-auto-import
|
||||||
|
auto-imports.d.ts
|
||||||
|
components.d.ts
|
||||||
|
.eslintrc-auto-import.json
|
||||||
|
|
||||||
|
/cypress/videos/
|
||||||
|
/cypress/screenshots/
|
||||||
|
|
||||||
|
# Editor directories and files
|
||||||
|
.idea
|
||||||
|
*.suo
|
||||||
|
*.ntvs*
|
||||||
|
*.njsproj
|
||||||
|
*.sln
|
||||||
|
*.sw?
|
||||||
|
|
||||||
|
# .env
|
||||||
|
.env.development
|
||||||
|
.env.production
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
{
|
||||||
|
"editor.detectIndentation": false,
|
||||||
|
"editor.tabSize": 4,
|
||||||
|
"editor.formatOnSave": true,
|
||||||
|
"editor.codeActionsOnSave": {
|
||||||
|
"source.fixAll.eslint": "explicit"
|
||||||
|
},
|
||||||
|
"css.validate": false,
|
||||||
|
"less.validate": false,
|
||||||
|
"scss.validate": false
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,183 @@
|
||||||
|
# v1.5
|
||||||
|
|
||||||
|
# 菜单新增 AI 陪练
|
||||||
|
|
||||||
|
## 1. 新增【场景管理】
|
||||||
|
|
||||||
|
### 1.1 新增【场景列表】
|
||||||
|
|
||||||
|
-新增 -编辑 -删除 -状态
|
||||||
|
|
||||||
|
### 1.2 【场景新增/编辑】
|
||||||
|
|
||||||
|
## 2. 新增【陪练记录】
|
||||||
|
|
||||||
|
## 3. 新增【陪练记录详情】
|
||||||
|
|
||||||
|
## 4. 新增【配置管理】
|
||||||
|
|
||||||
|
# 菜单删除练练
|
||||||
|
|
||||||
|
## 1. 删除【列表管理】
|
||||||
|
|
||||||
|
-新增 -编辑 -删除 -状态
|
||||||
|
|
||||||
|
## 2. 删除【分类管理】
|
||||||
|
|
||||||
|
-新增 -编辑 -删除 -状态
|
||||||
|
|
||||||
|
## 3. 删除【练练添加/编辑】
|
||||||
|
|
||||||
|
## 4. 删除【分享报告配置】
|
||||||
|
|
||||||
|
# 菜单修改【会议纪要】
|
||||||
|
|
||||||
|
## 1. 修改【会议记录】
|
||||||
|
|
||||||
|
-删除
|
||||||
|
|
||||||
|
# v1.5.1
|
||||||
|
|
||||||
|
## 1. 菜单增加【系统更新】
|
||||||
|
|
||||||
|
-【一键更新】
|
||||||
|
|
||||||
|
## 2. 菜单修改【音频列表】
|
||||||
|
|
||||||
|
-修改【是否显示】字段 -修改【菜单状态】字段 -增加按钮【删除】
|
||||||
|
|
||||||
|
# v1.5.2
|
||||||
|
|
||||||
|
## 1. 菜单增加【助理模型新增:编辑】
|
||||||
|
|
||||||
|
## 2. 菜单删除【新增助理模型】
|
||||||
|
|
||||||
|
## 3. 菜单删除【编辑助理模型】
|
||||||
|
|
||||||
|
## 4. 菜单隐藏【AI 知识库】
|
||||||
|
|
||||||
|
## 5. 菜单隐藏【装修管理】
|
||||||
|
|
||||||
|
# v1.6.1
|
||||||
|
|
||||||
|
## 1. 菜单增加【AI 个微】
|
||||||
|
|
||||||
|
### 1.1 新增【岗位管理】
|
||||||
|
|
||||||
|
#### 1.1.1 新增【岗位列表】
|
||||||
|
|
||||||
|
-【详情】【删除】
|
||||||
|
|
||||||
|
#### 1.1.2 新增【岗位详情】
|
||||||
|
|
||||||
|
### 1.2 新增【面试记录】
|
||||||
|
|
||||||
|
### 1.3 新增【面试记录详情】
|
||||||
|
|
||||||
|
-【详情】【删除】
|
||||||
|
|
||||||
|
### 1.3 新增【面试反馈】
|
||||||
|
|
||||||
|
## 2.菜单修改
|
||||||
|
|
||||||
|
### 2.1 修改【陪练记录详情】的路由路径
|
||||||
|
|
||||||
|
## 3. 菜单隐藏【登录注册】
|
||||||
|
|
||||||
|
# v1.6.2
|
||||||
|
|
||||||
|
## 1.菜单修改
|
||||||
|
|
||||||
|
### 1.1 修改【积分管理】为【算力管理】
|
||||||
|
|
||||||
|
# v1.6.4
|
||||||
|
|
||||||
|
## 1.菜单新增【AI 知识库】
|
||||||
|
|
||||||
|
### 1.1 【AI 知识库】新增子集菜单【知识库列表】、【文件列表】
|
||||||
|
|
||||||
|
### 1.2 菜单【知识库列表】添加权限
|
||||||
|
|
||||||
|
- 【删除】
|
||||||
|
|
||||||
|
### 1.2 菜单【文件列表】添加权限
|
||||||
|
|
||||||
|
- 【删除】
|
||||||
|
|
||||||
|
## 2.菜单删除相关【AI 知识库】(旧)
|
||||||
|
|
||||||
|
## 3.菜单新增【重置密码】
|
||||||
|
|
||||||
|
# v1.6.5
|
||||||
|
|
||||||
|
## 1.菜单修改【员工编辑】
|
||||||
|
|
||||||
|
# v2.0.0
|
||||||
|
|
||||||
|
## 1.菜单新增【智能体】
|
||||||
|
|
||||||
|
### 1.1 子菜单新增【智能体列表】
|
||||||
|
|
||||||
|
### 1.2 按钮新增【删除】
|
||||||
|
|
||||||
|
## 2.菜单新增【AI 设备】
|
||||||
|
|
||||||
|
### 2.1 子菜单新增【设备列表】
|
||||||
|
|
||||||
|
### 2.2 按钮新增【删除】
|
||||||
|
|
||||||
|
## 3.菜单新增【AI 客服】
|
||||||
|
|
||||||
|
### 3.1 子菜单新增【小红书】
|
||||||
|
|
||||||
|
#### 3.1.1 子菜单新增【账号列表】
|
||||||
|
|
||||||
|
## 4.菜单新增【AI 小红书】
|
||||||
|
|
||||||
|
### 4.1 子菜单新增【文案创作】【创作列表】【发布列表】
|
||||||
|
|
||||||
|
### 4.2 文案创作按钮新增【删除】
|
||||||
|
|
||||||
|
### 4.3 创作列表按钮新增【删除】
|
||||||
|
|
||||||
|
### 4.3 发布列表按钮新增【删除】
|
||||||
|
|
||||||
|
### 4.4 子菜单新增【创作视频列表】
|
||||||
|
|
||||||
|
### 4.5 子菜单新增【发布视频列表】
|
||||||
|
|
||||||
|
# 5. 删除【AI 知识库】相关菜单
|
||||||
|
|
||||||
|
# v2.0.2
|
||||||
|
|
||||||
|
## 1.新增菜单【卡密兑换】
|
||||||
|
|
||||||
|
### 1.1 新增子菜单【卡密管理】
|
||||||
|
|
||||||
|
#### 1.1.1 新增按钮【添加】【删除】
|
||||||
|
|
||||||
|
### 2.1 新增子菜单【兑换记录】
|
||||||
|
|
||||||
|
### 3.1 新增子菜单【卡密设置】
|
||||||
|
|
||||||
|
## 4.调整菜单【微信小程序】更改为目录类型
|
||||||
|
|
||||||
|
### 4.1 新增子菜单【小程序配置】
|
||||||
|
|
||||||
|
### 4.2 新增子菜单【小程序一键上传】
|
||||||
|
|
||||||
|
### 4.3 之前【保存】按钮调整到【小程序配置】菜单
|
||||||
|
|
||||||
|
## 5.【用户列表】菜单新增按钮【新增】
|
||||||
|
|
||||||
|
## 6.【存储设置】菜单新增按钮【上传本地文件】
|
||||||
|
|
||||||
|
## 7.【网站设置】菜单新增子菜单【客户端设置】
|
||||||
|
|
||||||
|
## 8.【客户端设置】菜单新增按钮【保存】
|
||||||
|
|
||||||
|
## 9.调整【装修管理】菜单为隐藏和停用
|
||||||
|
|
||||||
|
## 10. 新增菜单【AI 直播】菜单
|
||||||
|
|
||||||
|
### 10.1 新增子菜单【基本配置】、【价格说明】
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
/// <reference types="vite/client" />
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh-CN">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<link rel="icon" href="/favicon.ico" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<title>后台管理系统</title>
|
||||||
|
<style>
|
||||||
|
* {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.preload {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
height: 100vh;
|
||||||
|
width: 100vw;
|
||||||
|
}
|
||||||
|
|
||||||
|
.circular {
|
||||||
|
height: 42px;
|
||||||
|
width: 42px;
|
||||||
|
animation: loading-rotate 2s linear infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
.circular .path {
|
||||||
|
animation: loading-dash 1.5s ease-in-out infinite;
|
||||||
|
stroke-dasharray: 90, 150;
|
||||||
|
stroke-dashoffset: 0;
|
||||||
|
stroke-width: 2;
|
||||||
|
stroke: #4073fa;
|
||||||
|
stroke-linecap: round;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes loading-rotate {
|
||||||
|
100% {
|
||||||
|
transform: rotate(1turn);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes loading-dash {
|
||||||
|
0% {
|
||||||
|
stroke-dasharray: 90, 150;
|
||||||
|
stroke-dashoffset: -40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
100% {
|
||||||
|
stroke-dasharray: 90, 150;
|
||||||
|
stroke-dashoffset: -120px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app">
|
||||||
|
<div class="preload">
|
||||||
|
<svg viewBox="25 25 50 50" class="circular">
|
||||||
|
<circle cx="50" cy="50" r="20" fill="none" class="path"></circle>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="module" src="/src/main.ts"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
@ -0,0 +1,145 @@
|
||||||
|
const fs = require('fs')
|
||||||
|
const { spawn } = require('child_process')
|
||||||
|
|
||||||
|
|
||||||
|
class InitializeItem {
|
||||||
|
static instance = null
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
if (InitializeItem.instance) {
|
||||||
|
return InitializeItem.instance
|
||||||
|
}
|
||||||
|
InitializeItem.instance = this
|
||||||
|
}
|
||||||
|
|
||||||
|
async promptUser(question) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const readline = require('readline')
|
||||||
|
const rl = readline.createInterface({
|
||||||
|
input: process.stdin,
|
||||||
|
output: process.stdout
|
||||||
|
})
|
||||||
|
rl.question(question, (res) => {
|
||||||
|
resolve(res)
|
||||||
|
rl.close()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async shouldInstallDependencies() {
|
||||||
|
const isInstall = await this.promptUser(
|
||||||
|
'是否需要自动帮您安装依赖(y/n):'
|
||||||
|
)
|
||||||
|
if (isInstall.toLowerCase() === 'y') {
|
||||||
|
return true
|
||||||
|
} else if (isInstall.toLowerCase() === 'n') {
|
||||||
|
return false
|
||||||
|
} else {
|
||||||
|
return this.shouldInstallDependencies()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async installDependencies() {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
console.log('开始安装相关依赖...')
|
||||||
|
const command = process.platform === 'win32' ? 'cmd.exe' : 'npm'
|
||||||
|
const args =
|
||||||
|
process.platform === 'win32'
|
||||||
|
? ['/c', 'npm', 'install']
|
||||||
|
: ['install']
|
||||||
|
const installProcess = spawn(command, args)
|
||||||
|
|
||||||
|
installProcess.stdout.on('data', (data) => {
|
||||||
|
console.log(data.toString())
|
||||||
|
})
|
||||||
|
installProcess.stderr.on('data', (data) => {
|
||||||
|
console.error(data.toString())
|
||||||
|
})
|
||||||
|
installProcess.on('close', (code) => {
|
||||||
|
if (code !== 0) {
|
||||||
|
reject(
|
||||||
|
new Error(
|
||||||
|
`运行安装依赖命令错误,请查看以下报错信息寻找解决方法`
|
||||||
|
)
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
console.log('安装依赖成功!')
|
||||||
|
resolve()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async copyFile(sourceDir, targetDir) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
fs.copyFile(sourceDir, targetDir, (error) => {
|
||||||
|
if (error) {
|
||||||
|
reject(error)
|
||||||
|
throw new Error(`复制文件失败: ${error.message}`)
|
||||||
|
}
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async writeToFile(filePath, { sourceData, targetData }) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
fs.readFile(filePath, 'utf8', (err, data) => {
|
||||||
|
if (err) {
|
||||||
|
console.error('读取文件失败:', err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const modifiedData = data.replace(sourceData, targetData)
|
||||||
|
fs.writeFile(filePath, modifiedData, 'utf8', (err) => {
|
||||||
|
if (err) {
|
||||||
|
console.error('写入文件错误:', err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
async initialize(targetVersion) {
|
||||||
|
const currentVersion = process.versions.node
|
||||||
|
if (currentVersion < targetVersion) {
|
||||||
|
throw new Error(
|
||||||
|
`你的当前node版本为(${currentVersion}),需要安装目标版本为 ${targetVersion} 以上!!`
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
const shouldInstall = await this.shouldInstallDependencies()
|
||||||
|
if (shouldInstall) {
|
||||||
|
await this.installDependencies()
|
||||||
|
}
|
||||||
|
await this.copyFile('.env.development.example', '.env.development')
|
||||||
|
await this.copyFile('.env.production.example', '.env.production')
|
||||||
|
const domain = await this.promptUser('请输入您的服务器域名地址:')
|
||||||
|
await this.writeToFile('.env.development', {
|
||||||
|
sourceData: `VITE_APP_BASE_URL=''`,
|
||||||
|
targetData: `VITE_APP_BASE_URL='${domain}'`
|
||||||
|
})
|
||||||
|
await this.writeToFile('.env.production', {
|
||||||
|
sourceData: `VITE_APP_BASE_URL=''`,
|
||||||
|
targetData: `VITE_APP_BASE_URL='${domain}'`
|
||||||
|
})
|
||||||
|
require('./scripts/develop');
|
||||||
|
}
|
||||||
|
|
||||||
|
static getInstance() {
|
||||||
|
if (!InitializeItem.instance) {
|
||||||
|
InitializeItem.instance = new InitializeItem()
|
||||||
|
}
|
||||||
|
return InitializeItem.instance
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
;(async () => {
|
||||||
|
const initializeItem = InitializeItem.getInstance()
|
||||||
|
try {
|
||||||
|
await initializeItem.initialize('18.20.6')
|
||||||
|
} catch (error) {
|
||||||
|
console.error(error.message)
|
||||||
|
}
|
||||||
|
})()
|
||||||
|
|
@ -0,0 +1,79 @@
|
||||||
|
{
|
||||||
|
"name": "imai.work",
|
||||||
|
"version": "2.0.6",
|
||||||
|
"license": "MIT",
|
||||||
|
"scripts": {
|
||||||
|
"init": "node initialize.js",
|
||||||
|
"dev": "vite",
|
||||||
|
"preview": "vite preview --port 4173",
|
||||||
|
"build": "vite build",
|
||||||
|
"build:test": "vite build --mode development",
|
||||||
|
"type-check": "vue-tsc --noEmit",
|
||||||
|
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@element-plus/icons-vue": "^2.3.1",
|
||||||
|
"@highlightjs/vue-plugin": "^2.1.0",
|
||||||
|
"@vue-office/docx": "^1.6.2",
|
||||||
|
"@wangeditor/editor": "^5.1.12",
|
||||||
|
"@wangeditor/editor-for-vue": "^5.1.12",
|
||||||
|
"axios": "^0.27.2",
|
||||||
|
"css-color-function": "^1.3.3",
|
||||||
|
"echarts": "^5.3.3",
|
||||||
|
"element-plus": "^2.9.4",
|
||||||
|
"github-markdown-css": "^5.2.0",
|
||||||
|
"highlight.js": "^11.6.0",
|
||||||
|
"markdown-it": "^13.0.1",
|
||||||
|
"markmap-cli": "^0.18.8",
|
||||||
|
"markmap-common": "^0.18.8",
|
||||||
|
"markmap-lib": "^0.18.8",
|
||||||
|
"markmap-toolbar": "^0.18.8",
|
||||||
|
"markmap-view": "^0.18.8",
|
||||||
|
"nprogress": "^0.2.0",
|
||||||
|
"papaparse": "^5.4.1",
|
||||||
|
"pdfjs-dist": "^2.10.377",
|
||||||
|
"pinia": "^2.0.14",
|
||||||
|
"vue": "^3.2.37",
|
||||||
|
"vue-clipboard3": "^2.0.0",
|
||||||
|
"vue-demi": "^0.14.8",
|
||||||
|
"vue-echarts": "^6.2.3",
|
||||||
|
"vue-router": "^4.0.16",
|
||||||
|
"vue3-video-play": "^1.3.1-beta.6",
|
||||||
|
"vuedraggable": "^4.1.0",
|
||||||
|
"xlsx": "https://cdn.sheetjs.com/xlsx-0.20.0/xlsx-0.20.0.tgz"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@rushstack/eslint-patch": "^1.1.0",
|
||||||
|
"@tailwindcss/line-clamp": "^0.4.2",
|
||||||
|
"@types/lodash-es": "^4.17.6",
|
||||||
|
"@types/markdown-it": "^12.2.3",
|
||||||
|
"@types/node": "^16.11.41",
|
||||||
|
"@types/nprogress": "^0.2.0",
|
||||||
|
"@types/sortablejs": "^1.15.1",
|
||||||
|
"@vitejs/plugin-legacy": "^2.3.1",
|
||||||
|
"@vitejs/plugin-vue": "^3.0.0",
|
||||||
|
"@vitejs/plugin-vue-jsx": "^2.0.0",
|
||||||
|
"@vue/eslint-config-prettier": "^7.0.0",
|
||||||
|
"@vue/eslint-config-typescript": "^11.0.0",
|
||||||
|
"@vue/tsconfig": "^0.1.3",
|
||||||
|
"autoprefixer": "^10.4.7",
|
||||||
|
"consola": "^2.15.3",
|
||||||
|
"eslint": "^8.5.0",
|
||||||
|
"eslint-plugin-vue": "^9.0.0",
|
||||||
|
"execa": "^6.1.0",
|
||||||
|
"fs-extra": "^10.1.0",
|
||||||
|
"postcss": "^8.4.14",
|
||||||
|
"prettier": "^2.5.1",
|
||||||
|
"sass": "^1.53.0",
|
||||||
|
"tailwindcss": "^3.0.24",
|
||||||
|
"terser": "^5.15.1",
|
||||||
|
"typescript": "~4.7.4",
|
||||||
|
"unplugin-auto-import": "^0.9.2",
|
||||||
|
"unplugin-vue-components": "^0.19.9",
|
||||||
|
"vite": "^3.0.0",
|
||||||
|
"vite-plugin-style-import": "^2.0.0",
|
||||||
|
"vite-plugin-svg-icons": "^2.0.1",
|
||||||
|
"vite-plugin-vue-setup-extend": "^0.4.0",
|
||||||
|
"vue-tsc": "^0.38.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
module.exports = {
|
||||||
|
plugins: {
|
||||||
|
tailwindcss: {},
|
||||||
|
autoprefixer: {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
import path from 'path'
|
||||||
|
import fsExtra from 'fs-extra'
|
||||||
|
const { existsSync, remove, copy } = fsExtra
|
||||||
|
const cwd = process.cwd()
|
||||||
|
//打包发布路径,谨慎改动
|
||||||
|
const releaseRelativePath = '../server/public/admin'
|
||||||
|
const distPath = path.resolve(cwd, 'dist')
|
||||||
|
const releasePath = path.resolve(cwd, releaseRelativePath)
|
||||||
|
|
||||||
|
async function build() {
|
||||||
|
if (existsSync(releasePath)) {
|
||||||
|
await remove(releasePath)
|
||||||
|
}
|
||||||
|
console.log(`文件正在复制 ==> ${releaseRelativePath}`)
|
||||||
|
try {
|
||||||
|
await copyFile(distPath, releasePath)
|
||||||
|
} catch (error) {
|
||||||
|
console.log(`\n ${error}`)
|
||||||
|
}
|
||||||
|
console.log(`文件已复制 ==> ${releaseRelativePath}`)
|
||||||
|
}
|
||||||
|
|
||||||
|
function copyFile(sourceDir, targetDir) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
copy(sourceDir, targetDir, (err) => {
|
||||||
|
if (err) {
|
||||||
|
reject(err)
|
||||||
|
} else {
|
||||||
|
resolve()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
build()
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { useDark, useWindowSize, useThrottleFn } from "@vueuse/core";
|
||||||
|
import zhCn from "element-plus/es/locale/lang/zh-cn";
|
||||||
|
import useAppStore from "./stores/modules/app";
|
||||||
|
import useSettingStore from "./stores/modules/setting";
|
||||||
|
import { ScreenEnum } from "./enums/appEnums";
|
||||||
|
const appStore = useAppStore();
|
||||||
|
const settingStore = useSettingStore();
|
||||||
|
const elConfig = {
|
||||||
|
zIndex: 3000,
|
||||||
|
locale: zhCn,
|
||||||
|
};
|
||||||
|
|
||||||
|
const { width } = useWindowSize();
|
||||||
|
watch(
|
||||||
|
width,
|
||||||
|
useThrottleFn((value) => {
|
||||||
|
if (value > ScreenEnum.SM) {
|
||||||
|
appStore.setMobile(false);
|
||||||
|
appStore.toggleCollapsed(false);
|
||||||
|
} else {
|
||||||
|
appStore.setMobile(true);
|
||||||
|
appStore.toggleCollapsed(true);
|
||||||
|
}
|
||||||
|
if (value < ScreenEnum.MD) {
|
||||||
|
appStore.toggleCollapsed(true);
|
||||||
|
}
|
||||||
|
}),
|
||||||
|
{
|
||||||
|
immediate: true,
|
||||||
|
}
|
||||||
|
);
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<el-config-provider :locale="elConfig.locale" :z-index="elConfig.zIndex">
|
||||||
|
<router-view />
|
||||||
|
</el-config-provider>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<style></style>
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 智能体列表
|
||||||
|
export function getAgentLists(params: any) {
|
||||||
|
return request.get({ url: "/sv.robot/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除智能体
|
||||||
|
export function deleteAgent(params: any) {
|
||||||
|
return request.post({ url: "/sv.robot/delete", data: params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取对话记录
|
||||||
|
export function getDialogueRecord(params: any) {
|
||||||
|
return request.get({ url: "/assistants.chatLog/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除对话记录
|
||||||
|
export function deleteDialogueRecord(params: any) {
|
||||||
|
return request.post({ url: "/assistants.chatLog/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
//获取通用聊天配置
|
||||||
|
export function getCommonChatConfig() {
|
||||||
|
return request.post({ url: "/assistants.assistants/chat" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新通用聊天配置
|
||||||
|
export function updateCommonChatConfig(params: any) {
|
||||||
|
return request.post({ url: "/assistants.assistants/updateChat", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 设备列表
|
||||||
|
export function getDeviceLists(params: any) {
|
||||||
|
return request.get({ url: "/sv.device/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除设备
|
||||||
|
export function deleteDevice(params: any) {
|
||||||
|
return request.post({ url: "/sv.device/remove", data: params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 形象记录
|
||||||
|
export function getAnchorRecord(params?: any) {
|
||||||
|
return request.get({ url: "/human.anchor/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除形象记录
|
||||||
|
export function deleteAnchorRecord(params?: any) {
|
||||||
|
return request.post({ url: "/human.anchor/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 音色记录
|
||||||
|
export function getVoiceChatRecord(params?: any) {
|
||||||
|
return request.get({ url: "/human.voice/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除音色记录
|
||||||
|
export function deleteVoiceChatRecord(params?: any) {
|
||||||
|
return request.post({ url: "/human.voice/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 音频记录
|
||||||
|
export function getAudioRecord(params?: any) {
|
||||||
|
return request.get({ url: "/human.audio/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除音频记录
|
||||||
|
export function deleteAudioRecord(params?: any) {
|
||||||
|
return request.post({ url: "/human.audio/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 视频记录
|
||||||
|
export function getVideoRecord(params?: any) {
|
||||||
|
return request.get({ url: "/human.video/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除视频记录
|
||||||
|
export function deleteVideoRecord(params?: any) {
|
||||||
|
return request.post({ url: "/human.video/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 优秀案例列表
|
||||||
|
export function getDrawCaseList(params: any) {
|
||||||
|
return request.get({ url: "/hd.HdImageCase/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 优秀案例添加
|
||||||
|
export function addDrawCase(params: any) {
|
||||||
|
return request.post({ url: "/hd.HdImageCase/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 优秀案例删除
|
||||||
|
export function delDrawCase(params: any) {
|
||||||
|
return request.post({ url: "/hd.HdImageCase/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 优秀案例编辑
|
||||||
|
export function editDrawCase(params: any) {
|
||||||
|
return request.post({ url: "/hd.HdImageCase/edit", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 模特列表
|
||||||
|
export function getModelList(params: any) {
|
||||||
|
return request.get({ url: "/hd.hdCueImage/model/lists", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 绘图记录
|
||||||
|
export function getDrawRecordList(params: any) {
|
||||||
|
return request.get({ url: "/hd.hdImage/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 绘图记录删除
|
||||||
|
export function delDrawRecord(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdImage/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,117 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
//图片灵感分类
|
||||||
|
export function getModelCategoryList(params: any) {
|
||||||
|
return request.get({ url: "/hd.hdCueImageCategory/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//新增图片灵感分类
|
||||||
|
export function addModelCategory(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImageCategory/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//编辑图片灵感分类
|
||||||
|
export function editModelCategory(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImageCategory/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//删除图片灵感分类
|
||||||
|
export function delModelCategory(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImageCategory/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//修改图片灵感分类状态
|
||||||
|
export function editModelCategoryStatus(params: any) {
|
||||||
|
return request.get({ url: "/hd.hdCueImageCategory/updateStatus", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 图片灵感列表
|
||||||
|
export function getModelList(params: any) {
|
||||||
|
return request.get({ url: "/hd.hdCueImage/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取图片灵感详情
|
||||||
|
export function getModelDetail(params: any) {
|
||||||
|
return request.get({ url: "/hd.hdCueImage/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增图片灵感
|
||||||
|
|
||||||
|
export function addModel(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImage/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑图片灵感
|
||||||
|
|
||||||
|
export function editModel(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImage/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除图片灵感
|
||||||
|
|
||||||
|
export function delModel(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImage/delete", params });
|
||||||
|
}
|
||||||
|
// 修改图片灵感状态
|
||||||
|
export function editModelStatus(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueImage/status", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 快速组装分类列表
|
||||||
|
export function getDrawCategoryList(params?: any) {
|
||||||
|
return request.get({ url: "/hd.hdCueWordCategory/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增快速组装分类
|
||||||
|
export function addDrawCategory(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWordCategory/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增快速组装分类
|
||||||
|
export function editDrawCategory(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWordCategory/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除快速组装分类
|
||||||
|
export function delDrawCategory(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWordCategory/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改状态
|
||||||
|
export function editDrawCategoryStatus(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWordCategory/status", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 全部快速组装分类列表
|
||||||
|
export function allDrawCategoryList() {
|
||||||
|
return request.get({ url: "/hd.hdCueWordCategory/all" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 快速组装分类列表
|
||||||
|
export function getPromptList(params: any) {
|
||||||
|
return request.get(
|
||||||
|
{ url: "/hd.hdCueWord/lists", params },
|
||||||
|
{
|
||||||
|
ignoreCancelToken: true,
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
//新增快速组装示例
|
||||||
|
export function addPrompt(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWord/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//编辑快速组装示例
|
||||||
|
export function editPrompt(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWord/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//删除快速组装示例
|
||||||
|
export function delPrompt(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWord/delete", params });
|
||||||
|
}
|
||||||
|
//修改状态
|
||||||
|
export function editPromptStatus(params: any) {
|
||||||
|
return request.post({ url: "/hd.hdCueWord/status", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// SD绘画配置详情
|
||||||
|
export function getDeawConfig() {
|
||||||
|
return request.get({ url: "/setting.ai.draw/detail" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// SD绘画配置保存
|
||||||
|
export function setDeawConfig(params: any) {
|
||||||
|
return request.post({ url: "/setting.ai.draw/save", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取面试反馈列表
|
||||||
|
export const getInterviewFeedbackList = (params: any) => {
|
||||||
|
return request.get({ url: "/interview.feedback/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 删除面试反馈
|
||||||
|
export const deleteInterviewFeedback = (params: any) => {
|
||||||
|
return request.post({ url: "/interview.feedback/delete", data: params });
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取面试岗位列表
|
||||||
|
export const getInterviewJobList = (params: any) => {
|
||||||
|
return request.get({ url: "/interview.interviewJob/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 岗位详情
|
||||||
|
export const getInterviewJobDetail = (params: any) => {
|
||||||
|
return request.get({ url: "/interview.interviewJob/detail", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 岗位删除
|
||||||
|
export const interviewJobDelete = (params: any) => {
|
||||||
|
return request.post({
|
||||||
|
url: "/interview.interviewJob/delete",
|
||||||
|
data: params,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// 岗位状态
|
||||||
|
export const interviewJobStatus = (params: any) => {
|
||||||
|
return request.post({
|
||||||
|
url: "/interview.interviewJob/changeStatus",
|
||||||
|
data: params,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取面试记录列表
|
||||||
|
export const getInterviewRecordList = (params: any) => {
|
||||||
|
return request.get({ url: "/interview.interviewRecord/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 面试记录详情
|
||||||
|
export const getInterviewRecordDetail = (params: any) => {
|
||||||
|
return request.get({ url: "/interview.interview/detail", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 删除面试记录
|
||||||
|
export const deleteInterviewRecord = (params: any) => {
|
||||||
|
return request.post({ url: "/interview.interviewRecord/delete", data: params });
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 知识库文件列表
|
||||||
|
export function getKnowledgeTrainingFiles(params: any) {
|
||||||
|
return request.get({ url: "/knowledge.file/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 知识库文件删除
|
||||||
|
export function deleteKnowledgeTrainingFile(params: any) {
|
||||||
|
return request.post({ url: "/knowledge.file/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 知识库切片详情
|
||||||
|
export function knowKnowledgeChunkDetail(params?: any) {
|
||||||
|
return request.get({ url: "/knowledge.file/chunkLists", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 知识库列表
|
||||||
|
export function knowKnowledgeList(params?: any) {
|
||||||
|
return request.get({ url: "/knowledge.knowledge/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//知识库删除
|
||||||
|
export function knowKnowledgeDelete(params?: any) {
|
||||||
|
return request.post({ url: "/knowledge.knowledge/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 记录列表
|
||||||
|
export function getLpRecordLists(params?: any) {
|
||||||
|
return request.get({ url: "/lianlian.LlAnalysis/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 聊天记录
|
||||||
|
export function getLpChatRecordLists(params?: any) {
|
||||||
|
return request.get({ url: "/lianlian.LlAnalysis/chatLog", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 分析详情
|
||||||
|
export function getLpAnalysisDetail(params?: any) {
|
||||||
|
return request.get({ url: "/lianlian.LlAnalysis/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重新分析
|
||||||
|
export function lpAnalysisReanalysis(params?: any) {
|
||||||
|
return request.post({ url: "/lianlian.LlAnalysis/retry", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除记录
|
||||||
|
export function lpRecordDelete(params?: any) {
|
||||||
|
return request.post({ url: "/lianlian.LlAnalysis/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 场景列表
|
||||||
|
export function getLpSceneLists(params?: any) {
|
||||||
|
return request.get({ url: "/lianlian.LlScene/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 场景新增
|
||||||
|
export function lpSceneAdd(params?: any) {
|
||||||
|
return request.post({ url: "/lianlian.LlScene/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 场景编辑
|
||||||
|
export function lpSceneEdit(params?: any) {
|
||||||
|
return request.post({ url: "/lianlian.LlScene/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 场景删除
|
||||||
|
export function lpSceneDelete(params?: any) {
|
||||||
|
return request.post({ url: "/lianlian.LlScene/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 场景详情
|
||||||
|
export function lpSceneDetail(params?: any) {
|
||||||
|
return request.get({ url: "/lianlian.LlScene/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 场景状态
|
||||||
|
export function lpSceneChangeStatus(params?: any) {
|
||||||
|
return request.post({ url: "/lianlian.LlScene/changeStatus", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
export const getLiveSetting = () => {
|
||||||
|
return request.get({
|
||||||
|
url: "/ai_application/live/setting",
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,16 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 会议记录列表
|
||||||
|
export function getMeetingRecordList(params: any) {
|
||||||
|
return request.get({ url: "/audio.audio/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 会议记录删除
|
||||||
|
export function deleteMeetingRecord(params: any) {
|
||||||
|
return request.post({ url: "/audio.audio/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 会议记录详情
|
||||||
|
export function getMeetingRecordDetail(params: any) {
|
||||||
|
return request.get({ url: "/audio.audio/detail", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
export function getMindMapConfig() {
|
||||||
|
return request.get({ url: "/setting.mindmap/getConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
export function setMindMapConfig(params: any) {
|
||||||
|
return request.post({ url: "/setting.mindmap/setConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getMindMapExample() {
|
||||||
|
return request.get({ url: "/setting.mindmap/getExampleConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
export function setMindMapExample(params: any) {
|
||||||
|
return request.post({ url: "/setting.mindmap/setExampleConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 思维导图记录
|
||||||
|
export function getMindMapRecordLists(params: any) {
|
||||||
|
return request.get({ url: "/mindMap.mindMap/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 思维导图记录删除
|
||||||
|
export function deleteMindMapRecord(params: any) {
|
||||||
|
return request.post({ url: "/mindMap.mindMap/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,56 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
//音乐列表
|
||||||
|
export function getMusicRecord(params?: any) {
|
||||||
|
return request.get({ url: '/music.musicRecord/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//下拉选项
|
||||||
|
export function getMusicRecordOptions(params?: any) {
|
||||||
|
return request.get({ url: '/music.musicRecord/options', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//音乐删除
|
||||||
|
export function deleteMusicRecord(params?: any) {
|
||||||
|
return request.post({ url: '/music.musicRecord/del', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//AI配置详情
|
||||||
|
export function getMusicConfig(params?: any) {
|
||||||
|
return request.get({ url: '/music.musicConfig/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//AI配置保存
|
||||||
|
export function putMusicConfig(params?: any) {
|
||||||
|
return request.post({ url: '/music.musicConfig/save', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//风格列表
|
||||||
|
export function getMusicStyle(params?: any) {
|
||||||
|
return request.get({ url: '/music.musicStyle/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//风格详情
|
||||||
|
export function getMusicStyleDetail(params?: any) {
|
||||||
|
return request.get({ url: '/music.musicStyle/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//风格新增
|
||||||
|
export function postMusicStyle(params?: any) {
|
||||||
|
return request.post({ url: '/music.musicStyle/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//风格编辑
|
||||||
|
export function putMusicStyle(params?: any) {
|
||||||
|
return request.post({ url: '/music.musicStyle/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//风格状态
|
||||||
|
export function putMusicStyleStatus(params?: any) {
|
||||||
|
return request.post({ url: '/music.musicStyle/status', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//风格删除
|
||||||
|
export function deleteMusicStyle(params?: any) {
|
||||||
|
return request.post({ url: '/music.musicStyle/del', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 设备列表
|
||||||
|
export function getDeviceList(params: any) {
|
||||||
|
return request.get({ url: "/wechat.device/lists", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 微信聊天记录列表
|
||||||
|
export function getRecordList(params: any) {
|
||||||
|
return request.get({ url: "/wechat.chat/lists", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取文案列表
|
||||||
|
export const getCopywritingList = (params: any) => {
|
||||||
|
return request.get({ url: "/sv.copywriting/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 删除文案
|
||||||
|
export const deleteCopywriting = (params: any) => {
|
||||||
|
return request.post({ url: "/sv.copywriting/delete", data: params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 获取创作列表
|
||||||
|
export const getCreationList = (params: any) => {
|
||||||
|
return request.get({ url: "/sv.videoSetting/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 作品视频列表
|
||||||
|
export const getCreationVideoList = (params: any) => {
|
||||||
|
return request.get({ url: "/sv.videoTask/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 删除创作
|
||||||
|
export const deleteCreation = (params: any) => {
|
||||||
|
return request.post({ url: "/sv.videoSetting/delete", data: params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 获取发布列表
|
||||||
|
export const getPublishList = (params: any) => {
|
||||||
|
return request.get({ url: "/sv.publish/lists", params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 删除发布
|
||||||
|
export const deletePublish = (params: any) => {
|
||||||
|
return request.post({ url: "/sv.publish/delete", data: params });
|
||||||
|
};
|
||||||
|
|
||||||
|
// 发布记录列表
|
||||||
|
export const getPublishRecordList = (params: any) => {
|
||||||
|
return request.get({ url: "/sv.publish/recordLists", params });
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 账号列表
|
||||||
|
export const getAccountList = (params: any) => {
|
||||||
|
return request.get({ url: "/sv.account/lists", params });
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 助手分类列表
|
||||||
|
export function getAssistantCategoryList(params: any) {
|
||||||
|
return request.get({ url: "/assistants.scene/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 助手分类详情
|
||||||
|
export function getAssistantCategoryDetail(params: any) {
|
||||||
|
return request.get({ url: "/assistants.scene/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增助手分类
|
||||||
|
export function assistantCategoryAdd(params: any) {
|
||||||
|
return request.post({ url: "/assistants.scene/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑助手分类
|
||||||
|
export function assistantCategoryEdit(params: any) {
|
||||||
|
return request.post({ url: "/assistants.scene/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除助手分类
|
||||||
|
export function assistantCategoryDelete(params: any) {
|
||||||
|
return request.post({ url: "/assistants.scene/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新助手分类状态
|
||||||
|
export function assistantCategoryStatus(params: any) {
|
||||||
|
return request.post({ url: "/assistants.scene/changeStatus", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 助手模型列表
|
||||||
|
export function getAssistantModelList(params: any) {
|
||||||
|
return request.get({ url: "/assistants.assistants/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 助手模型列表
|
||||||
|
export function getAssistantModelDetail(params: any) {
|
||||||
|
return request.get({ url: "/assistants.assistants/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 新增助手模型
|
||||||
|
export function assistantModelAdd(params: any) {
|
||||||
|
return request.post({ url: "/assistants.assistants/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑助手模型
|
||||||
|
export function assistantModelEdit(params: any) {
|
||||||
|
return request.post({ url: "/assistants.assistants/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑助手详情
|
||||||
|
export function assistantModelDetail(params: any) {
|
||||||
|
return request.get({ url: "/assistants.assistants/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除助手模型
|
||||||
|
export function assistantModelDelete(params: any) {
|
||||||
|
return request.post({ url: "/assistants.assistants/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新助手模型状态
|
||||||
|
export function assistantModelStatus(params: any) {
|
||||||
|
return request.post({ url: "/assistants.assistants/changeStatus", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
import type { FileParams } from "@/utils/request/type";
|
||||||
|
|
||||||
|
// 配置
|
||||||
|
export function getConfig() {
|
||||||
|
return request.get({ url: "/config/getConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 保存配置
|
||||||
|
export function saveConfig(params: any) {
|
||||||
|
return request.post({ url: "/config/setConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 工作台主页
|
||||||
|
export function getWorkbench() {
|
||||||
|
return request.get({ url: "/workbench/index" });
|
||||||
|
}
|
||||||
|
|
||||||
|
//字典数据
|
||||||
|
export function getDictData(params: any) {
|
||||||
|
return request.get({ url: "/config/dict", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 上传文件
|
||||||
|
type type = "image" | "video" | "file";
|
||||||
|
export function uploadFile(type: type, params: FileParams, onProgress?: ((progressEvent: any) => void) | undefined) {
|
||||||
|
return request.uploadFile(
|
||||||
|
{
|
||||||
|
url: `/upload/${type}`,
|
||||||
|
headers: params.header,
|
||||||
|
onUploadProgress(progressEvent) {
|
||||||
|
onProgress && onProgress(progressEvent);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
params
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// H5渠道配置保存
|
||||||
|
export function setH5Config(params: any) {
|
||||||
|
return request.post({ url: '/channel.web_page_setting/setConfig', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// H5渠道配置详情
|
||||||
|
export function getH5Config() {
|
||||||
|
return request.get({ url: '/channel.web_page_setting/getConfig' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// PC渠道配置详情
|
||||||
|
export function getPCConfig() {
|
||||||
|
return request.get({ url: '/channel.pc_setting/getConfig' })
|
||||||
|
}
|
||||||
|
// PC渠道配置保存
|
||||||
|
export function setPCConfig(params: any) {
|
||||||
|
return request.post({ url: '/channel.pc_setting/setConfig', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 微信开发平台配置保存
|
||||||
|
export function setOpenSettingConfig(params: any) {
|
||||||
|
return request.post({ url: '/channel.open_setting/setConfig', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 微信开发平台配置详情
|
||||||
|
export function getOpenSettingConfig() {
|
||||||
|
return request.get({ url: '/channel.open_setting/getConfig' })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 微信小程序配置保存
|
||||||
|
export function setWeappConfig(params: any) {
|
||||||
|
return request.post({ url: "/channel.mnp_settings/setConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 微信小程序配置详情
|
||||||
|
export function getWeappConfig() {
|
||||||
|
return request.get({ url: "/channel.mnp_settings/getConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 微信小程序版本
|
||||||
|
export function getWeappVersion() {
|
||||||
|
return request.get({ url: "/channel.mnp_settings/getMnpLocalVersion" });
|
||||||
|
}
|
||||||
|
|
||||||
|
export function uploadMnp(params: any) {
|
||||||
|
return request.post({ url: "/channel.mnp_settings/uploadMnp", params, timeout: 120 * 1000 });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,110 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 微信公众号配置保存
|
||||||
|
export function setOaConfig(params: any) {
|
||||||
|
return request.post({ url: '/channel.official_account_setting/setConfig', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 微信公众号配置详情
|
||||||
|
export function getOaConfig() {
|
||||||
|
return request.get({ url: '/channel.official_account_setting/getConfig' })
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Menu {
|
||||||
|
name: string
|
||||||
|
has_menu?: boolean
|
||||||
|
type?: string
|
||||||
|
url?: string
|
||||||
|
appid?: string
|
||||||
|
pagepath?: string
|
||||||
|
sub_button: Menu[] | any
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @description 获取菜单
|
||||||
|
*/
|
||||||
|
export function getOaMenu() {
|
||||||
|
return request.get({ url: '/channel.official_account_menu/detail' })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { Menu } Menu
|
||||||
|
* @description 菜单保存
|
||||||
|
*/
|
||||||
|
export function setOaMenuSave(params: Menu | any) {
|
||||||
|
return request.post({ url: '/channel.official_account_menu/save', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { Menu } Menu
|
||||||
|
* @description 菜单发布
|
||||||
|
*/
|
||||||
|
export function setOaMenuPublish(params: Menu | any) {
|
||||||
|
return request.post({ url: '/channel.official_account_menu/saveAndPublish', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { string } reply_type
|
||||||
|
* @description 获取回复列表
|
||||||
|
*/
|
||||||
|
export function getOaReplyList(params: { reply_type: string }) {
|
||||||
|
return request.get({ url: '/channel.official_account_reply/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { number } id
|
||||||
|
* @description 回复列表删除
|
||||||
|
*/
|
||||||
|
export function oaReplyDel(params: { id: number }) {
|
||||||
|
return request.post({ url: '/channel.official_account_reply/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { number } id
|
||||||
|
* @description 回复状态修改
|
||||||
|
*/
|
||||||
|
export function changeOaReplyStatus(params: { id: number }) {
|
||||||
|
return request.post({ url: '/channel.official_account_reply/status', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Reply {
|
||||||
|
content: string // 内容
|
||||||
|
content_type: number // 内容类型: 1=文本
|
||||||
|
keyword?: string // 关键词
|
||||||
|
matching_type?: number // 匹配方式: [1=全匹配, 2=模糊匹配]
|
||||||
|
name: string // 规则名称
|
||||||
|
status: number // 状态: 1=开启, 0=关闭
|
||||||
|
reply_type: number // 类型: 回复类型 1-关注回复 2-关键词回复 3-默认回复
|
||||||
|
reply_num: number // 回复数量`
|
||||||
|
sort: number // 排序
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @description 回复添加
|
||||||
|
*/
|
||||||
|
export function oaReplyAdd(params: Reply) {
|
||||||
|
return request.post({ url: '/channel.official_account_reply/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @description 回复编辑
|
||||||
|
*/
|
||||||
|
export function oaReplyEdit(params: Reply) {
|
||||||
|
return request.post({ url: '/channel.official_account_reply/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { string } type
|
||||||
|
* @description 获取回复详情
|
||||||
|
*/
|
||||||
|
export function getOaReplyDetail(params: { id: number }) {
|
||||||
|
return request.get({ url: '/channel.official_account_reply/detail', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取gpt提示词配置
|
||||||
|
export function getGptPrompt() {
|
||||||
|
return request.get({ url: "/chatPrompt/getPrompt" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 保存gpt提示词配置
|
||||||
|
export function saveGptPrompt(params: any) {
|
||||||
|
return request.post({ url: "/chatPrompt/updatePrompt", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,112 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 用户列表
|
||||||
|
export function getUserList(params: any) {
|
||||||
|
return request.get({ url: "/user.user/lists", params }, { ignoreCancelToken: true });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户列表
|
||||||
|
export function getUserGroupAll(params?: any) {
|
||||||
|
return request.get({ url: "/user.userGroup/all", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户详情
|
||||||
|
export function getUserDetail(params: any) {
|
||||||
|
return request.get({ url: "/user.user/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户编辑
|
||||||
|
export function userEdit(params: any) {
|
||||||
|
return request.post({ url: "/user.user/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户编辑
|
||||||
|
export function adjustMoney(params: any) {
|
||||||
|
return request.post({ url: "/user.user/adjustAccount", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户编辑会员时间
|
||||||
|
export function adjustMember(params: any) {
|
||||||
|
return request.post({ url: "/user.user/adjustMember", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//会员列表
|
||||||
|
export function getMemberList(params?: any) {
|
||||||
|
return request.get({ url: "/member.member_package/commonLists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 调整用户视频合成时长
|
||||||
|
export function adjustVideo(params: any) {
|
||||||
|
return request.post({ url: "/user.user/adjustAccount", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//创建用户
|
||||||
|
export function addUser(params: any) {
|
||||||
|
return request.post({ url: "/user.user/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//黑名单
|
||||||
|
export function blackList(params: any) {
|
||||||
|
return request.post({ url: "/user.user/blacklist", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//重置密码
|
||||||
|
export function resetPassword(params: any) {
|
||||||
|
return request.post({ url: "/user.user/editPas", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
export function setRegisterReward(params: any) {
|
||||||
|
return request.post({ url: "/market.regReward/save", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getRegisterReward() {
|
||||||
|
return request.get({ url: "/market.regReward/detail" });
|
||||||
|
}
|
||||||
|
|
||||||
|
//用户分组列表
|
||||||
|
export function userGroupingList(params: any) {
|
||||||
|
return request.get({ url: "/user.userGroup/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//用户分组新增
|
||||||
|
export function userGroupingAdd(params: any) {
|
||||||
|
return request.post({ url: "/user.userGroup/add", params });
|
||||||
|
}
|
||||||
|
//用户分组编辑
|
||||||
|
export function userGroupingEdit(params: any) {
|
||||||
|
return request.post({ url: "/user.userGroup/edit", params });
|
||||||
|
}
|
||||||
|
//用户分组删除
|
||||||
|
export function userGroupingDel(params: any) {
|
||||||
|
return request.post({ url: "/user.userGroup/del", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//设置分组
|
||||||
|
export function userGroupingset(params: any) {
|
||||||
|
return request.post({ url: "/user.user/setGroup", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//调整机器人
|
||||||
|
export function adjustRobot(params: any) {
|
||||||
|
return request.post({ url: "/user.user/adjustRobot", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//调整机器人
|
||||||
|
export function adjustKb(params: any) {
|
||||||
|
return request.post({ url: "/user.user/adjustKb", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改tokens
|
||||||
|
export function adjustTokens(params: any) {
|
||||||
|
return request.post({ url: "/user.user/adjustUserTokens", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户调查
|
||||||
|
export function userSurveyLists(params: any) {
|
||||||
|
return request.get({ url: "/survey.survey/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户调查删除
|
||||||
|
export function userSurveyDel(params: any) {
|
||||||
|
return request.post({ url: "/survey.survey/delete", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 应用列表
|
||||||
|
export function getApplicationLists(params: any) {
|
||||||
|
return request.get({ url: "/staff.staff/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 应用详情
|
||||||
|
export function getApplicationDetail(params: any) {
|
||||||
|
return request.get({ url: "/staff.staff/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 应用编辑
|
||||||
|
export function editApplication(params: any) {
|
||||||
|
return request.post({ url: "/staff.staff/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 应用状态
|
||||||
|
export function changeApplicationStatus(params: any) {
|
||||||
|
return request.post({
|
||||||
|
url: "/staff.staff/changeStatus",
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 模块列表
|
||||||
|
export function getModuleLists(params: any) {
|
||||||
|
return request.get({ url: "/decoration/index_module/lists", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
export function fileCateAdd(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/file/addCate', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
export function fileCateEdit(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/file/editCate', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 文件分类删除
|
||||||
|
export function fileCateDelete(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/file/delCate', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 文件分类列表
|
||||||
|
export function fileCateLists(params: Record<string, any>) {
|
||||||
|
return request.get({ url: '/file/listCate', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 文件列表
|
||||||
|
export function fileList(params: Record<string, any>) {
|
||||||
|
return request.get({ url: '/file/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 文件删除
|
||||||
|
export function fileDelete(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/file/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 文件移动
|
||||||
|
export function fileMove(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/file/move', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 文件重命名
|
||||||
|
export function fileRename(params: { id: number; name: string }) {
|
||||||
|
return request.post({ url: '/file/rename', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 财务汇总
|
||||||
|
export function accountLog(params?: any) {
|
||||||
|
return request.get({ url: "/recharge.GiftPackageOrder/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 充值记录
|
||||||
|
export function rechargeLists(params?: any) {
|
||||||
|
return request.get(
|
||||||
|
{ url: "/recharge.recharge/lists", params },
|
||||||
|
{ ignoreCancelToken: true }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 消费记录
|
||||||
|
export function getConsumeLists(params: any) {
|
||||||
|
return request.get({ url: "/recharge.tokens_log/lists", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取积分用量配置
|
||||||
|
export function getCreditSet() {
|
||||||
|
return request.get({ url: "/config/getModelConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置积分用量配置
|
||||||
|
export function setCreditSet(data: any) {
|
||||||
|
return request.post({ url: "/config/setModelConfig", data });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
//获取充值套餐配置
|
||||||
|
export function getRechargeConfig() {
|
||||||
|
return request.get({ url: "/recharge.package/getConfig" });
|
||||||
|
}
|
||||||
|
//设置充值套餐配置
|
||||||
|
export function setRechargeConfig(params: any) {
|
||||||
|
return request.post({ url: "/recharge.package/setConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 充值套餐列表
|
||||||
|
export function getRechargeLists(params: any) {
|
||||||
|
return request.get({ url: "/recharge.GiftPackage/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加充值套餐
|
||||||
|
export function rechargeAdd(params: any) {
|
||||||
|
return request.post({ url: "/recharge.GiftPackage/add", params });
|
||||||
|
}
|
||||||
|
// 编辑充值套餐
|
||||||
|
export function rechargeEdit(params: any) {
|
||||||
|
return request.post({ url: "/recharge.GiftPackage/edit", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除充值套餐
|
||||||
|
export function rechargeDelete(params: any) {
|
||||||
|
return request.get({ url: "/recharge.GiftPackage/delete", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 充值套餐详情
|
||||||
|
export function getRechargeDetail(params: any) {
|
||||||
|
return request.get({ url: "/recharge.GiftPackage/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改套餐状态
|
||||||
|
export function rechargeStatus(params: any) {
|
||||||
|
return request.post({ url: "/recharge.package/status", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 兑换CDK
|
||||||
|
export function rechargeCDK(params: any) {
|
||||||
|
return request.post({ url: "/recharge.CDK/cdkExchangeTokens", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 秘钥修改
|
||||||
|
export function rechargeSecret(params: any) {
|
||||||
|
return request.post({ url: "/recharge.CDK/cdkReplaceAuth", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 充值设置
|
||||||
|
export function rechargeSettingConfig(params: any) {
|
||||||
|
return request.post({ url: "/recharge.recharge/setConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取充值设置
|
||||||
|
export function getRechargeSettingConfig() {
|
||||||
|
return request.get({ url: "/recharge.recharge/getConfig" });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
//卡密列表
|
||||||
|
export function cardcodeLists(params: any) {
|
||||||
|
return request.get({ url: "/cardcode.cardCode/lists", params }, { ignoreCancelToken: true });
|
||||||
|
}
|
||||||
|
|
||||||
|
//套餐列表
|
||||||
|
export function cardcodePackageLists() {
|
||||||
|
return request.get({ url: "/cardcode.cardCode/getPackageList" });
|
||||||
|
}
|
||||||
|
|
||||||
|
export type CardCodeFormType = {
|
||||||
|
type: number; // 是 类型
|
||||||
|
card_num: string; // 是 卡密数量
|
||||||
|
valid_start_time: string; // 是 有效开始时间
|
||||||
|
valid_end_time: string; // 是 有效结束时间
|
||||||
|
remark: string; // 否 备注
|
||||||
|
rule_type: number; // 是 生成规则
|
||||||
|
balance: string; // 否 电力值
|
||||||
|
};
|
||||||
|
|
||||||
|
//卡密新增
|
||||||
|
export function cardcodeAdd(params: CardCodeFormType) {
|
||||||
|
return request.post({ url: "/cardcode.cardCode/add", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//卡密删除
|
||||||
|
export function cardcodeDel(params: { id: number }) {
|
||||||
|
return request.post({ url: "/cardcode.cardCode/del", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//卡密使用详情
|
||||||
|
export function cardcodeDetails(params: { id: number }) {
|
||||||
|
return request.get({ url: "/cardcode.cardCode/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//卡密记录列表
|
||||||
|
export function cardcodeRecordLists(params: any) {
|
||||||
|
return request.get({ url: "/cardcode.cardCodeRecord/lists", params }, { ignoreCancelToken: true });
|
||||||
|
}
|
||||||
|
|
||||||
|
//卡密设置
|
||||||
|
export function cardcodeConfigGet() {
|
||||||
|
return request.get({ url: "/cardcode.cardCode/getConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
//获取卡密设置
|
||||||
|
export function cardcodeConfigSet(params: any) {
|
||||||
|
return request.post({ url: "/cardcode.cardCode/setConfig", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 通知设置列表
|
||||||
|
export function noticeLists(params: any) {
|
||||||
|
return request.get({ url: '/notice.notice/settingLists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 通知设置详情
|
||||||
|
export function noticeDetail(params: any) {
|
||||||
|
return request.get({ url: '/notice.notice/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 通知设置保存
|
||||||
|
export function setNoticeConfig(params: any) {
|
||||||
|
return request.post({ url: '/notice.notice/set', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 短信设置列表
|
||||||
|
export function smsLists() {
|
||||||
|
return request.get({ url: '/notice.sms_config/getConfig' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 短信设置详情
|
||||||
|
export function smsDetail(params: any) {
|
||||||
|
return request.get({ url: '/notice.sms_config/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 短信设置保存
|
||||||
|
export function setSmsConfig(params: any) {
|
||||||
|
return request.post({ url: '/notice.sms_config/setConfig', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//获取邮箱设置
|
||||||
|
export function getEmailConfig(params: any) {
|
||||||
|
return request.get({ url: '/notice.email/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//设置邮箱设置
|
||||||
|
export function setEmailConfig(params: any) {
|
||||||
|
return request.post({ url: '/notice.email/save', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 部门列表
|
||||||
|
export function deptLists(params?: any) {
|
||||||
|
return request.get({ url: '/dept.dept/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加部门
|
||||||
|
export function deptAdd(params: any) {
|
||||||
|
return request.post({ url: '/dept.dept/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑部门
|
||||||
|
export function deptEdit(params: any) {
|
||||||
|
return request.post({ url: '/dept.dept/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除部门
|
||||||
|
export function deptDelete(params: any) {
|
||||||
|
return request.post({ url: '/dept.dept/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 部门详情
|
||||||
|
export function deptDetail(params: any) {
|
||||||
|
return request.get({ url: '/dept.dept/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 部门列表全部
|
||||||
|
export function deptAll() {
|
||||||
|
return request.get({ url: '/dept.dept/all' })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,31 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 岗位列表
|
||||||
|
export function jobsLists(params: any) {
|
||||||
|
return request.get({ url: '/dept.jobs/lists', params }, { ignoreCancelToken: true })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 岗位列表全部
|
||||||
|
export function jobsAll(params: any) {
|
||||||
|
return request.get({ url: '/dept.jobs/all', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加岗位
|
||||||
|
export function jobsAdd(params: any) {
|
||||||
|
return request.post({ url: '/dept.jobs/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑岗位
|
||||||
|
export function jobsEdit(params: any) {
|
||||||
|
return request.post({ url: '/dept.jobs/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除岗位
|
||||||
|
export function jobsDelete(params: any) {
|
||||||
|
return request.post({ url: '/dept.jobs/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 岗位详情
|
||||||
|
export function jobsDetail(params: any) {
|
||||||
|
return request.get({ url: '/dept.jobs/detail', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 管理员列表
|
||||||
|
export function adminLists(params: any) {
|
||||||
|
return request.get({ url: '/auth.admin/lists', params }, { ignoreCancelToken: true })
|
||||||
|
}
|
||||||
|
// 管理员列表全部
|
||||||
|
export function adminAll(params: any) {
|
||||||
|
return request.get({ url: '/auth.admin/all', params })
|
||||||
|
}
|
||||||
|
// 管理员添加
|
||||||
|
export function adminAdd(params: any) {
|
||||||
|
return request.post({ url: '/auth.admin/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 管理员编辑
|
||||||
|
export function adminEdit(params: any) {
|
||||||
|
return request.post({ url: '/auth.admin/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 管理员删除
|
||||||
|
export function adminDelete(params: any) {
|
||||||
|
return request.post({ url: '/auth.admin/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 管理员详情
|
||||||
|
export function adminDetail(params: any) {
|
||||||
|
return request.get({ url: '/auth.admin/detail', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,30 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 菜单列表
|
||||||
|
export function menuLists(params: Record<string, any>) {
|
||||||
|
return request.get({ url: '/auth.menu/lists', params })
|
||||||
|
}
|
||||||
|
// 菜单全部
|
||||||
|
export function menuAll(params?: Record<string, any>) {
|
||||||
|
return request.get({ url: '/auth.menu/all', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加菜单
|
||||||
|
export function menuAdd(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/auth.menu/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑菜单
|
||||||
|
export function menuEdit(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/auth.menu/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 菜单删除
|
||||||
|
export function menuDelete(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/auth.menu/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 菜单详情
|
||||||
|
export function menuDetail(params: Record<string, any>) {
|
||||||
|
return request.get({ url: '/auth.menu/detail', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 角色列表
|
||||||
|
export function roleLists(params: any) {
|
||||||
|
return request.get({ url: '/auth.role/lists', params })
|
||||||
|
}
|
||||||
|
// 角色列表全部
|
||||||
|
export function roleAll(params: any) {
|
||||||
|
return request.get({ url: '/auth.role/all', params })
|
||||||
|
}
|
||||||
|
// 添加角色
|
||||||
|
export function roleAdd(params: any) {
|
||||||
|
return request.post({ url: '/auth.role/add', params })
|
||||||
|
}
|
||||||
|
// 编辑角色
|
||||||
|
export function roleEdit(params: any) {
|
||||||
|
return request.post({ url: '/auth.role/edit', params })
|
||||||
|
}
|
||||||
|
// 删除角色
|
||||||
|
export function roleDelete(params: any) {
|
||||||
|
return request.post({ url: '/auth.role/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 角色详情
|
||||||
|
export function roleDetail(params: any) {
|
||||||
|
return request.get({ url: '/auth.role/detail', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
//获取客服设置
|
||||||
|
export function getconsumerConfig(params?: any) {
|
||||||
|
return request.get({ url: "/setting.consumer/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
//保存客服设置
|
||||||
|
export function setconsumerConfig(params?: any) {
|
||||||
|
return request.post({ url: "/setting.consumer/save", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,61 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 字典类型列表
|
||||||
|
export function dictTypeLists(params: any) {
|
||||||
|
return request.get({ url: '/setting.dict.dict_type/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 字典类型列表全部
|
||||||
|
export function dictTypeAll(params: any) {
|
||||||
|
return request.get({ url: '/setting.dict.dict_type/all', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加字典类型
|
||||||
|
export function dictTypeAdd(params: any) {
|
||||||
|
return request.post({ url: '/setting.dict.dict_type/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑字典类型
|
||||||
|
export function dictTypeEdit(params: any) {
|
||||||
|
return request.post({ url: '/setting.dict.dict_type/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除字典类型
|
||||||
|
export function dictTypeDelete(params: any) {
|
||||||
|
return request.post({ url: '/setting.dict.dict_type/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 字典类型详情
|
||||||
|
export function dictTypeDetail(params: any) {
|
||||||
|
return request.get({ url: '/setting.dict.dict_type/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 字典数据列表
|
||||||
|
export function dictDataLists(params: any) {
|
||||||
|
return request.get(
|
||||||
|
{ url: '/setting.dict.dict_data/lists', params },
|
||||||
|
{
|
||||||
|
ignoreCancelToken: true
|
||||||
|
}
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加字典数据
|
||||||
|
export function dictDataAdd(params: any) {
|
||||||
|
return request.post({ url: '/setting.dict.dict_data/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑字典数据
|
||||||
|
export function dictDataEdit(params: any) {
|
||||||
|
return request.post({ url: '/setting.dict.dict_data/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除字典数据
|
||||||
|
export function dictDataDelete(params: any) {
|
||||||
|
return request.post({ url: '/setting.dict.dict_data/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 字典数据详情
|
||||||
|
export function dictDataDetail(params: any) {
|
||||||
|
return request.get({ url: '/setting.dict.dict_data/detail', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,11 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 获取公告配置
|
||||||
|
export function getNoticeSet(params?: any) {
|
||||||
|
return request.get({ url: '/setting.bulletin/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置公告配置
|
||||||
|
export function setNoticeSet(params?: any) {
|
||||||
|
return request.post({ url: '/setting.bulletin/save', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 获取支付方式
|
||||||
|
export function getPayWay() {
|
||||||
|
return request.get({ url: '/setting.pay.pay_way/getPayWay' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置支付方式
|
||||||
|
export function setPayWay(params: any) {
|
||||||
|
return request.post({ url: '/setting.pay.pay_way/setPayWay', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取支付方式
|
||||||
|
export function getPayConfigLists() {
|
||||||
|
return request.get({ url: '/setting.pay.pay_config/lists' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置支付方式
|
||||||
|
export function setPayConfig(params: any) {
|
||||||
|
return request.post({ url: '/setting.pay.pay_config/setConfig', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置支付方式
|
||||||
|
export function getPayConfig(params: any) {
|
||||||
|
return request.get({ url: '/setting.pay.pay_config/getConfig', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @description 获取热门搜索数据
|
||||||
|
*/
|
||||||
|
export function getSearch() {
|
||||||
|
return request.get({ url: '/setting.hot_search/getConfig' })
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface List {
|
||||||
|
name: string // 搜索关键字
|
||||||
|
sort: number // 热门搜索排序
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface Search {
|
||||||
|
status: number // 是否开启搜索0/1
|
||||||
|
data: List[]
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { Search } Search
|
||||||
|
* @description 设置热门搜索
|
||||||
|
*/
|
||||||
|
export function setSearch(params: Search) {
|
||||||
|
return request.post({ url: '/setting.hot_search/setConfig', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取存储引擎列表
|
||||||
|
export function storageLists() {
|
||||||
|
return request.get({ url: "/setting.storage/lists" });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置存储引擎信息
|
||||||
|
export function storageChange(params: any) {
|
||||||
|
return request.post({ url: "/setting.storage/change", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 设置存储引擎信息
|
||||||
|
export function storageSetup(params: any) {
|
||||||
|
return request.post({ url: "/setting.storage/setup", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取存储配置信息
|
||||||
|
export function storageDetail(params: any) {
|
||||||
|
return request.get({ url: "/setting.storage/detail", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 上传本地文件
|
||||||
|
export function storageMigration(params: any) {
|
||||||
|
return request.post({ url: "/setting.storage/migration", params });
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 获取系统环境
|
||||||
|
export function systemInfo() {
|
||||||
|
return request.get({ url: '/setting.system.system/info' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取系统日志列表
|
||||||
|
export function systemLogLists(params: any) {
|
||||||
|
return request.get({ url: '/setting.system.log/lists', params }, { ignoreCancelToken: true })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 清除系统缓存
|
||||||
|
export function systemCacheClear() {
|
||||||
|
return request.post({ url: '/setting.system.cache/clear' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 定时任务列表
|
||||||
|
export function crontabLists(params: any) {
|
||||||
|
return request.get({ url: '/crontab.crontab/lists', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加定时任务
|
||||||
|
export function crontabAdd(params: any) {
|
||||||
|
return request.post({ url: '/crontab.crontab/add', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 定时任务详情
|
||||||
|
export function crontabDetail(params: any) {
|
||||||
|
return request.get({ url: '/crontab.crontab/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑定时任务
|
||||||
|
export function crontabEdit(params: any) {
|
||||||
|
return request.post({ url: '/crontab.crontab/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除定时任务
|
||||||
|
export function crontabDel(params: any) {
|
||||||
|
return request.post({ url: '/crontab.crontab/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取规则执行时间
|
||||||
|
export function crontabExpression(params: any) {
|
||||||
|
return request.get({ url: '/crontab.crontab/expression', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 操作定时任务
|
||||||
|
export function srontabOperate(params: any) {
|
||||||
|
return request.post({ url: '/crontab.crontab/operate', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
export function getUpgradeLists(params: any) {
|
||||||
|
return request.get({ url: "/update/lists", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 检查更新
|
||||||
|
export function upgradeCheck(params: any) {
|
||||||
|
return request.post({ url: "/update/check", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 一键更新
|
||||||
|
export function upgrade(params: any) {
|
||||||
|
return request.post({
|
||||||
|
url: "/update/exec",
|
||||||
|
params,
|
||||||
|
timeout: 120 * 1000,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,46 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @description 获取用户设置
|
||||||
|
*/
|
||||||
|
export function getUserSetup() {
|
||||||
|
return request.get({ url: "/setting.user.user/getConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { string } default_avatar 默认用户头像
|
||||||
|
* @description 设置用户设置
|
||||||
|
*/
|
||||||
|
export function setUserSetup(params: { default_avatar: string }) {
|
||||||
|
return request.post({ url: "/setting.user.user/setConfig", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @description 设置登录注册规则
|
||||||
|
*/
|
||||||
|
export function getLogin() {
|
||||||
|
return request.get({ url: "/setting.user.user/getRegisterConfig" });
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface LoginSetup {
|
||||||
|
login_way: number[] | any; // 登录方式, 逗号隔开
|
||||||
|
coerce_mobile: number; // 强制绑定手机 0/1
|
||||||
|
login_agreement: number; // 是否开启协议 0/1
|
||||||
|
third_auth: number; // 第三方登录 0/1
|
||||||
|
wechat_auth: number; // 微信授权登录 0-关闭 1-开启
|
||||||
|
qq_auth: number; // qq授权登录 0-关闭 1-开启
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* @return { Promise }
|
||||||
|
* @param { LoginSetup } LoginSetup
|
||||||
|
* @description 设置登录注册规则
|
||||||
|
*/
|
||||||
|
export function setLogin(params: LoginSetup) {
|
||||||
|
return request.post({
|
||||||
|
url: "/setting.user.user/setRegisterConfig",
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
import request from "@/utils/request";
|
||||||
|
|
||||||
|
// 获取备案信息
|
||||||
|
export function getCopyright() {
|
||||||
|
return request.get({ url: "/setting.web.web_setting/getCopyright" });
|
||||||
|
}
|
||||||
|
// 设置备案信息
|
||||||
|
export function setCopyright(params: any) {
|
||||||
|
return request.post({
|
||||||
|
url: "/setting.web.web_setting/setCopyright",
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
// 获取网站信息
|
||||||
|
export function getWebsite() {
|
||||||
|
return request.get({ url: "/setting.web.web_setting/getWebsite" });
|
||||||
|
}
|
||||||
|
// 设置网站信息
|
||||||
|
export function setWebsite(params: any) {
|
||||||
|
return request.post({ url: "/setting.web.web_setting/setWebsite", params });
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取政策协议
|
||||||
|
export function getProtocol() {
|
||||||
|
return request.get({ url: "/setting.web.web_setting/getAgreement" });
|
||||||
|
}
|
||||||
|
// 设置政策协议
|
||||||
|
export function setProtocol(params: any) {
|
||||||
|
return request.post({
|
||||||
|
url: "/setting.web.web_setting/setAgreement",
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取客户端设置
|
||||||
|
export function getClient() {
|
||||||
|
return request.get({ url: "/setting.web.web_setting/getClient" });
|
||||||
|
}
|
||||||
|
// 设置客户端设置
|
||||||
|
export function setClient(params: any) {
|
||||||
|
return request.post({
|
||||||
|
url: "/setting.web.web_setting/setClient",
|
||||||
|
params,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 代码生成已选数据表列表接口
|
||||||
|
export function generateTable(params: any) {
|
||||||
|
return request.get({ url: '/tools.generator/generateTable', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 数据表列表接口
|
||||||
|
export function dataTable(params: any) {
|
||||||
|
return request.get({ url: '/tools.generator/dataTable', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//选择要生成代码的数据表
|
||||||
|
export function selectTable(params: any) {
|
||||||
|
return request.post({ url: '/tools.generator/selectTable', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 已选择的数据表详情
|
||||||
|
export function tableDetail(params: any) {
|
||||||
|
return request.get({ url: '/tools.generator/detail', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//同步字段
|
||||||
|
export function syncColumn(params: any) {
|
||||||
|
return request.post({ url: '/tools.generator/syncColumn', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//删除已选择的数据表
|
||||||
|
export function generateDelete(params: any) {
|
||||||
|
return request.post({ url: '/tools.generator/delete', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//编辑已选表字段
|
||||||
|
export function generateEdit(params: any) {
|
||||||
|
return request.post({ url: '/tools.generator/edit', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//预览代码
|
||||||
|
export function generatePreview(params: any) {
|
||||||
|
return request.post({ url: '/tools.generator/preview', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//生成代码
|
||||||
|
export function generateCode(params: any) {
|
||||||
|
return request.post({ url: '/tools.generator/generate', params })
|
||||||
|
}
|
||||||
|
|
||||||
|
//获取模型
|
||||||
|
export function getModels() {
|
||||||
|
return request.get({ url: '/tools.generator/getModels' })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
import config from '@/config'
|
||||||
|
import request from '@/utils/request'
|
||||||
|
|
||||||
|
// 登录
|
||||||
|
export function login(params: Record<string, any>) {
|
||||||
|
return request.post({ url: '/login/account', params: { ...params, terminal: config.terminal } })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 退出登录
|
||||||
|
export function logout() {
|
||||||
|
return request.post({ url: '/login/logout' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 用户信息
|
||||||
|
export function getUserInfo() {
|
||||||
|
return request.get({ url: '/auth.admin/mySelf' })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 编辑管理员信息
|
||||||
|
export function setUserInfo(params: any) {
|
||||||
|
return request.post({ url: '/auth.admin/editSelf', params })
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M502.869333 201.408a32.853333 32.853333 0 0 1 0 45.44L276.906667 480h544.384a32 32 0 0 1 0 64H276.885333l225.984 233.130667a32.853333 32.853333 0 0 1 0 45.44 30.485333 30.485333 0 0 1-44.053333 0L179.776 534.741333a32.128 32.128 0 0 1-6.848-10.688 32.213333 32.213333 0 0 1-0.085333-23.808l0.106666-0.32c1.514667-3.861333 3.797333-7.488 6.826667-10.624L458.837333 201.386667a30.485333 30.485333 0 0 1 44.053334 0z" /></svg>
|
||||||
|
After Width: | Height: | Size: 689 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M853.333333 170.666667a85.333333 85.333333 0 0 1 85.333334 85.333333v426.666667a85.333333 85.333333 0 0 1-85.333334 85.333333H576v42.666667h74.666667a32 32 0 0 1 0 64h-277.333334a32 32 0 0 1 0-64H448v-42.666667H170.666667a85.333333 85.333333 0 0 1-85.333334-85.333333V256a85.333333 85.333333 0 0 1 85.333334-85.333333h682.666666z m-127.957333 213.333333c-37.056 0.277333-77.824 17.258667-77.824 58.666667 0 45.12 37.909333 56.042667 78.976 60.928 26.709333 2.88 46.506667 10.666667 46.506667 29.632 0 21.845333-22.4 30.186667-46.229334 30.186666-24.405333 0-47.658667-9.792-56.576-31.914666l-31.573333 16.384c14.933333 36.8 46.506667 49.450667 87.573333 49.450666 44.8 0 84.437333-19.264 84.437334-64.106666 0-46.506667-36.650667-58.24-77.056-63.616l-3.925334-0.512c-24.106667-2.88-44.8-7.765333-44.8-25.301334 0-14.933333 13.504-26.730667 41.642667-26.730666 21.824 0 40.768 10.922667 47.658667 22.421333l30.165333-15.530667C789.12 392.917333 756.672 384 725.376 384z m-280 7.189333H401.706667v201.258667h37.909333v-146.346667l64.042667 87.68h7.466666l65.472-87.381333v146.048h37.909334v-201.258667h-43.370667l-62.890667 86.549334-62.890666-86.549334z m-194.133333-0.298666H213.333333v201.258666h37.909334V503.04l84.138666 89.109333h46.805334v-2.282666l-96.768-101.504 89.301333-96.32v-1.152h-47.082667l-76.394666 85.12v-85.12z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M385.6 371.242667c12.16 113.578667 92.906667 206.634667 200 236.949333l1.664 0.448-2.453333 2.005333-317.888 237.418667c-12.16 9.066667-28.8 8.533333-40.32-0.917333l-2.410667-2.154667-28.928-28.885333c0.213333 1.898667 0.490667 3.797333 0.810667 5.717333 6.186667 35.754667 31.338667 57.962667 79.808 49.322667 26.986667-4.821333 44.117333-11.242667 63.509333-22.464l6.336-3.776 11.541333-7.168 5.397334-3.285334c35.562667-21.248 64.96-29.909333 117.973333-30.442666 69.909333-0.704 129.088 21.056 175.701333 65.173333a32.853333 32.853333 0 0 1 1.28 46.4 32.746667 32.746667 0 0 1-46.293333 1.28c-33.898667-32.042667-76.608-47.744-130.026667-47.210667-40.597333 0.426667-59.029333 5.632-84.864 21.056l-17.642666 10.88c-28.266667 17.216-53.461333 27.413333-91.413334 34.176-87.808 15.658667-144-33.92-155.882666-102.741333a151.765333 151.765333 0 0 1 4.522666-72.042667l1.066667-2.965333-20.778667-20.736a32.853333 32.853333 0 0 1-3.968-41.706667l2.048-2.688 268.437334-318.72c0.874667-1.045333 1.813333-2.005333 2.773333-2.922666z m4.181333 169.344l-2.474666 2.24-46.357334 46.421333-2.24 2.496a32.853333 32.853333 0 0 0 2.24 43.925333 32.746667 32.746667 0 0 0 43.861334 2.24l2.496-2.24 46.336-46.421333 2.261333-2.496a32.853333 32.853333 0 0 0-2.261333-43.925333 32.746667 32.746667 0 0 0-43.861334-2.24zM661.333333 85.333333c141.376 0 256 114.624 256 256s-114.624 256-256 256-256-114.624-256-256S519.957333 85.333333 661.333333 85.333333z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.7 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M579.2 874.666667a21.333333 21.333333 0 0 1 14.421333 37.056C574.037333 929.685333 546.837333 938.666667 512 938.666667s-62.037333-8.981333-81.621333-26.944A21.333333 21.333333 0 0 1 444.821333 874.666667h134.357334z m28.8-85.333334a32 32 0 0 1 0 64h-192a32 32 0 0 1 0-64h192zM512 85.333333c176.725333 0 320 143.274667 320 320 0 114.090667-59.733333 214.250667-149.610667 270.912A85.333333 85.333333 0 0 1 597.333333 768h-170.666666a85.333333 85.333333 0 0 1-85.098667-91.776C251.733333 619.584 192 519.424 192 405.333333c0-176.725333 143.274667-320 320-320z m29.098667 106.666667a29.098667 29.098667 0 1 0 0 58.176 126.08 126.08 0 0 1 126.058666 126.08 29.098667 29.098667 0 1 0 58.176 0A184.234667 184.234667 0 0 0 541.098667 192z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1008 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M486.570667 97.216a33.130667 33.130667 0 0 1 51.264 0.512c34.709333 43.328 152.064 98.261333 307.776 117.034667 16.576 2.005333 29.056 16 29.056 32.64v372.629333a167.04 167.04 0 0 1-20.096 79.402667C761.813333 871.146667 633.770667 938.666667 511.530667 938.666667l-6.528-0.106667c-118.954667-3.413333-244.586667-70.741333-335.573334-239.125333a167.808 167.808 0 0 1-19.925333-71.914667L149.333333 620.032V247.402667c0-16.64 12.48-30.634667 29.056-32.64 152.426667-18.368 269.077333-72.277333 305.237334-114.005334z m25.408 67.178667l-1.792 1.450666c-52.693333 41.813333-163.456 91.882667-290.389334 109.802667l-4.416 0.597333v342.976l0.149334 5.866667c0.746667 15.104 4.864 29.866667 12.074666 43.221333 80.96 149.845333 188.714667 201.962667 278.826667 204.544l5.568 0.085334c92.522667 0 201.92-51.989333 284.373333-204.629334a101.546667 101.546667 0 0 0 12.224-48.277333V276.245333l-16.277333-2.325333c-120.938667-18.048-227.904-67.690667-278.954667-108.416l-1.386666-1.109333z m161.194666 250.517333a32.853333 32.853333 0 0 1 0 46.186667l-187.306666 190.656a32.256 32.256 0 0 1-45.845334 0l-89.173333-91.157334a32.853333 32.853333 0 0 1 0-46.208 32.256 32.256 0 0 1 45.845333 0l51.029334 52.416a21.333333 21.333333 0 0 0 30.165333 0.426667l0.341333-0.362667 149.077334-151.957333a32.256 32.256 0 0 1 45.866666 0z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M486.570667 97.216a33.130667 33.130667 0 0 1 51.264 0.512c34.709333 43.328 152.064 98.261333 307.776 117.034667 16.576 2.005333 29.056 16 29.056 32.64v372.629333a167.04 167.04 0 0 1-20.096 79.402667C761.813333 871.146667 633.770667 938.666667 511.530667 938.666667l-6.528-0.106667c-118.954667-3.413333-244.586667-70.741333-335.573334-239.125333a167.808 167.808 0 0 1-19.925333-71.914667L149.333333 620.032V247.402667c0-16.64 12.48-30.634667 29.056-32.64 152.426667-18.368 269.077333-72.277333 305.237334-114.005334z m186.602666 317.696a32.256 32.256 0 0 0-45.866666 0l-149.077334 151.957333-0.341333 0.341334a21.333333 21.333333 0 0 1-30.165333-0.405334l-51.029334-52.416a32.256 32.256 0 0 0-45.866666 0 32.853333 32.853333 0 0 0 0 46.208l89.194666 91.157334a32.256 32.256 0 0 0 45.866667 0l187.285333-190.656a32.853333 32.853333 0 0 0 0-46.186667z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M486.570667 97.216a33.130667 33.130667 0 0 1 51.264 0.512c34.709333 43.328 152.064 98.261333 307.776 117.034667 16.576 2.005333 29.056 16 29.056 32.64v372.629333a167.04 167.04 0 0 1-20.096 79.402667C761.813333 871.146667 633.770667 938.666667 511.530667 938.666667l-6.528-0.106667c-118.954667-3.413333-244.586667-70.741333-335.573334-239.125333a167.808 167.808 0 0 1-19.925333-71.914667L149.333333 620.032V247.402667c0-16.64 12.48-30.634667 29.056-32.64 152.426667-18.368 269.077333-72.277333 305.237334-114.005334z m186.602666 317.696a32.256 32.256 0 0 0-45.866666 0l-149.077334 151.957333-0.341333 0.341334a21.333333 21.333333 0 0 1-30.165333-0.405334l-51.029334-52.416a32.256 32.256 0 0 0-45.866666 0 32.853333 32.853333 0 0 0 0 46.208l89.194666 91.157334a32.256 32.256 0 0 0 45.866667 0l187.285333-190.656a32.853333 32.853333 0 0 0 0-46.186667z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
|
|
@ -0,0 +1,6 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40">
|
||||||
|
<g id="icon_APP" transform="translate(-190 -277)">
|
||||||
|
<rect id="矩形_4" data-name="矩形 4" width="40" height="40" transform="translate(190 277)" opacity="0"/>
|
||||||
|
<path id="manage01" d="M123.69,93.162H112.563a3.134,3.134,0,0,1-3.144-3.144V78.891a3.166,3.166,0,0,1,3.144-3.144H123.69a3.134,3.134,0,0,1,3.144,3.144V90.018a3.134,3.134,0,0,1-3.144,3.144Zm0,20.9H112.563a3.134,3.134,0,0,1-3.144-3.144V99.794a3.134,3.134,0,0,1,3.144-3.144H123.69a3.134,3.134,0,0,1,3.144,3.144v11.127a3.15,3.15,0,0,1-3.144,3.144Zm20.9,0H133.466a3.134,3.134,0,0,1-3.144-3.144V99.794a3.134,3.134,0,0,1,3.144-3.144h11.127a3.134,3.134,0,0,1,3.144,3.144v11.127A3.166,3.166,0,0,1,144.593,114.065ZM148.5,82.256l-7.27-7.27a3.143,3.143,0,0,0-4.446,0l-7.27,7.27a3.143,3.143,0,0,0,0,4.446l7.27,7.271a3.143,3.143,0,0,0,4.446,0L148.5,86.7A3.143,3.143,0,0,0,148.5,82.256Zm-8.842,8.351a.92.92,0,0,1-1.277,0l-5.5-5.5a.92.92,0,0,1,0-1.277l5.5-5.5a.92.92,0,0,1,1.277,0l5.5,5.5a.92.92,0,0,1,0,1.277Z" transform="translate(80.581 202.935)" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 107.136v707.093333l-221.248 99.434667a32 32 0 0 1-44.586667-34.986667l41.834667-227.413333-182.826667-195.84a32 32 0 0 1 18.474667-53.461333l228.586667-35.733334 141.226666-248.298666A21.333333 21.333333 0 0 1 512 107.136z" /></svg>
|
||||||
|
After Width: | Height: | Size: 503 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M486.570667 97.216a33.130667 33.130667 0 0 1 51.264 0.512c34.709333 43.328 152.064 98.261333 307.776 117.034667 16.576 2.005333 29.056 16 29.056 32.64v372.629333a167.04 167.04 0 0 1-20.096 79.402667C761.813333 871.146667 633.770667 938.666667 511.530667 938.666667l-6.528-0.106667c-118.954667-3.413333-244.586667-70.741333-335.573334-239.125333a167.808 167.808 0 0 1-19.925333-71.914667L149.333333 620.032V247.402667c0-16.64 12.48-30.634667 29.056-32.64 152.426667-18.368 269.077333-72.277333 305.237334-114.005334z m-10.026667 256.213333h-122.090667v346.026667h38.442667V389.845333h45.205333c-9.045333 30.997333-21.845333 65.493333-38.058666 104.234667 24.490667 32.170667 36.906667 61.226667 36.906666 87.189333 0 6.186667-1.493333 10.453333-4.117333 12.8-3.029333 2.304-9.045333 3.861333-17.706667 4.629334-5.290667 0-12.053333-0.768-20.352-2.325334l12.437334 40.32c26.752-0.405333 45.589333-5.44 56.874666-15.509333 7.552-8.149333 11.306667-21.333333 11.306667-39.914667-2.261333-26.346667-14.293333-57.344-36.906667-93.397333a1520.768 1520.768 0 0 0 38.037334-104.234667v-30.208z m155.946667 148.8c-11.306667 58.112-24.106667 107.306667-39.168 147.626667h-132.608v38.741333h226.773333v-38.741333h-55.744c15.445333-40.32 28.629333-85.632 39.189333-136.789333l-38.442666-10.837334z m-121.685334 11.221334l-33.514666 11.626666c12.8 34.88 23.722667 71.68 32 110.058667l33.92-8.533333c-9.813333-42.624-20.352-80.213333-32.405334-113.152z m59.904-13.952l-33.514666 11.626666c11.306667 33.706667 20.330667 68.970667 27.861333 106.176l33.536-8.917333c-8.277333-41.066667-17.322667-77.098667-27.882667-108.885333z m21.12-158.869334h-34.688c-23.338667 51.541333-57.258667 93.397333-101.333333 125.930667l19.968 31.786667c13.568-9.685333 26.752-20.928 39.189333-33.322667v20.522667h120.533334v-19.370667a338.133333 338.133333 0 0 0 38.826666 32.554667l21.461334-33.706667c-49.344-35.648-84.010667-77.12-103.978667-124.373333z m-17.344 39.530667a279.530667 279.530667 0 0 0 44.821334 68.970667h-90.026667a370.410667 370.410667 0 0 0 45.205333-68.970667z" /></svg>
|
||||||
|
After Width: | Height: | Size: 2.3 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M789.333333 486.250667V746.666667c0 58.901333-124.16 106.666667-277.333333 106.666666-150.570667 0-273.109333-46.144-277.226667-103.68L234.666667 746.666667V486.250667l260.053333 115.285333a42.666667 42.666667 0 0 0 30.848 1.450667l3.733333-1.450667L789.333333 486.250667zM529.28 166.464l398.592 176.704a21.333333 21.333333 0 0 1 0 38.997333L874.666667 405.76 874.666667 603.093333A42.666667 42.666667 0 1 1 832 603.029333v-178.410666l-302.72 134.229333a42.666667 42.666667 0 0 1-34.56 0L96.106667 382.165333a21.333333 21.333333 0 0 1 0-38.997333l398.570666-176.704a42.666667 42.666667 0 0 1 34.602667 0z" /></svg>
|
||||||
|
After Width: | Height: | Size: 880 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M864 832a32 32 0 0 1 0 64h-704a32 32 0 0 1 0-64h704zM710.613333 152.533333l3.541334 3.413334 89.92 89.898666a95.36 95.36 0 0 1 3.370666 131.285334l-3.370666 3.562666-332.309334 332.309334c-9.386667 9.386667-21.077333 16.042667-33.856 19.349333l-4.842666 1.088-178.261334 33.642667a52.970667 52.970667 0 0 1-62.464-57.984l0.576-3.904L226.56 526.933333c2.453333-13.013333 8.362667-25.130667 17.045333-35.072l3.392-3.626666L579.306667 155.946667a95.36 95.36 0 0 1 131.285333-3.370667z m-83.946666 46.165334l-2.410667 2.176-332.309333 332.309333a10.602667 10.602667 0 0 0-2.517334 3.989333l-0.405333 1.536-30.741333 162.986667 119.978666-22.634667-51.968-51.968a31.786667 31.786667 0 1 1 44.949334-44.949333l70.72 70.72 317.141333-317.12a31.786667 31.786667 0 0 0 2.197333-42.538667l-2.197333-2.410666-89.898667-89.92a31.786667 31.786667 0 0 0-42.538666-2.176z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 85.333333c235.648 0 426.666667 191.018667 426.666667 426.666667s-191.018667 426.666667-426.666667 426.666667S85.333333 747.648 85.333333 512 276.352 85.333333 512 85.333333z m0 64C311.701333 149.333333 149.333333 311.701333 149.333333 512s162.368 362.666667 362.666667 362.666667 362.666667-162.368 362.666667-362.666667S712.298667 149.333333 512 149.333333z m-145.173333 471.338667A180.970667 180.970667 0 0 0 512 693.333333a180.650667 180.650667 0 0 0 128.746667-53.653333c5.888-5.930667 11.370667-12.266667 16.384-18.944a32 32 0 0 1 51.2 38.421333c-6.784 9.024-14.186667 17.578667-22.122667 25.6A244.629333 244.629333 0 0 1 512 757.333333c-78.208 0-150.357333-36.906667-196.373333-98.261333a32 32 0 1 1 51.2-38.4zM341.333333 384a42.666667 42.666667 0 1 1 0 85.333333 42.666667 42.666667 0 0 1 0-85.333333z m341.333334 0a42.666667 42.666667 0 1 1 0 85.333333 42.666667 42.666667 0 0 1 0-85.333333z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.2 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512.042667 213.333333c82.752 0 161.088 24.106667 234.88 71.786667l53.525333-53.482667a32 32 0 1 1 45.248 45.248L287.573333 835.029333a32 32 0 1 1-45.248-45.248l44.693334-44.714666c-62.72-38.528-122.154667-93.909333-178.261334-165.802667a108.522667 108.522667 0 0 1-3.093333-130.56l3.136-4.202667 6.805333-8.64C233.045333 288.533333 365.546667 213.333333 512.042667 213.333333z m334.506666 153.216a842.88 842.88 0 0 1 68.693334 78.08 108.522667 108.522667 0 0 1 3.029333 130.688l-3.136 4.202667-6.826667 8.64C790.570667 735.466667 658.133333 810.666667 512.042667 810.666667a410.88 410.88 0 0 1-97.898667-11.733334l53.013333-52.970666a344.32 344.32 0 0 0 44.885334 2.901333c120.896 0 233.088-62.229333 337.408-189.482667l6.784-8.405333 6.613333-8.341333a49.344 49.344 0 0 0 0-61.226667 787.370667 787.370667 0 0 0-61.205333-69.973333l44.906666-44.885334z m-334.506666-91.413333c-121.28 0-233.493333 62.229333-337.557334 189.44l-6.784 8.405333-6.570666 8.341334a49.344 49.344 0 0 0 0.042666 61.205333c54.954667 70.442667 112.106667 122.581333 171.562667 156.8l92.864-92.885333a128 128 0 1 1 180.842667-180.842667l94.976-94.933333c-60.650667-37.184-123.733333-55.530667-189.376-55.530667zM512 443.072a68.906667 68.906667 0 0 0-44.522667 121.536l97.130667-97.130667A68.778667 68.778667 0 0 0 512 443.072z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M384 554.666667a85.333333 85.333333 0 0 1 85.333333 85.333333v170.666667a85.333333 85.333333 0 0 1-85.333333 85.333333h-170.666667a85.333333 85.333333 0 0 1-85.333333-85.333333v-170.666667a85.333333 85.333333 0 0 1 85.333333-85.333333h170.666667z m245.333333 213.333333a32 32 0 0 1 32 32v42.666667a32 32 0 0 1-64 0v-42.666667a32 32 0 0 1 32-32z m192-21.333333a32 32 0 0 1 32 32v64a32 32 0 0 1-64 0v-64a32 32 0 0 1 32-32zM384 618.666667h-170.666667a21.333333 21.333333 0 0 0-21.184 18.837333L192 640v170.666667a21.333333 21.333333 0 0 0 18.837333 21.184L213.333333 832h170.666667a21.333333 21.333333 0 0 0 21.184-18.837333L405.333333 810.666667v-170.666667a21.333333 21.333333 0 0 0-18.837333-21.184L384 618.666667z m245.333333-42.666667a32 32 0 0 1 32 32v85.333333a32 32 0 0 1-64 0v-85.333333a32 32 0 0 1 32-32z m192 0a32 32 0 0 1 32 32v64a32 32 0 0 1-64 0v-64a32 32 0 0 1 32-32zM384 128a85.333333 85.333333 0 0 1 85.333333 85.333333v170.666667a85.333333 85.333333 0 0 1-85.333333 85.333333h-170.666667a85.333333 85.333333 0 0 1-85.333333-85.333333v-170.666667a85.333333 85.333333 0 0 1 85.333333-85.333333h170.666667z m426.666667 0a85.333333 85.333333 0 0 1 85.333333 85.333333v170.666667a85.333333 85.333333 0 0 1-85.333333 85.333333h-170.666667a85.333333 85.333333 0 0 1-85.333333-85.333333v-170.666667a85.333333 85.333333 0 0 1 85.333333-85.333333h170.666667zM384 192h-170.666667a21.333333 21.333333 0 0 0-21.184 18.837333L192 213.333333v170.666667a21.333333 21.333333 0 0 0 18.837333 21.184L213.333333 405.333333h170.666667a21.333333 21.333333 0 0 0 21.184-18.837333L405.333333 384v-170.666667a21.333333 21.333333 0 0 0-18.837333-21.184L384 192z m426.666667 0h-170.666667a21.333333 21.333333 0 0 0-21.184 18.837333L618.666667 213.333333v170.666667a21.333333 21.333333 0 0 0 18.837333 21.184L640 405.333333h170.666667a21.333333 21.333333 0 0 0 21.184-18.837333L832 384v-170.666667a21.333333 21.333333 0 0 0-18.837333-21.184L810.666667 192z" /></svg>
|
||||||
|
After Width: | Height: | Size: 2.2 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64z m265.9 713.9a377.2 377.2 0 0 1-119.6 80.6 377.5 377.5 0 0 1-292.6 0 377.1 377.1 0 0 1-200.2-200.2 377.5 377.5 0 0 1 0-292.6 377.1 377.1 0 0 1 200.2-200.2 377.5 377.5 0 0 1 292.6 0 377.1 377.1 0 0 1 200.2 200.2 377.5 377.5 0 0 1 0 292.6 377.2 377.2 0 0 1-80.6 119.6zM651.3 258.8a3.9 3.9 0 0 0-5.6 0L512 392.5 378.3 258.8a3.9 3.9 0 0 0-5.6 0l-39.6 39.6a3.9 3.9 0 0 0 0 5.6l102.3 102.4H376a4 4 0 0 0-4 4v56a4 4 0 0 0 4 4h104v80H376a4 4 0 0 0-4 4v56a4 4 0 0 0 4 4h104v148a4 4 0 0 0 4 4h56a4 4 0 0 0 4-4v-148h104a4 4 0 0 0 4-4v-56a4 4 0 0 0-4-4H544v-80h104a4 4 0 0 0 4-4v-56a4 4 0 0 0-4-4h-59.4L690.9 304a3.9 3.9 0 0 0 0-5.6z" /></svg>
|
||||||
|
After Width: | Height: | Size: 981 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M511 64C263.6 64 63 264.6 63 512s200.6 448 448 448 448-200.6 448-448S758.4 64 511 64z m265.9 713.9a377.2 377.2 0 0 1-119.6 80.6 377.5 377.5 0 0 1-292.6 0 377.1 377.1 0 0 1-200.2-200.2 377.5 377.5 0 0 1 0-292.6 377.1 377.1 0 0 1 200.2-200.2 377.5 377.5 0 0 1 292.6 0 377.1 377.1 0 0 1 200.2 200.2 377.5 377.5 0 0 1 0 292.6 377.2 377.2 0 0 1-80.6 119.6zM513.8 288.6a3.9 3.9 0 0 0-5.6 0L287.6 509.2a3.9 3.9 0 0 0 0 5.6l220.6 220.6a3.9 3.9 0 0 0 5.6 0l220.6-220.6a3.9 3.9 0 0 0 0-5.6zM511 636.5L386.5 512 511 387.5 635.5 512z" /></svg>
|
||||||
|
After Width: | Height: | Size: 796 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M285.8 406.9l137.3 83.7a7.7 7.7 0 0 0 11.8-6.6v-51.7h175a68.1 68.1 0 0 1 67.9 64.1 4.1 4.1 0 0 0 4 3.9h56.1a4.1 4.1 0 0 0 4-4.2c-2.2-70.8-60.6-127.8-132-127.8h-175v-51.8a7.7 7.7 0 0 0-11.8-6.6l-137.3 83.7a7.8 7.8 0 0 0 0 13.3z m452.4 210.2l-137.3-83.7a7.7 7.7 0 0 0-11.8 6.6v51.7h-175a68.1 68.1 0 0 1-67.9-64.1 4.1 4.1 0 0 0-4-3.9h-56.1a4.1 4.1 0 0 0-4 4.2c2.2 70.8 60.6 127.8 132 127.8h175v51.8a7.7 7.7 0 0 0 11.8 6.6l137.3-83.7a7.8 7.8 0 0 0 0-13.3zM856 128H168a40 40 0 0 0-40 40v688a40 40 0 0 0 40 40h688a40 40 0 0 0 40-40V168a40 40 0 0 0-40-40z m-32 696H200V200h624z" /></svg>
|
||||||
|
After Width: | Height: | Size: 845 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M512 106.666667c103.68 0 192.96 61.632 233.194667 150.250666C853.717333 266.944 938.666667 358.186667 938.666667 469.333333c0 95.509333-62.762667 176.362667-149.333334 203.562667V832a85.333333 85.333333 0 0 1-85.333333 85.333333H320a85.333333 85.333333 0 0 1-85.333333-85.333333v-180.437333C148.117333 624.384 85.333333 543.530667 85.333333 448c0-114.986667 90.944-208.704 204.8-213.162667A255.893333 255.893333 0 0 1 512 106.666667z m-104.725333 583.893333a25.557333 25.557333 0 0 0-36.949334 0 27.605333 27.605333 0 0 0 0 38.186667c78.250667 80.789333 205.098667 80.789333 283.349334 0a27.605333 27.605333 0 0 0 0-38.186667 25.557333 25.557333 0 0 0-36.949334 0 144.810667 144.810667 0 0 1-209.450666 0z" /></svg>
|
||||||
|
After Width: | Height: | Size: 981 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32z m-40 656H184V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v584zM688 420h-55.2c-5.1 0-10 2.5-13 6.6L468.9 634.4l-64.7-89c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174c6.4 8.8 19.6 8.8 26 0l212.6-292.7c3.8-5.4 0-12.8-6.5-12.8z" /></svg>
|
||||||
|
After Width: | Height: | Size: 775 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M332.202667 347.136c12.16 12.373333 12.16 32.426667 0 44.821333-12.16 12.373333-31.893333 12.373333-44.053334 0l-151.04-115.584a32.085333 32.085333 0 0 1 0-44.842666l151.04-115.584c12.16-12.373333 31.893333-12.373333 44.053334 0 12.16 12.373333 12.16 32.448 0 44.842666l-85.290667 61.589334H565.333333c182.613333 0 330.666667 146.026667 330.666667 326.144 0 177.92-144.426667 322.538667-323.925333 326.08L565.333333 874.666667h-213.333333a31.786667 31.786667 0 0 1-32-31.573334c0-16.384 12.693333-29.866667 28.928-31.402666l3.072-0.149334h213.333333c147.285333 0 266.666667-117.76 266.666667-263.018666 0-143.082667-115.84-259.477333-260.096-262.933334l-6.570667-0.064-318.442666-0.021333 85.333333 61.632z" /></svg>
|
||||||
|
After Width: | Height: | Size: 982 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M853.333333 338.944V537.6c-32-16.362667-68.266667-25.6-106.666666-25.6-129.6 0-234.666667 105.066667-234.666667 234.666667 0 79.381333 39.424 149.546667 99.754667 192.021333L256 938.666667a85.333333 85.333333 0 0 1-85.333333-85.333334V338.965333a510.229333 510.229333 0 0 0 257.216 123.498667 85.312 85.312 0 0 0 168.192 0 510.165333 510.165333 0 0 0 257.28-123.52zM768 85.333333a85.333333 85.333333 0 0 1 85.333333 85.333334l0.021334 108.778666a468.437333 468.437333 0 0 1-260.842667 140.330667 85.354667 85.354667 0 0 0-161.088 0 468.373333 468.373333 0 0 1-260.778667-140.330667L170.666667 170.666667a85.333333 85.333333 0 0 1 85.333333-85.333334h512z m-21.354667 469.333334a191.957333 191.957333 0 0 1 168.597334 100.053333L746.666667 746.666667l135.765333 135.744A192 192 0 1 1 746.645333 554.666667z m32 106.666666a32 32 0 1 0 0-64 32 32 0 0 0 0 64z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M103.082667 632.704c1.493333 1.130667 3.093333 2.176 4.778666 3.136l2.56 1.344L490.666667 822.421333a49.066667 49.066667 0 0 0 38.976 1.621334l3.690666-1.621334 380.224-185.237333c2.624-1.28 5.077333-2.773333 7.36-4.458667 17.216 12.650667 22.954667 35.477333 12.544 54.4a45.162667 45.162667 0 0 1-19.904 18.752L533.333333 891.093333a49.024 49.024 0 0 1-42.666666 0L110.442667 705.877333c-22.784-11.093333-31.701333-37.482667-19.904-58.922666 3.072-5.546667 7.338667-10.410667 12.544-14.250667z m0-153.6c1.493333 1.130667 3.093333 2.176 4.778666 3.136l2.56 1.344L490.666667 668.821333a49.066667 49.066667 0 0 0 38.976 1.621334l3.690666-1.621334 380.224-185.237333c2.624-1.28 5.077333-2.773333 7.36-4.458667 17.216 12.650667 22.954667 35.477333 12.544 54.4a45.162667 45.162667 0 0 1-19.904 18.752L533.333333 737.493333a49.024 49.024 0 0 1-42.666666 0L110.442667 552.277333c-22.784-11.093333-31.701333-37.482667-19.904-58.922666 3.072-5.546667 7.338667-10.410667 12.544-14.250667zM533.333333 132.970667l380.224 187.968c22.784 11.264 31.701333 38.037333 19.904 59.776a45.44 45.44 0 0 1-19.904 19.008L533.333333 587.733333c-13.376 6.613333-29.290667 6.613333-42.666666 0L110.442667 399.722667c-22.784-11.264-31.701333-38.016-19.904-59.776a45.44 45.44 0 0 1 19.904-18.986667L490.666667 132.949333a48.362667 48.362667 0 0 1 42.666666 0z" /></svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="32px" height="32.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path d="M853.333333 725.034667v64H170.666667v-64h682.666666z m-149.333333-309.333334l149.333333 106.666667-149.333333 106.666667v-213.333334z m-85.333333 74.666667v64H170.666667v-64h448zM853.333333 256v64H170.666667v-64h682.666666z" /></svg>
|
||||||
|
After Width: | Height: | Size: 498 B |
|
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M11 5.07089C7.93431 5.5094 5.5094 7.93431 5.07089 11H7V13H5.07089C5.5094 16.0657 7.93431 18.4906 11 18.9291V17H13V18.9291C16.0657 18.4906 18.4906 16.0657 18.9291 13H17V11H18.9291C18.4906 7.93431 16.0657 5.5094 13 5.07089V7H11V5.07089ZM3.05493 11C3.51608 6.82838 6.82838 3.51608 11 3.05493V1H13V3.05493C17.1716 3.51608 20.4839 6.82838 20.9451 11H23V13H20.9451C20.4839 17.1716 17.1716 20.4839 13 20.9451V23H11V20.9451C6.82838 20.4839 3.51608 17.1716 3.05493 13H1V11H3.05493ZM14 12C14 13.1046 13.1046 14 12 14C10.8954 14 10 13.1046 10 12C10 10.8954 10.8954 10 12 10C13.1046 10 14 10.8954 14 12Z"></path></svg>
|
||||||
|
After Width: | Height: | Size: 695 B |