vue-devui 1.6.15 → 1.6.17
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 +41 -4
- package/auto-complete/index.umd.js +12 -12
- package/breadcrumb/index.es.js +40 -3
- package/breadcrumb/index.umd.js +1 -1
- package/category-search/index.es.js +74 -6
- package/category-search/index.umd.js +21 -21
- package/checkbox/index.es.js +41 -4
- package/checkbox/index.umd.js +16 -16
- package/code-review/index.es.js +41 -4
- package/code-review/index.umd.js +17 -17
- package/data-grid/index.es.js +41 -4
- package/data-grid/index.umd.js +14 -14
- package/date-picker-pro/index.es.js +41 -4
- package/date-picker-pro/index.umd.js +8 -8
- package/dropdown/index.es.js +40 -3
- package/dropdown/index.umd.js +1 -1
- package/editable-select/index.es.js +48 -8
- package/editable-select/index.umd.js +15 -15
- package/editor-md/index.es.js +50 -6
- package/editor-md/index.umd.js +26 -26
- package/form/index.es.js +41 -4
- package/form/index.umd.js +14 -14
- package/input/index.es.js +40 -3
- package/input/index.umd.js +19 -19
- package/input-number/index.es.js +41 -4
- package/input-number/index.umd.js +18 -18
- package/mention/index.es.js +41 -4
- package/mention/index.umd.js +19 -19
- package/message/index.es.js +13 -13
- package/message/index.umd.js +1 -1
- package/modal/index.es.js +40 -3
- package/modal/index.umd.js +2 -2
- package/overlay/index.es.js +41 -4
- package/overlay/index.umd.js +1 -1
- package/package.json +2 -1
- package/pagination/index.es.js +58 -21
- package/pagination/index.umd.js +17 -17
- package/pagination/style.css +1 -1
- package/popover/index.es.js +41 -4
- package/popover/index.umd.js +9 -9
- package/radio/index.es.js +41 -4
- package/radio/index.umd.js +17 -17
- package/search/index.es.js +41 -4
- package/search/index.umd.js +17 -17
- package/select/index.es.js +58 -21
- package/select/index.umd.js +19 -19
- package/select/style.css +1 -1
- package/splitter/index.es.js +41 -4
- package/splitter/index.umd.js +15 -15
- package/style.css +1 -1
- package/switch/index.es.js +41 -4
- package/switch/index.umd.js +14 -14
- package/table/index.es.js +40 -3
- package/table/index.umd.js +15 -15
- package/textarea/index.es.js +41 -4
- package/textarea/index.umd.js +16 -16
- package/time-picker/index.es.js +40 -3
- package/time-picker/index.umd.js +15 -15
- package/time-select/index.es.js +58 -21
- package/time-select/index.umd.js +17 -17
- package/time-select/style.css +1 -1
- package/tooltip/index.es.js +41 -4
- package/tooltip/index.umd.js +12 -12
- package/tree/index.es.js +40 -3
- package/tree/index.umd.js +10 -10
- 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 +122 -44
- package/vue-devui.umd.js +74 -74
package/table/index.es.js
CHANGED
|
@@ -1169,6 +1169,10 @@ const flexibleOverlayProps = {
|
|
|
1169
1169
|
clickEventBubble: {
|
|
1170
1170
|
type: Boolean,
|
|
1171
1171
|
default: false
|
|
1172
|
+
},
|
|
1173
|
+
fitOriginWidth: {
|
|
1174
|
+
type: Boolean,
|
|
1175
|
+
default: false
|
|
1172
1176
|
}
|
|
1173
1177
|
};
|
|
1174
1178
|
function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
|
|
@@ -1191,9 +1195,18 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
|
|
|
1191
1195
|
return { x, y };
|
|
1192
1196
|
}
|
|
1193
1197
|
function useOverlay(props, emit) {
|
|
1194
|
-
const { position, showArrow } = toRefs(props);
|
|
1198
|
+
const { fitOriginWidth, position, showArrow } = toRefs(props);
|
|
1195
1199
|
const overlayRef = ref();
|
|
1196
1200
|
const arrowRef = ref();
|
|
1201
|
+
const overlayWidth = ref(0);
|
|
1202
|
+
let originObserver;
|
|
1203
|
+
const styles = computed(() => {
|
|
1204
|
+
if (fitOriginWidth.value) {
|
|
1205
|
+
return { width: overlayWidth.value + "px" };
|
|
1206
|
+
} else {
|
|
1207
|
+
return {};
|
|
1208
|
+
}
|
|
1209
|
+
});
|
|
1197
1210
|
const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
|
|
1198
1211
|
const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
|
|
1199
1212
|
const staticSide = {
|
|
@@ -1238,21 +1251,43 @@ function useOverlay(props, emit) {
|
|
|
1238
1251
|
updatePosition();
|
|
1239
1252
|
}
|
|
1240
1253
|
};
|
|
1254
|
+
const updateWidth = (originEl) => {
|
|
1255
|
+
overlayWidth.value = originEl.getBoundingClientRect().width;
|
|
1256
|
+
updatePosition();
|
|
1257
|
+
};
|
|
1258
|
+
const observeOrigin = () => {
|
|
1259
|
+
var _a, _b;
|
|
1260
|
+
if (fitOriginWidth.value && typeof window !== "undefined") {
|
|
1261
|
+
const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
|
|
1262
|
+
if (originEl) {
|
|
1263
|
+
originObserver = new window.ResizeObserver(() => updateWidth(originEl));
|
|
1264
|
+
originObserver.observe(originEl);
|
|
1265
|
+
}
|
|
1266
|
+
}
|
|
1267
|
+
};
|
|
1268
|
+
const unobserveOrigin = () => {
|
|
1269
|
+
var _a, _b;
|
|
1270
|
+
const originEl = (_b = (_a = props.origin) == null ? void 0 : _a.$el) != null ? _b : props.origin;
|
|
1271
|
+
originEl && (originObserver == null ? void 0 : originObserver.unobserve(originEl));
|
|
1272
|
+
};
|
|
1241
1273
|
watch(() => props.modelValue, () => {
|
|
1242
1274
|
if (props.modelValue && props.origin) {
|
|
1243
1275
|
nextTick(updatePosition);
|
|
1244
1276
|
window.addEventListener("scroll", scrollCallback, true);
|
|
1245
1277
|
window.addEventListener("resize", updatePosition);
|
|
1278
|
+
observeOrigin();
|
|
1246
1279
|
} else {
|
|
1247
1280
|
window.removeEventListener("scroll", scrollCallback, true);
|
|
1248
1281
|
window.removeEventListener("resize", updatePosition);
|
|
1282
|
+
unobserveOrigin();
|
|
1249
1283
|
}
|
|
1250
1284
|
});
|
|
1251
1285
|
onUnmounted(() => {
|
|
1252
1286
|
window.removeEventListener("scroll", scrollCallback, true);
|
|
1253
1287
|
window.removeEventListener("resize", updatePosition);
|
|
1288
|
+
unobserveOrigin();
|
|
1254
1289
|
});
|
|
1255
|
-
return { arrowRef, overlayRef, updatePosition };
|
|
1290
|
+
return { arrowRef, overlayRef, styles, updatePosition };
|
|
1256
1291
|
}
|
|
1257
1292
|
var flexibleOverlay = "";
|
|
1258
1293
|
const FlexibleOverlay = defineComponent({
|
|
@@ -1273,6 +1308,7 @@ const FlexibleOverlay = defineComponent({
|
|
|
1273
1308
|
const {
|
|
1274
1309
|
arrowRef,
|
|
1275
1310
|
overlayRef,
|
|
1311
|
+
styles,
|
|
1276
1312
|
updatePosition
|
|
1277
1313
|
} = useOverlay(props, emit);
|
|
1278
1314
|
expose({
|
|
@@ -1282,7 +1318,8 @@ const FlexibleOverlay = defineComponent({
|
|
|
1282
1318
|
var _a;
|
|
1283
1319
|
return props.modelValue && createVNode("div", mergeProps({
|
|
1284
1320
|
"ref": overlayRef,
|
|
1285
|
-
"class": ns2.b()
|
|
1321
|
+
"class": ns2.b(),
|
|
1322
|
+
"style": styles.value
|
|
1286
1323
|
}, attrs, {
|
|
1287
1324
|
"onClick": withModifiers(() => ({}), [clickEventBubble.value ? "" : "stop"]),
|
|
1288
1325
|
"onPointerup": withModifiers(() => ({}), ["stop"])
|