vue-devui 1.6.36-alpha.0 → 1.6.36-alpha.2

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 (67) hide show
  1. package/auto-complete/index.es.js +17 -0
  2. package/auto-complete/index.umd.js +17 -17
  3. package/breadcrumb/index.es.js +17 -0
  4. package/breadcrumb/index.umd.js +2 -2
  5. package/category-search/index.es.js +103 -16
  6. package/category-search/index.umd.js +23 -23
  7. package/checkbox/index.es.js +17 -0
  8. package/checkbox/index.umd.js +13 -13
  9. package/code-review/index.es.js +17 -0
  10. package/code-review/index.umd.js +16 -16
  11. package/data-grid/index.es.js +17 -0
  12. package/data-grid/index.umd.js +17 -17
  13. package/date-picker-pro/index.es.js +17 -0
  14. package/date-picker-pro/index.umd.js +18 -18
  15. package/dropdown/index.es.js +17 -0
  16. package/dropdown/index.umd.js +2 -2
  17. package/editable-select/index.es.js +17 -0
  18. package/editable-select/index.umd.js +12 -12
  19. package/editor-md/index.es.js +17 -0
  20. package/editor-md/index.umd.js +19 -19
  21. package/form/index.es.js +17 -0
  22. package/form/index.umd.js +20 -20
  23. package/input/index.es.js +17 -0
  24. package/input/index.umd.js +15 -15
  25. package/input-number/index.es.js +17 -0
  26. package/input-number/index.umd.js +20 -20
  27. package/mention/index.es.js +17 -0
  28. package/mention/index.umd.js +21 -21
  29. package/modal/index.es.js +17 -0
  30. package/modal/index.umd.js +2 -2
  31. package/overlay/index.es.js +17 -0
  32. package/overlay/index.umd.js +1 -1
  33. package/package.json +1 -1
  34. package/pagination/index.es.js +18 -2
  35. package/pagination/index.umd.js +16 -16
  36. package/popover/index.es.js +17 -0
  37. package/popover/index.umd.js +16 -16
  38. package/radio/index.es.js +17 -0
  39. package/radio/index.umd.js +20 -20
  40. package/search/index.es.js +17 -0
  41. package/search/index.umd.js +14 -14
  42. package/select/index.es.js +18 -2
  43. package/select/index.umd.js +15 -15
  44. package/splitter/index.es.js +17 -0
  45. package/splitter/index.umd.js +9 -9
  46. package/switch/index.es.js +17 -0
  47. package/switch/index.umd.js +20 -20
  48. package/table/index.es.js +17 -0
  49. package/table/index.umd.js +9 -9
  50. package/tag/index.es.js +1 -2
  51. package/tag/index.umd.js +1 -1
  52. package/textarea/index.es.js +17 -0
  53. package/textarea/index.umd.js +21 -21
  54. package/time-picker/index.es.js +17 -0
  55. package/time-picker/index.umd.js +18 -18
  56. package/time-select/index.es.js +18 -2
  57. package/time-select/index.umd.js +17 -17
  58. package/tooltip/index.es.js +17 -0
  59. package/tooltip/index.umd.js +12 -12
  60. package/tree/index.es.js +17 -0
  61. package/tree/index.umd.js +13 -13
  62. package/types/category-search/src/category-search-types.d.ts +11 -0
  63. package/types/category-search/src/composables/use-category-selected-tags.d.ts +15 -0
  64. package/types/overlay/src/flexible-overlay/flexible-overlay-types.d.ts +4 -0
  65. package/types/overlay/src/flexible-overlay/index.d.ts +3 -0
  66. package/vue-devui.es.js +103 -16
  67. package/vue-devui.umd.js +71 -71
@@ -150,6 +150,10 @@ const flexibleOverlayProps = {
150
150
  fitOriginWidth: {
151
151
  type: Boolean,
152
152
  default: false
153
+ },
154
+ autoUpdatePosition: {
155
+ type: Boolean,
156
+ default: false
153
157
  }
154
158
  };
155
159
  function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
@@ -177,6 +181,7 @@ function useOverlay(props, emit) {
177
181
  const arrowRef = ref();
178
182
  const overlayWidth = ref(0);
179
183
  let originObserver;
184
+ let overlayObserver;
180
185
  const styles = computed(() => {
181
186
  if (fitOriginWidth.value) {
182
187
  return { width: overlayWidth.value + "px" };
@@ -247,6 +252,15 @@ function useOverlay(props, emit) {
247
252
  const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
248
253
  originEl && (originObserver == null ? void 0 : originObserver.unobserve(originEl));
249
254
  };
255
+ const observeOverlay = () => {
256
+ if (props.autoUpdatePosition && typeof window !== "undefined" && overlayRef.value) {
257
+ overlayObserver = new window.ResizeObserver(updatePosition);
258
+ overlayObserver.observe(overlayRef.value);
259
+ }
260
+ };
261
+ const unobserveOverlay = () => {
262
+ overlayRef.value && (overlayObserver == null ? void 0 : overlayObserver.unobserve(overlayRef.value));
263
+ };
250
264
  watch(
251
265
  () => props.modelValue,
252
266
  () => {
@@ -255,10 +269,12 @@ function useOverlay(props, emit) {
255
269
  window.addEventListener("scroll", scrollCallback, true);
256
270
  window.addEventListener("resize", updatePosition);
257
271
  observeOrigin();
272
+ nextTick(observeOverlay);
258
273
  } else {
259
274
  window.removeEventListener("scroll", scrollCallback, true);
260
275
  window.removeEventListener("resize", updatePosition);
261
276
  unobserveOrigin();
277
+ unobserveOverlay();
262
278
  }
263
279
  }
264
280
  );
@@ -266,6 +282,7 @@ function useOverlay(props, emit) {
266
282
  window.removeEventListener("scroll", scrollCallback, true);
267
283
  window.removeEventListener("resize", updatePosition);
268
284
  unobserveOrigin();
285
+ unobserveOverlay();
269
286
  });
270
287
  return { arrowRef, overlayRef, styles, updatePosition };
271
288
  }