vue-devui 1.6.13 → 1.6.15

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 (66) hide show
  1. package/auto-complete/index.es.js +20 -39
  2. package/auto-complete/index.umd.js +10 -10
  3. package/breadcrumb/index.es.js +25 -39
  4. package/breadcrumb/index.umd.js +1 -1
  5. package/category-search/index.es.js +27 -41
  6. package/category-search/index.umd.js +13 -13
  7. package/category-search/style.css +1 -1
  8. package/checkbox/index.es.js +20 -39
  9. package/checkbox/index.umd.js +11 -11
  10. package/code-review/index.es.js +20 -39
  11. package/code-review/index.umd.js +17 -17
  12. package/data-grid/index.es.js +27 -41
  13. package/data-grid/index.umd.js +12 -12
  14. package/date-picker-pro/index.es.js +20 -39
  15. package/date-picker-pro/index.umd.js +13 -13
  16. package/dropdown/index.es.js +25 -39
  17. package/dropdown/index.umd.js +1 -1
  18. package/editable-select/index.es.js +20 -39
  19. package/editable-select/index.umd.js +14 -14
  20. package/editor-md/index.es.js +27 -41
  21. package/editor-md/index.umd.js +23 -23
  22. package/form/index.es.js +20 -39
  23. package/form/index.umd.js +12 -12
  24. package/input/index.es.js +20 -39
  25. package/input/index.umd.js +10 -10
  26. package/input-number/index.es.js +20 -39
  27. package/input-number/index.umd.js +18 -18
  28. package/mention/index.es.js +20 -39
  29. package/mention/index.umd.js +18 -18
  30. package/modal/index.es.js +18 -37
  31. package/modal/index.umd.js +2 -2
  32. package/overlay/index.es.js +18 -37
  33. package/overlay/index.umd.js +1 -1
  34. package/package.json +2 -2
  35. package/pagination/index.es.js +27 -41
  36. package/pagination/index.umd.js +13 -13
  37. package/popover/index.es.js +20 -39
  38. package/popover/index.umd.js +14 -14
  39. package/radio/index.es.js +20 -39
  40. package/radio/index.umd.js +17 -17
  41. package/search/index.es.js +20 -39
  42. package/search/index.umd.js +12 -12
  43. package/select/index.es.js +20 -39
  44. package/select/index.umd.js +16 -16
  45. package/splitter/index.es.js +20 -39
  46. package/splitter/index.umd.js +16 -16
  47. package/style.css +1 -1
  48. package/switch/index.es.js +20 -39
  49. package/switch/index.umd.js +12 -12
  50. package/table/index.es.js +27 -41
  51. package/table/index.umd.js +14 -14
  52. package/textarea/index.es.js +20 -39
  53. package/textarea/index.umd.js +15 -15
  54. package/time-picker/index.es.js +20 -39
  55. package/time-picker/index.umd.js +16 -16
  56. package/time-select/index.es.js +20 -39
  57. package/time-select/index.umd.js +10 -10
  58. package/tooltip/index.es.js +20 -39
  59. package/tooltip/index.umd.js +17 -17
  60. package/tree/index.es.js +20 -39
  61. package/tree/index.umd.js +12 -12
  62. package/types/dropdown/src/dropdown-types.d.ts +4 -0
  63. package/types/dropdown/src/dropdown.d.ts +9 -0
  64. package/types/tooltip/src/tooltip.d.ts +1 -1
  65. package/vue-devui.es.js +26 -40
  66. package/vue-devui.umd.js +63 -63
@@ -31,7 +31,7 @@ var __objRest = (source, exclude) => {
31
31
  };
32
32
  import { defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, ref, unref, nextTick, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode, computed, onMounted, Teleport, createTextVNode, onBeforeUnmount, resolveDynamicComponent, getCurrentInstance, shallowRef, resolveDirective } from "vue";
33
33
  import "clipboard";
34
- import { offset, autoPlacement, arrow, shift, computePosition } from "@floating-ui/dom";
34
+ import { offset, flip, arrow, computePosition } from "@floating-ui/dom";
35
35
  const searchProps = {
36
36
  size: {
37
37
  type: String
@@ -4045,7 +4045,7 @@ var lodash = { exports: {} };
4045
4045
  var delay = baseRest(function(func, wait, args) {
4046
4046
  return baseDelay(func, toNumber(wait) || 0, args);
4047
4047
  });
4048
- function flip(func) {
4048
+ function flip2(func) {
4049
4049
  return createWrap(func, WRAP_FLIP_FLAG);
4050
4050
  }
4051
4051
  function memoize(func, resolver) {
@@ -5169,7 +5169,7 @@ var lodash = { exports: {} };
5169
5169
  lodash2.flatten = flatten;
5170
5170
  lodash2.flattenDeep = flattenDeep;
5171
5171
  lodash2.flattenDepth = flattenDepth;
5172
- lodash2.flip = flip;
5172
+ lodash2.flip = flip2;
5173
5173
  lodash2.flow = flow;
5174
5174
  lodash2.flowRight = flowRight;
5175
5175
  lodash2.fromPairs = fromPairs;
@@ -5877,16 +5877,6 @@ const flexibleOverlayProps = {
5877
5877
  default: false
5878
5878
  }
5879
5879
  };
5880
- function getScrollParent(element) {
5881
- const overflowRegex = /(auto|scroll|hidden)/;
5882
- for (let parent = element; parent = parent.parentElement; parent.parentElement !== document.body) {
5883
- const style = window.getComputedStyle(parent);
5884
- if (overflowRegex.test(style.overflow + style.overflowX + style.overflowY)) {
5885
- return parent;
5886
- }
5887
- }
5888
- return window;
5889
- }
5890
5880
  function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
5891
5881
  let { x, y } = point;
5892
5882
  if (!isArrowCenter) {
@@ -5907,9 +5897,9 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
5907
5897
  return { x, y };
5908
5898
  }
5909
5899
  function useOverlay(props, emit) {
5900
+ const { position, showArrow } = toRefs(props);
5910
5901
  const overlayRef = ref();
5911
5902
  const arrowRef = ref();
5912
- let originParent = null;
5913
5903
  const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
5914
5904
  const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
5915
5905
  const staticSide = {
@@ -5930,51 +5920,42 @@ function useOverlay(props, emit) {
5930
5920
  const hostEl = props.origin;
5931
5921
  const overlayEl = unref(overlayRef.value);
5932
5922
  const arrowEl = unref(arrowRef.value);
5933
- const middleware = [
5934
- offset(props.offset),
5935
- autoPlacement({
5936
- alignment: props.align,
5937
- allowedPlacements: props.position
5938
- })
5939
- ];
5940
- props.showArrow && middleware.push(arrow({ element: arrowEl }));
5941
- props.shiftOffset !== void 0 && middleware.push(shift());
5942
- if (!overlayEl) {
5943
- return;
5923
+ const [mainPosition, ...fallbackPosition] = position.value;
5924
+ const middleware = [offset(props.offset)];
5925
+ middleware.push(fallbackPosition.length ? flip({ fallbackPlacements: fallbackPosition }) : flip());
5926
+ if (showArrow.value) {
5927
+ middleware.push(arrow({ element: arrowRef.value }));
5944
5928
  }
5945
5929
  const { x, y, placement, middlewareData } = await computePosition(hostEl, overlayEl, {
5946
5930
  strategy: "fixed",
5931
+ placement: mainPosition,
5947
5932
  middleware
5948
5933
  });
5949
5934
  let applyX = x;
5950
5935
  let applyY = y;
5951
- if (props.shiftOffset !== void 0) {
5952
- const { x: shiftX, y: shiftY } = middlewareData.shift;
5953
- shiftX < 0 && (applyX -= props.shiftOffset);
5954
- shiftX > 0 && (applyX += props.shiftOffset);
5955
- shiftY < 0 && (applyY -= props.shiftOffset);
5956
- shiftY > 0 && (applyY += props.shiftOffset);
5957
- }
5958
5936
  emit("positionChange", placement);
5959
5937
  Object.assign(overlayEl.style, { top: `${applyY}px`, left: `${applyX}px` });
5960
5938
  props.showArrow && updateArrowPosition(arrowEl, placement, middlewareData.arrow, overlayEl);
5961
5939
  };
5940
+ const scrollCallback = (e) => {
5941
+ var _a, _b;
5942
+ const scrollElement = e.target;
5943
+ if (scrollElement == null ? void 0 : scrollElement.contains((_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin)) {
5944
+ updatePosition();
5945
+ }
5946
+ };
5962
5947
  watch(() => props.modelValue, () => {
5963
5948
  if (props.modelValue && props.origin) {
5964
- originParent = getScrollParent(props.origin);
5965
5949
  nextTick(updatePosition);
5966
- originParent == null ? void 0 : originParent.addEventListener("scroll", updatePosition);
5967
- originParent !== window && window.addEventListener("scroll", updatePosition);
5950
+ window.addEventListener("scroll", scrollCallback, true);
5968
5951
  window.addEventListener("resize", updatePosition);
5969
5952
  } else {
5970
- originParent == null ? void 0 : originParent.removeEventListener("scroll", updatePosition);
5971
- originParent !== window && window.removeEventListener("scroll", updatePosition);
5953
+ window.removeEventListener("scroll", scrollCallback, true);
5972
5954
  window.removeEventListener("resize", updatePosition);
5973
5955
  }
5974
5956
  });
5975
5957
  onUnmounted(() => {
5976
- originParent == null ? void 0 : originParent.removeEventListener("scroll", updatePosition);
5977
- originParent !== window && window.removeEventListener("scroll", updatePosition);
5958
+ window.removeEventListener("scroll", scrollCallback, true);
5978
5959
  window.removeEventListener("resize", updatePosition);
5979
5960
  });
5980
5961
  return { arrowRef, overlayRef, updatePosition };