@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,228 @@
|
|
|
1
|
+
import { isValidValue } from "../../util/tools.js";
|
|
2
|
+
import { mergeStyle, propSizeToCssVars, toCssVarsStyle } from "../../util/cssVars.js";
|
|
3
|
+
import useFormItem from "../../use/useFormItem.js";
|
|
4
|
+
import useDelay from "../../use/useDelay.js";
|
|
5
|
+
import Layer_default from "../layer/Layer.js";
|
|
6
|
+
import Close_default from "../close/Close.js";
|
|
7
|
+
import { useUII18n } from "../../use/useUII18n.js";
|
|
8
|
+
import { computed, createTextVNode, createVNode, defineComponent, mergeProps, normalizeClass, onMounted, ref } from "vue";
|
|
9
|
+
//#region components/write/Write.tsx
|
|
10
|
+
var Write_default = /* @__PURE__ */ defineComponent({
|
|
11
|
+
name: "Write",
|
|
12
|
+
inheritAttrs: false,
|
|
13
|
+
components: {
|
|
14
|
+
Close: Close_default,
|
|
15
|
+
Layer: Layer_default
|
|
16
|
+
},
|
|
17
|
+
emits: {
|
|
18
|
+
"update:modelValue": null,
|
|
19
|
+
clear: null,
|
|
20
|
+
search: null,
|
|
21
|
+
input: null,
|
|
22
|
+
change: null
|
|
23
|
+
},
|
|
24
|
+
props: {
|
|
25
|
+
modelValue: { type: [Number, String] },
|
|
26
|
+
simple: Boolean,
|
|
27
|
+
placeholder: { type: String },
|
|
28
|
+
clearable: Boolean,
|
|
29
|
+
block: Boolean,
|
|
30
|
+
readonly: Boolean,
|
|
31
|
+
disabled: Boolean,
|
|
32
|
+
maxlength: [String, Number],
|
|
33
|
+
showWordLimit: {
|
|
34
|
+
type: Boolean,
|
|
35
|
+
default: true
|
|
36
|
+
},
|
|
37
|
+
autoFocus: [Boolean],
|
|
38
|
+
width: { type: String },
|
|
39
|
+
minHeight: { type: String },
|
|
40
|
+
validateEvent: {
|
|
41
|
+
type: Boolean,
|
|
42
|
+
default: true
|
|
43
|
+
},
|
|
44
|
+
type: {
|
|
45
|
+
type: String,
|
|
46
|
+
default: ""
|
|
47
|
+
},
|
|
48
|
+
align: {
|
|
49
|
+
type: String,
|
|
50
|
+
default: "left"
|
|
51
|
+
},
|
|
52
|
+
inputClass: { type: [
|
|
53
|
+
Object,
|
|
54
|
+
Array,
|
|
55
|
+
String
|
|
56
|
+
] },
|
|
57
|
+
/** 实例高度(px),写入 `--w-prop-write-size` */
|
|
58
|
+
size: {
|
|
59
|
+
type: Number,
|
|
60
|
+
default: void 0
|
|
61
|
+
},
|
|
62
|
+
/** 实例 CSS 变量(如 `--w-prop-write-bg-color`) */
|
|
63
|
+
cssVars: {
|
|
64
|
+
type: Object,
|
|
65
|
+
default: void 0
|
|
66
|
+
},
|
|
67
|
+
validate: {
|
|
68
|
+
type: Object,
|
|
69
|
+
default: () => ({
|
|
70
|
+
when: "blur",
|
|
71
|
+
condition: "",
|
|
72
|
+
invalidTip: ""
|
|
73
|
+
})
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
setup(props, ctx) {
|
|
77
|
+
const { t } = useUII18n();
|
|
78
|
+
const { formItem, useDisabled } = useFormItem();
|
|
79
|
+
const disabled = useDisabled(computed(() => props.disabled));
|
|
80
|
+
computed(() => {
|
|
81
|
+
return formItem?.validateState || "";
|
|
82
|
+
});
|
|
83
|
+
const { delay } = useDelay(300);
|
|
84
|
+
const lastSearchText = ref("");
|
|
85
|
+
const input = ref();
|
|
86
|
+
const isZH = ref(false);
|
|
87
|
+
const showCloseBtn = computed(() => {
|
|
88
|
+
const v = props.modelValue;
|
|
89
|
+
return props.clearable && !props.disabled && isValidValue(v) && props.type !== "textarea";
|
|
90
|
+
});
|
|
91
|
+
const inputOptions = computed(() => {
|
|
92
|
+
const { class: klass, ...attrs } = ctx.attrs;
|
|
93
|
+
return {
|
|
94
|
+
ref: input,
|
|
95
|
+
class: [props.type === "textarea" ? ["w-write-textarea "] : ["w-write-input"], `w-write-align-${props.align}`],
|
|
96
|
+
placeholder: props.placeholder,
|
|
97
|
+
readonly: props.readonly,
|
|
98
|
+
disabled: disabled.value,
|
|
99
|
+
value: props.modelValue,
|
|
100
|
+
maxlength: props.maxlength,
|
|
101
|
+
type: props.type,
|
|
102
|
+
onCompositionstart: (e) => {
|
|
103
|
+
isZH.value = true;
|
|
104
|
+
},
|
|
105
|
+
onInput: (e) => {
|
|
106
|
+
const val = e.target.value;
|
|
107
|
+
if (!isZH.value) {
|
|
108
|
+
ctx.emit("update:modelValue", val, input.value);
|
|
109
|
+
ctx.emit("input", val, input.value);
|
|
110
|
+
toSearch(val);
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
onCompositionend: (e) => {
|
|
114
|
+
setTimeout(() => {
|
|
115
|
+
const val = e.target.value;
|
|
116
|
+
ctx.emit("update:modelValue", val, input.value);
|
|
117
|
+
toSearch(val);
|
|
118
|
+
isZH.value = false;
|
|
119
|
+
});
|
|
120
|
+
},
|
|
121
|
+
onBlur: () => {
|
|
122
|
+
if (props.validateEvent !== false) formItem?.validate("blur");
|
|
123
|
+
},
|
|
124
|
+
onChange: (e) => {
|
|
125
|
+
if (props.validateEvent !== false) formItem?.validate("change");
|
|
126
|
+
const val = e.target.value;
|
|
127
|
+
ctx.emit("change", val, input.value);
|
|
128
|
+
},
|
|
129
|
+
...attrs
|
|
130
|
+
};
|
|
131
|
+
});
|
|
132
|
+
const limit = () => {
|
|
133
|
+
if (props.maxlength) return createVNode("div", { "class": "w-write-input-limit" }, [
|
|
134
|
+
props.modelValue?.toString().length || 0,
|
|
135
|
+
createTextVNode("/"),
|
|
136
|
+
props.maxlength
|
|
137
|
+
]);
|
|
138
|
+
else return createVNode("div", { "class": "w-write-input-limit" }, [props.modelValue?.toString().length]);
|
|
139
|
+
};
|
|
140
|
+
const outerOptions = computed(() => {
|
|
141
|
+
return {
|
|
142
|
+
class: [
|
|
143
|
+
"w-write",
|
|
144
|
+
{ "w-write-block": props.block },
|
|
145
|
+
normalizeClass(ctx.attrs.class)
|
|
146
|
+
],
|
|
147
|
+
style: mergeStyle(toCssVarsStyle({
|
|
148
|
+
...propSizeToCssVars("write", props.size),
|
|
149
|
+
...props.cssVars
|
|
150
|
+
}), ctx.attrs.style)
|
|
151
|
+
};
|
|
152
|
+
});
|
|
153
|
+
const layerOptions = computed(() => {
|
|
154
|
+
return { manual: true };
|
|
155
|
+
});
|
|
156
|
+
function focus() {
|
|
157
|
+
input.value?.focus();
|
|
158
|
+
}
|
|
159
|
+
function select() {
|
|
160
|
+
input.value?.select();
|
|
161
|
+
}
|
|
162
|
+
function toSearch(val) {
|
|
163
|
+
delay(() => {
|
|
164
|
+
if (val !== lastSearchText.value) {
|
|
165
|
+
ctx.emit("search", val, input.value);
|
|
166
|
+
lastSearchText.value = val;
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
ctx.expose({
|
|
171
|
+
focus,
|
|
172
|
+
select
|
|
173
|
+
});
|
|
174
|
+
onMounted(() => {
|
|
175
|
+
if (props.autoFocus) focus();
|
|
176
|
+
});
|
|
177
|
+
return () => {
|
|
178
|
+
const inputEl = props.type == "textarea" ? createVNode("textarea", mergeProps(inputOptions.value, { "style": { minHeight: props.minHeight } }), null) : createVNode("input", inputOptions.value, null);
|
|
179
|
+
const mainInput = createVNode("div", {
|
|
180
|
+
"style": {
|
|
181
|
+
width: props.width,
|
|
182
|
+
height: props.type == "textarea" ? "auto" : "",
|
|
183
|
+
paddingLeft: props.type == "textarea" ? "0px" : "",
|
|
184
|
+
paddingRight: props.type == "textarea" ? "0px" : ""
|
|
185
|
+
},
|
|
186
|
+
"class": [
|
|
187
|
+
"w-write-wrapper",
|
|
188
|
+
normalizeClass(props.inputClass),
|
|
189
|
+
{
|
|
190
|
+
"w-write-input-block": props.block,
|
|
191
|
+
"w-write-input-disabled": disabled.value,
|
|
192
|
+
"w-write-input-simple": props.simple
|
|
193
|
+
}
|
|
194
|
+
]
|
|
195
|
+
}, [
|
|
196
|
+
ctx.slots.prepend?.(),
|
|
197
|
+
inputEl,
|
|
198
|
+
props.type === "textarea" && props.showWordLimit ? limit() : "",
|
|
199
|
+
showCloseBtn.value && createVNode(Close_default, {
|
|
200
|
+
"name": "w-icon-close-fill",
|
|
201
|
+
"onClick": (e) => {
|
|
202
|
+
const options = { input: input.value };
|
|
203
|
+
ctx.emit("update:modelValue", void 0, input.value);
|
|
204
|
+
ctx.emit("clear", options);
|
|
205
|
+
e.stopPropagation();
|
|
206
|
+
}
|
|
207
|
+
}, null),
|
|
208
|
+
ctx.slots.default?.({
|
|
209
|
+
focus,
|
|
210
|
+
inputElement: input.value
|
|
211
|
+
})
|
|
212
|
+
]);
|
|
213
|
+
createVNode(Layer_default, layerOptions.value, {
|
|
214
|
+
trigger: () => mainInput,
|
|
215
|
+
default: () => t("write.invalidInput")
|
|
216
|
+
});
|
|
217
|
+
return createVNode("div", outerOptions.value, [
|
|
218
|
+
ctx.slots.before?.(),
|
|
219
|
+
mainInput,
|
|
220
|
+
ctx.slots.after?.()
|
|
221
|
+
]);
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
//#endregion
|
|
226
|
+
export { Write_default as default };
|
|
227
|
+
|
|
228
|
+
//# sourceMappingURL=Write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Write.js","names":["defineComponent","ref","computed","normalizeClass","createTextVNode","_createTextVNode","createVNode","_createVNode","mergeProps","_mergeProps","onMounted","isValidValue","mergeStyle","propSizeToCssVars","toCssVarsStyle","Close","Layer","useDelay","useUII18n","useFormItem","name","inheritAttrs","components","emits","clear","search","input","change","props","modelValue","type","Number","String","simple","Boolean","placeholder","clearable","block","readonly","disabled","maxlength","showWordLimit","default","autoFocus","width","minHeight","validateEvent","align","inputClass","Object","Array","size","undefined","cssVars","validate","when","condition","invalidTip","setup","ctx","t","formItem","useDisabled","validateState","delay","lastSearchText","isZH","showCloseBtn","v","inputOptions","class","klass","attrs","value","onCompositionstart","e","onInput","val","target","emit","toSearch","onCompositionend","setTimeout","onBlur","onChange","limit","toString","length","outerOptions","style","layerOptions","manual","focus","select","expose","inputEl","mainInput","height","paddingLeft","paddingRight","slots","prepend","options","stopPropagation","inputElement","inputWithLayer","trigger","before","after"],"sources":["../../../components/write/Write.tsx"],"sourcesContent":["import { defineComponent, ref, computed, normalizeClass } from \"vue\"\r\nimport type { PropType } from \"vue\"\r\nimport { useAttrs, onMounted } from \"vue\"\r\nimport { filterListeners, isValidValue, mergeStyle, propSizeToCssVars, toCssVarsStyle, type CssVars } from \"../../util\"\r\nimport Close from \"../close/index\"\r\nimport Layer from \"../layer/index\"\r\nimport useDelay from \"../../use/useDelay\"\r\nimport { useUII18n } from \"../../use/useUII18n\"\r\nimport useFormItem from \"../../use/useFormItem\"\r\n\r\nexport default defineComponent({\r\n name: \"Write\",\r\n inheritAttrs: false,\r\n components: { Close, Layer },\r\n emits: {\r\n \"update:modelValue\": null,\r\n clear: null,\r\n search: null,\r\n input: null,\r\n change: null,\r\n },\r\n props: {\r\n modelValue: { type: [Number, String] },\r\n simple: Boolean,\r\n placeholder: { type: String },\r\n clearable: Boolean,\r\n block: Boolean,\r\n readonly: Boolean,\r\n disabled: Boolean,\r\n maxlength: [String, Number],\r\n showWordLimit: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n autoFocus: [Boolean],\r\n width: { type: String },\r\n minHeight: { type: String },\r\n validateEvent: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n type: {\r\n type: String,\r\n default: \"\",\r\n },\r\n align: {\r\n type: String as PropType<\"left\" | \"right\" | \"center\">,\r\n default: \"left\",\r\n },\r\n inputClass: { type: [Object, Array, String] },\r\n /** 实例高度(px),写入 `--w-prop-write-size` */\r\n size: { type: Number, default: undefined },\r\n /** 实例 CSS 变量(如 `--w-prop-write-bg-color`) */\r\n cssVars: { type: Object as PropType<CssVars>, default: undefined },\r\n //验证,未实现\r\n validate: {\r\n type: Object,\r\n default: () => ({\r\n when: \"blur\", //验证时机\r\n condition: \"\",\r\n invalidTip: \"\",\r\n }),\r\n },\r\n },\r\n setup(props, ctx) {\r\n const { t } = useUII18n()\r\n const { formItem, useDisabled } = useFormItem()\r\n\r\n const disabled = useDisabled(computed(() => props.disabled))\r\n\r\n const validateState = computed(() => {\r\n return formItem?.validateState || \"\"\r\n })\r\n const { delay } = useDelay(300)\r\n const lastSearchText = ref(\"\")\r\n const input = ref<HTMLInputElement>()\r\n const isZH = ref(false) //是否在输入中文\r\n const showCloseBtn = computed(() => {\r\n const v = props.modelValue\r\n\r\n return (\r\n props.clearable &&\r\n !props.disabled &&\r\n isValidValue(v) &&\r\n props.type !== \"textarea\"\r\n )\r\n })\r\n const inputOptions = computed(() => {\r\n const { class: klass, ...attrs } = ctx.attrs\r\n\r\n return {\r\n ref: input,\r\n class: [\r\n props.type === \"textarea\" ? [\"w-write-textarea \"] : [\"w-write-input\"],\r\n `w-write-align-${props.align}`,\r\n ],\r\n placeholder: props.placeholder,\r\n readonly: props.readonly,\r\n disabled: disabled.value,\r\n value: props.modelValue,\r\n maxlength: props.maxlength,\r\n\r\n type: props.type,\r\n onCompositionstart: (e: CompositionEvent) => {\r\n isZH.value = true\r\n },\r\n onInput: (e: Event) => {\r\n const val = (e.target as HTMLInputElement).value\r\n if (!isZH.value) {\r\n ctx.emit(\"update:modelValue\", val, input.value)\r\n ctx.emit(\"input\", val, input.value)\r\n toSearch(val)\r\n }\r\n },\r\n onCompositionend: (e: CompositionEvent) => {\r\n setTimeout(() => {\r\n const val = (e.target as HTMLInputElement).value\r\n ctx.emit(\"update:modelValue\", val, input.value)\r\n toSearch(val)\r\n isZH.value = false\r\n })\r\n },\r\n onBlur: () => {\r\n if (props.validateEvent !== false) {\r\n formItem?.validate(\"blur\")\r\n }\r\n },\r\n onChange: (e: Event) => {\r\n if (props.validateEvent !== false) {\r\n formItem?.validate(\"change\")\r\n }\r\n const val = (e.target as HTMLInputElement).value\r\n ctx.emit(\"change\", val, input.value)\r\n },\r\n ...attrs,\r\n // ...filterListeners(ctx.attrs)\r\n // attrs\r\n }\r\n })\r\n const limit = () => {\r\n if (props.maxlength) {\r\n return (\r\n <div class=\"w-write-input-limit\">\r\n {props.modelValue?.toString().length || 0}/{props.maxlength}\r\n </div>\r\n )\r\n } else {\r\n return (\r\n <div class=\"w-write-input-limit\">\r\n {props.modelValue?.toString().length}\r\n </div>\r\n )\r\n }\r\n }\r\n const outerOptions = computed(() => {\r\n return {\r\n class: [\r\n \"w-write\",\r\n { \"w-write-block\": props.block },\r\n normalizeClass(ctx.attrs.class),\r\n ],\r\n style: mergeStyle(\r\n toCssVarsStyle({\r\n ...propSizeToCssVars(\"write\", props.size),\r\n ...props.cssVars,\r\n }),\r\n ctx.attrs.style as Record<string, any> | undefined,\r\n ),\r\n }\r\n })\r\n const layerOptions = computed(() => {\r\n return {\r\n manual: true,\r\n }\r\n })\r\n function focus() {\r\n input.value?.focus()\r\n }\r\n function select() {\r\n input.value?.select()\r\n }\r\n function toSearch(val: string) {\r\n delay(() => {\r\n if (val !== lastSearchText.value) {\r\n ctx.emit(\"search\", val, input.value)\r\n lastSearchText.value = val\r\n }\r\n })\r\n }\r\n ctx.expose({\r\n focus,\r\n select,\r\n })\r\n\r\n onMounted(() => {\r\n if (props.autoFocus) {\r\n focus()\r\n }\r\n })\r\n return () => {\r\n const inputEl =\r\n props.type == \"textarea\" ? (\r\n <textarea\r\n {...inputOptions.value}\r\n style={{ minHeight: props.minHeight }}\r\n />\r\n ) : (\r\n <input {...inputOptions.value} />\r\n )\r\n const mainInput = (\r\n <div\r\n style={{\r\n width: props.width,\r\n height: props.type == \"textarea\" ? \"auto\" : \"\",\r\n paddingLeft: props.type == \"textarea\" ? \"0px\" : \"\",\r\n paddingRight: props.type == \"textarea\" ? \"0px\" : \"\",\r\n }}\r\n class={[\r\n \"w-write-wrapper\",\r\n normalizeClass(props.inputClass),\r\n {\r\n \"w-write-input-block\": props.block,\r\n \"w-write-input-disabled\": disabled.value,\r\n \"w-write-input-simple\": props.simple,\r\n },\r\n ]}>\r\n {ctx.slots.prepend?.()}\r\n {inputEl}\r\n {props.type === \"textarea\" && props.showWordLimit ? limit() : \"\"}\r\n {showCloseBtn.value && (\r\n <Close\r\n name=\"w-icon-close-fill\"\r\n onClick={(e: MouseEvent) => {\r\n const options = { input: input.value }\r\n ctx.emit(\"update:modelValue\", undefined, input.value)\r\n ctx.emit(\"clear\", options)\r\n e.stopPropagation()\r\n }}\r\n />\r\n )}\r\n {ctx.slots.default?.({\r\n focus,\r\n inputElement: input.value,\r\n })}\r\n </div>\r\n )\r\n const inputWithLayer = (\r\n <Layer\r\n {...layerOptions.value}\r\n v-slots={{\r\n trigger: () => mainInput,\r\n default: () => t(\"write.invalidInput\"),\r\n }}\r\n />\r\n )\r\n\r\n return (\r\n <div {...outerOptions.value}>\r\n {ctx.slots.before?.()}\r\n {mainInput}\r\n\r\n {ctx.slots.after?.()}\r\n </div>\r\n )\r\n }\r\n },\r\n})\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './Write';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '../../../theme/tokens/components/write.css';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare enum EnumPlacement {
|
|
2
|
+
"left" = "left",
|
|
3
|
+
"left-start" = "left-start",
|
|
4
|
+
"left-end" = "left-end",
|
|
5
|
+
"right" = "right",
|
|
6
|
+
"right-start" = "right-start",
|
|
7
|
+
"right-end" = "right-end",
|
|
8
|
+
"top" = "top",
|
|
9
|
+
"top-start" = "top-start",
|
|
10
|
+
"top-end" = "top-end",
|
|
11
|
+
"bottom" = "bottom",
|
|
12
|
+
"bottom-start" = "bottom-start",
|
|
13
|
+
"bottom-end" = "bottom-end",
|
|
14
|
+
"center" = "center",
|
|
15
|
+
"client-center" = "client-center"
|
|
16
|
+
}
|
|
17
|
+
export declare enum EnumBtnType {
|
|
18
|
+
"default" = "default",
|
|
19
|
+
"primary" = "primary",
|
|
20
|
+
"danger" = "danger"
|
|
21
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
//#region config/dictionary.ts
|
|
2
|
+
var EnumPlacement = /* @__PURE__ */ function(EnumPlacement) {
|
|
3
|
+
EnumPlacement["left"] = "left";
|
|
4
|
+
EnumPlacement["left-start"] = "left-start";
|
|
5
|
+
EnumPlacement["left-end"] = "left-end";
|
|
6
|
+
EnumPlacement["right"] = "right";
|
|
7
|
+
EnumPlacement["right-start"] = "right-start";
|
|
8
|
+
EnumPlacement["right-end"] = "right-end";
|
|
9
|
+
EnumPlacement["top"] = "top";
|
|
10
|
+
EnumPlacement["top-start"] = "top-start";
|
|
11
|
+
EnumPlacement["top-end"] = "top-end";
|
|
12
|
+
EnumPlacement["bottom"] = "bottom";
|
|
13
|
+
EnumPlacement["bottom-start"] = "bottom-start";
|
|
14
|
+
EnumPlacement["bottom-end"] = "bottom-end";
|
|
15
|
+
EnumPlacement["center"] = "center";
|
|
16
|
+
EnumPlacement["client-center"] = "client-center";
|
|
17
|
+
return EnumPlacement;
|
|
18
|
+
}({});
|
|
19
|
+
var EnumBtnType = /* @__PURE__ */ function(EnumBtnType) {
|
|
20
|
+
EnumBtnType["default"] = "default";
|
|
21
|
+
EnumBtnType["primary"] = "primary";
|
|
22
|
+
EnumBtnType["danger"] = "danger";
|
|
23
|
+
return EnumBtnType;
|
|
24
|
+
}({});
|
|
25
|
+
//#endregion
|
|
26
|
+
export { EnumBtnType, EnumPlacement };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=dictionary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dictionary.js","names":[],"sources":["../../config/dictionary.ts"],"sourcesContent":["export enum EnumPlacement {\r\n \"left\" = \"left\",\r\n \"left-start\" = \"left-start\",\r\n \"left-end\" = \"left-end\",\r\n \"right\" = \"right\",\r\n \"right-start\" = \"right-start\",\r\n \"right-end\" = \"right-end\",\r\n \"top\" = \"top\",\r\n \"top-start\" = \"top-start\",\r\n \"top-end\" = \"top-end\",\r\n \"bottom\" = \"bottom\",\r\n \"bottom-start\" = \"bottom-start\",\r\n \"bottom-end\" = \"bottom-end\",\r\n \"center\" = \"center\",\r\n \"client-center\" = \"client-center\",\r\n}\r\n\r\nexport enum EnumBtnType {\r\n \"default\" = \"default\",\r\n \"primary\" = \"primary\",\r\n \"danger\" = \"danger\",\r\n}\r\n"],"mappings":";AAAA,IAAY,gBAAL,yBAAA,eAAA;CACL,cAAA,UAAA;CACA,cAAA,gBAAA;CACA,cAAA,cAAA;CACA,cAAA,WAAA;CACA,cAAA,iBAAA;CACA,cAAA,eAAA;CACA,cAAA,SAAA;CACA,cAAA,eAAA;CACA,cAAA,aAAA;CACA,cAAA,YAAA;CACA,cAAA,kBAAA;CACA,cAAA,gBAAA;CACA,cAAA,YAAA;CACA,cAAA,mBAAA;;AACF,EAAA,CAAA,CAAA;AAEA,IAAY,cAAL,yBAAA,aAAA;CACL,YAAA,aAAA;CACA,YAAA,aAAA;CACA,YAAA,YAAA;;AACF,EAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
declare const uiI18n: import('vue-i18n').I18n<{
|
|
3
|
+
"zh-CN": {};
|
|
4
|
+
"en-US": {};
|
|
5
|
+
"de-DE": {};
|
|
6
|
+
}, {}, {}, string, false>;
|
|
7
|
+
declare const currentLocale: Ref<"zh-CN" | "en-US" | "de-DE", "zh-CN" | "en-US" | "de-DE">;
|
|
8
|
+
declare const supportedLocales: Ref<{
|
|
9
|
+
value: "zh-CN" | "en-US" | "de-DE";
|
|
10
|
+
label: string;
|
|
11
|
+
flag: string;
|
|
12
|
+
}[]>;
|
|
13
|
+
declare const currentLocaleInfo: import('vue').ComputedRef<{
|
|
14
|
+
value: "zh-CN" | "en-US" | "de-DE";
|
|
15
|
+
label: string;
|
|
16
|
+
flag: string;
|
|
17
|
+
}>;
|
|
18
|
+
declare function switchUILocale(locale: "zh-CN" | "en-US" | "de-DE"): void;
|
|
19
|
+
declare function getLocaleLabel(locale: "zh-CN" | "en-US" | "de-DE"): string;
|
|
20
|
+
declare function getLocaleFlag(locale: "zh-CN" | "en-US" | "de-DE"): string;
|
|
21
|
+
export { uiI18n };
|
|
22
|
+
export { currentLocale, supportedLocales, currentLocaleInfo, switchUILocale, getLocaleLabel, getLocaleFlag, };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import zh_CN_default from "../locales/zh-CN/index.js";
|
|
2
|
+
import en_US_default from "../locales/en-US/index.js";
|
|
3
|
+
import de_DE_default from "../locales/de-DE/index.js";
|
|
4
|
+
import { computed, ref, watch } from "vue";
|
|
5
|
+
import { createI18n } from "vue-i18n";
|
|
6
|
+
//#region config/i18n.ts
|
|
7
|
+
if (!zh_CN_default || !en_US_default || !de_DE_default) console.error("[UII18n] Language packs not loaded properly:", {
|
|
8
|
+
zhCN: zh_CN_default,
|
|
9
|
+
enUS: en_US_default,
|
|
10
|
+
deDE: de_DE_default
|
|
11
|
+
});
|
|
12
|
+
var uiI18n = createI18n({
|
|
13
|
+
legacy: false,
|
|
14
|
+
locale: "zh-CN",
|
|
15
|
+
fallbackLocale: "zh-CN",
|
|
16
|
+
messages: {
|
|
17
|
+
"zh-CN": zh_CN_default || {},
|
|
18
|
+
"en-US": en_US_default || {},
|
|
19
|
+
"de-DE": de_DE_default || {}
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
if (!uiI18n || !uiI18n.global || !uiI18n.global.t) console.error("[UII18n] Failed to create i18n instance properly");
|
|
23
|
+
var currentLocale = ref("zh-CN");
|
|
24
|
+
watch(() => uiI18n.global.locale.value, (newLocale) => {
|
|
25
|
+
currentLocale.value = newLocale;
|
|
26
|
+
});
|
|
27
|
+
var supportedLocales = ref([
|
|
28
|
+
{
|
|
29
|
+
value: "zh-CN",
|
|
30
|
+
label: "中文",
|
|
31
|
+
flag: "🇨🇳"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
value: "en-US",
|
|
35
|
+
label: "English",
|
|
36
|
+
flag: "🇺🇸"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
value: "de-DE",
|
|
40
|
+
label: "Deutsch",
|
|
41
|
+
flag: "🇩🇪"
|
|
42
|
+
}
|
|
43
|
+
]);
|
|
44
|
+
computed(() => {
|
|
45
|
+
return supportedLocales.value.find((locale) => locale.value === currentLocale.value);
|
|
46
|
+
});
|
|
47
|
+
function switchUILocale(locale) {
|
|
48
|
+
if (locale !== currentLocale.value) uiI18n.global.locale.value = locale;
|
|
49
|
+
}
|
|
50
|
+
//#endregion
|
|
51
|
+
export { currentLocale, supportedLocales, switchUILocale, uiI18n };
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","names":[],"sources":["../../config/i18n.ts"],"sourcesContent":["import { ref, computed, watch, type Ref } from \"vue\"\r\nimport { createI18n } from \"vue-i18n\"\r\nimport { zhCN, enUS, deDE } from \"../locales\"\r\n\r\n// 安全检查:确保语言包正确加载\r\nif (!zhCN || !enUS || !deDE) {\r\n console.error(\"[UII18n] Language packs not loaded properly:\", {\r\n zhCN,\r\n enUS,\r\n deDE,\r\n })\r\n}\r\n\r\n// UI 专用 i18n 实例\r\nconst uiI18n = createI18n({\r\n legacy: false,\r\n locale: \"zh-CN\",\r\n fallbackLocale: \"zh-CN\",\r\n messages: {\r\n \"zh-CN\": zhCN || {},\r\n \"en-US\": enUS || {},\r\n \"de-DE\": deDE || {},\r\n },\r\n})\r\n\r\n// 验证 i18n 实例是否正确创建\r\nif (!uiI18n || !uiI18n.global || !uiI18n.global.t) {\r\n console.error(\"[UII18n] Failed to create i18n instance properly\")\r\n}\r\n\r\n// UI国际化状态管理\r\nconst currentLocale = ref<\"zh-CN\" | \"en-US\" | \"de-DE\">(\"zh-CN\")\r\n\r\n// 监听i18n locale变化\r\nwatch(\r\n () => uiI18n.global.locale.value,\r\n (newLocale) => {\r\n currentLocale.value = newLocale as any\r\n }\r\n)\r\n\r\n// 支持的语言列表\r\nconst supportedLocales: Ref<\r\n { value: \"zh-CN\" | \"en-US\" | \"de-DE\"; label: string; flag: string }[]\r\n> = ref([\r\n { value: \"zh-CN\", label: \"中文\", flag: \"🇨🇳\" },\r\n { value: \"en-US\", label: \"English\", flag: \"🇺🇸\" },\r\n { value: \"de-DE\", label: \"Deutsch\", flag: \"🇩🇪\" },\r\n])\r\n\r\n// 获取当前语言信息\r\nconst currentLocaleInfo = computed(() => {\r\n return supportedLocales.value.find(\r\n (locale) => locale.value === currentLocale.value\r\n )\r\n})\r\n\r\n// 切换UI语言\r\nfunction switchUILocale(locale: \"zh-CN\" | \"en-US\" | \"de-DE\") {\r\n if (locale !== currentLocale.value) {\r\n uiI18n.global.locale.value = locale\r\n // currentLocale.value 会通过 watcher 自动更新\r\n }\r\n}\r\n\r\n// 获取语言标签\r\nfunction getLocaleLabel(locale: \"zh-CN\" | \"en-US\" | \"de-DE\"): string {\r\n const localeInfo = supportedLocales.value.find(\r\n (item) => item.value === locale\r\n )\r\n return localeInfo ? localeInfo.label : locale\r\n}\r\n\r\n// 获取语言旗帜\r\nfunction getLocaleFlag(locale: \"zh-CN\" | \"en-US\" | \"de-DE\"): string {\r\n const localeInfo = supportedLocales.value.find(\r\n (item) => item.value === locale\r\n )\r\n return localeInfo ? localeInfo.flag : \"\"\r\n}\r\n\r\n// 直接暴露i18n实例供组件使用\r\nexport { uiI18n }\r\n\r\n// 暴露状态和方法供外部调用\r\nexport {\r\n currentLocale,\r\n supportedLocales,\r\n currentLocaleInfo,\r\n switchUILocale,\r\n getLocaleLabel,\r\n getLocaleFlag,\r\n}\r\n"],"mappings":";;;;;;AAKA,IAAI,CAAC,iBAAQ,CAAC,iBAAQ,CAAC,eACrB,QAAQ,MAAM,gDAAgD;CAC5D,MAAA;CACA,MAAA;CACA,MAAA;AACF,CAAC;AAIH,IAAM,SAAS,WAAW;CACxB,QAAQ;CACR,QAAQ;CACR,gBAAgB;CAChB,UAAU;EACR,SAAS,iBAAQ,CAAC;EAClB,SAAS,iBAAQ,CAAC;EAClB,SAAS,iBAAQ,CAAC;CACpB;AACF,CAAC;AAGD,IAAI,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,OAAO,OAAO,GAC9C,QAAQ,MAAM,kDAAkD;AAIlE,IAAM,gBAAgB,IAAiC,OAAO;AAG9D,YACQ,OAAO,OAAO,OAAO,QAC1B,cAAc;CACb,cAAc,QAAQ;AACxB,CACF;AAGA,IAAM,mBAEF,IAAI;CACN;EAAE,OAAO;EAAS,OAAO;EAAM,MAAM;CAAO;CAC5C;EAAE,OAAO;EAAS,OAAO;EAAW,MAAM;CAAO;CACjD;EAAE,OAAO;EAAS,OAAO;EAAW,MAAM;CAAO;AACnD,CAAC;AAGyB,eAAe;CACvC,OAAO,iBAAiB,MAAM,MAC3B,WAAW,OAAO,UAAU,cAAc,KAC7C;AACF,CAAC;AAGD,SAAS,eAAe,QAAqC;CAC3D,IAAI,WAAW,cAAc,OAC3B,OAAO,OAAO,OAAO,QAAQ;AAGjC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { App } from 'vue';
|
|
2
|
+
import { BtnGlobalConfig } from '../components/btn/config';
|
|
3
|
+
import { BtnGroupGlobalConfig } from '../components/btnGroup/config';
|
|
4
|
+
import { TreeGlobalConfig } from '../components/tree/config';
|
|
5
|
+
import { TreeChooseGlobalConfig } from '../components/tree-choose/config';
|
|
6
|
+
import { ColorPickerGlobalConfig } from '../components/colorPicker/config';
|
|
7
|
+
import { UploadGlobalConfig } from '../components/upload/config';
|
|
8
|
+
import { IconGlobalConfig } from '../components/icon/config';
|
|
9
|
+
import { DatePickerGlobalConfig } from '../components/date/config';
|
|
10
|
+
import { FormGlobalConfig } from '../components/form/config';
|
|
11
|
+
import { FormItemGlobalConfig } from '../components/formItem/config';
|
|
12
|
+
import { PaginationGlobalConfig } from '../components/pagination/src/config';
|
|
13
|
+
import { ListGlobalConfig } from '../components/list/List';
|
|
14
|
+
import { SwitchGlobalConfig } from '../components/switch/config';
|
|
15
|
+
import { CheckboxGlobalConfig } from '../components/checkbox/config';
|
|
16
|
+
import { RadioGlobalConfig } from '../components/radio/config';
|
|
17
|
+
import { ChooseGlobalConfig } from '../components/choose/config';
|
|
18
|
+
import { ChooseItemGlobalConfig } from '../components/chooseItem/config';
|
|
19
|
+
import { Choose2GlobalConfig } from '../components/choose2/config';
|
|
20
|
+
import { MatchGlobalConfig } from '../components/match/config';
|
|
21
|
+
import { CascadeGlobalConfig } from '../components/cascade/config';
|
|
22
|
+
import { NumGlobalConfig } from '../components/number/config';
|
|
23
|
+
import { MaskGlobalConfig } from '../components/mask/config';
|
|
24
|
+
import { ModalGlobalConfig } from '../components/modal/config';
|
|
25
|
+
import { ConfirmGlobalConfig } from '../components/confirm';
|
|
26
|
+
import { NoticeGlobalConfig } from '../components/notice';
|
|
27
|
+
import { EmptyGlobalConfig } from '../components/empty/config';
|
|
28
|
+
import { LoadingGlobalConfig } from '../components/loading/config';
|
|
29
|
+
import { LcdFontGlobalConfig } from '../components/lcdFont/config';
|
|
30
|
+
import { DrawerGlobalConfig } from '../components/drawer/config';
|
|
31
|
+
import { CopyGlobalConfig } from '../components/copy/config';
|
|
32
|
+
import { ImageGlobalConfig } from '../components/image/config';
|
|
33
|
+
import { PictureGlobalConfig } from '../components/picture/config';
|
|
34
|
+
import { TextareaGlobalConfig } from '../components/textarea/config';
|
|
35
|
+
export type LocaleType = 'zh-CN' | 'en-US' | 'de-DE';
|
|
36
|
+
export type ThemeType = 'light' | 'dark';
|
|
37
|
+
export interface ComponentConfig {
|
|
38
|
+
[key: string]: any;
|
|
39
|
+
}
|
|
40
|
+
export interface UIComponentsConfig {
|
|
41
|
+
Btn?: BtnGlobalConfig;
|
|
42
|
+
BtnGroup?: BtnGroupGlobalConfig;
|
|
43
|
+
Tree?: TreeGlobalConfig;
|
|
44
|
+
TreeChoose?: TreeChooseGlobalConfig;
|
|
45
|
+
ColorPicker?: ColorPickerGlobalConfig;
|
|
46
|
+
Upload?: UploadGlobalConfig;
|
|
47
|
+
Icon?: IconGlobalConfig;
|
|
48
|
+
DatePicker?: DatePickerGlobalConfig;
|
|
49
|
+
Form?: FormGlobalConfig;
|
|
50
|
+
FormItem?: FormItemGlobalConfig;
|
|
51
|
+
Pagination?: PaginationGlobalConfig;
|
|
52
|
+
List?: ListGlobalConfig;
|
|
53
|
+
Switch?: SwitchGlobalConfig;
|
|
54
|
+
Checkbox?: CheckboxGlobalConfig;
|
|
55
|
+
Radio?: RadioGlobalConfig;
|
|
56
|
+
Choose?: ChooseGlobalConfig;
|
|
57
|
+
ChooseItem?: ChooseItemGlobalConfig;
|
|
58
|
+
Choose2?: Choose2GlobalConfig;
|
|
59
|
+
Match?: MatchGlobalConfig;
|
|
60
|
+
Cascade?: CascadeGlobalConfig;
|
|
61
|
+
Num?: NumGlobalConfig;
|
|
62
|
+
Mask?: MaskGlobalConfig;
|
|
63
|
+
Modal?: ModalGlobalConfig;
|
|
64
|
+
Drawer?: DrawerGlobalConfig;
|
|
65
|
+
Notice?: NoticeGlobalConfig;
|
|
66
|
+
Confirm?: ConfirmGlobalConfig;
|
|
67
|
+
Empty?: EmptyGlobalConfig;
|
|
68
|
+
Loading?: LoadingGlobalConfig;
|
|
69
|
+
LcdFont?: LcdFontGlobalConfig;
|
|
70
|
+
Copy?: CopyGlobalConfig;
|
|
71
|
+
Image?: ImageGlobalConfig;
|
|
72
|
+
Picture?: PictureGlobalConfig;
|
|
73
|
+
Textarea?: TextareaGlobalConfig;
|
|
74
|
+
[name: string]: ComponentConfig | undefined;
|
|
75
|
+
}
|
|
76
|
+
export interface UIPluginConfig {
|
|
77
|
+
locale?: LocaleType;
|
|
78
|
+
theme?: ThemeType;
|
|
79
|
+
prefix?: string;
|
|
80
|
+
components?: UIComponentsConfig;
|
|
81
|
+
}
|
|
82
|
+
export interface UIContext {
|
|
83
|
+
config: UIPluginConfig;
|
|
84
|
+
app: App;
|
|
85
|
+
}
|
|
86
|
+
export declare const defaultConfig: UIPluginConfig;
|
|
87
|
+
export declare const UI_CONFIG_KEY: unique symbol;
|
|
88
|
+
export declare const UI_CONTEXT_KEY: unique symbol;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region config/plugin.ts
|
|
2
|
+
var defaultConfig = {
|
|
3
|
+
locale: "zh-CN",
|
|
4
|
+
theme: "light",
|
|
5
|
+
prefix: "",
|
|
6
|
+
components: {}
|
|
7
|
+
};
|
|
8
|
+
var UI_CONFIG_KEY = Symbol("UI_CONFIG");
|
|
9
|
+
var UI_CONTEXT_KEY = Symbol("UI_CONTEXT");
|
|
10
|
+
//#endregion
|
|
11
|
+
export { UI_CONFIG_KEY, UI_CONTEXT_KEY, defaultConfig };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.js","names":[],"sources":["../../config/plugin.ts"],"sourcesContent":["import type { App } from 'vue'\r\nimport type { BtnGlobalConfig } from '../components/btn/config'\r\nimport type { BtnGroupGlobalConfig } from '../components/btnGroup/config'\r\nimport type { TreeGlobalConfig } from '../components/tree/config'\r\nimport type { TreeChooseGlobalConfig } from '../components/tree-choose/config'\r\nimport type { ColorPickerGlobalConfig } from '../components/colorPicker/config'\r\nimport type { UploadGlobalConfig } from '../components/upload/config'\r\nimport type { IconGlobalConfig } from '../components/icon/config'\r\nimport type { DatePickerGlobalConfig } from '../components/date/config'\r\nimport type { FormGlobalConfig } from '../components/form/config'\r\nimport type { FormItemGlobalConfig } from '../components/formItem/config'\r\nimport type { PaginationGlobalConfig } from '../components/pagination/src/config'\r\nimport type { ListGlobalConfig } from '../components/list/List'\r\nimport type { SwitchGlobalConfig } from '../components/switch/config'\r\nimport type { CheckboxGlobalConfig } from '../components/checkbox/config'\r\nimport type { RadioGlobalConfig } from '../components/radio/config'\r\nimport type { ChooseGlobalConfig } from '../components/choose/config'\r\nimport type { ChooseItemGlobalConfig } from '../components/chooseItem/config'\r\nimport type { Choose2GlobalConfig } from '../components/choose2/config'\r\nimport type { MatchGlobalConfig } from '../components/match/config'\r\nimport type { CascadeGlobalConfig } from '../components/cascade/config'\r\nimport type { NumGlobalConfig } from '../components/number/config'\r\nimport type { MaskGlobalConfig } from '../components/mask/config'\r\nimport type { ModalGlobalConfig } from '../components/modal/config'\r\nimport type { ConfirmGlobalConfig } from '../components/confirm'\r\nimport type { NoticeGlobalConfig } from '../components/notice'\r\nimport type { EmptyGlobalConfig } from '../components/empty/config'\r\nimport type { LoadingGlobalConfig } from '../components/loading/config'\r\nimport type { LcdFontGlobalConfig } from '../components/lcdFont/config'\r\nimport type { DrawerGlobalConfig } from '../components/drawer/config'\r\nimport type { CopyGlobalConfig } from '../components/copy/config'\r\nimport type { ImageGlobalConfig } from '../components/image/config'\r\nimport type { PictureGlobalConfig } from '../components/picture/config'\r\nimport type { TextareaGlobalConfig } from '../components/textarea/config'\r\n\r\nexport type LocaleType = 'zh-CN' | 'en-US' | 'de-DE'\r\nexport type ThemeType = 'light' | 'dark'\r\n\r\nexport interface ComponentConfig {\r\n [key: string]: any\r\n}\r\n\r\nexport interface UIComponentsConfig {\r\n Btn?: BtnGlobalConfig\r\n BtnGroup?: BtnGroupGlobalConfig\r\n Tree?: TreeGlobalConfig\r\n TreeChoose?: TreeChooseGlobalConfig\r\n ColorPicker?: ColorPickerGlobalConfig\r\n Upload?: UploadGlobalConfig\r\n Icon?: IconGlobalConfig\r\n DatePicker?: DatePickerGlobalConfig\r\n Form?: FormGlobalConfig\r\n FormItem?: FormItemGlobalConfig\r\n Pagination?: PaginationGlobalConfig\r\n List?: ListGlobalConfig\r\n Switch?: SwitchGlobalConfig\r\n Checkbox?: CheckboxGlobalConfig\r\n Radio?: RadioGlobalConfig\r\n Choose?: ChooseGlobalConfig\r\n ChooseItem?: ChooseItemGlobalConfig\r\n Choose2?: Choose2GlobalConfig\r\n Match?: MatchGlobalConfig\r\n Cascade?: CascadeGlobalConfig\r\n Num?: NumGlobalConfig\r\n Mask?: MaskGlobalConfig\r\n Modal?: ModalGlobalConfig\r\n Drawer?: DrawerGlobalConfig\r\n Notice?: NoticeGlobalConfig\r\n Confirm?: ConfirmGlobalConfig\r\n Empty?: EmptyGlobalConfig\r\n Loading?: LoadingGlobalConfig\r\n LcdFont?: LcdFontGlobalConfig\r\n Copy?: CopyGlobalConfig\r\n Image?: ImageGlobalConfig\r\n Picture?: PictureGlobalConfig\r\n Textarea?: TextareaGlobalConfig\r\n [name: string]: ComponentConfig | undefined\r\n}\r\n\r\nexport interface UIPluginConfig {\r\n locale?: LocaleType\r\n theme?: ThemeType\r\n prefix?: string\r\n components?: UIComponentsConfig\r\n}\r\n\r\nexport interface UIContext {\r\n config: UIPluginConfig\r\n app: App\r\n}\r\n\r\nexport const defaultConfig: UIPluginConfig = {\r\n locale: 'zh-CN',\r\n theme: 'light',\r\n prefix: '',\r\n components: {},\r\n}\r\n\r\nexport const UI_CONFIG_KEY = Symbol('UI_CONFIG')\r\nexport const UI_CONTEXT_KEY = Symbol('UI_CONTEXT')\r\n"],"mappings":";AA2FA,IAAa,gBAAgC;CAC3C,QAAQ;CACR,OAAO;CACP,QAAQ;CACR,YAAY,CAAC;AACf;AAEA,IAAa,gBAAgB,OAAO,WAAW;AAC/C,IAAa,iBAAiB,OAAO,YAAY"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { EnumPlacement, EnumBtnType } from './dictionary';
|
|
2
|
+
export interface ComponentProps {
|
|
3
|
+
[k: string]: {
|
|
4
|
+
type: any;
|
|
5
|
+
default?: any;
|
|
6
|
+
[p: string]: any;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
export type RectType = {
|
|
10
|
+
top: number;
|
|
11
|
+
bottom: number;
|
|
12
|
+
left: number;
|
|
13
|
+
right: number;
|
|
14
|
+
width: number;
|
|
15
|
+
height: number;
|
|
16
|
+
[key: string]: number;
|
|
17
|
+
};
|
|
18
|
+
export type PlacementType = keyof typeof EnumPlacement;
|
|
19
|
+
export type AdjustmentPosition = "none" | "auto" | "right" | "left" | "bottom" | "top";
|
|
20
|
+
export type EmptyObject = {
|
|
21
|
+
[key: string]: any;
|
|
22
|
+
};
|
|
23
|
+
export type BtnType = keyof typeof EnumBtnType;
|
|
24
|
+
export type BtnMode = "text" | "line";
|
|
25
|
+
export type TriggerType = "hover" | "click" | "focus";
|
|
26
|
+
export type DataItemType = boolean | number | string | symbol | object;
|
|
27
|
+
export type ToggleTransformType = "scale" | "translate";
|
|
28
|
+
export type DateType = number | string | Date | undefined;
|
|
29
|
+
export type DateFormatType = "yyyy" | "yyyy-MM" | "yyyy-MM-dd" | "yyyy-MM-dd HH" | "yyyy-MM-dd HH:mm" | "yyyy-MM-dd HH:mm:ss" | "MM-dd";
|
|
30
|
+
export type TimeFormatType = "HH" | "HH:mm" | "HH:mm:ss";
|
|
31
|
+
export type DragDirection = {
|
|
32
|
+
x: boolean;
|
|
33
|
+
y: boolean;
|
|
34
|
+
};
|
|
35
|
+
/** 校验触发时机 */
|
|
36
|
+
export type FormRuleTrigger = 'blur' | 'change' | string;
|
|
37
|
+
/** 单条校验规则(兼容 async-validator) */
|
|
38
|
+
export interface FormRuleItem {
|
|
39
|
+
required?: boolean;
|
|
40
|
+
message?: string;
|
|
41
|
+
type?: string;
|
|
42
|
+
pattern?: RegExp;
|
|
43
|
+
min?: number;
|
|
44
|
+
max?: number;
|
|
45
|
+
len?: number;
|
|
46
|
+
enum?: any[];
|
|
47
|
+
whitespace?: boolean;
|
|
48
|
+
trigger?: FormRuleTrigger | FormRuleTrigger[];
|
|
49
|
+
validator?: (rule: any, value: any, callback: (error?: Error | string) => void) => void;
|
|
50
|
+
asyncValidator?: (rule: any, value: any) => Promise<void>;
|
|
51
|
+
[key: string]: any;
|
|
52
|
+
}
|
|
53
|
+
/** @deprecated 使用 FormRuleItem */
|
|
54
|
+
export type Rules = FormRuleItem;
|
|
55
|
+
/** 表单 rules:字段名 -> 单条或多条规则 */
|
|
56
|
+
export type FormRules = Record<string, FormRuleItem | FormRuleItem[]>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Ref, ObjectDirective } from 'vue';
|
|
2
|
+
type ClickOutsideHandler = (event: Event) => void;
|
|
3
|
+
interface ClickOutsideOptions {
|
|
4
|
+
exclude: Ref<HTMLElement>[];
|
|
5
|
+
handler: ClickOutsideHandler;
|
|
6
|
+
clickOutside?: () => void;
|
|
7
|
+
}
|
|
8
|
+
export type ClickOutsideBinding = ClickOutsideOptions | ClickOutsideHandler;
|
|
9
|
+
declare const _default: ObjectDirective<any, any, string, any>;
|
|
10
|
+
export default _default;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { isFunction, isObject } from "../util/tools.js";
|
|
2
|
+
import { getElement, isElement } from "../util/dom.js";
|
|
3
|
+
//#region directives/clickOutside.ts
|
|
4
|
+
var NOOP = () => {};
|
|
5
|
+
var docHandlers = /* @__PURE__ */ new Map();
|
|
6
|
+
function createHandler(el, bindingValue) {
|
|
7
|
+
const exclude = [el];
|
|
8
|
+
let handler = NOOP;
|
|
9
|
+
let clickOutside = () => {};
|
|
10
|
+
if (isFunction(bindingValue)) handler = bindingValue;
|
|
11
|
+
else if (isObject(bindingValue)) {
|
|
12
|
+
const _els = [];
|
|
13
|
+
let i = 0;
|
|
14
|
+
const len = bindingValue.exclude.length;
|
|
15
|
+
while (i < len) {
|
|
16
|
+
const _el = getElement(bindingValue.exclude[i]);
|
|
17
|
+
if (_el && isElement(_el)) _els.push(_el);
|
|
18
|
+
i++;
|
|
19
|
+
}
|
|
20
|
+
exclude.push(..._els);
|
|
21
|
+
handler = bindingValue.handler;
|
|
22
|
+
if (bindingValue.clickOutside) clickOutside = bindingValue.clickOutside;
|
|
23
|
+
}
|
|
24
|
+
docHandlers.set(el, {
|
|
25
|
+
exclude,
|
|
26
|
+
handler,
|
|
27
|
+
clickOutside,
|
|
28
|
+
isOut: {
|
|
29
|
+
mousedown: false,
|
|
30
|
+
mouseup: false
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
var clickout = () => {
|
|
35
|
+
return {
|
|
36
|
+
mounted(el, binding) {
|
|
37
|
+
createHandler(el, binding.value);
|
|
38
|
+
},
|
|
39
|
+
updated(el, binding) {
|
|
40
|
+
createHandler(el, binding.value);
|
|
41
|
+
},
|
|
42
|
+
unmounted(el) {
|
|
43
|
+
docHandlers.delete(el);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
var docListener = (e) => {
|
|
48
|
+
const tar = e.target;
|
|
49
|
+
docHandlers.forEach(({ exclude, handler, clickOutside, isOut }, el) => {
|
|
50
|
+
const isSelf = tar === el;
|
|
51
|
+
const isContain = el.contains(tar);
|
|
52
|
+
const isExclude = exclude.length && exclude.some((_el) => _el && (_el === tar || _el.contains(tar)));
|
|
53
|
+
if (isSelf || isContain || isExclude) {
|
|
54
|
+
if (e.type === "mousedown" || e.type === "mouseup") isOut[e.type] = false;
|
|
55
|
+
return;
|
|
56
|
+
} else if (e.type === "mousedown" || e.type === "mouseup") isOut[e.type] = true;
|
|
57
|
+
if (isOut.mousedown && isOut.mouseup) {
|
|
58
|
+
handler(e);
|
|
59
|
+
clickOutside?.();
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
};
|
|
63
|
+
document.addEventListener("mousedown", docListener);
|
|
64
|
+
document.addEventListener("mouseup", docListener);
|
|
65
|
+
var clickOutside_default = clickout();
|
|
66
|
+
//#endregion
|
|
67
|
+
export { clickOutside_default as default };
|
|
68
|
+
|
|
69
|
+
//# sourceMappingURL=clickOutside.js.map
|