@gopowerteam/table-render 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/config/provide.config.d.ts +6 -0
- package/dist/cjs/defines/define-columns.d.ts +2 -0
- package/dist/cjs/defines/define-table-load.d.ts +2 -0
- package/dist/cjs/defines/index.d.ts +2 -0
- package/dist/cjs/hooks/index.d.ts +2 -0
- package/dist/cjs/hooks/use-events.d.ts +26 -0
- package/dist/cjs/hooks/use-export.d.ts +7 -0
- package/dist/cjs/hooks/use-table.d.ts +13 -0
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.d.ts +4 -1
- package/dist/cjs/interfaces/index.d.ts +9 -0
- package/dist/cjs/interfaces/table-column-options.d.ts +39 -0
- package/dist/cjs/interfaces/table-column-render.d.ts +28 -0
- package/dist/cjs/interfaces/table-load-params.d.ts +21 -0
- package/dist/cjs/render/table-column-render.d.ts +30 -0
- package/dist/cjs/render/table-view-render.d.ts +73 -0
- package/dist/cjs/table-columns/button/index.d.ts +26 -0
- package/dist/cjs/table-columns/currency/index.d.ts +9 -0
- package/dist/cjs/table-columns/date/index.d.ts +17 -0
- package/dist/cjs/table-columns/dict/index.d.ts +13 -0
- package/dist/cjs/table-columns/image/index.d.ts +10 -0
- package/dist/cjs/table-columns/index.d.ts +11 -0
- package/dist/cjs/table-columns/phone/index.d.ts +7 -0
- package/dist/cjs/table-columns/render/index.d.ts +5 -0
- package/dist/cjs/table-columns/tag/index.d.ts +8 -0
- package/dist/cjs/table-columns/text/index.d.ts +11 -0
- package/dist/cjs/utils/create-column-render.d.ts +7 -0
- package/dist/cjs/utils/create-table-form.d.ts +3 -0
- package/dist/cjs/utils/create-table-source.d.ts +3 -0
- package/dist/cjs/utils/get-column-value.d.ts +8 -0
- package/dist/cjs/utils/index.d.ts +5 -0
- package/dist/cjs/utils/set-column-value.d.ts +8 -0
- package/dist/cjs/utils/to-px.d.ts +1 -0
- package/dist/es/config/provide.config.d.ts +6 -0
- package/dist/es/defines/define-columns.d.ts +2 -0
- package/dist/es/defines/define-table-load.d.ts +2 -0
- package/dist/es/defines/index.d.ts +2 -0
- package/dist/es/hooks/index.d.ts +2 -0
- package/dist/es/hooks/use-events.d.ts +26 -0
- package/dist/es/hooks/use-export.d.ts +7 -0
- package/dist/es/hooks/use-table.d.ts +13 -0
- package/dist/es/index.d.ts +4 -1
- package/dist/es/index.mjs +494 -53
- package/dist/es/interfaces/index.d.ts +9 -0
- package/dist/es/interfaces/table-column-options.d.ts +39 -0
- package/dist/es/interfaces/table-column-render.d.ts +28 -0
- package/dist/es/interfaces/table-load-params.d.ts +21 -0
- package/dist/es/render/table-column-render.d.ts +30 -0
- package/dist/es/render/table-view-render.d.ts +73 -0
- package/dist/es/table-columns/button/index.d.ts +26 -0
- package/dist/es/table-columns/currency/index.d.ts +9 -0
- package/dist/es/table-columns/date/index.d.ts +17 -0
- package/dist/es/table-columns/dict/index.d.ts +13 -0
- package/dist/es/table-columns/image/index.d.ts +10 -0
- package/dist/es/table-columns/index.d.ts +11 -0
- package/dist/es/table-columns/phone/index.d.ts +7 -0
- package/dist/es/table-columns/render/index.d.ts +5 -0
- package/dist/es/table-columns/tag/index.d.ts +8 -0
- package/dist/es/table-columns/text/index.d.ts +11 -0
- package/dist/es/utils/create-column-render.d.ts +7 -0
- package/dist/es/utils/create-table-form.d.ts +3 -0
- package/dist/es/utils/create-table-source.d.ts +3 -0
- package/dist/es/utils/get-column-value.d.ts +8 -0
- package/dist/es/utils/index.d.ts +5 -0
- package/dist/es/utils/set-column-value.d.ts +8 -0
- package/dist/es/utils/to-px.d.ts +1 -0
- package/dist/style.css +1 -1
- package/package.json +9 -2
- package/dist/cjs/components/table-render.d.ts +0 -10
- package/dist/es/components/table-render.d.ts +0 -10
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { type PropType } from 'vue';
|
|
2
|
+
import type { DataRecord, TableColumnsOptions } from '..';
|
|
3
|
+
import type { RenderSingleButtonColumnOptions } from '../table-columns/button';
|
|
4
|
+
declare const _default: import("vue").DefineComponent<{
|
|
5
|
+
record: {
|
|
6
|
+
type: ObjectConstructor;
|
|
7
|
+
required: true;
|
|
8
|
+
};
|
|
9
|
+
columns: {
|
|
10
|
+
type: PropType<TableColumnsOptions<any>>;
|
|
11
|
+
required: true;
|
|
12
|
+
};
|
|
13
|
+
minWidth: {
|
|
14
|
+
type: NumberConstructor;
|
|
15
|
+
required: false;
|
|
16
|
+
default: number;
|
|
17
|
+
};
|
|
18
|
+
border: {
|
|
19
|
+
type: BooleanConstructor;
|
|
20
|
+
default: boolean;
|
|
21
|
+
};
|
|
22
|
+
exclude: {
|
|
23
|
+
type: PropType<string[]>;
|
|
24
|
+
default: () => never[];
|
|
25
|
+
};
|
|
26
|
+
layout: {
|
|
27
|
+
type: PropType<"horizontal" | "vertical" | "inline-horizontal" | "inline-vertical">;
|
|
28
|
+
required: false;
|
|
29
|
+
default: string;
|
|
30
|
+
};
|
|
31
|
+
buttons: {
|
|
32
|
+
type: PropType<RenderSingleButtonColumnOptions<DataRecord>[]>;
|
|
33
|
+
default: () => never[];
|
|
34
|
+
};
|
|
35
|
+
}, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
36
|
+
record: {
|
|
37
|
+
type: ObjectConstructor;
|
|
38
|
+
required: true;
|
|
39
|
+
};
|
|
40
|
+
columns: {
|
|
41
|
+
type: PropType<TableColumnsOptions<any>>;
|
|
42
|
+
required: true;
|
|
43
|
+
};
|
|
44
|
+
minWidth: {
|
|
45
|
+
type: NumberConstructor;
|
|
46
|
+
required: false;
|
|
47
|
+
default: number;
|
|
48
|
+
};
|
|
49
|
+
border: {
|
|
50
|
+
type: BooleanConstructor;
|
|
51
|
+
default: boolean;
|
|
52
|
+
};
|
|
53
|
+
exclude: {
|
|
54
|
+
type: PropType<string[]>;
|
|
55
|
+
default: () => never[];
|
|
56
|
+
};
|
|
57
|
+
layout: {
|
|
58
|
+
type: PropType<"horizontal" | "vertical" | "inline-horizontal" | "inline-vertical">;
|
|
59
|
+
required: false;
|
|
60
|
+
default: string;
|
|
61
|
+
};
|
|
62
|
+
buttons: {
|
|
63
|
+
type: PropType<RenderSingleButtonColumnOptions<DataRecord>[]>;
|
|
64
|
+
default: () => never[];
|
|
65
|
+
};
|
|
66
|
+
}>>, {
|
|
67
|
+
minWidth: number;
|
|
68
|
+
buttons: RenderSingleButtonColumnOptions<DataRecord>[];
|
|
69
|
+
border: boolean;
|
|
70
|
+
exclude: string[];
|
|
71
|
+
layout: "horizontal" | "vertical" | "inline-horizontal" | "inline-vertical";
|
|
72
|
+
}, {}>;
|
|
73
|
+
export default _default;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export type RenderButtonColumnOptions<T> = RenderSingleButtonColumnOptions<T> | RenderSingleButtonColumnOptions<T>[] | RenderMultipleButtonColumnOptions<T>;
|
|
2
|
+
export interface RenderSingleButtonColumnOptions<T> {
|
|
3
|
+
content?: string | ((record: T) => string | number | undefined);
|
|
4
|
+
onClick?: (record: T) => Promise<void> | void;
|
|
5
|
+
autoReload?: boolean;
|
|
6
|
+
type?: 'primary' | 'secondary' | 'outline' | 'dashed' | 'text';
|
|
7
|
+
shape?: 'square' | 'round' | 'circle';
|
|
8
|
+
visiable?: boolean | ((record: T) => boolean);
|
|
9
|
+
disabled?: boolean | ((record: T) => boolean);
|
|
10
|
+
confirm?: boolean;
|
|
11
|
+
icon?: () => JSX.Element;
|
|
12
|
+
confirmText?: string;
|
|
13
|
+
confirmAppend?: string | HTMLElement;
|
|
14
|
+
confirmOffset?: {
|
|
15
|
+
left: number;
|
|
16
|
+
top: number;
|
|
17
|
+
};
|
|
18
|
+
confirmPosition?: {
|
|
19
|
+
left: number;
|
|
20
|
+
top: number;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export interface RenderMultipleButtonColumnOptions<T> {
|
|
24
|
+
buttons?: RenderSingleButtonColumnOptions<T>[];
|
|
25
|
+
}
|
|
26
|
+
export declare function renderButtonColumn<T>(options: RenderButtonColumnOptions<T>): import("../..").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export interface CurrencyColumnOptions {
|
|
3
|
+
prefix?: string;
|
|
4
|
+
suffix?: string;
|
|
5
|
+
precision?: number;
|
|
6
|
+
scale?: number;
|
|
7
|
+
thousands?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function renderCurrencyColumn<T = DataRecord>(options?: CurrencyColumnOptions): import("../../interfaces").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export interface DateColumnOptions {
|
|
3
|
+
format?: keyof typeof dateFormats | (() => string);
|
|
4
|
+
}
|
|
5
|
+
declare const dateFormats: {
|
|
6
|
+
date: string;
|
|
7
|
+
datetime: string;
|
|
8
|
+
time: string;
|
|
9
|
+
week: string;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* 渲染Date Column
|
|
13
|
+
* @param options DateColumn列选项
|
|
14
|
+
* @returns JSX
|
|
15
|
+
*/
|
|
16
|
+
export declare function renderDateColumn<T = DataRecord>(options?: DateColumnOptions): import("../../interfaces").TableColumnRenderResult<T>;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
type Dict = Map<string | number | boolean, string | number | boolean>;
|
|
3
|
+
declare const TagType: {
|
|
4
|
+
success: string;
|
|
5
|
+
warning: string;
|
|
6
|
+
error: string;
|
|
7
|
+
};
|
|
8
|
+
export type DictColumnOptions = Dict | {
|
|
9
|
+
dict: Dict;
|
|
10
|
+
tag: boolean | keyof typeof TagType;
|
|
11
|
+
};
|
|
12
|
+
export declare function renderDictColumn<T = DataRecord>(options: DictColumnOptions): import("../../interfaces").TableColumnRenderResult<T>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export interface ImageColumnOptions {
|
|
3
|
+
width?: string;
|
|
4
|
+
height?: string;
|
|
5
|
+
radius?: string;
|
|
6
|
+
preview?: boolean;
|
|
7
|
+
rotate?: number;
|
|
8
|
+
parse?: (key: string) => Promise<string>;
|
|
9
|
+
}
|
|
10
|
+
export declare function renderImageColumn<T = DataRecord>(options?: ImageColumnOptions): import("../..").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare function TableColumnRenders<T>(): {
|
|
2
|
+
text: (options?: import("./text").TextColumnOptions<T> | undefined) => import("..").TableColumnRenderResult<T>;
|
|
3
|
+
dict: (options: import("./dict").DictColumnOptions) => import("..").TableColumnRenderResult<T>;
|
|
4
|
+
tag: (options?: import("./tag").TagColumnOptions | undefined) => import("..").TableColumnRenderResult<T>;
|
|
5
|
+
render: (renderer: import("./render").RenderColumnOptions<T>) => import("..").TableColumnRenderResult<T>;
|
|
6
|
+
phone: (options?: import("./phone").PhoneColumnOptions | undefined) => import("..").TableColumnRenderResult<T>;
|
|
7
|
+
image: (options?: import("./image").ImageColumnOptions | undefined) => import("..").TableColumnRenderResult<T>;
|
|
8
|
+
currency: (options?: import("./currency").CurrencyColumnOptions | undefined) => import("..").TableColumnRenderResult<T>;
|
|
9
|
+
date: (options?: import("./currency").CurrencyColumnOptions | undefined) => import("..").TableColumnRenderResult<T>;
|
|
10
|
+
button: (options: import("./button").RenderButtonColumnOptions<T>) => import("..").TableColumnRenderResult<T>;
|
|
11
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export interface PhoneColumnOptions {
|
|
3
|
+
safe?: boolean;
|
|
4
|
+
separator?: string;
|
|
5
|
+
callable?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function renderPhoneColumn<T = DataRecord>(options?: PhoneColumnOptions): import("../../interfaces").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export interface RenderColumnOptions<T> {
|
|
3
|
+
(record: T): JSX.Element;
|
|
4
|
+
}
|
|
5
|
+
export declare function renderRenderColumn<T = DataRecord>(renderer: RenderColumnOptions<T>): import("../../interfaces").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export interface TagColumnOptions {
|
|
3
|
+
textColors?: string[] | ((tag: any, index: number) => string);
|
|
4
|
+
backgroundColors?: string[] | ((tag: any, index: number) => string);
|
|
5
|
+
border?: string;
|
|
6
|
+
radius?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare function renderTagColumn<T = DataRecord>(options?: TagColumnOptions): import("../../interfaces").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DataRecord } from '../../interfaces';
|
|
2
|
+
export type TextColumnOptions<T> = TextColumnObjectOptions<T> | TextColumnFunctionOptions<T>;
|
|
3
|
+
export interface TextColumnObjectOptions<T> {
|
|
4
|
+
color?: string | ((record: T) => string);
|
|
5
|
+
content?: string | ((record: T) => string | number | undefined);
|
|
6
|
+
size?: string | number | ((record: T) => string | number);
|
|
7
|
+
}
|
|
8
|
+
export interface TextColumnFunctionOptions<T> {
|
|
9
|
+
(record: T): string | number | undefined;
|
|
10
|
+
}
|
|
11
|
+
export declare function renderTextColumn<T = DataRecord>(options?: TextColumnOptions<T>): import("../../interfaces").TableColumnRenderResult<T>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TableColumnRenderResult } from '../interfaces';
|
|
2
|
+
export declare const RenderColumnType: unique symbol;
|
|
3
|
+
export declare function createColumnRender<T>(type: string, render: TableColumnRenderResult<T>, options?: {
|
|
4
|
+
disableColumnMode?: boolean;
|
|
5
|
+
disableViewMode?: boolean;
|
|
6
|
+
showOverflow?: boolean;
|
|
7
|
+
}): TableColumnRenderResult<T>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function toPx(value: string | number | undefined): string | undefined;
|