@will-ui/vue 1.0.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/LICENSE +21 -0
- package/README.md +48 -0
- package/TAILWIND.md +282 -0
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/components/audioPlayer/AudioPlayer.d.ts +123 -0
- package/dist/components/audioPlayer/AudioPlayer.js +375 -0
- package/dist/components/audioPlayer/AudioPlayer.js.map +1 -0
- package/dist/components/audioPlayer/index.d.ts +2 -0
- package/dist/components/audioPlayer/style/index.css +1 -0
- package/dist/components/btn/Btn.d.ts +45 -0
- package/dist/components/btn/Btn.js +165 -0
- package/dist/components/btn/Btn.js.map +1 -0
- package/dist/components/btn/config.d.ts +33 -0
- package/dist/components/btn/config.js +20 -0
- package/dist/components/btn/config.js.map +1 -0
- package/dist/components/btn/context.d.ts +12 -0
- package/dist/components/btn/context.js +6 -0
- package/dist/components/btn/context.js.map +1 -0
- package/dist/components/btn/index.d.ts +5 -0
- package/dist/components/btn/style/index.css +1 -0
- package/dist/components/btnGroup/BtnGroup.d.ts +46 -0
- package/dist/components/btnGroup/BtnGroup.js +43 -0
- package/dist/components/btnGroup/BtnGroup.js.map +1 -0
- package/dist/components/btnGroup/config.d.ts +14 -0
- package/dist/components/btnGroup/config.js +11 -0
- package/dist/components/btnGroup/config.js.map +1 -0
- package/dist/components/btnGroup/index.d.ts +3 -0
- package/dist/components/btnGroup/style/index.css +1 -0
- package/dist/components/cascade/Cascade.d.ts +1957 -0
- package/dist/components/cascade/Cascade.js +283 -0
- package/dist/components/cascade/Cascade.js.map +1 -0
- package/dist/components/cascade/config.d.ts +30 -0
- package/dist/components/cascade/config.js +18 -0
- package/dist/components/cascade/config.js.map +1 -0
- package/dist/components/cascade/index.d.ts +3 -0
- package/dist/components/cascade/style/index.css +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +241 -0
- package/dist/components/checkbox/Checkbox.js +182 -0
- package/dist/components/checkbox/Checkbox.js.map +1 -0
- package/dist/components/checkbox/config.d.ts +18 -0
- package/dist/components/checkbox/config.js +11 -0
- package/dist/components/checkbox/config.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/style/index.css +1 -0
- package/dist/components/choose/Choose.d.ts +1016 -0
- package/dist/components/choose/Choose.js +402 -0
- package/dist/components/choose/Choose.js.map +1 -0
- package/dist/components/choose/config.d.ts +37 -0
- package/dist/components/choose/config.js +21 -0
- package/dist/components/choose/config.js.map +1 -0
- package/dist/components/choose/index.d.ts +3 -0
- package/dist/components/choose/injectionKey.d.ts +12 -0
- package/dist/components/choose/injectionKey.js +11 -0
- package/dist/components/choose/injectionKey.js.map +1 -0
- package/dist/components/choose/style/index.css +1 -0
- package/dist/components/choose2/Choose2.d.ts +1711 -0
- package/dist/components/choose2/Choose2.js +403 -0
- package/dist/components/choose2/Choose2.js.map +1 -0
- package/dist/components/choose2/config.d.ts +37 -0
- package/dist/components/choose2/config.js +20 -0
- package/dist/components/choose2/config.js.map +1 -0
- package/dist/components/choose2/index.d.ts +3 -0
- package/dist/components/choose2/style/index.css +1 -0
- package/dist/components/chooseItem/ChooseItem.d.ts +46 -0
- package/dist/components/chooseItem/ChooseItem.js +72 -0
- package/dist/components/chooseItem/ChooseItem.js.map +1 -0
- package/dist/components/chooseItem/config.d.ts +12 -0
- package/dist/components/chooseItem/config.js +9 -0
- package/dist/components/chooseItem/config.js.map +1 -0
- package/dist/components/chooseItem/index.d.ts +3 -0
- package/dist/components/chooseItem/style/index.css +1 -0
- package/dist/components/circleProgress/CircleProgress.d.ts +83 -0
- package/dist/components/circleProgress/CircleProgress.js +108 -0
- package/dist/components/circleProgress/CircleProgress.js.map +1 -0
- package/dist/components/circleProgress/index.d.ts +1 -0
- package/dist/components/circleProgress/style/index.css +1 -0
- package/dist/components/close/Close.d.ts +114 -0
- package/dist/components/close/Close.js +82 -0
- package/dist/components/close/Close.js.map +1 -0
- package/dist/components/close/index.d.ts +1 -0
- package/dist/components/close/style/index.css +1 -0
- package/dist/components/colorPicker/ColorPicker.d.ts +138 -0
- package/dist/components/colorPicker/ColorPicker.js +404 -0
- package/dist/components/colorPicker/ColorPicker.js.map +1 -0
- package/dist/components/colorPicker/config.d.ts +24 -0
- package/dist/components/colorPicker/config.js +14 -0
- package/dist/components/colorPicker/config.js.map +1 -0
- package/dist/components/colorPicker/index.d.ts +4 -0
- package/dist/components/colorPicker/style/index.css +1 -0
- package/dist/components/confirm/index.d.ts +73 -0
- package/dist/components/confirm/index.js +177 -0
- package/dist/components/confirm/index.js.map +1 -0
- package/dist/components/confirm/src/style/index.css +1 -0
- package/dist/components/copy/Copy.d.ts +28 -0
- package/dist/components/copy/Copy.js +110 -0
- package/dist/components/copy/Copy.js.map +1 -0
- package/dist/components/copy/config.d.ts +25 -0
- package/dist/components/copy/config.js +13 -0
- package/dist/components/copy/config.js.map +1 -0
- package/dist/components/copy/index.d.ts +5 -0
- package/dist/components/copy/spawnCopyToast.d.ts +13 -0
- package/dist/components/copy/spawnCopyToast.js +150 -0
- package/dist/components/copy/spawnCopyToast.js.map +1 -0
- package/dist/components/copy/style/index.css +1 -0
- package/dist/components/cornerEars/CornerEars.d.ts +24 -0
- package/dist/components/cornerEars/CornerEars.js +108 -0
- package/dist/components/cornerEars/CornerEars.js.map +1 -0
- package/dist/components/cornerEars/cornerGeometry.d.ts +8 -0
- package/dist/components/cornerEars/cornerGeometry.js +63 -0
- package/dist/components/cornerEars/cornerGeometry.js.map +1 -0
- package/dist/components/cornerEars/index.d.ts +2 -0
- package/dist/components/cornerEars/style/index.css +1 -0
- package/dist/components/date/DatePanel.js +398 -0
- package/dist/components/date/DatePanel.js.map +1 -0
- package/dist/components/date/DatePicker.d.ts +226 -0
- package/dist/components/date/DatePicker.js +349 -0
- package/dist/components/date/DatePicker.js.map +1 -0
- package/dist/components/date/Days.d.ts +44 -0
- package/dist/components/date/Days.js +93 -0
- package/dist/components/date/Days.js.map +1 -0
- package/dist/components/date/Months.d.ts +32 -0
- package/dist/components/date/Months.js +87 -0
- package/dist/components/date/Months.js.map +1 -0
- package/dist/components/date/QuickDate.d.ts +24 -0
- package/dist/components/date/QuickDate.js +48 -0
- package/dist/components/date/QuickDate.js.map +1 -0
- package/dist/components/date/Years.d.ts +38 -0
- package/dist/components/date/Years.js +85 -0
- package/dist/components/date/Years.js.map +1 -0
- package/dist/components/date/_use/quickDate.d.ts +4 -0
- package/dist/components/date/_use/quickDate.js +30 -0
- package/dist/components/date/_use/quickDate.js.map +1 -0
- package/dist/components/date/_use/useDateModules.d.ts +37 -0
- package/dist/components/date/_use/useDateModules.js +100 -0
- package/dist/components/date/_use/useDateModules.js.map +1 -0
- package/dist/components/date/config.d.ts +32 -0
- package/dist/components/date/config.js +18 -0
- package/dist/components/date/config.js.map +1 -0
- package/dist/components/date/index.d.ts +3 -0
- package/dist/components/date/style/index.css +1 -0
- package/dist/components/date/types.d.ts +32 -0
- package/dist/components/drawer/Drawer.d.ts +332 -0
- package/dist/components/drawer/Drawer.js +329 -0
- package/dist/components/drawer/Drawer.js.map +1 -0
- package/dist/components/drawer/config.d.ts +28 -0
- package/dist/components/drawer/config.js +16 -0
- package/dist/components/drawer/config.js.map +1 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/drawer/src/style/drawer.css +1 -0
- package/dist/components/ellipsis/Ellipsis.d.ts +74 -0
- package/dist/components/ellipsis/Ellipsis.js +103 -0
- package/dist/components/ellipsis/Ellipsis.js.map +1 -0
- package/dist/components/ellipsis/index.d.ts +1 -0
- package/dist/components/ellipsis/style/index.css +1 -0
- package/dist/components/empty/Empty.d.ts +92 -0
- package/dist/components/empty/Empty.js +85 -0
- package/dist/components/empty/Empty.js.map +1 -0
- package/dist/components/empty/config.d.ts +23 -0
- package/dist/components/empty/config.js +14 -0
- package/dist/components/empty/config.js.map +1 -0
- package/dist/components/empty/index.d.ts +3 -0
- package/dist/components/empty/style/index.css +1 -0
- package/dist/components/empty/type.d.ts +9 -0
- package/dist/components/equalizer/Equalizer.d.ts +62 -0
- package/dist/components/equalizer/Equalizer.js +56 -0
- package/dist/components/equalizer/Equalizer.js.map +1 -0
- package/dist/components/equalizer/index.d.ts +1 -0
- package/dist/components/equalizer/style/index.css +1 -0
- package/dist/components/fallback/Fallback.d.ts +44 -0
- package/dist/components/fallback/Fallback.js +55 -0
- package/dist/components/fallback/Fallback.js.map +1 -0
- package/dist/components/fallback/index.d.ts +1 -0
- package/dist/components/fallback/style/index.css +1 -0
- package/dist/components/form/Form.d.ts +169 -0
- package/dist/components/form/Form.js +235 -0
- package/dist/components/form/Form.js.map +1 -0
- package/dist/components/form/_use/formRules.d.ts +18 -0
- package/dist/components/form/_use/formRules.js +80 -0
- package/dist/components/form/_use/formRules.js.map +1 -0
- package/dist/components/form/config.d.ts +35 -0
- package/dist/components/form/config.js +20 -0
- package/dist/components/form/config.js.map +1 -0
- package/dist/components/form/context.d.ts +34 -0
- package/dist/components/form/context.js +8 -0
- package/dist/components/form/context.js.map +1 -0
- package/dist/components/form/index.d.ts +3 -0
- package/dist/components/form/style/index.css +1 -0
- package/dist/components/formItem/FormItem.d.ts +144 -0
- package/dist/components/formItem/FormItem.js +218 -0
- package/dist/components/formItem/FormItem.js.map +1 -0
- package/dist/components/formItem/config.d.ts +21 -0
- package/dist/components/formItem/config.js +12 -0
- package/dist/components/formItem/config.js.map +1 -0
- package/dist/components/formItem/context.d.ts +22 -0
- package/dist/components/formItem/context.js +8 -0
- package/dist/components/formItem/context.js.map +1 -0
- package/dist/components/formItem/index.d.ts +3 -0
- package/dist/components/formItem/style/index.css +1 -0
- package/dist/components/icon/Icon.d.ts +117 -0
- package/dist/components/icon/Icon.js +116 -0
- package/dist/components/icon/Icon.js.map +1 -0
- package/dist/components/icon/config.d.ts +28 -0
- package/dist/components/icon/config.js +16 -0
- package/dist/components/icon/config.js.map +1 -0
- package/dist/components/icon/index.d.ts +4 -0
- package/dist/components/icon/style/index.css +1 -0
- package/dist/components/icon/type.d.ts +16 -0
- package/dist/components/image/Image.d.ts +21 -0
- package/dist/components/image/Image.js +68 -0
- package/dist/components/image/Image.js.map +1 -0
- package/dist/components/image/config.d.ts +21 -0
- package/dist/components/image/config.js +11 -0
- package/dist/components/image/config.js.map +1 -0
- package/dist/components/image/index.d.ts +4 -0
- package/dist/components/image/style/index.css +1 -0
- package/dist/components/index.d.ts +79 -0
- package/dist/components/index.js +124 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/layer/Layer.d.ts +410 -0
- package/dist/components/layer/Layer.js +557 -0
- package/dist/components/layer/Layer.js.map +1 -0
- package/dist/components/layer/index.d.ts +2 -0
- package/dist/components/layer/injectionKey.d.ts +5 -0
- package/dist/components/layer/injectionKey.js +6 -0
- package/dist/components/layer/injectionKey.js.map +1 -0
- package/dist/components/layer/style/index.css +1 -0
- package/dist/components/lcdFont/LcdFont.d.ts +126 -0
- package/dist/components/lcdFont/LcdFont.js +232 -0
- package/dist/components/lcdFont/LcdFont.js.map +1 -0
- package/dist/components/lcdFont/config.d.ts +43 -0
- package/dist/components/lcdFont/config.js +41 -0
- package/dist/components/lcdFont/config.js.map +1 -0
- package/dist/components/lcdFont/format.d.ts +8 -0
- package/dist/components/lcdFont/format.js +39 -0
- package/dist/components/lcdFont/format.js.map +1 -0
- package/dist/components/lcdFont/index.d.ts +5 -0
- package/dist/components/lcdFont/segments.d.ts +32 -0
- package/dist/components/lcdFont/segments.js +326 -0
- package/dist/components/lcdFont/segments.js.map +1 -0
- package/dist/components/lcdFont/style/index.css +1 -0
- package/dist/components/lcdFont/type.d.ts +26 -0
- package/dist/components/list/List.d.ts +480 -0
- package/dist/components/list/List.js +289 -0
- package/dist/components/list/List.js.map +1 -0
- package/dist/components/list/config.d.ts +3 -0
- package/dist/components/list/index.d.ts +3 -0
- package/dist/components/list/style/index.css +1 -0
- package/dist/components/loading/Loading.d.ts +97 -0
- package/dist/components/loading/Loading.js +124 -0
- package/dist/components/loading/Loading.js.map +1 -0
- package/dist/components/loading/config.d.ts +22 -0
- package/dist/components/loading/config.js +13 -0
- package/dist/components/loading/config.js.map +1 -0
- package/dist/components/loading/index.d.ts +3 -0
- package/dist/components/loading/style/index.css +1 -0
- package/dist/components/loading/type.d.ts +13 -0
- package/dist/components/mask/Mask.d.ts +79 -0
- package/dist/components/mask/Mask.js +82 -0
- package/dist/components/mask/Mask.js.map +1 -0
- package/dist/components/mask/config.d.ts +21 -0
- package/dist/components/mask/config.js +14 -0
- package/dist/components/mask/config.js.map +1 -0
- package/dist/components/mask/index.d.ts +3 -0
- package/dist/components/mask/style/mask.css +1 -0
- package/dist/components/match/Match copy.d.ts +1600 -0
- package/dist/components/match/Match.d.ts +1621 -0
- package/dist/components/match/Match.js +343 -0
- package/dist/components/match/Match.js.map +1 -0
- package/dist/components/match/config.d.ts +29 -0
- package/dist/components/match/config.js +17 -0
- package/dist/components/match/config.js.map +1 -0
- package/dist/components/match/index.d.ts +3 -0
- package/dist/components/match/style/index.css +1 -0
- package/dist/components/modal/Modal.d.ts +460 -0
- package/dist/components/modal/Modal.js +297 -0
- package/dist/components/modal/Modal.js.map +1 -0
- package/dist/components/modal/config.d.ts +33 -0
- package/dist/components/modal/config.js +19 -0
- package/dist/components/modal/config.js.map +1 -0
- package/dist/components/modal/index.d.ts +3 -0
- package/dist/components/modal/style/index.css +1 -0
- package/dist/components/notice/Notice.d.ts +137 -0
- package/dist/components/notice/Notice.js +192 -0
- package/dist/components/notice/Notice.js.map +1 -0
- package/dist/components/notice/index.d.ts +51 -0
- package/dist/components/notice/index.js +243 -0
- package/dist/components/notice/index.js.map +1 -0
- package/dist/components/notice/src/_util/index.d.ts +11 -0
- package/dist/components/notice/src/_util/index.js +50 -0
- package/dist/components/notice/src/_util/index.js.map +1 -0
- package/dist/components/notice/src/style/index.css +1 -0
- package/dist/components/notice/types.d.ts +98 -0
- package/dist/components/number/Number copy.d.ts +966 -0
- package/dist/components/number/Number.d.ts +1034 -0
- package/dist/components/number/Number.js +241 -0
- package/dist/components/number/Number.js.map +1 -0
- package/dist/components/number/config.d.ts +26 -0
- package/dist/components/number/config.js +15 -0
- package/dist/components/number/config.js.map +1 -0
- package/dist/components/number/index.d.ts +3 -0
- package/dist/components/number/style/index.css +1 -0
- package/dist/components/pagination/index.d.ts +3 -0
- package/dist/components/pagination/src/Pagination.d.ts +2830 -0
- package/dist/components/pagination/src/Pagination.js +288 -0
- package/dist/components/pagination/src/Pagination.js.map +1 -0
- package/dist/components/pagination/src/config.d.ts +25 -0
- package/dist/components/pagination/src/config.js +20 -0
- package/dist/components/pagination/src/config.js.map +1 -0
- package/dist/components/pagination/src/style/index.css +1 -0
- package/dist/components/picture/Picture.d.ts +18 -0
- package/dist/components/picture/Picture.js +254 -0
- package/dist/components/picture/Picture.js.map +1 -0
- package/dist/components/picture/PictureToolbar.d.ts +29 -0
- package/dist/components/picture/PictureToolbar.js +97 -0
- package/dist/components/picture/PictureToolbar.js.map +1 -0
- package/dist/components/picture/PictureViewport.d.ts +47 -0
- package/dist/components/picture/PictureViewport.js +203 -0
- package/dist/components/picture/PictureViewport.js.map +1 -0
- package/dist/components/picture/config.d.ts +16 -0
- package/dist/components/picture/config.js +16 -0
- package/dist/components/picture/config.js.map +1 -0
- package/dist/components/picture/index.d.ts +5 -0
- package/dist/components/picture/pictureFlip.d.ts +16 -0
- package/dist/components/picture/pictureFlip.js +103 -0
- package/dist/components/picture/pictureFlip.js.map +1 -0
- package/dist/components/picture/style/index.css +1 -0
- package/dist/components/progress/Progress.d.ts +94 -0
- package/dist/components/progress/Progress.js +112 -0
- package/dist/components/progress/Progress.js.map +1 -0
- package/dist/components/progress/index.d.ts +1 -0
- package/dist/components/progress/style/index.css +1 -0
- package/dist/components/radio/Radio.d.ts +112 -0
- package/dist/components/radio/Radio.js +130 -0
- package/dist/components/radio/Radio.js.map +1 -0
- package/dist/components/radio/config.d.ts +29 -0
- package/dist/components/radio/config.js +18 -0
- package/dist/components/radio/config.js.map +1 -0
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/style/index.css +1 -0
- package/dist/components/scrollbar/Scrollbar.d.ts +93 -0
- package/dist/components/scrollbar/Scrollbar.js +515 -0
- package/dist/components/scrollbar/Scrollbar.js.map +1 -0
- package/dist/components/scrollbar/index.d.ts +1 -0
- package/dist/components/scrollbar/style/index.css +1 -0
- package/dist/components/sheet/Sheet.d.ts +1448 -0
- package/dist/components/sheet/Sheet.js +592 -0
- package/dist/components/sheet/Sheet.js.map +1 -0
- package/dist/components/sheet/_cell.d.ts +181 -0
- package/dist/components/sheet/_cell.js +132 -0
- package/dist/components/sheet/_cell.js.map +1 -0
- package/dist/components/sheet/_props.d.ts +170 -0
- package/dist/components/sheet/_props.js +183 -0
- package/dist/components/sheet/_props.js.map +1 -0
- package/dist/components/sheet/_row.d.ts +2 -0
- package/dist/components/sheet/_row.js +14 -0
- package/dist/components/sheet/_row.js.map +1 -0
- package/dist/components/sheet/_tbody.d.ts +348 -0
- package/dist/components/sheet/_tbody.js +255 -0
- package/dist/components/sheet/_tbody.js.map +1 -0
- package/dist/components/sheet/_tfoot.d.ts +195 -0
- package/dist/components/sheet/_tfoot.js +78 -0
- package/dist/components/sheet/_tfoot.js.map +1 -0
- package/dist/components/sheet/_thead.d.ts +529 -0
- package/dist/components/sheet/_thead.js +148 -0
- package/dist/components/sheet/_thead.js.map +1 -0
- package/dist/components/sheet/_use.d.ts +38 -0
- package/dist/components/sheet/_use.js +493 -0
- package/dist/components/sheet/_use.js.map +1 -0
- package/dist/components/sheet/_util.d.ts +34 -0
- package/dist/components/sheet/_util.js +111 -0
- package/dist/components/sheet/_util.js.map +1 -0
- package/dist/components/sheet/index.d.ts +1 -0
- package/dist/components/sheet/style/index.css +1 -0
- package/dist/components/slideDown/SlideDown.d.ts +62 -0
- package/dist/components/slideDown/SlideDown.js +128 -0
- package/dist/components/slideDown/SlideDown.js.map +1 -0
- package/dist/components/slideDown/index.d.ts +1 -0
- package/dist/components/slider/Slider.d.ts +1726 -0
- package/dist/components/slider/Slider.js +471 -0
- package/dist/components/slider/Slider.js.map +1 -0
- package/dist/components/slider/index.d.ts +1 -0
- package/dist/components/slider/style/index.css +1 -0
- package/dist/components/svgIcon/SvgIcon.d.ts +37 -0
- package/dist/components/svgIcon/SvgIcon.js +78 -0
- package/dist/components/svgIcon/SvgIcon.js.map +1 -0
- package/dist/components/svgIcon/index.d.ts +3 -0
- package/dist/components/svgIcon/style/index.css +1 -0
- package/dist/components/switch/Switch.d.ts +105 -0
- package/dist/components/switch/Switch.js +158 -0
- package/dist/components/switch/Switch.js.map +1 -0
- package/dist/components/switch/config.d.ts +16 -0
- package/dist/components/switch/config.js +11 -0
- package/dist/components/switch/config.js.map +1 -0
- package/dist/components/switch/index.d.ts +1 -0
- package/dist/components/switch/style/index.css +1 -0
- package/dist/components/tab/Tab.d.ts +113 -0
- package/dist/components/tab/Tab.js +485 -0
- package/dist/components/tab/Tab.js.map +1 -0
- package/dist/components/tab/index.d.ts +2 -0
- package/dist/components/tab/style/index.css +1 -0
- package/dist/components/textarea/Textarea.d.ts +37 -0
- package/dist/components/textarea/Textarea.js +193 -0
- package/dist/components/textarea/Textarea.js.map +1 -0
- package/dist/components/textarea/config.d.ts +30 -0
- package/dist/components/textarea/config.js +16 -0
- package/dist/components/textarea/config.js.map +1 -0
- package/dist/components/textarea/index.d.ts +4 -0
- package/dist/components/textarea/style/index.css +1 -0
- package/dist/components/time/Dial.js +7 -0
- package/dist/components/time/Dial.js.map +1 -0
- package/dist/components/time/Dial.vue_vue_type_script_setup_true_lang.js +178 -0
- package/dist/components/time/Dial.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/time/TimePicker.d.ts +1301 -0
- package/dist/components/time/TimePicker.js +162 -0
- package/dist/components/time/TimePicker.js.map +1 -0
- package/dist/components/time/_use/useTimeModules.d.ts +1 -0
- package/dist/components/time/index.d.ts +1 -0
- package/dist/components/time/style/dial.css +1 -0
- package/dist/components/time/style/index.css +1 -0
- package/dist/components/toggle/Toggle.d.ts +140 -0
- package/dist/components/toggle/Toggle.js +209 -0
- package/dist/components/toggle/Toggle.js.map +1 -0
- package/dist/components/toggle/index.d.ts +1 -0
- package/dist/components/toggle/style/index.css +1 -0
- package/dist/components/toggle/style/scale.css +1 -0
- package/dist/components/toggle/style/translate.css +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +536 -0
- package/dist/components/tooltip/Tooltip.js +51 -0
- package/dist/components/tooltip/Tooltip.js.map +1 -0
- package/dist/components/tooltip/index.d.ts +1 -0
- package/dist/components/tooltip/style/index.css +1 -0
- package/dist/components/tree/Tree.d.ts +187 -0
- package/dist/components/tree/Tree.js +229 -0
- package/dist/components/tree/Tree.js.map +1 -0
- package/dist/components/tree/TreeItem.d.ts +86 -0
- package/dist/components/tree/TreeItem.js +152 -0
- package/dist/components/tree/TreeItem.js.map +1 -0
- package/dist/components/tree/TreeList.d.ts +86 -0
- package/dist/components/tree/TreeList.js +52 -0
- package/dist/components/tree/TreeList.js.map +1 -0
- package/dist/components/tree/_use/treeState.d.ts +45 -0
- package/dist/components/tree/_use/treeState.js +417 -0
- package/dist/components/tree/_use/treeState.js.map +1 -0
- package/dist/components/tree/config.d.ts +27 -0
- package/dist/components/tree/config.js +16 -0
- package/dist/components/tree/config.js.map +1 -0
- package/dist/components/tree/index.d.ts +4 -0
- package/dist/components/tree/style/index.css +1 -0
- package/dist/components/tree-choose/TreeChoose.d.ts +833 -0
- package/dist/components/tree-choose/TreeChoose.js +320 -0
- package/dist/components/tree-choose/TreeChoose.js.map +1 -0
- package/dist/components/tree-choose/config.d.ts +41 -0
- package/dist/components/tree-choose/config.js +19 -0
- package/dist/components/tree-choose/config.js.map +1 -0
- package/dist/components/tree-choose/index.d.ts +4 -0
- package/dist/components/tree-choose/style/index.css +1 -0
- package/dist/components/trigger/Trigger.d.ts +921 -0
- package/dist/components/trigger/Trigger.js +105 -0
- package/dist/components/trigger/Trigger.js.map +1 -0
- package/dist/components/trigger/index.d.ts +1 -0
- package/dist/components/trigger/style/index.css +2 -0
- package/dist/components/upload/Upload.d.ts +249 -0
- package/dist/components/upload/Upload.js +342 -0
- package/dist/components/upload/Upload.js.map +1 -0
- package/dist/components/upload/config.d.ts +39 -0
- package/dist/components/upload/config.js +21 -0
- package/dist/components/upload/config.js.map +1 -0
- package/dist/components/upload/index.d.ts +4 -0
- package/dist/components/upload/style/index.css +1 -0
- package/dist/components/upload/types.d.ts +47 -0
- package/dist/components/virtual/Virtual.d.ts +57 -0
- package/dist/components/virtual/Virtual.js +62 -0
- package/dist/components/virtual/Virtual.js.map +1 -0
- package/dist/components/virtual/Virtual/345/216/237/347/211/210.d.ts +44 -0
- package/dist/components/virtual/index.d.ts +4 -0
- package/dist/components/virtual/style/index.css +1 -0
- package/dist/components/virtual/useVirtualList.d.ts +50 -0
- package/dist/components/virtual/useVirtualList.js +376 -0
- package/dist/components/virtual/useVirtualList.js.map +1 -0
- package/dist/components/write/Write.d.ts +532 -0
- package/dist/components/write/Write.js +228 -0
- package/dist/components/write/Write.js.map +1 -0
- package/dist/components/write/index.d.ts +1 -0
- package/dist/components/write/style/index.css +1 -0
- package/dist/config/dictionary.d.ts +21 -0
- package/dist/config/dictionary.js +28 -0
- package/dist/config/dictionary.js.map +1 -0
- package/dist/config/i18n.d.ts +22 -0
- package/dist/config/i18n.js +53 -0
- package/dist/config/i18n.js.map +1 -0
- package/dist/config/plugin.d.ts +88 -0
- package/dist/config/plugin.js +13 -0
- package/dist/config/plugin.js.map +1 -0
- package/dist/config/types.d.ts +56 -0
- package/dist/directives/clickOutside.d.ts +10 -0
- package/dist/directives/clickOutside.js +69 -0
- package/dist/directives/clickOutside.js.map +1 -0
- package/dist/directives/index.d.ts +3 -0
- package/dist/directives/index.js +13 -0
- package/dist/directives/index.js.map +1 -0
- package/dist/directives/loading.d.ts +19 -0
- package/dist/directives/loading.js +64 -0
- package/dist/directives/loading.js.map +1 -0
- package/dist/index.d.ts +127 -0
- package/dist/index.js +91 -0
- package/dist/locales/de-DE/index.d.ts +144 -0
- package/dist/locales/de-DE/index.js +140 -0
- package/dist/locales/de-DE/index.js.map +1 -0
- package/dist/locales/en-US/index.d.ts +144 -0
- package/dist/locales/en-US/index.js +140 -0
- package/dist/locales/en-US/index.js.map +1 -0
- package/dist/locales/index.d.ts +3 -0
- package/dist/locales/zh-CN/index.d.ts +144 -0
- package/dist/locales/zh-CN/index.js +140 -0
- package/dist/locales/zh-CN/index.js.map +1 -0
- package/dist/plugin.d.ts +6 -0
- package/dist/plugin.js +38 -0
- package/dist/plugin.js.map +1 -0
- package/dist/styles/index.css +49 -0
- package/dist/theme/_transition.css +169 -0
- package/dist/theme/index.css +5 -0
- package/dist/theme/tokens/_base.css +7 -0
- package/dist/theme/tokens/_common.css +37 -0
- package/dist/theme/tokens/_scrollbar.css +53 -0
- package/dist/theme/tokens/_size.css +18 -0
- package/dist/theme/tokens/_text.css +16 -0
- package/dist/theme/tokens/_var.css +1087 -0
- package/dist/theme/tokens/components/audioPlayer.css +542 -0
- package/dist/theme/tokens/components/btn.css +253 -0
- package/dist/theme/tokens/components/btnGroup.css +68 -0
- package/dist/theme/tokens/components/cascade.css +77 -0
- package/dist/theme/tokens/components/checkbox.css +100 -0
- package/dist/theme/tokens/components/choose.css +175 -0
- package/dist/theme/tokens/components/choose2.css +242 -0
- package/dist/theme/tokens/components/chooseItem.css +54 -0
- package/dist/theme/tokens/components/circleProgress.css +61 -0
- package/dist/theme/tokens/components/close.css +12 -0
- package/dist/theme/tokens/components/colorPicker.css +404 -0
- package/dist/theme/tokens/components/confirm.css +128 -0
- package/dist/theme/tokens/components/copy.css +80 -0
- package/dist/theme/tokens/components/cornerEars.css +102 -0
- package/dist/theme/tokens/components/date/days.css +79 -0
- package/dist/theme/tokens/components/date/index.css +249 -0
- package/dist/theme/tokens/components/date/months.css +68 -0
- package/dist/theme/tokens/components/drawer.css +189 -0
- package/dist/theme/tokens/components/ellipsis.css +46 -0
- package/dist/theme/tokens/components/empty.css +24 -0
- package/dist/theme/tokens/components/equalizer.css +51 -0
- package/dist/theme/tokens/components/fallback.css +4 -0
- package/dist/theme/tokens/components/form.css +50 -0
- package/dist/theme/tokens/components/formItem.css +194 -0
- package/dist/theme/tokens/components/icon.css +41 -0
- package/dist/theme/tokens/components/image.css +70 -0
- package/dist/theme/tokens/components/layer.css +190 -0
- package/dist/theme/tokens/components/lcdFont.css +121 -0
- package/dist/theme/tokens/components/list.css +97 -0
- package/dist/theme/tokens/components/loading.css +64 -0
- package/dist/theme/tokens/components/mask.css +26 -0
- package/dist/theme/tokens/components/match.css +119 -0
- package/dist/theme/tokens/components/modal.css +136 -0
- package/dist/theme/tokens/components/notice.css +264 -0
- package/dist/theme/tokens/components/number.css +150 -0
- package/dist/theme/tokens/components/pagination.css +215 -0
- package/dist/theme/tokens/components/picture.css +299 -0
- package/dist/theme/tokens/components/progress.css +101 -0
- package/dist/theme/tokens/components/radio.css +183 -0
- package/dist/theme/tokens/components/scrollbar.css +160 -0
- package/dist/theme/tokens/components/sheet.css +518 -0
- package/dist/theme/tokens/components/slider.css +171 -0
- package/dist/theme/tokens/components/svgIcon.css +6 -0
- package/dist/theme/tokens/components/switch.css +67 -0
- package/dist/theme/tokens/components/tab.css +215 -0
- package/dist/theme/tokens/components/textarea.css +109 -0
- package/dist/theme/tokens/components/time/dial.css +123 -0
- package/dist/theme/tokens/components/time/index.css +29 -0
- package/dist/theme/tokens/components/toggle/index.css +14 -0
- package/dist/theme/tokens/components/toggle/scale.css +34 -0
- package/dist/theme/tokens/components/toggle/translate.css +41 -0
- package/dist/theme/tokens/components/tooltip.css +77 -0
- package/dist/theme/tokens/components/tree-choose.css +154 -0
- package/dist/theme/tokens/components/tree.css +172 -0
- package/dist/theme/tokens/components/trigger.css +90 -0
- package/dist/theme/tokens/components/upload.css +302 -0
- package/dist/theme/tokens/components/virtual.css +6 -0
- package/dist/theme/tokens/components/write.css +155 -0
- package/dist/theme/tokens/iconfont/iconfont.css +103 -0
- package/dist/theme/tokens/iconfont/iconfont.ttf +0 -0
- package/dist/theme/tokens/iconfont/iconfont.woff +0 -0
- package/dist/theme/tokens/iconfont/iconfont.woff2 +0 -0
- package/dist/theme/tokens/index.css +19 -0
- package/dist/use/index.d.ts +34 -0
- package/dist/use/toggle/types.d.ts +27 -0
- package/dist/use/toggle/useToggle.d.ts +22 -0
- package/dist/use/toggle/useToggleArray.d.ts +14 -0
- package/dist/use/toggle/useToggleArray.js +36 -0
- package/dist/use/toggle/useToggleArray.js.map +1 -0
- package/dist/use/toggle/useToggleCycle.d.ts +11 -0
- package/dist/use/toggle/useToggleCycle.js +88 -0
- package/dist/use/toggle/useToggleCycle.js.map +1 -0
- package/dist/use/toggle/useToggleMap.d.ts +10 -0
- package/dist/use/toggle/useToggleObject.d.ts +13 -0
- package/dist/use/useAudioPlayer.d.ts +160 -0
- package/dist/use/useAudioPlayer.js +799 -0
- package/dist/use/useAudioPlayer.js.map +1 -0
- package/dist/use/useBoundingClientRect.d.ts +14 -0
- package/dist/use/useBoundingClientRect.js +54 -0
- package/dist/use/useBoundingClientRect.js.map +1 -0
- package/dist/use/useChildComponentsCollector.js +30 -0
- package/dist/use/useChildComponentsCollector.js.map +1 -0
- package/dist/use/useComponentClass.d.ts +1 -0
- package/dist/use/useComponentClass.js +6 -0
- package/dist/use/useComponentClass.js.map +1 -0
- package/dist/use/useComponentConfig.d.ts +10 -0
- package/dist/use/useComponentConfig.js +31 -0
- package/dist/use/useComponentConfig.js.map +1 -0
- package/dist/use/useCount.d.ts +13 -0
- package/dist/use/useCount.js +36 -0
- package/dist/use/useCount.js.map +1 -0
- package/dist/use/useDate.d.ts +53 -0
- package/dist/use/useDate.js +280 -0
- package/dist/use/useDate.js.map +1 -0
- package/dist/use/useDelay.d.ts +5 -0
- package/dist/use/useDelay.js +38 -0
- package/dist/use/useDelay.js.map +1 -0
- package/dist/use/useDrag.d.ts +17 -0
- package/dist/use/useElement.d.ts +15 -0
- package/dist/use/useElement.js +41 -0
- package/dist/use/useElement.js.map +1 -0
- package/dist/use/useEscStack.d.ts +14 -0
- package/dist/use/useEscStack.js +62 -0
- package/dist/use/useEscStack.js.map +1 -0
- package/dist/use/useEvent.d.ts +9 -0
- package/dist/use/useEvent.js +43 -0
- package/dist/use/useEvent.js.map +1 -0
- package/dist/use/useFormItem.d.ts +9 -0
- package/dist/use/useFormItem.js +20 -0
- package/dist/use/useFormItem.js.map +1 -0
- package/dist/use/useGlobalZIndex.d.ts +6 -0
- package/dist/use/useGlobalZIndex.js +28 -0
- package/dist/use/useGlobalZIndex.js.map +1 -0
- package/dist/use/useMouse.d.ts +15 -0
- package/dist/use/useMouse.js +36 -0
- package/dist/use/useMouse.js.map +1 -0
- package/dist/use/useMousePositionInElement.d.ts +6 -0
- package/dist/use/useMousePositionInElement.js +27 -0
- package/dist/use/useMousePositionInElement.js.map +1 -0
- package/dist/use/useParentNode.d.ts +3 -0
- package/dist/use/useParentNode.js +25 -0
- package/dist/use/useParentNode.js.map +1 -0
- package/dist/use/usePercentDrag.d.ts +20 -0
- package/dist/use/usePercentDrag.js +59 -0
- package/dist/use/usePercentDrag.js.map +1 -0
- package/dist/use/usePictureViewport.d.ts +57 -0
- package/dist/use/usePictureViewport.js +229 -0
- package/dist/use/usePictureViewport.js.map +1 -0
- package/dist/use/useRequest.d.ts +7 -0
- package/dist/use/useRequest.js +31 -0
- package/dist/use/useRequest.js.map +1 -0
- package/dist/use/useScaleFromPoint.d.ts +57 -0
- package/dist/use/useScaleFromPoint.js +325 -0
- package/dist/use/useScaleFromPoint.js.map +1 -0
- package/dist/use/useScroll.d.ts +9 -0
- package/dist/use/useScroll.js +60 -0
- package/dist/use/useScroll.js.map +1 -0
- package/dist/use/useSearch.d.ts +11 -0
- package/dist/use/useSearch.js +65 -0
- package/dist/use/useSearch.js.map +1 -0
- package/dist/use/useSlot.d.ts +10 -0
- package/dist/use/useSlot.js +57 -0
- package/dist/use/useSlot.js.map +1 -0
- package/dist/use/useTabIndex.d.ts +1 -0
- package/dist/use/useTabIndex.js +18 -0
- package/dist/use/useTabIndex.js.map +1 -0
- package/dist/use/useUII18n.js +26 -0
- package/dist/use/useUII18n.js.map +1 -0
- package/dist/use/useUpload.d.ts +49 -0
- package/dist/use/useUpload.js +396 -0
- package/dist/use/useUpload.js.map +1 -0
- package/dist/use/useVisibleResize.d.ts +6 -0
- package/dist/use/useVisibleResize.js +77 -0
- package/dist/use/useVisibleResize.js.map +1 -0
- package/dist/util/calc.d.ts +40 -0
- package/dist/util/calc.js +239 -0
- package/dist/util/calc.js.map +1 -0
- package/dist/util/colors.d.ts +78 -0
- package/dist/util/colors.js +320 -0
- package/dist/util/colors.js.map +1 -0
- package/dist/util/cssVars.d.ts +62 -0
- package/dist/util/cssVars.js +170 -0
- package/dist/util/cssVars.js.map +1 -0
- package/dist/util/dom.d.ts +65 -0
- package/dist/util/dom.js +212 -0
- package/dist/util/dom.js.map +1 -0
- package/dist/util/index.d.ts +5 -0
- package/dist/util/tools.d.ts +54 -0
- package/dist/util/tools.js +90 -0
- package/dist/util/tools.js.map +1 -0
- package/dist/util/vnode.d.ts +2 -0
- package/package.json +88 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DatePicker.js","names":["computed","defineComponent","mergeProps","nextTick","reactive","ref","watch","createTextVNode","_createTextVNode","createVNode","_createVNode","Fragment","_Fragment","getRangeDate","useUII18n","useComponentConfig","useFormItem","effectiveSizeVar","effectiveBgVar","effectiveTextVar","mergeStyle","propSizeToCssVars","propColorToCssVars","toCssVarsStyle","Layer","Trigger","DatePanel","QuickDate","useDateText","useDateView","getQuickDateText","isQuickRangeActive","DATE_PICKER_FALLBACK","name","inheritAttrs","props","show","type","Boolean","default","modelValue","Number","Date","String","undefined","start","end","quickKey","max","min","range","hasQuick","clearable","disabled","block","format","adjustPosition","placeholder","startPlaceholder","endPlaceholder","size","color","cssVars","Object","nearby","emits","_v","change","changeQuick","slots","setup","attrs","emit","expose","formItem","useDisabled","cfg","t","value","isRange","visible","datePickerPlaceholder","startDatePlaceholder","endDatePlaceholder","oldDateRange","formatRef","text","textStart","textEnd","quickActive","quickText","rangeDisplayText","slotDisplayText","triggerText","triggerPlaceholder","open","close","toggle","clear","validate","triggerSlotProps","startText","endText","sizeVars","rootStyle","style","layerOptions","immediate","placement","gap","hasArrow","transitionName","layerClass","layerStyle","b","renderTrigger","layerProps","trigger","hide","_style","class","className","restAttrs","triggerOptions","active","onClear","formatIsTime","maybeClose","startOpts","v","onChange","endOpts","opts","isClose","datePanelOpts","res","quickOpts","key","k"],"sources":["../../../components/date/DatePicker.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n mergeProps,\r\n nextTick,\r\n reactive,\r\n ref,\r\n watch,\r\n type PropType,\r\n type SlotsType,\r\n} from 'vue'\r\nimport type { AdjustmentPosition, DateFormatType, DateType } from '../../config/types'\r\nimport type { TQuickKey } from '../../use/useDate'\r\nimport { getRangeDate } from '../../use/useDate'\r\nimport { useUII18n } from '../../use/useUII18n'\r\nimport useComponentConfig from '../../use/useComponentConfig'\r\nimport useFormItem from '../../use/useFormItem'\r\nimport {\r\n effectiveSizeVar,\r\n effectiveBgVar,\r\n effectiveTextVar,\r\n mergeStyle,\r\n propSizeToCssVars,\r\n propColorToCssVars,\r\n toCssVarsStyle,\r\n type CssVars,\r\n} from '../../util'\r\nimport Layer from '../layer/index'\r\nimport Trigger from '../trigger/index'\r\nimport DatePanel from './DatePanel'\r\nimport QuickDate from './QuickDate'\r\nimport { useDateText, useDateView } from './_use/useDateModules'\r\nimport { getQuickDateText, isQuickRangeActive } from './_use/quickDate'\r\nimport { DATE_PICKER_FALLBACK } from './config'\r\nimport type {\r\n DatePickerChangeQuickPayload,\r\n DatePickerExpose,\r\n DatePickerTriggerSlotProps,\r\n} from './types'\r\n\r\nexport type { DatePickerGlobalConfig } from './config'\r\nexport { DATE_PICKER_FALLBACK } from './config'\r\nexport type {\r\n DatePickerTriggerSlotProps,\r\n DatePickerChangeQuickPayload,\r\n DatePickerExpose,\r\n TQuickKey,\r\n} from './types'\r\n\r\ntype DatePickerSlots = {\r\n /** 自定义触发器;不传则使用内置 Trigger */\r\n trigger?: (props: DatePickerTriggerSlotProps) => any\r\n}\r\n\r\nexport default defineComponent({\r\n name: 'DatePicker',\r\n inheritAttrs: false,\r\n props: {\r\n show: { type: Boolean, default: false },\r\n modelValue: {\r\n type: [Number, Date, String] as PropType<DateType>,\r\n default: undefined,\r\n },\r\n start: {\r\n type: [Number, Date, String] as PropType<DateType>,\r\n default: undefined,\r\n },\r\n end: {\r\n type: [Number, Date, String] as PropType<DateType>,\r\n default: undefined,\r\n },\r\n quickKey: { type: String as PropType<TQuickKey>, default: undefined },\r\n max: { type: [Number, Date, String] as PropType<DateType>, default: undefined },\r\n min: { type: [Number, Date, String] as PropType<DateType>, default: undefined },\r\n // 以下可全局配置:Boolean / 枚举请 default: undefined\r\n range: { type: Boolean, default: undefined },\r\n hasQuick: { type: Boolean, default: undefined },\r\n clearable: { type: Boolean, default: undefined },\r\n disabled: { type: Boolean, default: undefined },\r\n block: { type: Boolean, default: undefined },\r\n format: {\r\n type: String as PropType<DateFormatType>,\r\n default: undefined,\r\n },\r\n adjustPosition: {\r\n type: String as PropType<AdjustmentPosition>,\r\n default: undefined,\r\n },\r\n placeholder: { type: String, default: undefined },\r\n startPlaceholder: { type: String, default: undefined },\r\n endPlaceholder: { type: String, default: undefined },\r\n /** 实例尺度(px),写入 `--w-prop-date-picker-size` */\r\n size: { type: Number, default: undefined },\r\n /** 品牌主色 → `--w-prop-date-picker-color` */\r\n color: { type: String, default: undefined },\r\n cssVars: { type: Object as PropType<CssVars>, default: undefined },\r\n nearby: { type: Boolean, default: false },\r\n },\r\n emits: {\r\n 'update:show': (_v: boolean) => true,\r\n 'update:modelValue': (_v: DateType) => true,\r\n 'update:start': (_v: DateType) => true,\r\n 'update:end': (_v: DateType) => true,\r\n 'update:quickKey': (_v: TQuickKey | undefined) => true,\r\n change: (_v?: DateType) => true,\r\n changeQuick: (_v: DatePickerChangeQuickPayload) => true,\r\n },\r\n slots: Object as SlotsType<DatePickerSlots>,\r\n setup(props, { attrs, emit, slots, expose }) {\r\n const { formItem, useDisabled } = useFormItem()\r\n const cfg = useComponentConfig('DatePicker', props, DATE_PICKER_FALLBACK)\r\n const { t } = useUII18n()\r\n\r\n const disabled = useDisabled(computed(() => cfg.value.disabled))\r\n const isRange = computed(() => !!cfg.value.range)\r\n const visible = ref(props.show)\r\n\r\n const datePickerPlaceholder = computed(\r\n () => cfg.value.placeholder || t('date.placeholder'),\r\n )\r\n const startDatePlaceholder = computed(\r\n () => cfg.value.startPlaceholder || t('date.startPlaceholder'),\r\n )\r\n const endDatePlaceholder = computed(\r\n () => cfg.value.endPlaceholder || t('date.endPlaceholder'),\r\n )\r\n\r\n /** 面板打开时快照区间,两端都变后自动关闭 */\r\n const oldDateRange = reactive<{\r\n start?: DateType\r\n end?: DateType\r\n }>({\r\n start: undefined,\r\n end: undefined,\r\n })\r\n\r\n const formatRef = computed(() => cfg.value.format as DateFormatType)\r\n const text = useDateText(\r\n formatRef,\r\n computed(() => props.modelValue),\r\n )\r\n const textStart = useDateText(\r\n formatRef,\r\n computed(() => props.start),\r\n )\r\n const textEnd = useDateText(\r\n formatRef,\r\n computed(() => props.end),\r\n )\r\n\r\n const quickActive = computed(() =>\r\n isRange.value\r\n ? isQuickRangeActive(props.quickKey, props.start, props.end)\r\n : false,\r\n )\r\n const quickText = computed(() =>\r\n quickActive.value ? getQuickDateText(props.quickKey, t) : undefined,\r\n )\r\n\r\n /** 插槽/展示用:日期区间文案 */\r\n const rangeDisplayText = computed(() => {\r\n if (isRange.value) {\r\n const start = textStart.value\r\n const end = textEnd.value\r\n if (!start && !end) return undefined\r\n return `${start || startDatePlaceholder.value} ~ ${end || endDatePlaceholder.value}`\r\n }\r\n return text.value as string | undefined\r\n })\r\n\r\n /** 触发器展示:快捷选中有效时用快捷描述,否则用日期文案 */\r\n const slotDisplayText = computed(\r\n () => quickText.value || rangeDisplayText.value,\r\n )\r\n\r\n /** 内置 Trigger 用:快捷选中时显示描述;否则范围模式为 [start, ~, end] */\r\n const triggerText = computed(() => {\r\n if (quickText.value) return quickText.value\r\n if (isRange.value) {\r\n const start = textStart.value\r\n const end = textEnd.value\r\n if (start || end) {\r\n return [\r\n start || startDatePlaceholder.value,\r\n <span>~</span>,\r\n end || endDatePlaceholder.value,\r\n ]\r\n }\r\n return undefined\r\n }\r\n return text.value\r\n })\r\n\r\n const triggerPlaceholder = computed(() =>\r\n isRange.value\r\n ? `${startDatePlaceholder.value}~${endDatePlaceholder.value}`\r\n : datePickerPlaceholder.value,\r\n )\r\n\r\n function open() {\r\n if (!disabled.value) visible.value = true\r\n }\r\n function close() {\r\n visible.value = false\r\n }\r\n function toggle() {\r\n if (disabled.value) return\r\n visible.value = !visible.value\r\n }\r\n\r\n function clear() {\r\n emit('update:start', undefined)\r\n emit('update:end', undefined)\r\n emit('update:modelValue', undefined)\r\n emit('update:quickKey', undefined)\r\n emit('change', undefined)\r\n formItem?.validate('change')\r\n }\r\n\r\n const triggerSlotProps = computed<DatePickerTriggerSlotProps>(() => ({\r\n text: slotDisplayText.value,\r\n startText: textStart.value as string | undefined,\r\n endText: textEnd.value as string | undefined,\r\n quickKey: quickActive.value ? props.quickKey : undefined,\r\n quickText: quickText.value,\r\n placeholder: triggerPlaceholder.value,\r\n startPlaceholder: startDatePlaceholder.value,\r\n endPlaceholder: endDatePlaceholder.value,\r\n visible: visible.value,\r\n disabled: disabled.value,\r\n clearable: cfg.value.clearable,\r\n range: isRange.value,\r\n clear,\r\n open,\r\n close,\r\n toggle,\r\n }))\r\n\r\n const sizeVars = computed(() =>\r\n toCssVarsStyle({\r\n ...propSizeToCssVars('date-picker', props.size),\r\n ...propColorToCssVars('date-picker', props.color),\r\n '--w-prop-trigger-size': effectiveSizeVar('date-picker'),\r\n '--w-prop-trigger-bg-color': effectiveBgVar('date-picker'),\r\n '--w-prop-trigger-text-color': effectiveTextVar('date-picker'),\r\n '--w-prop-layer-bg-color': effectiveBgVar('date-picker'),\r\n '--w-prop-layer-text-color': effectiveTextVar('date-picker'),\r\n ...props.cssVars,\r\n }),\r\n )\r\n const rootStyle = computed(() =>\r\n mergeStyle(sizeVars.value, attrs.style as Record<string, any> | undefined),\r\n )\r\n\r\n const layerOptions = computed(() => ({\r\n adjustPosition: cfg.value.adjustPosition,\r\n immediate: true,\r\n show: visible.value,\r\n nearby: props.nearby,\r\n disabled: disabled.value,\r\n placement: 'bottom-start' as const,\r\n gap: 2,\r\n hasArrow: false,\r\n transitionName: 'w-slide-y',\r\n layerClass: [\r\n 'w-date-picker',\r\n isRange.value ? 'w-date-picker-range' : '',\r\n ],\r\n layerStyle: sizeVars.value,\r\n 'onUpdate:show': (b: boolean) => {\r\n visible.value = b\r\n },\r\n }))\r\n\r\n function renderTrigger(layerProps?: {\r\n toggle: () => void\r\n hide: () => void\r\n show: () => void\r\n visible: boolean\r\n }) {\r\n if (slots.trigger) {\r\n return slots.trigger({\r\n ...triggerSlotProps.value,\r\n visible: layerProps?.visible ?? visible.value,\r\n open: layerProps?.show ?? open,\r\n close: layerProps?.hide ?? close,\r\n toggle: layerProps?.toggle ?? toggle,\r\n })\r\n }\r\n const { style: _style, class: className, ...restAttrs } = attrs as Record<\r\n string,\r\n any\r\n >\r\n const triggerOptions = mergeProps(restAttrs, {\r\n class: className,\r\n placeholder: triggerPlaceholder.value,\r\n disabled: disabled.value,\r\n block: cfg.value.block,\r\n clearable: cfg.value.clearable,\r\n text: triggerText.value,\r\n active: visible.value,\r\n style: rootStyle.value,\r\n onClear: clear,\r\n })\r\n return <Trigger {...triggerOptions} />\r\n }\r\n\r\n const { formatIsTime } = useDateView(formatRef)\r\n\r\n async function maybeClose() {\r\n emit('change')\r\n await nextTick()\r\n if (\r\n !formatIsTime.value &&\r\n props.start !== oldDateRange.start &&\r\n props.end !== oldDateRange.end &&\r\n props.start &&\r\n props.end\r\n ) {\r\n visible.value = false\r\n }\r\n }\r\n\r\n watch(\r\n () => props.show,\r\n (b) => {\r\n visible.value = b\r\n },\r\n )\r\n watch(visible, (b) => {\r\n if (b) {\r\n oldDateRange.start = props.start\r\n oldDateRange.end = props.end\r\n }\r\n emit('update:show', b)\r\n })\r\n\r\n const startOpts = computed(() => ({\r\n placeholder: startDatePlaceholder.value,\r\n modelValue: props.start,\r\n format: formatRef.value,\r\n max: props.max,\r\n 'onUpdate:modelValue': (v: DateType) => {\r\n emit('update:start', v)\r\n },\r\n onChange: maybeClose,\r\n }))\r\n\r\n const endOpts = computed(() => ({\r\n placeholder: endDatePlaceholder.value,\r\n modelValue: props.end,\r\n format: formatRef.value,\r\n min: props.min,\r\n 'onUpdate:modelValue': (v: DateType) => {\r\n emit('update:end', v)\r\n },\r\n onChange: async (opts: { v: string; isClose: boolean }) => {\r\n await nextTick()\r\n if (formatIsTime.value && props.start && props.end && opts.isClose) {\r\n visible.value = false\r\n } else {\r\n maybeClose()\r\n }\r\n },\r\n }))\r\n\r\n const datePanelOpts = computed(() => ({\r\n modelValue: props.modelValue,\r\n format: formatRef.value,\r\n max: props.max,\r\n min: props.min,\r\n 'onUpdate:modelValue': (v: DateType) => {\r\n emit('update:modelValue', v)\r\n },\r\n onChange: (res: { v: string; isClose: boolean }) => {\r\n if (res.isClose) {\r\n visible.value = false\r\n }\r\n },\r\n }))\r\n\r\n const quickOpts = computed(() => ({\r\n quickKey: props.quickKey,\r\n start: props.start as string | undefined,\r\n end: props.end as string | undefined,\r\n onChange: async (v: DatePickerChangeQuickPayload) => {\r\n emit('update:start', v.start)\r\n emit('update:end', v.end)\r\n emit('update:quickKey', v.key)\r\n await nextTick()\r\n emit('changeQuick', v)\r\n visible.value = false\r\n },\r\n }))\r\n\r\n expose({\r\n getRangeDate: (k: TQuickKey) => getRangeDate(k),\r\n } satisfies DatePickerExpose)\r\n\r\n return () => (\r\n <Layer {...layerOptions.value}>\r\n {{\r\n trigger: renderTrigger,\r\n default: () =>\r\n isRange.value ? (\r\n <>\r\n {cfg.value.hasQuick ? <QuickDate {...quickOpts.value} /> : null}\r\n <div class=\"w-date-start-end\">\r\n <div>\r\n <DatePanel {...startOpts.value} />\r\n </div>\r\n <div class=\"w-date-range-gap\" />\r\n <div>\r\n <DatePanel {...endOpts.value} />\r\n </div>\r\n </div>\r\n </>\r\n ) : (\r\n <DatePanel {...datePanelOpts.value} />\r\n ),\r\n }}\r\n </Layer>\r\n )\r\n },\r\n})\r\n"],"mappings":";;;;;;;;;;;;;;AAsDA,IAAA,qBAAeC,gCAAgB;CAC7BgC,MAAM;CACNC,cAAc;CACdC,OAAO;EACLC,MAAM;GAAEC,MAAMC;GAASC,SAAS;EAAM;EACtCC,YAAY;GACVH,MAAM;IAACI;IAAQC;IAAMC;GAAM;GAC3BJ,SAASK,KAAAA;EACX;EACAC,OAAO;GACLR,MAAM;IAACI;IAAQC;IAAMC;GAAM;GAC3BJ,SAASK,KAAAA;EACX;EACAE,KAAK;GACHT,MAAM;IAACI;IAAQC;IAAMC;GAAM;GAC3BJ,SAASK,KAAAA;EACX;EACAG,UAAU;GAAEV,MAAMM;GAA+BJ,SAASK,KAAAA;EAAU;EACpEI,KAAK;GAAEX,MAAM;IAACI;IAAQC;IAAMC;GAAM;GAAyBJ,SAASK,KAAAA;EAAU;EAC9EK,KAAK;GAAEZ,MAAM;IAACI;IAAQC;IAAMC;GAAM;GAAyBJ,SAASK,KAAAA;EAAU;EAE9EM,OAAO;GAAEb,MAAMC;GAASC,SAASK,KAAAA;EAAU;EAC3CO,UAAU;GAAEd,MAAMC;GAASC,SAASK,KAAAA;EAAU;EAC9CQ,WAAW;GAAEf,MAAMC;GAASC,SAASK,KAAAA;EAAU;EAC/CS,UAAU;GAAEhB,MAAMC;GAASC,SAASK,KAAAA;EAAU;EAC9CU,OAAO;GAAEjB,MAAMC;GAASC,SAASK,KAAAA;EAAU;EAC3CW,QAAQ;GACNlB,MAAMM;GACNJ,SAASK,KAAAA;EACX;EACAY,gBAAgB;GACdnB,MAAMM;GACNJ,SAASK,KAAAA;EACX;EACAa,aAAa;GAAEpB,MAAMM;GAAQJ,SAASK,KAAAA;EAAU;EAChDc,kBAAkB;GAAErB,MAAMM;GAAQJ,SAASK,KAAAA;EAAU;EACrDe,gBAAgB;GAAEtB,MAAMM;GAAQJ,SAASK,KAAAA;EAAU;;EAEnDgB,MAAM;GAAEvB,MAAMI;GAAQF,SAASK,KAAAA;EAAU;;EAEzCiB,OAAO;GAAExB,MAAMM;GAAQJ,SAASK,KAAAA;EAAU;EAC1CkB,SAAS;GAAEzB,MAAM0B;GAA6BxB,SAASK,KAAAA;EAAU;EACjEoB,QAAQ;GAAE3B,MAAMC;GAASC,SAAS;EAAM;CAC1C;CACA0B,OAAO;EACL,gBAAgBC,OAAgB;EAChC,sBAAsBA,OAAiB;EACvC,iBAAiBA,OAAiB;EAClC,eAAeA,OAAiB;EAChC,oBAAoBA,OAA8B;EAClDC,SAASD,OAAkB;EAC3BE,cAAcF,OAAqC;CACrD;CACAG,OAAON;CACPO,MAAMnC,OAAO,EAAEoC,OAAOC,MAAMH,OAAOI,UAAU;EAC3C,MAAM,EAAEC,UAAUC,gBAAgB3D,YAAY;EAC9C,MAAM4D,MAAM7D,mBAAmB,cAAcoB,OAAOH,oBAAoB;EACxE,MAAM,EAAE6C,MAAM/D,UAAU;EAExB,MAAMuC,WAAWsB,YAAY3E,eAAe4E,IAAIE,MAAMzB,QAAQ,CAAC;EAC/D,MAAM0B,UAAU/E,eAAe,CAAC,CAAC4E,IAAIE,MAAM5B,KAAK;EAChD,MAAM8B,UAAU3E,IAAI8B,MAAMC,IAAI;EAE9B,MAAM6C,wBAAwBjF,eACtB4E,IAAIE,MAAMrB,eAAeoB,EAAE,kBAAkB,CACrD;EACA,MAAMK,uBAAuBlF,eACrB4E,IAAIE,MAAMpB,oBAAoBmB,EAAE,uBAAuB,CAC/D;EACA,MAAMM,qBAAqBnF,eACnB4E,IAAIE,MAAMnB,kBAAkBkB,EAAE,qBAAqB,CAC3D;;EAGA,MAAMO,eAAehF,SAGlB;GACDyC,OAAOD,KAAAA;GACPE,KAAKF,KAAAA;EACP,CAAC;EAED,MAAMyC,YAAYrF,eAAe4E,IAAIE,MAAMvB,MAAwB;EACnE,MAAM+B,OAAO1D,YACXyD,WACArF,eAAemC,MAAMK,UAAU,CACjC;EACA,MAAM+C,YAAY3D,YAChByD,WACArF,eAAemC,MAAMU,KAAK,CAC5B;EACA,MAAM2C,UAAU5D,YACdyD,WACArF,eAAemC,MAAMW,GAAG,CAC1B;EAEA,MAAM2C,cAAczF,eAClB+E,QAAQD,QACJ/C,mBAAmBI,MAAMY,UAAUZ,MAAMU,OAAOV,MAAMW,GAAG,IACzD,KACN;EACA,MAAM4C,YAAY1F,eAChByF,YAAYX,QAAQhD,iBAAiBK,MAAMY,UAAU8B,CAAC,IAAIjC,KAAAA,CAC5D;;EAGA,MAAM+C,mBAAmB3F,eAAe;GACtC,IAAI+E,QAAQD,OAAO;IACjB,MAAMjC,QAAQ0C,UAAUT;IACxB,MAAMhC,MAAM0C,QAAQV;IACpB,IAAI,CAACjC,SAAS,CAACC,KAAK,OAAOF,KAAAA;IAC3B,OAAO,GAAGC,SAASqC,qBAAqBJ,MAAK,KAAMhC,OAAOqC,mBAAmBL;GAC/E;GACA,OAAOQ,KAAKR;EACd,CAAC;;EAGD,MAAMc,kBAAkB5F,eAChB0F,UAAUZ,SAASa,iBAAiBb,KAC5C;;EAGA,MAAMe,cAAc7F,eAAe;GACjC,IAAI0F,UAAUZ,OAAO,OAAOY,UAAUZ;GACtC,IAAIC,QAAQD,OAAO;IACjB,MAAMjC,QAAQ0C,UAAUT;IACxB,MAAMhC,MAAM0C,QAAQV;IACpB,IAAIjC,SAASC,KACX,OAAO;KACLD,SAASqC,qBAAqBJ;KAAKpE,YAAA,QAAA,MAAA,CAAAF,gBAAA,GAAA,CAAA,CAAA;KAEnCsC,OAAOqC,mBAAmBL;IAAK;IAGnC;GACF;GACA,OAAOQ,KAAKR;EACd,CAAC;EAED,MAAMgB,qBAAqB9F,eACzB+E,QAAQD,QACJ,GAAGI,qBAAqBJ,MAAK,GAAIK,mBAAmBL,UACpDG,sBAAsBH,KAC5B;EAEA,SAASiB,OAAO;GACd,IAAI,CAAC1C,SAASyB,OAAOE,QAAQF,QAAQ;EACvC;EACA,SAASkB,QAAQ;GACfhB,QAAQF,QAAQ;EAClB;EACA,SAASmB,SAAS;GAChB,IAAI5C,SAASyB,OAAO;GACpBE,QAAQF,QAAQ,CAACE,QAAQF;EAC3B;EAEA,SAASoB,QAAQ;GACf1B,KAAK,gBAAgB5B,KAAAA,CAAS;GAC9B4B,KAAK,cAAc5B,KAAAA,CAAS;GAC5B4B,KAAK,qBAAqB5B,KAAAA,CAAS;GACnC4B,KAAK,mBAAmB5B,KAAAA,CAAS;GACjC4B,KAAK,UAAU5B,KAAAA,CAAS;GACxB8B,UAAUyB,SAAS,QAAQ;EAC7B;EAEA,MAAMC,mBAAmBpG,gBAA4C;GACnEsF,MAAMM,gBAAgBd;GACtBuB,WAAWd,UAAUT;GACrBwB,SAASd,QAAQV;GACjB/B,UAAU0C,YAAYX,QAAQ3C,MAAMY,WAAWH,KAAAA;GAC/C8C,WAAWA,UAAUZ;GACrBrB,aAAaqC,mBAAmBhB;GAChCpB,kBAAkBwB,qBAAqBJ;GACvCnB,gBAAgBwB,mBAAmBL;GACnCE,SAASA,QAAQF;GACjBzB,UAAUA,SAASyB;GACnB1B,WAAWwB,IAAIE,MAAM1B;GACrBF,OAAO6B,QAAQD;GACfoB;GACAH;GACAC;GACAC;EACF,EAAE;EAEF,MAAMM,WAAWvG,eACfuB,eAAe;GACb,GAAGF,kBAAkB,eAAec,MAAMyB,IAAI;GAC9C,GAAGtC,mBAAmB,eAAea,MAAM0B,KAAK;GAChD,yBAAyB5C,iBAAiB,aAAa;GACvD,6BAA6BC,eAAe,aAAa;GACzD,+BAA+BC,iBAAiB,aAAa;GAC7D,2BAA2BD,eAAe,aAAa;GACvD,6BAA6BC,iBAAiB,aAAa;GAC3D,GAAGgB,MAAM2B;EACX,CAAC,CACH;EACA,MAAM0C,YAAYxG,eAChBoB,WAAWmF,SAASzB,OAAOP,MAAMkC,KAAwC,CAC3E;EAEA,MAAMC,eAAe1G,gBAAgB;GACnCwD,gBAAgBoB,IAAIE,MAAMtB;GAC1BmD,WAAW;GACXvE,MAAM4C,QAAQF;GACdd,QAAQ7B,MAAM6B;GACdX,UAAUA,SAASyB;GACnB8B,WAAW;GACXC,KAAK;GACLC,UAAU;GACVC,gBAAgB;GAChBC,YAAY,CACV,iBACAjC,QAAQD,QAAQ,wBAAwB,EAAE;GAE5CmC,YAAYV,SAASzB;GACrB,kBAAkBoC,MAAe;IAC/BlC,QAAQF,QAAQoC;GAClB;EACF,EAAE;EAEF,SAASC,cAAcC,YAKpB;GACD,IAAI/C,MAAMgD,SACR,OAAOhD,MAAMgD,QAAQ;IACnB,GAAGjB,iBAAiBtB;IACpBE,SAASoC,YAAYpC,WAAWA,QAAQF;IACxCiB,MAAMqB,YAAYhF,QAAQ2D;IAC1BC,OAAOoB,YAAYE,QAAQtB;IAC3BC,QAAQmB,YAAYnB,UAAUA;GAChC,CAAC;GAEH,MAAM,EAAEQ,OAAOc,QAAQC,OAAOC,WAAW,GAAGC,cAAcnD;GAI1D,MAAMoD,iBAAiBzH,WAAWwH,WAAW;IAC3CF,OAAOC;IACPhE,aAAaqC,mBAAmBhB;IAChCzB,UAAUA,SAASyB;IACnBxB,OAAOsB,IAAIE,MAAMxB;IACjBF,WAAWwB,IAAIE,MAAM1B;IACrBkC,MAAMO,YAAYf;IAClB8C,QAAQ5C,QAAQF;IAChB2B,OAAOD,UAAU1B;IACjB+C,SAAS3B;GACX,CAAC;GACD,OAAAxF,YAAAe,iBAAoBkG,gBAAc,IAAA;EACpC;EAEA,MAAM,EAAEG,iBAAiBjG,YAAYwD,SAAS;EAE9C,eAAe0C,aAAa;GAC1BvD,KAAK,QAAQ;GACb,MAAMrE,SAAS;GACf,IACE,CAAC2H,aAAahD,SACd3C,MAAMU,UAAUuC,aAAavC,SAC7BV,MAAMW,QAAQsC,aAAatC,OAC3BX,MAAMU,SACNV,MAAMW,KAENkC,QAAQF,QAAQ;EAEpB;EAEAxE,YACQ6B,MAAMC,OACX8E,MAAM;GACLlC,QAAQF,QAAQoC;EAClB,CACF;EACA5G,MAAM0E,UAAUkC,MAAM;GACpB,IAAIA,GAAG;IACL9B,aAAavC,QAAQV,MAAMU;IAC3BuC,aAAatC,MAAMX,MAAMW;GAC3B;GACA0B,KAAK,eAAe0C,CAAC;EACvB,CAAC;EAED,MAAMc,YAAYhI,gBAAgB;GAChCyD,aAAayB,qBAAqBJ;GAClCtC,YAAYL,MAAMU;GAClBU,QAAQ8B,UAAUP;GAClB9B,KAAKb,MAAMa;GACX,wBAAwBiF,MAAgB;IACtCzD,KAAK,gBAAgByD,CAAC;GACxB;GACAC,UAAUH;EACZ,EAAE;EAEF,MAAMI,UAAUnI,gBAAgB;GAC9ByD,aAAa0B,mBAAmBL;GAChCtC,YAAYL,MAAMW;GAClBS,QAAQ8B,UAAUP;GAClB7B,KAAKd,MAAMc;GACX,wBAAwBgF,MAAgB;IACtCzD,KAAK,cAAcyD,CAAC;GACtB;GACAC,UAAU,OAAOE,SAA0C;IACzD,MAAMjI,SAAS;IACf,IAAI2H,aAAahD,SAAS3C,MAAMU,SAASV,MAAMW,OAAOsF,KAAKC,SACzDrD,QAAQF,QAAQ;SAEhBiD,WAAW;GAEf;EACF,EAAE;EAEF,MAAMO,gBAAgBtI,gBAAgB;GACpCwC,YAAYL,MAAMK;GAClBe,QAAQ8B,UAAUP;GAClB9B,KAAKb,MAAMa;GACXC,KAAKd,MAAMc;GACX,wBAAwBgF,MAAgB;IACtCzD,KAAK,qBAAqByD,CAAC;GAC7B;GACAC,WAAWK,QAAyC;IAClD,IAAIA,IAAIF,SACNrD,QAAQF,QAAQ;GAEpB;EACF,EAAE;EAEF,MAAM0D,YAAYxI,gBAAgB;GAChC+C,UAAUZ,MAAMY;GAChBF,OAAOV,MAAMU;GACbC,KAAKX,MAAMW;GACXoF,UAAU,OAAOD,MAAoC;IACnDzD,KAAK,gBAAgByD,EAAEpF,KAAK;IAC5B2B,KAAK,cAAcyD,EAAEnF,GAAG;IACxB0B,KAAK,mBAAmByD,EAAEQ,GAAG;IAC7B,MAAMtI,SAAS;IACfqE,KAAK,eAAeyD,CAAC;IACrBjD,QAAQF,QAAQ;GAClB;EACF,EAAE;EAEFL,OAAO,EACL5D,eAAe6H,MAAiB7H,aAAa6H,CAAC,EAChD,CAA4B;EAE5B,aAAOhI,YAAAc,eACMkF,aAAa5B,OAAK;GAEzBuC,SAASF;GACT5E,eACEwC,QAAQD,QAAKpE,YAAAE,UAAA,MAAA,CAERgE,IAAIE,MAAM3B,WAAQzC,YAAAiB,mBAAkB6G,UAAU1D,OAAK,IAAA,IAAO,MAAIpE,YAAA,OAAA,EAAA,SAAA,mBAAA,GAAA;IAAAA,YAAA,OAAA,MAAA,CAAAA,YAAAgB,mBAG5CsG,UAAUlD,OAAK,IAAA,CAAA,CAAA;IAAApE,YAAA,OAAA,EAAA,SAAA,mBAAA,GAAA,IAAA;IAAAA,YAAA,OAAA,MAAA,CAAAA,YAAAgB,mBAIfyG,QAAQrD,OAAK,IAAA,CAAA,CAAA;GAAA,CAAA,CAAA,CAAA,IAAApE,YAAAgB,mBAKnB4G,cAAcxD,OAAK,IAAA;EACnC,CAAA;CAIX;AACF,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
import { DateFormatType } from '../../config/types';
|
|
3
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
4
|
+
date: {
|
|
5
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
6
|
+
};
|
|
7
|
+
displayDate: {
|
|
8
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
9
|
+
};
|
|
10
|
+
format: {
|
|
11
|
+
type: PropType<DateFormatType>;
|
|
12
|
+
default: string;
|
|
13
|
+
};
|
|
14
|
+
max: {
|
|
15
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
16
|
+
};
|
|
17
|
+
min: {
|
|
18
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
19
|
+
};
|
|
20
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
21
|
+
"toggle-day": (stringDate: string, date: Date) => true;
|
|
22
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
23
|
+
date: {
|
|
24
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
25
|
+
};
|
|
26
|
+
displayDate: {
|
|
27
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
28
|
+
};
|
|
29
|
+
format: {
|
|
30
|
+
type: PropType<DateFormatType>;
|
|
31
|
+
default: string;
|
|
32
|
+
};
|
|
33
|
+
max: {
|
|
34
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
35
|
+
};
|
|
36
|
+
min: {
|
|
37
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
38
|
+
};
|
|
39
|
+
}>> & Readonly<{
|
|
40
|
+
"onToggle-day"?: (stringDate: string, date: Date) => any;
|
|
41
|
+
}>, {
|
|
42
|
+
format: DateFormatType;
|
|
43
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
44
|
+
export default _default;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { useUII18n } from "../../use/useUII18n.js";
|
|
2
|
+
import useDate from "../../use/useDate.js";
|
|
3
|
+
import { computed, createVNode, defineComponent, onMounted } from "vue";
|
|
4
|
+
//#region components/date/Days.tsx
|
|
5
|
+
var Days_default = /* @__PURE__ */ defineComponent({
|
|
6
|
+
name: "Days",
|
|
7
|
+
props: {
|
|
8
|
+
date: { type: [
|
|
9
|
+
Number,
|
|
10
|
+
Date,
|
|
11
|
+
String
|
|
12
|
+
] },
|
|
13
|
+
displayDate: { type: [
|
|
14
|
+
Number,
|
|
15
|
+
Date,
|
|
16
|
+
String
|
|
17
|
+
] },
|
|
18
|
+
format: {
|
|
19
|
+
type: String,
|
|
20
|
+
default: "yyyy-MM-dd"
|
|
21
|
+
},
|
|
22
|
+
max: { type: [
|
|
23
|
+
Number,
|
|
24
|
+
Date,
|
|
25
|
+
String
|
|
26
|
+
] },
|
|
27
|
+
min: { type: [
|
|
28
|
+
Number,
|
|
29
|
+
Date,
|
|
30
|
+
String
|
|
31
|
+
] }
|
|
32
|
+
},
|
|
33
|
+
emits: { "toggle-day": (stringDate, date) => {
|
|
34
|
+
return true;
|
|
35
|
+
} },
|
|
36
|
+
setup(props, { slots, emit }) {
|
|
37
|
+
const { day, dayMap, format, getDaysInPanel, isSameDay, isToday, isMinDayThanDate, isMaxDayThanDate } = useDate(computed(() => props.displayDate), computed(() => props.format));
|
|
38
|
+
const { t } = useUII18n();
|
|
39
|
+
function compareDate(d) {
|
|
40
|
+
const min = props.min, max = props.max;
|
|
41
|
+
if (min || max) {
|
|
42
|
+
let isMin = false, isMax = false;
|
|
43
|
+
if (min) isMin = isMinDayThanDate(d, min);
|
|
44
|
+
if (max) isMax = isMaxDayThanDate(d, max);
|
|
45
|
+
return isMin || isMax;
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
function renderDayItem(days, isCurrentMonth = false) {
|
|
50
|
+
return days.map(([y, m, d]) => {
|
|
51
|
+
const itemDate = new Date(y, m - 1, d);
|
|
52
|
+
const isDisabled = compareDate(itemDate);
|
|
53
|
+
const _isToday = isToday(itemDate);
|
|
54
|
+
const _isSelected = isSameDay(itemDate, props.date) && props.date !== void 0;
|
|
55
|
+
const dOptions = {
|
|
56
|
+
title: `${_isToday ? t("date.today") : ""}${y}-${m}-${d}`,
|
|
57
|
+
class: [
|
|
58
|
+
"w-date-item",
|
|
59
|
+
"w-date-item-day",
|
|
60
|
+
"w-date-item-circle",
|
|
61
|
+
{
|
|
62
|
+
"w-date-item-not-current": !isCurrentMonth,
|
|
63
|
+
"w-date-item-today": _isToday,
|
|
64
|
+
"w-date-item-selected": _isSelected,
|
|
65
|
+
"w-date-item-disabled": isDisabled
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
onClick: (e) => {
|
|
69
|
+
if (isDisabled) return;
|
|
70
|
+
emit("toggle-day", format(itemDate, "yyyy-MM-dd"), itemDate);
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
return createVNode("div", dOptions, [_isToday ? [createVNode("span", null, [d]), createVNode("span", { "class": "w-date-item-today-cur" }, null)] : d]);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
function renderDaysList() {
|
|
77
|
+
const { prev, cur, next } = getDaysInPanel();
|
|
78
|
+
return [
|
|
79
|
+
renderDayItem(prev),
|
|
80
|
+
renderDayItem(cur, true),
|
|
81
|
+
renderDayItem(next)
|
|
82
|
+
];
|
|
83
|
+
}
|
|
84
|
+
onMounted(() => {});
|
|
85
|
+
return () => {
|
|
86
|
+
return createVNode("div", { "class": "w-days" }, [renderDaysList()]);
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
//#endregion
|
|
91
|
+
export { Days_default as default };
|
|
92
|
+
|
|
93
|
+
//# sourceMappingURL=Days.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Days.js","names":["onMounted","createVNode","_createVNode","defineComponent","computed","useDate","useUII18n","name","props","date","type","Number","Date","String","displayDate","format","default","max","min","emits","toggle-day","stringDate","setup","slots","emit","day","dayMap","getDaysInPanel","isSameDay","isToday","isMinDayThanDate","isMaxDayThanDate","t","compareDate","d","isMin","isMax","renderDayItem","days","isCurrentMonth","map","y","m","itemDate","isDisabled","_isToday","_isSelected","undefined","dOptions","title","class","onClick","e","ymd","renderDaysList","prev","cur","next","renderWeekTitleList","k","v","push"],"sources":["../../../components/date/Days.tsx"],"sourcesContent":["import { getCurrentInstance, onMounted, type VNode } from \"vue\"\r\nimport { defineComponent, computed, watch } from \"vue\"\r\nimport type { PropType } from \"vue\"\r\nimport type { DateFormatType } from \"../../config/types\"\r\nimport useDate from \"../../use/useDate\"\r\nimport { useUII18n } from \"../../use/useUII18n\"\r\n\r\nexport default defineComponent({\r\n name: \"Days\",\r\n props: {\r\n //传入的日期(选择的日期),可以是具体的某一天,也可以是年月,如:new Date('2022','3')\r\n date: { type: [Number, Date, String] },\r\n //displayDate是展示的日期\r\n displayDate: { type: [Number, Date, String] },\r\n format: {\r\n type: String as PropType<DateFormatType>,\r\n default: \"yyyy-MM-dd\",\r\n // required: true\r\n },\r\n max: { type: [Number, Date, String] },\r\n min: { type: [Number, Date, String] },\r\n },\r\n emits: {\r\n \"toggle-day\": (stringDate: string, date: Date) => {\r\n return true\r\n },\r\n },\r\n setup(props, { slots, emit }) {\r\n const {\r\n day,\r\n dayMap,\r\n format,\r\n getDaysInPanel,\r\n isSameDay,\r\n isToday,\r\n isMinDayThanDate,\r\n isMaxDayThanDate,\r\n } = useDate(\r\n computed(() => props.displayDate),\r\n computed(() => props.format)\r\n )\r\n const { t } = useUII18n()\r\n\r\n function compareDate(d: Date) {\r\n const min = props.min,\r\n max = props.max\r\n if (min || max) {\r\n let isMin = false,\r\n isMax = false\r\n if (min) {\r\n isMin = isMinDayThanDate(d, min)\r\n }\r\n if (max) {\r\n isMax = isMaxDayThanDate(d, max)\r\n }\r\n return isMin || isMax\r\n }\r\n return false\r\n }\r\n\r\n function renderDayItem(days: number[][], isCurrentMonth: boolean = false) {\r\n return days.map(([y, m, d]) => {\r\n const itemDate = new Date(y, m - 1, d)\r\n const isDisabled = compareDate(itemDate)\r\n //注意,js里的月份是从0开始的,所以new Date()里的月份要减1\r\n const _isToday = isToday(itemDate)\r\n const _isSelected =\r\n isSameDay(itemDate, props.date) && props.date !== undefined\r\n const dOptions = {\r\n title: `${_isToday ? t(\"date.today\") : \"\"}${y}-${m}-${d}`,\r\n class: [\r\n \"w-date-item\",\r\n \"w-date-item-day\",\r\n \"w-date-item-circle\",\r\n {\r\n \"w-date-item-not-current\": !isCurrentMonth,\r\n \"w-date-item-today\": _isToday,\r\n \"w-date-item-selected\": _isSelected,\r\n \"w-date-item-disabled\": isDisabled,\r\n },\r\n ],\r\n onClick: (e: MouseEvent) => {\r\n if (isDisabled) {\r\n return\r\n }\r\n //注意:ymd只包括年月日\r\n const ymd = format(itemDate, \"yyyy-MM-dd\")\r\n emit(\"toggle-day\", ymd, itemDate)\r\n },\r\n }\r\n return (\r\n <div {...dOptions}>\r\n {_isToday\r\n ? [<span>{d}</span>, <span class=\"w-date-item-today-cur\"></span>]\r\n : d}\r\n </div>\r\n )\r\n })\r\n }\r\n\r\n function renderDaysList() {\r\n const { prev, cur, next } = getDaysInPanel()\r\n return [\r\n renderDayItem(prev),\r\n renderDayItem(cur, true),\r\n renderDayItem(next),\r\n ]\r\n }\r\n\r\n function renderWeekTitleList() {\r\n const days: VNode[] = []\r\n for (const [k, v] of dayMap) {\r\n days.push(<b class={[\"w-date-item\"]}>{v}</b>)\r\n }\r\n return days\r\n }\r\n\r\n onMounted(() => {\r\n // console.log(getCurrentInstance())\r\n })\r\n return () => {\r\n return <div class={\"w-days\"}>{renderDaysList()}</div>\r\n }\r\n },\r\n})\r\n"],"mappings":";;;;AAOA,IAAA,eAAeG,gCAAgB;CAC7BI,MAAM;CACNC,OAAO;EAELC,MAAM,EAAEC,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;EAErCC,aAAa,EAAEJ,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;EAC5CE,QAAQ;GACNL,MAAMG;GACNG,SAAS;EAEX;EACAC,KAAK,EAAEP,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;EACpCK,KAAK,EAAER,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;CACtC;CACAM,OAAO,EACL,eAAeE,YAAoBZ,SAAe;EAChD,OAAO;CACT,EACF;CACAa,MAAMd,OAAO,EAAEe,OAAOC,QAAQ;EAC5B,MAAM,EACJC,KACAC,QACAX,QACAY,gBACAC,WACAC,SACAC,kBACAC,qBACE1B,QACFD,eAAeI,MAAMM,WAAW,GAChCV,eAAeI,MAAMO,MAAM,CAC7B;EACA,MAAM,EAAEiB,MAAM1B,UAAU;EAExB,SAAS2B,YAAYC,GAAS;GAC5B,MAAMhB,MAAMV,MAAMU,KAChBD,MAAMT,MAAMS;GACd,IAAIC,OAAOD,KAAK;IACd,IAAIkB,QAAQ,OACVC,QAAQ;IACV,IAAIlB,KACFiB,QAAQL,iBAAiBI,GAAGhB,GAAG;IAEjC,IAAID,KACFmB,QAAQL,iBAAiBG,GAAGjB,GAAG;IAEjC,OAAOkB,SAASC;GAClB;GACA,OAAO;EACT;EAEA,SAASC,cAAcC,MAAkBC,iBAA0B,OAAO;GACxE,OAAOD,KAAKE,KAAK,CAACC,GAAGC,GAAGR,OAAO;IAC7B,MAAMS,WAAW,IAAI/B,KAAK6B,GAAGC,IAAI,GAAGR,CAAC;IACrC,MAAMU,aAAaX,YAAYU,QAAQ;IAEvC,MAAME,WAAWhB,QAAQc,QAAQ;IACjC,MAAMG,cACJlB,UAAUe,UAAUnC,MAAMC,IAAI,KAAKD,MAAMC,SAASsC,KAAAA;IACpD,MAAMC,WAAW;KACfC,OAAO,GAAGJ,WAAWb,EAAE,YAAY,IAAI,KAAKS,EAAC,GAAIC,EAAC,GAAIR;KACtDgB,OAAO;MACL;MACA;MACA;MACA;OACE,2BAA2B,CAACX;OAC5B,qBAAqBM;OACrB,wBAAwBC;OACxB,wBAAwBF;MAC1B;KAAC;KAEHO,UAAUC,MAAkB;MAC1B,IAAIR,YACF;MAIFpB,KAAK,cADOT,OAAO4B,UAAU,YACVU,GAAKV,QAAQ;KAClC;IACF;IACA,OAAAzC,YAAA,OACW8C,UAAQ,CACdH,WACG,CAAA3C,YAAA,QAAA,MAAA,CAAQgC,CAAC,CAAA,GAAAhC,YAAA,QAAA,EAAA,SAAA,wBAAA,GAAA,IAAA,CAAA,IACTgC,CAAC,CAAA;GAGX,CAAC;EACH;EAEA,SAASoB,iBAAiB;GACxB,MAAM,EAAEC,MAAMC,KAAKC,SAAS9B,eAAe;GAC3C,OAAO;IACLU,cAAckB,IAAI;IAClBlB,cAAcmB,KAAK,IAAI;IACvBnB,cAAcoB,IAAI;GAAC;EAEvB;EAUAzD,gBAAgB,CACd,CACD;EACD,aAAa;GACX,OAAAE,YAAA,OAAA,EAAA,SAAmB,SAAQ,GAAA,CAAGoD,eAAe,CAAC,CAAA;EAChD;CACF;AACF,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
2
|
+
date: {
|
|
3
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
4
|
+
};
|
|
5
|
+
displayDate: {
|
|
6
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
7
|
+
};
|
|
8
|
+
max: {
|
|
9
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
10
|
+
};
|
|
11
|
+
min: {
|
|
12
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
13
|
+
};
|
|
14
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
15
|
+
"toggle-month": (yearMonth: Date) => boolean;
|
|
16
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
17
|
+
date: {
|
|
18
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
19
|
+
};
|
|
20
|
+
displayDate: {
|
|
21
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
22
|
+
};
|
|
23
|
+
max: {
|
|
24
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
25
|
+
};
|
|
26
|
+
min: {
|
|
27
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
28
|
+
};
|
|
29
|
+
}>> & Readonly<{
|
|
30
|
+
"onToggle-month"?: (yearMonth: Date) => any;
|
|
31
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
32
|
+
export default _default;
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { useUII18n } from "../../use/useUII18n.js";
|
|
2
|
+
import useDate from "../../use/useDate.js";
|
|
3
|
+
import { computed, createVNode, defineComponent, readonly } from "vue";
|
|
4
|
+
//#region components/date/Months.tsx
|
|
5
|
+
var getMonthMap = (t) => readonly(/* @__PURE__ */ new Map([
|
|
6
|
+
[1, t("date.months.jan")],
|
|
7
|
+
[2, t("date.months.feb")],
|
|
8
|
+
[3, t("date.months.mar")],
|
|
9
|
+
[4, t("date.months.apr")],
|
|
10
|
+
[5, t("date.months.may")],
|
|
11
|
+
[6, t("date.months.jun")],
|
|
12
|
+
[7, t("date.months.jul")],
|
|
13
|
+
[8, t("date.months.aug")],
|
|
14
|
+
[9, t("date.months.sep")],
|
|
15
|
+
[10, t("date.months.oct")],
|
|
16
|
+
[11, t("date.months.nov")],
|
|
17
|
+
[12, t("date.months.dec")]
|
|
18
|
+
]));
|
|
19
|
+
var Months_default = /* @__PURE__ */ defineComponent({
|
|
20
|
+
name: "Months",
|
|
21
|
+
props: {
|
|
22
|
+
date: { type: [
|
|
23
|
+
Date,
|
|
24
|
+
String,
|
|
25
|
+
Number
|
|
26
|
+
] },
|
|
27
|
+
displayDate: { type: [
|
|
28
|
+
Date,
|
|
29
|
+
String,
|
|
30
|
+
Number
|
|
31
|
+
] },
|
|
32
|
+
max: { type: [
|
|
33
|
+
Number,
|
|
34
|
+
Date,
|
|
35
|
+
String
|
|
36
|
+
] },
|
|
37
|
+
min: { type: [
|
|
38
|
+
Number,
|
|
39
|
+
Date,
|
|
40
|
+
String
|
|
41
|
+
] }
|
|
42
|
+
},
|
|
43
|
+
emits: { "toggle-month": (yearMonth) => {
|
|
44
|
+
return yearMonth instanceof Date;
|
|
45
|
+
} },
|
|
46
|
+
setup(props, { emit, slots }) {
|
|
47
|
+
const { isSameMonth, year, isMinMonthThanDate, isMaxMonthThanDate } = useDate(computed(() => props.displayDate));
|
|
48
|
+
const { t } = useUII18n();
|
|
49
|
+
const monthMap = getMonthMap(t);
|
|
50
|
+
function compareDate(d) {
|
|
51
|
+
const min = props.min, max = props.max;
|
|
52
|
+
if (min || max) {
|
|
53
|
+
let isMin = false, isMax = false;
|
|
54
|
+
if (min) isMin = isMinMonthThanDate(d, min);
|
|
55
|
+
if (max) isMax = isMaxMonthThanDate(d, max);
|
|
56
|
+
return isMin || isMax;
|
|
57
|
+
}
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
function renderMonthList() {
|
|
61
|
+
let ms = [];
|
|
62
|
+
for (const [k, v] of monthMap) {
|
|
63
|
+
const isSelected = props.date && isSameMonth(props.date, new Date(year.value, k - 1));
|
|
64
|
+
const isCur = isSameMonth(/* @__PURE__ */ new Date(), new Date(year.value, k - 1));
|
|
65
|
+
const isDisabled = compareDate(new Date(year.value, k - 1));
|
|
66
|
+
const p = {
|
|
67
|
+
class: ["w-months-item", {
|
|
68
|
+
"w-months-item-selected": isSelected,
|
|
69
|
+
"w-months-item-current": isCur,
|
|
70
|
+
"w-months-item-disabled": isDisabled
|
|
71
|
+
}],
|
|
72
|
+
onClick: () => {
|
|
73
|
+
if (isDisabled) return;
|
|
74
|
+
emit("toggle-month", new Date(year.value, k - 1));
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
ms.push(createVNode("div", p, [isCur ? [createVNode("span", null, [v]), createVNode("span", { "class": "w-months-item-cur" }, null)] : v]));
|
|
78
|
+
}
|
|
79
|
+
return createVNode("div", { "class": "w-months" }, [ms]);
|
|
80
|
+
}
|
|
81
|
+
return renderMonthList;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
//#endregion
|
|
85
|
+
export { Months_default as default };
|
|
86
|
+
|
|
87
|
+
//# sourceMappingURL=Months.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Months.js","names":["defineComponent","computed","readonly","createVNode","_createVNode","useDate","useUII18n","getMonthMap","t","Map","name","props","date","type","Date","String","Number","displayDate","max","min","emits","yearMonth","setup","emit","slots","isSameMonth","year","isMinMonthThanDate","isMaxMonthThanDate","monthMap","compareDate","d","isMin","isMax","renderMonthList","ms","k","v","isSelected","value","isCur","isDisabled","p","class","onClick","push"],"sources":["../../../components/date/Months.tsx"],"sourcesContent":["import type { VNode, PropType } from \"vue\"\r\nimport type { DateType } from \"../../config/types\"\r\nimport { defineComponent, computed, readonly } from \"vue\"\r\nimport useDate from \"../../use/useDate\"\r\nimport { useUII18n } from \"../../use/useUII18n\"\r\n\r\nconst getMonthMap = (t: Function) =>\r\n readonly(\r\n new Map([\r\n [1, t(\"date.months.jan\")],\r\n [2, t(\"date.months.feb\")],\r\n [3, t(\"date.months.mar\")],\r\n [4, t(\"date.months.apr\")],\r\n [5, t(\"date.months.may\")],\r\n [6, t(\"date.months.jun\")],\r\n [7, t(\"date.months.jul\")],\r\n [8, t(\"date.months.aug\")],\r\n [9, t(\"date.months.sep\")],\r\n [10, t(\"date.months.oct\")],\r\n [11, t(\"date.months.nov\")],\r\n [12, t(\"date.months.dec\")],\r\n ])\r\n )\r\n\r\n// interface Props {\r\n// date: DateType\r\n// displayDate: DateType\r\n// }\r\n\r\n// type Emit = {\r\n// 'toggle-month': (yearMonth: Date) => void\r\n// }\r\n\r\n// const Months: FunctionalComponent<Props, Emit> = (props, ctx) => {\r\n// const { emit } = ctx\r\n// const { isSameMonth, year } = useDate(computed(() => props.displayDate))\r\n// return (() => {\r\n// let ms: VNode[] = []\r\n// for (const [k, v] of monthMap) {\r\n// const isSelected =\r\n// props.date && isSameMonth(props.date, new Date(year.value, k - 1))\r\n// const isCur = isSameMonth(new Date(), new Date(year.value, k - 1))\r\n// const p = {\r\n// class: [\r\n// 'w-months-item',\r\n// {\r\n// 'w-months-item-selected': isSelected,\r\n// 'w-months-item-current': isCur\r\n// }\r\n// ],\r\n// onClick: () => {\r\n// emit('toggle-month', new Date(year.value, k - 1))\r\n// }\r\n// }\r\n// ms.push(\r\n// <div {...p}>{isCur ? [<span>{v}</span>, <span>本月</span>] : v}</div>\r\n// )\r\n// }\r\n// return <div class=\"w-months\">{ms}</div>\r\n// })()\r\n// }\r\n// Months.emits = ['toggle-month']\r\n// export default Months\r\nexport default defineComponent({\r\n name: \"Months\",\r\n props: {\r\n //传入的当前日期\r\n date: { type: [Date, String, Number] },\r\n //displayDate是展示的日期\r\n displayDate: { type: [Date, String, Number] },\r\n max: { type: [Number, Date, String] },\r\n min: { type: [Number, Date, String] },\r\n },\r\n emits: {\r\n \"toggle-month\": (yearMonth: Date) => {\r\n return yearMonth instanceof Date\r\n },\r\n },\r\n setup(props, { emit, slots }) {\r\n const { isSameMonth, year, isMinMonthThanDate, isMaxMonthThanDate } =\r\n useDate(computed(() => props.displayDate))\r\n const { t } = useUII18n()\r\n const monthMap = getMonthMap(t)\r\n function compareDate(d: Date) {\r\n const min = props.min,\r\n max = props.max\r\n if (min || max) {\r\n let isMin = false,\r\n isMax = false\r\n if (min) {\r\n isMin = isMinMonthThanDate(d, min)\r\n }\r\n if (max) {\r\n isMax = isMaxMonthThanDate(d, max)\r\n }\r\n return isMin || isMax\r\n }\r\n return false\r\n }\r\n function renderMonthList() {\r\n let ms: any[] = []\r\n for (const [k, v] of monthMap) {\r\n const isSelected =\r\n props.date && isSameMonth(props.date, new Date(year.value, k - 1))\r\n const isCur = isSameMonth(new Date(), new Date(year.value, k - 1))\r\n const isDisabled = compareDate(new Date(year.value, k - 1))\r\n const p = {\r\n class: [\r\n \"w-months-item\",\r\n {\r\n \"w-months-item-selected\": isSelected,\r\n \"w-months-item-current\": isCur,\r\n \"w-months-item-disabled\": isDisabled,\r\n },\r\n ],\r\n onClick: () => {\r\n if (isDisabled) {\r\n return\r\n }\r\n const d = new Date(year.value, k - 1)\r\n emit(\"toggle-month\", d)\r\n },\r\n }\r\n ms.push(\r\n <div {...p}>\r\n {isCur\r\n ? [<span>{v}</span>, <span class=\"w-months-item-cur\"></span>]\r\n : v}\r\n </div>\r\n )\r\n }\r\n return <div class=\"w-months\">{ms}</div>\r\n }\r\n return renderMonthList\r\n },\r\n})\r\n"],"mappings":";;;;AAMA,IAAMO,eAAeC,MACnBN,yBACE,IAAIO,IAAI;CACN,CAAC,GAAGD,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,GAAGA,EAAE,iBAAiB,CAAC;CACxB,CAAC,IAAIA,EAAE,iBAAiB,CAAC;CACzB,CAAC,IAAIA,EAAE,iBAAiB,CAAC;CACzB,CAAC,IAAIA,EAAE,iBAAiB,CAAC;AAAC,CAC3B,CACH;AAyCF,IAAA,iBAAeR,gCAAgB;CAC7BU,MAAM;CACNC,OAAO;EAELC,MAAM,EAAEC,MAAM;GAACC;GAAMC;GAAQC;EAAM,EAAE;EAErCC,aAAa,EAAEJ,MAAM;GAACC;GAAMC;GAAQC;EAAM,EAAE;EAC5CE,KAAK,EAAEL,MAAM;GAACG;GAAQF;GAAMC;EAAM,EAAE;EACpCI,KAAK,EAAEN,MAAM;GAACG;GAAQF;GAAMC;EAAM,EAAE;CACtC;CACAK,OAAO,EACL,iBAAiBC,cAAoB;EACnC,OAAOA,qBAAqBP;CAC9B,EACF;CACAQ,MAAMX,OAAO,EAAEY,MAAMC,SAAS;EAC5B,MAAM,EAAEC,aAAaC,MAAMC,oBAAoBC,uBAC7CvB,QAAQJ,eAAeU,MAAMM,WAAW,CAAC;EAC3C,MAAM,EAAET,MAAMF,UAAU;EACxB,MAAMuB,WAAWtB,YAAYC,CAAC;EAC9B,SAASsB,YAAYC,GAAS;GAC5B,MAAMZ,MAAMR,MAAMQ,KAChBD,MAAMP,MAAMO;GACd,IAAIC,OAAOD,KAAK;IACd,IAAIc,QAAQ,OACVC,QAAQ;IACV,IAAId,KACFa,QAAQL,mBAAmBI,GAAGZ,GAAG;IAEnC,IAAID,KACFe,QAAQL,mBAAmBG,GAAGb,GAAG;IAEnC,OAAOc,SAASC;GAClB;GACA,OAAO;EACT;EACA,SAASC,kBAAkB;GACzB,IAAIC,KAAY,CAAA;GAChB,KAAK,MAAM,CAACC,GAAGC,MAAMR,UAAU;IAC7B,MAAMS,aACJ3B,MAAMC,QAAQa,YAAYd,MAAMC,MAAM,IAAIE,KAAKY,KAAKa,OAAOH,IAAI,CAAC,CAAC;IACnE,MAAMI,QAAQf,4BAAY,IAAIX,KAAK,GAAG,IAAIA,KAAKY,KAAKa,OAAOH,IAAI,CAAC,CAAC;IACjE,MAAMK,aAAaX,YAAY,IAAIhB,KAAKY,KAAKa,OAAOH,IAAI,CAAC,CAAC;IAC1D,MAAMM,IAAI;KACRC,OAAO,CACL,iBACA;MACE,0BAA0BL;MAC1B,yBAAyBE;MACzB,0BAA0BC;KAC5B,CAAC;KAEHG,eAAe;MACb,IAAIH,YACF;MAGFlB,KAAK,gBAAgBQ,IADPjB,KAAKY,KAAKa,OAAOH,IAAI,CACdL,CAAC;KACxB;IACF;IACAI,GAAGU,KAAIzC,YAAA,OACIsC,GAAC,CACPF,QACG,CAAApC,YAAA,QAAA,MAAA,CAAQiC,CAAC,CAAA,GAAAjC,YAAA,QAAA,EAAA,SAAA,oBAAA,GAAA,IAAA,CAAA,IACTiC,CAAC,CAAA,CAET;GACF;GACA,OAAAjC,YAAA,OAAA,EAAA,SAAA,WAAA,GAAA,CAA8B+B,EAAE,CAAA;EAClC;EACA,OAAOD;CACT;AACF,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
import { TQuickKey } from '../../use/useDate';
|
|
3
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
4
|
+
quickKey: PropType<TQuickKey>;
|
|
5
|
+
start: StringConstructor;
|
|
6
|
+
end: StringConstructor;
|
|
7
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
8
|
+
change: (obj: {
|
|
9
|
+
key: TQuickKey;
|
|
10
|
+
start: string;
|
|
11
|
+
end: string;
|
|
12
|
+
}) => true;
|
|
13
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
14
|
+
quickKey: PropType<TQuickKey>;
|
|
15
|
+
start: StringConstructor;
|
|
16
|
+
end: StringConstructor;
|
|
17
|
+
}>> & Readonly<{
|
|
18
|
+
onChange?: (obj: {
|
|
19
|
+
key: TQuickKey;
|
|
20
|
+
start: string;
|
|
21
|
+
end: string;
|
|
22
|
+
}) => any;
|
|
23
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
24
|
+
export default _default;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { useUII18n } from "../../use/useUII18n.js";
|
|
2
|
+
import { getRangeDate, quickList } from "../../use/useDate.js";
|
|
3
|
+
import { getQuickDateText, isQuickRangeActive } from "./_use/quickDate.js";
|
|
4
|
+
import { createVNode, defineComponent } from "vue";
|
|
5
|
+
//#region components/date/QuickDate.tsx
|
|
6
|
+
var quickKeys = Object.keys(quickList);
|
|
7
|
+
var QuickDate_default = /* @__PURE__ */ defineComponent({
|
|
8
|
+
name: "QuickDate",
|
|
9
|
+
props: {
|
|
10
|
+
quickKey: String,
|
|
11
|
+
start: String,
|
|
12
|
+
end: String
|
|
13
|
+
},
|
|
14
|
+
emits: { change: (obj) => true },
|
|
15
|
+
setup(props, { emit }) {
|
|
16
|
+
const rangeList = [];
|
|
17
|
+
quickKeys.forEach((k) => {
|
|
18
|
+
rangeList.push({
|
|
19
|
+
k,
|
|
20
|
+
range: getRangeDate(k)
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
const { t } = useUII18n();
|
|
24
|
+
function isActive(k) {
|
|
25
|
+
return props.quickKey === k && isQuickRangeActive(props.quickKey, props.start, props.end);
|
|
26
|
+
}
|
|
27
|
+
function onChange(k, range) {
|
|
28
|
+
emit("change", {
|
|
29
|
+
key: k,
|
|
30
|
+
start: range[0],
|
|
31
|
+
end: range[1]
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return () => {
|
|
35
|
+
return createVNode("div", { "class": "w-date-quick" }, [rangeList.map(({ k, range }) => {
|
|
36
|
+
return createVNode("span", {
|
|
37
|
+
"class": ["w-date-quick-item", isActive(k) ? "w-date-quick-item-active" : ""],
|
|
38
|
+
"key": k,
|
|
39
|
+
"onClick": () => onChange(k, range)
|
|
40
|
+
}, [getQuickDateText(k, t)]);
|
|
41
|
+
})]);
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
//#endregion
|
|
46
|
+
export { QuickDate_default as default };
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=QuickDate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuickDate.js","names":["defineComponent","createVNode","_createVNode","getRangeDate","quickList","useUII18n","getQuickDateText","isQuickRangeActive","quickKeys","Object","keys","name","props","quickKey","String","start","end","emits","change","obj","setup","emit","rangeList","forEach","k","push","range","t","isActive","onChange","key","map","onClick"],"sources":["../../../components/date/QuickDate.tsx"],"sourcesContent":["import { defineComponent } from 'vue'\r\nimport type { PropType } from 'vue'\r\nimport { getRangeDate, quickList } from '../../use/useDate'\r\nimport type { TQuickKey } from '../../use/useDate'\r\nimport { useUII18n } from '../../use/useUII18n'\r\nimport { getQuickDateText, isQuickRangeActive } from './_use/quickDate'\r\n\r\nconst quickKeys = Object.keys(quickList) as TQuickKey[]\r\nexport default defineComponent({\r\n name: 'QuickDate',\r\n props: {\r\n quickKey: String as PropType<TQuickKey>,\r\n start: String,\r\n end: String,\r\n },\r\n emits: {\r\n change: (obj: { key: TQuickKey; start: string; end: string }) => true,\r\n },\r\n setup(props, { emit }) {\r\n const rangeList: { k: TQuickKey; range: [string, string] }[] = []\r\n quickKeys.forEach((k) => {\r\n rangeList.push({ k, range: getRangeDate(k) })\r\n })\r\n const { t } = useUII18n()\r\n\r\n function isActive(k: TQuickKey) {\r\n return (\r\n props.quickKey === k &&\r\n isQuickRangeActive(props.quickKey, props.start, props.end)\r\n )\r\n }\r\n\r\n function onChange(k: TQuickKey, range: [string, string]) {\r\n emit('change', { key: k, start: range[0], end: range[1] })\r\n }\r\n\r\n return () => {\r\n return (\r\n <div class=\"w-date-quick\">\r\n {rangeList.map(({ k, range }) => {\r\n return (\r\n <span\r\n class={[\r\n 'w-date-quick-item',\r\n isActive(k) ? 'w-date-quick-item-active' : '',\r\n ]}\r\n key={k}\r\n onClick={() => onChange(k, range)}>\r\n {getQuickDateText(k, t)}\r\n </span>\r\n )\r\n })}\r\n </div>\r\n )\r\n }\r\n },\r\n})\r\n"],"mappings":";;;;;AAOA,IAAMQ,YAAYC,OAAOC,KAAKN,SAAS;AACvC,IAAA,oBAAeJ,gCAAgB;CAC7BW,MAAM;CACNC,OAAO;EACLC,UAAUC;EACVC,OAAOD;EACPE,KAAKF;CACP;CACAG,OAAO,EACLC,SAASC,QAAwD,KACnE;CACAC,MAAMR,OAAO,EAAES,QAAQ;EACrB,MAAMC,YAAyD,CAAA;EAC/Dd,UAAUe,SAASC,MAAM;GACvBF,UAAUG,KAAK;IAAED;IAAGE,OAAOvB,aAAaqB,CAAC;GAAE,CAAC;EAC9C,CAAC;EACD,MAAM,EAAEG,MAAMtB,UAAU;EAExB,SAASuB,SAASJ,GAAc;GAC9B,OACEZ,MAAMC,aAAaW,KACnBjB,mBAAmBK,MAAMC,UAAUD,MAAMG,OAAOH,MAAMI,GAAG;EAE7D;EAEA,SAASa,SAASL,GAAcE,OAAyB;GACvDL,KAAK,UAAU;IAAES,KAAKN;IAAGT,OAAOW,MAAM;IAAIV,KAAKU,MAAM;GAAG,CAAC;EAC3D;EAEA,aAAa;GACX,OAAAxB,YAAA,OAAA,EAAA,SAAA,eAAA,GAAA,CAEKoB,UAAUS,KAAK,EAAEP,GAAGE,YAAY;IAC/B,OAAAxB,YAAA,QAAA;KAAA,SAEW,CACL,qBACA0B,SAASJ,CAAC,IAAI,6BAA6B,EAAE;KAC9C,OACIA;KAAC,iBACSK,SAASL,GAAGE,KAAK;IAAC,GAAA,CAChCpB,iBAAiBkB,GAAGG,CAAC,CAAC,CAAA;GAG7B,CAAC,CAAC,CAAA;EAGR;CACF;AACF,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
2
|
+
date: {
|
|
3
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
4
|
+
};
|
|
5
|
+
displayDate: {
|
|
6
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
7
|
+
};
|
|
8
|
+
from: NumberConstructor;
|
|
9
|
+
to: NumberConstructor;
|
|
10
|
+
max: {
|
|
11
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
12
|
+
};
|
|
13
|
+
min: {
|
|
14
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
15
|
+
};
|
|
16
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
17
|
+
"toggle-year": (year: number) => boolean;
|
|
18
|
+
"get-from-to": (from: number, to: number) => true;
|
|
19
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
20
|
+
date: {
|
|
21
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
22
|
+
};
|
|
23
|
+
displayDate: {
|
|
24
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
25
|
+
};
|
|
26
|
+
from: NumberConstructor;
|
|
27
|
+
to: NumberConstructor;
|
|
28
|
+
max: {
|
|
29
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
30
|
+
};
|
|
31
|
+
min: {
|
|
32
|
+
type: (NumberConstructor | StringConstructor | DateConstructor)[];
|
|
33
|
+
};
|
|
34
|
+
}>> & Readonly<{
|
|
35
|
+
"onToggle-year"?: (year: number) => any;
|
|
36
|
+
"onGet-from-to"?: (from: number, to: number) => any;
|
|
37
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
38
|
+
export default _default;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { useUII18n } from "../../use/useUII18n.js";
|
|
2
|
+
import useDate from "../../use/useDate.js";
|
|
3
|
+
import { computed, createVNode, defineComponent } from "vue";
|
|
4
|
+
//#region components/date/Years.tsx
|
|
5
|
+
var Years_default = /* @__PURE__ */ defineComponent({
|
|
6
|
+
props: {
|
|
7
|
+
date: { type: [
|
|
8
|
+
Number,
|
|
9
|
+
Date,
|
|
10
|
+
String
|
|
11
|
+
] },
|
|
12
|
+
displayDate: { type: [
|
|
13
|
+
Number,
|
|
14
|
+
Date,
|
|
15
|
+
String
|
|
16
|
+
] },
|
|
17
|
+
from: Number,
|
|
18
|
+
to: Number,
|
|
19
|
+
max: { type: [
|
|
20
|
+
Number,
|
|
21
|
+
Date,
|
|
22
|
+
String
|
|
23
|
+
] },
|
|
24
|
+
min: { type: [
|
|
25
|
+
Number,
|
|
26
|
+
Date,
|
|
27
|
+
String
|
|
28
|
+
] }
|
|
29
|
+
},
|
|
30
|
+
emits: {
|
|
31
|
+
"toggle-year": (year) => {
|
|
32
|
+
return year >= 1700;
|
|
33
|
+
},
|
|
34
|
+
"get-from-to": (from, to) => {
|
|
35
|
+
if (from || to) return true;
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
setup(props, { emit, slots }) {
|
|
39
|
+
const { isMinYearThanDate, isMaxYearThanDate, getYearsInPanel, yearPanelLength } = useDate(computed(() => props.displayDate));
|
|
40
|
+
const { year: selectedYear } = useDate(computed(() => props.date));
|
|
41
|
+
const { t } = useUII18n();
|
|
42
|
+
const list = computed(() => {
|
|
43
|
+
if (props.from && props.to) return Array.from({ length: yearPanelLength }, (item, index) => index + props.from);
|
|
44
|
+
return [];
|
|
45
|
+
});
|
|
46
|
+
function compareDate(d) {
|
|
47
|
+
const min = props.min, max = props.max;
|
|
48
|
+
if (min || max) {
|
|
49
|
+
let isMin = false, isMax = false;
|
|
50
|
+
if (min) isMin = isMinYearThanDate(d, min);
|
|
51
|
+
if (max) isMax = isMaxYearThanDate(d, max);
|
|
52
|
+
return isMin || isMax;
|
|
53
|
+
}
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
function renderYearList() {
|
|
57
|
+
const { years: yearList, from, to } = getYearsInPanel();
|
|
58
|
+
emit("get-from-to", props.from || from, props.to || to);
|
|
59
|
+
let ms = [];
|
|
60
|
+
for (const v of list.value.length ? list.value : yearList) {
|
|
61
|
+
const isCur = (/* @__PURE__ */ new Date()).getFullYear() === v;
|
|
62
|
+
const isSelected = props.date === void 0 ? false : selectedYear.value === v;
|
|
63
|
+
const isDisabled = compareDate(new Date(v, 0));
|
|
64
|
+
const p = {
|
|
65
|
+
class: ["w-months-item", {
|
|
66
|
+
"w-months-item-current": isCur,
|
|
67
|
+
"w-months-item-selected": isSelected,
|
|
68
|
+
"w-months-item-disabled": isDisabled
|
|
69
|
+
}],
|
|
70
|
+
onClick: () => {
|
|
71
|
+
if (isDisabled) return;
|
|
72
|
+
emit("toggle-year", v);
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
ms.push(createVNode("div", p, [isCur ? [createVNode("span", null, [v]), createVNode("span", { "class": "w-months-item-cur" }, null)] : v]));
|
|
76
|
+
}
|
|
77
|
+
return createVNode("div", { "class": "w-months" }, [ms]);
|
|
78
|
+
}
|
|
79
|
+
return renderYearList;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
//#endregion
|
|
83
|
+
export { Years_default as default };
|
|
84
|
+
|
|
85
|
+
//# sourceMappingURL=Years.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Years.js","names":["defineComponent","computed","createVNode","_createVNode","useDate","useUII18n","props","date","type","Number","Date","String","displayDate","from","to","max","min","emits","year","get-from-to","setup","emit","slots","isMinYearThanDate","isMaxYearThanDate","getYearsInPanel","yearPanelLength","selectedYear","t","list","a","Array","length","item","index","compareDate","d","isMin","isMax","renderYearList","years","yearList","ms","v","value","isCur","getFullYear","isSelected","undefined","isDisabled","p","class","onClick","push"],"sources":["../../../components/date/Years.tsx"],"sourcesContent":["import type { VNode } from \"vue\"\r\nimport { defineComponent, computed } from \"vue\"\r\nimport useDate from \"../../use/useDate\"\r\nimport { useUII18n } from \"../../use/useUII18n\"\r\n\r\nexport default defineComponent({\r\n props: {\r\n //传入的当前日期\r\n date: { type: [Number, Date, String] },\r\n //displayDate是展示的日期\r\n displayDate: { type: [Number, Date, String] },\r\n //from和to有值的时候,date和displayDate不要有值。\r\n from: Number,\r\n to: Number,\r\n //最大日期最小日期\r\n max: { type: [Number, Date, String] },\r\n min: { type: [Number, Date, String] },\r\n },\r\n emits: {\r\n \"toggle-year\": (year: number) => {\r\n return year >= 1700\r\n },\r\n \"get-from-to\": (from: number, to: number) => {\r\n if (from || to) {\r\n return true\r\n }\r\n },\r\n },\r\n setup(props, { emit, slots }) {\r\n const {\r\n isMinYearThanDate,\r\n isMaxYearThanDate,\r\n getYearsInPanel,\r\n yearPanelLength,\r\n } = useDate(computed(() => props.displayDate))\r\n const { year: selectedYear } = useDate(computed(() => props.date))\r\n const { t } = useUII18n()\r\n\r\n const list = computed(() => {\r\n if (props.from && props.to) {\r\n const a = Array.from(\r\n { length: yearPanelLength },\r\n (item, index) => index + props.from!\r\n )\r\n return a\r\n }\r\n return []\r\n })\r\n\r\n function compareDate(d: Date) {\r\n const min = props.min,\r\n max = props.max\r\n if (min || max) {\r\n let isMin = false,\r\n isMax = false\r\n if (min) {\r\n isMin = isMinYearThanDate(d, min)\r\n }\r\n if (max) {\r\n isMax = isMaxYearThanDate(d, max)\r\n }\r\n return isMin || isMax\r\n }\r\n return false\r\n }\r\n\r\n function renderYearList() {\r\n const { years: yearList, from, to } = getYearsInPanel()\r\n emit(\"get-from-to\", props.from || from, props.to || to)\r\n let ms: any[] = []\r\n // console.log(list.value, yearList, from, to)\r\n for (const v of list.value.length ? list.value : yearList) {\r\n const isCur = new Date().getFullYear() === v\r\n const isSelected =\r\n props.date === undefined ? false : selectedYear.value === v\r\n const isDisabled = compareDate(new Date(v, 0))\r\n const p = {\r\n class: [\r\n \"w-months-item\",\r\n {\r\n \"w-months-item-current\": isCur,\r\n \"w-months-item-selected\": isSelected,\r\n \"w-months-item-disabled\": isDisabled,\r\n },\r\n ],\r\n onClick: () => {\r\n if (isDisabled) {\r\n return\r\n }\r\n emit(\"toggle-year\", v)\r\n },\r\n }\r\n ms.push(\r\n <div {...p}>\r\n {isCur\r\n ? [<span>{v}</span>, <span class=\"w-months-item-cur\"></span>]\r\n : v}\r\n </div>\r\n )\r\n }\r\n return <div class=\"w-months\">{ms}</div>\r\n }\r\n return renderYearList\r\n },\r\n})\r\n"],"mappings":";;;;AAKA,IAAA,gBAAeA,gCAAgB;CAC7BM,OAAO;EAELC,MAAM,EAAEC,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;EAErCC,aAAa,EAAEJ,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;EAE5CE,MAAMJ;EACNK,IAAIL;EAEJM,KAAK,EAAEP,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;EACpCK,KAAK,EAAER,MAAM;GAACC;GAAQC;GAAMC;EAAM,EAAE;CACtC;CACAM,OAAO;EACL,gBAAgBC,SAAiB;GAC/B,OAAOA,QAAQ;EACjB;EACA,gBAAgBL,MAAcC,OAAe;GAC3C,IAAID,QAAQC,IACV,OAAO;EAEX;CACF;CACAM,MAAMd,OAAO,EAAEe,MAAMC,SAAS;EAC5B,MAAM,EACJC,mBACAC,mBACAC,iBACAC,oBACEtB,QAAQH,eAAeK,MAAMM,WAAW,CAAC;EAC7C,MAAM,EAAEM,MAAMS,iBAAiBvB,QAAQH,eAAeK,MAAMC,IAAI,CAAC;EACjE,MAAM,EAAEqB,MAAMvB,UAAU;EAExB,MAAMwB,OAAO5B,eAAe;GAC1B,IAAIK,MAAMO,QAAQP,MAAMQ,IAKtB,OAJUiB,MAAMlB,KACd,EAAEmB,QAAQN,gBAAgB,IACzBO,MAAMC,UAAUA,QAAQ5B,MAAMO,IAE1BiB;GAET,OAAO,CAAA;EACT,CAAC;EAED,SAASK,YAAYC,GAAS;GAC5B,MAAMpB,MAAMV,MAAMU,KAChBD,MAAMT,MAAMS;GACd,IAAIC,OAAOD,KAAK;IACd,IAAIsB,QAAQ,OACVC,QAAQ;IACV,IAAItB,KACFqB,QAAQd,kBAAkBa,GAAGpB,GAAG;IAElC,IAAID,KACFuB,QAAQd,kBAAkBY,GAAGrB,GAAG;IAElC,OAAOsB,SAASC;GAClB;GACA,OAAO;EACT;EAEA,SAASC,iBAAiB;GACxB,MAAM,EAAEC,OAAOC,UAAU5B,MAAMC,OAAOW,gBAAgB;GACtDJ,KAAK,eAAef,MAAMO,QAAQA,MAAMP,MAAMQ,MAAMA,EAAE;GACtD,IAAI4B,KAAY,CAAA;GAEhB,KAAK,MAAMC,KAAKd,KAAKe,MAAMZ,SAASH,KAAKe,QAAQH,UAAU;IACzD,MAAMI,yBAAQ,IAAInC,KAAK,EAAA,CAAEoC,YAAY,MAAMH;IAC3C,MAAMI,aACJzC,MAAMC,SAASyC,KAAAA,IAAY,QAAQrB,aAAaiB,UAAUD;IAC5D,MAAMM,aAAad,YAAY,IAAIzB,KAAKiC,GAAG,CAAC,CAAC;IAC7C,MAAMO,IAAI;KACRC,OAAO,CACL,iBACA;MACE,yBAAyBN;MACzB,0BAA0BE;MAC1B,0BAA0BE;KAC5B,CAAC;KAEHG,eAAe;MACb,IAAIH,YACF;MAEF5B,KAAK,eAAesB,CAAC;KACvB;IACF;IACAD,GAAGW,KAAIlD,YAAA,OACI+C,GAAC,CACPL,QACG,CAAA1C,YAAA,QAAA,MAAA,CAAQwC,CAAC,CAAA,GAAAxC,YAAA,QAAA,EAAA,SAAA,oBAAA,GAAA,IAAA,CAAA,IACTwC,CAAC,CAAA,CAET;GACF;GACA,OAAAxC,YAAA,OAAA,EAAA,SAAA,WAAA,GAAA,CAA8BuC,EAAE,CAAA;EAClC;EACA,OAAOH;CACT;AACF,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { TQuickKey } from '../../../use/useDate';
|
|
2
|
+
export declare function getQuickDateText(key: TQuickKey | undefined, t: (path: string) => string): string | undefined;
|
|
3
|
+
/** quickKey 仍与当前起止区间匹配时视为快捷选中有效 */
|
|
4
|
+
export declare function isQuickRangeActive(quickKey: TQuickKey | undefined, start: string | number | Date | undefined, end: string | number | Date | undefined): boolean;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { getRangeDate } from "../../../use/useDate.js";
|
|
2
|
+
import { isSameDay } from "date-fns";
|
|
3
|
+
//#region components/date/_use/quickDate.ts
|
|
4
|
+
/** i18n 文案 key 映射(与 locales date.quickDates 对应) */
|
|
5
|
+
var QUICK_I18N_KEY = {
|
|
6
|
+
Today: "date.quickDates.today",
|
|
7
|
+
Yesterday: "date.quickDates.yesterday",
|
|
8
|
+
Recent3Day: "date.quickDates.recent3Days",
|
|
9
|
+
Recent7Day: "date.quickDates.recent7Days",
|
|
10
|
+
ThisWeek: "date.quickDates.thisWeek",
|
|
11
|
+
PreWeek: "date.quickDates.lastWeek",
|
|
12
|
+
ThisMonth: "date.quickDates.thisMonth",
|
|
13
|
+
PreMonth: "date.quickDates.lastMonth",
|
|
14
|
+
ThisYear: "date.quickDates.thisYear"
|
|
15
|
+
};
|
|
16
|
+
function getQuickDateText(key, t) {
|
|
17
|
+
if (!key) return void 0;
|
|
18
|
+
const path = QUICK_I18N_KEY[key];
|
|
19
|
+
return path ? t(path) : key;
|
|
20
|
+
}
|
|
21
|
+
/** quickKey 仍与当前起止区间匹配时视为快捷选中有效 */
|
|
22
|
+
function isQuickRangeActive(quickKey, start, end) {
|
|
23
|
+
if (!quickKey || start == null || end == null || start === "" || end === "") return false;
|
|
24
|
+
const [qs, qe] = getRangeDate(quickKey);
|
|
25
|
+
return isSameDay(start, qs) && isSameDay(end, qe);
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { getQuickDateText, isQuickRangeActive };
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=quickDate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quickDate.js","names":[],"sources":["../../../../components/date/_use/quickDate.ts"],"sourcesContent":["import { isSameDay } from 'date-fns'\r\nimport { getRangeDate, type TQuickKey } from '../../../use/useDate'\r\n\r\n/** i18n 文案 key 映射(与 locales date.quickDates 对应) */\r\nconst QUICK_I18N_KEY: Record<TQuickKey, string> = {\r\n Today: 'date.quickDates.today',\r\n Yesterday: 'date.quickDates.yesterday',\r\n Recent3Day: 'date.quickDates.recent3Days',\r\n Recent7Day: 'date.quickDates.recent7Days',\r\n ThisWeek: 'date.quickDates.thisWeek',\r\n PreWeek: 'date.quickDates.lastWeek',\r\n ThisMonth: 'date.quickDates.thisMonth',\r\n PreMonth: 'date.quickDates.lastMonth',\r\n ThisYear: 'date.quickDates.thisYear',\r\n}\r\n\r\nexport function getQuickDateText(\r\n key: TQuickKey | undefined,\r\n t: (path: string) => string,\r\n): string | undefined {\r\n if (!key) return undefined\r\n const path = QUICK_I18N_KEY[key]\r\n return path ? t(path) : key\r\n}\r\n\r\n/** quickKey 仍与当前起止区间匹配时视为快捷选中有效 */\r\nexport function isQuickRangeActive(\r\n quickKey: TQuickKey | undefined,\r\n start: string | number | Date | undefined,\r\n end: string | number | Date | undefined,\r\n): boolean {\r\n if (!quickKey || start == null || end == null || start === '' || end === '') {\r\n return false\r\n }\r\n const [qs, qe] = getRangeDate(quickKey)\r\n return isSameDay(start as any, qs) && isSameDay(end as any, qe)\r\n}\r\n"],"mappings":";;;;AAIA,IAAM,iBAA4C;CAChD,OAAO;CACP,WAAW;CACX,YAAY;CACZ,YAAY;CACZ,UAAU;CACV,SAAS;CACT,WAAW;CACX,UAAU;CACV,UAAU;AACZ;AAEA,SAAgB,iBACd,KACA,GACoB;CACpB,IAAI,CAAC,KAAK,OAAO,KAAA;CACjB,MAAM,OAAO,eAAe;CAC5B,OAAO,OAAO,EAAE,IAAI,IAAI;AAC1B;;AAGA,SAAgB,mBACd,UACA,OACA,KACS;CACT,IAAI,CAAC,YAAY,SAAS,QAAQ,OAAO,QAAQ,UAAU,MAAM,QAAQ,IACvE,OAAO;CAET,MAAM,CAAC,IAAI,MAAM,aAAa,QAAQ;CACtC,OAAO,UAAU,OAAc,EAAE,KAAK,UAAU,KAAY,EAAE;AAChE"}
|