vue-devui 1.6.14 → 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.
- package/auto-complete/index.es.js +60 -42
- package/auto-complete/index.umd.js +13 -13
- package/breadcrumb/index.es.js +57 -39
- package/breadcrumb/index.umd.js +1 -1
- package/category-search/index.es.js +93 -44
- package/category-search/index.umd.js +21 -21
- package/checkbox/index.es.js +60 -42
- package/checkbox/index.umd.js +18 -18
- package/code-review/index.es.js +60 -42
- package/code-review/index.umd.js +20 -20
- package/data-grid/index.es.js +60 -42
- package/data-grid/index.umd.js +15 -15
- package/date-picker-pro/index.es.js +60 -42
- package/date-picker-pro/index.umd.js +13 -13
- package/dropdown/index.es.js +57 -39
- package/dropdown/index.umd.js +1 -1
- package/editable-select/index.es.js +66 -43
- package/editable-select/index.umd.js +10 -10
- package/editor-md/index.es.js +69 -44
- package/editor-md/index.umd.js +28 -28
- package/form/index.es.js +60 -42
- package/form/index.umd.js +17 -17
- package/input/index.es.js +59 -41
- package/input/index.umd.js +20 -20
- package/input-number/index.es.js +60 -42
- package/input-number/index.umd.js +19 -19
- package/mention/index.es.js +60 -42
- package/mention/index.umd.js +17 -17
- package/message/index.es.js +13 -13
- package/message/index.umd.js +1 -1
- package/modal/index.es.js +57 -39
- package/modal/index.umd.js +2 -2
- package/overlay/index.es.js +58 -40
- package/overlay/index.umd.js +1 -1
- package/package.json +3 -2
- package/pagination/index.es.js +77 -59
- package/pagination/index.umd.js +18 -18
- package/pagination/style.css +1 -1
- package/popover/index.es.js +60 -42
- package/popover/index.umd.js +15 -15
- package/radio/index.es.js +60 -42
- package/radio/index.umd.js +16 -16
- package/search/index.es.js +60 -42
- package/search/index.umd.js +16 -16
- package/select/index.es.js +77 -59
- package/select/index.umd.js +20 -20
- package/select/style.css +1 -1
- package/splitter/index.es.js +60 -42
- package/splitter/index.umd.js +14 -14
- package/style.css +1 -1
- package/switch/index.es.js +60 -42
- package/switch/index.umd.js +17 -17
- package/table/index.es.js +59 -41
- package/table/index.umd.js +16 -16
- package/textarea/index.es.js +60 -42
- package/textarea/index.umd.js +19 -19
- package/time-picker/index.es.js +59 -41
- package/time-picker/index.umd.js +14 -14
- package/time-select/index.es.js +77 -59
- package/time-select/index.umd.js +18 -18
- package/time-select/style.css +1 -1
- package/tooltip/index.es.js +60 -42
- package/tooltip/index.umd.js +15 -15
- package/tree/index.es.js +59 -41
- package/tree/index.umd.js +14 -14
- package/types/category-search/src/category-search-types.d.ts +5 -0
- package/types/editable-select/src/editable-select-types.d.ts +3 -0
- package/types/overlay/src/flexible-overlay/flexible-overlay-types.d.ts +5 -6
- package/types/overlay/src/flexible-overlay/index.d.ts +9 -0
- package/types/overlay/src/flexible-overlay/use-flexible-overlay.d.ts +11 -2
- package/types/select/src/composables/use-select-content.d.ts +21 -2
- package/types/select/src/select-types.d.ts +7 -44
- package/types/select/src/use-select.d.ts +26 -2
- package/vue-devui.es.js +138 -77
- package/vue-devui.umd.js +74 -74
package/textarea/index.es.js
CHANGED
|
@@ -29,9 +29,9 @@ var __objRest = (source, exclude) => {
|
|
|
29
29
|
}
|
|
30
30
|
return target;
|
|
31
31
|
};
|
|
32
|
-
import { defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, ref, unref, nextTick, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode,
|
|
32
|
+
import { defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, ref, computed, unref, nextTick, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode, onMounted, Teleport, createTextVNode, onBeforeUnmount, shallowRef } from "vue";
|
|
33
33
|
import "clipboard";
|
|
34
|
-
import { offset,
|
|
34
|
+
import { offset, flip, arrow, computePosition } from "@floating-ui/dom";
|
|
35
35
|
const formProps = {
|
|
36
36
|
data: {
|
|
37
37
|
type: Object,
|
|
@@ -3989,7 +3989,7 @@ var lodash = { exports: {} };
|
|
|
3989
3989
|
var delay = baseRest(function(func, wait, args) {
|
|
3990
3990
|
return baseDelay(func, toNumber(wait) || 0, args);
|
|
3991
3991
|
});
|
|
3992
|
-
function
|
|
3992
|
+
function flip2(func) {
|
|
3993
3993
|
return createWrap(func, WRAP_FLIP_FLAG);
|
|
3994
3994
|
}
|
|
3995
3995
|
function memoize(func, resolver) {
|
|
@@ -5113,7 +5113,7 @@ var lodash = { exports: {} };
|
|
|
5113
5113
|
lodash2.flatten = flatten;
|
|
5114
5114
|
lodash2.flattenDeep = flattenDeep;
|
|
5115
5115
|
lodash2.flattenDepth = flattenDepth;
|
|
5116
|
-
lodash2.flip =
|
|
5116
|
+
lodash2.flip = flip2;
|
|
5117
5117
|
lodash2.flow = flow;
|
|
5118
5118
|
lodash2.flowRight = flowRight;
|
|
5119
5119
|
lodash2.fromPairs = fromPairs;
|
|
@@ -5819,18 +5819,12 @@ const flexibleOverlayProps = {
|
|
|
5819
5819
|
clickEventBubble: {
|
|
5820
5820
|
type: Boolean,
|
|
5821
5821
|
default: false
|
|
5822
|
+
},
|
|
5823
|
+
fitOriginWidth: {
|
|
5824
|
+
type: Boolean,
|
|
5825
|
+
default: false
|
|
5822
5826
|
}
|
|
5823
5827
|
};
|
|
5824
|
-
function getScrollParent(element) {
|
|
5825
|
-
const overflowRegex = /(auto|scroll|hidden)/;
|
|
5826
|
-
for (let parent = element; parent = parent.parentElement; parent.parentElement !== document.body) {
|
|
5827
|
-
const style = window.getComputedStyle(parent);
|
|
5828
|
-
if (overflowRegex.test(style.overflow + style.overflowX + style.overflowY)) {
|
|
5829
|
-
return parent;
|
|
5830
|
-
}
|
|
5831
|
-
}
|
|
5832
|
-
return window;
|
|
5833
|
-
}
|
|
5834
5828
|
function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
|
|
5835
5829
|
let { x, y } = point;
|
|
5836
5830
|
if (!isArrowCenter) {
|
|
@@ -5851,9 +5845,18 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
|
|
|
5851
5845
|
return { x, y };
|
|
5852
5846
|
}
|
|
5853
5847
|
function useOverlay(props, emit) {
|
|
5848
|
+
const { fitOriginWidth, position, showArrow } = toRefs(props);
|
|
5854
5849
|
const overlayRef = ref();
|
|
5855
5850
|
const arrowRef = ref();
|
|
5856
|
-
|
|
5851
|
+
const overlayWidth = ref(0);
|
|
5852
|
+
let originObserver;
|
|
5853
|
+
const styles = computed(() => {
|
|
5854
|
+
if (fitOriginWidth.value) {
|
|
5855
|
+
return { width: overlayWidth.value + "px" };
|
|
5856
|
+
} else {
|
|
5857
|
+
return {};
|
|
5858
|
+
}
|
|
5859
|
+
});
|
|
5857
5860
|
const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
|
|
5858
5861
|
const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
|
|
5859
5862
|
const staticSide = {
|
|
@@ -5874,54 +5877,67 @@ function useOverlay(props, emit) {
|
|
|
5874
5877
|
const hostEl = props.origin;
|
|
5875
5878
|
const overlayEl = unref(overlayRef.value);
|
|
5876
5879
|
const arrowEl = unref(arrowRef.value);
|
|
5877
|
-
const
|
|
5878
|
-
|
|
5879
|
-
|
|
5880
|
-
|
|
5881
|
-
|
|
5882
|
-
})
|
|
5883
|
-
];
|
|
5884
|
-
props.showArrow && middleware.push(arrow({ element: arrowEl }));
|
|
5885
|
-
props.shiftOffset !== void 0 && middleware.push(shift());
|
|
5886
|
-
if (!overlayEl) {
|
|
5887
|
-
return;
|
|
5880
|
+
const [mainPosition, ...fallbackPosition] = position.value;
|
|
5881
|
+
const middleware = [offset(props.offset)];
|
|
5882
|
+
middleware.push(fallbackPosition.length ? flip({ fallbackPlacements: fallbackPosition }) : flip());
|
|
5883
|
+
if (showArrow.value) {
|
|
5884
|
+
middleware.push(arrow({ element: arrowRef.value }));
|
|
5888
5885
|
}
|
|
5889
5886
|
const { x, y, placement, middlewareData } = await computePosition(hostEl, overlayEl, {
|
|
5890
5887
|
strategy: "fixed",
|
|
5888
|
+
placement: mainPosition,
|
|
5891
5889
|
middleware
|
|
5892
5890
|
});
|
|
5893
5891
|
let applyX = x;
|
|
5894
5892
|
let applyY = y;
|
|
5895
|
-
if (props.shiftOffset !== void 0) {
|
|
5896
|
-
const { x: shiftX, y: shiftY } = middlewareData.shift;
|
|
5897
|
-
shiftX < 0 && (applyX -= props.shiftOffset);
|
|
5898
|
-
shiftX > 0 && (applyX += props.shiftOffset);
|
|
5899
|
-
shiftY < 0 && (applyY -= props.shiftOffset);
|
|
5900
|
-
shiftY > 0 && (applyY += props.shiftOffset);
|
|
5901
|
-
}
|
|
5902
5893
|
emit("positionChange", placement);
|
|
5903
5894
|
Object.assign(overlayEl.style, { top: `${applyY}px`, left: `${applyX}px` });
|
|
5904
5895
|
props.showArrow && updateArrowPosition(arrowEl, placement, middlewareData.arrow, overlayEl);
|
|
5905
5896
|
};
|
|
5897
|
+
const scrollCallback = (e) => {
|
|
5898
|
+
var _a, _b;
|
|
5899
|
+
const scrollElement = e.target;
|
|
5900
|
+
if (scrollElement == null ? void 0 : scrollElement.contains((_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin)) {
|
|
5901
|
+
updatePosition();
|
|
5902
|
+
}
|
|
5903
|
+
};
|
|
5904
|
+
const updateWidth = (originEl) => {
|
|
5905
|
+
overlayWidth.value = originEl.getBoundingClientRect().width;
|
|
5906
|
+
updatePosition();
|
|
5907
|
+
};
|
|
5908
|
+
const observeOrigin = () => {
|
|
5909
|
+
var _a, _b;
|
|
5910
|
+
if (fitOriginWidth.value && typeof window !== "undefined") {
|
|
5911
|
+
const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
|
|
5912
|
+
if (originEl) {
|
|
5913
|
+
originObserver = new window.ResizeObserver(() => updateWidth(originEl));
|
|
5914
|
+
originObserver.observe(originEl);
|
|
5915
|
+
}
|
|
5916
|
+
}
|
|
5917
|
+
};
|
|
5918
|
+
const unobserveOrigin = () => {
|
|
5919
|
+
var _a, _b;
|
|
5920
|
+
const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
|
|
5921
|
+
originEl && (originObserver == null ? void 0 : originObserver.unobserve(originEl));
|
|
5922
|
+
};
|
|
5906
5923
|
watch(() => props.modelValue, () => {
|
|
5907
5924
|
if (props.modelValue && props.origin) {
|
|
5908
|
-
originParent = getScrollParent(props.origin);
|
|
5909
5925
|
nextTick(updatePosition);
|
|
5910
|
-
|
|
5911
|
-
originParent !== window && window.addEventListener("scroll", updatePosition);
|
|
5926
|
+
window.addEventListener("scroll", scrollCallback, true);
|
|
5912
5927
|
window.addEventListener("resize", updatePosition);
|
|
5928
|
+
observeOrigin();
|
|
5913
5929
|
} else {
|
|
5914
|
-
|
|
5915
|
-
originParent !== window && window.removeEventListener("scroll", updatePosition);
|
|
5930
|
+
window.removeEventListener("scroll", scrollCallback, true);
|
|
5916
5931
|
window.removeEventListener("resize", updatePosition);
|
|
5932
|
+
unobserveOrigin();
|
|
5917
5933
|
}
|
|
5918
5934
|
});
|
|
5919
5935
|
onUnmounted(() => {
|
|
5920
|
-
|
|
5921
|
-
originParent !== window && window.removeEventListener("scroll", updatePosition);
|
|
5936
|
+
window.removeEventListener("scroll", scrollCallback, true);
|
|
5922
5937
|
window.removeEventListener("resize", updatePosition);
|
|
5938
|
+
unobserveOrigin();
|
|
5923
5939
|
});
|
|
5924
|
-
return { arrowRef, overlayRef, updatePosition };
|
|
5940
|
+
return { arrowRef, overlayRef, styles, updatePosition };
|
|
5925
5941
|
}
|
|
5926
5942
|
var flexibleOverlay = "";
|
|
5927
5943
|
const FlexibleOverlay = defineComponent({
|
|
@@ -5942,6 +5958,7 @@ const FlexibleOverlay = defineComponent({
|
|
|
5942
5958
|
const {
|
|
5943
5959
|
arrowRef,
|
|
5944
5960
|
overlayRef,
|
|
5961
|
+
styles,
|
|
5945
5962
|
updatePosition
|
|
5946
5963
|
} = useOverlay(props, emit);
|
|
5947
5964
|
expose({
|
|
@@ -5951,7 +5968,8 @@ const FlexibleOverlay = defineComponent({
|
|
|
5951
5968
|
var _a;
|
|
5952
5969
|
return props.modelValue && createVNode("div", mergeProps({
|
|
5953
5970
|
"ref": overlayRef,
|
|
5954
|
-
"class": ns2.b()
|
|
5971
|
+
"class": ns2.b(),
|
|
5972
|
+
"style": styles.value
|
|
5955
5973
|
}, attrs, {
|
|
5956
5974
|
"onClick": withModifiers(() => ({}), [clickEventBubble.value ? "" : "stop"]),
|
|
5957
5975
|
"onPointerup": withModifiers(() => ({}), ["stop"])
|