@sdata/web-vue 3.13.0 → 3.15.0
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 +167 -114
- package/dist/sd.min.css +2 -2
- package/es/_components/input-label/input-label.d.ts +2 -0
- package/es/_components/input-label/input-label.js +4 -2
- package/es/_components/input-label/style/index.css +2 -2
- package/es/_components/picker/style/index.scss +8 -2
- package/es/_components/resize-observer.js +1 -1
- package/es/_components/resize-trigger.vue_vue_type_script_setup_true_lang.js +13 -3
- package/es/_components/select-view/select-view.d.ts +2 -0
- package/es/_components/select-view/select-view.js +7 -1
- package/es/_components/select-view/style/index.css +5 -5
- package/es/_hooks/use-focus-trap.d.ts +10 -0
- package/es/_hooks/use-focus-trap.js +115 -0
- package/es/_utils/dom.js +1 -10
- package/es/_utils/keyboard.d.ts +4 -0
- package/es/_utils/keyboard.js +21 -2
- package/es/alert/alert.vue.d.ts +2 -2
- package/es/alert/alert.vue_vue_type_script_setup_true_lang.js +16 -4
- package/es/alert/index.d.ts +5 -5
- package/es/alert/style/index.css +1 -1
- package/es/alert/style/index.scss +1 -1
- package/es/anchor/anchor-link.vue_vue_type_script_setup_true_lang.js +3 -1
- package/es/anchor/anchor.vue_vue_type_script_setup_true_lang.js +6 -1
- package/es/anchor/style/index.css +1 -1
- package/es/anchor/style/index.scss +3 -1
- package/es/auto-complete/auto-complete.js +8 -0
- package/es/avatar/avatar.vue_vue_type_script_setup_true_lang.js +8 -2
- package/es/avatar/style/index.css +2 -2
- package/es/avatar/style/index.scss +2 -2
- package/es/back-top/back-top.vue_vue_type_script_setup_true_lang.js +8 -1
- package/es/back-top/style/index.css +1 -1
- package/es/back-top/style/index.scss +2 -1
- package/es/badge/badge.js +4 -1
- package/es/badge/style/index.css +3 -3
- package/es/badge/style/index.scss +3 -3
- package/es/basic-crud-table/basic-crud-modal.js +5 -0
- package/es/basic-crud-table/basic-crud-modal.vue.d.ts +264 -0
- package/es/basic-crud-table/basic-crud-modal.vue_vue_type_script_setup_true_lang.js +139 -0
- package/es/basic-crud-table/basic-crud-table.js +5 -0
- package/es/basic-crud-table/basic-crud-table.vue.d.ts +935 -0
- package/es/basic-crud-table/basic-crud-table.vue_vue_type_script_setup_true_lang.js +510 -0
- package/es/basic-crud-table/index.d.ts +2722 -0
- package/es/basic-crud-table/index.js +9 -0
- package/es/basic-crud-table/style/css.js +2 -0
- package/es/basic-crud-table/style/index.css +42 -0
- package/es/basic-crud-table/style/index.d.ts +2 -0
- package/es/basic-crud-table/style/index.js +2 -0
- package/es/basic-crud-table/style/index.scss +33 -0
- package/es/basic-crud-table/style/token.scss +8 -0
- package/es/basic-crud-table/types.d.ts +69 -0
- package/es/breadcrumb/breadcrumb-item.js +4 -2
- package/es/breadcrumb/breadcrumb.js +3 -0
- package/es/button/button.vue_vue_type_script_setup_true_lang.js +10 -5
- package/es/button/style/index.css +15 -6
- package/es/button/style/index.scss +25 -7
- package/es/calendar/components/event.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/calendar/components/headings-bar.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/calendar/style/event.scss +2 -2
- package/es/calendar/style/index.css +2 -2
- package/es/card/style/index.css +3 -3
- package/es/card/style/index.scss +3 -3
- package/es/carousel/carousel-arrow.vue.d.ts +4 -4
- package/es/carousel/carousel-arrow.vue_vue_type_script_setup_true_lang.js +25 -5
- package/es/carousel/carousel-indicator.vue_vue_type_script_setup_true_lang.js +25 -4
- package/es/carousel/carousel-item.vue_vue_type_script_setup_true_lang.js +11 -2
- package/es/carousel/carousel.js +20 -1
- package/es/carousel/style/index.css +1 -1
- package/es/carousel/style/index.scss +1 -1
- package/es/cascader/cascader-option.js +1 -1
- package/es/cascader/cascader.vue_vue_type_script_setup_true_lang.js +13 -4
- package/es/cascader/style/index.css +2 -2
- package/es/cascader/style/index.scss +3 -1
- package/es/checkbox/checkbox-group.js +4 -1
- package/es/checkbox/checkbox.d.ts +9 -0
- package/es/checkbox/checkbox.js +14 -0
- package/es/checkbox/index.d.ts +15 -0
- package/es/checkbox/style/index.css +1 -1
- package/es/checkbox/style/index.scss +1 -1
- package/es/collapse/collapse-item.js +21 -3
- package/es/collapse/context.d.ts +1 -1
- package/es/color-picker/color-picker.js +6 -0
- package/es/color-picker/panel.js +5 -3
- package/es/components.d.ts +1 -0
- package/es/copy/copy.vue_vue_type_script_setup_true_lang.js +11 -3
- package/es/date-picker/hooks/use-provide-datepicker-transform.js +1 -1
- package/es/date-picker/panels/body.vue_vue_type_script_setup_true_lang.js +14 -1
- package/es/date-picker/panels/header.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/date-picker/picker.vue_vue_type_script_setup_true_lang.js +4 -3
- package/es/date-picker/range-picker.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/date-picker/style/index.css +5 -5
- package/es/date-picker/style/index.scss +4 -3
- package/es/drawer/drawer.vue.d.ts +1 -1
- package/es/drawer/drawer.vue_vue_type_script_setup_true_lang.js +31 -9
- package/es/drawer/index.d.ts +3 -3
- package/es/dropdown/dropdown-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/dropdown/dropdown-option.vue_vue_type_script_setup_true_lang.js +5 -1
- package/es/dropdown/dropdown-panel.vue.d.ts +9 -0
- package/es/dropdown/dropdown-panel.vue_vue_type_script_setup_true_lang.js +76 -3
- package/es/dropdown/dropdown-submenu.vue_vue_type_script_setup_true_lang.js +6 -3
- package/es/dropdown/dropdown.vue_vue_type_script_setup_true_lang.js +4 -2
- package/es/dropdown/style/index.css +1 -1
- package/es/dropdown/style/index.scss +3 -1
- package/es/file-previewer/file-previewer.vue.d.ts +1 -1
- package/es/file-previewer/file-previewer.vue_vue_type_script_setup_true_lang.js +18 -10
- package/es/file-previewer/index.d.ts +3 -3
- package/es/form/context.d.ts +1 -0
- package/es/form/form-item.vue_vue_type_script_setup_true_lang.js +7 -3
- package/es/form/index.js +1 -1
- package/es/form/style/index.css +2 -2
- package/es/form/style/index.scss +2 -2
- package/es/grid/grid-col.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/grid/grid-item.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/grid/grid-row.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/grid/grid.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/image/image.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/image/preview-arrow.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/image/preview.vue.d.ts +1 -1
- package/es/image/preview.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/index.css +167 -114
- package/es/index.d.ts +2 -0
- package/es/index.js +55 -54
- package/es/index.scss +1 -0
- package/es/input/input.js +18 -2
- package/es/input/style/index.css +2 -2
- package/es/input/style/input.scss +4 -4
- package/es/input-number/input-number.js +9 -3
- package/es/input-number/style/index.css +3 -3
- package/es/input-number/style/index.scss +5 -1
- package/es/input-tag/index.d.ts +3 -0
- package/es/input-tag/input-tag.d.ts +2 -0
- package/es/input-tag/input-tag.js +34 -30
- package/es/input-tag/style/index.css +8 -8
- package/es/input-tag/style/index.scss +11 -5
- package/es/json-form/style/index.css +0 -3
- package/es/json-form/style/index.scss +4 -3
- package/es/json-form/utils.js +4 -4
- package/es/layout/sider.vue_vue_type_script_setup_true_lang.js +34 -7
- package/es/layout/style/index.css +2 -2
- package/es/layout/style/index.scss +4 -2
- package/es/link/link.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/link/style/index.css +1 -1
- package/es/link/style/index.scss +3 -1
- package/es/list/list.js +1 -1
- package/es/locale/interface.d.ts +39 -0
- package/es/locale/lang/ar-eg.js +38 -0
- package/es/locale/lang/de-de.js +38 -0
- package/es/locale/lang/en-us.js +38 -0
- package/es/locale/lang/es-es.js +38 -0
- package/es/locale/lang/fr-fr.js +38 -0
- package/es/locale/lang/id-id.js +38 -0
- package/es/locale/lang/it-it.js +38 -0
- package/es/locale/lang/ja-jp.js +38 -0
- package/es/locale/lang/km-kh.js +38 -0
- package/es/locale/lang/ko-kr.js +38 -0
- package/es/locale/lang/ms-my.js +38 -0
- package/es/locale/lang/nl-nl.js +38 -0
- package/es/locale/lang/pt-pt.js +38 -0
- package/es/locale/lang/ru-ru.js +38 -0
- package/es/locale/lang/th-th.js +38 -0
- package/es/locale/lang/vi-vn.js +38 -0
- package/es/locale/lang/zh-cn.js +38 -0
- package/es/locale/lang/zh-tw.js +38 -0
- package/es/mention/mention.js +8 -0
- package/es/menu/base-menu.vue_vue_type_script_setup_true_lang.js +29 -3
- package/es/menu/item.d.ts +1 -1
- package/es/menu/item.js +14 -1
- package/es/menu/style/index.css +6 -6
- package/es/menu/style/index.scss +5 -3
- package/es/message/style/index.css +3 -3
- package/es/message/style/index.scss +5 -3
- package/es/modal/index.d.ts +3 -3
- package/es/modal/modal.vue.d.ts +1 -1
- package/es/modal/modal.vue_vue_type_script_setup_true_lang.js +31 -15
- package/es/modal/style/index.css +2 -2
- package/es/modal/style/index.scss +3 -2
- package/es/notification/style/index.css +3 -3
- package/es/notification/style/index.scss +11 -3
- package/es/overflow-list/overflow-list.js +1 -1
- package/es/page-header/page-header.vue.d.ts +6 -6
- package/es/page-header/page-header.vue_vue_type_script_setup_true_lang.js +19 -2
- package/es/pagination/page-item-ellipsis.vue_vue_type_script_setup_true_lang.js +15 -2
- package/es/pagination/page-item-step.vue.d.ts +2 -2
- package/es/pagination/page-item-step.vue_vue_type_script_setup_true_lang.js +23 -4
- package/es/pagination/page-item.vue.d.ts +2 -2
- package/es/pagination/page-item.vue_vue_type_script_setup_true_lang.js +21 -3
- package/es/pagination/pagination.js +5 -1
- package/es/pagination/style/index.css +6 -1
- package/es/pagination/style/index.scss +9 -3
- package/es/popconfirm/popconfirm.vue_vue_type_script_setup_true_lang.js +3 -1
- package/es/popover/popover.vue_vue_type_script_setup_true_lang.js +2 -0
- package/es/progress/style/index.css +2 -2
- package/es/progress/style/index.scss +5 -3
- package/es/qr-code/qr-code-status.vue_vue_type_script_setup_true_lang.js +5 -1
- package/es/qr-code/qr-code.vue_vue_type_script_setup_true_lang.js +13 -6
- package/es/radio/context.d.ts +1 -0
- package/es/radio/radio-group.js +6 -2
- package/es/radio/radio.js +1 -0
- package/es/radio/style/index.css +2 -2
- package/es/radio/style/index.scss +4 -2
- package/es/rate/rate.js +27 -1
- package/es/resize-box/resize-box.vue.d.ts +4 -4
- package/es/resize-box/resize-box.vue_vue_type_script_setup_true_lang.js +30 -1
- package/es/result/result.vue_vue_type_script_setup_true_lang.js +7 -4
- package/es/sd-vue.js +54 -52
- package/es/secret/secret.vue_vue_type_script_setup_true_lang.js +3 -1
- package/es/select/index.d.ts +124 -0
- package/es/select/select-dropdown.vue_vue_type_script_setup_true_lang.js +4 -1
- package/es/select/select.d.ts +62 -0
- package/es/select/select.js +20 -4
- package/es/select/style/index.css +1 -1
- package/es/select/style/index.scss +3 -1
- package/es/selectable-card/style/index.css +2 -2
- package/es/selectable-card/style/index.scss +5 -5
- package/es/skeleton/skeleton.vue_vue_type_script_setup_true_lang.js +5 -1
- package/es/slider/slider-button.vue.d.ts +2 -0
- package/es/slider/slider-button.vue_vue_type_script_setup_true_lang.js +7 -2
- package/es/slider/slider.vue_vue_type_script_setup_true_lang.js +23 -2
- package/es/slider/style/index.css +1 -1
- package/es/slider/style/index.scss +3 -1
- package/es/spin/spin.js +7 -2
- package/es/spin/style/index.css +1 -1
- package/es/spin/style/index.scss +1 -1
- package/es/split/split.vue.d.ts +4 -4
- package/es/split/split.vue_vue_type_script_setup_true_lang.js +27 -3
- package/es/statistic/statistic.vue_vue_type_script_setup_true_lang.js +1 -1
- package/es/steps/context.d.ts +1 -0
- package/es/steps/step.vue_vue_type_script_setup_true_lang.js +15 -2
- package/es/steps/steps.vue_vue_type_script_setup_true_lang.js +10 -2
- package/es/steps/style/index.css +1 -1
- package/es/steps/style/index.scss +1 -1
- package/es/style/animation/index.scss +1 -0
- package/es/style/animation/reduced-motion.scss +22 -0
- package/es/style/animation/zoom.scss +7 -6
- package/es/style/icon.scss +9 -1
- package/es/switch/style/index.css +1 -1
- package/es/switch/style/index.scss +4 -1
- package/es/switch/switch.vue_vue_type_script_setup_true_lang.js +6 -1
- package/es/table/index.d.ts +4 -4
- package/es/table/style/index.css +8 -8
- package/es/table/style/index.scss +11 -8
- package/es/table/table-operation-td.d.ts +15 -0
- package/es/table/table-operation-td.js +3 -3
- package/es/table/table-operation-th.js +1 -1
- package/es/table/table-tbody.js +4 -1
- package/es/table/table-td.js +2 -1
- package/es/table/table-th.d.ts +1 -1
- package/es/table/table-th.js +7 -5
- package/es/table/table-thead.js +4 -1
- package/es/table/table-tr.js +4 -1
- package/es/table/table.d.ts +1 -1
- package/es/table/table.js +8 -4
- package/es/tabs/context.d.ts +1 -0
- package/es/tabs/style/index.css +5 -5
- package/es/tabs/style/index.scss +7 -7
- package/es/tabs/tab-pane.vue_vue_type_script_setup_true_lang.js +21 -2
- package/es/tabs/tabs-button.js +1 -1
- package/es/tabs/tabs-nav.js +34 -1
- package/es/tabs/tabs-tab.vue_vue_type_script_setup_true_lang.js +27 -4
- package/es/tabs/tabs.js +4 -2
- package/es/tag/index.d.ts +5 -5
- package/es/tag/style/index.css +1 -1
- package/es/tag/style/index.scss +3 -1
- package/es/tag/tag.vue.d.ts +2 -2
- package/es/tag/tag.vue_vue_type_script_setup_true_lang.js +27 -4
- package/es/tag-group/tag-group.vue_vue_type_script_setup_true_lang.js +2 -2
- package/es/textarea/style/index.css +2 -2
- package/es/textarea/textarea.vue_vue_type_script_setup_true_lang.js +18 -3
- package/es/time-picker/time-column.vue_vue_type_script_setup_true_lang.js +11 -3
- package/es/time-picker/time-picker.vue_vue_type_script_setup_true_lang.js +6 -3
- package/es/toolbar/index.d.ts +3 -3
- package/es/toolbar/toolbar.vue.d.ts +2 -2
- package/es/toolbar/toolbar.vue_vue_type_script_setup_true_lang.js +5 -5
- package/es/tooltip/tooltip.vue_vue_type_script_setup_true_lang.js +1 -0
- package/es/transfer/style/index.css +1 -1
- package/es/transfer/style/index.scss +1 -1
- package/es/transfer/transfer-list-item.js +18 -2
- package/es/transfer/transfer.vue_vue_type_script_setup_true_lang.js +7 -5
- package/es/tree/base-node.vue_vue_type_script_setup_true_lang.js +28 -8
- package/es/tree/context.d.ts +2 -0
- package/es/tree/node-switcher.vue_vue_type_script_lang.js +1 -1
- package/es/tree/style/index.css +1 -1
- package/es/tree/style/index.scss +1 -1
- package/es/tree/tree.vue_vue_type_script_setup_true_lang.js +81 -2
- package/es/tree-select/tree-select.vue_vue_type_script_setup_true_lang.js +10 -1
- package/es/trigger/index.d.ts +45 -0
- package/es/trigger/trigger.d.ts +27 -0
- package/es/trigger/trigger.js +47 -5
- package/es/typography/edit-content.vue_vue_type_script_setup_true_lang.js +17 -8
- package/es/typography/operations.vue_vue_type_script_setup_true_lang.js +38 -6
- package/es/typography/style/index.css +2 -2
- package/es/typography/style/index.scss +2 -2
- package/es/upload/style/index.css +9 -9
- package/es/upload/style/index.scss +15 -9
- package/es/upload/upload-list-item.js +18 -5
- package/es/upload/upload-picture-item.js +27 -3
- package/es/verification-code/verification-code.js +8 -1
- package/json/vetur-attributes.json +15 -0
- package/json/vetur-tags.json +9 -2
- package/json/web-types.json +39 -1
- package/package.json +1 -1
|
@@ -41,13 +41,17 @@ var slider_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
41
41
|
emits: [
|
|
42
42
|
"movestart",
|
|
43
43
|
"moving",
|
|
44
|
-
"moveend"
|
|
44
|
+
"moveend",
|
|
45
|
+
"keydown"
|
|
45
46
|
],
|
|
46
47
|
setup(__props, { emit: __emit }) {
|
|
47
48
|
const props = __props;
|
|
48
49
|
const emit = __emit;
|
|
49
50
|
const prefixCls = getPrefixCls("slider-btn");
|
|
50
51
|
const isDragging = ref(false);
|
|
52
|
+
const onKeydown = (e) => {
|
|
53
|
+
if (!props.disabled) emit("keydown", e);
|
|
54
|
+
};
|
|
51
55
|
const handleMouseDown = (e) => {
|
|
52
56
|
if (props.disabled) return;
|
|
53
57
|
e.preventDefault();
|
|
@@ -106,7 +110,8 @@ var slider_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
106
110
|
onMousedown: handleMouseDown,
|
|
107
111
|
onTouchstart: handleMouseDown,
|
|
108
112
|
onContextmenu: _cache[0] || (_cache[0] = withModifiers(() => {}, ["prevent"])),
|
|
109
|
-
onClick: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"]))
|
|
113
|
+
onClick: _cache[1] || (_cache[1] = withModifiers(() => {}, ["stop"])),
|
|
114
|
+
onKeydown
|
|
110
115
|
}), null, 16, _hoisted_1)]),
|
|
111
116
|
_: 1
|
|
112
117
|
}, 8, [
|
|
@@ -2,6 +2,7 @@ import { useFormItem } from "../_hooks/use-form-item.js";
|
|
|
2
2
|
import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/objectSpread2.js";
|
|
3
3
|
import { getPrefixCls } from "../_utils/global-config.js";
|
|
4
4
|
import { isArray, isUndefined } from "../_utils/is.js";
|
|
5
|
+
import { KEYBOARD_KEY } from "../_utils/keyboard.js";
|
|
5
6
|
import slider_button_default from "./slider-button.js";
|
|
6
7
|
import { getOffsetPercent, getPositionStyle } from "./utils.js";
|
|
7
8
|
import slider_dots_default from "./slider-dots.js";
|
|
@@ -156,6 +157,24 @@ var slider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
156
157
|
endValue.value = value;
|
|
157
158
|
handleChange();
|
|
158
159
|
};
|
|
160
|
+
const handleButtonKeydown = (which, e) => {
|
|
161
|
+
if (mergedDisabled.value) return;
|
|
162
|
+
const minV = props.min;
|
|
163
|
+
const maxV = props.max;
|
|
164
|
+
const current = which === "start" ? startValue.value : endValue.value;
|
|
165
|
+
let next;
|
|
166
|
+
if (e.key === KEYBOARD_KEY.ARROW_RIGHT || e.key === KEYBOARD_KEY.ARROW_UP) next = current + props.step;
|
|
167
|
+
else if (e.key === KEYBOARD_KEY.ARROW_LEFT || e.key === KEYBOARD_KEY.ARROW_DOWN) next = current - props.step;
|
|
168
|
+
else if (e.key === KEYBOARD_KEY.HOME) next = minV;
|
|
169
|
+
else if (e.key === KEYBOARD_KEY.END) next = maxV;
|
|
170
|
+
else return;
|
|
171
|
+
e.preventDefault();
|
|
172
|
+
if (props.range) if (which === "start") next = Math.max(minV, Math.min(next, endValue.value - props.step));
|
|
173
|
+
else next = Math.max(startValue.value + props.step, Math.min(next, maxV));
|
|
174
|
+
else next = Math.max(minV, Math.min(next, maxV));
|
|
175
|
+
if (which === "start") handleStartChange(next);
|
|
176
|
+
else handleEndChange(next);
|
|
177
|
+
};
|
|
159
178
|
const computedValue = computed(() => {
|
|
160
179
|
var _props$min2;
|
|
161
180
|
if (props.range) {
|
|
@@ -293,7 +312,8 @@ var slider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
293
312
|
"show-tooltip": __props.showTooltip,
|
|
294
313
|
onMovestart: handleMoveStart,
|
|
295
314
|
onMoving: handleStartMoving,
|
|
296
|
-
onMoveend: handleMoveEnd
|
|
315
|
+
onMoveend: handleMoveEnd,
|
|
316
|
+
onKeydown: _cache[0] || (_cache[0] = (e) => handleButtonKeydown("start", e))
|
|
297
317
|
}, null, 8, [
|
|
298
318
|
"style",
|
|
299
319
|
"value",
|
|
@@ -315,7 +335,8 @@ var slider_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
315
335
|
"show-tooltip": __props.showTooltip,
|
|
316
336
|
onMovestart: handleMoveStart,
|
|
317
337
|
onMoving: handleEndMoving,
|
|
318
|
-
onMoveend: handleMoveEnd
|
|
338
|
+
onMoveend: handleMoveEnd,
|
|
339
|
+
onKeydown: _cache[1] || (_cache[1] = (e) => handleButtonKeydown("end", e))
|
|
319
340
|
}, null, 8, [
|
|
320
341
|
"style",
|
|
321
342
|
"value",
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
background: var(--sd-color-bg-2);
|
|
131
131
|
border: 2px solid rgb(var(--sd-primary-6));
|
|
132
132
|
border-radius: 50%;
|
|
133
|
-
transition:
|
|
133
|
+
transition: transform 0.3s cubic-bezier(0.3, 1.3, 0.3, 1), box-shadow 0.3s cubic-bezier(0.3, 1.3, 0.3, 1);
|
|
134
134
|
content: "";
|
|
135
135
|
}
|
|
136
136
|
.sd-slider-btn.sd-slider-btn-active::after, .sd-slider-btn:hover::after {
|
|
@@ -148,7 +148,9 @@ $slider-prefix: string.unquote('#{theme.$prefix}-slider');
|
|
|
148
148
|
background: $slider-color-button-bg;
|
|
149
149
|
border: $slider-border-size-button solid $slider-color-button-border;
|
|
150
150
|
border-radius: 50%;
|
|
151
|
-
transition:
|
|
151
|
+
transition:
|
|
152
|
+
transform theme.$transition-duration-3 theme.$transition-timing-function-overshoot,
|
|
153
|
+
box-shadow theme.$transition-duration-3 theme.$transition-timing-function-overshoot;
|
|
152
154
|
content: '';
|
|
153
155
|
}
|
|
154
156
|
|
package/es/spin/spin.js
CHANGED
|
@@ -78,10 +78,15 @@ var spin_default = /* @__PURE__ */ defineComponent({
|
|
|
78
78
|
const hasTip = Boolean((_slots$tip = slots.tip) !== null && _slots$tip !== void 0 ? _slots$tip : props.tip);
|
|
79
79
|
return createVNode(Fragment, null, [!props.hideIcon && createVNode("div", {
|
|
80
80
|
"class": `${prefixCls}-icon`,
|
|
81
|
-
"style": style
|
|
81
|
+
"style": style,
|
|
82
|
+
"aria-hidden": "true"
|
|
82
83
|
}, [renderIcon()]), hasTip && createVNode("div", { "class": `${prefixCls}-tip` }, [(_slots$tip2 = (_slots$tip3 = slots.tip) === null || _slots$tip3 === void 0 ? void 0 : _slots$tip3.call(slots)) !== null && _slots$tip2 !== void 0 ? _slots$tip2 : props.tip])]);
|
|
83
84
|
};
|
|
84
|
-
return () => createVNode("div", {
|
|
85
|
+
return () => createVNode("div", {
|
|
86
|
+
"role": "status",
|
|
87
|
+
"aria-live": "polite",
|
|
88
|
+
"class": cls.value
|
|
89
|
+
}, [slots.default ? createVNode(Fragment, null, [slots.default(), props.loading && createVNode("div", { "class": `${prefixCls}-mask` }, [createVNode("div", { "class": `${prefixCls}-mask-icon` }, [renderSpinIcon()])])]) : renderSpinIcon()]);
|
|
85
90
|
}
|
|
86
91
|
});
|
|
87
92
|
//#endregion
|
package/es/spin/style/index.css
CHANGED
|
@@ -180,7 +180,7 @@
|
|
|
180
180
|
z-index: 11;
|
|
181
181
|
text-align: center;
|
|
182
182
|
background-color: var(--sd-color-spin-layer-bg);
|
|
183
|
-
transition: opacity 0.1s cubic-bezier(0, 0, 1, 1);
|
|
183
|
+
transition: opacity 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
184
184
|
user-select: none;
|
|
185
185
|
}
|
|
186
186
|
.sd-spin-loading {
|
package/es/spin/style/index.scss
CHANGED
|
@@ -29,7 +29,7 @@ $spin-prefix-cls: string.unquote('#{theme.$prefix}-spin');
|
|
|
29
29
|
z-index: 11;
|
|
30
30
|
text-align: center;
|
|
31
31
|
background-color: var(string.unquote('#{global.$sd-cssvars-prefix}-color-spin-layer-bg'));
|
|
32
|
-
transition: opacity theme.$transition-duration-1 theme.$transition-timing-function-
|
|
32
|
+
transition: opacity theme.$transition-duration-1 theme.$transition-timing-function-standard;
|
|
33
33
|
user-select: none;
|
|
34
34
|
}
|
|
35
35
|
|
package/es/split/split.vue.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { PropType } from 'vue';
|
|
2
|
-
declare var __VLS_9: {},
|
|
2
|
+
declare var __VLS_9: {}, __VLS_22: {}, __VLS_25: {}, __VLS_27: {};
|
|
3
3
|
type __VLS_Slots = {} & {
|
|
4
4
|
first?: (props: typeof __VLS_9) => any;
|
|
5
5
|
} & {
|
|
6
|
-
'resize-trigger'?: (props: typeof
|
|
6
|
+
'resize-trigger'?: (props: typeof __VLS_22) => any;
|
|
7
7
|
} & {
|
|
8
|
-
'resize-trigger-icon'?: (props: typeof
|
|
8
|
+
'resize-trigger-icon'?: (props: typeof __VLS_25) => any;
|
|
9
9
|
} & {
|
|
10
|
-
second?: (props: typeof
|
|
10
|
+
second?: (props: typeof __VLS_27) => any;
|
|
11
11
|
};
|
|
12
12
|
declare const __VLS_base: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
13
13
|
component: {
|
|
@@ -2,6 +2,7 @@ import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helper
|
|
|
2
2
|
import { getPrefixCls } from "../_utils/global-config.js";
|
|
3
3
|
import { isNumber, isString } from "../_utils/is.js";
|
|
4
4
|
import { off, on } from "../_utils/dom.js";
|
|
5
|
+
import { KEYBOARD_KEY } from "../_utils/keyboard.js";
|
|
5
6
|
import { _asyncToGenerator } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/asyncToGenerator.js";
|
|
6
7
|
import useMergeState from "../_hooks/use-merge-state.js";
|
|
7
8
|
import resize_trigger_default from "../_components/resize-trigger.js";
|
|
@@ -222,9 +223,31 @@ var split_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
222
223
|
const { width, height } = entry.contentRect;
|
|
223
224
|
triggerSize.value = isHorizontal.value ? width : height;
|
|
224
225
|
}
|
|
226
|
+
function onTriggerKeydown(_x2) {
|
|
227
|
+
return _onTriggerKeydown.apply(this, arguments);
|
|
228
|
+
}
|
|
229
|
+
function _onTriggerKeydown() {
|
|
230
|
+
_onTriggerKeydown = _asyncToGenerator(function* (e) {
|
|
231
|
+
var _await$getContainerSi2;
|
|
232
|
+
if (props.disabled) return;
|
|
233
|
+
const horiz = isHorizontal.value;
|
|
234
|
+
const inc = horiz ? e.key === KEYBOARD_KEY.ARROW_RIGHT : e.key === KEYBOARD_KEY.ARROW_DOWN;
|
|
235
|
+
const dec = horiz ? e.key === KEYBOARD_KEY.ARROW_LEFT : e.key === KEYBOARD_KEY.ARROW_UP;
|
|
236
|
+
if (!inc && !dec) return;
|
|
237
|
+
e.preventDefault();
|
|
238
|
+
const containerSize = (_await$getContainerSi2 = yield getContainerSize()) !== null && _await$getContainerSi2 !== void 0 ? _await$getContainerSi2 : 0;
|
|
239
|
+
if (!containerSize) return;
|
|
240
|
+
const step = e.shiftKey ? 20 : 10;
|
|
241
|
+
updateSize(getLegalPxSize(`${getPxSize({
|
|
242
|
+
size: mergedSize.value,
|
|
243
|
+
containerSize
|
|
244
|
+
}) + (inc ? step : -step)}px`, containerSize), containerSize);
|
|
245
|
+
});
|
|
246
|
+
return _onTriggerKeydown.apply(this, arguments);
|
|
247
|
+
}
|
|
225
248
|
onMounted(_asyncToGenerator(function* () {
|
|
226
|
-
var _await$
|
|
227
|
-
const containerSize = (_await$
|
|
249
|
+
var _await$getContainerSi3;
|
|
250
|
+
const containerSize = (_await$getContainerSi3 = yield getContainerSize()) !== null && _await$getContainerSi3 !== void 0 ? _await$getContainerSi3 : 0;
|
|
228
251
|
updateSize(getLegalPxSize(mergedSize.value, containerSize), containerSize);
|
|
229
252
|
}));
|
|
230
253
|
return (_ctx, _cache) => {
|
|
@@ -243,7 +266,8 @@ var split_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
243
266
|
"prefix-cls": `${unref(prefixCls)}-trigger`,
|
|
244
267
|
direction: isHorizontal.value ? "vertical" : "horizontal",
|
|
245
268
|
onMousedown: onMoveStart,
|
|
246
|
-
onResize: onTriggerResize
|
|
269
|
+
onResize: onTriggerResize,
|
|
270
|
+
onKeydown: onTriggerKeydown
|
|
247
271
|
}, {
|
|
248
272
|
default: withCtx(() => [renderSlot(_ctx.$slots, "resize-trigger")]),
|
|
249
273
|
icon: withCtx(() => [renderSlot(_ctx.$slots, "resize-trigger-icon")]),
|
|
@@ -3,8 +3,8 @@ import { getPrefixCls } from "../_utils/global-config.js";
|
|
|
3
3
|
import { isNumber, isUndefined } from "../_utils/is.js";
|
|
4
4
|
import { Fragment, computed, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, normalizeClass, normalizeStyle, onMounted, openBlock, ref, renderSlot, toDisplayString, toRefs, unref, watch } from "vue";
|
|
5
5
|
import BTween from "b-tween";
|
|
6
|
-
import dayjs from "dayjs";
|
|
7
6
|
import NP from "number-precision";
|
|
7
|
+
import dayjs from "dayjs";
|
|
8
8
|
//#region components/statistic/statistic.vue?vue&type=script&setup=true&lang.ts
|
|
9
9
|
var _hoisted_1 = { key: 0 };
|
|
10
10
|
var statistic_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "Statistic" }), {}, {
|
package/es/steps/context.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/objectSpread2.js";
|
|
2
2
|
import { getPrefixCls } from "../_utils/global-config.js";
|
|
3
|
+
import { isActivationKey } from "../_utils/keyboard.js";
|
|
3
4
|
import IconClose from "../icon/icon-close/index.js";
|
|
4
5
|
import { useIndex } from "../_hooks/use-index.js";
|
|
5
6
|
import IconCheck from "../icon/icon-check/index.js";
|
|
6
7
|
import { stepsInjectionKey } from "./context.js";
|
|
7
8
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, getCurrentInstance, inject, normalizeClass, onBeforeUnmount, openBlock, reactive, ref, renderSlot, toDisplayString, unref } from "vue";
|
|
8
9
|
//#region components/steps/step.vue?vue&type=script&setup=true&lang.ts
|
|
10
|
+
var _hoisted_1 = ["aria-current", "tabindex"];
|
|
9
11
|
var step_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "Step" }), {}, {
|
|
10
12
|
__name: "step",
|
|
11
13
|
props: {
|
|
@@ -89,6 +91,12 @@ var step_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
89
91
|
const handleClick = (ev) => {
|
|
90
92
|
if (!props.disabled) stepsCtx === null || stepsCtx === void 0 || stepsCtx.onClick(stepNumber.value, ev);
|
|
91
93
|
};
|
|
94
|
+
const onKeydown = (ev) => {
|
|
95
|
+
if ((stepsCtx === null || stepsCtx === void 0 ? void 0 : stepsCtx.changeable) && !props.disabled && isActivationKey(ev)) {
|
|
96
|
+
ev.preventDefault();
|
|
97
|
+
stepsCtx === null || stepsCtx === void 0 || stepsCtx.onClick(stepNumber.value, ev);
|
|
98
|
+
}
|
|
99
|
+
};
|
|
92
100
|
const cls = computed(() => [
|
|
93
101
|
prefixCls,
|
|
94
102
|
`${prefixCls}-${computedStatus.value}`,
|
|
@@ -99,11 +107,16 @@ var step_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
99
107
|
}
|
|
100
108
|
]);
|
|
101
109
|
return (_ctx, _cache) => {
|
|
110
|
+
var _unref2, _unref3;
|
|
102
111
|
return openBlock(), createElementBlock("div", {
|
|
103
112
|
ref_key: "itemRef",
|
|
104
113
|
ref: itemRef,
|
|
105
114
|
class: normalizeClass(cls.value),
|
|
106
|
-
|
|
115
|
+
role: "listitem",
|
|
116
|
+
"aria-current": stepNumber.value === ((_unref2 = unref(stepsCtx)) === null || _unref2 === void 0 ? void 0 : _unref2.current) ? "step" : void 0,
|
|
117
|
+
tabindex: ((_unref3 = unref(stepsCtx)) === null || _unref3 === void 0 ? void 0 : _unref3.changeable) && !props.disabled ? 0 : void 0,
|
|
118
|
+
onClick: handleClick,
|
|
119
|
+
onKeydown
|
|
107
120
|
}, [
|
|
108
121
|
showTail.value ? (openBlock(), createElementBlock("div", {
|
|
109
122
|
key: 0,
|
|
@@ -126,7 +139,7 @@ var step_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCompo
|
|
|
126
139
|
key: 0,
|
|
127
140
|
class: normalizeClass(`${unref(prefixCls)}-description`)
|
|
128
141
|
}, [renderSlot(_ctx.$slots, "description", {}, () => [createTextVNode(toDisplayString(__props.description), 1)])], 2)) : createCommentVNode("", true)], 2)
|
|
129
|
-
],
|
|
142
|
+
], 42, _hoisted_1);
|
|
130
143
|
};
|
|
131
144
|
}
|
|
132
145
|
}));
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { _objectSpread2 } from "../_virtual/_@oxc-project_runtime@0.133.0/helpers/esm/objectSpread2.js";
|
|
2
2
|
import { getPrefixCls } from "../_utils/global-config.js";
|
|
3
|
+
import { useI18n } from "../locale/index.js";
|
|
3
4
|
import { stepsInjectionKey } from "./context.js";
|
|
4
|
-
import { computed, createElementBlock, defineComponent, normalizeClass, openBlock, provide, reactive, ref, renderSlot, toRefs, useSlots } from "vue";
|
|
5
|
+
import { computed, createElementBlock, defineComponent, normalizeClass, openBlock, provide, reactive, ref, renderSlot, toRefs, unref, useSlots } from "vue";
|
|
5
6
|
//#region components/steps/steps.vue?vue&type=script&setup=true&lang.ts
|
|
7
|
+
var _hoisted_1 = ["aria-label"];
|
|
6
8
|
var steps_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "Steps" }), {}, {
|
|
7
9
|
__name: "steps",
|
|
8
10
|
props: {
|
|
@@ -90,6 +92,7 @@ var steps_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
90
92
|
const emit = __emit;
|
|
91
93
|
useSlots();
|
|
92
94
|
const { type, lineLess } = toRefs(props);
|
|
95
|
+
const { t } = useI18n();
|
|
93
96
|
const prefixCls = getPrefixCls("steps");
|
|
94
97
|
const _current = ref(props.defaultCurrent);
|
|
95
98
|
const computedCurrent = computed(() => {
|
|
@@ -140,6 +143,7 @@ var steps_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
140
143
|
lineLess,
|
|
141
144
|
current: computedCurrent,
|
|
142
145
|
errorSteps,
|
|
146
|
+
changeable: computed(() => props.changeable),
|
|
143
147
|
getStatus,
|
|
144
148
|
addItem,
|
|
145
149
|
removeItem,
|
|
@@ -147,7 +151,11 @@ var steps_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
147
151
|
parentCls: prefixCls
|
|
148
152
|
}));
|
|
149
153
|
return (_ctx, _cache) => {
|
|
150
|
-
return openBlock(), createElementBlock("div", {
|
|
154
|
+
return openBlock(), createElementBlock("div", {
|
|
155
|
+
role: "list",
|
|
156
|
+
"aria-label": unref(t)("a11y.steps"),
|
|
157
|
+
class: normalizeClass(cls.value)
|
|
158
|
+
}, [renderSlot(_ctx.$slots, "default")], 10, _hoisted_1);
|
|
151
159
|
};
|
|
152
160
|
}
|
|
153
161
|
}));
|
package/es/steps/style/index.css
CHANGED
|
@@ -570,7 +570,7 @@
|
|
|
570
570
|
}
|
|
571
571
|
.sd-steps-changeable .sd-steps-item-title,
|
|
572
572
|
.sd-steps-changeable .sd-steps-item-description {
|
|
573
|
-
transition:
|
|
573
|
+
transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
574
574
|
}
|
|
575
575
|
.sd-steps-changeable .sd-steps-item:not(.sd-steps-item-active, .sd-steps-item-disabled) {
|
|
576
576
|
cursor: pointer;
|
|
@@ -15,7 +15,7 @@ $steps-prefix-cls: string.unquote('#{theme.$prefix}-steps');
|
|
|
15
15
|
&-changeable {
|
|
16
16
|
.#{$steps-prefix-cls}-item-title,
|
|
17
17
|
.#{$steps-prefix-cls}-item-description {
|
|
18
|
-
transition:
|
|
18
|
+
transition: color theme.$transition-duration-1 theme.$transition-timing-function-standard;
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
@use '@style/theme/index.scss' as *;
|
|
2
|
+
|
|
3
|
+
// 全局减少动态偏好安全网:覆盖所有 Vue 过渡入场/退场类(共享类与各组件自定义类)。
|
|
4
|
+
// 去掉 transform 位移(避免前庭不适),保留 opacity/颜色过渡并缩短至 dur-1。
|
|
5
|
+
// 使用 !important 以确保覆盖各组件自身的过渡声明(a11y 必须优先)。
|
|
6
|
+
// 仅匹配 Vue 过渡类名后缀(*-enter-active / *-leave-active / *-enter-from / *-leave-to 及 appear 变体),
|
|
7
|
+
// 不影响状态类(如 *-active、*-checked、*-selected)。
|
|
8
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9
|
+
// 抹平初始/终末的 transform,使元素不再位移(opacity/颜色照常过渡)
|
|
10
|
+
[class*='-enter-from'],
|
|
11
|
+
[class*='-appear-from'],
|
|
12
|
+
[class*='-leave-to'] {
|
|
13
|
+
transform: none !important;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// 缩短过渡时长至 ≈即时(仍可见出现/消失,但不再有缓慢运动)
|
|
17
|
+
[class*='-enter-active'],
|
|
18
|
+
[class*='-appear-active'],
|
|
19
|
+
[class*='-leave-active'] {
|
|
20
|
+
transition-duration: $transition-duration-1 !important;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
@use '@style/theme/index.scss' as *;
|
|
2
2
|
|
|
3
|
-
// modal use
|
|
3
|
+
// modal use(fullscreen 模态框)。从 scale(0.94) 起步而非 scale(0.5)。
|
|
4
4
|
.zoom-in-enter-from,
|
|
5
5
|
.zoom-in-appear-from {
|
|
6
|
-
transform: scale(0.
|
|
6
|
+
transform: scale(0.94, 0.94);
|
|
7
7
|
opacity: 0;
|
|
8
8
|
}
|
|
9
9
|
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
.zoom-in-leave-to {
|
|
29
|
-
transform: scale(0.
|
|
29
|
+
transform: scale(0.94, 0.94);
|
|
30
30
|
opacity: 0;
|
|
31
31
|
}
|
|
32
32
|
|
|
@@ -36,10 +36,11 @@
|
|
|
36
36
|
transform $transition-duration-3 $transition-timing-function-standard;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
// used by tooltip
|
|
39
|
+
// used by tooltip / popover / popconfirm。缩放出现,渐隐退出。
|
|
40
|
+
// 从 scale(0.96) 起步而非 scale(0.5):小浮层只需轻微弹出,过大的缩放显得“凭空炸出”。
|
|
40
41
|
.zoom-in-fade-out-enter-from,
|
|
41
42
|
.zoom-in-fade-out-appear-from {
|
|
42
|
-
transform: scale(0.
|
|
43
|
+
transform: scale(0.96, 0.96);
|
|
43
44
|
opacity: 0;
|
|
44
45
|
}
|
|
45
46
|
|
|
@@ -61,8 +62,8 @@
|
|
|
61
62
|
opacity: 1;
|
|
62
63
|
}
|
|
63
64
|
|
|
65
|
+
// 退出改为纯渐隐:退出时不再缩放,避免吸引注意力(与类名 fade-out 一致)
|
|
64
66
|
.zoom-in-fade-out-leave-to {
|
|
65
|
-
transform: scale(0.5, 0.5);
|
|
66
67
|
opacity: 0;
|
|
67
68
|
}
|
|
68
69
|
|
package/es/style/icon.scss
CHANGED
|
@@ -30,6 +30,14 @@
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
// 减少动态偏好:放慢加载图标旋转(保留加载态指示,避免快速循环带来的不适)
|
|
34
|
+
@media (prefers-reduced-motion: reduce) {
|
|
35
|
+
.#{$prefix}-icon-loading,
|
|
36
|
+
.#{$prefix}-icon-spin {
|
|
37
|
+
animation-duration: 3s;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
33
41
|
.#{$prefix}-icon-hover {
|
|
34
42
|
position: relative;
|
|
35
43
|
display: block;
|
|
@@ -45,7 +53,7 @@
|
|
|
45
53
|
box-sizing: border-box;
|
|
46
54
|
background-color: global.$color-transparent;
|
|
47
55
|
border-radius: component.$icon-hover-border-radius;
|
|
48
|
-
transition: background-color $transition-duration-1 $transition-timing-function-
|
|
56
|
+
transition: background-color $transition-duration-1 $transition-timing-function-standard;
|
|
49
57
|
content: '';
|
|
50
58
|
}
|
|
51
59
|
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
font-size: 12px;
|
|
69
69
|
background-color: var(--sd-color-bg-white);
|
|
70
70
|
border-radius: 50%;
|
|
71
|
-
transition:
|
|
71
|
+
transition: left 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), color 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
72
72
|
}
|
|
73
73
|
.sd-switch-checked {
|
|
74
74
|
background-color: rgb(var(--sd-primary-6));
|
|
@@ -65,7 +65,10 @@ $switch-size-small-line-gap: (($switch-size-small - $switch-line-size-dot-small)
|
|
|
65
65
|
font-size: 12px;
|
|
66
66
|
background-color: $switch-color-dot-bg;
|
|
67
67
|
border-radius: 50%;
|
|
68
|
-
|
|
68
|
+
// 滑块位移依赖 left(相对父级定位),暂保留 left 过渡;颜色同步过渡
|
|
69
|
+
transition:
|
|
70
|
+
left theme.$transition-duration-2 theme.$transition-timing-function-standard,
|
|
71
|
+
color theme.$transition-duration-2 theme.$transition-timing-function-standard;
|
|
69
72
|
}
|
|
70
73
|
|
|
71
74
|
&-checked {
|
|
@@ -7,7 +7,11 @@ import IconLoading from "../icon/icon-loading/index.js";
|
|
|
7
7
|
import { useSize } from "../_hooks/use-size.js";
|
|
8
8
|
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, defineComponent, getCurrentInstance, normalizeClass, normalizeStyle, openBlock, ref, renderSlot, toDisplayString, toRefs, unref, watch } from "vue";
|
|
9
9
|
//#region components/switch/switch.vue?vue&type=script&setup=true&lang.ts
|
|
10
|
-
var _hoisted_1 = [
|
|
10
|
+
var _hoisted_1 = [
|
|
11
|
+
"aria-checked",
|
|
12
|
+
"aria-busy",
|
|
13
|
+
"disabled"
|
|
14
|
+
];
|
|
11
15
|
var switch_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "Switch" }), {}, {
|
|
12
16
|
__name: "switch",
|
|
13
17
|
props: {
|
|
@@ -247,6 +251,7 @@ var switch_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
247
251
|
type: "button",
|
|
248
252
|
role: "switch",
|
|
249
253
|
"aria-checked": computedCheck.value,
|
|
254
|
+
"aria-busy": computedLoading.value || void 0,
|
|
250
255
|
class: normalizeClass(cls.value),
|
|
251
256
|
style: normalizeStyle(buttonStyle.value),
|
|
252
257
|
disabled: unref(mergedDisabled),
|
package/es/table/index.d.ts
CHANGED
|
@@ -243,12 +243,12 @@ declare const Table: {
|
|
|
243
243
|
bordered: boolean | import("./interface").TableBorder;
|
|
244
244
|
columns: import("./interface").TableColumnData[];
|
|
245
245
|
hoverable: boolean;
|
|
246
|
-
pagination: boolean | import("..").PaginationProps;
|
|
247
246
|
defaultExpandAllRows: boolean;
|
|
248
247
|
indentSize: number;
|
|
249
248
|
filterIconAlignLeft: boolean;
|
|
250
249
|
stripe: boolean;
|
|
251
250
|
tableLayoutFixed: boolean;
|
|
251
|
+
pagination: boolean | import("..").PaginationProps;
|
|
252
252
|
pagePosition: "top" | "tl" | "tr" | "bottom" | "bl" | "br";
|
|
253
253
|
rowKey: string | ((record: import("./interface").TableData) => import("../_utils/types").BaseType);
|
|
254
254
|
showHeader: boolean;
|
|
@@ -477,12 +477,12 @@ declare const Table: {
|
|
|
477
477
|
bordered: boolean | import("./interface").TableBorder;
|
|
478
478
|
columns: import("./interface").TableColumnData[];
|
|
479
479
|
hoverable: boolean;
|
|
480
|
-
pagination: boolean | import("..").PaginationProps;
|
|
481
480
|
defaultExpandAllRows: boolean;
|
|
482
481
|
indentSize: number;
|
|
483
482
|
filterIconAlignLeft: boolean;
|
|
484
483
|
stripe: boolean;
|
|
485
484
|
tableLayoutFixed: boolean;
|
|
485
|
+
pagination: boolean | import("..").PaginationProps;
|
|
486
486
|
pagePosition: "top" | "tl" | "tr" | "bottom" | "bl" | "br";
|
|
487
487
|
rowKey: string | ((record: import("./interface").TableData) => import("../_utils/types").BaseType);
|
|
488
488
|
showHeader: boolean;
|
|
@@ -731,12 +731,12 @@ declare const Table: {
|
|
|
731
731
|
bordered: boolean | import("./interface").TableBorder;
|
|
732
732
|
columns: import("./interface").TableColumnData[];
|
|
733
733
|
hoverable: boolean;
|
|
734
|
-
pagination: boolean | import("..").PaginationProps;
|
|
735
734
|
defaultExpandAllRows: boolean;
|
|
736
735
|
indentSize: number;
|
|
737
736
|
filterIconAlignLeft: boolean;
|
|
738
737
|
stripe: boolean;
|
|
739
738
|
tableLayoutFixed: boolean;
|
|
739
|
+
pagination: boolean | import("..").PaginationProps;
|
|
740
740
|
pagePosition: "top" | "tl" | "tr" | "bottom" | "bl" | "br";
|
|
741
741
|
rowKey: string | ((record: import("./interface").TableData) => import("../_utils/types").BaseType);
|
|
742
742
|
showHeader: boolean;
|
|
@@ -823,9 +823,9 @@ declare const Table: {
|
|
|
823
823
|
resizable: BooleanConstructor;
|
|
824
824
|
}>> & Readonly<{}>, {
|
|
825
825
|
column: import("./interface").TableColumnData;
|
|
826
|
-
resizable: boolean;
|
|
827
826
|
dataColumns: import("./interface").TableColumnData[];
|
|
828
827
|
operations: import("./interface").TableOperationColumn[];
|
|
828
|
+
resizable: boolean;
|
|
829
829
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
830
830
|
Td: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
831
831
|
rowIndex: NumberConstructor;
|
package/es/table/style/index.css
CHANGED
|
@@ -230,7 +230,7 @@
|
|
|
230
230
|
width: 10px;
|
|
231
231
|
box-shadow: none;
|
|
232
232
|
transform: translateX(-100%);
|
|
233
|
-
transition: box-shadow 0.1s cubic-bezier(0, 0, 1, 1);
|
|
233
|
+
transition: box-shadow 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
234
234
|
content: "";
|
|
235
235
|
pointer-events: none;
|
|
236
236
|
}
|
|
@@ -248,7 +248,7 @@
|
|
|
248
248
|
border: 1px solid var(--sd-color-white);
|
|
249
249
|
border-radius: var(--sd-border-radius-medium);
|
|
250
250
|
cursor: pointer;
|
|
251
|
-
transition:
|
|
251
|
+
transition: border-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
252
252
|
}
|
|
253
253
|
.sd-table-editable-row:hover .sd-table-cell-wrap-value {
|
|
254
254
|
border: 1px solid var(--sd-color-neutral-3);
|
|
@@ -268,7 +268,7 @@
|
|
|
268
268
|
border-radius: 2px;
|
|
269
269
|
outline: none;
|
|
270
270
|
cursor: pointer;
|
|
271
|
-
transition: background-color 0.1s cubic-bezier(0, 0, 1, 1);
|
|
271
|
+
transition: background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
272
272
|
}
|
|
273
273
|
.sd-table .sd-table-expand-btn:hover {
|
|
274
274
|
color: var(--sd-color-text-1);
|
|
@@ -345,7 +345,7 @@
|
|
|
345
345
|
max-width: 40px;
|
|
346
346
|
}
|
|
347
347
|
.sd-table-th {
|
|
348
|
-
transition: background-color 0.1s cubic-bezier(0, 0, 1, 1);
|
|
348
|
+
transition: background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
349
349
|
}
|
|
350
350
|
.sd-table-cell-with-sorter {
|
|
351
351
|
display: flex;
|
|
@@ -392,7 +392,7 @@
|
|
|
392
392
|
top: 50%;
|
|
393
393
|
color: var(--sd-color-neutral-5);
|
|
394
394
|
font-size: 12px;
|
|
395
|
-
transition:
|
|
395
|
+
transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
396
396
|
}
|
|
397
397
|
.sd-table-sorter-icon .sd-icon-caret-up {
|
|
398
398
|
top: -2px;
|
|
@@ -418,7 +418,7 @@
|
|
|
418
418
|
vertical-align: 0;
|
|
419
419
|
background-color: transparent;
|
|
420
420
|
cursor: pointer;
|
|
421
|
-
transition:
|
|
421
|
+
transition: background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
422
422
|
}
|
|
423
423
|
.sd-table-filters:hover, .sd-table-filters-open {
|
|
424
424
|
background-color: var(--sd-color-neutral-4);
|
|
@@ -426,7 +426,7 @@
|
|
|
426
426
|
.sd-table-filters svg {
|
|
427
427
|
color: var(--sd-color-text-2);
|
|
428
428
|
font-size: 16px;
|
|
429
|
-
transition:
|
|
429
|
+
transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
430
430
|
}
|
|
431
431
|
.sd-table-filters-active svg {
|
|
432
432
|
color: rgb(var(--sd-primary-6));
|
|
@@ -480,7 +480,7 @@
|
|
|
480
480
|
width: 10px;
|
|
481
481
|
height: 100%;
|
|
482
482
|
box-shadow: none;
|
|
483
|
-
transition: box-shadow 0.1s cubic-bezier(0, 0, 1, 1);
|
|
483
|
+
transition: box-shadow 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
|
|
484
484
|
content: "";
|
|
485
485
|
pointer-events: none;
|
|
486
486
|
}
|