vue-devui 1.6.15 → 1.6.16

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 (75) hide show
  1. package/auto-complete/index.es.js +41 -4
  2. package/auto-complete/index.umd.js +12 -12
  3. package/breadcrumb/index.es.js +40 -3
  4. package/breadcrumb/index.umd.js +1 -1
  5. package/category-search/index.es.js +74 -6
  6. package/category-search/index.umd.js +21 -21
  7. package/checkbox/index.es.js +41 -4
  8. package/checkbox/index.umd.js +16 -16
  9. package/code-review/index.es.js +41 -4
  10. package/code-review/index.umd.js +17 -17
  11. package/data-grid/index.es.js +41 -4
  12. package/data-grid/index.umd.js +14 -14
  13. package/date-picker-pro/index.es.js +41 -4
  14. package/date-picker-pro/index.umd.js +8 -8
  15. package/dropdown/index.es.js +40 -3
  16. package/dropdown/index.umd.js +1 -1
  17. package/editable-select/index.es.js +47 -5
  18. package/editable-select/index.umd.js +15 -15
  19. package/editor-md/index.es.js +50 -6
  20. package/editor-md/index.umd.js +26 -26
  21. package/form/index.es.js +41 -4
  22. package/form/index.umd.js +14 -14
  23. package/input/index.es.js +40 -3
  24. package/input/index.umd.js +19 -19
  25. package/input-number/index.es.js +41 -4
  26. package/input-number/index.umd.js +18 -18
  27. package/mention/index.es.js +41 -4
  28. package/mention/index.umd.js +19 -19
  29. package/message/index.es.js +13 -13
  30. package/message/index.umd.js +1 -1
  31. package/modal/index.es.js +40 -3
  32. package/modal/index.umd.js +2 -2
  33. package/overlay/index.es.js +41 -4
  34. package/overlay/index.umd.js +1 -1
  35. package/package.json +2 -1
  36. package/pagination/index.es.js +58 -21
  37. package/pagination/index.umd.js +17 -17
  38. package/pagination/style.css +1 -1
  39. package/popover/index.es.js +41 -4
  40. package/popover/index.umd.js +9 -9
  41. package/radio/index.es.js +41 -4
  42. package/radio/index.umd.js +17 -17
  43. package/search/index.es.js +41 -4
  44. package/search/index.umd.js +17 -17
  45. package/select/index.es.js +58 -21
  46. package/select/index.umd.js +19 -19
  47. package/select/style.css +1 -1
  48. package/splitter/index.es.js +41 -4
  49. package/splitter/index.umd.js +15 -15
  50. package/style.css +1 -1
  51. package/switch/index.es.js +41 -4
  52. package/switch/index.umd.js +14 -14
  53. package/table/index.es.js +40 -3
  54. package/table/index.umd.js +15 -15
  55. package/textarea/index.es.js +41 -4
  56. package/textarea/index.umd.js +16 -16
  57. package/time-picker/index.es.js +40 -3
  58. package/time-picker/index.umd.js +15 -15
  59. package/time-select/index.es.js +58 -21
  60. package/time-select/index.umd.js +17 -17
  61. package/time-select/style.css +1 -1
  62. package/tooltip/index.es.js +41 -4
  63. package/tooltip/index.umd.js +12 -12
  64. package/tree/index.es.js +40 -3
  65. package/tree/index.umd.js +10 -10
  66. package/types/category-search/src/category-search-types.d.ts +5 -0
  67. package/types/editable-select/src/editable-select-types.d.ts +3 -0
  68. package/types/overlay/src/flexible-overlay/flexible-overlay-types.d.ts +5 -6
  69. package/types/overlay/src/flexible-overlay/index.d.ts +9 -0
  70. package/types/overlay/src/flexible-overlay/use-flexible-overlay.d.ts +11 -2
  71. package/types/select/src/composables/use-select-content.d.ts +21 -2
  72. package/types/select/src/select-types.d.ts +7 -44
  73. package/types/select/src/use-select.d.ts +26 -2
  74. package/vue-devui.es.js +121 -41
  75. package/vue-devui.umd.js +74 -74
@@ -33,7 +33,7 @@ var __publicField = (obj, key, value) => {
33
33
  __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
34
34
  return value;
35
35
  };
36
- import { ref, nextTick, defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, unref, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode, computed, onMounted, Teleport, createTextVNode, onBeforeUnmount, render, getCurrentInstance, resolveDirective, vShow, resolveDynamicComponent, isVNode } from "vue";
36
+ import { ref, nextTick, defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, computed, unref, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode, onMounted, Teleport, createTextVNode, onBeforeUnmount, render, getCurrentInstance, resolveDirective, vShow, resolveDynamicComponent, isVNode } from "vue";
37
37
  import "clipboard";
38
38
  import { offset, flip, arrow, computePosition } from "@floating-ui/dom";
39
39
  const defaultFormatter = (item) => {
@@ -6219,6 +6219,10 @@ const flexibleOverlayProps = {
6219
6219
  clickEventBubble: {
6220
6220
  type: Boolean,
6221
6221
  default: false
6222
+ },
6223
+ fitOriginWidth: {
6224
+ type: Boolean,
6225
+ default: false
6222
6226
  }
6223
6227
  };
6224
6228
  function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
@@ -6241,9 +6245,18 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
6241
6245
  return { x, y };
6242
6246
  }
6243
6247
  function useOverlay(props, emit) {
6244
- const { position, showArrow } = toRefs(props);
6248
+ const { fitOriginWidth, position, showArrow } = toRefs(props);
6245
6249
  const overlayRef = ref();
6246
6250
  const arrowRef = ref();
6251
+ const overlayWidth = ref(0);
6252
+ let originObserver;
6253
+ const styles = computed(() => {
6254
+ if (fitOriginWidth.value) {
6255
+ return { width: overlayWidth.value + "px" };
6256
+ } else {
6257
+ return {};
6258
+ }
6259
+ });
6247
6260
  const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
6248
6261
  const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
6249
6262
  const staticSide = {
@@ -6288,21 +6301,43 @@ function useOverlay(props, emit) {
6288
6301
  updatePosition();
6289
6302
  }
6290
6303
  };
6304
+ const updateWidth = (originEl) => {
6305
+ overlayWidth.value = originEl.getBoundingClientRect().width;
6306
+ updatePosition();
6307
+ };
6308
+ const observeOrigin = () => {
6309
+ var _a, _b;
6310
+ if (fitOriginWidth.value && typeof window !== "undefined") {
6311
+ const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
6312
+ if (originEl) {
6313
+ originObserver = new window.ResizeObserver(() => updateWidth(originEl));
6314
+ originObserver.observe(originEl);
6315
+ }
6316
+ }
6317
+ };
6318
+ const unobserveOrigin = () => {
6319
+ var _a, _b;
6320
+ const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
6321
+ originEl && (originObserver == null ? void 0 : originObserver.unobserve(originEl));
6322
+ };
6291
6323
  watch(() => props.modelValue, () => {
6292
6324
  if (props.modelValue && props.origin) {
6293
6325
  nextTick(updatePosition);
6294
6326
  window.addEventListener("scroll", scrollCallback, true);
6295
6327
  window.addEventListener("resize", updatePosition);
6328
+ observeOrigin();
6296
6329
  } else {
6297
6330
  window.removeEventListener("scroll", scrollCallback, true);
6298
6331
  window.removeEventListener("resize", updatePosition);
6332
+ unobserveOrigin();
6299
6333
  }
6300
6334
  });
6301
6335
  onUnmounted(() => {
6302
6336
  window.removeEventListener("scroll", scrollCallback, true);
6303
6337
  window.removeEventListener("resize", updatePosition);
6338
+ unobserveOrigin();
6304
6339
  });
6305
- return { arrowRef, overlayRef, updatePosition };
6340
+ return { arrowRef, overlayRef, styles, updatePosition };
6306
6341
  }
6307
6342
  var flexibleOverlay = "";
6308
6343
  const FlexibleOverlay = defineComponent({
@@ -6323,6 +6358,7 @@ const FlexibleOverlay = defineComponent({
6323
6358
  const {
6324
6359
  arrowRef,
6325
6360
  overlayRef,
6361
+ styles,
6326
6362
  updatePosition
6327
6363
  } = useOverlay(props, emit);
6328
6364
  expose({
@@ -6332,7 +6368,8 @@ const FlexibleOverlay = defineComponent({
6332
6368
  var _a;
6333
6369
  return props.modelValue && createVNode("div", mergeProps({
6334
6370
  "ref": overlayRef,
6335
- "class": ns2.b()
6371
+ "class": ns2.b(),
6372
+ "style": styles.value
6336
6373
  }, attrs, {
6337
6374
  "onClick": withModifiers(() => ({}), [clickEventBubble.value ? "" : "stop"]),
6338
6375
  "onPointerup": withModifiers(() => ({}), ["stop"])