@koi-design/uxd-ui 14.0.4 → 14.0.6

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 (146) hide show
  1. package/es/components/Calendar/Calendar.vue.d.ts +15 -0
  2. package/es/components/Calendar/Header.vue.d.ts +15 -0
  3. package/es/components/Calendar/index.d.ts +30 -0
  4. package/es/components/Radio/Radio.mjs +5 -4
  5. package/es/components/Radio/Radio.mjs.map +1 -1
  6. package/es/components/Radio/Radio.type.d.ts +4 -0
  7. package/es/components/Radio/Radio.type.mjs +4 -0
  8. package/es/components/Radio/Radio.type.mjs.map +1 -1
  9. package/es/components/Radio/Radio.vue.d.ts +9 -0
  10. package/es/components/Radio/index.d.ts +15 -0
  11. package/es/components/Table/BaseTable.mjs +20 -6
  12. package/es/components/Table/BaseTable.mjs.map +1 -1
  13. package/es/components/Table/BaseTable.vue.d.ts +44 -9
  14. package/es/components/Table/BodyTable.vue.d.ts +44 -9
  15. package/es/components/Table/HeadTable.vue.d.ts +44 -9
  16. package/es/components/Table/Table.mjs +8 -9
  17. package/es/components/Table/Table.mjs.map +1 -1
  18. package/es/components/Table/Table.type.d.ts +7 -5
  19. package/es/components/Table/Table.type.mjs.map +1 -1
  20. package/es/components/Table/Table.vue.d.ts +88 -18
  21. package/es/components/Table/TableBox.vue.d.ts +88 -18
  22. package/es/components/Table/hooks/useTableResize.d.ts +1 -1
  23. package/es/components/Table/hooks/useTableResize.mjs +13 -71
  24. package/es/components/Table/hooks/useTableResize.mjs.map +1 -1
  25. package/es/components/Table/tableUnits/ColGroup.mjs +8 -5
  26. package/es/components/Table/tableUnits/ColGroup.mjs.map +1 -1
  27. package/es/components/Table/tableUnits/ExpandIcon.mjs +2 -2
  28. package/es/components/Table/tableUnits/ExpandIcon.mjs.map +1 -1
  29. package/es/components/Table/tableUnits/ExpandIcon.vue.d.ts +3 -3
  30. package/es/components/Table/tableUnits/ExpandRows.mjs.map +1 -1
  31. package/es/components/Table/tableUnits/ExpandRows.vue.d.ts +21 -3
  32. package/es/components/Table/tableUnits/SelectionBox.vue.d.ts +15 -0
  33. package/es/components/Table/tableUnits/TableBody.vue.d.ts +42 -6
  34. package/es/components/Table/tableUnits/TableCell.mjs +108 -95
  35. package/es/components/Table/tableUnits/TableCell.mjs.map +1 -1
  36. package/es/components/Table/tableUnits/TableCell.vue.d.ts +21 -3
  37. package/es/components/Table/tableUnits/TableRow.vue.d.ts +21 -3
  38. package/es/components/Tabs/TabNav.mjs +4 -5
  39. package/es/components/Tabs/TabNav.mjs.map +1 -1
  40. package/es/components/Tabs/TabNav.vue.d.ts +1 -1
  41. package/es/components/Tabs/Tabs.d.ts +1 -1
  42. package/es/components/Tabs/index.d.ts +3 -3
  43. package/es/components/base/ResizeObserver.mjs +1 -1
  44. package/es/components/base/ResizeObserver.mjs.map +1 -1
  45. package/lib/components/Calendar/Calendar.vue.d.ts +15 -0
  46. package/lib/components/Calendar/Header.vue.d.ts +15 -0
  47. package/lib/components/Calendar/index.d.ts +30 -0
  48. package/lib/components/Radio/Radio.js +4 -3
  49. package/lib/components/Radio/Radio.js.map +1 -1
  50. package/lib/components/Radio/Radio.type.d.ts +4 -0
  51. package/lib/components/Radio/Radio.type.js +4 -0
  52. package/lib/components/Radio/Radio.type.js.map +1 -1
  53. package/lib/components/Radio/Radio.vue.d.ts +9 -0
  54. package/lib/components/Radio/index.d.ts +15 -0
  55. package/lib/components/Table/BaseTable.js +20 -6
  56. package/lib/components/Table/BaseTable.js.map +1 -1
  57. package/lib/components/Table/BaseTable.vue.d.ts +44 -9
  58. package/lib/components/Table/BodyTable.vue.d.ts +44 -9
  59. package/lib/components/Table/HeadTable.vue.d.ts +44 -9
  60. package/lib/components/Table/Table.js +7 -8
  61. package/lib/components/Table/Table.js.map +1 -1
  62. package/lib/components/Table/Table.type.d.ts +7 -5
  63. package/lib/components/Table/Table.type.js.map +1 -1
  64. package/lib/components/Table/Table.vue.d.ts +88 -18
  65. package/lib/components/Table/TableBox.vue.d.ts +88 -18
  66. package/lib/components/Table/hooks/useTableResize.d.ts +1 -1
  67. package/lib/components/Table/hooks/useTableResize.js +11 -69
  68. package/lib/components/Table/hooks/useTableResize.js.map +1 -1
  69. package/lib/components/Table/tableUnits/ColGroup.js +8 -5
  70. package/lib/components/Table/tableUnits/ColGroup.js.map +1 -1
  71. package/lib/components/Table/tableUnits/ExpandIcon.js +1 -1
  72. package/lib/components/Table/tableUnits/ExpandIcon.js.map +1 -1
  73. package/lib/components/Table/tableUnits/ExpandIcon.vue.d.ts +3 -3
  74. package/lib/components/Table/tableUnits/ExpandRows.js.map +1 -1
  75. package/lib/components/Table/tableUnits/ExpandRows.vue.d.ts +21 -3
  76. package/lib/components/Table/tableUnits/SelectionBox.vue.d.ts +15 -0
  77. package/lib/components/Table/tableUnits/TableBody.vue.d.ts +42 -6
  78. package/lib/components/Table/tableUnits/TableCell.js +107 -94
  79. package/lib/components/Table/tableUnits/TableCell.js.map +1 -1
  80. package/lib/components/Table/tableUnits/TableCell.vue.d.ts +21 -3
  81. package/lib/components/Table/tableUnits/TableRow.vue.d.ts +21 -3
  82. package/lib/components/Tabs/TabNav.js +3 -4
  83. package/lib/components/Tabs/TabNav.js.map +1 -1
  84. package/lib/components/Tabs/TabNav.vue.d.ts +1 -1
  85. package/lib/components/Tabs/Tabs.d.ts +1 -1
  86. package/lib/components/Tabs/index.d.ts +3 -3
  87. package/lib/components/base/ResizeObserver.js +1 -1
  88. package/lib/components/base/ResizeObserver.js.map +1 -1
  89. package/package.json +1 -1
  90. package/styles/components/alert/index.css +1 -1
  91. package/styles/components/autoComplete/index.css +1 -1
  92. package/styles/components/avatar/index.css +1 -1
  93. package/styles/components/button/index.css +1 -1
  94. package/styles/components/carousel/index.css +1 -1
  95. package/styles/components/cascader/index.css +1 -1
  96. package/styles/components/datePicker/index.css +1 -1
  97. package/styles/components/dropdown/index.css +1 -1
  98. package/styles/components/dropdown/index.less +2 -3
  99. package/styles/components/form/index.css +1 -1
  100. package/styles/components/icon/index.css +1 -1
  101. package/styles/components/input/index.css +1 -1
  102. package/styles/components/inputNumber/index.css +1 -1
  103. package/styles/components/link/index.css +1 -1
  104. package/styles/components/mentions/index.css +1 -1
  105. package/styles/components/modal/index.css +1 -1
  106. package/styles/components/select/index.css +1 -1
  107. package/styles/components/spin/index.css +1 -1
  108. package/styles/components/table/index.css +1 -1
  109. package/styles/components/table/index.less +106 -242
  110. package/styles/components/table/var.less +16 -31
  111. package/styles/components/tabs/borderCard.less +23 -27
  112. package/styles/components/tabs/card.less +18 -37
  113. package/styles/components/tabs/index.css +1 -1
  114. package/styles/components/tabs/index.less +103 -72
  115. package/styles/components/tabs/var.less +16 -71
  116. package/styles/components/timePicker/index.css +1 -1
  117. package/styles/cssVariable.css +1 -1
  118. package/styles/cssVariable.less +1 -1
  119. package/styles/index.css +1 -1
  120. package/types/components/Calendar/Calendar.vue.d.ts +15 -0
  121. package/types/components/Calendar/Header.vue.d.ts +15 -0
  122. package/types/components/Calendar/index.d.ts +30 -0
  123. package/types/components/Radio/Radio.type.d.ts +4 -0
  124. package/types/components/Radio/Radio.vue.d.ts +9 -0
  125. package/types/components/Radio/index.d.ts +15 -0
  126. package/types/components/Table/BaseTable.vue.d.ts +44 -9
  127. package/types/components/Table/BodyTable.vue.d.ts +44 -9
  128. package/types/components/Table/HeadTable.vue.d.ts +44 -9
  129. package/types/components/Table/Table.type.d.ts +7 -5
  130. package/types/components/Table/Table.vue.d.ts +88 -18
  131. package/types/components/Table/TableBox.vue.d.ts +88 -18
  132. package/types/components/Table/hooks/useTableResize.d.ts +1 -1
  133. package/types/components/Table/tableUnits/ExpandIcon.vue.d.ts +3 -3
  134. package/types/components/Table/tableUnits/ExpandRows.vue.d.ts +21 -3
  135. package/types/components/Table/tableUnits/SelectionBox.vue.d.ts +15 -0
  136. package/types/components/Table/tableUnits/TableBody.vue.d.ts +42 -6
  137. package/types/components/Table/tableUnits/TableCell.vue.d.ts +21 -3
  138. package/types/components/Table/tableUnits/TableRow.vue.d.ts +21 -3
  139. package/types/components/Tabs/TabNav.vue.d.ts +1 -1
  140. package/types/components/Tabs/Tabs.d.ts +1 -1
  141. package/types/components/Tabs/index.d.ts +3 -3
  142. package/uxd-ui.css +1 -1
  143. package/uxd-ui.esm.min.mjs +6 -6
  144. package/uxd-ui.esm.mjs +164 -191
  145. package/uxd-ui.umd.js +164 -191
  146. package/uxd-ui.umd.min.js +6 -6
@@ -34,8 +34,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
34
34
  title?: string;
35
35
  dataIndex?: string;
36
36
  width?: string | number;
37
- minWidth?: string | number;
38
- maxWidth?: string | number;
37
+ minWidth?: number;
39
38
  fixed?: import("./Table.type").ColumnFixed;
40
39
  align?: import("./Table.type").ColumnAlign;
41
40
  ellipsis?: boolean;
@@ -46,7 +45,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
46
45
  filterable?: boolean;
47
46
  filters?: import("./Table.type").ColumnFilter[];
48
47
  filterFn?: import("./Table.type").ColumnFilterFn;
49
- filterIcon?: string;
48
+ filterIcon?: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>;
50
49
  filterIconStyle?: CSSProperties;
51
50
  filterMultiple?: boolean;
52
51
  filteredValue?: (string | number)[];
@@ -4430,6 +4429,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4430
4429
  cellRef: import("vue").Ref<any, any>;
4431
4430
  ellipsisSpanRef: import("vue").Ref<any, any>;
4432
4431
  isOverflow: import("vue").Ref<boolean, boolean>;
4432
+ debouncedHandleResize: import("../../utils").DebounceReturn;
4433
4433
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
4434
4434
  prefixCls: {
4435
4435
  type: StringConstructor;
@@ -4486,7 +4486,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4486
4486
  };
4487
4487
  expandIcon: {
4488
4488
  type: PropType<import("../..").IconPropType>;
4489
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4489
+ default: any;
4490
4490
  };
4491
4491
  needIndentSpaced: {
4492
4492
  type: BooleanConstructor;
@@ -4512,7 +4512,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4512
4512
  };
4513
4513
  expandIcon: {
4514
4514
  type: PropType<import("../..").IconPropType>;
4515
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4515
+ default: any;
4516
4516
  };
4517
4517
  needIndentSpaced: {
4518
4518
  type: BooleanConstructor;
@@ -4527,7 +4527,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4527
4527
  "onAsync-expand"?: (...args: any[]) => any;
4528
4528
  }>, {
4529
4529
  expanded: boolean;
4530
- expandIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4530
+ expandIcon: any;
4531
4531
  expandable: boolean;
4532
4532
  needIndentSpaced: boolean;
4533
4533
  needLoading: boolean;
@@ -5504,6 +5504,23 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5504
5504
  }, {}, {
5505
5505
  ImageIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5506
5506
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5507
+ ResizeObserver: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
5508
+ disabled: {
5509
+ type: BooleanConstructor;
5510
+ default: boolean;
5511
+ };
5512
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5513
+ [key: string]: any;
5514
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5515
+ disabled: {
5516
+ type: BooleanConstructor;
5517
+ default: boolean;
5518
+ };
5519
+ }>> & Readonly<{
5520
+ onResize?: (...args: any[]) => any;
5521
+ }>, {
5522
+ disabled: boolean;
5523
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5507
5524
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5508
5525
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5509
5526
  ExpandRows: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
@@ -5711,6 +5728,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5711
5728
  cellRef: import("vue").Ref<any, any>;
5712
5729
  ellipsisSpanRef: import("vue").Ref<any, any>;
5713
5730
  isOverflow: import("vue").Ref<boolean, boolean>;
5731
+ debouncedHandleResize: import("../../utils").DebounceReturn;
5714
5732
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5715
5733
  prefixCls: {
5716
5734
  type: StringConstructor;
@@ -5767,7 +5785,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5767
5785
  };
5768
5786
  expandIcon: {
5769
5787
  type: PropType<import("../..").IconPropType>;
5770
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5788
+ default: any;
5771
5789
  };
5772
5790
  needIndentSpaced: {
5773
5791
  type: BooleanConstructor;
@@ -5793,7 +5811,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5793
5811
  };
5794
5812
  expandIcon: {
5795
5813
  type: PropType<import("../..").IconPropType>;
5796
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5814
+ default: any;
5797
5815
  };
5798
5816
  needIndentSpaced: {
5799
5817
  type: BooleanConstructor;
@@ -5808,7 +5826,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5808
5826
  "onAsync-expand"?: (...args: any[]) => any;
5809
5827
  }>, {
5810
5828
  expanded: boolean;
5811
- expandIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5829
+ expandIcon: any;
5812
5830
  expandable: boolean;
5813
5831
  needIndentSpaced: boolean;
5814
5832
  needLoading: boolean;
@@ -6785,6 +6803,23 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
6785
6803
  }, {}, {
6786
6804
  ImageIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
6787
6805
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6806
+ ResizeObserver: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
6807
+ disabled: {
6808
+ type: BooleanConstructor;
6809
+ default: boolean;
6810
+ };
6811
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
6812
+ [key: string]: any;
6813
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
6814
+ disabled: {
6815
+ type: BooleanConstructor;
6816
+ default: boolean;
6817
+ };
6818
+ }>> & Readonly<{
6819
+ onResize?: (...args: any[]) => any;
6820
+ }>, {
6821
+ disabled: boolean;
6822
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6788
6823
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6789
6824
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6790
6825
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -53,8 +53,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
53
53
  title?: string;
54
54
  dataIndex?: string;
55
55
  width?: string | number;
56
- minWidth?: string | number;
57
- maxWidth?: string | number;
56
+ minWidth?: number;
58
57
  fixed?: import("./Table.type").ColumnFixed;
59
58
  align?: import("./Table.type").ColumnAlign;
60
59
  ellipsis?: boolean;
@@ -65,7 +64,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
65
64
  filterable?: boolean;
66
65
  filters?: import("./Table.type").ColumnFilter[];
67
66
  filterFn?: import("./Table.type").ColumnFilterFn;
68
- filterIcon?: string;
67
+ filterIcon?: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>;
69
68
  filterIconStyle?: CSSProperties;
70
69
  filterMultiple?: boolean;
71
70
  filteredValue?: (string | number)[];
@@ -4449,6 +4448,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4449
4448
  cellRef: import("vue").Ref<any, any>;
4450
4449
  ellipsisSpanRef: import("vue").Ref<any, any>;
4451
4450
  isOverflow: import("vue").Ref<boolean, boolean>;
4451
+ debouncedHandleResize: import("../../utils").DebounceReturn;
4452
4452
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
4453
4453
  prefixCls: {
4454
4454
  type: StringConstructor;
@@ -4505,7 +4505,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4505
4505
  };
4506
4506
  expandIcon: {
4507
4507
  type: PropType<import("../..").IconPropType>;
4508
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4508
+ default: any;
4509
4509
  };
4510
4510
  needIndentSpaced: {
4511
4511
  type: BooleanConstructor;
@@ -4531,7 +4531,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4531
4531
  };
4532
4532
  expandIcon: {
4533
4533
  type: PropType<import("../..").IconPropType>;
4534
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4534
+ default: any;
4535
4535
  };
4536
4536
  needIndentSpaced: {
4537
4537
  type: BooleanConstructor;
@@ -4546,7 +4546,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4546
4546
  "onAsync-expand"?: (...args: any[]) => any;
4547
4547
  }>, {
4548
4548
  expanded: boolean;
4549
- expandIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4549
+ expandIcon: any;
4550
4550
  expandable: boolean;
4551
4551
  needIndentSpaced: boolean;
4552
4552
  needLoading: boolean;
@@ -5523,6 +5523,23 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5523
5523
  }, {}, {
5524
5524
  ImageIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5525
5525
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5526
+ ResizeObserver: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
5527
+ disabled: {
5528
+ type: BooleanConstructor;
5529
+ default: boolean;
5530
+ };
5531
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5532
+ [key: string]: any;
5533
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5534
+ disabled: {
5535
+ type: BooleanConstructor;
5536
+ default: boolean;
5537
+ };
5538
+ }>> & Readonly<{
5539
+ onResize?: (...args: any[]) => any;
5540
+ }>, {
5541
+ disabled: boolean;
5542
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5526
5543
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5527
5544
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5528
5545
  ExpandRows: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
@@ -5730,6 +5747,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5730
5747
  cellRef: import("vue").Ref<any, any>;
5731
5748
  ellipsisSpanRef: import("vue").Ref<any, any>;
5732
5749
  isOverflow: import("vue").Ref<boolean, boolean>;
5750
+ debouncedHandleResize: import("../../utils").DebounceReturn;
5733
5751
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5734
5752
  prefixCls: {
5735
5753
  type: StringConstructor;
@@ -5786,7 +5804,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5786
5804
  };
5787
5805
  expandIcon: {
5788
5806
  type: PropType<import("../..").IconPropType>;
5789
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5807
+ default: any;
5790
5808
  };
5791
5809
  needIndentSpaced: {
5792
5810
  type: BooleanConstructor;
@@ -5812,7 +5830,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5812
5830
  };
5813
5831
  expandIcon: {
5814
5832
  type: PropType<import("../..").IconPropType>;
5815
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5833
+ default: any;
5816
5834
  };
5817
5835
  needIndentSpaced: {
5818
5836
  type: BooleanConstructor;
@@ -5827,7 +5845,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5827
5845
  "onAsync-expand"?: (...args: any[]) => any;
5828
5846
  }>, {
5829
5847
  expanded: boolean;
5830
- expandIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5848
+ expandIcon: any;
5831
5849
  expandable: boolean;
5832
5850
  needIndentSpaced: boolean;
5833
5851
  needLoading: boolean;
@@ -6804,6 +6822,23 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
6804
6822
  }, {}, {
6805
6823
  ImageIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
6806
6824
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6825
+ ResizeObserver: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
6826
+ disabled: {
6827
+ type: BooleanConstructor;
6828
+ default: boolean;
6829
+ };
6830
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
6831
+ [key: string]: any;
6832
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
6833
+ disabled: {
6834
+ type: BooleanConstructor;
6835
+ default: boolean;
6836
+ };
6837
+ }>> & Readonly<{
6838
+ onResize?: (...args: any[]) => any;
6839
+ }>, {
6840
+ disabled: boolean;
6841
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6807
6842
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6808
6843
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6809
6844
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -50,8 +50,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
50
50
  title?: string;
51
51
  dataIndex?: string;
52
52
  width?: string | number;
53
- minWidth?: string | number;
54
- maxWidth?: string | number;
53
+ minWidth?: number;
55
54
  fixed?: import("./Table.type").ColumnFixed;
56
55
  align?: import("./Table.type").ColumnAlign;
57
56
  ellipsis?: boolean;
@@ -62,7 +61,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
62
61
  filterable?: boolean;
63
62
  filters?: import("./Table.type").ColumnFilter[];
64
63
  filterFn?: import("./Table.type").ColumnFilterFn;
65
- filterIcon?: string;
64
+ filterIcon?: string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, {}, any>;
66
65
  filterIconStyle?: import("vue").CSSProperties;
67
66
  filterMultiple?: boolean;
68
67
  filteredValue?: (string | number)[];
@@ -4446,6 +4445,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4446
4445
  cellRef: import("vue").Ref<any, any>;
4447
4446
  ellipsisSpanRef: import("vue").Ref<any, any>;
4448
4447
  isOverflow: import("vue").Ref<boolean, boolean>;
4448
+ debouncedHandleResize: import("../../utils").DebounceReturn;
4449
4449
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
4450
4450
  prefixCls: {
4451
4451
  type: StringConstructor;
@@ -4502,7 +4502,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4502
4502
  };
4503
4503
  expandIcon: {
4504
4504
  type: PropType<import("../..").IconPropType>;
4505
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4505
+ default: any;
4506
4506
  };
4507
4507
  needIndentSpaced: {
4508
4508
  type: BooleanConstructor;
@@ -4528,7 +4528,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4528
4528
  };
4529
4529
  expandIcon: {
4530
4530
  type: PropType<import("../..").IconPropType>;
4531
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4531
+ default: any;
4532
4532
  };
4533
4533
  needIndentSpaced: {
4534
4534
  type: BooleanConstructor;
@@ -4543,7 +4543,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4543
4543
  "onAsync-expand"?: (...args: any[]) => any;
4544
4544
  }>, {
4545
4545
  expanded: boolean;
4546
- expandIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
4546
+ expandIcon: any;
4547
4547
  expandable: boolean;
4548
4548
  needIndentSpaced: boolean;
4549
4549
  needLoading: boolean;
@@ -5520,6 +5520,23 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5520
5520
  }, {}, {
5521
5521
  ImageIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5522
5522
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5523
+ ResizeObserver: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
5524
+ disabled: {
5525
+ type: BooleanConstructor;
5526
+ default: boolean;
5527
+ };
5528
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
5529
+ [key: string]: any;
5530
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5531
+ disabled: {
5532
+ type: BooleanConstructor;
5533
+ default: boolean;
5534
+ };
5535
+ }>> & Readonly<{
5536
+ onResize?: (...args: any[]) => any;
5537
+ }>, {
5538
+ disabled: boolean;
5539
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5523
5540
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5524
5541
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
5525
5542
  ExpandRows: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
@@ -5727,6 +5744,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5727
5744
  cellRef: import("vue").Ref<any, any>;
5728
5745
  ellipsisSpanRef: import("vue").Ref<any, any>;
5729
5746
  isOverflow: import("vue").Ref<boolean, boolean>;
5747
+ debouncedHandleResize: import("../../utils").DebounceReturn;
5730
5748
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
5731
5749
  prefixCls: {
5732
5750
  type: StringConstructor;
@@ -5783,7 +5801,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5783
5801
  };
5784
5802
  expandIcon: {
5785
5803
  type: PropType<import("../..").IconPropType>;
5786
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5804
+ default: any;
5787
5805
  };
5788
5806
  needIndentSpaced: {
5789
5807
  type: BooleanConstructor;
@@ -5809,7 +5827,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5809
5827
  };
5810
5828
  expandIcon: {
5811
5829
  type: PropType<import("../..").IconPropType>;
5812
- default: () => import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5830
+ default: any;
5813
5831
  };
5814
5832
  needIndentSpaced: {
5815
5833
  type: BooleanConstructor;
@@ -5824,7 +5842,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
5824
5842
  "onAsync-expand"?: (...args: any[]) => any;
5825
5843
  }>, {
5826
5844
  expanded: boolean;
5827
- expandIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
5845
+ expandIcon: any;
5828
5846
  expandable: boolean;
5829
5847
  needIndentSpaced: boolean;
5830
5848
  needLoading: boolean;
@@ -6801,6 +6819,23 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
6801
6819
  }, {}, {
6802
6820
  ImageIcon: import("vue").FunctionalComponent<import("lucide-vue-next").LucideProps, {}, any, {}>;
6803
6821
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6822
+ ResizeObserver: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
6823
+ disabled: {
6824
+ type: BooleanConstructor;
6825
+ default: boolean;
6826
+ };
6827
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
6828
+ [key: string]: any;
6829
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "resize"[], "resize", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
6830
+ disabled: {
6831
+ type: BooleanConstructor;
6832
+ default: boolean;
6833
+ };
6834
+ }>> & Readonly<{
6835
+ onResize?: (...args: any[]) => any;
6836
+ }>, {
6837
+ disabled: boolean;
6838
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6804
6839
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6805
6840
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
6806
6841
  }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -81,13 +81,13 @@ const _sfc_main = vue.defineComponent({
81
81
  selectionColumn
82
82
  });
83
83
  const {
84
- sizesMap,
85
84
  handleResize,
86
85
  isScrollX,
87
86
  scrollPosition,
88
87
  setScrollPositionClass,
89
88
  resetScrollX,
90
89
  tableWidth,
90
+ resizeColumns,
91
91
  clearResizeTimer,
92
92
  setResizeWidth
93
93
  } = useTableResize["default"](updatedColumns, tableRefs, prefixCls, isColumnFixed, props);
@@ -169,7 +169,7 @@ const _sfc_main = vue.defineComponent({
169
169
  const handleColumnResize = (columnWidth, changeWidth, column, event) => {
170
170
  emit("column-resize", columnWidth, changeWidth, column, event);
171
171
  };
172
- const { showHeader, maxHeight, expandIcon, rowClassName, indentSize, showSummary, disabledHover, expandIndent, headerSticky, loading } = vue.toRefs(props);
172
+ const { showHeader, maxHeight, expandIcon, rowClassName, indentSize, showSummary, disabledHover, expandIndent, headerSticky, loading, width } = vue.toRefs(props);
173
173
  vue.provide("tableContext", {
174
174
  prefixCls,
175
175
  locale,
@@ -188,7 +188,8 @@ const _sfc_main = vue.defineComponent({
188
188
  disabledHover,
189
189
  expandIndent,
190
190
  headerSticky,
191
- loading
191
+ loading,
192
+ width
192
193
  },
193
194
  slots,
194
195
  expand: {
@@ -202,7 +203,7 @@ const _sfc_main = vue.defineComponent({
202
203
  },
203
204
  size: {
204
205
  tableWidth,
205
- sizesMap,
206
+ resizeColumns,
206
207
  isScrollX,
207
208
  setResizeWidth,
208
209
  handleColumnResize,
@@ -271,8 +272,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
271
272
  return vue.openBlock(), vue.createBlock(_component_ResizeObserver, { onResize: _ctx.debouncedHandleResize }, {
272
273
  default: vue.withCtx(() => [
273
274
  vue.createElementVNode("div", {
274
- class: vue.normalizeClass([`${_ctx.prefixCls}-wrapper`]),
275
- style: vue.normalizeStyle({ width: typeof _ctx.width === "number" ? `${_ctx.width}px` : _ctx.width })
275
+ class: vue.normalizeClass([`${_ctx.prefixCls}-wrapper`])
276
276
  }, [
277
277
  _ctx.showPagination && _ctx.pagination && (_ctx.pagination.position === "top" || _ctx.pagination.position === "both") ? (vue.openBlock(), vue.createElementBlock("div", {
278
278
  key: 0,
@@ -300,7 +300,6 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
300
300
  [`${_ctx.prefixCls}-empty`]: !_ctx.data.length,
301
301
  [`${_ctx.prefixCls}-without-column-header`]: !_ctx.showHeader,
302
302
  [`${_ctx.prefixCls}-fixed-header`]: !!_ctx.maxHeight,
303
- [`${_ctx.prefixCls}-layout-fixed`]: true,
304
303
  [`${_ctx.prefixCls}-scroll-position-left`]: _ctx.scrollPosition === "left" || _ctx.scrollPosition === "both",
305
304
  [`${_ctx.prefixCls}-scroll-position-right`]: _ctx.scrollPosition === "right" || _ctx.scrollPosition === "both",
306
305
  [`${_ctx.prefixCls}-dragging`]: _ctx.showResizeLine,
@@ -363,7 +362,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
363
362
  onPageSizeChange: _ctx.handlePageSizeChange
364
363
  }), null, 16, ["total", "onChange", "onPageSizeChange"])
365
364
  ], 2)) : vue.createCommentVNode("v-if", true)
366
- ], 6)
365
+ ], 2)
367
366
  ]),
368
367
  _: 3
369
368
  }, 8, ["onResize"]);
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sources":["../../../../src/components/Table/Table.vue"],"sourcesContent":["<template>\n <ResizeObserver @resize=\"debouncedHandleResize\">\n <div :class=\"[`${prefixCls}-wrapper`]\" :style=\"{ width: typeof width === 'number' ? `${width}px` : width }\">\n <div\n v-if=\"showPagination && pagination && (pagination.position === 'top' || pagination.position === 'both')\"\n :class=\"{\n [`${prefixCls}-pagination`]: true,\n [`${prefixCls}-pagination-top`]: true,\n [`${prefixCls}-pagination-right`]: pagination && pagination.align === 'right'\n }\"\n >\n <Pagination v-bind=\"paginationOptions\" :total=\"computedPageTotal\" @change=\"handlePageChange\" @page-size-change=\"handlePageSizeChange\" />\n </div>\n <div\n :ref=\"saveRef('table')\"\n :class=\"[\n prefixCls,\n `${prefixCls}-${size}`,\n {\n [`${prefixCls}-${variant}`]: !isBorder,\n [`${prefixCls}-border`]: !!isBorder,\n [`${prefixCls}-radius`]: variant !== 'ghost' && !border && radius,\n [`${prefixCls}-empty`]: !data.length,\n [`${prefixCls}-without-column-header`]: !showHeader,\n [`${prefixCls}-fixed-header`]: !!maxHeight,\n [`${prefixCls}-layout-fixed`]: true,\n [`${prefixCls}-scroll-position-left`]: scrollPosition === 'left' || scrollPosition === 'both',\n [`${prefixCls}-scroll-position-right`]: scrollPosition === 'right' || scrollPosition === 'both',\n [`${prefixCls}-dragging`]: showResizeLine,\n [`${prefixCls}-stripe`]: stripe\n }\n ]\"\n >\n <div v-if=\"$slots.title\" :class=\"`${prefixCls}-title`\">\n <slot name=\"title\" />\n </div>\n <div :class=\"`${prefixCls}-content`\">\n <TableBox :columns=\"updatedColumns\" @head-scroll=\"handleBodyScrollX\" @body-scroll=\"handleBodyScroll\" />\n <div v-if=\"!currentDatas.length\" :class=\"`${prefixCls}-placeholder`\">\n <slot name=\"empty\">\n {{ emptyText }}\n </slot>\n </div>\n </div>\n <div v-show=\"showResizeLine\" :ref=\"saveRef('resizeLine')\" :class=\"`${prefixCls}-resize-line`\" />\n <Spin v-if=\"loadingType === 'spinner'\" fix :loading=\"loading\" />\n </div>\n <div v-if=\"$slots.footer\" :class=\"`${prefixCls}-footer`\">\n <slot name=\"footer\" />\n </div>\n <div\n v-if=\"showPagination && ((pagination && pagination.position !== 'top') || !pagination)\"\n :class=\"{\n [`${prefixCls}-pagination`]: true,\n [`${prefixCls}-pagination-bottom`]: true,\n [`${prefixCls}-pagination-right`]: pagination && pagination.align === 'right'\n }\"\n >\n <Pagination v-bind=\"paginationOptions\" :total=\"computedPageTotal\" @change=\"handlePageChange\" @page-size-change=\"handlePageSizeChange\" />\n </div>\n </div>\n </ResizeObserver>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, provide, reactive, toRefs, ref, onMounted, nextTick, onBeforeUnmount, onUpdated, watch } from 'vue';\nimport Spin from '@uxd-ui/components/Spin';\nimport Pagination from '@uxd-ui/components/Pagination';\nimport { debounce } from '../../utils/tools';\n// import Container from '../base/Container';\nimport TableBox from './TableBox.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport ResizeObserver from '../base/ResizeObserver';\nimport useUpdateColumns from './hooks/useUpdateColumns';\nimport useUpdateDatas from './hooks/useUpdateDatas';\nimport useTableResize from './hooks/useTableResize';\nimport useExpander from './hooks/useExpander';\nimport useSelection from './hooks/useSelection';\nimport useDraggable from './hooks/useDraggable';\nimport useFilterSortPage from './hooks/useFilterSortPage';\nimport { tableProps, tableEmits, type SaveRef, type TableRefs, type TableColumn, type InnerColumn } from './Table.type';\n\nexport default defineComponent({\n name: 'UTable',\n components: {\n TableBox,\n Spin,\n Pagination,\n ResizeObserver\n },\n props: tableProps,\n emits: tableEmits,\n setup(props, { slots, emit }) {\n const { prefixCls, config: globalConfig } = useGlobalConfig('table');\n const showResizeLine = ref(false);\n const tableRefs = reactive({} as TableRefs);\n const saveRef: SaveRef = (key: string) => {\n return (el: any) => {\n tableRefs[key] = el;\n };\n };\n\n const locale = computed(() => {\n return { ...globalConfig.locale.table, ...props.locale };\n });\n\n const isBorder = computed(() => {\n const b = props.variant === 'border' || props.border;\n return b;\n });\n\n // ============ datas ===============\n const { updatedDatas } = useUpdateDatas(props);\n\n // ============= sort & fitler =============\n const {\n hasAction,\n hasSorters,\n hasFilters,\n isSortColumn,\n isAscend,\n isDescend,\n hasAscend,\n hasDescend,\n toggleSortOrder,\n setColumnFilter,\n currentDatas,\n paginationOptions,\n computedPageTotal,\n handlePageChange,\n handlePageSizeChange\n } = useFilterSortPage(props, updatedDatas, emit);\n\n // ================ draggable ====================\n const { setRowRefs, draggableColumn } = useDraggable(props, tableRefs);\n\n // ================ expander ====================\n const {\n expandedRowKeys,\n showChildrenRowKeys,\n handleExpandChange,\n isRowExpanded,\n expandedRowRender,\n isTreeTable,\n expandColumn,\n expandIconColumnIndex\n } = useExpander(props, slots, currentDatas, emit);\n\n const { selectionColumn } = useSelection(props, updatedDatas, currentDatas, prefixCls, locale);\n\n // ============ columns ===============\n const { updatedColumns, isColumnFixed, isLeftFixed, isRightFixed, leftColumns, rightColumns } = useUpdateColumns(props, slots, {\n draggableColumn,\n expandColumn,\n selectionColumn\n });\n\n // ============ resize ==============\n // #region\n const {\n sizesMap,\n handleResize,\n isScrollX,\n // fixedHeadRowsHeight,\n // fixedBodyRowsHeight,\n scrollPosition,\n // syncFixedTableRowHeight,\n setScrollPositionClass,\n resetScrollX,\n tableWidth,\n clearResizeTimer,\n setResizeWidth\n } = useTableResize(updatedColumns, tableRefs, prefixCls, isColumnFixed, props);\n\n const debouncedHandleResize = debounce(handleResize, 150);\n\n onMounted(() => {\n nextTick(() => {\n setTimeout(() => {\n handleResize();\n resetScrollX();\n }, 0);\n });\n });\n\n onUpdated(() => {\n nextTick(() => {\n handleResize();\n });\n });\n\n onBeforeUnmount(() => {\n if (debouncedHandleResize) {\n debouncedHandleResize.cancel();\n }\n clearResizeTimer();\n });\n // #endregion\n\n // ============ scroll ===============\n // #region\n const scrollable = computed(() => {\n return props.maxHeight || isScrollX.value || isColumnFixed.value;\n });\n\n let lastScrollLeft = 0;\n const handleBodyScrollX = (e: any) => {\n if (e.currentTarget !== e.target) {\n return;\n }\n\n const { target } = e;\n const { bodyTable, headTable } = tableRefs;\n\n if (target.scrollLeft !== lastScrollLeft && isScrollX.value) {\n if (target === (bodyTable as any).wrapRef && headTable) {\n (headTable as any).setScrollLeft(target.scrollLeft);\n } else if (target === (headTable as any)?.wrapRef && bodyTable) {\n (bodyTable as any).setScrollLeft(target.scrollLeft);\n }\n setScrollPositionClass();\n }\n lastScrollLeft = target.scrollLeft;\n };\n\n const handleBodyScroll = (e: any) => {\n handleBodyScrollX(e);\n };\n\n watch(\n () => props.data,\n (val) => {\n if (val.length === 0 && isScrollX.value) {\n nextTick(() => {\n resetScrollX();\n });\n }\n }\n );\n // #endregion\n // ============ empty ================\n const emptyText = computed(() => {\n return props.data.length ? locale.value.notFoundText : locale.value.noDataText;\n });\n\n // ===========row hover & event ================\n // #region\n const currentHoverKey = ref(null);\n const onRowMouseEnter = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-mouseenter', data, index, e);\n };\n const onRowMouseLeave = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-mouseleave', data, index, e);\n };\n const onRowClick = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-click', data, index, e);\n };\n const onRowDoubleClick = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-doubleclick', data, index, e);\n };\n const onRowContextMenu = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-contextmenu', data, index, e);\n };\n // #endregion\n\n // ============= other event =================\n // #region\n const onHeaderCellClick = (column: TableColumn, e: Event) => {\n emit('header-click', column, e);\n };\n\n const handleColumnResize = (columnWidth: number, changeWidth: number, column: InnerColumn, event: Event) => {\n emit('column-resize', columnWidth, changeWidth, column, event);\n };\n // #endregion\n\n // ============= provide =================\n\n const { showHeader, maxHeight, expandIcon, rowClassName, indentSize, showSummary, disabledHover, expandIndent, headerSticky, loading } =\n toRefs(props);\n\n provide('tableContext', {\n prefixCls,\n locale,\n data: currentDatas,\n saveRef,\n tableRefs,\n showResizeLine,\n props: {\n showHeader,\n maxHeight,\n expandIcon,\n rowClassName,\n indentSize,\n emptyText,\n showSummary,\n disabledHover,\n expandIndent,\n headerSticky,\n loading\n },\n slots,\n expand: {\n expandedRowRender,\n expandedRowKeys,\n showChildrenRowKeys,\n isRowExpanded,\n expandIconColumnIndex,\n handleExpandChange,\n isTreeTable\n },\n size: {\n tableWidth,\n sizesMap,\n isScrollX,\n setResizeWidth,\n handleColumnResize,\n debouncedHandleResize\n },\n fixed: {\n isColumnFixed,\n currentHoverKey\n },\n draggable: {\n setRowRefs\n },\n rowEvents: {\n onRowMouseEnter,\n onRowMouseLeave,\n onRowClick,\n onRowDoubleClick,\n onRowContextMenu\n },\n headerEvents: {\n onHeaderCellClick\n },\n filterAndSorter: {\n hasAction,\n hasSorters,\n hasFilters,\n isSortColumn,\n isAscend,\n isDescend,\n hasAscend,\n hasDescend,\n toggleSortOrder,\n setColumnFilter\n },\n pagination: paginationOptions\n });\n return {\n prefixCls,\n saveRef,\n showResizeLine,\n updatedColumns,\n currentDatas,\n paginationOptions,\n computedPageTotal,\n isBorder,\n isLeftFixed,\n leftColumns,\n isRightFixed,\n rightColumns,\n scrollable,\n scrollPosition,\n handleBodyScroll,\n handleBodyScrollX,\n emptyText,\n debouncedHandleResize,\n handlePageChange,\n handlePageSizeChange\n };\n }\n});\n</script>\n"],"names":["defineComponent","TableBox","Spin","Pagination","ResizeObserver","tableProps","tableEmits","useGlobalConfig","ref","reactive","computed","useUpdateDatas","useFilterSortPage","useDraggable","useExpander","useSelection","useUpdateColumns","useTableResize","debounce","toRefs","_createBlock","_createElementVNode","_normalizeClass","_normalizeStyle","_createElementBlock","_createVNode","_mergeProps","_renderSlot"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sources":["../../../../src/components/Table/Table.vue"],"sourcesContent":["<template>\n <ResizeObserver @resize=\"debouncedHandleResize\">\n <div :class=\"[`${prefixCls}-wrapper`]\">\n <div\n v-if=\"showPagination && pagination && (pagination.position === 'top' || pagination.position === 'both')\"\n :class=\"{\n [`${prefixCls}-pagination`]: true,\n [`${prefixCls}-pagination-top`]: true,\n [`${prefixCls}-pagination-right`]: pagination && pagination.align === 'right'\n }\"\n >\n <Pagination v-bind=\"paginationOptions\" :total=\"computedPageTotal\" @change=\"handlePageChange\" @page-size-change=\"handlePageSizeChange\" />\n </div>\n <div\n :ref=\"saveRef('table')\"\n :class=\"[\n prefixCls,\n `${prefixCls}-${size}`,\n {\n [`${prefixCls}-${variant}`]: !isBorder,\n [`${prefixCls}-border`]: !!isBorder,\n [`${prefixCls}-radius`]: variant !== 'ghost' && !border && radius,\n [`${prefixCls}-empty`]: !data.length,\n [`${prefixCls}-without-column-header`]: !showHeader,\n [`${prefixCls}-fixed-header`]: !!maxHeight,\n [`${prefixCls}-scroll-position-left`]: scrollPosition === 'left' || scrollPosition === 'both',\n [`${prefixCls}-scroll-position-right`]: scrollPosition === 'right' || scrollPosition === 'both',\n [`${prefixCls}-dragging`]: showResizeLine,\n [`${prefixCls}-stripe`]: stripe\n }\n ]\"\n >\n <div v-if=\"$slots.title\" :class=\"`${prefixCls}-title`\">\n <slot name=\"title\" />\n </div>\n <div :class=\"`${prefixCls}-content`\">\n <TableBox :columns=\"updatedColumns\" @head-scroll=\"handleBodyScrollX\" @body-scroll=\"handleBodyScroll\" />\n <div v-if=\"!currentDatas.length\" :class=\"`${prefixCls}-placeholder`\">\n <slot name=\"empty\">\n {{ emptyText }}\n </slot>\n </div>\n </div>\n <div v-show=\"showResizeLine\" :ref=\"saveRef('resizeLine')\" :class=\"`${prefixCls}-resize-line`\" />\n <Spin v-if=\"loadingType === 'spinner'\" fix :loading=\"loading\" />\n </div>\n <div v-if=\"$slots.footer\" :class=\"`${prefixCls}-footer`\">\n <slot name=\"footer\" />\n </div>\n <div\n v-if=\"showPagination && ((pagination && pagination.position !== 'top') || !pagination)\"\n :class=\"{\n [`${prefixCls}-pagination`]: true,\n [`${prefixCls}-pagination-bottom`]: true,\n [`${prefixCls}-pagination-right`]: pagination && pagination.align === 'right'\n }\"\n >\n <Pagination v-bind=\"paginationOptions\" :total=\"computedPageTotal\" @change=\"handlePageChange\" @page-size-change=\"handlePageSizeChange\" />\n </div>\n </div>\n </ResizeObserver>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent, computed, provide, reactive, toRefs, ref, onMounted, nextTick, onBeforeUnmount, onUpdated, watch } from 'vue';\nimport Spin from '@uxd-ui/components/Spin';\nimport Pagination from '@uxd-ui/components/Pagination';\nimport { debounce } from '../../utils/tools';\n// import Container from '../base/Container';\nimport TableBox from './TableBox.vue';\nimport useGlobalConfig from '../base/hooks/useGlobalConfig';\nimport ResizeObserver from '../base/ResizeObserver';\nimport useUpdateColumns from './hooks/useUpdateColumns';\nimport useUpdateDatas from './hooks/useUpdateDatas';\nimport useTableResize from './hooks/useTableResize';\nimport useExpander from './hooks/useExpander';\nimport useSelection from './hooks/useSelection';\nimport useDraggable from './hooks/useDraggable';\nimport useFilterSortPage from './hooks/useFilterSortPage';\nimport { tableProps, tableEmits, type SaveRef, type TableRefs, type TableColumn, type InnerColumn } from './Table.type';\n\nexport default defineComponent({\n name: 'UTable',\n components: {\n TableBox,\n Spin,\n Pagination,\n ResizeObserver\n },\n props: tableProps,\n emits: tableEmits,\n setup(props, { slots, emit }) {\n const { prefixCls, config: globalConfig } = useGlobalConfig('table');\n const showResizeLine = ref(false);\n const tableRefs = reactive({} as TableRefs);\n const saveRef: SaveRef = (key: string) => {\n return (el: any) => {\n tableRefs[key] = el;\n };\n };\n\n const locale = computed(() => {\n return { ...globalConfig.locale.table, ...props.locale };\n });\n\n const isBorder = computed(() => {\n const b = props.variant === 'border' || props.border;\n return b;\n });\n\n // ============ datas ===============\n const { updatedDatas } = useUpdateDatas(props);\n\n // ============= sort & fitler =============\n const {\n hasAction,\n hasSorters,\n hasFilters,\n isSortColumn,\n isAscend,\n isDescend,\n hasAscend,\n hasDescend,\n toggleSortOrder,\n setColumnFilter,\n currentDatas,\n paginationOptions,\n computedPageTotal,\n handlePageChange,\n handlePageSizeChange\n } = useFilterSortPage(props, updatedDatas, emit);\n\n // ================ draggable ====================\n const { setRowRefs, draggableColumn } = useDraggable(props, tableRefs);\n\n // ================ expander ====================\n const {\n expandedRowKeys,\n showChildrenRowKeys,\n handleExpandChange,\n isRowExpanded,\n expandedRowRender,\n isTreeTable,\n expandColumn,\n expandIconColumnIndex\n } = useExpander(props, slots, currentDatas, emit);\n\n const { selectionColumn } = useSelection(props, updatedDatas, currentDatas, prefixCls, locale);\n\n // ============ columns ===============\n const { updatedColumns, isColumnFixed, isLeftFixed, isRightFixed, leftColumns, rightColumns } = useUpdateColumns(props, slots, {\n draggableColumn,\n expandColumn,\n selectionColumn\n });\n\n // ============ resize ==============\n // #region\n const {\n // sizesMap,\n handleResize,\n isScrollX,\n // fixedHeadRowsHeight,\n // fixedBodyRowsHeight,\n scrollPosition,\n // syncFixedTableRowHeight,\n setScrollPositionClass,\n resetScrollX,\n tableWidth,\n resizeColumns,\n clearResizeTimer,\n setResizeWidth\n } = useTableResize(updatedColumns, tableRefs, prefixCls, isColumnFixed, props);\n\n const debouncedHandleResize = debounce(handleResize, 150);\n\n onMounted(() => {\n nextTick(() => {\n setTimeout(() => {\n handleResize();\n resetScrollX();\n }, 0);\n });\n });\n\n onUpdated(() => {\n nextTick(() => {\n handleResize();\n });\n });\n\n onBeforeUnmount(() => {\n if (debouncedHandleResize) {\n debouncedHandleResize.cancel();\n }\n clearResizeTimer();\n });\n // #endregion\n\n // ============ scroll ===============\n // #region\n const scrollable = computed(() => {\n return props.maxHeight || isScrollX.value || isColumnFixed.value;\n });\n\n let lastScrollLeft = 0;\n const handleBodyScrollX = (e: any) => {\n if (e.currentTarget !== e.target) {\n return;\n }\n\n const { target } = e;\n const { bodyTable, headTable } = tableRefs;\n\n if (target.scrollLeft !== lastScrollLeft && isScrollX.value) {\n if (target === (bodyTable as any).wrapRef && headTable) {\n (headTable as any).setScrollLeft(target.scrollLeft);\n } else if (target === (headTable as any)?.wrapRef && bodyTable) {\n (bodyTable as any).setScrollLeft(target.scrollLeft);\n }\n setScrollPositionClass();\n }\n lastScrollLeft = target.scrollLeft;\n };\n\n const handleBodyScroll = (e: any) => {\n handleBodyScrollX(e);\n };\n\n watch(\n () => props.data,\n (val) => {\n if (val.length === 0 && isScrollX.value) {\n nextTick(() => {\n resetScrollX();\n });\n }\n }\n );\n // #endregion\n // ============ empty ================\n const emptyText = computed(() => {\n return props.data.length ? locale.value.notFoundText : locale.value.noDataText;\n });\n\n // ===========row hover & event ================\n // #region\n const currentHoverKey = ref(null);\n const onRowMouseEnter = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-mouseenter', data, index, e);\n };\n const onRowMouseLeave = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-mouseleave', data, index, e);\n };\n const onRowClick = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-click', data, index, e);\n };\n const onRowDoubleClick = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-doubleclick', data, index, e);\n };\n const onRowContextMenu = (data: Record<string, any>, index: number, e: Event) => {\n emit('row-contextmenu', data, index, e);\n };\n // #endregion\n\n // ============= other event =================\n // #region\n const onHeaderCellClick = (column: TableColumn, e: Event) => {\n emit('header-click', column, e);\n };\n\n const handleColumnResize = (columnWidth: number, changeWidth: number, column: InnerColumn, event: Event) => {\n emit('column-resize', columnWidth, changeWidth, column, event);\n };\n // #endregion\n\n // ============= provide =================\n\n const { showHeader, maxHeight, expandIcon, rowClassName, indentSize, showSummary, disabledHover, expandIndent, headerSticky, loading, width } =\n toRefs(props);\n\n provide('tableContext', {\n prefixCls,\n locale,\n data: currentDatas,\n saveRef,\n tableRefs,\n showResizeLine,\n props: {\n showHeader,\n maxHeight,\n expandIcon,\n rowClassName,\n indentSize,\n emptyText,\n showSummary,\n disabledHover,\n expandIndent,\n headerSticky,\n loading,\n width\n },\n slots,\n expand: {\n expandedRowRender,\n expandedRowKeys,\n showChildrenRowKeys,\n isRowExpanded,\n expandIconColumnIndex,\n handleExpandChange,\n isTreeTable\n },\n size: {\n tableWidth,\n // sizesMap,\n resizeColumns,\n isScrollX,\n setResizeWidth,\n handleColumnResize,\n debouncedHandleResize\n },\n fixed: {\n isColumnFixed,\n currentHoverKey\n },\n draggable: {\n setRowRefs\n },\n rowEvents: {\n onRowMouseEnter,\n onRowMouseLeave,\n onRowClick,\n onRowDoubleClick,\n onRowContextMenu\n },\n headerEvents: {\n onHeaderCellClick\n },\n filterAndSorter: {\n hasAction,\n hasSorters,\n hasFilters,\n isSortColumn,\n isAscend,\n isDescend,\n hasAscend,\n hasDescend,\n toggleSortOrder,\n setColumnFilter\n },\n pagination: paginationOptions\n });\n return {\n prefixCls,\n saveRef,\n showResizeLine,\n updatedColumns,\n currentDatas,\n paginationOptions,\n computedPageTotal,\n isBorder,\n isLeftFixed,\n leftColumns,\n isRightFixed,\n rightColumns,\n scrollable,\n scrollPosition,\n handleBodyScroll,\n handleBodyScrollX,\n emptyText,\n debouncedHandleResize,\n handlePageChange,\n handlePageSizeChange\n };\n }\n});\n</script>\n"],"names":["defineComponent","TableBox","Spin","Pagination","ResizeObserver","tableProps","tableEmits","useGlobalConfig","ref","reactive","computed","useUpdateDatas","useFilterSortPage","useDraggable","useExpander","useSelection","useUpdateColumns","useTableResize","debounce","toRefs","_createBlock","_createElementVNode","_normalizeClass","_createElementBlock","_createVNode","_mergeProps","_renderSlot"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ComputedRef, CSSProperties, ExtractPropTypes, PropType, Ref, Slot, Slots, VNodeChild } from 'vue';
1
+ import type { Component, ComputedRef, CSSProperties, ExtractPropTypes, PropType, Ref, Slot, Slots, VNodeChild } from 'vue';
2
2
  import type { JSX } from 'vue/jsx-runtime';
3
3
  import type { EmitFn } from '../../utils/globalType';
4
4
  import type { TableLocal } from '../locale/default';
@@ -25,6 +25,8 @@ export interface TableColProps {
25
25
  width: string;
26
26
  key: string;
27
27
  fixed: boolean;
28
+ minWidth: string;
29
+ resizeWidth: string;
28
30
  }
29
31
  export interface ColumnFilterSlotParams {
30
32
  selectedKeys: (string | number)[];
@@ -41,8 +43,7 @@ export interface TableColumn {
41
43
  title?: string;
42
44
  dataIndex?: string;
43
45
  width?: number | string;
44
- minWidth?: number | string;
45
- maxWidth?: number | string;
46
+ minWidth?: number;
46
47
  children?: TableColumn[];
47
48
  fixed?: ColumnFixed;
48
49
  align?: ColumnAlign;
@@ -54,7 +55,7 @@ export interface TableColumn {
54
55
  filterable?: boolean;
55
56
  filters?: ColumnFilter[];
56
57
  filterFn?: ColumnFilterFn;
57
- filterIcon?: string;
58
+ filterIcon?: string | Component;
58
59
  filterIconStyle?: CSSProperties;
59
60
  filterMultiple?: boolean;
60
61
  filteredValue?: (string | number)[];
@@ -278,6 +279,7 @@ export interface TableContext {
278
279
  expandIndent: Ref<boolean>;
279
280
  headerSticky: Ref<number | undefined>;
280
281
  loading: Ref<boolean>;
282
+ width: Ref<string | number | undefined>;
281
283
  };
282
284
  slots: Slots;
283
285
  expand: {
@@ -291,7 +293,7 @@ export interface TableContext {
291
293
  };
292
294
  size: {
293
295
  tableWidth: Ref<number>;
294
- sizesMap: Record<string, number>;
296
+ resizeColumns: Ref<InnerColumn[]>;
295
297
  isScrollX: ComputedRef<boolean>;
296
298
  setResizeWidth: (column: InnerColumn, width: number) => void;
297
299
  handleColumnResize: (columnWidth: number, changeWidth: number, column: InnerColumn, event: Event) => void;