@deot/vc 1.0.42 → 1.0.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -9436,12 +9436,12 @@ export declare const Components: {
9436
9436
  type: (StringConstructor | FunctionConstructor)[];
9437
9437
  default: string;
9438
9438
  };
9439
- defaultSort: {
9439
+ sort: {
9440
9440
  type: ObjectConstructor;
9441
9441
  default: () => {};
9442
9442
  };
9443
9443
  delay: NumberConstructor;
9444
- }>, () => JSX_2.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ")[], "select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ", PublicProps, Readonly<ExtractPropTypes< {
9444
+ }>, () => JSX_2.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "update:sort" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ")[], "select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "update:sort" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ", PublicProps, Readonly<ExtractPropTypes< {
9445
9445
  data: {
9446
9446
  type: ArrayConstructor;
9447
9447
  default: () => never[];
@@ -9508,7 +9508,7 @@ export declare const Components: {
9508
9508
  type: (StringConstructor | FunctionConstructor)[];
9509
9509
  default: string;
9510
9510
  };
9511
- defaultSort: {
9511
+ sort: {
9512
9512
  type: ObjectConstructor;
9513
9513
  default: () => {};
9514
9514
  };
@@ -9523,6 +9523,7 @@ export declare const Components: {
9523
9523
  "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
9524
9524
  "onHeader-click"?: ((...args: any[]) => any) | undefined;
9525
9525
  "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
9526
+ "onUpdate:sort"?: ((...args: any[]) => any) | undefined;
9526
9527
  "onSort-change"?: ((...args: any[]) => any) | undefined;
9527
9528
  "onCell-click"?: ((...args: any[]) => any) | undefined;
9528
9529
  "onCell-dblclick"?: ((...args: any[]) => any) | undefined;
@@ -9531,6 +9532,7 @@ export declare const Components: {
9531
9532
  "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
9532
9533
  "onHeader-dragend "?: ((...args: any[]) => any) | undefined;
9533
9534
  }>, {
9535
+ sort: Record<string, any>;
9534
9536
  data: unknown[];
9535
9537
  border: boolean;
9536
9538
  placeholder: string | Function;
@@ -9542,7 +9544,6 @@ export declare const Components: {
9542
9544
  expandSelectable: boolean;
9543
9545
  showHeader: boolean;
9544
9546
  rows: number;
9545
- defaultSort: Record<string, any>;
9546
9547
  stripe: boolean;
9547
9548
  divider: boolean;
9548
9549
  showSummary: boolean;
@@ -9616,12 +9617,12 @@ export declare const Components: {
9616
9617
  type: (StringConstructor | FunctionConstructor)[];
9617
9618
  default: string;
9618
9619
  };
9619
- defaultSort: {
9620
+ sort: {
9620
9621
  type: ObjectConstructor;
9621
9622
  default: () => {};
9622
9623
  };
9623
9624
  delay: NumberConstructor;
9624
- }>, () => JSX_2.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ")[], "select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ", PublicProps, Readonly<ExtractPropTypes< {
9625
+ }>, () => JSX_2.Element, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "update:sort" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ")[], "select" | "select-all" | "selection-change" | "expand-change" | "current-change" | "cell-mouse-enter" | "cell-mouse-leave" | "header-click" | "header-contextmenu" | "update:sort" | "sort-change" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-dragend ", PublicProps, Readonly<ExtractPropTypes< {
9625
9626
  data: {
9626
9627
  type: ArrayConstructor;
9627
9628
  default: () => never[];
@@ -9688,7 +9689,7 @@ export declare const Components: {
9688
9689
  type: (StringConstructor | FunctionConstructor)[];
9689
9690
  default: string;
9690
9691
  };
9691
- defaultSort: {
9692
+ sort: {
9692
9693
  type: ObjectConstructor;
9693
9694
  default: () => {};
9694
9695
  };
@@ -9703,6 +9704,7 @@ export declare const Components: {
9703
9704
  "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
9704
9705
  "onHeader-click"?: ((...args: any[]) => any) | undefined;
9705
9706
  "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
9707
+ "onUpdate:sort"?: ((...args: any[]) => any) | undefined;
9706
9708
  "onSort-change"?: ((...args: any[]) => any) | undefined;
9707
9709
  "onCell-click"?: ((...args: any[]) => any) | undefined;
9708
9710
  "onCell-dblclick"?: ((...args: any[]) => any) | undefined;
@@ -9711,6 +9713,7 @@ export declare const Components: {
9711
9713
  "onRow-dblclick"?: ((...args: any[]) => any) | undefined;
9712
9714
  "onHeader-dragend "?: ((...args: any[]) => any) | undefined;
9713
9715
  }>, {
9716
+ sort: Record<string, any>;
9714
9717
  data: unknown[];
9715
9718
  border: boolean;
9716
9719
  placeholder: string | Function;
@@ -9722,7 +9725,6 @@ export declare const Components: {
9722
9725
  expandSelectable: boolean;
9723
9726
  showHeader: boolean;
9724
9727
  rows: number;
9725
- defaultSort: Record<string, any>;
9726
9728
  stripe: boolean;
9727
9729
  divider: boolean;
9728
9730
  showSummary: boolean;
@@ -26325,7 +26325,35 @@ var Vc = (function (exports, vue) {
26325
26325
  };
26326
26326
  }
26327
26327
  });
26328
- const TableSort = "div";
26328
+ const TableSort = /* @__PURE__ */ vue.defineComponent({
26329
+ name: "vc-table-sort",
26330
+ props: {
26331
+ order: String
26332
+ },
26333
+ emits: ["click"],
26334
+ setup(props2, {
26335
+ emit
26336
+ }) {
26337
+ const handleClick = (v) => {
26338
+ emit("click", props2.order !== v ? v : "");
26339
+ };
26340
+ return () => {
26341
+ return vue.createVNode("span", {
26342
+ "class": "vc-table-sort"
26343
+ }, [vue.createVNode("span", {
26344
+ "class": [{
26345
+ "is-ascending": props2.order === "ascending"
26346
+ }, "vc-table-sort__icon vc-table-sort__icon--ascending"],
26347
+ "onClick": vue.withModifiers(() => handleClick("ascending"), ["stop"])
26348
+ }, null), vue.createVNode("span", {
26349
+ "class": [{
26350
+ "is-descending": props2.order === "descending"
26351
+ }, "vc-table-sort__icon vc-table-sort__icon--descending"],
26352
+ "onClick": vue.withModifiers(() => handleClick("descending"), ["stop"])
26353
+ }, null)]);
26354
+ };
26355
+ }
26356
+ });
26329
26357
  const TableFilter = "div";
26330
26358
  const TableHeader = /* @__PURE__ */ vue.defineComponent({
26331
26359
  name: "vc-table-header",
@@ -26333,7 +26361,7 @@ var Vc = (function (exports, vue) {
26333
26361
  fixed: [Boolean, String],
26334
26362
  border: Boolean,
26335
26363
  // 排序全部交给外部处理,内部不处理数据,只做交互
26336
- defaultSort: {
26364
+ sort: {
26337
26365
  type: Object,
26338
26366
  default: () => ({})
26339
26367
  }
@@ -26530,10 +26558,12 @@ var Vc = (function (exports, vue) {
26530
26558
  document.body.style.cursor = "";
26531
26559
  };
26532
26560
  const handleSort = (prop, order) => {
26533
- table.emit("sort-change", {
26561
+ const v = {
26534
26562
  prop,
26535
26563
  order
26536
- });
26564
+ };
26565
+ table.emit("update:sort", v);
26566
+ table.emit("sort-change", v);
26537
26567
  };
26538
26568
  const handleFilter = (column, value) => {
26539
26569
  const {
@@ -26591,9 +26621,10 @@ var Vc = (function (exports, vue) {
26591
26621
  store: table.store
26592
26622
  }) : column.label, column.tooltip ? vue.createVNode(Icon, {
26593
26623
  "type": "o-info",
26624
+ "class": "vc-table__tooltip",
26594
26625
  "onMouseenter": (e) => handleCellMouseEnter(e, column)
26595
26626
  }, null) : null, column.sortable ? vue.createVNode(TableSort, {
26596
- "order": column.prop === props2.defaultSort.prop ? props2.defaultSort.order : "",
26627
+ "order": column.prop === props2.sort.prop ? props2.sort.order : "",
26597
26628
  "onClick": (order) => handleSort(column.prop, order)
26598
26629
  }, null) : null, column.filters ? vue.createVNode(TableFilter, {
26599
26630
  "data": column.filters,
@@ -26807,7 +26838,7 @@ var Vc = (function (exports, vue) {
26807
26838
  * 排序全部交给外部处理,内部不处理数据,只做交互
26808
26839
  * 列与列之间互斥
26809
26840
  */
26810
- defaultSort: {
26841
+ sort: {
26811
26842
  type: Object,
26812
26843
  default: () => ({})
26813
26844
  },
@@ -26818,7 +26849,7 @@ var Vc = (function (exports, vue) {
26818
26849
  const Table$1 = /* @__PURE__ */ vue.defineComponent({
26819
26850
  name: COMPONENT_NAME$j,
26820
26851
  props: props$d,
26821
- emits: ["select", "select-all", "selection-change", "cell-mouse-enter", "cell-mouse-leave", "cell-click", "cell-dblclick", "row-click", "row-contextmenu", "row-dblclick", "header-click", "header-contextmenu", "current-change", "header-dragend ", "expand-change", "sort-change"],
26852
+ emits: ["select", "select-all", "selection-change", "cell-mouse-enter", "cell-mouse-leave", "cell-click", "cell-dblclick", "row-click", "row-contextmenu", "row-dblclick", "header-click", "header-contextmenu", "current-change", "header-dragend ", "expand-change", "sort-change", "update:sort"],
26822
26853
  setup(props2, {
26823
26854
  slots,
26824
26855
  expose,
@@ -27201,7 +27232,7 @@ var Vc = (function (exports, vue) {
27201
27232
  }, [vue.createVNode(TableHeader, {
27202
27233
  "ref": tableHeader,
27203
27234
  "border": props2.border,
27204
- "default-sort": props2.defaultSort,
27235
+ "sort": props2.sort,
27205
27236
  "style": bodyWidthStyle.value
27206
27237
  }, null)]), states.columns.length > 0 && vue.createVNode(ScrollerWheel, {
27207
27238
  "ref": scroller,
@@ -27250,7 +27281,7 @@ var Vc = (function (exports, vue) {
27250
27281
  }, [vue.createVNode(TableHeader, {
27251
27282
  "ref": leftFixedTableHeader,
27252
27283
  "border": props2.border,
27253
- "default-sort": props2.defaultSort,
27284
+ "sort": props2.sort,
27254
27285
  "style": bodyWidthStyle.value,
27255
27286
  "fixed": "left"
27256
27287
  }, null)]), vue.createVNode("div", {
@@ -27289,7 +27320,7 @@ var Vc = (function (exports, vue) {
27289
27320
  }, [vue.createVNode(TableHeader, {
27290
27321
  "ref": rightFixedTableHeader,
27291
27322
  "border": props2.border,
27292
- "default-sort": props2.defaultSort,
27323
+ "sort": props2.sort,
27293
27324
  "style": bodyWidthStyle.value,
27294
27325
  "fixed": "right"
27295
27326
  }, null)]), vue.createVNode("div", {
@@ -26328,7 +26328,35 @@
26328
26328
  };
26329
26329
  }
26330
26330
  });
26331
- const TableSort = "div";
26331
+ const TableSort = /* @__PURE__ */ vue.defineComponent({
26332
+ name: "vc-table-sort",
26333
+ props: {
26334
+ order: String
26335
+ },
26336
+ emits: ["click"],
26337
+ setup(props2, {
26338
+ emit
26339
+ }) {
26340
+ const handleClick = (v) => {
26341
+ emit("click", props2.order !== v ? v : "");
26342
+ };
26343
+ return () => {
26344
+ return vue.createVNode("span", {
26345
+ "class": "vc-table-sort"
26346
+ }, [vue.createVNode("span", {
26347
+ "class": [{
26348
+ "is-ascending": props2.order === "ascending"
26349
+ }, "vc-table-sort__icon vc-table-sort__icon--ascending"],
26350
+ "onClick": vue.withModifiers(() => handleClick("ascending"), ["stop"])
26351
+ }, null), vue.createVNode("span", {
26352
+ "class": [{
26353
+ "is-descending": props2.order === "descending"
26354
+ }, "vc-table-sort__icon vc-table-sort__icon--descending"],
26355
+ "onClick": vue.withModifiers(() => handleClick("descending"), ["stop"])
26356
+ }, null)]);
26357
+ };
26358
+ }
26359
+ });
26332
26360
  const TableFilter = "div";
26333
26361
  const TableHeader = /* @__PURE__ */ vue.defineComponent({
26334
26362
  name: "vc-table-header",
@@ -26336,7 +26364,7 @@
26336
26364
  fixed: [Boolean, String],
26337
26365
  border: Boolean,
26338
26366
  // 排序全部交给外部处理,内部不处理数据,只做交互
26339
- defaultSort: {
26367
+ sort: {
26340
26368
  type: Object,
26341
26369
  default: () => ({})
26342
26370
  }
@@ -26533,10 +26561,12 @@
26533
26561
  document.body.style.cursor = "";
26534
26562
  };
26535
26563
  const handleSort = (prop, order) => {
26536
- table.emit("sort-change", {
26564
+ const v = {
26537
26565
  prop,
26538
26566
  order
26539
- });
26567
+ };
26568
+ table.emit("update:sort", v);
26569
+ table.emit("sort-change", v);
26540
26570
  };
26541
26571
  const handleFilter = (column, value) => {
26542
26572
  const {
@@ -26594,9 +26624,10 @@
26594
26624
  store: table.store
26595
26625
  }) : column.label, column.tooltip ? vue.createVNode(Icon, {
26596
26626
  "type": "o-info",
26627
+ "class": "vc-table__tooltip",
26597
26628
  "onMouseenter": (e) => handleCellMouseEnter(e, column)
26598
26629
  }, null) : null, column.sortable ? vue.createVNode(TableSort, {
26599
- "order": column.prop === props2.defaultSort.prop ? props2.defaultSort.order : "",
26630
+ "order": column.prop === props2.sort.prop ? props2.sort.order : "",
26600
26631
  "onClick": (order) => handleSort(column.prop, order)
26601
26632
  }, null) : null, column.filters ? vue.createVNode(TableFilter, {
26602
26633
  "data": column.filters,
@@ -26810,7 +26841,7 @@
26810
26841
  * 排序全部交给外部处理,内部不处理数据,只做交互
26811
26842
  * 列与列之间互斥
26812
26843
  */
26813
- defaultSort: {
26844
+ sort: {
26814
26845
  type: Object,
26815
26846
  default: () => ({})
26816
26847
  },
@@ -26821,7 +26852,7 @@
26821
26852
  const Table$1 = /* @__PURE__ */ vue.defineComponent({
26822
26853
  name: COMPONENT_NAME$j,
26823
26854
  props: props$d,
26824
- emits: ["select", "select-all", "selection-change", "cell-mouse-enter", "cell-mouse-leave", "cell-click", "cell-dblclick", "row-click", "row-contextmenu", "row-dblclick", "header-click", "header-contextmenu", "current-change", "header-dragend ", "expand-change", "sort-change"],
26855
+ emits: ["select", "select-all", "selection-change", "cell-mouse-enter", "cell-mouse-leave", "cell-click", "cell-dblclick", "row-click", "row-contextmenu", "row-dblclick", "header-click", "header-contextmenu", "current-change", "header-dragend ", "expand-change", "sort-change", "update:sort"],
26825
26856
  setup(props2, {
26826
26857
  slots,
26827
26858
  expose,
@@ -27204,7 +27235,7 @@
27204
27235
  }, [vue.createVNode(TableHeader, {
27205
27236
  "ref": tableHeader,
27206
27237
  "border": props2.border,
27207
- "default-sort": props2.defaultSort,
27238
+ "sort": props2.sort,
27208
27239
  "style": bodyWidthStyle.value
27209
27240
  }, null)]), states.columns.length > 0 && vue.createVNode(ScrollerWheel, {
27210
27241
  "ref": scroller,
@@ -27253,7 +27284,7 @@
27253
27284
  }, [vue.createVNode(TableHeader, {
27254
27285
  "ref": leftFixedTableHeader,
27255
27286
  "border": props2.border,
27256
- "default-sort": props2.defaultSort,
27287
+ "sort": props2.sort,
27257
27288
  "style": bodyWidthStyle.value,
27258
27289
  "fixed": "left"
27259
27290
  }, null)]), vue.createVNode("div", {
@@ -27292,7 +27323,7 @@
27292
27323
  }, [vue.createVNode(TableHeader, {
27293
27324
  "ref": rightFixedTableHeader,
27294
27325
  "border": props2.border,
27295
- "default-sort": props2.defaultSort,
27326
+ "sort": props2.sort,
27296
27327
  "style": bodyWidthStyle.value,
27297
27328
  "fixed": "right"
27298
27329
  }, null)]), vue.createVNode("div", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deot/vc",
3
- "version": "1.0.42",
3
+ "version": "1.0.43",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,9 +19,9 @@
19
19
  "access": "public"
20
20
  },
21
21
  "dependencies": {
22
- "@deot/vc-components": "^1.0.42",
23
- "@deot/vc-hooks": "^1.0.42",
24
- "@deot/vc-shared": "^1.0.42"
22
+ "@deot/vc-components": "^1.0.43",
23
+ "@deot/vc-hooks": "^1.0.43",
24
+ "@deot/vc-shared": "^1.0.43"
25
25
  },
26
26
  "peerDependencies": {
27
27
  "vue": "*"