@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,288 @@
|
|
|
1
|
+
import useComponentConfig from "../../../use/useComponentConfig.js";
|
|
2
|
+
import Icon_default from "../../icon/Icon.js";
|
|
3
|
+
import { effectiveSizeVar, propColorToCssVars, propSizeToCssVars, toCssVarsStyle } from "../../../util/cssVars.js";
|
|
4
|
+
import Btn from "../../btn/Btn.js";
|
|
5
|
+
import Tooltip_default from "../../tooltip/Tooltip.js";
|
|
6
|
+
import { useUII18n } from "../../../use/useUII18n.js";
|
|
7
|
+
import ChooseItem_default from "../../chooseItem/ChooseItem.js";
|
|
8
|
+
import Choose_default from "../../choose/Choose.js";
|
|
9
|
+
import Number_default from "../../number/Number.js";
|
|
10
|
+
import { PAGINATION_FALLBACK } from "./config.js";
|
|
11
|
+
import { computed, createVNode, defineComponent, isVNode, nextTick, ref, watch } from "vue";
|
|
12
|
+
//#region components/pagination/src/Pagination.tsx
|
|
13
|
+
function _isSlot(s) {
|
|
14
|
+
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
15
|
+
}
|
|
16
|
+
var ELLIPSIS = "...";
|
|
17
|
+
var Pagination_default = /* @__PURE__ */ defineComponent({
|
|
18
|
+
name: "Pagination",
|
|
19
|
+
components: {
|
|
20
|
+
Choose: Choose_default,
|
|
21
|
+
Btn,
|
|
22
|
+
Tooltip: Tooltip_default,
|
|
23
|
+
Num: Number_default,
|
|
24
|
+
ChooseItem: ChooseItem_default,
|
|
25
|
+
Icon: Icon_default
|
|
26
|
+
},
|
|
27
|
+
props: {
|
|
28
|
+
total: {
|
|
29
|
+
type: Number,
|
|
30
|
+
default: 0
|
|
31
|
+
},
|
|
32
|
+
pageIndex: {
|
|
33
|
+
type: Number,
|
|
34
|
+
default: 1
|
|
35
|
+
},
|
|
36
|
+
pageSize: {
|
|
37
|
+
type: Number,
|
|
38
|
+
default: 20
|
|
39
|
+
},
|
|
40
|
+
sizes: {
|
|
41
|
+
type: Array,
|
|
42
|
+
default: void 0
|
|
43
|
+
},
|
|
44
|
+
align: {
|
|
45
|
+
type: String,
|
|
46
|
+
default: void 0
|
|
47
|
+
},
|
|
48
|
+
bordered: {
|
|
49
|
+
type: Boolean,
|
|
50
|
+
default: void 0
|
|
51
|
+
},
|
|
52
|
+
layout: {
|
|
53
|
+
type: String,
|
|
54
|
+
default: void 0
|
|
55
|
+
},
|
|
56
|
+
hideWhenNoData: {
|
|
57
|
+
type: Boolean,
|
|
58
|
+
default: void 0
|
|
59
|
+
},
|
|
60
|
+
/** 控件视觉高度(px),写入 `--w-prop-pagination-item-size` */
|
|
61
|
+
size: {
|
|
62
|
+
type: Number,
|
|
63
|
+
default: void 0
|
|
64
|
+
},
|
|
65
|
+
/** 品牌主色 → `--w-prop-pagination-color` */
|
|
66
|
+
color: {
|
|
67
|
+
type: String,
|
|
68
|
+
default: void 0
|
|
69
|
+
},
|
|
70
|
+
/** 实例 CSS 变量(如 `--w-prop-pagination-bg-color`) */
|
|
71
|
+
cssVars: {
|
|
72
|
+
type: Object,
|
|
73
|
+
default: void 0
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
emits: {
|
|
77
|
+
"update:pageIndex": (_page) => true,
|
|
78
|
+
"update:pageSize": (_size) => true,
|
|
79
|
+
changePageIndex: (_page) => true,
|
|
80
|
+
changePageSize: (_size) => true
|
|
81
|
+
},
|
|
82
|
+
setup(props, { emit }) {
|
|
83
|
+
const { t } = useUII18n();
|
|
84
|
+
const cfg = useComponentConfig("Pagination", props, PAGINATION_FALLBACK);
|
|
85
|
+
const outsize = 10;
|
|
86
|
+
const max = 5;
|
|
87
|
+
const max2 = 7;
|
|
88
|
+
const pi = ref(props.pageIndex);
|
|
89
|
+
const ps = ref(props.pageSize);
|
|
90
|
+
const jumpPage = ref();
|
|
91
|
+
const layoutParts = computed(() => (cfg.value.layout || "").toLocaleLowerCase().split(",").map((s) => s.trim()).filter(Boolean));
|
|
92
|
+
const totalPages = computed(() => {
|
|
93
|
+
if (!props.total || !ps.value) return 0;
|
|
94
|
+
return Math.ceil(props.total / ps.value);
|
|
95
|
+
});
|
|
96
|
+
const pagers = computed(() => {
|
|
97
|
+
const tPages = totalPages.value;
|
|
98
|
+
const p = pi.value;
|
|
99
|
+
if (tPages <= 0) return [];
|
|
100
|
+
if (tPages <= outsize) return Array.from({ length: tPages }, (_, i) => i + 1);
|
|
101
|
+
const arr = [];
|
|
102
|
+
if (tPages - p >= max && p > max) {
|
|
103
|
+
for (let i = p - 2; i <= p + 2; i++) arr.push(i);
|
|
104
|
+
arr.push(ELLIPSIS, tPages);
|
|
105
|
+
arr.unshift(1, ELLIPSIS);
|
|
106
|
+
} else if (p <= max) {
|
|
107
|
+
for (let i = 1; i <= max2; i++) arr.push(i);
|
|
108
|
+
arr.push(ELLIPSIS, tPages);
|
|
109
|
+
} else if (tPages - p < max) {
|
|
110
|
+
for (let i = tPages; i > tPages - max2; i--) arr.unshift(i);
|
|
111
|
+
arr.unshift(1, ELLIPSIS);
|
|
112
|
+
}
|
|
113
|
+
return arr;
|
|
114
|
+
});
|
|
115
|
+
watch(() => [props.pageIndex, props.pageSize], ([i, s]) => {
|
|
116
|
+
pi.value = i;
|
|
117
|
+
ps.value = s;
|
|
118
|
+
});
|
|
119
|
+
function emitPageChange() {
|
|
120
|
+
emit("update:pageIndex", pi.value);
|
|
121
|
+
emit("changePageIndex", pi.value);
|
|
122
|
+
}
|
|
123
|
+
function emitSizeChange(size) {
|
|
124
|
+
emit("update:pageSize", size);
|
|
125
|
+
emit("changePageSize", size);
|
|
126
|
+
}
|
|
127
|
+
function toJump() {
|
|
128
|
+
const p = Number(jumpPage.value);
|
|
129
|
+
if (isNaN(p) || p < 1 || p > totalPages.value) return;
|
|
130
|
+
if (p !== pi.value) {
|
|
131
|
+
pi.value = p;
|
|
132
|
+
emitPageChange();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
function toNext() {
|
|
136
|
+
if (pi.value < totalPages.value) {
|
|
137
|
+
pi.value += 1;
|
|
138
|
+
emitPageChange();
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
function toPrev() {
|
|
142
|
+
if (pi.value > 1) {
|
|
143
|
+
pi.value -= 1;
|
|
144
|
+
emitPageChange();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
function goPage(page) {
|
|
148
|
+
if (page === pi.value) return;
|
|
149
|
+
pi.value = page;
|
|
150
|
+
nextTick(emitPageChange);
|
|
151
|
+
}
|
|
152
|
+
function onSizeChange(size) {
|
|
153
|
+
ps.value = size;
|
|
154
|
+
pi.value = 1;
|
|
155
|
+
emitSizeChange(size);
|
|
156
|
+
emitPageChange();
|
|
157
|
+
}
|
|
158
|
+
function showItem(item) {
|
|
159
|
+
return layoutParts.value.includes(item);
|
|
160
|
+
}
|
|
161
|
+
function setOrder(item) {
|
|
162
|
+
return layoutParts.value.indexOf(item);
|
|
163
|
+
}
|
|
164
|
+
const itemSize = computed(() => cfg.value.size);
|
|
165
|
+
/** Tooltip portal 脱离树,需把有效尺度写进 layerStyle */
|
|
166
|
+
const tooltipLayerStyle = computed(() => toCssVarsStyle({
|
|
167
|
+
...propSizeToCssVars("pagination-item", itemSize.value),
|
|
168
|
+
"--w-prop-tooltip-size": effectiveSizeVar("pagination-item")
|
|
169
|
+
}));
|
|
170
|
+
function renderNav(type, disabled, onClick) {
|
|
171
|
+
const tip = type === "prev" ? t("pagination.prevPage") : t("pagination.nextPage");
|
|
172
|
+
return createVNode("li", {
|
|
173
|
+
"class": ["w-pagination-nav", type === "prev" ? "w-pagination-prev" : "w-pagination-next"],
|
|
174
|
+
"style": { order: setOrder(type) }
|
|
175
|
+
}, [createVNode(Tooltip_default, {
|
|
176
|
+
"placement": "top",
|
|
177
|
+
"layerStyle": tooltipLayerStyle.value
|
|
178
|
+
}, {
|
|
179
|
+
trigger: () => createVNode("button", {
|
|
180
|
+
"type": "button",
|
|
181
|
+
"class": ["w-pagination-item", { "w-pagination-item--disabled": disabled }],
|
|
182
|
+
"disabled": disabled,
|
|
183
|
+
"aria-label": tip,
|
|
184
|
+
"onClick": onClick
|
|
185
|
+
}, [createVNode(Icon_default, {
|
|
186
|
+
"name": "w-icon-arrow-down",
|
|
187
|
+
"rotate": true,
|
|
188
|
+
"direction": "z",
|
|
189
|
+
"deg": type === "prev" ? 90 : -90
|
|
190
|
+
}, null)]),
|
|
191
|
+
default: () => tip
|
|
192
|
+
})]);
|
|
193
|
+
}
|
|
194
|
+
return () => {
|
|
195
|
+
if (props.total === 0 && cfg.value.hideWhenNoData) return null;
|
|
196
|
+
const sizeOptions = cfg.value.sizes?.length ? cfg.value.sizes : PAGINATION_FALLBACK.sizes;
|
|
197
|
+
const chooseSlots = { default: () => sizeOptions.map((s) => {
|
|
198
|
+
const label = t("pagination.itemsPerPage", { size: s });
|
|
199
|
+
return createVNode(ChooseItem_default, {
|
|
200
|
+
"key": s,
|
|
201
|
+
"label": label,
|
|
202
|
+
"value": s
|
|
203
|
+
}, _isSlot(label) ? label : { default: () => [label] });
|
|
204
|
+
}) };
|
|
205
|
+
const pageButtons = pagers.value.map((p, i) => {
|
|
206
|
+
const isEllipsis = p === ELLIPSIS;
|
|
207
|
+
return createVNode("button", {
|
|
208
|
+
"key": `${p}-${i}`,
|
|
209
|
+
"type": "button",
|
|
210
|
+
"class": ["w-pagination-item", {
|
|
211
|
+
"w-pagination-item--ellipsis": isEllipsis,
|
|
212
|
+
"w-pagination-item--disabled": isEllipsis,
|
|
213
|
+
"w-pagination-item--active": p === pi.value
|
|
214
|
+
}],
|
|
215
|
+
"disabled": isEllipsis,
|
|
216
|
+
"aria-current": p === pi.value ? "page" : void 0,
|
|
217
|
+
"onClick": () => {
|
|
218
|
+
if (!isEllipsis && typeof p === "number") goPage(p);
|
|
219
|
+
}
|
|
220
|
+
}, [p]);
|
|
221
|
+
});
|
|
222
|
+
return createVNode("ol", {
|
|
223
|
+
"class": [
|
|
224
|
+
"w-pagination",
|
|
225
|
+
`w-pagination__${cfg.value.align}`,
|
|
226
|
+
{ "w-pagination--bordered": cfg.value.bordered }
|
|
227
|
+
],
|
|
228
|
+
"style": toCssVarsStyle({
|
|
229
|
+
...propSizeToCssVars("pagination-item", itemSize.value),
|
|
230
|
+
...propColorToCssVars("pagination", cfg.value.color),
|
|
231
|
+
...props.cssVars
|
|
232
|
+
})
|
|
233
|
+
}, [
|
|
234
|
+
showItem("total") && createVNode("li", {
|
|
235
|
+
"class": "w-pagination-total",
|
|
236
|
+
"style": { order: setOrder("total") }
|
|
237
|
+
}, [t("pagination.totalItems", { total: props.total })]),
|
|
238
|
+
showItem("prev") && renderNav("prev", pi.value <= 1, toPrev),
|
|
239
|
+
showItem("pager") && createVNode("li", {
|
|
240
|
+
"class": "w-pagination-pager",
|
|
241
|
+
"style": { order: setOrder("pager") }
|
|
242
|
+
}, [pageButtons]),
|
|
243
|
+
showItem("next") && renderNav("next", totalPages.value === 0 || pi.value >= totalPages.value, toNext),
|
|
244
|
+
showItem("sizes") && createVNode("li", {
|
|
245
|
+
"class": "w-pagination-sizes",
|
|
246
|
+
"style": { order: setOrder("sizes") }
|
|
247
|
+
}, [createVNode(Choose_default, {
|
|
248
|
+
modelValue: ps.value,
|
|
249
|
+
clearable: false,
|
|
250
|
+
size: itemSize.value,
|
|
251
|
+
mode: cfg.value.bordered ? "default" : "text",
|
|
252
|
+
adjustPosition: "top",
|
|
253
|
+
"onUpdate:modelValue": onSizeChange
|
|
254
|
+
}, chooseSlots)]),
|
|
255
|
+
showItem("jumper") && createVNode("li", {
|
|
256
|
+
"class": "w-pagination-jumper",
|
|
257
|
+
"style": { order: setOrder("jumper") }
|
|
258
|
+
}, [
|
|
259
|
+
createVNode("span", { "class": "w-pagination-jumper-label" }, [t("pagination.goTo")]),
|
|
260
|
+
createVNode(Number_default, {
|
|
261
|
+
min: 1,
|
|
262
|
+
max: totalPages.value || void 0,
|
|
263
|
+
modelValue: jumpPage.value,
|
|
264
|
+
size: itemSize.value,
|
|
265
|
+
"onUpdate:modelValue": (p) => {
|
|
266
|
+
if (p !== void 0 && p !== "") jumpPage.value = Number(p);
|
|
267
|
+
else jumpPage.value = void 0;
|
|
268
|
+
},
|
|
269
|
+
onKeyup: (e) => {
|
|
270
|
+
if (e.key.toLowerCase() === "enter") toJump();
|
|
271
|
+
}
|
|
272
|
+
}, null),
|
|
273
|
+
createVNode("span", { "class": "w-pagination-jumper-label" }, [t("pagination.page")]),
|
|
274
|
+
createVNode(Btn, {
|
|
275
|
+
"class": "w-pagination-go",
|
|
276
|
+
"size": itemSize.value,
|
|
277
|
+
"onClick": toJump,
|
|
278
|
+
"text": t("pagination.go")
|
|
279
|
+
}, null)
|
|
280
|
+
])
|
|
281
|
+
]);
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
});
|
|
285
|
+
//#endregion
|
|
286
|
+
export { Pagination_default as default };
|
|
287
|
+
|
|
288
|
+
//# sourceMappingURL=Pagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Pagination.js","names":["computed","defineComponent","nextTick","ref","watch","createVNode","_createVNode","isVNode","_isVNode","Num","Choose","ChooseItem","Tooltip","Btn","Icon","useComponentConfig","useUII18n","propSizeToCssVars","propColorToCssVars","effectiveSizeVar","toCssVarsStyle","PAGINATION_FALLBACK","_isSlot","s","Object","prototype","toString","call","ELLIPSIS","name","components","props","total","type","Number","default","pageIndex","pageSize","sizes","Array","undefined","align","String","bordered","Boolean","layout","hideWhenNoData","size","color","cssVars","emits","_page","_size","changePageIndex","changePageSize","setup","emit","t","cfg","outsize","max","max2","pi","ps","jumpPage","layoutParts","value","toLocaleLowerCase","split","map","trim","filter","totalPages","Math","ceil","pagers","tPages","p","from","length","_","i","arr","push","unshift","emitPageChange","emitSizeChange","toJump","isNaN","toNext","toPrev","goPage","page","onSizeChange","showItem","item","includes","setOrder","indexOf","itemSize","tooltipLayerStyle","renderNav","disabled","onClick","tip","order","trigger","sizeOptions","chooseSlots","label","pageButtons","isEllipsis","modelValue","clearable","mode","adjustPosition","min","onKeyup","e","key","toLowerCase"],"sources":["../../../../components/pagination/src/Pagination.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n nextTick,\r\n ref,\r\n watch,\r\n type PropType,\r\n} from 'vue'\r\nimport Num from '../../number'\r\nimport Choose from '../../choose/index'\r\nimport ChooseItem from '../../chooseItem/index'\r\nimport Tooltip from '../../tooltip/index'\r\nimport Btn from '../../btn'\r\nimport Icon from '../../icon/Icon'\r\nimport useComponentConfig from '../../../use/useComponentConfig'\r\nimport { useUII18n } from '../../../use/useUII18n'\r\nimport {\r\n propSizeToCssVars,\r\n propColorToCssVars,\r\n effectiveSizeVar,\r\n toCssVarsStyle,\r\n type CssVars,\r\n} from '../../../util'\r\nimport { PAGINATION_FALLBACK, type PaginationAlign } from './config'\r\n\r\nexport type { PaginationAlign, PaginationGlobalConfig } from './config'\r\nexport { PAGINATION_FALLBACK } from './config'\r\n\r\nconst ELLIPSIS = '...'\r\n\r\nexport default defineComponent({\r\n name: 'Pagination',\r\n components: { Choose, Btn, Tooltip, Num, ChooseItem, Icon },\r\n props: {\r\n total: { type: Number, default: 0 },\r\n pageIndex: { type: Number, default: 1 },\r\n pageSize: { type: Number, default: 20 },\r\n sizes: {\r\n type: Array as PropType<number[]>,\r\n default: undefined,\r\n },\r\n align: {\r\n type: String as PropType<PaginationAlign>,\r\n default: undefined,\r\n },\r\n bordered: { type: Boolean, default: undefined },\r\n layout: { type: String, default: undefined },\r\n hideWhenNoData: { type: Boolean, default: undefined },\r\n /** 控件视觉高度(px),写入 `--w-prop-pagination-item-size` */\r\n size: { type: Number, default: undefined },\r\n /** 品牌主色 → `--w-prop-pagination-color` */\r\n color: { type: String, default: undefined },\r\n /** 实例 CSS 变量(如 `--w-prop-pagination-bg-color`) */\r\n cssVars: { type: Object as PropType<CssVars>, default: undefined },\r\n },\r\n emits: {\r\n 'update:pageIndex': (_page: number) => true,\r\n 'update:pageSize': (_size: number) => true,\r\n changePageIndex: (_page: number) => true,\r\n changePageSize: (_size: number) => true,\r\n },\r\n setup(props, { emit }) {\r\n const { t } = useUII18n()\r\n const cfg = useComponentConfig('Pagination', props, PAGINATION_FALLBACK)\r\n\r\n const outsize = 10\r\n const max = 5\r\n const max2 = 7\r\n const pi = ref(props.pageIndex)\r\n const ps = ref(props.pageSize)\r\n const jumpPage = ref<number>()\r\n\r\n const layoutParts = computed(() =>\r\n (cfg.value.layout || '')\r\n .toLocaleLowerCase()\r\n .split(',')\r\n .map((s) => s.trim())\r\n .filter(Boolean),\r\n )\r\n\r\n const totalPages = computed(() => {\r\n if (!props.total || !ps.value) return 0\r\n return Math.ceil(props.total / ps.value)\r\n })\r\n\r\n const pagers = computed(() => {\r\n const tPages = totalPages.value\r\n const p = pi.value\r\n if (tPages <= 0) return [] as (number | string)[]\r\n if (tPages <= outsize) {\r\n return Array.from({ length: tPages }, (_, i) => i + 1)\r\n }\r\n\r\n const arr: (number | string)[] = []\r\n if (tPages - p >= max && p > max) {\r\n for (let i = p - 2; i <= p + 2; i++) arr.push(i)\r\n arr.push(ELLIPSIS, tPages)\r\n arr.unshift(1, ELLIPSIS)\r\n } else if (p <= max) {\r\n for (let i = 1; i <= max2; i++) arr.push(i)\r\n arr.push(ELLIPSIS, tPages)\r\n } else if (tPages - p < max) {\r\n for (let i = tPages; i > tPages - max2; i--) arr.unshift(i)\r\n arr.unshift(1, ELLIPSIS)\r\n }\r\n return arr\r\n })\r\n\r\n watch(\r\n () => [props.pageIndex, props.pageSize] as const,\r\n ([i, s]) => {\r\n pi.value = i\r\n ps.value = s\r\n },\r\n )\r\n\r\n function emitPageChange() {\r\n emit('update:pageIndex', pi.value)\r\n emit('changePageIndex', pi.value)\r\n }\r\n\r\n function emitSizeChange(size: number) {\r\n emit('update:pageSize', size)\r\n emit('changePageSize', size)\r\n }\r\n\r\n function toJump() {\r\n const p = Number(jumpPage.value)\r\n if (isNaN(p) || p < 1 || p > totalPages.value) return\r\n if (p !== pi.value) {\r\n pi.value = p\r\n emitPageChange()\r\n }\r\n }\r\n\r\n function toNext() {\r\n if (pi.value < totalPages.value) {\r\n pi.value += 1\r\n emitPageChange()\r\n }\r\n }\r\n\r\n function toPrev() {\r\n if (pi.value > 1) {\r\n pi.value -= 1\r\n emitPageChange()\r\n }\r\n }\r\n\r\n function goPage(page: number) {\r\n if (page === pi.value) return\r\n pi.value = page\r\n nextTick(emitPageChange)\r\n }\r\n\r\n function onSizeChange(size: number) {\r\n ps.value = size\r\n pi.value = 1\r\n emitSizeChange(size)\r\n emitPageChange()\r\n }\r\n\r\n function showItem(item: string) {\r\n return layoutParts.value.includes(item)\r\n }\r\n\r\n function setOrder(item: string) {\r\n return layoutParts.value.indexOf(item)\r\n }\r\n\r\n const itemSize = computed(() => cfg.value.size)\r\n\r\n /** Tooltip portal 脱离树,需把有效尺度写进 layerStyle */\r\n const tooltipLayerStyle = computed(() =>\r\n toCssVarsStyle({\r\n ...propSizeToCssVars('pagination-item', itemSize.value),\r\n '--w-prop-tooltip-size': effectiveSizeVar('pagination-item'),\r\n }),\r\n )\r\n\r\n function renderNav(\r\n type: 'prev' | 'next',\r\n disabled: boolean,\r\n onClick: () => void,\r\n ) {\r\n const tip =\r\n type === 'prev' ? t('pagination.prevPage') : t('pagination.nextPage')\r\n return (\r\n <li\r\n class={[\r\n 'w-pagination-nav',\r\n type === 'prev' ? 'w-pagination-prev' : 'w-pagination-next',\r\n ]}\r\n style={{ order: setOrder(type) }}>\r\n <Tooltip\r\n placement=\"top\"\r\n layerStyle={tooltipLayerStyle.value}\r\n v-slots={{\r\n trigger: () => (\r\n <button\r\n type=\"button\"\r\n class={[\r\n 'w-pagination-item',\r\n { 'w-pagination-item--disabled': disabled },\r\n ]}\r\n disabled={disabled}\r\n aria-label={tip}\r\n onClick={onClick}>\r\n <Icon\r\n name=\"w-icon-arrow-down\"\r\n rotate\r\n direction=\"z\"\r\n deg={type === 'prev' ? 90 : -90}\r\n />\r\n </button>\r\n ),\r\n default: () => tip,\r\n }}\r\n />\r\n </li>\r\n )\r\n }\r\n\r\n return () => {\r\n if (props.total === 0 && cfg.value.hideWhenNoData) {\r\n return null\r\n }\r\n\r\n const sizeOptions = cfg.value.sizes?.length\r\n ? cfg.value.sizes\r\n : PAGINATION_FALLBACK.sizes\r\n\r\n const chooseSlots = {\r\n default: () =>\r\n sizeOptions.map((s: number) => {\r\n const label = t('pagination.itemsPerPage', { size: s })\r\n return (\r\n <ChooseItem key={s} label={label} value={s}>\r\n {label}\r\n </ChooseItem>\r\n )\r\n }),\r\n }\r\n\r\n const pageButtons = pagers.value.map((p, i) => {\r\n const isEllipsis = p === ELLIPSIS\r\n return (\r\n <button\r\n key={`${p}-${i}`}\r\n type=\"button\"\r\n class={[\r\n 'w-pagination-item',\r\n {\r\n 'w-pagination-item--ellipsis': isEllipsis,\r\n 'w-pagination-item--disabled': isEllipsis,\r\n 'w-pagination-item--active': p === pi.value,\r\n },\r\n ]}\r\n disabled={isEllipsis}\r\n aria-current={p === pi.value ? 'page' : undefined}\r\n onClick={() => {\r\n if (!isEllipsis && typeof p === 'number') goPage(p)\r\n }}>\r\n {p}\r\n </button>\r\n )\r\n })\r\n\r\n return (\r\n <ol\r\n class={[\r\n 'w-pagination',\r\n `w-pagination__${cfg.value.align}`,\r\n { 'w-pagination--bordered': cfg.value.bordered },\r\n ]}\r\n style={toCssVarsStyle({\r\n ...propSizeToCssVars('pagination-item', itemSize.value),\r\n ...propColorToCssVars('pagination', cfg.value.color),\r\n ...props.cssVars,\r\n })}>\r\n {showItem('total') && (\r\n <li class=\"w-pagination-total\" style={{ order: setOrder('total') }}>\r\n {t('pagination.totalItems', { total: props.total })}\r\n </li>\r\n )}\r\n\r\n {showItem('prev') && renderNav('prev', pi.value <= 1, toPrev)}\r\n\r\n {showItem('pager') && (\r\n <li class=\"w-pagination-pager\" style={{ order: setOrder('pager') }}>\r\n {pageButtons}\r\n </li>\r\n )}\r\n\r\n {showItem('next') &&\r\n renderNav(\r\n 'next',\r\n totalPages.value === 0 || pi.value >= totalPages.value,\r\n toNext,\r\n )}\r\n\r\n {showItem('sizes') && (\r\n <li class=\"w-pagination-sizes\" style={{ order: setOrder('sizes') }}>\r\n <Choose\r\n {...({\r\n modelValue: ps.value,\r\n clearable: false,\r\n size: itemSize.value,\r\n mode: cfg.value.bordered ? 'default' : 'text',\r\n adjustPosition: 'top',\r\n 'onUpdate:modelValue': onSizeChange,\r\n } as any)}\r\n v-slots={chooseSlots}\r\n />\r\n </li>\r\n )}\r\n\r\n {showItem('jumper') && (\r\n <li\r\n class=\"w-pagination-jumper\"\r\n style={{ order: setOrder('jumper') }}>\r\n <span class=\"w-pagination-jumper-label\">\r\n {t('pagination.goTo')}\r\n </span>\r\n <Num\r\n {...({\r\n min: 1,\r\n max: totalPages.value || undefined,\r\n modelValue: jumpPage.value,\r\n size: itemSize.value,\r\n 'onUpdate:modelValue': (p: number | string | undefined) => {\r\n if (p !== undefined && p !== '') {\r\n jumpPage.value = Number(p)\r\n } else {\r\n jumpPage.value = undefined\r\n }\r\n },\r\n onKeyup: (e: KeyboardEvent) => {\r\n if (e.key.toLowerCase() === 'enter') toJump()\r\n },\r\n } as any)}\r\n />\r\n <span class=\"w-pagination-jumper-label\">\r\n {t('pagination.page')}\r\n </span>\r\n <Btn\r\n class=\"w-pagination-go\"\r\n size={itemSize.value}\r\n onClick={toJump}\r\n text={t('pagination.go')}\r\n />\r\n </li>\r\n )}\r\n </ol>\r\n )\r\n }\r\n },\r\n})\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 可通过 `app.use(UI, { components: { Pagination: {...} } })` 配置的项。
|
|
3
|
+
* Boolean / 可全局覆盖的字段请在 props 设 `default: undefined`。
|
|
4
|
+
*
|
|
5
|
+
* 不宜全局配置:total / pageIndex / pageSize(实例数据)。
|
|
6
|
+
*/
|
|
7
|
+
export type PaginationAlign = 'left' | 'center' | 'right';
|
|
8
|
+
export type PaginationGlobalConfig = Partial<{
|
|
9
|
+
align: PaginationAlign;
|
|
10
|
+
bordered: boolean;
|
|
11
|
+
layout: string;
|
|
12
|
+
sizes: number[];
|
|
13
|
+
hideWhenNoData: boolean;
|
|
14
|
+
size: number;
|
|
15
|
+
color: string;
|
|
16
|
+
}>;
|
|
17
|
+
export declare const PAGINATION_FALLBACK: {
|
|
18
|
+
align: PaginationAlign;
|
|
19
|
+
bordered: boolean;
|
|
20
|
+
layout: string;
|
|
21
|
+
sizes: number[];
|
|
22
|
+
hideWhenNoData: boolean;
|
|
23
|
+
size: number | undefined;
|
|
24
|
+
color: string | undefined;
|
|
25
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region components/pagination/src/config.ts
|
|
2
|
+
var PAGINATION_FALLBACK = {
|
|
3
|
+
align: "right",
|
|
4
|
+
bordered: false,
|
|
5
|
+
layout: "total,prev,pager,next,sizes,jumper",
|
|
6
|
+
sizes: [
|
|
7
|
+
20,
|
|
8
|
+
50,
|
|
9
|
+
80,
|
|
10
|
+
100,
|
|
11
|
+
200
|
|
12
|
+
],
|
|
13
|
+
hideWhenNoData: true,
|
|
14
|
+
size: void 0,
|
|
15
|
+
color: void 0
|
|
16
|
+
};
|
|
17
|
+
//#endregion
|
|
18
|
+
export { PAGINATION_FALLBACK };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","names":[],"sources":["../../../../components/pagination/src/config.ts"],"sourcesContent":["/**\r\n * 可通过 `app.use(UI, { components: { Pagination: {...} } })` 配置的项。\r\n * Boolean / 可全局覆盖的字段请在 props 设 `default: undefined`。\r\n *\r\n * 不宜全局配置:total / pageIndex / pageSize(实例数据)。\r\n */\r\nexport type PaginationAlign = 'left' | 'center' | 'right'\r\n\r\nexport type PaginationGlobalConfig = Partial<{\r\n align: PaginationAlign\r\n bordered: boolean\r\n layout: string\r\n sizes: number[]\r\n hideWhenNoData: boolean\r\n size: number\r\n color: string\r\n}>\r\n\r\nexport const PAGINATION_FALLBACK = {\r\n align: 'right' as PaginationAlign,\r\n bordered: false,\r\n layout: 'total,prev,pager,next,sizes,jumper',\r\n sizes: [20, 50, 80, 100, 200] as number[],\r\n hideWhenNoData: true,\r\n size: undefined as number | undefined,\r\n color: undefined as string | undefined,\r\n}\r\n"],"mappings":";AAkBA,IAAa,sBAAsB;CACjC,OAAO;CACP,UAAU;CACV,QAAQ;CACR,OAAO;EAAC;EAAI;EAAI;EAAI;EAAK;CAAG;CAC5B,gBAAgB;CAChB,MAAM,KAAA;CACN,OAAO,KAAA;AACT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '../../../../theme/tokens/components/pagination.css';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { CssVars } from '../../util';
|
|
2
|
+
export type { PictureGlobalConfig } from './config';
|
|
3
|
+
export { PICTURE_FALLBACK, normalizePictureImages } from './config';
|
|
4
|
+
export type PictureProps = {
|
|
5
|
+
/** 图片地址:逗号分隔字符串或数组 */
|
|
6
|
+
images?: string | string[];
|
|
7
|
+
size?: number;
|
|
8
|
+
round?: boolean | string;
|
|
9
|
+
cssVars?: CssVars;
|
|
10
|
+
};
|
|
11
|
+
export type PictureJSXProps = PictureProps & Omit<JSX.IntrinsicElements['div'], keyof PictureProps | 'ref'>;
|
|
12
|
+
export type PictureComponent = {
|
|
13
|
+
new (): {
|
|
14
|
+
$props: PictureJSXProps;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
declare const _default: PictureComponent;
|
|
18
|
+
export default _default;
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
import useComponentConfig from "../../use/useComponentConfig.js";
|
|
2
|
+
import Icon_default from "../icon/Icon.js";
|
|
3
|
+
import { propSizeToCssVars, toCssVarsStyle } from "../../util/cssVars.js";
|
|
4
|
+
import useGlobalZIndex from "../../use/useGlobalZIndex.js";
|
|
5
|
+
import useEscStack from "../../use/useEscStack.js";
|
|
6
|
+
import Mask_default from "../mask/Mask.js";
|
|
7
|
+
import Close_default from "../close/Close.js";
|
|
8
|
+
import { useUII18n } from "../../use/useUII18n.js";
|
|
9
|
+
import Toggle_default from "../toggle/Toggle.js";
|
|
10
|
+
import ImageImpl from "../image/Image.js";
|
|
11
|
+
import { createPictureViewport } from "../../use/usePictureViewport.js";
|
|
12
|
+
import { PICTURE_FALLBACK, normalizePictureImages } from "./config.js";
|
|
13
|
+
import { runPictureImgEnter } from "./pictureFlip.js";
|
|
14
|
+
import PictureToolbar from "./PictureToolbar.js";
|
|
15
|
+
import PictureViewport from "./PictureViewport.js";
|
|
16
|
+
import { Fragment, Teleport, computed, createVNode, defineComponent, mergeProps, nextTick, onBeforeUnmount, ref, watch } from "vue";
|
|
17
|
+
//#region components/picture/Picture.tsx
|
|
18
|
+
var INTERACT_SAFE = ".w-picture-viewer__viewport, .w-picture-viewer__img-wrap, .w-picture-viewer__img, .w-picture-viewer__thumb, .w-picture-viewer__nav, .w-picture-viewer__close, .w-picture-viewer__thumbs, .w-picture-viewer__toolbar";
|
|
19
|
+
var PictureImpl = /* @__PURE__ */ defineComponent({
|
|
20
|
+
name: "Picture",
|
|
21
|
+
inheritAttrs: false,
|
|
22
|
+
components: {
|
|
23
|
+
Image: ImageImpl,
|
|
24
|
+
Mask: Mask_default,
|
|
25
|
+
Toggle: Toggle_default,
|
|
26
|
+
Close: Close_default,
|
|
27
|
+
Icon: Icon_default,
|
|
28
|
+
PictureViewport,
|
|
29
|
+
PictureToolbar
|
|
30
|
+
},
|
|
31
|
+
props: {
|
|
32
|
+
images: {
|
|
33
|
+
type: [String, Array],
|
|
34
|
+
default: void 0
|
|
35
|
+
},
|
|
36
|
+
size: {
|
|
37
|
+
type: Number,
|
|
38
|
+
default: void 0
|
|
39
|
+
},
|
|
40
|
+
round: {
|
|
41
|
+
type: [Boolean, String],
|
|
42
|
+
default: void 0
|
|
43
|
+
},
|
|
44
|
+
cssVars: {
|
|
45
|
+
type: Object,
|
|
46
|
+
default: void 0
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
emits: {
|
|
50
|
+
"update:show": (_v) => true,
|
|
51
|
+
show: (_index) => true,
|
|
52
|
+
hide: () => true
|
|
53
|
+
},
|
|
54
|
+
setup(props, { attrs, emit }) {
|
|
55
|
+
const cfg = useComponentConfig("Picture", props, PICTURE_FALLBACK);
|
|
56
|
+
const { t } = useUII18n();
|
|
57
|
+
const { zIndex, add } = useGlobalZIndex();
|
|
58
|
+
const show = ref(false);
|
|
59
|
+
const curIndex = ref(0);
|
|
60
|
+
const alwaysOneWay = ref(false);
|
|
61
|
+
const fromRect = ref(null);
|
|
62
|
+
const interact = ref(false);
|
|
63
|
+
const viewportApi = ref(null);
|
|
64
|
+
const viewportController = createPictureViewport();
|
|
65
|
+
let stopFlip;
|
|
66
|
+
const list = computed(() => normalizePictureImages(props.images));
|
|
67
|
+
watch(show, (v) => {
|
|
68
|
+
emit("update:show", v);
|
|
69
|
+
if (!v) {
|
|
70
|
+
emit("hide");
|
|
71
|
+
stopFlip?.();
|
|
72
|
+
stopFlip = void 0;
|
|
73
|
+
fromRect.value = null;
|
|
74
|
+
interact.value = false;
|
|
75
|
+
viewportApi.value = null;
|
|
76
|
+
viewportController.reset();
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
watch(curIndex, () => {
|
|
80
|
+
if (!show.value || !interact.value) return;
|
|
81
|
+
viewportController.prepareImageChange();
|
|
82
|
+
});
|
|
83
|
+
useEscStack(show, () => {
|
|
84
|
+
show.value = false;
|
|
85
|
+
}, () => zIndex.value);
|
|
86
|
+
function enableInteract() {
|
|
87
|
+
viewportApi.value?.fit(false);
|
|
88
|
+
interact.value = true;
|
|
89
|
+
}
|
|
90
|
+
async function playEnterFlip() {
|
|
91
|
+
stopFlip?.();
|
|
92
|
+
stopFlip = void 0;
|
|
93
|
+
interact.value = false;
|
|
94
|
+
await nextTick();
|
|
95
|
+
await new Promise((r) => requestAnimationFrame(() => r()));
|
|
96
|
+
const el = viewportApi.value?.getFlipEl();
|
|
97
|
+
const from = fromRect.value;
|
|
98
|
+
if (!el || !from) {
|
|
99
|
+
fromRect.value = null;
|
|
100
|
+
enableInteract();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
fromRect.value = null;
|
|
104
|
+
stopFlip = runPictureImgEnter(el, from, { onEnd: () => {
|
|
105
|
+
enableInteract();
|
|
106
|
+
} });
|
|
107
|
+
}
|
|
108
|
+
function openAt(i, e) {
|
|
109
|
+
const target = e?.currentTarget ?? null;
|
|
110
|
+
fromRect.value = target?.getBoundingClientRect() ?? null;
|
|
111
|
+
viewportController.reset();
|
|
112
|
+
curIndex.value = i;
|
|
113
|
+
alwaysOneWay.value = false;
|
|
114
|
+
interact.value = false;
|
|
115
|
+
add();
|
|
116
|
+
show.value = true;
|
|
117
|
+
emit("show", i);
|
|
118
|
+
playEnterFlip();
|
|
119
|
+
}
|
|
120
|
+
function close() {
|
|
121
|
+
show.value = false;
|
|
122
|
+
}
|
|
123
|
+
function onViewerClick(e) {
|
|
124
|
+
if (e.target?.closest(INTERACT_SAFE)) return;
|
|
125
|
+
close();
|
|
126
|
+
}
|
|
127
|
+
function onThumbClick(i) {
|
|
128
|
+
curIndex.value = i;
|
|
129
|
+
alwaysOneWay.value = false;
|
|
130
|
+
}
|
|
131
|
+
function goPrev(prev) {
|
|
132
|
+
alwaysOneWay.value = true;
|
|
133
|
+
prev();
|
|
134
|
+
}
|
|
135
|
+
function goNext(next) {
|
|
136
|
+
alwaysOneWay.value = true;
|
|
137
|
+
next();
|
|
138
|
+
}
|
|
139
|
+
function bindViewport(el) {
|
|
140
|
+
if (el) viewportApi.value = el;
|
|
141
|
+
}
|
|
142
|
+
onBeforeUnmount(() => {
|
|
143
|
+
stopFlip?.();
|
|
144
|
+
});
|
|
145
|
+
return () => {
|
|
146
|
+
const images = list.value;
|
|
147
|
+
if (!images.length) return null;
|
|
148
|
+
const rootProps = mergeProps({
|
|
149
|
+
class: "w-picture",
|
|
150
|
+
style: toCssVarsStyle({
|
|
151
|
+
...propSizeToCssVars("picture", cfg.value.size),
|
|
152
|
+
...props.cssVars
|
|
153
|
+
})
|
|
154
|
+
}, attrs);
|
|
155
|
+
const multi = images.length > 1;
|
|
156
|
+
return createVNode(Fragment, null, [
|
|
157
|
+
createVNode("div", rootProps, [images.map((src, i) => createVNode(ImageImpl, {
|
|
158
|
+
"key": `${src}-${i}`,
|
|
159
|
+
"class": ["w-picture__thumb", { "is-previewing": show.value && curIndex.value === i }],
|
|
160
|
+
"src": src,
|
|
161
|
+
"round": cfg.value.round,
|
|
162
|
+
"onClick": (e) => openAt(i, e)
|
|
163
|
+
}, null))]),
|
|
164
|
+
createVNode(Mask_default, {
|
|
165
|
+
"show": show.value,
|
|
166
|
+
"zIndex": zIndex.value,
|
|
167
|
+
"class": "w-picture-mask",
|
|
168
|
+
"canCloseByClickSelf": true,
|
|
169
|
+
"onUpdate:show": (v) => {
|
|
170
|
+
show.value = v;
|
|
171
|
+
}
|
|
172
|
+
}, null),
|
|
173
|
+
createVNode(Teleport, { "to": "body" }, { default: () => [show.value ? createVNode("div", {
|
|
174
|
+
"class": "w-picture-viewer",
|
|
175
|
+
"style": { ["--__w-picture-viewer-z-index"]: zIndex.value + 1 },
|
|
176
|
+
"onClick": onViewerClick
|
|
177
|
+
}, [createVNode(Close_default, {
|
|
178
|
+
"class": "w-picture-viewer__close",
|
|
179
|
+
"size": 24,
|
|
180
|
+
"ariaLabel": t("picture.close"),
|
|
181
|
+
"title": t("picture.close"),
|
|
182
|
+
"onClick": (e) => {
|
|
183
|
+
e.stopPropagation();
|
|
184
|
+
close();
|
|
185
|
+
}
|
|
186
|
+
}, null), createVNode(Toggle_default, {
|
|
187
|
+
"class": "w-picture-viewer__stage",
|
|
188
|
+
"wheel": false,
|
|
189
|
+
"index": curIndex.value,
|
|
190
|
+
"data": images,
|
|
191
|
+
"itemClass": "w-picture-viewer__item",
|
|
192
|
+
"transform": "translate",
|
|
193
|
+
"alwaysOneWay": alwaysOneWay.value,
|
|
194
|
+
"onUpdate:index": (i) => {
|
|
195
|
+
curIndex.value = i;
|
|
196
|
+
}
|
|
197
|
+
}, {
|
|
198
|
+
default: ({ item }) => createVNode(PictureViewport, {
|
|
199
|
+
"key": `${item}-${curIndex.value}`,
|
|
200
|
+
"ref": bindViewport,
|
|
201
|
+
"src": item,
|
|
202
|
+
"interact": interact.value,
|
|
203
|
+
"controller": viewportController
|
|
204
|
+
}, null),
|
|
205
|
+
use: ({ index, prev, next }) => createVNode(Fragment, null, [
|
|
206
|
+
createVNode(PictureToolbar, {
|
|
207
|
+
"viewport": viewportApi.value,
|
|
208
|
+
"disabled": !interact.value
|
|
209
|
+
}, null),
|
|
210
|
+
multi ? createVNode("div", { "class": "w-picture-viewer__thumbs" }, [images.map((src, i) => createVNode("img", {
|
|
211
|
+
"key": `${src}-t-${i}`,
|
|
212
|
+
"class": ["w-picture-viewer__thumb", { "is-active": i === index }],
|
|
213
|
+
"src": src,
|
|
214
|
+
"alt": "",
|
|
215
|
+
"draggable": false,
|
|
216
|
+
"onClick": () => onThumbClick(i)
|
|
217
|
+
}, null))]) : null,
|
|
218
|
+
multi ? createVNode(Fragment, null, [createVNode(Icon_default, {
|
|
219
|
+
"class": "w-picture-viewer__nav w-picture-viewer__nav--prev",
|
|
220
|
+
"name": "w-icon-arrow-down",
|
|
221
|
+
"rotate": true,
|
|
222
|
+
"direction": "z",
|
|
223
|
+
"deg": 90,
|
|
224
|
+
"size": "var(--w-picture-viewer-nav-size)",
|
|
225
|
+
"ariaLabel": t("picture.prev"),
|
|
226
|
+
"title": t("picture.prev"),
|
|
227
|
+
"onClick": (e) => {
|
|
228
|
+
e.stopPropagation();
|
|
229
|
+
goPrev(prev);
|
|
230
|
+
}
|
|
231
|
+
}, null), createVNode(Icon_default, {
|
|
232
|
+
"class": "w-picture-viewer__nav w-picture-viewer__nav--next",
|
|
233
|
+
"name": "w-icon-arrow-down",
|
|
234
|
+
"rotate": true,
|
|
235
|
+
"direction": "z",
|
|
236
|
+
"deg": -90,
|
|
237
|
+
"size": "var(--w-picture-viewer-nav-size)",
|
|
238
|
+
"ariaLabel": t("picture.next"),
|
|
239
|
+
"title": t("picture.next"),
|
|
240
|
+
"onClick": (e) => {
|
|
241
|
+
e.stopPropagation();
|
|
242
|
+
goNext(next);
|
|
243
|
+
}
|
|
244
|
+
}, null)]) : null
|
|
245
|
+
])
|
|
246
|
+
})]) : null] })
|
|
247
|
+
]);
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
//#endregion
|
|
252
|
+
export { PictureImpl as default };
|
|
253
|
+
|
|
254
|
+
//# sourceMappingURL=Picture.js.map
|