@gopowerteam/table-render 0.0.1 → 0.0.3

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.
Files changed (88) hide show
  1. package/dist/cjs/config/provide.config.d.ts +6 -0
  2. package/dist/cjs/defines/define-columns.d.ts +2 -0
  3. package/dist/cjs/defines/define-table-load.d.ts +2 -0
  4. package/dist/cjs/defines/index.d.ts +2 -0
  5. package/dist/cjs/hooks/index.d.ts +2 -0
  6. package/dist/cjs/hooks/use-events.d.ts +38 -0
  7. package/dist/cjs/hooks/use-export.d.ts +7 -0
  8. package/dist/cjs/hooks/use-table.d.ts +13 -0
  9. package/dist/cjs/index.cjs +57 -1
  10. package/dist/cjs/index.d.ts +4 -1
  11. package/dist/cjs/interfaces/index.d.ts +10 -0
  12. package/dist/cjs/interfaces/pageable-options.d.ts +26 -0
  13. package/dist/cjs/interfaces/sortable-options.d.ts +8 -0
  14. package/dist/cjs/interfaces/table-column-options.d.ts +40 -0
  15. package/dist/cjs/interfaces/table-column-render.d.ts +27 -0
  16. package/dist/cjs/interfaces/table-load-params.d.ts +18 -0
  17. package/dist/cjs/table-columns/button/index.d.ts +26 -0
  18. package/dist/cjs/table-columns/currency/index.d.ts +9 -0
  19. package/dist/cjs/table-columns/date/index.d.ts +17 -0
  20. package/dist/cjs/table-columns/dict/index.d.ts +13 -0
  21. package/dist/cjs/table-columns/image/index.d.ts +10 -0
  22. package/dist/cjs/table-columns/index.d.ts +11 -0
  23. package/dist/cjs/table-columns/phone/index.d.ts +7 -0
  24. package/dist/cjs/table-columns/render/index.d.ts +5 -0
  25. package/dist/cjs/table-columns/tag/index.d.ts +8 -0
  26. package/dist/cjs/table-columns/text/index.d.ts +11 -0
  27. package/dist/cjs/table-render/table-actions-render.d.ts +2 -0
  28. package/dist/cjs/table-render/table-column-render.d.ts +29 -0
  29. package/dist/cjs/table-render/table-edit-render.d.ts +30 -0
  30. package/dist/cjs/table-render/table-form-render.d.ts +2 -0
  31. package/dist/cjs/table-render/table-pagination-render.d.ts +2 -0
  32. package/dist/cjs/table-render/table-selection-render.d.ts +9 -0
  33. package/dist/cjs/table-render/table-view-render.d.ts +73 -0
  34. package/dist/cjs/utils/create-column-render.d.ts +7 -0
  35. package/dist/cjs/utils/create-table-form.d.ts +3 -0
  36. package/dist/cjs/utils/create-table-source.d.ts +3 -0
  37. package/dist/cjs/utils/get-column-value.d.ts +8 -0
  38. package/dist/cjs/utils/index.d.ts +5 -0
  39. package/dist/cjs/utils/page.service.d.ts +37 -0
  40. package/dist/cjs/utils/set-column-value.d.ts +8 -0
  41. package/dist/cjs/utils/sort.service.d.ts +26 -0
  42. package/dist/cjs/utils/to-px.d.ts +1 -0
  43. package/dist/es/config/provide.config.d.ts +6 -0
  44. package/dist/es/defines/define-columns.d.ts +2 -0
  45. package/dist/es/defines/define-table-load.d.ts +2 -0
  46. package/dist/es/defines/index.d.ts +2 -0
  47. package/dist/es/hooks/index.d.ts +2 -0
  48. package/dist/es/hooks/use-events.d.ts +38 -0
  49. package/dist/es/hooks/use-export.d.ts +7 -0
  50. package/dist/es/hooks/use-table.d.ts +13 -0
  51. package/dist/es/index.d.ts +4 -1
  52. package/dist/es/index.mjs +34327 -53
  53. package/dist/es/interfaces/index.d.ts +10 -0
  54. package/dist/es/interfaces/pageable-options.d.ts +26 -0
  55. package/dist/es/interfaces/sortable-options.d.ts +8 -0
  56. package/dist/es/interfaces/table-column-options.d.ts +40 -0
  57. package/dist/es/interfaces/table-column-render.d.ts +27 -0
  58. package/dist/es/interfaces/table-load-params.d.ts +18 -0
  59. package/dist/es/table-columns/button/index.d.ts +26 -0
  60. package/dist/es/table-columns/currency/index.d.ts +9 -0
  61. package/dist/es/table-columns/date/index.d.ts +17 -0
  62. package/dist/es/table-columns/dict/index.d.ts +13 -0
  63. package/dist/es/table-columns/image/index.d.ts +10 -0
  64. package/dist/es/table-columns/index.d.ts +11 -0
  65. package/dist/es/table-columns/phone/index.d.ts +7 -0
  66. package/dist/es/table-columns/render/index.d.ts +5 -0
  67. package/dist/es/table-columns/tag/index.d.ts +8 -0
  68. package/dist/es/table-columns/text/index.d.ts +11 -0
  69. package/dist/es/table-render/table-actions-render.d.ts +2 -0
  70. package/dist/es/table-render/table-column-render.d.ts +29 -0
  71. package/dist/es/table-render/table-edit-render.d.ts +30 -0
  72. package/dist/es/table-render/table-form-render.d.ts +2 -0
  73. package/dist/es/table-render/table-pagination-render.d.ts +2 -0
  74. package/dist/es/table-render/table-selection-render.d.ts +9 -0
  75. package/dist/es/table-render/table-view-render.d.ts +73 -0
  76. package/dist/es/utils/create-column-render.d.ts +7 -0
  77. package/dist/es/utils/create-table-form.d.ts +3 -0
  78. package/dist/es/utils/create-table-source.d.ts +3 -0
  79. package/dist/es/utils/get-column-value.d.ts +8 -0
  80. package/dist/es/utils/index.d.ts +5 -0
  81. package/dist/es/utils/page.service.d.ts +37 -0
  82. package/dist/es/utils/set-column-value.d.ts +8 -0
  83. package/dist/es/utils/sort.service.d.ts +26 -0
  84. package/dist/es/utils/to-px.d.ts +1 -0
  85. package/dist/style.css +1 -1
  86. package/package.json +10 -2
  87. package/dist/cjs/components/table-render.d.ts +0 -10
  88. package/dist/es/components/table-render.d.ts +0 -10
@@ -0,0 +1,10 @@
1
+ export * from './table-column-render';
2
+ export * from './table-column-options';
3
+ export * from './table-load-params';
4
+ export * from './sortable-options';
5
+ export interface DataRecord {
6
+ [key: string]: any;
7
+ }
8
+ export interface DataProp {
9
+ [key: string]: any;
10
+ }
@@ -0,0 +1,26 @@
1
+ export interface PageableOptions {
2
+ /**
3
+ * 当前页码
4
+ */
5
+ pageIndex: number;
6
+ /**
7
+ * 分页容量
8
+ */
9
+ pageSize: number;
10
+ /**
11
+ * 分页容量选项
12
+ */
13
+ pageSizeOpts: number[];
14
+ /**
15
+ * 分页布局
16
+ */
17
+ pageLayouts: Array<'PrevJump' | 'PrevPage' | 'JumpNumber' | 'NextPage' | 'NextJump' | 'Sizes' | 'FullJump' | 'Total'>;
18
+ /**
19
+ * 数据总数
20
+ */
21
+ total: number;
22
+ /**
23
+ * 重置分页数据
24
+ */
25
+ reset(): void;
26
+ }
@@ -0,0 +1,8 @@
1
+ export interface SortableOptions {
2
+ /**
3
+ * 重置分页数据
4
+ */
5
+ reset(): void;
6
+ update(key: string, diretion: 'asc' | 'desc'): void;
7
+ remove(key: string): void;
8
+ }
@@ -0,0 +1,40 @@
1
+ import type { FormItemOptions } from '@gopowerteam/form-render';
2
+ import type { TableColumnData } from '@arco-design/web-vue';
3
+ import type { TableColumnRender } from './table-column-render';
4
+ import type { DataRecord } from '.';
5
+ export interface TableColumnPreviewOptions {
6
+ span?: number;
7
+ }
8
+ export interface TableColumnSharedOptions {
9
+ align?: 'left' | 'right' | 'center';
10
+ width?: number;
11
+ ellipsis?: boolean;
12
+ }
13
+ /**
14
+ * 列配置
15
+ */
16
+ export interface TableColumnOptions<T> {
17
+ key: string;
18
+ title: string;
19
+ index?: string;
20
+ fixed?: 'left' | 'right';
21
+ align?: 'left' | 'right' | 'center';
22
+ width?: number | 'auto';
23
+ render?: TableColumnRender<T>;
24
+ form?: boolean | Omit<FormItemOptions, 'key' | 'title'>;
25
+ formatter?: DataFormatter<T>;
26
+ ellipsis?: boolean;
27
+ preview?: TableColumnPreviewOptions;
28
+ exportable?: ExportColumnOptions | boolean;
29
+ sortable?: 'asc' | 'desc';
30
+ treeNode?: boolean;
31
+ visiable?: boolean | (() => boolean);
32
+ extraProps?: Partial<Omit<TableColumnData, 'dataIndex' | 'title' | 'fixed' | 'align' | 'width'>>;
33
+ }
34
+ export interface ExportColumnOptions {
35
+ header?: string;
36
+ width?: number;
37
+ content?: (record: DataRecord) => string | number | undefined;
38
+ }
39
+ export type TableColumnsOptions<T = DataRecord> = TableColumnOptions<T>[];
40
+ export type DataFormatter<T> = (record: T) => string | number | Date | undefined;
@@ -0,0 +1,27 @@
1
+ import type { EventEmits } from '../hooks';
2
+ import type { TableColumnRenders } from '../table-columns';
3
+ import type { TableColumnOptions } from './table-column-options';
4
+ interface TableColumnRenderResultType {
5
+ $type?: string;
6
+ $disableColumnMode?: boolean;
7
+ $disableViewMode?: boolean;
8
+ }
9
+ export interface TableColumnRenderResult<T> extends TableColumnRenderResultType {
10
+ (record: T, columnOptions: TableColumnOptions<T>, ctx?: {
11
+ previewing?: boolean;
12
+ emits?: EventEmits;
13
+ }): JSX.Element;
14
+ }
15
+ /**
16
+ * Render函数
17
+ */
18
+ export interface TableColumnRender<T> {
19
+ (render: TableColumnRenderFun<T>): TableColumnRenderResult<T>;
20
+ }
21
+ /**
22
+ * Render函数模板
23
+ */
24
+ type TableColumnRenderFun<T> = ReturnType<typeof TableColumnRenders<T>> & {
25
+ [key: string]: any;
26
+ };
27
+ export {};
@@ -0,0 +1,18 @@
1
+ import type { RequestPlugin } from '@gopowerteam/request';
2
+ import type { SortableOptions } from './sortable-options';
3
+ import type { PageableOptions } from './pageable-options';
4
+ export interface DataRecord {
5
+ [key: string]: any;
6
+ }
7
+ export interface DataProp {
8
+ [key: string]: any;
9
+ }
10
+ /**
11
+ * 数据加载参数
12
+ */
13
+ export interface TableLoadParams {
14
+ form: DataRecord;
15
+ page?: (RequestPlugin & PageableOptions);
16
+ sort?: (RequestPlugin & SortableOptions);
17
+ update: (data: DataRecord[]) => void;
18
+ }
@@ -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,2 @@
1
+ import type { TableRenderContext, TableRenderOptions, TableRenderProps } from '.';
2
+ export declare function tableActionsRender(props: TableRenderProps, ctx: TableRenderContext, { tableForm, tableEvents, }: TableRenderOptions): () => import("vue/jsx-runtime").JSX.Element;
@@ -0,0 +1,29 @@
1
+ import { type TableColumnData, type TableData } from '@arco-design/web-vue';
2
+ import type { TableColumnOptions, TableColumnSharedOptions, TableColumnsOptions } from '../interfaces';
3
+ import { RenderColumnType } from '../utils';
4
+ import type { EventEmits } from '../hooks';
5
+ /**
6
+ * 生成Render模板
7
+ * @param render
8
+ * @returns
9
+ */
10
+ export declare function toRenderColumn<T>(options?: TableColumnOptions<T>, context?: {
11
+ previewing?: boolean;
12
+ emits?: EventEmits;
13
+ }): {
14
+ render: ({ record }: {
15
+ record: TableData;
16
+ }) => JSX.Element;
17
+ [RenderColumnType]: string | undefined;
18
+ disableColumnMode: boolean | undefined;
19
+ disableViewMode: boolean | undefined;
20
+ isRender: boolean;
21
+ type: string | undefined;
22
+ } | undefined;
23
+ export declare function renderTableColumns(columns: TableColumnsOptions, columnsOptions: TableColumnSharedOptions | undefined, events: EventEmits): TableColumnData[];
24
+ /**
25
+ * 创建表格列
26
+ * @param options
27
+ * @returns
28
+ */
29
+ export declare function renderTableColumn<T>(options: TableColumnOptions<T>, events: EventEmits): TableColumnData | undefined;
@@ -0,0 +1,30 @@
1
+ import { type PropType } from 'vue';
2
+ import { type FormItemsOptions } from '@gopowerteam/form-render';
3
+ declare const _default: import("vue").DefineComponent<{
4
+ record: {
5
+ type: ObjectConstructor;
6
+ required: true;
7
+ };
8
+ form: {
9
+ type: PropType<FormItemsOptions<any>>;
10
+ required: true;
11
+ };
12
+ onSubmit: {
13
+ type: FunctionConstructor;
14
+ required: false;
15
+ };
16
+ }, () => 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<{
17
+ record: {
18
+ type: ObjectConstructor;
19
+ required: true;
20
+ };
21
+ form: {
22
+ type: PropType<FormItemsOptions<any>>;
23
+ required: true;
24
+ };
25
+ onSubmit: {
26
+ type: FunctionConstructor;
27
+ required: false;
28
+ };
29
+ }>>, {}, {}>;
30
+ export default _default;
@@ -0,0 +1,2 @@
1
+ import type { TableRenderContext, TableRenderOptions, TableRenderProps } from '.';
2
+ export declare function tableFormRender(props: TableRenderProps, ctx: TableRenderContext, { tableForm, tableEvents, formInstance, }: TableRenderOptions): (() => import("vue/jsx-runtime").JSX.Element) | (() => undefined);
@@ -0,0 +1,2 @@
1
+ import type { TableRenderContext, TableRenderOptions, TableRenderProps } from '.';
2
+ export declare function tablePaginationRender(props: TableRenderProps, ctx: TableRenderContext, { pageService, tableEvents, }: TableRenderOptions): (() => import("vue/jsx-runtime").JSX.Element) | (() => undefined);
@@ -0,0 +1,9 @@
1
+ import { type Ref } from 'vue';
2
+ import type { TableData, TableRowSelection } from '@arco-design/web-vue';
3
+ import type { TableRenderContext, TableRenderOptions, TableRenderProps } from '.';
4
+ export declare function tableSecletionRender(props: TableRenderProps, ctx: TableRenderContext, { tableSource, }: TableRenderOptions): {
5
+ selectedRowKeys: Ref<(string | number)[]>;
6
+ rowSelection?: TableRowSelection;
7
+ onSelect: (rowKeys: (string | number)[], rowKey: string | number, record: TableData) => void;
8
+ onSelectAll: (value: boolean) => void;
9
+ };
@@ -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,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,3 @@
1
+ import type { FormItemsOptions } from '@gopowerteam/form-render';
2
+ import type { TableColumnsOptions } from '../interfaces';
3
+ export declare function createTableForm(columns: TableColumnsOptions): FormItemsOptions;
@@ -0,0 +1,3 @@
1
+ import { type Ref } from 'vue';
2
+ import type { DataRecord, TableColumnsOptions } from '../interfaces';
3
+ export declare function createTableSource(columns: TableColumnsOptions): [Ref<DataRecord[]>, (source: DataRecord[]) => void];
@@ -0,0 +1,8 @@
1
+ import type { TableColumnOptions } from '../interfaces';
2
+ /**
3
+ * 获取当前
4
+ * @param record
5
+ * @param column
6
+ * @returns
7
+ */
8
+ export declare function getColumnValue<T>(record: T, column: TableColumnOptions<T>): any;
@@ -0,0 +1,5 @@
1
+ export * from './create-column-render';
2
+ export * from './create-table-form';
3
+ export * from './create-table-source';
4
+ export * from './get-column-value';
5
+ export * from './set-column-value';
@@ -0,0 +1,37 @@
1
+ import type { AdapterResponse, RequestPlugin, RequestSendOptions } from '@gopowerteam/request';
2
+ import type { PageableOptions } from '../interfaces/pageable-options';
3
+ export declare class PageService implements RequestPlugin, PageableOptions {
4
+ data: {
5
+ index: number;
6
+ size: number;
7
+ total: number;
8
+ };
9
+ get pageIndex(): number;
10
+ set pageIndex(value: number);
11
+ get pageSize(): number;
12
+ set pageSize(value: number);
13
+ get total(): number;
14
+ set total(value: number);
15
+ pageSizeOpts: number[];
16
+ pageLayouts: ('PrevJump' | 'PrevPage' | 'JumpNumber' | 'NextPage' | 'NextJump' | 'Sizes' | 'FullJump' | 'Total')[];
17
+ /**
18
+ * 构造函数
19
+ * @param index
20
+ * @param size
21
+ */
22
+ constructor(index?: number, size?: number);
23
+ /**
24
+ * 重置操作
25
+ */
26
+ reset(): void;
27
+ /**
28
+ * 前置操作
29
+ * @param options
30
+ */
31
+ before(options: RequestSendOptions): void;
32
+ /**
33
+ * 后置操作
34
+ * @param response
35
+ */
36
+ after(response: AdapterResponse): void;
37
+ }
@@ -0,0 +1,8 @@
1
+ import type { DataRecord, TableColumnOptions } from '../interfaces';
2
+ /**
3
+ * 获取当前
4
+ * @param record
5
+ * @param column
6
+ * @returns
7
+ */
8
+ export declare function setColumnValue<T = DataRecord>(record: DataRecord, column: TableColumnOptions<T>, value: any): any;
@@ -0,0 +1,26 @@
1
+ import type { RequestPlugin, RequestSendOptions } from '@gopowerteam/request';
2
+ import type { SortableOptions } from '../interfaces';
3
+ export declare class SortService implements RequestPlugin, SortableOptions {
4
+ private sort;
5
+ constructor(data?: any);
6
+ /**
7
+ * 更新排序
8
+ * @param key 排序关键字
9
+ * @param value 排序方式
10
+ */
11
+ update(key: string, value: 'desc' | 'asc'): void;
12
+ /**
13
+ * 移除排序项
14
+ * @param key 排序关键字
15
+ */
16
+ remove(key: string): void;
17
+ before: (params: RequestSendOptions) => void;
18
+ /**
19
+ * 重置分页数据
20
+ */
21
+ reset(): void;
22
+ /**
23
+ * 转换排序对象为字符串
24
+ */
25
+ private stringify;
26
+ }
@@ -0,0 +1 @@
1
+ export declare function toPx(value: string | number | undefined): string | undefined;