@bifrostui/react 1.4.5 → 1.4.7-beta.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/Calendar/Calendar.js +5 -1
- package/dist/Calendar/Calendar.types.d.ts +5 -0
- package/dist/CitySelector/CitySelectorCore.js +3 -3
- package/dist/Collapse/Collapse.css +0 -1
- package/dist/Collapse/Collapse.d.ts +1 -1
- package/dist/Collapse/Collapse.js +11 -8
- package/dist/Collapse/Collapse.miniapp.d.ts +5 -0
- package/dist/Collapse/Collapse.miniapp.js +177 -0
- package/dist/CollapsePanel/CollapsePanel.css +4 -2
- package/dist/DatePicker/DatePicker.d.ts +4 -0
- package/dist/DatePicker/DatePicker.js +335 -0
- package/dist/DatePicker/DatePicker.types.d.ts +43 -0
- package/dist/DatePicker/DatePicker.types.js +35 -0
- package/dist/DatePicker/index.d.ts +2 -0
- package/dist/DatePicker/index.js +41 -0
- package/dist/DesktopDatePicker/DesktopDatePicker.d.ts +5 -0
- package/dist/DesktopDatePicker/DesktopDatePicker.js +280 -0
- package/dist/DesktopDatePicker/DesktopDatePicker.types.d.ts +163 -0
- package/dist/DesktopDatePicker/DesktopDatePicker.types.js +15 -0
- package/dist/DesktopDatePicker/deskTopPickerContainer.css +100 -0
- package/dist/DesktopDatePicker/index.css +61 -0
- package/dist/DesktopDatePicker/index.d.ts +2 -0
- package/dist/DesktopDatePicker/index.js +41 -0
- package/dist/DesktopDatePicker/useGetDatePickerContent.d.ts +6 -0
- package/dist/DesktopDatePicker/useGetDatePickerContent.js +343 -0
- package/dist/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +5 -0
- package/dist/DesktopDateTimePicker/DesktopDateTimePicker.js +322 -0
- package/dist/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +163 -0
- package/dist/DesktopDateTimePicker/DesktopDateTimePicker.types.js +15 -0
- package/dist/DesktopDateTimePicker/index.css +66 -0
- package/dist/DesktopDateTimePicker/index.d.ts +2 -0
- package/dist/DesktopDateTimePicker/index.js +41 -0
- package/dist/DesktopPicker/DesktopPicker.d.ts +5 -0
- package/dist/DesktopPicker/DesktopPicker.js +238 -0
- package/dist/DesktopPicker/DesktopPicker.types.d.ts +57 -0
- package/dist/DesktopPicker/DesktopPicker.types.js +15 -0
- package/dist/DesktopPicker/index.css +37 -0
- package/dist/DesktopPicker/index.d.ts +2 -0
- package/dist/DesktopPicker/index.js +41 -0
- package/dist/DesktopPicker/utils/calcAfterMounted.d.ts +2 -0
- package/dist/{Tabs/utils/bound.js → DesktopPicker/utils/calcAfterMounted.js} +7 -14
- package/dist/DesktopPicker/utils/calcAfterMounted.miniapp.d.ts +2 -0
- package/dist/DesktopPicker/utils/calcAfterMounted.miniapp.js +38 -0
- package/dist/DesktopTimePicker/DesktopTimePicker.d.ts +5 -0
- package/dist/DesktopTimePicker/DesktopTimePicker.js +288 -0
- package/dist/DesktopTimePicker/DesktopTimePicker.types.d.ts +182 -0
- package/dist/DesktopTimePicker/DesktopTimePicker.types.js +15 -0
- package/dist/DesktopTimePicker/DesktopTimePickerList.d.ts +4 -0
- package/dist/DesktopTimePicker/DesktopTimePickerList.js +111 -0
- package/dist/DesktopTimePicker/index.css +170 -0
- package/dist/DesktopTimePicker/index.d.ts +2 -0
- package/dist/DesktopTimePicker/index.js +41 -0
- package/dist/DesktopTimePicker/useGetTimePickerContent.d.ts +6 -0
- package/dist/DesktopTimePicker/useGetTimePickerContent.js +246 -0
- package/dist/DesktopTimePicker/utils/scrollUtil.d.ts +2 -0
- package/dist/DesktopTimePicker/utils/scrollUtil.js +27 -0
- package/dist/DesktopTimePicker/utils/scrollUtil.miniapp.d.ts +2 -0
- package/dist/DesktopTimePicker/utils/scrollUtil.miniapp.js +51 -0
- package/dist/DesktopTimePicker/utils/utils.d.ts +28 -0
- package/dist/DesktopTimePicker/utils/utils.js +408 -0
- package/dist/Dialog/FunctionalDialog.js +1 -1
- package/dist/ItemSelector/ItemSelector.css +120 -0
- package/dist/ItemSelector/ItemSelector.d.ts +4 -0
- package/dist/ItemSelector/ItemSelector.js +84 -0
- package/dist/ItemSelector/ItemSelector.miniapp.d.ts +5 -0
- package/dist/ItemSelector/ItemSelector.miniapp.js +125 -0
- package/dist/ItemSelector/ItemSelector.types.d.ts +40 -0
- package/dist/ItemSelector/ItemSelector.types.js +15 -0
- package/dist/ItemSelector/ItemSelectorCore.d.ts +5 -0
- package/dist/ItemSelector/ItemSelectorCore.js +217 -0
- package/dist/ItemSelector/Selector/index.css +11 -0
- package/dist/ItemSelector/Selector/index.d.ts +9 -0
- package/dist/ItemSelector/Selector/index.js +48 -0
- package/dist/ItemSelector/index.d.ts +2 -0
- package/dist/ItemSelector/index.js +41 -0
- package/dist/ItemSelector/miniapp.css +4 -0
- package/dist/Modal/Modal.miniapp.d.ts +1 -1
- package/dist/Picker/Picker.css +5 -0
- package/dist/Picker/Picker.js +27 -5
- package/dist/Picker/Picker.types.d.ts +15 -2
- package/dist/Picker/PickerPanel.css +4 -0
- package/dist/Picker/PickerPanel.js +7 -6
- package/dist/Popover/Popover.js +70 -27
- package/dist/Portal/Portal.miniapp.js +7 -4
- package/dist/ScrollView/ScrollView.js +24 -11
- package/dist/ScrollView/ScrollView.types.d.ts +0 -1
- package/dist/Select/Select.css +1 -4
- package/dist/Select/Select.js +63 -40
- package/dist/Slider/Slider.js +13 -5
- package/dist/SwipeAction/SwipeAction.css +79 -0
- package/dist/SwipeAction/SwipeAction.d.ts +5 -0
- package/dist/SwipeAction/SwipeAction.js +349 -0
- package/dist/SwipeAction/SwipeAction.types.d.ts +83 -0
- package/dist/SwipeAction/SwipeAction.types.js +39 -0
- package/dist/SwipeAction/SwipeActionContext.d.ts +4 -0
- package/dist/SwipeAction/SwipeActionContext.js +30 -0
- package/dist/SwipeAction/SwipeActionItem.css +31 -0
- package/dist/SwipeAction/SwipeActionItem.d.ts +5 -0
- package/dist/SwipeAction/SwipeActionItem.js +105 -0
- package/dist/SwipeAction/index.d.ts +4 -0
- package/dist/SwipeAction/index.js +45 -0
- package/dist/Tabs/Tab.js +13 -4
- package/dist/Tabs/Tabs.js +30 -15
- package/dist/Tabs/utils/scroll.d.ts +2 -0
- package/dist/Tabs/utils/scroll.js +55 -0
- package/dist/Toast/FunctionalToast.js +1 -1
- package/dist/Toast/Toast.css +0 -1
- package/dist/Tooltip/Tooltip.js +70 -27
- package/dist/index.d.ts +7 -0
- package/dist/index.js +15 -1
- package/dist/locales/base.d.ts +11 -0
- package/dist/locales/en-US.js +24 -0
- package/dist/locales/zh-CN.js +24 -0
- package/dist/locales/zh-TW.js +24 -0
- package/es/Calendar/Calendar.js +5 -1
- package/es/Calendar/Calendar.types.d.ts +5 -0
- package/es/CitySelector/CitySelectorCore.js +3 -3
- package/es/Collapse/Collapse.css +0 -1
- package/es/Collapse/Collapse.d.ts +1 -1
- package/es/Collapse/Collapse.js +11 -8
- package/es/Collapse/Collapse.miniapp.d.ts +5 -0
- package/es/Collapse/Collapse.miniapp.js +157 -0
- package/es/CollapsePanel/CollapsePanel.css +4 -2
- package/es/DatePicker/DatePicker.d.ts +4 -0
- package/es/DatePicker/DatePicker.js +310 -0
- package/es/DatePicker/DatePicker.types.d.ts +43 -0
- package/es/DatePicker/DatePicker.types.js +1 -0
- package/es/DatePicker/index.d.ts +2 -0
- package/es/DatePicker/index.js +6 -0
- package/es/DesktopDatePicker/DesktopDatePicker.d.ts +5 -0
- package/es/DesktopDatePicker/DesktopDatePicker.js +253 -0
- package/es/DesktopDatePicker/DesktopDatePicker.types.d.ts +163 -0
- package/es/DesktopDatePicker/DesktopDatePicker.types.js +1 -0
- package/es/DesktopDatePicker/deskTopPickerContainer.css +100 -0
- package/es/DesktopDatePicker/index.css +61 -0
- package/es/DesktopDatePicker/index.d.ts +2 -0
- package/es/DesktopDatePicker/index.js +6 -0
- package/es/DesktopDatePicker/useGetDatePickerContent.d.ts +6 -0
- package/es/DesktopDatePicker/useGetDatePickerContent.js +316 -0
- package/es/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +5 -0
- package/es/DesktopDateTimePicker/DesktopDateTimePicker.js +295 -0
- package/es/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +163 -0
- package/es/DesktopDateTimePicker/DesktopDateTimePicker.types.js +1 -0
- package/es/DesktopDateTimePicker/index.css +66 -0
- package/es/DesktopDateTimePicker/index.d.ts +2 -0
- package/es/DesktopDateTimePicker/index.js +9 -0
- package/es/DesktopPicker/DesktopPicker.d.ts +5 -0
- package/es/DesktopPicker/DesktopPicker.js +221 -0
- package/es/DesktopPicker/DesktopPicker.types.d.ts +57 -0
- package/es/DesktopPicker/DesktopPicker.types.js +1 -0
- package/es/DesktopPicker/index.css +37 -0
- package/es/DesktopPicker/index.d.ts +2 -0
- package/es/DesktopPicker/index.js +6 -0
- package/es/DesktopPicker/utils/calcAfterMounted.d.ts +2 -0
- package/es/DesktopPicker/utils/calcAfterMounted.js +6 -0
- package/es/DesktopPicker/utils/calcAfterMounted.miniapp.d.ts +2 -0
- package/es/DesktopPicker/utils/calcAfterMounted.miniapp.js +9 -0
- package/es/DesktopTimePicker/DesktopTimePicker.d.ts +5 -0
- package/es/DesktopTimePicker/DesktopTimePicker.js +261 -0
- package/es/DesktopTimePicker/DesktopTimePicker.types.d.ts +182 -0
- package/es/DesktopTimePicker/DesktopTimePicker.types.js +1 -0
- package/es/DesktopTimePicker/DesktopTimePickerList.d.ts +4 -0
- package/es/DesktopTimePicker/DesktopTimePickerList.js +84 -0
- package/es/DesktopTimePicker/index.css +170 -0
- package/es/DesktopTimePicker/index.d.ts +2 -0
- package/es/DesktopTimePicker/index.js +6 -0
- package/es/DesktopTimePicker/useGetTimePickerContent.d.ts +6 -0
- package/es/DesktopTimePicker/useGetTimePickerContent.js +223 -0
- package/es/DesktopTimePicker/utils/scrollUtil.d.ts +2 -0
- package/es/DesktopTimePicker/utils/scrollUtil.js +8 -0
- package/es/DesktopTimePicker/utils/scrollUtil.miniapp.d.ts +2 -0
- package/es/DesktopTimePicker/utils/scrollUtil.miniapp.js +22 -0
- package/es/DesktopTimePicker/utils/utils.d.ts +28 -0
- package/es/DesktopTimePicker/utils/utils.js +365 -0
- package/es/Dialog/FunctionalDialog.js +2 -2
- package/es/ItemSelector/ItemSelector.css +120 -0
- package/es/ItemSelector/ItemSelector.d.ts +4 -0
- package/es/ItemSelector/ItemSelector.js +57 -0
- package/es/ItemSelector/ItemSelector.miniapp.d.ts +5 -0
- package/es/ItemSelector/ItemSelector.miniapp.js +98 -0
- package/es/ItemSelector/ItemSelector.types.d.ts +40 -0
- package/es/ItemSelector/ItemSelector.types.js +1 -0
- package/es/ItemSelector/ItemSelectorCore.d.ts +5 -0
- package/es/ItemSelector/ItemSelectorCore.js +190 -0
- package/es/ItemSelector/Selector/index.css +11 -0
- package/es/ItemSelector/Selector/index.d.ts +9 -0
- package/es/ItemSelector/Selector/index.js +19 -0
- package/es/ItemSelector/index.d.ts +2 -0
- package/es/ItemSelector/index.js +6 -0
- package/es/ItemSelector/miniapp.css +4 -0
- package/es/Picker/Picker.css +5 -0
- package/es/Picker/Picker.js +27 -5
- package/es/Picker/Picker.types.d.ts +15 -2
- package/es/Picker/PickerPanel.css +4 -0
- package/es/Picker/PickerPanel.js +7 -6
- package/es/Popover/Popover.js +73 -29
- package/es/Portal/Portal.miniapp.js +8 -5
- package/es/ScrollView/ScrollView.js +24 -11
- package/es/ScrollView/ScrollView.types.d.ts +0 -1
- package/es/Select/Select.css +1 -4
- package/es/Select/Select.js +63 -41
- package/es/Slider/Slider.js +16 -6
- package/es/SwipeAction/SwipeAction.css +79 -0
- package/es/SwipeAction/SwipeAction.d.ts +5 -0
- package/es/SwipeAction/SwipeAction.js +337 -0
- package/es/SwipeAction/SwipeAction.types.d.ts +83 -0
- package/es/SwipeAction/SwipeAction.types.js +1 -0
- package/es/SwipeAction/SwipeActionContext.d.ts +4 -0
- package/es/SwipeAction/SwipeActionContext.js +11 -0
- package/es/SwipeAction/SwipeActionItem.css +31 -0
- package/es/SwipeAction/SwipeActionItem.d.ts +5 -0
- package/es/SwipeAction/SwipeActionItem.js +78 -0
- package/es/SwipeAction/index.d.ts +4 -0
- package/es/SwipeAction/index.js +9 -0
- package/es/Tabs/Tab.js +13 -4
- package/es/Tabs/Tabs.js +30 -15
- package/es/Tabs/utils/scroll.d.ts +2 -0
- package/es/Tabs/utils/scroll.js +36 -0
- package/es/Toast/FunctionalToast.js +2 -2
- package/es/Toast/Toast.css +0 -1
- package/es/Tooltip/Tooltip.js +73 -29
- package/es/index.d.ts +7 -0
- package/es/index.js +7 -0
- package/es/locales/base.d.ts +11 -0
- package/es/locales/en-US.js +24 -0
- package/es/locales/zh-CN.js +24 -0
- package/es/locales/zh-TW.js +24 -0
- package/package.json +5 -5
- package/dist/Tabs/utils/bound.d.ts +0 -1
- package/es/Tabs/utils/bound.d.ts +0 -1
- package/es/Tabs/utils/bound.js +0 -13
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import dayjs, { Dayjs } from 'dayjs';
|
|
2
|
+
import { DisabledTimeView, ViewTypeWithMeridiem, ITimeInstance, ITimeItemNumberInstance, TimeSteps } from '../DesktopTimePicker.types';
|
|
3
|
+
/**
|
|
4
|
+
* 判断时间是否在可选日期区间内
|
|
5
|
+
*/
|
|
6
|
+
export declare const getIsRangeDate: (time: Dayjs, start?: Dayjs, end?: Dayjs) => boolean;
|
|
7
|
+
/**
|
|
8
|
+
* 判断时间是否在 disabledView 时间区间内
|
|
9
|
+
*/
|
|
10
|
+
export declare const isDisabledViewTime: (time: Dayjs, disabledTimeView: DisabledTimeView) => boolean;
|
|
11
|
+
/**
|
|
12
|
+
* 判断时间是否在 minTime & maxTime 时间区间内
|
|
13
|
+
*/
|
|
14
|
+
export declare const getIsRangeTime: (time: Dayjs, start?: Dayjs, end?: Dayjs) => boolean;
|
|
15
|
+
/**
|
|
16
|
+
* 判断时间是否在disabledView || outOf minTime-maxTime 时间区间内
|
|
17
|
+
*/
|
|
18
|
+
export declare const isDisabledTime: (time: Dayjs, start?: Dayjs, end?: Dayjs, disabledTimeView?: DisabledTimeView) => boolean;
|
|
19
|
+
/**
|
|
20
|
+
* 获取分钟时间面板 是否小于minTime分钟
|
|
21
|
+
*/
|
|
22
|
+
export declare const getOutOfMinRangeMinutes: (hourValue: number, minTime: Dayjs, dataList: ITimeItemNumberInstance[]) => number[];
|
|
23
|
+
export declare const getOutOfMaxRangeMinutes: (hourValue: number, maxTime: Dayjs, dataList: ITimeItemNumberInstance[]) => number[];
|
|
24
|
+
export declare const getOutOfMinRangeSeconds: (hourValue: number, minuteValue: number, minTime: Dayjs, dataList: ITimeItemNumberInstance[]) => number[];
|
|
25
|
+
export declare const getOutOfMaxRangeSeconds: (hourValue: number, minuteValue: number, maxTime: Dayjs, dataList: ITimeItemNumberInstance[]) => number[];
|
|
26
|
+
export declare const getdisabledTime: (type: ViewTypeWithMeridiem, timeValue: Dayjs, minTime: Dayjs, maxTime: Dayjs, dataList: ITimeInstance[], disabledTimeView: DisabledTimeView, timeSteps: TimeSteps, ampm?: boolean) => (string | number)[];
|
|
27
|
+
export declare const calculateValidMinTime: (disabledTimeView: DisabledTimeView, minTime?: Dayjs) => dayjs.Dayjs;
|
|
28
|
+
export declare const dateToDayjs: (date: Date) => dayjs.Dayjs;
|
|
@@ -0,0 +1,408 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var utils_exports = {};
|
|
29
|
+
__export(utils_exports, {
|
|
30
|
+
calculateValidMinTime: () => calculateValidMinTime,
|
|
31
|
+
dateToDayjs: () => dateToDayjs,
|
|
32
|
+
getIsRangeDate: () => getIsRangeDate,
|
|
33
|
+
getIsRangeTime: () => getIsRangeTime,
|
|
34
|
+
getOutOfMaxRangeMinutes: () => getOutOfMaxRangeMinutes,
|
|
35
|
+
getOutOfMaxRangeSeconds: () => getOutOfMaxRangeSeconds,
|
|
36
|
+
getOutOfMinRangeMinutes: () => getOutOfMinRangeMinutes,
|
|
37
|
+
getOutOfMinRangeSeconds: () => getOutOfMinRangeSeconds,
|
|
38
|
+
getdisabledTime: () => getdisabledTime,
|
|
39
|
+
isDisabledTime: () => isDisabledTime,
|
|
40
|
+
isDisabledViewTime: () => isDisabledViewTime
|
|
41
|
+
});
|
|
42
|
+
module.exports = __toCommonJS(utils_exports);
|
|
43
|
+
var import_dayjs = __toESM(require("dayjs"));
|
|
44
|
+
const getIsRangeDate = (time, start, end) => {
|
|
45
|
+
if (!time)
|
|
46
|
+
return true;
|
|
47
|
+
if (!start && !end) {
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
if (start && end) {
|
|
51
|
+
return !time.isBefore(start, "day") && !time.isAfter(end, "day");
|
|
52
|
+
}
|
|
53
|
+
if (start) {
|
|
54
|
+
return !time.isBefore(start, "day") && (end ? !time.isAfter(end, "day") : true);
|
|
55
|
+
}
|
|
56
|
+
if (end) {
|
|
57
|
+
return !time.isAfter(end, "day") && (start ? !time.isBefore(start, "day") : true);
|
|
58
|
+
}
|
|
59
|
+
return true;
|
|
60
|
+
};
|
|
61
|
+
const isDisabledViewTime = (time, disabledTimeView) => {
|
|
62
|
+
const isDisabledViewTimeItem = (type) => {
|
|
63
|
+
const disabledArr = disabledTimeView == null ? void 0 : disabledTimeView()[type](time.hour(), time.minute());
|
|
64
|
+
const value = time[type]();
|
|
65
|
+
return (disabledArr == null ? void 0 : disabledArr.indexOf(value)) !== -1;
|
|
66
|
+
};
|
|
67
|
+
return isDisabledViewTimeItem("hour") || isDisabledViewTimeItem("minute") || isDisabledViewTimeItem("second");
|
|
68
|
+
};
|
|
69
|
+
const getIsRangeTime = (time, start, end) => {
|
|
70
|
+
if (start && end) {
|
|
71
|
+
return !time.isBefore(start, "second") && !time.isAfter(end, "second");
|
|
72
|
+
}
|
|
73
|
+
if (start) {
|
|
74
|
+
return !time.isBefore(start, "second");
|
|
75
|
+
}
|
|
76
|
+
if (end) {
|
|
77
|
+
return !time.isAfter(end, "second");
|
|
78
|
+
}
|
|
79
|
+
return true;
|
|
80
|
+
};
|
|
81
|
+
const isDisabledTime = (time, start, end, disabledTimeView) => {
|
|
82
|
+
if (!time)
|
|
83
|
+
return false;
|
|
84
|
+
return isDisabledViewTime(time, disabledTimeView) || !getIsRangeTime(time, start, end);
|
|
85
|
+
};
|
|
86
|
+
const getOutOfMinRangeMinutes = (hourValue, minTime, dataList) => {
|
|
87
|
+
if (!minTime) {
|
|
88
|
+
return [];
|
|
89
|
+
}
|
|
90
|
+
const outOfMinRangeMinutes = [];
|
|
91
|
+
if (hourValue === minTime.hour()) {
|
|
92
|
+
outOfMinRangeMinutes.push(
|
|
93
|
+
...dataList.map((item) => item.value).filter((minute) => minute < minTime.minute())
|
|
94
|
+
);
|
|
95
|
+
} else if (hourValue < minTime.hour()) {
|
|
96
|
+
outOfMinRangeMinutes.push(...dataList.map((item) => item.value));
|
|
97
|
+
}
|
|
98
|
+
return outOfMinRangeMinutes;
|
|
99
|
+
};
|
|
100
|
+
const getOutOfMaxRangeMinutes = (hourValue, maxTime, dataList) => {
|
|
101
|
+
if (!maxTime) {
|
|
102
|
+
return [];
|
|
103
|
+
}
|
|
104
|
+
const outOfMaxRangeMinutes = [];
|
|
105
|
+
if (hourValue === maxTime.hour()) {
|
|
106
|
+
outOfMaxRangeMinutes.push(
|
|
107
|
+
...dataList.map((item) => item.value).filter((minute) => minute > maxTime.minute())
|
|
108
|
+
);
|
|
109
|
+
} else if (hourValue > maxTime.hour()) {
|
|
110
|
+
outOfMaxRangeMinutes.push(...dataList.map((item) => item.value));
|
|
111
|
+
}
|
|
112
|
+
return outOfMaxRangeMinutes;
|
|
113
|
+
};
|
|
114
|
+
const getOutOfMinRangeSeconds = (hourValue, minuteValue, minTime, dataList) => {
|
|
115
|
+
if (!minTime) {
|
|
116
|
+
return [];
|
|
117
|
+
}
|
|
118
|
+
const outOfMinRangeMinutes = [];
|
|
119
|
+
if (hourValue === minTime.hour() && minuteValue === minTime.minute()) {
|
|
120
|
+
outOfMinRangeMinutes.push(
|
|
121
|
+
...dataList.map((item) => item.value).filter((second) => second < minTime.second())
|
|
122
|
+
);
|
|
123
|
+
} else if (hourValue === minTime.hour() && minuteValue < minTime.minute()) {
|
|
124
|
+
outOfMinRangeMinutes.push(...dataList.map((item) => item.value));
|
|
125
|
+
} else if (hourValue < minTime.hour()) {
|
|
126
|
+
outOfMinRangeMinutes.push(...dataList.map((item) => item.value));
|
|
127
|
+
}
|
|
128
|
+
return outOfMinRangeMinutes;
|
|
129
|
+
};
|
|
130
|
+
const getOutOfMaxRangeSeconds = (hourValue, minuteValue, maxTime, dataList) => {
|
|
131
|
+
if (!maxTime) {
|
|
132
|
+
return [];
|
|
133
|
+
}
|
|
134
|
+
const outOfMaxRangeMinutes = [];
|
|
135
|
+
if (hourValue === maxTime.hour() && minuteValue === maxTime.minute()) {
|
|
136
|
+
outOfMaxRangeMinutes.push(
|
|
137
|
+
...dataList.map((item) => item.value).filter((second) => second > maxTime.second())
|
|
138
|
+
);
|
|
139
|
+
} else if (hourValue === maxTime.hour() && minuteValue > maxTime.minute()) {
|
|
140
|
+
outOfMaxRangeMinutes.push(...dataList.map((item) => item.value));
|
|
141
|
+
} else if (hourValue > maxTime.hour()) {
|
|
142
|
+
outOfMaxRangeMinutes.push(...dataList.map((item) => item.value));
|
|
143
|
+
}
|
|
144
|
+
return outOfMaxRangeMinutes;
|
|
145
|
+
};
|
|
146
|
+
const getdisabledTime = (type, timeValue, minTime, maxTime, dataList, disabledTimeView, timeSteps, ampm) => {
|
|
147
|
+
var _a, _b, _c, _d, _e;
|
|
148
|
+
const isRangeDate = getIsRangeDate(timeValue, minTime, maxTime);
|
|
149
|
+
if (!isRangeDate) {
|
|
150
|
+
return dataList.map((item) => item.value);
|
|
151
|
+
}
|
|
152
|
+
const hourValue = timeValue == null ? void 0 : timeValue.hour();
|
|
153
|
+
const minuteValue = timeValue == null ? void 0 : timeValue.minute();
|
|
154
|
+
const getDisabledViewTime = () => {
|
|
155
|
+
var _a2, _b2, _c2, _d2, _e2, _f;
|
|
156
|
+
switch (type) {
|
|
157
|
+
case "hour": {
|
|
158
|
+
const disabledHours = ((_b2 = disabledTimeView == null ? void 0 : (_a2 = disabledTimeView()).hour) == null ? void 0 : _b2.call(_a2)) || [];
|
|
159
|
+
if (ampm && (timeValue == null ? void 0 : timeValue.format("A")) === "PM") {
|
|
160
|
+
return disabledHours.map((hour) => hour - 12);
|
|
161
|
+
}
|
|
162
|
+
return disabledHours;
|
|
163
|
+
}
|
|
164
|
+
case "minute": {
|
|
165
|
+
const disabledMinutes = ((_d2 = disabledTimeView == null ? void 0 : (_c2 = disabledTimeView()).minute) == null ? void 0 : _d2.call(_c2, hourValue)) || [];
|
|
166
|
+
return disabledMinutes;
|
|
167
|
+
}
|
|
168
|
+
case "second": {
|
|
169
|
+
const disabledSeconds = ((_f = disabledTimeView == null ? void 0 : (_e2 = disabledTimeView()).second) == null ? void 0 : _f.call(_e2, hourValue, minuteValue)) || [];
|
|
170
|
+
return disabledSeconds;
|
|
171
|
+
}
|
|
172
|
+
default:
|
|
173
|
+
return [];
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
const disabledViewTime = getDisabledViewTime();
|
|
177
|
+
const getOutOfMinRangeTime = () => {
|
|
178
|
+
if (!minTime) {
|
|
179
|
+
return [];
|
|
180
|
+
}
|
|
181
|
+
switch (type) {
|
|
182
|
+
case "hour": {
|
|
183
|
+
const outOfRangeHours = dataList.map((item) => item.value).filter((hour) => {
|
|
184
|
+
const minHour2 = minTime == null ? void 0 : minTime.hour();
|
|
185
|
+
const meridiemValue = timeValue == null ? void 0 : timeValue.format("A");
|
|
186
|
+
if (ampm) {
|
|
187
|
+
if (meridiemValue === "AM") {
|
|
188
|
+
return minHour2 >= 12 || hour < minHour2;
|
|
189
|
+
}
|
|
190
|
+
if (minHour2 < 12) {
|
|
191
|
+
return false;
|
|
192
|
+
}
|
|
193
|
+
return hour < minHour2 - 12;
|
|
194
|
+
}
|
|
195
|
+
return hour < minHour2;
|
|
196
|
+
});
|
|
197
|
+
return outOfRangeHours;
|
|
198
|
+
}
|
|
199
|
+
case "minute": {
|
|
200
|
+
const outOfRangeMinutes = getOutOfMinRangeMinutes(
|
|
201
|
+
hourValue,
|
|
202
|
+
minTime,
|
|
203
|
+
dataList
|
|
204
|
+
);
|
|
205
|
+
return outOfRangeMinutes;
|
|
206
|
+
}
|
|
207
|
+
case "second": {
|
|
208
|
+
const outOfRangeSeconds = getOutOfMinRangeSeconds(
|
|
209
|
+
hourValue,
|
|
210
|
+
minuteValue,
|
|
211
|
+
minTime,
|
|
212
|
+
dataList
|
|
213
|
+
);
|
|
214
|
+
return outOfRangeSeconds;
|
|
215
|
+
}
|
|
216
|
+
default:
|
|
217
|
+
return [];
|
|
218
|
+
}
|
|
219
|
+
};
|
|
220
|
+
const getOutOfMaxRangeTime = () => {
|
|
221
|
+
if (!maxTime) {
|
|
222
|
+
return [];
|
|
223
|
+
}
|
|
224
|
+
switch (type) {
|
|
225
|
+
case "hour": {
|
|
226
|
+
const outOfRangeHours = dataList.map((item) => item.value).filter((hour) => {
|
|
227
|
+
if (ampm) {
|
|
228
|
+
const maxHour2 = maxTime == null ? void 0 : maxTime.hour();
|
|
229
|
+
const meridiemValue = timeValue == null ? void 0 : timeValue.format("A");
|
|
230
|
+
if (maxHour2 >= 12) {
|
|
231
|
+
if (meridiemValue === "AM") {
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
234
|
+
return hour > maxHour2 - 12;
|
|
235
|
+
}
|
|
236
|
+
if (meridiemValue === "AM") {
|
|
237
|
+
return hour > maxHour2;
|
|
238
|
+
}
|
|
239
|
+
return true;
|
|
240
|
+
}
|
|
241
|
+
return hour > (maxTime == null ? void 0 : maxTime.hour());
|
|
242
|
+
});
|
|
243
|
+
return outOfRangeHours;
|
|
244
|
+
}
|
|
245
|
+
case "minute": {
|
|
246
|
+
const outOfRangeMinutes = getOutOfMaxRangeMinutes(
|
|
247
|
+
hourValue,
|
|
248
|
+
maxTime,
|
|
249
|
+
dataList
|
|
250
|
+
);
|
|
251
|
+
return outOfRangeMinutes;
|
|
252
|
+
}
|
|
253
|
+
case "second": {
|
|
254
|
+
const outOfRangeSeconds = getOutOfMaxRangeSeconds(
|
|
255
|
+
hourValue,
|
|
256
|
+
minuteValue,
|
|
257
|
+
maxTime,
|
|
258
|
+
dataList
|
|
259
|
+
);
|
|
260
|
+
return outOfRangeSeconds;
|
|
261
|
+
}
|
|
262
|
+
default:
|
|
263
|
+
return [];
|
|
264
|
+
}
|
|
265
|
+
};
|
|
266
|
+
const outOfMinRangeTime = getOutOfMinRangeTime();
|
|
267
|
+
const outOfMaxRangeTime = getOutOfMaxRangeTime();
|
|
268
|
+
const isEqualMinDate = timeValue == null ? void 0 : timeValue.isSame(minTime, "day");
|
|
269
|
+
const isEqualMaxDate = timeValue == null ? void 0 : timeValue.isSame(maxTime, "day");
|
|
270
|
+
const allHours = Array.from({ length: 24 }, (_, i) => i);
|
|
271
|
+
const disabledViewHours = ((_b = disabledTimeView == null ? void 0 : (_a = disabledTimeView()).hour) == null ? void 0 : _b.call(_a)) || [];
|
|
272
|
+
const minHour = (_c = minTime == null ? void 0 : minTime.hour()) != null ? _c : 0;
|
|
273
|
+
const maxHour = (_d = maxTime == null ? void 0 : maxTime.hour()) != null ? _d : 23;
|
|
274
|
+
const outOfMinHours = allHours.filter((hour) => hour < minHour);
|
|
275
|
+
const outOfMaxHours = allHours.filter((hour) => hour > maxHour);
|
|
276
|
+
const generateHourArray = (start, end, step) => {
|
|
277
|
+
if (!step) {
|
|
278
|
+
step = 1;
|
|
279
|
+
}
|
|
280
|
+
return Array.from(
|
|
281
|
+
{ length: Math.ceil((end - start) / step) },
|
|
282
|
+
(_, i) => start + i * step
|
|
283
|
+
);
|
|
284
|
+
};
|
|
285
|
+
const hourStep = (_e = timeSteps.hour) != null ? _e : 1;
|
|
286
|
+
const amArr = generateHourArray(0, 12, hourStep);
|
|
287
|
+
const pmArr = generateHourArray(12, 24, hourStep);
|
|
288
|
+
const disabledAmPm = (disabledHours) => {
|
|
289
|
+
const containsAll = (arr) => arr.every((item) => disabledHours.includes(item));
|
|
290
|
+
const containsAllAmArr = containsAll(amArr);
|
|
291
|
+
const containsAllPmArr = containsAll(pmArr);
|
|
292
|
+
if (containsAllAmArr && containsAllPmArr)
|
|
293
|
+
return ["AM", "PM"];
|
|
294
|
+
if (containsAllAmArr)
|
|
295
|
+
return ["AM"];
|
|
296
|
+
if (containsAllPmArr)
|
|
297
|
+
return ["PM"];
|
|
298
|
+
return [];
|
|
299
|
+
};
|
|
300
|
+
if (!timeValue || isEqualMinDate && isEqualMaxDate) {
|
|
301
|
+
if (type === "meridiem") {
|
|
302
|
+
const disabledHours = [
|
|
303
|
+
.../* @__PURE__ */ new Set([...outOfMinHours, ...outOfMaxHours, ...disabledViewHours])
|
|
304
|
+
];
|
|
305
|
+
return disabledAmPm(disabledHours);
|
|
306
|
+
}
|
|
307
|
+
return [
|
|
308
|
+
.../* @__PURE__ */ new Set([
|
|
309
|
+
...disabledViewTime,
|
|
310
|
+
...outOfMinRangeTime,
|
|
311
|
+
...outOfMaxRangeTime
|
|
312
|
+
])
|
|
313
|
+
];
|
|
314
|
+
}
|
|
315
|
+
if (!isEqualMinDate && !isEqualMaxDate) {
|
|
316
|
+
if (type === "meridiem") {
|
|
317
|
+
const disabledHours = disabledViewHours;
|
|
318
|
+
return disabledAmPm(disabledHours);
|
|
319
|
+
}
|
|
320
|
+
return disabledViewTime;
|
|
321
|
+
}
|
|
322
|
+
if (isEqualMinDate) {
|
|
323
|
+
if (type === "meridiem") {
|
|
324
|
+
const disabledHours = [
|
|
325
|
+
.../* @__PURE__ */ new Set([...outOfMinHours, ...disabledViewHours])
|
|
326
|
+
];
|
|
327
|
+
return disabledAmPm(disabledHours);
|
|
328
|
+
}
|
|
329
|
+
return [.../* @__PURE__ */ new Set([...disabledViewTime, ...outOfMinRangeTime])];
|
|
330
|
+
}
|
|
331
|
+
if (type === "meridiem") {
|
|
332
|
+
const disabledHours = [
|
|
333
|
+
.../* @__PURE__ */ new Set([...outOfMaxHours, ...disabledViewHours])
|
|
334
|
+
];
|
|
335
|
+
return disabledAmPm(disabledHours);
|
|
336
|
+
}
|
|
337
|
+
return [.../* @__PURE__ */ new Set([...disabledViewTime, ...outOfMaxRangeTime])];
|
|
338
|
+
};
|
|
339
|
+
const calculateValidMinTime = (disabledTimeView, minTime) => {
|
|
340
|
+
var _a, _b, _c, _d, _e, _f;
|
|
341
|
+
const defaultTime = (0, import_dayjs.default)().set("hour", 0).set("minute", 0).set("second", 0);
|
|
342
|
+
let validTime = minTime || defaultTime;
|
|
343
|
+
const disabledHours = (_b = disabledTimeView == null ? void 0 : (_a = disabledTimeView()).hour) == null ? void 0 : _b.call(_a);
|
|
344
|
+
if (disabledHours.includes(validTime.hour())) {
|
|
345
|
+
const validHours = Array.from({ length: 24 }, (_, i) => i).filter(
|
|
346
|
+
(value) => !disabledHours.includes(value) && value > validTime.hour()
|
|
347
|
+
);
|
|
348
|
+
const minValue = Math.min(...validHours);
|
|
349
|
+
validTime = validTime.set("hour", minValue);
|
|
350
|
+
}
|
|
351
|
+
if (validTime.hour() > (minTime == null ? void 0 : minTime.hour())) {
|
|
352
|
+
validTime = validTime.set("minute", 0);
|
|
353
|
+
validTime = validTime.set("second", 0);
|
|
354
|
+
}
|
|
355
|
+
const disabledMinutes = (_d = disabledTimeView == null ? void 0 : (_c = disabledTimeView()).minute) == null ? void 0 : _d.call(_c, validTime.hour());
|
|
356
|
+
if (disabledMinutes.includes(validTime.minute())) {
|
|
357
|
+
const validMinutes = Array.from({ length: 60 }, (_, i) => i).filter(
|
|
358
|
+
(value) => {
|
|
359
|
+
if (validTime.hour() > (minTime == null ? void 0 : minTime.hour())) {
|
|
360
|
+
return !disabledMinutes.includes(value);
|
|
361
|
+
}
|
|
362
|
+
return !disabledMinutes.includes(value) && value > validTime.minute();
|
|
363
|
+
}
|
|
364
|
+
);
|
|
365
|
+
const minValue = Math.min(...validMinutes);
|
|
366
|
+
validTime = validTime.set("minute", minValue);
|
|
367
|
+
}
|
|
368
|
+
if (validTime.minute() > (minTime == null ? void 0 : minTime.minute())) {
|
|
369
|
+
validTime = validTime.set("second", 0);
|
|
370
|
+
}
|
|
371
|
+
const disabledSeconds = (_f = disabledTimeView == null ? void 0 : (_e = disabledTimeView()).second) == null ? void 0 : _f.call(
|
|
372
|
+
_e,
|
|
373
|
+
validTime.hour(),
|
|
374
|
+
validTime.minute()
|
|
375
|
+
);
|
|
376
|
+
if (disabledSeconds.includes(validTime.second())) {
|
|
377
|
+
const validSeconds = Array.from({ length: 60 }, (_, i) => i).filter(
|
|
378
|
+
(value) => {
|
|
379
|
+
if (validTime.hour() > (minTime == null ? void 0 : minTime.hour()) || validTime.minute() > (minTime == null ? void 0 : minTime.minute())) {
|
|
380
|
+
return !disabledSeconds.includes(value);
|
|
381
|
+
}
|
|
382
|
+
return !disabledMinutes.includes(value) && value > validTime.second();
|
|
383
|
+
}
|
|
384
|
+
);
|
|
385
|
+
const minValue = Math.min(...validSeconds);
|
|
386
|
+
validTime = validTime.set("second", minValue);
|
|
387
|
+
}
|
|
388
|
+
return validTime;
|
|
389
|
+
};
|
|
390
|
+
const dateToDayjs = (date) => {
|
|
391
|
+
if (!date)
|
|
392
|
+
return void 0;
|
|
393
|
+
return (0, import_dayjs.default)(date);
|
|
394
|
+
};
|
|
395
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
396
|
+
0 && (module.exports = {
|
|
397
|
+
calculateValidMinTime,
|
|
398
|
+
dateToDayjs,
|
|
399
|
+
getIsRangeDate,
|
|
400
|
+
getIsRangeTime,
|
|
401
|
+
getOutOfMaxRangeMinutes,
|
|
402
|
+
getOutOfMaxRangeSeconds,
|
|
403
|
+
getOutOfMinRangeMinutes,
|
|
404
|
+
getOutOfMinRangeSeconds,
|
|
405
|
+
getdisabledTime,
|
|
406
|
+
isDisabledTime,
|
|
407
|
+
isDisabledViewTime
|
|
408
|
+
});
|
|
@@ -91,7 +91,7 @@ const formatProps = (props) => {
|
|
|
91
91
|
};
|
|
92
92
|
const DialogGenerator = (options) => {
|
|
93
93
|
const rootWrapper = document.createElement("div");
|
|
94
|
-
const rootElement = (0, import_utils.
|
|
94
|
+
const rootElement = (0, import_utils.getRootContainer)();
|
|
95
95
|
rootElement.appendChild(rootWrapper);
|
|
96
96
|
const DialogComponent = () => {
|
|
97
97
|
const _a = options, { onConfirm, onCancel, ref } = _a, others = __objRest(_a, ["onConfirm", "onCancel", "ref"]);
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
:root,
|
|
2
|
+
page,
|
|
3
|
+
xhs-page {
|
|
4
|
+
--bui-item-selector-item-width: 111px;
|
|
5
|
+
--bui-item-selector-item-height: 36px;
|
|
6
|
+
--bui-item-selector-item-border-radius: 20px;
|
|
7
|
+
--bui-item-selector-item-margin: 4.5px 0 4.5px 9px;
|
|
8
|
+
--bui-item-selector-title-height: 45px;
|
|
9
|
+
--bui-item-selector-title-line-height: 45px;
|
|
10
|
+
--bui-item-selector-btn-close-size: 45px;
|
|
11
|
+
--bui-item-selector-btn-close-font-size: 20px;
|
|
12
|
+
--bui-item-selector-container-with-title-height: calc(100% - var(--bui-item-selector-title-height));
|
|
13
|
+
--bui-item-selector-item-container-min-height: 500px;
|
|
14
|
+
--bui-item-selector-select-item-buttons-padding: 7.5px 0 0 3px;
|
|
15
|
+
--bui-item-selector-select-item-title-line-height: 15px;
|
|
16
|
+
--bui-item-selector-list-item-height: 45px;
|
|
17
|
+
--bui-item-selector-item-index-has-title-top: calc(50% + var(--bui-item-selector-title-height) / 2);
|
|
18
|
+
--bui-item-selector-index-item-height: 20px;
|
|
19
|
+
}
|
|
20
|
+
.bui-item-selector {
|
|
21
|
+
font-family: var(--bui-font-family);
|
|
22
|
+
height: 100%;
|
|
23
|
+
position: relative;
|
|
24
|
+
}
|
|
25
|
+
.bui-item-selector-title {
|
|
26
|
+
width: 100%;
|
|
27
|
+
height: var(--bui-item-selector-title-height);
|
|
28
|
+
color: var(--bui-color-fg-default);
|
|
29
|
+
font-size: var(--bui-title-size-3);
|
|
30
|
+
line-height: var(--bui-item-selector-title-line-height);
|
|
31
|
+
text-align: center;
|
|
32
|
+
position: sticky;
|
|
33
|
+
top: 0;
|
|
34
|
+
z-index: 1004;
|
|
35
|
+
border-bottom: solid 1px var(--bui-color-border-default);
|
|
36
|
+
background-color: var(--bui-color-bg-view);
|
|
37
|
+
}
|
|
38
|
+
.bui-item-selector-btn-close {
|
|
39
|
+
position: absolute;
|
|
40
|
+
top: 0;
|
|
41
|
+
right: 0;
|
|
42
|
+
width: var(--bui-item-selector-btn-close-size);
|
|
43
|
+
height: var(--bui-item-selector-btn-close-size);
|
|
44
|
+
color: var(--bui-color-fg-muted);
|
|
45
|
+
text-align: center;
|
|
46
|
+
font-size: var(--bui-item-selector-btn-close-font-size);
|
|
47
|
+
}
|
|
48
|
+
.bui-item-selector-scroll-view-container {
|
|
49
|
+
height: 100%;
|
|
50
|
+
}
|
|
51
|
+
.bui-item-selector-scroll-view-container.container-has-title {
|
|
52
|
+
height: var(--bui-item-selector-container-with-title-height);
|
|
53
|
+
}
|
|
54
|
+
.bui-item-selector-all-item {
|
|
55
|
+
min-height: var(--bui-item-selector-item-container-min-height);
|
|
56
|
+
font-size: var(--bui-text-size-2);
|
|
57
|
+
width: 100%;
|
|
58
|
+
background: var(--bui-color-bg-view);
|
|
59
|
+
align-self: flex-start;
|
|
60
|
+
}
|
|
61
|
+
.bui-item-selector-all-item .select-item-buttons {
|
|
62
|
+
display: flex;
|
|
63
|
+
flex-flow: wrap;
|
|
64
|
+
padding: var(--bui-item-selector-select-item-buttons-padding);
|
|
65
|
+
}
|
|
66
|
+
.bui-item-selector-all-item .select-item-title {
|
|
67
|
+
font-size: var(--bui-title-size-4);
|
|
68
|
+
line-height: var(--bui-item-selector-select-item-title-line-height);
|
|
69
|
+
font-weight: var(--bui-font-weight-bold);
|
|
70
|
+
padding-left: var(--bui-spacing-lg);
|
|
71
|
+
padding-top: var(--bui-spacing-md);
|
|
72
|
+
}
|
|
73
|
+
.bui-item-selector-list {
|
|
74
|
+
padding-left: var(--bui-spacing-lg);
|
|
75
|
+
list-style-type: none;
|
|
76
|
+
}
|
|
77
|
+
.bui-item-selector-list-item {
|
|
78
|
+
height: var(--bui-item-selector-list-item-height);
|
|
79
|
+
font-size: var(--bui-title-size-4);
|
|
80
|
+
display: flex;
|
|
81
|
+
align-items: center;
|
|
82
|
+
}
|
|
83
|
+
.bui-item-selector-list-item:not(:last-child) {
|
|
84
|
+
border-bottom: 0.5px solid var(--bui-color-border-default);
|
|
85
|
+
}
|
|
86
|
+
.bui-item-selector-index-container {
|
|
87
|
+
z-index: 1001;
|
|
88
|
+
position: absolute;
|
|
89
|
+
white-space: nowrap;
|
|
90
|
+
right: 0;
|
|
91
|
+
top: 50%;
|
|
92
|
+
width: 40px;
|
|
93
|
+
will-change: transform;
|
|
94
|
+
transform: translate(0, -50%);
|
|
95
|
+
transition: opacity 0.2s ease-out, transform 0.2s ease-out;
|
|
96
|
+
}
|
|
97
|
+
.bui-item-selector-index-container.left-in {
|
|
98
|
+
opacity: 1;
|
|
99
|
+
transform: translate(0, -50%);
|
|
100
|
+
}
|
|
101
|
+
.bui-item-selector-index-container.item-index-has-title {
|
|
102
|
+
top: var(--bui-item-selector-item-index-has-title-top);
|
|
103
|
+
}
|
|
104
|
+
.bui-item-selector-index-container ul {
|
|
105
|
+
margin: 0;
|
|
106
|
+
padding: 0;
|
|
107
|
+
float: left;
|
|
108
|
+
width: 100%;
|
|
109
|
+
touch-action: none;
|
|
110
|
+
}
|
|
111
|
+
.bui-item-selector-index-container li {
|
|
112
|
+
list-style: none;
|
|
113
|
+
height: var(--bui-item-selector-index-item-height);
|
|
114
|
+
text-align: center;
|
|
115
|
+
font-size: var(--bui-text-size-3);
|
|
116
|
+
color: var(--bui-color-info, --bui-color-info);
|
|
117
|
+
display: flex;
|
|
118
|
+
align-items: center;
|
|
119
|
+
justify-content: center;
|
|
120
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __defProps = Object.defineProperties;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
9
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
+
var __spreadValues = (a, b) => {
|
|
13
|
+
for (var prop in b || (b = {}))
|
|
14
|
+
if (__hasOwnProp.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
if (__getOwnPropSymbols)
|
|
17
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
+
if (__propIsEnum.call(b, prop))
|
|
19
|
+
__defNormalProp(a, prop, b[prop]);
|
|
20
|
+
}
|
|
21
|
+
return a;
|
|
22
|
+
};
|
|
23
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
24
|
+
var __export = (target, all) => {
|
|
25
|
+
for (var name in all)
|
|
26
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
27
|
+
};
|
|
28
|
+
var __copyProps = (to, from, except, desc) => {
|
|
29
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
30
|
+
for (let key of __getOwnPropNames(from))
|
|
31
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
32
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
33
|
+
}
|
|
34
|
+
return to;
|
|
35
|
+
};
|
|
36
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
37
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
38
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
39
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
40
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
41
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
42
|
+
mod
|
|
43
|
+
));
|
|
44
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
45
|
+
var ItemSelector_exports = {};
|
|
46
|
+
__export(ItemSelector_exports, {
|
|
47
|
+
default: () => ItemSelector_default
|
|
48
|
+
});
|
|
49
|
+
module.exports = __toCommonJS(ItemSelector_exports);
|
|
50
|
+
var import_react = __toESM(require("react"));
|
|
51
|
+
var import_ItemSelectorCore = __toESM(require("./ItemSelectorCore"));
|
|
52
|
+
const ItemSelector = /* @__PURE__ */ import_react.default.forwardRef(
|
|
53
|
+
(props, ref) => {
|
|
54
|
+
const { items } = props;
|
|
55
|
+
const [height, setHeight] = (0, import_react.useState)("");
|
|
56
|
+
const touchHandler = (e, scrollToCode) => {
|
|
57
|
+
var _a;
|
|
58
|
+
const t = document.elementFromPoint(
|
|
59
|
+
e.changedTouches[0].clientX,
|
|
60
|
+
e.changedTouches[0].clientY
|
|
61
|
+
);
|
|
62
|
+
const code = (_a = t == null ? void 0 : t.dataset) == null ? void 0 : _a.code;
|
|
63
|
+
scrollToCode(code);
|
|
64
|
+
};
|
|
65
|
+
(0, import_react.useEffect)(() => {
|
|
66
|
+
var _a;
|
|
67
|
+
if (!(items == null ? void 0 : items.length) || height)
|
|
68
|
+
return;
|
|
69
|
+
const screenHeight = window.innerHeight || document.documentElement.clientHeight;
|
|
70
|
+
const domHeight = (_a = document.querySelector(".bui-item-selector-scroll-view-container")) == null ? void 0 : _a.getBoundingClientRect().height;
|
|
71
|
+
setHeight(`${domHeight / screenHeight * 100}vh`);
|
|
72
|
+
}, [items]);
|
|
73
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
74
|
+
import_ItemSelectorCore.default,
|
|
75
|
+
__spreadProps(__spreadValues({}, props), {
|
|
76
|
+
ref,
|
|
77
|
+
touchHandler,
|
|
78
|
+
height
|
|
79
|
+
})
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
);
|
|
83
|
+
ItemSelector.displayName = "BuiItemSelector";
|
|
84
|
+
var ItemSelector_default = ItemSelector;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ItemSelectorProps } from './ItemSelector.types';
|
|
3
|
+
import './miniapp.less';
|
|
4
|
+
declare const ItemSelector: React.ForwardRefExoticComponent<Omit<ItemSelectorProps<"div", {}>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
5
|
+
export default ItemSelector;
|