vue-devui 1.6.14 → 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 (61) 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 +18 -37
  4. package/breadcrumb/index.umd.js +1 -1
  5. package/category-search/index.es.js +20 -39
  6. package/category-search/index.umd.js +12 -12
  7. package/checkbox/index.es.js +20 -39
  8. package/checkbox/index.umd.js +11 -11
  9. package/code-review/index.es.js +20 -39
  10. package/code-review/index.umd.js +17 -17
  11. package/data-grid/index.es.js +20 -39
  12. package/data-grid/index.umd.js +9 -9
  13. package/date-picker-pro/index.es.js +20 -39
  14. package/date-picker-pro/index.umd.js +13 -13
  15. package/dropdown/index.es.js +18 -37
  16. package/dropdown/index.umd.js +1 -1
  17. package/editable-select/index.es.js +20 -39
  18. package/editable-select/index.umd.js +14 -14
  19. package/editor-md/index.es.js +20 -39
  20. package/editor-md/index.umd.js +22 -22
  21. package/form/index.es.js +20 -39
  22. package/form/index.umd.js +12 -12
  23. package/input/index.es.js +20 -39
  24. package/input/index.umd.js +10 -10
  25. package/input-number/index.es.js +20 -39
  26. package/input-number/index.umd.js +18 -18
  27. package/mention/index.es.js +20 -39
  28. package/mention/index.umd.js +18 -18
  29. package/modal/index.es.js +18 -37
  30. package/modal/index.umd.js +2 -2
  31. package/overlay/index.es.js +18 -37
  32. package/overlay/index.umd.js +1 -1
  33. package/package.json +2 -2
  34. package/pagination/index.es.js +20 -39
  35. package/pagination/index.umd.js +10 -10
  36. package/popover/index.es.js +20 -39
  37. package/popover/index.umd.js +14 -14
  38. package/radio/index.es.js +20 -39
  39. package/radio/index.umd.js +17 -17
  40. package/search/index.es.js +20 -39
  41. package/search/index.umd.js +12 -12
  42. package/select/index.es.js +20 -39
  43. package/select/index.umd.js +16 -16
  44. package/splitter/index.es.js +20 -39
  45. package/splitter/index.umd.js +16 -16
  46. package/switch/index.es.js +20 -39
  47. package/switch/index.umd.js +12 -12
  48. package/table/index.es.js +20 -39
  49. package/table/index.umd.js +10 -10
  50. package/textarea/index.es.js +20 -39
  51. package/textarea/index.umd.js +15 -15
  52. package/time-picker/index.es.js +20 -39
  53. package/time-picker/index.umd.js +16 -16
  54. package/time-select/index.es.js +20 -39
  55. package/time-select/index.umd.js +10 -10
  56. package/tooltip/index.es.js +20 -39
  57. package/tooltip/index.umd.js +17 -17
  58. package/tree/index.es.js +20 -39
  59. package/tree/index.umd.js +12 -12
  60. package/vue-devui.es.js +19 -38
  61. 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, toRef } 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 commonProps = {
36
36
  name: {
37
37
  type: String,
@@ -4099,7 +4099,7 @@ var lodash = { exports: {} };
4099
4099
  var delay = baseRest(function(func, wait, args) {
4100
4100
  return baseDelay(func, toNumber(wait) || 0, args);
4101
4101
  });
4102
- function flip(func) {
4102
+ function flip2(func) {
4103
4103
  return createWrap(func, WRAP_FLIP_FLAG);
4104
4104
  }
4105
4105
  function memoize(func, resolver) {
@@ -5223,7 +5223,7 @@ var lodash = { exports: {} };
5223
5223
  lodash2.flatten = flatten;
5224
5224
  lodash2.flattenDeep = flattenDeep;
5225
5225
  lodash2.flattenDepth = flattenDepth;
5226
- lodash2.flip = flip;
5226
+ lodash2.flip = flip2;
5227
5227
  lodash2.flow = flow;
5228
5228
  lodash2.flowRight = flowRight;
5229
5229
  lodash2.fromPairs = fromPairs;
@@ -5931,16 +5931,6 @@ const flexibleOverlayProps = {
5931
5931
  default: false
5932
5932
  }
5933
5933
  };
5934
- function getScrollParent(element) {
5935
- const overflowRegex = /(auto|scroll|hidden)/;
5936
- for (let parent = element; parent = parent.parentElement; parent.parentElement !== document.body) {
5937
- const style = window.getComputedStyle(parent);
5938
- if (overflowRegex.test(style.overflow + style.overflowX + style.overflowY)) {
5939
- return parent;
5940
- }
5941
- }
5942
- return window;
5943
- }
5944
5934
  function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
5945
5935
  let { x, y } = point;
5946
5936
  if (!isArrowCenter) {
@@ -5961,9 +5951,9 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
5961
5951
  return { x, y };
5962
5952
  }
5963
5953
  function useOverlay(props, emit) {
5954
+ const { position, showArrow } = toRefs(props);
5964
5955
  const overlayRef = ref();
5965
5956
  const arrowRef = ref();
5966
- let originParent = null;
5967
5957
  const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
5968
5958
  const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
5969
5959
  const staticSide = {
@@ -5984,51 +5974,42 @@ function useOverlay(props, emit) {
5984
5974
  const hostEl = props.origin;
5985
5975
  const overlayEl = unref(overlayRef.value);
5986
5976
  const arrowEl = unref(arrowRef.value);
5987
- const middleware = [
5988
- offset(props.offset),
5989
- autoPlacement({
5990
- alignment: props.align,
5991
- allowedPlacements: props.position
5992
- })
5993
- ];
5994
- props.showArrow && middleware.push(arrow({ element: arrowEl }));
5995
- props.shiftOffset !== void 0 && middleware.push(shift());
5996
- if (!overlayEl) {
5997
- return;
5977
+ const [mainPosition, ...fallbackPosition] = position.value;
5978
+ const middleware = [offset(props.offset)];
5979
+ middleware.push(fallbackPosition.length ? flip({ fallbackPlacements: fallbackPosition }) : flip());
5980
+ if (showArrow.value) {
5981
+ middleware.push(arrow({ element: arrowRef.value }));
5998
5982
  }
5999
5983
  const { x, y, placement, middlewareData } = await computePosition(hostEl, overlayEl, {
6000
5984
  strategy: "fixed",
5985
+ placement: mainPosition,
6001
5986
  middleware
6002
5987
  });
6003
5988
  let applyX = x;
6004
5989
  let applyY = y;
6005
- if (props.shiftOffset !== void 0) {
6006
- const { x: shiftX, y: shiftY } = middlewareData.shift;
6007
- shiftX < 0 && (applyX -= props.shiftOffset);
6008
- shiftX > 0 && (applyX += props.shiftOffset);
6009
- shiftY < 0 && (applyY -= props.shiftOffset);
6010
- shiftY > 0 && (applyY += props.shiftOffset);
6011
- }
6012
5990
  emit("positionChange", placement);
6013
5991
  Object.assign(overlayEl.style, { top: `${applyY}px`, left: `${applyX}px` });
6014
5992
  props.showArrow && updateArrowPosition(arrowEl, placement, middlewareData.arrow, overlayEl);
6015
5993
  };
5994
+ const scrollCallback = (e) => {
5995
+ var _a, _b;
5996
+ const scrollElement = e.target;
5997
+ if (scrollElement == null ? void 0 : scrollElement.contains((_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin)) {
5998
+ updatePosition();
5999
+ }
6000
+ };
6016
6001
  watch(() => props.modelValue, () => {
6017
6002
  if (props.modelValue && props.origin) {
6018
- originParent = getScrollParent(props.origin);
6019
6003
  nextTick(updatePosition);
6020
- originParent == null ? void 0 : originParent.addEventListener("scroll", updatePosition);
6021
- originParent !== window && window.addEventListener("scroll", updatePosition);
6004
+ window.addEventListener("scroll", scrollCallback, true);
6022
6005
  window.addEventListener("resize", updatePosition);
6023
6006
  } else {
6024
- originParent == null ? void 0 : originParent.removeEventListener("scroll", updatePosition);
6025
- originParent !== window && window.removeEventListener("scroll", updatePosition);
6007
+ window.removeEventListener("scroll", scrollCallback, true);
6026
6008
  window.removeEventListener("resize", updatePosition);
6027
6009
  }
6028
6010
  });
6029
6011
  onUnmounted(() => {
6030
- originParent == null ? void 0 : originParent.removeEventListener("scroll", updatePosition);
6031
- originParent !== window && window.removeEventListener("scroll", updatePosition);
6012
+ window.removeEventListener("scroll", scrollCallback, true);
6032
6013
  window.removeEventListener("resize", updatePosition);
6033
6014
  });
6034
6015
  return { arrowRef, overlayRef, updatePosition };