@shwfed/nuxt 0.7.10 → 0.7.11

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 (34) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/runtime/components/table.d.vue.ts +68 -2
  3. package/dist/runtime/components/table.vue +0 -1
  4. package/dist/runtime/components/table.vue.d.ts +68 -2
  5. package/dist/runtime/components/ui/dropdown-menu/DropdownMenuItem.vue +1 -1
  6. package/dist/runtime/components/ui/field/FieldLabel.vue +1 -1
  7. package/dist/runtime/components/ui/icon-picker/IconPicker.d.vue.ts +15 -0
  8. package/dist/runtime/components/ui/icon-picker/IconPicker.vue +178 -0
  9. package/dist/runtime/components/ui/icon-picker/IconPicker.vue.d.ts +15 -0
  10. package/dist/runtime/components/ui/icon-picker/index.d.ts +1 -0
  11. package/dist/runtime/components/ui/icon-picker/index.js +1 -0
  12. package/dist/runtime/components/ui/input-group/InputGroupComboboxInput.vue +1 -1
  13. package/dist/runtime/components/ui/input-group/InputGroupInput.vue +1 -1
  14. package/dist/runtime/components/ui/input-group/InputGroupNumberField.vue +1 -1
  15. package/dist/runtime/components/ui/input-group/InputGroupTextarea.vue +1 -1
  16. package/dist/runtime/components/ui/native-select/NativeSelect.d.vue.ts +2 -2
  17. package/dist/runtime/components/ui/native-select/NativeSelect.vue +1 -1
  18. package/dist/runtime/components/ui/native-select/NativeSelect.vue.d.ts +2 -2
  19. package/dist/runtime/components/ui/switch/Switch.vue +2 -2
  20. package/dist/runtime/components/ui/table/Table.d.vue.ts +69 -3
  21. package/dist/runtime/components/ui/table/Table.vue +201 -41
  22. package/dist/runtime/components/ui/table/Table.vue.d.ts +69 -3
  23. package/dist/runtime/components/ui/table/schema.d.ts +107 -4
  24. package/dist/runtime/components/ui/table/schema.js +106 -90
  25. package/dist/runtime/components/ui/table-configurator/TableConfiguratorDialog.d.vue.ts +68 -2
  26. package/dist/runtime/components/ui/table-configurator/TableConfiguratorDialog.vue +590 -104
  27. package/dist/runtime/components/ui/table-configurator/TableConfiguratorDialog.vue.d.ts +68 -2
  28. package/dist/runtime/components/ui/textarea/Textarea.vue +1 -1
  29. package/dist/runtime/plugins/toast/index.d.ts +2 -2
  30. package/dist/runtime/table-renderers/builtins.js +151 -75
  31. package/dist/runtime/table-renderers/registry.d.ts +1 -1
  32. package/dist/runtime/utils/coders.d.ts +2 -0
  33. package/dist/runtime/utils/coders.js +13 -0
  34. package/package.json +6 -6
@@ -1,4 +1,3 @@
1
- import type { TableOptions } from '@tanstack/vue-table';
2
1
  import z from 'zod';
3
2
  import type { LocaleValue } from '../../../utils/coders.js';
4
3
  export type Expression = string;
@@ -24,6 +23,40 @@ export type Column = Readonly<{
24
23
  columns?: ReadonlyArray<Column>;
25
24
  grow?: boolean;
26
25
  }>;
26
+ type TableInitialState = Readonly<{
27
+ columnVisibility?: Record<string, boolean>;
28
+ columnOrder?: ReadonlyArray<string>;
29
+ columnPinning?: Readonly<{
30
+ left?: ReadonlyArray<string>;
31
+ right?: ReadonlyArray<string>;
32
+ }>;
33
+ rowPinning?: Readonly<{
34
+ top?: ReadonlyArray<string>;
35
+ bottom?: ReadonlyArray<string>;
36
+ }>;
37
+ columnFilters?: ReadonlyArray<Readonly<{
38
+ id: string;
39
+ value: unknown;
40
+ }>>;
41
+ globalFilter?: unknown;
42
+ sorting?: ReadonlyArray<Readonly<{
43
+ id: string;
44
+ desc: boolean;
45
+ }>>;
46
+ expanded?: boolean | Record<string, boolean>;
47
+ grouping?: ReadonlyArray<string>;
48
+ columnSizing?: Record<string, number>;
49
+ columnSizingInfo?: Record<string, unknown>;
50
+ pagination?: Readonly<{
51
+ pageIndex?: number;
52
+ pageSize?: number;
53
+ }>;
54
+ rowSelection?: Record<string, boolean>;
55
+ }>;
56
+ export type TableProps = Readonly<{
57
+ initialState?: TableInitialState;
58
+ [key: string]: unknown;
59
+ }>;
27
60
  export declare const RenderC: z.ZodType<Render>;
28
61
  export declare const AccessorC: z.ZodType<Accessor>;
29
62
  export declare const ColumnC: z.ZodType<Column>;
@@ -34,15 +67,85 @@ export type TableConfig = Readonly<{
34
67
  enableMultiRowSelection?: Expression;
35
68
  columns: ReadonlyArray<Column>;
36
69
  cellStyles?: Expression;
37
- props?: Omit<TableOptions<unknown>, 'columns' | 'data' | 'getRowId' | 'getCoreRowModel'>;
70
+ props?: TableProps;
38
71
  paginationLeft?: Markdown;
39
72
  paginationRight?: Markdown;
73
+ paginationPageSizes?: ReadonlyArray<number>;
40
74
  }>;
41
75
  export declare const TableConfigGetRowIdC: z.ZodOptional<z.ZodString>;
42
76
  export declare const TableConfigGetSubRowsC: z.ZodOptional<z.ZodString>;
43
77
  export declare const TableConfigEnableRowSelectionC: z.ZodOptional<z.ZodString>;
44
78
  export declare const TableConfigEnableMultiRowSelectionC: z.ZodOptional<z.ZodString>;
45
79
  export declare const TableConfigCellStylesC: z.ZodOptional<z.ZodString>;
46
- export declare const TableConfigC: z.ZodType<TableConfig>;
47
- export declare function getLocalizedText(messages: LocaleValue | undefined, locale: string): string | undefined;
80
+ export declare function normalizePaginationPageSizes(value: ReadonlyArray<number> | undefined): Array<number> | undefined;
81
+ export declare function resolvePaginationPageSize(pageSize: number | undefined, paginationPageSizes: ReadonlyArray<number> | undefined): number | undefined;
82
+ export declare const TableConfigPaginationPageSizesC: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>>;
83
+ export declare const TableConfigC: z.ZodReadonly<z.ZodObject<{
84
+ getRowId: z.ZodOptional<z.ZodString>;
85
+ getSubRows: z.ZodOptional<z.ZodString>;
86
+ enableRowSelection: z.ZodOptional<z.ZodString>;
87
+ enableMultiRowSelection: z.ZodOptional<z.ZodString>;
88
+ columns: z.ZodReadonly<z.ZodArray<z.ZodType<Readonly<{
89
+ id?: string;
90
+ title?: LocaleValue;
91
+ accessor?: Accessor;
92
+ renderer?: Render;
93
+ tooltip?: LocaleValue;
94
+ size?: number;
95
+ enableSorting?: boolean;
96
+ enableMultiSorting?: boolean;
97
+ enablePinning?: boolean;
98
+ columns?: ReadonlyArray<Column>;
99
+ grow?: boolean;
100
+ }>, unknown, z.core.$ZodTypeInternals<Readonly<{
101
+ id?: string;
102
+ title?: LocaleValue;
103
+ accessor?: Accessor;
104
+ renderer?: Render;
105
+ tooltip?: LocaleValue;
106
+ size?: number;
107
+ enableSorting?: boolean;
108
+ enableMultiSorting?: boolean;
109
+ enablePinning?: boolean;
110
+ columns?: ReadonlyArray<Column>;
111
+ grow?: boolean;
112
+ }>, unknown>>>>;
113
+ cellStyles: z.ZodOptional<z.ZodString>;
114
+ props: z.ZodOptional<z.ZodObject<{
115
+ initialState: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
116
+ columnVisibility: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
117
+ columnOrder: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
118
+ columnPinning: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
119
+ left: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
120
+ right: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
121
+ }, z.core.$strip>>>;
122
+ rowPinning: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
123
+ top: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
124
+ bottom: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
125
+ }, z.core.$strip>>>;
126
+ columnFilters: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
127
+ id: z.ZodString;
128
+ value: z.ZodUnknown;
129
+ }, z.core.$strip>>>>>;
130
+ globalFilter: z.ZodOptional<z.ZodUnknown>;
131
+ sorting: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodReadonly<z.ZodObject<{
132
+ id: z.ZodString;
133
+ desc: z.ZodBoolean;
134
+ }, z.core.$strip>>>>>;
135
+ expanded: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodRecord<z.ZodString, z.ZodBoolean>]>>;
136
+ grouping: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
137
+ columnSizing: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
138
+ columnSizingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
139
+ pagination: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
140
+ pageIndex: z.ZodOptional<z.ZodNumber>;
141
+ pageSize: z.ZodOptional<z.ZodNumber>;
142
+ }, z.core.$strip>>>;
143
+ rowSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
144
+ }, z.core.$strip>>>;
145
+ }, z.core.$catchall<z.ZodUnknown>>>;
146
+ paginationLeft: z.ZodOptional<z.ZodString>;
147
+ paginationRight: z.ZodOptional<z.ZodString>;
148
+ paginationPageSizes: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodNumber>>>>;
149
+ }, z.core.$strip>>;
48
150
  export declare function getColumnTechnicalKey(column: Column): string | undefined;
151
+ export {};
@@ -1,120 +1,136 @@
1
1
  import z from "zod";
2
2
  import { dotPropC, expressionC, localeC } from "../../../utils/coders.js";
3
3
  export const RenderC = z.union([
4
- z.string(),
4
+ z.string().describe("\u6E32\u67D3\u5668 ID\uFF0C\u4F8B\u5982 table.renderer.text\u3002"),
5
5
  z.object({
6
- id: z.string(),
7
- props: z.unknown()
8
- }).readonly()
9
- ]);
6
+ id: z.string().describe("\u6E32\u67D3\u5668 ID\uFF0C\u4F8B\u5982 table.renderer.money\u3002"),
7
+ props: z.unknown().describe("\u6E32\u67D3\u5668\u914D\u7F6E\u9879\u3002\u5177\u4F53\u7ED3\u6784\u53D6\u51B3\u4E8E\u5BF9\u5E94 renderer \u7684 options schema\u3002")
8
+ }).readonly().describe("\u5E26\u81EA\u5B9A\u4E49\u914D\u7F6E\u9879\u7684\u6E32\u67D3\u5668\u5B9A\u4E49\u3002")
9
+ ]).describe("\u5217\u6E32\u67D3\u5668\u914D\u7F6E\u3002\u5B57\u7B26\u4E32\u5F62\u5F0F\u4F7F\u7528\u9ED8\u8BA4\u9009\u9879\uFF1B\u5BF9\u8C61\u5F62\u5F0F\u5141\u8BB8\u4F20\u5165 renderer.props\u3002");
10
10
  export const AccessorC = z.union([
11
11
  dotPropC,
12
12
  z.object({
13
- read: expressionC(/.+/, { row: "dyn", index: "int" }),
14
- write: z.string()
15
- }).readonly()
16
- ]);
13
+ read: expressionC(/.+/, { row: "dyn", index: "int" }).describe("\u8BFB\u53D6\u5217\u503C\u7684 CEL \u8868\u8FBE\u5F0F\u3002\u53EF\u7528\u53D8\u91CF\uFF1Arow\u3001index\u3002"),
14
+ write: z.string().describe("\u5199\u56DE\u5217\u503C\u65F6\u4F7F\u7528\u7684\u8868\u8FBE\u5F0F\u3002\u901A\u5E38\u4E0E dot-prop \u8DEF\u5F84\u6216\u540E\u7AEF\u5B57\u6BB5\u540D\u5BF9\u5E94\u3002")
15
+ }).readonly().describe("\u4F7F\u7528 CEL \u663E\u5F0F\u58F0\u660E\u8BFB\u5199\u903B\u8F91\u7684\u53D6\u503C\u914D\u7F6E\u3002")
16
+ ]).describe("\u5217\u53D6\u503C\u914D\u7F6E\u3002\u5B57\u7B26\u4E32\u5F62\u5F0F\u4F7F\u7528 dot-prop \u8DEF\u5F84\uFF1B\u5BF9\u8C61\u5F62\u5F0F\u4F7F\u7528 CEL \u8BFB\u5199\u8868\u8FBE\u5F0F\u3002");
17
17
  export const ColumnC = z.object({
18
- id: z.string().optional(),
19
- title: localeC.optional(),
18
+ id: z.string().optional().describe("\u5217\u552F\u4E00\u6807\u8BC6\u3002\u6D89\u53CA\u6392\u5E8F\u3001\u56FA\u5B9A\u3001\u521D\u59CB\u72B6\u6001\u7B49\u7A33\u5B9A\u5F15\u7528\u65F6\u5EFA\u8BAE\u663E\u5F0F\u8BBE\u7F6E\u3002"),
19
+ title: localeC.optional().describe("\u5217\u6807\u9898\u7684\u672C\u5730\u5316\u5185\u5BB9\u3002"),
20
20
  accessor: AccessorC.optional(),
21
21
  renderer: RenderC.optional(),
22
- tooltip: localeC.optional(),
23
- size: z.number().optional(),
24
- enableSorting: z.boolean().optional(),
25
- enableMultiSorting: z.boolean().optional(),
26
- enablePinning: z.boolean().optional(),
27
- columns: z.lazy(() => z.array(ColumnC).readonly()).optional(),
28
- grow: z.boolean().optional()
29
- }).strict().readonly();
22
+ tooltip: localeC.optional().describe("\u5217\u5934\u63D0\u793A\u7684\u672C\u5730\u5316\u5185\u5BB9\uFF0C\u652F\u6301 Markdown \u6E32\u67D3\u3002"),
23
+ size: z.number().optional().describe("\u5217\u5BBD\uFF0C\u5355\u4F4D\u4E3A\u50CF\u7D20\u3002"),
24
+ enableSorting: z.boolean().optional().describe("\u662F\u5426\u5141\u8BB8\u5BF9\u8BE5\u5217\u6392\u5E8F\u3002"),
25
+ enableMultiSorting: z.boolean().optional().describe("\u662F\u5426\u5141\u8BB8\u8BE5\u5217\u53C2\u4E0E\u591A\u5217\u6392\u5E8F\u3002"),
26
+ enablePinning: z.boolean().optional().describe("\u662F\u5426\u5141\u8BB8\u8BE5\u5217\u88AB\u56FA\u5B9A\u5230\u5DE6\u53F3\u4E24\u4FA7\u3002"),
27
+ columns: z.lazy(() => z.array(ColumnC).readonly()).optional().describe("\u5B50\u5217\u914D\u7F6E\u3002\u8BBE\u7F6E\u540E\u5F53\u524D\u5217\u4F5C\u4E3A\u5206\u7EC4\u5217\u3002"),
28
+ grow: z.boolean().optional().describe("\u662F\u5426\u5141\u8BB8\u8BE5\u5217\u5360\u636E\u5269\u4F59\u6C34\u5E73\u7A7A\u95F4\u3002")
29
+ }).strict().readonly().describe("\u8868\u683C\u5217\u914D\u7F6E\u3002\u53F6\u5B50\u5217\u8D1F\u8D23\u53D6\u503C\u548C\u6E32\u67D3\uFF1B\u542B\u6709 columns \u7684\u5217\u7528\u4E8E\u5206\u7EC4\u5C55\u793A\u3002");
30
+ const InitialTableColumnPinningC = z.object({
31
+ left: z.array(z.string()).readonly().optional().describe("\u521D\u59CB\u56FA\u5B9A\u5728\u5DE6\u4FA7\u7684\u53F6\u5B50\u5217 ID \u5217\u8868\u3002"),
32
+ right: z.array(z.string()).readonly().optional().describe("\u521D\u59CB\u56FA\u5B9A\u5728\u53F3\u4FA7\u7684\u53F6\u5B50\u5217 ID \u5217\u8868\u3002")
33
+ }).readonly().describe("\u5217\u56FA\u5B9A\u72B6\u6001\uFF0C\u6309\u53F6\u5B50\u5217 ID \u751F\u6548\u3002");
34
+ const InitialTableRowPinningC = z.object({
35
+ top: z.array(z.string()).readonly().optional().describe("\u521D\u59CB\u56FA\u5B9A\u5728\u9876\u90E8\u7684\u884C ID \u5217\u8868\u3002"),
36
+ bottom: z.array(z.string()).readonly().optional().describe("\u521D\u59CB\u56FA\u5B9A\u5728\u5E95\u90E8\u7684\u884C ID \u5217\u8868\u3002")
37
+ }).readonly().describe("\u884C\u56FA\u5B9A\u72B6\u6001\u3002");
38
+ const InitialTableColumnFilterC = z.object({
39
+ id: z.string().describe("\u88AB\u8FC7\u6EE4\u5217\u7684 ID\u3002"),
40
+ value: z.unknown().describe("\u8BE5\u5217\u7684\u8FC7\u6EE4\u503C\u3002\u5177\u4F53\u7ED3\u6784\u53D6\u51B3\u4E8E\u5217\u8FC7\u6EE4\u5668\u5B9E\u73B0\u3002")
41
+ }).readonly().describe("\u5355\u4E2A\u5217\u8FC7\u6EE4\u6761\u4EF6\u3002");
42
+ const InitialTableSortingItemC = z.object({
43
+ id: z.string().describe("\u53C2\u4E0E\u6392\u5E8F\u7684\u5217 ID\u3002"),
44
+ desc: z.boolean().describe("\u662F\u5426\u4E3A\u964D\u5E8F\u6392\u5E8F\u3002")
45
+ }).readonly().describe("\u5355\u4E2A\u6392\u5E8F\u89C4\u5219\u3002");
46
+ const InitialTablePaginationC = z.object({
47
+ pageIndex: z.number().optional().describe("\u521D\u59CB\u9875\u7801\uFF0C\u4ECE 0 \u5F00\u59CB\u3002"),
48
+ pageSize: z.number().optional().describe("\u521D\u59CB\u6BCF\u9875\u6761\u6570\u3002")
49
+ }).readonly().describe("\u521D\u59CB\u5206\u9875\u72B6\u6001\u3002");
30
50
  const InitialTableStateC = z.object({
31
- columnVisibility: z.record(z.string(), z.boolean()).optional(),
32
- columnOrder: z.array(z.string()).readonly().optional(),
33
- columnPinning: z.object({
34
- left: z.array(z.string()).readonly().optional(),
35
- right: z.array(z.string()).readonly().optional()
36
- }).readonly().optional(),
37
- rowPinning: z.object({
38
- top: z.array(z.string()).readonly().optional(),
39
- bottom: z.array(z.string()).readonly().optional()
40
- }).readonly().optional(),
41
- columnFilters: z.array(z.object({
42
- id: z.string(),
43
- value: z.unknown()
44
- }).readonly()).readonly().optional(),
45
- globalFilter: z.unknown().optional(),
46
- sorting: z.array(z.object({
47
- id: z.string(),
48
- desc: z.boolean()
49
- }).readonly()).readonly().optional(),
51
+ columnVisibility: z.record(z.string(), z.boolean()).optional().describe("\u5217\u663E\u793A\u72B6\u6001\uFF0Ckey \u4E3A\u5217 ID\uFF0Cvalue \u4E3A\u662F\u5426\u663E\u793A\u3002"),
52
+ columnOrder: z.array(z.string()).readonly().optional().describe("\u521D\u59CB\u5217\u987A\u5E8F\uFF0C\u6309\u53F6\u5B50\u5217 ID \u6392\u5217\u3002"),
53
+ columnPinning: InitialTableColumnPinningC.optional(),
54
+ rowPinning: InitialTableRowPinningC.optional(),
55
+ columnFilters: z.array(InitialTableColumnFilterC).readonly().optional().describe("\u521D\u59CB\u5217\u8FC7\u6EE4\u6761\u4EF6\u5217\u8868\u3002"),
56
+ globalFilter: z.unknown().optional().describe("\u5168\u5C40\u8FC7\u6EE4\u503C\u3002"),
57
+ sorting: z.array(InitialTableSortingItemC).readonly().optional().describe("\u521D\u59CB\u6392\u5E8F\u89C4\u5219\u5217\u8868\u3002"),
50
58
  expanded: z.union([
51
59
  z.boolean(),
52
60
  z.record(z.string(), z.boolean())
53
- ]).optional(),
54
- grouping: z.array(z.string()).readonly().optional(),
55
- columnSizing: z.record(z.string(), z.number()).optional(),
56
- columnSizingInfo: z.record(z.string(), z.unknown()).optional(),
57
- pagination: z.object({
58
- pageIndex: z.number().optional(),
59
- pageSize: z.number().optional()
60
- }).readonly().optional(),
61
- rowSelection: z.record(z.string(), z.boolean()).optional()
62
- }).readonly();
63
- const TablePropsC = z.any().optional().superRefine((value, ctx) => {
64
- if (value === void 0) {
65
- return;
66
- }
67
- if (typeof value !== "object" || value === null || Array.isArray(value)) {
68
- ctx.addIssue({
69
- code: "custom",
70
- message: "table props \u5FC5\u987B\u662F\u5BF9\u8C61"
71
- });
72
- return;
73
- }
74
- if (!Reflect.has(value, "initialState")) {
75
- return;
76
- }
77
- const result = InitialTableStateC.safeParse(Reflect.get(value, "initialState"));
78
- if (!result.success) {
79
- ctx.addIssue({
80
- code: "custom",
81
- message: "\u65E0\u6548\u7684 props.initialState \u914D\u7F6E",
82
- path: ["initialState"]
83
- });
84
- }
85
- });
86
- export const TableConfigGetRowIdC = expressionC("string", { row: "dyn", index: "int", parent: "dyn" }).optional();
87
- export const TableConfigGetSubRowsC = expressionC(/.+/, { row: "dyn", index: "int" }).optional();
88
- export const TableConfigEnableRowSelectionC = expressionC("bool", { row: "dyn", index: "int", id: "string" }).optional();
89
- export const TableConfigEnableMultiRowSelectionC = expressionC("bool", { row: "dyn", index: "int", id: "string" }).optional();
61
+ ]).optional().describe("\u521D\u59CB\u5C55\u5F00\u72B6\u6001\u3002true \u8868\u793A\u5168\u90E8\u5C55\u5F00\uFF1B\u5BF9\u8C61\u5F62\u5F0F\u6309\u884C ID \u63A7\u5236\u3002"),
62
+ grouping: z.array(z.string()).readonly().optional().describe("\u521D\u59CB\u5206\u7EC4\u5217 ID \u5217\u8868\u3002"),
63
+ columnSizing: z.record(z.string(), z.number()).optional().describe("\u5217\u5BBD\u72B6\u6001\uFF0Ckey \u4E3A\u5217 ID\uFF0Cvalue \u4E3A\u50CF\u7D20\u5BBD\u5EA6\u3002"),
64
+ columnSizingInfo: z.record(z.string(), z.unknown()).optional().describe("\u5217\u5BBD\u8C03\u6574\u8FC7\u7A0B\u4E2D\u7684\u5185\u90E8\u72B6\u6001\u3002"),
65
+ pagination: InitialTablePaginationC.optional(),
66
+ rowSelection: z.record(z.string(), z.boolean()).optional().describe("\u521D\u59CB\u884C\u9009\u62E9\u72B6\u6001\uFF0Ckey \u4E3A\u884C ID\u3002")
67
+ }).readonly().describe("\u8868\u683C\u521D\u59CB\u72B6\u6001\u3002\u8FD9\u91CC\u53EA\u663E\u5F0F\u6587\u6863\u5316\u7EC4\u4EF6\u4F1A\u6D88\u8D39\u548C\u900F\u4F20\u7684\u5E38\u7528\u5B57\u6BB5\u3002");
68
+ const TablePropsC = z.object({
69
+ initialState: InitialTableStateC.optional().describe("\u8868\u683C\u521D\u59CB\u72B6\u6001\u3002")
70
+ }).catchall(z.unknown()).optional().describe("\u900F\u4F20\u7ED9 TanStack Table \u7684\u989D\u5916 props\u3002\u9664 initialState \u5916\uFF0C\u5176\u4F59\u5B57\u6BB5\u4F1A\u539F\u6837\u4FDD\u7559\u3002");
71
+ export const TableConfigGetRowIdC = expressionC("string", { row: "dyn", index: "int", parent: "dyn" }).describe("\u8FD4\u56DE\u884C\u552F\u4E00 ID \u7684 CEL \u8868\u8FBE\u5F0F\u3002\u53EF\u7528\u53D8\u91CF\uFF1Arow\u3001index\u3001parent\u3002\u5FC5\u987B\u8FD4\u56DE string\u3002").optional();
72
+ export const TableConfigGetSubRowsC = expressionC(/.+/, { row: "dyn", index: "int" }).describe("\u8FD4\u56DE\u5B50\u884C\u6570\u7EC4\u7684 CEL \u8868\u8FBE\u5F0F\u3002\u53EF\u7528\u53D8\u91CF\uFF1Arow\u3001index\u3002").optional();
73
+ export const TableConfigEnableRowSelectionC = expressionC("bool", { row: "dyn", index: "int", id: "string" }).describe("\u63A7\u5236\u5355\u884C\u662F\u5426\u53EF\u9009\u7684 CEL \u8868\u8FBE\u5F0F\u3002\u53EF\u7528\u53D8\u91CF\uFF1Arow\u3001index\u3001id\u3002\u5FC5\u987B\u8FD4\u56DE bool\u3002").optional();
74
+ export const TableConfigEnableMultiRowSelectionC = expressionC("bool", { row: "dyn", index: "int", id: "string" }).describe("\u63A7\u5236\u5F53\u524D\u884C\u662F\u5426\u5141\u8BB8\u53C2\u4E0E\u591A\u9009\u7684 CEL \u8868\u8FBE\u5F0F\u3002\u53EF\u7528\u53D8\u91CF\uFF1Arow\u3001index\u3001id\u3002\u5FC5\u987B\u8FD4\u56DE bool\u3002").optional();
90
75
  export const TableConfigCellStylesC = expressionC(/^map/, {
91
76
  row: "dyn",
92
77
  index: "int",
93
78
  id: "string",
94
79
  selected: "bool",
95
80
  pinned: "dyn"
96
- }).optional();
81
+ }).describe("\u8FD4\u56DE\u5355\u5143\u683C\u6837\u5F0F\u5BF9\u8C61\u7684 CEL \u8868\u8FBE\u5F0F\u3002\u53EF\u7528\u53D8\u91CF\uFF1Arow\u3001index\u3001id\u3001selected\u3001pinned\u3002").optional();
82
+ function normalizePaginationPageSizesInput(value) {
83
+ if (value === void 0) {
84
+ return void 0;
85
+ }
86
+ if (!Array.isArray(value)) {
87
+ return value;
88
+ }
89
+ const normalizedValues = [];
90
+ for (const item of value) {
91
+ if (typeof item !== "number" || !Number.isInteger(item) || item <= 0 || normalizedValues.includes(item)) {
92
+ continue;
93
+ }
94
+ normalizedValues.push(item);
95
+ }
96
+ return normalizedValues.length > 0 ? normalizedValues : void 0;
97
+ }
98
+ export function normalizePaginationPageSizes(value) {
99
+ if (value === void 0) {
100
+ return void 0;
101
+ }
102
+ const normalized = normalizePaginationPageSizesInput(value);
103
+ if (!Array.isArray(normalized)) {
104
+ return void 0;
105
+ }
106
+ return normalized;
107
+ }
108
+ export function resolvePaginationPageSize(pageSize, paginationPageSizes) {
109
+ const normalizedPageSizes = normalizePaginationPageSizes(paginationPageSizes);
110
+ if (!normalizedPageSizes) {
111
+ return pageSize;
112
+ }
113
+ if (pageSize !== void 0 && normalizedPageSizes.includes(pageSize)) {
114
+ return pageSize;
115
+ }
116
+ return normalizedPageSizes[0];
117
+ }
118
+ export const TableConfigPaginationPageSizesC = z.preprocess(
119
+ normalizePaginationPageSizesInput,
120
+ z.array(z.number().int().positive()).readonly().optional()
121
+ ).describe("\u53EF\u9009\u6BCF\u9875\u6761\u6570\u5217\u8868\u3002\u4F1A\u81EA\u52A8\u53BB\u91CD\u3001\u8FC7\u6EE4\u975E\u6B63\u6574\u6570\uFF0C\u5E76\u4FDD\u7559\u6700\u7EC8\u987A\u5E8F\u3002");
97
122
  export const TableConfigC = z.object({
98
123
  getRowId: TableConfigGetRowIdC,
99
124
  getSubRows: TableConfigGetSubRowsC,
100
125
  enableRowSelection: TableConfigEnableRowSelectionC,
101
126
  enableMultiRowSelection: TableConfigEnableMultiRowSelectionC,
102
- columns: z.array(ColumnC).readonly(),
127
+ columns: z.array(ColumnC).readonly().describe("\u8868\u683C\u5217\u5B9A\u4E49\u5217\u8868\u3002"),
103
128
  cellStyles: TableConfigCellStylesC,
104
129
  props: TablePropsC,
105
- paginationLeft: z.string().optional(),
106
- paginationRight: z.string().optional()
107
- }).readonly();
108
- export function getLocalizedText(messages, locale) {
109
- if (!messages) {
110
- return void 0;
111
- }
112
- const localizedMessage = messages.find((message) => message.locale === locale && message.message.trim().length > 0);
113
- if (localizedMessage) {
114
- return localizedMessage.message;
115
- }
116
- return messages.find((message) => message.message.trim().length > 0)?.message;
117
- }
130
+ paginationLeft: z.string().optional().describe("\u5206\u9875\u533A\u57DF\u5DE6\u4FA7\u7684 Markdown \u6587\u6848\u3002"),
131
+ paginationRight: z.string().optional().describe("\u5206\u9875\u533A\u57DF\u53F3\u4FA7\u7684 Markdown \u6587\u6848\u3002"),
132
+ paginationPageSizes: TableConfigPaginationPageSizesC
133
+ }).readonly().describe("\u8868\u683C\u7EC4\u4EF6\u914D\u7F6E\u3002\u7528\u4E8E\u63CF\u8FF0\u5217\u7ED3\u6784\u3001\u4EA4\u4E92\u80FD\u529B\u3001\u5206\u9875\u6587\u6848\u548C\u521D\u59CB\u72B6\u6001\u3002");
118
134
  export function getColumnTechnicalKey(column) {
119
135
  if (typeof column.accessor === "string") {
120
136
  return column.accessor;
@@ -28,9 +28,42 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
28
28
  grow?: boolean;
29
29
  }>[];
30
30
  cellStyles?: import("../table/schema.js").Expression;
31
- props?: Omit<import("@tanstack/table-core").TableOptions<unknown>, "columns" | "data" | "getRowId" | "getCoreRowModel">;
31
+ props?: Readonly<{
32
+ [key: string]: unknown;
33
+ initialState?: Readonly<{
34
+ columnVisibility?: Record<string, boolean>;
35
+ columnOrder?: ReadonlyArray<string>;
36
+ columnPinning?: Readonly<{
37
+ left?: ReadonlyArray<string>;
38
+ right?: ReadonlyArray<string>;
39
+ }>;
40
+ rowPinning?: Readonly<{
41
+ top?: ReadonlyArray<string>;
42
+ bottom?: ReadonlyArray<string>;
43
+ }>;
44
+ columnFilters?: ReadonlyArray<Readonly<{
45
+ id: string;
46
+ value: unknown;
47
+ }>>;
48
+ globalFilter?: unknown;
49
+ sorting?: ReadonlyArray<Readonly<{
50
+ id: string;
51
+ desc: boolean;
52
+ }>>;
53
+ expanded?: boolean | Record<string, boolean>;
54
+ grouping?: ReadonlyArray<string>;
55
+ columnSizing?: Record<string, number>;
56
+ columnSizingInfo?: Record<string, unknown>;
57
+ pagination?: Readonly<{
58
+ pageIndex?: number;
59
+ pageSize?: number;
60
+ }>;
61
+ rowSelection?: Record<string, boolean>;
62
+ }>;
63
+ }>;
32
64
  paginationLeft?: import("../table/schema.js").Markdown;
33
65
  paginationRight?: import("../table/schema.js").Markdown;
66
+ paginationPageSizes?: ReadonlyArray<number>;
34
67
  }>) => any;
35
68
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
36
69
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
@@ -53,9 +86,42 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
53
86
  grow?: boolean;
54
87
  }>[];
55
88
  cellStyles?: import("../table/schema.js").Expression;
56
- props?: Omit<import("@tanstack/table-core").TableOptions<unknown>, "columns" | "data" | "getRowId" | "getCoreRowModel">;
89
+ props?: Readonly<{
90
+ [key: string]: unknown;
91
+ initialState?: Readonly<{
92
+ columnVisibility?: Record<string, boolean>;
93
+ columnOrder?: ReadonlyArray<string>;
94
+ columnPinning?: Readonly<{
95
+ left?: ReadonlyArray<string>;
96
+ right?: ReadonlyArray<string>;
97
+ }>;
98
+ rowPinning?: Readonly<{
99
+ top?: ReadonlyArray<string>;
100
+ bottom?: ReadonlyArray<string>;
101
+ }>;
102
+ columnFilters?: ReadonlyArray<Readonly<{
103
+ id: string;
104
+ value: unknown;
105
+ }>>;
106
+ globalFilter?: unknown;
107
+ sorting?: ReadonlyArray<Readonly<{
108
+ id: string;
109
+ desc: boolean;
110
+ }>>;
111
+ expanded?: boolean | Record<string, boolean>;
112
+ grouping?: ReadonlyArray<string>;
113
+ columnSizing?: Record<string, number>;
114
+ columnSizingInfo?: Record<string, unknown>;
115
+ pagination?: Readonly<{
116
+ pageIndex?: number;
117
+ pageSize?: number;
118
+ }>;
119
+ rowSelection?: Record<string, boolean>;
120
+ }>;
121
+ }>;
57
122
  paginationLeft?: import("../table/schema.js").Markdown;
58
123
  paginationRight?: import("../table/schema.js").Markdown;
124
+ paginationPageSizes?: ReadonlyArray<number>;
59
125
  }>) => any) | undefined;
60
126
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
61
127
  declare const _default: typeof __VLS_export;