yc-design-vue 2.2.5 → 2.2.7
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/index.umd.js +1 -1
- package/dist/style.css +1 -1
- package/es/Alert/index.vue.js +2 -2
- package/es/Anchor/Anchor.vue.d.ts +1 -1
- package/es/Anchor/index.d.ts +3 -3
- package/es/Avatar/Avatar.vue.js +1 -1
- package/es/BackTop/index.vue.js +1 -1
- package/es/Breadcrumb/BreadcrumbItem.vue.js +1 -1
- package/es/Breadcrumb/BreadcrumbMore.vue.js +1 -1
- package/es/Breadcrumb/BreadcrumbSeparator.vue.js +2 -2
- package/es/Calendar/Calendar.vue.js +2 -2
- package/es/Carousel/CarouselArrow.vue.js +1 -1
- package/es/Cascader/CascaderIcon.vue.js +2 -2
- package/es/Cascader/CascaderOption.vue.js +1 -1
- package/es/Checkbox/Checkbox.vue.js +2 -2
- package/es/Collapse/CollapseItem.vue.js +2 -2
- package/es/DatePicker/{YcDatePicker.vue.d.ts → DatePicker.vue.d.ts} +2 -2
- package/es/DatePicker/DatePicker.vue.js +334 -0
- package/es/DatePicker/DatePicker.vue3.js +5 -0
- package/es/DatePicker/{YcMonthPicker.vue.js → MonthPicker.vue.js} +100 -72
- package/es/DatePicker/MonthPicker.vue3.js +5 -0
- package/es/DatePicker/WeekPicker.vue.js +301 -0
- package/es/DatePicker/WeekPicker.vue3.js +5 -0
- package/es/DatePicker/{YcYearPicker.vue.js → YearPicker.vue.js} +82 -57
- package/es/DatePicker/YearPicker.vue3.js +5 -0
- package/es/DatePicker/component/PickerHeader.vue.js +1 -1
- package/es/DatePicker/component/PickerInput.vue.d.ts +1 -0
- package/es/DatePicker/component/PickerInput.vue.js +41 -39
- package/es/DatePicker/component/PickerPanel.vue.d.ts +2 -0
- package/es/DatePicker/component/PickerPanel.vue.js +26 -29
- package/es/DatePicker/hooks/useContext.js +1 -1
- package/es/DatePicker/hooks/userPicker.d.ts +2 -0
- package/es/DatePicker/hooks/userPicker.js +26 -2
- package/es/DatePicker/index.css +3 -3
- package/es/DatePicker/index.d.ts +7 -7
- package/es/DatePicker/index.js +8 -8
- package/es/DatePicker/type.d.ts +6 -5
- package/es/Drawer/Drawer.vue.js +2 -2
- package/es/Dropdown/DropdownButton.vue.js +1 -1
- package/es/Dropdown/Dsubmenu.vue.js +1 -1
- package/es/Empty/index.vue.js +1 -1
- package/es/Image/Image.vue.js +1 -1
- package/es/Image/ImagePreview.vue.js +1 -1
- package/es/Image/ImagePreviewArrow.vue.js +1 -1
- package/es/Image/ImagePreviewToolbar.vue.js +1 -1
- package/es/Input/Input.vue.js +2 -2
- package/es/Input/InputPassword.vue.js +2 -2
- package/es/Input/InputSearch.vue.js +2 -2
- package/es/InputNumber/InputOperaBtn.vue.js +1 -1
- package/es/InputTag/index.vue.js +2 -2
- package/es/Layout/LayoutSider.vue.js +1 -1
- package/es/Link/index.vue.js +1 -1
- package/es/Menu/Menu.vue.js +1 -1
- package/es/Menu/MenuEllipsis.vue.js +1 -1
- package/es/Menu/SubMenu.vue.js +1 -1
- package/es/Message/Message.vue.js +2 -2
- package/es/Modal/Modal.vue.js +2 -2
- package/es/Notification/Notification.vue.js +2 -2
- package/es/PageHeader/index.vue.js +2 -2
- package/es/Pagination/PaginationItem.vue.js +1 -1
- package/es/Progress/ProgressCircle.vue.js +1 -1
- package/es/Radio/Radio.vue.js +2 -2
- package/es/Rate/index.vue.js +1 -1
- package/es/ResizeBox/index.vue.js +1 -1
- package/es/Select/SelectIcon.vue.js +2 -2
- package/es/Spin/index.vue.js +1 -1
- package/es/Split/index.vue.js +1 -1
- package/es/Steps/Step.vue.js +1 -1
- package/es/Tabs/TabButton.vue.js +2 -2
- package/es/Tabs/Tabs.vue.js +1 -1
- package/es/Tag/index.vue.js +2 -2
- package/es/Textarea/index.vue.js +2 -2
- package/es/TimePicker/TimePicker.vue.d.ts +5 -98
- package/es/TimePicker/TimePicker.vue.js +22 -17
- package/es/TimePicker/TimePickerPanel.vue.d.ts +1 -3
- package/es/TimePicker/TimePickerPanel.vue.js +89 -56
- package/es/TimePicker/hooks/useContext.d.ts +6 -0
- package/es/TimePicker/hooks/useContext.js +9 -0
- package/es/TimePicker/index.css +1 -1
- package/es/TimePicker/index.d.ts +10 -49
- package/es/TimePicker/type.d.ts +3 -0
- package/es/Transfer/Transfer.vue.js +1 -1
- package/es/Transfer/TransferPanel.vue.js +2 -2
- package/es/Trigger/index.vue.js +1 -1
- package/es/Typography/TypographyBase.vue.js +1 -1
- package/es/Upload/UploadButton.vue.js +1 -1
- package/es/Upload/UploadDrag.vue.js +1 -1
- package/es/Upload/UploadFileList.vue.js +2 -2
- package/es/Upload/UploadPictureCard.vue.js +1 -1
- package/es/_shared/components/IconButton/{index.vue2.js → index.vue.js} +1 -1
- package/es/_shared/components/IconButton/index.vue3.js +2 -2
- package/es/_shared/constants/index.js +1 -1
- package/es/_shared/icons/IconArrowDown.vue.js +1 -1
- package/es/_shared/icons/IconArrowRight.vue.js +1 -1
- package/es/_shared/icons/IconCalendar.vue2.js +1 -1
- package/es/_shared/icons/IconCheck.vue.js +1 -1
- package/es/_shared/icons/IconCheckboxChecked.vue.js +1 -1
- package/es/_shared/icons/IconClose.vue.js +1 -1
- package/es/_shared/icons/IconCopy.vue2.js +1 -1
- package/es/_shared/icons/IconDelete.vue2.js +1 -1
- package/es/_shared/icons/IconDoubleLeft.vue2.js +1 -1
- package/es/_shared/icons/IconDoubleRight.vue2.js +1 -1
- package/es/_shared/icons/IconDragDot.vue.js +1 -1
- package/es/_shared/icons/IconEdit.vue2.js +1 -1
- package/es/_shared/icons/IconEmpty.vue.js +1 -1
- package/es/_shared/icons/IconError.vue.js +1 -1
- package/es/_shared/icons/IconExclamation.vue2.js +1 -1
- package/es/_shared/icons/IconEyeClose.vue.js +1 -1
- package/es/_shared/icons/IconEyeOpen.vue.js +1 -1
- package/es/_shared/icons/IconFaceSmile.vue.js +1 -1
- package/es/_shared/icons/IconFile.vue2.js +1 -1
- package/es/_shared/icons/IconFullScreen.vue2.js +1 -1
- package/es/_shared/icons/IconImageClose.vue.js +1 -1
- package/es/_shared/icons/IconInfo.vue.js +1 -1
- package/es/_shared/icons/IconInfoLine.vue.js +1 -1
- package/es/_shared/icons/IconLink.vue.js +1 -1
- package/es/_shared/icons/IconLoading.vue.js +1 -1
- package/es/_shared/icons/IconMenuFold.vue.js +1 -1
- package/es/_shared/icons/IconMenuUnfold.vue.js +1 -1
- package/es/_shared/icons/IconMinus.vue2.js +1 -1
- package/es/_shared/icons/IconMore.vue.js +1 -1
- package/es/_shared/icons/IconOriginSize.vue2.js +1 -1
- package/es/_shared/icons/IconPlus.vue.js +1 -1
- package/es/_shared/icons/IconRight.vue.js +1 -1
- package/es/_shared/icons/IconRotateLeft.vue2.js +1 -1
- package/es/_shared/icons/IconRotateRight.vue2.js +1 -1
- package/es/_shared/icons/IconSearch.vue.js +1 -1
- package/es/_shared/icons/IconSeparator.vue.js +24 -1
- package/es/_shared/icons/IconSeparator.vue2.js +1 -24
- package/es/_shared/icons/IconStar.vue.js +1 -1
- package/es/_shared/icons/IconSuccess.vue.js +1 -1
- package/es/_shared/icons/IconTime.vue.js +1 -1
- package/es/_shared/icons/IconToTop.vue.js +1 -1
- package/es/_shared/icons/IconUpload.vue2.js +1 -1
- package/es/_shared/icons/IconWarning.vue.js +1 -1
- package/es/_shared/icons/IconZoomIn.vue2.js +1 -1
- package/es/_shared/icons/IconZoomOut.vue2.js +1 -1
- package/es/index.d.ts +6 -6
- package/es/index.js +4 -4
- package/es/style.css +1 -1
- package/lib/Alert/index.vue.js +1 -1
- package/lib/Anchor/Anchor.vue.d.ts +1 -1
- package/lib/Anchor/index.d.ts +3 -3
- package/lib/Avatar/Avatar.vue.js +1 -1
- package/lib/BackTop/index.vue.js +1 -1
- package/lib/Breadcrumb/BreadcrumbItem.vue.js +1 -1
- package/lib/Breadcrumb/BreadcrumbMore.vue.js +1 -1
- package/lib/Breadcrumb/BreadcrumbSeparator.vue.js +1 -1
- package/lib/Calendar/Calendar.vue.js +1 -1
- package/lib/Carousel/CarouselArrow.vue.js +1 -1
- package/lib/Cascader/CascaderIcon.vue.js +1 -1
- package/lib/Cascader/CascaderOption.vue.js +1 -1
- package/lib/Checkbox/Checkbox.vue.js +1 -1
- package/lib/Collapse/CollapseItem.vue.js +1 -1
- package/lib/DatePicker/{YcDatePicker.vue.d.ts → DatePicker.vue.d.ts} +2 -2
- package/lib/DatePicker/DatePicker.vue.js +1 -0
- package/lib/DatePicker/DatePicker.vue3.js +1 -0
- package/lib/DatePicker/MonthPicker.vue.js +1 -0
- package/lib/DatePicker/MonthPicker.vue3.js +1 -0
- package/lib/DatePicker/WeekPicker.vue.js +1 -0
- package/lib/DatePicker/WeekPicker.vue3.js +1 -0
- package/lib/DatePicker/YearPicker.vue.js +1 -0
- package/lib/DatePicker/{YcDatePicker.vue3.js → YearPicker.vue3.js} +1 -1
- package/lib/DatePicker/component/PickerHeader.vue.js +1 -1
- package/lib/DatePicker/component/PickerInput.vue.d.ts +1 -0
- package/lib/DatePicker/component/PickerInput.vue.js +1 -1
- package/lib/DatePicker/component/PickerPanel.vue.d.ts +2 -0
- package/lib/DatePicker/component/PickerPanel.vue.js +1 -1
- package/lib/DatePicker/hooks/useContext.js +1 -1
- package/lib/DatePicker/hooks/userPicker.d.ts +2 -0
- package/lib/DatePicker/hooks/userPicker.js +1 -1
- package/lib/DatePicker/index.css +3 -3
- package/lib/DatePicker/index.d.ts +7 -7
- package/lib/DatePicker/index.js +1 -1
- package/lib/DatePicker/type.d.ts +6 -5
- package/lib/Drawer/Drawer.vue.js +1 -1
- package/lib/Dropdown/DropdownButton.vue.js +1 -1
- package/lib/Dropdown/Dsubmenu.vue.js +1 -1
- package/lib/Empty/index.vue.js +1 -1
- package/lib/Image/Image.vue.js +1 -1
- package/lib/Image/ImagePreview.vue.js +1 -1
- package/lib/Image/ImagePreviewArrow.vue.js +1 -1
- package/lib/Image/ImagePreviewToolbar.vue.js +1 -1
- package/lib/Input/Input.vue.js +1 -1
- package/lib/Input/InputPassword.vue.js +1 -1
- package/lib/Input/InputSearch.vue.js +1 -1
- package/lib/InputNumber/InputOperaBtn.vue.js +1 -1
- package/lib/InputTag/index.vue.js +1 -1
- package/lib/Layout/LayoutSider.vue.js +1 -1
- package/lib/Link/index.vue.js +1 -1
- package/lib/Menu/Menu.vue.js +1 -1
- package/lib/Menu/MenuEllipsis.vue.js +1 -1
- package/lib/Menu/SubMenu.vue.js +1 -1
- package/lib/Message/Message.vue.js +1 -1
- package/lib/Modal/Modal.vue.js +1 -1
- package/lib/Notification/Notification.vue.js +1 -1
- package/lib/PageHeader/index.vue.js +1 -1
- package/lib/Pagination/PaginationItem.vue.js +1 -1
- package/lib/Progress/ProgressCircle.vue.js +1 -1
- package/lib/Radio/Radio.vue.js +1 -1
- package/lib/Rate/index.vue.js +1 -1
- package/lib/ResizeBox/index.vue.js +1 -1
- package/lib/Select/SelectIcon.vue.js +1 -1
- package/lib/Spin/index.vue.js +1 -1
- package/lib/Split/index.vue.js +1 -1
- package/lib/Steps/Step.vue.js +1 -1
- package/lib/Tabs/TabButton.vue.js +1 -1
- package/lib/Tabs/Tabs.vue.js +1 -1
- package/lib/Tag/index.vue.js +1 -1
- package/lib/Textarea/index.vue.js +1 -1
- package/lib/TimePicker/TimePicker.vue.d.ts +5 -98
- package/lib/TimePicker/TimePicker.vue.js +1 -1
- package/lib/TimePicker/TimePickerPanel.vue.d.ts +1 -3
- package/lib/TimePicker/TimePickerPanel.vue.js +1 -1
- package/lib/TimePicker/hooks/useContext.d.ts +6 -0
- package/lib/TimePicker/hooks/useContext.js +1 -1
- package/lib/TimePicker/index.css +1 -1
- package/lib/TimePicker/index.d.ts +10 -49
- package/lib/TimePicker/type.d.ts +3 -0
- package/lib/Transfer/Transfer.vue.js +1 -1
- package/lib/Transfer/TransferPanel.vue.js +1 -1
- package/lib/Trigger/index.vue.js +1 -1
- package/lib/Typography/TypographyBase.vue.js +1 -1
- package/lib/Upload/UploadButton.vue.js +1 -1
- package/lib/Upload/UploadDrag.vue.js +1 -1
- package/lib/Upload/UploadFileList.vue.js +1 -1
- package/lib/Upload/UploadPictureCard.vue.js +1 -1
- package/lib/_shared/components/IconButton/index.vue.js +1 -0
- package/lib/_shared/components/IconButton/index.vue3.js +1 -1
- package/lib/_shared/constants/index.js +1 -1
- package/lib/_shared/icons/IconArrowDown.vue.js +1 -1
- package/lib/_shared/icons/IconArrowRight.vue.js +1 -1
- package/lib/_shared/icons/IconCalendar.vue2.js +1 -1
- package/lib/_shared/icons/IconCheck.vue.js +1 -1
- package/lib/_shared/icons/IconCheckboxChecked.vue.js +1 -1
- package/lib/_shared/icons/IconClose.vue.js +1 -1
- package/lib/_shared/icons/IconCopy.vue2.js +1 -1
- package/lib/_shared/icons/IconDelete.vue2.js +1 -1
- package/lib/_shared/icons/IconDoubleLeft.vue2.js +1 -1
- package/lib/_shared/icons/IconDoubleRight.vue2.js +1 -1
- package/lib/_shared/icons/IconDragDot.vue.js +1 -1
- package/lib/_shared/icons/IconEdit.vue2.js +1 -1
- package/lib/_shared/icons/IconEmpty.vue.js +1 -1
- package/lib/_shared/icons/IconError.vue.js +1 -1
- package/lib/_shared/icons/IconExclamation.vue2.js +1 -1
- package/lib/_shared/icons/IconEyeClose.vue.js +1 -1
- package/lib/_shared/icons/IconEyeOpen.vue.js +1 -1
- package/lib/_shared/icons/IconFaceSmile.vue.js +1 -1
- package/lib/_shared/icons/IconFile.vue2.js +1 -1
- package/lib/_shared/icons/IconFullScreen.vue2.js +1 -1
- package/lib/_shared/icons/IconImageClose.vue.js +1 -1
- package/lib/_shared/icons/IconInfo.vue.js +1 -1
- package/lib/_shared/icons/IconInfoLine.vue.js +1 -1
- package/lib/_shared/icons/IconLink.vue.js +1 -1
- package/lib/_shared/icons/IconLoading.vue.js +1 -1
- package/lib/_shared/icons/IconMenuFold.vue.js +1 -1
- package/lib/_shared/icons/IconMenuUnfold.vue.js +1 -1
- package/lib/_shared/icons/IconMinus.vue2.js +1 -1
- package/lib/_shared/icons/IconMore.vue.js +1 -1
- package/lib/_shared/icons/IconOriginSize.vue2.js +1 -1
- package/lib/_shared/icons/IconPlus.vue.js +1 -1
- package/lib/_shared/icons/IconRight.vue.js +1 -1
- package/lib/_shared/icons/IconRotateLeft.vue2.js +1 -1
- package/lib/_shared/icons/IconRotateRight.vue2.js +1 -1
- package/lib/_shared/icons/IconSearch.vue.js +1 -1
- package/lib/_shared/icons/IconSeparator.vue.js +1 -1
- package/lib/_shared/icons/IconSeparator.vue2.js +1 -1
- package/lib/_shared/icons/IconStar.vue.js +1 -1
- package/lib/_shared/icons/IconSuccess.vue.js +1 -1
- package/lib/_shared/icons/IconTime.vue.js +1 -1
- package/lib/_shared/icons/IconToTop.vue.js +1 -1
- package/lib/_shared/icons/IconUpload.vue2.js +1 -1
- package/lib/_shared/icons/IconWarning.vue.js +1 -1
- package/lib/_shared/icons/IconZoomIn.vue2.js +1 -1
- package/lib/_shared/icons/IconZoomOut.vue2.js +1 -1
- package/lib/index.d.ts +6 -6
- package/lib/index.js +1 -1
- package/lib/style.css +1 -1
- package/package.json +1 -1
- package/es/DatePicker/YcDatePicker.vue.js +0 -268
- package/es/DatePicker/YcDatePicker.vue3.js +0 -5
- package/es/DatePicker/YcMonthPicker.vue3.js +0 -5
- package/es/DatePicker/YcWeekPicker.vue.js +0 -265
- package/es/DatePicker/YcWeekPicker.vue3.js +0 -5
- package/es/DatePicker/YcYearPicker.vue3.js +0 -5
- package/lib/DatePicker/YcDatePicker.vue.js +0 -1
- package/lib/DatePicker/YcMonthPicker.vue.js +0 -1
- package/lib/DatePicker/YcMonthPicker.vue3.js +0 -1
- package/lib/DatePicker/YcWeekPicker.vue.js +0 -1
- package/lib/DatePicker/YcWeekPicker.vue3.js +0 -1
- package/lib/DatePicker/YcYearPicker.vue.js +0 -1
- package/lib/DatePicker/YcYearPicker.vue3.js +0 -1
- package/lib/_shared/components/IconButton/index.vue2.js +0 -1
- package/{lib/DatePicker/YcMonthPicker.vue.d.ts → es/DatePicker/MonthPicker.vue.d.ts} +1 -1
- package/{lib/DatePicker/YcWeekPicker.vue.d.ts → es/DatePicker/WeekPicker.vue.d.ts} +1 -1
- package/es/DatePicker/{YcYearPicker.vue.d.ts → YearPicker.vue.d.ts} +1 -1
- package/{es/DatePicker/YcMonthPicker.vue.d.ts → lib/DatePicker/MonthPicker.vue.d.ts} +1 -1
- package/{es/DatePicker/YcWeekPicker.vue.d.ts → lib/DatePicker/WeekPicker.vue.d.ts} +1 -1
- package/lib/DatePicker/{YcYearPicker.vue.d.ts → YearPicker.vue.d.ts} +1 -1
@@ -1,4 +1,4 @@
|
|
1
|
-
import { defineComponent, useSlots,
|
1
|
+
import { defineComponent, useSlots, createBlock, openBlock, unref, mergeProps, withCtx, createElementVNode, normalizeStyle, normalizeClass, createElementBlock, createCommentVNode, renderSlot, withModifiers, Fragment, createVNode, createSlots, nextTick } from "vue";
|
2
2
|
import "../node_modules/b-tween/dist/b-tween.es.js";
|
3
3
|
import "../node_modules/dayjs/dayjs.min.js";
|
4
4
|
import "../node_modules/tinycolor2/esm/tinycolor.js";
|
@@ -8,8 +8,8 @@ import { isArray } from "../_shared/utils/is.js";
|
|
8
8
|
import "../_shared/utils/locale.js";
|
9
9
|
import { isValidTimeRange } from "../_shared/utils/time.js";
|
10
10
|
import useTimePickerContext from "./hooks/useContext.js";
|
11
|
-
import _sfc_main$1 from "../_shared/components/IconButton/index.
|
12
|
-
/* empty css
|
11
|
+
import _sfc_main$1 from "../_shared/components/IconButton/index.vue.js";
|
12
|
+
/* empty css */
|
13
13
|
/* empty css */
|
14
14
|
/* empty css */
|
15
15
|
import _sfc_main$2 from "../_shared/icons/IconTime.vue.js";
|
@@ -56,7 +56,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
56
56
|
triggerProps: { default: () => {
|
57
57
|
return {};
|
58
58
|
} },
|
59
|
-
unmountOnClose: { type: Boolean, default: false }
|
59
|
+
unmountOnClose: { type: Boolean, default: false },
|
60
|
+
hideTrigger: { type: Boolean, default: false },
|
61
|
+
scrollbar: { type: Boolean, default: true },
|
62
|
+
scrollOffset: { default: 0 }
|
60
63
|
},
|
61
64
|
emits: ["update:modelValue", "update:popupVisible", "change", "select", "clear", "popup-visible-change"],
|
62
65
|
setup(__props, { emit: __emit }) {
|
@@ -76,18 +79,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
76
79
|
format,
|
77
80
|
placeholder
|
78
81
|
} = useTimePickerContext().provide(props, emits);
|
79
|
-
const panelRef = ref();
|
80
82
|
const handleClear = () => {
|
81
83
|
computedValue.value = type.value == "time-range" ? [] : "";
|
82
84
|
emits("clear");
|
83
85
|
};
|
84
|
-
const handleOpenPicker = (i) => {
|
85
|
-
var _a;
|
86
|
+
const handleOpenPicker = async (i) => {
|
86
87
|
curIndex.value = i;
|
88
|
+
await nextTick();
|
87
89
|
computedVisible.value = true;
|
88
|
-
(_a = panelRef.value) == null ? void 0 : _a.scroll(
|
89
|
-
isArray(computedValue.value) ? computedValue.value[i] : computedValue.value
|
90
|
-
);
|
91
90
|
};
|
92
91
|
const handleClickOutSide = () => {
|
93
92
|
computedVisible.value = false;
|
@@ -105,7 +104,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
105
104
|
computedValue.value = [];
|
106
105
|
};
|
107
106
|
return (_ctx, _cache) => {
|
108
|
-
return openBlock(), createBlock(unref(Trigger), mergeProps({
|
107
|
+
return !_ctx.hideTrigger ? (openBlock(), createBlock(unref(Trigger), mergeProps({
|
108
|
+
key: 0,
|
109
109
|
"popup-visible": unref(computedVisible),
|
110
110
|
position: _ctx.position,
|
111
111
|
"popup-container": _ctx.popupContainer,
|
@@ -120,10 +120,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
120
120
|
"prevent-focus": ""
|
121
121
|
}, _ctx.triggerProps), {
|
122
122
|
content: withCtx(() => [
|
123
|
-
createVNode(_sfc_main$3, {
|
124
|
-
ref_key: "panelRef",
|
125
|
-
ref: panelRef
|
126
|
-
}, createSlots({ _: 2 }, [
|
123
|
+
createVNode(_sfc_main$3, null, createSlots({ _: 2 }, [
|
127
124
|
$slots.extra ? {
|
128
125
|
name: "extra",
|
129
126
|
fn: withCtx(() => [
|
@@ -131,7 +128,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
131
128
|
]),
|
132
129
|
key: "0"
|
133
130
|
} : void 0
|
134
|
-
]),
|
131
|
+
]), 1024)
|
135
132
|
]),
|
136
133
|
default: withCtx(() => [
|
137
134
|
createElementVNode("div", {
|
@@ -210,7 +207,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
210
207
|
], 6)
|
211
208
|
]),
|
212
209
|
_: 3
|
213
|
-
}, 16, ["popup-visible", "position", "popup-container", "unmount-on-close", "disabled"])
|
210
|
+
}, 16, ["popup-visible", "position", "popup-container", "unmount-on-close", "disabled"])) : (openBlock(), createBlock(_sfc_main$3, { key: 1 }, createSlots({ _: 2 }, [
|
211
|
+
$slots.extra ? {
|
212
|
+
name: "extra",
|
213
|
+
fn: withCtx(() => [
|
214
|
+
renderSlot(_ctx.$slots, "extra")
|
215
|
+
]),
|
216
|
+
key: "0"
|
217
|
+
} : void 0
|
218
|
+
]), 1024));
|
214
219
|
};
|
215
220
|
}
|
216
221
|
});
|
@@ -7,9 +7,7 @@ declare function __VLS_template(): {
|
|
7
7
|
rootEl: HTMLDivElement;
|
8
8
|
};
|
9
9
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
10
|
-
declare const __VLS_component: import('vue').DefineComponent<{}, {
|
11
|
-
scroll(value: string): Promise<void>;
|
12
|
-
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
|
10
|
+
declare const __VLS_component: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
|
13
11
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
14
12
|
export default _default;
|
15
13
|
type __VLS_WithTemplateSlots<T, S> = T & {
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import { defineComponent, ref, computed, createElementBlock, openBlock, createElementVNode, createCommentVNode, Fragment, renderList, unref, createVNode, withCtx, withDirectives, normalizeClass, toDisplayString, vShow, renderSlot, createTextVNode } from "vue";
|
1
|
+
import { defineComponent, ref, computed, watch, createElementBlock, openBlock, createElementVNode, createCommentVNode, Fragment, renderList, unref, createVNode, withCtx, withDirectives, normalizeClass, toDisplayString, vShow, renderSlot, createTextVNode } from "vue";
|
2
2
|
import Tween from "../node_modules/b-tween/dist/b-tween.es.js";
|
3
3
|
import dayjs from "../node_modules/dayjs/dayjs.min.js";
|
4
4
|
import "../node_modules/tinycolor2/esm/tinycolor.js";
|
5
5
|
import { sleep } from "../_shared/utils/dom.js";
|
6
|
-
import {
|
6
|
+
import { isArray, isUndefined } from "../_shared/utils/is.js";
|
7
7
|
import { useI18n } from "../_shared/utils/locale.js";
|
8
8
|
import { isValidTimeRange } from "../_shared/utils/time.js";
|
9
9
|
import useTimePickerContext from "./hooks/useContext.js";
|
@@ -23,7 +23,7 @@ const _hoisted_6 = {
|
|
23
23
|
};
|
24
24
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
25
25
|
__name: "TimePickerPanel",
|
26
|
-
setup(__props
|
26
|
+
setup(__props) {
|
27
27
|
const {
|
28
28
|
timeColumn,
|
29
29
|
timeColumnCells,
|
@@ -35,12 +35,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
35
35
|
hideDisabledOptions,
|
36
36
|
curIndex,
|
37
37
|
inputRefs,
|
38
|
+
hideTrigger,
|
39
|
+
scrollbar,
|
40
|
+
scrollOffset,
|
38
41
|
disabledHours,
|
39
42
|
disabledMinutes,
|
40
43
|
disabledSeconds
|
41
44
|
} = useTimePickerContext().inject();
|
42
45
|
const { t } = useI18n();
|
43
|
-
const
|
46
|
+
const scrollContainer = ref([]);
|
47
|
+
const cells = ref([[], [], []]);
|
44
48
|
const disabled = computed(() => {
|
45
49
|
return !curValue.value.length || curValue.value.some((val) => !`${val}`);
|
46
50
|
});
|
@@ -54,37 +58,52 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
54
58
|
return (_c = disabledSeconds == null ? void 0 : disabledSeconds(...curValue.value)) == null ? void 0 : _c.includes(value);
|
55
59
|
}
|
56
60
|
};
|
57
|
-
const handleClick = (val, i,
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
+
const handleClick = (val, i, cell) => {
|
62
|
+
return new Promise((resolve) => {
|
63
|
+
curValue.value[i] = val;
|
64
|
+
timeColumn.value.forEach((_, i1) => {
|
65
|
+
curValue.value[i1] = isUndefined(curValue.value[i1]) ? 0 : curValue.value[i1];
|
66
|
+
});
|
67
|
+
const container = scrollContainer.value[i];
|
68
|
+
if (container && cell) {
|
69
|
+
new Tween({
|
70
|
+
from: { scroll: container.scrollTop },
|
71
|
+
to: { scroll: cell.offsetTop },
|
72
|
+
duration: 300,
|
73
|
+
easing: "quadOut",
|
74
|
+
onUpdate: (current) => {
|
75
|
+
container.scrollTop = current.scroll - scrollOffset.value;
|
76
|
+
},
|
77
|
+
onFinish: () => {
|
78
|
+
resolve("");
|
79
|
+
}
|
80
|
+
}).start();
|
81
|
+
}
|
82
|
+
if (disableConfirm.value) {
|
83
|
+
handleConfirm();
|
84
|
+
}
|
61
85
|
});
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
86
|
+
};
|
87
|
+
const hanldeJump = async (newDate, oldDate) => {
|
88
|
+
const newTimeMap = {
|
89
|
+
hour: newDate.hour(),
|
90
|
+
minute: newDate.minute(),
|
91
|
+
second: newDate.second()
|
92
|
+
};
|
93
|
+
const oldTimeMap = {
|
94
|
+
hour: oldDate == null ? void 0 : oldDate.hour(),
|
95
|
+
minute: oldDate == null ? void 0 : oldDate.minute(),
|
96
|
+
second: oldDate == null ? void 0 : oldDate.second()
|
97
|
+
};
|
98
|
+
console.log(newTimeMap, oldTimeMap);
|
99
|
+
for (let i = 0; i < timeColumn.value.length; i++) {
|
100
|
+
const time = newTimeMap[timeColumn.value[i]];
|
101
|
+
if (oldTimeMap) {
|
102
|
+
const oldTime = oldTimeMap[timeColumn.value[i]];
|
103
|
+
if (oldTime == time) continue;
|
73
104
|
}
|
74
|
-
|
75
|
-
if (!disableConfirm.value) {
|
76
|
-
return;
|
105
|
+
await handleClick(time, i, cells.value[i][time]);
|
77
106
|
}
|
78
|
-
handleConfirm();
|
79
|
-
};
|
80
|
-
const hanldeJump = (timeMap) => {
|
81
|
-
const cells = scrollRefs.value.map((el) => {
|
82
|
-
return el.getScrollRef().querySelectorAll(".yc-timepicker-cell");
|
83
|
-
});
|
84
|
-
timeColumn.value.map((v, i) => {
|
85
|
-
const time = timeMap[v];
|
86
|
-
handleClick(time, i, Array.from(cells[i])[time]);
|
87
|
-
});
|
88
107
|
};
|
89
108
|
const handleConfirm = () => {
|
90
109
|
var _a;
|
@@ -118,20 +137,33 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
118
137
|
curValue.value = [];
|
119
138
|
}
|
120
139
|
};
|
121
|
-
|
122
|
-
|
123
|
-
|
140
|
+
watch(
|
141
|
+
() => computedValue.value,
|
142
|
+
async (newVal, oldVal) => {
|
124
143
|
await sleep(0);
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
144
|
+
if (!newVal) return curValue.value = [];
|
145
|
+
if (!hideTrigger.value) return;
|
146
|
+
const oldDate = dayjs(oldVal, format.value);
|
147
|
+
const newDate = dayjs(newVal, format.value);
|
148
|
+
hanldeJump(newDate, oldDate);
|
149
|
+
},
|
150
|
+
{
|
151
|
+
immediate: true
|
133
152
|
}
|
134
|
-
|
153
|
+
);
|
154
|
+
watch(
|
155
|
+
() => computedVisible.value,
|
156
|
+
async (visible) => {
|
157
|
+
const value = isArray(computedValue.value) ? computedValue.value[curIndex.value] : computedValue.value;
|
158
|
+
if (!value) return curValue.value = [];
|
159
|
+
if (!visible) return;
|
160
|
+
await sleep(0);
|
161
|
+
hanldeJump(dayjs(value, format.value));
|
162
|
+
},
|
163
|
+
{
|
164
|
+
immediate: true
|
165
|
+
}
|
166
|
+
);
|
135
167
|
return (_ctx, _cache) => {
|
136
168
|
return openBlock(), createElementBlock("div", _hoisted_1, [
|
137
169
|
createElementVNode("div", _hoisted_2, [
|
@@ -148,12 +180,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
148
180
|
height: "100%",
|
149
181
|
overflow: "auto"
|
150
182
|
},
|
183
|
+
scrollbar: unref(scrollbar),
|
151
184
|
ref_for: true,
|
152
|
-
ref: (el) =>
|
185
|
+
ref: (el) => scrollContainer.value[i] = el == null ? void 0 : el.getScrollRef()
|
153
186
|
}, {
|
154
187
|
default: withCtx(() => [
|
155
188
|
createElementVNode("ul", null, [
|
156
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(column.cells, (cell) => {
|
189
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(column.cells, (cell, k) => {
|
157
190
|
return withDirectives((openBlock(), createElementBlock("li", {
|
158
191
|
key: cell.value,
|
159
192
|
class: normalizeClass([
|
@@ -166,7 +199,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
166
199
|
)
|
167
200
|
}
|
168
201
|
]),
|
169
|
-
|
202
|
+
ref_for: true,
|
203
|
+
ref: (el) => cells.value[i][k] = el,
|
204
|
+
onClick: (e) => {
|
205
|
+
if (disabledTime(cell.value, column.unit) || cell.value == unref(curValue)[i]) {
|
206
|
+
return;
|
207
|
+
}
|
208
|
+
handleClick(cell.value, i, e.target);
|
209
|
+
}
|
170
210
|
}, [
|
171
211
|
createElementVNode("div", _hoisted_4, toDisplayString(cell.label), 1)
|
172
212
|
], 10, _hoisted_3)), [
|
@@ -179,7 +219,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
179
219
|
])
|
180
220
|
]),
|
181
221
|
_: 2
|
182
|
-
},
|
222
|
+
}, 1032, ["scrollbar"])
|
183
223
|
]);
|
184
224
|
}), 128))
|
185
225
|
]),
|
@@ -189,14 +229,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
189
229
|
!unref(disableConfirm) ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
190
230
|
createVNode(unref(Button), {
|
191
231
|
size: "mini",
|
192
|
-
onClick: _cache[0] || (_cache[0] = () =>
|
193
|
-
const date = /* @__PURE__ */ new Date();
|
194
|
-
hanldeJump({
|
195
|
-
hour: date.getHours(),
|
196
|
-
minute: date.getMinutes(),
|
197
|
-
second: date.getSeconds()
|
198
|
-
});
|
199
|
-
})
|
232
|
+
onClick: _cache[0] || (_cache[0] = ($event) => hanldeJump(unref(dayjs)()))
|
200
233
|
}, {
|
201
234
|
default: withCtx(() => [
|
202
235
|
createTextVNode(toDisplayString(unref(t)("datePicker.now")), 1)
|
@@ -15,7 +15,10 @@ type TimePickerContext = {
|
|
15
15
|
}[]>;
|
16
16
|
inputRefs: Ref<HTMLInputElement[]>;
|
17
17
|
disableConfirm: Ref<boolean>;
|
18
|
+
scrollbar: Ref<boolean>;
|
19
|
+
scrollOffset: Ref<number>;
|
18
20
|
hideDisabledOptions: Ref<boolean>;
|
21
|
+
hideTrigger: Ref<boolean>;
|
19
22
|
disabledHours: DisabledHours;
|
20
23
|
disabledMinutes: DisabledMinutes;
|
21
24
|
disabledSeconds: DisabledSeconds;
|
@@ -43,7 +46,10 @@ export default function useTimePickerContext(): {
|
|
43
46
|
}[]>;
|
44
47
|
inputRefs: Ref<HTMLInputElement[]>;
|
45
48
|
disableConfirm: Ref<boolean>;
|
49
|
+
scrollbar: Ref<boolean>;
|
50
|
+
scrollOffset: Ref<number>;
|
46
51
|
hideDisabledOptions: Ref<boolean>;
|
52
|
+
hideTrigger: Ref<boolean>;
|
47
53
|
disabledHours: DisabledHours;
|
48
54
|
disabledMinutes: DisabledMinutes;
|
49
55
|
disabledSeconds: DisabledSeconds;
|
@@ -23,6 +23,9 @@ function useTimePickerContext() {
|
|
23
23
|
disableConfirm,
|
24
24
|
hideDisabledOptions,
|
25
25
|
step,
|
26
|
+
scrollbar,
|
27
|
+
scrollOffset,
|
28
|
+
hideTrigger,
|
26
29
|
placeholder: _placeholder
|
27
30
|
} = toRefs(props);
|
28
31
|
const { disabledHours, disabledMinutes, disabledSeconds } = props;
|
@@ -93,6 +96,9 @@ function useTimePickerContext() {
|
|
93
96
|
type,
|
94
97
|
curIndex,
|
95
98
|
inputRefs,
|
99
|
+
scrollbar,
|
100
|
+
hideTrigger,
|
101
|
+
scrollOffset,
|
96
102
|
disableConfirm,
|
97
103
|
hideDisabledOptions,
|
98
104
|
disabledHours,
|
@@ -120,6 +126,9 @@ function useTimePickerContext() {
|
|
120
126
|
timeColumnCells: ref([]),
|
121
127
|
inputRefs: ref([]),
|
122
128
|
disableConfirm: ref(false),
|
129
|
+
scrollbar: ref(true),
|
130
|
+
hideTrigger: ref(false),
|
131
|
+
scrollOffset: ref(4),
|
123
132
|
hideDisabledOptions: ref(false),
|
124
133
|
disabledHours: () => [],
|
125
134
|
disabledMinutes: () => [],
|
package/es/TimePicker/index.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
.yc-picker{position:relative;padding:4px 11px 4px 4px;background-color:var(--color-fill-2);border:1px solid transparent;border-radius:var(--border-radius-small);transition:all .1s cubic-bezier(0, 0, 1, 1);line-height:1.5715;display:inline-flex;align-items:center}.yc-picker:not(.yc-picker-disabled):not(.yc-picker-focus):hover{background-color:var(--color-fill-3);border-color:transparent}.yc-picker .yc-picker-has-prefix,.yc-picker .yc-picker-input.yc-picker-suffix,.yc-picker .yc-picker-separator{flex-shrink:0}.yc-picker .yc-picker-prefix{margin-right:4px;font-size:14px;color:var(--color-text-2)}.yc-picker .yc-picker-input{flex:1;height:100%;display:flex;align-items:center}.yc-picker .yc-picker-input input{height:100%;width:100%;padding:0;padding-left:8px;background-color:transparent;border:none;outline:none;text-align:left;color:var(--color-text-2);transition:all .1s cubic-bezier(0, 0, 1, 1)}.yc-picker .yc-picker-input input::placeholder{color:var(--color-text-3)}.yc-picker .yc-picker-separator{min-width:10px;padding:0 8px;color:var(--color-text-3)}.yc-picker .yc-picker-suffix{margin-left:4px;display:flex;align-items:center}.yc-picker .yc-picker-suffix .yc-icon-button{display:none}.yc-picker .yc-picker-suffix .yc-picker-suffix-icon{color:var(--color-text-2);font-size:14px;display:flex;justify-content:center;align-items:center}.yc-picker-has-prefix{padding-left:12px}.yc-picker-allow-clear:hover .yc-picker-suffix .yc-icon-button{display:flex}.yc-picker-allow-clear:hover .yc-picker-suffix .yc-picker-suffix-icon{display:none}.yc-picker-focus{background-color:var(--color-bg-1);border-color:rgb(var(--primary-6));box-shadow:0 0 0 0 var(--color-primary-light-2)}.yc-picker-range .yc-picker-input-active input{background:var(--color-fill-2)}.yc-picker-error{background-color:var(--color-danger-light-1);border-color:transparent}.yc-picker-error:not(.yc-picker-disabled):not(.yc-picker-focus):hover{background-color:var(--color-danger-light-2)}.yc-picker-error.yc-picker-focus{background-color:var(--color-bg-2);border-color:rgb(var(--danger-6));box-shadow:0 0 0 0 var(--color-danger-light-2)}.yc-picker-disabled{cursor:not-allowed;color:var(--color-text-4);background-color:var(--color-fill-2);border-color:transparent}.yc-picker-disabled .yc-picker-input input{cursor:not-allowed}.yc-picker-disabled .yc-picker-input input::placeholder{color:var(--color-text-4)}.yc-picker-disabled .yc-picker-suffix .yc-picker-suffix-icon{color:var(--color-text-4)}.yc-picker-size-mini{height:24px}.yc-picker-size-mini input{font-size:12px}.yc-picker-size-small{height:28px}.yc-picker-size-small input{font-size:14px}.yc-picker-size-medium{height:32px}.yc-picker-size-medium input{font-size:14px}.yc-picker-size-large{height:36px}.yc-picker-size-large input{font-size:14px}.yc-timepicker-container{overflow:hidden;background-color:var(--color-bg-popup);border:1px solid var(--color-neutral-3);border-radius:var(--border-radius-medium);box-shadow:0 2px 5px rgba(0,0,0,0.1)}.yc-timepicker-container .yc-timepicker{position:relative;display:flex;padding:0}.yc-timepicker-container .yc-timepicker .yc-timepicker-column{overflow:hidden;width:64px;height:224px}.yc-timepicker-container .yc-timepicker .yc-timepicker-column:not(:last-child){border-right:1px solid var(--color-neutral-3)}.yc-timepicker-container .yc-timepicker .yc-timepicker-column ul .yc-timepicker-cell{padding:4px 0;color:var(--color-text-1);font-weight:500;cursor:pointer}.yc-timepicker-container .yc-timepicker .yc-timepicker-column ul .yc-timepicker-cell .yc-timepicker-cell-inner{height:24px;padding-left:24px;font-size:14px;line-height:24px}.yc-timepicker-container .yc-timepicker .yc-timepicker-column ul .yc-timepicker-cell-selected .yc-timepicker-cell-inner{font-weight:500;background-color:var(--color-fill-2)}.yc-timepicker-container .yc-timepicker .yc-timepicker-column ul .yc-timepicker-cell-disabled{color:var(--color-text-4);cursor:not-allowed}.yc-timepicker-container .yc-timepicker .yc-timepicker-column ul::after{display:block;width:100%;height:192px;content:''}.yc-timepicker-container .yc-timepicker-footer-extra-wrapper{padding:8px;border-top:1px solid var(--color-neutral-3);color:var(--color-text-1);font-size:12px}.yc-timepicker-container .yc-timepicker-footer-btn-wrapper{padding:8px;border-top:1px solid var(--color-neutral-3);display:flex;justify-content:space-between}
|
1
|
+
.yc-picker{position:relative;padding:4px 11px 4px 4px;background-color:var(--color-fill-2);border:1px solid transparent;border-radius:var(--border-radius-small);transition:all .1s cubic-bezier(0, 0, 1, 1);line-height:1.5715;display:inline-flex;align-items:center}.yc-picker:not(.yc-picker-disabled):not(.yc-picker-focus):hover{background-color:var(--color-fill-3);border-color:transparent}.yc-picker .yc-picker-has-prefix,.yc-picker .yc-picker-input.yc-picker-suffix,.yc-picker .yc-picker-separator{flex-shrink:0}.yc-picker .yc-picker-prefix{margin-right:4px;font-size:14px;color:var(--color-text-2)}.yc-picker .yc-picker-input{flex:1;height:100%;display:flex;align-items:center}.yc-picker .yc-picker-input input{height:100%;width:100%;padding:0;padding-left:8px;background-color:transparent;border:none;outline:none;text-align:left;color:var(--color-text-2);transition:all .1s cubic-bezier(0, 0, 1, 1)}.yc-picker .yc-picker-input input::placeholder{color:var(--color-text-3)}.yc-picker .yc-picker-separator{min-width:10px;padding:0 8px;color:var(--color-text-3)}.yc-picker .yc-picker-suffix{margin-left:4px;display:flex;align-items:center}.yc-picker .yc-picker-suffix .yc-icon-button{display:none}.yc-picker .yc-picker-suffix .yc-picker-suffix-icon{color:var(--color-text-2);font-size:14px;display:flex;justify-content:center;align-items:center}.yc-picker-has-prefix{padding-left:12px}.yc-picker-allow-clear:hover .yc-picker-suffix .yc-icon-button{display:flex}.yc-picker-allow-clear:hover .yc-picker-suffix .yc-picker-suffix-icon{display:none}.yc-picker-focus{background-color:var(--color-bg-1);border-color:rgb(var(--primary-6));box-shadow:0 0 0 0 var(--color-primary-light-2)}.yc-picker-range .yc-picker-input-active input{background:var(--color-fill-2)}.yc-picker-error{background-color:var(--color-danger-light-1);border-color:transparent}.yc-picker-error:not(.yc-picker-disabled):not(.yc-picker-focus):hover{background-color:var(--color-danger-light-2)}.yc-picker-error.yc-picker-focus{background-color:var(--color-bg-2);border-color:rgb(var(--danger-6));box-shadow:0 0 0 0 var(--color-danger-light-2)}.yc-picker-disabled{cursor:not-allowed;color:var(--color-text-4);background-color:var(--color-fill-2);border-color:transparent}.yc-picker-disabled .yc-picker-input input{cursor:not-allowed}.yc-picker-disabled .yc-picker-input input::placeholder{color:var(--color-text-4)}.yc-picker-disabled .yc-picker-suffix .yc-picker-suffix-icon{color:var(--color-text-4)}.yc-picker-size-mini{height:24px}.yc-picker-size-mini input{font-size:12px}.yc-picker-size-small{height:28px}.yc-picker-size-small input{font-size:14px}.yc-picker-size-medium{height:32px}.yc-picker-size-medium input{font-size:14px}.yc-picker-size-large{height:36px}.yc-picker-size-large input{font-size:14px}.yc-timepicker-container{overflow:hidden;background-color:var(--color-bg-popup);border:1px solid var(--color-neutral-3);border-radius:var(--border-radius-medium);box-shadow:0 2px 5px rgba(0,0,0,0.1)}.yc-timepicker-container .yc-timepicker{position:relative;display:flex;padding:0}.yc-timepicker-container .yc-timepicker .yc-timepicker-column{overflow:hidden;width:64px;height:224px}.yc-timepicker-container .yc-timepicker .yc-timepicker-column:not(:last-child){border-right:1px solid var(--color-neutral-3)}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container{scroll-behavior:unset}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container ul .yc-timepicker-cell{padding:4px 0;color:var(--color-text-1);font-weight:500;cursor:pointer}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container ul .yc-timepicker-cell .yc-timepicker-cell-inner{height:24px;padding-left:24px;font-size:14px;line-height:24px}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container ul .yc-timepicker-cell .yc-timepicker-cell-inner:hover{background-color:var(--color-fill-2)}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container ul .yc-timepicker-cell-selected .yc-timepicker-cell-inner{font-weight:500;background-color:var(--color-fill-2)}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container ul .yc-timepicker-cell-disabled{color:var(--color-text-4);cursor:not-allowed}.yc-timepicker-container .yc-timepicker .yc-timepicker-column .yc-scrollbar .yc-scrollbar-container ul::after{display:block;width:100%;height:192px;content:''}.yc-timepicker-container .yc-timepicker-footer-extra-wrapper{padding:8px;border-top:1px solid var(--color-neutral-3);color:var(--color-text-1);font-size:12px}.yc-timepicker-container .yc-timepicker-footer-btn-wrapper{padding:8px;border-top:1px solid var(--color-neutral-3);display:flex;justify-content:space-between}
|
package/es/TimePicker/index.d.ts
CHANGED
@@ -26,6 +26,7 @@ declare const TimePicker: {
|
|
26
26
|
position: import('./type').TimePickerPosition;
|
27
27
|
unmountOnClose: boolean;
|
28
28
|
popupContainer: import('..').PopupContainer;
|
29
|
+
scrollbar: boolean;
|
29
30
|
type: import('./type').TimePickerType;
|
30
31
|
placeholder: string | string[];
|
31
32
|
modelValue: import('./type').TimePickerValue;
|
@@ -35,58 +36,12 @@ declare const TimePicker: {
|
|
35
36
|
triggerProps: import('..').TriggerProps;
|
36
37
|
format: string;
|
37
38
|
hideDisabledOptions: boolean;
|
39
|
+
scrollOffset: number;
|
40
|
+
hideTrigger: boolean;
|
38
41
|
disabledHours: import('./type').DisabledHours;
|
39
42
|
disabledMinutes: import('./type').DisabledMinutes;
|
40
43
|
disabledSeconds: import('./type').DisabledSeconds;
|
41
|
-
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
|
42
|
-
panelRef: ({
|
43
|
-
$: import('vue').ComponentInternalInstance;
|
44
|
-
$data: {};
|
45
|
-
$props: Partial<{}> & Omit<{} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, never>;
|
46
|
-
$attrs: {
|
47
|
-
[x: string]: unknown;
|
48
|
-
};
|
49
|
-
$refs: {
|
50
|
-
[x: string]: unknown;
|
51
|
-
};
|
52
|
-
$slots: Readonly<{
|
53
|
-
[name: string]: import('vue').Slot<any> | undefined;
|
54
|
-
}>;
|
55
|
-
$root: import('vue').ComponentPublicInstance | null;
|
56
|
-
$parent: import('vue').ComponentPublicInstance | null;
|
57
|
-
$host: Element | null;
|
58
|
-
$emit: (event: string, ...args: any[]) => void;
|
59
|
-
$el: HTMLDivElement;
|
60
|
-
$options: import('vue').ComponentOptionsBase<Readonly<{}> & Readonly<{}>, {
|
61
|
-
scroll(value: string): Promise<void>;
|
62
|
-
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
63
|
-
beforeCreate?: (() => void) | (() => void)[];
|
64
|
-
created?: (() => void) | (() => void)[];
|
65
|
-
beforeMount?: (() => void) | (() => void)[];
|
66
|
-
mounted?: (() => void) | (() => void)[];
|
67
|
-
beforeUpdate?: (() => void) | (() => void)[];
|
68
|
-
updated?: (() => void) | (() => void)[];
|
69
|
-
activated?: (() => void) | (() => void)[];
|
70
|
-
deactivated?: (() => void) | (() => void)[];
|
71
|
-
beforeDestroy?: (() => void) | (() => void)[];
|
72
|
-
beforeUnmount?: (() => void) | (() => void)[];
|
73
|
-
destroyed?: (() => void) | (() => void)[];
|
74
|
-
unmounted?: (() => void) | (() => void)[];
|
75
|
-
renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
76
|
-
renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
77
|
-
errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
|
78
|
-
};
|
79
|
-
$forceUpdate: () => void;
|
80
|
-
$nextTick: typeof import('vue').nextTick;
|
81
|
-
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
82
|
-
} & Readonly<{}> & Omit<Readonly<{}> & Readonly<{}>, "scroll"> & import('vue').ShallowUnwrapRef<{
|
83
|
-
scroll(value: string): Promise<void>;
|
84
|
-
}> & {} & import('@vue/runtime-core').ComponentCustomProperties & {} & {
|
85
|
-
$slots: {
|
86
|
-
extra?(_: {}): any;
|
87
|
-
};
|
88
|
-
}) | null;
|
89
|
-
}, any, import('vue').ComponentProvideOptions, {
|
44
|
+
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
|
90
45
|
P: {};
|
91
46
|
B: {};
|
92
47
|
D: {};
|
@@ -109,6 +64,7 @@ declare const TimePicker: {
|
|
109
64
|
position: import('./type').TimePickerPosition;
|
110
65
|
unmountOnClose: boolean;
|
111
66
|
popupContainer: import('..').PopupContainer;
|
67
|
+
scrollbar: boolean;
|
112
68
|
type: import('./type').TimePickerType;
|
113
69
|
placeholder: string | string[];
|
114
70
|
modelValue: import('./type').TimePickerValue;
|
@@ -118,6 +74,8 @@ declare const TimePicker: {
|
|
118
74
|
triggerProps: import('..').TriggerProps;
|
119
75
|
format: string;
|
120
76
|
hideDisabledOptions: boolean;
|
77
|
+
scrollOffset: number;
|
78
|
+
hideTrigger: boolean;
|
121
79
|
disabledHours: import('./type').DisabledHours;
|
122
80
|
disabledMinutes: import('./type').DisabledMinutes;
|
123
81
|
disabledSeconds: import('./type').DisabledSeconds;
|
@@ -148,6 +106,7 @@ declare const TimePicker: {
|
|
148
106
|
position: import('./type').TimePickerPosition;
|
149
107
|
unmountOnClose: boolean;
|
150
108
|
popupContainer: import('..').PopupContainer;
|
109
|
+
scrollbar: boolean;
|
151
110
|
type: import('./type').TimePickerType;
|
152
111
|
placeholder: string | string[];
|
153
112
|
modelValue: import('./type').TimePickerValue;
|
@@ -157,6 +116,8 @@ declare const TimePicker: {
|
|
157
116
|
triggerProps: import('..').TriggerProps;
|
158
117
|
format: string;
|
159
118
|
hideDisabledOptions: boolean;
|
119
|
+
scrollOffset: number;
|
120
|
+
hideTrigger: boolean;
|
160
121
|
disabledHours: import('./type').DisabledHours;
|
161
122
|
disabledMinutes: import('./type').DisabledMinutes;
|
162
123
|
disabledSeconds: import('./type').DisabledSeconds;
|
package/es/TimePicker/type.d.ts
CHANGED
@@ -28,6 +28,9 @@ export interface TimePickerProps {
|
|
28
28
|
defaultPopupVisible?: boolean;
|
29
29
|
triggerProps?: TriggerProps;
|
30
30
|
unmountOnClose?: boolean;
|
31
|
+
hideTrigger?: boolean;
|
32
|
+
scrollbar?: boolean;
|
33
|
+
scrollOffset?: number;
|
31
34
|
}
|
32
35
|
export interface TimePickerEmits {
|
33
36
|
(e: 'update:modelValue', value: TimePickerValue): void;
|
@@ -6,7 +6,7 @@ import "../node_modules/tinycolor2/esm/tinycolor.js";
|
|
6
6
|
import "../_shared/utils/dom.js";
|
7
7
|
import "../_shared/utils/locale.js";
|
8
8
|
import "../_shared/utils/time.js";
|
9
|
-
/* empty css
|
9
|
+
/* empty css */
|
10
10
|
/* empty css */
|
11
11
|
/* empty css */
|
12
12
|
import _sfc_main$2 from "../_shared/icons/IconArrowRight.vue.js";
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { defineComponent, toRefs, ref, computed, createElementBlock, openBlock, createElementVNode, createCommentVNode, renderSlot, unref, normalizeProps, guardReactiveProps, createBlock, withCtx, createTextVNode, toDisplayString, Fragment, createVNode, mergeProps, renderList, normalizeClass } from "vue";
|
2
|
-
import _sfc_main$1 from "../_shared/components/IconButton/index.
|
3
|
-
/* empty css
|
2
|
+
import _sfc_main$1 from "../_shared/components/IconButton/index.vue.js";
|
3
|
+
/* empty css */
|
4
4
|
import "../node_modules/b-tween/dist/b-tween.es.js";
|
5
5
|
import "../node_modules/dayjs/dayjs.min.js";
|
6
6
|
import "../node_modules/tinycolor2/esm/tinycolor.js";
|
package/es/Trigger/index.vue.js
CHANGED
@@ -9,7 +9,7 @@ import "../_shared/utils/time.js";
|
|
9
9
|
import { findFirstLegitChild } from "../_shared/utils/vue-utils.js";
|
10
10
|
import useTriggerVisible from "./hooks/useTriggerVisible.js";
|
11
11
|
import useTriggerPosition from "./hooks/useTriggerPosition.js";
|
12
|
-
/* empty css
|
12
|
+
/* empty css */
|
13
13
|
import _sfc_main$1 from "../_shared/components/PreventFocus/index.vue.js";
|
14
14
|
/* empty css */
|
15
15
|
/* empty css */
|
@@ -7,7 +7,7 @@ import { innerText, sleep } from "../_shared/utils/dom.js";
|
|
7
7
|
import { useControlValue } from "../_shared/utils/hooks.js";
|
8
8
|
import { useI18n } from "../_shared/utils/locale.js";
|
9
9
|
import "../_shared/utils/time.js";
|
10
|
-
/* empty css
|
10
|
+
/* empty css */
|
11
11
|
/* empty css */
|
12
12
|
/* empty css */
|
13
13
|
import _sfc_main$3 from "../_shared/icons/IconCopy.vue2.js";
|
@@ -6,7 +6,7 @@ import "../node_modules/tinycolor2/esm/tinycolor.js";
|
|
6
6
|
import "../_shared/utils/dom.js";
|
7
7
|
import { useI18n } from "../_shared/utils/locale.js";
|
8
8
|
import "../_shared/utils/time.js";
|
9
|
-
/* empty css
|
9
|
+
/* empty css */
|
10
10
|
/* empty css */
|
11
11
|
/* empty css */
|
12
12
|
import _sfc_main$1 from "../_shared/icons/IconUpload.vue2.js";
|
@@ -6,7 +6,7 @@ import "../node_modules/tinycolor2/esm/tinycolor.js";
|
|
6
6
|
import "../_shared/utils/dom.js";
|
7
7
|
import { useI18n } from "../_shared/utils/locale.js";
|
8
8
|
import "../_shared/utils/time.js";
|
9
|
-
/* empty css
|
9
|
+
/* empty css */
|
10
10
|
/* empty css */
|
11
11
|
/* empty css */
|
12
12
|
import _sfc_main$1 from "../_shared/icons/IconPlus.vue.js";
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { defineComponent, createElementBlock, openBlock, normalizeClass, unref, Fragment, renderList, renderSlot, createCommentVNode, createElementVNode, createBlock, resolveDynamicComponent, createVNode, withCtx } from "vue";
|
2
2
|
import useUploadContext from "./hooks/useContext.js";
|
3
|
-
import _sfc_main$1 from "../_shared/components/IconButton/index.
|
4
|
-
/* empty css
|
3
|
+
import _sfc_main$1 from "../_shared/components/IconButton/index.vue.js";
|
4
|
+
/* empty css */
|
5
5
|
import "../node_modules/b-tween/dist/b-tween.es.js";
|
6
6
|
import "../node_modules/dayjs/dayjs.min.js";
|
7
7
|
import "../node_modules/tinycolor2/esm/tinycolor.js";
|
@@ -6,7 +6,7 @@ import "../node_modules/tinycolor2/esm/tinycolor.js";
|
|
6
6
|
import "../_shared/utils/dom.js";
|
7
7
|
import "../_shared/utils/locale.js";
|
8
8
|
import "../_shared/utils/time.js";
|
9
|
-
/* empty css
|
9
|
+
/* empty css */
|
10
10
|
/* empty css */
|
11
11
|
/* empty css */
|
12
12
|
import _sfc_main$3 from "../_shared/icons/IconDelete.vue2.js";
|
@@ -5,7 +5,7 @@ import "../../../node_modules/tinycolor2/esm/tinycolor.js";
|
|
5
5
|
import { valueToPx } from "../../utils/dom.js";
|
6
6
|
import "../../utils/locale.js";
|
7
7
|
import "../../utils/time.js";
|
8
|
-
/* empty css
|
8
|
+
/* empty css */
|
9
9
|
/* empty css */
|
10
10
|
/* empty css */
|
11
11
|
import _sfc_main$1 from "../../icons/IconClose.vue.js";
|
@@ -8,7 +8,7 @@ import "../../node_modules/tinycolor2/esm/tinycolor.js";
|
|
8
8
|
import "../utils/dom.js";
|
9
9
|
import "../utils/locale.js";
|
10
10
|
import "../utils/time.js";
|
11
|
-
/* empty css
|
11
|
+
/* empty css */
|
12
12
|
/* empty css */
|
13
13
|
/* empty css */
|
14
14
|
import _sfc_main from "../icons/IconCheck.vue.js";
|
@@ -5,7 +5,7 @@ import "../../node_modules/tinycolor2/esm/tinycolor.js";
|
|
5
5
|
import "../utils/dom.js";
|
6
6
|
import "../utils/locale.js";
|
7
7
|
import "../utils/time.js";
|
8
|
-
/* empty css
|
8
|
+
/* empty css */
|
9
9
|
/* empty css */
|
10
10
|
import _sfc_main$1 from "../components/Icon/index.vue3.js";
|
11
11
|
/* empty css */
|