@will-ui/vue 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +48 -0
- package/TAILWIND.md +282 -0
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/components/audioPlayer/AudioPlayer.d.ts +123 -0
- package/dist/components/audioPlayer/AudioPlayer.js +375 -0
- package/dist/components/audioPlayer/AudioPlayer.js.map +1 -0
- package/dist/components/audioPlayer/index.d.ts +2 -0
- package/dist/components/audioPlayer/style/index.css +1 -0
- package/dist/components/btn/Btn.d.ts +45 -0
- package/dist/components/btn/Btn.js +165 -0
- package/dist/components/btn/Btn.js.map +1 -0
- package/dist/components/btn/config.d.ts +33 -0
- package/dist/components/btn/config.js +20 -0
- package/dist/components/btn/config.js.map +1 -0
- package/dist/components/btn/context.d.ts +12 -0
- package/dist/components/btn/context.js +6 -0
- package/dist/components/btn/context.js.map +1 -0
- package/dist/components/btn/index.d.ts +5 -0
- package/dist/components/btn/style/index.css +1 -0
- package/dist/components/btnGroup/BtnGroup.d.ts +46 -0
- package/dist/components/btnGroup/BtnGroup.js +43 -0
- package/dist/components/btnGroup/BtnGroup.js.map +1 -0
- package/dist/components/btnGroup/config.d.ts +14 -0
- package/dist/components/btnGroup/config.js +11 -0
- package/dist/components/btnGroup/config.js.map +1 -0
- package/dist/components/btnGroup/index.d.ts +3 -0
- package/dist/components/btnGroup/style/index.css +1 -0
- package/dist/components/cascade/Cascade.d.ts +1957 -0
- package/dist/components/cascade/Cascade.js +283 -0
- package/dist/components/cascade/Cascade.js.map +1 -0
- package/dist/components/cascade/config.d.ts +30 -0
- package/dist/components/cascade/config.js +18 -0
- package/dist/components/cascade/config.js.map +1 -0
- package/dist/components/cascade/index.d.ts +3 -0
- package/dist/components/cascade/style/index.css +1 -0
- package/dist/components/checkbox/Checkbox.d.ts +241 -0
- package/dist/components/checkbox/Checkbox.js +182 -0
- package/dist/components/checkbox/Checkbox.js.map +1 -0
- package/dist/components/checkbox/config.d.ts +18 -0
- package/dist/components/checkbox/config.js +11 -0
- package/dist/components/checkbox/config.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/style/index.css +1 -0
- package/dist/components/choose/Choose.d.ts +1016 -0
- package/dist/components/choose/Choose.js +402 -0
- package/dist/components/choose/Choose.js.map +1 -0
- package/dist/components/choose/config.d.ts +37 -0
- package/dist/components/choose/config.js +21 -0
- package/dist/components/choose/config.js.map +1 -0
- package/dist/components/choose/index.d.ts +3 -0
- package/dist/components/choose/injectionKey.d.ts +12 -0
- package/dist/components/choose/injectionKey.js +11 -0
- package/dist/components/choose/injectionKey.js.map +1 -0
- package/dist/components/choose/style/index.css +1 -0
- package/dist/components/choose2/Choose2.d.ts +1711 -0
- package/dist/components/choose2/Choose2.js +403 -0
- package/dist/components/choose2/Choose2.js.map +1 -0
- package/dist/components/choose2/config.d.ts +37 -0
- package/dist/components/choose2/config.js +20 -0
- package/dist/components/choose2/config.js.map +1 -0
- package/dist/components/choose2/index.d.ts +3 -0
- package/dist/components/choose2/style/index.css +1 -0
- package/dist/components/chooseItem/ChooseItem.d.ts +46 -0
- package/dist/components/chooseItem/ChooseItem.js +72 -0
- package/dist/components/chooseItem/ChooseItem.js.map +1 -0
- package/dist/components/chooseItem/config.d.ts +12 -0
- package/dist/components/chooseItem/config.js +9 -0
- package/dist/components/chooseItem/config.js.map +1 -0
- package/dist/components/chooseItem/index.d.ts +3 -0
- package/dist/components/chooseItem/style/index.css +1 -0
- package/dist/components/circleProgress/CircleProgress.d.ts +83 -0
- package/dist/components/circleProgress/CircleProgress.js +108 -0
- package/dist/components/circleProgress/CircleProgress.js.map +1 -0
- package/dist/components/circleProgress/index.d.ts +1 -0
- package/dist/components/circleProgress/style/index.css +1 -0
- package/dist/components/close/Close.d.ts +114 -0
- package/dist/components/close/Close.js +82 -0
- package/dist/components/close/Close.js.map +1 -0
- package/dist/components/close/index.d.ts +1 -0
- package/dist/components/close/style/index.css +1 -0
- package/dist/components/colorPicker/ColorPicker.d.ts +138 -0
- package/dist/components/colorPicker/ColorPicker.js +404 -0
- package/dist/components/colorPicker/ColorPicker.js.map +1 -0
- package/dist/components/colorPicker/config.d.ts +24 -0
- package/dist/components/colorPicker/config.js +14 -0
- package/dist/components/colorPicker/config.js.map +1 -0
- package/dist/components/colorPicker/index.d.ts +4 -0
- package/dist/components/colorPicker/style/index.css +1 -0
- package/dist/components/confirm/index.d.ts +73 -0
- package/dist/components/confirm/index.js +177 -0
- package/dist/components/confirm/index.js.map +1 -0
- package/dist/components/confirm/src/style/index.css +1 -0
- package/dist/components/copy/Copy.d.ts +28 -0
- package/dist/components/copy/Copy.js +110 -0
- package/dist/components/copy/Copy.js.map +1 -0
- package/dist/components/copy/config.d.ts +25 -0
- package/dist/components/copy/config.js +13 -0
- package/dist/components/copy/config.js.map +1 -0
- package/dist/components/copy/index.d.ts +5 -0
- package/dist/components/copy/spawnCopyToast.d.ts +13 -0
- package/dist/components/copy/spawnCopyToast.js +150 -0
- package/dist/components/copy/spawnCopyToast.js.map +1 -0
- package/dist/components/copy/style/index.css +1 -0
- package/dist/components/cornerEars/CornerEars.d.ts +24 -0
- package/dist/components/cornerEars/CornerEars.js +108 -0
- package/dist/components/cornerEars/CornerEars.js.map +1 -0
- package/dist/components/cornerEars/cornerGeometry.d.ts +8 -0
- package/dist/components/cornerEars/cornerGeometry.js +63 -0
- package/dist/components/cornerEars/cornerGeometry.js.map +1 -0
- package/dist/components/cornerEars/index.d.ts +2 -0
- package/dist/components/cornerEars/style/index.css +1 -0
- package/dist/components/date/DatePanel.js +398 -0
- package/dist/components/date/DatePanel.js.map +1 -0
- package/dist/components/date/DatePicker.d.ts +226 -0
- package/dist/components/date/DatePicker.js +349 -0
- package/dist/components/date/DatePicker.js.map +1 -0
- package/dist/components/date/Days.d.ts +44 -0
- package/dist/components/date/Days.js +93 -0
- package/dist/components/date/Days.js.map +1 -0
- package/dist/components/date/Months.d.ts +32 -0
- package/dist/components/date/Months.js +87 -0
- package/dist/components/date/Months.js.map +1 -0
- package/dist/components/date/QuickDate.d.ts +24 -0
- package/dist/components/date/QuickDate.js +48 -0
- package/dist/components/date/QuickDate.js.map +1 -0
- package/dist/components/date/Years.d.ts +38 -0
- package/dist/components/date/Years.js +85 -0
- package/dist/components/date/Years.js.map +1 -0
- package/dist/components/date/_use/quickDate.d.ts +4 -0
- package/dist/components/date/_use/quickDate.js +30 -0
- package/dist/components/date/_use/quickDate.js.map +1 -0
- package/dist/components/date/_use/useDateModules.d.ts +37 -0
- package/dist/components/date/_use/useDateModules.js +100 -0
- package/dist/components/date/_use/useDateModules.js.map +1 -0
- package/dist/components/date/config.d.ts +32 -0
- package/dist/components/date/config.js +18 -0
- package/dist/components/date/config.js.map +1 -0
- package/dist/components/date/index.d.ts +3 -0
- package/dist/components/date/style/index.css +1 -0
- package/dist/components/date/types.d.ts +32 -0
- package/dist/components/drawer/Drawer.d.ts +332 -0
- package/dist/components/drawer/Drawer.js +329 -0
- package/dist/components/drawer/Drawer.js.map +1 -0
- package/dist/components/drawer/config.d.ts +28 -0
- package/dist/components/drawer/config.js +16 -0
- package/dist/components/drawer/config.js.map +1 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/drawer/src/style/drawer.css +1 -0
- package/dist/components/ellipsis/Ellipsis.d.ts +74 -0
- package/dist/components/ellipsis/Ellipsis.js +103 -0
- package/dist/components/ellipsis/Ellipsis.js.map +1 -0
- package/dist/components/ellipsis/index.d.ts +1 -0
- package/dist/components/ellipsis/style/index.css +1 -0
- package/dist/components/empty/Empty.d.ts +92 -0
- package/dist/components/empty/Empty.js +85 -0
- package/dist/components/empty/Empty.js.map +1 -0
- package/dist/components/empty/config.d.ts +23 -0
- package/dist/components/empty/config.js +14 -0
- package/dist/components/empty/config.js.map +1 -0
- package/dist/components/empty/index.d.ts +3 -0
- package/dist/components/empty/style/index.css +1 -0
- package/dist/components/empty/type.d.ts +9 -0
- package/dist/components/equalizer/Equalizer.d.ts +62 -0
- package/dist/components/equalizer/Equalizer.js +56 -0
- package/dist/components/equalizer/Equalizer.js.map +1 -0
- package/dist/components/equalizer/index.d.ts +1 -0
- package/dist/components/equalizer/style/index.css +1 -0
- package/dist/components/fallback/Fallback.d.ts +44 -0
- package/dist/components/fallback/Fallback.js +55 -0
- package/dist/components/fallback/Fallback.js.map +1 -0
- package/dist/components/fallback/index.d.ts +1 -0
- package/dist/components/fallback/style/index.css +1 -0
- package/dist/components/form/Form.d.ts +169 -0
- package/dist/components/form/Form.js +235 -0
- package/dist/components/form/Form.js.map +1 -0
- package/dist/components/form/_use/formRules.d.ts +18 -0
- package/dist/components/form/_use/formRules.js +80 -0
- package/dist/components/form/_use/formRules.js.map +1 -0
- package/dist/components/form/config.d.ts +35 -0
- package/dist/components/form/config.js +20 -0
- package/dist/components/form/config.js.map +1 -0
- package/dist/components/form/context.d.ts +34 -0
- package/dist/components/form/context.js +8 -0
- package/dist/components/form/context.js.map +1 -0
- package/dist/components/form/index.d.ts +3 -0
- package/dist/components/form/style/index.css +1 -0
- package/dist/components/formItem/FormItem.d.ts +144 -0
- package/dist/components/formItem/FormItem.js +218 -0
- package/dist/components/formItem/FormItem.js.map +1 -0
- package/dist/components/formItem/config.d.ts +21 -0
- package/dist/components/formItem/config.js +12 -0
- package/dist/components/formItem/config.js.map +1 -0
- package/dist/components/formItem/context.d.ts +22 -0
- package/dist/components/formItem/context.js +8 -0
- package/dist/components/formItem/context.js.map +1 -0
- package/dist/components/formItem/index.d.ts +3 -0
- package/dist/components/formItem/style/index.css +1 -0
- package/dist/components/icon/Icon.d.ts +117 -0
- package/dist/components/icon/Icon.js +116 -0
- package/dist/components/icon/Icon.js.map +1 -0
- package/dist/components/icon/config.d.ts +28 -0
- package/dist/components/icon/config.js +16 -0
- package/dist/components/icon/config.js.map +1 -0
- package/dist/components/icon/index.d.ts +4 -0
- package/dist/components/icon/style/index.css +1 -0
- package/dist/components/icon/type.d.ts +16 -0
- package/dist/components/image/Image.d.ts +21 -0
- package/dist/components/image/Image.js +68 -0
- package/dist/components/image/Image.js.map +1 -0
- package/dist/components/image/config.d.ts +21 -0
- package/dist/components/image/config.js +11 -0
- package/dist/components/image/config.js.map +1 -0
- package/dist/components/image/index.d.ts +4 -0
- package/dist/components/image/style/index.css +1 -0
- package/dist/components/index.d.ts +79 -0
- package/dist/components/index.js +124 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/layer/Layer.d.ts +410 -0
- package/dist/components/layer/Layer.js +557 -0
- package/dist/components/layer/Layer.js.map +1 -0
- package/dist/components/layer/index.d.ts +2 -0
- package/dist/components/layer/injectionKey.d.ts +5 -0
- package/dist/components/layer/injectionKey.js +6 -0
- package/dist/components/layer/injectionKey.js.map +1 -0
- package/dist/components/layer/style/index.css +1 -0
- package/dist/components/lcdFont/LcdFont.d.ts +126 -0
- package/dist/components/lcdFont/LcdFont.js +232 -0
- package/dist/components/lcdFont/LcdFont.js.map +1 -0
- package/dist/components/lcdFont/config.d.ts +43 -0
- package/dist/components/lcdFont/config.js +41 -0
- package/dist/components/lcdFont/config.js.map +1 -0
- package/dist/components/lcdFont/format.d.ts +8 -0
- package/dist/components/lcdFont/format.js +39 -0
- package/dist/components/lcdFont/format.js.map +1 -0
- package/dist/components/lcdFont/index.d.ts +5 -0
- package/dist/components/lcdFont/segments.d.ts +32 -0
- package/dist/components/lcdFont/segments.js +326 -0
- package/dist/components/lcdFont/segments.js.map +1 -0
- package/dist/components/lcdFont/style/index.css +1 -0
- package/dist/components/lcdFont/type.d.ts +26 -0
- package/dist/components/list/List.d.ts +480 -0
- package/dist/components/list/List.js +289 -0
- package/dist/components/list/List.js.map +1 -0
- package/dist/components/list/config.d.ts +3 -0
- package/dist/components/list/index.d.ts +3 -0
- package/dist/components/list/style/index.css +1 -0
- package/dist/components/loading/Loading.d.ts +97 -0
- package/dist/components/loading/Loading.js +124 -0
- package/dist/components/loading/Loading.js.map +1 -0
- package/dist/components/loading/config.d.ts +22 -0
- package/dist/components/loading/config.js +13 -0
- package/dist/components/loading/config.js.map +1 -0
- package/dist/components/loading/index.d.ts +3 -0
- package/dist/components/loading/style/index.css +1 -0
- package/dist/components/loading/type.d.ts +13 -0
- package/dist/components/mask/Mask.d.ts +79 -0
- package/dist/components/mask/Mask.js +82 -0
- package/dist/components/mask/Mask.js.map +1 -0
- package/dist/components/mask/config.d.ts +21 -0
- package/dist/components/mask/config.js +14 -0
- package/dist/components/mask/config.js.map +1 -0
- package/dist/components/mask/index.d.ts +3 -0
- package/dist/components/mask/style/mask.css +1 -0
- package/dist/components/match/Match copy.d.ts +1600 -0
- package/dist/components/match/Match.d.ts +1621 -0
- package/dist/components/match/Match.js +343 -0
- package/dist/components/match/Match.js.map +1 -0
- package/dist/components/match/config.d.ts +29 -0
- package/dist/components/match/config.js +17 -0
- package/dist/components/match/config.js.map +1 -0
- package/dist/components/match/index.d.ts +3 -0
- package/dist/components/match/style/index.css +1 -0
- package/dist/components/modal/Modal.d.ts +460 -0
- package/dist/components/modal/Modal.js +297 -0
- package/dist/components/modal/Modal.js.map +1 -0
- package/dist/components/modal/config.d.ts +33 -0
- package/dist/components/modal/config.js +19 -0
- package/dist/components/modal/config.js.map +1 -0
- package/dist/components/modal/index.d.ts +3 -0
- package/dist/components/modal/style/index.css +1 -0
- package/dist/components/notice/Notice.d.ts +137 -0
- package/dist/components/notice/Notice.js +192 -0
- package/dist/components/notice/Notice.js.map +1 -0
- package/dist/components/notice/index.d.ts +51 -0
- package/dist/components/notice/index.js +243 -0
- package/dist/components/notice/index.js.map +1 -0
- package/dist/components/notice/src/_util/index.d.ts +11 -0
- package/dist/components/notice/src/_util/index.js +50 -0
- package/dist/components/notice/src/_util/index.js.map +1 -0
- package/dist/components/notice/src/style/index.css +1 -0
- package/dist/components/notice/types.d.ts +98 -0
- package/dist/components/number/Number copy.d.ts +966 -0
- package/dist/components/number/Number.d.ts +1034 -0
- package/dist/components/number/Number.js +241 -0
- package/dist/components/number/Number.js.map +1 -0
- package/dist/components/number/config.d.ts +26 -0
- package/dist/components/number/config.js +15 -0
- package/dist/components/number/config.js.map +1 -0
- package/dist/components/number/index.d.ts +3 -0
- package/dist/components/number/style/index.css +1 -0
- package/dist/components/pagination/index.d.ts +3 -0
- package/dist/components/pagination/src/Pagination.d.ts +2830 -0
- package/dist/components/pagination/src/Pagination.js +288 -0
- package/dist/components/pagination/src/Pagination.js.map +1 -0
- package/dist/components/pagination/src/config.d.ts +25 -0
- package/dist/components/pagination/src/config.js +20 -0
- package/dist/components/pagination/src/config.js.map +1 -0
- package/dist/components/pagination/src/style/index.css +1 -0
- package/dist/components/picture/Picture.d.ts +18 -0
- package/dist/components/picture/Picture.js +254 -0
- package/dist/components/picture/Picture.js.map +1 -0
- package/dist/components/picture/PictureToolbar.d.ts +29 -0
- package/dist/components/picture/PictureToolbar.js +97 -0
- package/dist/components/picture/PictureToolbar.js.map +1 -0
- package/dist/components/picture/PictureViewport.d.ts +47 -0
- package/dist/components/picture/PictureViewport.js +203 -0
- package/dist/components/picture/PictureViewport.js.map +1 -0
- package/dist/components/picture/config.d.ts +16 -0
- package/dist/components/picture/config.js +16 -0
- package/dist/components/picture/config.js.map +1 -0
- package/dist/components/picture/index.d.ts +5 -0
- package/dist/components/picture/pictureFlip.d.ts +16 -0
- package/dist/components/picture/pictureFlip.js +103 -0
- package/dist/components/picture/pictureFlip.js.map +1 -0
- package/dist/components/picture/style/index.css +1 -0
- package/dist/components/progress/Progress.d.ts +94 -0
- package/dist/components/progress/Progress.js +112 -0
- package/dist/components/progress/Progress.js.map +1 -0
- package/dist/components/progress/index.d.ts +1 -0
- package/dist/components/progress/style/index.css +1 -0
- package/dist/components/radio/Radio.d.ts +112 -0
- package/dist/components/radio/Radio.js +130 -0
- package/dist/components/radio/Radio.js.map +1 -0
- package/dist/components/radio/config.d.ts +29 -0
- package/dist/components/radio/config.js +18 -0
- package/dist/components/radio/config.js.map +1 -0
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/style/index.css +1 -0
- package/dist/components/scrollbar/Scrollbar.d.ts +93 -0
- package/dist/components/scrollbar/Scrollbar.js +515 -0
- package/dist/components/scrollbar/Scrollbar.js.map +1 -0
- package/dist/components/scrollbar/index.d.ts +1 -0
- package/dist/components/scrollbar/style/index.css +1 -0
- package/dist/components/sheet/Sheet.d.ts +1448 -0
- package/dist/components/sheet/Sheet.js +592 -0
- package/dist/components/sheet/Sheet.js.map +1 -0
- package/dist/components/sheet/_cell.d.ts +181 -0
- package/dist/components/sheet/_cell.js +132 -0
- package/dist/components/sheet/_cell.js.map +1 -0
- package/dist/components/sheet/_props.d.ts +170 -0
- package/dist/components/sheet/_props.js +183 -0
- package/dist/components/sheet/_props.js.map +1 -0
- package/dist/components/sheet/_row.d.ts +2 -0
- package/dist/components/sheet/_row.js +14 -0
- package/dist/components/sheet/_row.js.map +1 -0
- package/dist/components/sheet/_tbody.d.ts +348 -0
- package/dist/components/sheet/_tbody.js +255 -0
- package/dist/components/sheet/_tbody.js.map +1 -0
- package/dist/components/sheet/_tfoot.d.ts +195 -0
- package/dist/components/sheet/_tfoot.js +78 -0
- package/dist/components/sheet/_tfoot.js.map +1 -0
- package/dist/components/sheet/_thead.d.ts +529 -0
- package/dist/components/sheet/_thead.js +148 -0
- package/dist/components/sheet/_thead.js.map +1 -0
- package/dist/components/sheet/_use.d.ts +38 -0
- package/dist/components/sheet/_use.js +493 -0
- package/dist/components/sheet/_use.js.map +1 -0
- package/dist/components/sheet/_util.d.ts +34 -0
- package/dist/components/sheet/_util.js +111 -0
- package/dist/components/sheet/_util.js.map +1 -0
- package/dist/components/sheet/index.d.ts +1 -0
- package/dist/components/sheet/style/index.css +1 -0
- package/dist/components/slideDown/SlideDown.d.ts +62 -0
- package/dist/components/slideDown/SlideDown.js +128 -0
- package/dist/components/slideDown/SlideDown.js.map +1 -0
- package/dist/components/slideDown/index.d.ts +1 -0
- package/dist/components/slider/Slider.d.ts +1726 -0
- package/dist/components/slider/Slider.js +471 -0
- package/dist/components/slider/Slider.js.map +1 -0
- package/dist/components/slider/index.d.ts +1 -0
- package/dist/components/slider/style/index.css +1 -0
- package/dist/components/svgIcon/SvgIcon.d.ts +37 -0
- package/dist/components/svgIcon/SvgIcon.js +78 -0
- package/dist/components/svgIcon/SvgIcon.js.map +1 -0
- package/dist/components/svgIcon/index.d.ts +3 -0
- package/dist/components/svgIcon/style/index.css +1 -0
- package/dist/components/switch/Switch.d.ts +105 -0
- package/dist/components/switch/Switch.js +158 -0
- package/dist/components/switch/Switch.js.map +1 -0
- package/dist/components/switch/config.d.ts +16 -0
- package/dist/components/switch/config.js +11 -0
- package/dist/components/switch/config.js.map +1 -0
- package/dist/components/switch/index.d.ts +1 -0
- package/dist/components/switch/style/index.css +1 -0
- package/dist/components/tab/Tab.d.ts +113 -0
- package/dist/components/tab/Tab.js +485 -0
- package/dist/components/tab/Tab.js.map +1 -0
- package/dist/components/tab/index.d.ts +2 -0
- package/dist/components/tab/style/index.css +1 -0
- package/dist/components/textarea/Textarea.d.ts +37 -0
- package/dist/components/textarea/Textarea.js +193 -0
- package/dist/components/textarea/Textarea.js.map +1 -0
- package/dist/components/textarea/config.d.ts +30 -0
- package/dist/components/textarea/config.js +16 -0
- package/dist/components/textarea/config.js.map +1 -0
- package/dist/components/textarea/index.d.ts +4 -0
- package/dist/components/textarea/style/index.css +1 -0
- package/dist/components/time/Dial.js +7 -0
- package/dist/components/time/Dial.js.map +1 -0
- package/dist/components/time/Dial.vue_vue_type_script_setup_true_lang.js +178 -0
- package/dist/components/time/Dial.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/time/TimePicker.d.ts +1301 -0
- package/dist/components/time/TimePicker.js +162 -0
- package/dist/components/time/TimePicker.js.map +1 -0
- package/dist/components/time/_use/useTimeModules.d.ts +1 -0
- package/dist/components/time/index.d.ts +1 -0
- package/dist/components/time/style/dial.css +1 -0
- package/dist/components/time/style/index.css +1 -0
- package/dist/components/toggle/Toggle.d.ts +140 -0
- package/dist/components/toggle/Toggle.js +209 -0
- package/dist/components/toggle/Toggle.js.map +1 -0
- package/dist/components/toggle/index.d.ts +1 -0
- package/dist/components/toggle/style/index.css +1 -0
- package/dist/components/toggle/style/scale.css +1 -0
- package/dist/components/toggle/style/translate.css +1 -0
- package/dist/components/tooltip/Tooltip.d.ts +536 -0
- package/dist/components/tooltip/Tooltip.js +51 -0
- package/dist/components/tooltip/Tooltip.js.map +1 -0
- package/dist/components/tooltip/index.d.ts +1 -0
- package/dist/components/tooltip/style/index.css +1 -0
- package/dist/components/tree/Tree.d.ts +187 -0
- package/dist/components/tree/Tree.js +229 -0
- package/dist/components/tree/Tree.js.map +1 -0
- package/dist/components/tree/TreeItem.d.ts +86 -0
- package/dist/components/tree/TreeItem.js +152 -0
- package/dist/components/tree/TreeItem.js.map +1 -0
- package/dist/components/tree/TreeList.d.ts +86 -0
- package/dist/components/tree/TreeList.js +52 -0
- package/dist/components/tree/TreeList.js.map +1 -0
- package/dist/components/tree/_use/treeState.d.ts +45 -0
- package/dist/components/tree/_use/treeState.js +417 -0
- package/dist/components/tree/_use/treeState.js.map +1 -0
- package/dist/components/tree/config.d.ts +27 -0
- package/dist/components/tree/config.js +16 -0
- package/dist/components/tree/config.js.map +1 -0
- package/dist/components/tree/index.d.ts +4 -0
- package/dist/components/tree/style/index.css +1 -0
- package/dist/components/tree-choose/TreeChoose.d.ts +833 -0
- package/dist/components/tree-choose/TreeChoose.js +320 -0
- package/dist/components/tree-choose/TreeChoose.js.map +1 -0
- package/dist/components/tree-choose/config.d.ts +41 -0
- package/dist/components/tree-choose/config.js +19 -0
- package/dist/components/tree-choose/config.js.map +1 -0
- package/dist/components/tree-choose/index.d.ts +4 -0
- package/dist/components/tree-choose/style/index.css +1 -0
- package/dist/components/trigger/Trigger.d.ts +921 -0
- package/dist/components/trigger/Trigger.js +105 -0
- package/dist/components/trigger/Trigger.js.map +1 -0
- package/dist/components/trigger/index.d.ts +1 -0
- package/dist/components/trigger/style/index.css +2 -0
- package/dist/components/upload/Upload.d.ts +249 -0
- package/dist/components/upload/Upload.js +342 -0
- package/dist/components/upload/Upload.js.map +1 -0
- package/dist/components/upload/config.d.ts +39 -0
- package/dist/components/upload/config.js +21 -0
- package/dist/components/upload/config.js.map +1 -0
- package/dist/components/upload/index.d.ts +4 -0
- package/dist/components/upload/style/index.css +1 -0
- package/dist/components/upload/types.d.ts +47 -0
- package/dist/components/virtual/Virtual.d.ts +57 -0
- package/dist/components/virtual/Virtual.js +62 -0
- package/dist/components/virtual/Virtual.js.map +1 -0
- package/dist/components/virtual/Virtual/345/216/237/347/211/210.d.ts +44 -0
- package/dist/components/virtual/index.d.ts +4 -0
- package/dist/components/virtual/style/index.css +1 -0
- package/dist/components/virtual/useVirtualList.d.ts +50 -0
- package/dist/components/virtual/useVirtualList.js +376 -0
- package/dist/components/virtual/useVirtualList.js.map +1 -0
- package/dist/components/write/Write.d.ts +532 -0
- package/dist/components/write/Write.js +228 -0
- package/dist/components/write/Write.js.map +1 -0
- package/dist/components/write/index.d.ts +1 -0
- package/dist/components/write/style/index.css +1 -0
- package/dist/config/dictionary.d.ts +21 -0
- package/dist/config/dictionary.js +28 -0
- package/dist/config/dictionary.js.map +1 -0
- package/dist/config/i18n.d.ts +22 -0
- package/dist/config/i18n.js +53 -0
- package/dist/config/i18n.js.map +1 -0
- package/dist/config/plugin.d.ts +88 -0
- package/dist/config/plugin.js +13 -0
- package/dist/config/plugin.js.map +1 -0
- package/dist/config/types.d.ts +56 -0
- package/dist/directives/clickOutside.d.ts +10 -0
- package/dist/directives/clickOutside.js +69 -0
- package/dist/directives/clickOutside.js.map +1 -0
- package/dist/directives/index.d.ts +3 -0
- package/dist/directives/index.js +13 -0
- package/dist/directives/index.js.map +1 -0
- package/dist/directives/loading.d.ts +19 -0
- package/dist/directives/loading.js +64 -0
- package/dist/directives/loading.js.map +1 -0
- package/dist/index.d.ts +127 -0
- package/dist/index.js +91 -0
- package/dist/locales/de-DE/index.d.ts +144 -0
- package/dist/locales/de-DE/index.js +140 -0
- package/dist/locales/de-DE/index.js.map +1 -0
- package/dist/locales/en-US/index.d.ts +144 -0
- package/dist/locales/en-US/index.js +140 -0
- package/dist/locales/en-US/index.js.map +1 -0
- package/dist/locales/index.d.ts +3 -0
- package/dist/locales/zh-CN/index.d.ts +144 -0
- package/dist/locales/zh-CN/index.js +140 -0
- package/dist/locales/zh-CN/index.js.map +1 -0
- package/dist/plugin.d.ts +6 -0
- package/dist/plugin.js +38 -0
- package/dist/plugin.js.map +1 -0
- package/dist/styles/index.css +49 -0
- package/dist/theme/_transition.css +169 -0
- package/dist/theme/index.css +5 -0
- package/dist/theme/tokens/_base.css +7 -0
- package/dist/theme/tokens/_common.css +37 -0
- package/dist/theme/tokens/_scrollbar.css +53 -0
- package/dist/theme/tokens/_size.css +18 -0
- package/dist/theme/tokens/_text.css +16 -0
- package/dist/theme/tokens/_var.css +1087 -0
- package/dist/theme/tokens/components/audioPlayer.css +542 -0
- package/dist/theme/tokens/components/btn.css +253 -0
- package/dist/theme/tokens/components/btnGroup.css +68 -0
- package/dist/theme/tokens/components/cascade.css +77 -0
- package/dist/theme/tokens/components/checkbox.css +100 -0
- package/dist/theme/tokens/components/choose.css +175 -0
- package/dist/theme/tokens/components/choose2.css +242 -0
- package/dist/theme/tokens/components/chooseItem.css +54 -0
- package/dist/theme/tokens/components/circleProgress.css +61 -0
- package/dist/theme/tokens/components/close.css +12 -0
- package/dist/theme/tokens/components/colorPicker.css +404 -0
- package/dist/theme/tokens/components/confirm.css +128 -0
- package/dist/theme/tokens/components/copy.css +80 -0
- package/dist/theme/tokens/components/cornerEars.css +102 -0
- package/dist/theme/tokens/components/date/days.css +79 -0
- package/dist/theme/tokens/components/date/index.css +249 -0
- package/dist/theme/tokens/components/date/months.css +68 -0
- package/dist/theme/tokens/components/drawer.css +189 -0
- package/dist/theme/tokens/components/ellipsis.css +46 -0
- package/dist/theme/tokens/components/empty.css +24 -0
- package/dist/theme/tokens/components/equalizer.css +51 -0
- package/dist/theme/tokens/components/fallback.css +4 -0
- package/dist/theme/tokens/components/form.css +50 -0
- package/dist/theme/tokens/components/formItem.css +194 -0
- package/dist/theme/tokens/components/icon.css +41 -0
- package/dist/theme/tokens/components/image.css +70 -0
- package/dist/theme/tokens/components/layer.css +190 -0
- package/dist/theme/tokens/components/lcdFont.css +121 -0
- package/dist/theme/tokens/components/list.css +97 -0
- package/dist/theme/tokens/components/loading.css +64 -0
- package/dist/theme/tokens/components/mask.css +26 -0
- package/dist/theme/tokens/components/match.css +119 -0
- package/dist/theme/tokens/components/modal.css +136 -0
- package/dist/theme/tokens/components/notice.css +264 -0
- package/dist/theme/tokens/components/number.css +150 -0
- package/dist/theme/tokens/components/pagination.css +215 -0
- package/dist/theme/tokens/components/picture.css +299 -0
- package/dist/theme/tokens/components/progress.css +101 -0
- package/dist/theme/tokens/components/radio.css +183 -0
- package/dist/theme/tokens/components/scrollbar.css +160 -0
- package/dist/theme/tokens/components/sheet.css +518 -0
- package/dist/theme/tokens/components/slider.css +171 -0
- package/dist/theme/tokens/components/svgIcon.css +6 -0
- package/dist/theme/tokens/components/switch.css +67 -0
- package/dist/theme/tokens/components/tab.css +215 -0
- package/dist/theme/tokens/components/textarea.css +109 -0
- package/dist/theme/tokens/components/time/dial.css +123 -0
- package/dist/theme/tokens/components/time/index.css +29 -0
- package/dist/theme/tokens/components/toggle/index.css +14 -0
- package/dist/theme/tokens/components/toggle/scale.css +34 -0
- package/dist/theme/tokens/components/toggle/translate.css +41 -0
- package/dist/theme/tokens/components/tooltip.css +77 -0
- package/dist/theme/tokens/components/tree-choose.css +154 -0
- package/dist/theme/tokens/components/tree.css +172 -0
- package/dist/theme/tokens/components/trigger.css +90 -0
- package/dist/theme/tokens/components/upload.css +302 -0
- package/dist/theme/tokens/components/virtual.css +6 -0
- package/dist/theme/tokens/components/write.css +155 -0
- package/dist/theme/tokens/iconfont/iconfont.css +103 -0
- package/dist/theme/tokens/iconfont/iconfont.ttf +0 -0
- package/dist/theme/tokens/iconfont/iconfont.woff +0 -0
- package/dist/theme/tokens/iconfont/iconfont.woff2 +0 -0
- package/dist/theme/tokens/index.css +19 -0
- package/dist/use/index.d.ts +34 -0
- package/dist/use/toggle/types.d.ts +27 -0
- package/dist/use/toggle/useToggle.d.ts +22 -0
- package/dist/use/toggle/useToggleArray.d.ts +14 -0
- package/dist/use/toggle/useToggleArray.js +36 -0
- package/dist/use/toggle/useToggleArray.js.map +1 -0
- package/dist/use/toggle/useToggleCycle.d.ts +11 -0
- package/dist/use/toggle/useToggleCycle.js +88 -0
- package/dist/use/toggle/useToggleCycle.js.map +1 -0
- package/dist/use/toggle/useToggleMap.d.ts +10 -0
- package/dist/use/toggle/useToggleObject.d.ts +13 -0
- package/dist/use/useAudioPlayer.d.ts +160 -0
- package/dist/use/useAudioPlayer.js +799 -0
- package/dist/use/useAudioPlayer.js.map +1 -0
- package/dist/use/useBoundingClientRect.d.ts +14 -0
- package/dist/use/useBoundingClientRect.js +54 -0
- package/dist/use/useBoundingClientRect.js.map +1 -0
- package/dist/use/useChildComponentsCollector.js +30 -0
- package/dist/use/useChildComponentsCollector.js.map +1 -0
- package/dist/use/useComponentClass.d.ts +1 -0
- package/dist/use/useComponentClass.js +6 -0
- package/dist/use/useComponentClass.js.map +1 -0
- package/dist/use/useComponentConfig.d.ts +10 -0
- package/dist/use/useComponentConfig.js +31 -0
- package/dist/use/useComponentConfig.js.map +1 -0
- package/dist/use/useCount.d.ts +13 -0
- package/dist/use/useCount.js +36 -0
- package/dist/use/useCount.js.map +1 -0
- package/dist/use/useDate.d.ts +53 -0
- package/dist/use/useDate.js +280 -0
- package/dist/use/useDate.js.map +1 -0
- package/dist/use/useDelay.d.ts +5 -0
- package/dist/use/useDelay.js +38 -0
- package/dist/use/useDelay.js.map +1 -0
- package/dist/use/useDrag.d.ts +17 -0
- package/dist/use/useElement.d.ts +15 -0
- package/dist/use/useElement.js +41 -0
- package/dist/use/useElement.js.map +1 -0
- package/dist/use/useEscStack.d.ts +14 -0
- package/dist/use/useEscStack.js +62 -0
- package/dist/use/useEscStack.js.map +1 -0
- package/dist/use/useEvent.d.ts +9 -0
- package/dist/use/useEvent.js +43 -0
- package/dist/use/useEvent.js.map +1 -0
- package/dist/use/useFormItem.d.ts +9 -0
- package/dist/use/useFormItem.js +20 -0
- package/dist/use/useFormItem.js.map +1 -0
- package/dist/use/useGlobalZIndex.d.ts +6 -0
- package/dist/use/useGlobalZIndex.js +28 -0
- package/dist/use/useGlobalZIndex.js.map +1 -0
- package/dist/use/useMouse.d.ts +15 -0
- package/dist/use/useMouse.js +36 -0
- package/dist/use/useMouse.js.map +1 -0
- package/dist/use/useMousePositionInElement.d.ts +6 -0
- package/dist/use/useMousePositionInElement.js +27 -0
- package/dist/use/useMousePositionInElement.js.map +1 -0
- package/dist/use/useParentNode.d.ts +3 -0
- package/dist/use/useParentNode.js +25 -0
- package/dist/use/useParentNode.js.map +1 -0
- package/dist/use/usePercentDrag.d.ts +20 -0
- package/dist/use/usePercentDrag.js +59 -0
- package/dist/use/usePercentDrag.js.map +1 -0
- package/dist/use/usePictureViewport.d.ts +57 -0
- package/dist/use/usePictureViewport.js +229 -0
- package/dist/use/usePictureViewport.js.map +1 -0
- package/dist/use/useRequest.d.ts +7 -0
- package/dist/use/useRequest.js +31 -0
- package/dist/use/useRequest.js.map +1 -0
- package/dist/use/useScaleFromPoint.d.ts +57 -0
- package/dist/use/useScaleFromPoint.js +325 -0
- package/dist/use/useScaleFromPoint.js.map +1 -0
- package/dist/use/useScroll.d.ts +9 -0
- package/dist/use/useScroll.js +60 -0
- package/dist/use/useScroll.js.map +1 -0
- package/dist/use/useSearch.d.ts +11 -0
- package/dist/use/useSearch.js +65 -0
- package/dist/use/useSearch.js.map +1 -0
- package/dist/use/useSlot.d.ts +10 -0
- package/dist/use/useSlot.js +57 -0
- package/dist/use/useSlot.js.map +1 -0
- package/dist/use/useTabIndex.d.ts +1 -0
- package/dist/use/useTabIndex.js +18 -0
- package/dist/use/useTabIndex.js.map +1 -0
- package/dist/use/useUII18n.js +26 -0
- package/dist/use/useUII18n.js.map +1 -0
- package/dist/use/useUpload.d.ts +49 -0
- package/dist/use/useUpload.js +396 -0
- package/dist/use/useUpload.js.map +1 -0
- package/dist/use/useVisibleResize.d.ts +6 -0
- package/dist/use/useVisibleResize.js +77 -0
- package/dist/use/useVisibleResize.js.map +1 -0
- package/dist/util/calc.d.ts +40 -0
- package/dist/util/calc.js +239 -0
- package/dist/util/calc.js.map +1 -0
- package/dist/util/colors.d.ts +78 -0
- package/dist/util/colors.js +320 -0
- package/dist/util/colors.js.map +1 -0
- package/dist/util/cssVars.d.ts +62 -0
- package/dist/util/cssVars.js +170 -0
- package/dist/util/cssVars.js.map +1 -0
- package/dist/util/dom.d.ts +65 -0
- package/dist/util/dom.js +212 -0
- package/dist/util/dom.js.map +1 -0
- package/dist/util/index.d.ts +5 -0
- package/dist/util/tools.d.ts +54 -0
- package/dist/util/tools.js +90 -0
- package/dist/util/tools.js.map +1 -0
- package/dist/util/vnode.d.ts +2 -0
- package/package.json +88 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sheet.js","names":["computed","defineComponent","onMounted","reactive","ref","onActivated","onUnmounted","createVNode","_createVNode","mergeProps","_mergeProps","Fragment","_Fragment","vShow","_vShow","withDirectives","_withDirectives","watch","provide","readonly","nextTick","Virtual","useToggleArray","useComponentConfig","useVisibleResize","getBoundingClientRect","getElement","isElement","propSizeToCssVars","propColorToCssVars","toCssVarsStyle","Thead","Tbody","Tfoot","_props","useTdWidth","useColumns","useFixed","createTbodyColumns","getSelectedKey","MIN_WIDTH","EMITS","TBODYEMITS","SHEET_FALLBACK","stripe","hover","nowrap","bordered","trBordered","resize","autoWidth","hasCheckbox","hasRadio","hasIndex","hasAction","canHighlight","checkKey","highlightKey","rowKey","indexContent","virtual","scrollWatch","SHEET_DEFAULT_ROW_HEIGHT","Math","round","name","components","props","emits","setup","emit","attrs","slots","expose","cfg","resizeWidths","Map","resizing","resizeLineLeft","oldResizeLineLeft","currentSorter","field","sorter","set","get","toggle","item","highlightValue","highlight","isCheckedAll","selectedKeys","tableRoot","tableRootLeft","inner","innerElem","innerProps","o","class","value","showTopShadow","showBottomShadow","style","height","maxHeight","finalColumns","columns","tbodyColumns","hasSum","has","i","len","length","col","sum","undefined","data","scrollLeft","scrollTop","showLeftShadow","showRightShadow","leftShadowSlots","rightShadowSlots","hasPin","reset","leftFixed","rightFixed","scrollEdge","isTop","isBottom","isProgrammaticScroll","scrollWatchRaf","scrollWatchEl","scrollWatchOnScroll","getScrollEl","el","readScrollMetrics","st","sl","maxScrollTop","max","scrollHeight","clientHeight","maxScrollLeft","scrollWidth","clientWidth","scrollBottom","scrollRight","scrollTopPercent","scrollLeftPercent","target","flushScrollWatch","m","offset","bottomOffset","distance","info","detachScrollWatch","removeEventListener","cancelAnimationFrame","attachScrollWatch","requestAnimationFrame","addEventListener","passive","immediate","withProgrammatic","run","scrollTo","top","left","scrollToTop","scrollToBottom","scrollToPercent","topPercent","leftPercent","t","min","l","getScrollPosition","tdWidths","adjustTdWidths","size","theadProps","totalTbodyColumns","tbodyProps","pageSize","pageIndex","tbodySlots","checkable","rowClass","sheetRow","sheetTdIndex","onAfter-render","tfootProps","eventName","opts","modelValue","k","setCheckAll","some","sv","row","index","checked","filter","push","b","checkAllSelected","afterChecked","v","hValue","tdElem","classList","add","tdRight","right","x","colIndex","dx","dWidth","remove","oldWidth","newWidth","n","Number","rightN","colGroup","widths","map","w","ww","width","checkedKeys","_data","forEach","canPush","_k","disabled","_keys","e","keys","d","arr","s","ks","isSameArray","deep","oldD","oldI","oldS","renderTable","thead","tbody","from","to","innerTable","table","content","color","cssVars","show","itemHeight","pad","default","setSorter","getSorter","resetFixed","arr1","arr2"],"sources":["../../../components/sheet/Sheet.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n onMounted,\r\n reactive,\r\n ref,\r\n onActivated,\r\n onUnmounted,\r\n} from \"vue\"\r\nimport { watch, provide, readonly, nextTick } from \"vue\"\r\nimport Virtual from \"../virtual/index\"\r\nimport type { DataListOptions } from \"../virtual/Virtual\"\r\nimport useToggleArray from \"../../use/toggle/useToggleArray\"\r\nimport useComponentConfig from \"../../use/useComponentConfig\"\r\nimport useVisibleResize from \"../../use/useVisibleResize\"\r\nimport { getBoundingClientRect, getElement, isElement } from \"../../util\"\r\nimport { propSizeToCssVars, propColorToCssVars, toCssVarsStyle } from \"../../util\"\r\nimport Thead from \"./_thead\"\r\nimport Tbody from \"./_tbody\"\r\nimport Tfoot from \"./_tfoot\"\r\nimport _props from \"./_props\"\r\nimport { useTdWidth, useColumns, useFixed } from \"./_use\"\r\nimport { createTbodyColumns, getSelectedKey } from \"./_util\"\r\nconst MIN_WIDTH = 32 //调整列宽时,最小允许的宽度\r\nconst EMITS = [\r\n \"update:modelValue\",\r\n \"update:keys\",\r\n \"after-checked\",\r\n \"after-radio\",\r\n \"update:highlight\",\r\n \"highlight\",\r\n \"sort\",\r\n \"scroll\",\r\n \"reach-top\",\r\n \"reach-bottom\",\r\n]\r\nconst TBODYEMITS = [\"add\", \"delete\"]\r\ntype TbodyEmits = \"add\" | \"delete\"\r\ninterface SorterType {\r\n field: string\r\n sorter: boolean | number\r\n}\r\n\r\nexport type SheetScrollInfo = {\r\n scrollTop: number\r\n scrollLeft: number\r\n scrollBottom: number\r\n scrollRight: number\r\n scrollTopPercent: number\r\n scrollLeftPercent: number\r\n target: HTMLElement\r\n}\r\n\r\nexport type SheetReachBottomInfo = {\r\n distance: number\r\n}\r\n\r\nexport type SheetScrollPosition = {\r\n scrollTop: number\r\n scrollLeft: number\r\n scrollBottom: number\r\n scrollRight: number\r\n scrollTopPercent: number\r\n scrollLeftPercent: number\r\n}\r\n\r\nexport type SheetMethods = {\r\n setSorter: (opts: { field: string; sorter: boolean | number }) => void\r\n getSorter: () => SorterType\r\n scrollTo: (top?: number, left?: number) => void\r\n scrollToTop: () => void\r\n scrollToBottom: () => void\r\n scrollToPercent: (topPercent: number, leftPercent?: number) => void\r\n getScrollPosition: () => SheetScrollPosition\r\n getScrollEl: () => HTMLElement | undefined\r\n /** 重算固定列 / pin 阴影(数据或列宽变化后可调) */\r\n resetFixed: () => void\r\n}\r\n\r\n/** 未传 props、也未配置全局时的默认值 */\r\nconst SHEET_FALLBACK = {\r\n stripe: false,\r\n hover: true,\r\n nowrap: true,\r\n bordered: false,\r\n trBordered: false,\r\n resize: true,\r\n autoWidth: false,\r\n hasCheckbox: false,\r\n hasRadio: false,\r\n hasIndex: false,\r\n hasAction: false as boolean | string | string[],\r\n canHighlight: false as boolean | ((row: any, index: number) => boolean),\r\n checkKey: 'id',\r\n highlightKey: 'id',\r\n rowKey: 'id' as string | ((row: any) => string),\r\n indexContent: '#' as string | object | ((row: any, index: number) => any),\r\n virtual: false,\r\n scrollWatch: false,\r\n // itemHeight 不进 FALLBACK:显式 itemHeight > size > SHEET_DEFAULT_ROW_HEIGHT\r\n}\r\n\r\n/** 与主题默认 `--w-sheet-size: calc(var(--w-size) * 4/3)` 对齐(--w-size=36 → 48) */\r\nconst SHEET_DEFAULT_ROW_HEIGHT = Math.round(36 * (4 / 3))\r\n\r\n\r\nexport default defineComponent({\r\n name: \"Sheet\",\r\n components: { Thead, Tbody, Tfoot, Virtual },\r\n props: _props,\r\n emits: [...EMITS, ...TBODYEMITS],\r\n setup(props, { emit, attrs, slots, expose }) {\r\n const cfg = useComponentConfig(\"Sheet\", props, SHEET_FALLBACK)\r\n\r\n const resizeWidths = new Map<object, number>()\r\n // const ins = getCurrentInstance()\r\n // console.time(String(ins?.uid))\r\n const resizing = ref(false)\r\n const resizeLineLeft = ref(-10000)\r\n const oldResizeLineLeft = ref(-10000)\r\n const currentSorter = reactive<SorterType>({ field: \"\", sorter: true })\r\n const { set, get, toggle } = useToggleArray([true, 0, 1], {\r\n item: true,\r\n })\r\n const highlightValue = ref<string | number>(\r\n props.highlight ? props.highlight : 0\r\n )\r\n const isCheckedAll = ref(0)\r\n const selectedKeys = ref<any[]>([])\r\n const tableRoot = ref()\r\n const tableRootLeft = ref(0)\r\n const inner = ref()\r\n const innerElem = computed(() => getElement(inner))\r\n const innerProps = computed(() => {\r\n let o: any = {\r\n ref: inner,\r\n class: [\r\n \"w-sheet-inner-container\",\r\n \"w-sheet--min-content\",\r\n {\r\n \"w-sheet--nowrap\": cfg.value.nowrap,\r\n \"w-sheet--stripe\": cfg.value.stripe,\r\n \"w-sheet--hover\": cfg.value.hover,\r\n \"w-sheet--has-action\": cfg.value.hasAction,\r\n \"w-sheet--has-top-shadow\": showTopShadow.value,\r\n \"w-sheet--has-bottom-shadow\": showBottomShadow.value,\r\n },\r\n ],\r\n style: {\r\n height: cfg.value.bordered\r\n ? `calc(${cfg.value.height} + 2px)`\r\n : cfg.value.height,\r\n maxHeight: cfg.value.maxHeight,\r\n },\r\n }\r\n return o\r\n })\r\n //columns参数传入之后,加入预置列, 序列号、多选框、单选框\r\n const finalColumns = useColumns(\r\n computed(() => props.columns),\r\n computed(() => ({\r\n indexContent: cfg.value.indexContent,\r\n hasIndex: cfg.value.hasIndex,\r\n hasCheckbox: cfg.value.hasCheckbox,\r\n checkKey: cfg.value.checkKey,\r\n hasRadio: cfg.value.hasRadio,\r\n hasAction: cfg.value.hasAction,\r\n }))\r\n )\r\n const tbodyColumns = computed(() => createTbodyColumns(finalColumns.value))\r\n const hasSum = computed(() => {\r\n let has = false\r\n let i = 0\r\n let len = tbodyColumns.value.length\r\n while (i < len) {\r\n const col = tbodyColumns.value[i]\r\n if (col.sum !== false && col.sum !== undefined && props.data?.length) {\r\n has = true\r\n break\r\n }\r\n i++\r\n }\r\n // console.log(has)\r\n return has\r\n })\r\n const {\r\n scrollLeft,\r\n scrollTop,\r\n showLeftShadow,\r\n showRightShadow,\r\n leftShadowSlots,\r\n rightShadowSlots,\r\n showTopShadow,\r\n showBottomShadow,\r\n hasPin,\r\n reset,\r\n } = useFixed(\r\n tableRoot,\r\n innerElem,\r\n computed(() => cfg.value.leftFixed),\r\n computed(() => cfg.value.rightFixed),\r\n hasSum,\r\n tbodyColumns\r\n )\r\n\r\n // —— 滚动监控(scrollWatch)——\r\n // passive + rAF 合并;边缘态用普通对象,避免 ref 赋值触发无谓重渲染\r\n const scrollEdge = { isTop: true, isBottom: false }\r\n const isProgrammaticScroll = { value: false }\r\n let scrollWatchRaf = 0\r\n let scrollWatchEl: HTMLElement | undefined\r\n let scrollWatchOnScroll: (() => void) | undefined\r\n\r\n function getScrollEl(): HTMLElement | undefined {\r\n const el = getElement(innerElem)\r\n return isElement(el) ? (el as HTMLElement) : undefined\r\n }\r\n\r\n function readScrollMetrics(el: HTMLElement) {\r\n const st = el.scrollTop\r\n const sl = el.scrollLeft\r\n const maxScrollTop = Math.max(0, el.scrollHeight - el.clientHeight)\r\n const maxScrollLeft = Math.max(0, el.scrollWidth - el.clientWidth)\r\n return {\r\n scrollTop: st,\r\n scrollLeft: sl,\r\n scrollBottom: maxScrollTop - st,\r\n scrollRight: maxScrollLeft - sl,\r\n maxScrollTop,\r\n maxScrollLeft,\r\n scrollTopPercent:\r\n maxScrollTop > 0 ? Math.round((st / maxScrollTop) * 100) : 0,\r\n scrollLeftPercent:\r\n maxScrollLeft > 0 ? Math.round((sl / maxScrollLeft) * 100) : 0,\r\n target: el,\r\n }\r\n }\r\n\r\n function flushScrollWatch() {\r\n scrollWatchRaf = 0\r\n const el = scrollWatchEl\r\n if (!el || !cfg.value.scrollWatch) return\r\n const m = readScrollMetrics(el)\r\n\r\n const isTop = m.scrollTop <= 0\r\n if (isTop && !scrollEdge.isTop) {\r\n emit(\"reach-top\")\r\n }\r\n scrollEdge.isTop = isTop\r\n\r\n const offset = props.bottomOffset ?? 0\r\n const isBottom =\r\n m.maxScrollTop > 0 && m.scrollTop >= m.maxScrollTop - offset\r\n if (isBottom && !scrollEdge.isBottom) {\r\n emit(\"reach-bottom\", {\r\n distance: m.scrollBottom,\r\n } as SheetReachBottomInfo)\r\n }\r\n scrollEdge.isBottom = isBottom\r\n\r\n if (!isProgrammaticScroll.value) {\r\n const info: SheetScrollInfo = {\r\n scrollTop: m.scrollTop,\r\n scrollLeft: m.scrollLeft,\r\n scrollBottom: m.scrollBottom,\r\n scrollRight: m.scrollRight,\r\n scrollTopPercent: m.scrollTopPercent,\r\n scrollLeftPercent: m.scrollLeftPercent,\r\n target: m.target,\r\n }\r\n emit(\"scroll\", info)\r\n }\r\n }\r\n\r\n function detachScrollWatch() {\r\n if (scrollWatchEl && scrollWatchOnScroll) {\r\n scrollWatchEl.removeEventListener(\"scroll\", scrollWatchOnScroll)\r\n }\r\n scrollWatchEl = undefined\r\n scrollWatchOnScroll = undefined\r\n if (scrollWatchRaf) {\r\n cancelAnimationFrame(scrollWatchRaf)\r\n scrollWatchRaf = 0\r\n }\r\n }\r\n\r\n function attachScrollWatch() {\r\n detachScrollWatch()\r\n if (!cfg.value.scrollWatch) return\r\n const el = getScrollEl()\r\n if (!el) return\r\n scrollWatchEl = el\r\n scrollWatchOnScroll = () => {\r\n if (scrollWatchRaf) return\r\n scrollWatchRaf = requestAnimationFrame(flushScrollWatch)\r\n }\r\n el.addEventListener(\"scroll\", scrollWatchOnScroll, { passive: true })\r\n }\r\n\r\n watch(\r\n [() => cfg.value.scrollWatch, innerElem],\r\n () => {\r\n nextTick(attachScrollWatch)\r\n },\r\n { immediate: true },\r\n )\r\n onUnmounted(detachScrollWatch)\r\n\r\n function withProgrammatic(run: () => void) {\r\n isProgrammaticScroll.value = true\r\n run()\r\n isProgrammaticScroll.value = false\r\n }\r\n\r\n function scrollTo(top?: number, left?: number) {\r\n const el = getScrollEl()\r\n if (!el) return\r\n withProgrammatic(() => {\r\n if (typeof top === \"number\") el.scrollTop = top\r\n if (typeof left === \"number\") el.scrollLeft = left\r\n })\r\n }\r\n\r\n function scrollToTop() {\r\n scrollTo(0, undefined)\r\n }\r\n\r\n function scrollToBottom() {\r\n const el = getScrollEl()\r\n if (!el) return\r\n withProgrammatic(() => {\r\n el.scrollTop = el.scrollHeight\r\n })\r\n }\r\n\r\n function scrollToPercent(topPercent: number, leftPercent?: number) {\r\n const el = getScrollEl()\r\n if (!el) return\r\n const maxScrollTop = Math.max(0, el.scrollHeight - el.clientHeight)\r\n const maxScrollLeft = Math.max(0, el.scrollWidth - el.clientWidth)\r\n const t = Math.max(0, Math.min(100, topPercent)) / 100\r\n withProgrammatic(() => {\r\n el.scrollTop = maxScrollTop * t\r\n if (typeof leftPercent === \"number\") {\r\n const l = Math.max(0, Math.min(100, leftPercent)) / 100\r\n el.scrollLeft = maxScrollLeft * l\r\n }\r\n })\r\n }\r\n\r\n function getScrollPosition(): SheetScrollPosition {\r\n const el = getScrollEl()\r\n if (!el) {\r\n return {\r\n scrollTop: 0,\r\n scrollLeft: 0,\r\n scrollBottom: 0,\r\n scrollRight: 0,\r\n scrollTopPercent: 0,\r\n scrollLeftPercent: 0,\r\n }\r\n }\r\n const m = readScrollMetrics(el)\r\n return {\r\n scrollTop: m.scrollTop,\r\n scrollLeft: m.scrollLeft,\r\n scrollBottom: m.scrollBottom,\r\n scrollRight: m.scrollRight,\r\n scrollTopPercent: m.scrollTopPercent,\r\n scrollLeftPercent: m.scrollLeftPercent,\r\n }\r\n }\r\n\r\n const { tdWidths, adjustTdWidths } = useTdWidth(\r\n computed(() => cfg.value.autoWidth),\r\n computed(() => cfg.value.bordered),\r\n innerElem,\r\n tbodyColumns,\r\n computed(() => props.size),\r\n )\r\n\r\n const theadProps = computed(() => {\r\n let o: any = {\r\n totalTbodyColumns: tbodyColumns.value.length,\r\n columns: finalColumns.value,\r\n indexContent: cfg.value.indexContent,\r\n checkKey: cfg.value.checkKey,\r\n resize: cfg.value.resize,\r\n }\r\n return o\r\n })\r\n const tbodyProps = computed(() => {\r\n let o: any = {\r\n columns: tbodyColumns.value,\r\n // data: props.data,\r\n hasIndex: cfg.value.hasIndex,\r\n hasAction: cfg.value.hasAction,\r\n pageSize: cfg.value.pageSize,\r\n pageIndex: cfg.value.pageIndex,\r\n tbodySlots: slots,\r\n hasCheckbox: cfg.value.hasCheckbox,\r\n hasRadio: cfg.value.hasRadio,\r\n checkKey: cfg.value.checkKey,\r\n isCheckedAll: isCheckedAll.value,\r\n checkable: cfg.value.checkable,\r\n canHighlight: cfg.value.canHighlight,\r\n highlightKey: cfg.value.highlightKey,\r\n rowClass: cfg.value.rowClass,\r\n rowKey: cfg.value.rowKey,\r\n sheetRow: cfg.value.sheetRow,\r\n sheetTdIndex: cfg.value.sheetTdIndex,\r\n \"onAfter-render\": () => {\r\n adjustTdWidths()\r\n nextTick(reset)\r\n // reset()\r\n },\r\n }\r\n return o\r\n })\r\n const tfootProps = computed(() => {\r\n let o: any = {\r\n hasSum: hasSum.value,\r\n columns: tbodyColumns.value,\r\n data: props.data,\r\n sheetTdIndex: cfg.value.sheetTdIndex,\r\n }\r\n return o\r\n })\r\n\r\n //子组件通过一个方法发射事件\r\n provide(\"toEmit\", (eventName: TbodyEmits, ...opts: any) => {\r\n emit(eventName, ...opts)\r\n })\r\n\r\n //单选\r\n provide(\"modelValue\", readonly(computed(() => props.modelValue)))\r\n provide(\"updateModelValue\", (k: number | string) => {\r\n emit(\"update:modelValue\", k)\r\n })\r\n\r\n //复选\r\n provide(\"isCheckedAll\", readonly(isCheckedAll))\r\n //thead中使用\r\n provide(\"setCheckAll\", setCheckAll)\r\n\r\n provide(\"selectedKeys\", readonly(selectedKeys))\r\n provide(\"hasKey\", (k: any) => {\r\n return selectedKeys.value.some((sv) => sv === k)\r\n })\r\n provide(\r\n \"toggleRadio\",\r\n ({ row, index }: { row: Record<any, any>; index: number }) => {\r\n emit(\"after-radio\", { row, index })\r\n }\r\n )\r\n provide(\"toggleSelect\", (k: any, checked: boolean) => {\r\n if (checked) {\r\n selectedKeys.value = selectedKeys.value.filter((el) => el !== k)\r\n } else {\r\n selectedKeys.value.push(k)\r\n }\r\n let b = checkAllSelected()\r\n isCheckedAll.value = b\r\n afterChecked()\r\n })\r\n //高亮,通过使用highlightValue这个组件内变量来保存高亮状态,\r\n //非受控,当只需要展示,且不必要使用高亮数据时,更方便一些\r\n provide(\"highlight\", readonly(highlightValue))\r\n provide(\r\n \"toggleHighlight\",\r\n (\r\n v: number | string,\r\n { row, index }: { row: Record<any, any>; index: number }\r\n ) => {\r\n highlightValue.value = v\r\n emit(\"update:highlight\", v)\r\n emit(\"highlight\", { row, index })\r\n }\r\n )\r\n watch(\r\n () => props.highlight,\r\n (hValue) => {\r\n highlightValue.value = hValue as number | string\r\n }\r\n )\r\n //左右固定列\r\n provide(\"leftFixed\", readonly(computed(() => cfg.value.leftFixed)))\r\n provide(\"rightFixed\", readonly(computed(() => cfg.value.rightFixed)))\r\n\r\n //列宽调整\r\n //给组件根节点添加w-no-select的class,以免在拖拽时选择了文本\r\n provide(\"beforeResize\", (tdElem: HTMLElement) => {\r\n resizing.value = true\r\n tableRoot.value.classList.add(\"w-no-select\")\r\n //记录tableRoot在页面中的left\r\n tableRootLeft.value = getBoundingClientRect(tableRoot.value).left\r\n const tdRight = getBoundingClientRect(tdElem).right\r\n const x = tdRight ?? 0\r\n resizeLineLeft.value = x - 1 - tableRootLeft.value\r\n oldResizeLineLeft.value = resizeLineLeft.value\r\n })\r\n provide(\"inResizing\", (colIndex: number, dx: number = 0) => {\r\n resizeLineLeft.value = dx + oldResizeLineLeft.value\r\n })\r\n //dWidth是增或减的宽\r\n provide(\"afterResize\", (colIndex: number, dWidth: number) => {\r\n // const old_width = resizeWidths.value[colIndex]\r\n resizing.value = false\r\n tableRoot.value.classList.remove(\"w-no-select\")\r\n resizeLineLeft.value = -10000\r\n if (dWidth === 0) {\r\n return\r\n }\r\n const k = tbodyColumns.value[colIndex]\r\n const oldWidth = resizeWidths.has(k)\r\n ? resizeWidths.get(k)\r\n : tdWidths.value[colIndex]\r\n let newWidth = oldWidth + dWidth\r\n if (newWidth <= MIN_WIDTH) {\r\n newWidth = MIN_WIDTH\r\n }\r\n resizeWidths.set(tbodyColumns.value[colIndex], newWidth)\r\n //重新定位固定列 / pin 列的阴影位置\r\n if (!!cfg.value.leftFixed || !!cfg.value.rightFixed || hasPin.value) {\r\n let n = Number(cfg.value.leftFixed) ?? 0\r\n let rightN = Number(cfg.value.rightFixed) ?? 0\r\n if (hasPin.value || (n > 0 && colIndex < n) || rightN > 0) {\r\n reset()\r\n }\r\n }\r\n })\r\n\r\n //排序\r\n provide(\"currentSorter\", readonly(currentSorter))\r\n provide(\"updateSorter\", (field: string) => {\r\n if (field === currentSorter.field) {\r\n currentSorter.sorter = toggle().item!\r\n } else {\r\n currentSorter.field = field\r\n set({ item: 0 })\r\n currentSorter.sorter = get().item!\r\n }\r\n // console.log(currentSorter)\r\n emit(\"sort\", currentSorter)\r\n })\r\n\r\n function colGroup(widths: number[]) {\r\n return (\r\n <colgroup>\r\n {widths.map((w: any, i: number) => {\r\n const k = tbodyColumns.value[i]\r\n const has = resizeWidths.has(k)\r\n\r\n const ww = has ? resizeWidths.get(k) : w\r\n return <col style={{ width: ww + \"px\" }} />\r\n })}\r\n </colgroup>\r\n )\r\n }\r\n\r\n function setCheckAll(b: number) {\r\n isCheckedAll.value = b\r\n const checkedKeys = [...selectedKeys.value]\r\n const _data = props.data as any[]\r\n if (b) {\r\n if (_data && _data.length) {\r\n _data.forEach((row, index: number) => {\r\n let k = getSelectedKey(row, cfg.value.checkKey)\r\n let canPush = !checkedKeys.some((_k) => _k == k)\r\n if (canPush) {\r\n if (cfg.value.checkable) {\r\n const { disabled } = cfg.value.checkable(row, index)\r\n if (!disabled) {\r\n selectedKeys.value.push(k)\r\n }\r\n } else {\r\n selectedKeys.value.push(k)\r\n }\r\n }\r\n })\r\n }\r\n } else {\r\n const _keys: (string | number)[] = []\r\n _data.forEach((row, index: number) => {\r\n const k = getSelectedKey(row, cfg.value.checkKey)\r\n if (cfg.value.checkable) {\r\n const { disabled } = cfg.value.checkable(row, index)\r\n if (!disabled) {\r\n _keys.push(k)\r\n }\r\n } else {\r\n _keys.push(k)\r\n }\r\n })\r\n selectedKeys.value = selectedKeys.value.filter(\r\n (_k) => !_keys.some((e) => e == _k)\r\n )\r\n // selectedKeys.value = []\r\n }\r\n afterChecked()\r\n }\r\n //可以复选时,检查是否所有行都被选中了\r\n function checkAllSelected(): 0 | 1 {\r\n const keys = selectedKeys.value\r\n const d = (props.data ?? []).filter((row: any, index: number) => {\r\n if (cfg.value.checkable) {\r\n const { disabled } = cfg.value.checkable(row, index)\r\n return !disabled\r\n }\r\n return true\r\n })\r\n if (d && d.length && keys.length) {\r\n let checked: 0 | 1 = 1\r\n\r\n if (d.length <= keys.length) {\r\n let i = 0\r\n while (i < d.length) {\r\n const row = d[i]\r\n const k = getSelectedKey(row, cfg.value.checkKey)\r\n if (!keys.some((_k) => _k == k)) {\r\n checked = 0\r\n break\r\n }\r\n i++\r\n }\r\n } else {\r\n checked = 0\r\n }\r\n return checked\r\n }\r\n return 0\r\n }\r\n\r\n function afterChecked() {\r\n let arr = (props.data ?? []).filter((row, index) => {\r\n const k = getSelectedKey(row, cfg.value.checkKey)\r\n if (cfg.value.checkable) {\r\n const { disabled } = cfg.value.checkable(row, index)\r\n if (!disabled) {\r\n return selectedKeys.value.some((s) => s == k)\r\n }\r\n return false\r\n }\r\n return selectedKeys.value.some((s) => s == k)\r\n })\r\n emit(\"after-checked\", arr)\r\n }\r\n\r\n watch(\r\n selectedKeys,\r\n (ks) => {\r\n if (!isSameArray(ks, props.keys as any)) {\r\n emit(\"update:keys\", ks)\r\n }\r\n },\r\n { deep: true }\r\n )\r\n watch(\r\n () => props.keys,\r\n (ks: any) => {\r\n if (!isSameArray(ks, selectedKeys.value)) {\r\n selectedKeys.value = ks\r\n if (ks && ks.length === 0) {\r\n isCheckedAll.value = 0\r\n }\r\n }\r\n },\r\n { deep: true, immediate: true }\r\n )\r\n watch(tbodyColumns, () => {\r\n nextTick(reset)\r\n })\r\n //切换分页的时候,如果当前是多选,则重新计算\r\n //全选按钮是否选中\r\n // watch(\r\n // () => props.data,\r\n // (i) => {\r\n // if (i && props.hasCheckbox) {\r\n // const b = checkAllSelected()\r\n // isCheckedAll.value = b\r\n // }\r\n // },\r\n // {\r\n // deep: true,\r\n // immediate: true\r\n // }\r\n // )\r\n watch(\r\n [() => props.data, () => cfg.value.pageIndex, () => cfg.value.pageSize],\r\n ([d, i, s], [oldD, oldI, oldS]) => {\r\n if (d) {\r\n if (cfg.value.hasCheckbox) {\r\n const b = checkAllSelected()\r\n isCheckedAll.value = b\r\n }\r\n if (oldS !== s || i !== oldI) {\r\n requestAnimationFrame(() => {\r\n nextTick(scrollToTop)\r\n })\r\n }\r\n }\r\n // if (i && props.hasCheckbox) {\r\n // const b = checkAllSelected()\r\n // isCheckedAll.value = b\r\n // }\r\n },\r\n {\r\n deep: true,\r\n immediate: true,\r\n }\r\n )\r\n\r\n onMounted(() => {\r\n //刷新页面时,FF浏览器会记录滚动条的位置,故在此重置为0\r\n //不管三七二十一,全部重置\r\n if (innerElem.value && isElement(innerElem.value)) {\r\n innerElem.value.scrollLeft = 0\r\n innerElem.value.scrollTop = 0\r\n }\r\n })\r\n\r\n useVisibleResize(innerElem, () => {\r\n adjustTdWidths()\r\n reset()\r\n })\r\n\r\n onActivated(() => {\r\n if (innerElem.value && isElement(innerElem.value)) {\r\n innerElem.value.scrollLeft = scrollLeft.value\r\n innerElem.value.scrollTop = scrollTop.value\r\n }\r\n })\r\n\r\n function renderTable() {\r\n const thead = <Thead {...theadProps.value}></Thead>\r\n const tbody = (data: any[] | undefined, from?: number, to?: number) => (\r\n <Tbody data={data} from={from} to={to} {...tbodyProps.value}></Tbody>\r\n )\r\n\r\n const innerTable = ({\r\n data,\r\n index,\r\n }: {\r\n data: any[] | undefined\r\n index?: { from: number; to: number }\r\n }) => (\r\n <>\r\n <div class=\"w-sheet-thead\">\r\n <table class=\"w-sheet\">\r\n {colGroup(tdWidths.value)}\r\n <thead>{thead}</thead>\r\n </table>\r\n </div>\r\n <div class=\"w-sheet-tbody\">\r\n <table class=\"w-sheet\">\r\n {colGroup(tdWidths.value)}\r\n <tbody>\r\n {tbody(\r\n data,\r\n index ? index.from : undefined,\r\n index ? index.to : undefined\r\n )}\r\n </tbody>\r\n </table>\r\n </div>\r\n {hasSum.value && (\r\n <div class=\"w-sheet-tfoot\">\r\n <table class=\"w-sheet\">\r\n {colGroup(tdWidths.value)}\r\n <tfoot>\r\n <Tfoot {...tfootProps.value} />\r\n </tfoot>\r\n </table>\r\n </div>\r\n )}\r\n </>\r\n )\r\n\r\n const table = (content: any) => (\r\n <div\r\n class={[\r\n \"w-sheet-container\",\r\n {\r\n \"w-sheet-bordered\": cfg.value.bordered,\r\n \"w-sheet-tr-bordered\": cfg.value.trBordered,\r\n },\r\n ]}\r\n style={toCssVarsStyle({\r\n ...propSizeToCssVars(\"sheet\", props.size),\r\n ...propColorToCssVars(\"sheet\", props.color),\r\n ...props.cssVars,\r\n })}\r\n ref={tableRoot}>\r\n {content}\r\n {(!props.data || props.data?.length === 0) && slots[\"sheet-empty\"]\r\n ? slots[\"sheet-empty\"]()\r\n : null}\r\n <div\r\n class=\"w-sheet-resize-line\"\r\n v-show={resizing.value}\r\n style={{ left: resizeLineLeft.value + \"px\" }}></div>\r\n {leftShadowSlots.value.map((s, i) => (\r\n <div\r\n key={`left-shadow-${i}`}\r\n class={[\r\n \"w-sheet-left-fixed-shadow-line\",\r\n { \"is-show\": s.show && props.data },\r\n ]}\r\n style={{ left: s.left + \"px\" }}\r\n />\r\n ))}\r\n {rightShadowSlots.value.map((s, i) => (\r\n <div\r\n key={`right-shadow-${i}`}\r\n class={[\r\n \"w-sheet-right-fixed-shadow-line\",\r\n { \"is-show\": s.show && props.data },\r\n ]}\r\n style={{ left: s.left + \"px\" }}\r\n />\r\n ))}\r\n </div>\r\n )\r\n\r\n if (cfg.value.virtual) {\r\n return table(\r\n <Virtual\r\n {...innerProps.value}\r\n itemHeight={\r\n cfg.value.itemHeight ?? props.size ?? SHEET_DEFAULT_ROW_HEIGHT\r\n }\r\n sourceData={props.data}\r\n pad={cfg.value.pad}\r\n v-slots={{\r\n default: (e: DataListOptions) => {\r\n return innerTable(e)\r\n },\r\n }}\r\n />\r\n )\r\n }\r\n\r\n return table(\r\n <div {...innerProps.value}>{innerTable({ data: props.data })}</div>\r\n )\r\n }\r\n\r\n expose({\r\n setSorter: ({\r\n field,\r\n sorter,\r\n }: {\r\n field: string\r\n sorter: boolean | number\r\n }) => {\r\n currentSorter.field = field\r\n currentSorter.sorter = sorter\r\n },\r\n getSorter: () => ({\r\n field: currentSorter.field,\r\n sorter: currentSorter.sorter,\r\n }),\r\n scrollTo,\r\n scrollToTop,\r\n scrollToBottom,\r\n scrollToPercent,\r\n getScrollPosition,\r\n getScrollEl,\r\n resetFixed: reset,\r\n } satisfies SheetMethods)\r\n return renderTable\r\n },\r\n})\r\n\r\n// 两个数组\r\nfunction isSameArray(arr1: any[], arr2: any[]) {\r\n if (arr1.length === arr2.length) {\r\n if (arr1.length === 0) {\r\n return true\r\n }\r\n let i = 0\r\n let b = true\r\n while (i < arr1.length) {\r\n const k = arr1[i]\r\n if (!arr2.some((item) => item === k)) {\r\n b = false\r\n break\r\n }\r\n i++\r\n }\r\n return b\r\n }\r\n return false\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;AAuBA,IAAMwC,YAAY;AAClB,IAAMC,QAAQ;CACZ;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AAAc;AAEhB,IAAMC,aAAa,CAAC,OAAO,QAAQ;;AA4CnC,IAAMC,iBAAiB;CACrBC,QAAQ;CACRC,OAAO;CACPC,QAAQ;CACRC,UAAU;CACVC,YAAY;CACZC,QAAQ;CACRC,WAAW;CACXC,aAAa;CACbC,UAAU;CACVC,UAAU;CACVC,WAAW;CACXC,cAAc;CACdC,UAAU;CACVC,cAAc;CACdC,QAAQ;CACRC,cAAc;CACdC,SAAS;CACTC,aAAa;AAEf;;AAGA,IAAMC,2BAA2BC,KAAKC,MAAM,EAAY;AAGxD,IAAA,gBAAe/D,gCAAgB;CAC7BgE,MAAM;CACNC,YAAY;EAAEnC,OAAAA;EAAOC,OAAAA;EAAOC,OAAAA;EAAOZ;CAAQ;CAC3C8C,OAAOjC;CACPkC,OAAO,CAAC,GAAG3B,OAAO,GAAGC,UAAU;CAC/B2B,MAAMF,OAAO,EAAEG,MAAMC,OAAOC,OAAOC,UAAU;EAC3C,MAAMC,MAAMnD,mBAAmB,SAAS4C,OAAOxB,cAAc;EAE7D,MAAMgC,+BAAe,IAAIC,IAAoB;EAG7C,MAAMC,WAAWzE,IAAI,KAAK;EAC1B,MAAM0E,iBAAiB1E,IAAI,IAAM;EACjC,MAAM2E,oBAAoB3E,IAAI,IAAM;EACpC,MAAM4E,gBAAgB7E,SAAqB;GAAE8E,OAAO;GAAIC,QAAQ;EAAK,CAAC;EACtE,MAAM,EAAEC,KAAKC,KAAKC,WAAW/D,eAAe;GAAC;GAAM;GAAG;EAAC,GAAG,EACxDgE,MAAM,KACR,CAAC;EACD,MAAMC,iBAAiBnF,IACrB+D,MAAMqB,YAAYrB,MAAMqB,YAAY,CACtC;EACA,MAAMC,eAAerF,IAAI,CAAC;EAC1B,MAAMsF,eAAetF,IAAW,CAAA,CAAE;EAClC,MAAMuF,YAAYvF,IAAI;EACtB,MAAMwF,gBAAgBxF,IAAI,CAAC;EAC3B,MAAMyF,QAAQzF,IAAI;EAClB,MAAM0F,YAAY9F,eAAe0B,WAAWmE,KAAK,CAAC;EAClD,MAAME,aAAa/F,eAAe;GAsBhC,OAAOgG;IApBL5F,KAAKyF;IACLI,OAAO;KACL;KACA;KACA;MACE,mBAAmBvB,IAAIwB,MAAMpD;MAC7B,mBAAmB4B,IAAIwB,MAAMtD;MAC7B,kBAAkB8B,IAAIwB,MAAMrD;MAC5B,uBAAuB6B,IAAIwB,MAAM5C;MACjC,2BAA2B6C,cAAcD;MACzC,8BAA8BE,iBAAiBF;KACjD;IAAC;IAEHG,OAAO;KACLC,QAAQ5B,IAAIwB,MAAMnD,WACd,QAAQ2B,IAAIwB,MAAMI,OAAM,WACxB5B,IAAIwB,MAAMI;KACdC,WAAW7B,IAAIwB,MAAMK;IACvB;GAEKP;EACT,CAAC;EAED,MAAMQ,eAAepE,WACnBpC,eAAemE,MAAMsC,OAAO,GAC5BzG,gBAAgB;GACd2D,cAAce,IAAIwB,MAAMvC;GACxBN,UAAUqB,IAAIwB,MAAM7C;GACpBF,aAAauB,IAAIwB,MAAM/C;GACvBK,UAAUkB,IAAIwB,MAAM1C;GACpBJ,UAAUsB,IAAIwB,MAAM9C;GACpBE,WAAWoB,IAAIwB,MAAM5C;EACvB,EAAE,CACJ;EACA,MAAMoD,eAAe1G,eAAesC,mBAAmBkE,aAAaN,KAAK,CAAC;EAC1E,MAAMS,SAAS3G,eAAe;GAC5B,IAAI4G,MAAM;GACV,IAAIC,IAAI;GACR,IAAIC,MAAMJ,aAAaR,MAAMa;GAC7B,OAAOF,IAAIC,KAAK;IACd,MAAME,MAAMN,aAAaR,MAAMW;IAC/B,IAAIG,IAAIC,QAAQ,SAASD,IAAIC,QAAQC,KAAAA,KAAa/C,MAAMgD,MAAMJ,QAAQ;KACpEH,MAAM;KACN;IACF;IACAC;GACF;GAEA,OAAOD;EACT,CAAC;EACD,MAAM,EACJQ,YACAC,WACAC,gBACAC,iBACAC,iBACAC,kBACAtB,eACAC,kBACAsB,QACAC,UACEtF,SACFsD,WACAG,WACA9F,eAAe0E,IAAIwB,MAAM0B,SAAS,GAClC5H,eAAe0E,IAAIwB,MAAM2B,UAAU,GACnClB,QACAD,YACF;EAIA,MAAMoB,aAAa;GAAEC,OAAO;GAAMC,UAAU;EAAM;EAClD,MAAMC,uBAAuB,EAAE/B,OAAO,MAAM;EAC5C,IAAIgC,iBAAiB;EACrB,IAAIC;EACJ,IAAIC;EAEJ,SAASC,cAAuC;GAC9C,MAAMC,KAAK5G,WAAWoE,SAAS;GAC/B,OAAOnE,UAAU2G,EAAE,IAAKA,KAAqBpB,KAAAA;EAC/C;EAEA,SAASqB,kBAAkBD,IAAiB;GAC1C,MAAME,KAAKF,GAAGjB;GACd,MAAMoB,KAAKH,GAAGlB;GACd,MAAMsB,eAAe3E,KAAK4E,IAAI,GAAGL,GAAGM,eAAeN,GAAGO,YAAY;GAClE,MAAMC,gBAAgB/E,KAAK4E,IAAI,GAAGL,GAAGS,cAAcT,GAAGU,WAAW;GACjE,OAAO;IACL3B,WAAWmB;IACXpB,YAAYqB;IACZQ,cAAcP,eAAeF;IAC7BU,aAAaJ,gBAAgBL;IAC7BC;IACAI;IACAK,kBACET,eAAe,IAAI3E,KAAKC,MAAOwE,KAAKE,eAAgB,GAAG,IAAI;IAC7DU,mBACEN,gBAAgB,IAAI/E,KAAKC,MAAOyE,KAAKK,gBAAiB,GAAG,IAAI;IAC/DO,QAAQf;GACV;EACF;EAEA,SAASgB,mBAAmB;GAC1BpB,iBAAiB;GACjB,MAAMI,KAAKH;GACX,IAAI,CAACG,MAAM,CAAC5D,IAAIwB,MAAMrC,aAAa;GACnC,MAAM0F,IAAIhB,kBAAkBD,EAAE;GAE9B,MAAMP,QAAQwB,EAAElC,aAAa;GAC7B,IAAIU,SAAS,CAACD,WAAWC,OACvBzD,KAAK,WAAW;GAElBwD,WAAWC,QAAQA;GAEnB,MAAMyB,SAASrF,MAAMsF,gBAAgB;GACrC,MAAMzB,WACJuB,EAAEb,eAAe,KAAKa,EAAElC,aAAakC,EAAEb,eAAec;GACxD,IAAIxB,YAAY,CAACF,WAAWE,UAC1B1D,KAAK,gBAAgB,EACnBoF,UAAUH,EAAEN,aACd,CAAyB;GAE3BnB,WAAWE,WAAWA;GAEtB,IAAI,CAACC,qBAAqB/B,OAUxB5B,KAAK,UAAUqF;IARbtC,WAAWkC,EAAElC;IACbD,YAAYmC,EAAEnC;IACd6B,cAAcM,EAAEN;IAChBC,aAAaK,EAAEL;IACfC,kBAAkBI,EAAEJ;IACpBC,mBAAmBG,EAAEH;IACrBC,QAAQE,EAAEF;GAEGM,CAAI;EAEvB;EAEA,SAASC,oBAAoB;GAC3B,IAAIzB,iBAAiBC,qBACnBD,cAAc0B,oBAAoB,UAAUzB,mBAAmB;GAEjED,gBAAgBjB,KAAAA;GAChBkB,sBAAsBlB,KAAAA;GACtB,IAAIgB,gBAAgB;IAClB4B,qBAAqB5B,cAAc;IACnCA,iBAAiB;GACnB;EACF;EAEA,SAAS6B,oBAAoB;GAC3BH,kBAAkB;GAClB,IAAI,CAAClF,IAAIwB,MAAMrC,aAAa;GAC5B,MAAMyE,KAAKD,YAAY;GACvB,IAAI,CAACC,IAAI;GACTH,gBAAgBG;GAChBF,4BAA4B;IAC1B,IAAIF,gBAAgB;IACpBA,iBAAiB8B,sBAAsBV,gBAAgB;GACzD;GACAhB,GAAG2B,iBAAiB,UAAU7B,qBAAqB,EAAE8B,SAAS,KAAK,CAAC;EACtE;EAEAjJ,MACE,OAAOyD,IAAIwB,MAAMrC,aAAaiC,SAAS,SACjC;GACJ1E,SAAS2I,iBAAiB;EAC5B,GACA,EAAEI,WAAW,KAAK,CACpB;EACA7J,YAAYsJ,iBAAiB;EAE7B,SAASQ,iBAAiBC,KAAiB;GACzCpC,qBAAqB/B,QAAQ;GAC7BmE,IAAI;GACJpC,qBAAqB/B,QAAQ;EAC/B;EAEA,SAASoE,SAASC,KAAcC,MAAe;GAC7C,MAAMlC,KAAKD,YAAY;GACvB,IAAI,CAACC,IAAI;GACT8B,uBAAuB;IACrB,IAAI,OAAOG,QAAQ,UAAUjC,GAAGjB,YAAYkD;IAC5C,IAAI,OAAOC,SAAS,UAAUlC,GAAGlB,aAAaoD;GAChD,CAAC;EACH;EAEA,SAASC,cAAc;GACrBH,SAAS,GAAGpD,KAAAA,CAAS;EACvB;EAEA,SAASwD,iBAAiB;GACxB,MAAMpC,KAAKD,YAAY;GACvB,IAAI,CAACC,IAAI;GACT8B,uBAAuB;IACrB9B,GAAGjB,YAAYiB,GAAGM;GACpB,CAAC;EACH;EAEA,SAAS+B,gBAAgBC,YAAoBC,aAAsB;GACjE,MAAMvC,KAAKD,YAAY;GACvB,IAAI,CAACC,IAAI;GACT,MAAMI,eAAe3E,KAAK4E,IAAI,GAAGL,GAAGM,eAAeN,GAAGO,YAAY;GAClE,MAAMC,gBAAgB/E,KAAK4E,IAAI,GAAGL,GAAGS,cAAcT,GAAGU,WAAW;GACjE,MAAM8B,IAAI/G,KAAK4E,IAAI,GAAG5E,KAAKgH,IAAI,KAAKH,UAAU,CAAC,IAAI;GACnDR,uBAAuB;IACrB9B,GAAGjB,YAAYqB,eAAeoC;IAC9B,IAAI,OAAOD,gBAAgB,UAAU;KACnC,MAAMG,IAAIjH,KAAK4E,IAAI,GAAG5E,KAAKgH,IAAI,KAAKF,WAAW,CAAC,IAAI;KACpDvC,GAAGlB,aAAa0B,gBAAgBkC;IAClC;GACF,CAAC;EACH;EAEA,SAASC,oBAAyC;GAChD,MAAM3C,KAAKD,YAAY;GACvB,IAAI,CAACC,IACH,OAAO;IACLjB,WAAW;IACXD,YAAY;IACZ6B,cAAc;IACdC,aAAa;IACbC,kBAAkB;IAClBC,mBAAmB;GACrB;GAEF,MAAMG,IAAIhB,kBAAkBD,EAAE;GAC9B,OAAO;IACLjB,WAAWkC,EAAElC;IACbD,YAAYmC,EAAEnC;IACd6B,cAAcM,EAAEN;IAChBC,aAAaK,EAAEL;IACfC,kBAAkBI,EAAEJ;IACpBC,mBAAmBG,EAAEH;GACvB;EACF;EAEA,MAAM,EAAE8B,UAAUC,mBAAmBhJ,WACnCnC,eAAe0E,IAAIwB,MAAMhD,SAAS,GAClClD,eAAe0E,IAAIwB,MAAMnD,QAAQ,GACjC+C,WACAY,cACA1G,eAAemE,MAAMiH,IAAI,CAC3B;EAEA,MAAMC,aAAarL,eAAe;GAQhC,OAAOgG;IANLsF,mBAAmB5E,aAAaR,MAAMa;IACtCN,SAASD,aAAaN;IACtBvC,cAAce,IAAIwB,MAAMvC;IACxBH,UAAUkB,IAAIwB,MAAM1C;IACpBP,QAAQyB,IAAIwB,MAAMjD;GAEb+C;EACT,CAAC;EACD,MAAMuF,aAAavL,eAAe;GA0BhC,OAAOgG;IAxBLS,SAASC,aAAaR;IAEtB7C,UAAUqB,IAAIwB,MAAM7C;IACpBC,WAAWoB,IAAIwB,MAAM5C;IACrBkI,UAAU9G,IAAIwB,MAAMsF;IACpBC,WAAW/G,IAAIwB,MAAMuF;IACrBC,YAAYlH;IACZrB,aAAauB,IAAIwB,MAAM/C;IACvBC,UAAUsB,IAAIwB,MAAM9C;IACpBI,UAAUkB,IAAIwB,MAAM1C;IACpBiC,cAAcA,aAAaS;IAC3ByF,WAAWjH,IAAIwB,MAAMyF;IACrBpI,cAAcmB,IAAIwB,MAAM3C;IACxBE,cAAciB,IAAIwB,MAAMzC;IACxBmI,UAAUlH,IAAIwB,MAAM0F;IACpBlI,QAAQgB,IAAIwB,MAAMxC;IAClBmI,UAAUnH,IAAIwB,MAAM2F;IACpBC,cAAcpH,IAAIwB,MAAM4F;IACxB,wBAAwB;KACtBX,eAAe;KACf/J,SAASuG,KAAK;IAEhB;GAEK3B;EACT,CAAC;EACD,MAAMgG,aAAahM,eAAe;GAOhC,OAAOgG;IALLW,QAAQA,OAAOT;IACfO,SAASC,aAAaR;IACtBiB,MAAMhD,MAAMgD;IACZ2E,cAAcpH,IAAIwB,MAAM4F;GAEnB9F;EACT,CAAC;EAGD9E,QAAQ,WAAW+K,WAAuB,GAAGC,SAAc;GACzD5H,KAAK2H,WAAW,GAAGC,IAAI;EACzB,CAAC;EAGDhL,QAAQ,cAAcC,SAASnB,eAAemE,MAAMgI,UAAU,CAAC,CAAC;EAChEjL,QAAQ,qBAAqBkL,MAAuB;GAClD9H,KAAK,qBAAqB8H,CAAC;EAC7B,CAAC;EAGDlL,QAAQ,gBAAgBC,SAASsE,YAAY,CAAC;EAE9CvE,QAAQ,eAAemL,WAAW;EAElCnL,QAAQ,gBAAgBC,SAASuE,YAAY,CAAC;EAC9CxE,QAAQ,WAAWkL,MAAW;GAC5B,OAAO1G,aAAaQ,MAAMoG,MAAMC,OAAOA,OAAOH,CAAC;EACjD,CAAC;EACDlL,QACE,gBACC,EAAEsL,KAAKC,YAAsD;GAC5DnI,KAAK,eAAe;IAAEkI;IAAKC;GAAM,CAAC;EACpC,CACF;EACAvL,QAAQ,iBAAiBkL,GAAQM,YAAqB;GACpD,IAAIA,SACFhH,aAAaQ,QAAQR,aAAaQ,MAAMyG,QAAQrE,OAAOA,OAAO8D,CAAC;QAE/D1G,aAAaQ,MAAM0G,KAAKR,CAAC;GAE3B,IAAIS,IAAIC,iBAAiB;GACzBrH,aAAaS,QAAQ2G;GACrBE,aAAa;EACf,CAAC;EAGD7L,QAAQ,aAAaC,SAASoE,cAAc,CAAC;EAC7CrE,QACE,oBAEE8L,GACA,EAAER,KAAKC,YACJ;GACHlH,eAAeW,QAAQ8G;GACvB1I,KAAK,oBAAoB0I,CAAC;GAC1B1I,KAAK,aAAa;IAAEkI;IAAKC;GAAM,CAAC;EAClC,CACF;EACAxL,YACQkD,MAAMqB,YACXyH,WAAW;GACV1H,eAAeW,QAAQ+G;EACzB,CACF;EAEA/L,QAAQ,aAAaC,SAASnB,eAAe0E,IAAIwB,MAAM0B,SAAS,CAAC,CAAC;EAClE1G,QAAQ,cAAcC,SAASnB,eAAe0E,IAAIwB,MAAM2B,UAAU,CAAC,CAAC;EAIpE3G,QAAQ,iBAAiBgM,WAAwB;GAC/CrI,SAASqB,QAAQ;GACjBP,UAAUO,MAAMiH,UAAUC,IAAI,aAAa;GAE3CxH,cAAcM,QAAQzE,sBAAsBkE,UAAUO,KAAK,CAAC,CAACsE;GAE7D,MAAM+C,IADU9L,sBAAsByL,MAAM,CAAC,CAACI,SACzB;GACrBxI,eAAeoB,QAAQqH,IAAI,IAAI3H,cAAcM;GAC7CnB,kBAAkBmB,QAAQpB,eAAeoB;EAC3C,CAAC;EACDhF,QAAQ,eAAesM,UAAkBC,KAAa,MAAM;GAC1D3I,eAAeoB,QAAQuH,KAAK1I,kBAAkBmB;EAChD,CAAC;EAEDhF,QAAQ,gBAAgBsM,UAAkBE,WAAmB;GAE3D7I,SAASqB,QAAQ;GACjBP,UAAUO,MAAMiH,UAAUQ,OAAO,aAAa;GAC9C7I,eAAeoB,QAAQ;GACvB,IAAIwH,WAAW,GACb;GAEF,MAAMtB,IAAI1F,aAAaR,MAAMsH;GAI7B,IAAIK,YAHalJ,aAAaiC,IAAIwF,CAAC,IAC/BzH,aAAaS,IAAIgH,CAAC,IAClBlB,SAAShF,MAAMsH,aACOE;GAC1B,IAAIG,YAAYrL,WACdqL,WAAWrL;GAEbmC,aAAaQ,IAAIuB,aAAaR,MAAMsH,WAAWK,QAAQ;GAEvD,IAAI,CAAC,CAACnJ,IAAIwB,MAAM0B,aAAa,CAAC,CAAClD,IAAIwB,MAAM2B,cAAcH,OAAOxB,OAAO;IACnE,IAAI4H,IAAIC,OAAOrJ,IAAIwB,MAAM0B,SAAS,KAAK;IACvC,IAAIoG,SAASD,OAAOrJ,IAAIwB,MAAM2B,UAAU,KAAK;IAC7C,IAAIH,OAAOxB,SAAU4H,IAAI,KAAKN,WAAWM,KAAME,SAAS,GACtDrG,MAAM;GAEV;EACF,CAAC;EAGDzG,QAAQ,iBAAiBC,SAAS6D,aAAa,CAAC;EAChD9D,QAAQ,iBAAiB+D,UAAkB;GACzC,IAAIA,UAAUD,cAAcC,OAC1BD,cAAcE,SAASG,OAAO,CAAC,CAACC;QAC3B;IACLN,cAAcC,QAAQA;IACtBE,IAAI,EAAEG,MAAM,EAAE,CAAC;IACfN,cAAcE,SAASE,IAAI,CAAC,CAACE;GAC/B;GAEAhB,KAAK,QAAQU,aAAa;EAC5B,CAAC;EAED,SAASiJ,SAASC,QAAkB;GAClC,OAAA1N,YAAA,YAAA,MAAA,CAEK0N,OAAOC,KAAKC,GAAQvH,MAAc;IACjC,MAAMuF,IAAI1F,aAAaR,MAAMW;IAG7B,MAAMwH,KAFM1J,aAAaiC,IAAIwF,CAElBxF,IAAMjC,aAAaS,IAAIgH,CAAC,IAAIgC;IACvC,OAAA5N,YAAA,OAAA,EAAA,SAAmB,EAAE8N,OAAOD,KAAK,KAAK,EAAC,GAAA,IAAA;GACzC,CAAC,CAAC,CAAA;EAGR;EAEA,SAAShC,YAAYQ,GAAW;GAC9BpH,aAAaS,QAAQ2G;GACrB,MAAM0B,cAAc,CAAC,GAAG7I,aAAaQ,KAAK;GAC1C,MAAMsI,QAAQrK,MAAMgD;GACpB,IAAI0F,GACE2B;QAAAA,SAASA,MAAMzH,QACjByH,MAAMC,SAASjC,KAAKC,UAAkB;KACpC,IAAIL,IAAI7J,eAAeiK,KAAK9H,IAAIwB,MAAM1C,QAAQ;KAE9C,IAAIkL,CADWH,YAAYjC,MAAMqC,OAAOA,MAAMvC,CAAC,GAClC;MACX,IAAI1H,IAAIwB,MAAMyF,WAAW;OACvB,MAAM,EAAEiD,aAAalK,IAAIwB,MAAMyF,UAAUa,KAAKC,KAAK;OACnD,IAAI,CAACmC,UACHlJ,aAAaQ,MAAM0G,KAAKR,CAAC;MAE7B,OACE1G,aAAaQ,MAAM0G,KAAKR,CAAC;KAE7B;IACF,CAAC;GAAA,OAEE;IACL,MAAMyC,QAA6B,CAAA;IACnCL,MAAMC,SAASjC,KAAKC,UAAkB;KACpC,MAAML,IAAI7J,eAAeiK,KAAK9H,IAAIwB,MAAM1C,QAAQ;KAChD,IAAIkB,IAAIwB,MAAMyF,WAAW;MACvB,MAAM,EAAEiD,aAAalK,IAAIwB,MAAMyF,UAAUa,KAAKC,KAAK;MACnD,IAAI,CAACmC,UACHC,MAAMjC,KAAKR,CAAC;KAEhB,OACEyC,MAAMjC,KAAKR,CAAC;IAEhB,CAAC;IACD1G,aAAaQ,QAAQR,aAAaQ,MAAMyG,QACrCgC,OAAO,CAACE,MAAMvC,MAAMwC,MAAMA,KAAKH,EAAE,CACpC;GAEF;GACA5B,aAAa;EACf;EAEA,SAASD,mBAA0B;GACjC,MAAMiC,OAAOrJ,aAAaQ;GAC1B,MAAM8I,KAAK7K,MAAMgD,QAAQ,CAAA,EAAA,CAAIwF,QAAQH,KAAUC,UAAkB;IAC/D,IAAI/H,IAAIwB,MAAMyF,WAAW;KACvB,MAAM,EAAEiD,aAAalK,IAAIwB,MAAMyF,UAAUa,KAAKC,KAAK;KACnD,OAAO,CAACmC;IACV;IACA,OAAO;GACT,CAAC;GACD,IAAII,KAAKA,EAAEjI,UAAUgI,KAAKhI,QAAQ;IAChC,IAAI2F,UAAiB;IAErB,IAAIsC,EAAEjI,UAAUgI,KAAKhI,QAAQ;KAC3B,IAAIF,IAAI;KACR,OAAOA,IAAImI,EAAEjI,QAAQ;MACnB,MAAMyF,MAAMwC,EAAEnI;MACd,MAAMuF,IAAI7J,eAAeiK,KAAK9H,IAAIwB,MAAM1C,QAAQ;MAChD,IAAI,CAACuL,KAAKzC,MAAMqC,OAAOA,MAAMvC,CAAC,GAAG;OAC/BM,UAAU;OACV;MACF;MACA7F;KACF;IACF,OACE6F,UAAU;IAEZ,OAAOA;GACT;GACA,OAAO;EACT;EAEA,SAASK,eAAe;GAYtBzI,KAAK,kBAXMH,MAAMgD,QAAQ,CAAA,EAAA,CAAIwF,QAAQH,KAAKC,UAAU;IAClD,MAAML,IAAI7J,eAAeiK,KAAK9H,IAAIwB,MAAM1C,QAAQ;IAChD,IAAIkB,IAAIwB,MAAMyF,WAAW;KACvB,MAAM,EAAEiD,aAAalK,IAAIwB,MAAMyF,UAAUa,KAAKC,KAAK;KACnD,IAAI,CAACmC,UACH,OAAOlJ,aAAaQ,MAAMoG,MAAM4C,MAAMA,KAAK9C,CAAC;KAE9C,OAAO;IACT;IACA,OAAO1G,aAAaQ,MAAMoG,MAAM4C,MAAMA,KAAK9C,CAAC;GAC9C,CACsB6C,CAAG;EAC3B;EAEAhO,MACEyE,eACCyJ,OAAO;GACN,IAAI,CAACC,YAAYD,IAAIhL,MAAM4K,IAAW,GACpCzK,KAAK,eAAe6K,EAAE;EAE1B,GACA,EAAEE,MAAM,KAAK,CACf;EACApO,YACQkD,MAAM4K,OACXI,OAAY;GACX,IAAI,CAACC,YAAYD,IAAIzJ,aAAaQ,KAAK,GAAG;IACxCR,aAAaQ,QAAQiJ;IACrB,IAAIA,MAAMA,GAAGpI,WAAW,GACtBtB,aAAaS,QAAQ;GAEzB;EACF,GACA;GAAEmJ,MAAM;GAAMlF,WAAW;EAAK,CAChC;EACAlJ,MAAMyF,oBAAoB;GACxBtF,SAASuG,KAAK;EAChB,CAAC;EAgBD1G,MACE;SAAOkD,MAAMgD;SAAYzC,IAAIwB,MAAMuF;SAAiB/G,IAAIwB,MAAMsF;EAAQ,IACrE,CAACwD,GAAGnI,GAAGqI,IAAI,CAACI,MAAMC,MAAMC,UAAU;GACjC,IAAIR,GAAG;IACL,IAAItK,IAAIwB,MAAM/C,aAAa;KACzB,MAAM0J,IAAIC,iBAAiB;KAC3BrH,aAAaS,QAAQ2G;IACvB;IACA,IAAI2C,SAASN,KAAKrI,MAAM0I,MACtBvF,4BAA4B;KAC1B5I,SAASqJ,WAAW;IACtB,CAAC;GAEL;EAKF,GACA;GACE4E,MAAM;GACNlF,WAAW;EACb,CACF;EAEAjK,gBAAgB;GAGd,IAAI4F,UAAUI,SAASvE,UAAUmE,UAAUI,KAAK,GAAG;IACjDJ,UAAUI,MAAMkB,aAAa;IAC7BtB,UAAUI,MAAMmB,YAAY;GAC9B;EACF,CAAC;EAED7F,iBAAiBsE,iBAAiB;GAChCqF,eAAe;GACfxD,MAAM;EACR,CAAC;EAEDtH,kBAAkB;GAChB,IAAIyF,UAAUI,SAASvE,UAAUmE,UAAUI,KAAK,GAAG;IACjDJ,UAAUI,MAAMkB,aAAaA,WAAWlB;IACxCJ,UAAUI,MAAMmB,YAAYA,UAAUnB;GACxC;EACF,CAAC;EAED,SAASuJ,cAAc;GACrB,MAAMC,QAAKlP,YAAAuB,gBAAcsJ,WAAWnF,OAAK,IAAA;GACzC,MAAMyJ,SAASxI,MAAyByI,MAAeC,OAAWrP,YAAAwB,gBAAAtB,WAAA;IAAA,QACnDyG;IAAI,QAAQyI;IAAI,MAAMC;GAAE,GAAMtE,WAAWrF,KAAK,GAAA,IAAA;GAG7D,MAAM4J,cAAc,EAClB3I,MACAsF,YAIDjM,YAAAI,UAAA,MAAA;IAAAJ,YAAA,OAAA,EAAA,SAAA,gBAAA,GAAA,CAAAA,YAAA,SAAA,EAAA,SAAA,UAAA,GAAA,CAIQyN,SAAS/C,SAAShF,KAAK,GAAC1F,YAAA,SAAA,MAAA,CACjBkP,KAAK,CAAA,CAAA,CAAA,CAAA,CAAA;IAAAlP,YAAA,OAAA,EAAA,SAAA,gBAAA,GAAA,CAAAA,YAAA,SAAA,EAAA,SAAA,UAAA,GAAA,CAKZyN,SAAS/C,SAAShF,KAAK,GAAC1F,YAAA,SAAA,MAAA,CAEtBmP,MACCxI,MACAsF,QAAQA,MAAMmD,OAAO1I,KAAAA,GACrBuF,QAAQA,MAAMoD,KAAK3I,KAAAA,CACrB,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA;IAINP,OAAOT,SAAK1F,YAAA,OAAA,EAAA,SAAA,gBAAA,GAAA,CAAAA,YAAA,SAAA,EAAA,SAAA,UAAA,GAAA,CAGNyN,SAAS/C,SAAShF,KAAK,GAAC1F,YAAA,SAAA,MAAA,CAAAA,YAAAyB,gBAEZ+J,WAAW9F,OAAK,IAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GAIlC,CAAA;GAIL,MAAM6J,SAASC,YAAYxP,YAAA,OAAA;IAAA,SAEhB,CACL,qBACA;KACE,oBAAoBkE,IAAIwB,MAAMnD;KAC9B,uBAAuB2B,IAAIwB,MAAMlD;IACnC,CAAC;IACF,SACMlB,eAAe;KACpB,GAAGF,kBAAkB,SAASuC,MAAMiH,IAAI;KACxC,GAAGvJ,mBAAmB,SAASsC,MAAM8L,KAAK;KAC1C,GAAG9L,MAAM+L;IACX,CAAC;IAAC,OACGvK;GAAS,GAAA;IACbqK;KACC,CAAC7L,MAAMgD,QAAQhD,MAAMgD,MAAMJ,WAAW,MAAMvC,MAAM,iBAChDA,MAAM,cAAc,CAAC,IACrB;IAAIxD,eAAAR,YAAA,OAAA;KAAA,SAAA;KAAA,SAIC,EAAEgK,MAAM1F,eAAeoB,QAAQ,KAAK;IAAC,GAAA,IAAA,GAAA,CAAA,CAAApF,OADpC+D,SAASqB,KAAK,CAAA,CAAA;IAEvBsB,gBAAgBtB,MAAMiI,KAAKe,GAAGrI,MAACrG,YAAA,OAAA;KAAA,OAEvB,eAAeqG;KAAG,SAChB,CACL,kCACA,EAAE,WAAWqI,EAAEiB,QAAQhM,MAAMgD,KAAK,CAAC;KACpC,SACM,EAAEqD,MAAM0E,EAAE1E,OAAO,KAAK;IAAC,GAAA,IAAA,CAEjC;IACA/C,iBAAiBvB,MAAMiI,KAAKe,GAAGrI,MAACrG,YAAA,OAAA;KAAA,OAExB,gBAAgBqG;KAAG,SACjB,CACL,mCACA,EAAE,WAAWqI,EAAEiB,QAAQhM,MAAMgD,KAAK,CAAC;KACpC,SACM,EAAEqD,MAAM0E,EAAE1E,OAAO,KAAK;IAAC,GAAA,IAAA,CAEjC;GAAC,CAAA;GAIN,IAAI9F,IAAIwB,MAAMtC,SACZ,OAAOmM,MAAKvP,YAAAa,SAAAX,WAEJqF,WAAWG,OAAK;IAAA,cAElBxB,IAAIwB,MAAMkK,cAAcjM,MAAMiH,QAAQtH;IAAwB,cAEpDK,MAAMgD;IAAI,OACjBzC,IAAIwB,MAAMmK;GAAG,CAAA,GACT,EACPC,UAAUxB,MAAuB;IAC/B,OAAOgB,WAAWhB,CAAC;GACrB,EACF,CAAC,CAEL;GAGF,OAAOiB,MAAKvP,YAAA,OACDuF,WAAWG,OAAK,CAAG4J,WAAW,EAAE3I,MAAMhD,MAAMgD,KAAK,CAAC,CAAC,CAAA,CAC9D;EACF;EAEA1C,OAAO;GACL8L,YAAY,EACVtL,OACAC,aAII;IACJF,cAAcC,QAAQA;IACtBD,cAAcE,SAASA;GACzB;GACAsL,kBAAkB;IAChBvL,OAAOD,cAAcC;IACrBC,QAAQF,cAAcE;GACxB;GACAoF;GACAG;GACAC;GACAC;GACAM;GACA5C;GACAoI,YAAY9I;EACd,CAAwB;EACxB,OAAO8H;CACT;AACF,CAAC;AAGD,SAASL,YAAYsB,MAAaC,MAAa;CAC7C,IAAID,KAAK3J,WAAW4J,KAAK5J,QAAQ;EAC/B,IAAI2J,KAAK3J,WAAW,GAClB,OAAO;EAET,IAAIF,IAAI;EACR,IAAIgG,IAAI;EACR,OAAOhG,IAAI6J,KAAK3J,QAAQ;GACtB,MAAMqF,IAAIsE,KAAK7J;GACf,IAAI,CAAC8J,KAAKrE,MAAMhH,SAASA,SAAS8G,CAAC,GAAG;IACpCS,IAAI;IACJ;GACF;GACAhG;EACF;EACA,OAAOgG;CACT;CACA,OAAO;AACT"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
2
|
+
isInThead: BooleanConstructor;
|
|
3
|
+
sorter: {
|
|
4
|
+
type: (NumberConstructor | BooleanConstructor)[];
|
|
5
|
+
default: any;
|
|
6
|
+
};
|
|
7
|
+
tag: {
|
|
8
|
+
type: StringConstructor;
|
|
9
|
+
default: string;
|
|
10
|
+
};
|
|
11
|
+
align: {
|
|
12
|
+
type: StringConstructor;
|
|
13
|
+
};
|
|
14
|
+
isNarrow: BooleanConstructor;
|
|
15
|
+
notBold: BooleanConstructor;
|
|
16
|
+
resizeWidth: BooleanConstructor;
|
|
17
|
+
colIndex: NumberConstructor;
|
|
18
|
+
colSpan: {
|
|
19
|
+
type: NumberConstructor;
|
|
20
|
+
default: number;
|
|
21
|
+
};
|
|
22
|
+
rowSpan: {
|
|
23
|
+
type: NumberConstructor;
|
|
24
|
+
default: number;
|
|
25
|
+
};
|
|
26
|
+
col: {
|
|
27
|
+
type: ObjectConstructor;
|
|
28
|
+
};
|
|
29
|
+
cellClass: {
|
|
30
|
+
type: (StringConstructor | ArrayConstructor | ObjectConstructor)[];
|
|
31
|
+
};
|
|
32
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
33
|
+
isInThead: BooleanConstructor;
|
|
34
|
+
sorter: {
|
|
35
|
+
type: (NumberConstructor | BooleanConstructor)[];
|
|
36
|
+
default: any;
|
|
37
|
+
};
|
|
38
|
+
tag: {
|
|
39
|
+
type: StringConstructor;
|
|
40
|
+
default: string;
|
|
41
|
+
};
|
|
42
|
+
align: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
};
|
|
45
|
+
isNarrow: BooleanConstructor;
|
|
46
|
+
notBold: BooleanConstructor;
|
|
47
|
+
resizeWidth: BooleanConstructor;
|
|
48
|
+
colIndex: NumberConstructor;
|
|
49
|
+
colSpan: {
|
|
50
|
+
type: NumberConstructor;
|
|
51
|
+
default: number;
|
|
52
|
+
};
|
|
53
|
+
rowSpan: {
|
|
54
|
+
type: NumberConstructor;
|
|
55
|
+
default: number;
|
|
56
|
+
};
|
|
57
|
+
col: {
|
|
58
|
+
type: ObjectConstructor;
|
|
59
|
+
};
|
|
60
|
+
cellClass: {
|
|
61
|
+
type: (StringConstructor | ArrayConstructor | ObjectConstructor)[];
|
|
62
|
+
};
|
|
63
|
+
}>> & Readonly<{}>, {
|
|
64
|
+
tag: string;
|
|
65
|
+
isInThead: boolean;
|
|
66
|
+
isNarrow: boolean;
|
|
67
|
+
notBold: boolean;
|
|
68
|
+
resizeWidth: boolean;
|
|
69
|
+
sorter: number | boolean;
|
|
70
|
+
colSpan: number;
|
|
71
|
+
rowSpan: number;
|
|
72
|
+
}, {}, {
|
|
73
|
+
Icon: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
74
|
+
name: {
|
|
75
|
+
type: import('vue').PropType<string>;
|
|
76
|
+
default: any;
|
|
77
|
+
};
|
|
78
|
+
fontClassName: {
|
|
79
|
+
type: StringConstructor;
|
|
80
|
+
default: any;
|
|
81
|
+
};
|
|
82
|
+
color: {
|
|
83
|
+
type: StringConstructor;
|
|
84
|
+
default: any;
|
|
85
|
+
};
|
|
86
|
+
hoverColor: {
|
|
87
|
+
type: StringConstructor;
|
|
88
|
+
default: any;
|
|
89
|
+
};
|
|
90
|
+
size: {
|
|
91
|
+
type: import('vue').PropType<string | number>;
|
|
92
|
+
default: any;
|
|
93
|
+
};
|
|
94
|
+
spin: {
|
|
95
|
+
type: BooleanConstructor;
|
|
96
|
+
default: any;
|
|
97
|
+
};
|
|
98
|
+
rotate: {
|
|
99
|
+
type: BooleanConstructor;
|
|
100
|
+
default: any;
|
|
101
|
+
};
|
|
102
|
+
deg: {
|
|
103
|
+
type: NumberConstructor;
|
|
104
|
+
default: any;
|
|
105
|
+
};
|
|
106
|
+
direction: {
|
|
107
|
+
type: import('vue').PropType<import('..').IconRotateDirection>;
|
|
108
|
+
default: any;
|
|
109
|
+
};
|
|
110
|
+
title: {
|
|
111
|
+
type: StringConstructor;
|
|
112
|
+
default: any;
|
|
113
|
+
};
|
|
114
|
+
ariaLabel: {
|
|
115
|
+
type: StringConstructor;
|
|
116
|
+
default: any;
|
|
117
|
+
};
|
|
118
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
119
|
+
click: (e: MouseEvent) => boolean;
|
|
120
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
121
|
+
name: {
|
|
122
|
+
type: import('vue').PropType<string>;
|
|
123
|
+
default: any;
|
|
124
|
+
};
|
|
125
|
+
fontClassName: {
|
|
126
|
+
type: StringConstructor;
|
|
127
|
+
default: any;
|
|
128
|
+
};
|
|
129
|
+
color: {
|
|
130
|
+
type: StringConstructor;
|
|
131
|
+
default: any;
|
|
132
|
+
};
|
|
133
|
+
hoverColor: {
|
|
134
|
+
type: StringConstructor;
|
|
135
|
+
default: any;
|
|
136
|
+
};
|
|
137
|
+
size: {
|
|
138
|
+
type: import('vue').PropType<string | number>;
|
|
139
|
+
default: any;
|
|
140
|
+
};
|
|
141
|
+
spin: {
|
|
142
|
+
type: BooleanConstructor;
|
|
143
|
+
default: any;
|
|
144
|
+
};
|
|
145
|
+
rotate: {
|
|
146
|
+
type: BooleanConstructor;
|
|
147
|
+
default: any;
|
|
148
|
+
};
|
|
149
|
+
deg: {
|
|
150
|
+
type: NumberConstructor;
|
|
151
|
+
default: any;
|
|
152
|
+
};
|
|
153
|
+
direction: {
|
|
154
|
+
type: import('vue').PropType<import('..').IconRotateDirection>;
|
|
155
|
+
default: any;
|
|
156
|
+
};
|
|
157
|
+
title: {
|
|
158
|
+
type: StringConstructor;
|
|
159
|
+
default: any;
|
|
160
|
+
};
|
|
161
|
+
ariaLabel: {
|
|
162
|
+
type: StringConstructor;
|
|
163
|
+
default: any;
|
|
164
|
+
};
|
|
165
|
+
}>> & Readonly<{
|
|
166
|
+
onClick?: (e: MouseEvent) => any;
|
|
167
|
+
}>, {
|
|
168
|
+
title: string;
|
|
169
|
+
deg: number;
|
|
170
|
+
size: string | number;
|
|
171
|
+
name: string;
|
|
172
|
+
fontClassName: string;
|
|
173
|
+
color: string;
|
|
174
|
+
hoverColor: string;
|
|
175
|
+
spin: boolean;
|
|
176
|
+
rotate: boolean;
|
|
177
|
+
direction: import('..').IconRotateDirection;
|
|
178
|
+
ariaLabel: string;
|
|
179
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
180
|
+
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
181
|
+
export default _default;
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import Icon_default from "../icon/Icon.js";
|
|
2
|
+
import { computed, createVNode, defineComponent, inject, normalizeClass, normalizeStyle, onMounted, reactive, ref } from "vue";
|
|
3
|
+
//#region components/sheet/_cell.tsx
|
|
4
|
+
var _cell_default = /* @__PURE__ */ defineComponent({
|
|
5
|
+
components: { Icon: Icon_default },
|
|
6
|
+
props: {
|
|
7
|
+
isInThead: Boolean,
|
|
8
|
+
sorter: {
|
|
9
|
+
type: [Boolean, Number],
|
|
10
|
+
default: void 0
|
|
11
|
+
},
|
|
12
|
+
tag: {
|
|
13
|
+
type: String,
|
|
14
|
+
default: "td"
|
|
15
|
+
},
|
|
16
|
+
align: { type: String },
|
|
17
|
+
isNarrow: Boolean,
|
|
18
|
+
notBold: Boolean,
|
|
19
|
+
resizeWidth: Boolean,
|
|
20
|
+
colIndex: Number,
|
|
21
|
+
colSpan: {
|
|
22
|
+
type: Number,
|
|
23
|
+
default: 1
|
|
24
|
+
},
|
|
25
|
+
rowSpan: {
|
|
26
|
+
type: Number,
|
|
27
|
+
default: 1
|
|
28
|
+
},
|
|
29
|
+
col: { type: Object },
|
|
30
|
+
cellClass: { type: [
|
|
31
|
+
Object,
|
|
32
|
+
Array,
|
|
33
|
+
String
|
|
34
|
+
] }
|
|
35
|
+
},
|
|
36
|
+
setup(props, { slots }) {
|
|
37
|
+
const tdRoot = ref(null);
|
|
38
|
+
const start = reactive({
|
|
39
|
+
x: 0,
|
|
40
|
+
y: 0
|
|
41
|
+
});
|
|
42
|
+
const end = reactive({
|
|
43
|
+
x: 0,
|
|
44
|
+
y: 0
|
|
45
|
+
});
|
|
46
|
+
const beforeResize = inject("beforeResize");
|
|
47
|
+
const inResizing = inject("inResizing");
|
|
48
|
+
const afterResize = inject("afterResize");
|
|
49
|
+
const currentSorter = inject("currentSorter");
|
|
50
|
+
const updateSorter = inject("updateSorter");
|
|
51
|
+
const _style = computed(() => {
|
|
52
|
+
if (!props.isInThead) {
|
|
53
|
+
const { width, ...restStyle } = props.col?.style ?? {};
|
|
54
|
+
return restStyle;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
const cellProps = computed(() => {
|
|
58
|
+
const _s = normalizeStyle(_style.value);
|
|
59
|
+
return {
|
|
60
|
+
ref: tdRoot,
|
|
61
|
+
colspan: props.colSpan,
|
|
62
|
+
rowspan: props.rowSpan,
|
|
63
|
+
"data-col-index": props.colIndex,
|
|
64
|
+
class: [
|
|
65
|
+
"w-cell",
|
|
66
|
+
{
|
|
67
|
+
"w-cell--center": props.align === "center",
|
|
68
|
+
"w-cell--right": props.align === "right",
|
|
69
|
+
"w-cell--narrow": props.isNarrow,
|
|
70
|
+
"w-cell--not-bold": props.notBold
|
|
71
|
+
},
|
|
72
|
+
normalizeClass(props.cellClass)
|
|
73
|
+
],
|
|
74
|
+
style: _s
|
|
75
|
+
};
|
|
76
|
+
});
|
|
77
|
+
function toResize(e) {
|
|
78
|
+
end.x = e.clientX;
|
|
79
|
+
inResizing(props.colIndex, end.x - start.x);
|
|
80
|
+
}
|
|
81
|
+
function handleMouseup(e) {
|
|
82
|
+
afterResize(props.colIndex, e.clientX - start.x);
|
|
83
|
+
start.x = 0;
|
|
84
|
+
end.x = 0;
|
|
85
|
+
document.removeEventListener("mousemove", toResize);
|
|
86
|
+
document.removeEventListener("mouseup", handleMouseup);
|
|
87
|
+
}
|
|
88
|
+
function toSort() {
|
|
89
|
+
updateSorter(props.col?.field);
|
|
90
|
+
}
|
|
91
|
+
onMounted(() => {});
|
|
92
|
+
return () => {
|
|
93
|
+
let line = null;
|
|
94
|
+
let sorter = null;
|
|
95
|
+
if (props.resizeWidth) line = createVNode("span", {
|
|
96
|
+
class: "w-cell-resize-line",
|
|
97
|
+
onMousedown: (e) => {
|
|
98
|
+
start.x = e.clientX;
|
|
99
|
+
beforeResize(tdRoot.value);
|
|
100
|
+
document.addEventListener("mousemove", toResize);
|
|
101
|
+
document.addEventListener("mouseup", handleMouseup);
|
|
102
|
+
},
|
|
103
|
+
onClick: (e) => {
|
|
104
|
+
e.preventDefault();
|
|
105
|
+
}
|
|
106
|
+
}, null);
|
|
107
|
+
if (props.sorter !== void 0) sorter = createVNode("div", {
|
|
108
|
+
"class": "w-cell-sorter",
|
|
109
|
+
"onClick": (e) => {
|
|
110
|
+
toSort();
|
|
111
|
+
e.preventDefault();
|
|
112
|
+
e.stopPropagation();
|
|
113
|
+
}
|
|
114
|
+
}, [createVNode(Icon_default, {
|
|
115
|
+
"name": "w-icon-sort-down",
|
|
116
|
+
"class": ["w-cell-sorter-icon w-cell-sorter-up", { "w-cell-sorter--0": currentSorter.field === props.col?.field && currentSorter.sorter === 0 }]
|
|
117
|
+
}, null), createVNode(Icon_default, {
|
|
118
|
+
"name": "w-icon-sort-down",
|
|
119
|
+
"class": ["w-cell-sorter-icon w-cell-sorter-down ", { "w-cell-sorter--1": currentSorter.field === props.col?.field && currentSorter.sorter === 1 }]
|
|
120
|
+
}, null)]);
|
|
121
|
+
return createVNode(props.tag, cellProps.value, { default: () => [
|
|
122
|
+
slots.default?.(),
|
|
123
|
+
line,
|
|
124
|
+
sorter
|
|
125
|
+
] });
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
//#endregion
|
|
130
|
+
export { _cell_default as default };
|
|
131
|
+
|
|
132
|
+
//# sourceMappingURL=_cell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_cell.js","names":["ref","computed","defineComponent","inject","reactive","onMounted","normalizeClass","normalizeStyle","createVNode","_createVNode","Icon","components","props","isInThead","Boolean","sorter","type","Number","default","undefined","tag","String","align","isNarrow","notBold","resizeWidth","colIndex","colSpan","rowSpan","col","Object","cellClass","Array","setup","slots","tdRoot","start","x","y","end","beforeResize","inResizing","afterResize","currentSorter","updateSorter","_style","width","restStyle","style","cellProps","_s","value","o","colspan","rowspan","class","toResize","e","clientX","handleMouseup","document","removeEventListener","toSort","field","line","lineProps","onMousedown","addEventListener","onClick","preventDefault","stopPropagation"],"sources":["../../../components/sheet/_cell.tsx"],"sourcesContent":["import {\r\n ref,\r\n computed,\r\n defineComponent,\r\n inject,\r\n ComputedRef,\r\n reactive,\r\n onMounted,\r\n onUpdated,\r\n nextTick,\r\n normalizeClass,\r\n normalizeStyle,\r\n} from \"vue\"\r\nimport Icon from \"../icon/index\"\r\nimport number from \"../number\"\r\nexport default defineComponent({\r\n components: { Icon },\r\n props: {\r\n isInThead: Boolean,\r\n\r\n sorter: { type: [Boolean, Number], default: undefined },\r\n tag: { type: String, default: \"td\" },\r\n align: { type: String }, //center\r\n isNarrow: Boolean,\r\n notBold: Boolean,\r\n resizeWidth: Boolean,\r\n colIndex: Number,\r\n colSpan: { type: Number, default: 1 },\r\n rowSpan: { type: Number, default: 1 },\r\n col: { type: Object },\r\n cellClass: { type: [Object, Array, String] },\r\n },\r\n setup(props, { slots }) {\r\n const tdRoot = ref(null)\r\n const start = reactive({ x: 0, y: 0 })\r\n const end = reactive({ x: 0, y: 0 })\r\n const beforeResize = inject(\"beforeResize\") as Function\r\n const inResizing = inject(\"inResizing\") as Function\r\n const afterResize = inject(\"afterResize\") as Function\r\n const currentSorter = inject(\"currentSorter\") as any\r\n const updateSorter = inject(\"updateSorter\") as Function\r\n const _style = computed(() => {\r\n if (!props.isInThead) {\r\n const { width, ...restStyle } = props.col?.style ?? {}\r\n return restStyle\r\n }\r\n })\r\n const cellProps = computed(() => {\r\n const _s = normalizeStyle(_style.value)\r\n let o: any = {\r\n ref: tdRoot,\r\n colspan: props.colSpan,\r\n rowspan: props.rowSpan,\r\n \"data-col-index\": props.colIndex,\r\n class: [\r\n \"w-cell\",\r\n {\r\n \"w-cell--center\": props.align === \"center\",\r\n \"w-cell--right\": props.align === \"right\",\r\n \"w-cell--narrow\": props.isNarrow,\r\n \"w-cell--not-bold\": props.notBold,\r\n },\r\n normalizeClass(props.cellClass),\r\n ],\r\n style: _s,\r\n }\r\n return o\r\n })\r\n function toResize(e: MouseEvent) {\r\n end.x = e.clientX\r\n inResizing(props.colIndex, end.x - start.x)\r\n }\r\n function handleMouseup(e: MouseEvent) {\r\n afterResize(props.colIndex, e.clientX - start.x)\r\n start.x = 0\r\n end.x = 0\r\n document.removeEventListener(\"mousemove\", toResize)\r\n document.removeEventListener(\"mouseup\", handleMouseup)\r\n }\r\n function toSort() {\r\n updateSorter(props.col?.field)\r\n }\r\n onMounted(() => {})\r\n\r\n return () => {\r\n let line: any = null\r\n let sorter: any = null\r\n if (props.resizeWidth) {\r\n const lineProps = {\r\n class: \"w-cell-resize-line\",\r\n onMousedown: (e: MouseEvent) => {\r\n start.x = e.clientX\r\n beforeResize(tdRoot.value)\r\n\r\n document.addEventListener(\"mousemove\", toResize)\r\n document.addEventListener(\"mouseup\", handleMouseup)\r\n },\r\n onClick: (e: MouseEvent) => {\r\n e.preventDefault()\r\n },\r\n }\r\n line = <span {...lineProps}></span>\r\n }\r\n if (props.sorter !== undefined) {\r\n sorter = (\r\n <div\r\n class=\"w-cell-sorter\"\r\n onClick={(e) => {\r\n toSort()\r\n e.preventDefault()\r\n e.stopPropagation()\r\n }}>\r\n <Icon\r\n name=\"w-icon-sort-down\"\r\n class={[\r\n \"w-cell-sorter-icon w-cell-sorter-up\",\r\n {\r\n \"w-cell-sorter--0\":\r\n currentSorter.field === props.col?.field &&\r\n currentSorter.sorter === 0,\r\n },\r\n ]}\r\n />\r\n <Icon\r\n name=\"w-icon-sort-down\"\r\n class={[\r\n \"w-cell-sorter-icon w-cell-sorter-down \",\r\n {\r\n \"w-cell-sorter--1\":\r\n currentSorter.field === props.col?.field &&\r\n currentSorter.sorter === 1,\r\n },\r\n ]}\r\n />\r\n </div>\r\n )\r\n }\r\n\r\n return (\r\n <props.tag {...cellProps.value}>\r\n {slots.default?.()}\r\n {line}\r\n {sorter}\r\n </props.tag>\r\n )\r\n }\r\n },\r\n})\r\n"],"mappings":"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"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Sheet props
|
|
4
|
+
*
|
|
5
|
+
* 可全局配置的项(`app.use(UI, { components: { Sheet: {...} } })`)默认值均为 `undefined`,
|
|
6
|
+
* 由 useComponentConfig 按「显式 props > 全局配置 > SHEET_FALLBACK」合并。
|
|
7
|
+
*
|
|
8
|
+
* 不宜全局配置:data / columns / keys / modelValue / highlight(实例数据或 v-model 状态)
|
|
9
|
+
*/
|
|
10
|
+
declare const _default: {
|
|
11
|
+
data: PropType<any[] | undefined>;
|
|
12
|
+
columns: (ArrayConstructor | FunctionConstructor)[];
|
|
13
|
+
stripe: {
|
|
14
|
+
type: BooleanConstructor;
|
|
15
|
+
default: any;
|
|
16
|
+
};
|
|
17
|
+
hover: {
|
|
18
|
+
type: BooleanConstructor;
|
|
19
|
+
default: any;
|
|
20
|
+
};
|
|
21
|
+
nowrap: {
|
|
22
|
+
type: BooleanConstructor;
|
|
23
|
+
default: any;
|
|
24
|
+
};
|
|
25
|
+
bordered: {
|
|
26
|
+
type: BooleanConstructor;
|
|
27
|
+
default: any;
|
|
28
|
+
};
|
|
29
|
+
trBordered: {
|
|
30
|
+
type: BooleanConstructor;
|
|
31
|
+
default: any;
|
|
32
|
+
};
|
|
33
|
+
height: {
|
|
34
|
+
type: StringConstructor;
|
|
35
|
+
default: any;
|
|
36
|
+
};
|
|
37
|
+
maxHeight: {
|
|
38
|
+
type: StringConstructor;
|
|
39
|
+
default: any;
|
|
40
|
+
};
|
|
41
|
+
autoWidth: {
|
|
42
|
+
type: BooleanConstructor;
|
|
43
|
+
default: any;
|
|
44
|
+
};
|
|
45
|
+
rowClass: {
|
|
46
|
+
type: PropType<string | string[] | Record<string, any> | ((row: any, index: number) => any)>;
|
|
47
|
+
default: any;
|
|
48
|
+
};
|
|
49
|
+
resize: {
|
|
50
|
+
type: BooleanConstructor;
|
|
51
|
+
default: any;
|
|
52
|
+
};
|
|
53
|
+
hasCheckbox: {
|
|
54
|
+
type: BooleanConstructor;
|
|
55
|
+
default: any;
|
|
56
|
+
};
|
|
57
|
+
hasRadio: {
|
|
58
|
+
type: BooleanConstructor;
|
|
59
|
+
default: any;
|
|
60
|
+
};
|
|
61
|
+
hasIndex: {
|
|
62
|
+
type: BooleanConstructor;
|
|
63
|
+
default: any;
|
|
64
|
+
};
|
|
65
|
+
hasAction: {
|
|
66
|
+
type: PropType<boolean | string | Array<string>>;
|
|
67
|
+
default: any;
|
|
68
|
+
};
|
|
69
|
+
canHighlight: {
|
|
70
|
+
type: PropType<boolean | ((row: any, index: number) => boolean)>;
|
|
71
|
+
default: any;
|
|
72
|
+
};
|
|
73
|
+
checkable: {
|
|
74
|
+
type: PropType<(row: any, index: number) => {
|
|
75
|
+
checked?: boolean;
|
|
76
|
+
disabled?: boolean;
|
|
77
|
+
}>;
|
|
78
|
+
default: any;
|
|
79
|
+
};
|
|
80
|
+
checkKey: {
|
|
81
|
+
type: StringConstructor;
|
|
82
|
+
default: any;
|
|
83
|
+
};
|
|
84
|
+
highlightKey: {
|
|
85
|
+
type: StringConstructor;
|
|
86
|
+
default: any;
|
|
87
|
+
};
|
|
88
|
+
rowKey: {
|
|
89
|
+
type: PropType<string | ((row: any) => string)>;
|
|
90
|
+
default: any;
|
|
91
|
+
};
|
|
92
|
+
indexContent: {
|
|
93
|
+
type: PropType<string | object | ((row: any, index: number) => any)>;
|
|
94
|
+
default: any;
|
|
95
|
+
};
|
|
96
|
+
pageSize: {
|
|
97
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
98
|
+
default: any;
|
|
99
|
+
};
|
|
100
|
+
pageIndex: {
|
|
101
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
102
|
+
default: any;
|
|
103
|
+
};
|
|
104
|
+
leftFixed: {
|
|
105
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
106
|
+
default: any;
|
|
107
|
+
};
|
|
108
|
+
rightFixed: {
|
|
109
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
110
|
+
default: any;
|
|
111
|
+
};
|
|
112
|
+
virtual: {
|
|
113
|
+
type: BooleanConstructor;
|
|
114
|
+
default: any;
|
|
115
|
+
};
|
|
116
|
+
itemHeight: {
|
|
117
|
+
type: NumberConstructor;
|
|
118
|
+
default: any;
|
|
119
|
+
};
|
|
120
|
+
pad: {
|
|
121
|
+
type: PropType<number | number[]>;
|
|
122
|
+
default: any;
|
|
123
|
+
};
|
|
124
|
+
sheetRow: {
|
|
125
|
+
type: FunctionConstructor;
|
|
126
|
+
default: any;
|
|
127
|
+
};
|
|
128
|
+
sheetTdIndex: {
|
|
129
|
+
type: FunctionConstructor;
|
|
130
|
+
default: any;
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* 开启后监听内层滚动容器,抛出 scroll / reach-top / reach-bottom。
|
|
134
|
+
* 可全局配置;默认 false(见 SHEET_FALLBACK)。
|
|
135
|
+
*/
|
|
136
|
+
scrollWatch: {
|
|
137
|
+
type: BooleanConstructor;
|
|
138
|
+
default: any;
|
|
139
|
+
};
|
|
140
|
+
/**
|
|
141
|
+
* 距底部多少 px 内视为触底(仅 scrollWatch 时生效)。
|
|
142
|
+
* 实例阈值,默认 0。
|
|
143
|
+
*/
|
|
144
|
+
bottomOffset: {
|
|
145
|
+
type: NumberConstructor;
|
|
146
|
+
default: any;
|
|
147
|
+
};
|
|
148
|
+
/** 实例行高(px),写入 `--w-prop-sheet-size`(prop > token) */
|
|
149
|
+
size: {
|
|
150
|
+
type: NumberConstructor;
|
|
151
|
+
default: any;
|
|
152
|
+
};
|
|
153
|
+
/** 品牌主色 → `--w-prop-sheet-color` */
|
|
154
|
+
color: {
|
|
155
|
+
type: StringConstructor;
|
|
156
|
+
default: any;
|
|
157
|
+
};
|
|
158
|
+
/** 实例 CSS 变量 */
|
|
159
|
+
cssVars: {
|
|
160
|
+
type: ObjectConstructor;
|
|
161
|
+
default: any;
|
|
162
|
+
};
|
|
163
|
+
keys: {
|
|
164
|
+
type: ArrayConstructor;
|
|
165
|
+
default: () => any[];
|
|
166
|
+
};
|
|
167
|
+
modelValue: (NumberConstructor | StringConstructor)[];
|
|
168
|
+
highlight: (NumberConstructor | StringConstructor)[];
|
|
169
|
+
};
|
|
170
|
+
export default _default;
|