mirror of
https://github.com/cool-team-official/cool-admin-vue.git
synced 2025-12-13 14:12:50 +00:00
优化
This commit is contained in:
parent
41d3608aac
commit
c205a67d8b
224
packages/crud/index.d.ts
vendored
224
packages/crud/index.d.ts
vendored
@ -1,4 +1,3 @@
|
|||||||
import Mitt from "mitt";
|
|
||||||
// vue
|
// vue
|
||||||
declare namespace Vue {
|
declare namespace Vue {
|
||||||
interface Ref<T = any> {
|
interface Ref<T = any> {
|
||||||
@ -10,12 +9,12 @@ declare namespace Vue {
|
|||||||
|
|
||||||
// element-plus
|
// element-plus
|
||||||
declare namespace ElementPlus {
|
declare namespace ElementPlus {
|
||||||
type Size = "large" | "default" | "small";
|
type Size = 'large' | 'default' | 'small';
|
||||||
type Align = "left" | "center" | "right";
|
type Align = 'left' | 'center' | 'right';
|
||||||
|
|
||||||
interface FormProps {
|
interface FormProps {
|
||||||
inline?: boolean;
|
inline?: boolean;
|
||||||
labelPosition?: "left" | "right" | "top";
|
labelPosition?: 'left' | 'right' | 'top';
|
||||||
labelWidth?: string | number;
|
labelWidth?: string | number;
|
||||||
labelSuffix?: string;
|
labelSuffix?: string;
|
||||||
hideRequiredAsterisk?: boolean;
|
hideRequiredAsterisk?: boolean;
|
||||||
@ -29,6 +28,26 @@ declare namespace ElementPlus {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// mitt
|
||||||
|
declare interface Mitt {
|
||||||
|
on(name: string, callback: (data: any) => void): void;
|
||||||
|
off(name: string, callback: (data: any) => void): void;
|
||||||
|
emit(name: string, data?: any): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
// emitter
|
||||||
|
declare interface EmitterItem {
|
||||||
|
name: string;
|
||||||
|
callback(data: any, events: { refresh(params: any): void; crudList: ClCrud.Ref[] }): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
declare interface Emitter {
|
||||||
|
list: EmitterItem[];
|
||||||
|
init(events: any): void;
|
||||||
|
on(name: string, callback: (data: any) => void): void;
|
||||||
|
emit(name: string, data?: any): void;
|
||||||
|
}
|
||||||
|
|
||||||
// 方法
|
// 方法
|
||||||
declare type fn = () => void;
|
declare type fn = () => void;
|
||||||
|
|
||||||
@ -41,8 +60,8 @@ declare type obj = {
|
|||||||
declare type DeepPartial<T> = T extends Function
|
declare type DeepPartial<T> = T extends Function
|
||||||
? T
|
? T
|
||||||
: T extends object
|
: T extends object
|
||||||
? { [P in keyof T]?: DeepPartial<T[P]> }
|
? { [P in keyof T]?: DeepPartial<T[P]> }
|
||||||
: T;
|
: T;
|
||||||
|
|
||||||
// 合并
|
// 合并
|
||||||
declare type Merge<A, B> = Omit<A, keyof B> & B;
|
declare type Merge<A, B> = Omit<A, keyof B> & B;
|
||||||
@ -55,6 +74,21 @@ declare type RemoveIndex<T> = {
|
|||||||
// 任用列表
|
// 任用列表
|
||||||
declare type List<T> = Array<DeepPartial<T> | (() => DeepPartial<T>)>;
|
declare type List<T> = Array<DeepPartial<T> | (() => DeepPartial<T>)>;
|
||||||
|
|
||||||
|
// 获取keys
|
||||||
|
declare type PropKey<T> = keyof RemoveIndex<T> | (string & {});
|
||||||
|
|
||||||
|
// 任意字符串
|
||||||
|
declare type AnyString = string & {};
|
||||||
|
|
||||||
|
// 类型或者 Ref 泛型
|
||||||
|
declare type RefData<T = any> = T | Vue.Ref<T>;
|
||||||
|
|
||||||
|
// browser
|
||||||
|
declare type Browser = {
|
||||||
|
screen: string;
|
||||||
|
isMini: boolean;
|
||||||
|
};
|
||||||
|
|
||||||
// 字典选项
|
// 字典选项
|
||||||
declare type DictOptions = {
|
declare type DictOptions = {
|
||||||
label?: string;
|
label?: string;
|
||||||
@ -64,25 +98,6 @@ declare type DictOptions = {
|
|||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
}[];
|
}[];
|
||||||
|
|
||||||
// emitter
|
|
||||||
declare interface EmitterItem {
|
|
||||||
name: string;
|
|
||||||
callback(data: any, events: { refresh(params: any): void; crudList: ClCrud.Ref[] }): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
declare interface Emitter {
|
|
||||||
list: EmitterItem[];
|
|
||||||
init(events: any): void;
|
|
||||||
emit(name: string, data?: any): void;
|
|
||||||
on(name: string, callback: (data: any) => void): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
// browser
|
|
||||||
declare type Browser = {
|
|
||||||
screen: string;
|
|
||||||
isMini: boolean;
|
|
||||||
};
|
|
||||||
|
|
||||||
// render
|
// render
|
||||||
declare namespace Render {
|
declare namespace Render {
|
||||||
type OpButton =
|
type OpButton =
|
||||||
@ -102,8 +117,8 @@ declare namespace Render {
|
|||||||
|
|
||||||
interface Component {
|
interface Component {
|
||||||
name?: string;
|
name?: string;
|
||||||
options?: DictOptions | Vue.Ref<DictOptions>;
|
options?: RefData<DictOptions>;
|
||||||
props?: Props | Vue.Ref<Props>;
|
props?: RefData<Props>;
|
||||||
style?: obj;
|
style?: obj;
|
||||||
slots?: {
|
slots?: {
|
||||||
[key: string]: (data?: any) => any;
|
[key: string]: (data?: any) => any;
|
||||||
@ -113,12 +128,7 @@ declare namespace Render {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取keys
|
// crud
|
||||||
type PropKey<T> = keyof RemoveIndex<T> | (string & {});
|
|
||||||
|
|
||||||
// 任意字符串
|
|
||||||
type AnyString = string & {};
|
|
||||||
|
|
||||||
declare namespace ClCrud {
|
declare namespace ClCrud {
|
||||||
interface Label {
|
interface Label {
|
||||||
op: string;
|
op: string;
|
||||||
@ -230,51 +240,51 @@ declare namespace ClCrud {
|
|||||||
|
|
||||||
interface Service {
|
interface Service {
|
||||||
api: {
|
api: {
|
||||||
page(params?: Params["page"]): Promise<Response["page"]>;
|
page(params?: Params['page']): Promise<Response['page']>;
|
||||||
list(params?: Params["list"]): Promise<Response["list"]>;
|
list(params?: Params['list']): Promise<Response['list']>;
|
||||||
add(params?: Params["add"]): Promise<Response["add"]>;
|
add(params?: Params['add']): Promise<Response['add']>;
|
||||||
update(params?: Params["update"]): Promise<Response["update"]>;
|
update(params?: Params['update']): Promise<Response['update']>;
|
||||||
info(params?: Params["info"]): Promise<Response["info"]>;
|
info(params?: Params['info']): Promise<Response['info']>;
|
||||||
delete(params?: Params["delete"]): Promise<Response["delete"]>;
|
delete(params?: Params['delete']): Promise<Response['delete']>;
|
||||||
[key: string]: (params?: any) => Promise<any>;
|
[key: string]: (params?: any) => Promise<any>;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Config {
|
interface Config {
|
||||||
name: string;
|
name: string;
|
||||||
service: Service["api"];
|
service: Service['api'];
|
||||||
permission: Permission;
|
permission: Permission;
|
||||||
dict: Dict;
|
dict: Dict;
|
||||||
onRefresh(
|
onRefresh(
|
||||||
params: obj,
|
params: obj,
|
||||||
event: {
|
event: {
|
||||||
done: fn;
|
done: fn;
|
||||||
next: Service["api"]["page"];
|
next: Service['api']['page'];
|
||||||
render: (data: any | any[], pagination?: Response["page"]["pagination"]) => void;
|
render: (data: any | any[], pagination?: Response['page']['pagination']) => void;
|
||||||
}
|
}
|
||||||
): void;
|
): void;
|
||||||
onDelete(
|
onDelete(
|
||||||
selection: obj[],
|
selection: obj[],
|
||||||
event: {
|
event: {
|
||||||
next: Service["api"]["delete"];
|
next: Service['api']['delete'];
|
||||||
}
|
}
|
||||||
): void;
|
): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Ref {
|
interface Ref {
|
||||||
"cl-table": ClTable.Ref;
|
'cl-table': ClTable.Ref;
|
||||||
"cl-upsert": ClUpsert.Ref;
|
'cl-upsert': ClUpsert.Ref;
|
||||||
id: number;
|
id: number;
|
||||||
mitt: Mitt;
|
mitt: Mitt;
|
||||||
name: string;
|
name: string;
|
||||||
routePath: string;
|
routePath: string;
|
||||||
permission: Permission;
|
permission: Permission;
|
||||||
dict: Dict;
|
dict: Dict;
|
||||||
service: Service["api"];
|
service: Service['api'];
|
||||||
loading: boolean;
|
loading: boolean;
|
||||||
params: obj;
|
params: obj;
|
||||||
selection: obj[];
|
selection: obj[];
|
||||||
set(key: "dict" | "style" | "service" | "permission", value: any): void;
|
set(key: 'dict' | 'style' | 'service' | 'permission', value: any): void;
|
||||||
done(): void;
|
done(): void;
|
||||||
getParams(): obj;
|
getParams(): obj;
|
||||||
getPermission(key?: string): boolean;
|
getPermission(key?: string): boolean;
|
||||||
@ -286,7 +296,7 @@ declare namespace ClCrud {
|
|||||||
rowDelete(...selection: obj[]): void;
|
rowDelete(...selection: obj[]): void;
|
||||||
proxy(name: string, data?: any[]): any;
|
proxy(name: string, data?: any[]): any;
|
||||||
paramsReplace(params: obj): obj;
|
paramsReplace(params: obj): obj;
|
||||||
refresh: Service["api"]["page"];
|
refresh: Service['api']['page'];
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -296,13 +306,13 @@ declare namespace ClCrud {
|
|||||||
}
|
}
|
||||||
|
|
||||||
declare namespace ClTable {
|
declare namespace ClTable {
|
||||||
type OpButton = Array<"info" | "edit" | "delete" | AnyString | Render.OpButton>;
|
type OpButton = Array<'info' | 'edit' | 'delete' | AnyString | Render.OpButton>;
|
||||||
|
|
||||||
type ColumnType = "index" | "selection" | "expand" | "op" | AnyString;
|
type ColumnType = 'index' | 'selection' | 'expand' | 'op' | AnyString;
|
||||||
|
|
||||||
interface Column<T = any> {
|
interface Column<T = any> {
|
||||||
type: ColumnType;
|
type: ColumnType;
|
||||||
hidden: boolean | Vue.Ref<boolean>;
|
hidden: RefData<boolean>;
|
||||||
component: Render.Component;
|
component: Render.Component;
|
||||||
search: {
|
search: {
|
||||||
isInput: boolean;
|
isInput: boolean;
|
||||||
@ -310,7 +320,7 @@ declare namespace ClTable {
|
|||||||
refreshOnChange: boolean;
|
refreshOnChange: boolean;
|
||||||
component: Render.Component;
|
component: Render.Component;
|
||||||
};
|
};
|
||||||
dict: DictOptions | Vue.Ref<DictOptions>;
|
dict: RefData<DictOptions>;
|
||||||
dictFormatter: (values: DictOptions) => string;
|
dictFormatter: (values: DictOptions) => string;
|
||||||
dictColor: boolean;
|
dictColor: boolean;
|
||||||
dictSeparator: string;
|
dictSeparator: string;
|
||||||
@ -321,10 +331,10 @@ declare namespace ClTable {
|
|||||||
className: string;
|
className: string;
|
||||||
prop: PropKey<T>;
|
prop: PropKey<T>;
|
||||||
orderNum: number;
|
orderNum: number;
|
||||||
width: number;
|
width: RefData<number | string>;
|
||||||
minWidth: number | string;
|
minWidth: RefData<number | string>;
|
||||||
renderHeader: (options: { column: any; $index: number }) => any;
|
renderHeader: (options: { column: any; $index: number }) => any;
|
||||||
sortable: boolean | "desc" | "descending" | "ascending" | "asc" | "custom";
|
sortable: boolean | 'desc' | 'descending' | 'ascending' | 'asc' | 'custom';
|
||||||
sortMethod: fn;
|
sortMethod: fn;
|
||||||
sortBy: string | ((row: T, index: number) => any) | any[];
|
sortBy: string | ((row: T, index: number) => any) | any[];
|
||||||
resizable: boolean;
|
resizable: boolean;
|
||||||
@ -349,14 +359,14 @@ declare namespace ClTable {
|
|||||||
type ContextMenu = Array<
|
type ContextMenu = Array<
|
||||||
| ClContextMenu.Item
|
| ClContextMenu.Item
|
||||||
| ((row: obj, column: obj, event: PointerEvent) => ClContextMenu.Item)
|
| ((row: obj, column: obj, event: PointerEvent) => ClContextMenu.Item)
|
||||||
| "refresh"
|
| 'refresh'
|
||||||
| "check"
|
| 'check'
|
||||||
| "update"
|
| 'update'
|
||||||
| "edit"
|
| 'edit'
|
||||||
| "delete"
|
| 'delete'
|
||||||
| "info"
|
| 'info'
|
||||||
| "order-desc"
|
| 'order-desc'
|
||||||
| "order-asc"
|
| 'order-asc'
|
||||||
>;
|
>;
|
||||||
|
|
||||||
type Plugin = (options: { exposed: Ref }) => void;
|
type Plugin = (options: { exposed: Ref }) => void;
|
||||||
@ -368,7 +378,7 @@ declare namespace ClTable {
|
|||||||
contextMenu: ContextMenu;
|
contextMenu: ContextMenu;
|
||||||
defaultSort: {
|
defaultSort: {
|
||||||
prop: string;
|
prop: string;
|
||||||
order: "descending" | "ascending";
|
order: 'descending' | 'ascending';
|
||||||
};
|
};
|
||||||
sortRefresh: boolean;
|
sortRefresh: boolean;
|
||||||
emptyText: string;
|
emptyText: string;
|
||||||
@ -422,25 +432,25 @@ declare namespace ClFormTabs {
|
|||||||
}
|
}
|
||||||
|
|
||||||
declare namespace ClForm {
|
declare namespace ClForm {
|
||||||
type CloseAction = "close" | "save" | AnyString;
|
type CloseAction = 'close' | 'save' | AnyString;
|
||||||
|
|
||||||
interface Rule {
|
interface Rule {
|
||||||
type?:
|
type?:
|
||||||
| "string"
|
| 'string'
|
||||||
| "number"
|
| 'number'
|
||||||
| "boolean"
|
| 'boolean'
|
||||||
| "method"
|
| 'method'
|
||||||
| "regexp"
|
| 'regexp'
|
||||||
| "integer"
|
| 'integer'
|
||||||
| "float"
|
| 'float'
|
||||||
| "array"
|
| 'array'
|
||||||
| "object"
|
| 'object'
|
||||||
| "enum"
|
| 'enum'
|
||||||
| "date"
|
| 'date'
|
||||||
| "url"
|
| 'url'
|
||||||
| "hex"
|
| 'hex'
|
||||||
| "email"
|
| 'email'
|
||||||
| "any";
|
| 'any';
|
||||||
required?: boolean;
|
required?: boolean;
|
||||||
message?: string;
|
message?: string;
|
||||||
min?: number;
|
min?: number;
|
||||||
@ -452,37 +462,37 @@ declare namespace ClForm {
|
|||||||
|
|
||||||
type HookFn = (
|
type HookFn = (
|
||||||
value: any,
|
value: any,
|
||||||
options: { form: obj; prop: string; method: "submit" | "bind" }
|
options: { form: obj; prop: string; method: 'submit' | 'bind' }
|
||||||
) => any;
|
) => any;
|
||||||
|
|
||||||
type HookKey =
|
type HookKey =
|
||||||
| "number"
|
| 'number'
|
||||||
| "string"
|
| 'string'
|
||||||
| "split"
|
| 'split'
|
||||||
| "join"
|
| 'join'
|
||||||
| "boolean"
|
| 'boolean'
|
||||||
| "booleanNumber"
|
| 'booleanNumber'
|
||||||
| "datetimeRange"
|
| 'datetimeRange'
|
||||||
| "splitJoin"
|
| 'splitJoin'
|
||||||
| "json"
|
| 'json'
|
||||||
| "empty"
|
| 'empty'
|
||||||
| AnyString;
|
| AnyString;
|
||||||
|
|
||||||
type HookPipe = HookKey | HookFn;
|
type HookPipe = HookKey | HookFn;
|
||||||
|
|
||||||
interface Item<T = any> {
|
interface Item<T = any> {
|
||||||
type?: "tabs";
|
type?: 'tabs';
|
||||||
prop?: PropKey<T>;
|
prop?: PropKey<T>;
|
||||||
props?: {
|
props?: {
|
||||||
labels?: ClFormTabs.labels;
|
labels?: ClFormTabs.labels;
|
||||||
justify?: "left" | "center" | "right";
|
justify?: 'left' | 'center' | 'right';
|
||||||
color?: string;
|
color?: string;
|
||||||
mergeProp?: boolean;
|
mergeProp?: boolean;
|
||||||
labelWidth?: string;
|
labelWidth?: string;
|
||||||
error?: string;
|
error?: string;
|
||||||
showMessage?: boolean;
|
showMessage?: boolean;
|
||||||
inlineMessage?: boolean;
|
inlineMessage?: boolean;
|
||||||
size?: "medium" | "default" | "small";
|
size?: 'medium' | 'default' | 'small';
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
};
|
};
|
||||||
span?: number;
|
span?: number;
|
||||||
@ -538,7 +548,7 @@ declare namespace ClForm {
|
|||||||
hidden?: boolean;
|
hidden?: boolean;
|
||||||
saveButtonText?: string;
|
saveButtonText?: string;
|
||||||
closeButtonText?: string;
|
closeButtonText?: string;
|
||||||
justify?: "flex-start" | "center" | "flex-end";
|
justify?: 'flex-start' | 'center' | 'flex-end';
|
||||||
buttons?: Array<CloseAction | Render.OpButton>;
|
buttons?: Array<CloseAction | Render.OpButton>;
|
||||||
};
|
};
|
||||||
dialog: {
|
dialog: {
|
||||||
@ -546,7 +556,7 @@ declare namespace ClForm {
|
|||||||
height?: string;
|
height?: string;
|
||||||
width?: string;
|
width?: string;
|
||||||
hideHeader?: boolean;
|
hideHeader?: boolean;
|
||||||
controls?: Array<"fullscreen" | "close" | AnyString>;
|
controls?: Array<'fullscreen' | 'close' | AnyString>;
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
};
|
};
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
@ -609,26 +619,26 @@ declare namespace ClUpsert {
|
|||||||
interface Config<T = any> {
|
interface Config<T = any> {
|
||||||
sync: boolean;
|
sync: boolean;
|
||||||
items: ClForm.Item[];
|
items: ClForm.Item[];
|
||||||
props: ClForm.Config["props"];
|
props: ClForm.Config['props'];
|
||||||
op: ClForm.Config["op"];
|
op: ClForm.Config['op'];
|
||||||
dialog: ClForm.Config["dialog"];
|
dialog: ClForm.Config['dialog'];
|
||||||
onOpen?(): void;
|
onOpen?(): void;
|
||||||
onOpened?(data: T): void;
|
onOpened?(data: T): void;
|
||||||
onClose?(action: ClForm.CloseAction, done: fn): void;
|
onClose?(action: ClForm.CloseAction, done: fn): void;
|
||||||
onClosed?(): void;
|
onClosed?(): void;
|
||||||
onInfo?(
|
onInfo?(
|
||||||
data: T,
|
data: T,
|
||||||
event: { close: fn; done(data: T): void; next: ClCrud.Service["api"]["info"] }
|
event: { close: fn; done(data: T): void; next: ClCrud.Service['api']['info'] }
|
||||||
): void;
|
): void;
|
||||||
onSubmit?(
|
onSubmit?(
|
||||||
data: T,
|
data: T,
|
||||||
event: { close: fn; done: fn; next: ClCrud.Service["api"]["update"] }
|
event: { close: fn; done: fn; next: ClCrud.Service['api']['update'] }
|
||||||
): void;
|
): void;
|
||||||
plugins?: ClForm.Plugin[];
|
plugins?: ClForm.Plugin[];
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Ref<T = any> extends ClForm.Ref<T> {
|
interface Ref<T = any> extends ClForm.Ref<T> {
|
||||||
mode: "add" | "update" | "info" | AnyString;
|
mode: 'add' | 'update' | 'info' | AnyString;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Options<T = any> extends DeepPartial<Config<T>> {
|
interface Options<T = any> extends DeepPartial<Config<T>> {
|
||||||
@ -641,8 +651,8 @@ declare namespace ClAdvSearch {
|
|||||||
items?: ClForm.Item[];
|
items?: ClForm.Item[];
|
||||||
title?: string;
|
title?: string;
|
||||||
size?: string | number;
|
size?: string | number;
|
||||||
op?: ("clear" | "reset" | "close" | "search" | `slot-${string}`)[];
|
op?: ('clear' | 'reset' | 'close' | 'search' | `slot-${string}`)[];
|
||||||
onSearch?(data: T, options: { next: ClCrud.Service["api"]["page"]; close(): void }): void;
|
onSearch?(data: T, options: { next: ClCrud.Service['api']['page']; close(): void }): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Ref<T = any> extends ClForm.Ref<T> {}
|
interface Ref<T = any> extends ClForm.Ref<T> {}
|
||||||
@ -662,7 +672,7 @@ declare namespace ClSearch {
|
|||||||
Form?: ClForm.Ref;
|
Form?: ClForm.Ref;
|
||||||
onChange?(data: T, prop: string): void;
|
onChange?(data: T, prop: string): void;
|
||||||
onLoad?(data: T): void;
|
onLoad?(data: T): void;
|
||||||
onSearch?(data: T, options: { next: ClCrud.Service["api"]["page"] }): void;
|
onSearch?(data: T, options: { next: ClCrud.Service['api']['page'] }): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Ref<T = any> extends ClForm.Ref<T> {
|
interface Ref<T = any> extends ClForm.Ref<T> {
|
||||||
@ -733,8 +743,8 @@ declare interface Config {
|
|||||||
size: ElementPlus.Size;
|
size: ElementPlus.Size;
|
||||||
colors: string[];
|
colors: string[];
|
||||||
form: {
|
form: {
|
||||||
labelPosition: ElementPlus.FormProps["labelPosition"];
|
labelPosition: ElementPlus.FormProps['labelPosition'];
|
||||||
labelWidth: ElementPlus.FormProps["labelWidth"];
|
labelWidth: ElementPlus.FormProps['labelWidth'];
|
||||||
span: number;
|
span: number;
|
||||||
plugins: ClForm.Plugin[];
|
plugins: ClForm.Plugin[];
|
||||||
};
|
};
|
||||||
|
|||||||
8
packages/vite-plugin/dist/index.js
vendored
8
packages/vite-plugin/dist/index.js
vendored
@ -77,7 +77,9 @@
|
|||||||
function readFile(path, json) {
|
function readFile(path, json) {
|
||||||
try {
|
try {
|
||||||
const content = fs.readFileSync(path, "utf8");
|
const content = fs.readFileSync(path, "utf8");
|
||||||
return json ? JSON.parse(content) : content;
|
return json
|
||||||
|
? JSON.parse(content.replace(/\/\/.*$/gm, "").replace(/\/\*[\s\S]*?\*\//g, ""))
|
||||||
|
: content;
|
||||||
}
|
}
|
||||||
catch (err) { }
|
catch (err) { }
|
||||||
return "";
|
return "";
|
||||||
@ -111,7 +113,7 @@
|
|||||||
console.log("\x1B[31m%s\x1B[0m", message);
|
console.log("\x1B[31m%s\x1B[0m", message);
|
||||||
}
|
}
|
||||||
|
|
||||||
let service = {};
|
const service = {};
|
||||||
let list = [];
|
let list = [];
|
||||||
let customList = [];
|
let customList = [];
|
||||||
// 获取请求地址
|
// 获取请求地址
|
||||||
@ -533,7 +535,7 @@
|
|||||||
<\/script>`);
|
<\/script>`);
|
||||||
return {
|
return {
|
||||||
map: str().generateMap(),
|
map: str().generateMap(),
|
||||||
code: str().toString()
|
code: str().toString(),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@cool-vue/vite-plugin",
|
"name": "@cool-vue/vite-plugin",
|
||||||
"version": "7.2.4",
|
"version": "7.2.5",
|
||||||
"description": "cool-admin、cool-uni builder",
|
"description": "cool-admin、cool-uni builder",
|
||||||
"main": "/dist/index.js",
|
"main": "/dist/index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
@ -38,7 +38,9 @@ export function createDir(path: string, recursive?: boolean) {
|
|||||||
export function readFile(path: string, json?: boolean) {
|
export function readFile(path: string, json?: boolean) {
|
||||||
try {
|
try {
|
||||||
const content = fs.readFileSync(path, "utf8");
|
const content = fs.readFileSync(path, "utf8");
|
||||||
return json ? JSON.parse(content) : content;
|
return json
|
||||||
|
? JSON.parse(content.replace(/\/\/.*$/gm, "").replace(/\/\*[\s\S]*?\*\//g, ""))
|
||||||
|
: content;
|
||||||
} catch (err) {}
|
} catch (err) {}
|
||||||
|
|
||||||
return "";
|
return "";
|
||||||
|
|||||||
@ -8,8 +8,9 @@
|
|||||||
"types": [
|
"types": [
|
||||||
"element-plus/global",
|
"element-plus/global",
|
||||||
"@cool-vue/vite-plugin/client",
|
"@cool-vue/vite-plugin/client",
|
||||||
"./build/cool/eps.d.ts",
|
"@cool-vue/crud/index",
|
||||||
"./env.d.ts"
|
"./build/cool/eps",
|
||||||
|
"./env"
|
||||||
],
|
],
|
||||||
"paths": {
|
"paths": {
|
||||||
"/@/*": ["./src/*"],
|
"/@/*": ["./src/*"],
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user