@tmagic/table 1.5.0-beta.5 → 1.5.0-beta.7

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.
@@ -107,9 +107,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
107
107
  size: "small",
108
108
  onClick: ($event) => save(scope.$index, _ctx.config)
109
109
  }, {
110
- default: withCtx(() => [
110
+ default: withCtx(() => _cache[0] || (_cache[0] = [
111
111
  createTextVNode("保存")
112
- ]),
112
+ ])),
113
113
  _: 2
114
114
  }, 1032, ["onClick"]), [
115
115
  [vShow, _ctx.editState[scope.$index]]
@@ -121,9 +121,9 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
121
121
  size: "small",
122
122
  onClick: ($event) => _ctx.editState[scope.$index] = void 0
123
123
  }, {
124
- default: withCtx(() => [
124
+ default: withCtx(() => _cache[1] || (_cache[1] = [
125
125
  createTextVNode("取消")
126
- ]),
126
+ ])),
127
127
  _: 2
128
128
  }, 1032, ["onClick"]), [
129
129
  [vShow, _ctx.editState[scope.$index]]
@@ -237,6 +237,7 @@ const formatter = (item, row) => {
237
237
  return row[item.prop];
238
238
  }
239
239
  };
240
+ const createColumns = (columns) => columns;
240
241
 
241
242
  const _sfc_main$2 = /* @__PURE__ */ defineComponent({
242
243
  ...{
@@ -555,4 +556,4 @@ const index = {
555
556
  }
556
557
  };
557
558
 
558
- export { _sfc_main as MagicTable, index as default, formatter };
559
+ export { _sfc_main as MagicTable, createColumns, index as default, formatter };
@@ -108,9 +108,9 @@
108
108
  size: "small",
109
109
  onClick: ($event) => save(scope.$index, _ctx.config)
110
110
  }, {
111
- default: vue.withCtx(() => [
111
+ default: vue.withCtx(() => _cache[0] || (_cache[0] = [
112
112
  vue.createTextVNode("保存")
113
- ]),
113
+ ])),
114
114
  _: 2
115
115
  }, 1032, ["onClick"]), [
116
116
  [vue.vShow, _ctx.editState[scope.$index]]
@@ -122,9 +122,9 @@
122
122
  size: "small",
123
123
  onClick: ($event) => _ctx.editState[scope.$index] = void 0
124
124
  }, {
125
- default: vue.withCtx(() => [
125
+ default: vue.withCtx(() => _cache[1] || (_cache[1] = [
126
126
  vue.createTextVNode("取消")
127
- ]),
127
+ ])),
128
128
  _: 2
129
129
  }, 1032, ["onClick"]), [
130
130
  [vue.vShow, _ctx.editState[scope.$index]]
@@ -238,6 +238,7 @@
238
238
  return row[item.prop];
239
239
  }
240
240
  };
241
+ const createColumns = (columns) => columns;
241
242
 
242
243
  const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
243
244
  ...{
@@ -557,6 +558,7 @@
557
558
  };
558
559
 
559
560
  exports.MagicTable = _sfc_main;
561
+ exports.createColumns = createColumns;
560
562
  exports.default = index;
561
563
  exports.formatter = formatter;
562
564
 
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.5.0-beta.5",
2
+ "version": "1.5.0-beta.7",
3
3
  "name": "@tmagic/table",
4
4
  "type": "module",
5
5
  "main": "dist/tmagic-table.umd.cjs",
@@ -36,18 +36,18 @@
36
36
  "devDependencies": {
37
37
  "@types/lodash-es": "^4.17.4",
38
38
  "@types/node": "^18.19.0",
39
- "@vitejs/plugin-vue": "^5.1.1",
40
- "@vue/compiler-sfc": "^3.4.27",
39
+ "@vitejs/plugin-vue": "^5.1.3",
40
+ "@vue/compiler-sfc": "^3.5.0",
41
41
  "@vue/test-utils": "^2.4.6",
42
42
  "rimraf": "^3.0.2",
43
- "sass": "^1.77.0",
44
- "vite": "^5.3.5"
43
+ "sass": "^1.78.0",
44
+ "vite": "^5.4.3"
45
45
  },
46
46
  "peerDependencies": {
47
- "vue": "^3.4.35",
47
+ "vue": "^3.5.0",
48
48
  "typescript": "*",
49
- "@tmagic/design": "1.5.0-beta.5",
50
- "@tmagic/form": "1.5.0-beta.5"
49
+ "@tmagic/design": "1.5.0-beta.7",
50
+ "@tmagic/form": "1.5.0-beta.7"
51
51
  },
52
52
  "peerDependenciesMeta": {
53
53
  "typescript": {
package/src/schema.ts CHANGED
@@ -19,7 +19,7 @@
19
19
  import { FormConfig, FormValue } from '@tmagic/form';
20
20
 
21
21
  export interface ColumnActionConfig {
22
- type?: 'delete' | 'copy' | 'edit';
22
+ type?: 'delete' | 'copy' | 'edit' | string;
23
23
  buttonType?: string;
24
24
  display?: (row: any) => boolean;
25
25
  text?: string | ((row: any) => string);
@@ -46,6 +46,7 @@ export interface ColumnConfig<T = any> {
46
46
  type?: 'popover' | 'expand' | 'component' | string | ((value: any, row: T) => string);
47
47
  text?: string;
48
48
  prop?: string;
49
+ name?: string;
49
50
  showHeader?: boolean;
50
51
  table?: ColumnConfig[];
51
52
  formatter?: 'datetime' | ((item: any, row: T) => any);
package/src/utils.ts CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  import { datetimeFormatter } from '@tmagic/form';
20
20
 
21
- import { ColumnConfig } from './schema';
21
+ import type { ColumnConfig } from './schema';
22
22
 
23
23
  export const formatter = (item: ColumnConfig, row: any) => {
24
24
  if (!item.prop) return '';
@@ -37,3 +37,5 @@ export const formatter = (item: ColumnConfig, row: any) => {
37
37
  return row[item.prop];
38
38
  }
39
39
  };
40
+
41
+ export const createColumns = (columns: ColumnConfig[]) => columns;
package/types/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import { App } from 'vue';
3
3
  import { FormConfig, FormValue } from '@tmagic/form';
4
4
 
5
5
  interface ColumnActionConfig {
6
- type?: 'delete' | 'copy' | 'edit';
6
+ type?: 'delete' | 'copy' | 'edit' | string;
7
7
  buttonType?: string;
8
8
  display?: (row: any) => boolean;
9
9
  text?: string | ((row: any) => string);
@@ -31,6 +31,7 @@ interface ColumnConfig<T = any> {
31
31
  type?: 'popover' | 'expand' | 'component' | string | ((value: any, row: T) => string);
32
32
  text?: string;
33
33
  prop?: string;
34
+ name?: string;
34
35
  showHeader?: boolean;
35
36
  table?: ColumnConfig[];
36
37
  formatter?: 'datetime' | ((item: any, row: T) => any);
@@ -56,7 +57,7 @@ interface ColumnConfig<T = any> {
56
57
  buttonText?: string;
57
58
  }
58
59
 
59
- declare const _default$1: vue.DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToOption<{
60
+ declare const _default$1: vue.DefineComponent<{
60
61
  data: any[];
61
62
  columns?: ColumnConfig[];
62
63
  /** 合并行或列的计算方法 */
@@ -78,17 +79,11 @@ declare const _default$1: vue.DefineComponent<__VLS_WithDefaults<__VLS_TypeProps
78
79
  rowkeyName?: string;
79
80
  /** 是否带有纵向边框 */
80
81
  border?: boolean;
81
- }>, {
82
- columns: () => never[];
83
- loading: boolean;
84
- showHeader: boolean;
85
- defaultExpandAll: boolean;
86
- border: boolean;
87
- }>, {
82
+ }, {
88
83
  toggleRowSelection: (row: any, selected: boolean) => void;
89
84
  toggleRowExpansion: (row: any, expanded: boolean) => void;
90
85
  clearSelection: () => void;
91
- }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
86
+ }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
92
87
  select: (...args: any[]) => void;
93
88
  "sort-change": (...args: any[]) => void;
94
89
  "expand-change": (...args: any[]) => void;
@@ -96,7 +91,7 @@ declare const _default$1: vue.DefineComponent<__VLS_WithDefaults<__VLS_TypeProps
96
91
  "after-action": (...args: any[]) => void;
97
92
  "select-all": (...args: any[]) => void;
98
93
  "selection-change": (...args: any[]) => void;
99
- }, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<{
94
+ }, string, vue.PublicProps, Readonly<{
100
95
  data: any[];
101
96
  columns?: ColumnConfig[];
102
97
  /** 合并行或列的计算方法 */
@@ -118,13 +113,7 @@ declare const _default$1: vue.DefineComponent<__VLS_WithDefaults<__VLS_TypeProps
118
113
  rowkeyName?: string;
119
114
  /** 是否带有纵向边框 */
120
115
  border?: boolean;
121
- }>, {
122
- columns: () => never[];
123
- loading: boolean;
124
- showHeader: boolean;
125
- defaultExpandAll: boolean;
126
- border: boolean;
127
- }>>> & {
116
+ }> & Readonly<{
128
117
  onSelect?: ((...args: any[]) => any) | undefined;
129
118
  "onSort-change"?: ((...args: any[]) => any) | undefined;
130
119
  "onExpand-change"?: ((...args: any[]) => any) | undefined;
@@ -132,36 +121,19 @@ declare const _default$1: vue.DefineComponent<__VLS_WithDefaults<__VLS_TypeProps
132
121
  "onAfter-action"?: ((...args: any[]) => any) | undefined;
133
122
  "onSelect-all"?: ((...args: any[]) => any) | undefined;
134
123
  "onSelection-change"?: ((...args: any[]) => any) | undefined;
135
- }, {
124
+ }>, {
136
125
  loading: boolean;
137
126
  border: boolean;
138
127
  defaultExpandAll: boolean;
139
128
  columns: ColumnConfig[];
140
129
  showHeader: boolean;
141
- }, {}>;
142
-
143
- type __VLS_WithDefaults<P, D> = {
144
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
145
- default: D[K];
146
- }> : P[K];
147
- };
148
- type __VLS_Prettify<T> = {
149
- [K in keyof T]: T[K];
150
- } & {};
151
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
152
- type __VLS_TypePropsToOption<T> = {
153
- [K in keyof T]-?: {} extends Pick<T, K> ? {
154
- type: vue.PropType<__VLS_NonUndefinedable<T[K]>>;
155
- } : {
156
- type: vue.PropType<T[K]>;
157
- required: true;
158
- };
159
- };
130
+ }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}>;
160
131
 
161
132
  declare const formatter: (item: ColumnConfig, row: any) => any;
133
+ declare const createColumns: (columns: ColumnConfig[]) => ColumnConfig<any>[];
162
134
 
163
135
  declare const _default: {
164
136
  install(app: App): void;
165
137
  };
166
138
 
167
- export { type ColumnActionConfig, type ColumnConfig, _default$1 as MagicTable, _default as default, formatter };
139
+ export { type ColumnActionConfig, type ColumnConfig, _default$1 as MagicTable, createColumns, _default as default, formatter };