@sdata/web-vue 3.3.0 → 3.4.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.
Files changed (97) hide show
  1. package/dist/sd.css +16 -12
  2. package/dist/sd.min.css +1 -1
  3. package/es/_components/select-view/select-view.d.ts +1 -1
  4. package/es/_components/select-view/style/index.css +2 -5
  5. package/es/_components/virtual-list/interface.d.ts +13 -6
  6. package/es/_components/virtual-list/style/index.scss +3 -1
  7. package/es/_components/virtual-list/virtual-list.vue.d.ts +31 -77
  8. package/es/_components/virtual-list/virtual-list.vue_vue_type_script_setup_true_lang.js +180 -503
  9. package/es/auto-complete/auto-complete.d.ts +1 -1
  10. package/es/auto-complete/auto-complete.js +3 -1
  11. package/es/auto-complete/index.d.ts +3 -3
  12. package/es/card/card.d.ts +3 -3
  13. package/es/card/index.d.ts +6 -6
  14. package/es/cascader/base-cascader-panel.d.ts +1 -1
  15. package/es/cascader/cascader-option.d.ts +1 -1
  16. package/es/cascader/cascader-option.js +8 -3
  17. package/es/cascader/cascader-panel.vue.d.ts +1 -1
  18. package/es/cascader/cascader-search-panel.d.ts +1 -1
  19. package/es/cascader/cascader.vue.d.ts +2 -2
  20. package/es/cascader/style/index.css +4 -1
  21. package/es/cascader/style/index.d.ts +1 -0
  22. package/es/cascader/style/index.scss +4 -1
  23. package/es/config-provider/config-provider.vue.d.ts +1 -1
  24. package/es/config-provider/index.d.ts +3 -3
  25. package/es/descriptions/descriptions.d.ts +2 -2
  26. package/es/descriptions/index.d.ts +6 -6
  27. package/es/drawer/drawer.vue.d.ts +2 -2
  28. package/es/drawer/index.d.ts +5 -5
  29. package/es/dropdown/dropdown-panel.vue.d.ts +1 -1
  30. package/es/ellipsis/ellipsis.vue.d.ts +1 -1
  31. package/es/ellipsis/ellipsis.vue_vue_type_script_setup_true_lang.js +1 -1
  32. package/es/ellipsis/index.d.ts +6 -6
  33. package/es/ellipsis/performant-ellipsis.vue.d.ts +1 -1
  34. package/es/image/preview-group.vue.d.ts +1 -1
  35. package/es/index.css +16 -12
  36. package/es/input-tag/style/index.css +2 -5
  37. package/es/input-tag/style/input-tag.scss +1 -3
  38. package/es/link/index.d.ts +6 -6
  39. package/es/link/link.vue.d.ts +2 -2
  40. package/es/list/list-item-meta.vue.d.ts +2 -2
  41. package/es/list/list-item-meta.vue_vue_type_script_setup_true_lang.js +10 -3
  42. package/es/list/style/index.css +5 -0
  43. package/es/list/style/index.d.ts +1 -0
  44. package/es/list/style/index.scss +6 -0
  45. package/es/menu/item.d.ts +1 -1
  46. package/es/modal/index.d.ts +5 -5
  47. package/es/modal/modal.vue.d.ts +2 -2
  48. package/es/progress/line.vue.d.ts +1 -1
  49. package/es/qr-code/index.d.ts +12 -12
  50. package/es/qr-code/qr-code.vue.d.ts +4 -4
  51. package/es/select/index.d.ts +5 -5
  52. package/es/select/select-dropdown.vue.d.ts +1 -1
  53. package/es/select/select.d.ts +2 -2
  54. package/es/select/select.js +4 -2
  55. package/es/select/style/index.d.ts +1 -0
  56. package/es/slider/index.d.ts +3 -3
  57. package/es/slider/slider.vue.d.ts +1 -1
  58. package/es/spin/index.d.ts +3 -3
  59. package/es/spin/spin.d.ts +1 -1
  60. package/es/statistic/index.d.ts +3 -3
  61. package/es/statistic/statistic.vue.d.ts +1 -1
  62. package/es/table/index.d.ts +13 -7
  63. package/es/table/style/index.css +4 -1
  64. package/es/table/style/index.scss +6 -1
  65. package/es/table/table-column.d.ts +1 -1
  66. package/es/table/table-td.d.ts +1 -1
  67. package/es/table/table.d.ts +3 -1
  68. package/es/table/table.js +66 -34
  69. package/es/tabs/index.d.ts +3 -3
  70. package/es/tabs/tabs.d.ts +1 -1
  71. package/es/tag/index.d.ts +6 -6
  72. package/es/tag/style/index.css +1 -1
  73. package/es/tag/style/index.scss +1 -1
  74. package/es/tag/tag.vue.d.ts +2 -2
  75. package/es/timeline/index.d.ts +6 -6
  76. package/es/timeline/timeline.d.ts +3 -3
  77. package/es/tree/base-node.vue.d.ts +4 -8
  78. package/es/tree/base-node.vue_vue_type_script_setup_true_lang.js +14 -16
  79. package/es/tree/tree.vue.d.ts +2 -2
  80. package/es/tree-select/tree-select.vue.d.ts +4 -4
  81. package/es/typography/base.d.ts +1 -1
  82. package/es/watermark/index.d.ts +3 -3
  83. package/es/watermark/watermark.d.ts +1 -1
  84. package/json/web-types.json +1 -1
  85. package/package.json +3 -3
  86. package/es/_components/virtual-list/use-virtual-size.js +0 -94
  87. package/es/_components/virtual-list-v2/hooks/use-size.d.ts +0 -17
  88. package/es/_components/virtual-list-v2/hooks/use-size.js +0 -95
  89. package/es/_components/virtual-list-v2/index.d.ts +0 -2
  90. package/es/_components/virtual-list-v2/index.js +0 -5
  91. package/es/_components/virtual-list-v2/interface.d.ts +0 -44
  92. package/es/_components/virtual-list-v2/virtual-list-item.d.ts +0 -22
  93. package/es/_components/virtual-list-v2/virtual-list-item.js +0 -37
  94. package/es/_components/virtual-list-v2/virtual-list.js +0 -47
  95. package/es/_components/virtual-list-v2/virtual-list.vue.d.ts +0 -749
  96. package/es/_components/virtual-list-v2/virtual-list.vue_vue_type_script_lang.js +0 -179
  97. package/es/_virtual/_plugin-vue_export-helper.js +0 -8
package/es/index.css CHANGED
@@ -670,7 +670,6 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
670
670
  }
671
671
  @charset "UTF-8";
672
672
  /*! Tailwind CSS v4 preflight baseline scoped to SD Design layer */
673
- @import url("vue-virtual-scroller/dist/vue-virtual-scroller.css");
674
673
  /******** borderSize *******/
675
674
  /******** borderStyle *******/
676
675
  /******** radius *******/
@@ -1980,7 +1979,7 @@ body {
1980
1979
  color: var(--sd-color-text-2);
1981
1980
  }
1982
1981
  .sd-tag-text {
1983
- min-width: 0;
1982
+ min-width: 1em;
1984
1983
  max-width: 100%;
1985
1984
  }
1986
1985
  .sd-tag-ellipsis-line-clamp {
@@ -2709,21 +2708,18 @@ body {
2709
2708
  align-items: center;
2710
2709
  min-width: 0;
2711
2710
  margin-right: 4px;
2712
- color: var(--sd-color-text-1);
2713
2711
  font-size: 12px;
2714
2712
  white-space: pre-wrap;
2715
2713
  word-break: break-word;
2716
2714
  }
2717
2715
  .sd-select-view-multiple .sd-select-view-inner .sd-select-view-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
2716
+ color: var(--sd-color-text-1);
2718
2717
  background-color: var(--sd-color-bg-2);
2719
2718
  border-color: var(--sd-color-fill-3);
2720
2719
  }
2721
2720
  .sd-select-view-multiple .sd-select-view-inner .sd-select-view-tag .sd-icon-hover:hover::before {
2722
2721
  background-color: var(--sd-color-fill-2);
2723
2722
  }
2724
- .sd-select-view-multiple .sd-select-view-inner .sd-select-view-tag.sd-tag-custom-color {
2725
- color: var(--sd-color-white);
2726
- }
2727
2723
  .sd-select-view-multiple .sd-select-view-inner .sd-select-view-tag.sd-tag-custom-color .sd-icon-hover.sd-tag-icon-hover:hover::before {
2728
2724
  background-color: rgba(255, 255, 255, 0.2);
2729
2725
  }
@@ -6635,6 +6631,9 @@ body.sd-tour-active .sd-tour-popover * {
6635
6631
  width: 100%;
6636
6632
  min-height: 0;
6637
6633
  }
6634
+ .sd-table-container.sd-table-scroll-y {
6635
+ flex: 1 1 auto;
6636
+ }
6638
6637
  .sd-table-container .sd-table-content {
6639
6638
  display: flex;
6640
6639
  flex-direction: column;
@@ -6933,7 +6932,7 @@ body.sd-tour-active .sd-tour-popover * {
6933
6932
  margin-bottom: 12px;
6934
6933
  }
6935
6934
 
6936
- .sd-virtual-list > .sd-table-element {
6935
+ .sd-virtual-list > .sd-table-element, .sd-virtual-list > .sd-virtual-list-scroller > .sd-table-element {
6937
6936
  width: auto;
6938
6937
  }
6939
6938
 
@@ -11122,6 +11121,7 @@ body.sd-tour-active .sd-tour-popover * {
11122
11121
  }
11123
11122
  .sd-list-item-main {
11124
11123
  flex: 1;
11124
+ overflow: hidden;
11125
11125
  }
11126
11126
  .sd-list-item-main .sd-list-item-action:not(:first-child) {
11127
11127
  margin-top: 4px;
@@ -11144,6 +11144,10 @@ body.sd-tour-active .sd-tour-popover * {
11144
11144
  .sd-list-item-meta-title:not(:last-child) {
11145
11145
  margin-bottom: 2px;
11146
11146
  }
11147
+ .sd-list-item-meta-content {
11148
+ flex-grow: 1;
11149
+ overflow: hidden;
11150
+ }
11147
11151
  .sd-list-item-meta-description {
11148
11152
  color: var(--sd-color-text-2);
11149
11153
  }
@@ -11616,21 +11620,18 @@ body.sd-tour-active .sd-tour-popover * {
11616
11620
  align-items: center;
11617
11621
  min-width: 0;
11618
11622
  margin-right: 4px;
11619
- color: var(--sd-color-text-1);
11620
11623
  font-size: 12px;
11621
11624
  white-space: pre-wrap;
11622
11625
  word-break: break-word;
11623
11626
  }
11624
11627
  .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
11628
+ color: var(--sd-color-text-1);
11625
11629
  background-color: var(--sd-color-bg-2);
11626
11630
  border-color: var(--sd-color-fill-3);
11627
11631
  }
11628
11632
  .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag .sd-icon-hover:hover::before {
11629
11633
  background-color: var(--sd-color-fill-2);
11630
11634
  }
11631
- .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag.sd-tag-custom-color {
11632
- color: var(--sd-color-white);
11633
- }
11634
11635
  .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag.sd-tag-custom-color .sd-icon-hover.sd-tag-icon-hover:hover::before {
11635
11636
  background-color: rgba(255, 255, 255, 0.2);
11636
11637
  }
@@ -17016,9 +17017,12 @@ body.sd-tour-active .sd-tour-popover * {
17016
17017
  cursor: pointer;
17017
17018
  }
17018
17019
  .sd-cascader-option-label, .sd-cascader-search-option-label {
17019
- flex-grow: 1;
17020
+ flex: 1 1 0;
17021
+ box-sizing: border-box;
17022
+ min-width: 0;
17020
17023
  padding-right: 34px;
17021
17024
  padding-left: 12px;
17025
+ overflow: hidden;
17022
17026
  }
17023
17027
  .sd-cascader-option .sd-icon-right,
17024
17028
  .sd-cascader-option .sd-icon-check, .sd-cascader-search-option .sd-icon-right,
@@ -87,7 +87,7 @@
87
87
  color: var(--sd-color-text-2);
88
88
  }
89
89
  .sd-tag-text {
90
- min-width: 0;
90
+ min-width: 1em;
91
91
  max-width: 100%;
92
92
  }
93
93
  .sd-tag-ellipsis-line-clamp {
@@ -613,21 +613,18 @@
613
613
  align-items: center;
614
614
  min-width: 0;
615
615
  margin-right: 4px;
616
- color: var(--sd-color-text-1);
617
616
  font-size: 12px;
618
617
  white-space: pre-wrap;
619
618
  word-break: break-word;
620
619
  }
621
620
  .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag:not(.sd-tag-custom-color):not(.sd-tag-red):not(.sd-tag-orangered):not(.sd-tag-orange):not(.sd-tag-gold):not(.sd-tag-lime):not(.sd-tag-green):not(.sd-tag-cyan):not(.sd-tag-blue):not(.sd-tag-sdblue):not(.sd-tag-purple):not(.sd-tag-pinkpurple):not(.sd-tag-magenta) {
621
+ color: var(--sd-color-text-1);
622
622
  background-color: var(--sd-color-bg-2);
623
623
  border-color: var(--sd-color-fill-3);
624
624
  }
625
625
  .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag .sd-icon-hover:hover::before {
626
626
  background-color: var(--sd-color-fill-2);
627
627
  }
628
- .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag.sd-tag-custom-color {
629
- color: var(--sd-color-white);
630
- }
631
628
  .sd-input-tag .sd-input-tag-inner .sd-input-tag-tag.sd-tag-custom-color .sd-icon-hover.sd-tag-icon-hover:hover::before {
632
629
  background-color: rgba(255, 255, 255, 0.2);
633
630
  }
@@ -111,12 +111,12 @@
111
111
  align-items: center;
112
112
  min-width: 0;
113
113
  margin-right: $input-tag-tag-margin-right;
114
- color: $input-tag-color-text_default;
115
114
  font-size: $input-tag-tag-font-size;
116
115
  white-space: pre-wrap;
117
116
  word-break: break-word;
118
117
 
119
118
  &#{tag-color-not-chain()} {
119
+ color: $input-tag-color-text_default;
120
120
  background-color: $input-tag-tag-color-bg;
121
121
  border-color: $input-tag-tag-color-border;
122
122
  }
@@ -126,8 +126,6 @@
126
126
  }
127
127
 
128
128
  &.#{theme.$prefix}-tag-custom-color {
129
- color: token.$tag-custom-color-text;
130
-
131
129
  @include icon-hover.icon-hover-bg($tag-prefix-cls, token.$tag-custom-color-icon-bg_hover);
132
130
  }
133
131
 
@@ -9,12 +9,12 @@ declare const Link: {
9
9
  click: (ev: MouseEvent) => any;
10
10
  }, import("vue").PublicProps, {
11
11
  disabled: boolean;
12
- ellipsis: boolean;
13
- icon: boolean;
14
12
  loading: boolean;
13
+ ellipsis: boolean;
15
14
  ellipsisLineClamp: number | string;
16
15
  ellipsisExpandTrigger: "click";
17
16
  ellipsisTooltip: boolean | import("../index.ts").EllipsisTooltipProps;
17
+ icon: boolean;
18
18
  status: import("../index.ts").Status;
19
19
  iconTooltip: string;
20
20
  }, false, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
@@ -28,12 +28,12 @@ declare const Link: {
28
28
  onClick?: ((ev: MouseEvent) => any) | undefined;
29
29
  }>, {}, {}, {}, {}, {
30
30
  disabled: boolean;
31
- ellipsis: boolean;
32
- icon: boolean;
33
31
  loading: boolean;
32
+ ellipsis: boolean;
34
33
  ellipsisLineClamp: number | string;
35
34
  ellipsisExpandTrigger: "click";
36
35
  ellipsisTooltip: boolean | import("../index.ts").EllipsisTooltipProps;
36
+ icon: boolean;
37
37
  status: import("../index.ts").Status;
38
38
  iconTooltip: string;
39
39
  }>;
@@ -46,12 +46,12 @@ declare const Link: {
46
46
  click: (ev: MouseEvent) => any;
47
47
  }, string, {
48
48
  disabled: boolean;
49
- ellipsis: boolean;
50
- icon: boolean;
51
49
  loading: boolean;
50
+ ellipsis: boolean;
52
51
  ellipsisLineClamp: number | string;
53
52
  ellipsisExpandTrigger: "click";
54
53
  ellipsisTooltip: boolean | import("../index.ts").EllipsisTooltipProps;
54
+ icon: boolean;
55
55
  status: import("../index.ts").Status;
56
56
  iconTooltip: string;
57
57
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
@@ -17,12 +17,12 @@ declare const __VLS_base: import("vue").DefineComponent<LinkProps, {}, {}, {}, {
17
17
  onClick?: ((ev: MouseEvent) => any) | undefined;
18
18
  }>, {
19
19
  disabled: boolean;
20
- ellipsis: boolean;
21
- icon: boolean;
22
20
  loading: boolean;
21
+ ellipsis: boolean;
23
22
  ellipsisLineClamp: number | string;
24
23
  ellipsisExpandTrigger: "click";
25
24
  ellipsisTooltip: boolean | import("..").EllipsisTooltipProps;
25
+ icon: boolean;
26
26
  status: import("..").Status;
27
27
  iconTooltip: string;
28
28
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -1,10 +1,10 @@
1
- declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {};
1
+ declare var __VLS_1: {}, __VLS_3: {}, __VLS_11: {};
2
2
  type __VLS_Slots = {} & {
3
3
  avatar?: (props: typeof __VLS_1) => any;
4
4
  } & {
5
5
  title?: (props: typeof __VLS_3) => any;
6
6
  } & {
7
- description?: (props: typeof __VLS_5) => any;
7
+ description?: (props: typeof __VLS_11) => any;
8
8
  };
9
9
  declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10
10
  title: StringConstructor;
@@ -1,6 +1,7 @@
1
1
  import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/objectSpread2.js";
2
2
  import { getPrefixCls } from "../_utils/global-config.js";
3
- import { createCommentVNode, createElementBlock, createTextVNode, defineComponent, normalizeClass, openBlock, renderSlot, toDisplayString, unref, useSlots } from "vue";
3
+ import { PerformantEllipsis } from "../ellipsis/index.js";
4
+ import { createCommentVNode, createElementBlock, createTextVNode, createVNode, defineComponent, normalizeClass, openBlock, renderSlot, toDisplayString, unref, useSlots, withCtx } from "vue";
4
5
  //#region components/list/list-item-meta.vue?vue&type=script&setup=true&lang.ts
5
6
  var list_item_meta_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "ListItemMeta" }), {}, {
6
7
  __name: "list-item-meta",
@@ -46,10 +47,16 @@ var list_item_meta_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
46
47
  }, [_ctx.$slots.title || __props.title ? (openBlock(), createElementBlock("div", {
47
48
  key: 0,
48
49
  class: normalizeClass(`${unref(prefixCls)}-title`)
49
- }, [renderSlot(_ctx.$slots, "title", {}, () => [createTextVNode(toDisplayString(__props.title), 1)])], 2)) : createCommentVNode("", true), _ctx.$slots.description || __props.description ? (openBlock(), createElementBlock("div", {
50
+ }, [renderSlot(_ctx.$slots, "title", {}, () => [createVNode(unref(PerformantEllipsis), null, {
51
+ default: withCtx(() => [createTextVNode(toDisplayString(__props.title), 1)]),
52
+ _: 1
53
+ })])], 2)) : createCommentVNode("", true), _ctx.$slots.description || __props.description ? (openBlock(), createElementBlock("div", {
50
54
  key: 1,
51
55
  class: normalizeClass(`${unref(prefixCls)}-description`)
52
- }, [renderSlot(_ctx.$slots, "description", {}, () => [createTextVNode(toDisplayString(__props.description), 1)])], 2)) : createCommentVNode("", true)], 2)) : createCommentVNode("", true)], 2);
56
+ }, [renderSlot(_ctx.$slots, "description", {}, () => [createVNode(unref(PerformantEllipsis), null, {
57
+ default: withCtx(() => [createTextVNode(toDisplayString(__props.description), 1)]),
58
+ _: 1
59
+ })])], 2)) : createCommentVNode("", true)], 2)) : createCommentVNode("", true)], 2);
53
60
  };
54
61
  }
55
62
  }));
@@ -91,6 +91,7 @@
91
91
  }
92
92
  .sd-list-item-main {
93
93
  flex: 1;
94
+ overflow: hidden;
94
95
  }
95
96
  .sd-list-item-main .sd-list-item-action:not(:first-child) {
96
97
  margin-top: 4px;
@@ -113,6 +114,10 @@
113
114
  .sd-list-item-meta-title:not(:last-child) {
114
115
  margin-bottom: 2px;
115
116
  }
117
+ .sd-list-item-meta-content {
118
+ flex-grow: 1;
119
+ overflow: hidden;
120
+ }
116
121
  .sd-list-item-meta-description {
117
122
  color: var(--sd-color-text-2);
118
123
  }
@@ -3,5 +3,6 @@ import '../../pagination/style';
3
3
  import '../../spin/style';
4
4
  import '../../grid/style';
5
5
  import '../../empty/style';
6
+ import '../../ellipsis/style';
6
7
  import '../../scrollbar/style';
7
8
  import './index.scss';
@@ -109,6 +109,7 @@ $list-prefix-cls: string.unquote('#{theme.$prefix}-list');
109
109
 
110
110
  &-main {
111
111
  flex: 1;
112
+ overflow: hidden;
112
113
 
113
114
  .#{$list-prefix-cls}-item-action:not(:first-child) {
114
115
  margin-top: $list-action-margin-top;
@@ -137,6 +138,11 @@ $list-prefix-cls: string.unquote('#{theme.$prefix}-list');
137
138
  }
138
139
  }
139
140
 
141
+ &-content {
142
+ flex-grow: 1;
143
+ overflow: hidden;
144
+ }
145
+
140
146
  &-description {
141
147
  color: $list-mete-color-description;
142
148
  }
package/es/menu/item.d.ts CHANGED
@@ -4,7 +4,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4
4
  default: boolean;
5
5
  };
6
6
  }>, {
7
- menuContext: Partial<Readonly<Pick<import("./interface.ts").InternalMenuProps, "ellipsis" | "triggerProps" | "mode" | "theme" | "popupMaxHeight" | "tooltipProps" | "levelIndent" | "autoScrollIntoView" | "scrollConfig" | "inTrigger" | "ellipsisProps"> & {
7
+ menuContext: Partial<Readonly<Pick<import("./interface.ts").InternalMenuProps, "triggerProps" | "ellipsis" | "mode" | "theme" | "popupMaxHeight" | "tooltipProps" | "levelIndent" | "autoScrollIntoView" | "scrollConfig" | "inTrigger" | "ellipsisProps"> & {
8
8
  selectedKeys: string[];
9
9
  openKeys: string[];
10
10
  prefixCls: string;
@@ -128,16 +128,16 @@ declare const Modal: {
128
128
  }>> & Readonly<{
129
129
  onCancel?: ((_e: Event) => any) | undefined;
130
130
  onClose?: (() => any) | undefined;
131
- onOpen?: (() => any) | undefined;
132
131
  "onUpdate:visible"?: ((_visible: boolean) => any) | undefined;
132
+ onOpen?: (() => any) | undefined;
133
133
  onOk?: ((_e: Event) => any) | undefined;
134
134
  onBeforeOpen?: (() => any) | undefined;
135
135
  onBeforeClose?: (() => any) | undefined;
136
136
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
137
137
  cancel: (_e: Event) => any;
138
138
  close: () => any;
139
- open: () => any;
140
139
  "update:visible": (_visible: boolean) => any;
140
+ open: () => any;
141
141
  ok: (_e: Event) => any;
142
142
  beforeOpen: () => any;
143
143
  beforeClose: () => any;
@@ -296,8 +296,8 @@ declare const Modal: {
296
296
  }>> & Readonly<{
297
297
  onCancel?: ((_e: Event) => any) | undefined;
298
298
  onClose?: (() => any) | undefined;
299
- onOpen?: (() => any) | undefined;
300
299
  "onUpdate:visible"?: ((_visible: boolean) => any) | undefined;
300
+ onOpen?: (() => any) | undefined;
301
301
  onOk?: ((_e: Event) => any) | undefined;
302
302
  onBeforeOpen?: (() => any) | undefined;
303
303
  onBeforeClose?: (() => any) | undefined;
@@ -453,16 +453,16 @@ declare const Modal: {
453
453
  }>> & Readonly<{
454
454
  onCancel?: ((_e: Event) => any) | undefined;
455
455
  onClose?: (() => any) | undefined;
456
- onOpen?: (() => any) | undefined;
457
456
  "onUpdate:visible"?: ((_visible: boolean) => any) | undefined;
457
+ onOpen?: (() => any) | undefined;
458
458
  onOk?: ((_e: Event) => any) | undefined;
459
459
  onBeforeOpen?: (() => any) | undefined;
460
460
  onBeforeClose?: (() => any) | undefined;
461
461
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
462
462
  cancel: (_e: Event) => any;
463
463
  close: () => any;
464
- open: () => any;
465
464
  "update:visible": (_visible: boolean) => any;
465
+ open: () => any;
466
466
  ok: (_e: Event) => any;
467
467
  beforeOpen: () => any;
468
468
  beforeClose: () => any;
@@ -136,8 +136,8 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
136
136
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
137
137
  cancel: (_e: Event) => any;
138
138
  close: () => any;
139
- open: () => any;
140
139
  "update:visible": (_visible: boolean) => any;
140
+ open: () => any;
141
141
  ok: (_e: Event) => any;
142
142
  beforeOpen: () => any;
143
143
  beforeClose: () => any;
@@ -267,8 +267,8 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
267
267
  }>> & Readonly<{
268
268
  onCancel?: ((_e: Event) => any) | undefined;
269
269
  onClose?: (() => any) | undefined;
270
- onOpen?: (() => any) | undefined;
271
270
  "onUpdate:visible"?: ((_visible: boolean) => any) | undefined;
271
+ onOpen?: (() => any) | undefined;
272
272
  onOk?: ((_e: Event) => any) | undefined;
273
273
  onBeforeOpen?: (() => any) | undefined;
274
274
  onBeforeClose?: (() => any) | undefined;
@@ -76,8 +76,8 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
76
76
  showText: BooleanConstructor;
77
77
  }>> & Readonly<{}>, {
78
78
  size: "small" | "medium" | "large";
79
- color: string | Record<string, any>;
80
79
  strokeWidth: number;
80
+ color: string | Record<string, any>;
81
81
  width: string | number;
82
82
  animation: boolean;
83
83
  showText: boolean;
@@ -71,20 +71,20 @@ declare const QrCode: {
71
71
  type: import("./types").QrCodeType;
72
72
  size: number;
73
73
  color: string;
74
- icon: string;
75
74
  bordered: boolean;
75
+ icon: string;
76
76
  status: import("./types").QrCodeStatusType;
77
77
  spinProps: Partial<{
78
- dot: boolean;
79
78
  loading: boolean;
79
+ dot: boolean;
80
80
  hideIcon: boolean;
81
81
  }> & Omit<{
82
- readonly dot: boolean;
83
82
  readonly loading: boolean;
83
+ readonly dot: boolean;
84
84
  readonly hideIcon: boolean;
85
85
  readonly size?: number | undefined;
86
86
  readonly tip?: string | undefined;
87
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "dot" | "loading" | "hideIcon">;
87
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "loading" | "dot" | "hideIcon">;
88
88
  iconAlt: string;
89
89
  iconSize: import("./types").QrCodeIconSize;
90
90
  bgColor: string;
@@ -166,20 +166,20 @@ declare const QrCode: {
166
166
  type: import("./types").QrCodeType;
167
167
  size: number;
168
168
  color: string;
169
- icon: string;
170
169
  bordered: boolean;
170
+ icon: string;
171
171
  status: import("./types").QrCodeStatusType;
172
172
  spinProps: Partial<{
173
- dot: boolean;
174
173
  loading: boolean;
174
+ dot: boolean;
175
175
  hideIcon: boolean;
176
176
  }> & Omit<{
177
- readonly dot: boolean;
178
177
  readonly loading: boolean;
178
+ readonly dot: boolean;
179
179
  readonly hideIcon: boolean;
180
180
  readonly size?: number | undefined;
181
181
  readonly tip?: string | undefined;
182
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "dot" | "loading" | "hideIcon">;
182
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "loading" | "dot" | "hideIcon">;
183
183
  iconAlt: string;
184
184
  iconSize: import("./types").QrCodeIconSize;
185
185
  bgColor: string;
@@ -260,20 +260,20 @@ declare const QrCode: {
260
260
  type: import("./types").QrCodeType;
261
261
  size: number;
262
262
  color: string;
263
- icon: string;
264
263
  bordered: boolean;
264
+ icon: string;
265
265
  status: import("./types").QrCodeStatusType;
266
266
  spinProps: Partial<{
267
- dot: boolean;
268
267
  loading: boolean;
268
+ dot: boolean;
269
269
  hideIcon: boolean;
270
270
  }> & Omit<{
271
- readonly dot: boolean;
272
271
  readonly loading: boolean;
272
+ readonly dot: boolean;
273
273
  readonly hideIcon: boolean;
274
274
  readonly size?: number | undefined;
275
275
  readonly tip?: string | undefined;
276
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "dot" | "loading" | "hideIcon">;
276
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "loading" | "dot" | "hideIcon">;
277
277
  iconAlt: string;
278
278
  iconSize: import("./types").QrCodeIconSize;
279
279
  bgColor: string;
@@ -135,20 +135,20 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
135
135
  type: QrCodeType;
136
136
  size: number;
137
137
  color: string;
138
- icon: string;
139
138
  bordered: boolean;
139
+ icon: string;
140
140
  status: QrCodeStatusType;
141
141
  spinProps: Partial<{
142
- dot: boolean;
143
142
  loading: boolean;
143
+ dot: boolean;
144
144
  hideIcon: boolean;
145
145
  }> & Omit<{
146
- readonly dot: boolean;
147
146
  readonly loading: boolean;
147
+ readonly dot: boolean;
148
148
  readonly hideIcon: boolean;
149
149
  readonly size?: number | undefined;
150
150
  readonly tip?: string | undefined;
151
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "dot" | "loading" | "hideIcon">;
151
+ } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "loading" | "dot" | "hideIcon">;
152
152
  iconAlt: string;
153
153
  iconSize: QrCodeIconSize;
154
154
  bgColor: string;
@@ -193,7 +193,6 @@ declare const Select: {
193
193
  unmountOnClose: boolean;
194
194
  show: boolean;
195
195
  scrollbar: boolean | import("..").ScrollbarProps;
196
- multiple: boolean;
197
196
  defaultValue: import("./interface").SelectModelValue;
198
197
  modelValue: import("./interface").SelectModelValue;
199
198
  allowClear: boolean;
@@ -201,6 +200,7 @@ declare const Select: {
201
200
  valueKey: string;
202
201
  filterOption: boolean | ((inputValue: string, option: import("./interface").SelectOptionData) => boolean);
203
202
  showExtraOptions: boolean;
203
+ multiple: boolean;
204
204
  defaultActiveFirstOption: boolean;
205
205
  showHeaderOnEmpty: boolean;
206
206
  showFooterOnEmpty: boolean;
@@ -919,9 +919,9 @@ declare const Select: {
919
919
  error: boolean;
920
920
  disabled: boolean;
921
921
  showArrow: boolean;
922
- multiple: boolean;
923
922
  allowClear: boolean;
924
923
  loading: boolean;
924
+ multiple: boolean;
925
925
  bordered: boolean;
926
926
  maxTagCount: number | "responsive";
927
927
  retainInputValue: boolean;
@@ -1438,7 +1438,6 @@ declare const Select: {
1438
1438
  unmountOnClose: boolean;
1439
1439
  show: boolean;
1440
1440
  scrollbar: boolean | import("..").ScrollbarProps;
1441
- multiple: boolean;
1442
1441
  defaultValue: import("./interface").SelectModelValue;
1443
1442
  modelValue: import("./interface").SelectModelValue;
1444
1443
  allowClear: boolean;
@@ -1446,6 +1445,7 @@ declare const Select: {
1446
1445
  valueKey: string;
1447
1446
  filterOption: boolean | ((inputValue: string, option: import("./interface").SelectOptionData) => boolean);
1448
1447
  showExtraOptions: boolean;
1448
+ multiple: boolean;
1449
1449
  defaultActiveFirstOption: boolean;
1450
1450
  showHeaderOnEmpty: boolean;
1451
1451
  showFooterOnEmpty: boolean;
@@ -1656,7 +1656,6 @@ declare const Select: {
1656
1656
  unmountOnClose: boolean;
1657
1657
  show: boolean;
1658
1658
  scrollbar: boolean | import("..").ScrollbarProps;
1659
- multiple: boolean;
1660
1659
  defaultValue: import("./interface").SelectModelValue;
1661
1660
  modelValue: import("./interface").SelectModelValue;
1662
1661
  allowClear: boolean;
@@ -1664,6 +1663,7 @@ declare const Select: {
1664
1663
  valueKey: string;
1665
1664
  filterOption: boolean | ((inputValue: string, option: import("./interface").SelectOptionData) => boolean);
1666
1665
  showExtraOptions: boolean;
1666
+ multiple: boolean;
1667
1667
  defaultActiveFirstOption: boolean;
1668
1668
  showHeaderOnEmpty: boolean;
1669
1669
  showFooterOnEmpty: boolean;
@@ -2382,9 +2382,9 @@ declare const Select: {
2382
2382
  error: boolean;
2383
2383
  disabled: boolean;
2384
2384
  showArrow: boolean;
2385
- multiple: boolean;
2386
2385
  allowClear: boolean;
2387
2386
  loading: boolean;
2387
+ multiple: boolean;
2388
2388
  bordered: boolean;
2389
2389
  maxTagCount: number | "responsive";
2390
2390
  retainInputValue: boolean;
@@ -73,8 +73,8 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
73
73
  onReachBottom?: ((_ev: Event) => any) | undefined;
74
74
  }>, {
75
75
  scrollbar: boolean | ScrollbarProps;
76
- empty: boolean;
77
76
  loading: boolean;
77
+ empty: boolean;
78
78
  virtualList: boolean;
79
79
  bottomOffset: number;
80
80
  showHeaderOnEmpty: boolean;
@@ -344,7 +344,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
344
344
  unmountOnClose: boolean;
345
345
  show: boolean;
346
346
  scrollbar: boolean | ScrollbarProps;
347
- multiple: boolean;
348
347
  defaultValue: SelectModelValue;
349
348
  modelValue: SelectModelValue;
350
349
  allowClear: boolean;
@@ -352,6 +351,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
352
351
  valueKey: string;
353
352
  filterOption: boolean | ((inputValue: string, option: SelectOptionData) => boolean);
354
353
  showExtraOptions: boolean;
354
+ multiple: boolean;
355
355
  defaultActiveFirstOption: boolean;
356
356
  showHeaderOnEmpty: boolean;
357
357
  showFooterOnEmpty: boolean;
@@ -1070,9 +1070,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1070
1070
  error: boolean;
1071
1071
  disabled: boolean;
1072
1072
  showArrow: boolean;
1073
- multiple: boolean;
1074
1073
  allowClear: boolean;
1075
1074
  loading: boolean;
1075
+ multiple: boolean;
1076
1076
  bordered: boolean;
1077
1077
  maxTagCount: number | "responsive";
1078
1078
  retainInputValue: boolean;
@@ -436,12 +436,14 @@ var select_default = /* @__PURE__ */ defineComponent({
436
436
  }
437
437
  return result;
438
438
  });
439
+ const ellipsisPrefixCls = getPrefixCls("ellipsis");
440
+ const renderOptionEllipsis = (label) => createVNode("span", { "class": [ellipsisPrefixCls, `${ellipsisPrefixCls}--single-line`] }, [createVNode("span", { "class": `${ellipsisPrefixCls}-content` }, [label])]);
439
441
  const getOptionContentFunc = (optionInfo) => {
440
442
  if (isFunction(slots.option)) return () => {
441
443
  var _slots$option;
442
444
  return (_slots$option = slots.option) === null || _slots$option === void 0 ? void 0 : _slots$option.call(slots, { data: optionInfo.raw });
443
445
  };
444
- return () => optionInfo.label;
446
+ return () => renderOptionEllipsis(optionInfo.label);
445
447
  };
446
448
  const optionPrefixCls = getPrefixCls("select-option");
447
449
  const groupPrefixCls = getPrefixCls("select-group");
@@ -450,7 +452,7 @@ var select_default = /* @__PURE__ */ defineComponent({
450
452
  if (isGroupOptionInfo(optionInfo)) return createVNode("li", {
451
453
  "key": optionInfo.key,
452
454
  "class": groupPrefixCls
453
- }, [createVNode("div", { "class": `${groupPrefixCls}-title` }, [optionInfo.label]), optionInfo.options.map((child) => renderOption(child))]);
455
+ }, [createVNode("div", { "class": `${groupPrefixCls}-title` }, [renderOptionEllipsis(optionInfo.label)]), optionInfo.options.map((child) => renderOption(child))]);
454
456
  if (!isValidOption(optionInfo, {
455
457
  inputValue: computedInputValue.value,
456
458
  filterOption: filterOption.value
@@ -3,5 +3,6 @@ import '../../_components/select-view/style';
3
3
  import '../../trigger/style';
4
4
  import '../../empty/style';
5
5
  import '../../checkbox/style';
6
+ import '../../ellipsis/style';
6
7
  import '../../scrollbar/style';
7
8
  import './index.scss';