更新主题冲突

This commit is contained in:
icssoa 2021-03-30 18:17:50 +08:00
parent 3e3bac2a6a
commit b603cc571f
15 changed files with 24262 additions and 24937 deletions

View File

@ -1,6 +1,6 @@
{
"name": "front-next-vue3",
"version": "0.1.1",
"version": "0.1.2",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1426,7 +1426,6 @@
margin: 0 3px;
}
.el-dropdown-menu {
position: absolute;
top: 0;
left: 0;
padding: 10px 0;
@ -1448,8 +1447,8 @@
}
.el-dropdown-menu__item:focus,
.el-dropdown-menu__item:not(.is-disabled):hover {
background-color: #faebf4;
color: #d95fa4;
background-color: rgb(250, 235, 244);
color: rgb(217, 95, 164);
}
.el-dropdown-menu__item i {
margin-right: 5px;
@ -1687,7 +1686,7 @@
.el-menu-item:focus,
.el-menu-item:hover {
outline: 0;
background-color: #faebf4;
background-color: rgb(250, 235, 244);
}
.el-menu-item.is-disabled {
opacity: 0.25;
@ -1730,7 +1729,7 @@
.el-submenu__title:focus,
.el-submenu__title:hover {
outline: 0;
background-color: #faebf4;
background-color: rgb(250, 235, 244);
}
.el-submenu__title.is-disabled {
opacity: 0.25;
@ -1738,7 +1737,7 @@
background: 0 0 !important;
}
.el-submenu__title:hover {
background-color: #faebf4;
background-color: rgb(250, 235, 244);
}
.el-submenu .el-menu {
border: none;
@ -2648,7 +2647,7 @@
background: #fafafa;
}
.el-table--striped .el-table__body tr.el-table__row--striped.current-row td {
background-color: #faebf4;
background-color: rgb(250, 235, 244);
}
.el-table__body tr.hover-row.current-row > td,
.el-table__body tr.hover-row.el-table__row--striped.current-row > td,
@ -2657,7 +2656,7 @@
background-color: #f5f7fa;
}
.el-table__body tr.current-row > td {
background-color: #faebf4;
background-color: rgb(250, 235, 244);
}
.el-table__column-resize-proxy {
position: absolute;
@ -2730,8 +2729,8 @@
font-size: 14px;
}
.el-table-filter__list-item:hover {
background-color: #faebf4;
color: #d95fa4;
background-color: rgb(250, 235, 244);
color: rgb(217, 95, 164);
}
.el-table-filter__list-item.is-active {
background-color: #d0378d;
@ -3243,6 +3242,9 @@
.el-date-editor .el-range-input::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-date-editor .el-range-input:-ms-input-placeholder {
color: #c0c4cc;
}
.el-date-editor .el-range-input::-ms-input-placeholder {
color: #c0c4cc;
}
@ -3339,6 +3341,9 @@
.el-range-editor.is-disabled input::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-range-editor.is-disabled input:-ms-input-placeholder {
color: #c0c4cc;
}
.el-range-editor.is-disabled input::-ms-input-placeholder {
color: #c0c4cc;
}
@ -4873,7 +4878,7 @@
display: block;
}
.el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {
background-color: #fbeff6;
background-color: #f0f7ff;
}
.el-alert {
width: 100%;
@ -9554,8 +9559,8 @@
border-left-color: #fff;
}
.el-tag {
background-color: #faebf4;
border-color: #f6d7e8;
background-color: rgb(250, 235, 244);
border-color: rgb(246, 215, 232);
display: inline-block;
height: 32px;
padding: 0 10px;
@ -9667,7 +9672,7 @@
}
.el-tag--dark .el-tag__close:hover {
color: #fff;
background-color: #d95fa4;
background-color: rgb(217, 95, 164);
}
.el-tag--dark.el-tag--info {
background-color: #909399;
@ -9731,7 +9736,7 @@
}
.el-tag--plain {
background-color: #fff;
border-color: #ecafd1;
border-color: rgb(236, 175, 209);
color: #d0378d;
}
.el-tag--plain.is-hit {
@ -9997,6 +10002,9 @@
.el-cascader__search-input::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-cascader__search-input:-ms-input-placeholder {
color: #c0c4cc;
}
.el-cascader__search-input::-ms-input-placeholder {
color: #c0c4cc;
}
@ -10278,7 +10286,7 @@
font-size: 12px;
}
.el-color-dropdown__link-btn:hover {
color: tint(#d0378d, 20%);
color: tint(primary, 20%);
}
.el-color-picker {
display: inline-block;
@ -10436,6 +10444,9 @@
.el-textarea__inner::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-textarea__inner:-ms-input-placeholder {
color: #c0c4cc;
}
.el-textarea__inner::-ms-input-placeholder {
color: #c0c4cc;
}
@ -10466,6 +10477,9 @@
.el-textarea.is-disabled .el-textarea__inner::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-textarea.is-disabled .el-textarea__inner:-ms-input-placeholder {
color: #c0c4cc;
}
.el-textarea.is-disabled .el-textarea__inner::-ms-input-placeholder {
color: #c0c4cc;
}
@ -10564,6 +10578,9 @@
.el-input__inner::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-input__inner:-ms-input-placeholder {
color: #c0c4cc;
}
.el-input__inner::-ms-input-placeholder {
color: #c0c4cc;
}
@ -10616,6 +10633,9 @@
.el-input.is-disabled .el-input__inner::-webkit-input-placeholder {
color: #c0c4cc;
}
.el-input.is-disabled .el-input__inner:-ms-input-placeholder {
color: #c0c4cc;
}
.el-input.is-disabled .el-input__inner::-ms-input-placeholder {
color: #c0c4cc;
}
@ -11158,10 +11178,10 @@
color: #d0378d;
}
.el-link.el-link--primary:hover {
color: #d95fa4;
color: rgb(217, 95, 164);
}
.el-link.el-link--primary.is-disabled {
color: #e89bc6;
color: rgb(232, 155, 198);
}
.el-link.el-link--danger.is-underline:hover:after,
.el-link.el-link--danger:after {
@ -11490,12 +11510,12 @@
.el-button:focus,
.el-button:hover {
color: #d0378d;
border-color: #f1c3dd;
background-color: #faebf4;
border-color: rgb(241, 195, 221);
background-color: rgb(250, 235, 244);
}
.el-button:active {
color: #bb327f;
border-color: #bb327f;
color: rgb(187, 50, 127);
border-color: rgb(187, 50, 127);
outline: 0;
}
.el-button::-moz-focus-inner {
@ -11512,8 +11532,8 @@
}
.el-button.is-active,
.el-button.is-plain:active {
color: #bb327f;
border-color: #bb327f;
color: rgb(187, 50, 127);
border-color: rgb(187, 50, 127);
}
.el-button.is-plain:active {
background: #fff;
@ -11568,14 +11588,14 @@
}
.el-button--primary:focus,
.el-button--primary:hover {
background: #d95fa4;
border-color: #d95fa4;
background: rgb(217, 95, 164);
border-color: rgb(217, 95, 164);
color: #fff;
}
.el-button--primary.is-active,
.el-button--primary:active {
background: #bb327f;
border-color: #bb327f;
background: rgb(187, 50, 127);
border-color: rgb(187, 50, 127);
color: #fff;
}
.el-button--primary:active {
@ -11586,13 +11606,13 @@
.el-button--primary.is-disabled:focus,
.el-button--primary.is-disabled:hover {
color: #fff;
background-color: #e89bc6;
border-color: #e89bc6;
background-color: rgb(232, 155, 198);
border-color: rgb(232, 155, 198);
}
.el-button--primary.is-plain {
color: #d0378d;
background: #faebf4;
border-color: #ecafd1;
background: rgb(250, 235, 244);
border-color: rgb(236, 175, 209);
}
.el-button--primary.is-plain:focus,
.el-button--primary.is-plain:hover {
@ -11601,8 +11621,8 @@
color: #fff;
}
.el-button--primary.is-plain:active {
background: #bb327f;
border-color: #bb327f;
background: rgb(187, 50, 127);
border-color: rgb(187, 50, 127);
color: #fff;
outline: 0;
}
@ -11610,9 +11630,9 @@
.el-button--primary.is-plain.is-disabled:active,
.el-button--primary.is-plain.is-disabled:focus,
.el-button--primary.is-plain.is-disabled:hover {
color: #e387bb;
background-color: #faebf4;
border-color: #f6d7e8;
color: rgb(227, 135, 187);
background-color: rgb(250, 235, 244);
border-color: rgb(246, 215, 232);
}
.el-button--success {
color: #fff;
@ -11871,12 +11891,12 @@
}
.el-button--text:focus,
.el-button--text:hover {
color: #d95fa4;
color: rgb(217, 95, 164);
border-color: transparent;
background-color: transparent;
}
.el-button--text:active {
color: #bb327f;
color: rgb(187, 50, 127);
background-color: transparent;
}
.el-button-group {
@ -12389,8 +12409,8 @@
color: #fff;
background-color: #d0378d;
border-color: #d0378d;
-webkit-box-shadow: -1px 0 0 0 #e387bb;
box-shadow: -1px 0 0 0 #e387bb;
-webkit-box-shadow: -1px 0 0 0 rgb(227, 135, 187);
box-shadow: -1px 0 0 0 rgb(227, 135, 187);
}
.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner {
border-left-color: #d0378d;
@ -12826,182 +12846,6 @@
bottom: 0;
height: 100%;
}
@-webkit-keyframes el-drawer-fade-in {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes el-drawer-fade-in {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@-webkit-keyframes rtl-drawer-in {
0% {
-webkit-transform: translate(100%, 0);
transform: translate(100%, 0);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@keyframes rtl-drawer-in {
0% {
-webkit-transform: translate(100%, 0);
transform: translate(100%, 0);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@-webkit-keyframes rtl-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(100%, 0);
transform: translate(100%, 0);
}
}
@keyframes rtl-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(100%, 0);
transform: translate(100%, 0);
}
}
@-webkit-keyframes ltr-drawer-in {
0% {
-webkit-transform: translate(-100%, 0);
transform: translate(-100%, 0);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@keyframes ltr-drawer-in {
0% {
-webkit-transform: translate(-100%, 0);
transform: translate(-100%, 0);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@-webkit-keyframes ltr-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(-100%, 0);
transform: translate(-100%, 0);
}
}
@keyframes ltr-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(-100%, 0);
transform: translate(-100%, 0);
}
}
@-webkit-keyframes ttb-drawer-in {
0% {
-webkit-transform: translate(0, -100%);
transform: translate(0, -100%);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@keyframes ttb-drawer-in {
0% {
-webkit-transform: translate(0, -100%);
transform: translate(0, -100%);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@-webkit-keyframes ttb-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(0, -100%);
transform: translate(0, -100%);
}
}
@keyframes ttb-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(0, -100%);
transform: translate(0, -100%);
}
}
@-webkit-keyframes btt-drawer-in {
0% {
-webkit-transform: translate(0, 100%);
transform: translate(0, 100%);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@keyframes btt-drawer-in {
0% {
-webkit-transform: translate(0, 100%);
transform: translate(0, 100%);
}
100% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
}
@-webkit-keyframes btt-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(0, 100%);
transform: translate(0, 100%);
}
}
@keyframes btt-drawer-out {
0% {
-webkit-transform: translate(0, 0);
transform: translate(0, 0);
}
100% {
-webkit-transform: translate(0, 100%);
transform: translate(0, 100%);
}
}
.el-drawer {
position: absolute;
box-sizing: border-box;
@ -13124,16 +12968,22 @@
margin: 0;
}
/* custom */
.app-slider {
background-color: #fff !important;
}
.app-slider__logo {
background-image: -webkit-gradient(linear, left top, left bottom, from(#d0378d), to(#982f87));
background-image: linear-gradient(to bottom, #d0378d, #982f87);
}
.app-slider span,
.app-slider .icon-svg {
color: #666;
}
.app-slider .cl-slider-menu .el-menu .el-submenu__title:hover,
.app-slider .cl-slider-menu .el-menu .el-submenu__title.is-active,
.app-slider .cl-slider-menu .el-menu .el-menu-item:hover,
@ -13141,6 +12991,7 @@
background-color: #fff !important;
border-right: 2px solid #d0378d;
}
.app-slider .cl-slider-menu .el-menu .el-submenu__title:hover span,
.app-slider .cl-slider-menu .el-menu .el-submenu__title:hover .icon-svg,
.app-slider .cl-slider-menu .el-menu .el-submenu__title.is-active span,

View File

@ -1,3 +1,40 @@
import Crud from "../crud";
export default {
modules: ["base", "demo", "copy", "upload", "task", "theme", "chat"]
modules: [
// 基础模块
"base",
// 文件上传
{
name: "upload",
options: {
icon: "el-icon-picture",
text: "选择图片"
}
},
{
name: "crud",
value: Crud,
options: {
crud: {
dict: {
sort: {
prop: "order",
order: "sort"
}
}
}
}
},
// 客服聊天
"chat",
// 任务管理
"task",
// 复制指令
"copy",
// 示例页
"demo",
// 主题切换
"theme"
]
};

View File

@ -54,7 +54,7 @@ import { useRefs } from "@/core";
import { CrudLoad, RefreshOp, Table } from "@/crud/types";
export default defineComponent({
name: "sys-plugin",
name: "plugin",
setup() {
const $service = inject<any>("service");

View File

@ -10,7 +10,7 @@ export function useDialog({ props, isFullscreen }: any) {
nextTick(() => {
// 获取元素
const dlg: any = document.querySelector(`.cl-dialog--${ctx?.uid}`);
const hdr: any = dlg.querySelector(".el-dialog__header");
const hdr: any = dlg ? dlg.querySelector(".el-dialog__header") : null;
// 设置对话框
if (dlg) {

View File

@ -49,6 +49,8 @@ const CRUD = {
app.config.globalProperties.$crud = {
openContextMenu: ContextMenu.open
};
return {};
}
};

View File

@ -4,7 +4,7 @@ export type ServiceName = "page" | "list" | "add" | "delete" | "update" | "info"
export interface Service {
page?(
params?
params?: any
): Promise<{
list: any[];
pagination?: {
@ -13,11 +13,11 @@ export interface Service {
size?: number;
};
}>;
list?(params?): Promise<any[]>;
add?(params): Promise<any>;
delete?(params): Promise<any>;
update?(params): Promise<any>;
info?(params): Promise<any>;
list?(params?: any): Promise<any[]>;
add?(params: any): Promise<any>;
delete?(params: any): Promise<any>;
update?(params: any): Promise<any>;
info?(params: any): Promise<any>;
}
export interface Dict {

View File

@ -1,4 +1,3 @@
import { Ref } from "vue";
import { RenderOptions } from "./render";
export interface FormItem {
@ -15,7 +14,7 @@ export interface FormItem {
group?: string;
collapse?: boolean;
value?: any;
label?: stirng | { text?: string; icon?: string; tip?: string };
label?: string | { text?: string; icon?: string; tip?: string };
span?: number;
flex?: boolean;
hidden?: Function | boolean | string;
@ -30,29 +29,29 @@ export interface Form {
props?: any;
items?: Array<FormItem>;
on?: {
open?(form: any, { close, submit, done });
close?();
submit?(data: any, { done, close });
open?(form: any, { close, submit, done }: any): void;
close?(): void;
submit?(data: any, { done, close }: any): void;
};
}
export interface FormRef {
create(options: Form);
open(options: Form);
close();
done();
clear();
showLoading();
hiddenLoading();
setData();
setOptions(prop: string, list: Array<{ label: string; value?: any }>);
getForm(prop?: string);
setForm(prop: string, value: any);
toggleItem(prop: string, flag?: boolean);
hiddenItem(props: string[]);
showItem(props: string[]);
resetFields();
clearValidate(props: string[] | string);
validateField(props: string[] | string, callback: Function);
validate(callback: Function);
create(options: Form): FormRef;
open(options: Form): FormRef;
close(): void;
done(): void;
clear(): void;
showLoading(): void;
hiddenLoading(): void;
setData(): void;
setOptions(prop: string, list: Array<{ label: string; value?: any }>): void;
getForm(prop?: string): any;
setForm(prop: string, value: any): void;
toggleItem(prop: string, flag?: boolean): void;
hiddenItem(props: string[]): void;
showItem(props: string[]): void;
resetFields(): void;
clearValidate(props: string[] | string): void;
validateField(props: string[] | string, callback: Function): void;
validate(callback: Function): void;
}

View File

@ -4,7 +4,7 @@ export interface RefreshOp {
* @param list 数据列表
* @param pagination 分页信息
*/
render(list: any[], pagination?: { size?: number; size?: number; total?: number }): void;
render(list: any[], pagination?: { size?: number; page?: number; total?: number }): void;
/**
* 继续执行刷新
@ -27,24 +27,24 @@ export interface UpsertOpenOp {
* 提交表单
* @param form 表单值
*/
submit(form: any);
submit(form: any): void;
/**
* 关闭加载状态
*/
done();
done(): void;
/**
* 关闭弹窗
*/
close();
close(): void;
}
export interface UpsertCloseOp {
/**
* 关闭弹窗
*/
done();
done(): void;
}
export interface UpsertInfoOp {
@ -52,17 +52,17 @@ export interface UpsertInfoOp {
* 继续执行获取详情
* @param params 请求参数
*/
next(params: any);
next(params: any): Promise<any>;
/**
* 关闭加载状态,并设置表单值
*/
done(data);
done(data: any): void;
/**
* 关闭弹窗
*/
close();
close(): void;
}
export interface UpsertSubmitOp {
@ -70,17 +70,17 @@ export interface UpsertSubmitOp {
* 继续执行提交
* @param params 请求参数
*/
next(params: any);
next(params: any): Promise<any>;
/**
* 关闭加载状态
*/
done();
done(): void;
/**
* 关闭弹窗
*/
close();
close(): void;
}
export interface AdvOpenOp {
@ -88,14 +88,14 @@ export interface AdvOpenOp {
* 继续执行打开
* @param data 筛选参数
*/
next(data: any);
next(data: any): Promise<any>;
}
export interface AdvCloseOp {
/**
* 关闭抽屉
*/
done();
done(): void;
}
export interface AdvSearchOp {
@ -103,9 +103,9 @@ export interface AdvSearchOp {
* 继续执行搜索
* @param params 请求参数
*/
next(params: any);
next(params: any): Promise<any>;
/**
* 关闭抽屉
*/
done();
done(): void;
}

View File

@ -1,4 +1,4 @@
import { TableColumnCtx } from "element-plus/lib/el-table/src/table.type";
import { ContextMenuItem } from "./context-menu";
import { RenderOptions } from "./render";
export interface TableOptions {

View File

@ -17,9 +17,6 @@ import ElementPlus from "element-plus";
import "@/assets/css/element-variables.scss";
import locale from "element-plus/lib/locale/lang/zh-cn";
// crud
import Crud from "./crud";
// mitt
import mitt from "mitt";
@ -39,16 +36,7 @@ bootstrap(app)
app.use(store)
.use(router)
.use(ElementPlus, { locale })
.use(Crud, {
crud: {
dict: {
sort: {
prop: "order",
order: "sort"
}
}
}
})
.mount("#app");
})
.catch((err: string) => {

View File

@ -1,9 +1,4 @@
const HardSourceWebpackPlugin = require("hard-source-webpack-plugin");
const path = require("path");
function resolve(dir) {
return path.join(__dirname, dir);
}
const isProduction = process.env.NODE_ENV === "production";