@sdata/web-vue 4.4.1 → 4.4.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.
- package/dist/sd.css +20 -5
- package/dist/sd.min.css +2 -2
- package/es/_utils/global-config.js +9 -5
- package/es/anchor/anchor.vue_vue_type_script_setup_true_lang.js +5 -8
- package/es/anchor/utils.d.ts +1 -1
- package/es/anchor/utils.js +6 -1
- package/es/auto-complete/auto-complete.vue.d.ts +6 -6
- package/es/auto-complete/auto-complete.vue_vue_type_script_setup_true_lang.js +22 -6
- package/es/avatar/avatar-group.vue_vue_type_script_setup_true_lang.js +2 -1
- package/es/avatar/avatar.vue_vue_type_script_setup_true_lang.js +3 -3
- package/es/avatar/style/index.css +1 -1
- package/es/avatar/style/index.scss +2 -1
- package/es/badge/badge.vue_vue_type_script_setup_true_lang.js +59 -42
- package/es/basic-crud-table/basic-crud-modal.vue.d.ts +22 -22
- package/es/basic-crud-table/basic-crud-table.vue.d.ts +66 -66
- package/es/basic-crud-table/index.d.ts +198 -198
- package/es/bloom-menu/bloom-menu.vue.d.ts +1 -1
- package/es/bloom-menu/bloom-menu.vue_vue_type_script_setup_true_lang.js +16 -3
- package/es/border-beam/border-beam.vue_vue_type_script_setup_true_lang.js +32 -18
- package/es/breadcrumb/breadcrumb-item.vue_vue_type_script_setup_true_lang.js +3 -3
- package/es/calendar/components/cell.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/calendar/components/event.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/calendar/core/config.js +4 -1
- package/es/calendar/core/events.js +22 -2
- package/es/calendar/default-theme.scss +1 -1
- package/es/calendar/style/index.css +2 -2
- package/es/carousel/carousel.vue.d.ts +5 -1
- package/es/carousel/carousel.vue_vue_type_script_setup_true_lang.js +55 -12
- package/es/carousel/index.d.ts +15 -3
- package/es/cascader/cascader-panel.vue_vue_type_script_setup_true_lang.js +6 -3
- package/es/checkbox/checkbox.vue.d.ts +2 -0
- package/es/checkbox/checkbox.vue_vue_type_script_setup_true_lang.js +12 -6
- package/es/checkbox/index.d.ts +6 -0
- package/es/color-picker/color-picker.vue_vue_type_script_setup_true_lang.js +13 -5
- package/es/color-picker/control-bar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/color-picker/hooks/use-control-block.d.ts +1 -1
- package/es/color-picker/hooks/use-control-block.js +6 -6
- package/es/color-picker/palette.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/comment/comment.vue_vue_type_script_setup_true_lang.js +7 -2
- package/es/config-provider/config-provider.vue_vue_type_script_setup_true_lang.js +7 -6
- package/es/config-provider/theme-provider.vue_vue_type_script_setup_true_lang.js +3 -0
- package/es/copy/copy.vue_vue_type_script_setup_true_lang.js +23 -8
- package/es/cropper/cropper.vue_vue_type_script_setup_true_lang.js +16 -7
- package/es/drawer/drawer.vue.d.ts +2 -2
- package/es/drawer/drawer.vue_vue_type_script_setup_true_lang.js +5 -12
- package/es/drawer/index.d.ts +3 -3
- package/es/dropdown/dropdown-panel.vue.d.ts +0 -9
- package/es/dropdown/dropdown-panel.vue_vue_type_script_setup_true_lang.js +0 -4
- package/es/dropdown/dropdown.vue.d.ts +16 -3
- package/es/dropdown/dropdown.vue_vue_type_script_setup_true_lang.js +24 -3
- package/es/dropdown/index.d.ts +25 -0
- package/es/dropdown/interface.d.ts +2 -0
- package/es/ellipsis/ellipsis.vue.d.ts +2 -0
- package/es/ellipsis/ellipsis.vue_vue_type_script_setup_true_lang.js +37 -8
- package/es/ellipsis/index.d.ts +3 -0
- package/es/ellipsis/performant-ellipsis.vue_vue_type_script_setup_true_lang.js +3 -0
- package/es/empty/empty.vue_vue_type_script_setup_true_lang.js +1 -4
- package/es/file-previewer/file-previewer.vue.d.ts +0 -3
- package/es/file-previewer/file-previewer.vue_vue_type_script_setup_true_lang.js +3 -6
- package/es/file-previewer/index.d.ts +0 -9
- package/es/form/context.d.ts +1 -2
- package/es/form/form-item.vue_vue_type_script_setup_true_lang.js +6 -6
- package/es/form/form.vue.d.ts +3 -3
- package/es/form/form.vue_vue_type_script_setup_true_lang.js +5 -7
- package/es/form/index.d.ts +6 -6
- package/es/grid/grid-col.vue_vue_type_script_setup_true_lang.js +5 -4
- package/es/grid/hook/use-responsive-state.js +15 -4
- package/es/grid/hook/use-responsive-value.js +3 -2
- package/es/icon/icon-arrow-up/icon-arrow-up.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-calendar/icon-calendar.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-caret-down/icon-caret-down.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-caret-left/icon-caret-left.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-caret-right/icon-caret-right.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-caret-up/icon-caret-up.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-check/icon-check.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-check-circle-fill/icon-check-circle-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-clock-circle/icon-clock-circle.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-close/icon-close.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-close-circle-fill/icon-close-circle-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-components.d.ts +1 -1
- package/es/icon/icon-copy/icon-copy.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-delete/icon-delete.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-double-left/icon-double-left.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-double-right/icon-double-right.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-down/icon-down.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-drag-dot/icon-drag-dot.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-drag-dot-vertical/icon-drag-dot-vertical.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-edit/icon-edit.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-empty/icon-empty.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-exclamation/icon-exclamation.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-exclamation-circle-fill/icon-exclamation-circle-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-eye/icon-eye.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-eye-invisible/icon-eye-invisible.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-face-frown-fill/icon-face-frown-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-face-meh-fill/icon-face-meh-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-face-smile-fill/icon-face-smile-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/{icon-faceBook-circle-fill → icon-facebook-circle-fill}/index.d.ts +5 -5
- package/es/icon/icon-file/icon-file.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-file-audio/icon-file-audio.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-file-image/icon-file-image.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-file-pdf/icon-file-pdf.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-file-video/icon-file-video.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-filter/icon-filter.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-fullscreen/icon-fullscreen.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-image-close/icon-image-close.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-info/icon-info.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-info-circle-fill/icon-info-circle-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-left/icon-left.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-link/icon-link.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-list/icon-list.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-loading/icon-loading.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-menu/icon-menu.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-menu-fold/icon-menu-fold.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-menu-unfold/icon-menu-unfold.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-minus/icon-minus.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-more/icon-more.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-mute/icon-mute.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-oblique-line/icon-oblique-line.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-original-size/icon-original-size.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-pause/icon-pause.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-play-arrow-fill/icon-play-arrow-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-plus/icon-plus.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-question-circle/icon-question-circle.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-right/icon-right.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-rotate-left/icon-rotate-left.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-rotate-right/icon-rotate-right.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-search/icon-search.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-star-fill/icon-star-fill.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-to-top/icon-to-top.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-up/icon-up.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-upload/icon-upload.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-voice/icon-voice.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-zoom-in/icon-zoom-in.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/icon-zoom-out/icon-zoom-out.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/icon/index.d.ts +1 -1
- package/es/icon.js +1162 -300
- package/es/image/image.vue_vue_type_script_setup_true_lang.js +5 -3
- package/es/image/preview.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/index.css +20 -5
- package/es/input/input-password.vue_vue_type_script_setup_true_lang.js +4 -4
- package/es/input-mask/input-mask.vue_vue_type_script_setup_true_lang.js +25 -11
- package/es/input-mask/mask-engine.d.ts +4 -0
- package/es/input-mask/mask-engine.js +12 -1
- package/es/input-number/index.d.ts +15 -0
- package/es/input-number/input-number.vue.d.ts +9 -0
- package/es/input-number/input-number.vue_vue_type_script_setup_true_lang.js +47 -14
- package/es/json-form/index.d.ts +11 -11
- package/es/json-form/json-form-item.vue.d.ts +3 -6
- package/es/json-form/json-form-item.vue_vue_type_script_setup_true_lang.js +14 -15
- package/es/json-form/json-form.vue.d.ts +7 -10
- package/es/json-form/json-form.vue_vue_type_script_setup_true_lang.js +17 -16
- package/es/json-form/style/index.css +15 -0
- package/es/json-form/style/index.scss +21 -0
- package/es/json-form/types.d.ts +1 -0
- package/es/json-form/utils.d.ts +1 -1
- package/es/json-form/utils.js +20 -13
- package/es/kv-list/kv-list.vue_vue_type_script_setup_true_lang.js +1 -0
- package/es/layout/hooks/use-has-sider.js +23 -2
- package/es/layout/interface.d.ts +1 -1
- package/es/layout/sider.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/list/list-item-meta.vue_vue_type_script_setup_true_lang.js +3 -3
- package/es/locale/interface.d.ts +7 -0
- package/es/locale/lang/en-us.js +5 -0
- package/es/locale/lang/zh-cn.js +5 -0
- package/es/mention/index.d.ts +15 -0
- package/es/mention/mention.vue.d.ts +10 -1
- package/es/mention/mention.vue_vue_type_script_setup_true_lang.js +16 -9
- package/es/message/index.js +1 -1
- package/es/modal/index.js +9 -1
- package/es/modal/modal.vue_vue_type_script_setup_true_lang.js +15 -16
- package/es/model-selector/model-selector-input.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/model-selector/model-selector-item.vue_vue_type_script_setup_true_lang.js +27 -3
- package/es/model-selector/model-selector.vue_vue_type_script_setup_true_lang.js +15 -3
- package/es/notification/index.js +5 -2
- package/es/notification/notification-list.vue_vue_type_script_setup_true_lang.js +5 -5
- package/es/number-flow/number-flow.vue_vue_type_script_setup_true_lang.js +27 -8
- package/es/page-header/page-header.vue_vue_type_script_setup_true_lang.js +2 -1
- package/es/pagination/page-item-ellipsis.vue.d.ts +9 -0
- package/es/pagination/page-item-ellipsis.vue_vue_type_script_setup_true_lang.js +19 -3
- package/es/pagination/page-jumper.vue_vue_type_script_setup_true_lang.js +3 -2
- package/es/pagination/pagination.vue_vue_type_script_setup_true_lang.js +10 -0
- package/es/popconfirm/popconfirm.vue_vue_type_script_setup_true_lang.js +4 -11
- package/es/popover/index.d.ts +2 -0
- package/es/popover/popover.vue.d.ts +4 -2
- package/es/popover/popover.vue_vue_type_script_setup_true_lang.js +10 -3
- package/es/qr-code/qr-code.vue_vue_type_script_setup_true_lang.js +1 -0
- package/es/rate/rate.vue_vue_type_script_setup_true_lang.js +1 -2
- package/es/resize-box/resize-box.vue_vue_type_script_setup_true_lang.js +10 -10
- package/es/result/result.vue_vue_type_script_setup_true_lang.js +6 -4
- package/es/skeleton/line.vue_vue_type_script_setup_true_lang.js +16 -13
- package/es/slider/slider-button.vue_vue_type_script_setup_true_lang.js +2 -0
- package/es/slider/slider.vue_vue_type_script_setup_true_lang.js +20 -9
- package/es/slider/utils.js +1 -1
- package/es/spin/spin.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/split/split.vue_vue_type_script_setup_true_lang.js +3 -1
- package/es/statistic/countdown.vue_vue_type_script_setup_true_lang.js +7 -0
- package/es/statistic/index.d.ts +0 -3
- package/es/statistic/statistic.vue.d.ts +0 -2
- package/es/statistic/statistic.vue_vue_type_script_setup_true_lang.js +0 -5
- package/es/style/icon.scss +2 -2
- package/es/switch/switch.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/tag/index.d.ts +8 -8
- package/es/tag/tag.vue.d.ts +4 -4
- package/es/tag/tag.vue_vue_type_script_setup_true_lang.js +1 -2
- package/es/timeline/timeline.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/tour/tour.vue_vue_type_script_setup_true_lang.js +14 -8
- package/es/transfer/transfer-view.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/tree-select/tree-select.vue_vue_type_script_setup_true_lang.js +10 -3
- package/es/trigger/index.d.ts +0 -6
- package/es/trigger/interface.d.ts +1 -2
- package/es/trigger/trigger.vue.d.ts +0 -2
- package/es/trigger/trigger.vue_vue_type_script_setup_true_lang.js +0 -4
- package/es/typography/base.vue_vue_type_script_setup_true_lang.js +1 -0
- package/es/typography/interface.d.ts +0 -4
- package/es/typography/utils/getInnerText.js +11 -10
- package/es/upload/upload.vue_vue_type_script_setup_true_lang.js +7 -5
- package/es/upload/utils.d.ts +1 -2
- package/es/verification-code/index.d.ts +12 -3
- package/es/verification-code/verification-code.vue.d.ts +6 -1
- package/es/verification-code/verification-code.vue_vue_type_script_setup_true_lang.js +29 -5
- package/es/watermark/watermark.vue_vue_type_script_setup_true_lang.js +4 -2
- package/json/vetur-attributes.json +22 -10
- package/json/vetur-tags.json +10 -4
- package/json/web-types.json +43 -17
- package/package.json +1 -1
- /package/es/icon/{icon-faceBook-circle-fill/icon-faceBook-circle-fill.vue.d.ts → icon-facebook-circle-fill/icon-facebook-circle-fill.vue.d.ts} +0 -0
|
@@ -5,9 +5,10 @@ import _objectWithoutProperties from "../_virtual/_@oxc-project_runtime@0.146.0/
|
|
|
5
5
|
import resize_observer_v2_default from "../_components/resize-observer-v2.js";
|
|
6
6
|
import { RichLineClamp } from "../clamp/index.js";
|
|
7
7
|
import Tooltip from "../tooltip/index.js";
|
|
8
|
-
import { computed, createBlock, createElementBlock,
|
|
8
|
+
import { computed, createBlock, createElementBlock, defineComponent, mergeProps, nextTick, normalizeClass, normalizeStyle, onMounted, onUpdated, openBlock, renderSlot, resolveDynamicComponent, shallowRef, unref, watch, withCtx } from "vue";
|
|
9
9
|
//#region components/ellipsis/ellipsis.vue?vue&type=script&setup=true&lang.ts
|
|
10
10
|
var _excluded = ["disabled"];
|
|
11
|
+
var INTERACTIVE_SELECTOR = "a,button,input,textarea,select,[role=\"button\"]";
|
|
11
12
|
var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, {
|
|
12
13
|
name: "Ellipsis",
|
|
13
14
|
inheritAttrs: false
|
|
@@ -119,11 +120,33 @@ var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
119
120
|
if (triggerElement.clientWidth !== measurementWidth.value) measurementWidth.value = triggerElement.clientWidth;
|
|
120
121
|
if (nextPadding !== measurementPadding.value) measurementPadding.value = nextPadding;
|
|
121
122
|
}
|
|
123
|
+
let measurementSettled = false;
|
|
124
|
+
let measurementWaiters = [];
|
|
125
|
+
function flushMeasurementWaiters() {
|
|
126
|
+
const waiters = measurementWaiters;
|
|
127
|
+
measurementWaiters = [];
|
|
128
|
+
waiters.forEach((resolve) => resolve());
|
|
129
|
+
}
|
|
122
130
|
function handleClampChange(clamped) {
|
|
123
131
|
isEllipsis.value = clamped;
|
|
132
|
+
if (!measurementSettled && measurementHtml.value !== "") {
|
|
133
|
+
measurementSettled = true;
|
|
134
|
+
flushMeasurementWaiters();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function waitForMeasurement() {
|
|
138
|
+
if (measurementSettled) return Promise.resolve();
|
|
139
|
+
return new Promise((resolve) => {
|
|
140
|
+
measurementWaiters.push(resolve);
|
|
141
|
+
});
|
|
124
142
|
}
|
|
125
|
-
function handleClick() {
|
|
126
|
-
if (props.expandTrigger
|
|
143
|
+
function handleClick(event) {
|
|
144
|
+
if (props.expandTrigger !== "click") return;
|
|
145
|
+
const triggerElement = triggerRef.value;
|
|
146
|
+
const target = event === null || event === void 0 ? void 0 : event.target;
|
|
147
|
+
const interactiveElement = target instanceof Element ? target.closest(INTERACTIVE_SELECTOR) : null;
|
|
148
|
+
if (interactiveElement && triggerElement && interactiveElement !== triggerElement && triggerElement.contains(interactiveElement)) return;
|
|
149
|
+
if (isEllipsis.value || expanded.value) expanded.value = !expanded.value;
|
|
127
150
|
}
|
|
128
151
|
function handleKeydown(event) {
|
|
129
152
|
if (isExpandable.value && (event.key === "Enter" || event.key === " ")) {
|
|
@@ -135,10 +158,14 @@ var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
135
158
|
expanded.value = false;
|
|
136
159
|
nextTick(syncMeasurement);
|
|
137
160
|
});
|
|
138
|
-
onMounted(() =>
|
|
161
|
+
onMounted(() => {
|
|
162
|
+
nextTick(syncMeasurement);
|
|
163
|
+
window.setTimeout(flushMeasurementWaiters, 200);
|
|
164
|
+
});
|
|
139
165
|
onUpdated(() => void nextTick(syncMeasurement));
|
|
140
166
|
__expose({
|
|
141
167
|
triggerRef,
|
|
168
|
+
waitForMeasurement,
|
|
142
169
|
get triggerElement() {
|
|
143
170
|
return triggerRef.value;
|
|
144
171
|
}
|
|
@@ -164,7 +191,8 @@ var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
164
191
|
default: withCtx(() => [isLineClamp.value ? renderSlot(_ctx.$slots, "default", {}, void 0, void 0, 0) : (openBlock(), createElementBlock("span", {
|
|
165
192
|
key: 1,
|
|
166
193
|
class: normalizeClass(`${unref(prefixCls)}-content`)
|
|
167
|
-
}, [renderSlot(_ctx.$slots, "default")], 2)),
|
|
194
|
+
}, [renderSlot(_ctx.$slots, "default")], 2)), (openBlock(), createBlock(unref(RichLineClamp), {
|
|
195
|
+
key: measurementHtml.value,
|
|
168
196
|
"data-ellipsis-measure": "",
|
|
169
197
|
"aria-hidden": "true",
|
|
170
198
|
html: measurementHtml.value,
|
|
@@ -175,7 +203,7 @@ var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
175
203
|
"html",
|
|
176
204
|
"max-lines",
|
|
177
205
|
"style"
|
|
178
|
-
])]),
|
|
206
|
+
]))]),
|
|
179
207
|
_: 3
|
|
180
208
|
}, 16, [
|
|
181
209
|
"class",
|
|
@@ -204,7 +232,8 @@ var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
204
232
|
default: withCtx(() => [isLineClamp.value ? renderSlot(_ctx.$slots, "default", {}, void 0, void 0, 0) : (openBlock(), createElementBlock("span", {
|
|
205
233
|
key: 1,
|
|
206
234
|
class: normalizeClass(`${unref(prefixCls)}-content`)
|
|
207
|
-
}, [renderSlot(_ctx.$slots, "default")], 2)),
|
|
235
|
+
}, [renderSlot(_ctx.$slots, "default")], 2)), (openBlock(), createBlock(unref(RichLineClamp), {
|
|
236
|
+
key: measurementHtml.value,
|
|
208
237
|
"data-ellipsis-measure": "",
|
|
209
238
|
"aria-hidden": "true",
|
|
210
239
|
html: measurementHtml.value,
|
|
@@ -215,7 +244,7 @@ var ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
215
244
|
"html",
|
|
216
245
|
"max-lines",
|
|
217
246
|
"style"
|
|
218
|
-
])]),
|
|
247
|
+
]))]),
|
|
219
248
|
_: 3
|
|
220
249
|
}, 16, [
|
|
221
250
|
"class",
|
package/es/ellipsis/index.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ declare const Ellipsis: {
|
|
|
20
20
|
};
|
|
21
21
|
}>> & Readonly<{}>, {
|
|
22
22
|
triggerRef: import("vue").ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
|
|
23
|
+
waitForMeasurement: () => Promise<void>;
|
|
23
24
|
readonly triggerElement: HTMLElement | undefined;
|
|
24
25
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
|
|
25
26
|
tooltip: boolean | EllipsisTooltipProps;
|
|
@@ -47,6 +48,7 @@ declare const Ellipsis: {
|
|
|
47
48
|
};
|
|
48
49
|
}>> & Readonly<{}>, {
|
|
49
50
|
triggerRef: import("vue").ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
|
|
51
|
+
waitForMeasurement: () => Promise<void>;
|
|
50
52
|
readonly triggerElement: HTMLElement | undefined;
|
|
51
53
|
}, {}, {}, {}, {
|
|
52
54
|
tooltip: boolean | EllipsisTooltipProps;
|
|
@@ -71,6 +73,7 @@ declare const Ellipsis: {
|
|
|
71
73
|
};
|
|
72
74
|
}>> & Readonly<{}>, {
|
|
73
75
|
triggerRef: import("vue").ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
|
|
76
|
+
waitForMeasurement: () => Promise<void>;
|
|
74
77
|
readonly triggerElement: HTMLElement | undefined;
|
|
75
78
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
|
|
76
79
|
tooltip: boolean | EllipsisTooltipProps;
|
|
@@ -83,11 +83,14 @@ var performant_ellipsis_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
|
|
|
83
83
|
};
|
|
84
84
|
const activate = function() {
|
|
85
85
|
var _ref = _asyncToGenerator(function* (interactionType) {
|
|
86
|
+
var _ellipsisRef$value2, _ellipsisRef$value2$w;
|
|
86
87
|
if (activated.value) return;
|
|
87
88
|
activated.value = true;
|
|
88
89
|
yield nextTick();
|
|
89
90
|
yield nextTick();
|
|
90
91
|
yield new Promise((resolve) => requestAnimationFrame(() => resolve()));
|
|
92
|
+
const measurement = (_ellipsisRef$value2 = ellipsisRef.value) === null || _ellipsisRef$value2 === void 0 || (_ellipsisRef$value2$w = _ellipsisRef$value2.waitForMeasurement) === null || _ellipsisRef$value2$w === void 0 ? void 0 : _ellipsisRef$value2$w.call(_ellipsisRef$value2);
|
|
93
|
+
if (measurement) yield measurement;
|
|
91
94
|
replayInteraction(interactionType);
|
|
92
95
|
});
|
|
93
96
|
return function activate(_x) {
|
|
@@ -26,10 +26,7 @@ var empty_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
26
26
|
const configCtx = inject(configProviderInjectionKey, void 0);
|
|
27
27
|
const getCustomEmpty = () => configCtx === null || configCtx === void 0 ? void 0 : configCtx.slots.empty;
|
|
28
28
|
return (_ctx, _cache) => {
|
|
29
|
-
return !__props.inConfigProvider && getCustomEmpty() && !slots.image && !__props.imgSrc && !__props.description ? (openBlock(), createBlock(resolveDynamicComponent(getCustomEmpty()), {
|
|
30
|
-
key: 0,
|
|
31
|
-
component: "empty"
|
|
32
|
-
})) : (openBlock(), createElementBlock("div", mergeProps({
|
|
29
|
+
return !__props.inConfigProvider && getCustomEmpty() && !slots.image && !__props.imgSrc && !__props.description ? (openBlock(), createBlock(resolveDynamicComponent(getCustomEmpty()), mergeProps({ key: 0 }, _ctx.$attrs, { component: "empty" }), null, 16)) : (openBlock(), createElementBlock("div", mergeProps({
|
|
33
30
|
key: 1,
|
|
34
31
|
class: unref(prefixCls)
|
|
35
32
|
}, _ctx.$attrs), [createElementVNode("div", { class: normalizeClass(`${unref(prefixCls)}-image`) }, [renderSlot(_ctx.$slots, "image", {}, () => [__props.imgSrc ? (openBlock(), createElementBlock("img", {
|
|
@@ -66,9 +66,6 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
66
66
|
close: typeof close;
|
|
67
67
|
onLoad: typeof onPreviewLoad;
|
|
68
68
|
onError: typeof onLoadError;
|
|
69
|
-
onImageLoad: typeof onPreviewLoad;
|
|
70
|
-
onPdfLoad: typeof onPreviewLoad;
|
|
71
|
-
onLoadError: typeof onLoadError;
|
|
72
69
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
73
70
|
close: () => any;
|
|
74
71
|
"update:visible": (_visible: boolean) => any;
|
|
@@ -345,7 +345,7 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
345
345
|
}
|
|
346
346
|
}
|
|
347
347
|
function close() {
|
|
348
|
-
if (
|
|
348
|
+
if (!mergedVisible.value) return;
|
|
349
349
|
emit("close");
|
|
350
350
|
setVisible(false);
|
|
351
351
|
}
|
|
@@ -453,10 +453,7 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
453
453
|
__expose({
|
|
454
454
|
close,
|
|
455
455
|
onLoad: onPreviewLoad,
|
|
456
|
-
onError: onLoadError
|
|
457
|
-
onImageLoad: onPreviewLoad,
|
|
458
|
-
onPdfLoad: onPreviewLoad,
|
|
459
|
-
onLoadError
|
|
456
|
+
onError: onLoadError
|
|
460
457
|
});
|
|
461
458
|
return (_ctx, _cache) => {
|
|
462
459
|
return useImagePreview.value ? (openBlock(), createBlock(unref(Image), mergeProps({ key: currentSrc.value + "image" }, mergedImageProps.value, {
|
|
@@ -545,7 +542,7 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
545
542
|
key: 3,
|
|
546
543
|
class: normalizeClass(`${unref(prefixCls)}-error`),
|
|
547
544
|
role: "alert"
|
|
548
|
-
}, "
|
|
545
|
+
}, toDisplayString(unref(t)("filePreview.loadFailed")), 3)) : createCommentVNode("", true)
|
|
549
546
|
], 46, _hoisted_1)) : createCommentVNode("", true)], 8, ["to", "disabled"]));
|
|
550
547
|
};
|
|
551
548
|
}
|
|
@@ -103,9 +103,6 @@ declare const FilePreviewer: {
|
|
|
103
103
|
close: () => void;
|
|
104
104
|
onLoad: () => void;
|
|
105
105
|
onError: () => void;
|
|
106
|
-
onImageLoad: () => void;
|
|
107
|
-
onPdfLoad: () => void;
|
|
108
|
-
onLoadError: () => void;
|
|
109
106
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
110
107
|
close: () => any;
|
|
111
108
|
"update:visible": (_visible: boolean) => any;
|
|
@@ -227,9 +224,6 @@ declare const FilePreviewer: {
|
|
|
227
224
|
close: () => void;
|
|
228
225
|
onLoad: () => void;
|
|
229
226
|
onError: () => void;
|
|
230
|
-
onImageLoad: () => void;
|
|
231
|
-
onPdfLoad: () => void;
|
|
232
|
-
onLoadError: () => void;
|
|
233
227
|
}, {}, {}, {}, {
|
|
234
228
|
type: import("./types").FilePreviewerType;
|
|
235
229
|
visible: boolean;
|
|
@@ -302,9 +296,6 @@ declare const FilePreviewer: {
|
|
|
302
296
|
close: () => void;
|
|
303
297
|
onLoad: () => void;
|
|
304
298
|
onError: () => void;
|
|
305
|
-
onImageLoad: () => void;
|
|
306
|
-
onPdfLoad: () => void;
|
|
307
|
-
onLoadError: () => void;
|
|
308
299
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
309
300
|
close: () => any;
|
|
310
301
|
"update:visible": (_visible: boolean) => any;
|
package/es/form/context.d.ts
CHANGED
|
@@ -15,7 +15,6 @@ export interface FormContext {
|
|
|
15
15
|
size: Size;
|
|
16
16
|
rules?: Record<string, FieldRule | FieldRule[]>;
|
|
17
17
|
fields: FormItemInfo[];
|
|
18
|
-
touchedFields: FormItemInfo[];
|
|
19
18
|
addField: (field: FormItemInfo) => void;
|
|
20
19
|
removeField: (field: FormItemInfo) => void;
|
|
21
20
|
validateField: (field: string | string[], callback?: (errors: undefined | Record<string, ValidatedError>) => void) => Promise<undefined | Record<string, ValidatedError>>;
|
|
@@ -42,7 +41,7 @@ export interface FormItemInfo {
|
|
|
42
41
|
disabled: boolean;
|
|
43
42
|
error: boolean;
|
|
44
43
|
labelWidth?: number;
|
|
45
|
-
validate: () => Promise<
|
|
44
|
+
validate: () => Promise<ValidatedError | undefined>;
|
|
46
45
|
clearValidate: () => void;
|
|
47
46
|
resetField: () => void;
|
|
48
47
|
setField: (data: FieldData) => void;
|
|
@@ -326,12 +326,12 @@ var form_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
|
|
|
326
326
|
return new Promise((resolve) => {
|
|
327
327
|
schema.validate({ [_field]: _value }, (err) => {
|
|
328
328
|
var _err$_field$message;
|
|
329
|
-
const
|
|
329
|
+
const hasError = Boolean(err === null || err === void 0 ? void 0 : err[_field]);
|
|
330
330
|
updateValidateState(_field, {
|
|
331
|
-
status:
|
|
331
|
+
status: hasError ? "error" : "",
|
|
332
332
|
message: (_err$_field$message = err === null || err === void 0 ? void 0 : err[_field].message) !== null && _err$_field$message !== void 0 ? _err$_field$message : ""
|
|
333
333
|
});
|
|
334
|
-
resolve(
|
|
334
|
+
resolve(hasError ? {
|
|
335
335
|
label: props.label,
|
|
336
336
|
field: field.value,
|
|
337
337
|
value: err[_field].value,
|
|
@@ -443,7 +443,7 @@ var form_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
|
|
|
443
443
|
[`${prefixCls}-label-col-left`]: formCtx.labelAlign === "left",
|
|
444
444
|
[`${prefixCls}-label-col-flex`]: formCtx.autoLabelWidth || props.labelColFlex
|
|
445
445
|
}]);
|
|
446
|
-
const wrapperColCls =
|
|
446
|
+
const wrapperColCls = `${prefixCls}-wrapper-col`;
|
|
447
447
|
return (_ctx, _cache) => {
|
|
448
448
|
var _ctx$$slots$help;
|
|
449
449
|
return __props.noStyle ? renderSlot(_ctx.$slots, "default", {}, void 0, void 0, 0) : (openBlock(), createBlock(unref(grid_row_default), mergeProps({
|
|
@@ -477,7 +477,7 @@ var form_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
|
|
|
477
477
|
])]),
|
|
478
478
|
_: 3
|
|
479
479
|
}, 16, ["class", "style"])) : createCommentVNode("", true), createVNode(unref(grid_col_default), mergeProps({
|
|
480
|
-
class: wrapperColCls
|
|
480
|
+
class: wrapperColCls,
|
|
481
481
|
style: mergedWrapperStyle.value
|
|
482
482
|
}, mergedWrapperCol.value), {
|
|
483
483
|
default: withCtx(() => [
|
|
@@ -501,7 +501,7 @@ var form_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
|
|
|
501
501
|
}, [renderSlot(_ctx.$slots, "extra", {}, () => [createTextVNode(toDisplayString(__props.extra), 1)])], 2)) : createCommentVNode("", true)
|
|
502
502
|
]),
|
|
503
503
|
_: 3
|
|
504
|
-
}, 16, ["
|
|
504
|
+
}, 16, ["style"])]),
|
|
505
505
|
_: 3
|
|
506
506
|
}, 16, [
|
|
507
507
|
"class",
|
package/es/form/form.vue.d.ts
CHANGED
|
@@ -62,7 +62,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
62
62
|
type: StringConstructor;
|
|
63
63
|
};
|
|
64
64
|
scrollToFirstError: {
|
|
65
|
-
type:
|
|
65
|
+
type: PropType<boolean | ScrollIntoViewOptions>;
|
|
66
66
|
default: boolean;
|
|
67
67
|
};
|
|
68
68
|
}>, {
|
|
@@ -129,7 +129,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
129
129
|
type: StringConstructor;
|
|
130
130
|
};
|
|
131
131
|
scrollToFirstError: {
|
|
132
|
-
type:
|
|
132
|
+
type: PropType<boolean | ScrollIntoViewOptions>;
|
|
133
133
|
default: boolean;
|
|
134
134
|
};
|
|
135
135
|
}>> & Readonly<{
|
|
@@ -149,7 +149,7 @@ declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPro
|
|
|
149
149
|
wrapperColProps: Record<string, any>;
|
|
150
150
|
labelAlign: "left" | "right";
|
|
151
151
|
autoLabelWidth: boolean;
|
|
152
|
-
scrollToFirstError: boolean;
|
|
152
|
+
scrollToFirstError: boolean | ScrollIntoViewOptions;
|
|
153
153
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
154
154
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
155
155
|
declare const _default: typeof __VLS_export;
|
|
@@ -95,12 +95,12 @@ var form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
95
95
|
*/
|
|
96
96
|
id: { type: String },
|
|
97
97
|
/**
|
|
98
|
-
* @zh
|
|
99
|
-
* @en Scroll to the first error field after verification fails
|
|
98
|
+
* @zh 验证失败后滚动到第一个错误字段,支持传入 scrollIntoView 的选项对象
|
|
99
|
+
* @en Scroll to the first error field after verification fails; accepts a scrollIntoView options object
|
|
100
100
|
* @version 2.51.0
|
|
101
101
|
*/
|
|
102
102
|
scrollToFirstError: {
|
|
103
|
-
type: Boolean,
|
|
103
|
+
type: [Boolean, Object],
|
|
104
104
|
default: false
|
|
105
105
|
}
|
|
106
106
|
},
|
|
@@ -118,7 +118,6 @@ var form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
118
118
|
const { mergedSize } = useSize(size);
|
|
119
119
|
const autoLabelWidth = computed(() => props.layout === "horizontal" && props.autoLabelWidth);
|
|
120
120
|
const fields = [];
|
|
121
|
-
const touchedFields = [];
|
|
122
121
|
const labelWidth = reactive({});
|
|
123
122
|
const maxLabelWidth = computed(() => Math.max(...Object.values(labelWidth)));
|
|
124
123
|
const addField = (formItemInfo) => {
|
|
@@ -152,10 +151,10 @@ var form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
152
151
|
};
|
|
153
152
|
const scrollToField = (field, options) => {
|
|
154
153
|
const fieldNode = (formRef.value || document.body).querySelector(`#${getFormElementId(props.id, field)}`);
|
|
155
|
-
if (fieldNode) fieldNode.scrollIntoView({
|
|
154
|
+
if (fieldNode) fieldNode.scrollIntoView(_objectSpread2({
|
|
156
155
|
behavior: "smooth",
|
|
157
156
|
block: "nearest"
|
|
158
|
-
});
|
|
157
|
+
}, options));
|
|
159
158
|
};
|
|
160
159
|
const scrollToFirstError = (field) => {
|
|
161
160
|
const options = !isBoolean(props.scrollToFirstError) ? props.scrollToFirstError : void 0;
|
|
@@ -237,7 +236,6 @@ var form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
237
236
|
size: mergedSize,
|
|
238
237
|
rules,
|
|
239
238
|
fields,
|
|
240
|
-
touchedFields,
|
|
241
239
|
addField,
|
|
242
240
|
removeField,
|
|
243
241
|
validateField,
|
package/es/form/index.d.ts
CHANGED
|
@@ -50,7 +50,7 @@ declare const Form: {
|
|
|
50
50
|
type: StringConstructor;
|
|
51
51
|
};
|
|
52
52
|
scrollToFirstError: {
|
|
53
|
-
type:
|
|
53
|
+
type: import("vue").PropType<boolean | ScrollIntoViewOptions>;
|
|
54
54
|
default: boolean;
|
|
55
55
|
};
|
|
56
56
|
}>> & Readonly<{
|
|
@@ -87,7 +87,7 @@ declare const Form: {
|
|
|
87
87
|
wrapperColProps: Record<string, any>;
|
|
88
88
|
labelAlign: "left" | "right";
|
|
89
89
|
autoLabelWidth: boolean;
|
|
90
|
-
scrollToFirstError: boolean;
|
|
90
|
+
scrollToFirstError: boolean | ScrollIntoViewOptions;
|
|
91
91
|
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
92
92
|
P: {};
|
|
93
93
|
B: {};
|
|
@@ -142,7 +142,7 @@ declare const Form: {
|
|
|
142
142
|
type: StringConstructor;
|
|
143
143
|
};
|
|
144
144
|
scrollToFirstError: {
|
|
145
|
-
type:
|
|
145
|
+
type: import("vue").PropType<boolean | ScrollIntoViewOptions>;
|
|
146
146
|
default: boolean;
|
|
147
147
|
};
|
|
148
148
|
}>> & Readonly<{
|
|
@@ -169,7 +169,7 @@ declare const Form: {
|
|
|
169
169
|
wrapperColProps: Record<string, any>;
|
|
170
170
|
labelAlign: "left" | "right";
|
|
171
171
|
autoLabelWidth: boolean;
|
|
172
|
-
scrollToFirstError: boolean;
|
|
172
|
+
scrollToFirstError: boolean | ScrollIntoViewOptions;
|
|
173
173
|
}>;
|
|
174
174
|
__isFragment?: never;
|
|
175
175
|
__isTeleport?: never;
|
|
@@ -221,7 +221,7 @@ declare const Form: {
|
|
|
221
221
|
type: StringConstructor;
|
|
222
222
|
};
|
|
223
223
|
scrollToFirstError: {
|
|
224
|
-
type:
|
|
224
|
+
type: import("vue").PropType<boolean | ScrollIntoViewOptions>;
|
|
225
225
|
default: boolean;
|
|
226
226
|
};
|
|
227
227
|
}>> & Readonly<{
|
|
@@ -258,7 +258,7 @@ declare const Form: {
|
|
|
258
258
|
wrapperColProps: Record<string, any>;
|
|
259
259
|
labelAlign: "left" | "right";
|
|
260
260
|
autoLabelWidth: boolean;
|
|
261
|
-
scrollToFirstError: boolean;
|
|
261
|
+
scrollToFirstError: boolean | ScrollIntoViewOptions;
|
|
262
262
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
263
263
|
$slots: {
|
|
264
264
|
default?: (props: {}) => any;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _objectSpread2 from "../_virtual/_@oxc-project_runtime@0.146.0/helpers/esm/objectSpread2.js";
|
|
2
2
|
import { getPrefixCls } from "../_utils/global-config.js";
|
|
3
|
-
import { isNumber, isObject, isString } from "../_utils/is.js";
|
|
3
|
+
import { isNull, isNumber, isObject, isString, isUndefined } from "../_utils/is.js";
|
|
4
4
|
import pick from "../_utils/pick.js";
|
|
5
5
|
import { responsiveArray } from "../_utils/responsive-observe.js";
|
|
6
6
|
import { RowContextInjectionKey } from "./context.js";
|
|
@@ -78,6 +78,7 @@ var grid_col_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
78
78
|
const props = __props;
|
|
79
79
|
const prefixCls = getPrefixCls("col");
|
|
80
80
|
const rowContext = inject(RowContextInjectionKey, {});
|
|
81
|
+
const hasBreakpointValue = (value) => !isUndefined(value) && !isNull(value);
|
|
81
82
|
const flexValue = computed(() => getAllowableFlexValue(props.flex));
|
|
82
83
|
const mergeClassName = computed(() => {
|
|
83
84
|
const { div } = rowContext;
|
|
@@ -85,7 +86,7 @@ var grid_col_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
85
86
|
const result = {
|
|
86
87
|
[`${prefixCls}`]: !div,
|
|
87
88
|
[`${prefixCls}-order-${order}`]: order,
|
|
88
|
-
[`${prefixCls}-${span}`]: !div && !xs && !sm && !md && !lg && !xl && !xxl,
|
|
89
|
+
[`${prefixCls}-${span}`]: !div && !hasBreakpointValue(xs) && !hasBreakpointValue(sm) && !hasBreakpointValue(md) && !hasBreakpointValue(lg) && !hasBreakpointValue(xl) && !hasBreakpointValue(xxl),
|
|
89
90
|
[`${prefixCls}-offset-${offset}`]: offset && offset > 0
|
|
90
91
|
};
|
|
91
92
|
const screenList = {
|
|
@@ -98,8 +99,8 @@ var grid_col_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineC
|
|
|
98
99
|
};
|
|
99
100
|
Object.keys(screenList).forEach((screen) => {
|
|
100
101
|
const screenValue = screenList[screen];
|
|
101
|
-
if (screenValue && isNumber(screenValue)) result[`${prefixCls}-${screen}-${screenValue}`] = true;
|
|
102
|
-
else if (screenValue && isObject(screenValue)) {
|
|
102
|
+
if (hasBreakpointValue(screenValue) && isNumber(screenValue)) result[`${prefixCls}-${screen}-${screenValue}`] = true;
|
|
103
|
+
else if (hasBreakpointValue(screenValue) && isObject(screenValue)) {
|
|
103
104
|
result[`${prefixCls}-${screen}-${screenValue.span}`] = screenValue.span;
|
|
104
105
|
result[`${prefixCls}-${screen}-offset-${screenValue.offset}`] = screenValue.offset;
|
|
105
106
|
result[`${prefixCls}-${screen}-order-${screenValue.order}`] = screenValue.order;
|
|
@@ -1,19 +1,27 @@
|
|
|
1
1
|
import { isObject } from "../../_utils/is.js";
|
|
2
|
-
import responsiveObserve, { responsiveArray } from "../../_utils/responsive-observe.js";
|
|
3
|
-
import { computed, onMounted, onUnmounted, ref } from "vue";
|
|
2
|
+
import responsiveObserve, { responsiveArray, responsiveMap } from "../../_utils/responsive-observe.js";
|
|
3
|
+
import { computed, onMounted, onUnmounted, ref, watch } from "vue";
|
|
4
4
|
//#region components/grid/hook/use-responsive-state.ts
|
|
5
5
|
function isResponsiveValue(val) {
|
|
6
6
|
return isObject(val);
|
|
7
7
|
}
|
|
8
|
-
function
|
|
9
|
-
|
|
8
|
+
function getScreenSnapshot() {
|
|
9
|
+
if (typeof window === "undefined" || typeof window.matchMedia !== "function") return {
|
|
10
10
|
xs: true,
|
|
11
11
|
sm: true,
|
|
12
12
|
md: true,
|
|
13
13
|
lg: true,
|
|
14
14
|
xl: true,
|
|
15
15
|
xxl: true
|
|
16
|
+
};
|
|
17
|
+
const snapshot = {};
|
|
18
|
+
Object.keys(responsiveMap).forEach((breakpoint) => {
|
|
19
|
+
snapshot[breakpoint] = window.matchMedia(responsiveMap[breakpoint]).matches;
|
|
16
20
|
});
|
|
21
|
+
return snapshot;
|
|
22
|
+
}
|
|
23
|
+
function useResponsiveState(val, defaultVal, fallbackToXs = false) {
|
|
24
|
+
const screens = ref(getScreenSnapshot());
|
|
17
25
|
const result = computed(() => {
|
|
18
26
|
let res = defaultVal;
|
|
19
27
|
if (isResponsiveValue(val.value)) for (let i = 0; i < responsiveArray.length; i++) {
|
|
@@ -35,6 +43,9 @@ function useResponsiveState(val, defaultVal, fallbackToXs = false) {
|
|
|
35
43
|
onUnmounted(() => {
|
|
36
44
|
if (subscribeToken) responsiveObserve.unsubscribe(subscribeToken);
|
|
37
45
|
});
|
|
46
|
+
watch(() => isResponsiveValue(val.value), (isResponsive) => {
|
|
47
|
+
if (isResponsive) screens.value = getScreenSnapshot();
|
|
48
|
+
});
|
|
38
49
|
return result;
|
|
39
50
|
}
|
|
40
51
|
//#endregion
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { isNumber, isObject } from "../../_utils/is.js";
|
|
1
|
+
import { isNull, isNumber, isObject, isUndefined } from "../../_utils/is.js";
|
|
2
2
|
import { responsiveArray } from "../../_utils/responsive-observe.js";
|
|
3
3
|
import { computed } from "vue";
|
|
4
4
|
//#region components/grid/hook/use-responsive-value.ts
|
|
5
|
+
var hasBreakpointValue = (value) => !isUndefined(value) && !isNull(value);
|
|
5
6
|
function useResponsiveValue(props) {
|
|
6
7
|
return computed(() => {
|
|
7
8
|
const { val, key, xs, sm, md, lg, xl, xxl } = props.value;
|
|
8
|
-
if (!xs && !sm && !md && !lg && !xl && !xxl) return val;
|
|
9
|
+
if (!hasBreakpointValue(xs) && !hasBreakpointValue(sm) && !hasBreakpointValue(md) && !hasBreakpointValue(lg) && !hasBreakpointValue(xl) && !hasBreakpointValue(xxl)) return val;
|
|
9
10
|
const result = {};
|
|
10
11
|
responsiveArray.forEach((breakpoint) => {
|
|
11
12
|
const config = props.value[breakpoint];
|
|
@@ -30,7 +30,10 @@ var icon_arrow_up_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_calendar_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_caret_down_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_caret_left_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_caret_right_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_caret_up_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_check_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
package/es/icon/icon-check-circle-fill/icon-check-circle-fill.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -30,7 +30,10 @@ var icon_check_circle_fill_vue_vue_type_script_setup_true_lang_default = /*@__PU
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_clock_circle_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|
|
@@ -30,7 +30,10 @@ var icon_close_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
30
30
|
const innerStyle = computed(() => {
|
|
31
31
|
const styles = {};
|
|
32
32
|
if (__props.size) styles.fontSize = isNumber(__props.size) ? `${__props.size}px` : __props.size;
|
|
33
|
-
if (__props.rotate)
|
|
33
|
+
if (__props.rotate) {
|
|
34
|
+
styles.transform = `rotate(${__props.rotate}deg)`;
|
|
35
|
+
styles["--icon-rotate"] = `${__props.rotate}deg`;
|
|
36
|
+
}
|
|
34
37
|
return styles;
|
|
35
38
|
});
|
|
36
39
|
const onClick = (ev) => {
|