@opentinyvue/vue-base-select 2.27.0 → 2.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.js CHANGED
@@ -11,7 +11,6 @@ import { defineComponent, $props, $setup, $prefix } from "@opentinyvue/vue-commo
11
11
  import { t } from "@opentinyvue/vue-locale";
12
12
  import PcTemplate from "./pc.js";
13
13
  import MobileFirstTemplate from "./mobile-first.js";
14
- import { IconChevronDown } from "@opentinyvue/vue-icon";
15
14
  var template = function template2(mode) {
16
15
  var _process$env;
17
16
  var tinyMode = typeof process === "object" ? (_process$env = process.env) == null ? void 0 : _process$env.TINY_MODE : null;
@@ -265,11 +264,7 @@ var BaseSelect = defineComponent({
265
264
  },
266
265
  dropdownIcon: {
267
266
  type: [Object, String],
268
- default: function _default10() {
269
- var defaultDropdownIcon = IconChevronDown();
270
- defaultDropdownIcon.isDefault = true;
271
- return defaultDropdownIcon;
272
- }
267
+ default: ""
273
268
  },
274
269
  disabledTooltipContent: String,
275
270
  hoverExpand: {
@@ -304,7 +299,7 @@ var BaseSelect = defineComponent({
304
299
  },
305
300
  popperOptions: {
306
301
  type: Object,
307
- default: function _default11() {
302
+ default: function _default10() {
308
303
  return {
309
304
  gpuAcceleration: false,
310
305
  boundariesPadding: 0
@@ -321,14 +316,33 @@ var BaseSelect = defineComponent({
321
316
  },
322
317
  topCreateText: {
323
318
  type: String,
324
- default: function _default12() {
319
+ default: function _default11() {
325
320
  return t("ui.select.add");
326
321
  }
327
322
  },
323
+ initLabel: {
324
+ type: String,
325
+ default: ""
326
+ },
328
327
  blank: {
329
328
  type: Boolean,
330
329
  default: false
331
330
  },
331
+ tooltipConfig: {
332
+ type: Object,
333
+ default: function _default12() {
334
+ return {};
335
+ }
336
+ },
337
+ showEmptyValue: Boolean,
338
+ dropdownHeight: {
339
+ type: String,
340
+ default: "initial"
341
+ },
342
+ stopPropagation: {
343
+ type: Boolean,
344
+ default: void 0
345
+ },
332
346
  // 以下为 tiny 新增
333
347
  searchable: {
334
348
  type: Boolean,
@@ -376,6 +390,15 @@ var BaseSelect = defineComponent({
376
390
  showAllTextTag: {
377
391
  type: Boolean,
378
392
  default: false
393
+ },
394
+ // 配置多选时,Tag的最大宽度
395
+ maxTagWidth: {
396
+ type: [String, Number],
397
+ default: null
398
+ },
399
+ autoSelect: {
400
+ type: Boolean,
401
+ default: false
379
402
  }
380
403
  }),
381
404
  setup: function setup(props, context) {
@@ -1,13 +1,13 @@
1
- import { renderless, api } from '@opentinyvue/vue-renderless/select/vue';
1
+ import { renderless, api } from '@opentinyvue/vue-renderless/base-select/vue';
2
2
  import { defineComponent, directive, props, setup } from '@opentinyvue/vue-common';
3
3
  import Tag from '@opentinyvue/vue-tag';
4
4
  import Input from '@opentinyvue/vue-input';
5
5
  import Option from '@opentinyvue/vue-option';
6
6
  import Scrollbar from '@opentinyvue/vue-scrollbar';
7
7
  import SelectDropdown from '@opentinyvue/vue-select-dropdown';
8
- import { Clickoutside } from '@opentinyvue/vue-directive';
9
- import { iconClose, iconCopy, iconHalfselect, iconCheck, iconCheckedSur, iconLoading, iconChevronRight } from '@opentinyvue/vue-icon';
10
- import Tree from '@opentinyvue/vue-tree';
8
+ import Button from '@opentinyvue/vue-button';
9
+ import { Clickoutside, AutoTip } from '@opentinyvue/vue-directive';
10
+ import { iconClose, iconCopy, iconHalfselect, iconCheck, iconCheckedSur, iconLoading, iconChevronRight, iconDownWard, iconSearch, iconEllipsis, iconChevronUp, iconAddCircle, iconLoadingShadow } from '@opentinyvue/vue-icon';
11
11
  import Tooltip from '@opentinyvue/vue-tooltip';
12
12
  import FilterBox from '@opentinyvue/vue-filter-box';
13
13
  import RecycleScroller from '@opentinyvue/vue-recycle-scroller';
@@ -46,7 +46,7 @@ var classes = {
46
46
  "caret": "text-base rotate-0 transition-transform duration-300 fill-color-text-placeholder cursor-pointer ",
47
47
  "select-tags": "absolute leading-normal whitespace-normal sm:pl-3 pr-2 z-[1] top-1/2 -translate-y-2/4 flex items-center flex-wrap [&_[data-tag=tiny-tag]]:my-0.5 [&_[data-tag=tiny-tag]]:h-7 [&_[data-tag=tiny-tag]]:sm:h-5 [&_[data-tag=tiny-tag]_svg]:shrink-0",
48
48
  "tags-text": "inline-block w-full whitespace-nowrap text-ellipsis overflow-hidden align-bottom",
49
- "tag-info": "whitespace-nowrap text-ellipsis overflow-hidden inline-flex justify-start items-center border-transparent text-color-text-primary"
49
+ "tag-info": "whitespace-nowrap text-ellipsis overflow-hidden inline-flex justify-start items-center border-transparent text-color-text-primary h-5 cursor-pointer"
50
50
  };
51
51
  var render = function render2() {
52
52
  var _vm = this;
@@ -65,7 +65,10 @@ var render = function render2() {
65
65
  }],
66
66
  ref: "select",
67
67
  staticClass: "inline-block relative w-full outline-0 group [&_[data-tag=tiny-tag]]:max-w-[144px]",
68
- class: [_vm.hoverExpand ? "align-top" : "", _vm.$parent.$attrs.class],
68
+ class: [_vm.hoverExpand ? "align-top is-hover-expand" : "", _vm.clickExpand ? "is-click-expand" : "", (_vm.state.inputHovering || _vm.state.visible) && !_vm.clickExpand ? "is-hover" : "", _vm.state.showCollapseTag ? "collapse-tag-clicked" : "", _vm.$parent.$attrs.class],
69
+ attrs: {
70
+ "data-tag": "tiny-base-select"
71
+ },
69
72
  on: {
70
73
  "mouseleave": function mouseleave($event) {
71
74
  if ($event.target !== $event.currentTarget) return null;
@@ -105,7 +108,8 @@ var render = function render2() {
105
108
  return item.state ? item.state.currentLabel : item.currentLabel;
106
109
  }).join("; ") : _vm.state.selectedLabel,
107
110
  "drop-down-visible": _vm.state.visible,
108
- "blank": _vm.blank
111
+ "blank": _vm.blank,
112
+ "size": _vm.state.selectSize
109
113
  },
110
114
  on: {
111
115
  "click": _vm.toggleMenu
@@ -117,11 +121,13 @@ var render = function render2() {
117
121
  }, {
118
122
  "overflow-y-hidden": (_vm.state.inputHovering || _vm.state.visible) && !_vm.state.selected.length
119
123
  }, {
120
- "h-6 overflow-hidden": _vm.hoverExpand
124
+ "h-6 overflow-hidden": _vm.hoverExpand || _vm.clickExpand
121
125
  }, {
122
126
  "pr-6": _vm.state.selectDisabled
123
127
  }, {
124
- "overflow-y-auto max-h-28 h-auto": _vm.hoverExpand && (_vm.state.inputHovering || _vm.state.visible)
128
+ "overflow-y-auto max-h-28 h-auto": _vm.hoverExpand && (_vm.state.inputHovering || _vm.state.visible) || _vm.clickExpand && _vm.state.showCollapseTag
129
+ }, {
130
+ "overflow-x-hidden": !(_vm.hoverExpand && (_vm.state.inputHovering || _vm.state.visible) || _vm.clickExpand && _vm.state.showCollapseTag)
125
131
  }),
126
132
  style: _vm.state.tagsStyle
127
133
  }, [!_vm.state.selectDisabled ? _c("span", {
@@ -135,8 +141,9 @@ var render = function render2() {
135
141
  "closable": !_vm.state.selectDisabled && _vm.state.device !== "mb",
136
142
  "size": _vm.state.collapseTagSize,
137
143
  "hit": _vm.state.selectedVal[0].state ? _vm.state.selectedVal[0].state.hitState : _vm.state.selectedVal[0].hitState,
138
- "type": "info",
139
- "disable-transitions": ""
144
+ "type": _vm.state.getTagType,
145
+ "disable-transitions": "",
146
+ "maxWidth": _vm.maxTagWidth
140
147
  },
141
148
  on: {
142
149
  "close": function close($event) {
@@ -178,28 +185,52 @@ var render = function render2() {
178
185
  attrs: {
179
186
  "closable": false,
180
187
  "size": _vm.state.collapseTagSize,
181
- "type": "info",
182
- "disable-transitions": ""
188
+ "type": _vm.state.getTagType,
189
+ "disable-transitions": "",
190
+ "maxWidth": _vm.maxTagWidth
183
191
  }
184
192
  }, [_c("span", {
185
193
  class: _vm.gcls("tags-text")
186
194
  }, [_vm._v("+ " + _vm._s(_vm.state.selectedVal.length - 1))])]) : _vm._e()], 1) : _vm._e(), !_vm.collapseTags ? _c("span", {
187
195
  ref: "tags-content",
188
196
  staticClass: "sm:contents hidden"
189
- }, [_vm.hoverExpand ? _c("tiny-tag", {
197
+ }, [_vm.showAllTextTag && _vm.state.selectCls === "checked-sur" ? _c("tiny-tag", {
198
+ key: "tags-all-text-tag",
199
+ attrs: {
200
+ "type": _vm.state.getTagType,
201
+ "data-tag": "tags-all-text-tag",
202
+ "disabled": _vm.state.isDisabled,
203
+ "closable": true,
204
+ "size": _vm.state.collapseTagSize,
205
+ "maxWidth": _vm.maxTagWidth
206
+ },
207
+ on: {
208
+ "close": function close($event) {
209
+ return _vm.toggleCheckAll(false);
210
+ }
211
+ }
212
+ }, [_vm._v(" " + _vm._s(_vm.allText || _vm.t("ui.base.all")) + " ")]) : [(_vm.hoverExpand || _vm.clickExpand && !_vm.state.showCollapseTag) && _vm.state.selected.length > 1 ? _c("tiny-tag", {
190
213
  key: "tags-collapse",
191
214
  class: _vm.m(_vm.gcls("tag-info"), {
192
- "visible static": _vm.hoverExpand
215
+ "visible static": _vm.hoverExpand || _vm.clickExpand && !_vm.state.showCollapseTag
193
216
  }, {
194
217
  "invisible absolute": _vm.hoverExpand && (_vm.state.inputHovering || _vm.state.visible || _vm.state.isHidden)
218
+ }, {
219
+ "is-hidden": _vm.clickExpand && _vm.state.isHidden || _vm.state.isDisabled
195
220
  }),
196
221
  attrs: {
197
- "type": "info",
222
+ "type": _vm.state.getTagType,
198
223
  "data-tag": "tags-collapse",
199
224
  "closable": false,
200
- "size": _vm.state.collapseTagSize
225
+ "size": _vm.state.collapseTagSize,
226
+ "maxWidth": _vm.maxTagWidth
227
+ },
228
+ on: {
229
+ "click": function click($event) {
230
+ return _vm.onClickCollapseTag($event);
231
+ }
201
232
  }
202
- }, [_vm._v("+ " + _vm._s(_vm.state.collapseTagsLength))]) : _vm._e(), _vm._l(_vm.state.selected, function(item, index) {
233
+ }, [_vm.hoverExpand ? [_vm._v("+ " + _vm._s(_vm.state.collapseTagsLength))] : _c("icon-ellipsis")], 2) : _vm._e(), _vm._l(_vm.state.selected, function(item, index) {
203
234
  return _c("tiny-tag", {
204
235
  key: _vm.getValueKey(item),
205
236
  class: _vm.gcls("tag-info"),
@@ -207,8 +238,9 @@ var render = function render2() {
207
238
  "closable": !item.selectDisabled && !item.required && _vm.state.device !== "mb",
208
239
  "size": _vm.state.collapseTagSize,
209
240
  "hit": item.state ? item.state.hitState : item.hitState,
210
- "type": "info",
211
- "disable-transitions": ""
241
+ "type": _vm.state.getTagType,
242
+ "disable-transitions": "",
243
+ "maxWidth": _vm.maxTagWidth
212
244
  },
213
245
  on: {
214
246
  "close": function close($event) {
@@ -249,7 +281,14 @@ var render = function render2() {
249
281
  }, {
250
282
  "item": _vm.getLabelSlotValue(item)
251
283
  })], 2)])], 1);
252
- })], 2) : _vm._e()]) : _c("span", {
284
+ }), _vm.clickExpand && _vm.state.showCollapseTag ? _c("span", {
285
+ staticClass: "text-xs text-color-brand cursor-pointer flex items-center",
286
+ on: {
287
+ "click": function click($event) {
288
+ return _vm.onClickCollapseTag($event);
289
+ }
290
+ }
291
+ }, [_vm._v(" " + _vm._s(_vm.t("ui.select.collapse")) + " "), _c("icon-chevron-up")], 1) : _vm._e()]], 2) : _vm._e()]) : _c("span", {
253
292
  class: [_vm.gcls("tags-text"), "flex"]
254
293
  }, [_c("tiny-tooltip", {
255
294
  attrs: {
@@ -345,6 +384,7 @@ var render = function render2() {
345
384
  }) : _vm._e()]) : _vm._e(), !_vm.shape ? _c("tiny-input", {
346
385
  ref: "reference",
347
386
  attrs: {
387
+ "tiny_mode": "mobile-first",
348
388
  "type": "text",
349
389
  "placeholder": _vm.state.currentPlaceholder,
350
390
  "name": _vm.name,
@@ -357,6 +397,8 @@ var render = function render2() {
357
397
  "display-only-content": _vm.state.displayOnlyContent,
358
398
  "unselectable": _vm.state.readonly ? "on" : "off",
359
399
  "validate-event": false,
400
+ "show-empty-value": _vm.showEmptyValue,
401
+ "input-box-type": _vm.inputBoxType,
360
402
  "tabindex": _vm.multiple && _vm.filterable ? "-1" : _vm.tabindex
361
403
  },
362
404
  on: {
@@ -426,7 +468,7 @@ var render = function render2() {
426
468
  _vm.state.inputHovering = true;
427
469
  }
428
470
  }
429
- }) : _vm._e(), _c(_vm.dropdownIcon, {
471
+ }) : _vm._e(), _c(_vm.state.getIcon.icon, {
430
472
  directives: [{
431
473
  name: "show",
432
474
  rawName: "v-show",
@@ -468,8 +510,8 @@ var render = function render2() {
468
510
  directives: [{
469
511
  name: "show",
470
512
  rawName: "v-show",
471
- value: !_vm.onCopying() && !_vm.hideDrop && _vm.state.visible && _vm.state.emptyText !== false,
472
- expression: "!onCopying() && !hideDrop && state.visible && state.emptyText !== false"
513
+ value: !_vm.onCopying() && !_vm.hideDrop && _vm.state.visible && (_vm.slots.panel || _vm.state.emptyText !== false),
514
+ expression: "!onCopying() && !hideDrop && state.visible && (slots.panel || state.emptyText !== false)"
473
515
  }],
474
516
  ref: "popper",
475
517
  class: _vm.m("duration-300"),
@@ -504,33 +546,12 @@ var render = function render2() {
504
546
  },
505
547
  expression: "state.query"
506
548
  }
507
- })], 1) : _vm._e(), _vm.renderType === "tree" ? _c("tiny-tree", _vm._b({
508
- ref: "selectTree",
509
- staticClass: "[&_[data-tag=tiny-checkbox]_>span_>span]:p-1.5 sm:[&_[data-tag=tiny-checkbox]_>span_>span]:p-0",
510
- attrs: {
511
- "filter-node-method": _vm.filterMethod,
512
- "props": Object.assign({
513
- label: _vm.textField,
514
- isLeaf: "isLeaf"
515
- }, _vm.treeOp.props),
516
- "expand-on-click-node": false,
517
- "icon-trigger-click-node": false,
518
- "node-key": _vm.valueField,
519
- "default-expand-all": _vm.state.isExpandAll,
520
- "check-strictly": _vm.treeOp.checkStrictly,
521
- "default-checked-keys": _vm.multiple ? _vm.state.defaultCheckedKeys : [],
522
- "current-node-key": !_vm.multiple ? _vm.state.currentKey : "",
523
- "show-checkbox": _vm.multiple,
524
- "show-checked-mark": _vm.state.device === "mb"
525
- },
526
- on: {
527
- "load-data": _vm.loadTreeData,
528
- "node-collapse": _vm.nodeCollapse,
529
- "node-expand": _vm.nodeExpand,
530
- "check": _vm.nodeCheckClick,
531
- "node-click": _vm.treeNodeClick
549
+ })], 1) : _vm._e(), _vm._t("header"), _vm._t("panel", null, {
550
+ "methods": {
551
+ updateSelectedData: _vm.updateSelectedData,
552
+ hidePanel: _vm.hidePanel
532
553
  }
533
- }, "tiny-tree", _vm.treeOp, false)) : _vm._e(), _vm.optimization && _vm.renderType !== "tree" ? [_c("div", {
554
+ }), _vm.optimization ? [_c("div", {
534
555
  style: {
535
556
  height: _vm.state.optimizeStore.recycleScrollerHeight + "px"
536
557
  }
@@ -591,7 +612,7 @@ var render = function render2() {
591
612
  })];
592
613
  }
593
614
  }], null, true)
594
- })], 1)] : _vm._e(), !_vm.optimization && _vm.renderType !== "tree" ? _c("tiny-scrollbar", {
615
+ })], 1)] : _vm._e(), !_vm.optimization ? _c("tiny-scrollbar", {
595
616
  directives: [{
596
617
  name: "show",
597
618
  rawName: "v-show",
@@ -610,7 +631,7 @@ var render = function render2() {
610
631
  }
611
632
  }
612
633
  }, [_vm._t("dropdown"), _vm.multiple && _vm.showCheck && _vm.showAlloption && !_vm.state.multipleLimit && !_vm.state.query && !_vm.remote ? _c("div", {
613
- staticClass: "whitespace-nowrap box-border py-0 h-10 leading-10 sm:h-8 sm:leading-8 text-sm sm:text-xs pl-0 pr-3 sm:px-3 my-1 sm:m-1 rounded cursor-pointer",
634
+ staticClass: "whitespace-nowrap box-border py-0 h-10 leading-10 sm:h-8 sm:leading-8 text-sm sm:text-xs pl-0 pr-3 sm:px-2 my-1 sm:m-1 rounded cursor-pointer",
614
635
  class: [{
615
636
  hover: _vm.state.hoverIndex === -9 && _vm.state.selectCls !== "checked-sur"
616
637
  }, {
@@ -633,11 +654,11 @@ var render = function render2() {
633
654
  }
634
655
  }, [_c("icon-" + _vm.state.selectCls, {
635
656
  tag: "component",
636
- class: _vm.m(["-mt-0.5 mr-2 fill-color-icon-secondary", _vm.state.selectCls !== "check" && "fill-color-brand"])
657
+ class: _vm.m(["-mt-0.5 mr-2 fill-color-icon-secondary w-3.5 h-3.5", _vm.state.selectCls !== "check" && "fill-color-brand text-color-brand"])
637
658
  }), _c("span", {
638
659
  class: [_vm.state.selectCls === "checked-sur" ? "text-color-brand" : "text-color-text-primary"]
639
660
  }, [_vm._v(" " + _vm._s(_vm.allText || _vm.t("ui.base.all")))])], 1) : _vm._e(), _vm.multiple && _vm.showCheck && _vm.showAlloption && !_vm.state.multipleLimit && _vm.state.query && !_vm.state.emptyText && !_vm.remote ? _c("div", {
640
- staticClass: "whitespace-nowrap box-border py-0 h-10 leading-10 sm:h-8 sm:leading-8 text-sm sm:text-xs pl-0 pr-3 sm:px-3 my-1 sm:m-1 rounded cursor-pointer",
661
+ staticClass: "whitespace-nowrap box-border py-0 h-10 leading-10 sm:h-8 sm:leading-8 text-sm sm:text-xs pl-0 pr-3 sm:px-2 my-1 sm:m-1 rounded cursor-pointer",
641
662
  class: [{
642
663
  hover: _vm.state.hoverIndex === -9 && _vm.state.filteredSelectCls !== "checked-sur"
643
664
  }, {
@@ -688,7 +709,7 @@ var render = function render2() {
688
709
  }
689
710
  });
690
711
  });
691
- })], 2) : _vm._e(), _vm.renderType !== "tree" && _vm.state.emptyText && (!_vm.allowCreate || _vm.loading || _vm.allowCreate && _vm.state.emptyFlag) ? [_vm.loadingText || _vm.slots.empty ? _c("div", [_vm.slots.empty ? _vm._t("empty") : _c("p", {
712
+ })], 2) : _vm._e(), !_vm.slots.panel && _vm.state.emptyText && (!_vm.allowCreate || _vm.loading || _vm.allowCreate && _vm.state.emptyFlag) ? [_vm.loadingText || _vm.slots.empty ? _c("div", [_vm.slots.empty ? _vm._t("empty") : _c("p", {
692
713
  staticClass: "py-2.5 px-0 m-0 text-center text-color-text-secondary text-xs"
693
714
  }, [_vm._v(" " + _vm._s(_vm.state.emptyText) + " ")])], 2) : _c("div", {
694
715
  staticClass: "text-center py-2.5 px-0"
@@ -696,7 +717,7 @@ var render = function render2() {
696
717
  staticClass: "py-2.5 px-0 m-0 text-center text-color-text-secondary text-xs"
697
718
  }, [_vm._v(" " + _vm._s(_vm.state.emptyText) + " ")]) : _c("icon-loading", {
698
719
  staticClass: "fill-color-brand h-4 w-4 inline-block align-top animate-spin"
699
- })], 1)] : _vm._e()], 2)], 1)], 1), _vm.hoverExpand && !_vm.state.isDisplayOnly ? _c("div", {
720
+ })], 1)] : _vm._e(), _vm._t("footer")], 2)], 1)], 1), _vm.hoverExpand && !_vm.state.isDisplayOnly ? _c("div", {
700
721
  class: _vm.m("h-7 invisible", {
701
722
  "h-6": _vm.state.selectSize === "mini"
702
723
  }, {
@@ -724,9 +745,10 @@ var getReference = function getReference2(el, binding, vnode) {
724
745
  };
725
746
  var __vue2_script = defineComponent({
726
747
  inheritAttrs: false,
727
- emits: ["update:modelValue", "change", "focus", "blur", "clear", "remove-tag", "visible-change", "handleDropdownClick", "dropdown-click", "confirm"],
748
+ emits: ["update:modelValue", "change", "focus", "blur", "clear", "remove-tag", "visible-change", "handleDropdownClick", "dropdown-click", "confirm", "top-create-click"],
728
749
  directives: directive({
729
750
  Clickoutside,
751
+ AutoTip,
730
752
  popover: {
731
753
  bind: function bind(el, binding, vnode) {
732
754
  getReference(el, binding, vnode);
@@ -740,8 +762,8 @@ var __vue2_script = defineComponent({
740
762
  TinyTag: Tag,
741
763
  TinyInput: Input,
742
764
  TinyOption: Option,
743
- TinyTree: Tree,
744
765
  TinyScrollbar: Scrollbar,
766
+ TinyButton: Button,
745
767
  TinyFilterBox: FilterBox,
746
768
  TinyTooltip: Tooltip,
747
769
  IconClose: iconClose(),
@@ -752,9 +774,15 @@ var __vue2_script = defineComponent({
752
774
  IconCheckedSur: iconCheckedSur(),
753
775
  IconLoading: iconLoading(),
754
776
  IconChevronRight: iconChevronRight(),
777
+ IconDownWard: iconDownWard(),
778
+ IconSearch: iconSearch(),
779
+ IconEllipsis: iconEllipsis(),
780
+ IconChevronUp: iconChevronUp(),
781
+ IconAddCircle: iconAddCircle(),
782
+ IconLoadingShadow: iconLoadingShadow(),
755
783
  TinyRecycleScroller: RecycleScroller
756
784
  },
757
- props: [].concat(props, ["id", "multiple", "name", "dataset", "readonly", "tabindex", "dropStyle", "valueField", "textField", "copyable", "size", "options", "showCheck", "showAlloption", "showProportion", "hideDrop", "modelValue", "showOverflowTooltip", "remote", "remoteConfig", "placement", "loading", "disabled", "valueKey", "clearable", "noDataText", "filterable", "loadingText", "noMatchText", "popperClass", "allowCreate", "placeholder", "remoteMethod", "filterMethod", "collapseTags", "autocomplete", "multipleLimit", "reserveKeyword", "automaticDropdown", "defaultFirstOption", "popperAppendToBody", "showDropdown", "expandTags", "renderType", "gridOp", "treeOp", "delay", "cacheOp", "isDropInheritWidth", "tagSelectable", "selectConfig", "radioConfig", "allowCopy", "textSplit", "autoClose", "queryDebounce", "ignoreEnter", "dropdownIcon", "disabledTooltipContent", "hoverExpand", "optimization", "displayOnly", "initQuery", "extraQueryParams", "shape", "label", "tip", "updateDelay", "showTips", "popperOptions", "title", "closeByMask", "searchPlaceholder", "blank", "allText"]),
785
+ props: [].concat(props, ["id", "multiple", "name", "dataset", "readonly", "tabindex", "dropStyle", "valueField", "textField", "copyable", "size", "options", "showCheck", "showAlloption", "showProportion", "hideDrop", "modelValue", "showOverflowTooltip", "remote", "remoteConfig", "placement", "loading", "disabled", "valueKey", "clearable", "noDataText", "filterable", "loadingText", "noMatchText", "popperClass", "allowCreate", "placeholder", "remoteMethod", "filterMethod", "collapseTags", "autocomplete", "multipleLimit", "reserveKeyword", "automaticDropdown", "defaultFirstOption", "popperAppendToBody", "showDropdown", "expandTags", "delay", "cacheOp", "isDropInheritWidth", "tagSelectable", "selectConfig", "radioConfig", "allowCopy", "textSplit", "autoClose", "queryDebounce", "ignoreEnter", "dropdownIcon", "disabledTooltipContent", "optimization", "displayOnly", "initQuery", "extraQueryParams", "shape", "label", "tip", "updateDelay", "showTips", "popperOptions", "title", "closeByMask", "searchPlaceholder", "blank", "allText", "maxTagWidth", "tagType", "clearNoMatchValue", "showAllTextTag", "hoverExpand", "clickExpand", "maxVisibleRows", "initLabel", "inputBoxType", "showEmptyValue"]),
758
786
  setup: function setup$1(props2, context) {
759
787
  return setup({
760
788
  props: props2,
package/lib/pc.js CHANGED
@@ -6,12 +6,11 @@ import Option from '@opentinyvue/vue-option';
6
6
  import Scrollbar from '@opentinyvue/vue-scrollbar';
7
7
  import SelectDropdown from '@opentinyvue/vue-select-dropdown';
8
8
  import Button from '@opentinyvue/vue-button';
9
- import { Clickoutside } from '@opentinyvue/vue-directive';
10
- import { IconClose, IconCopy, iconAddCircle, iconLoadingShadow, IconHalfselect, IconCheck, IconCheckedSur, IconSearch, IconDeltaDown, IconEllipsis, IconChevronUp } from '@opentinyvue/vue-icon';
9
+ import { Clickoutside, AutoTip } from '@opentinyvue/vue-directive';
10
+ import { iconClose, iconCopy, iconAddCircle, iconLoadingShadow, iconHalfselect, iconCheck, iconCheckedSur, iconSearch, iconDownWard, iconEllipsis, iconChevronUp } from '@opentinyvue/vue-icon';
11
11
  import Tooltip from '@opentinyvue/vue-tooltip';
12
12
  import FilterBox from '@opentinyvue/vue-filter-box';
13
13
  import RecycleScroller from '@opentinyvue/vue-recycle-scroller';
14
- import Checkbox from '@opentinyvue/vue-checkbox';
15
14
  import '@opentinyvue/vue-theme/select/index.css';
16
15
  import '@opentinyvue/vue-theme/base-select/index.css';
17
16
 
@@ -61,6 +60,7 @@ var __vue2_script = defineComponent({
61
60
  emits: ["update:modelValue", "change", "focus", "blur", "clear", "remove-tag", "visible-change", "handleDropdownClick", "dropdown-click", "top-create-click"],
62
61
  directives: directive({
63
62
  Clickoutside,
63
+ AutoTip,
64
64
  popover: {
65
65
  bind: function bind(el, binding, vnode) {
66
66
  getReference(el, binding, vnode);
@@ -75,25 +75,24 @@ var __vue2_script = defineComponent({
75
75
  TinyInput: Input,
76
76
  TinyOption: Option,
77
77
  TinyButton: Button,
78
- IconClose: IconClose(),
78
+ IconClose: iconClose(),
79
79
  TinyScrollbar: Scrollbar,
80
- IconCopy: IconCopy(),
80
+ IconCopy: iconCopy(),
81
81
  IconAddCircle: iconAddCircle(),
82
82
  IconLoadingShadow: iconLoadingShadow(),
83
83
  TinySelectDropdown: SelectDropdown,
84
- IconHalfselect: IconHalfselect(),
85
- IconCheck: IconCheck(),
86
- IconCheckedSur: IconCheckedSur(),
84
+ IconHalfselect: iconHalfselect(),
85
+ IconCheck: iconCheck(),
86
+ IconCheckedSur: iconCheckedSur(),
87
87
  TinyFilterBox: FilterBox,
88
88
  TinyTooltip: Tooltip,
89
89
  TinyRecycleScroller: RecycleScroller,
90
90
  // tiny 新增,
91
- IconSearch: IconSearch(),
92
- IconDeltaDown: IconDeltaDown(),
91
+ IconSearch: iconSearch(),
92
+ IconDownWard: iconDownWard(),
93
93
  // 默认下拉图标
94
- TinyCheckbox: Checkbox,
95
- IconEllipsis: IconEllipsis(),
96
- IconChevronUp: IconChevronUp()
94
+ IconEllipsis: iconEllipsis(),
95
+ IconChevronUp: iconChevronUp()
97
96
  },
98
97
  props: [].concat(props, [
99
98
  "id",
@@ -166,7 +165,11 @@ var __vue2_script = defineComponent({
166
165
  "topCreate",
167
166
  "topCreateText",
168
167
  "keepFocus",
168
+ "initLabel",
169
169
  "blank",
170
+ "tooltipConfig",
171
+ "showEmptyValue",
172
+ "stopPropagation",
170
173
  // 以下为 tiny 新增
171
174
  "searchable",
172
175
  "showEmptyImage",
@@ -178,7 +181,8 @@ var __vue2_script = defineComponent({
178
181
  "clickExpand",
179
182
  "maxVisibleRows",
180
183
  "showAllTextTag",
181
- "allText"
184
+ "allText",
185
+ "maxTagWidth"
182
186
  ]),
183
187
  setup: function setup$1(props2, context) {
184
188
  return setup({
@@ -207,7 +211,7 @@ var render = function render2() {
207
211
  }],
208
212
  ref: "select",
209
213
  staticClass: "tiny-base-select",
210
- class: [_vm.state.selectSize ? "tiny-base-select--" + _vm.state.selectSize : "", _vm.state.collapseTags ? "tiny-base-select__collapse-tags" : "", _vm.filterable ? "tiny-base-select__filterable" : "", _vm.multiple ? "tiny-base-select__multiple" : "", (_vm.state.inputHovering || _vm.state.visible) && !_vm.clickExpand ? "is-hover" : "", _vm.state.isDisplayOnly ? "is-display-only" : "", _vm.hoverExpand ? "is-hover-expand" : "", _vm.clickExpand ? "is-click-expand" : "", _vm.state.showCollapseTag ? "collapse-tag-clicked" : "", _vm.state.selectDisabled ? "is-disabled" : "", _vm.$parent.$attrs.class],
214
+ class: [_vm.state.selectSize ? "tiny-base-select--" + _vm.state.selectSize : "", _vm.state.collapseTags ? "tiny-base-select__collapse-tags" : "", _vm.filterable ? "tiny-base-select__filterable" : "", _vm.multiple ? "tiny-base-select__multiple" : "", (_vm.state.inputHovering || _vm.state.visible) && !_vm.clickExpand ? "is-hover" : "", _vm.state.isDisplayOnly ? "is-display-only" : "", _vm.hoverExpand ? "is-hover-expand" : "", _vm.clickExpand ? "is-click-expand" : "", _vm.state.showCollapseTag ? "collapse-tag-clicked" : "", _vm.state.isDisabled ? "is-disabled" : "", _vm.$parent.$attrs.class],
211
215
  on: {
212
216
  "mouseleave": function mouseleave($event) {
213
217
  if ($event.target !== $event.currentTarget) return null;
@@ -218,14 +222,17 @@ var render = function render2() {
218
222
  },
219
223
  "mouseenter": function mouseenter($event) {
220
224
  if ($event.target !== $event.currentTarget) return null;
221
- return (function() {
222
- _vm.state.selectHover = true;
223
- _vm.state.inputHovering = true;
224
- }).apply(null, arguments);
225
+ return _vm.onMouseenterSelf.apply(null, arguments);
225
226
  },
226
227
  "click": _vm.toggleMenu
227
228
  }
228
229
  }, "div", _vm.a(_vm.$attrs, ["class", "style"], true), false), [_c("div", {
230
+ directives: [{
231
+ name: "auto-tip",
232
+ rawName: "v-auto-tip",
233
+ value: _vm.state.rootAutoTipConfig,
234
+ expression: "state.rootAutoTipConfig"
235
+ }],
229
236
  ref: "tagsGroup",
230
237
  class: ["tiny-base-select__tags-group", {
231
238
  "is-expand": _vm.state.isExpand
@@ -244,7 +251,8 @@ var render = function render2() {
244
251
  return item.state ? item.state.currentLabel : item.currentLabel;
245
252
  }).join("; ") : _vm.state.selectedLabel,
246
253
  "drop-down-visible": _vm.state.visible,
247
- "blank": _vm.blank
254
+ "blank": _vm.blank,
255
+ "size": _vm.state.selectSize
248
256
  },
249
257
  on: {
250
258
  "click": _vm.toggleMenu
@@ -260,12 +268,17 @@ var render = function render2() {
260
268
  style: _vm.state.tagsStyle
261
269
  }, [!_vm.state.isShowTagText ? _c("span", [_vm.collapseTags && _vm.state.selected.length ? _c("span", [_c("tiny-tag", {
262
270
  key: _vm.state.key,
271
+ class: {
272
+ "is-required": _vm.state.selected[0].required
273
+ },
263
274
  attrs: {
264
- "closable": !_vm.state.selectDisabled,
275
+ "closable": _vm.isTagClosable(_vm.state.selected[0]),
265
276
  "size": _vm.state.collapseTagSize,
266
277
  "hit": _vm.state.selected[0].state ? _vm.state.selected[0].state.hitState : _vm.state.selected[0].hitState,
278
+ "disabled": _vm.state.selected[0].disabled || _vm.state.isDisabled,
267
279
  "type": _vm.state.getTagType,
268
- "disable-transitions": ""
280
+ "disable-transitions": "",
281
+ "maxWidth": _vm.maxTagWidth
269
282
  },
270
283
  on: {
271
284
  "close": function close($event) {
@@ -274,8 +287,9 @@ var render = function render2() {
274
287
  }
275
288
  }, [_c("tiny-tooltip", {
276
289
  attrs: {
277
- "effect": "light",
278
- "placement": "top"
290
+ "effect": _vm.tooltipConfig.effect || "light",
291
+ "placement": _vm.tooltipConfig.placement || "top",
292
+ "popper-class": _vm.tooltipConfig.popperClass || ""
279
293
  },
280
294
  nativeOn: {
281
295
  "mouseenter": function mouseenter($event) {
@@ -305,7 +319,9 @@ var render = function render2() {
305
319
  "closable": false,
306
320
  "size": _vm.state.collapseTagSize,
307
321
  "type": _vm.state.getTagType,
308
- "disable-transitions": ""
322
+ "disabled": _vm.state.isDisabled,
323
+ "disable-transitions": "",
324
+ "maxWidth": _vm.maxTagWidth
309
325
  }
310
326
  }, [_c("span", {
311
327
  staticClass: "tiny-base-select__tags-text"
@@ -318,24 +334,26 @@ var render = function render2() {
318
334
  "data-tag": "tags-all-text-tag",
319
335
  "disabled": _vm.state.isDisabled,
320
336
  "closable": true,
321
- "size": _vm.state.collapseTagSize
337
+ "size": _vm.state.collapseTagSize,
338
+ "maxWidth": _vm.maxTagWidth
322
339
  },
323
340
  on: {
324
341
  "close": function close($event) {
325
342
  return _vm.toggleCheckAll(false);
326
343
  }
327
344
  }
328
- }, [_vm._v(" " + _vm._s(_vm.allText || _vm.t("ui.base.all")) + " ")]) : [_vm.hoverExpand || _vm.clickExpand ? _c("tiny-tag", {
345
+ }, [_vm._v(" " + _vm._s(_vm.allText || _vm.t("ui.base.all")) + " ")]) : [_vm.hoverExpand || _vm.clickExpand && !_vm.state.showCollapseTag ? _c("tiny-tag", {
329
346
  key: "tags-collapse",
330
- class: ["tiny-base-select__tags-collapse", {
347
+ class: ["tiny-base-select__tags-collapse", "cursor-pointer", {
331
348
  "is-hidden": _vm.state.isHidden || _vm.state.isDisabled
332
349
  }],
333
350
  attrs: {
334
351
  "type": _vm.state.getTagType,
335
352
  "data-tag": "tags-collapse",
336
- "only-icon": "",
353
+ "only-icon": !_vm.hoverExpand,
337
354
  "closable": false,
338
- "size": _vm.state.collapseTagSize
355
+ "size": _vm.state.collapseTagSize,
356
+ "maxWidth": _vm.maxTagWidth
339
357
  },
340
358
  on: {
341
359
  "click": function click($event) {
@@ -355,7 +373,8 @@ var render = function render2() {
355
373
  "size": _vm.state.collapseTagSize,
356
374
  "hit": item.state ? item.state.hitState : item.hitState,
357
375
  "type": _vm.state.getTagType,
358
- "disable-transitions": ""
376
+ "disable-transitions": "",
377
+ "maxWidth": _vm.maxTagWidth
359
378
  },
360
379
  on: {
361
380
  "close": function close($event) {
@@ -364,8 +383,9 @@ var render = function render2() {
364
383
  }
365
384
  }, [_c("tiny-tooltip", {
366
385
  attrs: {
367
- "effect": "light",
368
- "placement": "top"
386
+ "effect": _vm.tooltipConfig.effect || "light",
387
+ "placement": _vm.tooltipConfig.placement || "top",
388
+ "popper-class": _vm.tooltipConfig.popperClass || ""
369
389
  },
370
390
  nativeOn: {
371
391
  "mouseenter": function mouseenter($event) {
@@ -400,28 +420,9 @@ var render = function render2() {
400
420
  }
401
421
  }
402
422
  }, [_vm._v(" " + _vm._s(_vm.t("ui.select.collapse")) + " "), _c("icon-chevron-up")], 1) : _vm._e()]], 2) : _vm._e()]) : _c("span", {
403
- staticClass: "tiny-base-select__tags-text is-disabled"
404
- }, [_c("tiny-tooltip", {
405
- attrs: {
406
- "effect": "light",
407
- "placement": "top",
408
- "disabled": !_vm.showTips
409
- },
410
- scopedSlots: _vm._u([{
411
- key: "content",
412
- fn: function fn() {
413
- return [_c("div", {
414
- class: [_vm.state.showTips && "tiny-base-select__show-tips", "tiny-base-select__show-common"]
415
- }, [_vm.slots.label ? _c("span", _vm._l(_vm.state.selected, function(item) {
416
- return _c("span", {
417
- key: _vm.getValueKey(item)
418
- }, [_vm._t("label", null, {
419
- "item": item
420
- })], 2);
421
- }), 0) : _c("span", [_vm._v(_vm._s(_vm.disabledTooltipContent || _vm.state.disabledTooltipContent))])])];
422
- },
423
- proxy: true
424
- }], null, true)
423
+ class: ["tiny-base-select__tags-text", "is-display-only", {
424
+ "is-disabled": _vm.state.isDisabled
425
+ }]
425
426
  }, [_c("span", _vm._l(_vm.state.selected, function(item) {
426
427
  return _c("span", {
427
428
  key: item.value
@@ -430,7 +431,7 @@ var render = function render2() {
430
431
  }, {
431
432
  "item": item
432
433
  }), _vm._v("; ")], 2);
433
- }), 0)])], 1), _c("input", {
434
+ }), 0)]), _c("input", {
434
435
  directives: [{
435
436
  name: "show",
436
437
  rawName: "v-show",
@@ -447,8 +448,8 @@ var render = function render2() {
447
448
  class: [_vm.state.selectSize ? "is-" + _vm.state.selectSize : ""],
448
449
  style: {
449
450
  "flex-grow": "1",
450
- width: _vm.state.inputLength / (_vm.state.inputWidth - 32) + "%",
451
- "max-width": _vm.state.inputWidth - 42 + "px",
451
+ width: _vm.state.inputWidth > 0 ? _vm.state.inputLength / (_vm.state.inputWidth - 32) + "%" : "auto",
452
+ "max-width": _vm.state.inputWidth > 0 ? _vm.state.inputWidth - 42 + "px" : "none",
452
453
  height: "auto"
453
454
  },
454
455
  attrs: {
@@ -500,7 +501,9 @@ var render = function render2() {
500
501
  class: {
501
502
  "is-focus": _vm.state.visible,
502
503
  overflow: _vm.state.overflow,
503
- "is-show-close": _vm.state.showClose
504
+ "is-show-close": _vm.state.showClose,
505
+ "show-copy": _vm.copyable,
506
+ "show-clear": _vm.clearable
504
507
  },
505
508
  attrs: {
506
509
  "tiny_mode": "pc",
@@ -510,12 +513,14 @@ var render = function render2() {
510
513
  "id": _vm.id,
511
514
  "autocomplete": _vm.autocomplete,
512
515
  "size": _vm.state.selectSize,
516
+ "showTooltip": false,
513
517
  "disabled": _vm.state.selectDisabled,
514
518
  "readonly": _vm.state.readonly,
515
519
  "display-only": _vm.state.isDisplayOnly,
516
520
  "display-only-content": _vm.state.displayOnlyContent,
517
521
  "unselectable": _vm.state.readonly ? "on" : "off",
518
522
  "validate-event": false,
523
+ "show-empty-value": _vm.showEmptyValue,
519
524
  "input-box-type": _vm.inputBoxType,
520
525
  "tabindex": _vm.multiple && _vm.filterable ? "-1" : _vm.tabindex
521
526
  },
@@ -564,7 +569,7 @@ var render = function render2() {
564
569
  } : null, {
565
570
  key: "suffix",
566
571
  fn: function fn() {
567
- return [_vm._t("suffix"), _vm.showLimitText && _vm.multiple && _vm.multipleLimit ? _c("span", {
572
+ return [_vm._t("suffix"), _vm.showLimitText && _vm.multiple && _vm.multipleLimit && !_vm.state.showCopy ? _c("span", {
568
573
  staticClass: "tiny-base-select__limit-txt"
569
574
  }, [_vm._v(" " + _vm._s(_vm.state.selected.length) + "/" + _vm._s(_vm.multipleLimit) + " ")]) : _vm.showProportion && _vm.state.selected.length > 0 && _vm.state.options.length > 1 ? _c("span", {
570
575
  staticClass: "tiny-base-select__proportion-txt"
@@ -626,8 +631,8 @@ var render = function render2() {
626
631
  directives: [{
627
632
  name: "show",
628
633
  rawName: "v-show",
629
- value: !_vm.onCopying() && !_vm.hideDrop && _vm.state.visible && _vm.state.emptyText !== false,
630
- expression: "!onCopying() && !hideDrop && state.visible && state.emptyText !== false"
634
+ value: !_vm.onCopying() && !_vm.hideDrop && _vm.state.visible && (_vm.slots.panel || _vm.state.emptyText !== false),
635
+ expression: "!onCopying() && !hideDrop && state.visible && (slots.panel || state.emptyText !== false)"
631
636
  }],
632
637
  ref: "popper",
633
638
  style: _vm.dropStyle,
@@ -643,7 +648,6 @@ var render = function render2() {
643
648
  }, [_c("tiny-input", {
644
649
  ref: "input",
645
650
  attrs: {
646
- "type": "text",
647
651
  "placeholder": _vm.placeholder,
648
652
  "autofocus": ""
649
653
  },
@@ -681,7 +685,7 @@ var render = function render2() {
681
685
  },
682
686
  on: {
683
687
  "update:modelValue": function updateModelValue($event) {
684
- return _vm.handleQueryChange(_vm.state.query);
688
+ return _vm.handleQueryChange(_vm.state.query, false, true);
685
689
  }
686
690
  },
687
691
  scopedSlots: _vm._u([{
@@ -731,7 +735,6 @@ var render = function render2() {
731
735
  value: !_vm.state.emptyFlag && !_vm.loading,
732
736
  expression: "!state.emptyFlag && !loading"
733
737
  }],
734
- key: _vm.state.magicKey,
735
738
  ref: "scrollbar",
736
739
  staticStyle: {
737
740
  "height": "100%"
@@ -781,7 +784,7 @@ var render = function render2() {
781
784
  })];
782
785
  }
783
786
  }], null, true)
784
- })], 1)] : _vm._e(), !_vm.optimization ? _c("tiny-scrollbar", {
787
+ })], 1)] : _vm._e(), !_vm.optimization && !(_vm.state.isDisplayOnly && _vm.options) ? _c("tiny-scrollbar", {
785
788
  directives: [{
786
789
  name: "show",
787
790
  rawName: "v-show",
@@ -825,10 +828,16 @@ var render = function render2() {
825
828
  _vm.state.hoverIndex = -9;
826
829
  }
827
830
  }
831
+ }, [_c("span", {
832
+ staticClass: "tiny-option__checkbox-wrap tiny-select-dropdown__item-checkbox"
828
833
  }, [_c("icon-" + _vm.state.selectCls, {
829
834
  tag: "component",
830
835
  class: ["tiny-svg-size", _vm.state.selectCls]
831
- }), _c("span", [_vm._v(_vm._s(_vm.allText || _vm.t("ui.base.all")))])], 1) : _vm._e(), _vm.multiple && _vm.showCheck && _vm.showAlloption && !_vm.state.multipleLimit && _vm.state.query && !_vm.state.emptyText && !_vm.remote ? _c("li", {
836
+ })], 1), _c("div", {
837
+ staticClass: "tiny-option-wrapper calc-width"
838
+ }, [_c("span", {
839
+ staticClass: "tiny-option-label"
840
+ }, [_vm._v(_vm._s(_vm.allText || _vm.t("ui.base.all")))])])]) : _vm._e(), _vm.multiple && _vm.showCheck && _vm.showAlloption && !_vm.state.multipleLimit && _vm.state.query && !_vm.state.emptyText && !_vm.remote ? _c("li", {
832
841
  staticClass: "tiny-option tiny-select-dropdown__item",
833
842
  class: [{
834
843
  hover: _vm.state.hoverIndex === -9 && _vm.state.filteredSelectCls !== "checked-sur"
@@ -850,10 +859,16 @@ var render = function render2() {
850
859
  _vm.state.hoverIndex = -9;
851
860
  }
852
861
  }
862
+ }, [_c("span", {
863
+ staticClass: "tiny-option__checkbox-wrap tiny-select-dropdown__item-checkbox"
853
864
  }, [_c("icon-" + _vm.state.filteredSelectCls, {
854
865
  tag: "component",
855
866
  class: ["tiny-svg-size", _vm.state.filteredSelectCls]
856
- }), _c("span", [_vm._v(_vm._s(_vm.allText || _vm.t("ui.base.all")))])], 1) : _vm._e(), _vm.state.showNewOption ? _c("tiny-option", {
867
+ })], 1), _c("div", {
868
+ staticClass: "tiny-option-wrapper calc-width"
869
+ }, [_c("span", {
870
+ staticClass: "tiny-option-label"
871
+ }, [_vm._v(_vm._s(_vm.allText || _vm.t("ui.base.all")))])])]) : _vm._e(), _vm.state.showNewOption ? _c("tiny-option", {
857
872
  attrs: {
858
873
  "value": _vm.state.query,
859
874
  "created": ""
@@ -885,25 +900,18 @@ var render = function render2() {
885
900
  }) : _c("p", {
886
901
  staticClass: "tiny-select-dropdown__empty"
887
902
  }, [_vm._v(" " + _vm._s(_vm.state.emptyText) + " ")])], 2) : _c("div", {
888
- staticClass: "tiny-select-dropdown__loading"
903
+ staticClass: "tiny-select-dropdown__loading",
904
+ class: {
905
+ "show-loading-icon": _vm.loading
906
+ }
889
907
  }, [!_vm.loading ? [_vm.showEmptyImage ? _c("span", {
890
908
  staticClass: "tiny-select-dropdown__empty-images"
891
909
  }) : _c("span", {
892
910
  staticClass: "tiny-select-dropdown__empty"
893
- }, [_vm._v(" " + _vm._s(_vm.state.emptyText))])] : _c("svg", {
894
- staticClass: "circular",
895
- attrs: {
896
- "viewBox": "25 25 50 50"
897
- }
898
- }, [_c("circle", {
899
- staticClass: "path",
900
- attrs: {
901
- "cx": "50",
902
- "cy": "50",
903
- "r": "24",
904
- "fill": "none"
905
- }
906
- })])], 2)] : _vm._e(), _vm._t("footer")], 2)], 1)], 2), _vm.hoverExpand && !_vm.state.isDisplayOnly ? _c("div", {
911
+ }, [_vm._v(" " + _vm._s(_vm.state.emptyText))])] : _c(_vm.state.designConfig && _vm.state.designConfig.icons && _vm.state.designConfig.icons.loadingIcon || "icon-loading-shadow", {
912
+ tag: "component",
913
+ staticClass: "circular"
914
+ })], 2)] : _vm._e(), _vm._t("footer")], 2)], 1)], 2), _vm.hoverExpand && !_vm.state.isDisplayOnly ? _c("div", {
907
915
  staticClass: "tiny-base-select__placeholder"
908
916
  }, [_c("input", {
909
917
  staticClass: "tiny-input__inner",
package/package.json CHANGED
@@ -1,30 +1,30 @@
1
1
  {
2
2
  "name": "@opentinyvue/vue-base-select",
3
3
  "type": "module",
4
- "version": "2.27.0",
4
+ "version": "2.29.0",
5
5
  "description": "",
6
6
  "license": "MIT",
7
7
  "sideEffects": false,
8
8
  "main": "./lib/index.js",
9
9
  "module": "./lib/index.js",
10
10
  "dependencies": {
11
- "@opentinyvue/vue-button": "~2.27.0",
12
- "@opentinyvue/vue-checkbox": "~2.27.0",
13
- "@opentinyvue/vue-common": "~2.27.0",
14
- "@opentinyvue/vue-directive": "~2.27.0",
15
- "@opentinyvue/vue-filter-box": "~2.27.0",
16
- "@opentinyvue/vue-icon": "~2.27.0",
17
- "@opentinyvue/vue-input": "~2.27.0",
18
- "@opentinyvue/vue-locale": "~2.27.0",
19
- "@opentinyvue/vue-option": "~2.27.0",
20
- "@opentinyvue/vue-recycle-scroller": "~2.27.0",
21
- "@opentinyvue/vue-renderless": "~3.27.0",
22
- "@opentinyvue/vue-scrollbar": "~2.27.0",
23
- "@opentinyvue/vue-select-dropdown": "~2.27.0",
24
- "@opentinyvue/vue-tag": "~2.27.0",
25
- "@opentinyvue/vue-theme": "~3.27.0",
26
- "@opentinyvue/vue-tooltip": "~2.27.0",
27
- "@opentinyvue/vue-tree": "~2.27.0"
11
+ "@opentinyvue/vue-button": "~2.29.0",
12
+ "@opentinyvue/vue-checkbox": "~2.29.0",
13
+ "@opentinyvue/vue-common": "~2.29.0",
14
+ "@opentinyvue/vue-directive": "~2.29.0",
15
+ "@opentinyvue/vue-filter-box": "~2.29.0",
16
+ "@opentinyvue/vue-icon": "~2.29.0",
17
+ "@opentinyvue/vue-input": "~2.29.0",
18
+ "@opentinyvue/vue-locale": "~2.29.0",
19
+ "@opentinyvue/vue-option": "~2.29.0",
20
+ "@opentinyvue/vue-recycle-scroller": "~2.29.0",
21
+ "@opentinyvue/vue-renderless": "~3.29.0",
22
+ "@opentinyvue/vue-scrollbar": "~2.29.0",
23
+ "@opentinyvue/vue-select-dropdown": "~2.29.0",
24
+ "@opentinyvue/vue-tag": "~2.29.0",
25
+ "@opentinyvue/vue-theme": "~3.29.0",
26
+ "@opentinyvue/vue-tooltip": "~2.29.0",
27
+ "@opentinyvue/vue-tree": "~2.29.0"
28
28
  },
29
29
  "types": "index.d.ts",
30
30
  "scripts": {