cbvirtua 1.0.100 → 1.0.102
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/5111.zip +0 -0
- package/dist/action-sheet/index.d.ts +1 -0
- package/dist/action-sheet/index.js +75 -0
- package/dist/action-sheet/index.json +8 -0
- package/dist/action-sheet/index.wxml +70 -0
- package/dist/action-sheet/index.wxss +1 -0
- package/dist/area/index.d.ts +1 -0
- package/dist/area/index.js +220 -0
- package/dist/area/index.json +6 -0
- package/dist/area/index.wxml +20 -0
- package/dist/area/index.wxs +8 -0
- package/dist/area/index.wxss +1 -0
- package/dist/button/index.d.ts +1 -0
- package/dist/button/index.js +64 -0
- package/dist/button/index.json +7 -0
- package/dist/button/index.wxml +56 -0
- package/dist/button/index.wxs +39 -0
- package/dist/button/index.wxss +1 -0
- package/dist/calendar/calendar.wxml +70 -0
- package/dist/calendar/components/header/index.d.ts +1 -0
- package/dist/calendar/components/header/index.js +37 -0
- package/dist/calendar/components/header/index.json +3 -0
- package/dist/calendar/components/header/index.wxml +16 -0
- package/dist/calendar/components/header/index.wxss +1 -0
- package/dist/calendar/components/month/index.d.ts +6 -0
- package/dist/calendar/components/month/index.js +154 -0
- package/dist/calendar/components/month/index.json +3 -0
- package/dist/calendar/components/month/index.wxml +39 -0
- package/dist/calendar/components/month/index.wxs +71 -0
- package/dist/calendar/components/month/index.wxss +1 -0
- package/dist/calendar/index.d.ts +1 -0
- package/dist/calendar/index.js +360 -0
- package/dist/calendar/index.json +10 -0
- package/dist/calendar/index.wxml +27 -0
- package/dist/calendar/index.wxs +37 -0
- package/dist/calendar/index.wxss +1 -0
- package/dist/calendar/utils.d.ts +12 -0
- package/dist/calendar/utils.js +83 -0
- package/dist/calendar/utils.wxs +25 -0
- package/dist/card/index.d.ts +1 -0
- package/dist/card/index.js +49 -0
- package/dist/card/index.json +6 -0
- package/dist/card/index.wxml +56 -0
- package/dist/card/index.wxss +1 -0
- package/dist/cascader/index.d.ts +1 -0
- package/dist/cascader/index.js +214 -0
- package/dist/cascader/index.json +8 -0
- package/dist/cascader/index.wxml +55 -0
- package/dist/cascader/index.wxs +24 -0
- package/dist/cascader/index.wxss +1 -0
- package/dist/cell/index.d.ts +1 -0
- package/dist/cell/index.js +38 -0
- package/dist/cell/index.json +6 -0
- package/dist/cell/index.wxml +47 -0
- package/dist/cell/index.wxs +17 -0
- package/dist/cell/index.wxss +1 -0
- package/dist/cell-group/index.d.ts +1 -0
- package/dist/cell-group/index.js +11 -0
- package/dist/cell-group/index.json +3 -0
- package/dist/cell-group/index.wxml +11 -0
- package/dist/cell-group/index.wxss +1 -0
- package/dist/checkbox/index.d.ts +1 -0
- package/dist/checkbox/index.js +77 -0
- package/dist/checkbox/index.json +6 -0
- package/dist/checkbox/index.wxml +31 -0
- package/dist/checkbox/index.wxs +20 -0
- package/dist/checkbox/index.wxss +1 -0
- package/dist/checkbox-group/index.d.ts +1 -0
- package/dist/checkbox-group/index.js +36 -0
- package/dist/checkbox-group/index.json +3 -0
- package/dist/checkbox-group/index.wxml +5 -0
- package/dist/checkbox-group/index.wxss +1 -0
- package/dist/circle/canvas.d.ts +4 -0
- package/dist/circle/canvas.js +43 -0
- package/dist/circle/index.d.ts +1 -0
- package/dist/circle/index.js +197 -0
- package/dist/circle/index.json +3 -0
- package/dist/circle/index.wxml +9 -0
- package/dist/circle/index.wxss +1 -0
- package/dist/col/index.d.ts +1 -0
- package/dist/col/index.js +9 -0
- package/dist/col/index.json +3 -0
- package/dist/col/index.wxml +9 -0
- package/dist/col/index.wxs +18 -0
- package/dist/col/index.wxss +1 -0
- package/dist/collapse/index.d.ts +1 -0
- package/dist/collapse/index.js +46 -0
- package/dist/collapse/index.json +3 -0
- package/dist/collapse/index.wxml +3 -0
- package/dist/collapse/index.wxss +1 -0
- package/dist/collapse-item/animate.d.ts +2 -0
- package/dist/collapse-item/animate.js +39 -0
- package/dist/collapse-item/index.d.ts +1 -0
- package/dist/collapse-item/index.js +61 -0
- package/dist/collapse-item/index.json +6 -0
- package/dist/collapse-item/index.wxml +45 -0
- package/dist/collapse-item/index.wxss +1 -0
- package/dist/common/color.d.ts +7 -0
- package/dist/common/color.js +7 -0
- package/dist/common/component.d.ts +4 -0
- package/dist/common/component.js +46 -0
- package/dist/common/index.wxss +1 -0
- package/dist/common/relation.d.ts +15 -0
- package/dist/common/relation.js +56 -0
- package/dist/common/style/clearfix.wxss +1 -0
- package/dist/common/style/ellipsis.wxss +1 -0
- package/dist/common/style/hairline.wxss +1 -0
- package/dist/common/style/mixins/clearfix.wxss +0 -0
- package/dist/common/style/mixins/ellipsis.wxss +0 -0
- package/dist/common/style/mixins/hairline.wxss +0 -0
- package/dist/common/style/var.wxss +0 -0
- package/dist/common/utils.d.ts +21 -0
- package/dist/common/utils.js +86 -0
- package/dist/common/validator.d.ts +9 -0
- package/dist/common/validator.js +31 -0
- package/dist/common/version.d.ts +15 -0
- package/dist/common/version.js +59 -0
- package/dist/config-provider/index.d.ts +1 -0
- package/dist/config-provider/index.js +9 -0
- package/dist/config-provider/index.json +3 -0
- package/dist/config-provider/index.wxml +5 -0
- package/dist/config-provider/index.wxs +29 -0
- package/dist/count-down/index.d.ts +1 -0
- package/dist/count-down/index.js +100 -0
- package/dist/count-down/index.json +3 -0
- package/dist/count-down/index.wxml +4 -0
- package/dist/count-down/index.wxss +1 -0
- package/dist/count-down/utils.d.ts +10 -0
- package/dist/count-down/utils.js +57 -0
- package/dist/datetime-picker/index.d.ts +1 -0
- package/dist/datetime-picker/index.js +295 -0
- package/dist/datetime-picker/index.json +6 -0
- package/dist/datetime-picker/index.wxml +16 -0
- package/dist/datetime-picker/index.wxss +1 -0
- package/dist/definitions/index.d.ts +29 -0
- package/dist/definitions/index.js +1 -0
- package/dist/dialog/dialog.d.ts +55 -0
- package/dist/dialog/dialog.js +77 -0
- package/dist/dialog/index.d.ts +1 -0
- package/dist/dialog/index.js +132 -0
- package/dist/dialog/index.json +9 -0
- package/dist/dialog/index.wxml +126 -0
- package/dist/dialog/index.wxss +1 -0
- package/dist/divider/index.d.ts +1 -0
- package/dist/divider/index.js +12 -0
- package/dist/divider/index.json +4 -0
- package/dist/divider/index.wxml +9 -0
- package/dist/divider/index.wxs +18 -0
- package/dist/divider/index.wxss +1 -0
- package/dist/dropdown-item/index.d.ts +1 -0
- package/dist/dropdown-item/index.js +130 -0
- package/dist/dropdown-item/index.json +8 -0
- package/dist/dropdown-item/index.wxml +50 -0
- package/dist/dropdown-item/index.wxss +1 -0
- package/dist/dropdown-item/shared.d.ts +5 -0
- package/dist/dropdown-item/shared.js +1 -0
- package/dist/dropdown-menu/index.d.ts +1 -0
- package/dist/dropdown-menu/index.js +117 -0
- package/dist/dropdown-menu/index.json +3 -0
- package/dist/dropdown-menu/index.wxml +23 -0
- package/dist/dropdown-menu/index.wxs +16 -0
- package/dist/dropdown-menu/index.wxss +1 -0
- package/dist/empty/index.d.ts +1 -0
- package/dist/empty/index.js +10 -0
- package/dist/empty/index.json +4 -0
- package/dist/empty/index.wxml +22 -0
- package/dist/empty/index.wxs +15 -0
- package/dist/empty/index.wxss +1 -0
- package/dist/field/index.d.ts +1 -0
- package/dist/field/index.js +138 -0
- package/dist/field/index.json +7 -0
- package/dist/field/index.wxml +56 -0
- package/dist/field/index.wxs +18 -0
- package/dist/field/index.wxss +1 -0
- package/dist/field/input.wxml +31 -0
- package/dist/field/props.d.ts +4 -0
- package/dist/field/props.js +56 -0
- package/dist/field/textarea.wxml +32 -0
- package/dist/field/types.d.ts +8 -0
- package/dist/field/types.js +1 -0
- package/dist/goods-action/index.d.ts +1 -0
- package/dist/goods-action/index.js +15 -0
- package/dist/goods-action/index.json +3 -0
- package/dist/goods-action/index.wxml +5 -0
- package/dist/goods-action/index.wxss +1 -0
- package/dist/goods-action-button/index.d.ts +1 -0
- package/dist/goods-action-button/index.js +44 -0
- package/dist/goods-action-button/index.json +6 -0
- package/dist/goods-action-button/index.wxml +35 -0
- package/dist/goods-action-button/index.wxss +1 -0
- package/dist/goods-action-icon/index.d.ts +1 -0
- package/dist/goods-action-icon/index.js +27 -0
- package/dist/goods-action-icon/index.json +7 -0
- package/dist/goods-action-icon/index.wxml +41 -0
- package/dist/goods-action-icon/index.wxss +1 -0
- package/dist/grid/index.d.ts +1 -0
- package/dist/grid/index.js +55 -0
- package/dist/grid/index.json +3 -0
- package/dist/grid/index.wxml +8 -0
- package/dist/grid/index.wxs +13 -0
- package/dist/grid/index.wxss +1 -0
- package/dist/grid-item/index.d.ts +1 -0
- package/dist/grid-item/index.js +52 -0
- package/dist/grid-item/index.json +6 -0
- package/dist/grid-item/index.wxml +27 -0
- package/dist/grid-item/index.wxs +32 -0
- package/dist/grid-item/index.wxss +1 -0
- package/dist/icon/index.d.ts +1 -0
- package/dist/icon/index.js +21 -0
- package/dist/icon/index.json +6 -0
- package/dist/icon/index.wxml +20 -0
- package/dist/icon/index.wxs +43 -0
- package/dist/icon/index.wxss +1 -0
- package/dist/image/index.d.ts +1 -0
- package/dist/image/index.js +64 -0
- package/dist/image/index.json +7 -0
- package/dist/image/index.wxml +35 -0
- package/dist/image/index.wxs +32 -0
- package/dist/image/index.wxss +1 -0
- package/dist/index-anchor/index.d.ts +1 -0
- package/dist/index-anchor/index.js +25 -0
- package/dist/index-anchor/index.json +3 -0
- package/dist/index-anchor/index.wxml +14 -0
- package/dist/index-anchor/index.wxss +1 -0
- package/dist/index-bar/index.d.ts +1 -0
- package/dist/index-bar/index.js +246 -0
- package/dist/index-bar/index.json +3 -0
- package/dist/index-bar/index.wxml +22 -0
- package/dist/index-bar/index.wxss +1 -0
- package/dist/info/index.d.ts +1 -0
- package/dist/info/index.js +8 -0
- package/dist/info/index.json +3 -0
- package/dist/info/index.wxml +7 -0
- package/dist/info/index.wxss +1 -0
- package/dist/loading/index.d.ts +1 -0
- package/dist/loading/index.js +16 -0
- package/dist/loading/index.json +3 -0
- package/dist/loading/index.wxml +19 -0
- package/dist/loading/index.wxs +22 -0
- package/dist/loading/index.wxss +1 -0
- package/dist/mixins/basic.d.ts +1 -0
- package/dist/mixins/basic.js +26 -0
- package/dist/mixins/button.d.ts +1 -0
- package/dist/mixins/button.js +51 -0
- package/dist/mixins/link.d.ts +1 -0
- package/dist/mixins/link.js +23 -0
- package/dist/mixins/page-scroll.d.ts +6 -0
- package/dist/mixins/page-scroll.js +42 -0
- package/dist/mixins/touch.d.ts +1 -0
- package/dist/mixins/touch.js +37 -0
- package/dist/mixins/transition.d.ts +1 -0
- package/dist/mixins/transition.js +136 -0
- package/dist/nav-bar/index.d.ts +1 -0
- package/dist/nav-bar/index.js +65 -0
- package/dist/nav-bar/index.json +6 -0
- package/dist/nav-bar/index.wxml +42 -0
- package/dist/nav-bar/index.wxs +13 -0
- package/dist/nav-bar/index.wxss +1 -0
- package/dist/notice-bar/index.d.ts +1 -0
- package/dist/notice-bar/index.js +132 -0
- package/dist/notice-bar/index.json +6 -0
- package/dist/notice-bar/index.wxml +38 -0
- package/dist/notice-bar/index.wxs +15 -0
- package/dist/notice-bar/index.wxss +1 -0
- package/dist/notify/index.d.ts +1 -0
- package/dist/notify/index.js +65 -0
- package/dist/notify/index.json +6 -0
- package/dist/notify/index.wxml +21 -0
- package/dist/notify/index.wxs +22 -0
- package/dist/notify/index.wxss +1 -0
- package/dist/notify/notify.d.ts +22 -0
- package/dist/notify/notify.js +53 -0
- package/dist/overlay/index.d.ts +1 -0
- package/dist/overlay/index.js +30 -0
- package/dist/overlay/index.json +6 -0
- package/dist/overlay/index.wxml +7 -0
- package/dist/overlay/index.wxss +1 -0
- package/dist/overlay/overlay.wxml +10 -0
- package/dist/panel/index.d.ts +1 -0
- package/dist/panel/index.js +9 -0
- package/dist/panel/index.json +6 -0
- package/dist/panel/index.wxml +19 -0
- package/dist/panel/index.wxss +1 -0
- package/dist/picker/index.d.ts +1 -0
- package/dist/picker/index.js +136 -0
- package/dist/picker/index.json +7 -0
- package/dist/picker/index.wxml +37 -0
- package/dist/picker/index.wxs +42 -0
- package/dist/picker/index.wxss +1 -0
- package/dist/picker/shared.d.ts +21 -0
- package/dist/picker/shared.js +21 -0
- package/dist/picker/toolbar.wxml +23 -0
- package/dist/picker-column/index.d.ts +1 -0
- package/dist/picker-column/index.js +118 -0
- package/dist/picker-column/index.json +3 -0
- package/dist/picker-column/index.wxml +23 -0
- package/dist/picker-column/index.wxs +36 -0
- package/dist/picker-column/index.wxss +1 -0
- package/dist/popup/index.d.ts +1 -0
- package/dist/popup/index.js +97 -0
- package/dist/popup/index.json +7 -0
- package/dist/popup/index.wxml +21 -0
- package/dist/popup/index.wxs +18 -0
- package/dist/popup/index.wxss +1 -0
- package/dist/popup/popup.wxml +16 -0
- package/dist/progress/index.d.ts +1 -0
- package/dist/progress/index.js +51 -0
- package/dist/progress/index.json +3 -0
- package/dist/progress/index.wxml +20 -0
- package/dist/progress/index.wxs +36 -0
- package/dist/progress/index.wxss +1 -0
- package/dist/radio/index.d.ts +1 -0
- package/dist/radio/index.js +66 -0
- package/dist/radio/index.json +6 -0
- package/dist/radio/index.wxml +30 -0
- package/dist/radio/index.wxs +33 -0
- package/dist/radio/index.wxss +1 -0
- package/dist/radio-group/index.d.ts +1 -0
- package/dist/radio-group/index.js +22 -0
- package/dist/radio-group/index.json +3 -0
- package/dist/radio-group/index.wxml +5 -0
- package/dist/radio-group/index.wxss +1 -0
- package/dist/rate/index.d.ts +1 -0
- package/dist/rate/index.js +78 -0
- package/dist/rate/index.json +6 -0
- package/dist/rate/index.wxml +35 -0
- package/dist/rate/index.wxss +1 -0
- package/dist/row/index.d.ts +1 -0
- package/dist/row/index.js +23 -0
- package/dist/row/index.json +3 -0
- package/dist/row/index.wxml +5 -0
- package/dist/row/index.wxs +18 -0
- package/dist/row/index.wxss +1 -0
- package/dist/search/index.d.ts +1 -0
- package/dist/search/index.js +97 -0
- package/dist/search/index.json +6 -0
- package/dist/search/index.wxml +54 -0
- package/dist/search/index.wxss +1 -0
- package/dist/share-sheet/index.d.ts +1 -0
- package/dist/share-sheet/index.js +59 -0
- package/dist/share-sheet/index.json +7 -0
- package/dist/share-sheet/index.wxml +47 -0
- package/dist/share-sheet/index.wxs +12 -0
- package/dist/share-sheet/index.wxss +1 -0
- package/dist/share-sheet/options.d.ts +1 -0
- package/dist/share-sheet/options.js +14 -0
- package/dist/share-sheet/options.json +3 -0
- package/dist/share-sheet/options.wxml +20 -0
- package/dist/share-sheet/options.wxs +14 -0
- package/dist/share-sheet/options.wxss +1 -0
- package/dist/sidebar/index.d.ts +1 -0
- package/dist/sidebar/index.js +34 -0
- package/dist/sidebar/index.json +3 -0
- package/dist/sidebar/index.wxml +3 -0
- package/dist/sidebar/index.wxss +1 -0
- package/dist/sidebar-item/index.d.ts +1 -0
- package/dist/sidebar-item/index.js +29 -0
- package/dist/sidebar-item/index.json +6 -0
- package/dist/sidebar-item/index.wxml +18 -0
- package/dist/sidebar-item/index.wxss +1 -0
- package/dist/skeleton/index.d.ts +1 -0
- package/dist/skeleton/index.js +46 -0
- package/dist/skeleton/index.json +4 -0
- package/dist/skeleton/index.wxml +29 -0
- package/dist/skeleton/index.wxss +1 -0
- package/dist/slider/index.d.ts +1 -0
- package/dist/slider/index.js +207 -0
- package/dist/slider/index.json +3 -0
- package/dist/slider/index.wxml +68 -0
- package/dist/slider/index.wxs +14 -0
- package/dist/slider/index.wxss +1 -0
- package/dist/stepper/index.d.ts +1 -0
- package/dist/stepper/index.js +184 -0
- package/dist/stepper/index.json +3 -0
- package/dist/stepper/index.wxml +43 -0
- package/dist/stepper/index.wxs +22 -0
- package/dist/stepper/index.wxss +1 -0
- package/dist/steps/index.d.ts +1 -0
- package/dist/steps/index.js +33 -0
- package/dist/steps/index.json +6 -0
- package/dist/steps/index.wxml +54 -0
- package/dist/steps/index.wxss +1 -0
- package/dist/sticky/index.d.ts +1 -0
- package/dist/sticky/index.js +120 -0
- package/dist/sticky/index.json +3 -0
- package/dist/sticky/index.wxml +8 -0
- package/dist/sticky/index.wxs +25 -0
- package/dist/sticky/index.wxss +1 -0
- package/dist/submit-bar/index.d.ts +1 -0
- package/dist/submit-bar/index.js +56 -0
- package/dist/submit-bar/index.json +7 -0
- package/dist/submit-bar/index.wxml +44 -0
- package/dist/submit-bar/index.wxss +1 -0
- package/dist/swipe-cell/index.d.ts +1 -0
- package/dist/swipe-cell/index.js +133 -0
- package/dist/swipe-cell/index.json +3 -0
- package/dist/swipe-cell/index.wxml +20 -0
- package/dist/swipe-cell/index.wxss +1 -0
- package/dist/switch/index.d.ts +1 -0
- package/dist/switch/index.js +36 -0
- package/dist/switch/index.json +6 -0
- package/dist/switch/index.wxml +16 -0
- package/dist/switch/index.wxs +26 -0
- package/dist/switch/index.wxss +1 -0
- package/dist/tab/index.d.ts +1 -0
- package/dist/tab/index.js +56 -0
- package/dist/tab/index.json +3 -0
- package/dist/tab/index.wxml +8 -0
- package/dist/tab/index.wxss +1 -0
- package/dist/tabbar/index.d.ts +1 -0
- package/dist/tabbar/index.js +65 -0
- package/dist/tabbar/index.json +3 -0
- package/dist/tabbar/index.wxml +10 -0
- package/dist/tabbar/index.wxss +1 -0
- package/dist/tabbar-item/index.d.ts +1 -0
- package/dist/tabbar-item/index.js +68 -0
- package/dist/tabbar-item/index.json +7 -0
- package/dist/tabbar-item/index.wxml +28 -0
- package/dist/tabbar-item/index.wxss +1 -0
- package/dist/tabs/index.d.ts +1 -0
- package/dist/tabs/index.js +302 -0
- package/dist/tabs/index.json +7 -0
- package/dist/tabs/index.wxml +63 -0
- package/dist/tabs/index.wxs +83 -0
- package/dist/tabs/index.wxss +1 -0
- package/dist/tag/index.d.ts +1 -0
- package/dist/tag/index.js +21 -0
- package/dist/tag/index.json +6 -0
- package/dist/tag/index.wxml +15 -0
- package/dist/tag/index.wxs +13 -0
- package/dist/tag/index.wxss +1 -0
- package/dist/toast/index.d.ts +1 -0
- package/dist/toast/index.js +29 -0
- package/dist/toast/index.json +9 -0
- package/dist/toast/index.wxml +36 -0
- package/dist/toast/index.wxss +1 -0
- package/dist/toast/toast.d.ts +28 -0
- package/dist/toast/toast.js +68 -0
- package/dist/transition/index.d.ts +1 -0
- package/dist/transition/index.js +13 -0
- package/dist/transition/index.json +3 -0
- package/dist/transition/index.wxml +10 -0
- package/dist/transition/index.wxs +17 -0
- package/dist/transition/index.wxss +1 -0
- package/dist/tree-select/index.d.ts +1 -0
- package/dist/tree-select/index.js +68 -0
- package/dist/tree-select/index.json +8 -0
- package/dist/tree-select/index.wxml +41 -0
- package/dist/tree-select/index.wxs +12 -0
- package/dist/tree-select/index.wxss +1 -0
- package/dist/uploader/index.d.ts +1 -0
- package/dist/uploader/index.js +170 -0
- package/dist/uploader/index.json +7 -0
- package/dist/uploader/index.wxml +85 -0
- package/dist/uploader/index.wxs +17 -0
- package/dist/uploader/index.wxss +1 -0
- package/dist/uploader/shared.d.ts +61 -0
- package/dist/uploader/shared.js +65 -0
- package/dist/uploader/utils.d.ts +24 -0
- package/dist/uploader/utils.js +94 -0
- package/dist/wxs/add-unit.wxs +12 -0
- package/dist/wxs/array.wxs +5 -0
- package/dist/wxs/bem.wxs +39 -0
- package/dist/wxs/memoize.wxs +55 -0
- package/dist/wxs/object.wxs +13 -0
- package/dist/wxs/style.wxs +42 -0
- package/dist/wxs/utils.wxs +10 -0
- package/package.json +1 -1
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { requestAnimationFrame } from '../common/utils';
|
|
3
|
+
import { isObj } from '../common/validator';
|
|
4
|
+
const getClassNames = (name) => ({
|
|
5
|
+
enter: `van-${name}-enter van-${name}-enter-active enter-class enter-active-class`,
|
|
6
|
+
'enter-to': `van-${name}-enter-to van-${name}-enter-active enter-to-class enter-active-class`,
|
|
7
|
+
leave: `van-${name}-leave van-${name}-leave-active leave-class leave-active-class`,
|
|
8
|
+
'leave-to': `van-${name}-leave-to van-${name}-leave-active leave-to-class leave-active-class`,
|
|
9
|
+
});
|
|
10
|
+
export function transition(showDefaultValue) {
|
|
11
|
+
return Behavior({
|
|
12
|
+
properties: {
|
|
13
|
+
customStyle: String,
|
|
14
|
+
// @ts-ignore
|
|
15
|
+
show: {
|
|
16
|
+
type: Boolean,
|
|
17
|
+
value: showDefaultValue,
|
|
18
|
+
observer: 'observeShow',
|
|
19
|
+
},
|
|
20
|
+
// @ts-ignore
|
|
21
|
+
duration: {
|
|
22
|
+
type: null,
|
|
23
|
+
value: 300,
|
|
24
|
+
},
|
|
25
|
+
name: {
|
|
26
|
+
type: String,
|
|
27
|
+
value: 'fade',
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
data: {
|
|
31
|
+
type: '',
|
|
32
|
+
inited: false,
|
|
33
|
+
display: false,
|
|
34
|
+
},
|
|
35
|
+
ready() {
|
|
36
|
+
if (this.data.show === true) {
|
|
37
|
+
this.observeShow(true, false);
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
methods: {
|
|
41
|
+
observeShow(value, old) {
|
|
42
|
+
if (value === old) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
value ? this.enureEnter() : this.enureLeave();
|
|
46
|
+
},
|
|
47
|
+
enureEnter() {
|
|
48
|
+
if (this.enterPromise)
|
|
49
|
+
return;
|
|
50
|
+
this.enterPromise = new Promise((resolve) => this.enter(resolve));
|
|
51
|
+
},
|
|
52
|
+
enureLeave() {
|
|
53
|
+
const { enterPromise } = this;
|
|
54
|
+
if (!enterPromise)
|
|
55
|
+
return;
|
|
56
|
+
enterPromise
|
|
57
|
+
.then(() => new Promise((resolve) => this.leave(resolve)))
|
|
58
|
+
.then(() => {
|
|
59
|
+
this.enterPromise = null;
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
|
+
enter(resolve) {
|
|
63
|
+
const { duration, name } = this.data;
|
|
64
|
+
const classNames = getClassNames(name);
|
|
65
|
+
const currentDuration = isObj(duration) ? duration.enter : duration;
|
|
66
|
+
if (this.status === 'enter') {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
this.status = 'enter';
|
|
70
|
+
this.$emit('before-enter');
|
|
71
|
+
requestAnimationFrame(() => {
|
|
72
|
+
if (this.status !== 'enter') {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
this.$emit('enter');
|
|
76
|
+
this.setData({
|
|
77
|
+
inited: true,
|
|
78
|
+
display: true,
|
|
79
|
+
classes: classNames.enter,
|
|
80
|
+
currentDuration,
|
|
81
|
+
});
|
|
82
|
+
requestAnimationFrame(() => {
|
|
83
|
+
if (this.status !== 'enter') {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
this.transitionEnded = false;
|
|
87
|
+
this.setData({ classes: classNames['enter-to'] });
|
|
88
|
+
resolve();
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
leave(resolve) {
|
|
93
|
+
if (!this.data.display) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const { duration, name } = this.data;
|
|
97
|
+
const classNames = getClassNames(name);
|
|
98
|
+
const currentDuration = isObj(duration) ? duration.leave : duration;
|
|
99
|
+
this.status = 'leave';
|
|
100
|
+
this.$emit('before-leave');
|
|
101
|
+
requestAnimationFrame(() => {
|
|
102
|
+
if (this.status !== 'leave') {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
this.$emit('leave');
|
|
106
|
+
this.setData({
|
|
107
|
+
classes: classNames.leave,
|
|
108
|
+
currentDuration,
|
|
109
|
+
});
|
|
110
|
+
requestAnimationFrame(() => {
|
|
111
|
+
if (this.status !== 'leave') {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
this.transitionEnded = false;
|
|
115
|
+
setTimeout(() => {
|
|
116
|
+
this.onTransitionEnd();
|
|
117
|
+
resolve();
|
|
118
|
+
}, currentDuration);
|
|
119
|
+
this.setData({ classes: classNames['leave-to'] });
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
},
|
|
123
|
+
onTransitionEnd() {
|
|
124
|
+
if (this.transitionEnded) {
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
this.transitionEnded = true;
|
|
128
|
+
this.$emit(`after-${this.status}`);
|
|
129
|
+
const { show, display } = this.data;
|
|
130
|
+
if (!show && display) {
|
|
131
|
+
this.setData({ display: false });
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
});
|
|
136
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { VantComponent } from '../common/component';
|
|
2
|
+
import { getRect, getSystemInfoSync } from '../common/utils';
|
|
3
|
+
VantComponent({
|
|
4
|
+
classes: ['title-class'],
|
|
5
|
+
props: {
|
|
6
|
+
title: String,
|
|
7
|
+
fixed: {
|
|
8
|
+
type: Boolean,
|
|
9
|
+
observer: 'setHeight',
|
|
10
|
+
},
|
|
11
|
+
placeholder: {
|
|
12
|
+
type: Boolean,
|
|
13
|
+
observer: 'setHeight',
|
|
14
|
+
},
|
|
15
|
+
leftText: String,
|
|
16
|
+
rightText: String,
|
|
17
|
+
customStyle: String,
|
|
18
|
+
leftArrow: Boolean,
|
|
19
|
+
border: {
|
|
20
|
+
type: Boolean,
|
|
21
|
+
value: true,
|
|
22
|
+
},
|
|
23
|
+
zIndex: {
|
|
24
|
+
type: Number,
|
|
25
|
+
value: 1,
|
|
26
|
+
},
|
|
27
|
+
safeAreaInsetTop: {
|
|
28
|
+
type: Boolean,
|
|
29
|
+
value: true,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
data: {
|
|
33
|
+
height: 46,
|
|
34
|
+
},
|
|
35
|
+
created() {
|
|
36
|
+
const { statusBarHeight } = getSystemInfoSync();
|
|
37
|
+
this.setData({
|
|
38
|
+
statusBarHeight,
|
|
39
|
+
height: 46 + statusBarHeight,
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
mounted() {
|
|
43
|
+
this.setHeight();
|
|
44
|
+
},
|
|
45
|
+
methods: {
|
|
46
|
+
onClickLeft() {
|
|
47
|
+
this.$emit('click-left');
|
|
48
|
+
},
|
|
49
|
+
onClickRight() {
|
|
50
|
+
this.$emit('click-right');
|
|
51
|
+
},
|
|
52
|
+
setHeight() {
|
|
53
|
+
if (!this.data.fixed || !this.data.placeholder) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
wx.nextTick(() => {
|
|
57
|
+
getRect(this, '.van-nav-bar').then((res) => {
|
|
58
|
+
if (res && 'height' in res) {
|
|
59
|
+
this.setData({ height: res.height });
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<wxs src="../wxs/utils.wxs" module="utils" />
|
|
2
|
+
<wxs src="./index.wxs" module="computed" />
|
|
3
|
+
|
|
4
|
+
<view wx:if="{{ fixed && placeholder }}" style="height: {{ height }}px;" />
|
|
5
|
+
|
|
6
|
+
<view
|
|
7
|
+
class="{{ utils.bem('nav-bar', { fixed }) }} custom-class {{ border ? 'van-hairline--bottom' : '' }}"
|
|
8
|
+
style="{{ computed.barStyle({ zIndex, statusBarHeight, safeAreaInsetTop }) }}; {{ customStyle }}"
|
|
9
|
+
>
|
|
10
|
+
<view class="van-nav-bar__content">
|
|
11
|
+
<view class="van-nav-bar__left" bind:tap="onClickLeft">
|
|
12
|
+
<block wx:if="{{ leftArrow || leftText }}">
|
|
13
|
+
<van-icon
|
|
14
|
+
wx:if="{{ leftArrow }}"
|
|
15
|
+
size="16px"
|
|
16
|
+
name="arrow-left"
|
|
17
|
+
custom-class="van-nav-bar__arrow"
|
|
18
|
+
/>
|
|
19
|
+
<view
|
|
20
|
+
wx:if="{{ leftText }}"
|
|
21
|
+
class="van-nav-bar__text"
|
|
22
|
+
hover-class="van-nav-bar__text--hover"
|
|
23
|
+
hover-stay-time="70"
|
|
24
|
+
>{{ leftText }}</view>
|
|
25
|
+
</block>
|
|
26
|
+
<slot wx:else name="left" />
|
|
27
|
+
</view>
|
|
28
|
+
<view class="van-nav-bar__title title-class van-ellipsis">
|
|
29
|
+
<block wx:if="{{ title }}">{{ title }}</block>
|
|
30
|
+
<slot wx:else name="title" />
|
|
31
|
+
</view>
|
|
32
|
+
<view class="van-nav-bar__right" bind:tap="onClickRight">
|
|
33
|
+
<view
|
|
34
|
+
wx:if="{{ rightText }}"
|
|
35
|
+
class="van-nav-bar__text"
|
|
36
|
+
hover-class="van-nav-bar__text--hover"
|
|
37
|
+
hover-stay-time="70"
|
|
38
|
+
>{{ rightText }}</view>
|
|
39
|
+
<slot wx:else name="right" />
|
|
40
|
+
</view>
|
|
41
|
+
</view>
|
|
42
|
+
</view>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
var style = require('../wxs/style.wxs');
|
|
3
|
+
|
|
4
|
+
function barStyle(data) {
|
|
5
|
+
return style({
|
|
6
|
+
'z-index': data.zIndex,
|
|
7
|
+
'padding-top': data.safeAreaInsetTop ? data.statusBarHeight + 'px' : 0,
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
module.exports = {
|
|
12
|
+
barStyle: barStyle,
|
|
13
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '../common/index.wxss';.van-nav-bar{background-color:var(--nav-bar-background-color,#fff);box-sizing:initial;height:var(--nav-bar-height,46px);line-height:var(--nav-bar-height,46px);position:relative;text-align:center;-webkit-user-select:none;user-select:none}.van-nav-bar__content{height:100%;position:relative}.van-nav-bar__text{color:var(--nav-bar-text-color,#1989fa);display:inline-block;margin:0 calc(var(--padding-md, 16px)*-1);padding:0 var(--padding-md,16px);vertical-align:middle}.van-nav-bar__text--hover{background-color:#f2f3f5}.van-nav-bar__arrow{color:var(--nav-bar-icon-color,#1989fa)!important;font-size:var(--nav-bar-arrow-size,16px)!important;vertical-align:middle}.van-nav-bar__arrow+.van-nav-bar__text{margin-left:-20px;padding-left:25px}.van-nav-bar--fixed{left:0;position:fixed;top:0;width:100%}.van-nav-bar__title{color:var(--nav-bar-title-text-color,#323233);font-size:var(--nav-bar-title-font-size,16px);font-weight:var(--font-weight-bold,500);margin:0 auto;max-width:60%}.van-nav-bar__left,.van-nav-bar__right{align-items:center;bottom:0;display:flex;font-size:var(--font-size-md,14px);position:absolute;top:0}.van-nav-bar__left{left:var(--padding-md,16px)}.van-nav-bar__right{right:var(--padding-md,16px)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { VantComponent } from '../common/component';
|
|
2
|
+
import { getRect, requestAnimationFrame } from '../common/utils';
|
|
3
|
+
VantComponent({
|
|
4
|
+
props: {
|
|
5
|
+
text: {
|
|
6
|
+
type: String,
|
|
7
|
+
value: '',
|
|
8
|
+
observer: 'init',
|
|
9
|
+
},
|
|
10
|
+
mode: {
|
|
11
|
+
type: String,
|
|
12
|
+
value: '',
|
|
13
|
+
},
|
|
14
|
+
url: {
|
|
15
|
+
type: String,
|
|
16
|
+
value: '',
|
|
17
|
+
},
|
|
18
|
+
openType: {
|
|
19
|
+
type: String,
|
|
20
|
+
value: 'navigate',
|
|
21
|
+
},
|
|
22
|
+
delay: {
|
|
23
|
+
type: Number,
|
|
24
|
+
value: 1,
|
|
25
|
+
},
|
|
26
|
+
speed: {
|
|
27
|
+
type: Number,
|
|
28
|
+
value: 60,
|
|
29
|
+
observer: 'init',
|
|
30
|
+
},
|
|
31
|
+
scrollable: null,
|
|
32
|
+
leftIcon: {
|
|
33
|
+
type: String,
|
|
34
|
+
value: '',
|
|
35
|
+
},
|
|
36
|
+
color: String,
|
|
37
|
+
backgroundColor: String,
|
|
38
|
+
background: String,
|
|
39
|
+
wrapable: Boolean,
|
|
40
|
+
},
|
|
41
|
+
data: {
|
|
42
|
+
show: true,
|
|
43
|
+
},
|
|
44
|
+
created() {
|
|
45
|
+
this.resetAnimation = wx.createAnimation({
|
|
46
|
+
duration: 0,
|
|
47
|
+
timingFunction: 'linear',
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
destroyed() {
|
|
51
|
+
this.timer && clearTimeout(this.timer);
|
|
52
|
+
},
|
|
53
|
+
mounted() {
|
|
54
|
+
this.init();
|
|
55
|
+
},
|
|
56
|
+
methods: {
|
|
57
|
+
init() {
|
|
58
|
+
requestAnimationFrame(() => {
|
|
59
|
+
Promise.all([
|
|
60
|
+
getRect(this, '.van-notice-bar__content'),
|
|
61
|
+
getRect(this, '.van-notice-bar__wrap'),
|
|
62
|
+
]).then((rects) => {
|
|
63
|
+
const [contentRect, wrapRect] = rects;
|
|
64
|
+
const { scrollable } = this.data;
|
|
65
|
+
if (contentRect == null ||
|
|
66
|
+
wrapRect == null ||
|
|
67
|
+
!contentRect.width ||
|
|
68
|
+
!wrapRect.width ||
|
|
69
|
+
scrollable === false) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (scrollable || wrapRect.width < contentRect.width) {
|
|
73
|
+
this.initAnimation(wrapRect.width, contentRect.width);
|
|
74
|
+
this.scroll(true);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
this.reset();
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
|
+
},
|
|
82
|
+
initAnimation(warpWidth, contentWidth) {
|
|
83
|
+
const { speed, delay } = this.data;
|
|
84
|
+
this.wrapWidth = warpWidth;
|
|
85
|
+
this.contentWidth = contentWidth;
|
|
86
|
+
// begin 0
|
|
87
|
+
this.contentDuration = (contentWidth / speed) * 1000;
|
|
88
|
+
// begin -wrapWidth
|
|
89
|
+
this.duration = ((warpWidth + contentWidth) / speed) * 1000;
|
|
90
|
+
this.animation = wx.createAnimation({
|
|
91
|
+
duration: this.contentDuration,
|
|
92
|
+
timingFunction: 'linear',
|
|
93
|
+
delay,
|
|
94
|
+
});
|
|
95
|
+
},
|
|
96
|
+
reset(x = 0) {
|
|
97
|
+
if (this.timer) {
|
|
98
|
+
clearTimeout(this.timer);
|
|
99
|
+
this.timer = null;
|
|
100
|
+
}
|
|
101
|
+
this.setData({
|
|
102
|
+
animationData: this.resetAnimation.translateX(x).step().export(),
|
|
103
|
+
});
|
|
104
|
+
},
|
|
105
|
+
scroll(isInit = false) {
|
|
106
|
+
this.reset(isInit ? 0 : this.wrapWidth);
|
|
107
|
+
const duration = isInit ? this.contentDuration : this.duration;
|
|
108
|
+
requestAnimationFrame(() => {
|
|
109
|
+
this.setData({
|
|
110
|
+
animationData: this.animation
|
|
111
|
+
.translateX(-this.contentWidth)
|
|
112
|
+
.step({ duration })
|
|
113
|
+
.export(),
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
this.timer = setTimeout(() => {
|
|
117
|
+
this.scroll();
|
|
118
|
+
}, duration + this.data.delay);
|
|
119
|
+
},
|
|
120
|
+
onClickIcon(event) {
|
|
121
|
+
if (this.data.mode === 'closeable') {
|
|
122
|
+
this.timer && clearTimeout(this.timer);
|
|
123
|
+
this.timer = null;
|
|
124
|
+
this.setData({ show: false });
|
|
125
|
+
this.$emit('close', event.detail);
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
onClick(event) {
|
|
129
|
+
this.$emit('click', event);
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
});
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<wxs src="../wxs/utils.wxs" module="utils" />
|
|
2
|
+
<wxs src="./index.wxs" module="computed" />
|
|
3
|
+
|
|
4
|
+
<view
|
|
5
|
+
wx:if="{{ show }}"
|
|
6
|
+
class="custom-class {{ utils.bem('notice-bar', { withicon: mode, wrapable }) }}"
|
|
7
|
+
style="{{ computed.rootStyle({ color, backgroundColor, background }) }}"
|
|
8
|
+
bind:tap="onClick"
|
|
9
|
+
>
|
|
10
|
+
<van-icon
|
|
11
|
+
wx:if="{{ leftIcon }}"
|
|
12
|
+
name="{{ leftIcon }}"
|
|
13
|
+
class="van-notice-bar__left-icon"
|
|
14
|
+
/>
|
|
15
|
+
<slot wx:else name="left-icon" />
|
|
16
|
+
|
|
17
|
+
<view class="van-notice-bar__wrap">
|
|
18
|
+
<view class="van-notice-bar__content {{ scrollable === false && !wrapable ? 'van-ellipsis' : '' }}" animation="{{ animationData }}">
|
|
19
|
+
{{ text }}
|
|
20
|
+
<slot wx:if="{{ !text }}"></slot>
|
|
21
|
+
</view>
|
|
22
|
+
</view>
|
|
23
|
+
|
|
24
|
+
<van-icon
|
|
25
|
+
wx:if="{{ mode === 'closeable' }}"
|
|
26
|
+
class="van-notice-bar__right-icon"
|
|
27
|
+
name="cross"
|
|
28
|
+
catch:tap="onClickIcon"
|
|
29
|
+
/>
|
|
30
|
+
<navigator
|
|
31
|
+
wx:elif="{{ mode === 'link' }}"
|
|
32
|
+
url="{{ url }}"
|
|
33
|
+
open-type="{{ openType }}"
|
|
34
|
+
>
|
|
35
|
+
<van-icon class="van-notice-bar__right-icon" name="arrow" />
|
|
36
|
+
</navigator>
|
|
37
|
+
<slot wx:else name="right-icon" />
|
|
38
|
+
</view>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
var style = require('../wxs/style.wxs');
|
|
3
|
+
var addUnit = require('../wxs/add-unit.wxs');
|
|
4
|
+
|
|
5
|
+
function rootStyle(data) {
|
|
6
|
+
return style({
|
|
7
|
+
color: data.color,
|
|
8
|
+
'background-color': data.backgroundColor,
|
|
9
|
+
background: data.background,
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
module.exports = {
|
|
14
|
+
rootStyle: rootStyle,
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '../common/index.wxss';.van-notice-bar{align-items:center;background-color:var(--notice-bar-background-color,#fffbe8);color:var(--notice-bar-text-color,#ed6a0c);display:flex;font-size:var(--notice-bar-font-size,14px);height:var(--notice-bar-height,40px);line-height:var(--notice-bar-line-height,24px);padding:var(--notice-bar-padding,0 16px)}.van-notice-bar--withicon{padding-right:40px;position:relative}.van-notice-bar--wrapable{height:auto;padding:var(--notice-bar-wrapable-padding,8px 16px)}.van-notice-bar--wrapable .van-notice-bar__wrap{height:auto}.van-notice-bar--wrapable .van-notice-bar__content{position:relative;white-space:normal}.van-notice-bar__left-icon{align-items:center;display:flex;margin-right:4px;vertical-align:middle}.van-notice-bar__left-icon,.van-notice-bar__right-icon{font-size:var(--notice-bar-icon-size,16px);min-width:var(--notice-bar-icon-min-width,22px)}.van-notice-bar__right-icon{position:absolute;right:15px;top:10px}.van-notice-bar__wrap{flex:1;height:var(--notice-bar-line-height,24px);overflow:hidden;position:relative}.van-notice-bar__content{position:absolute;white-space:nowrap}.van-notice-bar__content.van-ellipsis{max-width:100%}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { VantComponent } from '../common/component';
|
|
2
|
+
import { WHITE } from '../common/color';
|
|
3
|
+
import { getSystemInfoSync } from '../common/utils';
|
|
4
|
+
VantComponent({
|
|
5
|
+
props: {
|
|
6
|
+
message: String,
|
|
7
|
+
background: String,
|
|
8
|
+
type: {
|
|
9
|
+
type: String,
|
|
10
|
+
value: 'danger',
|
|
11
|
+
},
|
|
12
|
+
color: {
|
|
13
|
+
type: String,
|
|
14
|
+
value: WHITE,
|
|
15
|
+
},
|
|
16
|
+
duration: {
|
|
17
|
+
type: Number,
|
|
18
|
+
value: 3000,
|
|
19
|
+
},
|
|
20
|
+
zIndex: {
|
|
21
|
+
type: Number,
|
|
22
|
+
value: 110,
|
|
23
|
+
},
|
|
24
|
+
safeAreaInsetTop: {
|
|
25
|
+
type: Boolean,
|
|
26
|
+
value: false,
|
|
27
|
+
},
|
|
28
|
+
top: null,
|
|
29
|
+
},
|
|
30
|
+
data: {
|
|
31
|
+
show: false,
|
|
32
|
+
onOpened: null,
|
|
33
|
+
onClose: null,
|
|
34
|
+
onClick: null,
|
|
35
|
+
},
|
|
36
|
+
created() {
|
|
37
|
+
const { statusBarHeight } = getSystemInfoSync();
|
|
38
|
+
this.setData({ statusBarHeight });
|
|
39
|
+
},
|
|
40
|
+
methods: {
|
|
41
|
+
show() {
|
|
42
|
+
const { duration, onOpened } = this.data;
|
|
43
|
+
clearTimeout(this.timer);
|
|
44
|
+
this.setData({ show: true });
|
|
45
|
+
wx.nextTick(onOpened);
|
|
46
|
+
if (duration > 0 && duration !== Infinity) {
|
|
47
|
+
this.timer = setTimeout(() => {
|
|
48
|
+
this.hide();
|
|
49
|
+
}, duration);
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
hide() {
|
|
53
|
+
const { onClose } = this.data;
|
|
54
|
+
clearTimeout(this.timer);
|
|
55
|
+
this.setData({ show: false });
|
|
56
|
+
wx.nextTick(onClose);
|
|
57
|
+
},
|
|
58
|
+
onTap(event) {
|
|
59
|
+
const { onClick } = this.data;
|
|
60
|
+
if (onClick) {
|
|
61
|
+
onClick(event.detail);
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<wxs src="../wxs/utils.wxs" module="utils" />
|
|
2
|
+
<wxs src="./index.wxs" module="computed" />
|
|
3
|
+
|
|
4
|
+
<van-transition
|
|
5
|
+
name="slide-down"
|
|
6
|
+
show="{{ show }}"
|
|
7
|
+
custom-class="van-notify__container"
|
|
8
|
+
custom-style="{{ computed.rootStyle({ zIndex, top }) }}"
|
|
9
|
+
bind:tap="onTap"
|
|
10
|
+
>
|
|
11
|
+
<view
|
|
12
|
+
class="van-notify van-notify--{{ type }}"
|
|
13
|
+
style="{{ computed.notifyStyle({ background, color }) }}"
|
|
14
|
+
>
|
|
15
|
+
<view
|
|
16
|
+
wx:if="{{ safeAreaInsetTop }}"
|
|
17
|
+
style="height: {{ statusBarHeight }}px"
|
|
18
|
+
/>
|
|
19
|
+
<text>{{ message }}</text>
|
|
20
|
+
</view>
|
|
21
|
+
</van-transition>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
var style = require('../wxs/style.wxs');
|
|
3
|
+
var addUnit = require('../wxs/add-unit.wxs');
|
|
4
|
+
|
|
5
|
+
function rootStyle(data) {
|
|
6
|
+
return style({
|
|
7
|
+
'z-index': data.zIndex,
|
|
8
|
+
top: addUnit(data.top),
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function notifyStyle(data) {
|
|
13
|
+
return style({
|
|
14
|
+
background: data.background,
|
|
15
|
+
color: data.color,
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = {
|
|
20
|
+
rootStyle: rootStyle,
|
|
21
|
+
notifyStyle: notifyStyle,
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '../common/index.wxss';.van-notify{word-wrap:break-word;font-size:var(--notify-font-size,14px);line-height:var(--notify-line-height,20px);padding:var(--notify-padding,6px 15px);text-align:center}.van-notify__container{box-sizing:border-box;left:0;position:fixed;top:0;width:100%}.van-notify--primary{background-color:var(--notify-primary-background-color,#1989fa)}.van-notify--success{background-color:var(--notify-success-background-color,#07c160)}.van-notify--danger{background-color:var(--notify-danger-background-color,#ee0a24)}.van-notify--warning{background-color:var(--notify-warning-background-color,#ff976a)}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
interface NotifyOptions {
|
|
2
|
+
type?: 'primary' | 'success' | 'danger' | 'warning';
|
|
3
|
+
color?: string;
|
|
4
|
+
zIndex?: number;
|
|
5
|
+
top?: number;
|
|
6
|
+
message: string;
|
|
7
|
+
context?: any;
|
|
8
|
+
duration?: number;
|
|
9
|
+
selector?: string;
|
|
10
|
+
background?: string;
|
|
11
|
+
safeAreaInsetTop?: boolean;
|
|
12
|
+
onClick?: () => void;
|
|
13
|
+
onOpened?: () => void;
|
|
14
|
+
onClose?: () => void;
|
|
15
|
+
}
|
|
16
|
+
declare function Notify(options: NotifyOptions | string): any;
|
|
17
|
+
declare namespace Notify {
|
|
18
|
+
var clear: (options?: NotifyOptions | undefined) => void;
|
|
19
|
+
var setDefaultOptions: (options: NotifyOptions) => void;
|
|
20
|
+
var resetDefaultOptions: () => void;
|
|
21
|
+
}
|
|
22
|
+
export default Notify;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { WHITE } from '../common/color';
|
|
2
|
+
const defaultOptions = {
|
|
3
|
+
selector: '#van-notify',
|
|
4
|
+
type: 'danger',
|
|
5
|
+
message: '',
|
|
6
|
+
background: '',
|
|
7
|
+
duration: 3000,
|
|
8
|
+
zIndex: 110,
|
|
9
|
+
top: 0,
|
|
10
|
+
color: WHITE,
|
|
11
|
+
safeAreaInsetTop: false,
|
|
12
|
+
onClick: () => { },
|
|
13
|
+
onOpened: () => { },
|
|
14
|
+
onClose: () => { },
|
|
15
|
+
};
|
|
16
|
+
let currentOptions = Object.assign({}, defaultOptions);
|
|
17
|
+
function parseOptions(message) {
|
|
18
|
+
if (message == null) {
|
|
19
|
+
return {};
|
|
20
|
+
}
|
|
21
|
+
return typeof message === 'string' ? { message } : message;
|
|
22
|
+
}
|
|
23
|
+
function getContext() {
|
|
24
|
+
const pages = getCurrentPages();
|
|
25
|
+
return pages[pages.length - 1];
|
|
26
|
+
}
|
|
27
|
+
export default function Notify(options) {
|
|
28
|
+
options = Object.assign(Object.assign({}, currentOptions), parseOptions(options));
|
|
29
|
+
const context = options.context || getContext();
|
|
30
|
+
const notify = context.selectComponent(options.selector);
|
|
31
|
+
delete options.context;
|
|
32
|
+
delete options.selector;
|
|
33
|
+
if (notify) {
|
|
34
|
+
notify.setData(options);
|
|
35
|
+
notify.show();
|
|
36
|
+
return notify;
|
|
37
|
+
}
|
|
38
|
+
console.warn('未找到 van-notify 节点,请确认 selector 及 context 是否正确');
|
|
39
|
+
}
|
|
40
|
+
Notify.clear = function (options) {
|
|
41
|
+
options = Object.assign(Object.assign({}, defaultOptions), parseOptions(options));
|
|
42
|
+
const context = options.context || getContext();
|
|
43
|
+
const notify = context.selectComponent(options.selector);
|
|
44
|
+
if (notify) {
|
|
45
|
+
notify.hide();
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
Notify.setDefaultOptions = (options) => {
|
|
49
|
+
Object.assign(currentOptions, options);
|
|
50
|
+
};
|
|
51
|
+
Notify.resetDefaultOptions = () => {
|
|
52
|
+
currentOptions = Object.assign({}, defaultOptions);
|
|
53
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|