@visactor/vue-vtable 1.9.0 → 1.9.2-alpha.0

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/cjs/index.d.ts CHANGED
@@ -2,4 +2,4 @@ import * as VTable from '@visactor/vtable';
2
2
  export * from './tables';
3
3
  export * from './components';
4
4
  export { VTable };
5
- export declare const version = "1.9.0";
5
+ export declare const version = "1.9.2-alpha.0";
package/cjs/index.js CHANGED
@@ -40,7 +40,7 @@ function _interopNamespaceDefault(e) {
40
40
 
41
41
  var VTable__namespace = /*#__PURE__*/_interopNamespaceDefault(VTable);
42
42
 
43
- const version = "1.9.0";
43
+ const version = "1.9.2-alpha.0";
44
44
 
45
45
  exports.VTable = VTable__namespace;
46
46
  Object.defineProperty(exports, 'register', {
@@ -232,63 +232,226 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
232
232
  };
233
233
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
234
234
  [key: string]: any;
235
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<{
236
- options: any;
237
- width: string | number;
238
- height: string | number;
239
- onClickCell: any;
240
- onDblClickCell: any;
241
- onMouseDownCell: any;
242
- onMouseUpCell: any;
243
- onSelectedCell: any;
244
- onKeyDown: any;
245
- onMouseEnterTable: any;
246
- onMouseLeaveTable: any;
247
- onMouseDownTable: any;
248
- onMouseMoveCell: any;
249
- onMouseEnterCell: any;
250
- onMouseLeaveCell: any;
251
- onContextMenuCell: any;
252
- onResizeColumn: any;
253
- onResizeColumnEnd: any;
254
- onChangeHeaderPosition: any;
255
- onSortClick: any;
256
- onFreezeClick: any;
257
- onScroll: any;
258
- onDropdownMenuClick: any;
259
- onMouseOverChartSymbol: any;
260
- onDragSelectEnd: any;
261
- onDropdownIconClick: any;
262
- onDropdownMenuClear: any;
263
- onTreeHierarchyStateChange: any;
264
- onShowMenu: any;
265
- onHideMenu: any;
266
- onIconClick: any;
267
- onLegendItemClick: any;
268
- onLegendItemHover: any;
269
- onLegendItemUnHover: any;
270
- onLegendChange: any;
271
- onMouseEnterAxis: any;
272
- onMouseLeaveAxis: any;
273
- onCheckboxStateChange: any;
274
- onRadioStateChange: any;
275
- onAfterRender: any;
276
- onInitialized: any;
277
- onPivotSortClick: any;
278
- onDrillMenuClick: any;
279
- onVChartEventType: any;
280
- onChangCellValue: any;
281
- onMousedownFillHandle: any;
282
- onDragFillHandleEnd: any;
283
- onDblclickFillHandle: any;
284
- onScrollVerticalEnd: any;
285
- onScrollHorizontalEnd: any;
286
- } & {
287
- type?: string;
288
- records?: unknown[];
289
- onReady?: Function;
290
- onError?: Function;
291
- } & {
235
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
236
+ type: {
237
+ type: StringConstructor;
238
+ required: false;
239
+ };
240
+ options: {
241
+ type: any;
242
+ required: false;
243
+ };
244
+ records: {
245
+ type: ArrayConstructor;
246
+ required: false;
247
+ };
248
+ width: {
249
+ type: (StringConstructor | NumberConstructor)[];
250
+ required: false;
251
+ default: string;
252
+ };
253
+ height: {
254
+ type: (StringConstructor | NumberConstructor)[];
255
+ required: false;
256
+ default: string;
257
+ };
258
+ onReady: {
259
+ type: FunctionConstructor;
260
+ required: false;
261
+ };
262
+ onError: {
263
+ type: FunctionConstructor;
264
+ required: false;
265
+ };
266
+ onClickCell: {
267
+ type: any;
268
+ required: false;
269
+ };
270
+ onDblClickCell: {
271
+ type: any;
272
+ required: false;
273
+ };
274
+ onMouseDownCell: {
275
+ type: any;
276
+ required: false;
277
+ };
278
+ onMouseUpCell: {
279
+ type: any;
280
+ required: false;
281
+ };
282
+ onSelectedCell: {
283
+ type: any;
284
+ required: false;
285
+ };
286
+ onKeyDown: {
287
+ type: any;
288
+ required: false;
289
+ };
290
+ onMouseEnterTable: {
291
+ type: any;
292
+ required: false;
293
+ };
294
+ onMouseLeaveTable: {
295
+ type: any;
296
+ required: false;
297
+ };
298
+ onMouseDownTable: {
299
+ type: any;
300
+ required: false;
301
+ };
302
+ onMouseMoveCell: {
303
+ type: any;
304
+ required: false;
305
+ };
306
+ onMouseEnterCell: {
307
+ type: any;
308
+ required: false;
309
+ };
310
+ onMouseLeaveCell: {
311
+ type: any;
312
+ required: false;
313
+ };
314
+ onContextMenuCell: {
315
+ type: any;
316
+ required: false;
317
+ };
318
+ onResizeColumn: {
319
+ type: any;
320
+ required: false;
321
+ };
322
+ onResizeColumnEnd: {
323
+ type: any;
324
+ required: false;
325
+ };
326
+ onChangeHeaderPosition: {
327
+ type: any;
328
+ required: false;
329
+ };
330
+ onSortClick: {
331
+ type: any;
332
+ required: false;
333
+ };
334
+ onFreezeClick: {
335
+ type: any;
336
+ required: false;
337
+ };
338
+ onScroll: {
339
+ type: any;
340
+ required: false;
341
+ };
342
+ onDropdownMenuClick: {
343
+ type: any;
344
+ required: false;
345
+ };
346
+ onMouseOverChartSymbol: {
347
+ type: any;
348
+ required: false;
349
+ };
350
+ onDragSelectEnd: {
351
+ type: any;
352
+ required: false;
353
+ };
354
+ onDropdownIconClick: {
355
+ type: any;
356
+ required: false;
357
+ };
358
+ onDropdownMenuClear: {
359
+ type: any;
360
+ required: false;
361
+ };
362
+ onTreeHierarchyStateChange: {
363
+ type: any;
364
+ required: false;
365
+ };
366
+ onShowMenu: {
367
+ type: any;
368
+ required: false;
369
+ };
370
+ onHideMenu: {
371
+ type: any;
372
+ required: false;
373
+ };
374
+ onIconClick: {
375
+ type: any;
376
+ required: false;
377
+ };
378
+ onLegendItemClick: {
379
+ type: any;
380
+ required: false;
381
+ };
382
+ onLegendItemHover: {
383
+ type: any;
384
+ required: false;
385
+ };
386
+ onLegendItemUnHover: {
387
+ type: any;
388
+ required: false;
389
+ };
390
+ onLegendChange: {
391
+ type: any;
392
+ required: false;
393
+ };
394
+ onMouseEnterAxis: {
395
+ type: any;
396
+ required: false;
397
+ };
398
+ onMouseLeaveAxis: {
399
+ type: any;
400
+ required: false;
401
+ };
402
+ onCheckboxStateChange: {
403
+ type: any;
404
+ required: false;
405
+ };
406
+ onRadioStateChange: {
407
+ type: any;
408
+ required: false;
409
+ };
410
+ onAfterRender: {
411
+ type: any;
412
+ required: false;
413
+ };
414
+ onInitialized: {
415
+ type: any;
416
+ required: false;
417
+ };
418
+ onPivotSortClick: {
419
+ type: any;
420
+ required: false;
421
+ };
422
+ onDrillMenuClick: {
423
+ type: any;
424
+ required: false;
425
+ };
426
+ onVChartEventType: {
427
+ type: any;
428
+ required: false;
429
+ };
430
+ onChangCellValue: {
431
+ type: any;
432
+ required: false;
433
+ };
434
+ onMousedownFillHandle: {
435
+ type: any;
436
+ required: false;
437
+ };
438
+ onDragFillHandleEnd: {
439
+ type: any;
440
+ required: false;
441
+ };
442
+ onDblclickFillHandle: {
443
+ type: any;
444
+ required: false;
445
+ };
446
+ onScrollVerticalEnd: {
447
+ type: any;
448
+ required: false;
449
+ };
450
+ onScrollHorizontalEnd: {
451
+ type: any;
452
+ required: false;
453
+ };
454
+ }>> & Readonly<{
292
455
  [x: `on${Capitalize<string>}`]: (...args: any[]) => any;
293
456
  }>, {
294
457
  options: any;
@@ -341,5 +504,5 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
341
504
  onDblclickFillHandle: any;
342
505
  onScrollVerticalEnd: any;
343
506
  onScrollHorizontalEnd: any;
344
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
507
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
345
508
  export default _default;
@@ -17,11 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  };
18
18
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
19
  [key: string]: any;
20
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
21
- options: Record<string, any>;
22
- } & {
23
- records?: unknown[];
24
- width?: string | number;
25
- height?: string | number;
26
- } & {}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
20
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ options: {
22
+ type: ObjectConstructor;
23
+ required: true;
24
+ };
25
+ records: {
26
+ type: ArrayConstructor;
27
+ required: false;
28
+ };
29
+ width: {
30
+ type: (StringConstructor | NumberConstructor)[];
31
+ required: false;
32
+ };
33
+ height: {
34
+ type: (StringConstructor | NumberConstructor)[];
35
+ required: false;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
38
  export default _default;
@@ -35,6 +35,7 @@ var _sfc_main = vue.defineComponent({
35
35
  };
36
36
  vnodes.forEach(vnode => {
37
37
  var _a, _b;
38
+ vnode.props = utils.convertPropsToCamelCase(vnode.props);
38
39
  const typeName = ((_a = vnode.type) === null || _a === void 0 ? void 0 : _a.symbol) || ((_b = vnode.type) === null || _b === void 0 ? void 0 : _b.name);
39
40
  const optionKey = typeMapping[typeName];
40
41
  if (optionKey) {
@@ -17,11 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  };
18
18
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
19
  [key: string]: any;
20
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
21
- options: Record<string, any>;
22
- } & {
23
- records?: unknown[];
24
- width?: string | number;
25
- height?: string | number;
26
- } & {}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
20
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ options: {
22
+ type: ObjectConstructor;
23
+ required: true;
24
+ };
25
+ records: {
26
+ type: ArrayConstructor;
27
+ required: false;
28
+ };
29
+ width: {
30
+ type: (StringConstructor | NumberConstructor)[];
31
+ required: false;
32
+ };
33
+ height: {
34
+ type: (StringConstructor | NumberConstructor)[];
35
+ required: false;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
38
  export default _default;
@@ -41,6 +41,7 @@ var _sfc_main = vue.defineComponent({
41
41
  };
42
42
  flattenedSlots.forEach(vnode => {
43
43
  var _a, _b;
44
+ vnode.props = utils.convertPropsToCamelCase(vnode.props);
44
45
  const typeName = ((_a = vnode.type) === null || _a === void 0 ? void 0 : _a.symbol) || ((_b = vnode.type) === null || _b === void 0 ? void 0 : _b.name);
45
46
  const optionKey = typeMapping[typeName];
46
47
  if (optionKey) {
@@ -17,11 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  };
18
18
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
19
  [key: string]: any;
20
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
21
- options: Record<string, any>;
22
- } & {
23
- records?: unknown[];
24
- width?: string | number;
25
- height?: string | number;
26
- } & {}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
20
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ options: {
22
+ type: ObjectConstructor;
23
+ required: true;
24
+ };
25
+ records: {
26
+ type: ArrayConstructor;
27
+ required: false;
28
+ };
29
+ width: {
30
+ type: (StringConstructor | NumberConstructor)[];
31
+ required: false;
32
+ };
33
+ height: {
34
+ type: (StringConstructor | NumberConstructor)[];
35
+ required: false;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
38
  export default _default;
@@ -41,6 +41,7 @@ var _sfc_main = vue.defineComponent({
41
41
  };
42
42
  flattenedSlots.forEach(vnode => {
43
43
  var _a, _b;
44
+ vnode.props = utils.convertPropsToCamelCase(vnode.props);
44
45
  const typeName = ((_a = vnode.type) === null || _a === void 0 ? void 0 : _a.symbol) || ((_b = vnode.type) === null || _b === void 0 ? void 0 : _b.name);
45
46
  const optionKey = typeMapping[typeName];
46
47
  if (optionKey) {
@@ -1,2 +1,4 @@
1
1
  export declare function flattenVNodes(vnodes: any[]): any[];
2
+ export declare function toCamelCase(str: string): string;
3
+ export declare function convertPropsToCamelCase(props: Record<string, any>): Record<string, any>;
2
4
  export declare function createCustomLayout(children: any): any;
@@ -25,6 +25,19 @@ var VTable__namespace = /*#__PURE__*/_interopNamespaceDefault(VTable);
25
25
  function flattenVNodes(vnodes) {
26
26
  return vnodes.flatMap(vnode => (Array.isArray(vnode.children) ? flattenVNodes(vnode.children) : vnode));
27
27
  }
28
+ function toCamelCase(str) {
29
+ return str.replace(/-([a-z])/g, g => g[1].toUpperCase());
30
+ }
31
+ function convertPropsToCamelCase(props) {
32
+ const newProps = {};
33
+ for (const key in props) {
34
+ if (props.hasOwnProperty(key)) {
35
+ const camelCaseKey = toCamelCase(key);
36
+ newProps[camelCaseKey] = props[key];
37
+ }
38
+ }
39
+ return newProps;
40
+ }
28
41
  function isEventProp(key, props) {
29
42
  return key.startsWith('on') && vutils.isFunction(props[key]);
30
43
  }
@@ -41,7 +54,8 @@ function createCustomLayout(children) {
41
54
  if (!child) {
42
55
  return null;
43
56
  }
44
- const { type, props, children: childChildren } = child;
57
+ const { type, children: childChildren } = child;
58
+ const props = convertPropsToCamelCase(child.props);
45
59
  const componentName = (type === null || type === void 0 ? void 0 : type.symbol) || (type === null || type === void 0 ? void 0 : type.name);
46
60
  const ComponentClass = componentMap[componentName];
47
61
  if (!ComponentClass) {
@@ -73,7 +87,13 @@ function createCustomLayout(children) {
73
87
  function bindComponentEvents(component, props) {
74
88
  Object.keys(props).forEach(key => {
75
89
  if (isEventProp(key, props)) {
76
- const eventName = key.slice(2).toLowerCase();
90
+ let eventName;
91
+ if (key.startsWith('on')) {
92
+ eventName = key.slice(2).toLowerCase();
93
+ }
94
+ else {
95
+ eventName = toCamelCase(key.slice(2)).toLowerCase();
96
+ }
77
97
  component.addEventListener(eventName, props[key]);
78
98
  }
79
99
  });
@@ -81,5 +101,7 @@ function createCustomLayout(children) {
81
101
  return { rootComponent: createComponent(children) };
82
102
  }
83
103
 
104
+ exports.convertPropsToCamelCase = convertPropsToCamelCase;
84
105
  exports.createCustomLayout = createCustomLayout;
85
106
  exports.flattenVNodes = flattenVNodes;
107
+ exports.toCamelCase = toCamelCase;
@@ -26,6 +26,19 @@
26
26
  function flattenVNodes(vnodes) {
27
27
  return vnodes.flatMap(vnode => (Array.isArray(vnode.children) ? flattenVNodes(vnode.children) : vnode));
28
28
  }
29
+ function toCamelCase(str) {
30
+ return str.replace(/-([a-z])/g, g => g[1].toUpperCase());
31
+ }
32
+ function convertPropsToCamelCase(props) {
33
+ const newProps = {};
34
+ for (const key in props) {
35
+ if (props.hasOwnProperty(key)) {
36
+ const camelCaseKey = toCamelCase(key);
37
+ newProps[camelCaseKey] = props[key];
38
+ }
39
+ }
40
+ return newProps;
41
+ }
29
42
  function isEventProp(key, props) {
30
43
  return key.startsWith('on') && vutils.isFunction(props[key]);
31
44
  }
@@ -42,7 +55,8 @@
42
55
  if (!child) {
43
56
  return null;
44
57
  }
45
- const { type, props, children: childChildren } = child;
58
+ const { type, children: childChildren } = child;
59
+ const props = convertPropsToCamelCase(child.props);
46
60
  const componentName = type?.symbol || type?.name;
47
61
  const ComponentClass = componentMap[componentName];
48
62
  if (!ComponentClass) {
@@ -73,7 +87,13 @@
73
87
  function bindComponentEvents(component, props) {
74
88
  Object.keys(props).forEach(key => {
75
89
  if (isEventProp(key, props)) {
76
- const eventName = key.slice(2).toLowerCase();
90
+ let eventName;
91
+ if (key.startsWith('on')) {
92
+ eventName = key.slice(2).toLowerCase();
93
+ }
94
+ else {
95
+ eventName = toCamelCase(key.slice(2)).toLowerCase();
96
+ }
77
97
  component.addEventListener(eventName, props[key]);
78
98
  }
79
99
  });
@@ -339,6 +359,7 @@
339
359
  Menu: 'menu',
340
360
  };
341
361
  vnodes.forEach(vnode => {
362
+ vnode.props = convertPropsToCamelCase(vnode.props);
342
363
  const typeName = vnode.type?.symbol || vnode.type?.name;
343
364
  const optionKey = typeMapping[typeName];
344
365
  if (optionKey) {
@@ -423,6 +444,7 @@
423
444
  'Menu': 'menu',
424
445
  };
425
446
  flattenedSlots.forEach(vnode => {
447
+ vnode.props = convertPropsToCamelCase(vnode.props);
426
448
  const typeName = vnode.type?.symbol || vnode.type?.name;
427
449
  const optionKey = typeMapping[typeName];
428
450
  if (optionKey) {
@@ -499,6 +521,7 @@
499
521
  'Menu': 'menu',
500
522
  };
501
523
  flattenedSlots.forEach(vnode => {
524
+ vnode.props = convertPropsToCamelCase(vnode.props);
502
525
  const typeName = vnode.type?.symbol || vnode.type?.name;
503
526
  const optionKey = typeMapping[typeName];
504
527
  if (optionKey) {
@@ -624,7 +647,7 @@
624
647
  }
625
648
  CheckBox.symbol = 'CheckBox';
626
649
 
627
- const version = "1.9.0";
650
+ const version = "1.9.2-alpha.0";
628
651
 
629
652
  exports.VTable = VTable__namespace;
630
653
  Object.defineProperty(exports, 'register', {
@@ -1 +1 @@
1
- !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@visactor/vtable"),require("vue"),require("@visactor/vutils")):"function"==typeof define&&define.amd?define(["exports","@visactor/vtable","vue","@visactor/vutils"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).VueVTable={},e.VTable,e.vue,e.vutils)}(this,(function(e,o,n,t){"use strict";function r(e){var o=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var t=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,t.get?t:{enumerable:!0,get:function(){return e[n]}})}})),o.default=e,Object.freeze(o)}var l=r(o);function i(e){return e.flatMap((e=>Array.isArray(e.children)?i(e.children):e))}function u(e){const o={Group:l.CustomLayout.Group,Image:l.CustomLayout.Image,Text:l.CustomLayout.Text,Tag:l.CustomLayout.Tag,Radio:l.CustomLayout.Radio,CheckBox:l.CustomLayout.CheckBox};return{rootComponent:function e(n){if(!n)return null;const{type:r,props:l,children:i}=n,u=o[r?.symbol||r?.name];if(!u)return null;const s=new u({...l});!function(e,o){Object.keys(o).forEach((n=>{if(function(e,o){return e.startsWith("on")&&t.isFunction(o[e])}(n,o)){const t=n.slice(2).toLowerCase();e.addEventListener(t,o[n])}}))}(s,l);return function(e){return e?.default?.()||e||[]}(i).forEach((o=>{const n=e(o);n?s.add(n):o.type===Symbol.for("v-fgt")&&o.children.forEach((o=>{const n=e(o);n&&s.add(n)}))})),s}(e)}}const s={...o.ListTable.EVENT_TYPE,...o.PivotTable.EVENT_TYPE,...o.PivotChart.EVENT_TYPE},a={onClickCell:s.CLICK_CELL,onDblClickCell:s.DBLCLICK_CELL,onMouseDownCell:s.MOUSEDOWN_CELL,onMouseUpCell:s.MOUSEUP_CELL,onSelectedCell:s.SELECTED_CELL,onKeyDown:s.KEYDOWN,onMouseEnterTable:s.MOUSEENTER_TABLE,onMouseLeaveTable:s.MOUSELEAVE_TABLE,onMouseDownTable:s.MOUSEDOWN_TABLE,onMouseMoveCell:s.MOUSEMOVE_CELL,onMouseEnterCell:s.MOUSEENTER_CELL,onMouseLeaveCell:s.MOUSELEAVE_CELL,onContextMenuCell:s.CONTEXTMENU_CELL,onResizeColumn:s.RESIZE_COLUMN,onResizeColumnEnd:s.RESIZE_COLUMN_END,onChangeHeaderPosition:s.CHANGE_HEADER_POSITION,onSortClick:s.SORT_CLICK,onFreezeClick:s.FREEZE_CLICK,onScroll:s.SCROLL,onDropdownMenuClick:s.DROPDOWN_MENU_CLICK,onMouseOverChartSymbol:s.MOUSEOVER_CHART_SYMBOL,onDragSelectEnd:s.DRAG_SELECT_END,onDropdownIconClick:s.DROPDOWN_ICON_CLICK,onDropdownMenuClear:s.DROPDOWN_MENU_CLEAR,onTreeHierarchyStateChange:s.TREE_HIERARCHY_STATE_CHANGE,onShowMenu:s.SHOW_MENU,onHideMenu:s.HIDE_MENU,onIconClick:s.ICON_CLICK,onLegendItemClick:s.LEGEND_ITEM_CLICK,onLegendItemHover:s.LEGEND_ITEM_HOVER,onLegendItemUnHover:s.LEGEND_ITEM_UNHOVER,onLegendChange:s.LEGEND_CHANGE,onMouseEnterAxis:s.MOUSEENTER_AXIS,onMouseLeaveAxis:s.MOUSELEAVE_AXIS,onCheckboxStateChange:s.CHECKBOX_STATE_CHANGE,onRadioStateChange:s.RADIO_STATE_CHANGE,onAfterRender:s.AFTER_RENDER,onInitialized:s.INITIALIZED,onPivotSortClick:s.PIVOT_SORT_CLICK,onDrillMenuClick:s.DRILLMENU_CLICK,onVChartEventType:s.VCHART_EVENT_TYPE,onChangCellValue:s.CHANGE_CELL_VALUE,onMousedownFillHandle:s.MOUSEDOWN_FILL_HANDLE,onDragFillHandleEnd:s.DRAG_FILL_HANDLE_END,onDblclickFillHandle:s.DBLCLICK_FILL_HANDLE,onScrollVerticalEnd:s.SCROLL_VERTICAL_END,onScrollHorizontalEnd:s.SCROLL_HORIZONTAL_END},c=Object.keys(a);var d=n.defineComponent({__name:"base-table",props:{type:{type:String,required:!1},options:{type:null,required:!1},records:{type:Array,required:!1},width:{type:[Number,String],required:!1,default:"100%"},height:{type:[Number,String],required:!1,default:"100%"},onReady:{type:Function,required:!1},onError:{type:Function,required:!1},onClickCell:{type:null,required:!1},onDblClickCell:{type:null,required:!1},onMouseDownCell:{type:null,required:!1},onMouseUpCell:{type:null,required:!1},onSelectedCell:{type:null,required:!1},onKeyDown:{type:null,required:!1},onMouseEnterTable:{type:null,required:!1},onMouseLeaveTable:{type:null,required:!1},onMouseDownTable:{type:null,required:!1},onMouseMoveCell:{type:null,required:!1},onMouseEnterCell:{type:null,required:!1},onMouseLeaveCell:{type:null,required:!1},onContextMenuCell:{type:null,required:!1},onResizeColumn:{type:null,required:!1},onResizeColumnEnd:{type:null,required:!1},onChangeHeaderPosition:{type:null,required:!1},onSortClick:{type:null,required:!1},onFreezeClick:{type:null,required:!1},onScroll:{type:null,required:!1},onDropdownMenuClick:{type:null,required:!1},onMouseOverChartSymbol:{type:null,required:!1},onDragSelectEnd:{type:null,required:!1},onDropdownIconClick:{type:null,required:!1},onDropdownMenuClear:{type:null,required:!1},onTreeHierarchyStateChange:{type:null,required:!1},onShowMenu:{type:null,required:!1},onHideMenu:{type:null,required:!1},onIconClick:{type:null,required:!1},onLegendItemClick:{type:null,required:!1},onLegendItemHover:{type:null,required:!1},onLegendItemUnHover:{type:null,required:!1},onLegendChange:{type:null,required:!1},onMouseEnterAxis:{type:null,required:!1},onMouseLeaveAxis:{type:null,required:!1},onCheckboxStateChange:{type:null,required:!1},onRadioStateChange:{type:null,required:!1},onAfterRender:{type:null,required:!1},onInitialized:{type:null,required:!1},onPivotSortClick:{type:null,required:!1},onDrillMenuClick:{type:null,required:!1},onVChartEventType:{type:null,required:!1},onChangCellValue:{type:null,required:!1},onMousedownFillHandle:{type:null,required:!1},onDragFillHandleEnd:{type:null,required:!1},onDblclickFillHandle:{type:null,required:!1},onScrollVerticalEnd:{type:null,required:!1},onScrollHorizontalEnd:{type:null,required:!1}},emits:c,setup(e,{expose:t,emit:r}){const l=e,i=n.ref(null),u=n.shallowRef(null);t({vTableInstance:u});const s=n.computed((()=>"number"==typeof l.width?`${l.width}px`:l.width)),d=n.computed((()=>"number"==typeof l.height?`${l.height}px`:l.height)),p=r,C=()=>{if(!i.value)return;u.value&&u.value.release();const e=()=>void 0!==l.records&&null!==l.records&&l.records.length>0?l.records:l.options.records,n=(e,o)=>{u.value=new e(i.value,o)};try{switch(l.type){case"list":n(o.ListTable,{...l.options,records:e()});break;case"pivot":n(o.PivotTable,{...l.options,records:e()});break;case"chart":n(o.PivotChart,{...l.options,records:e()})}t=u.value,c.forEach((e=>{t.on(a[e],(o=>{p(e,o)}))})),l.onReady?.(u.value,!0)}catch(e){}var t},m=e=>{if(u.value)try{switch(l.type){case"list":u.value instanceof o.ListTable&&u.value.updateOption(e);break;case"pivot":u.value instanceof o.PivotTable&&u.value.updateOption(e);break;case"chart":u.value instanceof o.PivotChart&&u.value.updateOption(e)}}catch(e){l.onError?.(e)}};return n.onMounted(C),n.onBeforeUnmount((()=>u.value?.release())),n.watch((()=>l.options),(e=>{u.value?m(e):C()}),{deep:!0}),n.watch((()=>l.records),((e,o)=>{u.value?m({...l.options,records:e}):C()}),{deep:!0}),(e,o)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"vTableContainer",ref:i,style:n.normalizeStyle([{width:s.value,height:d.value},{position:"relative"}])},null,4))}}),p=n.defineComponent({__name:"list-table",props:{options:{type:Object,required:!0},records:{type:Array,required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1}},setup(e,{expose:o}){const t=e,r=n.ref(null),l=n.useSlots(),s=n.computed((()=>{const e=function(e){const o={columns:[],tooltip:{},menu:{}},n={ListColumn:"columns",Tooltip:"tooltip",Menu:"menu"};return e.forEach((e=>{const t=e.type?.symbol||e.type?.name,r=n[t];var l;r&&("columns"===r&&e.children&&(e.props.customLayout=(l=e.children,e=>{const{table:o,row:n,col:t,rect:r}=e,i=o.getCellOriginRecord(t,n),{height:s,width:a}=r??o.getCellRect(t,n),c=l.customLayout({table:o,row:n,col:t,rect:r,record:i,height:s,width:a})[0],{rootComponent:d}=u(c);return{rootContainer:d,renderDefault:!1}})),Array.isArray(o[r])?o[r].push(e.props):o[r]=e.props)})),o}(i(l.default?.()||[]));return{...t.options,columns:e.columns.length?e.columns:t.options.columns,tooltip:e.tooltip||t.options.tooltip,menu:e.menu||t.options.menu}}));return o({vTableInstance:n.computed((()=>r.value?.vTableInstance||null))}),(e,o)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(d,n.mergeProps({type:"list",options:s.value,records:e.records,width:e.width,height:e.height,ref_key:"baseTableRef",ref:r},e.$attrs),null,16,["options","records","width","height"]),n.renderSlot(e.$slots,"default")],64))}}),C=n.defineComponent({__name:"pivot-table",props:{options:{type:Object,required:!0},records:{type:Array,required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1}},setup(e,{expose:o}){const t=e,r=n.shallowRef(null),l=n.useSlots(),u=n.computed((()=>{const e=i(l.default?.()||[]),o={columns:[],columnHeaderTitle:[],rows:[],rowHeaderTitle:[],indicators:[],corner:Object,tooltip:Object,menu:Object},n={PivotColumnDimension:"columns",PivotColumnHeaderTitle:"columnHeaderTitle",PivotRowDimension:"rows",PivotRowHeaderTitle:"rowHeaderTitle",PivotCorner:"corner",PivotIndicator:"indicators",Tooltip:"tooltip",Menu:"menu"};return e.forEach((e=>{const t=e.type?.symbol||e.type?.name,r=n[t];r&&(Array.isArray(o[r])?o[r].push(e.props):o[r]=e.props)})),{...t.options,columns:o.columns.length?o.columns:t.options.columns,columnHeaderTitle:o.columnHeaderTitle.length?o.columnHeaderTitle:t.options.columnHeaderTitle,rows:o.rows.length?o.rows:t.options.rows,rowHeaderTitle:o.rowHeaderTitle.length?o.rowHeaderTitle:t.options.rowHeaderTitle,indicators:o.indicators.length?o.indicators:t.options.indicators,corner:t.options.corner||o.corner,tooltip:t.options.tooltip||o.tooltip,menu:t.options.menu||o.menu}}));return o({vTableInstance:n.computed((()=>r.value?.vTableInstance||null))}),(e,o)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(d,n.mergeProps({type:"pivot",options:u.value,records:e.records,width:e.width,height:e.height,ref_key:"baseTableRef",ref:r},e.$attrs),null,16,["options","records","width","height"]),n.renderSlot(e.$slots,"default")],64))}}),m=n.defineComponent({__name:"pivot-chart",props:{options:{type:Object,required:!0},records:{type:Array,required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1}},setup(e,{expose:o}){const t=e,r=n.shallowRef(null),l=n.useSlots(),u=n.computed((()=>{const e=i(l.default?.()||[]),o={columns:[],columnHeaderTitle:[],rows:[],rowHeaderTitle:[],indicators:[],corner:Object,tooltip:Object,menu:Object},n={PivotColumnDimension:"columns",PivotColumnHeaderTitle:"columnHeaderTitle",PivotRowDimension:"rows",PivotRowHeaderTitle:"rowHeaderTitle",PivotCorner:"corner",PivotIndicator:"indicators",Tooltip:"tooltip",Menu:"menu"};return e.forEach((e=>{const t=e.type?.symbol||e.type?.name,r=n[t];r&&(Array.isArray(o[r])?e.props.hasOwnProperty("objectHandler")?o[r].push(e.props.objectHandler):o[r].push(e.props):o[r]=e.props)})),{...t.options,columns:o.columns.length?o.columns:t.options.columns,columnHeaderTitle:o.columnHeaderTitle.length?o.columnHeaderTitle:t.options.columnHeaderTitle,rows:o.rows.length?o.rows:t.options.rows,rowHeaderTitle:o.rowHeaderTitle.length?o.rowHeaderTitle:t.options.rowHeaderTitle,indicators:o.indicators.length?o.indicators:t.options.indicators,corner:o.corner||t.options.corner,tooltip:o.tooltip||t.options.tooltip,menu:o.menu||t.options.menu}}));return o({vTableInstance:n.computed((()=>r.value?.vTableInstance||null))}),(e,o)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(d,n.mergeProps({type:"chart",options:u.value,records:e.records,width:e.width,height:e.height,ref_key:"baseTableRef",ref:r},e.$attrs),null,16,["options","records","width","height"]),n.renderSlot(e.$slots,"default")],64))}});function y(e){return null}function E(e){return null}function h(e){return null}function T(e){return null}function v(e){return null}function b(e){return null}function L(e){return null}function f(e){return null}function g(e){return null}function _(){return null}function w(){return null}function H(){return null}function M(e){return null}function O(e){return null}function S(e){return null}y.symbol="ListColumn",E.symbol="PivotColumnDimension",h.symbol="PivotRowDimension",T.symbol="PivotColumnHeaderTitle",v.symbol="PivotRowHeaderTitle",b.symbol="PivotIndicator",L.symbol="PivotCorner",f.symbol="Menu",g.symbol="Tooltip",_.symbol="Group",w.symbol="Image",H.symbol="Text",M.symbol="Tag",O.symbol="Radio",S.symbol="CheckBox";e.VTable=l,Object.defineProperty(e,"register",{enumerable:!0,get:function(){return o.register}}),e.CheckBox=S,e.Group=_,e.Image=w,e.ListColumn=y,e.ListTable=p,e.Menu=f,e.PivotChart=m,e.PivotColumnDimension=E,e.PivotColumnHeaderTitle=T,e.PivotCorner=L,e.PivotIndicator=b,e.PivotRowDimension=h,e.PivotRowHeaderTitle=v,e.PivotTable=C,e.Radio=O,e.Tag=M,e.Text=H,e.Tooltip=g,e.registerChartModule=(e,o)=>{l.register.chartModule(e,o)},e.version="1.9.0"}));
1
+ !function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("@visactor/vtable"),require("vue"),require("@visactor/vutils")):"function"==typeof define&&define.amd?define(["exports","@visactor/vtable","vue","@visactor/vutils"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).VueVTable={},e.VTable,e.vue,e.vutils)}(this,(function(e,o,n,t){"use strict";function r(e){var o=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var t=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(o,n,t.get?t:{enumerable:!0,get:function(){return e[n]}})}})),o.default=e,Object.freeze(o)}var l=r(o);function i(e){return e.flatMap((e=>Array.isArray(e.children)?i(e.children):e))}function u(e){return e.replace(/-([a-z])/g,(e=>e[1].toUpperCase()))}function s(e){const o={};for(const n in e)if(e.hasOwnProperty(n)){o[u(n)]=e[n]}return o}function a(e){const o={Group:l.CustomLayout.Group,Image:l.CustomLayout.Image,Text:l.CustomLayout.Text,Tag:l.CustomLayout.Tag,Radio:l.CustomLayout.Radio,CheckBox:l.CustomLayout.CheckBox};return{rootComponent:function e(n){if(!n)return null;const{type:r,children:l}=n,i=s(n.props),a=o[r?.symbol||r?.name];if(!a)return null;const c=new a({...i});!function(e,o){Object.keys(o).forEach((n=>{if(function(e,o){return e.startsWith("on")&&t.isFunction(o[e])}(n,o)){let t;t=n.startsWith("on")?n.slice(2).toLowerCase():u(n.slice(2)).toLowerCase(),e.addEventListener(t,o[n])}}))}(c,i);return function(e){return e?.default?.()||e||[]}(l).forEach((o=>{const n=e(o);n?c.add(n):o.type===Symbol.for("v-fgt")&&o.children.forEach((o=>{const n=e(o);n&&c.add(n)}))})),c}(e)}}const c={...o.ListTable.EVENT_TYPE,...o.PivotTable.EVENT_TYPE,...o.PivotChart.EVENT_TYPE},d={onClickCell:c.CLICK_CELL,onDblClickCell:c.DBLCLICK_CELL,onMouseDownCell:c.MOUSEDOWN_CELL,onMouseUpCell:c.MOUSEUP_CELL,onSelectedCell:c.SELECTED_CELL,onKeyDown:c.KEYDOWN,onMouseEnterTable:c.MOUSEENTER_TABLE,onMouseLeaveTable:c.MOUSELEAVE_TABLE,onMouseDownTable:c.MOUSEDOWN_TABLE,onMouseMoveCell:c.MOUSEMOVE_CELL,onMouseEnterCell:c.MOUSEENTER_CELL,onMouseLeaveCell:c.MOUSELEAVE_CELL,onContextMenuCell:c.CONTEXTMENU_CELL,onResizeColumn:c.RESIZE_COLUMN,onResizeColumnEnd:c.RESIZE_COLUMN_END,onChangeHeaderPosition:c.CHANGE_HEADER_POSITION,onSortClick:c.SORT_CLICK,onFreezeClick:c.FREEZE_CLICK,onScroll:c.SCROLL,onDropdownMenuClick:c.DROPDOWN_MENU_CLICK,onMouseOverChartSymbol:c.MOUSEOVER_CHART_SYMBOL,onDragSelectEnd:c.DRAG_SELECT_END,onDropdownIconClick:c.DROPDOWN_ICON_CLICK,onDropdownMenuClear:c.DROPDOWN_MENU_CLEAR,onTreeHierarchyStateChange:c.TREE_HIERARCHY_STATE_CHANGE,onShowMenu:c.SHOW_MENU,onHideMenu:c.HIDE_MENU,onIconClick:c.ICON_CLICK,onLegendItemClick:c.LEGEND_ITEM_CLICK,onLegendItemHover:c.LEGEND_ITEM_HOVER,onLegendItemUnHover:c.LEGEND_ITEM_UNHOVER,onLegendChange:c.LEGEND_CHANGE,onMouseEnterAxis:c.MOUSEENTER_AXIS,onMouseLeaveAxis:c.MOUSELEAVE_AXIS,onCheckboxStateChange:c.CHECKBOX_STATE_CHANGE,onRadioStateChange:c.RADIO_STATE_CHANGE,onAfterRender:c.AFTER_RENDER,onInitialized:c.INITIALIZED,onPivotSortClick:c.PIVOT_SORT_CLICK,onDrillMenuClick:c.DRILLMENU_CLICK,onVChartEventType:c.VCHART_EVENT_TYPE,onChangCellValue:c.CHANGE_CELL_VALUE,onMousedownFillHandle:c.MOUSEDOWN_FILL_HANDLE,onDragFillHandleEnd:c.DRAG_FILL_HANDLE_END,onDblclickFillHandle:c.DBLCLICK_FILL_HANDLE,onScrollVerticalEnd:c.SCROLL_VERTICAL_END,onScrollHorizontalEnd:c.SCROLL_HORIZONTAL_END},p=Object.keys(d);var C=n.defineComponent({__name:"base-table",props:{type:{type:String,required:!1},options:{type:null,required:!1},records:{type:Array,required:!1},width:{type:[Number,String],required:!1,default:"100%"},height:{type:[Number,String],required:!1,default:"100%"},onReady:{type:Function,required:!1},onError:{type:Function,required:!1},onClickCell:{type:null,required:!1},onDblClickCell:{type:null,required:!1},onMouseDownCell:{type:null,required:!1},onMouseUpCell:{type:null,required:!1},onSelectedCell:{type:null,required:!1},onKeyDown:{type:null,required:!1},onMouseEnterTable:{type:null,required:!1},onMouseLeaveTable:{type:null,required:!1},onMouseDownTable:{type:null,required:!1},onMouseMoveCell:{type:null,required:!1},onMouseEnterCell:{type:null,required:!1},onMouseLeaveCell:{type:null,required:!1},onContextMenuCell:{type:null,required:!1},onResizeColumn:{type:null,required:!1},onResizeColumnEnd:{type:null,required:!1},onChangeHeaderPosition:{type:null,required:!1},onSortClick:{type:null,required:!1},onFreezeClick:{type:null,required:!1},onScroll:{type:null,required:!1},onDropdownMenuClick:{type:null,required:!1},onMouseOverChartSymbol:{type:null,required:!1},onDragSelectEnd:{type:null,required:!1},onDropdownIconClick:{type:null,required:!1},onDropdownMenuClear:{type:null,required:!1},onTreeHierarchyStateChange:{type:null,required:!1},onShowMenu:{type:null,required:!1},onHideMenu:{type:null,required:!1},onIconClick:{type:null,required:!1},onLegendItemClick:{type:null,required:!1},onLegendItemHover:{type:null,required:!1},onLegendItemUnHover:{type:null,required:!1},onLegendChange:{type:null,required:!1},onMouseEnterAxis:{type:null,required:!1},onMouseLeaveAxis:{type:null,required:!1},onCheckboxStateChange:{type:null,required:!1},onRadioStateChange:{type:null,required:!1},onAfterRender:{type:null,required:!1},onInitialized:{type:null,required:!1},onPivotSortClick:{type:null,required:!1},onDrillMenuClick:{type:null,required:!1},onVChartEventType:{type:null,required:!1},onChangCellValue:{type:null,required:!1},onMousedownFillHandle:{type:null,required:!1},onDragFillHandleEnd:{type:null,required:!1},onDblclickFillHandle:{type:null,required:!1},onScrollVerticalEnd:{type:null,required:!1},onScrollHorizontalEnd:{type:null,required:!1}},emits:p,setup(e,{expose:t,emit:r}){const l=e,i=n.ref(null),u=n.shallowRef(null);t({vTableInstance:u});const s=n.computed((()=>"number"==typeof l.width?`${l.width}px`:l.width)),a=n.computed((()=>"number"==typeof l.height?`${l.height}px`:l.height)),c=r,C=()=>{if(!i.value)return;u.value&&u.value.release();const e=()=>void 0!==l.records&&null!==l.records&&l.records.length>0?l.records:l.options.records,n=(e,o)=>{u.value=new e(i.value,o)};try{switch(l.type){case"list":n(o.ListTable,{...l.options,records:e()});break;case"pivot":n(o.PivotTable,{...l.options,records:e()});break;case"chart":n(o.PivotChart,{...l.options,records:e()})}t=u.value,p.forEach((e=>{t.on(d[e],(o=>{c(e,o)}))})),l.onReady?.(u.value,!0)}catch(e){}var t},m=e=>{if(u.value)try{switch(l.type){case"list":u.value instanceof o.ListTable&&u.value.updateOption(e);break;case"pivot":u.value instanceof o.PivotTable&&u.value.updateOption(e);break;case"chart":u.value instanceof o.PivotChart&&u.value.updateOption(e)}}catch(e){l.onError?.(e)}};return n.onMounted(C),n.onBeforeUnmount((()=>u.value?.release())),n.watch((()=>l.options),(e=>{u.value?m(e):C()}),{deep:!0}),n.watch((()=>l.records),((e,o)=>{u.value?m({...l.options,records:e}):C()}),{deep:!0}),(e,o)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"vTableContainer",ref:i,style:n.normalizeStyle([{width:s.value,height:a.value},{position:"relative"}])},null,4))}}),m=n.defineComponent({__name:"list-table",props:{options:{type:Object,required:!0},records:{type:Array,required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1}},setup(e,{expose:o}){const t=e,r=n.ref(null),l=n.useSlots(),u=n.computed((()=>{const e=function(e){const o={columns:[],tooltip:{},menu:{}},n={ListColumn:"columns",Tooltip:"tooltip",Menu:"menu"};return e.forEach((e=>{e.props=s(e.props);const t=e.type?.symbol||e.type?.name,r=n[t];var l;r&&("columns"===r&&e.children&&(e.props.customLayout=(l=e.children,e=>{const{table:o,row:n,col:t,rect:r}=e,i=o.getCellOriginRecord(t,n),{height:u,width:s}=r??o.getCellRect(t,n),c=l.customLayout({table:o,row:n,col:t,rect:r,record:i,height:u,width:s})[0],{rootComponent:d}=a(c);return{rootContainer:d,renderDefault:!1}})),Array.isArray(o[r])?o[r].push(e.props):o[r]=e.props)})),o}(i(l.default?.()||[]));return{...t.options,columns:e.columns.length?e.columns:t.options.columns,tooltip:e.tooltip||t.options.tooltip,menu:e.menu||t.options.menu}}));return o({vTableInstance:n.computed((()=>r.value?.vTableInstance||null))}),(e,o)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(C,n.mergeProps({type:"list",options:u.value,records:e.records,width:e.width,height:e.height,ref_key:"baseTableRef",ref:r},e.$attrs),null,16,["options","records","width","height"]),n.renderSlot(e.$slots,"default")],64))}}),y=n.defineComponent({__name:"pivot-table",props:{options:{type:Object,required:!0},records:{type:Array,required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1}},setup(e,{expose:o}){const t=e,r=n.shallowRef(null),l=n.useSlots(),u=n.computed((()=>{const e=i(l.default?.()||[]),o={columns:[],columnHeaderTitle:[],rows:[],rowHeaderTitle:[],indicators:[],corner:Object,tooltip:Object,menu:Object},n={PivotColumnDimension:"columns",PivotColumnHeaderTitle:"columnHeaderTitle",PivotRowDimension:"rows",PivotRowHeaderTitle:"rowHeaderTitle",PivotCorner:"corner",PivotIndicator:"indicators",Tooltip:"tooltip",Menu:"menu"};return e.forEach((e=>{e.props=s(e.props);const t=e.type?.symbol||e.type?.name,r=n[t];r&&(Array.isArray(o[r])?o[r].push(e.props):o[r]=e.props)})),{...t.options,columns:o.columns.length?o.columns:t.options.columns,columnHeaderTitle:o.columnHeaderTitle.length?o.columnHeaderTitle:t.options.columnHeaderTitle,rows:o.rows.length?o.rows:t.options.rows,rowHeaderTitle:o.rowHeaderTitle.length?o.rowHeaderTitle:t.options.rowHeaderTitle,indicators:o.indicators.length?o.indicators:t.options.indicators,corner:t.options.corner||o.corner,tooltip:t.options.tooltip||o.tooltip,menu:t.options.menu||o.menu}}));return o({vTableInstance:n.computed((()=>r.value?.vTableInstance||null))}),(e,o)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(C,n.mergeProps({type:"pivot",options:u.value,records:e.records,width:e.width,height:e.height,ref_key:"baseTableRef",ref:r},e.$attrs),null,16,["options","records","width","height"]),n.renderSlot(e.$slots,"default")],64))}}),E=n.defineComponent({__name:"pivot-chart",props:{options:{type:Object,required:!0},records:{type:Array,required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1}},setup(e,{expose:o}){const t=e,r=n.shallowRef(null),l=n.useSlots(),u=n.computed((()=>{const e=i(l.default?.()||[]),o={columns:[],columnHeaderTitle:[],rows:[],rowHeaderTitle:[],indicators:[],corner:Object,tooltip:Object,menu:Object},n={PivotColumnDimension:"columns",PivotColumnHeaderTitle:"columnHeaderTitle",PivotRowDimension:"rows",PivotRowHeaderTitle:"rowHeaderTitle",PivotCorner:"corner",PivotIndicator:"indicators",Tooltip:"tooltip",Menu:"menu"};return e.forEach((e=>{e.props=s(e.props);const t=e.type?.symbol||e.type?.name,r=n[t];r&&(Array.isArray(o[r])?e.props.hasOwnProperty("objectHandler")?o[r].push(e.props.objectHandler):o[r].push(e.props):o[r]=e.props)})),{...t.options,columns:o.columns.length?o.columns:t.options.columns,columnHeaderTitle:o.columnHeaderTitle.length?o.columnHeaderTitle:t.options.columnHeaderTitle,rows:o.rows.length?o.rows:t.options.rows,rowHeaderTitle:o.rowHeaderTitle.length?o.rowHeaderTitle:t.options.rowHeaderTitle,indicators:o.indicators.length?o.indicators:t.options.indicators,corner:o.corner||t.options.corner,tooltip:o.tooltip||t.options.tooltip,menu:o.menu||t.options.menu}}));return o({vTableInstance:n.computed((()=>r.value?.vTableInstance||null))}),(e,o)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(C,n.mergeProps({type:"chart",options:u.value,records:e.records,width:e.width,height:e.height,ref_key:"baseTableRef",ref:r},e.$attrs),null,16,["options","records","width","height"]),n.renderSlot(e.$slots,"default")],64))}});function h(e){return null}function T(e){return null}function v(e){return null}function b(e){return null}function f(e){return null}function L(e){return null}function g(e){return null}function w(e){return null}function _(e){return null}function H(){return null}function M(){return null}function O(){return null}function S(e){return null}function q(e){return null}function D(e){return null}h.symbol="ListColumn",T.symbol="PivotColumnDimension",v.symbol="PivotRowDimension",b.symbol="PivotColumnHeaderTitle",f.symbol="PivotRowHeaderTitle",L.symbol="PivotIndicator",g.symbol="PivotCorner",w.symbol="Menu",_.symbol="Tooltip",H.symbol="Group",M.symbol="Image",O.symbol="Text",S.symbol="Tag",q.symbol="Radio",D.symbol="CheckBox";e.VTable=l,Object.defineProperty(e,"register",{enumerable:!0,get:function(){return o.register}}),e.CheckBox=D,e.Group=H,e.Image=M,e.ListColumn=h,e.ListTable=m,e.Menu=w,e.PivotChart=E,e.PivotColumnDimension=T,e.PivotColumnHeaderTitle=b,e.PivotCorner=g,e.PivotIndicator=L,e.PivotRowDimension=v,e.PivotRowHeaderTitle=f,e.PivotTable=y,e.Radio=q,e.Tag=S,e.Text=O,e.Tooltip=_,e.registerChartModule=(e,o)=>{l.register.chartModule(e,o)},e.version="1.9.2-alpha.0"}));
package/es/index.d.ts CHANGED
@@ -2,4 +2,4 @@ import * as VTable from '@visactor/vtable';
2
2
  export * from './tables';
3
3
  export * from './components';
4
4
  export { VTable };
5
- export declare const version = "1.9.0";
5
+ export declare const version = "1.9.2-alpha.0";
package/es/index.js CHANGED
@@ -21,6 +21,6 @@ export { default as Tag } from './components/custom/tag.js';
21
21
  export { default as Radio } from './components/custom/radio.js';
22
22
  export { default as CheckBox } from './components/custom/checkBox.js';
23
23
 
24
- const version = "1.9.0";
24
+ const version = "1.9.2-alpha.0";
25
25
 
26
26
  export { version };
@@ -232,63 +232,226 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
232
232
  };
233
233
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
234
234
  [key: string]: any;
235
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<{
236
- options: any;
237
- width: string | number;
238
- height: string | number;
239
- onClickCell: any;
240
- onDblClickCell: any;
241
- onMouseDownCell: any;
242
- onMouseUpCell: any;
243
- onSelectedCell: any;
244
- onKeyDown: any;
245
- onMouseEnterTable: any;
246
- onMouseLeaveTable: any;
247
- onMouseDownTable: any;
248
- onMouseMoveCell: any;
249
- onMouseEnterCell: any;
250
- onMouseLeaveCell: any;
251
- onContextMenuCell: any;
252
- onResizeColumn: any;
253
- onResizeColumnEnd: any;
254
- onChangeHeaderPosition: any;
255
- onSortClick: any;
256
- onFreezeClick: any;
257
- onScroll: any;
258
- onDropdownMenuClick: any;
259
- onMouseOverChartSymbol: any;
260
- onDragSelectEnd: any;
261
- onDropdownIconClick: any;
262
- onDropdownMenuClear: any;
263
- onTreeHierarchyStateChange: any;
264
- onShowMenu: any;
265
- onHideMenu: any;
266
- onIconClick: any;
267
- onLegendItemClick: any;
268
- onLegendItemHover: any;
269
- onLegendItemUnHover: any;
270
- onLegendChange: any;
271
- onMouseEnterAxis: any;
272
- onMouseLeaveAxis: any;
273
- onCheckboxStateChange: any;
274
- onRadioStateChange: any;
275
- onAfterRender: any;
276
- onInitialized: any;
277
- onPivotSortClick: any;
278
- onDrillMenuClick: any;
279
- onVChartEventType: any;
280
- onChangCellValue: any;
281
- onMousedownFillHandle: any;
282
- onDragFillHandleEnd: any;
283
- onDblclickFillHandle: any;
284
- onScrollVerticalEnd: any;
285
- onScrollHorizontalEnd: any;
286
- } & {
287
- type?: string;
288
- records?: unknown[];
289
- onReady?: Function;
290
- onError?: Function;
291
- } & {
235
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, string[], string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
236
+ type: {
237
+ type: StringConstructor;
238
+ required: false;
239
+ };
240
+ options: {
241
+ type: any;
242
+ required: false;
243
+ };
244
+ records: {
245
+ type: ArrayConstructor;
246
+ required: false;
247
+ };
248
+ width: {
249
+ type: (StringConstructor | NumberConstructor)[];
250
+ required: false;
251
+ default: string;
252
+ };
253
+ height: {
254
+ type: (StringConstructor | NumberConstructor)[];
255
+ required: false;
256
+ default: string;
257
+ };
258
+ onReady: {
259
+ type: FunctionConstructor;
260
+ required: false;
261
+ };
262
+ onError: {
263
+ type: FunctionConstructor;
264
+ required: false;
265
+ };
266
+ onClickCell: {
267
+ type: any;
268
+ required: false;
269
+ };
270
+ onDblClickCell: {
271
+ type: any;
272
+ required: false;
273
+ };
274
+ onMouseDownCell: {
275
+ type: any;
276
+ required: false;
277
+ };
278
+ onMouseUpCell: {
279
+ type: any;
280
+ required: false;
281
+ };
282
+ onSelectedCell: {
283
+ type: any;
284
+ required: false;
285
+ };
286
+ onKeyDown: {
287
+ type: any;
288
+ required: false;
289
+ };
290
+ onMouseEnterTable: {
291
+ type: any;
292
+ required: false;
293
+ };
294
+ onMouseLeaveTable: {
295
+ type: any;
296
+ required: false;
297
+ };
298
+ onMouseDownTable: {
299
+ type: any;
300
+ required: false;
301
+ };
302
+ onMouseMoveCell: {
303
+ type: any;
304
+ required: false;
305
+ };
306
+ onMouseEnterCell: {
307
+ type: any;
308
+ required: false;
309
+ };
310
+ onMouseLeaveCell: {
311
+ type: any;
312
+ required: false;
313
+ };
314
+ onContextMenuCell: {
315
+ type: any;
316
+ required: false;
317
+ };
318
+ onResizeColumn: {
319
+ type: any;
320
+ required: false;
321
+ };
322
+ onResizeColumnEnd: {
323
+ type: any;
324
+ required: false;
325
+ };
326
+ onChangeHeaderPosition: {
327
+ type: any;
328
+ required: false;
329
+ };
330
+ onSortClick: {
331
+ type: any;
332
+ required: false;
333
+ };
334
+ onFreezeClick: {
335
+ type: any;
336
+ required: false;
337
+ };
338
+ onScroll: {
339
+ type: any;
340
+ required: false;
341
+ };
342
+ onDropdownMenuClick: {
343
+ type: any;
344
+ required: false;
345
+ };
346
+ onMouseOverChartSymbol: {
347
+ type: any;
348
+ required: false;
349
+ };
350
+ onDragSelectEnd: {
351
+ type: any;
352
+ required: false;
353
+ };
354
+ onDropdownIconClick: {
355
+ type: any;
356
+ required: false;
357
+ };
358
+ onDropdownMenuClear: {
359
+ type: any;
360
+ required: false;
361
+ };
362
+ onTreeHierarchyStateChange: {
363
+ type: any;
364
+ required: false;
365
+ };
366
+ onShowMenu: {
367
+ type: any;
368
+ required: false;
369
+ };
370
+ onHideMenu: {
371
+ type: any;
372
+ required: false;
373
+ };
374
+ onIconClick: {
375
+ type: any;
376
+ required: false;
377
+ };
378
+ onLegendItemClick: {
379
+ type: any;
380
+ required: false;
381
+ };
382
+ onLegendItemHover: {
383
+ type: any;
384
+ required: false;
385
+ };
386
+ onLegendItemUnHover: {
387
+ type: any;
388
+ required: false;
389
+ };
390
+ onLegendChange: {
391
+ type: any;
392
+ required: false;
393
+ };
394
+ onMouseEnterAxis: {
395
+ type: any;
396
+ required: false;
397
+ };
398
+ onMouseLeaveAxis: {
399
+ type: any;
400
+ required: false;
401
+ };
402
+ onCheckboxStateChange: {
403
+ type: any;
404
+ required: false;
405
+ };
406
+ onRadioStateChange: {
407
+ type: any;
408
+ required: false;
409
+ };
410
+ onAfterRender: {
411
+ type: any;
412
+ required: false;
413
+ };
414
+ onInitialized: {
415
+ type: any;
416
+ required: false;
417
+ };
418
+ onPivotSortClick: {
419
+ type: any;
420
+ required: false;
421
+ };
422
+ onDrillMenuClick: {
423
+ type: any;
424
+ required: false;
425
+ };
426
+ onVChartEventType: {
427
+ type: any;
428
+ required: false;
429
+ };
430
+ onChangCellValue: {
431
+ type: any;
432
+ required: false;
433
+ };
434
+ onMousedownFillHandle: {
435
+ type: any;
436
+ required: false;
437
+ };
438
+ onDragFillHandleEnd: {
439
+ type: any;
440
+ required: false;
441
+ };
442
+ onDblclickFillHandle: {
443
+ type: any;
444
+ required: false;
445
+ };
446
+ onScrollVerticalEnd: {
447
+ type: any;
448
+ required: false;
449
+ };
450
+ onScrollHorizontalEnd: {
451
+ type: any;
452
+ required: false;
453
+ };
454
+ }>> & Readonly<{
292
455
  [x: `on${Capitalize<string>}`]: (...args: any[]) => any;
293
456
  }>, {
294
457
  options: any;
@@ -341,5 +504,5 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
341
504
  onDblclickFillHandle: any;
342
505
  onScrollVerticalEnd: any;
343
506
  onScrollHorizontalEnd: any;
344
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
507
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
345
508
  export default _default;
@@ -17,11 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  };
18
18
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
19
  [key: string]: any;
20
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
21
- options: Record<string, any>;
22
- } & {
23
- records?: unknown[];
24
- width?: string | number;
25
- height?: string | number;
26
- } & {}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
20
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ options: {
22
+ type: ObjectConstructor;
23
+ required: true;
24
+ };
25
+ records: {
26
+ type: ArrayConstructor;
27
+ required: false;
28
+ };
29
+ width: {
30
+ type: (StringConstructor | NumberConstructor)[];
31
+ required: false;
32
+ };
33
+ height: {
34
+ type: (StringConstructor | NumberConstructor)[];
35
+ required: false;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
38
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, ref, useSlots, computed, openBlock, createElementBlock, Fragment, createVNode, mergeProps, renderSlot } from 'vue';
2
- import { flattenVNodes, createCustomLayout } from './utils.js';
2
+ import { flattenVNodes, convertPropsToCamelCase, createCustomLayout } from './utils.js';
3
3
  import _sfc_main$1 from './base-table.vue.js';
4
4
 
5
5
  var _sfc_main = defineComponent({
@@ -33,6 +33,7 @@ var _sfc_main = defineComponent({
33
33
  };
34
34
  vnodes.forEach(vnode => {
35
35
  var _a, _b;
36
+ vnode.props = convertPropsToCamelCase(vnode.props);
36
37
  const typeName = ((_a = vnode.type) === null || _a === void 0 ? void 0 : _a.symbol) || ((_b = vnode.type) === null || _b === void 0 ? void 0 : _b.name);
37
38
  const optionKey = typeMapping[typeName];
38
39
  if (optionKey) {
@@ -17,11 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  };
18
18
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
19
  [key: string]: any;
20
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
21
- options: Record<string, any>;
22
- } & {
23
- records?: unknown[];
24
- width?: string | number;
25
- height?: string | number;
26
- } & {}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
20
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ options: {
22
+ type: ObjectConstructor;
23
+ required: true;
24
+ };
25
+ records: {
26
+ type: ArrayConstructor;
27
+ required: false;
28
+ };
29
+ width: {
30
+ type: (StringConstructor | NumberConstructor)[];
31
+ required: false;
32
+ };
33
+ height: {
34
+ type: (StringConstructor | NumberConstructor)[];
35
+ required: false;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
38
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, shallowRef, useSlots, computed, openBlock, createElementBlock, Fragment, createVNode, mergeProps, renderSlot } from 'vue';
2
- import { flattenVNodes } from './utils.js';
2
+ import { flattenVNodes, convertPropsToCamelCase } from './utils.js';
3
3
  import _sfc_main$1 from './base-table.vue.js';
4
4
 
5
5
  var _sfc_main = defineComponent({
@@ -39,6 +39,7 @@ var _sfc_main = defineComponent({
39
39
  };
40
40
  flattenedSlots.forEach(vnode => {
41
41
  var _a, _b;
42
+ vnode.props = convertPropsToCamelCase(vnode.props);
42
43
  const typeName = ((_a = vnode.type) === null || _a === void 0 ? void 0 : _a.symbol) || ((_b = vnode.type) === null || _b === void 0 ? void 0 : _b.name);
43
44
  const optionKey = typeMapping[typeName];
44
45
  if (optionKey) {
@@ -17,11 +17,22 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
17
17
  };
18
18
  }>, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
19
19
  [key: string]: any;
20
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
21
- options: Record<string, any>;
22
- } & {
23
- records?: unknown[];
24
- width?: string | number;
25
- height?: string | number;
26
- } & {}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}>;
20
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
+ options: {
22
+ type: ObjectConstructor;
23
+ required: true;
24
+ };
25
+ records: {
26
+ type: ArrayConstructor;
27
+ required: false;
28
+ };
29
+ width: {
30
+ type: (StringConstructor | NumberConstructor)[];
31
+ required: false;
32
+ };
33
+ height: {
34
+ type: (StringConstructor | NumberConstructor)[];
35
+ required: false;
36
+ };
37
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
38
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, shallowRef, useSlots, computed, openBlock, createElementBlock, Fragment, createVNode, mergeProps, renderSlot } from 'vue';
2
- import { flattenVNodes } from './utils.js';
2
+ import { flattenVNodes, convertPropsToCamelCase } from './utils.js';
3
3
  import _sfc_main$1 from './base-table.vue.js';
4
4
 
5
5
  var _sfc_main = defineComponent({
@@ -39,6 +39,7 @@ var _sfc_main = defineComponent({
39
39
  };
40
40
  flattenedSlots.forEach(vnode => {
41
41
  var _a, _b;
42
+ vnode.props = convertPropsToCamelCase(vnode.props);
42
43
  const typeName = ((_a = vnode.type) === null || _a === void 0 ? void 0 : _a.symbol) || ((_b = vnode.type) === null || _b === void 0 ? void 0 : _b.name);
43
44
  const optionKey = typeMapping[typeName];
44
45
  if (optionKey) {
@@ -1,2 +1,4 @@
1
1
  export declare function flattenVNodes(vnodes: any[]): any[];
2
+ export declare function toCamelCase(str: string): string;
3
+ export declare function convertPropsToCamelCase(props: Record<string, any>): Record<string, any>;
2
4
  export declare function createCustomLayout(children: any): any;
@@ -4,6 +4,19 @@ import { isFunction } from '@visactor/vutils';
4
4
  function flattenVNodes(vnodes) {
5
5
  return vnodes.flatMap(vnode => (Array.isArray(vnode.children) ? flattenVNodes(vnode.children) : vnode));
6
6
  }
7
+ function toCamelCase(str) {
8
+ return str.replace(/-([a-z])/g, g => g[1].toUpperCase());
9
+ }
10
+ function convertPropsToCamelCase(props) {
11
+ const newProps = {};
12
+ for (const key in props) {
13
+ if (props.hasOwnProperty(key)) {
14
+ const camelCaseKey = toCamelCase(key);
15
+ newProps[camelCaseKey] = props[key];
16
+ }
17
+ }
18
+ return newProps;
19
+ }
7
20
  function isEventProp(key, props) {
8
21
  return key.startsWith('on') && isFunction(props[key]);
9
22
  }
@@ -20,7 +33,8 @@ function createCustomLayout(children) {
20
33
  if (!child) {
21
34
  return null;
22
35
  }
23
- const { type, props, children: childChildren } = child;
36
+ const { type, children: childChildren } = child;
37
+ const props = convertPropsToCamelCase(child.props);
24
38
  const componentName = (type === null || type === void 0 ? void 0 : type.symbol) || (type === null || type === void 0 ? void 0 : type.name);
25
39
  const ComponentClass = componentMap[componentName];
26
40
  if (!ComponentClass) {
@@ -52,7 +66,13 @@ function createCustomLayout(children) {
52
66
  function bindComponentEvents(component, props) {
53
67
  Object.keys(props).forEach(key => {
54
68
  if (isEventProp(key, props)) {
55
- const eventName = key.slice(2).toLowerCase();
69
+ let eventName;
70
+ if (key.startsWith('on')) {
71
+ eventName = key.slice(2).toLowerCase();
72
+ }
73
+ else {
74
+ eventName = toCamelCase(key.slice(2)).toLowerCase();
75
+ }
56
76
  component.addEventListener(eventName, props[key]);
57
77
  }
58
78
  });
@@ -60,4 +80,4 @@ function createCustomLayout(children) {
60
80
  return { rootComponent: createComponent(children) };
61
81
  }
62
82
 
63
- export { createCustomLayout, flattenVNodes };
83
+ export { convertPropsToCamelCase, createCustomLayout, flattenVNodes, toCamelCase };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visactor/vue-vtable",
3
- "version": "1.9.0",
3
+ "version": "1.9.2-alpha.0",
4
4
  "description": "The vue version of VTable",
5
5
  "keywords": [
6
6
  "vue",
@@ -43,8 +43,8 @@
43
43
  "access": "public"
44
44
  },
45
45
  "dependencies": {
46
- "@visactor/vutils": "~0.18.14",
47
- "@visactor/vtable": "1.9.0"
46
+ "@visactor/vtable": "1.9.2-alpha.0",
47
+ "@visactor/vutils": "~0.18.14"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@arco-design/web-vue": "^2.11.0",
@@ -87,8 +87,8 @@
87
87
  "axios": "^1.4.0",
88
88
  "eslint-plugin-vue": "^9.26.0",
89
89
  "vue-eslint-parser": "^9.4.2",
90
- "@internal/bundler": "0.0.1",
91
90
  "@internal/eslint-config": "0.0.1",
91
+ "@internal/bundler": "0.0.1",
92
92
  "@internal/ts-config": "0.0.1"
93
93
  },
94
94
  "scripts": {