Merge remote-tracking branch 'yudao/master'

This commit is contained in:
puhui999 2023-03-07 10:12:34 +08:00
commit 211298c55a
13 changed files with 63 additions and 42 deletions

View File

@ -36,16 +36,16 @@
| 框架 | 说明 | 版本 | | 框架 | 说明 | 版本 |
|----------------------------------------------------------------------|------------------|--------| |----------------------------------------------------------------------|------------------|--------|
| [Vue](https://staging-cn.vuejs.org/) | Vue 框架 | 3.2.47 | | [Vue](https://staging-cn.vuejs.org/) | Vue 框架 | 3.2.47 |
| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 4.1.1 | | [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 4.1.4 |
| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.30 | | [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.34 |
| [TypeScript](https://www.typescriptlang.org/docs/) | JavaScript 的超集 | 4.9.5 | | [TypeScript](https://www.typescriptlang.org/docs/) | JavaScript 的超集 | 4.9.5 |
| [pinia](https://pinia.vuejs.org/) | Vue 存储库 替代 vuex5 | 2.0.30 | | [pinia](https://pinia.vuejs.org/) | Vue 存储库 替代 vuex5 | 2.0.33 |
| [vueuse](https://vueuse.org/) | 常用工具集 | 9.12.0 | | [vueuse](https://vueuse.org/) | 常用工具集 | 9.13.0 |
| [vxe-table](https://vxetable.cn/) | Vue 最强表单 | 4.3.10 | | [vxe-table](https://vxetable.cn/) | Vue 最强表单 | 4.3.10 |
| [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 9.2.2 | | [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 9.2.2 |
| [vue-router](https://router.vuejs.org/) | Vue 路由 | 4.1.6 | | [vue-router](https://router.vuejs.org/) | Vue 路由 | 4.1.6 |
| [windicss](https://cn.windicss.org/) | 下一代工具优先的 CSS 框架 | 3.5.6 | | [windicss](https://cn.windicss.org/) | 下一代工具优先的 CSS 框架 | 3.5.6 |
| [iconify](https://icon-sets.iconify.design/) | 在线图标库 | 3.0.1 | | [iconify](https://icon-sets.iconify.design/) | 在线图标库 | 3.1.0 |
| [wangeditor](https://www.wangeditor.com/) | 富文本编辑器 | 5.1.23 | | [wangeditor](https://www.wangeditor.com/) | 富文本编辑器 | 5.1.23 |
## 开发工具 ## 开发工具

View File

@ -27,7 +27,7 @@ export function createVitePlugins(VITE_APP_TITLE: string) {
progress(), progress(),
PurgeIcons(), PurgeIcons(),
vueSetupExtend(), vueSetupExtend(),
ElementPlus(), ElementPlus({}),
AutoImport({ AutoImport({
include: [ include: [
/\.[tj]sx?$/, // .ts, .tsx, .js, .jsx /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx

View File

@ -1,6 +1,6 @@
{ {
"name": "yudao-ui-admin-vue3", "name": "yudao-ui-admin-vue3",
"version": "1.7.0-snapshot.1922", "version": "1.7.1-snapshot.1941",
"description": "基于vue3、vite4、element-plus、typesScript", "description": "基于vue3、vite4、element-plus、typesScript",
"author": "xingyu", "author": "xingyu",
"private": false, "private": false,
@ -29,12 +29,12 @@
"@form-create/designer": "^3.1.0", "@form-create/designer": "^3.1.0",
"@form-create/element-ui": "^3.1.17", "@form-create/element-ui": "^3.1.17",
"@iconify/iconify": "^3.1.0", "@iconify/iconify": "^3.1.0",
"@vueuse/core": "^9.12.0", "@vueuse/core": "^9.13.0",
"@wangeditor/editor": "^5.1.23", "@wangeditor/editor": "^5.1.23",
"@wangeditor/editor-for-vue": "^5.1.10", "@wangeditor/editor-for-vue": "^5.1.10",
"@zxcvbn-ts/core": "^2.2.1", "@zxcvbn-ts/core": "^2.2.1",
"animate.css": "^4.1.1", "animate.css": "^4.1.1",
"axios": "^1.3.3", "axios": "^1.3.4",
"bpmn-js-token-simulation": "^0.10.0", "bpmn-js-token-simulation": "^0.10.0",
"camunda-bpmn-moddle": "^7.0.1", "camunda-bpmn-moddle": "^7.0.1",
"cropperjs": "^1.5.13", "cropperjs": "^1.5.13",
@ -43,18 +43,18 @@
"diagram-js": "^11.6.0", "diagram-js": "^11.6.0",
"echarts": "^5.4.1", "echarts": "^5.4.1",
"echarts-wordcloud": "^2.1.0", "echarts-wordcloud": "^2.1.0",
"element-plus": "2.2.30", "element-plus": "2.2.34",
"fast-xml-parser": "^4.1.2", "fast-xml-parser": "^4.1.3",
"highlight.js": "^11.7.0", "highlight.js": "^11.7.0",
"intro.js": "^6.0.0", "intro.js": "^6.0.0",
"jsencrypt": "^3.3.1", "jsencrypt": "^3.3.2",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"min-dash": "^4.0.0", "min-dash": "^4.0.0",
"mitt": "^3.0.0", "mitt": "^3.0.0",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"pinia": "^2.0.30", "pinia": "^2.0.33",
"qrcode": "^1.5.1", "qrcode": "^1.5.1",
"qs": "^6.11.0", "qs": "^6.11.1",
"steady-xml": "^0.1.0", "steady-xml": "^0.1.0",
"url": "^0.11.0", "url": "^0.11.0",
"vue": "3.2.47", "vue": "3.2.47",
@ -68,19 +68,19 @@
"xml-js": "^1.6.11" "xml-js": "^1.6.11"
}, },
"devDependencies": { "devDependencies": {
"@commitlint/cli": "^17.4.3", "@commitlint/cli": "^17.4.4",
"@commitlint/config-conventional": "^17.4.3", "@commitlint/config-conventional": "^17.4.4",
"@iconify/json": "^2.2.21", "@iconify/json": "^2.2.31",
"@intlify/unplugin-vue-i18n": "^0.8.2", "@intlify/unplugin-vue-i18n": "^0.8.2",
"@purge-icons/generated": "^0.9.0", "@purge-icons/generated": "^0.9.0",
"@types/intro.js": "^5.1.0", "@types/intro.js": "^5.1.1",
"@types/lodash-es": "^4.17.6", "@types/lodash-es": "^4.17.6",
"@types/node": "^18.13.0", "@types/node": "^18.14.6",
"@types/nprogress": "^0.2.0", "@types/nprogress": "^0.2.0",
"@types/qrcode": "^1.5.0", "@types/qrcode": "^1.5.0",
"@types/qs": "^6.9.7", "@types/qs": "^6.9.7",
"@typescript-eslint/eslint-plugin": "^5.52.0", "@typescript-eslint/eslint-plugin": "^5.54.1",
"@typescript-eslint/parser": "^5.52.0", "@typescript-eslint/parser": "^5.54.1",
"@vitejs/plugin-legacy": "^4.0.1", "@vitejs/plugin-legacy": "^4.0.1",
"@vitejs/plugin-vue": "^4.0.0", "@vitejs/plugin-vue": "^4.0.0",
"@vitejs/plugin-vue-jsx": "^3.0.0", "@vitejs/plugin-vue-jsx": "^3.0.0",
@ -88,8 +88,8 @@
"bpmn-js": "^8.9.0", "bpmn-js": "^8.9.0",
"bpmn-js-properties-panel": "^0.46.0", "bpmn-js-properties-panel": "^0.46.0",
"consola": "^2.15.3", "consola": "^2.15.3",
"eslint": "^8.34.0", "eslint": "^8.35.0",
"eslint-config-prettier": "^8.6.0", "eslint-config-prettier": "^8.7.0",
"eslint-define-config": "^1.15.0", "eslint-define-config": "^1.15.0",
"eslint-plugin-prettier": "^4.2.1", "eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-vue": "^9.9.0", "eslint-plugin-vue": "^9.9.0",
@ -98,21 +98,21 @@
"postcss-html": "^1.5.0", "postcss-html": "^1.5.0",
"postcss-scss": "^4.0.6", "postcss-scss": "^4.0.6",
"prettier": "^2.8.4", "prettier": "^2.8.4",
"rimraf": "^4.1.2", "rimraf": "^4.3.1",
"rollup": "^3.15.0", "rollup": "^3.18.0",
"sass": "^1.58.1", "sass": "^1.58.3",
"stylelint": "^15.1.0", "stylelint": "^15.2.0",
"stylelint-config-html": "^1.1.0", "stylelint-config-html": "^1.1.0",
"stylelint-config-prettier": "^9.0.5", "stylelint-config-prettier": "^9.0.5",
"stylelint-config-recommended": "^10.0.1", "stylelint-config-recommended": "^10.0.1",
"stylelint-config-standard": "^30.0.1", "stylelint-config-standard": "^30.0.1",
"stylelint-order": "^6.0.2", "stylelint-order": "^6.0.2",
"terser": "^5.16.3", "terser": "^5.16.5",
"typescript": "4.9.5", "typescript": "4.9.5",
"unplugin-auto-import": "^0.14.2", "unplugin-auto-import": "^0.15.1",
"unplugin-element-plus": "^0.6.0", "unplugin-element-plus": "^0.7.0",
"unplugin-vue-components": "^0.23.0", "unplugin-vue-components": "^0.24.1",
"vite": "4.1.1", "vite": "4.1.4",
"vite-plugin-compression": "^0.5.1", "vite-plugin-compression": "^0.5.1",
"vite-plugin-ejs": "^1.6.4", "vite-plugin-ejs": "^1.6.4",
"vite-plugin-eslint": "^1.8.1", "vite-plugin-eslint": "^1.8.1",
@ -121,7 +121,7 @@
"vite-plugin-svg-icons": "^2.0.1", "vite-plugin-svg-icons": "^2.0.1",
"vite-plugin-vue-setup-extend": "^0.4.0", "vite-plugin-vue-setup-extend": "^0.4.0",
"vite-plugin-windicss": "^1.8.10", "vite-plugin-windicss": "^1.8.10",
"vue-tsc": "^1.0.24", "vue-tsc": "^1.2.0",
"windicss": "^3.5.6" "windicss": "^3.5.6"
}, },
"engines": { "engines": {

View File

@ -109,7 +109,13 @@ const toggleClick = () => {
v-bind="getBindItemValue(item)" v-bind="getBindItemValue(item)"
> >
<template #label> <template #label>
<slot :name="`${item.field}-label`" :label="item.label">{{ item.label }}</slot> <slot
:name="`${item.field}-label`"
:row="{
label: item.label
}"
>{{ item.label }}</slot
>
</template> </template>
<template #default> <template #default>

View File

@ -282,7 +282,7 @@ const filterDescriptionsSchema = (crudSchema: CrudSchema[]): DescriptionsSchema[
// 给options添加国际化 // 给options添加国际化
const filterOptions = (options: Recordable, labelField?: string) => { const filterOptions = (options: Recordable, labelField?: string) => {
return options.map((v: Recordable) => { return options?.map((v: Recordable) => {
if (labelField) { if (labelField) {
v['labelField'] = t(v.labelField) v['labelField'] = t(v.labelField)
} else { } else {

View File

@ -409,7 +409,10 @@ watch(
{ {
icon: 'ep:close', icon: 'ep:close',
label: t('common.closeTab'), label: t('common.closeTab'),
disabled: !!visitedViews?.length && selectedTag?.meta.affix disabled: !!visitedViews?.length && selectedTag?.meta.affix,
command: () => {
closeSelectedTag(selectedTag!)
}
}, },
{ {
divided: true, divided: true,

View File

@ -37,3 +37,8 @@ const themeChange = (val: boolean) => {
@change="themeChange" @change="themeChange"
/> />
</template> </template>
<style lang="scss" scoped>
:deep(.el-switch__core .el-switch__inner .is-icon) {
overflow: visible;
}
</style>

View File

@ -55,7 +55,7 @@ import 'highlight.js/styles/github.css' //导入代码高亮样式 新版
import Logger from '@/utils/Logger' import Logger from '@/utils/Logger'
// 本地开发模式 全局引入 element-plus 样式,加快第一次进入速度 // 本地开发模式 全局引入 element-plus 样式,加快第一次进入速度
if (isDevMode() == true) { if (isDevMode()) {
import('element-plus/dist/index.css') import('element-plus/dist/index.css')
} }

View File

@ -6,6 +6,11 @@
margin-left: 2px !important; margin-left: 2px !important;
} }
// 解决抽屉弹出时body宽度变化的问题
.el-popup-parent--hidden {
width: 100% !important;
}
/* nprogress 适配 element-plus 的主题色 */ /* nprogress 适配 element-plus 的主题色 */
#nprogress { #nprogress {
& .bar { & .bar {

View File

@ -1,5 +1,7 @@
// generated by unplugin-vue-components /* eslint-disable */
// We suggest you to commit this file into source control /* prettier-ignore */
// @ts-nocheck
// Generated by unplugin-vue-components
// Read more: https://github.com/vuejs/core/pull/3399 // Read more: https://github.com/vuejs/core/pull/3399
import '@vue/runtime-core' import '@vue/runtime-core'

View File

@ -70,5 +70,5 @@ declare global {
// for type re-export // for type re-export
declare global { declare global {
// @ts-ignore // @ts-ignore
export type { Component,ComponentPublicInstance,ComputedRef,InjectionKey,PropType,Ref,VNode } from 'vue' export type { Component, ComponentPublicInstance, ComputedRef, InjectionKey, PropType, Ref, VNode } from 'vue'
} }

View File

@ -1,6 +1,6 @@
export const isDevMode = () => { export const isDevMode = () => {
const dev = import.meta.env.VITE_DEV const dev = import.meta.env.VITE_DEV
if (dev && dev === true) { if (dev && dev === 'true') {
return true return true
} else { } else {
return false return false

2
types/env.d.ts vendored
View File

@ -11,7 +11,7 @@ interface ImportMetaEnv {
readonly VITE_APP_TITLE: string readonly VITE_APP_TITLE: string
readonly VITE_PORT: number readonly VITE_PORT: number
readonly VITE_OPEN: string readonly VITE_OPEN: string
readonly VITE_DEV: boolean readonly VITE_DEV: string
readonly VITE_APP_CAPTCHA_ENABLE: string readonly VITE_APP_CAPTCHA_ENABLE: string
readonly VITE_APP_TENANT_ENABLE: string readonly VITE_APP_TENANT_ENABLE: string
readonly VITE_BASE_URL: string readonly VITE_BASE_URL: string