From 96ab62493fff8fb6da5be307950eda800d6c2b00 Mon Sep 17 00:00:00 2001 From: kola-web Date: Tue, 8 Jul 2025 12:00:37 +0800 Subject: [PATCH] init --- .editorconfig | 12 + .gitignore | 4 + .neoconf.json | 10 + .prettierrc | 35 + .vscode/settings.json | 10 + 2024-10-31.md | 1 + README.md | 30 + dist.nu | 5 + dist.ps1 | 8 + dist.sh | 4 + eslint.config.mjs | 28 + index.d.ts | 3 + keymap.json | 316 + package.json | 26 + pnpm-lock.yaml | 3127 +++++++++ project.config.json | 65 + project.private.config.json | 99 + src/app.json | 60 + src/app.scss | 1 + src/app.ts | 109 + src/components/global-toast/index.json | 6 + src/components/global-toast/index.scss | 83 + src/components/global-toast/index.ts | 39 + src/components/global-toast/index.wxml | 32 + src/components/pagination/index.js | 20 + src/components/pagination/index.json | 6 + src/components/pagination/index.scss | 6 + src/components/pagination/index.wxml | 6 + src/components/uploadFile/index.json | 7 + src/components/uploadFile/index.scss | 30 + src/components/uploadFile/index.ts | 132 + src/components/uploadFile/index.wxml | 9 + src/custom-tab-bar/index.json | 4 + src/custom-tab-bar/index.scss | 130 + src/custom-tab-bar/index.ts | 74 + src/custom-tab-bar/index.wxml | 33 + src/images/badge.png | Bin 0 -> 9101 bytes src/images/empty-1.png | Bin 0 -> 16873 bytes src/images/empty-search.png | Bin 0 -> 16873 bytes src/images/fold-up.png | Bin 0 -> 436 bytes src/images/home-bg.png | Bin 0 -> 336812 bytes src/images/home-card-bg.png | Bin 0 -> 42997 bytes src/images/home-logo.png | Bin 0 -> 14644 bytes src/images/home-title.png | Bin 0 -> 15408 bytes src/images/icon-close.png | Bin 0 -> 2100 bytes src/images/icon-collection-active.png | Bin 0 -> 1707 bytes src/images/icon-collection.png | Bin 0 -> 1305 bytes src/images/icon-collection1.png | Bin 0 -> 2318 bytes src/images/icon-directory.png | Bin 0 -> 551 bytes src/images/icon-edit.png | Bin 0 -> 479 bytes src/images/icon-eye.png | Bin 0 -> 816 bytes src/images/icon-phone.png | Bin 0 -> 502 bytes src/images/icon-pic.png | Bin 0 -> 1378 bytes src/images/icon-play.png | Bin 0 -> 4299 bytes src/images/icon-prev.png | Bin 0 -> 1290 bytes src/images/icon-search.png | Bin 0 -> 1031 bytes src/images/icon-stop.png | Bin 0 -> 4590 bytes src/images/item-tip-close.png | Bin 0 -> 1271 bytes src/images/login-bg.png | Bin 0 -> 498569 bytes src/images/login-popup-badge.png | Bin 0 -> 63769 bytes src/images/login-popup-title.png | Bin 0 -> 17848 bytes src/images/mpPic.jpg | Bin 0 -> 125601 bytes src/images/my-list-icon1.png | Bin 0 -> 2103 bytes src/images/my-list-icon2.png | Bin 0 -> 1891 bytes src/images/my-list-icon3.png | Bin 0 -> 2131 bytes src/images/my-list-icon4.png | Bin 0 -> 1956 bytes src/images/none.png | Bin 0 -> 78543 bytes src/images/place.png | Bin 0 -> 276523 bytes src/images/popup1-bg.png | Bin 0 -> 204648 bytes src/images/qyPic.jpg | Bin 0 -> 210457 bytes src/images/relove.png | Bin 0 -> 3445 bytes src/images/slogan-bg.png | Bin 0 -> 92120 bytes src/images/tabbar/tab-active1.png | Bin 0 -> 2294 bytes src/images/tabbar/tab-active2.png | Bin 0 -> 2499 bytes src/images/tabbar/tab1.png | Bin 0 -> 1081 bytes src/images/tabbar/tab2.png | Bin 0 -> 1472 bytes src/images/topic-bg.png | Bin 0 -> 85244 bytes src/images/topic-card-bg.png | Bin 0 -> 119724 bytes src/images/topic-end-bg.png | Bin 0 -> 71845 bytes src/images/topic-start-badge.png | Bin 0 -> 19586 bytes src/images/topic-start-code1.png | Bin 0 -> 70955 bytes src/images/topic-start-code2.png | Bin 0 -> 50576 bytes src/images/topic-start.png | Bin 0 -> 224965 bytes src/images/user.png | Bin 0 -> 6522 bytes .../@vant/weapp/action-sheet/index.d.ts | 1 + .../@vant/weapp/action-sheet/index.js | 78 + .../@vant/weapp/action-sheet/index.json | 8 + .../@vant/weapp/action-sheet/index.wxml | 70 + .../@vant/weapp/action-sheet/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/area/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/area/index.js | 235 + src/miniprogram_npm/@vant/weapp/area/index.json | 6 + src/miniprogram_npm/@vant/weapp/area/index.wxml | 20 + src/miniprogram_npm/@vant/weapp/area/index.wxs | 8 + src/miniprogram_npm/@vant/weapp/area/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/button/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/button/index.js | 67 + src/miniprogram_npm/@vant/weapp/button/index.json | 7 + src/miniprogram_npm/@vant/weapp/button/index.wxml | 56 + src/miniprogram_npm/@vant/weapp/button/index.wxs | 39 + src/miniprogram_npm/@vant/weapp/button/index.wxss | 1 + .../@vant/weapp/calendar/calendar.wxml | 70 + .../weapp/calendar/components/header/index.d.ts | 1 + .../weapp/calendar/components/header/index.js | 45 + .../weapp/calendar/components/header/index.json | 3 + .../weapp/calendar/components/header/index.wxml | 16 + .../weapp/calendar/components/header/index.wxss | 1 + .../weapp/calendar/components/month/index.d.ts | 6 + .../@vant/weapp/calendar/components/month/index.js | 158 + .../weapp/calendar/components/month/index.json | 3 + .../weapp/calendar/components/month/index.wxml | 39 + .../weapp/calendar/components/month/index.wxs | 71 + .../weapp/calendar/components/month/index.wxss | 1 + .../@vant/weapp/calendar/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/calendar/index.js | 383 + .../@vant/weapp/calendar/index.json | 10 + .../@vant/weapp/calendar/index.wxml | 27 + src/miniprogram_npm/@vant/weapp/calendar/index.wxs | 37 + .../@vant/weapp/calendar/index.wxss | 1 + .../@vant/weapp/calendar/utils.d.ts | 12 + src/miniprogram_npm/@vant/weapp/calendar/utils.js | 97 + src/miniprogram_npm/@vant/weapp/calendar/utils.wxs | 25 + src/miniprogram_npm/@vant/weapp/card/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/card/index.js | 51 + src/miniprogram_npm/@vant/weapp/card/index.json | 6 + src/miniprogram_npm/@vant/weapp/card/index.wxml | 56 + src/miniprogram_npm/@vant/weapp/card/index.wxss | 1 + .../@vant/weapp/cascader/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/cascader/index.js | 224 + .../@vant/weapp/cascader/index.json | 8 + .../@vant/weapp/cascader/index.wxml | 54 + src/miniprogram_npm/@vant/weapp/cascader/index.wxs | 24 + .../@vant/weapp/cascader/index.wxss | 1 + .../@vant/weapp/cell-group/index.d.ts | 1 + .../@vant/weapp/cell-group/index.js | 13 + .../@vant/weapp/cell-group/index.json | 3 + .../@vant/weapp/cell-group/index.wxml | 11 + .../@vant/weapp/cell-group/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/cell/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/cell/index.js | 40 + src/miniprogram_npm/@vant/weapp/cell/index.json | 6 + src/miniprogram_npm/@vant/weapp/cell/index.wxml | 47 + src/miniprogram_npm/@vant/weapp/cell/index.wxs | 17 + src/miniprogram_npm/@vant/weapp/cell/index.wxss | 1 + .../@vant/weapp/checkbox-group/index.d.ts | 1 + .../@vant/weapp/checkbox-group/index.js | 39 + .../@vant/weapp/checkbox-group/index.json | 3 + .../@vant/weapp/checkbox-group/index.wxml | 5 + .../@vant/weapp/checkbox-group/index.wxss | 1 + .../@vant/weapp/checkbox/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/checkbox/index.js | 79 + .../@vant/weapp/checkbox/index.json | 6 + .../@vant/weapp/checkbox/index.wxml | 31 + src/miniprogram_npm/@vant/weapp/checkbox/index.wxs | 20 + .../@vant/weapp/checkbox/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/circle/canvas.d.ts | 4 + src/miniprogram_npm/@vant/weapp/circle/canvas.js | 47 + src/miniprogram_npm/@vant/weapp/circle/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/circle/index.js | 207 + src/miniprogram_npm/@vant/weapp/circle/index.json | 3 + src/miniprogram_npm/@vant/weapp/circle/index.wxml | 9 + src/miniprogram_npm/@vant/weapp/circle/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/col/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/col/index.js | 11 + src/miniprogram_npm/@vant/weapp/col/index.json | 3 + src/miniprogram_npm/@vant/weapp/col/index.wxml | 9 + src/miniprogram_npm/@vant/weapp/col/index.wxs | 18 + src/miniprogram_npm/@vant/weapp/col/index.wxss | 1 + .../@vant/weapp/collapse-item/animate.d.ts | 2 + .../@vant/weapp/collapse-item/animate.js | 43 + .../@vant/weapp/collapse-item/index.d.ts | 1 + .../@vant/weapp/collapse-item/index.js | 62 + .../@vant/weapp/collapse-item/index.json | 6 + .../@vant/weapp/collapse-item/index.wxml | 45 + .../@vant/weapp/collapse-item/index.wxss | 1 + .../@vant/weapp/collapse/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/collapse/index.js | 48 + .../@vant/weapp/collapse/index.json | 3 + .../@vant/weapp/collapse/index.wxml | 3 + .../@vant/weapp/collapse/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/common/color.d.ts | 7 + src/miniprogram_npm/@vant/weapp/common/color.js | 10 + .../@vant/weapp/common/component.d.ts | 4 + .../@vant/weapp/common/component.js | 49 + src/miniprogram_npm/@vant/weapp/common/index.wxss | 1 + .../@vant/weapp/common/relation.d.ts | 15 + src/miniprogram_npm/@vant/weapp/common/relation.js | 65 + .../@vant/weapp/common/style/clearfix.wxss | 1 + .../@vant/weapp/common/style/ellipsis.wxss | 1 + .../@vant/weapp/common/style/hairline.wxss | 1 + .../@vant/weapp/common/style/mixins/clearfix.wxss | 0 .../@vant/weapp/common/style/mixins/ellipsis.wxss | 0 .../@vant/weapp/common/style/mixins/hairline.wxss | 0 .../@vant/weapp/common/style/var.wxss | 0 src/miniprogram_npm/@vant/weapp/common/utils.d.ts | 21 + src/miniprogram_npm/@vant/weapp/common/utils.js | 109 + .../@vant/weapp/common/validator.d.ts | 9 + .../@vant/weapp/common/validator.js | 43 + .../@vant/weapp/common/version.d.ts | 15 + src/miniprogram_npm/@vant/weapp/common/version.js | 70 + .../@vant/weapp/config-provider/index.d.ts | 1 + .../@vant/weapp/config-provider/index.js | 11 + .../@vant/weapp/config-provider/index.json | 3 + .../@vant/weapp/config-provider/index.wxml | 5 + .../@vant/weapp/config-provider/index.wxs | 29 + .../@vant/weapp/count-down/index.d.ts | 1 + .../@vant/weapp/count-down/index.js | 104 + .../@vant/weapp/count-down/index.json | 3 + .../@vant/weapp/count-down/index.wxml | 4 + .../@vant/weapp/count-down/index.wxss | 1 + .../@vant/weapp/count-down/utils.d.ts | 10 + .../@vant/weapp/count-down/utils.js | 64 + .../@vant/weapp/datetime-picker/index.d.ts | 1 + .../@vant/weapp/datetime-picker/index.js | 329 + .../@vant/weapp/datetime-picker/index.json | 6 + .../@vant/weapp/datetime-picker/index.wxml | 16 + .../@vant/weapp/datetime-picker/index.wxss | 1 + .../@vant/weapp/definitions/index.d.ts | 29 + .../@vant/weapp/definitions/index.js | 2 + src/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts | 55 + src/miniprogram_npm/@vant/weapp/dialog/dialog.js | 92 + src/miniprogram_npm/@vant/weapp/dialog/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/dialog/index.js | 135 + src/miniprogram_npm/@vant/weapp/dialog/index.json | 9 + src/miniprogram_npm/@vant/weapp/dialog/index.wxml | 125 + src/miniprogram_npm/@vant/weapp/dialog/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/divider/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/divider/index.js | 14 + src/miniprogram_npm/@vant/weapp/divider/index.json | 4 + src/miniprogram_npm/@vant/weapp/divider/index.wxml | 9 + src/miniprogram_npm/@vant/weapp/divider/index.wxs | 18 + src/miniprogram_npm/@vant/weapp/divider/index.wxss | 1 + .../@vant/weapp/dropdown-item/index.d.ts | 1 + .../@vant/weapp/dropdown-item/index.js | 136 + .../@vant/weapp/dropdown-item/index.json | 8 + .../@vant/weapp/dropdown-item/index.wxml | 50 + .../@vant/weapp/dropdown-item/index.wxss | 1 + .../@vant/weapp/dropdown-item/shared.d.ts | 5 + .../@vant/weapp/dropdown-item/shared.js | 2 + .../@vant/weapp/dropdown-menu/index.d.ts | 1 + .../@vant/weapp/dropdown-menu/index.js | 122 + .../@vant/weapp/dropdown-menu/index.json | 3 + .../@vant/weapp/dropdown-menu/index.wxml | 23 + .../@vant/weapp/dropdown-menu/index.wxs | 16 + .../@vant/weapp/dropdown-menu/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/empty/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/empty/index.js | 12 + src/miniprogram_npm/@vant/weapp/empty/index.json | 4 + src/miniprogram_npm/@vant/weapp/empty/index.wxml | 22 + src/miniprogram_npm/@vant/weapp/empty/index.wxs | 15 + src/miniprogram_npm/@vant/weapp/empty/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/field/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/field/index.js | 152 + src/miniprogram_npm/@vant/weapp/field/index.json | 7 + src/miniprogram_npm/@vant/weapp/field/index.wxml | 56 + src/miniprogram_npm/@vant/weapp/field/index.wxs | 18 + src/miniprogram_npm/@vant/weapp/field/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/field/input.wxml | 31 + src/miniprogram_npm/@vant/weapp/field/props.d.ts | 4 + src/miniprogram_npm/@vant/weapp/field/props.js | 59 + .../@vant/weapp/field/textarea.wxml | 32 + src/miniprogram_npm/@vant/weapp/field/types.d.ts | 8 + src/miniprogram_npm/@vant/weapp/field/types.js | 2 + .../@vant/weapp/goods-action-button/index.d.ts | 1 + .../@vant/weapp/goods-action-button/index.js | 46 + .../@vant/weapp/goods-action-button/index.json | 6 + .../@vant/weapp/goods-action-button/index.wxml | 35 + .../@vant/weapp/goods-action-button/index.wxss | 1 + .../@vant/weapp/goods-action-icon/index.d.ts | 1 + .../@vant/weapp/goods-action-icon/index.js | 29 + .../@vant/weapp/goods-action-icon/index.json | 7 + .../@vant/weapp/goods-action-icon/index.wxml | 41 + .../@vant/weapp/goods-action-icon/index.wxss | 1 + .../@vant/weapp/goods-action/index.d.ts | 1 + .../@vant/weapp/goods-action/index.js | 17 + .../@vant/weapp/goods-action/index.json | 3 + .../@vant/weapp/goods-action/index.wxml | 5 + .../@vant/weapp/goods-action/index.wxss | 1 + .../@vant/weapp/grid-item/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/grid-item/index.js | 54 + .../@vant/weapp/grid-item/index.json | 6 + .../@vant/weapp/grid-item/index.wxml | 27 + .../@vant/weapp/grid-item/index.wxs | 32 + .../@vant/weapp/grid-item/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/grid/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/grid/index.js | 57 + src/miniprogram_npm/@vant/weapp/grid/index.json | 3 + src/miniprogram_npm/@vant/weapp/grid/index.wxml | 8 + src/miniprogram_npm/@vant/weapp/grid/index.wxs | 13 + src/miniprogram_npm/@vant/weapp/grid/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/icon/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/icon/index.js | 23 + src/miniprogram_npm/@vant/weapp/icon/index.json | 6 + src/miniprogram_npm/@vant/weapp/icon/index.wxml | 20 + src/miniprogram_npm/@vant/weapp/icon/index.wxs | 43 + src/miniprogram_npm/@vant/weapp/icon/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/image/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/image/index.js | 66 + src/miniprogram_npm/@vant/weapp/image/index.json | 7 + src/miniprogram_npm/@vant/weapp/image/index.wxml | 35 + src/miniprogram_npm/@vant/weapp/image/index.wxs | 32 + src/miniprogram_npm/@vant/weapp/image/index.wxss | 1 + .../@vant/weapp/index-anchor/index.d.ts | 1 + .../@vant/weapp/index-anchor/index.js | 28 + .../@vant/weapp/index-anchor/index.json | 3 + .../@vant/weapp/index-anchor/index.wxml | 14 + .../@vant/weapp/index-anchor/index.wxss | 1 + .../@vant/weapp/index-bar/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/index-bar/index.js | 243 + .../@vant/weapp/index-bar/index.json | 3 + .../@vant/weapp/index-bar/index.wxml | 22 + .../@vant/weapp/index-bar/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/info/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/info/index.js | 10 + src/miniprogram_npm/@vant/weapp/info/index.json | 3 + src/miniprogram_npm/@vant/weapp/info/index.wxml | 7 + src/miniprogram_npm/@vant/weapp/info/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/loading/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/loading/index.js | 18 + src/miniprogram_npm/@vant/weapp/loading/index.json | 3 + src/miniprogram_npm/@vant/weapp/loading/index.wxml | 19 + src/miniprogram_npm/@vant/weapp/loading/index.wxs | 22 + src/miniprogram_npm/@vant/weapp/loading/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/mixins/basic.d.ts | 1 + src/miniprogram_npm/@vant/weapp/mixins/basic.js | 30 + src/miniprogram_npm/@vant/weapp/mixins/button.d.ts | 1 + src/miniprogram_npm/@vant/weapp/mixins/button.js | 54 + src/miniprogram_npm/@vant/weapp/mixins/link.d.ts | 1 + src/miniprogram_npm/@vant/weapp/mixins/link.js | 27 + .../@vant/weapp/mixins/page-scroll.d.ts | 6 + .../@vant/weapp/mixins/page-scroll.js | 47 + src/miniprogram_npm/@vant/weapp/mixins/touch.d.ts | 1 + src/miniprogram_npm/@vant/weapp/mixins/touch.js | 40 + .../@vant/weapp/mixins/transition.d.ts | 1 + .../@vant/weapp/mixins/transition.js | 135 + src/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/nav-bar/index.js | 68 + src/miniprogram_npm/@vant/weapp/nav-bar/index.json | 6 + src/miniprogram_npm/@vant/weapp/nav-bar/index.wxml | 42 + src/miniprogram_npm/@vant/weapp/nav-bar/index.wxs | 13 + src/miniprogram_npm/@vant/weapp/nav-bar/index.wxss | 1 + .../@vant/weapp/notice-bar/index.d.ts | 1 + .../@vant/weapp/notice-bar/index.js | 125 + .../@vant/weapp/notice-bar/index.json | 6 + .../@vant/weapp/notice-bar/index.wxml | 38 + .../@vant/weapp/notice-bar/index.wxs | 15 + .../@vant/weapp/notice-bar/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/notify/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/notify/index.js | 68 + src/miniprogram_npm/@vant/weapp/notify/index.json | 6 + src/miniprogram_npm/@vant/weapp/notify/index.wxml | 21 + src/miniprogram_npm/@vant/weapp/notify/index.wxs | 22 + src/miniprogram_npm/@vant/weapp/notify/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/notify/notify.d.ts | 22 + src/miniprogram_npm/@vant/weapp/notify/notify.js | 67 + src/miniprogram_npm/@vant/weapp/overlay/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/overlay/index.js | 32 + src/miniprogram_npm/@vant/weapp/overlay/index.json | 6 + src/miniprogram_npm/@vant/weapp/overlay/index.wxml | 7 + src/miniprogram_npm/@vant/weapp/overlay/index.wxss | 1 + .../@vant/weapp/overlay/overlay.wxml | 10 + src/miniprogram_npm/@vant/weapp/panel/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/panel/index.js | 11 + src/miniprogram_npm/@vant/weapp/panel/index.json | 6 + src/miniprogram_npm/@vant/weapp/panel/index.wxml | 19 + src/miniprogram_npm/@vant/weapp/panel/index.wxss | 1 + .../@vant/weapp/picker-column/index.d.ts | 1 + .../@vant/weapp/picker-column/index.js | 122 + .../@vant/weapp/picker-column/index.json | 3 + .../@vant/weapp/picker-column/index.wxml | 23 + .../@vant/weapp/picker-column/index.wxs | 36 + .../@vant/weapp/picker-column/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/picker/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/picker/index.js | 161 + src/miniprogram_npm/@vant/weapp/picker/index.json | 7 + src/miniprogram_npm/@vant/weapp/picker/index.wxml | 37 + src/miniprogram_npm/@vant/weapp/picker/index.wxs | 42 + src/miniprogram_npm/@vant/weapp/picker/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/picker/shared.d.ts | 21 + src/miniprogram_npm/@vant/weapp/picker/shared.js | 24 + .../@vant/weapp/picker/toolbar.wxml | 23 + src/miniprogram_npm/@vant/weapp/popup/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/popup/index.js | 99 + src/miniprogram_npm/@vant/weapp/popup/index.json | 7 + src/miniprogram_npm/@vant/weapp/popup/index.wxml | 21 + src/miniprogram_npm/@vant/weapp/popup/index.wxs | 18 + src/miniprogram_npm/@vant/weapp/popup/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/popup/popup.wxml | 16 + .../@vant/weapp/progress/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/progress/index.js | 55 + .../@vant/weapp/progress/index.json | 3 + .../@vant/weapp/progress/index.wxml | 20 + src/miniprogram_npm/@vant/weapp/progress/index.wxs | 36 + .../@vant/weapp/progress/index.wxss | 1 + .../@vant/weapp/radio-group/index.d.ts | 1 + .../@vant/weapp/radio-group/index.js | 24 + .../@vant/weapp/radio-group/index.json | 3 + .../@vant/weapp/radio-group/index.wxml | 5 + .../@vant/weapp/radio-group/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/radio/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/radio/index.js | 68 + src/miniprogram_npm/@vant/weapp/radio/index.json | 6 + src/miniprogram_npm/@vant/weapp/radio/index.wxml | 30 + src/miniprogram_npm/@vant/weapp/radio/index.wxs | 33 + src/miniprogram_npm/@vant/weapp/radio/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/rate/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/rate/index.js | 93 + src/miniprogram_npm/@vant/weapp/rate/index.json | 6 + src/miniprogram_npm/@vant/weapp/rate/index.wxml | 35 + src/miniprogram_npm/@vant/weapp/rate/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/row/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/row/index.js | 26 + src/miniprogram_npm/@vant/weapp/row/index.json | 3 + src/miniprogram_npm/@vant/weapp/row/index.wxml | 5 + src/miniprogram_npm/@vant/weapp/row/index.wxs | 18 + src/miniprogram_npm/@vant/weapp/row/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/search/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/search/index.js | 100 + src/miniprogram_npm/@vant/weapp/search/index.json | 6 + src/miniprogram_npm/@vant/weapp/search/index.wxml | 54 + src/miniprogram_npm/@vant/weapp/search/index.wxss | 1 + .../@vant/weapp/share-sheet/index.d.ts | 1 + .../@vant/weapp/share-sheet/index.js | 61 + .../@vant/weapp/share-sheet/index.json | 7 + .../@vant/weapp/share-sheet/index.wxml | 47 + .../@vant/weapp/share-sheet/index.wxs | 12 + .../@vant/weapp/share-sheet/index.wxss | 1 + .../@vant/weapp/share-sheet/options.d.ts | 1 + .../@vant/weapp/share-sheet/options.js | 27 + .../@vant/weapp/share-sheet/options.json | 3 + .../@vant/weapp/share-sheet/options.wxml | 20 + .../@vant/weapp/share-sheet/options.wxs | 14 + .../@vant/weapp/share-sheet/options.wxss | 1 + .../@vant/weapp/sidebar-item/index.d.ts | 1 + .../@vant/weapp/sidebar-item/index.js | 32 + .../@vant/weapp/sidebar-item/index.json | 6 + .../@vant/weapp/sidebar-item/index.wxml | 18 + .../@vant/weapp/sidebar-item/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/sidebar/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/sidebar/index.js | 36 + src/miniprogram_npm/@vant/weapp/sidebar/index.json | 3 + src/miniprogram_npm/@vant/weapp/sidebar/index.wxml | 3 + src/miniprogram_npm/@vant/weapp/sidebar/index.wxss | 1 + .../@vant/weapp/skeleton/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/skeleton/index.js | 48 + .../@vant/weapp/skeleton/index.json | 4 + .../@vant/weapp/skeleton/index.wxml | 29 + .../@vant/weapp/skeleton/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/slider/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/slider/index.js | 206 + src/miniprogram_npm/@vant/weapp/slider/index.json | 3 + src/miniprogram_npm/@vant/weapp/slider/index.wxml | 68 + src/miniprogram_npm/@vant/weapp/slider/index.wxs | 14 + src/miniprogram_npm/@vant/weapp/slider/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/stepper/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/stepper/index.js | 198 + src/miniprogram_npm/@vant/weapp/stepper/index.json | 3 + src/miniprogram_npm/@vant/weapp/stepper/index.wxml | 43 + src/miniprogram_npm/@vant/weapp/stepper/index.wxs | 22 + src/miniprogram_npm/@vant/weapp/stepper/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/steps/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/steps/index.js | 35 + src/miniprogram_npm/@vant/weapp/steps/index.json | 6 + src/miniprogram_npm/@vant/weapp/steps/index.wxml | 54 + src/miniprogram_npm/@vant/weapp/steps/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/sticky/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/sticky/index.js | 126 + src/miniprogram_npm/@vant/weapp/sticky/index.json | 3 + src/miniprogram_npm/@vant/weapp/sticky/index.wxml | 8 + src/miniprogram_npm/@vant/weapp/sticky/index.wxs | 25 + src/miniprogram_npm/@vant/weapp/sticky/index.wxss | 1 + .../@vant/weapp/submit-bar/index.d.ts | 1 + .../@vant/weapp/submit-bar/index.js | 58 + .../@vant/weapp/submit-bar/index.json | 7 + .../@vant/weapp/submit-bar/index.wxml | 44 + .../@vant/weapp/submit-bar/index.wxss | 1 + .../@vant/weapp/swipe-cell/index.d.ts | 1 + .../@vant/weapp/swipe-cell/index.js | 135 + .../@vant/weapp/swipe-cell/index.json | 3 + .../@vant/weapp/swipe-cell/index.wxml | 20 + .../@vant/weapp/swipe-cell/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/switch/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/switch/index.js | 38 + src/miniprogram_npm/@vant/weapp/switch/index.json | 6 + src/miniprogram_npm/@vant/weapp/switch/index.wxml | 16 + src/miniprogram_npm/@vant/weapp/switch/index.wxs | 26 + src/miniprogram_npm/@vant/weapp/switch/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/tab/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/tab/index.js | 58 + src/miniprogram_npm/@vant/weapp/tab/index.json | 3 + src/miniprogram_npm/@vant/weapp/tab/index.wxml | 8 + src/miniprogram_npm/@vant/weapp/tab/index.wxss | 1 + .../@vant/weapp/tabbar-item/index.d.ts | 1 + .../@vant/weapp/tabbar-item/index.js | 70 + .../@vant/weapp/tabbar-item/index.json | 7 + .../@vant/weapp/tabbar-item/index.wxml | 28 + .../@vant/weapp/tabbar-item/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/tabbar/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/tabbar/index.js | 68 + src/miniprogram_npm/@vant/weapp/tabbar/index.json | 3 + src/miniprogram_npm/@vant/weapp/tabbar/index.wxml | 10 + src/miniprogram_npm/@vant/weapp/tabbar/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/tabs/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/tabs/index.js | 327 + src/miniprogram_npm/@vant/weapp/tabs/index.json | 7 + src/miniprogram_npm/@vant/weapp/tabs/index.wxml | 63 + src/miniprogram_npm/@vant/weapp/tabs/index.wxs | 83 + src/miniprogram_npm/@vant/weapp/tabs/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/tag/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/tag/index.js | 23 + src/miniprogram_npm/@vant/weapp/tag/index.json | 6 + src/miniprogram_npm/@vant/weapp/tag/index.wxml | 15 + src/miniprogram_npm/@vant/weapp/tag/index.wxs | 13 + src/miniprogram_npm/@vant/weapp/tag/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/toast/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/toast/index.js | 31 + src/miniprogram_npm/@vant/weapp/toast/index.json | 9 + src/miniprogram_npm/@vant/weapp/toast/index.wxml | 36 + src/miniprogram_npm/@vant/weapp/toast/index.wxss | 1 + src/miniprogram_npm/@vant/weapp/toast/toast.d.ts | 28 + src/miniprogram_npm/@vant/weapp/toast/toast.js | 83 + .../@vant/weapp/transition/index.d.ts | 1 + .../@vant/weapp/transition/index.js | 15 + .../@vant/weapp/transition/index.json | 3 + .../@vant/weapp/transition/index.wxml | 10 + .../@vant/weapp/transition/index.wxs | 17 + .../@vant/weapp/transition/index.wxss | 1 + .../@vant/weapp/tree-select/index.d.ts | 1 + .../@vant/weapp/tree-select/index.js | 70 + .../@vant/weapp/tree-select/index.json | 8 + .../@vant/weapp/tree-select/index.wxml | 41 + .../@vant/weapp/tree-select/index.wxs | 12 + .../@vant/weapp/tree-select/index.wxss | 1 + .../@vant/weapp/uploader/index.d.ts | 1 + src/miniprogram_npm/@vant/weapp/uploader/index.js | 183 + .../@vant/weapp/uploader/index.json | 7 + .../@vant/weapp/uploader/index.wxml | 85 + src/miniprogram_npm/@vant/weapp/uploader/index.wxs | 17 + .../@vant/weapp/uploader/index.wxss | 1 + .../@vant/weapp/uploader/shared.d.ts | 57 + src/miniprogram_npm/@vant/weapp/uploader/shared.js | 64 + .../@vant/weapp/uploader/utils.d.ts | 24 + src/miniprogram_npm/@vant/weapp/uploader/utils.js | 112 + src/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs | 12 + src/miniprogram_npm/@vant/weapp/wxs/array.wxs | 5 + src/miniprogram_npm/@vant/weapp/wxs/bem.wxs | 39 + src/miniprogram_npm/@vant/weapp/wxs/memoize.wxs | 55 + src/miniprogram_npm/@vant/weapp/wxs/object.wxs | 13 + src/miniprogram_npm/@vant/weapp/wxs/style.wxs | 42 + src/miniprogram_npm/@vant/weapp/wxs/utils.wxs | 10 + src/miniprogram_npm/crypto-js/index.js | 7365 ++++++++++++++++++++ src/miniprogram_npm/dayjs/index.js | 13 + src/miniprogram_npm/dayjs/index.js.map | 1 + src/miniprogram_npm/miniprogram-licia/Benchmark.js | 244 + .../miniprogram-licia/BloomFilter.js | 46 + src/miniprogram_npm/miniprogram-licia/Caseless.js | 35 + src/miniprogram_npm/miniprogram-licia/Channel.js | 48 + src/miniprogram_npm/miniprogram-licia/Class.js | 64 + src/miniprogram_npm/miniprogram-licia/Color.js | 95 + src/miniprogram_npm/miniprogram-licia/Delegator.js | 48 + .../miniprogram-licia/Dispatcher.js | 55 + src/miniprogram_npm/miniprogram-licia/Emitter.js | 65 + src/miniprogram_npm/miniprogram-licia/Enum.js | 31 + src/miniprogram_npm/miniprogram-licia/HashTable.js | 61 + src/miniprogram_npm/miniprogram-licia/Heap.js | 79 + .../miniprogram-licia/HeapSnapshot.js | 111 + src/miniprogram_npm/miniprogram-licia/I18n.js | 38 + .../miniprogram-licia/JsonTransformer.js | 68 + .../miniprogram-licia/LinkedList.js | 112 + src/miniprogram_npm/miniprogram-licia/Logger.js | 69 + src/miniprogram_npm/miniprogram-licia/Lru.js | 63 + .../miniprogram-licia/PriorityQueue.js | 39 + src/miniprogram_npm/miniprogram-licia/Promise.js | 178 + src/miniprogram_npm/miniprogram-licia/PseudoMap.js | 64 + src/miniprogram_npm/miniprogram-licia/Queue.js | 35 + src/miniprogram_npm/miniprogram-licia/QuickLru.js | 49 + src/miniprogram_npm/miniprogram-licia/Readiness.js | 59 + .../miniprogram-licia/ReduceStore.js | 41 + src/miniprogram_npm/miniprogram-licia/Semaphore.js | 28 + .../miniprogram-licia/SingleEmitter.js | 48 + src/miniprogram_npm/miniprogram-licia/Stack.js | 35 + src/miniprogram_npm/miniprogram-licia/State.js | 45 + src/miniprogram_npm/miniprogram-licia/Store.js | 58 + src/miniprogram_npm/miniprogram-licia/Trace.js | 157 + src/miniprogram_npm/miniprogram-licia/Tracing.js | 227 + src/miniprogram_npm/miniprogram-licia/Trie.js | 90 + src/miniprogram_npm/miniprogram-licia/Tween.js | 98 + src/miniprogram_npm/miniprogram-licia/Url.js | 125 + src/miniprogram_npm/miniprogram-licia/Validator.js | 82 + src/miniprogram_npm/miniprogram-licia/Wrr.js | 86 + src/miniprogram_npm/miniprogram-licia/abbrev.js | 28 + src/miniprogram_npm/miniprogram-licia/after.js | 7 + src/miniprogram_npm/miniprogram-licia/allKeys.js | 42 + src/miniprogram_npm/miniprogram-licia/arrToMap.js | 14 + src/miniprogram_npm/miniprogram-licia/atob.js | 21 + src/miniprogram_npm/miniprogram-licia/average.js | 9 + src/miniprogram_npm/miniprogram-licia/base64.js | 83 + src/miniprogram_npm/miniprogram-licia/before.js | 10 + .../miniprogram-licia/binarySearch.js | 24 + src/miniprogram_npm/miniprogram-licia/bind.js | 8 + src/miniprogram_npm/miniprogram-licia/btoa.js | 23 + .../miniprogram-licia/bubbleSort.js | 18 + .../miniprogram-licia/bytesToStr.js | 22 + .../miniprogram-licia/bytesToWords.js | 9 + .../miniprogram-licia/callbackify.js | 17 + src/miniprogram_npm/miniprogram-licia/camelCase.js | 16 + .../miniprogram-licia/capitalize.js | 5 + src/miniprogram_npm/miniprogram-licia/castPath.js | 16 + .../miniprogram-licia/centerAlign.js | 21 + src/miniprogram_npm/miniprogram-licia/char.js | 5 + src/miniprogram_npm/miniprogram-licia/chunk.js | 12 + src/miniprogram_npm/miniprogram-licia/clamp.js | 12 + src/miniprogram_npm/miniprogram-licia/className.js | 20 + src/miniprogram_npm/miniprogram-licia/clone.js | 9 + src/miniprogram_npm/miniprogram-licia/cloneDeep.js | 19 + .../miniprogram-licia/cmpVersion.js | 16 + src/miniprogram_npm/miniprogram-licia/combine.js | 9 + src/miniprogram_npm/miniprogram-licia/compact.js | 8 + src/miniprogram_npm/miniprogram-licia/compose.js | 11 + src/miniprogram_npm/miniprogram-licia/concat.js | 11 + src/miniprogram_npm/miniprogram-licia/contain.js | 11 + .../miniprogram-licia/convertBase.js | 5 + .../miniprogram-licia/convertBin.js | 60 + src/miniprogram_npm/miniprogram-licia/crc1.js | 19 + src/miniprogram_npm/miniprogram-licia/crc16.js | 276 + src/miniprogram_npm/miniprogram-licia/crc32.js | 29 + src/miniprogram_npm/miniprogram-licia/crc8.js | 276 + src/miniprogram_npm/miniprogram-licia/create.js | 11 + .../miniprogram-licia/createAssigner.js | 16 + src/miniprogram_npm/miniprogram-licia/css.js | 329 + .../miniprogram-licia/cssPriority.js | 63 + src/miniprogram_npm/miniprogram-licia/curry.js | 15 + src/miniprogram_npm/miniprogram-licia/dataUrl.js | 68 + .../miniprogram-licia/dateFormat.js | 142 + src/miniprogram_npm/miniprogram-licia/debounce.js | 15 + src/miniprogram_npm/miniprogram-licia/deburr.js | 206 + .../miniprogram-licia/decodeUriComponent.js | 31 + src/miniprogram_npm/miniprogram-licia/defaults.js | 5 + src/miniprogram_npm/miniprogram-licia/define.js | 17 + .../miniprogram-licia/defineProp.js | 26 + src/miniprogram_npm/miniprogram-licia/defined.js | 8 + src/miniprogram_npm/miniprogram-licia/delay.js | 8 + src/miniprogram_npm/miniprogram-licia/deprecate.js | 36 + .../miniprogram-licia/detectBrowser.js | 51 + .../miniprogram-licia/detectMocha.js | 11 + src/miniprogram_npm/miniprogram-licia/detectOs.js | 39 + .../miniprogram-licia/difference.js | 12 + src/miniprogram_npm/miniprogram-licia/dotCase.js | 6 + .../miniprogram-licia/durationFormat.js | 39 + src/miniprogram_npm/miniprogram-licia/each.js | 18 + src/miniprogram_npm/miniprogram-licia/easing.js | 63 + src/miniprogram_npm/miniprogram-licia/endWith.js | 6 + src/miniprogram_npm/miniprogram-licia/escape.js | 20 + .../miniprogram-licia/escapeJsStr.js | 24 + .../miniprogram-licia/escapeRegExp.js | 5 + src/miniprogram_npm/miniprogram-licia/every.js | 15 + src/miniprogram_npm/miniprogram-licia/extend.js | 5 + .../miniprogram-licia/extendDeep.js | 28 + src/miniprogram_npm/miniprogram-licia/extendOwn.js | 5 + .../miniprogram-licia/extractBlockCmts.js | 17 + .../miniprogram-licia/extractUrls.js | 15 + src/miniprogram_npm/miniprogram-licia/fibonacci.js | 6 + src/miniprogram_npm/miniprogram-licia/fileSize.js | 9 + src/miniprogram_npm/miniprogram-licia/fileType.js | 148 + src/miniprogram_npm/miniprogram-licia/fileUrl.js | 13 + src/miniprogram_npm/miniprogram-licia/fill.js | 11 + src/miniprogram_npm/miniprogram-licia/filter.js | 12 + src/miniprogram_npm/miniprogram-licia/find.js | 11 + src/miniprogram_npm/miniprogram-licia/findIdx.js | 14 + src/miniprogram_npm/miniprogram-licia/findKey.js | 13 + .../miniprogram-licia/findLastIdx.js | 6 + src/miniprogram_npm/miniprogram-licia/flatten.js | 16 + src/miniprogram_npm/miniprogram-licia/fnArgs.js | 68 + src/miniprogram_npm/miniprogram-licia/fnParams.js | 26 + src/miniprogram_npm/miniprogram-licia/fnv1a.js | 11 + src/miniprogram_npm/miniprogram-licia/format.js | 45 + src/miniprogram_npm/miniprogram-licia/fraction.js | 17 + src/miniprogram_npm/miniprogram-licia/freeze.js | 14 + .../miniprogram-licia/freezeDeep.js | 13 + .../miniprogram-licia/fuzzySearch.js | 55 + src/miniprogram_npm/miniprogram-licia/gcd.js | 6 + src/miniprogram_npm/miniprogram-licia/getProto.js | 14 + .../miniprogram-licia/getUrlParam.js | 6 + src/miniprogram_npm/miniprogram-licia/golangify.js | 26 + src/miniprogram_npm/miniprogram-licia/has.js | 6 + src/miniprogram_npm/miniprogram-licia/heapSort.js | 19 + src/miniprogram_npm/miniprogram-licia/hex.js | 23 + src/miniprogram_npm/miniprogram-licia/highlight.js | 135 + src/miniprogram_npm/miniprogram-licia/hookFn.js | 40 + src/miniprogram_npm/miniprogram-licia/hslToRgb.js | 40 + src/miniprogram_npm/miniprogram-licia/html.js | 84 + src/miniprogram_npm/miniprogram-licia/identity.js | 5 + src/miniprogram_npm/miniprogram-licia/idxOf.js | 5 + src/miniprogram_npm/miniprogram-licia/indent.js | 16 + src/miniprogram_npm/miniprogram-licia/index.js | 359 + src/miniprogram_npm/miniprogram-licia/inherits.js | 6 + src/miniprogram_npm/miniprogram-licia/ini.js | 90 + .../miniprogram-licia/insertionSort.js | 20 + src/miniprogram_npm/miniprogram-licia/intersect.js | 19 + .../miniprogram-licia/intersectRange.js | 11 + src/miniprogram_npm/miniprogram-licia/invariant.js | 35 + src/miniprogram_npm/miniprogram-licia/invert.js | 10 + .../miniprogram-licia/isAbsoluteUrl.js | 6 + src/miniprogram_npm/miniprogram-licia/isArgs.js | 6 + src/miniprogram_npm/miniprogram-licia/isArr.js | 10 + .../miniprogram-licia/isArrBuffer.js | 6 + src/miniprogram_npm/miniprogram-licia/isArrLike.js | 10 + src/miniprogram_npm/miniprogram-licia/isAsyncFn.js | 6 + src/miniprogram_npm/miniprogram-licia/isBool.js | 5 + src/miniprogram_npm/miniprogram-licia/isBrowser.js | 6 + src/miniprogram_npm/miniprogram-licia/isBuffer.js | 12 + src/miniprogram_npm/miniprogram-licia/isClose.js | 10 + src/miniprogram_npm/miniprogram-licia/isCyclic.js | 38 + src/miniprogram_npm/miniprogram-licia/isDataUrl.js | 8 + src/miniprogram_npm/miniprogram-licia/isDate.js | 6 + src/miniprogram_npm/miniprogram-licia/isEmail.js | 6 + src/miniprogram_npm/miniprogram-licia/isEmpty.js | 14 + src/miniprogram_npm/miniprogram-licia/isEqual.js | 75 + src/miniprogram_npm/miniprogram-licia/isErr.js | 12 + src/miniprogram_npm/miniprogram-licia/isEven.js | 7 + src/miniprogram_npm/miniprogram-licia/isFinite.js | 8 + src/miniprogram_npm/miniprogram-licia/isFn.js | 11 + .../miniprogram-licia/isFullWidth.js | 29 + .../miniprogram-licia/isGeneratorFn.js | 6 + src/miniprogram_npm/miniprogram-licia/isInt.js | 6 + src/miniprogram_npm/miniprogram-licia/isIp.js | 54 + src/miniprogram_npm/miniprogram-licia/isJson.js | 10 + .../miniprogram-licia/isLeapYear.js | 5 + src/miniprogram_npm/miniprogram-licia/isMac.js | 4 + src/miniprogram_npm/miniprogram-licia/isMap.js | 6 + src/miniprogram_npm/miniprogram-licia/isMatch.js | 14 + .../miniprogram-licia/isMiniProgram.js | 5 + src/miniprogram_npm/miniprogram-licia/isMobile.js | 10 + src/miniprogram_npm/miniprogram-licia/isNaN.js | 6 + src/miniprogram_npm/miniprogram-licia/isNative.js | 23 + src/miniprogram_npm/miniprogram-licia/isNil.js | 5 + src/miniprogram_npm/miniprogram-licia/isNode.js | 5 + src/miniprogram_npm/miniprogram-licia/isNull.js | 5 + src/miniprogram_npm/miniprogram-licia/isNum.js | 6 + src/miniprogram_npm/miniprogram-licia/isNumeric.js | 11 + src/miniprogram_npm/miniprogram-licia/isObj.js | 6 + src/miniprogram_npm/miniprogram-licia/isOdd.js | 7 + .../miniprogram-licia/isPlainObj.js | 13 + src/miniprogram_npm/miniprogram-licia/isPrime.js | 11 + .../miniprogram-licia/isPrimitive.js | 6 + src/miniprogram_npm/miniprogram-licia/isPromise.js | 7 + src/miniprogram_npm/miniprogram-licia/isRegExp.js | 6 + .../miniprogram-licia/isRelative.js | 6 + src/miniprogram_npm/miniprogram-licia/isSet.js | 6 + src/miniprogram_npm/miniprogram-licia/isSorted.js | 17 + src/miniprogram_npm/miniprogram-licia/isStr.js | 6 + .../miniprogram-licia/isStrBlank.js | 18 + src/miniprogram_npm/miniprogram-licia/isSymbol.js | 5 + .../miniprogram-licia/isTypedArr.js | 24 + src/miniprogram_npm/miniprogram-licia/isUndef.js | 5 + src/miniprogram_npm/miniprogram-licia/isUrl.js | 6 + src/miniprogram_npm/miniprogram-licia/isWeakMap.js | 6 + src/miniprogram_npm/miniprogram-licia/isWeakSet.js | 6 + src/miniprogram_npm/miniprogram-licia/isWindows.js | 4 + src/miniprogram_npm/miniprogram-licia/jsonClone.js | 5 + src/miniprogram_npm/miniprogram-licia/kebabCase.js | 6 + src/miniprogram_npm/miniprogram-licia/keyCode.js | 61 + src/miniprogram_npm/miniprogram-licia/keys.js | 14 + src/miniprogram_npm/miniprogram-licia/last.js | 6 + .../miniprogram-licia/levenshtein.js | 59 + src/miniprogram_npm/miniprogram-licia/linkify.js | 16 + src/miniprogram_npm/miniprogram-licia/longest.js | 16 + src/miniprogram_npm/miniprogram-licia/lowerCase.js | 6 + src/miniprogram_npm/miniprogram-licia/lpad.js | 11 + src/miniprogram_npm/miniprogram-licia/ltrim.js | 30 + src/miniprogram_npm/miniprogram-licia/map.js | 16 + src/miniprogram_npm/miniprogram-licia/mapObj.js | 15 + src/miniprogram_npm/miniprogram-licia/matcher.js | 10 + src/miniprogram_npm/miniprogram-licia/max.js | 10 + src/miniprogram_npm/miniprogram-licia/md5.js | 140 + .../miniprogram-licia/memStorage.js | 53 + src/miniprogram_npm/miniprogram-licia/memoize.js | 13 + src/miniprogram_npm/miniprogram-licia/mergeArr.js | 14 + src/miniprogram_npm/miniprogram-licia/mergeSort.js | 26 + src/miniprogram_npm/miniprogram-licia/methods.js | 10 + src/miniprogram_npm/miniprogram-licia/mime.js | 83 + src/miniprogram_npm/miniprogram-licia/min.js | 10 + src/miniprogram_npm/miniprogram-licia/moment.js | 256 + src/miniprogram_npm/miniprogram-licia/morse.js | 80 + src/miniprogram_npm/miniprogram-licia/ms.js | 31 + .../miniprogram-licia/naturalSort.js | 60 + src/miniprogram_npm/miniprogram-licia/negate.js | 7 + src/miniprogram_npm/miniprogram-licia/nextTick.js | 18 + src/miniprogram_npm/miniprogram-licia/noop.js | 3 + .../miniprogram-licia/normalizeHeader.js | 21 + .../miniprogram-licia/normalizePath.js | 6 + .../miniprogram-licia/normalizePhone.js | 22 + src/miniprogram_npm/miniprogram-licia/now.js | 9 + src/miniprogram_npm/miniprogram-licia/objToStr.js | 6 + src/miniprogram_npm/miniprogram-licia/omit.js | 6 + src/miniprogram_npm/miniprogram-licia/once.js | 5 + .../miniprogram-licia/optimizeCb.js | 23 + src/miniprogram_npm/miniprogram-licia/ordinal.js | 17 + src/miniprogram_npm/miniprogram-licia/pad.js | 15 + src/miniprogram_npm/miniprogram-licia/pairs.js | 12 + src/miniprogram_npm/miniprogram-licia/parallel.js | 26 + src/miniprogram_npm/miniprogram-licia/parseArgs.js | 72 + src/miniprogram_npm/miniprogram-licia/parseHtml.js | 105 + src/miniprogram_npm/miniprogram-licia/partial.js | 12 + .../miniprogram-licia/pascalCase.js | 7 + src/miniprogram_npm/miniprogram-licia/perfNow.js | 26 + src/miniprogram_npm/miniprogram-licia/pick.js | 26 + src/miniprogram_npm/miniprogram-licia/pluck.js | 7 + src/miniprogram_npm/miniprogram-licia/precision.js | 11 + src/miniprogram_npm/miniprogram-licia/promisify.js | 18 + src/miniprogram_npm/miniprogram-licia/property.js | 15 + src/miniprogram_npm/miniprogram-licia/query.js | 50 + src/miniprogram_npm/miniprogram-licia/quickSort.js | 32 + src/miniprogram_npm/miniprogram-licia/raf.js | 39 + src/miniprogram_npm/miniprogram-licia/random.js | 18 + .../miniprogram-licia/randomBytes.js | 26 + .../miniprogram-licia/randomColor.js | 60 + src/miniprogram_npm/miniprogram-licia/randomId.js | 20 + .../miniprogram-licia/randomItem.js | 6 + src/miniprogram_npm/miniprogram-licia/range.js | 13 + src/miniprogram_npm/miniprogram-licia/rc4.js | 46 + src/miniprogram_npm/miniprogram-licia/reduce.js | 38 + .../miniprogram-licia/reduceRight.js | 4 + src/miniprogram_npm/miniprogram-licia/reject.js | 9 + src/miniprogram_npm/miniprogram-licia/remove.js | 18 + src/miniprogram_npm/miniprogram-licia/repeat.js | 12 + .../miniprogram-licia/replaceAll.js | 6 + src/miniprogram_npm/miniprogram-licia/restArgs.js | 24 + src/miniprogram_npm/miniprogram-licia/reverse.js | 11 + src/miniprogram_npm/miniprogram-licia/rgbToHsl.js | 37 + src/miniprogram_npm/miniprogram-licia/root.js | 4 + src/miniprogram_npm/miniprogram-licia/rpad.js | 11 + src/miniprogram_npm/miniprogram-licia/rtrim.js | 28 + src/miniprogram_npm/miniprogram-licia/safeCb.js | 15 + src/miniprogram_npm/miniprogram-licia/safeDel.js | 16 + src/miniprogram_npm/miniprogram-licia/safeGet.js | 15 + src/miniprogram_npm/miniprogram-licia/safeSet.js | 29 + .../miniprogram-licia/sameOrigin.js | 14 + src/miniprogram_npm/miniprogram-licia/sample.js | 18 + .../miniprogram-licia/seedRandom.js | 18 + .../miniprogram-licia/selectionSort.js | 23 + src/miniprogram_npm/miniprogram-licia/selector.js | 137 + src/miniprogram_npm/miniprogram-licia/shebang.js | 9 + src/miniprogram_npm/miniprogram-licia/shellSort.js | 25 + src/miniprogram_npm/miniprogram-licia/shuffle.js | 6 + src/miniprogram_npm/miniprogram-licia/size.js | 7 + src/miniprogram_npm/miniprogram-licia/sizeof.js | 47 + src/miniprogram_npm/miniprogram-licia/sleep.js | 7 + src/miniprogram_npm/miniprogram-licia/slice.js | 22 + src/miniprogram_npm/miniprogram-licia/slugify.js | 27 + src/miniprogram_npm/miniprogram-licia/snakeCase.js | 6 + src/miniprogram_npm/miniprogram-licia/some.js | 15 + src/miniprogram_npm/miniprogram-licia/sortBy.js | 28 + src/miniprogram_npm/miniprogram-licia/sortKeys.js | 56 + src/miniprogram_npm/miniprogram-licia/spaceCase.js | 6 + src/miniprogram_npm/miniprogram-licia/splitCase.js | 13 + src/miniprogram_npm/miniprogram-licia/splitPath.js | 11 + src/miniprogram_npm/miniprogram-licia/startWith.js | 5 + src/miniprogram_npm/miniprogram-licia/strHash.js | 10 + .../miniprogram-licia/strToBytes.js | 21 + src/miniprogram_npm/miniprogram-licia/strTpl.js | 10 + src/miniprogram_npm/miniprogram-licia/strWidth.js | 17 + src/miniprogram_npm/miniprogram-licia/stringify.js | 44 + .../miniprogram-licia/stringifyAll.js | 403 ++ src/miniprogram_npm/miniprogram-licia/stripAnsi.js | 6 + src/miniprogram_npm/miniprogram-licia/stripBom.js | 8 + src/miniprogram_npm/miniprogram-licia/stripCmt.js | 56 + .../miniprogram-licia/stripColor.js | 6 + .../miniprogram-licia/stripHtmlTag.js | 6 + .../miniprogram-licia/stripIndent.js | 40 + src/miniprogram_npm/miniprogram-licia/stripNum.js | 7 + src/miniprogram_npm/miniprogram-licia/sum.js | 8 + src/miniprogram_npm/miniprogram-licia/swap.js | 8 + src/miniprogram_npm/miniprogram-licia/table.js | 118 + src/miniprogram_npm/miniprogram-licia/throttle.js | 6 + src/miniprogram_npm/miniprogram-licia/timeAgo.js | 42 + src/miniprogram_npm/miniprogram-licia/timeTaken.js | 8 + src/miniprogram_npm/miniprogram-licia/times.js | 11 + src/miniprogram_npm/miniprogram-licia/toArr.js | 12 + src/miniprogram_npm/miniprogram-licia/toAsync.js | 52 + src/miniprogram_npm/miniprogram-licia/toBool.js | 10 + src/miniprogram_npm/miniprogram-licia/toDate.js | 14 + src/miniprogram_npm/miniprogram-licia/toInt.js | 8 + src/miniprogram_npm/miniprogram-licia/toNum.js | 15 + src/miniprogram_npm/miniprogram-licia/toSrc.js | 14 + src/miniprogram_npm/miniprogram-licia/toStr.js | 5 + src/miniprogram_npm/miniprogram-licia/topoSort.js | 43 + src/miniprogram_npm/miniprogram-licia/trim.js | 10 + src/miniprogram_npm/miniprogram-licia/truncate.js | 27 + src/miniprogram_npm/miniprogram-licia/tryIt.js | 12 + src/miniprogram_npm/miniprogram-licia/type.js | 24 + src/miniprogram_npm/miniprogram-licia/types.js | 3 + src/miniprogram_npm/miniprogram-licia/ucs2.js | 37 + src/miniprogram_npm/miniprogram-licia/unescape.js | 15 + src/miniprogram_npm/miniprogram-licia/union.js | 8 + src/miniprogram_npm/miniprogram-licia/uniqId.js | 7 + src/miniprogram_npm/miniprogram-licia/unique.js | 16 + .../miniprogram-licia/universalify.js | 31 + src/miniprogram_npm/miniprogram-licia/unzip.js | 18 + src/miniprogram_npm/miniprogram-licia/upperCase.js | 6 + .../miniprogram-licia/upperFirst.js | 6 + src/miniprogram_npm/miniprogram-licia/use.js | 29 + src/miniprogram_npm/miniprogram-licia/utf8.js | 127 + src/miniprogram_npm/miniprogram-licia/uuid.js | 34 + src/miniprogram_npm/miniprogram-licia/values.js | 10 + src/miniprogram_npm/miniprogram-licia/vlq.js | 69 + src/miniprogram_npm/miniprogram-licia/waitUntil.js | 36 + src/miniprogram_npm/miniprogram-licia/waterfall.js | 27 + src/miniprogram_npm/miniprogram-licia/wordWrap.js | 49 + .../miniprogram-licia/wordsToBytes.js | 9 + src/miniprogram_npm/miniprogram-licia/wrap.js | 6 + src/miniprogram_npm/miniprogram-licia/wx.js | 69 + src/miniprogram_npm/miniprogram-licia/zip.js | 5 + src/miniprogram_npm/mp-html/index.js | 8 + src/miniprogram_npm/mp-html/index.json | 1 + src/miniprogram_npm/mp-html/index.wxml | 1 + src/miniprogram_npm/mp-html/index.wxss | 1 + src/miniprogram_npm/mp-html/node/node.js | 1 + src/miniprogram_npm/mp-html/node/node.json | 1 + src/miniprogram_npm/mp-html/node/node.wxml | 1 + src/miniprogram_npm/mp-html/node/node.wxss | 1 + src/miniprogram_npm/mp-html/parser.js | 1 + src/pages/article/index.json | 10 + src/pages/article/index.scss | 257 + src/pages/article/index.ts | 349 + src/pages/article/index.wxml | 125 + src/pages/classify/index.json | 8 + src/pages/classify/index.scss | 137 + src/pages/classify/index.ts | 200 + src/pages/classify/index.wxml | 102 + src/pages/collection/index.json | 7 + src/pages/collection/index.scss | 60 + src/pages/collection/index.ts | 94 + src/pages/collection/index.wxml | 40 + src/pages/home/index.json | 5 + src/pages/home/index.scss | 219 + src/pages/home/index.ts | 136 + src/pages/home/index.wxml | 79 + src/pages/login/index.json | 7 + src/pages/login/index.scss | 143 + src/pages/login/index.ts | 170 + src/pages/login/index.wxml | 73 + src/pages/longPicture/index.json | 5 + src/pages/longPicture/index.scss | 3 + src/pages/longPicture/index.ts | 17 + src/pages/longPicture/index.wxml | 1 + src/pages/my/index.json | 7 + src/pages/my/index.scss | 90 + src/pages/my/index.ts | 93 + src/pages/my/index.wxml | 50 + src/pages/protocol/index.json | 7 + src/pages/protocol/index.scss | 3 + src/pages/protocol/index.ts | 10 + src/pages/protocol/index.wxml | 3 + src/pages/search/index.json | 7 + src/pages/search/index.scss | 106 + src/pages/search/index.ts | 78 + src/pages/search/index.wxml | 58 + src/pages/switchLogin/index.json | 6 + src/pages/switchLogin/index.scss | 161 + src/pages/switchLogin/index.ts | 95 + src/pages/switchLogin/index.wxml | 35 + src/pages/topic/index.json | 8 + src/pages/topic/index.scss | 219 + src/pages/topic/index.ts | 146 + src/pages/topic/index.wxml | 100 + src/pages/userInfo/index.json | 7 + src/pages/userInfo/index.scss | 56 + src/pages/userInfo/index.ts | 59 + src/pages/userInfo/index.wxml | 42 + src/sitemap.json | 7 + src/utils/component.ts | 58 + src/utils/crypto.ts | 34 + src/utils/dayjs/day-zh-cn.js | 2 + src/utils/dayjs/relativeTime.d.ts | 24 + src/utils/dayjs/relativeTime.js | 1 + src/utils/page.ts | 63 + src/utils/request.ts | 71 + src/utils/util.ts | 64 + src/utils/util.wxs | 12 + tsconfig.json | 30 + typings/index.d.ts | 70 + 982 files changed, 39965 insertions(+) create mode 100644 .editorconfig create mode 100644 .gitignore create mode 100644 .neoconf.json create mode 100644 .prettierrc create mode 100644 .vscode/settings.json create mode 100644 2024-10-31.md create mode 100644 README.md create mode 100644 dist.nu create mode 100644 dist.ps1 create mode 100644 dist.sh create mode 100644 eslint.config.mjs create mode 100644 index.d.ts create mode 100644 keymap.json create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 project.config.json create mode 100644 project.private.config.json create mode 100644 src/app.json create mode 100644 src/app.scss create mode 100644 src/app.ts create mode 100644 src/components/global-toast/index.json create mode 100644 src/components/global-toast/index.scss create mode 100644 src/components/global-toast/index.ts create mode 100644 src/components/global-toast/index.wxml create mode 100644 src/components/pagination/index.js create mode 100644 src/components/pagination/index.json create mode 100644 src/components/pagination/index.scss create mode 100644 src/components/pagination/index.wxml create mode 100644 src/components/uploadFile/index.json create mode 100644 src/components/uploadFile/index.scss create mode 100644 src/components/uploadFile/index.ts create mode 100644 src/components/uploadFile/index.wxml create mode 100644 src/custom-tab-bar/index.json create mode 100644 src/custom-tab-bar/index.scss create mode 100644 src/custom-tab-bar/index.ts create mode 100644 src/custom-tab-bar/index.wxml create mode 100644 src/images/badge.png create mode 100644 src/images/empty-1.png create mode 100644 src/images/empty-search.png create mode 100644 src/images/fold-up.png create mode 100644 src/images/home-bg.png create mode 100644 src/images/home-card-bg.png create mode 100644 src/images/home-logo.png create mode 100644 src/images/home-title.png create mode 100644 src/images/icon-close.png create mode 100644 src/images/icon-collection-active.png create mode 100644 src/images/icon-collection.png create mode 100644 src/images/icon-collection1.png create mode 100644 src/images/icon-directory.png create mode 100644 src/images/icon-edit.png create mode 100644 src/images/icon-eye.png create mode 100644 src/images/icon-phone.png create mode 100644 src/images/icon-pic.png create mode 100644 src/images/icon-play.png create mode 100644 src/images/icon-prev.png create mode 100644 src/images/icon-search.png create mode 100644 src/images/icon-stop.png create mode 100644 src/images/item-tip-close.png create mode 100644 src/images/login-bg.png create mode 100644 src/images/login-popup-badge.png create mode 100644 src/images/login-popup-title.png create mode 100644 src/images/mpPic.jpg create mode 100644 src/images/my-list-icon1.png create mode 100644 src/images/my-list-icon2.png create mode 100644 src/images/my-list-icon3.png create mode 100644 src/images/my-list-icon4.png create mode 100644 src/images/none.png create mode 100644 src/images/place.png create mode 100644 src/images/popup1-bg.png create mode 100644 src/images/qyPic.jpg create mode 100644 src/images/relove.png create mode 100644 src/images/slogan-bg.png create mode 100644 src/images/tabbar/tab-active1.png create mode 100644 src/images/tabbar/tab-active2.png create mode 100644 src/images/tabbar/tab1.png create mode 100644 src/images/tabbar/tab2.png create mode 100644 src/images/topic-bg.png create mode 100644 src/images/topic-card-bg.png create mode 100644 src/images/topic-end-bg.png create mode 100644 src/images/topic-start-badge.png create mode 100644 src/images/topic-start-code1.png create mode 100644 src/images/topic-start-code2.png create mode 100644 src/images/topic-start.png create mode 100644 src/images/user.png create mode 100644 src/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/action-sheet/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/action-sheet/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/action-sheet/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/action-sheet/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/area/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/area/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/area/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/area/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/area/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/area/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/button/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/button/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/button/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/button/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/button/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/button/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/calendar.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/header/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/header/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/month/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/month/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/utils.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/utils.js create mode 100644 src/miniprogram_npm/@vant/weapp/calendar/utils.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/card/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/card/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/card/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/card/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/card/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/cascader/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/cascader/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/cascader/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/cascader/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/cascader/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/cascader/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/cell-group/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/cell-group/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/cell-group/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/cell-group/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/cell-group/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/cell/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/cell/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/cell/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/cell/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/cell/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/cell/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox-group/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox-group/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/checkbox/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/circle/canvas.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/circle/canvas.js create mode 100644 src/miniprogram_npm/@vant/weapp/circle/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/circle/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/circle/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/circle/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/circle/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/col/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/col/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/col/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/col/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/col/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/col/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/animate.js create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/collapse-item/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/collapse/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/collapse/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/collapse/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/collapse/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/collapse/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/color.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/common/color.js create mode 100644 src/miniprogram_npm/@vant/weapp/common/component.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/common/component.js create mode 100644 src/miniprogram_npm/@vant/weapp/common/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/relation.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/common/relation.js create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/hairline.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/style/var.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/common/utils.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/common/utils.js create mode 100644 src/miniprogram_npm/@vant/weapp/common/validator.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/common/validator.js create mode 100644 src/miniprogram_npm/@vant/weapp/common/version.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/common/version.js create mode 100644 src/miniprogram_npm/@vant/weapp/config-provider/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/config-provider/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/config-provider/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/config-provider/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/config-provider/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/utils.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/count-down/utils.js create mode 100644 src/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/datetime-picker/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/datetime-picker/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/definitions/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/definitions/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/dialog.js create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/dialog/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/divider/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/divider/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/divider/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/divider/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/divider/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/divider/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-item/shared.js create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-menu/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-menu/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/empty/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/empty/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/empty/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/empty/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/empty/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/empty/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/field/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/field/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/field/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/field/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/field/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/field/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/field/input.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/field/props.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/field/props.js create mode 100644 src/miniprogram_npm/@vant/weapp/field/textarea.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/field/types.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/field/types.js create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-button/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-button/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-icon/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-icon/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/goods-action/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/grid-item/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/grid-item/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/grid-item/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/grid-item/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/grid-item/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/grid-item/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/grid/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/grid/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/grid/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/grid/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/grid/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/grid/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/icon/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/icon/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/icon/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/icon/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/icon/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/icon/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/image/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/image/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/image/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/image/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/image/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/image/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/index-anchor/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/index-anchor/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/index-anchor/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/index-anchor/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/index-bar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/index-bar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/index-bar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/index-bar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/index-bar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/info/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/info/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/info/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/info/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/info/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/loading/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/loading/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/loading/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/loading/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/loading/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/loading/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/basic.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/basic.js create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/button.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/button.js create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/link.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/link.js create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/page-scroll.js create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/touch.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/touch.js create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/transition.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/mixins/transition.js create mode 100644 src/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/nav-bar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/nav-bar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/nav-bar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/nav-bar/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/nav-bar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/notice-bar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/notice-bar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/notice-bar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/notice-bar/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/notice-bar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/notify/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/notify/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/notify/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/notify/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/notify/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/notify/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/notify/notify.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/notify/notify.js create mode 100644 src/miniprogram_npm/@vant/weapp/overlay/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/overlay/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/overlay/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/overlay/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/overlay/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/overlay/overlay.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/panel/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/panel/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/panel/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/panel/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/panel/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/picker-column/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/picker-column/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/picker-column/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/picker-column/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/picker-column/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/picker-column/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/picker/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/picker/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/picker/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/picker/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/picker/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/picker/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/picker/shared.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/picker/shared.js create mode 100644 src/miniprogram_npm/@vant/weapp/picker/toolbar.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/popup/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/popup/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/popup/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/popup/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/popup/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/popup/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/popup/popup.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/progress/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/progress/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/progress/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/progress/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/progress/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/progress/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/radio-group/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/radio-group/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/radio-group/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/radio-group/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/radio-group/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/radio/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/radio/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/radio/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/radio/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/radio/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/radio/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/rate/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/rate/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/rate/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/rate/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/rate/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/row/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/row/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/row/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/row/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/row/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/row/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/search/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/search/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/search/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/search/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/search/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/options.js create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/options.json create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/options.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/options.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/share-sheet/options.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar-item/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar-item/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/sidebar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/skeleton/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/skeleton/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/skeleton/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/skeleton/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/skeleton/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/slider/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/slider/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/slider/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/slider/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/slider/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/slider/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/stepper/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/stepper/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/stepper/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/stepper/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/stepper/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/stepper/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/steps/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/steps/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/steps/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/steps/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/steps/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/sticky/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/sticky/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/sticky/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/sticky/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/sticky/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/sticky/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/submit-bar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/submit-bar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/submit-bar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/submit-bar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/swipe-cell/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/swipe-cell/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/switch/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/switch/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/switch/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/switch/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/switch/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/switch/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/tab/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/tab/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/tab/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/tab/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/tab/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar-item/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar-item/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/tabbar/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/tabs/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/tabs/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/tabs/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/tabs/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/tabs/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/tabs/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/tag/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/tag/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/tag/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/tag/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/tag/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/tag/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/toast/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/toast/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/toast/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/toast/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/toast/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/toast/toast.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/toast/toast.js create mode 100644 src/miniprogram_npm/@vant/weapp/transition/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/transition/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/transition/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/transition/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/transition/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/transition/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/tree-select/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/tree-select/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/tree-select/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/tree-select/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/tree-select/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/tree-select/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/index.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/index.js create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/index.json create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/index.wxml create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/index.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/index.wxss create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/shared.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/shared.js create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/utils.d.ts create mode 100644 src/miniprogram_npm/@vant/weapp/uploader/utils.js create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/array.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/bem.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/memoize.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/object.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/style.wxs create mode 100644 src/miniprogram_npm/@vant/weapp/wxs/utils.wxs create mode 100644 src/miniprogram_npm/crypto-js/index.js create mode 100644 src/miniprogram_npm/dayjs/index.js create mode 100644 src/miniprogram_npm/dayjs/index.js.map create mode 100644 src/miniprogram_npm/miniprogram-licia/Benchmark.js create mode 100644 src/miniprogram_npm/miniprogram-licia/BloomFilter.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Caseless.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Channel.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Class.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Color.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Delegator.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Dispatcher.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Emitter.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Enum.js create mode 100644 src/miniprogram_npm/miniprogram-licia/HashTable.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Heap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/HeapSnapshot.js create mode 100644 src/miniprogram_npm/miniprogram-licia/I18n.js create mode 100644 src/miniprogram_npm/miniprogram-licia/JsonTransformer.js create mode 100644 src/miniprogram_npm/miniprogram-licia/LinkedList.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Logger.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Lru.js create mode 100644 src/miniprogram_npm/miniprogram-licia/PriorityQueue.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Promise.js create mode 100644 src/miniprogram_npm/miniprogram-licia/PseudoMap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Queue.js create mode 100644 src/miniprogram_npm/miniprogram-licia/QuickLru.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Readiness.js create mode 100644 src/miniprogram_npm/miniprogram-licia/ReduceStore.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Semaphore.js create mode 100644 src/miniprogram_npm/miniprogram-licia/SingleEmitter.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Stack.js create mode 100644 src/miniprogram_npm/miniprogram-licia/State.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Store.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Trace.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Tracing.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Trie.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Tween.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Url.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Validator.js create mode 100644 src/miniprogram_npm/miniprogram-licia/Wrr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/abbrev.js create mode 100644 src/miniprogram_npm/miniprogram-licia/after.js create mode 100644 src/miniprogram_npm/miniprogram-licia/allKeys.js create mode 100644 src/miniprogram_npm/miniprogram-licia/arrToMap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/atob.js create mode 100644 src/miniprogram_npm/miniprogram-licia/average.js create mode 100644 src/miniprogram_npm/miniprogram-licia/base64.js create mode 100644 src/miniprogram_npm/miniprogram-licia/before.js create mode 100644 src/miniprogram_npm/miniprogram-licia/binarySearch.js create mode 100644 src/miniprogram_npm/miniprogram-licia/bind.js create mode 100644 src/miniprogram_npm/miniprogram-licia/btoa.js create mode 100644 src/miniprogram_npm/miniprogram-licia/bubbleSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/bytesToStr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/bytesToWords.js create mode 100644 src/miniprogram_npm/miniprogram-licia/callbackify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/camelCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/capitalize.js create mode 100644 src/miniprogram_npm/miniprogram-licia/castPath.js create mode 100644 src/miniprogram_npm/miniprogram-licia/centerAlign.js create mode 100644 src/miniprogram_npm/miniprogram-licia/char.js create mode 100644 src/miniprogram_npm/miniprogram-licia/chunk.js create mode 100644 src/miniprogram_npm/miniprogram-licia/clamp.js create mode 100644 src/miniprogram_npm/miniprogram-licia/className.js create mode 100644 src/miniprogram_npm/miniprogram-licia/clone.js create mode 100644 src/miniprogram_npm/miniprogram-licia/cloneDeep.js create mode 100644 src/miniprogram_npm/miniprogram-licia/cmpVersion.js create mode 100644 src/miniprogram_npm/miniprogram-licia/combine.js create mode 100644 src/miniprogram_npm/miniprogram-licia/compact.js create mode 100644 src/miniprogram_npm/miniprogram-licia/compose.js create mode 100644 src/miniprogram_npm/miniprogram-licia/concat.js create mode 100644 src/miniprogram_npm/miniprogram-licia/contain.js create mode 100644 src/miniprogram_npm/miniprogram-licia/convertBase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/convertBin.js create mode 100644 src/miniprogram_npm/miniprogram-licia/crc1.js create mode 100644 src/miniprogram_npm/miniprogram-licia/crc16.js create mode 100644 src/miniprogram_npm/miniprogram-licia/crc32.js create mode 100644 src/miniprogram_npm/miniprogram-licia/crc8.js create mode 100644 src/miniprogram_npm/miniprogram-licia/create.js create mode 100644 src/miniprogram_npm/miniprogram-licia/createAssigner.js create mode 100644 src/miniprogram_npm/miniprogram-licia/css.js create mode 100644 src/miniprogram_npm/miniprogram-licia/cssPriority.js create mode 100644 src/miniprogram_npm/miniprogram-licia/curry.js create mode 100644 src/miniprogram_npm/miniprogram-licia/dataUrl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/dateFormat.js create mode 100644 src/miniprogram_npm/miniprogram-licia/debounce.js create mode 100644 src/miniprogram_npm/miniprogram-licia/deburr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/decodeUriComponent.js create mode 100644 src/miniprogram_npm/miniprogram-licia/defaults.js create mode 100644 src/miniprogram_npm/miniprogram-licia/define.js create mode 100644 src/miniprogram_npm/miniprogram-licia/defineProp.js create mode 100644 src/miniprogram_npm/miniprogram-licia/defined.js create mode 100644 src/miniprogram_npm/miniprogram-licia/delay.js create mode 100644 src/miniprogram_npm/miniprogram-licia/deprecate.js create mode 100644 src/miniprogram_npm/miniprogram-licia/detectBrowser.js create mode 100644 src/miniprogram_npm/miniprogram-licia/detectMocha.js create mode 100644 src/miniprogram_npm/miniprogram-licia/detectOs.js create mode 100644 src/miniprogram_npm/miniprogram-licia/difference.js create mode 100644 src/miniprogram_npm/miniprogram-licia/dotCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/durationFormat.js create mode 100644 src/miniprogram_npm/miniprogram-licia/each.js create mode 100644 src/miniprogram_npm/miniprogram-licia/easing.js create mode 100644 src/miniprogram_npm/miniprogram-licia/endWith.js create mode 100644 src/miniprogram_npm/miniprogram-licia/escape.js create mode 100644 src/miniprogram_npm/miniprogram-licia/escapeJsStr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/escapeRegExp.js create mode 100644 src/miniprogram_npm/miniprogram-licia/every.js create mode 100644 src/miniprogram_npm/miniprogram-licia/extend.js create mode 100644 src/miniprogram_npm/miniprogram-licia/extendDeep.js create mode 100644 src/miniprogram_npm/miniprogram-licia/extendOwn.js create mode 100644 src/miniprogram_npm/miniprogram-licia/extractBlockCmts.js create mode 100644 src/miniprogram_npm/miniprogram-licia/extractUrls.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fibonacci.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fileSize.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fileType.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fileUrl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fill.js create mode 100644 src/miniprogram_npm/miniprogram-licia/filter.js create mode 100644 src/miniprogram_npm/miniprogram-licia/find.js create mode 100644 src/miniprogram_npm/miniprogram-licia/findIdx.js create mode 100644 src/miniprogram_npm/miniprogram-licia/findKey.js create mode 100644 src/miniprogram_npm/miniprogram-licia/findLastIdx.js create mode 100644 src/miniprogram_npm/miniprogram-licia/flatten.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fnArgs.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fnParams.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fnv1a.js create mode 100644 src/miniprogram_npm/miniprogram-licia/format.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fraction.js create mode 100644 src/miniprogram_npm/miniprogram-licia/freeze.js create mode 100644 src/miniprogram_npm/miniprogram-licia/freezeDeep.js create mode 100644 src/miniprogram_npm/miniprogram-licia/fuzzySearch.js create mode 100644 src/miniprogram_npm/miniprogram-licia/gcd.js create mode 100644 src/miniprogram_npm/miniprogram-licia/getProto.js create mode 100644 src/miniprogram_npm/miniprogram-licia/getUrlParam.js create mode 100644 src/miniprogram_npm/miniprogram-licia/golangify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/has.js create mode 100644 src/miniprogram_npm/miniprogram-licia/heapSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/hex.js create mode 100644 src/miniprogram_npm/miniprogram-licia/highlight.js create mode 100644 src/miniprogram_npm/miniprogram-licia/hookFn.js create mode 100644 src/miniprogram_npm/miniprogram-licia/hslToRgb.js create mode 100644 src/miniprogram_npm/miniprogram-licia/html.js create mode 100644 src/miniprogram_npm/miniprogram-licia/identity.js create mode 100644 src/miniprogram_npm/miniprogram-licia/idxOf.js create mode 100644 src/miniprogram_npm/miniprogram-licia/indent.js create mode 100644 src/miniprogram_npm/miniprogram-licia/index.js create mode 100644 src/miniprogram_npm/miniprogram-licia/inherits.js create mode 100644 src/miniprogram_npm/miniprogram-licia/ini.js create mode 100644 src/miniprogram_npm/miniprogram-licia/insertionSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/intersect.js create mode 100644 src/miniprogram_npm/miniprogram-licia/intersectRange.js create mode 100644 src/miniprogram_npm/miniprogram-licia/invariant.js create mode 100644 src/miniprogram_npm/miniprogram-licia/invert.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isAbsoluteUrl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isArgs.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isArr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isArrBuffer.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isArrLike.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isAsyncFn.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isBool.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isBrowser.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isBuffer.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isClose.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isCyclic.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isDataUrl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isDate.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isEmail.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isEmpty.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isEqual.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isErr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isEven.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isFinite.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isFn.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isFullWidth.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isGeneratorFn.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isInt.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isIp.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isJson.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isLeapYear.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isMac.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isMap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isMatch.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isMiniProgram.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isMobile.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNaN.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNative.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNil.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNode.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNull.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNum.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isNumeric.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isObj.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isOdd.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isPlainObj.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isPrime.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isPrimitive.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isPromise.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isRegExp.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isRelative.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isSet.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isSorted.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isStr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isStrBlank.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isSymbol.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isTypedArr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isUndef.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isUrl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isWeakMap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isWeakSet.js create mode 100644 src/miniprogram_npm/miniprogram-licia/isWindows.js create mode 100644 src/miniprogram_npm/miniprogram-licia/jsonClone.js create mode 100644 src/miniprogram_npm/miniprogram-licia/kebabCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/keyCode.js create mode 100644 src/miniprogram_npm/miniprogram-licia/keys.js create mode 100644 src/miniprogram_npm/miniprogram-licia/last.js create mode 100644 src/miniprogram_npm/miniprogram-licia/levenshtein.js create mode 100644 src/miniprogram_npm/miniprogram-licia/linkify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/longest.js create mode 100644 src/miniprogram_npm/miniprogram-licia/lowerCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/lpad.js create mode 100644 src/miniprogram_npm/miniprogram-licia/ltrim.js create mode 100644 src/miniprogram_npm/miniprogram-licia/map.js create mode 100644 src/miniprogram_npm/miniprogram-licia/mapObj.js create mode 100644 src/miniprogram_npm/miniprogram-licia/matcher.js create mode 100644 src/miniprogram_npm/miniprogram-licia/max.js create mode 100644 src/miniprogram_npm/miniprogram-licia/md5.js create mode 100644 src/miniprogram_npm/miniprogram-licia/memStorage.js create mode 100644 src/miniprogram_npm/miniprogram-licia/memoize.js create mode 100644 src/miniprogram_npm/miniprogram-licia/mergeArr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/mergeSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/methods.js create mode 100644 src/miniprogram_npm/miniprogram-licia/mime.js create mode 100644 src/miniprogram_npm/miniprogram-licia/min.js create mode 100644 src/miniprogram_npm/miniprogram-licia/moment.js create mode 100644 src/miniprogram_npm/miniprogram-licia/morse.js create mode 100644 src/miniprogram_npm/miniprogram-licia/ms.js create mode 100644 src/miniprogram_npm/miniprogram-licia/naturalSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/negate.js create mode 100644 src/miniprogram_npm/miniprogram-licia/nextTick.js create mode 100644 src/miniprogram_npm/miniprogram-licia/noop.js create mode 100644 src/miniprogram_npm/miniprogram-licia/normalizeHeader.js create mode 100644 src/miniprogram_npm/miniprogram-licia/normalizePath.js create mode 100644 src/miniprogram_npm/miniprogram-licia/normalizePhone.js create mode 100644 src/miniprogram_npm/miniprogram-licia/now.js create mode 100644 src/miniprogram_npm/miniprogram-licia/objToStr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/omit.js create mode 100644 src/miniprogram_npm/miniprogram-licia/once.js create mode 100644 src/miniprogram_npm/miniprogram-licia/optimizeCb.js create mode 100644 src/miniprogram_npm/miniprogram-licia/ordinal.js create mode 100644 src/miniprogram_npm/miniprogram-licia/pad.js create mode 100644 src/miniprogram_npm/miniprogram-licia/pairs.js create mode 100644 src/miniprogram_npm/miniprogram-licia/parallel.js create mode 100644 src/miniprogram_npm/miniprogram-licia/parseArgs.js create mode 100644 src/miniprogram_npm/miniprogram-licia/parseHtml.js create mode 100644 src/miniprogram_npm/miniprogram-licia/partial.js create mode 100644 src/miniprogram_npm/miniprogram-licia/pascalCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/perfNow.js create mode 100644 src/miniprogram_npm/miniprogram-licia/pick.js create mode 100644 src/miniprogram_npm/miniprogram-licia/pluck.js create mode 100644 src/miniprogram_npm/miniprogram-licia/precision.js create mode 100644 src/miniprogram_npm/miniprogram-licia/promisify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/property.js create mode 100644 src/miniprogram_npm/miniprogram-licia/query.js create mode 100644 src/miniprogram_npm/miniprogram-licia/quickSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/raf.js create mode 100644 src/miniprogram_npm/miniprogram-licia/random.js create mode 100644 src/miniprogram_npm/miniprogram-licia/randomBytes.js create mode 100644 src/miniprogram_npm/miniprogram-licia/randomColor.js create mode 100644 src/miniprogram_npm/miniprogram-licia/randomId.js create mode 100644 src/miniprogram_npm/miniprogram-licia/randomItem.js create mode 100644 src/miniprogram_npm/miniprogram-licia/range.js create mode 100644 src/miniprogram_npm/miniprogram-licia/rc4.js create mode 100644 src/miniprogram_npm/miniprogram-licia/reduce.js create mode 100644 src/miniprogram_npm/miniprogram-licia/reduceRight.js create mode 100644 src/miniprogram_npm/miniprogram-licia/reject.js create mode 100644 src/miniprogram_npm/miniprogram-licia/remove.js create mode 100644 src/miniprogram_npm/miniprogram-licia/repeat.js create mode 100644 src/miniprogram_npm/miniprogram-licia/replaceAll.js create mode 100644 src/miniprogram_npm/miniprogram-licia/restArgs.js create mode 100644 src/miniprogram_npm/miniprogram-licia/reverse.js create mode 100644 src/miniprogram_npm/miniprogram-licia/rgbToHsl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/root.js create mode 100644 src/miniprogram_npm/miniprogram-licia/rpad.js create mode 100644 src/miniprogram_npm/miniprogram-licia/rtrim.js create mode 100644 src/miniprogram_npm/miniprogram-licia/safeCb.js create mode 100644 src/miniprogram_npm/miniprogram-licia/safeDel.js create mode 100644 src/miniprogram_npm/miniprogram-licia/safeGet.js create mode 100644 src/miniprogram_npm/miniprogram-licia/safeSet.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sameOrigin.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sample.js create mode 100644 src/miniprogram_npm/miniprogram-licia/seedRandom.js create mode 100644 src/miniprogram_npm/miniprogram-licia/selectionSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/selector.js create mode 100644 src/miniprogram_npm/miniprogram-licia/shebang.js create mode 100644 src/miniprogram_npm/miniprogram-licia/shellSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/shuffle.js create mode 100644 src/miniprogram_npm/miniprogram-licia/size.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sizeof.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sleep.js create mode 100644 src/miniprogram_npm/miniprogram-licia/slice.js create mode 100644 src/miniprogram_npm/miniprogram-licia/slugify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/snakeCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/some.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sortBy.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sortKeys.js create mode 100644 src/miniprogram_npm/miniprogram-licia/spaceCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/splitCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/splitPath.js create mode 100644 src/miniprogram_npm/miniprogram-licia/startWith.js create mode 100644 src/miniprogram_npm/miniprogram-licia/strHash.js create mode 100644 src/miniprogram_npm/miniprogram-licia/strToBytes.js create mode 100644 src/miniprogram_npm/miniprogram-licia/strTpl.js create mode 100644 src/miniprogram_npm/miniprogram-licia/strWidth.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stringify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stringifyAll.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripAnsi.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripBom.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripCmt.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripColor.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripHtmlTag.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripIndent.js create mode 100644 src/miniprogram_npm/miniprogram-licia/stripNum.js create mode 100644 src/miniprogram_npm/miniprogram-licia/sum.js create mode 100644 src/miniprogram_npm/miniprogram-licia/swap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/table.js create mode 100644 src/miniprogram_npm/miniprogram-licia/throttle.js create mode 100644 src/miniprogram_npm/miniprogram-licia/timeAgo.js create mode 100644 src/miniprogram_npm/miniprogram-licia/timeTaken.js create mode 100644 src/miniprogram_npm/miniprogram-licia/times.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toArr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toAsync.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toBool.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toDate.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toInt.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toNum.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toSrc.js create mode 100644 src/miniprogram_npm/miniprogram-licia/toStr.js create mode 100644 src/miniprogram_npm/miniprogram-licia/topoSort.js create mode 100644 src/miniprogram_npm/miniprogram-licia/trim.js create mode 100644 src/miniprogram_npm/miniprogram-licia/truncate.js create mode 100644 src/miniprogram_npm/miniprogram-licia/tryIt.js create mode 100644 src/miniprogram_npm/miniprogram-licia/type.js create mode 100644 src/miniprogram_npm/miniprogram-licia/types.js create mode 100644 src/miniprogram_npm/miniprogram-licia/ucs2.js create mode 100644 src/miniprogram_npm/miniprogram-licia/unescape.js create mode 100644 src/miniprogram_npm/miniprogram-licia/union.js create mode 100644 src/miniprogram_npm/miniprogram-licia/uniqId.js create mode 100644 src/miniprogram_npm/miniprogram-licia/unique.js create mode 100644 src/miniprogram_npm/miniprogram-licia/universalify.js create mode 100644 src/miniprogram_npm/miniprogram-licia/unzip.js create mode 100644 src/miniprogram_npm/miniprogram-licia/upperCase.js create mode 100644 src/miniprogram_npm/miniprogram-licia/upperFirst.js create mode 100644 src/miniprogram_npm/miniprogram-licia/use.js create mode 100644 src/miniprogram_npm/miniprogram-licia/utf8.js create mode 100644 src/miniprogram_npm/miniprogram-licia/uuid.js create mode 100644 src/miniprogram_npm/miniprogram-licia/values.js create mode 100644 src/miniprogram_npm/miniprogram-licia/vlq.js create mode 100644 src/miniprogram_npm/miniprogram-licia/waitUntil.js create mode 100644 src/miniprogram_npm/miniprogram-licia/waterfall.js create mode 100644 src/miniprogram_npm/miniprogram-licia/wordWrap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/wordsToBytes.js create mode 100644 src/miniprogram_npm/miniprogram-licia/wrap.js create mode 100644 src/miniprogram_npm/miniprogram-licia/wx.js create mode 100644 src/miniprogram_npm/miniprogram-licia/zip.js create mode 100644 src/miniprogram_npm/mp-html/index.js create mode 100644 src/miniprogram_npm/mp-html/index.json create mode 100644 src/miniprogram_npm/mp-html/index.wxml create mode 100644 src/miniprogram_npm/mp-html/index.wxss create mode 100644 src/miniprogram_npm/mp-html/node/node.js create mode 100644 src/miniprogram_npm/mp-html/node/node.json create mode 100644 src/miniprogram_npm/mp-html/node/node.wxml create mode 100644 src/miniprogram_npm/mp-html/node/node.wxss create mode 100644 src/miniprogram_npm/mp-html/parser.js create mode 100644 src/pages/article/index.json create mode 100644 src/pages/article/index.scss create mode 100644 src/pages/article/index.ts create mode 100644 src/pages/article/index.wxml create mode 100644 src/pages/classify/index.json create mode 100644 src/pages/classify/index.scss create mode 100644 src/pages/classify/index.ts create mode 100644 src/pages/classify/index.wxml create mode 100644 src/pages/collection/index.json create mode 100644 src/pages/collection/index.scss create mode 100644 src/pages/collection/index.ts create mode 100644 src/pages/collection/index.wxml create mode 100644 src/pages/home/index.json create mode 100644 src/pages/home/index.scss create mode 100644 src/pages/home/index.ts create mode 100644 src/pages/home/index.wxml create mode 100644 src/pages/login/index.json create mode 100644 src/pages/login/index.scss create mode 100644 src/pages/login/index.ts create mode 100644 src/pages/login/index.wxml create mode 100644 src/pages/longPicture/index.json create mode 100644 src/pages/longPicture/index.scss create mode 100644 src/pages/longPicture/index.ts create mode 100644 src/pages/longPicture/index.wxml create mode 100644 src/pages/my/index.json create mode 100644 src/pages/my/index.scss create mode 100644 src/pages/my/index.ts create mode 100644 src/pages/my/index.wxml create mode 100644 src/pages/protocol/index.json create mode 100644 src/pages/protocol/index.scss create mode 100644 src/pages/protocol/index.ts create mode 100644 src/pages/protocol/index.wxml create mode 100644 src/pages/search/index.json create mode 100644 src/pages/search/index.scss create mode 100644 src/pages/search/index.ts create mode 100644 src/pages/search/index.wxml create mode 100644 src/pages/switchLogin/index.json create mode 100644 src/pages/switchLogin/index.scss create mode 100644 src/pages/switchLogin/index.ts create mode 100644 src/pages/switchLogin/index.wxml create mode 100644 src/pages/topic/index.json create mode 100644 src/pages/topic/index.scss create mode 100644 src/pages/topic/index.ts create mode 100644 src/pages/topic/index.wxml create mode 100644 src/pages/userInfo/index.json create mode 100644 src/pages/userInfo/index.scss create mode 100644 src/pages/userInfo/index.ts create mode 100644 src/pages/userInfo/index.wxml create mode 100644 src/sitemap.json create mode 100644 src/utils/component.ts create mode 100644 src/utils/crypto.ts create mode 100644 src/utils/dayjs/day-zh-cn.js create mode 100644 src/utils/dayjs/relativeTime.d.ts create mode 100644 src/utils/dayjs/relativeTime.js create mode 100644 src/utils/page.ts create mode 100644 src/utils/request.ts create mode 100644 src/utils/util.ts create mode 100644 src/utils/util.wxs create mode 100644 tsconfig.json create mode 100644 typings/index.d.ts diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..5d47c21 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,12 @@ +# EditorConfig is awesome: https://EditorConfig.org + +# top-most EditorConfig file +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f0f94c2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +node_modules +src/images/.svn +.idea +.DS_Store diff --git a/.neoconf.json b/.neoconf.json new file mode 100644 index 0000000..437bfce --- /dev/null +++ b/.neoconf.json @@ -0,0 +1,10 @@ +{ + "emmet_language_server": { + "init_options": { + "preferences": { + "css.intUnit": "rpx", + "css.floatUnitr": "rpx" + } + } + } +} diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..170b4a2 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,35 @@ +{ + "$schema": "https://json.schemastore.org/prettierrc.json", + "printWidth": 120, + "tabWidth": 2, + "useTabs": false, + "semi": true, + "singleQuote": true, + "bracketSpacing": true, + "trailingComma": "all", + "arrowParens": "always", + "endOfLine": "auto", + "htmlWhitespaceSensitivity": "ignore", + "singleAttributePerLine": false, + "jsxSingleQuote": true, + "overrides": [ + { + "files": "*.wxml", + "options": { + "parser": "html" + } + }, + { + "files": "*.wxss", + "options": { + "parser": "css" + } + }, + { + "files": "*.wxs", + "options": { + "parser": "babel" + } + } + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..7095e9f --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,10 @@ +{ + "path-autocomplete.pathMappings": { + "@": "${folder}/src", + "/": "${folder}/src", + }, + "emmet.preferences": { + "css.intUnit": "rpx", + "css.floatUnit": "rpx" + }, +} diff --git a/2024-10-31.md b/2024-10-31.md new file mode 100644 index 0000000..2b36d96 --- /dev/null +++ b/2024-10-31.md @@ -0,0 +1 @@ +# 2024-10-31 diff --git a/README.md b/README.md new file mode 100644 index 0000000..4b5e8d1 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +1. user 打开小程序进入 身份认证页面 +2. 判断图片是否涂抹 +3. 图像识别模糊 可以反向确认 通过ocr识别接口 接入ocr同时识别不到 姓名,年龄等字样,及判断该病历已被涂抹 + + + +https://pic1.zhimg.com/50/v2-dcfbab1219ae4f7a7a6db168bb1580a2_720w.jpg?source=2c26e567 + +images svn 地址 +svn://39.106.86.127:28386/projects/takeda/proj_src/shop/frontend/web/wt + +(/images/)(\S\*(?=["|'])) +{{imageUrl}}$2?t={{Timestamp}} + +ui问题 + +1. 首页绑定医生弹窗需要重新切图 +2. 播放语音条图片没切 + +showModel颜色统一 + +```ts +wx.showModal({ + confirmColor: '#00B4C5', + cancelColor: '#141515', +}); +``` + +审核账号 +18910233000 1111 diff --git a/dist.nu b/dist.nu new file mode 100644 index 0000000..6d9f8fe --- /dev/null +++ b/dist.nu @@ -0,0 +1,5 @@ +cd ./src/images/; +svn add . --no-ignore --force; +svn ci -m "版本更新"; +cd ..; +cd ..; diff --git a/dist.ps1 b/dist.ps1 new file mode 100644 index 0000000..d75626b --- /dev/null +++ b/dist.ps1 @@ -0,0 +1,8 @@ +# Change to the src/images directory, or exit if the directory doesn't exist +Set-Location -Path ./src/images/ -ErrorAction Stop + +# Add all files to svn, including ignored files and forced additions +svn add . --no-ignore --force + +# Commit the changes with a message +svn ci -m "版本更新" diff --git a/dist.sh b/dist.sh new file mode 100644 index 0000000..c6b3638 --- /dev/null +++ b/dist.sh @@ -0,0 +1,4 @@ +#!/bin/bash +cd ./src/images/ || exit +svn add . --no-ignore --force +svn ci -m "版本更新" diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..e22c302 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,28 @@ +// eslint.config.mjs +import antfu from '@antfu/eslint-config' +import prettierConfig from 'eslint-config-prettier' + +export default antfu( + { + env: { + es6: true, + }, + stylistic: false, + parserOptions: { project: ['./tsconfig.json'] }, + globals: { + wx: true, + App: true, + Page: true, + getCurrentPages: true, + getApp: true, + Component: true, + requirePlugin: true, + requireMiniProgram: true, + }, + rules: { + 'eslint-comments/no-unlimited-disable': 'off', + 'ts/no-require-imports': 'off', + }, + }, + prettierConfig, +) diff --git a/index.d.ts b/index.d.ts new file mode 100644 index 0000000..a97367d --- /dev/null +++ b/index.d.ts @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} diff --git a/keymap.json b/keymap.json new file mode 100644 index 0000000..6a68266 --- /dev/null +++ b/keymap.json @@ -0,0 +1,316 @@ +[ + // emmet + { + "key": "alt+e", + "command": "workbench.action.showEmmetCommands" + }, + // console + { + "key": "ctrl+shift+l", + "command": "js-console.insertConsoleLog", + "when": "editorTextFocus" + }, + { + "key": "shift+alt+l", + "command": "-js-console.insertConsoleLog", + "when": "editorTextFocus" + }, + { + "key": "ctrl+shift+t", + "command": "js-console.insertConsoleTable", + "when": "editorTextFocus" + }, + { + "key": "shift+alt+t", + "command": "-js-console.insertConsoleTable", + "when": "editorTextFocus" + }, + { + "key": "ctrl+shift+w", + "command": "js-console.insertConsoleWarn", + "when": "editorTextFocus" + }, + { + "key": "shift+alt+w", + "command": "-js-console.insertConsoleWarn", + "when": "editorTextFocus" + }, + { + "key": "ctrl+shift+d", + "command": "workbench.debug.panel.action.clearReplAction" + }, + { + "key": "ctrl+shift+e", + "command": "js-console.insertConsoleError", + "when": "editorTextFocus" + }, + { + "key": "shift+alt+e", + "command": "-js-console.insertConsoleError", + "when": "editorTextFocus" + }, + // Explorer + { + "key": "enter", + "command": "list.select", + "when": "listFocus && !inputFocus" + }, + { + "key": "a", + "command": "explorer.newFile", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus" + }, + { + "key": "shift+a", + "command": "explorer.newFolder", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus" + }, + { + "key": "y", + "command": "filesExplorer.copy", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus" + }, + { + "key": "x", + "command": "filesExplorer.cut", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus" + }, + { + "key": "p", + "command": "filesExplorer.paste", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus" + }, + { + "key": "r", + "command": "renameFile", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus" + }, + { + "key": "m", + "command": "workbench.files.action.refreshFilesExplorer", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus" + }, + // { + // "key": "m", + // "command": "editor.action.showContextMenu", + // "when": "explorerViewletVisible && filesExplorerFocus && !inputFocus" + // }, + { + "key": "q", + "command": "workbench.action.toggleSidebarVisibility", + "when": "explorerResourceMoveableToTrash && explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus" + }, + // "command": "workbench.files.action.refreshFilesExplorer", + { + "key": "d", + "command": "moveFileToTrash", + "when": "explorerResourceMoveableToTrash && explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus" + }, + { + "key": "shift+d", + "command": "deleteFile", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus" + }, + { + "key": "c", + "command": "workbench.files.action.collapseExplorerFolders", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceReadonly && !inputFocus" + }, + { + "key": "s", + "command": "explorer.openToSide", + "when": "explorerViewletFocus && explorerViewletVisible && !inputFocus" + }, + { + "key": "f", + "command": "revealFileInOS", + "when": "explorerViewletFocus && explorerViewletVisible && !inputFocus" + }, + { + "key": "t", + "command": "openInTerminal", + "when": "explorerViewletVisible && filesExplorerFocus && !explorerResourceIsRoot && !inputFocus" + }, + { + "key": "u", + "command": "copyFilePath", + "when": "explorerViewletFocus && explorerViewletVisible && !inputFocus" + }, + { + "key": "i", + "command": "copyRelativeFilePath", + "when": "explorerViewletFocus && explorerViewletVisible && !inputFocus" + }, + // select + { + "key": "ctrl+n", + "command": "selectNextSuggestion", + "when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus" + }, + { + "key": "ctrl+n", + "command": "workbench.action.quickOpenSelectNext", + "when": "inQuickOpen" + }, + { + "key": "ctrl+p", + "command": "selectPrevSuggestion", + "when": "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus" + }, + { + "key": "ctrl+p", + "command": "workbench.action.quickOpenSelectPrevious", + "when": "inQuickOpen" + }, + // focus + { + "key": "ctrl+h", + "command": "workbench.action.navigateLeft", + "when": "terminalFocus || sideBarFocus" + }, + { + "key": "ctrl+l", + "command": "workbench.action.navigateRight", + "when": "terminalFocus || sideBarFocus" + }, + { + "key": "ctrl+p", + "command": "workbench.action.navigateUp", + "when": "terminalFocus || sideBarFocus" + }, + { + "key": "ctrl+n", + "command": "workbench.action.navigateDown", + "when": "terminalFocus || sideBarFocus" + }, + // changeCase + { + "key": "alt+;", + "command": "extension.changeCase.commands" + }, + // focus + { + "key": "alt+`", + "command": "workbench.action.toggleSidebarVisibility" + }, + { + "key": "alt+1", + "command": "workbench.view.explorer" + }, + { + "key": "alt-2", + "command": "outline.focus" + }, + { + "key": "alt-3", + "command": "workbench.view.extension.project-manager" + }, + { + "key": "alt-4", + "command": "todo-tree-view.focus" + }, + { + "key": "alt-5", + "command": "workbench.view.extension.dockerView" + }, + { + "key": "alt+9", + "command": "workbench.view.scm" + }, + { + "key": "alt-0", + "command": "workbench.action.toggleActivityBarVisibility" + }, + { + "key": "tab", + "command": "markdown.extension.onTabKey", + "when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus && !hasOtherSuggestions && !hasSnippetCompletions && !inSnippetMode && !suggestWidgetVisible && editorLangId == 'markdown' && vim.mode =='Insert'" + }, + { + "key": "tab", + "command": "-markdown.extension.onTabKey", + "when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus && !hasOtherSuggestions && !hasSnippetCompletions && !inSnippetMode && !suggestWidgetVisible && editorLangId == 'markdown'" + }, + { + "key": "shift+tab", + "command": "-markdown.extension.onShiftTabKey", + "when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus && !hasOtherSuggestions && !hasSnippetCompletions && !inSnippetMode && !suggestWidgetVisible && editorLangId == 'markdown'" + }, + { + "key": "shift+tab", + "command": "markdown.extension.onShiftTabKey", + "when": "editorTextFocus && !editorReadonly && !editorTabMovesFocus && !hasOtherSuggestions && !hasSnippetCompletions && !inSnippetMode && !suggestWidgetVisible && editorLangId == 'markdown' && vim.mode =='Insert'" + }, + // nav buffer + { + "key": "tab", + "command": "workbench.action.nextEditor", + "when": "vim.mode != 'Insert' && vim.mode != 'CommandlineInProgress' && !panelFocus" + }, + { + "key": "shift+tab", + "command": "workbench.action.previousEditor", + "when": "vim.mode != 'Insert' && vim.mode != 'CommandlineInProgress' && !panelFocus" + }, + // 转换色值格式 + { + "key": "alt+-", + "command": "color-conversion.colorConversion", + "when": "editorTextFocus && editorHasSelection" + }, + // whichkey + { + "key": "space", + "command": "whichkey.show", + "when": "!inputFocus" + }, + { + "key": "e", + "command": "whichkey.triggerKey", + "args": { + "key": "e", + "when": "sideBarVisible && explorerViewletVisible" + }, + "when": "whichkeyVisible && sideBarVisible && explorerViewletVisible" + }, + // 编辑器大小 + { + "key": "shift+ctrl+0", + "command": "workbench.action.evenEditorWidths" + }, + { + "key": "ctrl+down", + "command": "workbench.action.decreaseViewHeight" + }, + { + "key": "ctrl+up", + "command": "workbench.action.increaseViewHeight" + }, + { + "key": "ctrl+right", + "command": "workbench.action.decreaseViewWidth" + }, + { + "key": "ctrl+left", + "command": "workbench.action.increaseViewWidth" + }, + { + "key": "alt+j", + "command": "workbench.action.togglePanel" + }, + { + "key": "ctrl+j", + "command": "-workbench.action.togglePanel" + }, + // replace vim C-d C-u + { + "key": "ctrl+d", + "command": "cursorPageDown", + "when": "textInputFocus" + }, + { + "key": "ctrl+u", + "command": "cursorPageUp", + "when": "textInputFocus" + } +] diff --git a/package.json b/package.json new file mode 100644 index 0000000..5e6d787 --- /dev/null +++ b/package.json @@ -0,0 +1,26 @@ +{ + "name": "shizhong", + "version": "1.0.0", + "description": "", + "author": "", + "license": "", + "keywords": [], + "scripts": { + "lint:fix": "eslint . --fix" + }, + "dependencies": { + "@vant/weapp": "^1.11.6", + "crypto-js": "^4.2.0", + "dayjs": "^1.11.13", + "miniprogram-licia": "^1.39.2", + "mp-html": "^2.5.0", + "typescript": "^5.3.3" + }, + "devDependencies": { + "@antfu/eslint-config": "^3.7.3", + "eslint": "^9.12.0", + "eslint-config-prettier": "^9.1.0", + "miniprogram-api-typings": "^4.0.1", + "prettier": "3.3.3" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..c0719ac --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,3127 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@vant/weapp': + specifier: ^1.11.6 + version: 1.11.6 + crypto-js: + specifier: ^4.2.0 + version: 4.2.0 + dayjs: + specifier: ^1.11.13 + version: 1.11.13 + miniprogram-licia: + specifier: ^1.39.2 + version: 1.43.0 + mp-html: + specifier: ^2.5.0 + version: 2.5.0 + typescript: + specifier: ^5.3.3 + version: 5.6.3 + devDependencies: + '@antfu/eslint-config': + specifier: ^3.7.3 + version: 3.7.3(@typescript-eslint/utils@8.9.0(eslint@9.12.0)(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.12.0)(typescript@5.6.3) + eslint: + specifier: ^9.12.0 + version: 9.12.0 + eslint-config-prettier: + specifier: ^9.1.0 + version: 9.1.0(eslint@9.12.0) + miniprogram-api-typings: + specifier: ^4.0.1 + version: 4.0.1 + prettier: + specifier: 3.3.3 + version: 3.3.3 + +packages: + + '@antfu/eslint-config@3.7.3': + resolution: {integrity: sha512-vzhKtzQT+f/xBV8T5U8SFy3D7uAqL2CEcjsJVqtA7F8tdKvGuC/96uWeEKMHk5lRfijgj+xRvb+c4qQn60YlIA==} + hasBin: true + peerDependencies: + '@eslint-react/eslint-plugin': ^1.5.8 + '@prettier/plugin-xml': ^3.4.1 + '@unocss/eslint-plugin': '>=0.50.0' + astro-eslint-parser: ^1.0.2 + eslint: ^9.10.0 + eslint-plugin-astro: ^1.2.0 + eslint-plugin-format: '>=0.1.0' + eslint-plugin-react-hooks: ^4.6.0 + eslint-plugin-react-refresh: ^0.4.4 + eslint-plugin-solid: ^0.14.3 + eslint-plugin-svelte: '>=2.35.1' + prettier-plugin-astro: ^0.13.0 + prettier-plugin-slidev: ^1.0.5 + svelte-eslint-parser: '>=0.37.0' + peerDependenciesMeta: + '@eslint-react/eslint-plugin': + optional: true + '@prettier/plugin-xml': + optional: true + '@unocss/eslint-plugin': + optional: true + astro-eslint-parser: + optional: true + eslint-plugin-astro: + optional: true + eslint-plugin-format: + optional: true + eslint-plugin-react-hooks: + optional: true + eslint-plugin-react-refresh: + optional: true + eslint-plugin-solid: + optional: true + eslint-plugin-svelte: + optional: true + prettier-plugin-astro: + optional: true + prettier-plugin-slidev: + optional: true + svelte-eslint-parser: + optional: true + + '@antfu/install-pkg@0.4.1': + resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==} + + '@antfu/utils@0.7.10': + resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} + + '@babel/code-frame@7.25.7': + resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.25.9': + resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.25.7': + resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.25.9': + resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} + engines: {node: '>=6.9.0'} + + '@babel/highlight@7.25.7': + resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.26.2': + resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/types@7.26.0': + resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} + engines: {node: '>=6.9.0'} + + '@clack/core@0.3.4': + resolution: {integrity: sha512-H4hxZDXgHtWTwV3RAVenqcC4VbJZNegbBjlPvzOzCouXtS2y3sDvlO3IsbrPNWuLWPPlYVYPghQdSF64683Ldw==} + + '@clack/prompts@0.7.0': + resolution: {integrity: sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA==} + bundledDependencies: + - is-unicode-supported + + '@es-joy/jsdoccomment@0.48.0': + resolution: {integrity: sha512-G6QUWIcC+KvSwXNsJyDTHvqUdNoAVJPPgkc3+Uk4WBKqZvoXhlvazOgm9aL0HwihJLQf0l+tOE2UFzXBqCqgDw==} + engines: {node: '>=16'} + + '@es-joy/jsdoccomment@0.49.0': + resolution: {integrity: sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==} + engines: {node: '>=16'} + + '@eslint-community/eslint-plugin-eslint-comments@4.4.0': + resolution: {integrity: sha512-yljsWl5Qv3IkIRmJ38h3NrHXFCm4EUl55M8doGTF6hvzvFF8kRpextgSrg2dwHev9lzBZyafCr9RelGIyQm6fw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + + '@eslint-community/eslint-utils@4.4.0': + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.11.1': + resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/compat@1.2.0': + resolution: {integrity: sha512-CkPWddN7J9JPrQedEr2X7AjK9y1jaMJtxZ4A/+jTMFA2+n5BWhcKHW/EbJyARqg2zzQfgtWUtVmG3hrG6+nGpg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^9.10.0 + peerDependenciesMeta: + eslint: + optional: true + + '@eslint/config-array@0.18.0': + resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.6.0': + resolution: {integrity: sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.1.0': + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.12.0': + resolution: {integrity: sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/markdown@6.2.0': + resolution: {integrity: sha512-ZLWZ6RNy5flf1Nk2DBt0V77MQpQEo8snkjVT75P5J0SJkE/QNoqgy7+dBvNjlyZuj664pU43uDXWg3J8AfF0IQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.4': + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.2.0': + resolution: {integrity: sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@humanfs/core@0.19.0': + resolution: {integrity: sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.5': + resolution: {integrity: sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@pkgr/core@0.1.1': + resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@stylistic/eslint-plugin@2.9.0': + resolution: {integrity: sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.40.0' + + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + + '@types/estree@1.0.6': + resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/mdast@4.0.4': + resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + + '@types/ms@0.7.34': + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + + '@types/normalize-package-data@2.4.4': + resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + + '@types/unist@3.0.3': + resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + + '@typescript-eslint/eslint-plugin@8.9.0': + resolution: {integrity: sha512-Y1n621OCy4m7/vTXNlCbMVp87zSd7NH0L9cXD8aIpOaNlzeWxIK4+Q19A68gSmTNRZn92UjocVUWDthGxtqHFg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/parser@8.9.0': + resolution: {integrity: sha512-U+BLn2rqTTHnc4FL3FJjxaXptTxmf9sNftJK62XLz4+GxG3hLHm/SUNaaXP5Y4uTiuYoL5YLy4JBCJe3+t8awQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/scope-manager@8.9.0': + resolution: {integrity: sha512-bZu9bUud9ym1cabmOYH9S6TnbWRzpklVmwqICeOulTCZ9ue2/pczWzQvt/cGj2r2o1RdKoZbuEMalJJSYw3pHQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@8.9.0': + resolution: {integrity: sha512-JD+/pCqlKqAk5961vxCluK+clkppHY07IbV3vett97KOV+8C6l+CPEPwpUuiMwgbOz/qrN3Ke4zzjqbT+ls+1Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/types@8.9.0': + resolution: {integrity: sha512-SjgkvdYyt1FAPhU9c6FiYCXrldwYYlIQLkuc+LfAhCna6ggp96ACncdtlbn8FmnG72tUkXclrDExOpEYf1nfJQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.9.0': + resolution: {integrity: sha512-9iJYTgKLDG6+iqegehc5+EqE6sqaee7kb8vWpmHZ86EqwDjmlqNNHeqDVqb9duh+BY6WCNHfIGvuVU3Tf9Db0g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/utils@8.9.0': + resolution: {integrity: sha512-PKgMmaSo/Yg/F7kIZvrgrWa1+Vwn036CdNUvYFEkYbPwOH4i8xvkaRlu148W3vtheWK9ckKRIz7PBP5oUlkrvQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + '@typescript-eslint/visitor-keys@8.9.0': + resolution: {integrity: sha512-Ht4y38ubk4L5/U8xKUBfKNYGmvKvA1CANoxiTRMM+tOLk3lbF3DvzZCxJCRSE+2GdCMSh6zq9VZJc3asc1XuAA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@vant/weapp@1.11.6': + resolution: {integrity: sha512-a3heReWYT2gNdsyj6x1hBwsM8V8NrjcPAmle86NH2CD2V/i/h0le75piW6KntSfOPCwekVWMBKhysNrBpJeKdw==} + + '@vitest/eslint-plugin@1.1.7': + resolution: {integrity: sha512-pTWGW3y6lH2ukCuuffpan6kFxG6nIuoesbhMiQxskyQMRcCN5t9SXsKrNHvEw3p8wcCsgJoRqFZVkOTn6TjclA==} + peerDependencies: + '@typescript-eslint/utils': '>= 8.0' + eslint: '>= 8.57.0' + typescript: '>= 5.0.0' + vitest: '*' + peerDependenciesMeta: + typescript: + optional: true + vitest: + optional: true + + '@vue/compiler-core@3.5.12': + resolution: {integrity: sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==} + + '@vue/compiler-dom@3.5.12': + resolution: {integrity: sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==} + + '@vue/compiler-sfc@3.5.12': + resolution: {integrity: sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==} + + '@vue/compiler-ssr@3.5.12': + resolution: {integrity: sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==} + + '@vue/shared@3.5.12': + resolution: {integrity: sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==} + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.12.1: + resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + are-docs-informative@0.0.2: + resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} + engines: {node: '>=14'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.24.0: + resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + builtin-modules@3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} + engines: {node: '>=6'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + caniuse-lite@1.0.30001668: + resolution: {integrity: sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==} + + ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + + ci-info@4.0.0: + resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} + engines: {node: '>=8'} + + clean-regexp@1.0.0: + resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} + engines: {node: '>=4'} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + comment-parser@1.4.1: + resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} + engines: {node: '>= 12.0.0'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + + core-js-compat@3.38.1: + resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==} + + cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + + crypto-js@4.2.0: + resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.3.7: + resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + + doctrine@3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} + + electron-to-chromium@1.5.39: + resolution: {integrity: sha512-4xkpSR6CjuiaNyvwiWDI85N9AxsvbPawB8xc7yzLPonYTuP19BVgYweKyUMFtHEZgIcHWMt1ks5Cqx2m+6/Grg==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + enhanced-resolve@5.17.1: + resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} + engines: {node: '>=10.13.0'} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + + es-module-lexer@1.5.4: + resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + eslint-compat-utils@0.5.1: + resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} + engines: {node: '>=12'} + peerDependencies: + eslint: '>=6.0.0' + + eslint-config-flat-gitignore@0.3.0: + resolution: {integrity: sha512-0Ndxo4qGhcewjTzw52TK06Mc00aDtHNTdeeW2JfONgDcLkRO/n/BteMRzNVpLQYxdCC/dFEilfM9fjjpGIJ9Og==} + peerDependencies: + eslint: ^9.5.0 + + eslint-config-prettier@9.1.0: + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + + eslint-flat-config-utils@0.4.0: + resolution: {integrity: sha512-kfd5kQZC+BMO0YwTol6zxjKX1zAsk8JfSAopbKjKqmENTJcew+yBejuvccAg37cvOrN0Mh+DVbeyznuNWEjt4A==} + + eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + + eslint-merge-processors@0.1.0: + resolution: {integrity: sha512-IvRXXtEajLeyssvW4wJcZ2etxkR9mUf4zpNwgI+m/Uac9RfXHskuJefkHUcawVzePnd6xp24enp5jfgdHzjRdQ==} + peerDependencies: + eslint: '*' + + eslint-plugin-antfu@2.7.0: + resolution: {integrity: sha512-gZM3jq3ouqaoHmUNszb1Zo2Ux7RckSvkGksjLWz9ipBYGSv1EwwBETN6AdiUXn+RpVHXTbEMPAPlXJazcA6+iA==} + peerDependencies: + eslint: '*' + + eslint-plugin-command@0.2.6: + resolution: {integrity: sha512-T0bHZ1oblW1xUHUVoBKZJR2osSNNGkfZuK4iqboNwuNS/M7tdp3pmURaJtTi/XDzitxaQ02lvOdFH0mUd5QLvQ==} + peerDependencies: + eslint: '*' + + eslint-plugin-es-x@7.8.0: + resolution: {integrity: sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '>=8' + + eslint-plugin-import-x@4.3.1: + resolution: {integrity: sha512-5TriWkXulDl486XnYYRgsL+VQoS/7mhN/2ci02iLCuL7gdhbiWxnsuL/NTcaKY9fpMgsMFjWZBtIGW7pb+RX0g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + + eslint-plugin-jsdoc@50.4.1: + resolution: {integrity: sha512-OXIq+JJQPCLAKL473/esioFOwbXyRE5MAQ4HbZjcp3e+K3zdxt2uDpGs3FR+WezUXNStzEtTfgx15T+JFrVwBA==} + engines: {node: '>=18'} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-plugin-jsonc@2.16.0: + resolution: {integrity: sha512-Af/ZL5mgfb8FFNleH6KlO4/VdmDuTqmM+SPnWcdoWywTetv7kq+vQe99UyQb9XO3b0OWLVuTH7H0d/PXYCMdSg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + + eslint-plugin-n@17.11.1: + resolution: {integrity: sha512-93IUD82N6tIEgjztVI/l3ElHtC2wTa9boJHrD8iN+NyDxjxz/daZUZKfkedjBZNdg6EqDk4irybUsiPwDqXAEA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.23.0' + + eslint-plugin-no-only-tests@3.3.0: + resolution: {integrity: sha512-brcKcxGnISN2CcVhXJ/kEQlNa0MEfGRtwKtWA16SkqXHKitaKIMrfemJKLKX1YqDU5C/5JY3PvZXd5jEW04e0Q==} + engines: {node: '>=5.0.0'} + + eslint-plugin-perfectionist@3.9.0: + resolution: {integrity: sha512-qLsV6/94hokK+k77wUeLMEtB3tS/NtC9ke5OZCAaeCyK1VyVv7Ct0il16vkNNw/1IwNo8Fy60PKjQZSBcsVX5A==} + engines: {node: ^18.0.0 || >=20.0.0} + peerDependencies: + astro-eslint-parser: ^1.0.2 + eslint: '>=8.0.0' + svelte: '>=3.0.0' + svelte-eslint-parser: ^0.41.1 + vue-eslint-parser: '>=9.0.0' + peerDependenciesMeta: + astro-eslint-parser: + optional: true + svelte: + optional: true + svelte-eslint-parser: + optional: true + vue-eslint-parser: + optional: true + + eslint-plugin-regexp@2.6.0: + resolution: {integrity: sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==} + engines: {node: ^18 || >=20} + peerDependencies: + eslint: '>=8.44.0' + + eslint-plugin-toml@0.11.1: + resolution: {integrity: sha512-Y1WuMSzfZpeMIrmlP1nUh3kT8p96mThIq4NnHrYUhg10IKQgGfBZjAWnrg9fBqguiX4iFps/x/3Hb5TxBisfdw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + + eslint-plugin-unicorn@55.0.0: + resolution: {integrity: sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==} + engines: {node: '>=18.18'} + peerDependencies: + eslint: '>=8.56.0' + + eslint-plugin-unused-imports@4.1.4: + resolution: {integrity: sha512-YptD6IzQjDardkl0POxnnRBhU1OEePMV0nd6siHaRBbd+lyh6NAhFEobiznKU7kTsSsDeSD62Pe7kAM1b7dAZQ==} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0 + eslint: ^9.0.0 || ^8.0.0 + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + + eslint-plugin-vue@9.29.0: + resolution: {integrity: sha512-hamyjrBhNH6Li6R1h1VF9KHfshJlKgKEg3ARbGTn72CMNDSMhWbgC7NdkRDEh25AFW+4SDATzyNM+3gWuZii8g==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-plugin-yml@1.14.0: + resolution: {integrity: sha512-ESUpgYPOcAYQO9czugcX5OqRvn/ydDVwGCPXY4YjPqc09rHaUVUA6IE6HLQys4rXk/S+qx3EwTd1wHCwam/OWQ==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + + eslint-processor-vue-blocks@0.1.2: + resolution: {integrity: sha512-PfpJ4uKHnqeL/fXUnzYkOax3aIenlwewXRX8jFinA1a2yCFnLgMuiH3xvCgvHHUlV2xJWQHbCTdiJWGwb3NqpQ==} + peerDependencies: + '@vue/compiler-sfc': ^3.3.0 + eslint: ^8.50.0 || ^9.0.0 + + eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-scope@8.1.0: + resolution: {integrity: sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.1.0: + resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint@9.12.0: + resolution: {integrity: sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + espree@10.2.0: + resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up-simple@1.0.0: + resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==} + engines: {node: '>=18'} + + find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-tsconfig@4.8.1: + resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@15.11.0: + resolution: {integrity: sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==} + engines: {node: '>=18'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-builtin-module@3.2.1: + resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} + engines: {node: '>=6'} + + is-core-module@2.15.1: + resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + jsdoc-type-pratt-parser@4.1.0: + resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} + engines: {node: '>=12.0.0'} + + jsesc@0.5.0: + resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} + hasBin: true + + jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + jsonc-eslint-parser@2.4.0: + resolution: {integrity: sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + local-pkg@0.5.0: + resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} + engines: {node: '>=14'} + + locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + + magic-string@0.30.12: + resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} + + markdown-table@3.0.3: + resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} + + mdast-util-find-and-replace@3.0.1: + resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} + + mdast-util-from-markdown@2.0.1: + resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} + + mdast-util-gfm-autolink-literal@2.0.1: + resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} + + mdast-util-gfm-footnote@2.0.0: + resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} + + mdast-util-gfm-strikethrough@2.0.0: + resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} + + mdast-util-gfm-table@2.0.0: + resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} + + mdast-util-gfm-task-list-item@2.0.0: + resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} + + mdast-util-gfm@3.0.0: + resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} + + mdast-util-phrasing@4.1.0: + resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} + + mdast-util-to-markdown@2.1.0: + resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + + mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromark-core-commonmark@2.0.1: + resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} + + micromark-extension-gfm-autolink-literal@2.1.0: + resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} + + micromark-extension-gfm-footnote@2.1.0: + resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} + + micromark-extension-gfm-strikethrough@2.1.0: + resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} + + micromark-extension-gfm-table@2.1.0: + resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==} + + micromark-extension-gfm-tagfilter@2.0.0: + resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} + + micromark-extension-gfm-task-list-item@2.1.0: + resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} + + micromark-extension-gfm@3.0.0: + resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} + + micromark-factory-destination@2.0.0: + resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} + + micromark-factory-label@2.0.0: + resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} + + micromark-factory-space@2.0.0: + resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} + + micromark-factory-title@2.0.0: + resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} + + micromark-factory-whitespace@2.0.0: + resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} + + micromark-util-character@2.1.0: + resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} + + micromark-util-chunked@2.0.0: + resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} + + micromark-util-classify-character@2.0.0: + resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} + + micromark-util-combine-extensions@2.0.0: + resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} + + micromark-util-decode-numeric-character-reference@2.0.1: + resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} + + micromark-util-decode-string@2.0.0: + resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} + + micromark-util-encode@2.0.0: + resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} + + micromark-util-html-tag-name@2.0.0: + resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} + + micromark-util-normalize-identifier@2.0.0: + resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} + + micromark-util-resolve-all@2.0.0: + resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} + + micromark-util-sanitize-uri@2.0.0: + resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + + micromark-util-subtokenize@2.0.1: + resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} + + micromark-util-symbol@2.0.0: + resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + + micromark-util-types@2.0.0: + resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + + micromark@4.0.0: + resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + miniprogram-api-typings@4.0.1: + resolution: {integrity: sha512-Ok4SSNCYnNLgbAhHCpIeqx6XICZ3aUxZ2iQDExmwKEinWaQQFzzxobK5JP9skrEOWn9PoKodjw4iUdF8Um0i/A==} + + miniprogram-licia@1.43.0: + resolution: {integrity: sha512-NTQxO0LaoIv66I7civEqyUwtF36My7S0TwGyvMAFUpUqGXcQZsM9Ng2OWwHaBvlqdjjPHSacTMH3XqGpnieEow==} + + mlly@1.7.2: + resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==} + + mp-html@2.5.0: + resolution: {integrity: sha512-uvBH5tIaDIlj8qaxsvNXU3RKX0jvXOo3J6FAi/notUv/ds6j79UUTE82aDkxxUk0eLUU0CiCqMrR7WWnytk30Q==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + natural-compare-lite@1.4.0: + resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + node-releases@2.0.18: + resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} + + normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + + nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + + package-manager-detector@0.2.2: + resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-gitignore@2.0.0: + resolution: {integrity: sha512-RmVuCHWsfu0QPNW+mraxh/xjQVw/lhUCUru8Zni3Ctq3AoMhpDTq0OVdKS6iesd6Kqb7viCV3isAL43dciOSog==} + engines: {node: '>=14'} + + parse-imports@2.2.1: + resolution: {integrity: sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==} + engines: {node: '>= 18'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + + picocolors@1.1.0: + resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + + pkg-types@1.2.1: + resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} + + pluralize@8.0.0: + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} + + postcss-selector-parser@6.1.2: + resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} + engines: {node: '>=4'} + + postcss@8.4.47: + resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prettier@3.3.3: + resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} + engines: {node: '>=14'} + hasBin: true + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + read-pkg-up@7.0.1: + resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} + engines: {node: '>=8'} + + read-pkg@5.2.0: + resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} + engines: {node: '>=8'} + + refa@0.12.1: + resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + regexp-ast-analysis@0.7.1: + resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + regexp-tree@0.1.27: + resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} + hasBin: true + + regjsparser@0.10.0: + resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} + hasBin: true + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + hasBin: true + + reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + scslre@0.3.0: + resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==} + engines: {node: ^14.0.0 || >=16.0.0} + + semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + engines: {node: '>=10'} + hasBin: true + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + sisteransi@1.0.5: + resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + + slashes@3.0.12: + resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + + spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + + spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + + spdx-expression-parse@4.0.0: + resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==} + + spdx-license-ids@3.0.20: + resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==} + + stable-hash@0.0.4: + resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + synckit@0.6.2: + resolution: {integrity: sha512-Vhf+bUa//YSTYKseDiiEuQmhGCoIF3CVBhunm3r/DQnYiGT4JssmnKQc44BIyOZRK2pKjXXAgbhfmbeoC9CJpA==} + engines: {node: '>=12.20'} + + synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} + + tapable@2.2.1: + resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} + engines: {node: '>=6'} + + text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + + tinyexec@0.3.0: + resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + toml-eslint-parser@0.10.0: + resolution: {integrity: sha512-khrZo4buq4qVmsGzS5yQjKe/WsFvV8fGfOjDQN0q4iy9FjRfPWRgTFrU8u1R2iu/SfWLhY9WnCi4Jhdrcbtg+g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + ts-api-utils@1.3.0: + resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' + + tslib@2.8.0: + resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + type-fest@0.6.0: + resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} + engines: {node: '>=8'} + + type-fest@0.8.1: + resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} + engines: {node: '>=8'} + + typescript@5.6.3: + resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + + unist-util-is@6.0.0: + resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + + unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + + unist-util-visit-parents@6.0.1: + resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} + + unist-util-visit@5.0.0: + resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + + update-browserslist-db@1.1.1: + resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + + vue-eslint-parser@9.4.3: + resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + xml-name-validator@4.0.0: + resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} + engines: {node: '>=12'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yaml-eslint-parser@1.2.3: + resolution: {integrity: sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==} + engines: {node: ^14.17.0 || >=16.0.0} + + yaml@2.6.0: + resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} + engines: {node: '>= 14'} + hasBin: true + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + +snapshots: + + '@antfu/eslint-config@3.7.3(@typescript-eslint/utils@8.9.0(eslint@9.12.0)(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@antfu/install-pkg': 0.4.1 + '@clack/prompts': 0.7.0 + '@eslint-community/eslint-plugin-eslint-comments': 4.4.0(eslint@9.12.0) + '@eslint/markdown': 6.2.0 + '@stylistic/eslint-plugin': 2.9.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/eslint-plugin': 8.9.0(@typescript-eslint/parser@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/parser': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + '@vitest/eslint-plugin': 1.1.7(@typescript-eslint/utils@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3) + eslint: 9.12.0 + eslint-config-flat-gitignore: 0.3.0(eslint@9.12.0) + eslint-flat-config-utils: 0.4.0 + eslint-merge-processors: 0.1.0(eslint@9.12.0) + eslint-plugin-antfu: 2.7.0(eslint@9.12.0) + eslint-plugin-command: 0.2.6(eslint@9.12.0) + eslint-plugin-import-x: 4.3.1(eslint@9.12.0)(typescript@5.6.3) + eslint-plugin-jsdoc: 50.4.1(eslint@9.12.0) + eslint-plugin-jsonc: 2.16.0(eslint@9.12.0) + eslint-plugin-n: 17.11.1(eslint@9.12.0) + eslint-plugin-no-only-tests: 3.3.0 + eslint-plugin-perfectionist: 3.9.0(eslint@9.12.0)(typescript@5.6.3)(vue-eslint-parser@9.4.3(eslint@9.12.0)) + eslint-plugin-regexp: 2.6.0(eslint@9.12.0) + eslint-plugin-toml: 0.11.1(eslint@9.12.0) + eslint-plugin-unicorn: 55.0.0(eslint@9.12.0) + eslint-plugin-unused-imports: 4.1.4(@typescript-eslint/eslint-plugin@8.9.0(@typescript-eslint/parser@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0) + eslint-plugin-vue: 9.29.0(eslint@9.12.0) + eslint-plugin-yml: 1.14.0(eslint@9.12.0) + eslint-processor-vue-blocks: 0.1.2(@vue/compiler-sfc@3.5.12)(eslint@9.12.0) + globals: 15.11.0 + jsonc-eslint-parser: 2.4.0 + local-pkg: 0.5.0 + parse-gitignore: 2.0.0 + picocolors: 1.1.0 + toml-eslint-parser: 0.10.0 + vue-eslint-parser: 9.4.3(eslint@9.12.0) + yaml-eslint-parser: 1.2.3 + yargs: 17.7.2 + transitivePeerDependencies: + - '@typescript-eslint/utils' + - '@vue/compiler-sfc' + - supports-color + - svelte + - typescript + - vitest + + '@antfu/install-pkg@0.4.1': + dependencies: + package-manager-detector: 0.2.2 + tinyexec: 0.3.0 + + '@antfu/utils@0.7.10': {} + + '@babel/code-frame@7.25.7': + dependencies: + '@babel/highlight': 7.25.7 + picocolors: 1.1.0 + + '@babel/helper-string-parser@7.25.9': {} + + '@babel/helper-validator-identifier@7.25.7': {} + + '@babel/helper-validator-identifier@7.25.9': {} + + '@babel/highlight@7.25.7': + dependencies: + '@babel/helper-validator-identifier': 7.25.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.1.0 + + '@babel/parser@7.26.2': + dependencies: + '@babel/types': 7.26.0 + + '@babel/types@7.26.0': + dependencies: + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + + '@clack/core@0.3.4': + dependencies: + picocolors: 1.1.0 + sisteransi: 1.0.5 + + '@clack/prompts@0.7.0': + dependencies: + '@clack/core': 0.3.4 + picocolors: 1.1.0 + sisteransi: 1.0.5 + + '@es-joy/jsdoccomment@0.48.0': + dependencies: + comment-parser: 1.4.1 + esquery: 1.6.0 + jsdoc-type-pratt-parser: 4.1.0 + + '@es-joy/jsdoccomment@0.49.0': + dependencies: + comment-parser: 1.4.1 + esquery: 1.6.0 + jsdoc-type-pratt-parser: 4.1.0 + + '@eslint-community/eslint-plugin-eslint-comments@4.4.0(eslint@9.12.0)': + dependencies: + escape-string-regexp: 4.0.0 + eslint: 9.12.0 + ignore: 5.3.2 + + '@eslint-community/eslint-utils@4.4.0(eslint@9.12.0)': + dependencies: + eslint: 9.12.0 + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.11.1': {} + + '@eslint/compat@1.2.0(eslint@9.12.0)': + optionalDependencies: + eslint: 9.12.0 + + '@eslint/config-array@0.18.0': + dependencies: + '@eslint/object-schema': 2.1.4 + debug: 4.3.7 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/core@0.6.0': {} + + '@eslint/eslintrc@3.1.0': + dependencies: + ajv: 6.12.6 + debug: 4.3.7 + espree: 10.2.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.12.0': {} + + '@eslint/markdown@6.2.0': + dependencies: + '@eslint/plugin-kit': 0.2.0 + mdast-util-from-markdown: 2.0.1 + mdast-util-gfm: 3.0.0 + micromark-extension-gfm: 3.0.0 + transitivePeerDependencies: + - supports-color + + '@eslint/object-schema@2.1.4': {} + + '@eslint/plugin-kit@0.2.0': + dependencies: + levn: 0.4.1 + + '@humanfs/core@0.19.0': {} + + '@humanfs/node@0.16.5': + dependencies: + '@humanfs/core': 0.19.0 + '@humanwhocodes/retry': 0.3.1 + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.3.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + + '@pkgr/core@0.1.1': {} + + '@stylistic/eslint-plugin@2.9.0(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + eslint: 9.12.0 + eslint-visitor-keys: 4.1.0 + espree: 10.2.0 + estraverse: 5.3.0 + picomatch: 4.0.2 + transitivePeerDependencies: + - supports-color + - typescript + + '@types/debug@4.1.12': + dependencies: + '@types/ms': 0.7.34 + + '@types/estree@1.0.6': {} + + '@types/json-schema@7.0.15': {} + + '@types/mdast@4.0.4': + dependencies: + '@types/unist': 3.0.3 + + '@types/ms@0.7.34': {} + + '@types/normalize-package-data@2.4.4': {} + + '@types/unist@3.0.3': {} + + '@typescript-eslint/eslint-plugin@8.9.0(@typescript-eslint/parser@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@eslint-community/regexpp': 4.11.1 + '@typescript-eslint/parser': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/scope-manager': 8.9.0 + '@typescript-eslint/type-utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + '@typescript-eslint/visitor-keys': 8.9.0 + eslint: 9.12.0 + graphemer: 1.4.0 + ignore: 5.3.2 + natural-compare: 1.4.0 + ts-api-utils: 1.3.0(typescript@5.6.3) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.9.0(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.9.0 + '@typescript-eslint/types': 8.9.0 + '@typescript-eslint/typescript-estree': 8.9.0(typescript@5.6.3) + '@typescript-eslint/visitor-keys': 8.9.0 + debug: 4.3.7 + eslint: 9.12.0 + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.9.0': + dependencies: + '@typescript-eslint/types': 8.9.0 + '@typescript-eslint/visitor-keys': 8.9.0 + + '@typescript-eslint/type-utils@8.9.0(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@typescript-eslint/typescript-estree': 8.9.0(typescript@5.6.3) + '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + debug: 4.3.7 + ts-api-utils: 1.3.0(typescript@5.6.3) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - eslint + - supports-color + + '@typescript-eslint/types@8.9.0': {} + + '@typescript-eslint/typescript-estree@8.9.0(typescript@5.6.3)': + dependencies: + '@typescript-eslint/types': 8.9.0 + '@typescript-eslint/visitor-keys': 8.9.0 + debug: 4.3.7 + fast-glob: 3.3.2 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.3) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.9.0(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@typescript-eslint/scope-manager': 8.9.0 + '@typescript-eslint/types': 8.9.0 + '@typescript-eslint/typescript-estree': 8.9.0(typescript@5.6.3) + eslint: 9.12.0 + transitivePeerDependencies: + - supports-color + - typescript + + '@typescript-eslint/visitor-keys@8.9.0': + dependencies: + '@typescript-eslint/types': 8.9.0 + eslint-visitor-keys: 3.4.3 + + '@vant/weapp@1.11.6': {} + + '@vitest/eslint-plugin@1.1.7(@typescript-eslint/utils@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3)': + dependencies: + '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + eslint: 9.12.0 + optionalDependencies: + typescript: 5.6.3 + + '@vue/compiler-core@3.5.12': + dependencies: + '@babel/parser': 7.26.2 + '@vue/shared': 3.5.12 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + + '@vue/compiler-dom@3.5.12': + dependencies: + '@vue/compiler-core': 3.5.12 + '@vue/shared': 3.5.12 + + '@vue/compiler-sfc@3.5.12': + dependencies: + '@babel/parser': 7.26.2 + '@vue/compiler-core': 3.5.12 + '@vue/compiler-dom': 3.5.12 + '@vue/compiler-ssr': 3.5.12 + '@vue/shared': 3.5.12 + estree-walker: 2.0.2 + magic-string: 0.30.12 + postcss: 8.4.47 + source-map-js: 1.2.1 + + '@vue/compiler-ssr@3.5.12': + dependencies: + '@vue/compiler-dom': 3.5.12 + '@vue/shared': 3.5.12 + + '@vue/shared@3.5.12': {} + + acorn-jsx@5.3.2(acorn@8.12.1): + dependencies: + acorn: 8.12.1 + + acorn@8.12.1: {} + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + ansi-regex@5.0.1: {} + + ansi-styles@3.2.1: + dependencies: + color-convert: 1.9.3 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + are-docs-informative@0.0.2: {} + + argparse@2.0.1: {} + + balanced-match@1.0.2: {} + + boolbase@1.0.0: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.1: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.24.0: + dependencies: + caniuse-lite: 1.0.30001668 + electron-to-chromium: 1.5.39 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.24.0) + + builtin-modules@3.3.0: {} + + callsites@3.1.0: {} + + caniuse-lite@1.0.30001668: {} + + ccount@2.0.1: {} + + chalk@2.4.2: + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + character-entities@2.0.2: {} + + ci-info@4.0.0: {} + + clean-regexp@1.0.0: + dependencies: + escape-string-regexp: 1.0.5 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.3: {} + + color-name@1.1.4: {} + + comment-parser@1.4.1: {} + + concat-map@0.0.1: {} + + confbox@0.1.8: {} + + core-js-compat@3.38.1: + dependencies: + browserslist: 4.24.0 + + cross-spawn@7.0.3: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + crypto-js@4.2.0: {} + + cssesc@3.0.0: {} + + dayjs@1.11.13: {} + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.3.7: + dependencies: + ms: 2.1.3 + + decode-named-character-reference@1.0.2: + dependencies: + character-entities: 2.0.2 + + deep-is@0.1.4: {} + + dequal@2.0.3: {} + + devlop@1.1.0: + dependencies: + dequal: 2.0.3 + + doctrine@3.0.0: + dependencies: + esutils: 2.0.3 + + electron-to-chromium@1.5.39: {} + + emoji-regex@8.0.0: {} + + enhanced-resolve@5.17.1: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.2.1 + + entities@4.5.0: {} + + error-ex@1.3.2: + dependencies: + is-arrayish: 0.2.1 + + es-module-lexer@1.5.4: {} + + escalade@3.2.0: {} + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + escape-string-regexp@5.0.0: {} + + eslint-compat-utils@0.5.1(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + semver: 7.6.3 + + eslint-config-flat-gitignore@0.3.0(eslint@9.12.0): + dependencies: + '@eslint/compat': 1.2.0(eslint@9.12.0) + eslint: 9.12.0 + find-up-simple: 1.0.0 + + eslint-config-prettier@9.1.0(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + + eslint-flat-config-utils@0.4.0: + dependencies: + pathe: 1.1.2 + + eslint-import-resolver-node@0.3.9: + dependencies: + debug: 3.2.7 + is-core-module: 2.15.1 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + + eslint-merge-processors@0.1.0(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + + eslint-plugin-antfu@2.7.0(eslint@9.12.0): + dependencies: + '@antfu/utils': 0.7.10 + eslint: 9.12.0 + + eslint-plugin-command@0.2.6(eslint@9.12.0): + dependencies: + '@es-joy/jsdoccomment': 0.48.0 + eslint: 9.12.0 + + eslint-plugin-es-x@7.8.0(eslint@9.12.0): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@eslint-community/regexpp': 4.11.1 + eslint: 9.12.0 + eslint-compat-utils: 0.5.1(eslint@9.12.0) + + eslint-plugin-import-x@4.3.1(eslint@9.12.0)(typescript@5.6.3): + dependencies: + '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + debug: 4.3.7 + doctrine: 3.0.0 + eslint: 9.12.0 + eslint-import-resolver-node: 0.3.9 + get-tsconfig: 4.8.1 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + stable-hash: 0.0.4 + tslib: 2.8.0 + transitivePeerDependencies: + - supports-color + - typescript + + eslint-plugin-jsdoc@50.4.1(eslint@9.12.0): + dependencies: + '@es-joy/jsdoccomment': 0.49.0 + are-docs-informative: 0.0.2 + comment-parser: 1.4.1 + debug: 4.3.7 + escape-string-regexp: 4.0.0 + eslint: 9.12.0 + espree: 10.2.0 + esquery: 1.6.0 + parse-imports: 2.2.1 + semver: 7.6.3 + spdx-expression-parse: 4.0.0 + synckit: 0.9.2 + transitivePeerDependencies: + - supports-color + + eslint-plugin-jsonc@2.16.0(eslint@9.12.0): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + eslint: 9.12.0 + eslint-compat-utils: 0.5.1(eslint@9.12.0) + espree: 9.6.1 + graphemer: 1.4.0 + jsonc-eslint-parser: 2.4.0 + natural-compare: 1.4.0 + synckit: 0.6.2 + + eslint-plugin-n@17.11.1(eslint@9.12.0): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + enhanced-resolve: 5.17.1 + eslint: 9.12.0 + eslint-plugin-es-x: 7.8.0(eslint@9.12.0) + get-tsconfig: 4.8.1 + globals: 15.11.0 + ignore: 5.3.2 + minimatch: 9.0.5 + semver: 7.6.3 + + eslint-plugin-no-only-tests@3.3.0: {} + + eslint-plugin-perfectionist@3.9.0(eslint@9.12.0)(typescript@5.6.3)(vue-eslint-parser@9.4.3(eslint@9.12.0)): + dependencies: + '@typescript-eslint/types': 8.9.0 + '@typescript-eslint/utils': 8.9.0(eslint@9.12.0)(typescript@5.6.3) + eslint: 9.12.0 + minimatch: 9.0.5 + natural-compare-lite: 1.4.0 + optionalDependencies: + vue-eslint-parser: 9.4.3(eslint@9.12.0) + transitivePeerDependencies: + - supports-color + - typescript + + eslint-plugin-regexp@2.6.0(eslint@9.12.0): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@eslint-community/regexpp': 4.11.1 + comment-parser: 1.4.1 + eslint: 9.12.0 + jsdoc-type-pratt-parser: 4.1.0 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + scslre: 0.3.0 + + eslint-plugin-toml@0.11.1(eslint@9.12.0): + dependencies: + debug: 4.3.7 + eslint: 9.12.0 + eslint-compat-utils: 0.5.1(eslint@9.12.0) + lodash: 4.17.21 + toml-eslint-parser: 0.10.0 + transitivePeerDependencies: + - supports-color + + eslint-plugin-unicorn@55.0.0(eslint@9.12.0): + dependencies: + '@babel/helper-validator-identifier': 7.25.7 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + ci-info: 4.0.0 + clean-regexp: 1.0.0 + core-js-compat: 3.38.1 + eslint: 9.12.0 + esquery: 1.6.0 + globals: 15.11.0 + indent-string: 4.0.0 + is-builtin-module: 3.2.1 + jsesc: 3.0.2 + pluralize: 8.0.0 + read-pkg-up: 7.0.1 + regexp-tree: 0.1.27 + regjsparser: 0.10.0 + semver: 7.6.3 + strip-indent: 3.0.0 + + eslint-plugin-unused-imports@4.1.4(@typescript-eslint/eslint-plugin@8.9.0(@typescript-eslint/parser@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0): + dependencies: + eslint: 9.12.0 + optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.9.0(@typescript-eslint/parser@8.9.0(eslint@9.12.0)(typescript@5.6.3))(eslint@9.12.0)(typescript@5.6.3) + + eslint-plugin-vue@9.29.0(eslint@9.12.0): + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + eslint: 9.12.0 + globals: 13.24.0 + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 6.1.2 + semver: 7.6.3 + vue-eslint-parser: 9.4.3(eslint@9.12.0) + xml-name-validator: 4.0.0 + transitivePeerDependencies: + - supports-color + + eslint-plugin-yml@1.14.0(eslint@9.12.0): + dependencies: + debug: 4.3.7 + eslint: 9.12.0 + eslint-compat-utils: 0.5.1(eslint@9.12.0) + lodash: 4.17.21 + natural-compare: 1.4.0 + yaml-eslint-parser: 1.2.3 + transitivePeerDependencies: + - supports-color + + eslint-processor-vue-blocks@0.1.2(@vue/compiler-sfc@3.5.12)(eslint@9.12.0): + dependencies: + '@vue/compiler-sfc': 3.5.12 + eslint: 9.12.0 + + eslint-scope@7.2.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-scope@8.1.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.1.0: {} + + eslint@9.12.0: + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0) + '@eslint-community/regexpp': 4.11.1 + '@eslint/config-array': 0.18.0 + '@eslint/core': 0.6.0 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.12.0 + '@eslint/plugin-kit': 0.2.0 + '@humanfs/node': 0.16.5 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.3.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.7 + escape-string-regexp: 4.0.0 + eslint-scope: 8.1.0 + eslint-visitor-keys: 4.1.0 + espree: 10.2.0 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + + espree@10.2.0: + dependencies: + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 4.1.0 + + espree@9.6.1: + dependencies: + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) + eslint-visitor-keys: 3.4.3 + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-walker@2.0.2: {} + + esutils@2.0.3: {} + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.2: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.17.1: + dependencies: + reusify: 1.0.4 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up-simple@1.0.0: {} + + find-up@4.1.0: + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.3.1 + keyv: 4.5.4 + + flatted@3.3.1: {} + + function-bind@1.1.2: {} + + get-caller-file@2.0.5: {} + + get-tsconfig@4.8.1: + dependencies: + resolve-pkg-maps: 1.0.0 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + globals@13.24.0: + dependencies: + type-fest: 0.20.2 + + globals@14.0.0: {} + + globals@15.11.0: {} + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + has-flag@3.0.0: {} + + has-flag@4.0.0: {} + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hosted-git-info@2.8.9: {} + + ignore@5.3.2: {} + + import-fresh@3.3.0: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + indent-string@4.0.0: {} + + is-arrayish@0.2.1: {} + + is-builtin-module@3.2.1: + dependencies: + builtin-modules: 3.3.0 + + is-core-module@2.15.1: + dependencies: + hasown: 2.0.2 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + isexe@2.0.0: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsdoc-type-pratt-parser@4.1.0: {} + + jsesc@0.5.0: {} + + jsesc@3.0.2: {} + + json-buffer@3.0.1: {} + + json-parse-even-better-errors@2.3.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + jsonc-eslint-parser@2.4.0: + dependencies: + acorn: 8.12.1 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + semver: 7.6.3 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lines-and-columns@1.2.4: {} + + local-pkg@0.5.0: + dependencies: + mlly: 1.7.2 + pkg-types: 1.2.1 + + locate-path@5.0.0: + dependencies: + p-locate: 4.1.0 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.merge@4.6.2: {} + + lodash@4.17.21: {} + + longest-streak@3.1.0: {} + + magic-string@0.30.12: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + + markdown-table@3.0.3: {} + + mdast-util-find-and-replace@3.0.1: + dependencies: + '@types/mdast': 4.0.4 + escape-string-regexp: 5.0.0 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + mdast-util-from-markdown@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-decode-string: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-autolink-literal@2.0.1: + dependencies: + '@types/mdast': 4.0.4 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-find-and-replace: 3.0.1 + micromark-util-character: 2.1.0 + + mdast-util-gfm-footnote@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + micromark-util-normalize-identifier: 2.0.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-strikethrough@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-table@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + markdown-table: 3.0.3 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm-task-list-item@2.0.0: + dependencies: + '@types/mdast': 4.0.4 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + + mdast-util-gfm@3.0.0: + dependencies: + mdast-util-from-markdown: 2.0.1 + mdast-util-gfm-autolink-literal: 2.0.1 + mdast-util-gfm-footnote: 2.0.0 + mdast-util-gfm-strikethrough: 2.0.0 + mdast-util-gfm-table: 2.0.0 + mdast-util-gfm-task-list-item: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + + mdast-util-phrasing@4.1.0: + dependencies: + '@types/mdast': 4.0.4 + unist-util-is: 6.0.0 + + mdast-util-to-markdown@2.1.0: + dependencies: + '@types/mdast': 4.0.4 + '@types/unist': 3.0.3 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.1.0 + mdast-util-to-string: 4.0.0 + micromark-util-decode-string: 2.0.0 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + + mdast-util-to-string@4.0.0: + dependencies: + '@types/mdast': 4.0.4 + + merge2@1.4.1: {} + + micromark-core-commonmark@2.0.1: + dependencies: + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-factory-destination: 2.0.0 + micromark-factory-label: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-factory-title: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-html-tag-name: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-subtokenize: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-autolink-literal@2.1.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-footnote@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-core-commonmark: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-strikethrough@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-table@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm-tagfilter@2.0.0: + dependencies: + micromark-util-types: 2.0.0 + + micromark-extension-gfm-task-list-item@2.1.0: + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-extension-gfm@3.0.0: + dependencies: + micromark-extension-gfm-autolink-literal: 2.1.0 + micromark-extension-gfm-footnote: 2.1.0 + micromark-extension-gfm-strikethrough: 2.1.0 + micromark-extension-gfm-table: 2.1.0 + micromark-extension-gfm-tagfilter: 2.0.0 + micromark-extension-gfm-task-list-item: 2.1.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-destination@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-label@2.0.0: + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-space@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-types: 2.0.0 + + micromark-factory-title@2.0.0: + dependencies: + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-factory-whitespace@2.0.0: + dependencies: + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-character@2.1.0: + dependencies: + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-chunked@2.0.0: + dependencies: + micromark-util-symbol: 2.0.0 + + micromark-util-classify-character@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-combine-extensions@2.0.0: + dependencies: + micromark-util-chunked: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-decode-numeric-character-reference@2.0.1: + dependencies: + micromark-util-symbol: 2.0.0 + + micromark-util-decode-string@2.0.0: + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 2.1.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-symbol: 2.0.0 + + micromark-util-encode@2.0.0: {} + + micromark-util-html-tag-name@2.0.0: {} + + micromark-util-normalize-identifier@2.0.0: + dependencies: + micromark-util-symbol: 2.0.0 + + micromark-util-resolve-all@2.0.0: + dependencies: + micromark-util-types: 2.0.0 + + micromark-util-sanitize-uri@2.0.0: + dependencies: + micromark-util-character: 2.1.0 + micromark-util-encode: 2.0.0 + micromark-util-symbol: 2.0.0 + + micromark-util-subtokenize@2.0.1: + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + + micromark-util-symbol@2.0.0: {} + + micromark-util-types@2.0.0: {} + + micromark@4.0.0: + dependencies: + '@types/debug': 4.1.12 + debug: 4.3.7 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-encode: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-subtokenize: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + transitivePeerDependencies: + - supports-color + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + min-indent@1.0.1: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.1 + + miniprogram-api-typings@4.0.1: {} + + miniprogram-licia@1.43.0: {} + + mlly@1.7.2: + dependencies: + acorn: 8.12.1 + pathe: 1.1.2 + pkg-types: 1.2.1 + ufo: 1.5.4 + + mp-html@2.5.0: {} + + ms@2.1.3: {} + + nanoid@3.3.7: {} + + natural-compare-lite@1.4.0: {} + + natural-compare@1.4.0: {} + + node-releases@2.0.18: {} + + normalize-package-data@2.5.0: + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.8 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@4.1.0: + dependencies: + p-limit: 2.3.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-try@2.2.0: {} + + package-manager-detector@0.2.2: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-gitignore@2.0.0: {} + + parse-imports@2.2.1: + dependencies: + es-module-lexer: 1.5.4 + slashes: 3.0.12 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.25.7 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + pathe@1.1.2: {} + + picocolors@1.1.0: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.2: {} + + pkg-types@1.2.1: + dependencies: + confbox: 0.1.8 + mlly: 1.7.2 + pathe: 1.1.2 + + pluralize@8.0.0: {} + + postcss-selector-parser@6.1.2: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss@8.4.47: + dependencies: + nanoid: 3.3.7 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prettier@3.3.3: {} + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + read-pkg-up@7.0.1: + dependencies: + find-up: 4.1.0 + read-pkg: 5.2.0 + type-fest: 0.8.1 + + read-pkg@5.2.0: + dependencies: + '@types/normalize-package-data': 2.4.4 + normalize-package-data: 2.5.0 + parse-json: 5.2.0 + type-fest: 0.6.0 + + refa@0.12.1: + dependencies: + '@eslint-community/regexpp': 4.11.1 + + regexp-ast-analysis@0.7.1: + dependencies: + '@eslint-community/regexpp': 4.11.1 + refa: 0.12.1 + + regexp-tree@0.1.27: {} + + regjsparser@0.10.0: + dependencies: + jsesc: 0.5.0 + + require-directory@2.1.1: {} + + resolve-from@4.0.0: {} + + resolve-pkg-maps@1.0.0: {} + + resolve@1.22.8: + dependencies: + is-core-module: 2.15.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.0.4: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + scslre@0.3.0: + dependencies: + '@eslint-community/regexpp': 4.11.1 + refa: 0.12.1 + regexp-ast-analysis: 0.7.1 + + semver@5.7.2: {} + + semver@7.6.3: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + sisteransi@1.0.5: {} + + slashes@3.0.12: {} + + source-map-js@1.2.1: {} + + spdx-correct@3.2.0: + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.20 + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@3.0.1: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.20 + + spdx-expression-parse@4.0.0: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.20 + + spdx-license-ids@3.0.20: {} + + stable-hash@0.0.4: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-indent@3.0.0: + dependencies: + min-indent: 1.0.1 + + strip-json-comments@3.1.1: {} + + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + synckit@0.6.2: + dependencies: + tslib: 2.8.0 + + synckit@0.9.2: + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.8.0 + + tapable@2.2.1: {} + + text-table@0.2.0: {} + + tinyexec@0.3.0: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + toml-eslint-parser@0.10.0: + dependencies: + eslint-visitor-keys: 3.4.3 + + ts-api-utils@1.3.0(typescript@5.6.3): + dependencies: + typescript: 5.6.3 + + tslib@2.8.0: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@0.20.2: {} + + type-fest@0.6.0: {} + + type-fest@0.8.1: {} + + typescript@5.6.3: {} + + ufo@1.5.4: {} + + unist-util-is@6.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-stringify-position@4.0.0: + dependencies: + '@types/unist': 3.0.3 + + unist-util-visit-parents@6.0.1: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + + unist-util-visit@5.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.1 + + update-browserslist-db@1.1.1(browserslist@4.24.0): + dependencies: + browserslist: 4.24.0 + escalade: 3.2.0 + picocolors: 1.1.0 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + util-deprecate@1.0.2: {} + + validate-npm-package-license@3.0.4: + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + + vue-eslint-parser@9.4.3(eslint@9.12.0): + dependencies: + debug: 4.3.7 + eslint: 9.12.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.6.0 + lodash: 4.17.21 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + word-wrap@1.2.5: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + xml-name-validator@4.0.0: {} + + y18n@5.0.8: {} + + yaml-eslint-parser@1.2.3: + dependencies: + eslint-visitor-keys: 3.4.3 + lodash: 4.17.21 + yaml: 2.6.0 + + yaml@2.6.0: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.2.0 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@0.1.0: {} + + zwitch@2.0.4: {} diff --git a/project.config.json b/project.config.json new file mode 100644 index 0000000..1f018b2 --- /dev/null +++ b/project.config.json @@ -0,0 +1,65 @@ +{ + "description": "项目配置文件", + "miniprogramRoot": "src/", + "compileType": "miniprogram", + "setting": { + "useCompilerPlugins": [ + "typescript", + "sass" + ], + "babelSetting": { + "ignore": [], + "disablePlugins": [], + "outputPath": "" + }, + "coverView": false, + "postcss": false, + "minified": false, + "enhance": true, + "showShadowRootInWxmlPanel": false, + "packNpmManually": true, + "packNpmRelationList": [ + { + "packageJsonPath": "package.json", + "miniprogramNpmDistDir": "./src" + } + ], + "ignoreUploadUnusedFiles": true, + "compileHotReLoad": false, + "skylineRenderEnable": true, + "es6": true + }, + "simulatorType": "wechat", + "simulatorPluginLibVersion": {}, + "condition": {}, + "srcMiniprogramRoot": "src/", + "editorSetting": { + "tabIndent": "insertSpaces", + "tabSize": 2 + }, + "libVersion": "2.32.3", + "ignore": [], + "packOptions": { + "ignore": [ + { + "value": "/images/*.*", + "type": "glob" + }, + { + "value": "/images/**/*.*", + "type": "glob" + }, + { + "value": "/images/**/**/*.*", + "type": "glob" + } + ], + "include": [ + { + "value": "/images/tabbar/*.*", + "type": "glob" + } + ] + }, + "appid": "wxbdf6f933281b1eb4" +} \ No newline at end of file diff --git a/project.private.config.json b/project.private.config.json new file mode 100644 index 0000000..31fdf95 --- /dev/null +++ b/project.private.config.json @@ -0,0 +1,99 @@ +{ + "description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html", + "projectname": "shizhong-miniprogram", + "setting": { + "compileHotReLoad": true, + "urlCheck": true + }, + "condition": { + "miniprogram": { + "list": [ + { + "name": "pages/classify/index", + "pathName": "pages/classify/index", + "query": "id=9", + "launchMode": "default", + "scene": null + }, + { + "name": "pages/article/index", + "pathName": "pages/article/index", + "query": "id=8", + "launchMode": "default", + "scene": null + }, + { + "name": "文章详情", + "pathName": "pages/article/index", + "query": "id=8", + "launchMode": "default", + "scene": null + }, + { + "name": "个人信息", + "pathName": "pages/userInfo/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "隐私协议", + "pathName": "pages/protocol/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "搜索", + "pathName": "pages/search/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "分类列表", + "pathName": "pages/classify/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "我的收藏", + "pathName": "pages/collection/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "我的", + "pathName": "pages/my/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "首页", + "pathName": "pages/home/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "调研", + "pathName": "pages/topic/index", + "query": "", + "launchMode": "default", + "scene": null + }, + { + "name": "登录", + "pathName": "pages/login/index", + "query": "", + "launchMode": "default", + "scene": null + } + ] + } + }, + "libVersion": "3.7.7" +} \ No newline at end of file diff --git a/src/app.json b/src/app.json new file mode 100644 index 0000000..711dd87 --- /dev/null +++ b/src/app.json @@ -0,0 +1,60 @@ +{ + "$schema": "https://dldir1.qq.com/WechatWebDev/editor-extension/wx-json/app.schema.json", + "pages": [ + "pages/home/index", + "pages/login/index", + "pages/switchLogin/index", + "pages/my/index", + "pages/topic/index", + "pages/collection/index", + "pages/classify/index", + "pages/article/index", + "pages/search/index", + "pages/protocol/index", + "pages/userInfo/index", + "pages/longPicture/index" + ], + "preloadRule": {}, + "window": { + "backgroundTextStyle": "light", + "navigationBarBackgroundColor": "#fff", + "navigationBarTitleText": "Weixin", + "navigationBarTextStyle": "black", + "navigationStyle": "custom" + }, + "tabBar": { + "custom": false, + "color": "#4E5969", + "selectedColor": "#3FAFFA", + "borderStyle": "white", + "list": [ + { + "iconPath": "/images/tabbar/tab1.png", + "selectedIconPath": "/images/tabbar/tab-active1.png", + "pagePath": "pages/home/index", + "text": "首页" + }, + { + "iconPath": "/images/tabbar/tab2.png", + "selectedIconPath": "/images/tabbar/tab-active2.png", + "pagePath": "pages/my/index", + "text": "我的" + } + ] + }, + "resolveAlias": { + "@/*": "/*" + }, + "rendererOptions": { + "skyline": { + "defaultDisplayBlock": true, + "disableABTest": true, + "sdkVersionBegin": "3.0.0", + "sdkVersionEnd": "15.255.255" + } + }, + "componentFramework": "glass-easel", + "sitemapLocation": "sitemap.json", + "lazyCodeLoading": "requiredComponents", + "requiredBackgroundModes": ["audio"] +} diff --git a/src/app.scss b/src/app.scss new file mode 100644 index 0000000..75f4fde --- /dev/null +++ b/src/app.scss @@ -0,0 +1 @@ +/**app.wxss**/ diff --git a/src/app.ts b/src/app.ts new file mode 100644 index 0000000..5bf3813 --- /dev/null +++ b/src/app.ts @@ -0,0 +1,109 @@ +import component from '@/utils/component'; +import relativeTime from '@/utils/dayjs/relativeTime.js'; +import page from '@/utils/page'; +import { request } from '@/utils/request'; +import { parseScene } from './utils/util'; +const dayjs = require('dayjs'); +const licia = require('miniprogram-licia'); + +require('/utils/dayjs/day-zh-cn.js'); + +dayjs.locale('zh-cn'); // 全局使用 +dayjs.extend(relativeTime); + +App({ + globalData: { + // 测试号 wx2b0bb13edf717c1d + // dev + // appid:wxbdf6f933281b1eb4 + url: 'https://m.shizhong.hbraas.com', + upFileUrl: 'https://m.shizhong.hbraas.com/', + imageUrl: 'https://m.shizhong.hbraas.com/api/shizhong/', + // pro + // appid:wxa4a28b299df7d921 + // url: 'https://m.shizhong.hbsaas.com', + // upFileUrl: 'https://m.shizhong.hbsaas.com/', + // imageUrl: 'https://m.shizhong.hbsaas.com/api/shizhong/', + + loginState: '', + isLogin: 0, + isAnswer: '0', + + scene: null, + + backPath: '', + }, + onLaunch() { + Page = page as WechatMiniprogram.Page.Constructor; + Component = component as WechatMiniprogram.Component.Constructor; + + wx.ajax = licia.curry(request)({ gUrl: this.globalData.url }); + + wx.login({ + success: (res) => { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/user/init-login', + data: { + code: res.code, + }, + }).then((res) => { + this.globalData.loginState = res.loginState; + this.globalData.isLogin = res.isLogin || 999; + }); + }, + }); + + wx.setInnerAudioOption({ + obeyMuteSwitch: false, + mixWithOther: false, + }); + }, + onShow(options) { + if (options.query.scene) { + this.globalData.scene = parseScene(options.query.scene); + } + }, + waitLogin(waitLoginState = false, requireLogin = false, bakcPath = '') { + let time: number; + return new Promise((resolve) => { + time = setInterval(() => { + const { isLogin, loginState } = this.globalData; + if (loginState) { + clearInterval(time); + if (waitLoginState) { + resolve(true); + } else if (isLogin === 0 || !isLogin) { + this.globalData.backPath = bakcPath; + wx.reLaunch({ url: '/pages/login/index' }); + } else if (requireLogin && isLogin === 999) { + this.globalData.backPath = bakcPath; + wx.reLaunch({ url: '/pages/login/index' }); + } else { + resolve(true); + } + } + }, 500); + }); + }, + getUserInfo(self: WechatMiniprogram.Page.Instance, callback?: (res: any) => void) { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/account/get-info', + data: {}, + }).then((res) => { + if (self) { + self.setData({ + userInfo: res, + }); + } + callback?.(res); + }); + }, + getMenuInfo(self) { + const menuButtonInfo = wx.getMenuButtonBoundingClientRect(); + self.setData({ + menuButtonInfo, + }); + }, +}); diff --git a/src/components/global-toast/index.json b/src/components/global-toast/index.json new file mode 100644 index 0000000..074f50b --- /dev/null +++ b/src/components/global-toast/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "@vant/weapp/popup/index" + } +} diff --git a/src/components/global-toast/index.scss b/src/components/global-toast/index.scss new file mode 100644 index 0000000..ef89137 --- /dev/null +++ b/src/components/global-toast/index.scss @@ -0,0 +1,83 @@ +.popup1 { + padding: 110rpx 0 0; + width: 651rpx; + height: 820rpx; + box-sizing: border-box; + + .title { + font-size: 40rpx; + color: #222222; + font-weight: bold; + text-align: center; + } + + .code { + margin: 48rpx auto 0; + display: block; + width: 304rpx; + height: 304rpx; + } + + .tip { + margin-top: 40rpx; + font-size: 32rpx; + color: #65686c; + text-align: center; + } + .close { + margin: 120rpx auto 0; + display: block; + width: 72rpx; + height: 72rpx; + } +} + +.popup3 { + .badge { + position: relative; + z-index: 1; + display: block; + margin: 0 auto; + width: 264rpx; + height: 264rpx; + } + .container { + margin-top: -130rpx; + padding: 136rpx 44rpx 0; + width: 622rpx; + height: 632rpx; + box-sizing: border-box; + background: linear-gradient(180deg, #e7f8ff 0%, #ffffff 100%); + border-radius: 36rpx 36rpx 36rpx 36rpx; + .title { + font-size: 48rpx; + color: #222222; + font-weight: bold; + text-align: center; + } + .tip { + margin-top: 24rpx; + font-size: 36rpx; + color: #65686c; + line-height: 56rpx; + } + .btn1 { + margin-top: 44rpx; + font-size: 36rpx; + color: #ffffff; + height: 88rpx; + display: flex; + align-items: center; + justify-content: center; + background: #3795f7; + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + .btn2 { + margin-top: 16rpx; + padding: 16rpx 32rpx; + font-size: 32rpx; + color: #3795f7; + text-align: center; + } + } +} diff --git a/src/components/global-toast/index.ts b/src/components/global-toast/index.ts new file mode 100644 index 0000000..5be460c --- /dev/null +++ b/src/components/global-toast/index.ts @@ -0,0 +1,39 @@ +const _app = getApp(); + +// pages/story/a.ts +Component({ + /** + * 组件的属性列表 + */ + properties: { + show: { + type: Boolean, + value: false, + }, + type: { + type: Number, + value: 0, + }, + params: { + type: Object, + value: {}, + }, + }, + + /** + * 组件的初始数据 + */ + data: {}, + + /** + * 组件的方法列表 + */ + methods: { + handleConform() { + this.triggerEvent('conform'); + }, + handleClose() { + this.triggerEvent('close'); + }, + }, +}); diff --git a/src/components/global-toast/index.wxml b/src/components/global-toast/index.wxml new file mode 100644 index 0000000..b6ab5bd --- /dev/null +++ b/src/components/global-toast/index.wxml @@ -0,0 +1,32 @@ + + + 关注适中信息微信公众号 + + 长按识别二维码关注 + + + + + + + 添加适中信息企业微信 + + 长按识别二维码添加 + + + + + + + + + 该账号未开通阅读权益 + 此小程序暂时仅供经邀请的企业用户使用,请使用有权益的手机号登录。 + 换个手机号登录 + 取消 + + + diff --git a/src/components/pagination/index.js b/src/components/pagination/index.js new file mode 100644 index 0000000..c1a789f --- /dev/null +++ b/src/components/pagination/index.js @@ -0,0 +1,20 @@ +const app = getApp(); + +Component({ + properties: { + pagination: { + type: Object, + value() { + return {}; + }, + }, + }, + data: { + imageUrl: app.globalData.imageUrl, + }, + methods: { + handleTouchmove() { + return false; + }, + }, +}); diff --git a/src/components/pagination/index.json b/src/components/pagination/index.json new file mode 100644 index 0000000..24029b0 --- /dev/null +++ b/src/components/pagination/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-divider": "@vant/weapp/divider/index" + } +} diff --git a/src/components/pagination/index.scss b/src/components/pagination/index.scss new file mode 100644 index 0000000..08a9dea --- /dev/null +++ b/src/components/pagination/index.scss @@ -0,0 +1,6 @@ +/* components/pagination/index.wxss */ +.none { + display: block; + margin: 30rpx auto; + width: 80%; +} diff --git a/src/components/pagination/index.wxml b/src/components/pagination/index.wxml new file mode 100644 index 0000000..3f1150d --- /dev/null +++ b/src/components/pagination/index.wxml @@ -0,0 +1,6 @@ + + + + 加载中... + +没有更多了 diff --git a/src/components/uploadFile/index.json b/src/components/uploadFile/index.json new file mode 100644 index 0000000..5625d07 --- /dev/null +++ b/src/components/uploadFile/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "@vant/weapp/popup/index", + "van-uploader": "@vant/weapp/uploader/index" + } +} diff --git a/src/components/uploadFile/index.scss b/src/components/uploadFile/index.scss new file mode 100644 index 0000000..d70d62d --- /dev/null +++ b/src/components/uploadFile/index.scss @@ -0,0 +1,30 @@ +.button { + padding: 0; + line-height: 1; + background-color: transparent; + &::after { + border: none; + outline: none; + } +} + +.popup1 { + position: relative; + width: 580rpx; + height: 590rpx; + box-sizing: border-box; + .bg { + width: 100%; + height: 100%; + } + .sure { + position: absolute; + width: 100%; + bottom: 40rpx; + left: 0; + text-align: center; + font-size: 32rpx; + color: rgba(0, 180, 197, 1); + line-height: 48rpx; + } +} diff --git a/src/components/uploadFile/index.ts b/src/components/uploadFile/index.ts new file mode 100644 index 0000000..3efb12f --- /dev/null +++ b/src/components/uploadFile/index.ts @@ -0,0 +1,132 @@ +const app = getApp(); + +// pages/story/a.ts +Component({ + /** + * 组件的属性列表 + */ + properties: { + chooseAvatar: { + type: Boolean, + value: false, + }, + chooseMessage: { + type: Boolean, + value: false, + }, + accept: { + type: String, + value: 'image', + }, + }, + + /** + * 组件的初始数据 + */ + data: { + cacheEditParams: {}, + }, + + /** + * 组件的方法列表 + */ + methods: { + GetExtensionFileName(pathfilename) { + const reg = /(\\+)/g; + const pString = pathfilename.replace(reg, '#'); //用正则表达式来将\或\\替换成# + const arr = pString.split('#'); // 以“#”为分隔符,将字符分解为数组 例如 D Program Files bg.png + const lastString = arr[arr.length - 1]; //取最后一个字符 + const arr2 = lastString.split('.'); // 再以"."作为分隔符 + return arr2[arr2.length - 1]; //将后缀名返回出来 + }, + handleAfterRead(e) { + this.uploadFile(e.detail.file).then((res) => { + this.triggerEvent('file', res as object); + }); + }, + handleChooseAvatar(e) { + this.uploadFile({ + fileType: 'image', + tempFilePath: e.detail.avatarUrl, + size: 0, + }).then((res) => { + this.triggerEvent('file', res as object); + }); + }, + handleChooseFile() { + wx.chooseMessageFile({ + type: 'file', + count: 1, + success: (res) => { + this.uploadFile({ + ...res.tempFiles[0], + fileType: res.tempFiles[0].type, + tempFilePath: res.tempFiles[0].path, + }).then((res) => { + this.triggerEvent('file', res as object); + }); + }, + fail() { + wx.showToast({ + icon: 'none', + title: '取消选择', + }); + }, + }); + }, + uploadFile(item) { + wx.showLoading({ + title: '正在上传', + }); + return new Promise((resolve, reject) => { + let url = `${app.globalData.upFileUrl}?r=file-service/upload-`; + if (item.fileType === 'image') { + url += 'img'; + } else if (item.fileType === 'video' || item.type === 'video') { + url += 'video'; + item.tempFilePath = item.url; + } else if (item.fileType === 'audio') { + url += 'audio'; + } else { + url += 'doc'; + } + wx.uploadFile({ + filePath: item.tempFilePath, + name: 'file', + url, + success: (res) => { + wx.hideLoading(); + const data = JSON.parse(res.data); + const suffix = this.GetExtensionFileName(data.data.Url); + const expandJson = { + fileId: '', + name: item.name || `病历相关文件.${suffix}`, + size: (item.size / 1024).toFixed(2), + fileUrl: data.data.Url, + suffix, + type: item.fileType, + imgUrl: '', + duration: 0, + videoUrl: '', + hash: '', + }; + if (item.fileType === 'image') { + expandJson.imgUrl = data.data.Url; + } else if (item.fileType === 'video' || item.type === 'video') { + expandJson.imgUrl = data.data.SnapshotUrl; + } else if (item.fileType === 'audio') { + expandJson.duration = Number.parseInt(String(item.duration / 1000)); + } + resolve(expandJson); + }, + fail() { + wx.hideLoading(); + reject(new Error('上传失败')); + }, + }); + }); + }, + }, +}); + +export {}; diff --git a/src/components/uploadFile/index.wxml b/src/components/uploadFile/index.wxml new file mode 100644 index 0000000..4fcc942 --- /dev/null +++ b/src/components/uploadFile/index.wxml @@ -0,0 +1,9 @@ + + + + + diff --git a/src/custom-tab-bar/index.json b/src/custom-tab-bar/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/src/custom-tab-bar/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/src/custom-tab-bar/index.scss b/src/custom-tab-bar/index.scss new file mode 100644 index 0000000..247abdd --- /dev/null +++ b/src/custom-tab-bar/index.scss @@ -0,0 +1,130 @@ +.tabbar { + padding: 0 0 calc(env(safe-area-inset-bottom) + 12rpx); + display: flex; + justify-content: space-between; + background-color: #fff; + box-shadow: 0rpx 3rpx 27rpx 0rpx rgba(40, 48, 49, 0.1); + .custom { + flex-shrink: 0; + position: relative; + width: 94rpx; + height: 64rpx; + .add { + position: absolute; + top: -42rpx; + width: 94rpx; + height: 94rpx; + } + .popup-tip { + padding: 20rpx 34rpx 28rpx; + position: absolute; + top: -60rpx; + left: 50%; + transform: translate(-50%, -100%); + border-radius: 16rpx; + background: linear-gradient(90deg, #00b4c5 0%, #54e2b4 100%); + box-shadow: 0 4rpx 11rpx rgba(0, 0, 0, 0.08); + .close { + position: absolute; + top: -10rpx; + right: -10rpx; + width: 40rpx; + height: 40rpx; + } + .content { + text-align: center; + font-size: 32rpx; + color: #fff; + white-space: nowrap; + line-height: 48rpx; + .plus { + color: #fff; + font-size: 48rpx; + font-weight: bold; + } + } + .pt-footer { + margin-top: 16rpx; + display: flex; + align-items: center; + justify-content: center; + gap: 24rpx; + white-space: nowrap; + .ok { + padding: 16rpx 42rpx; + font-size: 24rpx; + color: #00b4c5; + font-size: 32rpx; + line-height: 32rpx; + border-radius: 120rpx; + background: #fff; + } + } + &::after { + position: absolute; + content: ""; + bottom: -10rpx; + left: 50%; + transform: translateX(-50%); + width: 0; + height: 0; + border-style: solid; + border-width: 12rpx 12rpx 0 12rpx; + border-color: #56cabb transparent transparent transparent; + } + } + } + .tab-item { + position: relative; + padding-top: 10rpx; + flex: 1; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + .icon-wrap { + position: relative; + width: 48rpx; + height: 48rpx; + .icon { + display: block; + width: 100%; + height: 100%; + } + .icon-active { + display: none; + width: 100%; + height: 100%; + } + .dot { + position: absolute; + top: 0; + right: 0; + width: 16rpx; + height: 16rpx; + border-radius: 50%; + background-color: #ed4f39; + } + } + .name { + margin-top: 8rpx; + font-size: 22rpx; + color: rgba(20, 21, 21, 1); + line-height: 21rpx; + } + &.active { + .icon-wrap { + .icon { + display: none; + } + .icon-active { + display: block; + } + } + .name { + color: rgba(0, 180, 197, 1); + } + } + } +} diff --git a/src/custom-tab-bar/index.ts b/src/custom-tab-bar/index.ts new file mode 100644 index 0000000..2b54590 --- /dev/null +++ b/src/custom-tab-bar/index.ts @@ -0,0 +1,74 @@ +const _app = getApp(); + +// pages/story/a.ts +Component({ + /** + * 组件的属性列表 + */ + properties: {}, + + /** + * 组件的初始数据 + */ + data: { + showEntryCase: false, + active: 0, + notice: false, + tabbar: [ + { + path: "/pages/home/index", + name: "首页", + icon: "tab1.png", + iconActive: "tab-active1.png", + activeIndex: 1, + }, + { + path: "/pages/cases/index", + name: "病历", + icon: "tab2.png", + iconActive: "tab-active2.png", + activeIndex: 2, + }, + { + custom: true, + path: "/module1/pages/entryCases/index", + }, + { + path: "/pages/chatRoomList/index", + name: "学习窗", + icon: "tab3.png", + iconActive: "tab-active3.png", + activeIndex: 3, + }, + { + path: "/pages/my/index", + name: "我的", + icon: "tab4.png", + iconActive: "tab-active4.png", + activeIndex: 4, + }, + ], + userInfo: {}, + }, + /** + * 组件的方法列表 + */ + methods: { + handleTab(e: any) { + const { index } = e.currentTarget.dataset; + const tab = this.data.tabbar[index]; + if (tab.custom) { + this.handleClsoeCaseTip(); + wx.navigateTo({ + url: tab.path, + }); + } else { + wx.switchTab({ + url: tab.path, + }); + } + }, + }, +}); + +export {}; diff --git a/src/custom-tab-bar/index.wxml b/src/custom-tab-bar/index.wxml new file mode 100644 index 0000000..dd31ede --- /dev/null +++ b/src/custom-tab-bar/index.wxml @@ -0,0 +1,33 @@ + + + + + + + + 点击 + + + ,可录入病历 + + 邀约合作医生一起讨论哦 + + + 去录入 + + + + + + + + + + {{item.name}} + + + diff --git a/src/images/badge.png b/src/images/badge.png new file mode 100644 index 0000000000000000000000000000000000000000..1a9d0423bb1676014c0bb181fb916fac59af33ee GIT binary patch literal 9101 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 literal 0 HcmV?d00001 diff --git a/src/images/empty-1.png b/src/images/empty-1.png new file mode 100644 index 0000000000000000000000000000000000000000..a8aa4199965cfc8024f6d4c5571d61cee5ad21a7 GIT binary patch literal 16873 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�k0X66WSTae(9PNN&V)S%5|fjuw_& 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 literal 0 HcmV?d00001 diff --git a/src/images/empty-search.png b/src/images/empty-search.png new file mode 100644 index 0000000000000000000000000000000000000000..a8aa4199965cfc8024f6d4c5571d61cee5ad21a7 GIT binary patch literal 16873 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�k0X66WSTae(9PNN&V)S%5|fjuw_& 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 literal 0 HcmV?d00001 diff --git a/src/images/fold-up.png b/src/images/fold-up.png new file mode 100644 index 0000000000000000000000000000000000000000..a64f6964b4de5bd50299eaa5af012eb4cf18e0e4 GIT binary patch literal 436 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

8Zj5a{qS+T5ssUgc6Luvm>Nj7qQIRX7t*OtMi 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 kz69{PoZ8|6=LsUa-h>CX*}U#|d<( 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πU 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 literal 0 HcmV?d00001 diff --git a/src/images/home-card-bg.png b/src/images/home-card-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..cb768b608b2127ab00df32c65cd37ce97c6cb8af GIT binary patch literal 42997 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%0DuH=`Tdom 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 literal 0 HcmV?d00001 diff --git a/src/images/home-title.png b/src/images/home-title.png new file mode 100644 index 0000000000000000000000000000000000000000..0e2433cb536ea7b4f70dc395fc9c27a8da2a2a5b GIT binary patch literal 15408 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 B4iEqU literal 0 HcmV?d00001 diff --git a/src/images/icon-collection.png b/src/images/icon-collection.png new file mode 100644 index 0000000000000000000000000000000000000000..e3c680b6b19fcece597159871201cecf1fb8c343 GIT binary patch literal 1305 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 literal 0 HcmV?d00001 diff --git a/src/images/icon-directory.png b/src/images/icon-directory.png new file mode 100644 index 0000000000000000000000000000000000000000..b31527eb115bf8185ee7a35c3aaceac6fe76085b GIT binary patch literal 551 zcmV+?0@(eDP)Px$;Ymb6RA@u(Sv^VvK@^@h2uYFFLSpfDu(9wK5mQ> z0D^_3BFPLf=~GxFu z_=pA`kdt1n1QGE70D1t>BBB=}x;4g3o#+8P;1al@l)4u}9HzLAiKwHseh)x{m4a0u zBA!Soua+SY(VNzKPY4l*EYd1aDfJtd%MwSe0mi27dlRoWHakK!74C{A`JkTMKq4%{n2RjSf@ZD zni0`fA%Tc^A*JkR+(AP`yT+K=vUR1@>CgRK9MP7?B&SJ|^o=psg^nm9HUZ!P0JqQ>`&%zW~U}5V5*~ke7 z5=3Ddxf0|yQP^Mq8@Wwzo8UI#_nvW^;5NbkP58ZIWzlo}k|{f+&iyQ~PWP*r%?VcF pVx1VAV4dz)F`E;t!o@lPx$nMp)JR9Hvt*1t-_KpY3~@8wUMf~!uBK7mFYbV$L)O(;HqgHr@w!6%SH5f=wX z-#|A7U4o+^9UUBW)P}Z8dJ-|xCYQTQa~BGxYslr(@9%!UJAwuKkp=VM|A5@yuwxKh z5<>cDIQzj7`H-oGmV{!ANys$_tRDnLA5F)TK`94iFi9+uD5W3<<`opHMUqkmVwGt^ zqBb>*Z8MTDpAt|W=E+}rk1OV03_G%@(jXBg*+Ll*d7%5Pd7$K-?3>UP1_PJ&^ z8_xiok8EvZbIHEwMNV18vwg36a{WW z3=UXV2vKYEo)*002ovPDHLkV1ka=$O`}f literal 0 HcmV?d00001 diff --git a/src/images/icon-eye.png b/src/images/icon-eye.png new file mode 100644 index 0000000000000000000000000000000000000000..a96ca4bb72a4088b672a517d375fa0a791498b50 GIT binary patch literal 816 zcmV-01JC@4P)Px%>PbXFR7gwhl|4)pK@`W|+g*;2ib4`E!HB&^j20SW#LhwrLm`Fb%FG2NT!OK{ z#5Iw^SR5gc-Ql*hfPz>^K_`X~Ei5qFdnT8h2^1zIhj;Goc<(Yt<`(V_kq`@}+GyN_kpI&m-c7lyZ4zXJ;v$PXBC` zlBNn3=m`LD0O)RU*e?L^wzs#ZCMG7f8pSpQ&d<*eRg`!DaEdldDOUmDbr^>4H#awP z^sT3-r_Zvi>i{sU)KlCK02t?-FYX8319Tk6N+y#T0C=c@=z!176wb}f^_!-dLBs(S zH(Mwa9y^Xh%6C^C&~coOWHR|i-IfB!8DpXrJu@@Y+uq*(jQ&e00{~blm&;RQV`KSR zj1YoV(mxFV9rV9YDBRVdyFeYL(lW?7|D?kbiNqQr_USj4Qs&C#@(ms8`~LMX3>N^P zHx8`=RT|$aWw|JdZlzMGYMpA!^E?+3In`21`6!AaOG}~87<-_{yRO@37{)sQpbL`H zLC0}|Do_Y92>>rhnUwNc9HwHv(dHlsE{%?kZqPT^bq;y*u6 uEfgK<_kk21>f{ESPJl<5&FWdlp3*<3(S0mMX^tiU0000Px$ut`KgR9HvtSTRe(P!RquWN>tFa1eBGaB#4@po5@p4iyAlMB6^-;GjQ42Zz$U z&_Sq!VnGFmihrPk;_BewDAd8hp+nl!D=9`a_N4@Lco~u*ci)%$-W}vSLU@%*rBT;) zcL1y~^CS_uy?28=nK>Y$Cjhk|2o8(I;AL>=vxp38S*@@N<mxNBIvmN^*oPg*tw0C0(a=M|3 zyoI=009mEfr6iZj<@KbB2w@X|iCq()P*+MVN2}6W-vC%Jth8&_ssKz3sSwtbQmavL z&-2cRC~HC}`9e4a;NH-3w;acr&E;};Lg4%UoK$U^3m`MdQlZ7nS0Txg;kM&*snC-m svNp+n*tQ8npjaitwTX1|MRaZQ4qE=I0D<@u2mk;807*qoM6N<$g3=r2h5!Hn literal 0 HcmV?d00001 diff --git a/src/images/icon-pic.png b/src/images/icon-pic.png new file mode 100644 index 0000000000000000000000000000000000000000..a9752d91bf2a529e2d61cead02675349baf64259 GIT binary patch literal 1378 zcmV-o1)chdP)Px)97#k$R9HvNSbI#BWgLE9zH>3lU`i|!OUet(RwTF}ELX0@c2K8TFkJ=qhl`cr z@}Jt=+}P?Lo30C8R!X%L!p2n2Mr-C)Iw|Nv)`%WK+@0{}; zF0Jpsv-7_1?|FaE?|pt3ffPR}<$M5Z02Bkr1Hj)I#xa8cE&%8Oa16jfA;h^$G-j-S)f(XXR-NXNx%5|<4# z=`(=rSpthP({OKg8Xn3`!z^#q1iiLR2;olzDlQ-?teV27KbVktD8$m=S zyXWZt9t|j4q@m&-4R_5+GdDE=cuojm>n&SAQpy|vEu<$9mU!>GFq*oY1Br!8U~89X zs3~^A>ry6v0~^71*eRrc%CDDA3y0aW2)SIeF~64)sGaqUB^Ob z`Z?m1fk~~~P@rMU18$!28-RQvMA!sWF#@LX%#e=i13?5G;8{3FV8xx9Eugkj5%gb4 z{tz?)G;Z)2>Dj~#2CLjiK@vBEeIMnR`4S-$cZj{_^59o*UI%*CE9eK~USi|;} z%1fOiv@H`xZaPZ^_B8}-y;EE2f-i5Zaf<@m8s>S{ujSVW>f6KP*3wIDo4lr?=MvD1 zObz~?2OQes7}hU!8WvThomkrH``59E^yuSzKdbO}J_V|%Vg zvv#bz?Eo=Gs8_RR0_&Ez5Yd6=lVMy7Lg`Cvj3olZD&dPw%;gv+Amx_g`uL@a9iVr= z4dLh+-70RNsBUZuf)rF2v4r~fOZM{GYZM?%7|;ucf>@X-Oks;!e)~j7QUB&@&x8T} z#S%1C%3f{@Vy0V|8WJ_m$3Z$@D{~IWLfIfa#FSC+R8s(_hnxrXm#0T%f&y7McT}Uk zKOe!?))49*b&pf=M3m*-BGB-J3hG}7X#Yr2URie}1pg^}m5%qy-Z&n@zOINWS6PJ7 zD67LQrAm1nQ?@!^!z&M~JqMz~$o#Y8Nb17aHK40!&u>{yT3i85#wq;4&H2}7V2RA9FMl?1Z1JBT?kQPX8UJYxv_?>+!q|@rKPvU zr^0Ds>*&+bbzziR^P_k6uJ@Q7Nu>~?$pl0d>jtpE3{`5!*+HQOQkBHsvZCKUE$MgLJ7#D=lN+QlYp6xj~d zwoY9K!cJqS&u!Mw$s0urb!?>%Go>(tv-D&M>ZJI$3v!mJ4B*Z8M_Xw&h-)3S(iTu- zh7IgU*dB4%;1n2vaM(~)s9|2lB!&&vTN(}IPGdNwGWpkMbueZ04(b@VI(8hBb>rwb zhH0d9{+MwLd#~CFk7Hs$(OaCF)f$ttROE;ByanJ>HiF4ECLLJC9$*>iEjPS&D@$Nw k-LNs$pwMx0mhwpNAA(DH2?i9r1^@s607*qoM6N<$f=)Spv;Y7A literal 0 HcmV?d00001 diff --git a/src/images/icon-play.png b/src/images/icon-play.png new file mode 100644 index 0000000000000000000000000000000000000000..3ae7ad9a5e69b895dcad42d0bd4e02ccd0e98e9b GIT binary patch literal 4299 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 B;5PsO literal 0 HcmV?d00001 diff --git a/src/images/icon-stop.png b/src/images/icon-stop.png new file mode 100644 index 0000000000000000000000000000000000000000..02c9aa6af871a5b95a4d2f67382dd1eb379aead2 GIT binary patch literal 4590 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 Y10tuWSl`Uh-2eap07*qoM6N<$f-26jegFUf literal 0 HcmV?d00001 diff --git a/src/images/item-tip-close.png b/src/images/item-tip-close.png new file mode 100644 index 0000000000000000000000000000000000000000..c414d8411db1c70b328eee2ba380a6c84f818e2c GIT binary patch literal 1271 zcmVPx(u}MThR9HvNn0si`R}{z3rD;h@1Cf@}Woy#7VLO)&VGbNaHgTJbHM6zRv`yPo z#HmyFkUE*xmCnu~3Eiu%bDP*#+NLIbEERDN922&I6^6+qDVu59Et8;FNNGwR+;Ku8 z=`X)m+6cXWCimX+x!>Qp=l4B70;_D0RmKC$2BMTo0H6o})BunZJ=k3U@B@H{5VEkG z!zKk3g)q!5EL3i+87 zx0^b=2v zO<92`rE0%_!d0&HfGDNXa5(&%u2jDv5D2718RjOc z{Cv1*v;HoZ%QrL20~^r6kI$G}ySjTG3QTO%-KH8iT7TpaA>?d)pd~=4PB0ksz4EFq zZ*Fexp#r6)rNQvv#XD;?n*4Z`m_R18rKSBsM;9+lQQx?fRMo5go5JbkaVBNC7a6%T{|?W!+PB?)@tRk$M!%WN~yM|x6jpl`ix-iFax7fIAY3hsmHc)2@8QZvK!JXw^M3t*zhgYC83iphBrk>J!J0fw8iJHK`>o zw>xC0tda5&;TyZ(W)*eqD~+azo8%jPJ)P(-*CbqfTr@vF?|fm)%e;jVtMq`~CaN&L zrYi&AICr(i!uad8t0RPv#KMR`lv1PF($Xz-^)&?rkqXUqdQ?%R%IB@p7%%#QeUQ*g zZdnva;`5D9zFwx!OV+9iCLUt~THEh0JJD}z;=MMj{V-cvT7^_f7Jxawrn(B=KX#Pg ze#BG?g+kYM8jPD(>Z7@!mC8rJIpjdo{~WUu;j*w#c)erSjkR?OE{m~Tg)%c`;OOt2 zR;$%`)e|zF&*X0%9lbHK|KMS1s-O_2?QF#4V>`s!c?h*Z+x&jNea{;QvI2qsmMcnR z9s20cKCz&=$2N$y<4Cw=Y!NA?1>tab@YBy*H`w~^kgT;ut6E!K1^f5yMN?lx2>FZe zWP+V*G|{no?+FHj4IQ1`d4t1Fm=b8E*C-T#FV6DvGW5;ZN}m(+0YVf|>_pfE0Du7i z^fz6u7v1hZv;O%v5P?G_&`qjUDpv+W$A&R6`n^-~j*t002ovPDHLkV1m_xWTOB8 literal 0 HcmV?d00001 diff --git a/src/images/login-bg.png b/src/images/login-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..dd529367705d97429ec382229ef74e0073abdd6f GIT binary patch literal 498569 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

WIY`ZU3I9|N-}txYU<=t>y)P? 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�BMrY>BBWKaeVZ+N;ijRZ; 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%0DRlvv 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

GN#-bd1P|Ou*>oEWUII7fw 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

?5~#RLyI8O*uat!}~lL?4GC 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 z z1%UX{6}H%lR@7;0vjSlZYCdsAniSX3wNzmnaxk4wIDjlN*z6_Rr4zGmy!TKuRz0S# zDChfz@j4tfjYI3W%o;%e*z{7x3>5_Eq|yY^S?^zArL6z}AOJ~3K~$;{v)n|nMqJ>s zRzuo=&3H&GQq}DTxdzg+JycXqncnLa5ZAdk5_t5t=) z1Dt2ktJ6?GTFSCAmNYN%#8IeEL87B>oQ$jYT`#G*hGp z_HGKMGol=#gBD7Vza(Nq$}PP~8HoNK;7~Rqcg)CY432O_n)KVAnfH^G{;T zRnHr1;F-^)QaO)(Z}FwVTr?@=3z=Ox4^FIMM9edIBIrz-2*v#;5hc4@+%1)?EiEyEGT zGJ$pf5gkp+$7jUt^rars-?9OfrP-`RHgrmyohWmkS!yY7HI8Z&)a$iaN(- z6U;vu1UgesSH*J_x!*?OLJ&Jqzd>%@DPg&)I}c)SM<%dH&zu#^^Z00Gk$HQqF?z6( z%!{xU_6XS+lu(kK!a-K1T3i|eEpkST@qZZe1VPZzV8B4U5V=OOw5t_S;m-I=WgBf0b67qvN!4D&UU-(`!1r0 ze!_0ufAxW9U!p~)*0;xYgAWJ5KYYUdQciPnY%c}3jkp&g#yg*#Kdw;HQdL$ZAF9fo z{>|Z)Gc7DOvHgUM^fkm&2{7jd&;Ja|B ze1KC(e8apN?^##A=!}GuQbCIpgm+rkk~=y%+4I-EV{ut80he-VuPcW@OJ+>z+0P_QjXzm zd2p37GT4uyV=$1cdmLjEU~^O+0K$~G*UW)V>Qe*Ilqnft4F`dJh&-~*!@$-P*`(;Q zc8Po7x`T|k)F6Q_>k{=n`XaXojZB0+E=D|uqJyZxPE>h;-dgXlvrY+JtZJalqzodi zjv}jHdBapcHyIZ#tDR(p+f`0eIak;Bdo|tJ$ZO*@)47QTH%j&Pjes#tfqnJjx}?S} zJ*hLga-04ud*Hn;ohi^c2$M2v0+<9IDYdgL)rB&0v^jKK;ulC?7YJ!D=qRfg!$85T zr~Lk88T{<>GXr#btz(uZ;}Rq=?dZCK8<1*ZO!-J#F5R3^&_1I_PGJguw{yf%Rt) zsAWB69&O{$Qyyh3J}`+XfI((gntGC#=yXQyHwAIH7$Rr zT}R0baKo2(;?9s&cz9G78_XMJLZ2?Tg?fJc-zNk!?u8$JIx#QtVLjLJ3 z(h$z|73{-{n-o6Sh%~A7ZnwVV-;3>PY{b6kCbvWYxYQ(A#X*^B z>zi4Qk*N${0V&OecaqSg`+E`0Fy>Z&cK%6bg0&;v7ybUC@dInHJjDJCtTo4D60Ew* z;8`JK_&v|XWr88(&OAM<5~+Imz^BZ-8PLZ{;()a7M>wr}97u&8-=WUkFa)-j=sG)D zXim1&HSe?=0P^m&NxK~E6$2EX9sRN%rz4)SP;t4z%AV^07^nA;*i!tMCc&dhm(=Os zCSo@599h}y(^&k1+A@RP;IUy?98w;U@`lOTQ;5eV&~Pf88&*auLZgYzMeQnTs;G?} z9pycIuMf&?K}#H7Le5I{d!;R;WtGw+eXnn(nV3N`9NEwulq(g~ z>CC=CaIJjWB@58Wt;I$LlQWUHiGYio?U29h@5R)s^fPGt9 zb#TZ98+M#r`|i804D0CkH?Tw2X66)&%CTXL{=@_a`G~f5fSQRR3`;ncqoGafA>pk}T(4C8F)90({eHsH8US1|6W&A-n5|Hl#Bu@j-k~Eg|&pK%k zT3rfk&IbfxzsQ$`^f-Tj-uB-f>_-_ya%xrq4^x`OxH|$y><-f;L7WgHPby7 zF^TP)i#`@=;#@~_c%$=gK!tG|LtN~GIkRQrx~})kLSNUXhwJ+00hcmu^mPF#7B$;n zbD6!y8612=TE?aV93ND^B3XCerW*T?!>4iX<=cGQ_dg*ALhA?(wwlm-z1Z55OJFU>sP*!CX)s-aM`K0}iY{T-Qeio28i>btFNQRHP9U z-Ah&C^j%@Kp{sVnwEMmUX!oP?_e{`Ov-pPGhhiD-;4%UBj1)&JQIAizx(>`#k;tf& zKmf_D&l#1z%#fLQJ6wWnB;f{SCTE$lVp+c6e8>mSJ+PsZDw_oF1aKR z)dp2%m7{_6!dgr_!&^17R)B0m4XhO-hMQ#|tib>vd;^_lZh-6ZZ+0;16GbsjbvDRz z;WLtx+B~bdpTjxS&}`*>P?Sn$-^{DPM~lgHL{O$E!nLni%GFsEDZ89nL8P))UfThN z*v~WV-3F+Rl~60T&J@<-yN%Oy7_&U9ao7yWQgA$J4>jyl&mU2IU1X$df#>>a7!#0% zYSKUh86fp`?SLyzQ^vS`x}wMF<5hBPhoHTw@?U-5@Ry?H3}2A4v$wIgaYrp3Q=)Cm zt|@DQ_vueYJJG{4_*nsCTtS1e0E0l{5hHm}dT|H8P3f7Aspt$I zpE3mFW=03PvQ`r)$hA0GF8gqmejZ_+04ABzKG+!fEKv#A+X>e`+?+rn zjy*IstzQA8j=5ADOu5oj8fpVR<6ugm-f$WLtOaUkTfl7e$P!OpX4YpSld)#InQh_G zWi8Qh>&zf+KYzrQRx!0BH!cU_W>VHIFUG7yShHF>5;$=~M*7>A$;=Xbweg)5(h_oa z%Q2NhOWp_1N=EHFw09k`(K#cVnJP({o9Kvio^uhB_Z-@X*tHZDkmqJ%dSVMLG<)pd z!O{qCN3G2MBxfe3Vjptw6>Ru@qv+d#(Uh}c7}FxpS*jSLnkVs=#rV@YtvAjz^DrR! z-Z+@5AR4rh+?Wb}I}WUJ$(+rsM^ ze0Ox*c~CF-hXg?m){pv+WvQV2aMo{%VKVfUx`*IDcHK(wJ(3hN zu`#jP765KeQ~){ml<;%*r^*RVdRCvYnm$Yk&l0VOgQ;HKD1)C!^;q3kdB~IcUBa!j zEkXT7oq>2Jf?4n~!ZHDAn~V38pFX^=*Pi&?*?45zY0rJufaU=YH}^bQec&5)p_7;w z-HP-%2QK)sdtY8}PwRZ!G(N6-s5(Ix2Jcy4_MOKV`MFLW!bjpjDqC?f;n;Ts@vHz3 zq`EC8*Ubq*%S4^8d-vhOD_4q?Q@J$llx$-Iu{g10!&o#icTQ^^+Cs8wF=Wncu=_v@ zLH7cevrDBsazY<%ej&#pX|7;`^5F1=-^~@*M#q(J_SV`&P z=&;lGkjKFhgrj~7Hw@YM?S)ZU+_m*yfT1J7gX{d$rEGruRQDqxP zX5K-Y@KDoQV1k;#%^u93YezRf2+r475XC&fCg07?wWo zKo*&^%@l{&4l8#rjPoGzGjv+fh5VTlTcb55WyQ9s->Q{JHh+dMp#ddJC@PG0xe8RK zkjbYgYhPT{xyZ?|Z+509tnswZoH|l;u1(+DIk#CDfC?8Cxhha+XiBZ*GwJkg?zEQ5 z&LJQ{MjgC$^lj&PD9;%n9v3eGxIa8z*Y}TW{eX6SmC@)nf?QYfBLraRqXzGvm*e2F z8t>Jnzp=52XX&q`JNVyF13(d`xt~DMi}!c8r}h87R_AeE%0yoKB#F6#I`UWV%-Mf@ zfFHZEwd5zX1botAS6)Q*a9tlBbq3&DXW%_W$`XKd@XGu-#bNl4I+YqLHgcGFfbKGJ zLdZS=pq5t2ZD_(kRlwPE>javOo745l-bO1KR8(;7!C9d6FH2u;;cORFhe-MH_>pP_ zZVQ|oR&3d*5@QTCzud{-eFSBudrMkINM$*%D2c~aQ)gpla3lxUJ-WFm28IH59=NRl#b=bg?F%}BtQ)KBl0>d6 zOk5eQ2(xb?q@nW~q{K%t@1TgU%Aw8a5E^gVX^cM9IiIJ1!s=CrGY#f*=+;&N{BHr} zmXeGut+cq|HljF{u7IaUmD{)!g^x7ZyfQa8FpgVcV>sAbJ^PqpBr?bEe06V1^o*F@ zvo*MBH*5n{dJ`z5S<{M{^s?YYt=QGd40S-heFfAg!&hQ8-VU@w4dqV$>vmTG8+taD^-^7BK# zorEa65HQbjC=cHz01M@GJFs*rca2o`y-?z;uHR&9K>`co18-^c%%=WB`C$_bfJuRC% zGocmN+aK#oG*1y`*WVd5-(J_dtNXX(Kp?BdxiJ+P=*#+qt~20zKdkjG`uL;(igqA! z;i#GW%>L;*cYzP2gK%e?1WYKWZb7O1gBBy~2#rSdSdr}dAw z=;^*V=2}+LesFnCE-sVqVz}V$ql$pTs$ZSgy1fI3Uk6f=ZGQmQnpybk`t}5hjV^O) z$!q+8=gB6h>K-Z-=8^)PnGX6Kv4;;#k0@(@VJA&=>@#(d?>Xp9 z2A_RP57rwo}59hsUjuwC{TW6cGa7~;LT;Q-`J zuv#!!(cu1K|J4YA%fyS1ItB>FE&;`7p04W#-C#UW>XrqV!KKX-&k&f}f;TM~V@0&5TNWuaP-R`XlLZ3yqy> zxW&q*7jCpW&=>{a_kOLJp{<-g=U^dzBB#WQYEU4<1qhlMaoHwm+6z{U$+y>*X^U`FnIw zhuuu2se^%vf&>)z{Z9f=CaZItkml+PGr_85IoaV}kq#(C@yKn(y8}1m8{tVif|l3{ z0S`hRV3MkWSLHK0QzjvTW1ASs*6&@(NN;Ojv?3rGijOHEMyUtOIC!JOX*=*FQ1P14 z!60By5Eo~Z$|ccb^U&F{jvMR4Z0^EBJ$JQZ+L}~m^s~wh+RUXAn;>MJjP7=( zaLkYFKe?pIk~)*VjV~r|1XJ1b!Q|8Eg>r1yUzkhuIq#WgDJj)~cuhVCa z-(zm*P5>_!fl`LD|9jy`}m3}+$%Z;8^iw@4FoH>f$TF(YEIms0JU+^a~8t0NI zc7T4WuS+?h#AX~c45q7bI*>gaK0O4Hbtj3nT7k2CF7|;3?hz;;!kL-0*S&?F|69s-m(fOvEL5=OzN^@!MJV#wdXftQaM5DF_D} zh+sqWLqsas*9ZB|xH60t0R#4$fZy|SvT#ecA*taD&X~CU9-(IU|5KpivTc*_t!?RE zVXm8K0xn5-O_&w-sqcA+u+({GW4uSjT=I@4cN|5qi)xG(BRY-O^qdn^7g~`JNHG$w zTbVd!E$GZR%E5b6#}(ogv{=X^M2UIkf=8%(c-lzHXB2pheXzKO<9D>>pQIFO`%r1P zb~H1qGvAy{V}DZqw}E?%R0D)rqR(&h%yy6y5FD!za|Bc2s9ec_)q2d^>-P6N+u~>1 z8^IXq7=K1v<&1uuVI$p=iL6Xzud)l}h_i1!U&|i+rM$cV2P0QX3%a}gnor^tu zzJ0gk)UqtPl-y=vsVeW-NX~_$H8x*xY+CnRZ?T(eCY>=*EaSeHs%v_)g0cl2J8ZPQ zw>mbbQ%Utnq8UNQ)QTU`|0L$U<&LSW|J3W@p*(Ooin3I-Y63zNPV_$RKssNR15%YG zaKB}F;IRE2w5$D|wpETOE!K1Y`5AILM}>~MWZlfR<+j&2yv%eWg_7S+u9Q8BkFXxd z&-Z>R^Vd0-EzqiWwgx0w(QDCN!Cu<`xn`T%YXRC6@?TB4n)_MArc}#js%~(bhnDKO zRR!EFY{rohB-`5lOdB>OIS2kIYcqKj(-na&+h`ii1oz{!R7r!b;w#&q;l~d*rpcH~ zi~-?M=qB_2bY*vyrzdrm`37wf%?FMzQ?jBvAxYY)#CQK18F^=CvkqiU4CDkT=5&1q%I#ud z^*YQC7rV30y70`WImQ`{qn|9Wj$e%AB)jCKghuL<6GCoVnA?bDDh2dtXMp>RvHed0 z&)`DqyV{6a8{Ey6$^U?Re9kv;v7bGJ0TmEeSu}g`vJzLY7rQF~RrpNsionokBH0?! z=81C0%b;|wfgsPF3b6*vyqkN@^NaYItJeV5NVFmAj&Y^aPdsY^PwL_DdkA<~>GqkD z{BElNggG&iOG#eQdpOxxnqX!Fs}|qCPt&Uog;ZXZR`6u9Pm`AwD>rE8G<0m_Dmgdx zHLkFztYAznfj>(j2gquWK<7uPA6{#FUYX5+IjwMJLHvvFnUV65L=Y0&lJI zuKOTVw;wa--kf%E%4JCCJIyQKdc_YHCm`SaY$=%*kosXSvGq8f8K4}>I6#bPT_`)2Bzw>+o}Oa$#3fJEYa))<=mywzERWH_-Eib*Q_(R zW6$gcVuu22ve&XV`t48YOauBrM%$oJIjZue=h27OIf>ExpT8D0qq?kwOV$R`_Pyz* zq~FD6V%+f~l}mg{D;m^{n;rxV)48L9Hu>$3C-rYf%RN$Gd_mGjWZMB&kZnJS+m3AW z)1zDVVe?=|%$G?ua@IN+F!(SkevgD^0&d>ySvsXe0Re|mq#&7g5W_+sfjNM84q8C{ zM^oRs1-i?By+5tr+@01(oQE*QLRFmfV;6wCz0q9o2A(T=Tw5dJ))zRidctK* zi)|qh5MY`22hd?;8-{2tMJ3 zKfYr`&&}O2_asDlMaBWmn|*B-28P0gYhG z7Sw8Z-pGV|Uui$_$k9ZDY(eAs+7iTpr*RL9aN3{ zyGf-0ML^MuSA?| zIKaH#gK7*q%FxqUxla#HlJT9AGrrsyP?eih4+S6F^Xyg;s#n`z7FloY5H)rBAQBt_bmGQ3Zj>R+yrex<>&6A+g ziP#hK-#n~W2}3=}14wCHJLQOTWZqhYbf8AQUGJ$wE76?Fs`f2lNuUItro`4xa0l|W zVIE)^zaH}T)nJW=zU@%=ypx2L?;lwph{1Lb#NjtyKl|4 zosiBLr&N?0S+0oR@@OzD`ic$IP}s^?<>H}1YVGK^D?&*yF#67Iw>*b3fb}65$U!Xe zcD4TjKT~PudQ>LBGS=ol^U_}IAh%=FKnaU7Uy}-Amsy)f9MIJOeG8xbK?73DYTkW3 zr}BI^Z9?1LaSe1ZDr&UvzwOcp?`;^ZSM6v)dl$u1x$El*#~Cg`*QoBPYBo zb@BkUX7%e>rrplSE@eErz4z8xx zDu>hAD>}Sfc6IRgUa*+~c?1bZiyQy|AOJ~3K~xRp8uR&~{4x4v{PjBlfCQWR-d^9+ zhpOT+gCD?x%sR7S`OWp9=@P6erM;54023? zNCtV@8oCkP2j@fBhc)vUo+q?o8^l>o0CF_1l|@zzC&2D!a@(udG!E*Wc<}W7(?wmp zaLDyZH*W%D0K9`nf=(*9LG%acG#h%phH9qdHgPd(#zcc=AV?oSI;W>R|q*m>EJD;#DF;Mw5@=gcA~ zLueHV@ctG0bU$K!uIt@HZje2Z`~L0qy1pTp*BS%lKd<{~{5crxu9KTL#6Pe$;N{~2 zB0L5D1~YlE{_|{**Fw!p3=CZfH_cgK)8;@r82uagt>{JqeawhQ2e+hzb;dutF(^d9 zLrmx70@^t8@8Kmv=G^FmO-;^dw&6P_3@US(QZ*LI{xfM5YM1sIvPJm~7aR+kyZcDD zQ}99w0>Wnb#Bw2OSf%|%)w6P@ASduq+<@iDvpSh_yW$wgYcX?%kEuQ zK{zVY2_YZQ`6mK(`^?ac+}85^bY)_C@ha!Z9uGgmdx9otPG%nBg2Sn8c%I*Y z*e;+mvt_EEl@MoF7?*Ll)_P-AzhY>@!%N9~IEj?XsO%}F*>UW>xjR$e2eD>$FXhTU zz*9kkFOUdlseQw64rTY--OSp+%!rn=2)BP&-P-QT8b#{TH?;|Q%oyV+$>FG4(2 zwWMlL(J*RAcFKB&AKm?DwCbzd498_ZeotLcPzqYJ<6{6C)oGm&PAHTsh{f^ zj549b%t9v-+H{I4gUxbcdNx-Mq8&+rcFI$C+L>kbxF!1_N3Y|jm5onXUwacybe6$3 zuPP34a<7~`cN98r*aI+ zGJb9@d42X@|1K_zvkU=$ZD$hL_6!4xwg23=!qBZVeXvmDkHJ$wxV5_?XW4 z>xp@LLvuZ+_eT0SdK~9lt|(60NJGWQbIWo>vqBQTXVW8(XVQhjd9Ez8?V?XfN8!4q zZmE}H&)ENGbMb-swllpRZNgmDnprzfbk2pVc964jMq_X0g?Eli1XfF)e{9WOwwV$+ z??i5vQb(#a>Y{Ps`+^H`25Fr}UXOX!UqqA9zcu+ss`+M-fE^KpD5C5~$)&+$;&)ehO`e9rig3dTr1ftdDn9s)ot&(IKb2SG2&y|? zZQ#!AzMq#vsaqlla%0Xrf9}8=Z|6B_yu^X;>3m){U{9D@lYrwX*?o36bKM8efgCdW zQm~K!Ky(?Ef=&qb95JO*8k#Hj8G(qwHap$;##m&{>WM!t-PdK#u=GbQ0R7EAR9~}Sry57383cxGo zNDlc$hw~saZ=b;JzOL^cl!<4;6NlhTlV#6qgCoka?JEAlj5eza8dnk`%&|NL20F;1f5KKgtL(eI3vd-Xje|tWy|Mtasy}l8MMMj%a2jD;2{Z(0lonV~7 zM77~*t$$$$nd^Fub$MFr1Ax14C&tgey`D%PB7?$UH)4|8v(?hiee415C>{uk(5OXP z%zK7RpCS#2;-_&+s^w>r)D8fR%=Nj^-hZz+pLNGG0Rh}v%VGn}vv~=sbLiadmQ|rs zMq8ZxfJcG%ltoS_Ux<{5A(27O19*-M_K2sv=WbE`#KY~0d1rDJnQu{$*k2!vNUpXiUj>V@}NaJ2B-zmcamIuY8l%Pn9`S!u-4Q z%~gj}!{=6+Hd!%W$vd(q>A}pXDTX_;6yeRr0PK^ZGBU(jY+FN(qk%icKG@4Jv%yVp zgq39MT%6c3qdz=jv_((#n58T;f9}`&Lo$r>V45ioWhC0%4^eW)d7KkSr;23KOc#j* zNsQ44;QD%Z8Kc8{tXRo}(yaI)$MuneL(Z^v$lIKoAw$9L* zrN?pXhX*nejxXvA&!1S%W^k{YRvWuT=PSGI_sq=f76+BxvhhlQ@A1F1W|bM_`bB5` z{V2e&GbxMXRpAEnV`EJXvIqU2 z_PuSho#?F6MNbAT&M{-z@m-cZ2s+4)_hL8sXLU-@W~IXkdA^6aunnqiWl@GX_Mkv) zxv7$W?nQVXyHadmSF#WXcyLDbiw;fl(OR!s#0JsH!iQ&HRZkpDMRyo;*&+V`=g4Y@ z;_>!!UGLFR~5f<;6YX_}>Z9+B_nPve|D+8j zGx6p+bDfcazU?L!ct)sD&XwZnEL0 ziz%uKu5tjCKx)6%rINeG_^b>J70lzscW>@fWPkj~v@&;u!NF65U3I7N&o@8iL8ZLJNT?U<$sGUCi zn&T{Zwy0ly4-Qw&x3oZg*mobU=w4Ihn|RgX zLV}m5Q1j=C;q$ZOH{v-Q!FT;sVrzrwvGYevO1PpBoy|M;_e|GsaAl5tN>AlW$45OP zwJfSOO?uPL7yFU9)PaHFdJfS={nKFJr`K%G*2c>YJ!6hy#4%;OFRj^g?ps5#UVH&Z z*_FIyH+J48?m5BZXV%QF(33#sWDg8pynT19&75PhEIpzQTJ$qH+Eir-b>qyuW(Rw} z$t<6cQsQK(Wb|e22YhYrir(L;)>_UEI7gYcn}KXYdcN8rMaU@RCb#6;3ba_T2F7%N zlm5cbhGSJ56@gMdXOUi7vkELbU~sU%Im2CQcby5y<$fNkYD2Kvc)qOv2hA83D6*NizxS!bn`s9!4Os!XMY}H__n_E@&h5e7s{K>ftZho@1kBQvpOy&ujrvZAbv zUnp`V6X`Sq`oz4{ZGe;{Dli7{zTbhv?uB4Boxt6F+%MOKON!o~*ZSe3en&j+R((kr z;KC!|o$4TRi17l{a6q32C=L4Ycg}O1|0q!oJYZ0zIfH*rAmiTdhn%0|&DK;@I)8g} zUVpe->sL4D^`7Kt(HTJh@!3+o(yS;3Vptn+$uZt{4_8uRet0;ouXvDAhgCm))SPhu z_6@qvq}z@Y9gg$e!ax$TqK?H_ycJUE#y1<=!x-Qd>NfVCev6F~7asNODkWOYdRX&lnpPyMVBdo^2NQNQpeB5 zO}GkWK*R&!2x8Cz6gTIN`v=mm9&s1e66XR+3Dg5?ncWMrDJ+~ORqG=X9u5yxM6Oq7H6Bwz!Ds*Vli zoMVxCGqVp+!v!G}v(7;}5Co@Wm1jqGlwH#)g|cK=6b6P=rw z&~A6tyBgKTY9*YtI2NvJC@oQ+U$Y5VIuTI|sf49=an8TRu*W+>BmH`0rxVFfz>;qw z^QbI)q^0-&b8}GwQGyixFOi-Z&Q0uEXR3sf?7r>9wr3f?WqDqJvt??MEV7}Ns21!y zWb-A(d)7Fg*KX60Z{fh6dH3RS|4FTr67@`D182G)Pt5rpbR8H6_DhYzgDj!bv!gS4 z$1^))lo|(C@>r#l9@@5~k-b6N`!SnY)dm~;mirC4v{l#(t3O|7a$91dZ!gH`yfn>l zmMi=6b7Z+3M@3r0**X2kwYL}@1LaU-^wFtcH z;iRfNe>Bi1;4=LdqHv4G3Fv44q>Gond0guYQj6C5@bT)KX3-+@%JsoPUlFD|iAB>B zxd0V{0M!*82PHHI2OAT!m5YZMEb)7m!zXkyu~{z+I-Ahe};xunr^3US|X>IJd}*LkDioYLtQT;?Oa(-<>7K z^APCbPcTKYUkV-heL!ZC)j1vigqF(c4TD;>q)IZF}ek#Y=0yS z&6$mGOptKQY{`!fr#B31zsGK8!x9y{RSCG1%ccFwUex$n>@@E!+Hpkdc%p!rxtg)k z2MsQzDgaQP{Do8Oipq}}^3K;>%Mq4 zL}TdvYME#n$S!DjS6CLT^5Fj_!pra~AU+<#pEkqgSqt%QJq`i7IoLhoxw=20GeQ!T z!I(fa*i}5{pP@66<+1;*_zgUZa+l>xfR)Zr_0gsuO4dwYDvG8&m8x2Ub}${-pm)X3 zbmC<9Gn;g`$~qir+1&O&)UIJKW$Si7Q&ojM6~uK29Nmd?OOlk{=8nJcm257 z36JDiM9U1SnN3f*t~;OA12_4f(Z3zHb3UR?A#Pi}vOOg*7H*XN;i7}QXz8a*>9lk5 z7oral;Q4(Ol!aWI`7$p|SnX0m#myUU``x-$|0Z48q#Ku3)>DN$ps4~F&mpp)!6@?U(ljP_nBQzf=-TkT}Zc)OtL@!@b|$!(T7~d zr0Rri+yS`b1@R#G9)kr8BkhgH(6TSQ1Q9yIN?CVD0+_3>vY;s9-#}qmF|!`WXk@)D6=@)XC0k>QZ{wtsq)v{TcM(mhfDlqTEXa@tCLtiz`0A73EX7>7~J{v-7M0udfojvP=K5fQf zE>dh(DBmBJv zzIl2CYZ&_h!5vony-}^9y76JP?fT39p1Jd70{yw>u0I3j^HMHPo!zW_ASt$s#w%s7 zWV1aUCTKXtksV1eGb#Y>G?PitVyC=GPN}zIp35lXXHK9hl|B1{CO%AAoUm4zT6mUq z)BD@kx=(OYPd;QvSwgSK&3ogmia{b5uzL6=;xjLrKw{rh7%u9{rkkFZvu4K_UB3-P z8X3?du=3pbd6z`fWv1+eGuQ!!bjFzzfs4kM&u9O$@-}TlgAV)8KHd>pKPcke3;lvD zJL@}ww|+|J;WxySxr}&km}u>P(M2R@yrbY?GwqX=!J2+zn}(^2BN3r>?!A`Y96Iz= zaB90?ok@;+2Ea1e&u^S=&31Ze_?ek0FTIUi44rA4r-OMcZEv53+dei6hSkHk{{H5){^RXhU)`M6qZ3BqK&qB2Ud>}K=)W?zc4=@8<^Yc8@G*LB0ahz*gZ ziEFMZb+y?ZRifS<(KwKug*^wwg6;>OrN23?GYIVu0l+$pjCaP>^N?gn^N416&PQ*^ zd&?OvHt+r1DQ zgH0!VXj>HE5Drf+yJ@@^W!3-yIQyX0bhC{lrc;S8%g^F$wao!D@*Dy7GzvBr2m;56&5wbU_z0W=#AHH&Kkrs*4)nCensDoD}` z1=Q;16DZdfrRIaLw;?Ly^K8wmM3jwmXrR%zlMBbOf?vHiJl3fz(nIT#*E#yXbHICd zYX39vDT)4B&B?R)IXW}D7-s#%50d(sp|XuJJQ} ziO$4nw~ZArnf5X|lg~^)gE8^_CP@p_HHCvo3tvpM7X&pk`Z>tOu*dj#IKBAsbDP;~ zMy*H^XXwAiDxG0KKm64uXU-5JON^UBY5RS9D89#vy?N+ApojV6Wj$QZyg9W0Yl|J7 z0C2-Q13*MWGcO)P9@R1)O0|y5Vk&!#p7A+oX|_Q5?PS?&*$8;i+dUP4rUh4sF#HT; z_&2v}{a^Q|b$_F7E{;iAb;u=n0Ij^N=~jEBi;V!{1-`IXSeJkPa9s}%YdwKiJeC3D5st7xY@PZ)oUa-)D=wy#g3dv}Yp#3F_E4m}vW4Fb?A_pDr(OHK0GT$m^e^>Y*;*Z9R)qow zJ9&Ad6&`>-x1eHyb14*-N;c}Wt~dFHE+@i;Oa!gWq@UKU$obmG%7P{NdDf+8OgaQv zv@OF=;V-e2>cf9p7c3aY0>F;!I}g?h0}(6YvxyBIY_d`X01gVxtuJ;0Wen#Pav`9* zHJ#mfJ;_v3kV1ud6m9_KB%d8U-?5YI9-}=K4r#wwt)}zaxV=BW(_NndX}jXa)Y@RM z@1<`Jr8e)smygTgi|&P)!GyP2K4_+;o#jdA4vxr&D&m4Qe;eWQFP+v zdC;da1CDaygfk<8BQNB1GUdn;rHuJ+K)AB%2C8=Y^10orsgdY(a-CV_?~9J(U?San zHUtur-klvf3vWc9EKt@kpe*bDjIz>BsNID-mQ0>>677|N?B1^(mL*$RH52dN%kSV8 zbLsXM!vvh5Zb|vQzWVq=qr*< z9qKw%WBf!>SGwgIXFO?E`Q359J>i;vAAut;)FT0m+@5|mUQuE#0wDw-5gUt-W z`Z9<~(`fCHBlFlw#K-ULSfXRG8Ogd=ayrr5Va-~D_R#R9y(@@VuWw*i%j}Kivig4# z48&1zthtPC%T>(;h_klac?^&0XlEQ;r_)dlV2=>KVDeGkE2#Y`oiVt29zgdKk838; zY9Ar6dX%$+&GdVomy@5rC-(jMduDJMzVGop4nYn&(|&A>y=LL>BzStZ*D?fj^h58M zVJot*GV&4Y7uP5pQqYsf3aYRkdTBstf1K{|JLTI(NfPV4`8bz1khaO!d)Z3(&yUUM*lf(9q}tTQ<9 z3vkA&>S?hRY2Wr~@Us|Z)w z`tE)uyXXU^uec+?$^}0~ip4ii9&45a;xD2i3&EXZ#oYyr*Zo z53(kJN`#T%wyLA3USS!05fcD3@E*WAgQ6T{c9J&o%Bm3#ts>aNxY4EN?${DNcq7aa z+f3895QN?O90Gzzwx>*2tEiH@6%|JIspO15U2Mp4FU^zojS~@$no~BN+2lmmBeT-3 zJ({e=*t9!-F#T=ip`BrH?)6#Lx=*VI3?{#-iL^7AEN3af&f(3Wm=>^Pa=TkZfe> z2qW#^`283NXIN5B?h8Q1`}~eBarXP?YRWDj9B6S5J-*o!c^n07G0sz_JIGu{+55-d zGc$PREF_~|Z5nOp<}4LwA4|9+18))4I@*cGY0R|A3(x4;Xy>$U2c5}*+sb^{E5zF6 zJF(nlvF#E0$dOuSM!By`FEAWU8vv#OUo=xQ>}%#T17~RRPxsNDvdaoX9k`UEW@*)d z2hBO&?d~Pr9m*N#TAw)i-Ofm5#?{XwlS@iTrFy)(S;qQj!@uMH&r72MH@Bdpg4apG zkTPXnvXa*23NmW?$z_dXMxb10MkOU4U6+IUJ!L6BKbKgu&8|jWk6bT-RHGb7c2?Nsg({m3;=M{QHY8VFJKMhmJB!BS8d;3}y=;tag%8M}Rs60F|hB zV4k33UKkX6kwfQYfd}PDchn%m-dDdX3o1N;ZXaCff){-Navp+wz1I52yVLspy>##C zM&so3UG)OLpK1Y)v0L&oVP_3S;uMD~5!8JDu-3N^I0vwprG5W^Zaw0=&*UX(5~tI; zMX=2dYK}QM0&&;sLFa)mBz<42z3;CS%{+yZEG9H~=OcJEY7F2?! zUQ}+*8J@DyHE=1iPTChV+@{qo(m7e#9N06RMoS->hjrACcHYz&F>83%xxsD8${1=-wa2qU zkbo%rpE32=IwKV495dblnAfbTNiFTd17oI#N=ohN=mJ#l*#^rq< zX(%?|(|1;sF&%c0FLjAK!FOTuHl^;bzRyLKK8O^lLdeoJBROsKaM%8g1^?A$F=_X;kv&2xYoxzQ+edZy zz&LNfhsUj&L*MT4InZ5D32+CKNB6uZh8TdS`+rYD_fV7-d zdqvY}Fq>yJNy{OqD$D?Tp~&G!wZb$U`gI=66-dWBd0^RGV}keaYVdcr`Q$-ugN`!= za^L?1OZ>6Q1`9MBWZiK&7!RNVxbuRdBo$04c{(fW?t`cCfoz^&AdSa{Mp}Gz2XV~o zKVB6S;xem255;&UeG4DC$9u4c1n$0|irtAs&6@1XnG8vgquaRjF7=dma~sGID6qq4 zl%9`P$CYUK=I!;$TdFv4WkDGo@d1O_oPX9uG>J|drX(X#M%WtNK(Qq?hAW~OUB)LU z#O5SnhBHdnkVX&X^sD!T6S*Zv+^iOtiEI>9HFB1)dZfBE8W5GpeiRVGX(VqjYsA(^ zfnkT0ch{4+O3iyen3mFE{OVpA?REqg2tq5O zVR_SXnniP?c%2n5K>1nyA9BV8IoKIz8#kSCKp^$md#H!g zoxN@V{t`U2#w1uBc4k&6M*W0eh*K|HHuj%7(UDfgW9i_tr#>9GM`sQcH78Z7Z}P4& z?d)rOUj84GW!d9|@x|ck!|i{O&h-9k>d!AI3x2OP8xBNbTb9da zy8pLiyiyd>w~9`C?>%DsLGApu{{~3KBe!@Lr!^VEI=?fjVh1D}%2Vuj-otSYS@tr@ zuZ)c5v>92mR8!-RGM{Ar0WRKxD#MF|wEqB^>^#Br)u{_ZBo7N_znUH)0;`fV8RSsbc;vdHe77&#DN=B z$?cP0T~F)pZ`b<$-D%z3sqJGhqh#vJ3w88PT*{N*OPg+Q(06B2jQp1m*Y)kE z>-zI2teYfc278@x&!PP!|JrBbowrYy^>jY#OwOn#VDCZe5oi{dnw)oJgn1!W(?!Fd zX6$IcryDl`NF_wab%v5^J9zr~d)J4ku)e}I2Moud zMQ+ICrrKgCyWwnxOFYR|1XPCWJE85-(KHRkQL8z@YJE4Bg#VNgr+}q9K^Q-yKXu@1 zz-)Ki*iuwQ)v5eNYL?B#D1b!HRZ5nlSF=EBU;Dg6-o8au%hp$svjP!Bc&|(sZ66 zx#q7Y4>mLKa#W-BVG|5$&xhBqDo~(A3|NORBe)z9wLX8Ci(GwWDZ_P*8=KT5h0W>i z)4{^?xd==Q=;XIpmf1Bzzn>$W`D&S<2LAJj9SqI;5E}ADPyUiM+us&8Y(kF%CbF!SwRAj!?;h1es#N8y69!Kj;P6Ac6 zX{6PUa+Wpg*}N=g+Lz3+fs$0&{~l{LTX@oj96;ayUOF?vQ2?mgM`uP|PET~f1_Q~q z4%^dJ#bigv-4R31vg>;@Ij1+aJt!+8f0*9=sdmN}jS5|WYos3k{wbR&8!q3bUeU-( zO9qLvMq-lBud1uc_xxP=%EQ?padm@(nETVhTlNzdI?Vz(T;Con^M*y>EMs8w1b{ zK=(=#i0Q%{`FH&B>a^DHZcpn!zEU;egR9-Wb`A!;z5vCQ9rocyJO})K@SB0za2xHP z9@qN+-d@Rn2gQiVFP?!=goizS1v(A)MluN*hRvTcV@4MpF9q^Fl$jcpHyF*paRJCt+%r}s~-HmSSmNJ zg2t0W0;IOsm-A$BWf=s*Va!S4Q2@mr>X%21Vq6h_tP}j07#%9o&xW&_*vi+}KEm394#Y1?>%^Ht#(30f4VlulX z99F3w%E_>feB#K+QfMnP-Iiv1*CEc|phwy-Qn+j|EPpU+eT}c9usS}KLmurA=odHo zVmnO=er1Z|1hTl6>;QYi+bU~E@QVXJoIo$XfV=Gr-!+ns)7kf$JujggMl|-UInW&( z#k9$qDe-jxDjS8TvH!MCnLabfTEsT6v6uQ#3EN=OD)B z^>X)IGOwm1?Q^kh>ujU>yOOEac7Y&Qpo+sEGSGNm_~uDC54@GiiR8&f^w3|t0=}_k zHg(O;_k*%@FI8v+_VS*z${R>Hb15DB3)igV)j>rF#KX69Lb+xq|*~`z!nR7^zN-Jb|%Uq>$XhUbLfS;4IvLSio-2bs= z0`I$>DH)EA{)Emr-v4*jnUTC1ZQt6?1lYCyM>=PW@?$zvK*R=f-;K5g%EGn7o3fRq z-ww^CrEO#`7{li^tXf-Gz1ij$jIs8$eGW6o2H+TeF7uM!nhG_1QaSMGYwn6sRM1qG zyu8O>i!L zkKXRTzdfyg#9vIwL8F)q5eq6N%V~l8E=o4CvATs-)K7uNJM*CNnLj_Q^{*eV>yHm> zz5VE}C>9p{{*LW5E$_^_x|J|!6}g?Ws^QWG{@k=6(o)d91eY;k|J);pD!!mD7%RsaF2`~CA#STh7&IZa*|$HBpb z9=N2-YsYRlq&$h9GpqG%x$T3v5iOjbkW8G`6QVfZnhW7&QG@g=&&xq*2jPjx!pHYK zJ^2K6#bQ9fbbDRr`?bEjJ*_XkSnK|FtzQ7R|M7>>PvTIq%wjg*GN+iGsR%e85qjOo zI2NvN>pajWW|FOuo+V>&*sQ5l%Iq2|S3sPsZrZ<7O~$#l2*ak~N;~6CD)#;#rT$x&d~An15&Drcpz|4#fdU;~OBaD^Z_@KspWn041v3uW#N*mm zg!Z%6tZxQQwmoxc!`>O_+8@7k;NhA>L`LHsYZgzRa}c9yQDUXtn#0FsdzhG+Cxr{s0}$A82Am&VmJdd*(anM|4M`ZM3t zS{)Icl#jo@&S2ZsR&PpXDo@XKCQfM9o2Fq&^6z*YDp^MYg7gU=2!GD94{P_Bj6od&bypAppW@aVl+?MvOlAa~n{Dutkg^!M9fOLCfsFQz99RPu?Z3UQ0S^D^ zm(op`*}%WM2S2mS1nvTcZvaBs=UvacT+alg%)(z!>%-H9ecT^#<0v`b%Dg)PT*am7 zPm>h~t+|2%`^-ec@B_(WJw9F6)14A91(qGLv8q67 zg>HgHkQNijKi#5M3^?mVD)*^wQ3eFEMO|v2OmK|0m_AG!ogwYR2QLY#-S4!r%alnU z`bBF;te5qIH=;T-&4Zc2I=2eIu$*c$D#{2x0ICl!Ey8zsUc(vkafePw;jB(Tx{<|x z!Oz6b5hYdIn?c7fE@}dArU>&v4q9(9|34w)o?iIruSsChJ+v!$HdqaZy0~ke zV-{s*pj9Q%&X@u{vcnzqK3i;;d1h%d)#(_<0v7yo-zsOSRq)aFzToCg;PpYe$Zk}q z-B7voIvhD^xwQ@!m=cZ{kMuUJiz>PbFy|6G#R#91^GWfsI2@Y;w*n`Lij(IaC-uEF zWdO_W86E4RWk^&s;h?JILX7?(LFCHnR?%f4mJihDcv z>94V7Q+R*on$0;+-Qm&?0qhKyvmn`K*dJ$vSOWL{YwJSEGHz)q{hp?&o-Yk4(uY}|jf=1Q2{~&q(oQ9bAdun;!Cy&dG`7S3AKr7cm!H!a8NseFmVZ9l%pC5Fhz{i{ zAXG}~O*jPm_H+Eyz?u9M>59XdjW}=9na}CwOdcIXw2~Q9X9&~}c4mTY1%hp7`l2t1 zRrO%sD56@-+L@7f$fJBCyT-Kf`0cF#h}hKvDN-H0BZY)Rk<-<%kv&xEj)AJ%j?OGT z50e6LyJtMInV`|2WgmbidbopPB)pgEsK5pKOTT@5B25Md^KjS_YrmTmd`hs9rmrrrZ$e&?cNRbyLc;))NIr6d=mEpTWH^`k}@Np8E+^58pKE zxJC9Bl$;V&Ulxn^v&X)_{{lW~%3RwAQmpX3qOItQ!FZf|0!`>x{5XI*Xfp^I25bcvyzv=`GwB{GJXNzFGU^+X2sxaWLu z80|?(${B!^pQ^oO%28$HRBD3I;`=m~J`55R6JsVPIxijZHlzH4ll?XzawoaI*>sLt zg1((lLzsE437da>&30N&@Bidn7hsOl8ae$yrP9b)h3Wk#)rHqEn-(-8=Stv)?qThe zUG!TAt;y=qxKf#`T`-6F|D-2s~R(J>#DF|_jT{n3Xkj!IJ2TMymWEZ0FRD9%|Q z2cVet;mkx^GFhWg3^q+PA0%Ko<<0~rKehjf8PGPeqQoh;16WgM>nw^7Iwc@AcQuEa ziXIU-Q>w$M8I3RHM z!CeGO_<7FjaqZj(Q@~jJ;mb=EfT5akI;|g`*81k*y1xF1HC78rthX*&RFVSgfkUk9 zYU6VbNdU;Th$oM(C%`DV@K4Pqgqbh|`u|kuu|f7t0_i)5WtGqLFLKF!>Q~e<_zhQ< zOiPh^>JTc%Dbqfkn;dD$@rc%E=NVKhh<8|4^8Vwm&_Oj&=YPC_i5FmLot^+vd~+6i z^>s*b5Qq16a8X-x_K4YI8oK2YH^b(1bu!JvY?9NlG0Oy4$3{D|%{ zH^NnyJGZUOd0;09Qk}v+q6-h`Z1=C$`sLkPuW#4-^5(R@xVbL$+gE($y}Vx6Cr5px zL;1O215Yvaj##%kY#%-mC@HTtphX~8KTihR<2E=sf{J0*91AtYB2VOg_@K~p zryE2$z}0ch`b%=v1wyByzBIB1mUYV6hH-bqQw_TO{`@mp8?AAlJF#MC&kI`YFrzS? zZ2`@5Lhzu)jBoCLe&)}nEuEaFJL`A|)47$ov6b2Q_Reqzwv=-kj%iW@CTBa6mhbeu z21qIcs{N9I^okNCjy2;lMQ)U*vMMwEi;c1 zhF3a<#K;ETzw8{?G@zVsGLs;Ag8gm(HwV{i7Ojla?YQQ!|IwMqxbc`=1G ztPkN2+h>f!3R}n{7&IiqfJ}!pLn-Lr3xFM}lm<9uo}Iv}f0s=%_dS$=aL}zYi8Hdj z;>%hy=cf1r!jJ6~@Hc=TWZd8LP@*%+X^#is4(>aE`_q+F4*(fpIAq&lH%Nyu;9y4* zXRYIv)FCUt-IvGZc4(^*hNsSJ+DELVE`giC&pMdIuYbo3xr2a{>(SghU80 zpVq_El`SOSUQX-#N8C;;8VwG=J|K9>HLghjArZ$)i~}(Cv)7^I*-b6kdqNt3$pmJ2 z4*US*$}J1amf4-eT*@~09M~70_;cViCOr+HAKL8aARv) zOXqt>HyQ3e>;-5{&{-hq@h9m(?l?tVb{|RJxVQ$8~%apC|5UEH8YQKYk=aR?y)Ovb$caCHf>xvY&356zD3khe@p zKhI_Km78Xz)%^`;hqIO)#A?lWh^0E|MEny!D|(e=#^HBtUD@COjvj6$j_dHqmPMCW zn2@X$-)gmCr~z~9z~z8YV|)c1H=y+b=$q#Uf>~)`Tt>6wl5-Aj8D;wls3Hp~+3&Dh zSp@U-yp-&S;uVnL*DLtz4BFa~vw@@UJ z7GVQuRu&|cpAo|y>`d*wJ$hwt3-}G;C_HN0!99PjGvPD0^wyDvpVpZT;p*LbL&7@; zF?DVwsykr#*l&KfykJ*#T3nK($Y}dLbW#R-!kov?MsnQ&VFSyNr-F&Y#P}UU{~NeF z1wD@e71r+r!ck}1-?Vd`I@8&J$fP?x#demxpHFti@Bkvyy3UwPt?YcYeBq{mn=-3i zS)DW$sWbpuTZ~XNVzZ$Ra5=shv80e-C+~@#jJQM}90=c?O3J4m?Zcoo1)MO0jcoCG zt#`hh1{FbNX_H*Mk{W}Hm)`ScRlWDYz#4tr!$Y4{fqWlWMKnTXsiEV#^hX&%b?1-{ z5TtU>GPnZtttIZ_S2-KZm6>nb-GoaTqHPk}<#n)?gT{sfWy2Ii`d}x!h^QAl#`x=X zTED+r>r1rv12w_H%6sn*st*_}$H8o|0vqk$bv-gOn<|I)3_l^A20h?wzNlnel!br4 z>aFnr03ZNKL_t(Mt?wQ$>j!j7`FLF)oqY#R00oDegsKPl%uj25!ofsjr9+L)U(ng) z>BIw;$V4Zw;DCKID7ex^wQUu(J?oL=9USeHFDLrxk_x#%wlbCBa%LmtfnKZzup6j!wrxh(9kB(_RZTtT7j|f7 zWvJ=-(8v~|$&1e6Y&WT5xp)oqxClZ9a+b$Oa;HE@ewM!ZO#>2`Hz=+Ie0ladNh3q( zRVh%H=h_?OYbo2ml)2t#H>f}P#fJE{Pd{_Ul?6M163?5;5ag9Wj!W#hj2rVxwCrs= z;g=3Veg~~}2SqycVx#rUv`U(j@r;Z%(9-lmhmw5}U5sMvZUYReYsgyU(iz&{28UVl z=uBtaUHbNE{95h$>c}WU$!(xId>es=ZGIQI(iZahTI?GrIkDfC^T{Emd@#D}Xqup; zp-Ayx>y}BbO9x6^Z*o+7>pP3o8Sc4eqd>7Af(aNMveR}!b7{#NIZa$n z1+m+l?dvQb5C)ZDtIVLWIGYkPa?E_wnwV7{1#LKd*VMaDO5a)sP(P>57 z+50b%ZR%gg5}MOb=}cu~e}>LP&gwo2zPp1qJ|dT*RTV9CG}(1^^J&Ak6EI>I^$BIi z4aA(GR$|53EAMTn8KU~2t=$NhXxOpOsSGPRrTgWz)M412TP znva`Q1zXfbW%9B`^$Kj$G)NRfeU z>;o@3;=xWM)+EpJUQ=n5CPqK{?)T2<_IlACx$pdqTd;tdL#@R+^Fk(b>_NLjRf2S$ z6MtT3XLxv7hmILIxGGZZS4gu_U;Ow9B}q-cQ9C4`{C1*X>Ln4m{S2Og!>RXY9W=gQ z>(%|@eF0yA+JttX=m2wnVkHA#6U$3`i~te=GX4XFi~;6(tzVwj`s#MEe>@JOeq1<2 zj*87`{p-_Z{RsgbKL4k0u2)7WRr(uL5{}b6cN!;0nGSK&EoQn20Z%)O0#z<;#rX%Q z+n|Qe8gNtTR0}eVxCv`iW?xa<+5I*W;v)GVPMx}zpiV%MNIo4{P!`hrr$fm1^l2(b zVU0Fcd*toRKr%v=Wgfj%$7MVdY7{n@Ai<;B^TFDSlH351QgB<- zky4EHF~FRAzT@RxmJ`GodTPt9brc66Qru0jz6$*{oLI!LF2gMZ=cX*#(lr_z8Qo|8%p{OVtB8DlNYUD&b%9ZrxQ`pO>0eh z6+#an7BOW2dsqRc*E0z_3?v883Do9TK{W{=auy#{gmkXKtnRO;^*5)r{`T&)e)$TW zI~IS&4kiFgJ~WGGE2t^dpg@ydSKLaHz;$G8eFj26G{{0AO$FD}`u@{({cuGleyukT z;=&_f0Ixj>V^TwWV4qJC7CZi`KFG|8>%$*Sx;&J^U3uFh%s zjD>_?-8?A31YTr&$PwF?ZH~i%sPbk~?Gt5aUi9ekrfx#Z51DiS_~ZkPuI^o={b@N)h^!po8U|zfbdvr$TN=ZG$1UP$wE<#xQdjvx_YvI5&C@`eLxLSi7 zkKa7ulCQP?_;_94<7Q)Co~1J)2JSvWox>0loYaZ>q<$qtBKjK!+Cn8`Lw=7>FIQA< zBOV79a9`ztSY}5iaa`C$oNCtP6EO+X1;6BgJT8k8OD;1t&zIXG`>#rtS-JB2T;MYK z@%~zYXd|qGXQp2?+-kQ-xnYtfz|5bj))&sKa)jkIE?{w9_fnRNnBbkx8qw(+>ND=b+{(c|@e}70)c5pHbWVwowM||N5@(I_b zb1C3B!4n5ULCvkeEdh6O@NmtA! zcDAELBPD2qgen!(_4qA3&j!R^vzRX@V(k#~m_CeEQ#5D{2#jHGpwjQo zI!%%3-Dn^yOXWjoV=B8W@Aho!rtCndWc>gwWgpg0@Un^U3}6fqj}oJ`vEv_yF(Jz= z6Z=r*mZ%vtA3e`Ha=G}nMQ5&^>B^{M3ra2$UOAhZi(VY#*Cl+>g%W2w9RxNyv}j2f zqCxWrKoRRl5QbYaN6&u$a$7SeZRVM+By!^GW+uA6YY-avmZ21A7_sV9&3X4j{k+|v zlSs0y-&cbfjT+SCjdv?%OZfFf0zDSQL?AuDqy|= z<&##CIpR;zX?oUNew&UeB!;ui=_tF+F~_W$#*x4VKSqWf-v_t^Akx}fdxArZr-3DM zD3J$Aorpx{{a5F;etUmfzr7W$>w6q%MQcgy4aQ>16Z+;;{te{sP$hAb3WCyb z(UFPXa0L8IC6X)o!pGq|Inz*yQh-c>*zU~b4mk)0{9fz@+fjm_ji33vfT-2ZcoTo& zcg8oyBHVxDGTIVuWcX3ecBh>i*7>s5?c-V}oXIeiEA}Tgpc)D=U=2mf2Yh4iib2zr zpJd7yG$31khfXn9a?t_E?_MeUO`6MV{YiK2V3GRcI|y+5ZcLzL*q(xNb!Bzum#5SE z;*3gw552}Ef+N>r!Amg%OHQPv<4PMvWk|H4EV5g8k42{b+9UJXE zq{}M~&tBl$0Chl$zx(2s#ZhRz11$y&7|yGi^9>AQ=K0FWyUOLd&gx;ri6qPMCZ}fJ zo+5P9en!<{idMXhhUJ5sWB>hA8)QNL%FJf4&Mxk5!FxYG(=IHu4XpqIDfXTnUjj@OI%Bp1bjdca&ECVb#y0ut9 zP@$Jj{wOSAYNYJ=rZ19;zyX89RK0u{lAnm2MA2-JS?Y`K! zUbR4tBXYo+ZL9_@r8D87CTRBtcnOp!87VV*-JvsnPkn3#`G@3#)KOHMbP|bPMPvwG z{V~ z+(I@UaQ_4jv28UThRh%?JHjl{kw!FocOw}t zXa+24Ukj>7@FLp)n)1a=|8DF{dLR*LwKS!aOv83Z^x9GXc7 z9^HlQE}dhXV8Lg;Je}4bUR~E$_h<6m?-BSpaK#vKtL%q`?mNDn)!kmEZRPd!>3vR~ z@mYskYf+>$$h_j`%)XzYtJ+__4~JM!*Y(54wf;K*-2(u$5`F+~{Lew9I?Z&D9@&Tq z1qhW$YcmXCnh{~0!I%h~BfoZW1c`Pq&=-RA;z=U=j*E#2FM)0%@VCd^OZ z?Tf#U@gR7@{Q<0+*k3Vu#WcUB84N}F#aN!!x?`Wv6E8XFp!xpqHYHk$^V)5`5*L)njJh9Aq-#Z=A#6vn@3Djj9! z6M3wF!$72)A?qE}N0K!x1XKp(r7UeZFN4EPnuZ|?j-wx9R(&|dWcX^}&wH~6LrIAH zV1~t4f9yWLfG)GUGc#tVlw}A&+SV`i~IpE_n-zpm5p0RYal zq@3mRug@h(qJ{XRo1r@@T5mdP9H``G)^~zUNQx|lq zn|nGF%$_A5Yi?vs+=t3&GRgI;85S5W;A(K#@j%OHz88Jc7Q|Ki0BWzcq}wS!FJA{e z13v{E7BHW}!F}%wfR5FLQTLD|s94^aRO@O`kMyocb{am*seWm_+tvYwXzEbrJiuD! zmi?f-3_GKBAJ}xPk@i?GofV$ae~)KYNSX>bHr@QmR1G@AB}asRPjFhYo`ZbhaJ#)% z4#+0hn(EFa8T@pNqK-yda7aJNt%9WigR*JSi5i4gTESfrMYaF5Lt{~)Gup}`F6`u+ zEV$QKhk#`jCRrx)YF%qPV`x!2BZ`Q=QG4zOP`7=~d)F>spN?N98Itd~)JzdHD?M@` zieU%Y%E1p!q0MYyxrtl(f(}Gd#m$=a=U<*n^nXg_R>qGH$b)PYHNsAI;k}?Hd^iJm zkB&0qz$bwF`=<*JuOdUt%&&uZ08~&Gk^u$4w^6k_GWEceKW6IP&wS!a-Ei-0E^H_c zs+JGgt9$}zdM=)&wMfRjFIL3o0^;KnFK2XLxvo0^TlYrCpZIqwE?GKc*B`Feb%%qD zU{d%(CwvZl>3?;z*5BWs*59BtAF|eClOf&@*UNf)LAM^YEDWWG0MeEHItVT6C|)>& zXrI`36(jRNmk|1I+_Z{=v-lcYR=etuUVDBFv*SZC0#as|LneL;{9{dbxFRs?&xj4uR zy35^leevqF?(TI9=`U}U`G${|-B$3AcbI9@L8d(h);zX=)HK`hFVJR z5t|511bJm=1OA?K+q`W>&5;UQA!`4t(P^fZYH#1jIt_JXZkDnA&~(43{SQD-%425X zXL8PHJ+j=lV~$&YJ@^gSgzn@G&Otcas`?|rskmwtez$eCU_5(v08+qoWoi!q*9Xfr zjX^8Oy46}cc&bdfWIbA3vQnxtK+}*j-IvgEpiFV6CIi6vY?s6rh#wdZZ3&zN&>QBcShj`)P>0Hz`)Z2Y4;C-+0?JR zTflVK%!q@t=v@u8js(4%Vx=r7epqA@+xY%T-Tay=nCGHHuz3IMyVACU-al_U^?#{gr3GNp^31>ZbEJVA`v92UoG%4w< zyVkGoPRx!X%NmV^Y+@b+&%AXNU2{5^Q0vTb_ld!DX<}6_uIsV*-I57{#nELYfqA;C z000sc`}`EL_zw^2!w(P-ss-pg0O$A<2Zni8!3T6@Uk*r$)zLnSf5Lxx@4WF2?m&T z7aY=`akDC(kNpIF1zlL&xrqq|fM@*s?n*xSuW!!`QV}2oa3_pL7M+Kzogk6Ubm~mq z;I5?1Ad?Poj{gTo9rPFcot1>snLK>#3)-!I$87p(eRsj3tXunx_3H7j=lAxgmf z*xMhMcRj9k^YKamUw$uVLb2li{aYPQ75?@iAA7X2ot?-VIfz8Yi9Uq9ass_ddK0SV zJwC9MG)fFY>2|4~ggRiiGGu;ujQExnv{2Pt@~r7m2cXciUwDs|TFx>LiQ#Pn`nff$ zBuu-O${IBU^_uy^pIftI$B6_085JV>y10Gd5C)kUe6@h zC@E+!)lR-0LS+C={|M%p5)y3b#}1uoLr@YoxOmU!;!(|Vx`R3DLXhW%7BiO#lQ$uD zsdTLH0Ah5B@V@T~SfRz!QGM2Tq)<2}O78YESRAjWOt`XMtbFl<=MQQI}I<6MLY z&N!@jm}+H#VxOi67|NDX28Tyn{!*Qpz^z(0PFtNl-o?!s90$%LaWYqfdt=3!Nthn9 zX+M>b?Xx<|En6x|KEyTm{g@zGehM7K=`A(@*pWnIt_rY z6*6a>*kQ+KLV&YEvtSk1NlbNgX`E4bjFdM81{lMg55&Tcqif7vT34IrF3_$+$>=Eb z!Iw*c-h-b#JgTK7vb>V%WSCUpP^X;11Vv`oFAvsYVCWW<@bx#JJ?3kXU@M+|(bHGjexh3op`<;oVI z_4T z#Y4NW@-J~C0q${Cv@Uid#u<#xCRaG-P!fM|c+O2$Mt>O838n|~F9(-Qnun{ z8zgHA#r;$?9!DU1F{%s2U-V%WXI&b|^_p#wZfGsNH2a+EJzbzzFf^ZMrB4Qbcx^eP zc2WFyoTWckbb(~9QlMgZeyK|{tS`myCHT)RZwqLH8MKt0N9F!4N7%gAS1BTflEqbT0*%^iKZ`-_%pAIn;3iaY#>D{#=n)N3bWC(FK{k*XcMEI| zsj_9{jQ}3Lj6c(dU7xm`)fAHWQ>9dyaC4n)C$Yll>5g>;h}Vth2b-DJpQdUdL(BgI zmzvY630kdb>GrIkGT!o z-DI3G=k1!N`Cwvr1}G@7*i4++PC;DJ&JhU?WP0B{XpCqt_!f~6x#X>XpiPCYQ9&Lk zDJjbMfNv*P=p(~bXdz!LN&RA|!b5glqSps7@~6ci-<;Q% z=j-}%R2ja)r9|kHuiJ_U7UG9#)9tfZEn>1zoL{yWbqAe3v@XE_zJeTp>H-~jwXO`< zesObRcK!BzubU-%{0Q08Yt1{~!NN3Uw#gKJo*S$ArUx|!5hxKq>7jo9! zvIuRRe7RTb3@b`J$8lmnf?$Lq1>hbKvI8cqJ~LasI40MWC+ifTR@Yg_D_fzGvC1HF zz^N22#;**sp@Flr%EA<}fKKwIOi%TL%>f1LSd)32kuH$nu+qZTU?WB;$;=pZa|LbU zc0TRQ_v^*VBzl(2ma27_Zi{rUQTw7vgGqK^6sS8nR&Y_uCcxB;h$xq`8y04-gAa5& zqt$UjzB4J>X(`3=+i~*rHt7gz1)=hq0b1kp?q8hD)%acJ6o{E@O5T%*S$i&5ntsZh zZ|r7xrU^oLjkd?-&*Y$-;%@InWSK##93V5RPBD;TVNjNqTO36&LmA$DUtMUlK>y|sIhEOM+Jri3Y`fVYeq*mGDi&%`(UoH zc+Vwvfn$UW6Ex^#SK7x`Fy!*;_MWV5v{7`Y=Gt5e~u-<-_)g-WLZ-_>zqbWocbU-ZDs&sqO{yIOsu5Hyc{f_@fm`tGY(#rphyPK2jY{> zOY$aJ`Pg!Uj&uP_bM{gs}j`UDh4Pby{~`ziw%$FMfHt zuK#dt!~6#AiS`_8b8~ZAU!E`PE3DmB2T1R;2d<7_Z}50hq#i|odArv7`T?DQ zt~@7#1En9)!t>T?E%WzD1H$+o);d2zm(J@7ZWX{f0wQGHKbgB8qiCE#>Zj2QFS1Gn z%1NfvKY!z+o#o^WvjZMx7NNkBwI|5knN->zA}>T$@^rf1-Qj0$tmEzm49j3<+*Qi5 z#~rvxfC1mFn?;@N^W#gW4}WQK>ccv6s`_Bw-^ix9lxfcwgE31<`S!82TeQGIJD5YN zJ$h-tG3HgW>L4H=&va>+3vl+nO_02ex3c7hvw6@<2mk!C0u3=3S+JMZ{E%^CSuI)j z0JaJfwZ;j?$~gtK9^Nz8Y*MS@Py}?lWOf`T6~Qu9{i3s=&JALdYB9E`P7~0J1vPjgwTiD1~M==_-0kYV=tR-ACdLuXOPLo#VtJ4I5MbCCXwro zO!4Dd-(4=GN9>!@g9WGqSC=xkUmiv_f%4~OHAh5pXXxp zk_qDpPy!fN+wkO4rr4P&kIY^>07`&OnMxD>}-Z&Y6z>8zEEd#HcRTL`(x|apE{^5IfRVo0)Okh z%4%cWs5(#_fz&-$oqklhIbG|z%zsr{+Un4!U>E;(CLpQVHK%OdlhK=h?iaX!~z zRYTL$=omsT@ES{hyUm{tPRgo=q7(2gV9=$Sd>iU8d*vGYBR@X}}>vQ(o8y zo)rSJMV|c_EEP znd=Xi%X!l-gMWQ@X<@c zK`+7v8fRetPz3?t1po&~2OtL@9<(O>NstbXyt{HKpi>qcdw|2)?;ft}J9i4gq2o7C zi=Bf$oYY5Mhk>&JrnF!j++@@9jAM~Sf8xngXValD4?bVvPE8T#>{nN~B}rl#=Do>*2#8$#BX;7>iy zbUa~H>5dWA#3R>bP1GxPVx#WAt_4YYXe3d>+QRJ-TV%|#vitbOY$2x$o{2__5Ez1}s(^tRa7 zTs^0gsWj*y7Y=>p2U$0ytDFn*8HS27lHKJTpl8AAZ4v^c14!!r19c6cmt`-8lc1Xq2J{pY&dA(18oM=~yP6D=yVgFdu`?*-KGxi0%6$kuqZ zZvuJatOK2*_N7)mneF&!XE?j8YvX8znmVJ(k!)B|xDs?EVL8($UQ5~ge~ZrS=Q~Qb zqsNu4(yZ!oF9vs$isDQXGdG4$?nn@z5;|Honl_vZ?o{-MGXH<(-m}ZHEV&N5X{yZ_ z0HpN)|CRWG4gf(TisBN@nC`Bsd|KN@>~k}_XFvfId##zO%6#wMW5Vp%5ho5y4Q#Kp zd@jwhRc2SJDpApP*uq7C$_9vxX$_7o+|=I|NbV}od>cIS@qUg-q`moXumo-Kh7+^H zmHr94Ir3-rPkv~lGnKb_EeBk0(9d+eDe)=)<6xbIa5-CBfr;;J-_>(p7hy2-G=3uB z-vTgYid(WMdC)cN1nvOc);Ye@euf7k!3^W@+?TiO2j1?oU{C*$?SO6LAywR1>A)!V zuVal6Ev++QGEvivH{ehv%aUztR9YV|I3wT(82FKlPzhVWXc+p#2aLaeT<9u8w%j;F z-^Ch92jTlz(qUVGe(nLVqf6fNyaRLk6~H^#_wU?3@bOIWJ}TlBq>b|5!Tw^70OJ7b z$rhl!Ccq(DN}}~9$x!!8hkPMRl9Dl&@cF>7#NC0XgXo+Spx&Z=YlVOljxosaEQxpe z%$wv5AedDsu&dT7lAY>hD77(c1=5A;HJx67*eSxEs~9O z*vU!(%Q$Y-B17V|lyApk$)%$`)PIRZ7Yhy`fU^ob%mPC|W?Y9d5FVqaD3p?iS@?S! zB1cBNeHFix_fdLe9Q5OQVt(v&+!QQpZ~PhltrODL_gH{{mbK$!443BG3#-^3DY8vN zv&A+zeT~|vfJ=eRduUs_Q2-)Fx1CYF#zDjRUDdabhnim=KM5e8X>aH-2BKvx!E%W~ zxa0~f^TFvozu)YG$QvM^a|wsYDHf%lwMtvnyNpX_99ZSbbIV9BVN(0T4GLQi4no%Q zEO6}cnV;G9`9NFJfx?Hv11J;3(`HbIt!pPLQJfeM?zybRtf(k{er$$y#=*=o_W_7G zfNI<9iOGiTb(aIA2B-}e$4FS666OdjU0PVgGGU{{d1naK=M6UnFdw3WR>x34E z_R+m&^B6hGG7&CiVRsST;;HXhzDIY2B~Y4yOP8{)#62`vDhC0u{imOFX!X}GPuH(s zAJ?asX98Hlfx4I{%ZbB~S`R%RU><)*=NJ4AfDvUGxS=+76T=E4k5U+ZJDo^e>M}RM z*KE@`)QZY+C(DnIF`y}d4s^+VN?h75$1nqqujnvrmPVu^KxXbfz}j@Tpx_Do9-VMl zo`nuD&yVXn1M(2;2#UUU$2*J}cOkKB4n(VP0{|_|fpD={bH&Q))WaI|pKy-Cr7mBu z>p!E+dQ}x{Y{bAyfv(5rGY}O*39bG6|LgG(P&U|wa5=XmRwgjQzvn0A zVsgmpiFGD=Q#%x)a{k)n#AjNwILz`-0%h-B=rv2Q7FXW2xNf&7zlS&N{pCq9H`o|MYbk5!PS%-# z)+;jU*2tvWJMy21+QUYj2bTr5HUQFEsGGd%#x+i^Q+2?^+PtyDOi-sjpe_n=to`I< zOtuvioZM)TP+cpF0oL|Jn7LYE^l@3$aV`VGGyk0njHcF1hHDO*hDDCk$yj>-^A^ie z^fhvUgG&OXm1&u3{&;TBu^eT9H0N+mf1IHfe`R?fP(ZA+H~QEayoyg&IxE0fK)FQt z@Y`paYWt3Bm51?g*Nr?`ETCa`Ax7mWX3L$-Y-d= z!WLf>+{}Eq96II ziCL@|>Y7zPEAO#wkD84?EQJbqq#c@!pi|_wsRP;5c9cK&#c*C{OeerY{#bPLxc(_Rj^NPht3WM5rEPIA5CfFy@vi!50C#pbVe3Wx44Dsf ze8Jy;1mo^HZAdKEbZ@^Eu*CWVc+!qJK}H~MdxC?vDDn9ogr{$?W*>Z8F0s|J)4UhT zb@GW0(dV2k7ugonmvMRDI8UcFC<4B9HU94z2TSb(*zX+WD=fTMPkh}fs_)@3*w0+< zN!jqhSY|20PP4pAz4L#3L8by{2vC0X!~@Ie!OrsqEK5SGPF&3OtV_7qKR@y-A3q_zA2y7BPFYGYa*be4Q?af7|VoHZ$WjwWlP zs|VbZ}36uVGRs2105Su(S(Lw$6I~U zHz0C+uNi#m=G5v1gxO%GjnDw=En$e8ObbIbQE(}U7oZ83%#WMq+B3%;+JIdGFGM2R zGtdxoSB7vF`*hCpub!}tT%1Sh(UOWDY3Sn31YD7ngtB)K<=BTC5DMmARzG{aFn0G~ss2E9`JA)6mB87SCV2{G%M4Ib zpJ?ZqFfJ@jNC<6_N8s$?q(W#b9aNb?&w;YRxVJQ`9#?xfmdx6e4p^l#(X&{+**iaG zWok#eB{>D&y-S`P9sC!8UNQOg`2~I7-BL2r*{)&CixxI27o8E< z-g2q{vc#=n-(~A0KdFgl?3Di1E@v3)Ty{aFxLPOFHv{mh*Y|=bn||&V$`JrCQ>&gj zW|b^dfRv52%%DBtKY4w+{>k%o{pQot^*y?`_{Psym;B+4AmkvAxnqU6kziDN%xnhQ zNSggc0E5q9&v5w_Z@NcG2f!pd;rPI&X;a^SwXAv$bGn4(`^R!(2?Lq~)Y^mz9U(}0F-+DX)8596)cW(gz z2jKn#*5rD+esud#+=_~I3jyByL@aqL$&3uBlzUkn0Da!v3SbVIPcwJylk3&lsu4gP ziw`Mw4Lc^x^>G=O0wx<1%PYsI7-4ij=7jjshgtKpG0Af-M_Ddjlx3fN_cQAmuIuUF z{-+228wQ6_e6C7%WZbl@fV5IWG?Zp87@>v*a&3=-fGprnV{z89EyLbYC~Ot(1^R>7 z%3-jrkeC#`%Ehz8z+$W^s12KC=NnQkr88p)Vu_k&zFFe{ju__QT-_$HSqWL`0gMYo z79wOudb5Lp0;CGHp)GIM1O0{9y&tU^hbkTC=66@-qz{6O6TX3?04Tj^+u03Cc%&J| zl$xzJpmfGYEJOj<$b32}#5lT+JHZ9(?Tfx8IKjhs8hjOr(%b0b7G}*sv&1N2zh;d# zPn~r=qu#I?C+N7h5!DuLAV-kr6YX1ukYFPLa%Z%>`*Y!v{=MztXnDlP*4X*Z=%JnD zM&~k^XXeZ$H-qWQ+T>?=4^vG6>}hrBz{kv2*L00Bvnh|uoWKUJ;Ui1G%{D|6_~&HO zYFs1mU0Wm}5D2eaRP0Uxs`C;v_Y!vTY;GehmG=3QL^>%Gv6j|_GkFEe4e$2O!6=!f z37{maTG|tYhsjjQQ{bK4$bCt7GavdgCZOUkZ)FtR58i;Bv{ngP})u&z!k2@B}yu(wY0HRV)Iz>nW<^UDE0==%Bst#h;<*? zm2GCvaRN+%`1m)xF`3k{U&cea9<(1H(=OJRb8|aC zu){fciFS-UfD3p67TI^CpbHJ=^aZRje&;Fxl+dJ11V6`is6@s4>yi`&(aK<8>^z)V z{D(4dk}HBrf_KZNyRxLMBrZ6T%atsD8b7-ll?=#p+8#M&f)Zui>WY@5=uU({1uZzy zUmasio5ghF(LU-k%vNAtZo|WU^PCTzVar9?nUo~*G0+d2WRh&iEb-?#RBC_5QWr%% zbWeEJ=d6YPO<#Mos&!f@zRU07c?vf;u>q&vEmS)FYzXhMXWWa;peu;ny_H$B9r||w z?sg!WuN%H|4HsmHWp^2g^-ZmJ&f3VyL7OQY+i7s@DxB#xtwTR!G6!G`wz8rvQ)9<% z;nUq0me2tEu*){!@0gBuTuvD&MY3jEk2ixmprMoGX4uRkEngSsu9V(VLT28|0aD!B z&)C4+*DSAR9rBA)c)>n=Mo}f)n`JI#W6w2HJqd-0Y$!#<}Kj0yy4|$cDo|8Q+P@>A9VS9CN zfe-tb>6${B^tHDWrixg3We7KT)z1wn?8vobc5Yrjk!@RQkv3ydd|4CSXv^Ql3U~^0 zG1M;d+>jfCpuo$p!HxnS8nK?js_fJLMy9lY+6w1~``=Fu3%*qo+hvJz!4#&04ngoe zygnc^058(=M$nR~6Af-P0`$|5*?B&M$_p z=@)KefinVWI|H2KQCWZ<#&bQRXd?;Qg@DX83Mv_FhZ;~k7xzdm$rxJ}c~?R7k`(85 zlSmC~h?oKDUb8HDvJCp1G9gO&R@m#ki9T?cc|i2eHLeM6Rm;|#kFresedaJ_3<_*h z9+BXuS+Nc>gel5_`mY$ZZsLtB`QUQ`qmOLnkTwB^0-e0z%jDL~C1P4OQ}SMZ#u}OV zNaasIBRQ2EGBs~7Lq^cLgw~Be006l}p{`65$T9nfmUrmq&D%V~AWlHGfjY6y^W*vn z2lRNMPmW!6`hSTCTC};@I7Ei_J>5m{O}sa{N$kWscb5Inb^xqXH@@nUBuSX52s79e z4eud-FD88(PJnF=#Rpr80OB+Hp8JbxXDIuWi+u323AGr^33LO?{`z{l{`c?RuHQa^ zb$`0PLB|=Crr;24GUu>6&(8*-*5d)Js*NTykBf*NZ>)Pqr$E>SUf$#GEo>`@p6f4q zKiFfi#$SAiQ|ilk&e-zI{^id)r;t#GZp{&+uW_LKO$iRc?xsp5_T`7MhTY zEya6yI1~Hz0-vSe62Msdt^qQU6rboZD^NWd>kX(MEH{5bYejeb6Gi)Wef|2ZgUqq{ zj*4;)fPkL0Sh4-K?HC)_bzUyE*o@QjMNON@O>oq*zJ zR^-l<2?SK9ZeR$$2yLY=>0zypezxLq8RI3gi}mV{+dAGXiw^3 zCQ)*Ldik&gy#Zhi8=OL(wcXVSZXIxIAQyJI(|}|)qr-GCVri0c6Ns^K^Jif^(^ELv zu2HDr1{)B6tTUTOsbI(;<=q*!o6bniSM#Q}wF4vTf4ZO~&`+R7K%BVL8yqko+23HK zXS3F)F-r_p0ekD?0M7M4>t)<&A-YBfSrV9WwE5l)qv!ABBjq}O=dY|`9)QMOV8{=R zob3`0*}Xq5fE3*%os6J8Q>L2aF4JUJBe=CWZLXDMsz^euvBkPk)B#tL$7k zf7H374>{}+JERnAn|)xg;$s8>9t;%ApW%CX14hTP8H49J$T~?iK_dXmls*KY8$Jwo zgP)`91ohpzN5*qEv4e#{c?^D!9_v`6+(-@}jGpHh7g^5SlQAVs_Cr3ii0Qz7{?+S) z!2P!`s3(8AzWa1t-=i~%%?MfS=t{~u7?Y|b0)e7hM`|4aaB*-I>wycHxHbUy{vSq& z@3QV3!Iz^TjE9L6-!4la?@NHf?#KQUFz;y_9sK16Rwfew+}SdK&ukyddK_e{yNuV& z!iqIXl}XCG@LiPtkT`IlIyS5i%JbGptxK>FHUet`8A6E>E-^|?z1GbEa&!h68w|ik zQ0CKnU_x1sNGckDTqX3H-8VmLZ(})ilKi-cR3xKExmgDn5^Bblwym-2f6~vS)5k_p ze@bUsB`Bja<)Y@xb?NupYI8~iEoXB;*?Ryv3ce!XYFY5#nS2JwMmHF@64bAxG2B{A z2^}}SUf1t%36mrEVLaE^PY4Zsf`hEEt!R;Vh@rCxJlI}0i&CdHtuw$lo+i&gp#7t} zgzz$^L6aVLdYro?Xaan14c@~z#yUe5)omzSM)f(dnhF|J2QP9^Yx4Z+a+;Kq1Q!_W zk|;8e!U4~3uj~5DXZ`Qj-#lI4qo$l$e05Z*^VKT<@}{L`oq>rj#p0hnVEN_i8%s*i z2VN}`^&dezS#sQbD!^Z+oEZs%_FRI*Ez=~h`*TaH<$#Abt>4YqXE{}Rr0=u6CRyaz zZ2ifyo>X6yTpj^6*$4r1-puQu1i>q6-61<<#%=#tCWI`BZ;u`Ng)dv%8dU>z~qHHq2HqGY{DbdYwJ4lvlY;KqBYdycXw zcq&^#x;1F#n=^CCl+KwZGVa667vpH>I5j$U00MO}<(@>dlGBmHjyMt!D`v2*-l|!4 zN8wgP{(L<3ntl^0?vV0Pnr@$$sAkF)+;L^fJ#w(MQqLojQHF#-cG?`*2=W^AUz&@I zLV}%j{+SDxK87P{+UmWmz47Pn^P*`%D=_h)}1=wH*aQgHpC`W=abf9sBn+LYavv z0a(t?XL3qjesNhgiOZ(20=r{pIy)Eppjk`b#*Ex_ zMt#Fq_U}4_U#AxKzW;Gu$6REDHqBfm6r+;KI(lzXTBo=pI-9=qYcsibSpo*)zMZBH zJ5TT#`kkdBWiwOj*!yq!*vzSy#KC&<i}Htjg55LsRmy`=3&SlmO}LTD8Gv38Ny* z){T4aBY~!5%cV?}Y54!{XYMvLz%?yg|Fq3iC$69IGe>qhx|tF~*QN6;!(ISHa?ZpB zv5Px*BoLi0MiU_JB~yFPgkY8qq)K~qL#gKj(D?Gi4kcj8i4~fOvn*im{_y$j`mgA2 z^3@k5rfh(Py+sOGOn$)rpsa)S&P#^GHsq{`R=zUr)9q@%BoOUvLcp26VgH;5Qw`iPcXUR<8WGGp8^A-X zuE+k-WwT_Sy>|FKo};pDjSqm4%y8_ei9E(@2wqU<{i>FUWb>UhVO_X`GPd6Kk*6>C zoEI9s)oDKwusuJnFP{aB*=E#`fVKQsf2I{SSVeY$Wr5EA^6aDo0s2ppgw|tZBJ41= zWt&Y(*S~`n3C?si2;>%l7S9^RW}0=!_ZW1dbBs&4_y!ze&7Bhf{GYDtg)JiGF?ia{ z6$HAQL}O(orvzL90LzV0mZjeQ!CY9o0R25=n<=~Oj@_{0i)3v{iv2BtyB108kqy8M zZ7nr7o(k* z4HuJzv=t@t$;MXw-n}%UzLw8td;(9)HZQ13M#Ty>WjhVqq%j$S#PM_hBlI(u+o!@H zRJP#m)Mo#qBS-c@FFobF$`Qgqr2g9f)j|O z#JOez0vngE{*R%Mh+0VU&e9nHGLQ8abY{W+p)$)%bJrtfjI9JdQ3h$LZDnw-bu#XcN%$37-;)-?^n@*V;_+ z6*(lhY`iVRVWrys<9!R<|Hu5ymRFiE%)L?;X*uL5(FZy+U5jKhdoJ2*Uz9Usi|vXZ z1xJq7!flJD_1pw2VM{;uGh-8pGT<>%VSW3?M^g0JAfu%>UWb&kV9!v-^Y!tp zZZl@v*saOt()=#~OB0aW(== zblL*@ST{V$Sw{s0Ihe2RLC7BHvd3u0;)~Slk9{lR1fcgjdK4!EKhw!qg zzy6Op8$X7iB9a`$nCN=&rd!gr-80Zq8eG3vQ0Au(XxQIZiO?va$c(T)Tk^4(v)We; z7L_5%!R8|%7!Y~HWL{VuupRSrJWsQTAZ36#q0fcS8Z@*R$y;OIfGU~523pJL#&U*U z%)eKlIo2hL%K>i3g-j@GNjo#;KbeV@B1A~BxUnc37zm)0x2rkKU+c!l{`DpV{k&m&Z~KxCAp`a-_qBf7 zuaf5qv>+EW{_kSBU*4M!*X&l-bAZX?3(?KhOB#T+^G856%3Mm4gRfcMu&=YJ$FlE% zy6jg~MjiUqwrGQ7+l$mZJF5|g5*BN~>=aBMd|gyHl+x6dp4HEpXF0?J8j9t*qoaz@3<#bd5DbM zlx%Yx=mx2$Elbe&OFF}{o|~VMA1Oam007TQwxFlDwz25rfRq^7Ztv;^O_r~p)xj<^ zY(;<(^mxrizGKT~@iwfJL*BXMpW8NaSwoJYOcLzL3l1?pJ+9vy6cF^j;Z_SENy#GH z@m<&TJKUb?4jj~f|Bodu!3;FMO8pbOqjQES{;UBrT5pf*1}-G@2V zfkvHW(7qETB?@5l^`8hTT?!YL+l)3Yr6eBCt*ropKz+Zknb_wl*VDmFtt6h0bwle< z$i+`z5eT6lx~!_&CxZ39t{3z*w{R$?l%R-lUSmYLw_kpMiT~!I3yuJgt#Z7_#%w;K zh1hgusVl>Z03z9n+qsqTK{*5Gy)O=nqe=;IumoPlfQQ|T+^^khf_LMPF|s@W(zs=p z=T>;WV43zY6FgY0^BBCO(?KG^KgP{e&uNIXTEu$=I4O||_J1!$8 zB5&2V@}5~Ary2Lt3pyDnPNZDOdr_&){J+Q z1*fjlD`l4ajRzbyc@7tN&F<*EB_n)r1NCO(My`y2gs0-s{O9P7Bk}y&bL!wpI#ey9 ze7Ke~>5d83LCM3hDLzzn3qrl)G_pz66(nBmu>oF*v=C)3et?1F?ECS66{tUV|A*-) znqV0dJv`ebTh`P|>C6FcHJ8?zu_J5Ek9^WQJ5xGypG$O0qPG&VAZ^!df`VH{Df1ds zJ|+Ag>r51S)xK(-V8i}^xtIh~R~9qLW^-|o4X%PmFYVmU zxu$lrP;pmyA1VdH?xv(7z?$tGT{@vf?C43mw`VPMxe?df;F8Zxz;Nq^k`5`ki(`l` z*Rq!r6v%gkh*_wC!FG+y0a~@ETrj2e+_MQ=Mx(iOIT!;Z+p=`|0lWUqvjFrHz=1;pZ9N`N!kjS+Lq4#(P+D0y>Cth`kAbO z$IopxaMpp$ePRaIZc8eO@foNspa;{B@BHBY>wm;WN7ZEoV}C^nk9{8JW44>}z%m5Y z&ThDsCj**@B1^-3PS4;QB{VGGb@}3yWv0Z~PUdu(Uh}t$7g9|TMes}ls^ARDaP^Ca z{N;UE@xS?xZU;GhtUpXCwL|qldLgFnxG7m1(!F|p4SUh0=6&rx+C$Au=Y@$$W<#w0 z-kzJY3CJFB&?si37b(t`dpHkj@UY9hHJ}UHllqmlZy+5bwbxAVTl~zU4!78~^=kGb zVW$@$6||X-2@7@#ipF5_muB&jnz3V=`Nm<|!L7^6a^JdYuM6C12qLuwsGTnT zxiy=cKS$*BjQRhJd$32%cYu4XSxOul^uBZ48|e;PTx%9sMVqGRLD_VzN9dqjEe3RPVAtmgYHlGpPx!m_c33klx#CJoy-Z!6Wlhf2cE~ z-u2{89p$@!V*k0<$MRW*s6fX6ChR|Iz@xd9f?UiHaNXw=s&t9;UZC4Qvd)bDl!M6} z2PFhWmTkM)8Li08&NRJLauz`I?!bHR|3)2N->KP}xL9m?)!1iWKG2z3&9SK|tk`_O z89tn#d_NUG(=BghE<5$$U^+i{IF~lKVzq9p`p8PwQ93g%R5_rPz2kzd1afU>sALOv z>G)e7DQB@;evkEM_T~Wcd7cCJDxJ#ymv>z|L9L z+TyKcEgzh?3gr(hpOD?)JsYWq#=jXDWKvl_6D};lV-0}-;7wt+a{ z2L$DIl&lTTJu+S!zS>N!&H?J|MA~7JZ3Z|4?am=1@JdwGqubzbd%GzgZHaYg6=W%-1OZiM-pH*1Wm@$zJ)8 zc9~W^6TxCyal4GokJCK{C_y86Zie4}Uu_~4kg`NxG#s7pDxrU)0CliR~|;ALy$!g_O0w+@0v`M89{2Sy_B6p=FAs@JrkIKmv4 zAk^U;zTd3RR2Ow~{rK*2=50;=@JTzzgx*-1noAq=uscy*2dz!57-&sV<;g>@-8Y8Z zJoZ2^8?14$V;t^IXy=k$8I%`~FnZ>{^r7TmTC-uK15gTR-%2+26Xh~&088yMqR9{( zeDg`o?`N%W2VPni7ldR$USQD{oRS)PB;PyAxFq9hD|Wor&T^f(l(Rsn{~AUtojqiK zdq*sPIb3AXP=kd!z{~V*GC2k{UR*zN8i zu79@9^js8o{R8NXy>YWd0d%F)5q;}M&NXmkQ-*kkrc}DSI#kflQP>8{-uvH) z!wkmh&h9#s4A?EemFX#+4H$N(5Vjoja*mjI?&|}kchS&=9bSaencU?1bAD#BB{`%y z=N_gIVeEguCnc-_q@jSa*6f<{a$SFLOF(|Hi>zAkN zH_uPkuRlFqpI#pX^#tz$zLjN4i4J6)>+4pLV8MAnm20AlngH_tXjx`!Ndrumx)X%5 zy9@w7Mhx(cOpF^PcxA5Lkvm(gLxS= zI6!2(Qx5gP+WeWQ51CI_Fc~DfbIDl_f$tk}aTpFl$KnSg7XIZrxYWtL;Zq%eZ{a}p zuOS23Ujw)oTaZX*u~*eiH*jRCpi!Hp@CjJF3r^yzl3z1M(@(VkupJE}j;G%*U#1x%6!Pg>9z~0+t zmF~!7oPH+tx)NPQItxaf@e7!|kxiByNmJ~jGiVtl)BXlNx!PTR)4J$%|A?stgykKs z0mtv4>nNA`<0rM#3;Rslk;I`7g8ui%+w~&=p_xyy^L}4^3fnwdrqEG@w_l2EBk_4@g zi;1WGAs=fO$n&bDFSL&aC?qWjs?$DIBM`Z$Kk-=vFS^i77cLc#&NTrz|NiN^e*1J? z-@QDp-@ZIu-{a8g3l7z8*^ETV->))2>;ex0^Ps7NC6}0BE&z34+*!Khe&)JtNtrRU zi)6OpN69jR3al0HB63F<20lL3&UsV+1g!C_KjP+7m)#)K@(0(s1Jt4ei(#WmGv^Kz z^;C?x!q~_VBlt*57i$d;;UY*AfX7E;0_aopC#%dFJ@S{qD>wKwCHy~OQn;^UAX*=X|TN{)`f0;f% z0gOa9La4`Q5^WjkJy7x<0(?cT6nH61^y%H=&n zcvyoDF}H=N^+N`ygcz@@^=;8h@zP52Sdil#aQw3bk-G^7j*renxdh|GO%Qk?XL#KW zC`?o2dk^j?vv4!#2Y|ISouAn?8#6dRvTjyV=iQo(SuMxNIcY2d8jBInGXm`Sy0V#4 z*OZ%S^_3n!{fxe+HB07L#_zq(P%~4SQTBcU-eK^{cuu99-T~m&t%jqQhy9~fkLxUkjS7FElE&*?g$THf$zP>}CpZ0un1^0@0gCu957BWxBty$ z5iFTVQ0)Nf@q`1d<&arYBc_x9kmVNMpSb~j*DUs%`{i;RWCEny#ts3&yiwCYW@A=@ z(%=)awRn$75Cjm>vOp0phx`FR-l!qE$4D;c;HvfCrOWR8CE-I?7Pfm#7BhZtEjvLb zfK=@6lmin{UTi=3JrAuuUB7<5uHSxoT;Jn{)z?e4?`t9IsZm?WJl2_Ooi>r~7Q+L$ zUsTq@k{TSk^<`SHk=mOlbxUyzPcrkt1o%4-u%a8wUSvf5a!JwW$J_M-S{SnC{o=du zd$f(jAye!qPIaIs<&ueuXtgDMOR za-q@|+X7d6uycz8_AhQR>VJ;uS0xX?JLFr6n|ntPlrUKFC11prZk?JInY1%)z`c%h zA(_iuAQLjv!I6s}xHNM{#H~Ed$kVPl@?=HIU;hUeymd-5j@8ao2DidN8@}P{Cd}DL z-MUpfH@S*oMh5g-{e}gcEUL6_D{;fz%J4Ss*i35RgPF$$VZ&A$R@Zwrks-xZ^tn+b zb-s*%mMiS1KW~7#OtMpVsh!M*ku8{F7R}MmJ{hM?{ZSl64T$N<1u=2J0lZ;ny>b#` zO_XaiCt?Qkhl;XuwUZpAuvd-GX6Dip%S4`;c?W#V&|<;ul^Nyxdi1asgOez|DFp}s zF!PlF0E*~&WVeII2lbozI)K11fqq+b2G2|BkAcyo>Qge7jvh8Fs!OdBEvJ_ibnN9V zTiQ1f#|Frew7TAXqg5%l{Ki=ioIPF0C|MdNFbm%;|8hCnph?Sv+f=FcHCBCxc$eic zDJq?)b0Rm^X^zP3##+X2I^ziTBb}K*v+8>_{1X^1%MycK)<1zyjZZRT<~+|UdAH>l zojK*$7ofS`QA_4*(I{{1lP1sq?{-%SNE4Yr7t#~Y_Db^{v^Zr^BMZ^N*yfq?B5O)0 z+nUO$8e`36P-7zIrb*XeT1I64!_s;#V*@`5j5b*5SY4mg_xZdqUpC_M<(qn5-r$H5 z2Ki%NQ=Zw&)N3{oiH&QF`53VZYzF?Vor(SLtU}~WX2eotXWi{J=XOKSc|B4GMkyMN z;rEW?*+n9d*+gqPvyu}4Ie0@2L}m4vi}jM zF!54ZA85pU-c*9~?e%p1=9|a$+gAX1G4JT}&YNESUu)F-khhrXtOD!)S^k4w?b-kw zFwSkGIAqKNt!^U;rWY+H(Gdpwi^Hus|GVOUvH$=e07*naREzaOTSGGO{=E8(FExQ| z4T6E+qqV3@X8!QiB}`tY?|8lI)Ajik?N6QECK=`X0U$5VV(g9f&VI+&8d$|uNK6C1 zvd@J9ZuXxm7`vHlW@MSRSNZ_E!Au`)CtI@!05JH1%rOEATkaB=FWzY%6n;%7ACGUw z9GGR+u~Dd6M=H=^V<&$JSrH!S%}^|N-1|w5KduLFB~ze{@-1d1{`x<>x$INXYl{1A zb1cPO%ew|V>54sEvtYOI;`Me8ky$V!nL$nY$DRlu2O71DVslcv zB4T8=bb|(o`?n0K7^0d>9N7d5Uip+q_~*M>7L+J)E#}nYcf>VLw>7xlF_y#v+8bQY zp0$i3B`>?AX?s$=Q!pH+_(~cp^^QseC~nNfb&w zE5;@4n%$Zev;}C(U$?wSdl@#WWm&o!bz38?Qk=|RZJZ_tz&~iLUtD`s!eN_H?Fq%5q~E351MIbbOp; zKxcl?itK>MO(Tq4KX^|iIi$8;vkFx7E$gN`?Hs_pm2N5B+5daE6ge6>jc%6%jf07p zj67SeRT^bkE<1C4K8LF8VAl~xcJ~<^wsm3G|E4pH%u27uRIF|uQXNGuJJb3wiBeP4 zsS)L@{GKtJV>EUM`u^ICbS5i*d+5*otU?Vh7W?m~Go9?6_+Bf3I@p8QzJh}U4zLZ3ATL7s?1!vwl`mD8Lj^)_dsuT=>JQ=w?VB-W;iO3 z&8~4+ewA*>c#_00+2)}WjQsHh%(0aWfZ62@@rM}u@7^BQ9{{pa;u;wvm~%L7!UyFy zTwixH;mwu~V%T$iz{3(zk>_NLM`m(ykNGHI6O@0b*ZdL{Jg^6F^C}yJccYsJOC!9e zWaS-q?h2Hn68Yk>o$ z%!~lI!*_o{DU`m8eZps1mPEs&J9og&qs=4N$|WeOoqzCf>W{do6$g58TPsR*TrQKG z2QxjCH33Vu*e-^jVWCS5yCo&}ZC#x);81`*leGT4?aW*(R^%+RQnAf3(dB1|q3fIr zOGM`qtS4U1#do|&?pXgn<1<;6nk&d(4kP$5^^i!^nZ28Z?KHX3K10e|Qx!}czNm?2 z{MKY`)Hq{Rsf@L&?DJUYsL(8Bu12@25OnRq>Y1br^MZzswuX%Df5bE6hpu@0rdjAL>j=4msR-Fe2j$>W8LBAbJ#D<%Hl!71F zxh|FwCf-}^;^FkZvyPcS5mTItL(0)FR@mOC6@dVuGd-fqmy>Wu82)989Yvv{; zQr|kF!Y}Czmr0ED zu1P&+#KavAdc_$j>2e#2Q{Iyj4URR|O%LM!*&IdwQw4F){N?j)W3q;A&yuZ_84Tsv zD%g=F5vwhrGwMmhLQu%O*soJ;FHCk%Ra9Pv)}xOglx@ zSr}^zP34T-4+$6#bz*(?0ADs-{?1)PSQvalj2^D1= zYvwg?pBbOG5T?uXL_Q6{e7r~N0Db@bNxi@OV5-*1;PY`^zyJEUe#deP0|>L%iNgVu z30ASTE(}MPkhE|V05(yPEe5c!a!mN7=daHMip(ro0i3ila1nrH=PZ{m`q-O(j?Hr) zY8xc%8x1gJ9W!DLaydMN?EYa3QJh+4>&k%-RgE9b$U1;>H zsK!`u_-;qP_{=NV+^6gM6~Oy9%e(`;e`CM-E-)Beqq7BI+cAE1-O-^{1YKX=-c%~% zTV$~>$hI(B0k+=6z*pRcYLJipn37JfXL`ir`vm&#ACG7M@O-gVB)iU_T^6%ugq*mo<}*_pX3J6D1jhaK>3aDjF=h=v_VkPixluMjI&8CQ+?O&=Dpr1W`$*C!`M^$`+c=3R(Kz~CC?m#T zA}X8Ob;jP_G2V%+;*Rg%T^2Fpi*sRw=hQuoqBl}wbUoB@Ww?KCA*rpb+UbS^iJsP7 zM3JjnY1V8+$O=DCn!%MBD7JDBP@eBT!k}otTH!G&;}FV$%fIaNz$nSEHVx(9Pv7I+ z{}1O901!EerzuCv{WwaR^p7r!n6KG6$f>on-#}@9x=vn-S>-*Ymva1?d&~7*{!Bc` zp{4gRm0s3`sd+OK$};WgcN*+m+TpdhQ{=-RjkudxJAg+RKkZiUR{~4PsLQ0{{R7fq zFvkFyIXY618}+IZDdk|RgVNQ7j$6tWkL>qH+GcON-gwJ90Nl0zALxwrwe8F=%b90y zMNRqKg3F2o4oJ6aHi#)}Hsrw1+Zn3Jc?9t|)1WQM?VwtxxWm=BlIU?>YjN_1vPc^d z#;y&8eCoz%N3szHlN?FT8#U+v03#FTl<`g1Vkx-3zhGz1ukGPa+Lj4Vao9w~EaU>V6Hper#Pv&CN0H)RplnFO56>qg^t@dPT@CW=6maS?kQ zwB|i`c>sN8;E*4eV0?D2?6%gTY(3T_*^CeclU?wL4K`GFTZjEiqyUh=;0DzSJd#O{ z>A+k6`1Or-?mTQ+M8UKNG>a-iNMj2lj_-W&IupF-#HY#C*)D@tGRK@#n8v;Q5Fivx zIv$_wtIiQP_(Yk9&yBEj8gk};6Pu)cq>&x!(|Nn;I79`3C{6K{2!flmOnDCUgXbuF zJ>8~}6-R?Jp03v+W%e*L{Y}6t&7lMVfx+w36A!1N=KU|fL+2Tl&7jN&b??(I((*UH z${4}b930$FUla&pkHL(i`%&Oux2<|3>Mk9)}r)+-DoNp$2jqOti@N? ztU?yRu>TQQ6diw18iRiCUlicr-&ksPVoA2hG7Dgf_~-32f;P3E6p}w1Ky>L6AIB57 zY|Ao4LK9M1Q_5Jg)OV7EkC6qBtvJz81urgtWx#?KkqAl{Y)j8DCfXU>PX(DSlceBE zhOulcSA%}yLNeF4e@gJ=DSi4zWlGGLxTYTEN?$)+*E7-^7zl)g(Xr>?8o{T3{U5~V z53_!RMGG)0lPvJihk#DBxMe3^)nPrnbV%g~gv9X;fNOtd3lk_KEE;2ay1V%5@>`{O z{%QL>zehta_Q?!v%X1VNVy`k5@`>*AxP_&$8N(Cwun0?{TtjJQR+nSAHmHG^un;B%)5)wJc z$o#DP`6(U2Avga10d{V4i5Rhl-KAj3r8dxU%2T< z>FnXrS!A+LLbX#5x~xxRA@dw>=QOUyqrgl$6TLwCTmDV}yIIVD=-q{n_g`w*;nfkH zJ0exu@!kF>EDJmO=ju!h(1-fJ@6p%;aQ=aG<_4Ovmfe9T`~Oa7N+#b0qaD$Dw>Gx6 zt?>Sbc(~il>?sKqAIh42#WJMxPBMNDLaCSD_y#9hy1eDEq=!Ij{s!nZMvmVAD)x#2 zV%8xCI+>v{P-M#ZBjuI8u`Dk@*7`ppb6gO&fvd8VzT{=TbINkMn@q=*^?;u18rWqe z^)s@qEG^kHDDQOUqbU_*e=r(W$D`$@58Ls5u8)ONryOx>c0Q~Z=M9}wXucZ#yHVqw z)K1<}B|&)BA0HPlVPc)MgS8w^oX%2xF3J`TBl&FL9^;GKIrBEM?Y~udd7xyA%PqUytisT+{^C{hP=2tCwe% z%;2J??_A!K1KnJ;kXb$-LLlfK=m4`hyc*z+4nY9rpD`zZd6%s4kSc=`-!4nwE(SmI zqgdkrCHuxdyL|0I_8zz9vew;!!cW)p_0!uM>*rq()PY1xX|oUKN>|;nWxAueANvHY z&O(Jhwmaphcu-XGEa1L+8Ip+~pYJXqm2*8!e2vXC`J{iROI2w)boECa{M8gBKL}J` z+!9rS;=b#VnG-0tnhtvNl3dT=YnP-4b*Ie`%SS!?`_gqlySVro0U-qnkaa56jk7M+)$Iu z-n^6Dv;i}dN_{N_7sF9=v0`Q6+T97%X;laG4WAn1xU9l1zn?Pi**0Fb9}*@DcVA?H)?tVDcvJzuKtLp=*Gv{neeqdQn7NZw6fTEL?O67l`|9^(g zL`FALvU3>&cgW8FS~_#XI+lqTq+Ma{rvzrdvum~iR$F4Jak ztc3c$9om${#KLktbsJ;KX%5@`fh>PyGxh3ZfKN%E3I39wnFID^ZR-q&Mkx@Ex1h&1 zOGApGm27DL0A`=r4n;B)+o9V_t-GWOB~4_=zs2P_r57m;sWKMSL;n}lKtJAmd%8<& zJQigT_AD92%ALRvd|_N91WgSn`)N7j!FP?7Alk-@?0f>e%qW=w+hoql9WGRg`=mp# zEN77*^N+OK0{}I-h4-T$r2j+nIw48L`@VBSy`{&2?{U@>Rzka!{?*ZJ=amH)LvD?AXBIMOBCF+`Y z{0imPV9LR2e|~#o7Ujpsn?b&mlC1?%`|jINu@7L(-+a(2_JMv8hhM!P&?PX#D33uf zh`;~w_38SfOJiQYyb*x1150IjeAANb4{P*&_zG;ayV;BxNGS;R$`@^s#il$vtC!#? zF7`ug=JFkm=iC;O93^X%MRYW}*)r6wzkRM-bkW-#ScK!DR9}zk^fCUoo;{g>fdj^+ zw)p$6wGr*o#$FpFajH2R^4I_N?LmQ0x*-Oz7U<}JV)`5@fo6I5P^Xn+d~9MCJ`8v$ z2WDwBB#K=+Jkx-&@p0ZQ{?UDq_qnMT)N>c%&U-oyT>WjE(J!jV<4S^Nmv`TjXs{ad z$HLk`52F(6I>TKLEI*aBr6+9R(x=w*tYOdmr19?1G)^y0C|{j4Q`YYY*qoBFlL>pN zv#9Am?%v`af8YE^XP1^jl&Ou9llD`3Nps0ftG&l3aFoGOop7xDcpi7nFip`;eq=*R zKgIoaj2w&ElceDTG`Rzn0_O4rog09p6_r>SDRq=6bJ3srxvFj&d`%K``bKkKYRzP` zw+DTB?9R_54=_4|@5wlASEEFblA%*)_#W1<&H|5|rC&1B{WqN%@}rz}bVdi2BFmAY z1wv1umYyCO4P55sw(KvUjuF-Qv$=B4Wc;LMWN* zgG4d79V|72iZz4t&!I<4!S27Eaa_tuLfOS#TsgQo`(k~X$k^Z6!Bili-|>=<4&17h zTEd}R2fhZ_fozJE1M&kLrwq+yS6(OXa2?Dv#WCdqkua8?#nL$o1gA(5OSwsOh77$3 znc%Fp%`zo&s$(PDW;VkSBXZ9ym(Gld4eOGZ=4Rpmy_?TWMvOYscE%ctQV%w`aH^f) znv6O?>7pG01g)HwL$%E`A}`NkpDSZQKVTMFw#paWe0p3z+NO-{xXlGX@4w*ip%1PO zqmMZlTyg914zzMi93{lV@uPe~I;j8U7FIH?-Vv0Pkj<`!1gcBla=Jhw%nhvy6Xann zS$RNU?V98{Osk7-cqo!-F_^|<4wkpDHX8Ns>dTMAzCYUcpoHeLI|m_v`uzFn`s^Dzk!eT|c!`qN z5dGl2e`M|v2w+b5{@c^_2bFR2U5pQ5qg(<5ab~6{Hq?O?ZIL@2QO}*}8TMQ!Xcg>X zUOC8tKUsGZH@BEcL~&Pfxa7)fc2Jp;M#BvhPBbG zwq9~LiogyQW_W`VMxjej*N}&6rPP-IjsKFek$^MPHIrtDNA!E{jCvw$`Oks!1z&d@ z4JemNE&nm^$RNw{*ys+hZPlw;-tUA1kN(lv%UwR6-`>#%KP*a>eJlRDH=^F4A(lLe``#zUX% zh@Y!hde4VBw@K_F8>no+K7!s21RA?;8gJ;&$buHWV1>WuZW3X&9MJJ|8B4_~oI(sw zK*g;s1?l&9b)!|w<;$?u@H$*KWFC-0}jqQP92ihBv-t@ z7_PP<`aA4L;Oy$_xvoJC0)5uaqP&$%*fn5^9y;OxQ$D9|{3~!D5zPV9j3uwKzw&EW z2V%>@SdN`Js*3va1xyc^yT)=Qu=g{dY0D%OEUwMeb>s^gxLddKlyoIp;wg?L3wr7d zo;R4jt#-BC)uL$se6H|_3sx7kpZ7JJ4iW*?2#>_A$OFwrpf>2?>y0>hP&w4&_s2AjZBTz_Pi%Djh%zouT-8GuLwikb`0#h(;|g zyN9S882XV>CM4k0mrbU z0+Ik2-}=_h^xsciKZeZuc7Scxv53LfRs)pl{RA&|@H}r@eY69#!1&IV5=d)JsH+C< zTp}MnX43&%9oia;AlP0UD2$2_OS(isU@2#(Y;L@#3e<7yrq`)bv4{TK-lALvn}ac8 zeSZDTb^XPwN@u{nhk4iKQuqI4KzTS7r5ibHOXgiafBWK&GX&TI-Z}`Wz>k5`S7l9d zJLDWwrEezf&CZbX^N++eAY|Nmz{S*3{>*y{lnrZ;Rj3!G)J8wjs_dev zMsL}kkM$`*N^npvr3-+WJ#Iu(k6J(bp~mihnB_2WxKFqZF$WQcBB?cta~*W#r(_S( z6|vVWKK2}4)q7^a{2npCB{V(PU@fQD@1)wuVOf;D=pjG!iW(?_<%0YE{Ml6IV_OyMvYczI1+Jg88*~1C(w? zWXz%EAQx{%%_DcS&N=WLqxbjFnSAumlVxQkjy20c!C%rD&m$@Ar1B}!?+j@Sf&mqO z?{|8S+GpVJW1CBi=Kh~nx3!Y`&H=z>png&R^Q@oK|Bh!kmS3{XJgC z`~FY4rT0Gpe2BlfirkJar7MayjqY=qN^V2V&CgljiI%ke0F1;3mTTGt+al^q2{Bnf zADGAIP4@j? z@P<<`-T=D+Zk7`S6)1BOv#(7dnC#ZTvDGf?pj~jCe|#f>yZd#rqz3)P*-w6D7nqN| z#W4XK{tR31K!6?kveqaWNsv>99P7+%hh-acLs=94b9cY-$65~)UrPB+CBrOY`5Ycr zbl-4H0X6Qw`SiH{;^pc3^{1!nS1-b?IG-5ubIcLjO{$v})`aCNm1dx9X&4gS;hh9wzx=mz zK7MS@+yyeM@Rrhy@%DsQIG1zVQ}in6&#B(_Cs_NjaZ@2z1MbNlUPSMiw3-=))Y#py zM%Dg`_0SkL>69oi5f|-WrKRvmWoacXyzbb{gO}AmZxAR(E9FO%ax|Mg>`Itl`a3f} z>|o+_{+)UAn#-_iQHGnJbn%{#Kd8`A@&&Pd`PF#9Ew#yyeo_DLu)p=+X6LXoTzgCH zpP@7VL;GLedP~;omSBTO3>9tnaL{o2xW~>qh0a57uCZ4M)kf-uvn-pSoTHr`Kui2c z9YB+a$0oVvcS^SE0zlsw8owYNQs*3c05ZZZCE&qAZQv_zPW^(2=~+1Ah{ znr)Ip=vg;GpuD|mJnT-=*+(qJ^W*xGTREY_=uM7y`T`()f#oV7a#332{`u|u=T=ph zwg{lP*SAZU*c;vJ#L_3T``k)_1(u8)!B!`HFjSmrz&?IKkN0$wd0d~KpQc^pU%fnC zpI$dW;NjY^fyM~25xk_ymoZTs!J?y-24yT@#9h9IvKRpTpB~T3TDa#sfqhy)dhZl_ zthQjEu~%4ow1h;RJW8yAwvHv;(BwWZ zCu5-iI%(sjF&VaRipSpAKs!F#@96aQ{VMcKbAwXr*-7U_gld6#~j-8mW?P4NAUADvnBRV>5Rsknqwll*hX&|U~Z&o}t z{*k=YBMbcHtWDftHw-XBL*%Xd&?520aee<<`hX0S} zxvE`zH;#x*EJ`HKlEL5s2Nu}nSFxh_X1?vE9N!Gk{JXDTuiw4BSXVZnREHTEj$8pB zi%pGoIV{;;gGn;v>_^;u1^@sc07*naRCwo(OhgF|g1OJLv zmL?Ptgn@+CSqaHN=8rjj`J&MvgTRBQSih9bu+^ggI6DscECVi9V(E_ZNCsNnE*71!5?YU{!_yg~r8^}XN|MbKx z5+?NaNn_oErUvaD%$3brnav!fPdSq_@v|{Vo=egHtoDq^B7uZ{`RYKNx7hjuPamRH zTXM_L5I{O}!o4!9&Y<2lvo%}sLc;$5qQyu#pY`;w{>|f&Q{s}?>PbvMk**^eP-@)T z+2l3c->Gq5fa+=3VVb?h<0`U=gNadVBbC1&U^Y&sX03H7biX+jKVkuIf{TL<_KMqf zZmX)4jLxIG#hC|kmvT=i>!qPgrDHt#uwSLqa{x%YTxd9R9&|J-JBMag9BtrkrAm>N zv-BmB_UFtcps&z$%!W6wao`eZ;V4`;Ic2!Bt1Bj1ORJU?EbCX&9-+xvOMr`&4p6!= zv&Q)PZ9i`hs&voeILF9^!2B<)S(Mj0tn#yw&f}1gUcc8K&xrW=38^Qoj32A^tz;Qu zQU`*Mas`6~WlkW>++$*Z3|Y%5SQE^b6=xTc4h-W zi+uR;igtd=pB74A8ZQ=mYpR# z{$<);CSwzMiDbs3VMqXVo4*$W+2wBt5HLW1P5|kC7IXu@Pty^sD?$2nDN!my`>49? z=}KfhAeatgHROk~5vT$HV~Y8sM1}ndxUT3AFWf>zYq{iQQ(z3iBD*(wL{`-kdw>&` zHRr-;<{ixjSnGQ?KjVXp@mS0ZV09cgeDka>GrxU(T)+9|nQbD`=bfK<7DJEaWZ97o zk!&u?T?8oA0p*#ur(!R@;36QD%J9;k{E5;R0daJUK_&-7V0RjyJxF{A8NeE&_8hmV zq9YL){htv0Jg)1HCdsg1tZ7F8(dL*@tnehWIhYGti1L6cB2g{V5Wg<}f{y4shk!dX zN>o(U@kCaqGA8~xgy9F+4Br{xUm3w6F;TDYPBsiY(Hau^iqp6WViSz`Fm3LB7_?#& zIymD-`cY@o2R=66VlsPLv=e_u`|!A){^j4ktqqMb6eB=^jLiArc_LN>1 z)K5HxJucrj^xC@caaF@iHL$Yub|CSmf{+2BarK#tujw7quM_ZDwCsStJ9Mu8{cg>U z)b}Q%Htn>fNLV4o+;`X#SelhMQRP|Iw17zcnHRjyit-iv9!AQC5&vK=9{~4}v&}=f zGtRoXPMK(HZ~I@MVu5z{)bk!I^Bzsh&R84pH8@fq_Q9_d2rSrNV4H~E4$k7wI?m{B zoxWe-xiCgtf-FQ5k5T`Wm1$0^6Ypmr146@8HR-M2*>!^UneUX;{=Ic(Mr-4wF~8UU zjCD&jPV4h?`>)-%4BNBBj%Lj^Fxtawt&OXB4pyx&k=ix2rBfpcHJ4hiWN#=J-ns1N z$2RkB%XU{Ztv_Ki?>bX;rc3E+l@HfZW>yZaq`?MeE+U$se)n*gCNh3Lk3pUAj`|=R z*=jQ00xcYe*LnP2b0IaZl>{?to#AD9WSH<|DIJ``*jUMS{c^A~J=W(0rp~{phb)DS#7N`kJd~gAC#<6fYy4nW77QG0YF3sdGWaZl1K+J6 z`?hd;k9R>H6)f#vYK*GM%*Cj2v67u#LQ+>3U`W z#KWt&_0#)+7zO1_s9jf2c$FU!^!s=CEIzmJPu-2!Ceptna7R}nvhD)(Q|8DnHrc?< z?DHp9M*4G{gTQ*-b!c1g4RrNWdkPjfA=%_#!_Xu zr$VoKy3igHi#L1fQc%n<$=+`qL;@YDN)~>+QVBDZkK*D(xOZEDB5GWG%|cd4HyL(q&_o zd^Zux5UW&!K4-n>xR|6TZu+y)-3P%%6l&n6rH$g(jB9M>7~^|1VMEp>16j)m^+aL{ zIvE7D+dF`CS^WxYCgl^@74qeX?DbteE`x}WSK#2^-#brC0w8srqayn}JdGD@`SCfm zZ*-=N&TP}dtN5a_Z)Y9%jM&!#zXO)luJGP5r85-e{5bQQRoxg%BZ?W&pk2ZccDsdb z*7W`U;}tYKsZ}u8Pm4dJ3*Ee?*Jz(|D_`9fm?HC8D@htJ_1Oy{L_Aq=*u?IhGMe@0wiMncVBxy$vEcns9Y{I z>m$PxR$ngg&@?k^vm%3@2o!uUQN1N~Lv9QQr^rY7XJ9Bl352FKBg^6KXHc?&IRK#j z*T>uS(^u6#$Nu1NoJTV8xsCTkq8#XFYe?V&MPqImHQ)l{YCuf;QCT^%!1h~Xn+rIq zvO{(hz6n?=T9@)7GVyL3$y+S5<~W=R5a=69xos|2Kt_Vl0S7e=1hucOL(@xW7jgE1 z7e9R!aK}g3;xHvIi9A*^XYUTrXG71nmFcL0ON%lte;@Dr?nQO)fA#5!-DkcvJI^zl z?*ETvp}JHJ{12?nPKifAyT^|9j_5SQHGN|1NYt!@aR-PecxS)&6bSj!E9*8(asb|a zt18}w!0e}IJ&Wt*_LD~|VXo!w3w#+f10k1U;`}j^p2nv*Pr*`|m|y%Gc7OqltYpey zn{*0pi7Ags=`zdleq}QygKk+#VS8LJyiGNFzggc2SlvNq;G1QK8s!XPM1wM8J&Mmw z7K!p`Y%+7n!123({%_tMec=l}oa?05!Pueul(vF$F%Z-0aR^0S?aRF>?ekh|am|JF z?RE$Fuu~5MBqLc2M(Wolt>Q1Zh^QT%Y*cduQsjLHy9ppyzVZ6=gOnUDeyGwP%hm(kEz{MqsQ%m1BY*(hdk zX4qP=5~8wqjXD+PNe^cm;8g+_Ifk*q=Y}ESFY1H7r@^u-2Q_}Yc8Oqdqt_Vf22FV< zKNe>iR%^idLbM%4-XmGJt!)Q42y{erynAzg(H!MZ( zCT7JfxmPZK%fn=g6q5c|S&kMVi4z)$!bkyPTNk_+JP~ZS>`}JDpN~Qc2sMD%+@Cms z%xQ3)bxx3hvJe0ww$-ilDas|wet$M1`@We2{bo9|`F+D`y6i%_SJ%xCK(;klZ1nN| zkHFnZh}<7ohwt{kW4-MRQ(B~D+c|PBr5gcf2{I>p@b}Oe+Q|DeZ!??s{5^Dr-6H^; zEK~w-maj>bZ*WKvFTErH1DHf7hjdx7A+nlF50z)u-x(C!1sb^X?uMCP0u=2)tZB+6 zmLw{MxH+H%CT_gW?*Mf`ioe%6Fp8^NpFCWbF6$~UoZnZ)m|$Mt)ZH>7zvJHvpf zwKnlIWjQe0r|b*#2M2p&Z^N*&1cu8|htwT><&qh^0f#Gvpv7p%D5+#j4uCgIy0H5T z56sHjC{ETm&aR^lGGJA!idke}w;E#B_rvii=WaUnvH@;gFl2pe* zP`*+Nj_-ZK+M@18Mtd)48b7{qXtoKu!m^>v1QP-vWfDh#7K}bhXa4e=$MqXu*7WHG zx0T9F5Wo|g?U@T4Tt@vlt53LYF1KRqN8OamgQm_-A!z!EH?3;_S;KBpMz!#I8UO0- z01g3T&yF@IG%}Jf83^0Xat?i;G$x6zpWdkR!ayeh=UZ2hTQKf3v502+T4%ql&NH0%s*Vix4 zW4G++_756EoA%f|1lB&h9!#BbFS!6&fpMQEfLSVIydb0SG{??nl8gq*CoegmQK)%- zrIArv7y3JazyNt0q@lFUJb0fy)wEQrt<)pw6vuCLH zn*PP#d*Y39&raQMf7Uold@PBBFr`#vzt+C$z@%Xt+fVKg_mYPgK-&S2PeQ*J5^3!V zkDoPf@ti!t5-F9C4^%QJ4sdLt&lq%Q*|pR)a0*WlEg33OKn(qtp~@E|L`*p|$5%q- z7x8i3v4pa_27lGe+e$X8U=XKRhx;a%?%>mMW^AZ6;31bJ^%5ayMWy7=dqsS2n%^~1 zMVX6ai6VaEdy>LkrK>f=+p5C|x7w%k>ok2dR4ncWQmh@UB-Rd9&tS*5Bg-C~=Jm@uqXTU%A%8!ep_(5$v&^$*;liDJ0?Kl~7pBZyHa(!ajp?qFa+$2=*i0)N>&3}>3JqXw0Ilf*(WcN~E=dZo{dg8h z9M`jRB@9^8;#>Z0r8Ro`xh{B$E)#U)P;hiHL7xw(LXOC~$L{CiDIBgO1@FG&UdL(F z;oCe3FrA%2*$4tQwu^iLfPPYo#_I5u?OHQyAZ7rmi=yI*1te42$oR}s!+Ea1vT8GoaS}8&+%;I zm;zeznI;?Zo?P@uHoo)E(N`|SS%SunZ2$akadYaP&K>7$e>$~V*4BVdriczy(viz_ zMWT~pdr5<3SI@5K(YZjPd#4V)7xHBRh2Te%7egN-~dS+KIPLk-h&29N|r z0d7i*5GoamJXJ&9PbtV^jj)#M#B)pI3MA5Z@xX+()iP1%U$!0)W5ua;p6}1$9)H{2 zx#qx6x`af?GwozhvL@1uM2a%3n(6*M0G(iMvM0-=TIR-w2$XN0GXR)2W6B^T6T=7= zA`DiG-)j&tzL4MbjeA~$1ANtcW-Sa1q67nQ$`JI=G;cZlxxKB)y2FCJpNl~M;H$&n z%zH+6G8eD@R*C66(;~;hZOk_*HE+O@w6I*g1GniZTj?s9sad(a;$FUj52UqRKAyl+ zZ0}ho+~Det#dFiDJ`)Br0Z?#={++%2D433O;Qoi9skC~^Z}J>`J^@B7^HI@cmOpdp zrB2CG_Wy>QrmSc5>s;1MvsU`Fg*}&Ho5Ckp-~LzAnbymU|Io|3&fLVeoqI9~O)Ab= zY75g*GR0D>*r+WXI~2qO04$MyEjb^T~%nJ$ zz_x>je$5K6wa~#!eD9~dn@6@J5dk~Dq({4-hkv_N1{XbjV(qjTT)dC<^%e$}0t3jp z=Gs#s8$4N329i1xpe{PXGU!}0V9mAe;ISy9okhf4dD1i`gO+o@6KjUx0_7~><3afH z(CX`hhgN_4^m2WJx_5(E-QMahIyUya$cwEZHTLMDfV=A6RTd)G=s_jbYrRZ+9{zX!ya%0Ntg@9wmx19?cf`0 zgbnpUT-xvi(IL;UkE6a;z-(N#gJ?HfaAc}S?g3(O4Ta=KwEfXRRjFn&D<-A@>dUdv zv{eVR+|{!Al?_O%$&#`U!yl$3&rZjgv!{RgH*a$gd(E9DE_P`6y+xvqMzQ%R;+Ns_ zf$GpB-v&QQi4Q0LS;sk9W(kJ5Hn>0dPXzUx}{We(fWn44xrvrsMe`P zrf1#yv1S8^HdxH9fx+L0tWp+=Q7hf;AU+bSxr@n54RSz&)W@YN30FqW60E0oaKyU; z)e3Tk{kJVFFfxWW8D9gDf|?)d%tsOIW-$ut{!i2yEz^6Qp+1tSlLODqv)C)9_wjR+ zF`E7Xy|eoI({<#d#n$VzomHTfYEN4!vY$p8ZD)u)M82pVwCqaCD=1)LT2g+IQjM{S zCy#sB8ogsZ%8h-P_d2V=mc!?5v?qIpl>W}8v(u9XH`_<~w!+ds4m)V+c0D}z0bs>q zlM9)q!fV1}v?JM8c1p`T$c_G6X8_Lr`{V8U@#`}IDT8?eSZ8R_0fc1_F0q)4=|Ij| z-^mh-dB=YYW_&>q7-9SlzhOH(JP&g7_PAbO&^j>ZcPu{E@sNJ3olg0Nu?G)U2ITl6 zAPyyp<@X2vV$HyEzxvRl%HVzTr)#r$!4k3oILygj?)x6^KO;!L_3xDMEl>WX6Ddpc1LC&uGaRaR0_226F*x&fx3qS>-i2$KaZG1tCui zEO4n4_7OeZRr8JjK*8T1Tw5cVt2V2G<-Cp6Co(lnths$EGqe>yZL5?A&0mLU_1yWn zeKT7`T1KD)D4Ajg&%jW7w;2Nl*(o>s7hv4|<^E92);!0;sce^oK!@Zk_>TH?rSVz1 zK_}~))^7VYj@D^zIfIRPm~uNnlcQw6H*Ef-@-5-hhujglfR)CTe%4{Q0;HZ%+vPHY zxKIijKqcqqx~j=s#=-cYm*0)e6Qdsm)SuJZZP*qmGr^hVGr)SmU6A}#z)=8ao$Ql3 zV{)U*vm%FMWy*HieonM7fe-y2zZv${X{&?GEm}U7#e&8_tN`4R1d7b~wUbr!v%_A< zX2&a4uvO^*8iRY_MXS9oH$FD=H3>Xf3vE+@Cc$?0pJf`J4%yLlwU?^$*=d>D@*I%n zWl(_VHQfU=W+VvEvu1TT)4Ij|=3Z#5ygVd^zyWgyfyuCJX;dgl&o-qR?O9xsld;Jj z{?h&*R;#L>v=e}cvVcmDu7QwBT6`F})b4i(DyEdTkP zd_neKc0++xLBE^MjKlCg=FCuR@uqvNm>bOrw3W_G83Nf#8S&0mB~43E;WJH=MF&pS zQ%=wCQBb-69iY}AB72*;^zzJB=8Oi@S_ztMS8bbffOXx3AVO;1!+uhoi=QDGGr-CY ze-J~ELukFILORPxlT{3@OJ+_B;_`Ok|1&TQW9GTZKDl1s^tZ}_WPj(dEmMNhxwR>` z>}Xg(lOQUa!xzB1iy4h>w$2DZh}lD(JHXaww7r8*1aQTx!7Lv*MnEO@Rd(F1`WzS# zczMuZVVO;aO>oOW&d}?F%c6#D_s^D0(|Uu+2jeU9MmCyE@?;>=S}?@WUa|xm3Q&wv z2P`u#g8ByQU6WC8 z#^n{`V)qc2W;tsEAomr4+1H_g>(|dZu!?@~>Vl*Bt0Kbp;j#Kl z^2;`xRt7QbZm&sp{lPx?`1$ASnO$P&i&4YQvFhg3ln`kj+#d2PK>rh&cXTlVs7Iar z*Dve)c)sclOu9gAhC-W!^A*uk{~6LLs_J6~ti$K}v%p_|CKoU%qb&VNhRK@jvRDVM zqnn#4%jZMr$`$AaTC|=_YgTUV=g0Nzp82tMkcGHvPBn*@d6q@>?D#JixP=hm#h!jS z&wsI{ru;nr^Z5l^p6ltKgK_79(T(m=rjZZmJBsX67nrtK>vor+6ZqH5@JITacA-%e z7mh#%aA4vXK-EEqYY!w!f-SgM8$@8^Q^ncfnV>`yaMk*#f;I z8HN$VV1xm>HsD1RF&N+&^xiO4VRE^0KG3DlZrd@KsPXeXv2i$3QW~z*h0VcH8EFNr z@+_*?4&aJ)^kV4a_4|n8PA+&RAatd~#yDU+`xZ}W0M~x9p1yyLqnk+VoOF!m24)62 z+1GfH_VF|SMB|=hv6@df0JDR~xzmK1ugG__Tu^JnH~=6v@n3 z*tMVw1^D~!>}G?UcVb;B(50-b|8|}PANL!2Gu}z3oPot;3oPy&+W*fwlWYdYHaBpV z&K$*=F_oT{Ev%88g4K#?W8!S{&z7+A#HuS+dC+-AfGOB`)DECqXQssfJ%p@i>CB`( z$Kbf0watv@I;Dv>ojLprMZh%D2Rf59x@y{M@5`pympgdz6sc38r)&hN;wAuw#Jd^w zY3*hgR+sezSa)VmK6wM#1hwPgX#CIfJ$qQSvdC2~*3rV2n@x&OK##TAPuJUbZwBtW zHUTNT(8nw+uCM<+`g8-RfA(6Y-aEt=O_eMZ8CycB>MPk9CANC}KCI8s(qV@)|n{J&h&;*6AAF^Cx3Y;`uCAwg5YS~Sg} zDNAX-Ma}!C$Mvi0x_*V5R$sK2TuXPK!B|+l^zaa zjG4=c@!kRdFixX|w|N(Nw+7F~;KO>e%7*Qu3_{0{M66OuWl%EbdoDnU~9(#Zq z=1I%iNCr^xmP?)`D630d$^a)9IDTMu?byc(!(yB4uA?>Cu-=~7t#+<@Y<m5Kgb?zR;qSkd|h4W6Maf>;tm_h)E{-XDNU;dZJ$ZsUUlEGI|(?r#bDe5 z0*e@$VSLE5tdpim=~VQ0YW+6^UC0Id#iaDXlH$PO4=$Gp;L!8z!>bfF&jT=w&gN&q z(Z)1R^PhFVAq25hct>s`#knsgfqGla*ylS~$27SCC}r<!FqSLZY`kCayPK*4xZ-L@Jx^af_mhuzFza- z8rWSXaKQH6n0={}eAL!JuCu>f|a2>piyiOt~U5~%LJ-=Pg>~d4U zG1>7c8*pxJz)IMUR1l~*MUoX1v2~dPoSfEAaMr1}5x|6PC9W#P@{H2~rsM;Aqf3w8 z)RAYhMcYDj8EQxNor&m(Hgy9wk~-OL55axF;Xs+aQTNGyZ8RLmluU$%A0b@SpuI@9 zoJ@N6pL=uzC$eRcp_GrT6UqUne@LCta<~_8BZkQHF~0`0$&6V-%KR)q^=w9GavRD1%LpVOJKZ8r7|^ke_qe~8(3dVLxtENIlSwe?VD z>kW3sW28-}`xcJaf^4GQ><}GZGouUIcpy1+-Uwsoc9_V>qJ-m_#oX?w!JAd34@VVI z>@F2*k>}GlxcO0sMWa_+8f(EYK>7iPQ~}<2v#4hNg75OG_i_AlMux1qfk+3ZkutLK ztofDEP4_D!k14C-;Yyz;+fz5S=gIo>P^A14f=@gj$pHd-AMTtQi2{0|6A1FyV)3C? zijD*%=Uy{xML?z5Qi;9qsHk#NS~_%LaVCg?3V@n3N`q5MwDG$ThWPku#i9~rk5odT z7Tcq#9B0TsfLR1Q1n!?6*LNtL;rvvt!)6-JF!DQCXRzp~zpm0aW-|!J(IrOb6awCP zGcNnQ3xt0`uXoYW9oeBAOSR03$V517 zS0mM&XW#eWE7#G7a1+Qy&trln3)J{wWMlozoL>w#V4zKYI~@JE+^KHaXk0W!|&T7{;=h&m%ywC-(1;TB-&_v1!Cr zaZONlfkrVBVZ>y?=jY9LB}BLN4`@39{91u^*i-0n7CUtulVFHH6Qlxrdeq>z?`%VD z8z(TD6lg+(zy-C>oM^-S!Y3#QP|lVZ0|y}nG@^ZBn=sojw?|aVF9ORx*qG9ww2G4S zkAu^4ZkdH}SW>M^E|OD&7N_AU#bZq}dCMR_TlAd!7|Y;q z=@h#WWpDUZ!!OFbOp}7Ftu@sn+$kxCUFuk#A=?~YWoGOsFB52?IROh$hA-nQD#a}) z&#SJd?lZO92@WD#1t`y=jeU2twGXEsrvX0D8Ln1kVX}6yD5Ik>S@rqVDa%MBKL0%_ z);YIRdNyljP0V2`OgRV7C#y%DaQjq>&8|YWTg4D%XgY8ye<3?5V#0QTOsjfuXFG>^w0Tw2={=i+&u^)PzBm2IXS@CG z5GDl$Sc^@dX>e&^np-s`5gw2I_K-aIEI{qcg8-Le$3vGUA?-h~&MK#~K3d!m0HxEF z&cNvz0F9heCSNzM*J!xEI7bQ0`V$VyhC~W?Gu?8;ILA(@HKd*tc#^JL_zdQPx_7Ye zsCOq5|E$s(0(a{mKzrEk09~3C`z(TUmo^~-Lni)#`gQef|N3|lE6)S12KlzL0Q)~7 zV?%I{k}EOzWZu&{bN0rP>KkUs6(w%s&wMw*z_)GM5vH8L*axC<4#yHHy{L;IL%Xp= zs1kOwRr%(^T)Tg-KE8$s8;+OG!PCBwGV+-O7EP2d zaMJGKNB_T^Y^;Vx777NM#QsxH_-(=27=Coc8DTg7m>UB@c0N|6vx*^4^eE|FAeMXnVOhT+g@IJTx#Y8st+ zn+`&e9PR}@i4Hk*dN2>tdrCh>XC&*<8T;AodtMr)8RmkkGYIO#zJoqmX(kZ+nf)(0 z6M-vv;ncb%n)RSc$fukR53vR~SFX z8$+dk5>4x75ix_y@lJ1|B}j+inn|fZL_xxKnOW2Coef#=YDP{E)t=MLseby|knVwu0OoJ@b=5l0@KEL zZl+$~KBa0YW3bM%rJ(D$(dIb7nk5z{S7VFup6Tsgc2E{hJ;k{M1Cn9=&A6uo#3|xf ziYytvq;4zv4T58okAanD*BHo4q{ThW!DLV3!hXh_ktnO--`}pU z7rN7=8`R1&4|w|E`)HvBiWwhvYS{n=b7c_YY*%u-JTQ#A8+eC9GM8mdo%sSd4%{1( zYM5=wSj<3@eq3eTn);0n3{xiYZ*G92>jb$b5twNLu=n%WNom2$E zET1*!FY!?TcY%d0WSBzZ*m<`Sr918?hiPQ5}jP9feeB}5zH#po=1e9px_ zeJ}et9H|YCRUZMW}4{@O;CPZ_MWnTgJL_1uZ+o zf#nn-bP`x&`qW-p-gJXy>UCv+jnTWFM&uK}NHI_W_1%GCEA z`jko{F&ylWkUBByd){q$ez4XCJKld8LDi846ojc6hSOy6{n8l$xHGtC_lUN8S|qY{ z_-O3RmNEq}Zi&Xi^!WADX08J{=aMrS|MPX`WY`a#p@CbEG;5oF&Fw2}w5DrM49&y@ zsR}q$zJ7l&m8>iHl#Nn z+HQ1BXjU3SPVA}tzhMHm1T$LIhe{m6BrG*e2PH@;^HhEc2EF5z0E!qH_A5obG%B<$4;_hp?$zd#x61;+-;d)bWS#MU0C_S=(4j_q zgu|;pv1+3ZGq@EOfe`{iwlOBKHr32&@8{Q49rs?J37%7V7(W!+)w<1qesAkSTr=LWX8tVK-?RaN`*S3zadf64j;oAP&{%t- z^;&`wC%VaID-tS=sy65^5R+#Nj&mT=z;Auag1nq`4~ZkGLA(zO3Tr||G*}{a3qSLf zw&eNc(20Wz0);(V$SL%}H2uH|khrI$1KPvnu#pL%3n)9QaI&kF zv#_!ZkaKo%vVtDVw56O3&dy~)rMnaDM!K!2RA}&zpQ#L#d+o=pglaL7O6EQgp{fYy z=sBj4?}TTjprkKUShN78!2Ds(rdPvWa)n#xn$SinUB&t zXn=E~?ZN&FT<^T2w^}v5ZLU(E=cYxN-KM|9vSwxT6Oe@c)Ol&i#;)0Ps7iom;femg zzyC=>Bw15(KX$4DH`|Q_Vd7(_0`ae*Gur>RIy0GMX9h(Nj8oid?C^(!6N@%5bRH`b z_cv|zVgg-(h`(dtd7|a4J)3SVwVey`l8w_(=8lg^IFv(m(}h5+7!QGhByQ|~M=@7t zh#yJuh=Go83*1c5H>4`td(XwPjcJ(v9(SRGeX&WERsHIo?sj=2&2c4sGu!^%k3ZdR z$7g`4KJaNuil*q9hkKs=chwwICMAZK460A~;CgeZ(UUs|1%We2moZM@;Z1&5o!zLb z(Qi^Rl5N-X$)ldze8V6}VoQ|O2J)n=fU06#J?9m?f8l>)JUK@Y-~aVRttIi%R}T~w z5{jtlNIt`8pPpjL?p^GdC{dzs0r>lhVB zJRhH)(Chtnd;*2$cxDfH1V-#U6A0mgCu}Z)67CT$Xu|VN!(ulX<4WuqGUp7w0Mc=g znP)atQQ?{Zu-}j4hp%cCiR^s%@IQOs`W(Uw0)V>BS+p<-4_lR%<&7#;BPS(dEHD0A z1t^f`+wo!cUlZ?cYk1pNgc8QW@n>^6sH-s4?L=nmmZMBOH_mwP%|(7WdqLqzx0ra6 zb0$6BC0mn=VO4GNWlXS3$hb@1&KI?me{x*6nPYcSRpG~+oKsQM8CEJ}csX`z{7wQ4 zD`@~UGhoR&coUc%v*GCiuU39r27yq>DpZh*d0|HOr5JOEz4R_7UX%wKenpJ1IRlc&a82rYL`u z|Ki*`=#7)=)^b`GXH-|IC$?JpP1?3?KWR~!&T7?h+1$ z8dM4HcmcZoDhf=jYTFxzV00~Gj~v$3W~=%m+fB(?kq^Kc%pRl}fG!BP;I%TSqg!3b zh@5$l@=f+B<69*Ryq!E7`}4;Gh0{dp&--;W8!{_+7D% z|L?irEmKwX7(<1T-)*D4ei*ySt|0;coWB;~!}Bx!cT{eJX#@D-x$ED$N!9PEwvbwI zfl*SB++UEmg8Xmr-H+oppgxodQxzffCf$t6@Al<}$gm@ejUl7AxMk!g2O2U!_|De& zBDdhVvqht65ILKPM*x7M9i=+YXc4fV=!A2nal)U8wwU)gNny6+Z_%?J^qJ?|@o(V1 zv$CR|@5s#Oj0M0meIhHqT2t%`TScL_9%=}+? zSoMDV{3W-rDx1&4%1O}py;wuyBUdZgjuV%GA@FmTnaSe@Cpq!Oq-YY?)|p_!6laIF z8jNaRtpHjTk4P&0_U7i~i{+5LBR&=VH8`yUZ`*}2LgK^+XUB)?9swu0tKz1$cOuvq zGhzQnAN~_m8Mk@jf~2`bfS-9mQXWZT);d|QxymG?fI*9&5|sEtQ3h|(q{fl~yIlM<7P*mpL;ua{21JGD zo>TO}5&_|TcymDIY}_hdmxKf4lc5kC2xRhYp&W{Piqk0UTsi|74o$wl-f5c=WG=(E zNrrS}BWn=jb}skIXKcV1+DQ^_BmHC3{aGtW#ydBgrb^*2#_2n{sX!|kswqg+fvh0x zWGwAVqv*9}UAo@6Ea$A(?A^I^A9GJ=945tZ*KC6eXNw{<_UbcV8`Ruv*gee^jBJH$ zb9JR$0U!>P^v{y#Vq=WgES;G+=h2!47+e^APR#7Fy9 z>8GsO|FO=bQX7XfUaqnqbNH{AG{KIMGtm^wP%w+#nMGD9E%cTfRO8e0$yoIu*(CGwfm#U#@TsV+P2?dw9d-IGS2LCS`PS zlDfY5f++yo1V{y#5@2E!=o^oo>-a+uH5EeN)j?pT%X7XyD;phCm4GrdJ-q6J$ARai z?>g7V_z9JUxlumrR*hHKfaQ5F!VCZ(L*~5#*!vE2nHO}NS>8Lc@Vs%=$x(vVB#zy6 zh6{?b5$@&Axij0Y^G&D%AX7~`467ib&7kuPXfpUc4zwck4q6R5)8O||F=XCFm%?RM zUIfe8G(Pj~w6oTx)k>6e6R+70zL+rH3_hpNW+6k(HpbH$H##Q$V#Rub0cGUh7#iNr z8!U{QbrDzy#6JCu?oZ;rPxZ#^g9MLL_hCY4Z;TH<4d%ic!4B|%tt}5<6L$dMp54k7 zt^D%v<|L@1xVSu)^K9PbL@^Dd1eU9JaAmcc7B4EI-(mAK9Ztq)Eghr{7``>%uQi?n zZmDYKON&G;+h-ne3=O06_3Ku?@d_SgIgd)fq@1py>odvF=V#WZiL}nc+V`A5bvd6D z{Jfuf&tw5FCcZsfXUF%;XP1yzCXwevmxh3TPj)PhcYxS{aLxX@YH@IRz2kM=)5F0YKhc{^(KZtL&v zjyK}4p_ZNd`l6nMvJ+<}(TLJ-psNWU{B8%PMVS z^Jz}-W-e>6mTvt<+_YxHo@ww`)8tY)^Q+q{&vvxsIorXkJi5z#L`%uFx_j(TgUROs z#{USq3~$hhEnAz_Y}N??yyjZs?ek5>h5yX9y8UE0_sHfdNYm_a$Pfoe173Q$@hJAj zHjNB_2XI6Nn+f%4S!2t~WS+o0C@yIA$h$m@ZLr}8JV1J`=Jm^;X$*iFm3NN%%n@KNb}xwplBqcal0o%G^>8qj8~;%<}>G z!F>m125m5(@5k@ic}7hqNS`saIlc-uniMRomow8`15l~ld4@D$1YI|DEV>_`*-G-6 z6dN3FMez6K4sQEhpdFoQ0LGnB7v)A(7pw#hs>X+^JDmvLvP-U3jqD4!=TB|`?!Ykt zZTi>Cze$#x!9iUz9cFjsYQHoz%$-ljjaK9kxis zt%II$Ww?ZAhum$`I9ktTgOIHUQE_6_%oj~~IY7>wvt(W5*VlVr*X#^XbMsvBga&QP z!|1v7twG@SK-quGYw~>jW&+M|kjD&59yjE1OX9?tlFN;bg~;PSBCWYZZ32KB)+n-lnqP%_@^i)XNo+;d4OGNs&0Yv5G61azW+ zr58!L5BA^Rjh)fryQaRsUmKgt;A-tR0^!I-*YrAjE<7KUXP17rg^I1xJQi+e6atgG z@~PHtCEM$S!<7K8j)t?ovF%wW02J`taT!xZ5~+c##8u|~6o7|jk%QpI7Tn@Gx4}N} zY%|!+D>QRVHT~WDYy#es?qF$O2 z;RNbGt|Y%o_*5Dc;wLM+sKgl!++ z`EfYy!CcddZ(v;~;L7pa@uk9Jm{)~9$8B>X^TynX{wzB~ZNZn93Flt9Hbm6J=e_^{ z7;{NPK~$H8ITZoB)Jo$W187y&!HtddgII`9MWtSSSOLV3|%=tSBM7>Ybeyu*$v8pYM!-b?N=i&xo z;|5=WZr=X@A%pBb1JOI1HN$%rBxE-|xj6B>k_I+B{UY(Tkj;oM`|kj)_ka7idp;vC z4q_bizb9t_IgfNkcy9ZFzvjZln^%;|m(iu2k`1>9>hL!C=Geb%feU!-*T zJgvDvgBLZylIPsj)OPyPIsM80Pj%!(Jz6O^L5892pe^Ka+>v#6aISp9nNo@Oh~}W~ zGT^!APxL>5Sl**JpzMrg8FR+LMN&Je;*z)#&qLK6bc~@47+&L<$bJbyH^;Ha*{u@62o0LZA0PI)ibDZ;oubK7;=ggw3IG zS2z3|Tx1mL(^8=BI!x*{%OPHN;BkT{Eh%HKl=;^md^dmB8078n86{wM$HwRIj)H@S zaz7$a@y)AfANld=nYXQ`s}G(}KWBnCD+<17O5i>BzbH`BKC5LUz&rlWTUKueJIwqA z{P){UhgAXIO`Bn>N&LMoK}+7@#Z(#UdG0H)&Lnf4$|;j$i8IpJ!D|5d;2H$^45MPf zdpP9DPFiWmcB zH*AnUd`~i%<@9>dgcB1nS`JSM_R8@RoQtGdfHIl+vNm)OZ=Lv5M=N4n^X!%Gn;Waw zGa(utz>qWHl7o=RbQJi0Fqgrx_?=Sft=%@3bv14>tqfk?auNMy{wLYfaRLLXZD7qW zlWo~kR^3@9S?g@F?U0@yUf`7d&j(Z2+OBoiEq*bu#X)x#S+`tf4T|?G?==o>9Pa=c z8LmCcmsw|THm{#kA0tNm%Rc+G{}pCv?g0VelJ#5~Wi$Y;Elq|qS(^fm6VN0xZbzfO z>UTrU>)#9UAQT zoNt}aB>kxNYrAF>8bJ_z~51W$G$nbELD=d8Cuz?+FMN?&~EjERf&KITwU{jcO&^U^mP9t=nr2~ zYuRQG{T?MdJnjK2+m+{M3q=BisVw?^1nx#v(pU9W=dGZaTM)f{Wc&uc$F`7BJN6XE zB~|W89vz{rw&6@rX2+j3!y4jU0OZ_ZUEwvc)bUWOTAQI-0qR>BJZNjU=CmJFXX=itpC89S9LiP zKL3Ro`{Tgvsz1Hz@M$_MrOOnn80OQH_inr=H?U_M=)175_zXI|U=fi0_8llWXR*FU z;}^SN!A^iR){9jO|2OhIi6eq?U)PG@2EZM`iz@>h%d4xWgI@|-YV}5EmI#nDVYaN1 zUth||C*Xeq?rU_e1vr*Pr=v)A@S0vMZC})DLtO=&d5=C{Ip7}UX?ByH8DKgn$3m-# z>d`TVnNQxMkE+Dm#=HrW8z8KLHF|ZF-_B(iBzAVWSx}+ZS<3U z`mC|{f^(^7X+#UaR^IkGktRKROYV*vW(Ju{3~Kg2W$3`x>|(~YhYxrE*RC7DoMyGa zWxz$X)=Z`@2cJ(=f;rG(ohc6!=QB}KfO=IIRyUVsGXZKWC*Cn@toQIfBkw`hF>=i{ zzv#>y0Jfg>nrUrvV6)b2#7q1@y{@PhBQq;=l+V%C`O;({Rjpb1AN}`i;uMwbOWIkx%~XNs zeVZxUVjE|Bk_(zvM;AGKYyT(Io9CqssBK*9vhN+)@X&ALfL4o>p^sr78&J04J)PP8 zx7`>a_5fRFvPPAZ;7+Bdzd;hY%@>_%Im??Ug;uRZ9aC*c`5~Y##>tuORC1M_O|yZF z*_{4yG?5Ee4o6Pbi7V@u#73nxstQEu)`Z75E>J1I3BZG(6Mf5l>!aGD==!C7~swdBjH22!42QJts<0((=nsQ`^5V}=%>&;7kI2xf;xJ@{Z*S-`5* zpvvI8p1Uq&lFwi}##B!^X7wAK3w>;dbO(XXDs3eH0bxV(n&M;YNMWS!3#t5;~yM3_-_v7h5 zzIW~~K5n7|tNh4Dy|^-?n_}PS!XDM{tF8%Ud)H;xdlJ6I@OQ_J`R=3l#EG9$r#rL( zi*4*1VEFs12kwO)WL{2a6H+JBlhP?pS_hFUNr0QSI+LU^hGVt#9`4$#84tW9+n2cq zC|&BZ1G-{t+FA?Ucwss?v9l=5u?lX`=kaU#!o4=|8Kkh`jgz-Z%A<0Nx=9YrXW=|bh+*?rF68UGSNtxQY z&;dvFTpZ(XeWv3QsgFTC8LlxH@7tN#e?R*q&+q8WK;*wgXQEZn%Lv}2PvrcUjukW< zok`B*t(_U;@@OvkB_FqrUjV4qXJV;~{&)7+zOm!J$MReWlE`)Dk8vjxctPuQ zS7~Qm)!!f~{YcNf>J0upAh#~C(~kQ)uG|g4Ol2%DFdaWx?lrM`ASg4O?}y`f{*23+ z(0*{WMir~4`k`MPZ(PaQYP^o;DZZT33xa-!^g>l+Q0aDr$rrr{PI054lK z*4X2iSFHvx(wAyx&(_-7NYQBFzjF6O`tN%|_#d`N)SyTgal{rC%RZG=HuBwoeI1@nH5%i2d3vTP=K)KhwgW99VKwmC?@VXQn&RC6_vxsY%zSDgnvT{I z?*SN>3l|q1H>fHw(kxhMa2B0(B+_P(eaC0feFlev1>lvidpbTK$p_F401Z&?-s@Qx zQkUE<KKHIPL>iLS8rZft^WAa@!vmdw4cGmm9?oaWYo|0y~X^&OyOSvI3n6_6y5cUcJl z18V?UpzrD;5zc%CTNioG@{X()_&)DWw(;y|hUDYyVu0#=_Z>g;$Y++hD{G#)d6PjW z`Q(1lZq57xbnQOxvH1{>zuaDrA6}mYj{WC7KNBCCHKPnTX5xXwT5tRgz%Be^aGhUX zbWTg_u9;vbev6JBJhYkF3FI+TpMyx{HGhO%WCWxp7mt1BStp3Y*xMZ-de3FxA;M)( zZ1tG-jmV&rhT`1 z@8T;MBmORsum1aSe?aE_>oaLHXa)Hr=ux1^_;ywNmtAMDZ+y0S-RP75 zRb7Et5#n^Twh5Eiam79}eoy+Sx$`je4c&C)FLF^-E^1R;UhI-WO)y=MMSKLno-#G| zH9UXwn?7sY&mVQh0yotX#3vdk-O*p;SvQ2}$fGeU#(*G-bN$2jW6kR^1*eN6I4`;2 z+DT-LN_T0np?MFrfBv?_H??0&d=Fz^-{1QM@0k=y5Z!QHW?NJJ^m z^XamB1Mrch3nrhZ4YlIU2hRNCpuZ}MzPYihtoM1%CS1Lk(DPh0)+#Z)lhJRWwamziAL76p5_vVRW$8+54NTcT#O7_TDyvK3dpQ9*TG+ai;{sk;-2!vS^Feb zo)yPh9y_ReC++OyCKoj_;pilP-q zpw1Ud&A4veV>x>(%QKb`+^%wVxfwI>Z09>`b}EUM0NA2M{}?Do!SlO*PriBuuk-RY zeCPM9EPq31qK`2reniW%vd<>k^kmC|(`8LR&9^$kOcPQ4CbJ1(BWLO=umshb_eqxd zom#UPuhyA2X#u~J9ENad&aymajhZ&%ok=)Z$qac%%ki^9`SEg5%?#z+7}Z6C@E{Lx$t0Z^-<^h{8jM6L*H{< zLgO)y`o(lqTcMI7v<_Gqn4BjI7+)MJ8q zv|*>@OeJ6mPF)rK&GXaoyAQ7isWeZxg%ttCCX~=tQ`JPADLC`$S*-z3_q{)O?w8x` z_>sNb)ph2l+x_^#?IH0yw2(wb9{hNWkzITc$RVf%Rja5i(aEmL<9h(@-O*3mTJ|(L z!!=l?jFl)7+63@@L+f_pS{uUeA`yVdj%P;h$NlTm@#L;TbDF$VIs1Rs?yU+9o;Zcw zk`bOI`Sap$vsC(~gU;H(&h~4HUb9gP?|aB%%T6*0Pn#!a4Q69#*Wi{3-E>K1 zNOdOQDjdYi7MHe7$Gu#~y2p-I1l|mSxjH zw7nL54(of0_z(9ZS^3_7%W`=36rZyH=T$n}ve*`m<570mFQz!p+MmLx>8=!4UTU|XrI&a2=KQcM-vyb#XUw!6MVPbdp9URN} z70Jiq2-}(Q6la?`(w*;nKU+6xKI$DOur{^;!2RjCeYg>T;pR-y5nPGM#f&_7c|ZRA ziknnlm`PL``@AvBUq7)vH4rB^Aj`=*uk}@i74HsDdgR4%WA^UjvnU<0v%UnCFF?lj zqSXX}0PuX?$h~Y{%hhTBp)clt<1;+xNZ`IFyV9yLv=wopwdlx155)nQcptKb4zkZY z*I3=Fcp(sbi02}uTu6n(ojNGGH>IYHrTu?(8cMg5$iVs-9ct~|18t7Mc@DAeVgKlw z`r6}?CS>40y*wSi;eP?7pP7BnJJKy^GTn|n*;oJdMqOgd&nNV9zq7*(fIC3?pI$|o z0YxU=Wk{Vt2O0!$?(429^b`5@m`mnT1;fOE)o^v9=3_?>aX zL#mv!eyS+##i2Zy`m+N)1ifTds6vl(6{z~Wr!%Af9%#Sqip{D23*2obPAF-oOEJf0 zo6C4Hr5YgD!Af$;T3kW@YR$=F4~I#-yf(E0eO!thzT1^vpWmum)=P?1<+1^2=Zvy# z%*>??9))E9eR)L#xHboaB5LhYCp{}n{^jkQ zkL^lbz@;@p0BJ$M0Q9P&G!!1VM}tvgOR3if8`)16?Vm_FsBG4hd7F!A`72CJI=G02vtX~ zHVwgsl6IlS`>2E$si?==#ui|a6 z_KOH^aF7#O^{AIJ{JL=!8RNBs&+M?mfBQ@X0tEb@a~N!cth(Og^TX7htUrI}{@x58 zh#S<62f+8G8uyY0R62%N4A@Qsf&-vD0mA+G@PZ?$0Pn}~>E(9(j@frnM$~ym#%I90 zTST(E3uq#>pRj?S5y;>`st>FFz>YKb1GFa0JJgvkU(rJHc6@$S{v2IfzWZ>nLk+iw zT>Eubw6~^vO&|4({g>a+ZDG72#-#~HE{J%&+(6a)@jqt>r8x^98jSz|002ovPDHLkV1f=peNF%X literal 0 HcmV?d00001 diff --git a/src/images/login-popup-badge.png b/src/images/login-popup-badge.png new file mode 100644 index 0000000000000000000000000000000000000000..7bcac54b220c24c0f39d75d9d4313dd791b5c699 GIT binary patch literal 63769 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 N002ovPDHLkV1mH8DlPy3 literal 0 HcmV?d00001 diff --git a/src/images/mpPic.jpg b/src/images/mpPic.jpg new file mode 100644 index 0000000000000000000000000000000000000000..88c9e60ed5058780c10f65f8b6fa4cf4b6ef8cd3 GIT binary patch literal 125601 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 literal 0 HcmV?d00001 diff --git a/src/images/my-list-icon1.png b/src/images/my-list-icon1.png new file mode 100644 index 0000000000000000000000000000000000000000..cdc4760562721624a0fbdfd9b3849f4cf149bdff GIT binary patch literal 2103 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 JPDHLkV1fpt4n+U} literal 0 HcmV?d00001 diff --git a/src/images/my-list-icon4.png b/src/images/my-list-icon4.png new file mode 100644 index 0000000000000000000000000000000000000000..abb7fe9a783a052db17f3e1975c261f15df856bd GIT binary patch literal 1956 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 V_9p&6?l}Me002ovPDHLkV1hb7uZaKv literal 0 HcmV?d00001 diff --git a/src/images/place.png b/src/images/place.png new file mode 100644 index 0000000000000000000000000000000000000000..15f30f8c777bc5e95990af9461844de35321a1b1 GIT binary patch literal 276523 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 BSbm{3561e({X{HlfY|f%DtMi`Yg);1Q(Qh^| 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 EH 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%0AKS+U?qQ2kHV|i~xJ@0DX}T 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 Z{{fc&79P}^G_C*u002ovPDHLkV1gEt=qLaH literal 0 HcmV?d00001 diff --git a/src/images/popup1-bg.png b/src/images/popup1-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..91303782f1c106a87fb283603806bcc9b070f2f8 GIT binary patch literal 204648 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%0A^nA5C{(aywX#;EjFc00e_}I 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∈dDz@4j;JSUdac{s!c>!d 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

N#2T?GDXYCT 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

N$iw3DyMq2xp%v^DKuB8Lhb5#}6Hg^jdJ8 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

=v0o7)Q#_!-_^di5*l0vA_%zC5eC6|N71{o z;6kfTc^38fC-(H(vj|5?KW7_;tIo7murtDLs=;}s`H{+^Hd{nxk;KJ4MDqa6Ub`)lLrxF_aE3^IeVp{S4Cu1Y#ysOG%Oks<}MF_c1Ll5h&nt zNjEXY98dP*Pv^$Z@cr!gg>~&aCn=aj5HK6j;_|*X*g&JA>KKgPSUG2HrS2}pcxubC z8X|hjhzuGKZkl118aH_$xnbbWO+pBv7JS%tiOM_F#aP7Y$NXA)gu9N@jkJ-i{Pqod6mbYknbQI(easu7Y`#m{jVnT3*lL z`lTH{2{UcL@2C#Yhry;AFg9gtEr}c@z}~fY+Ba7zO3kTR8KuREW~^^_Tn4dm#tsu2j|VNvav=l13BPM8R#`& z{$o`-i?ew}RZ~$)-0vo_yr$3sS^#FYdCD->a}huaN7Q)cMTR`br)l*6u)T;p{Yf}# zB5ZEH4NyU=#bxG!K6&jD0rJW3@e1FYS5Vb|uq!GJ1{{@!lH3RbPpHT`jm`K3&T7=6 zcpGnB{yjr!l?;`~CbCXE_T7$=HGmDbZgZ%z8AFw3T_Fi8<+g?nn+n+~#b13a%Rnk2 z@p1dp+}(Cnp!Llnf%ZYs-JcI$-U1eSr-#)drbPeMTwudq3Z0Zo`fdwUD3r$jnju)) zk=^08j=?A-EM5Ep*!AhR_1D5%Cx>lYHwJIwdw~7m)g8r1AcPt%&i;5wO*{m!vONJm zmSW|mKOqB<1qB8`jgY`8q(=h_e4!+czRIc4sLo(F_dTDs-}-MF*Cbl&s_!OSG|pAM zjO~Pq04~KK^zLrrwLbi>@WGG+b6aX*dyV#(UzE8YXL=@5J%(<@U&u}6^?Pnpx7QO~ z)Fr07-@CqrZY~wJIq@*nXWtht%$NqoPb4U{K!$myPhN{}QGi~_Gm8B`kB|D>EQ5VW zRWREHDM-|ze5&>`>M=X#e#QFr;Q=)h5C#~8QW^_>$SLOb@Q2XernDIVDc(5xG80U?@Ih9_u!FW&CZVU_kf&!PWo+<+OVLY?7&!jm06M z`{RM$Dg4uwPxNRQFAlrgwRszW#V5@^b^WN^3CV!1ygU3H+G~1OPP0sQ!7XAuBBEt` zN^4fKA@k0Fu<(v&_1R+f~q~AcW5F)Y$RdChroJ=6RHnGB7 zri4+3JKn3q*Pv$leNhV6W1nS9hTA`t*K;N9RYAastwMsU=adhj_dT7yW9RlIEJRv{ zF{O4nGI$HMs?jeX<*eW)^lhF@749U{d~7l7<8Pv{x4P3$2Qu~;vkv!uJbl2Bs4xMJ zyKESKW%7s5w%P4pYZ$Z4 z_JeH+J>l$C^Q7+_%A6WL(HsdeK0AWm5j@)VQy3?Zs~Mku$~5q#P8;`et;|$I?BjYk zH@-H_(D3d=`7rzyXzj<3Qv6J5ro-}sk&)UY&dZgx(rHVeYkb)Jdji3Qww_+=Sw8Fx zRbocPrdmIOJJb}El;7a<(;(cwf@?qT2>2+2Wb}%!S`$6{7Ql3{r}?+A3XX<<>Ew)n zpHkH=&~+b+=XkK50mVQzg%WY?zaQO3kx%k%oJrXaIZct`GW8xfV5OYRSv6!yvIB^F z4h=e|ms+=t7COAy7zP;kSMRL+sbZA9B4uxV8m+CeD?B&7-6P^5l=j6Bs6YVl&`~p; zBz5_ZwBUkoA>64g{Z~sYyheibe&R<#rqjr}V@i(0gT5c2qxcy(GuSeOWO4L!%Psu8 zS)-$4MQR6$*cAqDkzDqTa4m2kXlv%V=%`!@bE`LdmT1w5MXb(`M=feRfhCj;$~AUGX@Su4ej+OPDi=kpmmY()9fyLJ4r6I~5}G2C48RoWA6X z+*+GEP3m!G-D{zYMwAFYeZ<{J^c_cv7QdTz$x1L}p<|ctc{gFGNt6!jV)H!_twMk_;XdWuPUB~oeS9Ay=p%hTMrXS&Xr?#R4o?oHR< zzUhIF>i8eFQ+>$f{Z@k-S1f(ZD35Fh-JCLTM^&XO^N*VzEF>8Q>Q~@lLwQsfeF`;l zJTy8Kq7#1}B^dX3|C<}HS?2C9zAsO6iXTJ-OGC0&oi|2j2^BMcKvW5BO9(7D0V

;7hZJvMmrK61?(a|uM!`ob<^HNE z-zW=HNrQDv@CUIUmso>xkYEnrN%e2z6q!>k>=~SW{D`=-NvKO>Yte$9gQaHl3-{)gU>jP} zq5!xPImq!DoNHs94S$*kk<_W{%9FhnoQ7t!O>gP)yovL0G@niC50DykJ5WFW-D_rH z6O0Lc&w9HxTECc_A+QV>!*Xdk-b}#-z4bL? zebSAx`Iu@bt<=&@VjqeOf5nOr3tDXTtU_|@vT-mvp}y7Rp{ z8jTqwFx$!8ML|$}x-}XkfzB52XAr&Sr0CKjz%esvU0;`9r2{OQ!^1$ZOrt`pN?1v0 z4l{lpGwe6sytWzG%nMebf6hedth{3ww3+U=d440>ca*#LcZtEnJT-CWWV@)E7%z;X z@*?s}e-p3p=M|5Ra*Q*-Kf24uI0u)o-#-y>7>v8{C}FDOp+iQPzaVz-;gV6MfdU%Vt?kD3`7rB5JYg%=*AMu%PXiEzj=d`UnPJ?2J&H0thvJKc!!pvR+ z15dj3slndD3~mvm19VhDBbGx3_)RanYO@ZkZz2iJbd1#MJt)VjS@ErShQL+#jvJf3 zb17VGdP3qLKb#9&ocS=D>MhjbuPmtdnstX1=ccb-&L%TCfU7N*zKoqC2GW4gabj

P!;m!#Zz@4sWsYNipISLLDR> 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 literal 0 HcmV?d00001 diff --git a/src/images/relove.png b/src/images/relove.png new file mode 100644 index 0000000000000000000000000000000000000000..e01d5b48bf441330deb5ecb852d54f54f146d52c GIT binary patch literal 3445 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 Xrp2??M4L{300000NkvXXu0mjf5rb`J literal 0 HcmV?d00001 diff --git a/src/images/slogan-bg.png b/src/images/slogan-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..b6eabb86a4ada14bf4f258b712cac0c99a1dd04f GIT binary patch literal 92120 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

OS_ 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

f<&wXB=ObV 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

#wcWun$(IG=SGCe8<8w_*LpJjOB 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 Q(f|Me07*qoM6N<$f)p58761SM literal 0 HcmV?d00001 diff --git a/src/images/tabbar/tab-active2.png b/src/images/tabbar/tab-active2.png new file mode 100644 index 0000000000000000000000000000000000000000..ab74304b3e828eab0096408cec8c5dd64ac2bbc2 GIT binary patch literal 2499 zcmV;!2|V_RP)Px;eMv+?RA@u(T3v`;R~26CoHKKOW-^)7OuUw0XH5E&Fl|$tNd`>oj1E3&-ebzqr+&e!3q2Pt|&OK+Jz1O$ax4ymBK1FzsfABqSKl~p+K7zy3=gXTnZQc$M zY>u&aqraa3K(kA{yWP*-Bj`QxhX?R&GustMU}Bn*#jBP-4l&&Y0Q-RG1^`G95s1iJ zY<`=Mxh8+hZ)-?yygVq^?Kc1+0Hz2NC%;_z{S^Tid;C%@s>WX-pa&3fFmFt^+%m8X z90Aw~keS-k)crDR#NysgIfOqdmpwTL(at6TB$mBqOFF;?(MWGP3 z*-hU+R67d*!$s85vPKT2J^@(8six5cz|fH_!zAwqzj*zrHh0fau2%%u(h z_RQ8F2BPU;gHduENTKq08^5*pi)0az?!7U_p18A+6h^>$-z9Qe1jc4B)gp+`8|wJv z%=;E7*xK(Y5ftqM#5koY`i)2&-*SoKI?z1-~tDsOp4mb*( z3jo~ugLn2NJv}evO9HRutUy8q{Vl4Jr-@V4%Y)Q&jVeRae{g-QuQ zMak$u8DV2J+7$rUGrRaA5R6;no#*_<7}WMk(+!Pu&0Zv(dW?07M1&)H$F>-+9_Y4_ z`f}L<;V4O-v?VnW zntJH=YY;~^MbJ>ioK_*D{c~@p@Y~myCy(F1;dvGeH{I^1FOEiWe5R9p78Pv10+rTL z(Ia1N<{hK=3td|c^&yOILEO@hwq!5>mRkUCT_pJ9-&*jmcL7>ybMn+za{xqv*h}^+ zNXA^<Ts@sAa53w>ZOhpN!7~7C3@j zU7mg3jx}Q73~M!pPEQS72mqKLw|;+d0RRUTaU6|Aw=-I?IeFP*8f3YUojhoRGqUjc zN`?-BINZunW_{}fJO72#4_1c)f5?wpo~ZvC0q)4W#Rmx156oSSF7HLdX-zv#T*;T9 zYc$icr=7i7RD=rdzMIKK;P}g5uY95qz^=#Y5C3=m>B2_M*YmnmmK3u$& zNOk>+ClC~U>rLOztJ2%8pa?1{E`w#8Pn?BC))@Da!Wqw0 zGg+lPDHW5CJmAvh*5w=LW;UM7d!Oeiy6mp)JhXfdrLA8`6kORNsw@$Za62$!O!%Ee z%QM9nI6kBjL8k$-3`TdIeYE_mPF8k|fIM*h)V~j6T$=HFgY?MOZda=a1kPOt#Fs
  • XlVC`0ij-y4i;kz|N>FKLY{I(5 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 )#0M#J1Q}g*$t$Wpefh6;)8w`onDt#)c?K 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 literal 0 HcmV?d00001 diff --git a/src/images/topic-end-bg.png b/src/images/topic-end-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..46a30cba57994eacec2eb6691a68b95621de0e90 GIT binary patch literal 71845 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 Hu0mjfAF+y~ literal 0 HcmV?d00001 diff --git a/src/images/user.png b/src/images/user.png new file mode 100644 index 0000000000000000000000000000000000000000..e9dff94b6a350369d970fdd74735e42965655d46 GIT binary patch literal 6522 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 literal 0 HcmV?d00001 diff --git a/src/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts b/src/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/action-sheet/index.js b/src/miniprogram_npm/@vant/weapp/action-sheet/index.js new file mode 100644 index 0000000..8403b68 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/action-sheet/index.js @@ -0,0 +1,78 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +(0, component_1.VantComponent)({ + classes: ['list-class'], + mixins: [button_1.button], + props: { + show: Boolean, + title: String, + cancelText: String, + description: String, + round: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 100, + }, + actions: { + type: Array, + value: [], + }, + overlay: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + closeOnClickAction: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + methods: { + onSelect: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var _a = this.data, actions = _a.actions, closeOnClickAction = _a.closeOnClickAction, canIUseGetUserProfile = _a.canIUseGetUserProfile; + var item = actions[index]; + if (item) { + this.$emit('select', item); + if (closeOnClickAction) { + this.onClose(); + } + if (item.openType === 'getUserInfo' && canIUseGetUserProfile) { + wx.getUserProfile({ + desc: item.getUserProfileDesc || ' ', + complete: function (userProfile) { + _this.$emit('getuserinfo', userProfile); + }, + }); + } + } + }, + onCancel: function () { + this.$emit('cancel'); + }, + onClose: function () { + this.$emit('close'); + }, + onClickOverlay: function () { + this.$emit('click-overlay'); + this.onClose(); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/action-sheet/index.json b/src/miniprogram_npm/@vant/weapp/action-sheet/index.json new file mode 100644 index 0000000..19bf989 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/action-sheet/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-popup": "../popup/index", + "van-loading": "../loading/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/action-sheet/index.wxml b/src/miniprogram_npm/@vant/weapp/action-sheet/index.wxml new file mode 100644 index 0000000..6311e33 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/action-sheet/index.wxml @@ -0,0 +1,70 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<van-popup + show="{{ show }}" + position="bottom" + round="{{ round }}" + z-index="{{ zIndex }}" + overlay="{{ overlay }}" + custom-class="van-action-sheet custom-class" + safe-area-inset-bottom="{{ safeAreaInsetBottom }}" + close-on-click-overlay="{{ closeOnClickOverlay }}" + root-portal="{{ rootPortal }}" + bind:close="onClickOverlay" +> + <view wx:if="{{ title }}" class="van-action-sheet__header"> + {{ title }} + <van-icon + name="cross" + custom-class="van-action-sheet__close" + bind:click="onClose" + /> + </view> + <view wx:if="{{ description }}" class="van-action-sheet__description van-hairline--bottom"> + {{ description }} + </view> + <view wx:if="{{ actions && actions.length }}" class="list-class"> + <!-- button外包一层view,防止actions动态变化,导致渲染时button被打散 --> + <button + wx:for="{{ actions }}" + wx:key="index" + open-type="{{ item.disabled || item.loading || (canIUseGetUserProfile && item.openType === 'getUserInfo') ? '' : item.openType }}" + style="{{ item.color ? 'color: ' + item.color : '' }}" + class="{{ utils.bem('action-sheet__item', { disabled: item.disabled || item.loading }) }} {{ item.className || '' }}" + hover-class="van-action-sheet__item--hover" + data-index="{{ index }}" + bindtap="{{ item.disabled || item.loading ? '' : 'onSelect' }}" + bindgetuserinfo="onGetUserInfo" + bindcontact="onContact" + bindgetphonenumber="onGetPhoneNumber" + binderror="onError" + bindlaunchapp="onLaunchApp" + bindopensetting="onOpenSetting" + lang="{{ lang }}" + session-from="{{ sessionFrom }}" + send-message-title="{{ sendMessageTitle }}" + send-message-path="{{ sendMessagePath }}" + send-message-img="{{ sendMessageImg }}" + show-message-card="{{ showMessageCard }}" + app-parameter="{{ appParameter }}" + > + <block wx:if="{{ !item.loading }}"> + {{ item.name }} + <view wx:if="{{ item.subname }}" class="van-action-sheet__subname" >{{ item.subname }}</view> + </block> + <van-loading wx:else custom-class="van-action-sheet__loading" size="22px" /> + </button> + </view> + <slot /> + <block wx:if="{{ cancelText }}"> + <view class="van-action-sheet__gap" /> + <view + class="van-action-sheet__cancel" + hover-class="van-action-sheet__cancel--hover" + hover-stay-time="70" + bind:tap="onCancel" + > + {{ cancelText }} + </view> + </block> +</van-popup> diff --git a/src/miniprogram_npm/@vant/weapp/action-sheet/index.wxss b/src/miniprogram_npm/@vant/weapp/action-sheet/index.wxss new file mode 100644 index 0000000..eedd361 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/action-sheet/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-action-sheet{color:var(--action-sheet-item-text-color,#323233);max-height:var(--action-sheet-max-height,90%)!important}.van-action-sheet__cancel,.van-action-sheet__item{background-color:var(--action-sheet-item-background,#fff);font-size:var(--action-sheet-item-font-size,16px);line-height:var(--action-sheet-item-line-height,22px);padding:14px 16px;text-align:center}.van-action-sheet__cancel--hover,.van-action-sheet__item--hover{background-color:#f2f3f5}.van-action-sheet__cancel:after,.van-action-sheet__item:after{border-width:0}.van-action-sheet__cancel{color:var(--action-sheet-cancel-text-color,#646566)}.van-action-sheet__gap{background-color:var(--action-sheet-cancel-padding-color,#f7f8fa);display:block;height:var(--action-sheet-cancel-padding-top,8px)}.van-action-sheet__item--disabled{color:var(--action-sheet-item-disabled-text-color,#c8c9cc)}.van-action-sheet__item--disabled.van-action-sheet__item--hover{background-color:var(--action-sheet-item-background,#fff)}.van-action-sheet__subname{color:var(--action-sheet-subname-color,#969799);font-size:var(--action-sheet-subname-font-size,12px);line-height:var(--action-sheet-subname-line-height,20px);margin-top:var(--padding-xs,8px)}.van-action-sheet__header{font-size:var(--action-sheet-header-font-size,16px);font-weight:var(--font-weight-bold,500);line-height:var(--action-sheet-header-height,48px);text-align:center}.van-action-sheet__description{color:var(--action-sheet-description-color,#969799);font-size:var(--action-sheet-description-font-size,14px);line-height:var(--action-sheet-description-line-height,20px);padding:20px var(--padding-md,16px);text-align:center}.van-action-sheet__close{color:var(--action-sheet-close-icon-color,#c8c9cc);font-size:var(--action-sheet-close-icon-size,22px)!important;line-height:inherit!important;padding:var(--action-sheet-close-icon-padding,0 16px);position:absolute!important;right:0;top:0}.van-action-sheet__loading{display:flex!important} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/area/index.d.ts b/src/miniprogram_npm/@vant/weapp/area/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/area/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/area/index.js b/src/miniprogram_npm/@vant/weapp/area/index.js new file mode 100644 index 0000000..73de66d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/area/index.js @@ -0,0 +1,235 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var shared_1 = require("../picker/shared"); +var utils_1 = require("../common/utils"); +var EMPTY_CODE = '000000'; +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { showToolbar: { + type: Boolean, + value: true, + }, value: { + type: String, + observer: function (value) { + this.code = value; + this.setValues(); + }, + }, areaList: { + type: Object, + value: {}, + observer: 'setValues', + }, columnsNum: { + type: null, + value: 3, + }, columnsPlaceholder: { + type: Array, + observer: function (val) { + this.setData({ + typeToColumnsPlaceholder: { + province: val[0] || '', + city: val[1] || '', + county: val[2] || '', + }, + }); + }, + } }), + data: { + columns: [{ values: [] }, { values: [] }, { values: [] }], + typeToColumnsPlaceholder: {}, + }, + mounted: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + _this.setValues(); + }); + }, + methods: { + getPicker: function () { + if (this.picker == null) { + this.picker = this.selectComponent('.van-area__picker'); + } + return this.picker; + }, + onCancel: function (event) { + this.emit('cancel', event.detail); + }, + onConfirm: function (event) { + var index = event.detail.index; + var value = event.detail.value; + value = this.parseValues(value); + this.emit('confirm', { value: value, index: index }); + }, + emit: function (type, detail) { + detail.values = detail.value; + delete detail.value; + this.$emit(type, detail); + }, + parseValues: function (values) { + var columnsPlaceholder = this.data.columnsPlaceholder; + return values.map(function (value, index) { + if (value && + (!value.code || value.name === columnsPlaceholder[index])) { + return __assign(__assign({}, value), { code: '', name: '' }); + } + return value; + }); + }, + onChange: function (event) { + var _this = this; + var _a; + var _b = event.detail, index = _b.index, picker = _b.picker, value = _b.value; + this.code = value[index].code; + (_a = this.setValues()) === null || _a === void 0 ? void 0 : _a.then(function () { + _this.$emit('change', { + picker: picker, + values: _this.parseValues(picker.getValues()), + index: index, + }); + }); + }, + getConfig: function (type) { + var areaList = this.data.areaList; + return (areaList && areaList["".concat(type, "_list")]) || {}; + }, + getList: function (type, code) { + if (type !== 'province' && !code) { + return []; + } + var typeToColumnsPlaceholder = this.data.typeToColumnsPlaceholder; + var list = this.getConfig(type); + var result = Object.keys(list).map(function (code) { return ({ + code: code, + name: list[code], + }); }); + if (code != null) { + // oversea code + if (code[0] === '9' && type === 'city') { + code = '9'; + } + result = result.filter(function (item) { return item.code.indexOf(code) === 0; }); + } + if (typeToColumnsPlaceholder[type] && result.length) { + // set columns placeholder + var codeFill = type === 'province' + ? '' + : type === 'city' + ? EMPTY_CODE.slice(2, 4) + : EMPTY_CODE.slice(4, 6); + result.unshift({ + code: "".concat(code).concat(codeFill), + name: typeToColumnsPlaceholder[type], + }); + } + return result; + }, + getIndex: function (type, code) { + var compareNum = type === 'province' ? 2 : type === 'city' ? 4 : 6; + var list = this.getList(type, code.slice(0, compareNum - 2)); + // oversea code + if (code[0] === '9' && type === 'province') { + compareNum = 1; + } + code = code.slice(0, compareNum); + for (var i = 0; i < list.length; i++) { + if (list[i].code.slice(0, compareNum) === code) { + return i; + } + } + return 0; + }, + setValues: function () { + var picker = this.getPicker(); + if (!picker) { + return; + } + var code = this.code || this.getDefaultCode(); + var provinceList = this.getList('province'); + var cityList = this.getList('city', code.slice(0, 2)); + var stack = []; + var indexes = []; + var columnsNum = this.data.columnsNum; + if (columnsNum >= 1) { + stack.push(picker.setColumnValues(0, provinceList, false)); + indexes.push(this.getIndex('province', code)); + } + if (columnsNum >= 2) { + stack.push(picker.setColumnValues(1, cityList, false)); + indexes.push(this.getIndex('city', code)); + if (cityList.length && code.slice(2, 4) === '00') { + code = cityList[0].code; + } + } + if (columnsNum === 3) { + stack.push(picker.setColumnValues(2, this.getList('county', code.slice(0, 4)), false)); + indexes.push(this.getIndex('county', code)); + } + return Promise.all(stack) + .catch(function () { }) + .then(function () { return picker.setIndexes(indexes); }) + .catch(function () { }); + }, + getDefaultCode: function () { + var columnsPlaceholder = this.data.columnsPlaceholder; + if (columnsPlaceholder.length) { + return EMPTY_CODE; + } + var countyCodes = Object.keys(this.getConfig('county')); + if (countyCodes[0]) { + return countyCodes[0]; + } + var cityCodes = Object.keys(this.getConfig('city')); + if (cityCodes[0]) { + return cityCodes[0]; + } + return ''; + }, + getValues: function () { + var picker = this.getPicker(); + if (!picker) { + return []; + } + return this.parseValues(picker.getValues().filter(function (value) { return !!value; })); + }, + getDetail: function () { + var values = this.getValues(); + var area = { + code: '', + country: '', + province: '', + city: '', + county: '', + }; + if (!values.length) { + return area; + } + var names = values.map(function (item) { return item.name; }); + area.code = values[values.length - 1].code; + if (area.code[0] === '9') { + area.country = names[1] || ''; + area.province = names[2] || ''; + } + else { + area.province = names[0] || ''; + area.city = names[1] || ''; + area.county = names[2] || ''; + } + return area; + }, + reset: function (code) { + this.code = code || ''; + return this.setValues(); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/area/index.json b/src/miniprogram_npm/@vant/weapp/area/index.json new file mode 100644 index 0000000..a778e91 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/area/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-picker": "../picker/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/area/index.wxml b/src/miniprogram_npm/@vant/weapp/area/index.wxml new file mode 100644 index 0000000..3a437b7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/area/index.wxml @@ -0,0 +1,20 @@ +<wxs src="./index.wxs" module="computed" /> + +<van-picker + class="van-area__picker" + active-class="active-class" + toolbar-class="toolbar-class" + column-class="column-class" + show-toolbar="{{ showToolbar }}" + value-key="name" + title="{{ title }}" + loading="{{ loading }}" + columns="{{ computed.displayColumns(columns, columnsNum) }}" + item-height="{{ itemHeight }}" + visible-item-count="{{ visibleItemCount }}" + cancel-button-text="{{ cancelButtonText }}" + confirm-button-text="{{ confirmButtonText }}" + bind:change="onChange" + bind:confirm="onConfirm" + bind:cancel="onCancel" +/> diff --git a/src/miniprogram_npm/@vant/weapp/area/index.wxs b/src/miniprogram_npm/@vant/weapp/area/index.wxs new file mode 100644 index 0000000..07723c1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/area/index.wxs @@ -0,0 +1,8 @@ +/* eslint-disable */ +function displayColumns(columns, columnsNum) { + return columns.slice(0, +columnsNum); +} + +module.exports = { + displayColumns: displayColumns, +}; diff --git a/src/miniprogram_npm/@vant/weapp/area/index.wxss b/src/miniprogram_npm/@vant/weapp/area/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/area/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/button/index.d.ts b/src/miniprogram_npm/@vant/weapp/button/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/button/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/button/index.js b/src/miniprogram_npm/@vant/weapp/button/index.js new file mode 100644 index 0000000..984135c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/button/index.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var version_1 = require("../common/version"); +var mixins = [button_1.button]; +if ((0, version_1.canIUseFormFieldButton)()) { + mixins.push('wx://form-field-button'); +} +(0, component_1.VantComponent)({ + mixins: mixins, + classes: ['hover-class', 'loading-class'], + data: { + baseStyle: '', + }, + props: { + formType: String, + icon: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + plain: Boolean, + block: Boolean, + round: Boolean, + square: Boolean, + loading: Boolean, + hairline: Boolean, + disabled: Boolean, + loadingText: String, + customStyle: String, + loadingType: { + type: String, + value: 'circular', + }, + type: { + type: String, + value: 'default', + }, + dataset: null, + size: { + type: String, + value: 'normal', + }, + loadingSize: { + type: String, + value: '20px', + }, + color: String, + }, + methods: { + onClick: function (event) { + var _this = this; + this.$emit('click', event); + var _a = this.data, canIUseGetUserProfile = _a.canIUseGetUserProfile, openType = _a.openType, getUserProfileDesc = _a.getUserProfileDesc, lang = _a.lang; + if (openType === 'getUserInfo' && canIUseGetUserProfile) { + wx.getUserProfile({ + desc: getUserProfileDesc || ' ', + lang: lang || 'en', + complete: function (userProfile) { + _this.$emit('getuserinfo', userProfile); + }, + }); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/button/index.json b/src/miniprogram_npm/@vant/weapp/button/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/button/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/button/index.wxml b/src/miniprogram_npm/@vant/weapp/button/index.wxml new file mode 100644 index 0000000..e7f60f1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/button/index.wxml @@ -0,0 +1,56 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<button + id="{{ id || buttonId }}" + data-detail="{{ dataset }}" + class="custom-class {{ utils.bem('button', [type, size, { block, round, plain, square, loading, disabled, hairline, unclickable: disabled || loading }]) }} {{ hairline ? 'van-hairline--surround' : '' }}" + hover-class="{{ disabled || loading ? '' : 'van-button--active hover-class'}}" + lang="{{ lang }}" + form-type="{{ formType }}" + style="{{ computed.rootStyle({ plain, color, customStyle }) }}" + open-type="{{ disabled || loading || (canIUseGetUserProfile && openType === 'getUserInfo') ? '' : openType }}" + business-id="{{ businessId }}" + session-from="{{ sessionFrom }}" + send-message-title="{{ sendMessageTitle }}" + send-message-path="{{ sendMessagePath }}" + send-message-img="{{ sendMessageImg }}" + show-message-card="{{ showMessageCard }}" + app-parameter="{{ appParameter }}" + aria-label="{{ ariaLabel }}" + bindtap="{{ disabled || loading ? '' : 'onClick' }}" + bindgetuserinfo="onGetUserInfo" + bindcontact="onContact" + bindgetphonenumber="onGetPhoneNumber" + bindgetrealtimephonenumber="onGetRealTimePhoneNumber" + bindagreeprivacyauthorization="onAgreePrivacyAuthorization" + binderror="onError" + bindlaunchapp="onLaunchApp" + bindopensetting="onOpenSetting" + bindchooseavatar="onChooseAvatar" +> + <block wx:if="{{ loading }}"> + <van-loading + custom-class="loading-class" + size="{{ loadingSize }}" + type="{{ loadingType }}" + color="{{ computed.loadingColor({ type, color, plain }) }}" + /> + <view wx:if="{{ loadingText }}" class="van-button__loading-text"> + {{ loadingText }} + </view> + </block> + <block wx:else> + <van-icon + wx:if="{{ icon }}" + size="1.2em" + name="{{ icon }}" + class-prefix="{{ classPrefix }}" + class="van-button__icon" + custom-style="line-height: inherit;" + /> + <view class="van-button__text"> + <slot /> + </view> + </block> +</button> diff --git a/src/miniprogram_npm/@vant/weapp/button/index.wxs b/src/miniprogram_npm/@vant/weapp/button/index.wxs new file mode 100644 index 0000000..8b649fe --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/button/index.wxs @@ -0,0 +1,39 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + if (!data.color) { + return data.customStyle; + } + + var properties = { + color: data.plain ? data.color : '#fff', + background: data.plain ? null : data.color, + }; + + // hide border when color is linear-gradient + if (data.color.indexOf('gradient') !== -1) { + properties.border = 0; + } else { + properties['border-color'] = data.color; + } + + return style([properties, data.customStyle]); +} + +function loadingColor(data) { + if (data.plain) { + return data.color ? data.color : '#c9c9c9'; + } + + if (data.type === 'default') { + return '#c9c9c9'; + } + + return '#fff'; +} + +module.exports = { + rootStyle: rootStyle, + loadingColor: loadingColor, +}; diff --git a/src/miniprogram_npm/@vant/weapp/button/index.wxss b/src/miniprogram_npm/@vant/weapp/button/index.wxss new file mode 100644 index 0000000..bd8bb5a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/button/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-button{-webkit-text-size-adjust:100%;align-items:center;-webkit-appearance:none;border-radius:var(--button-border-radius,2px);box-sizing:border-box;display:inline-flex;font-size:var(--button-default-font-size,16px);height:var(--button-default-height,44px);justify-content:center;line-height:var(--button-line-height,20px);padding:0;position:relative;text-align:center;transition:opacity .2s;vertical-align:middle}.van-button:before{background-color:#000;border:inherit;border-color:#000;border-radius:inherit;content:" ";height:100%;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:100%}.van-button:after{border-width:0}.van-button--active:before{opacity:.15}.van-button--unclickable:after{display:none}.van-button--default{background:var(--button-default-background-color,#fff);border:var(--button-border-width,1px) solid var(--button-default-border-color,#ebedf0);color:var(--button-default-color,#323233)}.van-button--primary{background:var(--button-primary-background-color,#07c160);border:var(--button-border-width,1px) solid var(--button-primary-border-color,#07c160);color:var(--button-primary-color,#fff)}.van-button--info{background:var(--button-info-background-color,#1989fa);border:var(--button-border-width,1px) solid var(--button-info-border-color,#1989fa);color:var(--button-info-color,#fff)}.van-button--danger{background:var(--button-danger-background-color,#ee0a24);border:var(--button-border-width,1px) solid var(--button-danger-border-color,#ee0a24);color:var(--button-danger-color,#fff)}.van-button--warning{background:var(--button-warning-background-color,#ff976a);border:var(--button-border-width,1px) solid var(--button-warning-border-color,#ff976a);color:var(--button-warning-color,#fff)}.van-button--plain{background:var(--button-plain-background-color,#fff)}.van-button--plain.van-button--primary{color:var(--button-primary-background-color,#07c160)}.van-button--plain.van-button--info{color:var(--button-info-background-color,#1989fa)}.van-button--plain.van-button--danger{color:var(--button-danger-background-color,#ee0a24)}.van-button--plain.van-button--warning{color:var(--button-warning-background-color,#ff976a)}.van-button--large{height:var(--button-large-height,50px);width:100%}.van-button--normal{font-size:var(--button-normal-font-size,14px);padding:0 15px}.van-button--small{font-size:var(--button-small-font-size,12px);height:var(--button-small-height,30px);min-width:var(--button-small-min-width,60px);padding:0 var(--padding-xs,8px)}.van-button--mini{display:inline-block;font-size:var(--button-mini-font-size,10px);height:var(--button-mini-height,22px);min-width:var(--button-mini-min-width,50px)}.van-button--mini+.van-button--mini{margin-left:5px}.van-button--block{display:flex;width:100%}.van-button--round{border-radius:var(--button-round-border-radius,999px)}.van-button--square{border-radius:0}.van-button--disabled{opacity:var(--button-disabled-opacity,.5)}.van-button__text{display:inline}.van-button__icon+.van-button__text:not(:empty),.van-button__loading-text{margin-left:4px}.van-button__icon{line-height:inherit!important;min-width:1em;vertical-align:top}.van-button--hairline{border-width:0;padding-top:1px}.van-button--hairline:after{border-color:inherit;border-radius:calc(var(--button-border-radius, 2px)*2);border-width:1px}.van-button--hairline.van-button--round:after{border-radius:var(--button-round-border-radius,999px)}.van-button--hairline.van-button--square:after{border-radius:0} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/calendar/calendar.wxml b/src/miniprogram_npm/@vant/weapp/calendar/calendar.wxml new file mode 100644 index 0000000..2ddb048 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/calendar.wxml @@ -0,0 +1,70 @@ +<wxs src="./index.wxs" module="computed" /> +<wxs src="../wxs/utils.wxs" module="utils" /> +<view class="van-calendar"> + <header + title="{{ title }}" + showTitle="{{ showTitle }}" + subtitle="{{ subtitle }}" + showSubtitle="{{ showSubtitle }}" + firstDayOfWeek="{{ firstDayOfWeek }}" + bind:click-subtitle="onClickSubtitle" + > + <slot name="title" slot="title"></slot> + </header> + + <scroll-view + class="van-calendar__body" + scroll-y + scroll-into-view="{{ scrollIntoView }}" + > + <month + wx:for="{{ computed.getMonths(minDate, maxDate) }}" + wx:key="index" + id="month{{ index }}" + class="month" + data-date="{{ item }}" + date="{{ item }}" + type="{{ type }}" + color="{{ color }}" + minDate="{{ minDate }}" + maxDate="{{ maxDate }}" + showMark="{{ showMark }}" + formatter="{{ formatter }}" + rowHeight="{{ rowHeight }}" + currentDate="{{ currentDate }}" + showSubtitle="{{ showSubtitle }}" + allowSameDay="{{ allowSameDay }}" + showMonthTitle="{{ index !== 0 || !showSubtitle }}" + firstDayOfWeek="{{ firstDayOfWeek }}" + bind:click="onClickDay" + /> + </scroll-view> + + <view + class="{{ utils.bem('calendar__footer', { safeAreaInsetBottom }) }}" + > + <slot name="footer"></slot> + </view> + + <view + class="{{ utils.bem('calendar__footer', { safeAreaInsetBottom }) }}" + > + <van-button + wx:if="{{ showConfirm }}" + round + block + type="danger" + color="{{ color }}" + custom-class="van-calendar__confirm" + disabled="{{ computed.getButtonDisabled(type, currentDate, minRange) }}" + nativeType="text" + bind:click="onConfirm" + > + {{ + computed.getButtonDisabled(type, currentDate, minRange) + ? confirmDisabledText + : confirmText + }} + </van-button> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.js b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.js new file mode 100644 index 0000000..544b3a4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.js @@ -0,0 +1,45 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../../../common/component"); +(0, component_1.VantComponent)({ + props: { + title: { + type: String, + value: '日期选择', + }, + subtitle: String, + showTitle: Boolean, + showSubtitle: Boolean, + firstDayOfWeek: { + type: Number, + observer: 'initWeekDay', + }, + }, + data: { + weekdays: [], + }, + created: function () { + this.initWeekDay(); + }, + methods: { + initWeekDay: function () { + var defaultWeeks = ['日', '一', '二', '三', '四', '五', '六']; + var firstDayOfWeek = this.data.firstDayOfWeek || 0; + this.setData({ + weekdays: __spreadArray(__spreadArray([], defaultWeeks.slice(firstDayOfWeek, 7), true), defaultWeeks.slice(0, firstDayOfWeek), true), + }); + }, + onClickSubtitle: function (event) { + this.$emit('click-subtitle', event); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.json b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml new file mode 100644 index 0000000..7e56c83 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml @@ -0,0 +1,16 @@ +<view class="van-calendar__header"> + <block wx:if="{{ showTitle }}"> + <view class="van-calendar__header-title"><slot name="title"></slot></view> + <view class="van-calendar__header-title">{{ title }}</view> + </block> + + <view wx:if="{{ showSubtitle }}" class="van-calendar__header-subtitle" bind:tap="onClickSubtitle"> + {{ subtitle }} + </view> + + <view class="van-calendar__weekdays"> + <view wx:for="{{ weekdays }}" wx:key="index" class="van-calendar__weekday"> + {{ item }} + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss new file mode 100644 index 0000000..272537e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss @@ -0,0 +1 @@ +@import '../../../common/index.wxss';.van-calendar__header{box-shadow:var(--calendar-header-box-shadow,0 2px 10px hsla(220,1%,50%,.16));flex-shrink:0}.van-calendar__header-subtitle,.van-calendar__header-title{font-weight:var(--font-weight-bold,500);height:var(--calendar-header-title-height,44px);line-height:var(--calendar-header-title-height,44px);text-align:center}.van-calendar__header-title+.van-calendar__header-title,.van-calendar__header-title:empty{display:none}.van-calendar__header-title:empty+.van-calendar__header-title{display:block!important}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--calendar-weekdays-font-size,12px);line-height:var(--calendar-weekdays-height,30px);text-align:center} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts new file mode 100644 index 0000000..3ccf85a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts @@ -0,0 +1,6 @@ +export interface Day { + date: Date; + type: string; + text: number; + bottomInfo?: string; +} diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.js b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.js new file mode 100644 index 0000000..4d137f5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../../../common/component"); +var utils_1 = require("../../utils"); +(0, component_1.VantComponent)({ + props: { + date: { + type: null, + observer: 'setDays', + }, + type: { + type: String, + observer: 'setDays', + }, + color: String, + minDate: { + type: null, + observer: 'setDays', + }, + maxDate: { + type: null, + observer: 'setDays', + }, + showMark: Boolean, + rowHeight: null, + formatter: { + type: null, + observer: 'setDays', + }, + currentDate: { + type: null, + observer: 'setDays', + }, + firstDayOfWeek: { + type: Number, + observer: 'setDays', + }, + allowSameDay: Boolean, + showSubtitle: Boolean, + showMonthTitle: Boolean, + }, + data: { + visible: true, + days: [], + }, + methods: { + onClick: function (event) { + var index = event.currentTarget.dataset.index; + var item = this.data.days[index]; + if (item.type !== 'disabled') { + this.$emit('click', item); + } + }, + setDays: function () { + var days = []; + var startDate = new Date(this.data.date); + var year = startDate.getFullYear(); + var month = startDate.getMonth(); + var totalDay = (0, utils_1.getMonthEndDay)(startDate.getFullYear(), startDate.getMonth() + 1); + for (var day = 1; day <= totalDay; day++) { + var date = new Date(year, month, day); + var type = this.getDayType(date); + var config = { + date: date, + type: type, + text: day, + bottomInfo: this.getBottomInfo(type), + }; + if (this.data.formatter) { + config = this.data.formatter(config); + } + days.push(config); + } + this.setData({ days: days }); + }, + getMultipleDayType: function (day) { + var currentDate = this.data.currentDate; + if (!Array.isArray(currentDate)) { + return ''; + } + var isSelected = function (date) { + return currentDate.some(function (item) { return (0, utils_1.compareDay)(item, date) === 0; }); + }; + if (isSelected(day)) { + var prevDay = (0, utils_1.getPrevDay)(day); + var nextDay = (0, utils_1.getNextDay)(day); + var prevSelected = isSelected(prevDay); + var nextSelected = isSelected(nextDay); + if (prevSelected && nextSelected) { + return 'multiple-middle'; + } + if (prevSelected) { + return 'end'; + } + return nextSelected ? 'start' : 'multiple-selected'; + } + return ''; + }, + getRangeDayType: function (day) { + var _a = this.data, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay; + if (!Array.isArray(currentDate)) { + return ''; + } + var startDay = currentDate[0], endDay = currentDate[1]; + if (!startDay) { + return ''; + } + var compareToStart = (0, utils_1.compareDay)(day, startDay); + if (!endDay) { + return compareToStart === 0 ? 'start' : ''; + } + var compareToEnd = (0, utils_1.compareDay)(day, endDay); + if (compareToStart === 0 && compareToEnd === 0 && allowSameDay) { + return 'start-end'; + } + if (compareToStart === 0) { + return 'start'; + } + if (compareToEnd === 0) { + return 'end'; + } + if (compareToStart > 0 && compareToEnd < 0) { + return 'middle'; + } + return ''; + }, + getDayType: function (day) { + var _a = this.data, type = _a.type, minDate = _a.minDate, maxDate = _a.maxDate, currentDate = _a.currentDate; + if ((0, utils_1.compareDay)(day, minDate) < 0 || (0, utils_1.compareDay)(day, maxDate) > 0) { + return 'disabled'; + } + if (type === 'single') { + return (0, utils_1.compareDay)(day, currentDate) === 0 ? 'selected' : ''; + } + if (type === 'multiple') { + return this.getMultipleDayType(day); + } + /* istanbul ignore else */ + if (type === 'range') { + return this.getRangeDayType(day); + } + return ''; + }, + getBottomInfo: function (type) { + if (this.data.type === 'range') { + if (type === 'start') { + return '开始'; + } + if (type === 'end') { + return '结束'; + } + if (type === 'start-end') { + return '开始/结束'; + } + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.json b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml new file mode 100644 index 0000000..0c73b2f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml @@ -0,0 +1,39 @@ +<wxs src="./index.wxs" module="computed"></wxs> +<wxs src="../../../wxs/utils.wxs" module="utils" /> + +<view class="van-calendar__month" style="{{ computed.getMonthStyle(visible, date, rowHeight) }}"> + <view wx:if="{{ showMonthTitle }}" class="van-calendar__month-title"> + {{ computed.formatMonthTitle(date) }} + </view> + + <view wx:if="{{ visible }}" class="van-calendar__days"> + <view wx:if="{{ showMark }}" class="van-calendar__month-mark"> + {{ computed.getMark(date) }} + </view> + + <view + wx:for="{{ days }}" + wx:key="index" + style="{{ computed.getDayStyle(item.type, index, date, rowHeight, color, firstDayOfWeek) }}" + class="{{ utils.bem('calendar__day', [item.type]) }} {{ item.className }}" + data-index="{{ index }}" + bindtap="onClick" + > + <view wx:if="{{ item.type === 'selected' }}" class="van-calendar__selected-day" style="width: {{ rowHeight }}px; height: {{ rowHeight }}px; background: {{ color }}"> + <view wx:if="{{ item.topInfo }}" class="van-calendar__top-info">{{ item.topInfo }}</view> + {{ item.text }} + <view wx:if="{{ item.bottomInfo }}" class="van-calendar__bottom-info"> + {{ item.bottomInfo }} + </view> + </view> + + <view wx:else> + <view wx:if="{{ item.topInfo }}" class="van-calendar__top-info">{{ item.topInfo }}</view> + {{ item.text }} + <view wx:if="{{ item.bottomInfo }}" class="van-calendar__bottom-info"> + {{ item.bottomInfo }} + </view> + </view> + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs new file mode 100644 index 0000000..55e45a5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs @@ -0,0 +1,71 @@ +/* eslint-disable */ +var utils = require('../../utils.wxs'); + +function getMark(date) { + return getDate(date).getMonth() + 1; +} + +var ROW_HEIGHT = 64; + +function getDayStyle(type, index, date, rowHeight, color, firstDayOfWeek) { + var style = []; + var current = getDate(date).getDay() || 7; + var offset = current < firstDayOfWeek ? (7 - firstDayOfWeek + current) : + current === 7 && firstDayOfWeek === 0 ? 0 : + (current - firstDayOfWeek); + + if (index === 0) { + style.push(['margin-left', (100 * offset) / 7 + '%']); + } + + if (rowHeight !== ROW_HEIGHT) { + style.push(['height', rowHeight + 'px']); + } + + if (color) { + if ( + type === 'start' || + type === 'end' || + type === 'start-end' || + type === 'multiple-selected' || + type === 'multiple-middle' + ) { + style.push(['background', color]); + } else if (type === 'middle') { + style.push(['color', color]); + } + } + + return style + .map(function(item) { + return item.join(':'); + }) + .join(';'); +} + +function formatMonthTitle(date) { + date = getDate(date); + return date.getFullYear() + '年' + (date.getMonth() + 1) + '月'; +} + +function getMonthStyle(visible, date, rowHeight) { + if (!visible) { + date = getDate(date); + + var totalDay = utils.getMonthEndDay( + date.getFullYear(), + date.getMonth() + 1 + ); + var offset = getDate(date).getDay(); + var padding = Math.ceil((totalDay + offset) / 7) * rowHeight; + + return 'padding-bottom:' + padding + 'px'; + } +} + +module.exports = { + getMark: getMark, + getDayStyle: getDayStyle, + formatMonthTitle: formatMonthTitle, + getMonthStyle: getMonthStyle +}; diff --git a/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss new file mode 100644 index 0000000..9aee73d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss @@ -0,0 +1 @@ +@import '../../../common/index.wxss';.van-calendar{background-color:var(--calendar-background-color,#fff);display:flex;flex-direction:column;height:100%}.van-calendar__month-title{font-size:var(--calendar-month-title-font-size,14px);font-weight:var(--font-weight-bold,500);height:var(--calendar-header-title-height,44px);line-height:var(--calendar-header-title-height,44px);text-align:center}.van-calendar__days{display:flex;flex-wrap:wrap;position:relative;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{color:var(--calendar-month-mark-color,rgba(242,243,245,.8));font-size:var(--calendar-month-mark-font-size,160px);left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:0}.van-calendar__day,.van-calendar__selected-day{align-items:center;display:flex;justify-content:center;text-align:center}.van-calendar__day{font-size:var(--calendar-day-font-size,16px);height:var(--calendar-day-height,64px);position:relative;width:14.285%}.van-calendar__day--end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected,.van-calendar__day--start,.van-calendar__day--start-end{background-color:var(--calendar-range-edge-background-color,#ee0a24);color:var(--calendar-range-edge-color,#fff)}.van-calendar__day--start{border-radius:4px 0 0 4px}.van-calendar__day--end{border-radius:0 4px 4px 0}.van-calendar__day--multiple-selected,.van-calendar__day--start-end{border-radius:4px}.van-calendar__day--middle{color:var(--calendar-range-middle-color,#ee0a24)}.van-calendar__day--middle:after{background-color:currentColor;bottom:0;content:"";left:0;opacity:var(--calendar-range-middle-background-opacity,.1);position:absolute;right:0;top:0}.van-calendar__day--disabled{color:var(--calendar-day-disabled-color,#c8c9cc);cursor:default}.van-calendar__bottom-info,.van-calendar__top-info{font-size:var(--calendar-info-font-size,10px);left:0;line-height:var(--calendar-info-line-height,14px);position:absolute;right:0}@media (max-width:350px){.van-calendar__bottom-info,.van-calendar__top-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{background-color:var(--calendar-selected-day-background-color,#ee0a24);border-radius:4px;color:var(--calendar-selected-day-color,#fff);height:var(--calendar-selected-day-size,54px);width:var(--calendar-selected-day-size,54px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/calendar/index.d.ts b/src/miniprogram_npm/@vant/weapp/calendar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/calendar/index.js b/src/miniprogram_npm/@vant/weapp/calendar/index.js new file mode 100644 index 0000000..7a7324d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/index.js @@ -0,0 +1,383 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("./utils"); +var toast_1 = __importDefault(require("../toast/toast")); +var utils_2 = require("../common/utils"); +var initialMinDate = (0, utils_1.getToday)().getTime(); +var initialMaxDate = (function () { + var now = (0, utils_1.getToday)(); + return new Date(now.getFullYear(), now.getMonth() + 6, now.getDate()).getTime(); +})(); +var getTime = function (date) { + return date instanceof Date ? date.getTime() : date; +}; +(0, component_1.VantComponent)({ + props: { + title: { + type: String, + value: '日期选择', + }, + color: String, + show: { + type: Boolean, + observer: function (val) { + if (val) { + this.initRect(); + this.scrollIntoView(); + } + }, + }, + formatter: null, + confirmText: { + type: String, + value: '确定', + }, + confirmDisabledText: { + type: String, + value: '确定', + }, + rangePrompt: String, + showRangePrompt: { + type: Boolean, + value: true, + }, + defaultDate: { + type: null, + value: (0, utils_1.getToday)().getTime(), + observer: function (val) { + this.setData({ currentDate: val }); + this.scrollIntoView(); + }, + }, + allowSameDay: Boolean, + type: { + type: String, + value: 'single', + observer: 'reset', + }, + minDate: { + type: Number, + value: initialMinDate, + }, + maxDate: { + type: Number, + value: initialMaxDate, + }, + position: { + type: String, + value: 'bottom', + }, + rowHeight: { + type: null, + value: utils_1.ROW_HEIGHT, + }, + round: { + type: Boolean, + value: true, + }, + poppable: { + type: Boolean, + value: true, + }, + showMark: { + type: Boolean, + value: true, + }, + showTitle: { + type: Boolean, + value: true, + }, + showConfirm: { + type: Boolean, + value: true, + }, + showSubtitle: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + maxRange: { + type: null, + value: null, + }, + minRange: { + type: Number, + value: 1, + }, + firstDayOfWeek: { + type: Number, + value: 0, + }, + readonly: Boolean, + rootPortal: { + type: Boolean, + value: false, + }, + }, + data: { + subtitle: '', + currentDate: null, + scrollIntoView: '', + }, + watch: { + minDate: function () { + this.initRect(); + }, + maxDate: function () { + this.initRect(); + }, + }, + created: function () { + this.setData({ + currentDate: this.getInitialDate(this.data.defaultDate), + }); + }, + mounted: function () { + if (this.data.show || !this.data.poppable) { + this.initRect(); + this.scrollIntoView(); + } + }, + methods: { + reset: function () { + this.setData({ currentDate: this.getInitialDate(this.data.defaultDate) }); + this.scrollIntoView(); + }, + initRect: function () { + var _this = this; + if (this.contentObserver != null) { + this.contentObserver.disconnect(); + } + var contentObserver = this.createIntersectionObserver({ + thresholds: [0, 0.1, 0.9, 1], + observeAll: true, + }); + this.contentObserver = contentObserver; + contentObserver.relativeTo('.van-calendar__body'); + contentObserver.observe('.month', function (res) { + if (res.boundingClientRect.top <= res.relativeRect.top) { + // @ts-ignore + _this.setData({ subtitle: (0, utils_1.formatMonthTitle)(res.dataset.date) }); + } + }); + }, + limitDateRange: function (date, minDate, maxDate) { + if (minDate === void 0) { minDate = null; } + if (maxDate === void 0) { maxDate = null; } + minDate = minDate || this.data.minDate; + maxDate = maxDate || this.data.maxDate; + if ((0, utils_1.compareDay)(date, minDate) === -1) { + return minDate; + } + if ((0, utils_1.compareDay)(date, maxDate) === 1) { + return maxDate; + } + return date; + }, + getInitialDate: function (defaultDate) { + var _this = this; + if (defaultDate === void 0) { defaultDate = null; } + var _a = this.data, type = _a.type, minDate = _a.minDate, maxDate = _a.maxDate, allowSameDay = _a.allowSameDay; + if (!defaultDate) + return []; + var now = (0, utils_1.getToday)().getTime(); + if (type === 'range') { + if (!Array.isArray(defaultDate)) { + defaultDate = []; + } + var _b = defaultDate || [], startDay = _b[0], endDay = _b[1]; + var startDate = getTime(startDay || now); + var start = this.limitDateRange(startDate, minDate, allowSameDay ? startDate : (0, utils_1.getPrevDay)(new Date(maxDate)).getTime()); + var date = getTime(endDay || now); + var end = this.limitDateRange(date, allowSameDay ? date : (0, utils_1.getNextDay)(new Date(minDate)).getTime()); + return [start, end]; + } + if (type === 'multiple') { + if (Array.isArray(defaultDate)) { + return defaultDate.map(function (date) { return _this.limitDateRange(date); }); + } + return [this.limitDateRange(now)]; + } + if (!defaultDate || Array.isArray(defaultDate)) { + defaultDate = now; + } + return this.limitDateRange(defaultDate); + }, + scrollIntoView: function () { + var _this = this; + (0, utils_2.requestAnimationFrame)(function () { + var _a = _this.data, currentDate = _a.currentDate, type = _a.type, show = _a.show, poppable = _a.poppable, minDate = _a.minDate, maxDate = _a.maxDate; + if (!currentDate) + return; + // @ts-ignore + var targetDate = type === 'single' ? currentDate : currentDate[0]; + var displayed = show || !poppable; + if (!targetDate || !displayed) { + return; + } + var months = (0, utils_1.getMonths)(minDate, maxDate); + months.some(function (month, index) { + if ((0, utils_1.compareMonth)(month, targetDate) === 0) { + _this.setData({ scrollIntoView: "month".concat(index) }); + return true; + } + return false; + }); + }); + }, + onOpen: function () { + this.$emit('open'); + }, + onOpened: function () { + this.$emit('opened'); + }, + onClose: function () { + this.$emit('close'); + }, + onClosed: function () { + this.$emit('closed'); + }, + onClickDay: function (event) { + if (this.data.readonly) { + return; + } + var date = event.detail.date; + var _a = this.data, type = _a.type, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay; + if (type === 'range') { + // @ts-ignore + var startDay_1 = currentDate[0], endDay = currentDate[1]; + if (startDay_1 && !endDay) { + var compareToStart = (0, utils_1.compareDay)(date, startDay_1); + if (compareToStart === 1) { + var days_1 = this.selectComponent('.month').data.days; + days_1.some(function (day, index) { + var isDisabled = day.type === 'disabled' && + getTime(startDay_1) < getTime(day.date) && + getTime(day.date) < getTime(date); + if (isDisabled) { + (date = days_1[index - 1].date); + } + return isDisabled; + }); + this.select([startDay_1, date], true); + } + else if (compareToStart === -1) { + this.select([date, null]); + } + else if (allowSameDay) { + this.select([date, date], true); + } + } + else { + this.select([date, null]); + } + } + else if (type === 'multiple') { + var selectedIndex_1; + // @ts-ignore + var selected = currentDate.some(function (dateItem, index) { + var equal = (0, utils_1.compareDay)(dateItem, date) === 0; + if (equal) { + selectedIndex_1 = index; + } + return equal; + }); + if (selected) { + // @ts-ignore + var cancelDate = currentDate.splice(selectedIndex_1, 1); + this.setData({ currentDate: currentDate }); + this.unselect(cancelDate); + } + else { + // @ts-ignore + this.select(__spreadArray(__spreadArray([], currentDate, true), [date], false)); + } + } + else { + this.select(date, true); + } + }, + unselect: function (dateArray) { + var date = dateArray[0]; + if (date) { + this.$emit('unselect', (0, utils_1.copyDates)(date)); + } + }, + select: function (date, complete) { + if (complete && this.data.type === 'range') { + var valid = this.checkRange(date); + if (!valid) { + // auto selected to max range if showConfirm + if (this.data.showConfirm) { + this.emit([ + date[0], + (0, utils_1.getDayByOffset)(date[0], this.data.maxRange - 1), + ]); + } + else { + this.emit(date); + } + return; + } + } + this.emit(date); + if (complete && !this.data.showConfirm) { + this.onConfirm(); + } + }, + emit: function (date) { + this.setData({ + currentDate: Array.isArray(date) ? date.map(getTime) : getTime(date), + }); + this.$emit('select', (0, utils_1.copyDates)(date)); + }, + checkRange: function (date) { + var _a = this.data, maxRange = _a.maxRange, rangePrompt = _a.rangePrompt, showRangePrompt = _a.showRangePrompt; + if (maxRange && (0, utils_1.calcDateNum)(date) > maxRange) { + if (showRangePrompt) { + (0, toast_1.default)({ + context: this, + message: rangePrompt || "\u9009\u62E9\u5929\u6570\u4E0D\u80FD\u8D85\u8FC7 ".concat(maxRange, " \u5929"), + }); + } + this.$emit('over-range'); + return false; + } + return true; + }, + onConfirm: function () { + var _this = this; + if (this.data.type === 'range' && + !this.checkRange(this.data.currentDate)) { + return; + } + wx.nextTick(function () { + // @ts-ignore + _this.$emit('confirm', (0, utils_1.copyDates)(_this.data.currentDate)); + }); + }, + onClickSubtitle: function (event) { + this.$emit('click-subtitle', event); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/calendar/index.json b/src/miniprogram_npm/@vant/weapp/calendar/index.json new file mode 100644 index 0000000..397d5ae --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/index.json @@ -0,0 +1,10 @@ +{ + "component": true, + "usingComponents": { + "header": "./components/header/index", + "month": "./components/month/index", + "van-button": "../button/index", + "van-popup": "../popup/index", + "van-toast": "../toast/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/calendar/index.wxml b/src/miniprogram_npm/@vant/weapp/calendar/index.wxml new file mode 100644 index 0000000..9d0fc6b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/index.wxml @@ -0,0 +1,27 @@ +<wxs src="./index.wxs" module="computed" /> +<wxs src="../wxs/utils.wxs" module="utils" /> + +<import src="./calendar.wxml" /> + +<van-popup + wx:if="{{ poppable }}" + custom-class="van-calendar__popup--{{ position }}" + close-icon-class="van-calendar__close-icon" + show="{{ show }}" + round="{{ round }}" + position="{{ position }}" + closeable="{{ showTitle || showSubtitle }}" + close-on-click-overlay="{{ closeOnClickOverlay }}" + safe-area-inset-bottom="{{ safeAreaInsetBottom }}" + root-portal="{{ rootPortal }}" + bind:enter="onOpen" + bind:close="onClose" + bind:after-enter="onOpened" + bind:after-leave="onClosed" +> + <include src="./calendar.wxml" /> +</van-popup> + +<include wx:else src="./calendar.wxml" /> + +<van-toast id="van-toast" /> diff --git a/src/miniprogram_npm/@vant/weapp/calendar/index.wxs b/src/miniprogram_npm/@vant/weapp/calendar/index.wxs new file mode 100644 index 0000000..0a56646 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/index.wxs @@ -0,0 +1,37 @@ +/* eslint-disable */ +var utils = require('./utils.wxs'); + +function getMonths(minDate, maxDate) { + var months = []; + var cursor = getDate(minDate); + + cursor.setDate(1); + + do { + months.push(cursor.getTime()); + cursor.setMonth(cursor.getMonth() + 1); + } while (utils.compareMonth(cursor, getDate(maxDate)) !== 1); + + return months; +} + +function getButtonDisabled(type, currentDate, minRange) { + if (currentDate == null) { + return true; + } + + if (type === 'range') { + return !currentDate[0] || !currentDate[1]; + } + + if (type === 'multiple') { + return currentDate.length < minRange; + } + + return !currentDate; +} + +module.exports = { + getMonths: getMonths, + getButtonDisabled: getButtonDisabled +}; diff --git a/src/miniprogram_npm/@vant/weapp/calendar/index.wxss b/src/miniprogram_npm/@vant/weapp/calendar/index.wxss new file mode 100644 index 0000000..a1f1cf0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-calendar{background-color:var(--calendar-background-color,#fff);display:flex;flex-direction:column;height:var(--calendar-height,100%)}.van-calendar__close-icon{top:11px}.van-calendar__popup--bottom,.van-calendar__popup--top{height:var(--calendar-popup-height,90%)}.van-calendar__popup--left,.van-calendar__popup--right{height:100%}.van-calendar__body{-webkit-overflow-scrolling:touch;flex:1;overflow:auto}.van-calendar__footer{flex-shrink:0;padding:0 var(--padding-md,16px)}.van-calendar__footer--safe-area-inset-bottom{padding-bottom:env(safe-area-inset-bottom)}.van-calendar__footer+.van-calendar__footer,.van-calendar__footer:empty{display:none}.van-calendar__footer:empty+.van-calendar__footer{display:block!important}.van-calendar__confirm{height:var(--calendar-confirm-button-height,36px)!important;line-height:var(--calendar-confirm-button-line-height,34px)!important;margin:var(--calendar-confirm-button-margin,7px 0)!important} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/calendar/utils.d.ts b/src/miniprogram_npm/@vant/weapp/calendar/utils.d.ts new file mode 100644 index 0000000..889e6e7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/utils.d.ts @@ -0,0 +1,12 @@ +export declare const ROW_HEIGHT = 64; +export declare function formatMonthTitle(date: Date): string; +export declare function compareMonth(date1: Date | number, date2: Date | number): 0 | 1 | -1; +export declare function compareDay(day1: Date | number, day2: Date | number): 0 | 1 | -1; +export declare function getDayByOffset(date: Date, offset: number): Date; +export declare function getPrevDay(date: Date): Date; +export declare function getNextDay(date: Date): Date; +export declare function getToday(): Date; +export declare function calcDateNum(date: [Date, Date]): number; +export declare function copyDates(dates: Date | Date[]): Date | Date[]; +export declare function getMonthEndDay(year: number, month: number): number; +export declare function getMonths(minDate: number, maxDate: number): number[]; diff --git a/src/miniprogram_npm/@vant/weapp/calendar/utils.js b/src/miniprogram_npm/@vant/weapp/calendar/utils.js new file mode 100644 index 0000000..c9e5df7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/utils.js @@ -0,0 +1,97 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.getMonths = exports.getMonthEndDay = exports.copyDates = exports.calcDateNum = exports.getToday = exports.getNextDay = exports.getPrevDay = exports.getDayByOffset = exports.compareDay = exports.compareMonth = exports.formatMonthTitle = exports.ROW_HEIGHT = void 0; +exports.ROW_HEIGHT = 64; +function formatMonthTitle(date) { + if (!(date instanceof Date)) { + date = new Date(date); + } + return "".concat(date.getFullYear(), "\u5E74").concat(date.getMonth() + 1, "\u6708"); +} +exports.formatMonthTitle = formatMonthTitle; +function compareMonth(date1, date2) { + if (!(date1 instanceof Date)) { + date1 = new Date(date1); + } + if (!(date2 instanceof Date)) { + date2 = new Date(date2); + } + var year1 = date1.getFullYear(); + var year2 = date2.getFullYear(); + var month1 = date1.getMonth(); + var month2 = date2.getMonth(); + if (year1 === year2) { + return month1 === month2 ? 0 : month1 > month2 ? 1 : -1; + } + return year1 > year2 ? 1 : -1; +} +exports.compareMonth = compareMonth; +function compareDay(day1, day2) { + if (!(day1 instanceof Date)) { + day1 = new Date(day1); + } + if (!(day2 instanceof Date)) { + day2 = new Date(day2); + } + var compareMonthResult = compareMonth(day1, day2); + if (compareMonthResult === 0) { + var date1 = day1.getDate(); + var date2 = day2.getDate(); + return date1 === date2 ? 0 : date1 > date2 ? 1 : -1; + } + return compareMonthResult; +} +exports.compareDay = compareDay; +function getDayByOffset(date, offset) { + date = new Date(date); + date.setDate(date.getDate() + offset); + return date; +} +exports.getDayByOffset = getDayByOffset; +function getPrevDay(date) { + return getDayByOffset(date, -1); +} +exports.getPrevDay = getPrevDay; +function getNextDay(date) { + return getDayByOffset(date, 1); +} +exports.getNextDay = getNextDay; +function getToday() { + var today = new Date(); + today.setHours(0, 0, 0, 0); + return today; +} +exports.getToday = getToday; +function calcDateNum(date) { + var day1 = new Date(date[0]).getTime(); + var day2 = new Date(date[1]).getTime(); + return (day2 - day1) / (1000 * 60 * 60 * 24) + 1; +} +exports.calcDateNum = calcDateNum; +function copyDates(dates) { + if (Array.isArray(dates)) { + return dates.map(function (date) { + if (date === null) { + return date; + } + return new Date(date); + }); + } + return new Date(dates); +} +exports.copyDates = copyDates; +function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +} +exports.getMonthEndDay = getMonthEndDay; +function getMonths(minDate, maxDate) { + var months = []; + var cursor = new Date(minDate); + cursor.setDate(1); + do { + months.push(cursor.getTime()); + cursor.setMonth(cursor.getMonth() + 1); + } while (compareMonth(cursor, maxDate) !== 1); + return months; +} +exports.getMonths = getMonths; diff --git a/src/miniprogram_npm/@vant/weapp/calendar/utils.wxs b/src/miniprogram_npm/@vant/weapp/calendar/utils.wxs new file mode 100644 index 0000000..e57f6b3 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/calendar/utils.wxs @@ -0,0 +1,25 @@ +/* eslint-disable */ +function getMonthEndDay(year, month) { + return 32 - getDate(year, month - 1, 32).getDate(); +} + +function compareMonth(date1, date2) { + date1 = getDate(date1); + date2 = getDate(date2); + + var year1 = date1.getFullYear(); + var year2 = date2.getFullYear(); + var month1 = date1.getMonth(); + var month2 = date2.getMonth(); + + if (year1 === year2) { + return month1 === month2 ? 0 : month1 > month2 ? 1 : -1; + } + + return year1 > year2 ? 1 : -1; +} + +module.exports = { + getMonthEndDay: getMonthEndDay, + compareMonth: compareMonth +}; diff --git a/src/miniprogram_npm/@vant/weapp/card/index.d.ts b/src/miniprogram_npm/@vant/weapp/card/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/card/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/card/index.js b/src/miniprogram_npm/@vant/weapp/card/index.js new file mode 100644 index 0000000..2815655 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/card/index.js @@ -0,0 +1,51 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var link_1 = require("../mixins/link"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'num-class', + 'desc-class', + 'thumb-class', + 'title-class', + 'price-class', + 'origin-price-class', + ], + mixins: [link_1.link], + props: { + tag: String, + num: String, + desc: String, + thumb: String, + title: String, + price: { + type: String, + observer: 'updatePrice', + }, + centered: Boolean, + lazyLoad: Boolean, + thumbLink: String, + originPrice: String, + thumbMode: { + type: String, + value: 'aspectFit', + }, + currency: { + type: String, + value: '¥', + }, + }, + methods: { + updatePrice: function () { + var price = this.data.price; + var priceArr = price.toString().split('.'); + this.setData({ + integerStr: priceArr[0], + decimalStr: priceArr[1] ? ".".concat(priceArr[1]) : '', + }); + }, + onClickThumb: function () { + this.jumpLink('thumbLink'); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/card/index.json b/src/miniprogram_npm/@vant/weapp/card/index.json new file mode 100644 index 0000000..e917407 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/card/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-tag": "../tag/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/card/index.wxml b/src/miniprogram_npm/@vant/weapp/card/index.wxml new file mode 100644 index 0000000..62173e4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/card/index.wxml @@ -0,0 +1,56 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="custom-class van-card"> + <view class="{{ utils.bem('card__header', { center: centered }) }}"> + <view class="van-card__thumb" bind:tap="onClickThumb"> + <image + wx:if="{{ thumb }}" + src="{{ thumb }}" + mode="{{ thumbMode }}" + lazy-load="{{ lazyLoad }}" + class="van-card__img thumb-class" + /> + <slot wx:else name="thumb" /> + <van-tag + wx:if="{{ tag }}" + mark + type="danger" + custom-class="van-card__tag" + > + {{ tag }} + </van-tag> + <slot wx:else name="tag" /> + </view> + + <view class="van-card__content {{ utils.bem('card__content', { center: centered }) }}"> + <view> + <view wx:if="{{ title }}" class="van-card__title title-class">{{ title }}</view> + <slot wx:else name="title" /> + + <view wx:if="{{ desc }}" class="van-card__desc desc-class">{{ desc }}</view> + <slot wx:else name="desc" /> + + <slot name="tags" /> + </view> + + <view class="van-card__bottom"> + <slot name="price-top" /> + <view wx:if="{{ price || price === 0 }}" class="van-card__price price-class"> + <text>{{ currency }}</text> + <text class="van-card__price-integer">{{ integerStr }}</text> + <text class="van-card__price-decimal">{{ decimalStr }}</text> + </view> + <slot wx:else name="price" /> + <view wx:if="{{ originPrice || originPrice === 0 }}" class="van-card__origin-price origin-price-class">{{ currency }} {{ originPrice }}</view> + <slot wx:else name="origin-price" /> + <view wx:if="{{ num }}" class="van-card__num num-class">x {{ num }}</view> + <slot wx:else name="num" /> + <slot name="bottom" /> + </view> + </view> + </view> + + <view class="van-card__footer"> + <slot name="footer" /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/card/index.wxss b/src/miniprogram_npm/@vant/weapp/card/index.wxss new file mode 100644 index 0000000..0f4d7c5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/card/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-card{background-color:var(--card-background-color,#fafafa);box-sizing:border-box;color:var(--card-text-color,#323233);font-size:var(--card-font-size,12px);padding:var(--card-padding,8px 16px);position:relative}.van-card__header{display:flex}.van-card__header--center{align-items:center;justify-content:center}.van-card__thumb{flex:none;height:var(--card-thumb-size,88px);margin-right:var(--padding-xs,8px);position:relative;width:var(--card-thumb-size,88px)}.van-card__thumb:empty{display:none}.van-card__img{border-radius:8px;height:100%;width:100%}.van-card__content{display:flex;flex:1;flex-direction:column;justify-content:space-between;min-height:var(--card-thumb-size,88px);min-width:0;position:relative}.van-card__content--center{justify-content:center}.van-card__desc,.van-card__title{word-wrap:break-word}.van-card__title{font-weight:700;line-height:var(--card-title-line-height,16px)}.van-card__desc{color:var(--card-desc-color,#646566);line-height:var(--card-desc-line-height,20px)}.van-card__bottom{line-height:20px}.van-card__price{color:var(--card-price-color,#ee0a24);display:inline-block;font-size:var(--card-price-font-size,12px);font-weight:700}.van-card__price-integer{font-size:var(--card-price-integer-font-size,16px)}.van-card__price-decimal,.van-card__price-integer{font-family:var(--card-price-font-family,Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif)}.van-card__origin-price{color:var(--card-origin-price-color,#646566);display:inline-block;font-size:var(--card-origin-price-font-size,10px);margin-left:5px;text-decoration:line-through}.van-card__num{float:right}.van-card__tag{left:0;position:absolute!important;top:2px}.van-card__footer{flex:none;text-align:right;width:100%} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/cascader/index.d.ts b/src/miniprogram_npm/@vant/weapp/cascader/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cascader/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/cascader/index.js b/src/miniprogram_npm/@vant/weapp/cascader/index.js new file mode 100644 index 0000000..f7c239c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cascader/index.js @@ -0,0 +1,224 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var FieldName; +(function (FieldName) { + FieldName["TEXT"] = "text"; + FieldName["VALUE"] = "value"; + FieldName["CHILDREN"] = "children"; +})(FieldName || (FieldName = {})); +var defaultFieldNames = { + text: FieldName.TEXT, + value: FieldName.VALUE, + children: FieldName.CHILDREN, +}; +(0, component_1.VantComponent)({ + props: { + title: String, + value: { + type: String, + }, + placeholder: { + type: String, + value: '请选择', + }, + activeColor: { + type: String, + value: '#1989fa', + }, + options: { + type: Array, + value: [], + }, + swipeable: { + type: Boolean, + value: false, + }, + closeable: { + type: Boolean, + value: true, + }, + showHeader: { + type: Boolean, + value: true, + }, + closeIcon: { + type: String, + value: 'cross', + }, + fieldNames: { + type: Object, + value: defaultFieldNames, + observer: 'updateFieldNames', + }, + useTitleSlot: Boolean, + }, + data: { + tabs: [], + activeTab: 0, + textKey: FieldName.TEXT, + valueKey: FieldName.VALUE, + childrenKey: FieldName.CHILDREN, + innerValue: '', + }, + watch: { + options: function () { + this.updateTabs(); + }, + value: function (newVal) { + this.updateValue(newVal); + }, + }, + created: function () { + this.updateTabs(); + }, + methods: { + updateValue: function (val) { + var _this = this; + if (val !== undefined) { + var values = this.data.tabs.map(function (tab) { return tab.selected && tab.selected[_this.data.valueKey]; }); + if (values.indexOf(val) > -1) { + return; + } + } + this.innerValue = val; + this.updateTabs(); + }, + updateFieldNames: function () { + var _a = this.data.fieldNames || defaultFieldNames, _b = _a.text, text = _b === void 0 ? 'text' : _b, _c = _a.value, value = _c === void 0 ? 'value' : _c, _d = _a.children, children = _d === void 0 ? 'children' : _d; + this.setData({ + textKey: text, + valueKey: value, + childrenKey: children, + }); + }, + getSelectedOptionsByValue: function (options, value) { + for (var i = 0; i < options.length; i++) { + var option = options[i]; + if (option[this.data.valueKey] === value) { + return [option]; + } + if (option[this.data.childrenKey]) { + var selectedOptions = this.getSelectedOptionsByValue(option[this.data.childrenKey], value); + if (selectedOptions) { + return __spreadArray([option], selectedOptions, true); + } + } + } + }, + updateTabs: function () { + var _this = this; + var options = this.data.options; + var innerValue = this.innerValue; + if (!options.length) { + return; + } + if (innerValue !== undefined) { + var selectedOptions = this.getSelectedOptionsByValue(options, innerValue); + if (selectedOptions) { + var optionsCursor_1 = options; + var tabs_1 = selectedOptions.map(function (option) { + var tab = { + options: optionsCursor_1, + selected: option, + }; + var next = optionsCursor_1.find(function (item) { return item[_this.data.valueKey] === option[_this.data.valueKey]; }); + if (next) { + optionsCursor_1 = next[_this.data.childrenKey]; + } + return tab; + }); + if (optionsCursor_1) { + tabs_1.push({ + options: optionsCursor_1, + selected: null, + }); + } + this.setData({ + tabs: tabs_1, + }); + wx.nextTick(function () { + _this.setData({ + activeTab: tabs_1.length - 1, + }); + }); + return; + } + } + this.setData({ + tabs: [ + { + options: options, + selected: null, + }, + ], + activeTab: 0, + }); + }, + onClose: function () { + this.$emit('close'); + }, + onClickTab: function (e) { + var _a = e.detail, tabIndex = _a.index, title = _a.title; + this.$emit('click-tab', { title: title, tabIndex: tabIndex }); + this.setData({ + activeTab: tabIndex, + }); + }, + // 选中 + onSelect: function (e) { + var _this = this; + var _a = e.currentTarget.dataset, option = _a.option, tabIndex = _a.tabIndex; + if (option && option.disabled) { + return; + } + var _b = this.data, valueKey = _b.valueKey, childrenKey = _b.childrenKey; + var tabs = this.data.tabs; + tabs[tabIndex].selected = option; + if (tabs.length > tabIndex + 1) { + tabs = tabs.slice(0, tabIndex + 1); + } + if (option[childrenKey]) { + var nextTab = { + options: option[childrenKey], + selected: null, + }; + if (tabs[tabIndex + 1]) { + tabs[tabIndex + 1] = nextTab; + } + else { + tabs.push(nextTab); + } + wx.nextTick(function () { + _this.setData({ + activeTab: tabIndex + 1, + }); + }); + } + this.setData({ + tabs: tabs, + }); + var selectedOptions = tabs.map(function (tab) { return tab.selected; }).filter(Boolean); + var value = option[valueKey]; + var params = { + value: value, + tabIndex: tabIndex, + selectedOptions: selectedOptions, + }; + this.innerValue = value; + this.$emit('change', params); + if (!option[childrenKey]) { + this.$emit('finish', params); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/cascader/index.json b/src/miniprogram_npm/@vant/weapp/cascader/index.json new file mode 100644 index 0000000..d0f75eb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cascader/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-tab": "../tab/index", + "van-tabs": "../tabs/index" + } +} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/cascader/index.wxml b/src/miniprogram_npm/@vant/weapp/cascader/index.wxml new file mode 100644 index 0000000..9417234 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cascader/index.wxml @@ -0,0 +1,54 @@ +<wxs src="./index.wxs" module="utils" /> + +<view wx:if="{{ showHeader }}" class="van-cascader__header"> + <slot name="title" wx:if="{{ useTitleSlot }}"></slot> + <text class="van-cascader__title" wx:else>{{ title }}</text> + <van-icon + wx:if="{{ closeable }}" + name="{{ closeIcon }}" + class="van-cascader__close-icon" + bind:tap="onClose" + /> +</view> + +<van-tabs + active="{{ activeTab }}" + custom-class="van-cascader__tabs" + wrap-class="van-cascader__tabs-wrap" + tab-class="van-cascader__tab" + color="{{ activeColor }}" + border="{{ false }}" + swipeable="{{ swipeable }}" + bind:click="onClickTab" +> + <van-tab + wx:for="{{ tabs }}" + wx:for-item="tab" + wx:for-index="tabIndex" + wx:key="tabIndex" + title="{{ tab.selected ? tab.selected[textKey] : placeholder }}" + style="width: 100%;" + title-style="{{ !tab.selected ? 'color: #969799;font-weight:normal;' : '' }}" + > + <!-- 暂不支持 --> + <!-- <slot name="options-top"></slot> --> + + <view class="van-cascader__options"> + <view + wx:for="{{ tab.options }}" + wx:for-item="option" + wx:key="index" + class="{{ option.className }} {{ utils.optionClass(tab, valueKey, option) }}" + style="{{ utils.optionStyle({ tab, valueKey, option, activeColor }) }}" + data-option="{{ option }}" + data-tab-index="{{ tabIndex }}" + bind:tap="onSelect" + > + <text>{{ option[textKey] }}</text> + <van-icon wx:if="{{ utils.isSelected(tab, valueKey, option) }}" name="success" size="18" /> + </view> + </view> + <!-- 暂不支持 --> + <!-- <slot name="options-bottom"></slot> --> + </van-tab> +</van-tabs> diff --git a/src/miniprogram_npm/@vant/weapp/cascader/index.wxs b/src/miniprogram_npm/@vant/weapp/cascader/index.wxs new file mode 100644 index 0000000..b1aab58 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cascader/index.wxs @@ -0,0 +1,24 @@ +var utils = require('../wxs/utils.wxs'); +var style = require('../wxs/style.wxs'); + +function isSelected(tab, valueKey, option) { + return tab.selected && tab.selected[valueKey] === option[valueKey] +} + +function optionClass(tab, valueKey, option) { + return utils.bem('cascader__option', { selected: isSelected(tab, valueKey, option), disabled: option.disabled }) +} + +function optionStyle(data) { + var color = data.option.color || (isSelected(data.tab, data.valueKey, data.option) ? data.activeColor : undefined); + return style({ + color + }); +} + + +module.exports = { + isSelected: isSelected, + optionClass: optionClass, + optionStyle: optionStyle, +}; \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/cascader/index.wxss b/src/miniprogram_npm/@vant/weapp/cascader/index.wxss new file mode 100644 index 0000000..7062486 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cascader/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cascader__header{align-items:center;display:flex;height:48px;justify-content:space-between;padding:0 16px}.van-cascader__title{font-size:16px;font-weight:600;line-height:20px}.van-cascader__close-icon{color:#c8c9cc;font-size:22px;height:22px}.van-cascader__tabs-wrap{height:48px!important;padding:0 8px}.van-cascader__tab{color:#323233!important;flex:none!important;font-weight:600!important;padding:0 8px!important}.van-cascader__tab--unselected{color:#969799!important;font-weight:400!important}.van-cascader__option{align-items:center;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;line-height:20px;padding:10px 16px}.van-cascader__option:active{background-color:#f2f3f5}.van-cascader__option--selected{color:#1989fa;font-weight:600}.van-cascader__option--disabled{color:#c8c9cc;cursor:not-allowed}.van-cascader__option--disabled:active{background-color:initial}.van-cascader__options{-webkit-overflow-scrolling:touch;box-sizing:border-box;height:384px;overflow-y:auto;padding-top:6px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/cell-group/index.d.ts b/src/miniprogram_npm/@vant/weapp/cell-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/cell-group/index.js b/src/miniprogram_npm/@vant/weapp/cell-group/index.js new file mode 100644 index 0000000..34a93a6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell-group/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + title: String, + border: { + type: Boolean, + value: true, + }, + inset: Boolean, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/cell-group/index.json b/src/miniprogram_npm/@vant/weapp/cell-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/cell-group/index.wxml b/src/miniprogram_npm/@vant/weapp/cell-group/index.wxml new file mode 100644 index 0000000..311e064 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell-group/index.wxml @@ -0,0 +1,11 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + wx:if="{{ title }}" + class="{{ utils.bem('cell-group__title', { inset }) }}" +> + {{ title }} +</view> +<view class="custom-class {{ utils.bem('cell-group', { inset }) }} {{ border ? 'van-hairline--top-bottom' : '' }}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/cell-group/index.wxss b/src/miniprogram_npm/@vant/weapp/cell-group/index.wxss new file mode 100644 index 0000000..08b252f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cell-group--inset{border-radius:var(--cell-group-inset-border-radius,8px);margin:var(--cell-group-inset-padding,0 16px);overflow:hidden}.van-cell-group__title{color:var(--cell-group-title-color,#969799);font-size:var(--cell-group-title-font-size,14px);line-height:var(--cell-group-title-line-height,16px);padding:var(--cell-group-title-padding,16px 16px 8px)}.van-cell-group__title--inset{padding:var(--cell-group-inset-title-padding,16px 16px 8px 32px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/cell/index.d.ts b/src/miniprogram_npm/@vant/weapp/cell/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/cell/index.js b/src/miniprogram_npm/@vant/weapp/cell/index.js new file mode 100644 index 0000000..80f3039 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell/index.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var link_1 = require("../mixins/link"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'title-class', + 'label-class', + 'value-class', + 'right-icon-class', + 'hover-class', + ], + mixins: [link_1.link], + props: { + title: null, + value: null, + icon: String, + size: String, + label: String, + center: Boolean, + isLink: Boolean, + required: Boolean, + clickable: Boolean, + titleWidth: String, + customStyle: String, + arrowDirection: String, + useLabelSlot: Boolean, + border: { + type: Boolean, + value: true, + }, + titleStyle: String, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/cell/index.json b/src/miniprogram_npm/@vant/weapp/cell/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/cell/index.wxml b/src/miniprogram_npm/@vant/weapp/cell/index.wxml new file mode 100644 index 0000000..8387c3c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell/index.wxml @@ -0,0 +1,47 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="custom-class {{ utils.bem('cell', [size, { center, required, borderless: !border, clickable: isLink || clickable }]) }}" + hover-class="van-cell--hover hover-class" + hover-stay-time="70" + style="{{ customStyle }}" + bind:tap="onClick" +> + <van-icon + wx:if="{{ icon }}" + name="{{ icon }}" + class="van-cell__left-icon-wrap" + custom-class="van-cell__left-icon" + /> + <slot wx:else name="icon" /> + + <view + style="{{ computed.titleStyle({ titleWidth, titleStyle }) }}" + class="van-cell__title title-class" + > + + <block wx:if="{{ title }}">{{ title }}</block> + <slot wx:else name="title" /> + + <view wx:if="{{ label || useLabelSlot }}" class="van-cell__label label-class"> + <slot wx:if="{{ useLabelSlot }}" name="label" /> + <block wx:elif="{{ label }}">{{ label }}</block> + </view> + </view> + + <view class="van-cell__value value-class"> + <block wx:if="{{ value || value === 0 }}">{{ value }}</block> + <slot wx:else /> + </view> + + <van-icon + wx:if="{{ isLink }}" + name="{{ arrowDirection ? 'arrow' + '-' + arrowDirection : 'arrow' }}" + class="van-cell__right-icon-wrap right-icon-class" + custom-class="van-cell__right-icon" + /> + <slot wx:else name="right-icon" /> + + <slot name="extra" /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/cell/index.wxs b/src/miniprogram_npm/@vant/weapp/cell/index.wxs new file mode 100644 index 0000000..e3500c4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function titleStyle(data) { + return style([ + { + 'max-width': addUnit(data.titleWidth), + 'min-width': addUnit(data.titleWidth), + }, + data.titleStyle, + ]); +} + +module.exports = { + titleStyle: titleStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/cell/index.wxss b/src/miniprogram_npm/@vant/weapp/cell/index.wxss new file mode 100644 index 0000000..1802f8e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/cell/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cell{background-color:var(--cell-background-color,#fff);box-sizing:border-box;color:var(--cell-text-color,#323233);display:flex;font-size:var(--cell-font-size,14px);line-height:var(--cell-line-height,24px);padding:var(--cell-vertical-padding,10px) var(--cell-horizontal-padding,16px);position:relative;width:100%}.van-cell:after{border-bottom:1px solid #ebedf0;bottom:0;box-sizing:border-box;content:" ";left:16px;pointer-events:none;position:absolute;right:16px;transform:scaleY(.5);transform-origin:center}.van-cell--borderless:after{display:none}.van-cell-group{background-color:var(--cell-background-color,#fff)}.van-cell__label{color:var(--cell-label-color,#969799);font-size:var(--cell-label-font-size,12px);line-height:var(--cell-label-line-height,18px);margin-top:var(--cell-label-margin-top,3px)}.van-cell__value{color:var(--cell-value-color,#969799);overflow:hidden;text-align:right;vertical-align:middle}.van-cell__title,.van-cell__value{flex:1}.van-cell__title:empty,.van-cell__value:empty{display:none}.van-cell__left-icon-wrap,.van-cell__right-icon-wrap{align-items:center;display:flex;font-size:var(--cell-icon-size,16px);height:var(--cell-line-height,24px)}.van-cell__left-icon-wrap{margin-right:var(--padding-base,4px)}.van-cell__right-icon-wrap{color:var(--cell-right-icon-color,#969799);margin-left:var(--padding-base,4px)}.van-cell__left-icon{vertical-align:middle}.van-cell__left-icon,.van-cell__right-icon{line-height:var(--cell-line-height,24px)}.van-cell--clickable.van-cell--hover{background-color:var(--cell-active-color,#f2f3f5)}.van-cell--required{overflow:visible}.van-cell--required:before{color:var(--cell-required-color,#ee0a24);content:"*";font-size:var(--cell-font-size,14px);left:var(--padding-xs,8px);position:absolute}.van-cell--center{align-items:center}.van-cell--large{padding-bottom:var(--cell-large-vertical-padding,12px);padding-top:var(--cell-large-vertical-padding,12px)}.van-cell--large .van-cell__title{font-size:var(--cell-large-title-font-size,16px)}.van-cell--large .van-cell__value{font-size:var(--cell-large-value-font-size,16px)}.van-cell--large .van-cell__label{font-size:var(--cell-large-label-font-size,14px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/checkbox-group/index.js b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.js new file mode 100644 index 0000000..80c93a1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.js @@ -0,0 +1,39 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useChildren)('checkbox', function (target) { + this.updateChild(target); + }), + props: { + max: Number, + value: { + type: Array, + observer: 'updateChildren', + }, + disabled: { + type: Boolean, + observer: 'updateChildren', + }, + direction: { + type: String, + value: 'vertical', + }, + }, + methods: { + updateChildren: function () { + var _this = this; + this.children.forEach(function (child) { return _this.updateChild(child); }); + }, + updateChild: function (child) { + var _a = this.data, value = _a.value, disabled = _a.disabled, direction = _a.direction; + child.setData({ + value: value.indexOf(child.data.name) !== -1, + parentDisabled: disabled, + direction: direction, + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/checkbox-group/index.json b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml new file mode 100644 index 0000000..638bf9d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml @@ -0,0 +1,5 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="{{ utils.bem('checkbox-group', [{ horizontal: direction === 'horizontal' }]) }}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss new file mode 100644 index 0000000..c5666d7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-checkbox-group--horizontal{display:flex;flex-wrap:wrap} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/checkbox/index.d.ts b/src/miniprogram_npm/@vant/weapp/checkbox/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/checkbox/index.js b/src/miniprogram_npm/@vant/weapp/checkbox/index.js new file mode 100644 index 0000000..6247365 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox/index.js @@ -0,0 +1,79 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +function emit(target, value) { + target.$emit('input', value); + target.$emit('change', value); +} +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useParent)('checkbox-group'), + classes: ['icon-class', 'label-class'], + props: { + value: Boolean, + disabled: Boolean, + useIconSlot: Boolean, + checkedColor: String, + labelPosition: { + type: String, + value: 'right', + }, + labelDisabled: Boolean, + shape: { + type: String, + value: 'round', + }, + iconSize: { + type: null, + value: 20, + }, + }, + data: { + parentDisabled: false, + direction: 'vertical', + }, + methods: { + emitChange: function (value) { + if (this.parent) { + this.setParentValue(this.parent, value); + } + else { + emit(this, value); + } + }, + toggle: function () { + var _a = this.data, parentDisabled = _a.parentDisabled, disabled = _a.disabled, value = _a.value; + if (!disabled && !parentDisabled) { + this.emitChange(!value); + } + }, + onClickLabel: function () { + var _a = this.data, labelDisabled = _a.labelDisabled, parentDisabled = _a.parentDisabled, disabled = _a.disabled, value = _a.value; + if (!disabled && !labelDisabled && !parentDisabled) { + this.emitChange(!value); + } + }, + setParentValue: function (parent, value) { + var parentValue = parent.data.value.slice(); + var name = this.data.name; + var max = parent.data.max; + if (value) { + if (max && parentValue.length >= max) { + return; + } + if (parentValue.indexOf(name) === -1) { + parentValue.push(name); + emit(parent, parentValue); + } + } + else { + var index = parentValue.indexOf(name); + if (index !== -1) { + parentValue.splice(index, 1); + emit(parent, parentValue); + } + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/checkbox/index.json b/src/miniprogram_npm/@vant/weapp/checkbox/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/checkbox/index.wxml b/src/miniprogram_npm/@vant/weapp/checkbox/index.wxml new file mode 100644 index 0000000..39a7bb0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox/index.wxml @@ -0,0 +1,31 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="{{ utils.bem('checkbox', [{ horizontal: direction === 'horizontal' }]) }} custom-class"> + <view + wx:if="{{ labelPosition === 'left' }}" + class="label-class {{ utils.bem('checkbox__label', [labelPosition, { disabled: disabled || parentDisabled }]) }}" + bindtap="onClickLabel" + > + <slot /> + </view> + <view class="van-checkbox__icon-wrap" bindtap="toggle"> + <slot wx:if="{{ useIconSlot }}" name="icon" /> + <van-icon + wx:else + name="success" + size="0.8em" + class="{{ utils.bem('checkbox__icon', [shape, { disabled: disabled || parentDisabled, checked: value }]) }}" + style="{{ computed.iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) }}" + custom-class="icon-class" + custom-style="line-height: 1.25em;" + /> + </view> + <view + wx:if="{{ labelPosition === 'right' }}" + class="label-class {{ utils.bem('checkbox__label', [labelPosition, { disabled: disabled || parentDisabled }]) }}" + bindtap="onClickLabel" + > + <slot /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/checkbox/index.wxs b/src/miniprogram_npm/@vant/weapp/checkbox/index.wxs new file mode 100644 index 0000000..eb9c772 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox/index.wxs @@ -0,0 +1,20 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) { + var styles = { + 'font-size': addUnit(iconSize), + }; + + if (checkedColor && value && !disabled && !parentDisabled) { + styles['border-color'] = checkedColor; + styles['background-color'] = checkedColor; + } + + return style(styles); +} + +module.exports = { + iconStyle: iconStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/checkbox/index.wxss b/src/miniprogram_npm/@vant/weapp/checkbox/index.wxss new file mode 100644 index 0000000..da2272a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/checkbox/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-checkbox{align-items:center;display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-checkbox--horizontal{margin-right:12px}.van-checkbox__icon-wrap,.van-checkbox__label{line-height:var(--checkbox-size,20px)}.van-checkbox__icon-wrap{flex:none}.van-checkbox__icon{align-items:center;border:1px solid var(--checkbox-border-color,#c8c9cc);box-sizing:border-box;color:transparent;display:flex;font-size:var(--checkbox-size,20px);height:1em;justify-content:center;text-align:center;transition-duration:var(--checkbox-transition-duration,.2s);transition-property:color,border-color,background-color;width:1em}.van-checkbox__icon--round{border-radius:100%}.van-checkbox__icon--checked{background-color:var(--checkbox-checked-icon-color,#1989fa);border-color:var(--checkbox-checked-icon-color,#1989fa);color:#fff}.van-checkbox__icon--disabled{background-color:var(--checkbox-disabled-background-color,#ebedf0);border-color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__icon--disabled.van-checkbox__icon--checked{color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__label{word-wrap:break-word;color:var(--checkbox-label-color,#323233);padding-left:var(--checkbox-label-margin,10px)}.van-checkbox__label--left{float:left;margin:0 var(--checkbox-label-margin,10px) 0 0}.van-checkbox__label--disabled{color:var(--checkbox-disabled-label-color,#c8c9cc)}.van-checkbox__label:empty{margin:0} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/circle/canvas.d.ts b/src/miniprogram_npm/@vant/weapp/circle/canvas.d.ts new file mode 100644 index 0000000..8a0b71e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/canvas.d.ts @@ -0,0 +1,4 @@ +/// <reference types="miniprogram-api-typings" /> +type CanvasContext = WechatMiniprogram.CanvasContext; +export declare function adaptor(ctx: CanvasContext & Record<string, unknown>): CanvasContext; +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/circle/canvas.js b/src/miniprogram_npm/@vant/weapp/circle/canvas.js new file mode 100644 index 0000000..d81df74 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/canvas.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.adaptor = void 0; +function adaptor(ctx) { + // @ts-ignore + return Object.assign(ctx, { + setStrokeStyle: function (val) { + ctx.strokeStyle = val; + }, + setLineWidth: function (val) { + ctx.lineWidth = val; + }, + setLineCap: function (val) { + ctx.lineCap = val; + }, + setFillStyle: function (val) { + ctx.fillStyle = val; + }, + setFontSize: function (val) { + ctx.font = String(val); + }, + setGlobalAlpha: function (val) { + ctx.globalAlpha = val; + }, + setLineJoin: function (val) { + ctx.lineJoin = val; + }, + setTextAlign: function (val) { + ctx.textAlign = val; + }, + setMiterLimit: function (val) { + ctx.miterLimit = val; + }, + setShadow: function (offsetX, offsetY, blur, color) { + ctx.shadowOffsetX = offsetX; + ctx.shadowOffsetY = offsetY; + ctx.shadowBlur = blur; + ctx.shadowColor = color; + }, + setTextBaseline: function (val) { + ctx.textBaseline = val; + }, + createCircularGradient: function () { }, + draw: function () { }, + }); +} +exports.adaptor = adaptor; diff --git a/src/miniprogram_npm/@vant/weapp/circle/index.d.ts b/src/miniprogram_npm/@vant/weapp/circle/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/circle/index.js b/src/miniprogram_npm/@vant/weapp/circle/index.js new file mode 100644 index 0000000..e131e4b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/index.js @@ -0,0 +1,207 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var version_1 = require("../common/version"); +var canvas_1 = require("./canvas"); +function format(rate) { + return Math.min(Math.max(rate, 0), 100); +} +var PERIMETER = 2 * Math.PI; +var BEGIN_ANGLE = -Math.PI / 2; +var STEP = 1; +(0, component_1.VantComponent)({ + props: { + text: String, + lineCap: { + type: String, + value: 'round', + }, + value: { + type: Number, + value: 0, + observer: 'reRender', + }, + speed: { + type: Number, + value: 50, + }, + size: { + type: Number, + value: 100, + observer: function () { + this.drawCircle(this.currentValue); + }, + }, + fill: String, + layerColor: { + type: String, + value: color_1.WHITE, + }, + color: { + type: null, + value: color_1.BLUE, + observer: function () { + var _this = this; + this.setHoverColor().then(function () { + _this.drawCircle(_this.currentValue); + }); + }, + }, + type: { + type: String, + value: '', + }, + strokeWidth: { + type: Number, + value: 4, + }, + clockwise: { + type: Boolean, + value: true, + }, + }, + data: { + hoverColor: color_1.BLUE, + }, + methods: { + getContext: function () { + var _this = this; + var _a = this.data, type = _a.type, size = _a.size; + if (type === '' || !(0, version_1.canIUseCanvas2d)()) { + var ctx = wx.createCanvasContext('van-circle', this); + return Promise.resolve(ctx); + } + var dpr = (0, utils_1.getSystemInfoSync)().pixelRatio; + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(_this) + .select('#van-circle') + .node() + .exec(function (res) { + var canvas = res[0].node; + var ctx = canvas.getContext(type); + if (!_this.inited) { + _this.inited = true; + canvas.width = size * dpr; + canvas.height = size * dpr; + ctx.scale(dpr, dpr); + } + resolve((0, canvas_1.adaptor)(ctx)); + }); + }); + }, + setHoverColor: function () { + var _this = this; + var _a = this.data, color = _a.color, size = _a.size; + if ((0, validator_1.isObj)(color)) { + return this.getContext().then(function (context) { + if (!context) + return; + var LinearColor = context.createLinearGradient(size, 0, 0, 0); + Object.keys(color) + .sort(function (a, b) { return parseFloat(a) - parseFloat(b); }) + .map(function (key) { + return LinearColor.addColorStop(parseFloat(key) / 100, color[key]); + }); + _this.hoverColor = LinearColor; + }); + } + this.hoverColor = color; + return Promise.resolve(); + }, + presetCanvas: function (context, strokeStyle, beginAngle, endAngle, fill) { + var _a = this.data, strokeWidth = _a.strokeWidth, lineCap = _a.lineCap, clockwise = _a.clockwise, size = _a.size; + var position = size / 2; + var radius = position - strokeWidth / 2; + context.setStrokeStyle(strokeStyle); + context.setLineWidth(strokeWidth); + context.setLineCap(lineCap); + context.beginPath(); + context.arc(position, position, radius, beginAngle, endAngle, !clockwise); + context.stroke(); + if (fill) { + context.setFillStyle(fill); + context.fill(); + } + }, + renderLayerCircle: function (context) { + var _a = this.data, layerColor = _a.layerColor, fill = _a.fill; + this.presetCanvas(context, layerColor, 0, PERIMETER, fill); + }, + renderHoverCircle: function (context, formatValue) { + var clockwise = this.data.clockwise; + // 结束角度 + var progress = PERIMETER * (formatValue / 100); + var endAngle = clockwise + ? BEGIN_ANGLE + progress + : 3 * Math.PI - (BEGIN_ANGLE + progress); + this.presetCanvas(context, this.hoverColor, BEGIN_ANGLE, endAngle); + }, + drawCircle: function (currentValue) { + var _this = this; + var size = this.data.size; + this.getContext().then(function (context) { + if (!context) + return; + context.clearRect(0, 0, size, size); + _this.renderLayerCircle(context); + var formatValue = format(currentValue); + if (formatValue !== 0) { + _this.renderHoverCircle(context, formatValue); + } + context.draw(); + }); + }, + reRender: function () { + var _this = this; + // tofector 动画暂时没有想到好的解决方案 + var _a = this.data, value = _a.value, speed = _a.speed; + if (speed <= 0 || speed > 1000) { + this.drawCircle(value); + return; + } + this.clearMockInterval(); + this.currentValue = this.currentValue || 0; + var run = function () { + _this.interval = setTimeout(function () { + if (_this.currentValue !== value) { + if (Math.abs(_this.currentValue - value) < STEP) { + _this.currentValue = value; + } + else if (_this.currentValue < value) { + _this.currentValue += STEP; + } + else { + _this.currentValue -= STEP; + } + _this.drawCircle(_this.currentValue); + run(); + } + else { + _this.clearMockInterval(); + } + }, 1000 / speed); + }; + run(); + }, + clearMockInterval: function () { + if (this.interval) { + clearTimeout(this.interval); + this.interval = null; + } + }, + }, + mounted: function () { + var _this = this; + this.currentValue = this.data.value; + this.setHoverColor().then(function () { + _this.drawCircle(_this.currentValue); + }); + }, + destroyed: function () { + this.clearMockInterval(); + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/circle/index.json b/src/miniprogram_npm/@vant/weapp/circle/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/circle/index.wxml b/src/miniprogram_npm/@vant/weapp/circle/index.wxml new file mode 100644 index 0000000..52bc59f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/index.wxml @@ -0,0 +1,9 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="van-circle"> + <canvas class="van-circle__canvas" type="{{ type }}" style="width: {{ utils.addUnit(size) }};height:{{ utils.addUnit(size) }}" id="van-circle" canvas-id="van-circle"></canvas> + <view wx:if="{{ !text }}" class="van-circle__text"> + <slot></slot> + </view> + <cover-view wx:else class="van-circle__text">{{ text }}</cover-view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/circle/index.wxss b/src/miniprogram_npm/@vant/weapp/circle/index.wxss new file mode 100644 index 0000000..2200751 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/circle/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-circle{display:inline-block;position:relative;text-align:center}.van-circle__text{color:var(--circle-text-color,#323233);left:0;position:absolute;top:50%;transform:translateY(-50%);width:100%} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/col/index.d.ts b/src/miniprogram_npm/@vant/weapp/col/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/col/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/col/index.js b/src/miniprogram_npm/@vant/weapp/col/index.js new file mode 100644 index 0000000..63c56eb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/col/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('row'), + props: { + span: Number, + offset: Number, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/col/index.json b/src/miniprogram_npm/@vant/weapp/col/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/col/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/col/index.wxml b/src/miniprogram_npm/@vant/weapp/col/index.wxml new file mode 100644 index 0000000..975348b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/col/index.wxml @@ -0,0 +1,9 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="custom-class {{ utils.bem('col', [span]) }} {{ offset ? 'van-col--offset-' + offset : '' }}" + style="{{ computed.rootStyle({ gutter }) }}" +> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/col/index.wxs b/src/miniprogram_npm/@vant/weapp/col/index.wxs new file mode 100644 index 0000000..507c1cb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/col/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + if (!data.gutter) { + return ''; + } + + return style({ + 'padding-right': addUnit(data.gutter / 2), + 'padding-left': addUnit(data.gutter / 2), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/col/index.wxss b/src/miniprogram_npm/@vant/weapp/col/index.wxss new file mode 100644 index 0000000..2fa265e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/col/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-col{box-sizing:border-box;float:left}.van-col--1{width:4.16666667%}.van-col--offset-1{margin-left:4.16666667%}.van-col--2{width:8.33333333%}.van-col--offset-2{margin-left:8.33333333%}.van-col--3{width:12.5%}.van-col--offset-3{margin-left:12.5%}.van-col--4{width:16.66666667%}.van-col--offset-4{margin-left:16.66666667%}.van-col--5{width:20.83333333%}.van-col--offset-5{margin-left:20.83333333%}.van-col--6{width:25%}.van-col--offset-6{margin-left:25%}.van-col--7{width:29.16666667%}.van-col--offset-7{margin-left:29.16666667%}.van-col--8{width:33.33333333%}.van-col--offset-8{margin-left:33.33333333%}.van-col--9{width:37.5%}.van-col--offset-9{margin-left:37.5%}.van-col--10{width:41.66666667%}.van-col--offset-10{margin-left:41.66666667%}.van-col--11{width:45.83333333%}.van-col--offset-11{margin-left:45.83333333%}.van-col--12{width:50%}.van-col--offset-12{margin-left:50%}.van-col--13{width:54.16666667%}.van-col--offset-13{margin-left:54.16666667%}.van-col--14{width:58.33333333%}.van-col--offset-14{margin-left:58.33333333%}.van-col--15{width:62.5%}.van-col--offset-15{margin-left:62.5%}.van-col--16{width:66.66666667%}.van-col--offset-16{margin-left:66.66666667%}.van-col--17{width:70.83333333%}.van-col--offset-17{margin-left:70.83333333%}.van-col--18{width:75%}.van-col--offset-18{margin-left:75%}.van-col--19{width:79.16666667%}.van-col--offset-19{margin-left:79.16666667%}.van-col--20{width:83.33333333%}.van-col--offset-20{margin-left:83.33333333%}.van-col--21{width:87.5%}.van-col--offset-21{margin-left:87.5%}.van-col--22{width:91.66666667%}.van-col--offset-22{margin-left:91.66666667%}.van-col--23{width:95.83333333%}.van-col--offset-23{margin-left:95.83333333%}.van-col--24{width:100%}.van-col--offset-24{margin-left:100%} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts b/src/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts new file mode 100644 index 0000000..32157b6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts @@ -0,0 +1,2 @@ +/// <reference types="miniprogram-api-typings" /> +export declare function setContentAnimate(context: WechatMiniprogram.Component.TrivialInstance, expanded: boolean, mounted: boolean): void; diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/animate.js b/src/miniprogram_npm/@vant/weapp/collapse-item/animate.js new file mode 100644 index 0000000..5734087 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/animate.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.setContentAnimate = void 0; +var utils_1 = require("../common/utils"); +function useAnimation(context, expanded, mounted, height) { + var animation = wx.createAnimation({ + duration: 0, + timingFunction: 'ease-in-out', + }); + if (expanded) { + if (height === 0) { + animation.height('auto').top(1).step(); + } + else { + animation + .height(height) + .top(1) + .step({ + duration: mounted ? 300 : 1, + }) + .height('auto') + .step(); + } + context.setData({ + animation: animation.export(), + }); + return; + } + animation.height(height).top(0).step({ duration: 1 }).height(0).step({ + duration: 300, + }); + context.setData({ + animation: animation.export(), + }); +} +function setContentAnimate(context, expanded, mounted) { + (0, utils_1.getRect)(context, '.van-collapse-item__content') + .then(function (rect) { return rect.height; }) + .then(function (height) { + useAnimation(context, expanded, mounted, height); + }); +} +exports.setContentAnimate = setContentAnimate; diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts b/src/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/index.js b/src/miniprogram_npm/@vant/weapp/collapse-item/index.js new file mode 100644 index 0000000..982490e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/index.js @@ -0,0 +1,62 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var animate_1 = require("./animate"); +(0, component_1.VantComponent)({ + classes: ['title-class', 'content-class'], + relation: (0, relation_1.useParent)('collapse'), + props: { + size: String, + name: null, + title: null, + value: null, + icon: String, + label: String, + disabled: Boolean, + clickable: Boolean, + border: { + type: Boolean, + value: true, + }, + isLink: { + type: Boolean, + value: true, + }, + }, + data: { + expanded: false, + }, + mounted: function () { + this.updateExpanded(); + this.mounted = true; + }, + methods: { + updateExpanded: function () { + if (!this.parent) { + return; + } + var _a = this.parent.data, value = _a.value, accordion = _a.accordion; + var _b = this.parent.children, children = _b === void 0 ? [] : _b; + var name = this.data.name; + var index = children.indexOf(this); + var currentName = name == null ? index : name; + var expanded = accordion + ? value === currentName + : (value || []).some(function (name) { return name === currentName; }); + if (expanded !== this.data.expanded) { + (0, animate_1.setContentAnimate)(this, expanded, this.mounted); + } + this.setData({ index: index, expanded: expanded }); + }, + onClick: function () { + if (this.data.disabled) { + return; + } + var _a = this.data, name = _a.name, expanded = _a.expanded; + var index = this.parent.children.indexOf(this); + var currentName = name == null ? index : name; + this.parent.switch(currentName, !expanded); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/index.json b/src/miniprogram_npm/@vant/weapp/collapse-item/index.json new file mode 100644 index 0000000..0e5425c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/index.wxml b/src/miniprogram_npm/@vant/weapp/collapse-item/index.wxml new file mode 100644 index 0000000..f11d0d4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/index.wxml @@ -0,0 +1,45 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="van-collapse-item custom-class {{ index !== 0 ? 'van-hairline--top' : '' }}"> + <van-cell + size="{{ size }}" + title="{{ title }}" + title-class="title-class" + icon="{{ icon }}" + value="{{ value }}" + label="{{ label }}" + is-link="{{ isLink }}" + clickable="{{ clickable }}" + border="{{ border && expanded }}" + class="{{ utils.bem('collapse-item__title', { disabled, expanded }) }}" + right-icon-class="van-cell__right-icon" + custom-class="van-cell" + hover-class="van-cell--hover" + bind:click="onClick" + > + <slot + name="title" + slot="title" + /> + <slot + name="icon" + slot="icon" + /> + <slot name="value" /> + <slot + name="right-icon" + slot="right-icon" + /> + </van-cell> + <view + class="{{ utils.bem('collapse-item__wrapper') }}" + style="height: 0;" + animation="{{ animation }}" + > + <view + class="van-collapse-item__content content-class" + > + <slot /> + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/collapse-item/index.wxss b/src/miniprogram_npm/@vant/weapp/collapse-item/index.wxss new file mode 100644 index 0000000..4a65b5a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-collapse-item__title .van-cell__right-icon{transform:rotate(90deg);transition:transform var(--collapse-item-transition-duration,.3s)}.van-collapse-item__title--expanded .van-cell__right-icon{transform:rotate(-90deg)}.van-collapse-item__title--disabled .van-cell,.van-collapse-item__title--disabled .van-cell__right-icon{color:var(--collapse-item-title-disabled-color,#c8c9cc)!important}.van-collapse-item__title--disabled .van-cell--hover{background-color:#fff!important}.van-collapse-item__wrapper{overflow:hidden}.van-collapse-item__content{background-color:var(--collapse-item-content-background-color,#fff);color:var(--collapse-item-content-text-color,#969799);font-size:var(--collapse-item-content-font-size,13px);line-height:var(--collapse-item-content-line-height,1.5);padding:var(--collapse-item-content-padding,15px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/collapse/index.d.ts b/src/miniprogram_npm/@vant/weapp/collapse/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/collapse/index.js b/src/miniprogram_npm/@vant/weapp/collapse/index.js new file mode 100644 index 0000000..943d542 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse/index.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('collapse-item'), + props: { + value: { + type: null, + observer: 'updateExpanded', + }, + accordion: { + type: Boolean, + observer: 'updateExpanded', + }, + border: { + type: Boolean, + value: true, + }, + }, + methods: { + updateExpanded: function () { + this.children.forEach(function (child) { + child.updateExpanded(); + }); + }, + switch: function (name, expanded) { + var _a = this.data, accordion = _a.accordion, value = _a.value; + var changeItem = name; + if (!accordion) { + name = expanded + ? (value || []).concat(name) + : (value || []).filter(function (activeName) { return activeName !== name; }); + } + else { + name = expanded ? name : ''; + } + if (expanded) { + this.$emit('open', changeItem); + } + else { + this.$emit('close', changeItem); + } + this.$emit('change', name); + this.$emit('input', name); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/collapse/index.json b/src/miniprogram_npm/@vant/weapp/collapse/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/collapse/index.wxml b/src/miniprogram_npm/@vant/weapp/collapse/index.wxml new file mode 100644 index 0000000..fd4e171 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse/index.wxml @@ -0,0 +1,3 @@ +<view class="custom-class van-collapse {{ border ? 'van-hairline--top-bottom' : '' }}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/collapse/index.wxss b/src/miniprogram_npm/@vant/weapp/collapse/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/collapse/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/common/color.d.ts b/src/miniprogram_npm/@vant/weapp/common/color.d.ts new file mode 100644 index 0000000..386f307 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/color.d.ts @@ -0,0 +1,7 @@ +export declare const RED = "#ee0a24"; +export declare const BLUE = "#1989fa"; +export declare const WHITE = "#fff"; +export declare const GREEN = "#07c160"; +export declare const ORANGE = "#ff976a"; +export declare const GRAY = "#323233"; +export declare const GRAY_DARK = "#969799"; diff --git a/src/miniprogram_npm/@vant/weapp/common/color.js b/src/miniprogram_npm/@vant/weapp/common/color.js new file mode 100644 index 0000000..008a45a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/color.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.GRAY_DARK = exports.GRAY = exports.ORANGE = exports.GREEN = exports.WHITE = exports.BLUE = exports.RED = void 0; +exports.RED = '#ee0a24'; +exports.BLUE = '#1989fa'; +exports.WHITE = '#fff'; +exports.GREEN = '#07c160'; +exports.ORANGE = '#ff976a'; +exports.GRAY = '#323233'; +exports.GRAY_DARK = '#969799'; diff --git a/src/miniprogram_npm/@vant/weapp/common/component.d.ts b/src/miniprogram_npm/@vant/weapp/common/component.d.ts new file mode 100644 index 0000000..1d0fd27 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/component.d.ts @@ -0,0 +1,4 @@ +/// <reference types="miniprogram-api-typings" /> +import { VantComponentOptions } from 'definitions/index'; +declare function VantComponent<Data extends WechatMiniprogram.Component.DataOption, Props extends WechatMiniprogram.Component.PropertyOption, Methods extends WechatMiniprogram.Component.MethodOption>(vantOptions: VantComponentOptions<Data, Props, Methods>): void; +export { VantComponent }; diff --git a/src/miniprogram_npm/@vant/weapp/common/component.js b/src/miniprogram_npm/@vant/weapp/common/component.js new file mode 100644 index 0000000..66da00e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/component.js @@ -0,0 +1,49 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.VantComponent = void 0; +var basic_1 = require("../mixins/basic"); +function mapKeys(source, target, map) { + Object.keys(map).forEach(function (key) { + if (source[key]) { + target[map[key]] = source[key]; + } + }); +} +function VantComponent(vantOptions) { + var options = {}; + mapKeys(vantOptions, options, { + data: 'data', + props: 'properties', + watch: 'observers', + mixins: 'behaviors', + methods: 'methods', + beforeCreate: 'created', + created: 'attached', + mounted: 'ready', + destroyed: 'detached', + classes: 'externalClasses', + }); + // add default externalClasses + options.externalClasses = options.externalClasses || []; + options.externalClasses.push('custom-class'); + // add default behaviors + options.behaviors = options.behaviors || []; + options.behaviors.push(basic_1.basic); + // add relations + var relation = vantOptions.relation; + if (relation) { + options.relations = relation.relations; + options.behaviors.push(relation.mixin); + } + // map field to form-field behavior + if (vantOptions.field) { + options.behaviors.push('wx://form-field'); + } + // add default options + options.options = { + multipleSlots: true, + addGlobalClass: true, + }; + Component(options); +} +exports.VantComponent = VantComponent; diff --git a/src/miniprogram_npm/@vant/weapp/common/index.wxss b/src/miniprogram_npm/@vant/weapp/common/index.wxss new file mode 100644 index 0000000..a73bb7a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/index.wxss @@ -0,0 +1 @@ +.van-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.van-multi-ellipsis--l3{-webkit-line-clamp:3}.van-clearfix:after{clear:both;content:"";display:table}.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{border:0 solid #ebedf0;bottom:-50%;box-sizing:border-box;content:" ";left:-50%;pointer-events:none;position:absolute;right:-50%;top:-50%;transform:scale(.5);transform-origin:center}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/common/relation.d.ts b/src/miniprogram_npm/@vant/weapp/common/relation.d.ts new file mode 100644 index 0000000..10193fa --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/relation.d.ts @@ -0,0 +1,15 @@ +/// <reference types="miniprogram-api-typings" /> +type TrivialInstance = WechatMiniprogram.Component.TrivialInstance; +export declare function useParent(name: string, onEffect?: (this: TrivialInstance) => void): { + relations: { + [x: string]: WechatMiniprogram.Component.RelationOption; + }; + mixin: string; +}; +export declare function useChildren(name: string, onEffect?: (this: TrivialInstance, target: TrivialInstance) => void): { + relations: { + [x: string]: WechatMiniprogram.Component.RelationOption; + }; + mixin: string; +}; +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/common/relation.js b/src/miniprogram_npm/@vant/weapp/common/relation.js new file mode 100644 index 0000000..008256c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/relation.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useChildren = exports.useParent = void 0; +function useParent(name, onEffect) { + var _a; + var path = "../".concat(name, "/index"); + return { + relations: (_a = {}, + _a[path] = { + type: 'ancestor', + linked: function () { + onEffect && onEffect.call(this); + }, + linkChanged: function () { + onEffect && onEffect.call(this); + }, + unlinked: function () { + onEffect && onEffect.call(this); + }, + }, + _a), + mixin: Behavior({ + created: function () { + var _this = this; + Object.defineProperty(this, 'parent', { + get: function () { return _this.getRelationNodes(path)[0]; }, + }); + Object.defineProperty(this, 'index', { + // @ts-ignore + get: function () { var _a, _b; return (_b = (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.children) === null || _b === void 0 ? void 0 : _b.indexOf(_this); }, + }); + }, + }), + }; +} +exports.useParent = useParent; +function useChildren(name, onEffect) { + var _a; + var path = "../".concat(name, "/index"); + return { + relations: (_a = {}, + _a[path] = { + type: 'descendant', + linked: function (target) { + onEffect && onEffect.call(this, target); + }, + linkChanged: function (target) { + onEffect && onEffect.call(this, target); + }, + unlinked: function (target) { + onEffect && onEffect.call(this, target); + }, + }, + _a), + mixin: Behavior({ + created: function () { + var _this = this; + Object.defineProperty(this, 'children', { + get: function () { return _this.getRelationNodes(path) || []; }, + }); + }, + }), + }; +} +exports.useChildren = useChildren; diff --git a/src/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss b/src/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss new file mode 100644 index 0000000..442246f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss @@ -0,0 +1 @@ +.van-clearfix:after{clear:both;content:"";display:table} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss b/src/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss new file mode 100644 index 0000000..ee701df --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss @@ -0,0 +1 @@ +.van-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.van-multi-ellipsis--l3{-webkit-line-clamp:3} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/common/style/hairline.wxss b/src/miniprogram_npm/@vant/weapp/common/style/hairline.wxss new file mode 100644 index 0000000..f7c6260 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/style/hairline.wxss @@ -0,0 +1 @@ +.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{border:0 solid #ebedf0;bottom:-50%;box-sizing:border-box;content:" ";left:-50%;pointer-events:none;position:absolute;right:-50%;top:-50%;transform:scale(.5);transform-origin:center}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss b/src/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss b/src/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss b/src/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/miniprogram_npm/@vant/weapp/common/style/var.wxss b/src/miniprogram_npm/@vant/weapp/common/style/var.wxss new file mode 100644 index 0000000..e69de29 diff --git a/src/miniprogram_npm/@vant/weapp/common/utils.d.ts b/src/miniprogram_npm/@vant/weapp/common/utils.d.ts new file mode 100644 index 0000000..a77d8c6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/utils.d.ts @@ -0,0 +1,21 @@ +/// <reference types="node" /> +/// <reference types="miniprogram-api-typings" /> +/// <reference types="miniprogram-api-typings" /> +/// <reference types="miniprogram-api-typings" /> +/// <reference types="miniprogram-api-typings" /> +export { isDef } from './validator'; +export { getSystemInfoSync } from './version'; +export declare function range(num: number, min: number, max: number): number; +export declare function nextTick(cb: (...args: any[]) => void): void; +export declare function addUnit(value?: string | number): string | undefined; +export declare function requestAnimationFrame(cb: () => void): NodeJS.Timeout; +export declare function pickExclude(obj: unknown, keys: string[]): {}; +export declare function getRect(context: WechatMiniprogram.Component.TrivialInstance, selector: string): Promise<WechatMiniprogram.BoundingClientRectCallbackResult>; +export declare function getAllRect(context: WechatMiniprogram.Component.TrivialInstance, selector: string): Promise<WechatMiniprogram.BoundingClientRectCallbackResult[]>; +export declare function groupSetData(context: WechatMiniprogram.Component.TrivialInstance, cb: () => void): void; +export declare function toPromise(promiseLike: Promise<unknown> | unknown): Promise<unknown>; +export declare function addNumber(num1: any, num2: any): number; +export declare const clamp: (num: any, min: any, max: any) => number; +export declare function getCurrentPage<T>(): T & WechatMiniprogram.OptionalInterface<WechatMiniprogram.Page.ILifetime> & WechatMiniprogram.Page.InstanceProperties & WechatMiniprogram.Page.InstanceMethods<WechatMiniprogram.IAnyObject> & WechatMiniprogram.Page.Data<WechatMiniprogram.IAnyObject> & WechatMiniprogram.IAnyObject; +export declare const isPC: boolean; +export declare const isWxWork: boolean; diff --git a/src/miniprogram_npm/@vant/weapp/common/utils.js b/src/miniprogram_npm/@vant/weapp/common/utils.js new file mode 100644 index 0000000..1727628 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/utils.js @@ -0,0 +1,109 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isWxWork = exports.isPC = exports.getCurrentPage = exports.clamp = exports.addNumber = exports.toPromise = exports.groupSetData = exports.getAllRect = exports.getRect = exports.pickExclude = exports.requestAnimationFrame = exports.addUnit = exports.nextTick = exports.range = exports.getSystemInfoSync = exports.isDef = void 0; +var validator_1 = require("./validator"); +var version_1 = require("./version"); +var validator_2 = require("./validator"); +Object.defineProperty(exports, "isDef", { enumerable: true, get: function () { return validator_2.isDef; } }); +var version_2 = require("./version"); +Object.defineProperty(exports, "getSystemInfoSync", { enumerable: true, get: function () { return version_2.getSystemInfoSync; } }); +function range(num, min, max) { + return Math.min(Math.max(num, min), max); +} +exports.range = range; +function nextTick(cb) { + if ((0, version_1.canIUseNextTick)()) { + wx.nextTick(cb); + } + else { + setTimeout(function () { + cb(); + }, 1000 / 30); + } +} +exports.nextTick = nextTick; +function addUnit(value) { + if (!(0, validator_1.isDef)(value)) { + return undefined; + } + value = String(value); + return (0, validator_1.isNumber)(value) ? "".concat(value, "px") : value; +} +exports.addUnit = addUnit; +function requestAnimationFrame(cb) { + return setTimeout(function () { + cb(); + }, 1000 / 30); +} +exports.requestAnimationFrame = requestAnimationFrame; +function pickExclude(obj, keys) { + if (!(0, validator_1.isPlainObject)(obj)) { + return {}; + } + return Object.keys(obj).reduce(function (prev, key) { + if (!keys.includes(key)) { + prev[key] = obj[key]; + } + return prev; + }, {}); +} +exports.pickExclude = pickExclude; +function getRect(context, selector) { + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(context) + .select(selector) + .boundingClientRect() + .exec(function (rect) { + if (rect === void 0) { rect = []; } + return resolve(rect[0]); + }); + }); +} +exports.getRect = getRect; +function getAllRect(context, selector) { + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(context) + .selectAll(selector) + .boundingClientRect() + .exec(function (rect) { + if (rect === void 0) { rect = []; } + return resolve(rect[0]); + }); + }); +} +exports.getAllRect = getAllRect; +function groupSetData(context, cb) { + if ((0, version_1.canIUseGroupSetData)()) { + context.groupSetData(cb); + } + else { + cb(); + } +} +exports.groupSetData = groupSetData; +function toPromise(promiseLike) { + if ((0, validator_1.isPromise)(promiseLike)) { + return promiseLike; + } + return Promise.resolve(promiseLike); +} +exports.toPromise = toPromise; +// 浮点数精度处理 +function addNumber(num1, num2) { + var cardinal = Math.pow(10, 10); + return Math.round((num1 + num2) * cardinal) / cardinal; +} +exports.addNumber = addNumber; +// 限制value在[min, max]之间 +var clamp = function (num, min, max) { return Math.min(Math.max(num, min), max); }; +exports.clamp = clamp; +function getCurrentPage() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +exports.getCurrentPage = getCurrentPage; +exports.isPC = ['mac', 'windows'].includes((0, version_1.getSystemInfoSync)().platform); +// 是否企业微信 +exports.isWxWork = (0, version_1.getSystemInfoSync)().environment === 'wxwork'; diff --git a/src/miniprogram_npm/@vant/weapp/common/validator.d.ts b/src/miniprogram_npm/@vant/weapp/common/validator.d.ts new file mode 100644 index 0000000..152894a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/validator.d.ts @@ -0,0 +1,9 @@ +export declare function isFunction(val: unknown): val is Function; +export declare function isPlainObject(val: unknown): val is Record<string, unknown>; +export declare function isPromise<T = unknown>(val: unknown): val is Promise<T>; +export declare function isDef(value: unknown): boolean; +export declare function isObj(x: unknown): x is Record<string, unknown>; +export declare function isNumber(value: string): boolean; +export declare function isBoolean(value: unknown): value is boolean; +export declare function isImageUrl(url: string): boolean; +export declare function isVideoUrl(url: string): boolean; diff --git a/src/miniprogram_npm/@vant/weapp/common/validator.js b/src/miniprogram_npm/@vant/weapp/common/validator.js new file mode 100644 index 0000000..169e796 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/validator.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isVideoUrl = exports.isImageUrl = exports.isBoolean = exports.isNumber = exports.isObj = exports.isDef = exports.isPromise = exports.isPlainObject = exports.isFunction = void 0; +// eslint-disable-next-line @typescript-eslint/ban-types +function isFunction(val) { + return typeof val === 'function'; +} +exports.isFunction = isFunction; +function isPlainObject(val) { + return val !== null && typeof val === 'object' && !Array.isArray(val); +} +exports.isPlainObject = isPlainObject; +function isPromise(val) { + return isPlainObject(val) && isFunction(val.then) && isFunction(val.catch); +} +exports.isPromise = isPromise; +function isDef(value) { + return value !== undefined && value !== null; +} +exports.isDef = isDef; +function isObj(x) { + var type = typeof x; + return x !== null && (type === 'object' || type === 'function'); +} +exports.isObj = isObj; +function isNumber(value) { + return /^\d+(\.\d+)?$/.test(value); +} +exports.isNumber = isNumber; +function isBoolean(value) { + return typeof value === 'boolean'; +} +exports.isBoolean = isBoolean; +var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i; +var VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv)/i; +function isImageUrl(url) { + return IMAGE_REGEXP.test(url); +} +exports.isImageUrl = isImageUrl; +function isVideoUrl(url) { + return VIDEO_REGEXP.test(url); +} +exports.isVideoUrl = isVideoUrl; diff --git a/src/miniprogram_npm/@vant/weapp/common/version.d.ts b/src/miniprogram_npm/@vant/weapp/common/version.d.ts new file mode 100644 index 0000000..3393221 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/version.d.ts @@ -0,0 +1,15 @@ +/// <reference types="miniprogram-api-typings" /> +interface WxWorkSystemInfo extends WechatMiniprogram.SystemInfo { + environment?: 'wxwork'; +} +interface SystemInfo extends WxWorkSystemInfo, WechatMiniprogram.SystemInfo { +} +export declare function getSystemInfoSync(): SystemInfo; +export declare function canIUseModel(): boolean; +export declare function canIUseFormFieldButton(): boolean; +export declare function canIUseAnimate(): boolean; +export declare function canIUseGroupSetData(): boolean; +export declare function canIUseNextTick(): boolean; +export declare function canIUseCanvas2d(): boolean; +export declare function canIUseGetUserProfile(): boolean; +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/common/version.js b/src/miniprogram_npm/@vant/weapp/common/version.js new file mode 100644 index 0000000..5937008 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/common/version.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.canIUseGetUserProfile = exports.canIUseCanvas2d = exports.canIUseNextTick = exports.canIUseGroupSetData = exports.canIUseAnimate = exports.canIUseFormFieldButton = exports.canIUseModel = exports.getSystemInfoSync = void 0; +var systemInfo; +function getSystemInfoSync() { + if (systemInfo == null) { + systemInfo = wx.getSystemInfoSync(); + } + return systemInfo; +} +exports.getSystemInfoSync = getSystemInfoSync; +function compareVersion(v1, v2) { + v1 = v1.split('.'); + v2 = v2.split('.'); + var len = Math.max(v1.length, v2.length); + while (v1.length < len) { + v1.push('0'); + } + while (v2.length < len) { + v2.push('0'); + } + for (var i = 0; i < len; i++) { + var num1 = parseInt(v1[i], 10); + var num2 = parseInt(v2[i], 10); + if (num1 > num2) { + return 1; + } + if (num1 < num2) { + return -1; + } + } + return 0; +} +function gte(version) { + var system = getSystemInfoSync(); + return compareVersion(system.SDKVersion, version) >= 0; +} +function canIUseModel() { + return gte('2.9.3'); +} +exports.canIUseModel = canIUseModel; +function canIUseFormFieldButton() { + return gte('2.10.3'); +} +exports.canIUseFormFieldButton = canIUseFormFieldButton; +function canIUseAnimate() { + return gte('2.9.0'); +} +exports.canIUseAnimate = canIUseAnimate; +function canIUseGroupSetData() { + return gte('2.4.0'); +} +exports.canIUseGroupSetData = canIUseGroupSetData; +function canIUseNextTick() { + try { + return wx.canIUse('nextTick'); + } + catch (e) { + return gte('2.7.1'); + } +} +exports.canIUseNextTick = canIUseNextTick; +function canIUseCanvas2d() { + return gte('2.9.0'); +} +exports.canIUseCanvas2d = canIUseCanvas2d; +function canIUseGetUserProfile() { + return !!wx.getUserProfile; +} +exports.canIUseGetUserProfile = canIUseGetUserProfile; diff --git a/src/miniprogram_npm/@vant/weapp/config-provider/index.d.ts b/src/miniprogram_npm/@vant/weapp/config-provider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/config-provider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/config-provider/index.js b/src/miniprogram_npm/@vant/weapp/config-provider/index.js new file mode 100644 index 0000000..21fb1c4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/config-provider/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + themeVars: { + type: Object, + value: {}, + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/config-provider/index.json b/src/miniprogram_npm/@vant/weapp/config-provider/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/config-provider/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/config-provider/index.wxml b/src/miniprogram_npm/@vant/weapp/config-provider/index.wxml new file mode 100644 index 0000000..3cfb461 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/config-provider/index.wxml @@ -0,0 +1,5 @@ +<wxs src="./index.wxs" module="computed" /> + +<view class="van-config-provider" style="{{ computed.mapThemeVarsToCSSVars(themeVars) }}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/config-provider/index.wxs b/src/miniprogram_npm/@vant/weapp/config-provider/index.wxs new file mode 100644 index 0000000..7ca0203 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/config-provider/index.wxs @@ -0,0 +1,29 @@ +/* eslint-disable */ +var object = require('../wxs/object.wxs'); +var style = require('../wxs/style.wxs'); + +function kebabCase(word) { + var newWord = word + .replace(getRegExp("[A-Z]", 'g'), function (i) { + return '-' + i; + }) + .toLowerCase() + .replace(getRegExp("^-"), ''); + + return newWord; +} + +function mapThemeVarsToCSSVars(themeVars) { + var cssVars = {}; + object.keys(themeVars).forEach(function (key) { + var cssVarsKey = '--' + kebabCase(key); + cssVars[cssVarsKey] = themeVars[key]; + }); + + return style(cssVars); +} + +module.exports = { + kebabCase: kebabCase, + mapThemeVarsToCSSVars: mapThemeVarsToCSSVars, +}; diff --git a/src/miniprogram_npm/@vant/weapp/count-down/index.d.ts b/src/miniprogram_npm/@vant/weapp/count-down/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/count-down/index.js b/src/miniprogram_npm/@vant/weapp/count-down/index.js new file mode 100644 index 0000000..afc780b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/index.js @@ -0,0 +1,104 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("./utils"); +function simpleTick(fn) { + return setTimeout(fn, 30); +} +(0, component_1.VantComponent)({ + props: { + useSlot: Boolean, + millisecond: Boolean, + time: { + type: Number, + observer: 'reset', + }, + format: { + type: String, + value: 'HH:mm:ss', + }, + autoStart: { + type: Boolean, + value: true, + }, + }, + data: { + timeData: (0, utils_1.parseTimeData)(0), + formattedTime: '0', + }, + destroyed: function () { + clearTimeout(this.tid); + this.tid = null; + }, + methods: { + // 开始 + start: function () { + if (this.counting) { + return; + } + this.counting = true; + this.endTime = Date.now() + this.remain; + this.tick(); + }, + // 暂停 + pause: function () { + this.counting = false; + clearTimeout(this.tid); + }, + // 重置 + reset: function () { + this.pause(); + this.remain = this.data.time; + this.setRemain(this.remain); + if (this.data.autoStart) { + this.start(); + } + }, + tick: function () { + if (this.data.millisecond) { + this.microTick(); + } + else { + this.macroTick(); + } + }, + microTick: function () { + var _this = this; + this.tid = simpleTick(function () { + _this.setRemain(_this.getRemain()); + if (_this.remain !== 0) { + _this.microTick(); + } + }); + }, + macroTick: function () { + var _this = this; + this.tid = simpleTick(function () { + var remain = _this.getRemain(); + if (!(0, utils_1.isSameSecond)(remain, _this.remain) || remain === 0) { + _this.setRemain(remain); + } + if (_this.remain !== 0) { + _this.macroTick(); + } + }); + }, + getRemain: function () { + return Math.max(this.endTime - Date.now(), 0); + }, + setRemain: function (remain) { + this.remain = remain; + var timeData = (0, utils_1.parseTimeData)(remain); + if (this.data.useSlot) { + this.$emit('change', timeData); + } + this.setData({ + formattedTime: (0, utils_1.parseFormat)(this.data.format, timeData), + }); + if (remain === 0) { + this.pause(); + this.$emit('finish'); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/count-down/index.json b/src/miniprogram_npm/@vant/weapp/count-down/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/count-down/index.wxml b/src/miniprogram_npm/@vant/weapp/count-down/index.wxml new file mode 100644 index 0000000..e206e16 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/index.wxml @@ -0,0 +1,4 @@ +<view class="van-count-down"> + <slot wx:if="{{ useSlot }}"/> + <block wx:else>{{ formattedTime }}</block> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/count-down/index.wxss b/src/miniprogram_npm/@vant/weapp/count-down/index.wxss new file mode 100644 index 0000000..8b957f7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-count-down{color:var(--count-down-text-color,#323233);font-size:var(--count-down-font-size,14px);line-height:var(--count-down-line-height,20px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/count-down/utils.d.ts b/src/miniprogram_npm/@vant/weapp/count-down/utils.d.ts new file mode 100644 index 0000000..876a6c1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/utils.d.ts @@ -0,0 +1,10 @@ +export type TimeData = { + days: number; + hours: number; + minutes: number; + seconds: number; + milliseconds: number; +}; +export declare function parseTimeData(time: number): TimeData; +export declare function parseFormat(format: string, timeData: TimeData): string; +export declare function isSameSecond(time1: number, time2: number): boolean; diff --git a/src/miniprogram_npm/@vant/weapp/count-down/utils.js b/src/miniprogram_npm/@vant/weapp/count-down/utils.js new file mode 100644 index 0000000..a7cfa5f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/count-down/utils.js @@ -0,0 +1,64 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isSameSecond = exports.parseFormat = exports.parseTimeData = void 0; +function padZero(num, targetLength) { + if (targetLength === void 0) { targetLength = 2; } + var str = num + ''; + while (str.length < targetLength) { + str = '0' + str; + } + return str; +} +var SECOND = 1000; +var MINUTE = 60 * SECOND; +var HOUR = 60 * MINUTE; +var DAY = 24 * HOUR; +function parseTimeData(time) { + var days = Math.floor(time / DAY); + var hours = Math.floor((time % DAY) / HOUR); + var minutes = Math.floor((time % HOUR) / MINUTE); + var seconds = Math.floor((time % MINUTE) / SECOND); + var milliseconds = Math.floor(time % SECOND); + return { + days: days, + hours: hours, + minutes: minutes, + seconds: seconds, + milliseconds: milliseconds, + }; +} +exports.parseTimeData = parseTimeData; +function parseFormat(format, timeData) { + var days = timeData.days; + var hours = timeData.hours, minutes = timeData.minutes, seconds = timeData.seconds, milliseconds = timeData.milliseconds; + if (format.indexOf('DD') === -1) { + hours += days * 24; + } + else { + format = format.replace('DD', padZero(days)); + } + if (format.indexOf('HH') === -1) { + minutes += hours * 60; + } + else { + format = format.replace('HH', padZero(hours)); + } + if (format.indexOf('mm') === -1) { + seconds += minutes * 60; + } + else { + format = format.replace('mm', padZero(minutes)); + } + if (format.indexOf('ss') === -1) { + milliseconds += seconds * 1000; + } + else { + format = format.replace('ss', padZero(seconds)); + } + return format.replace('SSS', padZero(milliseconds, 3)); +} +exports.parseFormat = parseFormat; +function isSameSecond(time1, time2) { + return Math.floor(time1 / 1000) === Math.floor(time2 / 1000); +} +exports.isSameSecond = isSameSecond; diff --git a/src/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/datetime-picker/index.js b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.js new file mode 100644 index 0000000..e30afef --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.js @@ -0,0 +1,329 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var shared_1 = require("../picker/shared"); +var currentYear = new Date().getFullYear(); +function isValidDate(date) { + return (0, validator_1.isDef)(date) && !isNaN(new Date(date).getTime()); +} +function range(num, min, max) { + return Math.min(Math.max(num, min), max); +} +function padZero(val) { + return "00".concat(val).slice(-2); +} +function times(n, iteratee) { + var index = -1; + var result = Array(n < 0 ? 0 : n); + while (++index < n) { + result[index] = iteratee(index); + } + return result; +} +function getTrueValue(formattedValue) { + if (formattedValue === undefined) { + formattedValue = '1'; + } + while (isNaN(parseInt(formattedValue, 10))) { + formattedValue = formattedValue.slice(1); + } + return parseInt(formattedValue, 10); +} +function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +} +var defaultFormatter = function (type, value) { return value; }; +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { value: { + type: null, + observer: 'updateValue', + }, filter: null, type: { + type: String, + value: 'datetime', + observer: 'updateValue', + }, showToolbar: { + type: Boolean, + value: true, + }, formatter: { + type: null, + value: defaultFormatter, + }, minDate: { + type: Number, + value: new Date(currentYear - 10, 0, 1).getTime(), + observer: 'updateValue', + }, maxDate: { + type: Number, + value: new Date(currentYear + 10, 11, 31).getTime(), + observer: 'updateValue', + }, minHour: { + type: Number, + value: 0, + observer: 'updateValue', + }, maxHour: { + type: Number, + value: 23, + observer: 'updateValue', + }, minMinute: { + type: Number, + value: 0, + observer: 'updateValue', + }, maxMinute: { + type: Number, + value: 59, + observer: 'updateValue', + } }), + data: { + innerValue: Date.now(), + columns: [], + }, + methods: { + updateValue: function () { + var _this = this; + var data = this.data; + var val = this.correctValue(data.value); + var isEqual = val === data.innerValue; + this.updateColumnValue(val).then(function () { + if (!isEqual) { + _this.$emit('input', val); + } + }); + }, + getPicker: function () { + if (this.picker == null) { + this.picker = this.selectComponent('.van-datetime-picker'); + var picker_1 = this.picker; + var setColumnValues_1 = picker_1.setColumnValues; + picker_1.setColumnValues = function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return setColumnValues_1.apply(picker_1, __spreadArray(__spreadArray([], args, true), [false], false)); + }; + } + return this.picker; + }, + updateColumns: function () { + var _a = this.data.formatter, formatter = _a === void 0 ? defaultFormatter : _a; + var results = this.getOriginColumns().map(function (column) { return ({ + values: column.values.map(function (value) { return formatter(column.type, value); }), + }); }); + return this.set({ columns: results }); + }, + getOriginColumns: function () { + var filter = this.data.filter; + var results = this.getRanges().map(function (_a) { + var type = _a.type, range = _a.range; + var values = times(range[1] - range[0] + 1, function (index) { + var value = range[0] + index; + return type === 'year' ? "".concat(value) : padZero(value); + }); + if (filter) { + values = filter(type, values); + } + return { type: type, values: values }; + }); + return results; + }, + getRanges: function () { + var data = this.data; + if (data.type === 'time') { + return [ + { + type: 'hour', + range: [data.minHour, data.maxHour], + }, + { + type: 'minute', + range: [data.minMinute, data.maxMinute], + }, + ]; + } + var _a = this.getBoundary('max', data.innerValue), maxYear = _a.maxYear, maxDate = _a.maxDate, maxMonth = _a.maxMonth, maxHour = _a.maxHour, maxMinute = _a.maxMinute; + var _b = this.getBoundary('min', data.innerValue), minYear = _b.minYear, minDate = _b.minDate, minMonth = _b.minMonth, minHour = _b.minHour, minMinute = _b.minMinute; + var result = [ + { + type: 'year', + range: [minYear, maxYear], + }, + { + type: 'month', + range: [minMonth, maxMonth], + }, + { + type: 'day', + range: [minDate, maxDate], + }, + { + type: 'hour', + range: [minHour, maxHour], + }, + { + type: 'minute', + range: [minMinute, maxMinute], + }, + ]; + if (data.type === 'date') + result.splice(3, 2); + if (data.type === 'year-month') + result.splice(2, 3); + return result; + }, + correctValue: function (value) { + var data = this.data; + // validate value + var isDateType = data.type !== 'time'; + if (isDateType && !isValidDate(value)) { + value = data.minDate; + } + else if (!isDateType && !value) { + var minHour = data.minHour; + value = "".concat(padZero(minHour), ":00"); + } + // time type + if (!isDateType) { + var _a = value.split(':'), hour = _a[0], minute = _a[1]; + hour = padZero(range(hour, data.minHour, data.maxHour)); + minute = padZero(range(minute, data.minMinute, data.maxMinute)); + return "".concat(hour, ":").concat(minute); + } + // date type + value = Math.max(value, data.minDate); + value = Math.min(value, data.maxDate); + return value; + }, + getBoundary: function (type, innerValue) { + var _a; + var value = new Date(innerValue); + var boundary = new Date(this.data["".concat(type, "Date")]); + var year = boundary.getFullYear(); + var month = 1; + var date = 1; + var hour = 0; + var minute = 0; + if (type === 'max') { + month = 12; + date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1); + hour = 23; + minute = 59; + } + if (value.getFullYear() === year) { + month = boundary.getMonth() + 1; + if (value.getMonth() + 1 === month) { + date = boundary.getDate(); + if (value.getDate() === date) { + hour = boundary.getHours(); + if (value.getHours() === hour) { + minute = boundary.getMinutes(); + } + } + } + } + return _a = {}, + _a["".concat(type, "Year")] = year, + _a["".concat(type, "Month")] = month, + _a["".concat(type, "Date")] = date, + _a["".concat(type, "Hour")] = hour, + _a["".concat(type, "Minute")] = minute, + _a; + }, + onCancel: function () { + this.$emit('cancel'); + }, + onConfirm: function () { + this.$emit('confirm', this.data.innerValue); + }, + onChange: function () { + var _this = this; + var data = this.data; + var value; + var picker = this.getPicker(); + var originColumns = this.getOriginColumns(); + if (data.type === 'time') { + var indexes = picker.getIndexes(); + value = "".concat(+originColumns[0].values[indexes[0]], ":").concat(+originColumns[1] + .values[indexes[1]]); + } + else { + var indexes = picker.getIndexes(); + var values = indexes.map(function (value, index) { return originColumns[index].values[value]; }); + var year = getTrueValue(values[0]); + var month = getTrueValue(values[1]); + var maxDate = getMonthEndDay(year, month); + var date = getTrueValue(values[2]); + if (data.type === 'year-month') { + date = 1; + } + date = date > maxDate ? maxDate : date; + var hour = 0; + var minute = 0; + if (data.type === 'datetime') { + hour = getTrueValue(values[3]); + minute = getTrueValue(values[4]); + } + value = new Date(year, month - 1, date, hour, minute); + } + value = this.correctValue(value); + this.updateColumnValue(value).then(function () { + _this.$emit('input', value); + _this.$emit('change', picker); + }); + }, + updateColumnValue: function (value) { + var _this = this; + var values = []; + var type = this.data.type; + var formatter = this.data.formatter || defaultFormatter; + var picker = this.getPicker(); + if (type === 'time') { + var pair = value.split(':'); + values = [formatter('hour', pair[0]), formatter('minute', pair[1])]; + } + else { + var date = new Date(value); + values = [ + formatter('year', "".concat(date.getFullYear())), + formatter('month', padZero(date.getMonth() + 1)), + ]; + if (type === 'date') { + values.push(formatter('day', padZero(date.getDate()))); + } + if (type === 'datetime') { + values.push(formatter('day', padZero(date.getDate())), formatter('hour', padZero(date.getHours())), formatter('minute', padZero(date.getMinutes()))); + } + } + return this.set({ innerValue: value }) + .then(function () { return _this.updateColumns(); }) + .then(function () { return picker.setValues(values); }); + }, + }, + created: function () { + var _this = this; + var innerValue = this.correctValue(this.data.value); + this.updateColumnValue(innerValue).then(function () { + _this.$emit('input', innerValue); + }); + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/datetime-picker/index.json b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.json new file mode 100644 index 0000000..a778e91 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-picker": "../picker/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml new file mode 100644 index 0000000..ade2202 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml @@ -0,0 +1,16 @@ +<van-picker + class="van-datetime-picker" + active-class="active-class" + toolbar-class="toolbar-class" + column-class="column-class" + title="{{ title }}" + columns="{{ columns }}" + item-height="{{ itemHeight }}" + show-toolbar="{{ showToolbar }}" + visible-item-count="{{ visibleItemCount }}" + confirm-button-text="{{ confirmButtonText }}" + cancel-button-text="{{ cancelButtonText }}" + bind:change="onChange" + bind:confirm="onConfirm" + bind:cancel="onCancel" +/> diff --git a/src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/definitions/index.d.ts b/src/miniprogram_npm/@vant/weapp/definitions/index.d.ts new file mode 100644 index 0000000..c90321f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/definitions/index.d.ts @@ -0,0 +1,29 @@ +/// <reference types="miniprogram-api-typings" /> +interface VantComponentInstance { + parent: WechatMiniprogram.Component.TrivialInstance; + children: WechatMiniprogram.Component.TrivialInstance[]; + index: number; + $emit: (name: string, detail?: unknown, options?: WechatMiniprogram.Component.TriggerEventOption) => void; + setView: (value: Record<string, any>, callback?: () => void) => void; +} +export type VantComponentOptions<Data extends WechatMiniprogram.Component.DataOption, Props extends WechatMiniprogram.Component.PropertyOption, Methods extends WechatMiniprogram.Component.MethodOption> = { + data?: Data; + field?: boolean; + classes?: string[]; + mixins?: string[]; + props?: Props; + relation?: { + relations: Record<string, WechatMiniprogram.Component.RelationOption>; + mixin: string; + }; + watch?: Record<string, (...args: any[]) => any>; + methods?: Methods; + beforeCreate?: () => void; + created?: () => void; + mounted?: () => void; + destroyed?: () => void; +} & ThisType<VantComponentInstance & WechatMiniprogram.Component.Instance<Data & { + name: string; + value: any; +} & Record<string, any>, Props, Methods> & Record<string, any>>; +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/definitions/index.js b/src/miniprogram_npm/@vant/weapp/definitions/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/definitions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/src/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts b/src/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts new file mode 100644 index 0000000..db2da5f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts @@ -0,0 +1,55 @@ +/// <reference types="miniprogram-api-typings" /> +/// <reference types="miniprogram-api-typings" /> +export type Action = 'confirm' | 'cancel' | 'overlay'; +type DialogContext = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +interface DialogOptions { + lang?: string; + show?: boolean; + title?: string; + width?: string | number | null; + zIndex?: number; + theme?: string; + context?: (() => DialogContext) | DialogContext; + message?: string; + overlay?: boolean; + selector?: string; + ariaLabel?: string; + /** + * @deprecated use custom-class instead + */ + className?: string; + customStyle?: string; + transition?: string; + /** + * @deprecated use beforeClose instead + */ + asyncClose?: boolean; + beforeClose?: null | ((action: Action) => Promise<void | boolean> | void); + businessId?: number; + sessionFrom?: string; + overlayStyle?: string; + appParameter?: string; + messageAlign?: string; + sendMessageImg?: string; + showMessageCard?: boolean; + sendMessagePath?: string; + sendMessageTitle?: string; + confirmButtonText?: string; + cancelButtonText?: string; + showConfirmButton?: boolean; + showCancelButton?: boolean; + closeOnClickOverlay?: boolean; + confirmButtonOpenType?: string; +} +declare const Dialog: { + (options: DialogOptions): Promise<WechatMiniprogram.Component.TrivialInstance>; + alert(options: DialogOptions): Promise<WechatMiniprogram.Component.TrivialInstance>; + confirm(options: DialogOptions): Promise<WechatMiniprogram.Component.TrivialInstance>; + close(): void; + stopLoading(): void; + currentOptions: DialogOptions; + defaultOptions: DialogOptions; + setDefaultOptions(options: DialogOptions): void; + resetDefaultOptions(): void; +}; +export default Dialog; diff --git a/src/miniprogram_npm/@vant/weapp/dialog/dialog.js b/src/miniprogram_npm/@vant/weapp/dialog/dialog.js new file mode 100644 index 0000000..400f4f1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/dialog.js @@ -0,0 +1,92 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var queue = []; +var defaultOptions = { + show: false, + title: '', + width: null, + theme: 'default', + message: '', + zIndex: 100, + overlay: true, + selector: '#van-dialog', + className: '', + asyncClose: false, + beforeClose: null, + transition: 'scale', + customStyle: '', + messageAlign: '', + overlayStyle: '', + confirmButtonText: '确认', + cancelButtonText: '取消', + showConfirmButton: true, + showCancelButton: false, + closeOnClickOverlay: false, + confirmButtonOpenType: '', +}; +var currentOptions = __assign({}, defaultOptions); +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +var Dialog = function (options) { + options = __assign(__assign({}, currentOptions), options); + return new Promise(function (resolve, reject) { + var context = (typeof options.context === 'function' + ? options.context() + : options.context) || getContext(); + var dialog = context.selectComponent(options.selector); + delete options.context; + delete options.selector; + if (dialog) { + dialog.setData(__assign({ callback: function (action, instance) { + action === 'confirm' ? resolve(instance) : reject(instance); + } }, options)); + wx.nextTick(function () { + dialog.setData({ show: true }); + }); + queue.push(dialog); + } + else { + console.warn('未找到 van-dialog 节点,请确认 selector 及 context 是否正确'); + } + }); +}; +Dialog.alert = function (options) { return Dialog(options); }; +Dialog.confirm = function (options) { + return Dialog(__assign({ showCancelButton: true }, options)); +}; +Dialog.close = function () { + queue.forEach(function (dialog) { + dialog.close(); + }); + queue = []; +}; +Dialog.stopLoading = function () { + queue.forEach(function (dialog) { + dialog.stopLoading(); + }); +}; +Dialog.currentOptions = currentOptions; +Dialog.defaultOptions = defaultOptions; +Dialog.setDefaultOptions = function (options) { + currentOptions = __assign(__assign({}, currentOptions), options); + Dialog.currentOptions = currentOptions; +}; +Dialog.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); + Dialog.currentOptions = currentOptions; +}; +Dialog.resetDefaultOptions(); +exports.default = Dialog; diff --git a/src/miniprogram_npm/@vant/weapp/dialog/index.d.ts b/src/miniprogram_npm/@vant/weapp/dialog/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/dialog/index.js b/src/miniprogram_npm/@vant/weapp/dialog/index.js new file mode 100644 index 0000000..b0acfa0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/index.js @@ -0,0 +1,135 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + mixins: [button_1.button], + classes: ['cancle-button-class', 'confirm-button-class'], + props: { + show: { + type: Boolean, + observer: function (show) { + !show && this.stopLoading(); + }, + }, + title: String, + message: String, + theme: { + type: String, + value: 'default', + }, + confirmButtonId: String, + className: String, + customStyle: String, + asyncClose: Boolean, + messageAlign: String, + beforeClose: null, + overlayStyle: String, + useSlot: Boolean, + useTitleSlot: Boolean, + useConfirmButtonSlot: Boolean, + useCancelButtonSlot: Boolean, + showCancelButton: Boolean, + closeOnClickOverlay: Boolean, + confirmButtonOpenType: String, + width: null, + zIndex: { + type: Number, + value: 2000, + }, + confirmButtonText: { + type: String, + value: '确认', + }, + cancelButtonText: { + type: String, + value: '取消', + }, + confirmButtonColor: { + type: String, + value: color_1.RED, + }, + cancelButtonColor: { + type: String, + value: color_1.GRAY, + }, + showConfirmButton: { + type: Boolean, + value: true, + }, + overlay: { + type: Boolean, + value: true, + }, + transition: { + type: String, + value: 'scale', + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + data: { + loading: { + confirm: false, + cancel: false, + }, + callback: (function () { }), + }, + methods: { + onConfirm: function () { + this.handleAction('confirm'); + }, + onCancel: function () { + this.handleAction('cancel'); + }, + onClickOverlay: function () { + this.close('overlay'); + }, + close: function (action) { + var _this = this; + this.setData({ show: false }); + wx.nextTick(function () { + _this.$emit('close', action); + var callback = _this.data.callback; + if (callback) { + callback(action, _this); + } + }); + }, + stopLoading: function () { + this.setData({ + loading: { + confirm: false, + cancel: false, + }, + }); + }, + handleAction: function (action) { + var _a; + var _this = this; + this.$emit(action, { dialog: this }); + var _b = this.data, asyncClose = _b.asyncClose, beforeClose = _b.beforeClose; + if (!asyncClose && !beforeClose) { + this.close(action); + return; + } + this.setData((_a = {}, + _a["loading.".concat(action)] = true, + _a)); + if (beforeClose) { + (0, utils_1.toPromise)(beforeClose(action)).then(function (value) { + if (value) { + _this.close(action); + } + else { + _this.stopLoading(); + } + }); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/dialog/index.json b/src/miniprogram_npm/@vant/weapp/dialog/index.json new file mode 100644 index 0000000..43417fc --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/index.json @@ -0,0 +1,9 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "van-button": "../button/index", + "van-goods-action": "../goods-action/index", + "van-goods-action-button": "../goods-action-button/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/dialog/index.wxml b/src/miniprogram_npm/@vant/weapp/dialog/index.wxml new file mode 100644 index 0000000..a1d8e3c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/index.wxml @@ -0,0 +1,125 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<van-popup + show="{{ show }}" + z-index="{{ zIndex }}" + overlay="{{ overlay }}" + transition="{{ transition }}" + custom-class="van-dialog van-dialog--{{ theme }}{{ className }} custom-class" + custom-style="width: {{ utils.addUnit(width) }};{{ customStyle }}" + overlay-style="{{ overlayStyle }}" + close-on-click-overlay="{{ closeOnClickOverlay }}" + root-portal="{{ rootPortal }}" + bind:close="onClickOverlay" +> + <view + wx:if="{{ title || useTitleSlot }}" + class="{{ utils.bem('dialog__header', { isolated: !(message || useSlot) }) }}" + > + <slot wx:if="{{ useTitleSlot }}" name="title" /> + <block wx:elif="{{ title }}">{{ title }}</block> + </view> + + <slot wx:if="{{ useSlot }}" /> + <view + wx:elif="{{ message }}" + class="{{ utils.bem('dialog__message', [theme, messageAlign, { hasTitle: title }]) }}" + > + <text class="van-dialog__message-text">{{ message }}</text> + </view> + + <van-goods-action wx:if="{{ theme === 'round-button' }}" custom-class="van-dialog__footer--round-button"> + <van-goods-action-button + wx:if="{{ showCancelButton }}" + size="large" + loading="{{ loading.cancel }}" + class="van-dialog__button van-hairline--right" + custom-class="van-dialog__cancel cancle-button-class" + custom-style="color: {{ cancelButtonColor }}" + bind:click="onCancel" + > + {{ cancelButtonText }} + </van-goods-action-button> + <van-goods-action-button + wx:if="{{ showConfirmButton }}" + size="large" + class="van-dialog__button" + loading="{{ loading.confirm }}" + custom-class="van-dialog__confirm confirm-button-class" + custom-style="color: {{ confirmButtonColor }}" + button-id="{{ confirmButtonId }}" + open-type="{{ confirmButtonOpenType }}" + lang="{{ lang }}" + business-id="{{ businessId }}" + session-from="{{ sessionFrom }}" + send-message-title="{{ sendMessageTitle }}" + send-message-path="{{ sendMessagePath }}" + send-message-img="{{ sendMessageImg }}" + show-message-card="{{ showMessageCard }}" + app-parameter="{{ appParameter }}" + bindagreeprivacyauthorization="onAgreePrivacyAuthorization" + bindgetRealTimePhoneNumber="onGetRealTimePhoneNumber" + bind:click="onConfirm" + bindgetuserinfo="onGetUserInfo" + bindcontact="onContact" + bindgetphonenumber="onGetPhoneNumber" + binderror="onError" + bindlaunchapp="onLaunchApp" + bindopensetting="onOpenSetting" + > + {{ confirmButtonText }} + </van-goods-action-button> + </van-goods-action> + + <view wx:elif="{{ showCancelButton || showConfirmButton }}" class="van-hairline--top van-dialog__footer"> + <block wx:if="{{ showCancelButton }}"> + <slot wx:if="{{ useCancelButtonSlot }}" name="cancel-button" /> + + <van-button + wx:else + size="large" + loading="{{ loading.cancel }}" + class="van-dialog__button van-hairline--right" + custom-class="van-dialog__cancel cancle-button-class" + custom-style="color: {{ cancelButtonColor }}" + bind:click="onCancel" + > + {{ cancelButtonText }} + </van-button> + </block> + + <block wx:if="{{ showConfirmButton }}"> + <slot wx:if="{{ useConfirmButtonSlot }}" name="confirm-button" /> + + <van-button + wx:else + size="large" + class="van-dialog__button" + loading="{{ loading.confirm }}" + custom-class="van-dialog__confirm confirm-button-class" + custom-style="color: {{ confirmButtonColor }}" + button-id="{{ confirmButtonId }}" + open-type="{{ confirmButtonOpenType }}" + lang="{{ lang }}" + business-id="{{ businessId }}" + session-from="{{ sessionFrom }}" + send-message-title="{{ sendMessageTitle }}" + send-message-path="{{ sendMessagePath }}" + send-message-img="{{ sendMessageImg }}" + show-message-card="{{ showMessageCard }}" + app-parameter="{{ appParameter }}" + bindagreeprivacyauthorization="onAgreePrivacyAuthorization" + bindgetRealTimePhoneNumber="onGetRealTimePhoneNumber" + bind:click="onConfirm" + bindgetuserinfo="onGetUserInfo" + bindcontact="onContact" + bindgetphonenumber="onGetPhoneNumber" + binderror="onError" + bindlaunchapp="onLaunchApp" + bindopensetting="onOpenSetting" + > + {{ confirmButtonText }} + </van-button> + </block> + </view> +</van-popup> diff --git a/src/miniprogram_npm/@vant/weapp/dialog/index.wxss b/src/miniprogram_npm/@vant/weapp/dialog/index.wxss new file mode 100644 index 0000000..507a789 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dialog/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dialog{background-color:var(--dialog-background-color,#fff);border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,320px)}@media (max-width:321px){.van-dialog{width:var(--dialog-small-screen-width,90%)}}.van-dialog__header{font-weight:var(--dialog-header-font-weight,500);line-height:var(--dialog-header-line-height,24px);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.van-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.van-dialog__message{-webkit-overflow-scrolling:touch;font-size:var(--dialog-message-font-size,14px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.van-dialog__message-text{word-wrap:break-word}.van-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,#646566);padding-top:var(--dialog-has-title-message-padding-top,8px)}.van-dialog__message--round-button{color:#323233;padding-bottom:16px}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__message--justify{text-align:justify}.van-dialog__footer{display:flex}.van-dialog__footer--round-button{padding:8px 24px 16px!important;position:relative!important}.van-dialog__button{flex:1}.van-dialog__cancel,.van-dialog__confirm{border:0!important}.van-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.van-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/divider/index.d.ts b/src/miniprogram_npm/@vant/weapp/divider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/divider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/divider/index.js b/src/miniprogram_npm/@vant/weapp/divider/index.js new file mode 100644 index 0000000..5c63844 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/divider/index.js @@ -0,0 +1,14 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + dashed: Boolean, + hairline: Boolean, + contentPosition: String, + fontSize: String, + borderColor: String, + textColor: String, + customStyle: String, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/divider/index.json b/src/miniprogram_npm/@vant/weapp/divider/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/divider/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/src/miniprogram_npm/@vant/weapp/divider/index.wxml b/src/miniprogram_npm/@vant/weapp/divider/index.wxml new file mode 100644 index 0000000..f6a5a45 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/divider/index.wxml @@ -0,0 +1,9 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="custom-class {{ utils.bem('divider', [{ dashed, hairline }, contentPosition]) }}" + style="{{ computed.rootStyle({ borderColor, textColor, fontSize, customStyle }) }}" +> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/divider/index.wxs b/src/miniprogram_npm/@vant/weapp/divider/index.wxs new file mode 100644 index 0000000..215b14f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/divider/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style([ + { + 'border-color': data.borderColor, + color: data.textColor, + 'font-size': addUnit(data.fontSize), + }, + data.customStyle, + ]); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/divider/index.wxss b/src/miniprogram_npm/@vant/weapp/divider/index.wxss new file mode 100644 index 0000000..e91dc44 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/divider/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-divider{align-items:center;border:0 solid var(--divider-border-color,#ebedf0);color:var(--divider-text-color,#969799);display:flex;font-size:var(--divider-font-size,14px);line-height:var(--divider-line-height,24px);margin:var(--divider-margin,16px 0)}.van-divider:after,.van-divider:before{border-color:inherit;border-style:inherit;border-width:1px 0 0;box-sizing:border-box;display:block;flex:1;height:1px}.van-divider:before{content:""}.van-divider--hairline:after,.van-divider--hairline:before{transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--center:before,.van-divider--left:before,.van-divider--right:before{margin-right:var(--divider-content-padding,16px)}.van-divider--center:after,.van-divider--left:after,.van-divider--right:after{content:"";margin-left:var(--divider-content-padding,16px)}.van-divider--left:before{max-width:var(--divider-content-left-width,10%)}.van-divider--right:after{max-width:var(--divider-content-right-width,10%)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/index.js b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.js new file mode 100644 index 0000000..826c26a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.js @@ -0,0 +1,136 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['item-title-class'], + field: true, + relation: (0, relation_1.useParent)('dropdown-menu', function () { + this.updateDataFromParent(); + }), + props: { + value: { + type: null, + observer: 'rerender', + }, + title: { + type: String, + observer: 'rerender', + }, + disabled: Boolean, + titleClass: { + type: String, + observer: 'rerender', + }, + options: { + type: Array, + value: [], + observer: 'rerender', + }, + popupStyle: String, + useBeforeToggle: { + type: Boolean, + value: false, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + data: { + transition: true, + showPopup: false, + showWrapper: false, + displayTitle: '', + safeAreaTabBar: false, + }, + methods: { + rerender: function () { + var _this = this; + wx.nextTick(function () { + var _a; + (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.updateItemListData(); + }); + }, + updateDataFromParent: function () { + if (this.parent) { + var _a = this.parent.data, overlay = _a.overlay, duration = _a.duration, activeColor = _a.activeColor, closeOnClickOverlay = _a.closeOnClickOverlay, direction = _a.direction, safeAreaTabBar = _a.safeAreaTabBar; + this.setData({ + overlay: overlay, + duration: duration, + activeColor: activeColor, + closeOnClickOverlay: closeOnClickOverlay, + direction: direction, + safeAreaTabBar: safeAreaTabBar, + }); + } + }, + onOpen: function () { + this.$emit('open'); + }, + onOpened: function () { + this.$emit('opened'); + }, + onClose: function () { + this.$emit('close'); + }, + onClosed: function () { + this.$emit('closed'); + this.setData({ showWrapper: false }); + }, + onOptionTap: function (event) { + var option = event.currentTarget.dataset.option; + var value = option.value; + var shouldEmitChange = this.data.value !== value; + this.setData({ showPopup: false, value: value }); + this.$emit('close'); + this.rerender(); + if (shouldEmitChange) { + this.$emit('change', value); + } + }, + toggle: function (show, options) { + var _this = this; + if (options === void 0) { options = {}; } + var showPopup = this.data.showPopup; + if (typeof show !== 'boolean') { + show = !showPopup; + } + if (show === showPopup) { + return; + } + this.onBeforeToggle(show).then(function (status) { + var _a; + if (!status) { + return; + } + _this.setData({ + transition: !options.immediate, + showPopup: show, + }); + if (show) { + (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.getChildWrapperStyle().then(function (wrapperStyle) { + _this.setData({ wrapperStyle: wrapperStyle, showWrapper: true }); + _this.rerender(); + }); + } + else { + _this.rerender(); + } + }); + }, + onBeforeToggle: function (status) { + var _this = this; + var useBeforeToggle = this.data.useBeforeToggle; + if (!useBeforeToggle) { + return Promise.resolve(true); + } + return new Promise(function (resolve) { + _this.$emit('before-toggle', { + status: status, + callback: function (value) { return resolve(value); }, + }); + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/index.json b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.json new file mode 100644 index 0000000..88d5409 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "van-cell": "../cell/index", + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml new file mode 100644 index 0000000..63904f4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml @@ -0,0 +1,50 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + wx:if="{{ showWrapper }}" + class="{{ utils.bem('dropdown-item', direction) }} custom-class" + style="{{ wrapperStyle }}" +> + <van-popup + show="{{ showPopup }}" + custom-style="position: absolute;{{ popupStyle }}" + overlay-style="position: absolute;" + overlay="{{ overlay }}" + position="{{ direction === 'down' ? 'top' : 'bottom' }}" + duration="{{ transition ? duration : 0 }}" + safe-area-tab-bar="{{ safeAreaTabBar }}" + close-on-click-overlay="{{ closeOnClickOverlay }}" + rootPortal="{{ rootPortal }}" + bind:enter="onOpen" + bind:leave="onClose" + bind:close="toggle" + bind:after-enter="onOpened" + bind:after-leave="onClosed" + > + <van-cell + wx:for="{{ options }}" + wx:key="value" + data-option="{{ item }}" + class="{{ utils.bem('dropdown-item__option', { active: item.value === value } ) }}" + clickable + icon="{{ item.icon }}" + bind:tap="onOptionTap" + > + <view + slot="title" + class="van-dropdown-item__title item-title-class" + style="{{ item.value === value ? 'color:' + activeColor : '' }}" + > + {{ item.text }} + </view> + <van-icon + wx:if="{{ item.value === value }}" + name="success" + class="van-dropdown-item__icon" + color="{{ activeColor }}" + /> + </van-cell> + + <slot /> + </van-popup> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss new file mode 100644 index 0000000..80505e9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dropdown-item{left:0;overflow:hidden;position:fixed;right:0}.van-dropdown-item__option{text-align:left}.van-dropdown-item__option--active .van-dropdown-item__icon,.van-dropdown-item__option--active .van-dropdown-item__title{color:var(--dropdown-menu-option-active-color,#ee0a24)}.van-dropdown-item--up{top:0}.van-dropdown-item--down{bottom:0}.van-dropdown-item__icon{display:block;line-height:inherit} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts b/src/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts new file mode 100644 index 0000000..774eb4c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts @@ -0,0 +1,5 @@ +export interface Option { + text: string; + value: string | number; + icon: string; +} diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-item/shared.js b/src/miniprogram_npm/@vant/weapp/dropdown-item/shared.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-item/shared.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.js b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.js new file mode 100644 index 0000000..aed2921 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +var ARRAY = []; +(0, component_1.VantComponent)({ + field: true, + classes: ['title-class'], + relation: (0, relation_1.useChildren)('dropdown-item', function () { + this.updateItemListData(); + }), + props: { + activeColor: { + type: String, + observer: 'updateChildrenData', + }, + overlay: { + type: Boolean, + value: true, + observer: 'updateChildrenData', + }, + zIndex: { + type: Number, + value: 10, + }, + duration: { + type: Number, + value: 200, + observer: 'updateChildrenData', + }, + direction: { + type: String, + value: 'down', + observer: 'updateChildrenData', + }, + safeAreaTabBar: { + type: Boolean, + value: false, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + observer: 'updateChildrenData', + }, + closeOnClickOutside: { + type: Boolean, + value: true, + }, + }, + data: { + itemListData: [], + }, + beforeCreate: function () { + var windowHeight = (0, utils_1.getSystemInfoSync)().windowHeight; + this.windowHeight = windowHeight; + ARRAY.push(this); + }, + destroyed: function () { + var _this = this; + ARRAY = ARRAY.filter(function (item) { return item !== _this; }); + }, + methods: { + updateItemListData: function () { + this.setData({ + itemListData: this.children.map(function (child) { return child.data; }), + }); + }, + updateChildrenData: function () { + this.children.forEach(function (child) { + child.updateDataFromParent(); + }); + }, + toggleItem: function (active) { + this.children.forEach(function (item, index) { + var showPopup = item.data.showPopup; + if (index === active) { + item.toggle(); + } + else if (showPopup) { + item.toggle(false, { immediate: true }); + } + }); + }, + close: function () { + this.children.forEach(function (child) { + child.toggle(false, { immediate: true }); + }); + }, + getChildWrapperStyle: function () { + var _this = this; + var _a = this.data, zIndex = _a.zIndex, direction = _a.direction; + return (0, utils_1.getRect)(this, '.van-dropdown-menu').then(function (rect) { + var _a = rect.top, top = _a === void 0 ? 0 : _a, _b = rect.bottom, bottom = _b === void 0 ? 0 : _b; + var offset = direction === 'down' ? bottom : _this.windowHeight - top; + var wrapperStyle = "z-index: ".concat(zIndex, ";"); + if (direction === 'down') { + wrapperStyle += "top: ".concat((0, utils_1.addUnit)(offset), ";"); + } + else { + wrapperStyle += "bottom: ".concat((0, utils_1.addUnit)(offset), ";"); + } + return wrapperStyle; + }); + }, + onTitleTap: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var child = this.children[index]; + if (!child.data.disabled) { + ARRAY.forEach(function (menuItem) { + if (menuItem && + menuItem.data.closeOnClickOutside && + menuItem !== _this) { + menuItem.close(); + } + }); + this.toggleItem(index); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.json b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml new file mode 100644 index 0000000..ec165a9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml @@ -0,0 +1,23 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="van-dropdown-menu van-dropdown-menu--top-bottom custom-class"> + <view + wx:for="{{ itemListData }}" + wx:key="index" + data-index="{{ index }}" + class="{{ utils.bem('dropdown-menu__item', { disabled: item.disabled }) }}" + bind:tap="onTitleTap" + > + <view + class="{{ item.titleClass }} {{ utils.bem('dropdown-menu__title', { active: item.showPopup, down: item.showPopup === (direction === 'down') }) }} title-class" + style="{{ item.showPopup ? 'color:' + activeColor : '' }}" + > + <view class="van-ellipsis"> + {{ computed.displayTitle(item) }} + </view> + </view> + </view> + + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs new file mode 100644 index 0000000..6538854 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs @@ -0,0 +1,16 @@ +/* eslint-disable */ +function displayTitle(item) { + if (item.title) { + return item.title; + } + + var match = item.options.filter(function(option) { + return option.value === item.value; + }); + var displayTitle = match.length ? match[0].text : ''; + return displayTitle; +} + +module.exports = { + displayTitle: displayTitle +}; diff --git a/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss new file mode 100644 index 0000000..dba000e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dropdown-menu{background-color:var(--dropdown-menu-background-color,#fff);box-shadow:var(--dropdown-menu-box-shadow,0 2px 12px hsla(210,1%,40%,.12));display:flex;height:var(--dropdown-menu-height,50px);-webkit-user-select:none;user-select:none}.van-dropdown-menu__item{align-items:center;display:flex;flex:1;justify-content:center;min-width:0}.van-dropdown-menu__item:active{opacity:.7}.van-dropdown-menu__item--disabled:active{opacity:1}.van-dropdown-menu__item--disabled .van-dropdown-menu__title{color:var(--dropdown-menu-title-disabled-text-color,#969799)}.van-dropdown-menu__title{box-sizing:border-box;color:var(--dropdown-menu-title-text-color,#323233);font-size:var(--dropdown-menu-title-font-size,15px);line-height:var(--dropdown-menu-title-line-height,18px);max-width:100%;padding:var(--dropdown-menu-title-padding,0 24px 0 8px);position:relative}.van-dropdown-menu__title:after{border-color:transparent transparent currentcolor currentcolor;border-style:solid;border-width:3px;content:"";margin-top:-5px;opacity:.8;position:absolute;right:11px;top:50%;transform:rotate(-45deg)}.van-dropdown-menu__title--active{color:var(--dropdown-menu-title-active-text-color,#ee0a24)}.van-dropdown-menu__title--down:after{margin-top:-1px;transform:rotate(135deg)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/empty/index.d.ts b/src/miniprogram_npm/@vant/weapp/empty/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/empty/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/empty/index.js b/src/miniprogram_npm/@vant/weapp/empty/index.js new file mode 100644 index 0000000..755e638 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/empty/index.js @@ -0,0 +1,12 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + description: String, + image: { + type: String, + value: 'default', + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/empty/index.json b/src/miniprogram_npm/@vant/weapp/empty/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/empty/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/src/miniprogram_npm/@vant/weapp/empty/index.wxml b/src/miniprogram_npm/@vant/weapp/empty/index.wxml new file mode 100644 index 0000000..9c7b719 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/empty/index.wxml @@ -0,0 +1,22 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="custom-class van-empty"> + <view class="van-empty__image"> + <slot name="image"></slot> + </view> + <view class="van-empty__image"> + <image wx:if="{{ image }}" class="van-empty__image__img" src="{{ computed.imageUrl(image) }}" /> + </view> + + <view class="van-empty__description"> + <slot name="description"></slot> + </view> + <view class="van-empty__description"> + {{ description }} + </view> + + <view class="van-empty__bottom"> + <slot></slot> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/empty/index.wxs b/src/miniprogram_npm/@vant/weapp/empty/index.wxs new file mode 100644 index 0000000..cf92ece --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/empty/index.wxs @@ -0,0 +1,15 @@ +/* eslint-disable */ +var PRESETS = ['error', 'search', 'default', 'network']; + +function imageUrl(image) { + if (PRESETS.indexOf(image) !== -1) { + return 'https://img.yzcdn.cn/vant/empty-image-' + image + '.png'; + } + + return image; +} + +module.exports = { + imageUrl: imageUrl, +}; + diff --git a/src/miniprogram_npm/@vant/weapp/empty/index.wxss b/src/miniprogram_npm/@vant/weapp/empty/index.wxss new file mode 100644 index 0000000..0fb74fe --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/empty/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-empty{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:32px 0}.van-empty__image{height:160px;width:160px}.van-empty__image:empty{display:none}.van-empty__image__img{height:100%;width:100%}.van-empty__image:not(:empty)+.van-empty__image{display:none}.van-empty__description{color:#969799;font-size:14px;line-height:20px;margin-top:16px;padding:0 60px}.van-empty__description:empty,.van-empty__description:not(:empty)+.van-empty__description{display:none}.van-empty__bottom{margin-top:24px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/field/index.d.ts b/src/miniprogram_npm/@vant/weapp/field/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/field/index.js b/src/miniprogram_npm/@vant/weapp/field/index.js new file mode 100644 index 0000000..ee64d5f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/index.js @@ -0,0 +1,152 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var props_1 = require("./props"); +(0, component_1.VantComponent)({ + field: true, + classes: ['input-class', 'right-icon-class', 'label-class'], + props: __assign(__assign(__assign(__assign({}, props_1.commonProps), props_1.inputProps), props_1.textareaProps), { size: String, icon: String, label: String, error: Boolean, center: Boolean, isLink: Boolean, leftIcon: String, rightIcon: String, autosize: null, required: Boolean, iconClass: String, clickable: Boolean, inputAlign: String, customStyle: String, errorMessage: String, arrowDirection: String, showWordLimit: Boolean, errorMessageAlign: String, readonly: { + type: Boolean, + observer: 'setShowClear', + }, clearable: { + type: Boolean, + observer: 'setShowClear', + }, clearTrigger: { + type: String, + value: 'focus', + }, border: { + type: Boolean, + value: true, + }, titleWidth: { + type: String, + value: '6.2em', + }, clearIcon: { + type: String, + value: 'clear', + }, extraEventParams: { + type: Boolean, + value: false, + } }), + data: { + focused: false, + innerValue: '', + showClear: false, + }, + watch: { + value: function (value) { + if (value !== this.value) { + this.setData({ innerValue: value }); + this.value = value; + this.setShowClear(); + } + }, + clearTrigger: function () { + this.setShowClear(); + }, + }, + created: function () { + this.value = this.data.value; + this.setData({ innerValue: this.value }); + }, + methods: { + formatValue: function (value) { + var maxlength = this.data.maxlength; + if (maxlength !== -1 && value.length > maxlength) { + return value.slice(0, maxlength); + } + return value; + }, + onInput: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + var formatValue = this.formatValue(value); + this.value = formatValue; + this.setShowClear(); + return this.emitChange(__assign(__assign({}, event.detail), { value: formatValue })); + }, + onFocus: function (event) { + this.focused = true; + this.setShowClear(); + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + this.focused = false; + this.setShowClear(); + this.$emit('blur', event.detail); + }, + onClickIcon: function () { + this.$emit('click-icon'); + }, + onClickInput: function (event) { + this.$emit('click-input', event.detail); + }, + onClear: function () { + var _this = this; + this.setData({ innerValue: '' }); + this.value = ''; + this.setShowClear(); + (0, utils_1.nextTick)(function () { + _this.emitChange({ value: '' }); + _this.$emit('clear', ''); + }); + }, + onConfirm: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + this.value = value; + this.setShowClear(); + this.$emit('confirm', value); + }, + setValue: function (value) { + this.value = value; + this.setShowClear(); + if (value === '') { + this.setData({ innerValue: '' }); + } + this.emitChange({ value: value }); + }, + onLineChange: function (event) { + this.$emit('linechange', event.detail); + }, + onKeyboardHeightChange: function (event) { + this.$emit('keyboardheightchange', event.detail); + }, + onBindNicknameReview: function (event) { + this.$emit('nicknamereview', event.detail); + }, + emitChange: function (detail) { + var extraEventParams = this.data.extraEventParams; + this.setData({ value: detail.value }); + var result; + var data = extraEventParams + ? __assign(__assign({}, detail), { callback: function (data) { + result = data; + } }) : detail.value; + this.$emit('input', data); + this.$emit('change', data); + return result; + }, + setShowClear: function () { + var _a = this.data, clearable = _a.clearable, readonly = _a.readonly, clearTrigger = _a.clearTrigger; + var _b = this, focused = _b.focused, value = _b.value; + var showClear = false; + if (clearable && !readonly) { + var hasValue = !!value; + var trigger = clearTrigger === 'always' || (clearTrigger === 'focus' && focused); + showClear = hasValue && trigger; + } + this.setView({ showClear: showClear }); + }, + noop: function () { }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/field/index.json b/src/miniprogram_npm/@vant/weapp/field/index.json new file mode 100644 index 0000000..5906c50 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index", + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/field/index.wxml b/src/miniprogram_npm/@vant/weapp/field/index.wxml new file mode 100644 index 0000000..6018993 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/index.wxml @@ -0,0 +1,56 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<van-cell + size="{{ size }}" + icon="{{ leftIcon }}" + center="{{ center }}" + border="{{ border }}" + is-link="{{ isLink }}" + required="{{ required }}" + clickable="{{ clickable }}" + title-width="{{ titleWidth }}" + title-style="margin-right: 12px;" + custom-style="{{ customStyle }}" + arrow-direction="{{ arrowDirection }}" + custom-class="custom-class van-field" +> + <slot name="left-icon" slot="icon" /> + <label for="{{ name }}" wx:if="{{ label }}" class="label-class {{ utils.bem('field__label', { disabled }) }}" slot="title"> + {{ label }} + </label> + <slot wx:else name="label" slot="title" /> + <view class="{{ utils.bem('field__body', [type]) }}"> + <view class="{{ utils.bem('field__control', [inputAlign, 'custom']) }}" bindtap="onClickInput"> + <slot name="input" /> + </view> + <include wx:if="{{ type === 'textarea' }}" src="./textarea.wxml" /> + <include wx:else src="./input.wxml" /> + + <van-icon + wx:if="{{ showClear }}" + name="{{ clearIcon }}" + class="van-field__clear-root van-field__icon-root" + catch:touchstart="onClear" + /> + <view class="van-field__icon-container" bind:tap="onClickIcon"> + <van-icon + wx:if="{{ rightIcon || icon }}" + name="{{ rightIcon || icon }}" + class="van-field__icon-root {{ iconClass }}" + custom-class="right-icon-class" + /> + <slot name="right-icon" /> + <slot name="icon" /> + </view> + <view class="van-field__button"> + <slot name="button" /> + </view> + </view> + <label for="{{ name }}" wx:if="{{ showWordLimit && maxlength }}" class="van-field__word-limit"> + <view class="{{ utils.bem('field__word-num', { full: value.length >= maxlength }) }}">{{ value.length >= maxlength ? maxlength : value.length }}</view>/{{ maxlength }} + </label> + <label for="{{ name }}" wx:if="{{ errorMessage }}" class="{{ utils.bem('field__error-message', [errorMessageAlign, { disabled, error }]) }}"> + {{ errorMessage }} + </label> +</van-cell> diff --git a/src/miniprogram_npm/@vant/weapp/field/index.wxs b/src/miniprogram_npm/@vant/weapp/field/index.wxs new file mode 100644 index 0000000..78575b9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function inputStyle(autosize) { + if (autosize && autosize.constructor === 'Object') { + return style({ + 'min-height': addUnit(autosize.minHeight), + 'max-height': addUnit(autosize.maxHeight), + }); + } + + return ''; +} + +module.exports = { + inputStyle: inputStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/field/index.wxss b/src/miniprogram_npm/@vant/weapp/field/index.wxss new file mode 100644 index 0000000..5f7d306 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-field{--cell-icon-size:var(--field-icon-size,16px)}.van-field__label{color:var(--field-label-color,#646566)}.van-field__label--disabled{color:var(--field-disabled-text-color,#c8c9cc)}.van-field__body{align-items:center;display:flex}.van-field__body--textarea{box-sizing:border-box;line-height:1.2em;min-height:var(--cell-line-height,24px);padding:3.6px 0}.van-field__control:empty+.van-field__control{display:block}.van-field__control{background-color:initial;border:0;box-sizing:border-box;color:var(--field-input-text-color,#323233);display:none;height:var(--cell-line-height,24px);line-height:inherit;margin:0;min-height:var(--cell-line-height,24px);padding:0;position:relative;resize:none;text-align:left;width:100%}.van-field__control:empty{display:none}.van-field__control--textarea{height:var(--field-text-area-min-height,18px);min-height:var(--field-text-area-min-height,18px)}.van-field__control--error{color:var(--field-input-error-text-color,#ee0a24)}.van-field__control--disabled{background-color:initial;color:var(--field-input-disabled-text-color,#c8c9cc);opacity:1}.van-field__control--center{text-align:center}.van-field__control--right{text-align:right}.van-field__control--custom{align-items:center;display:flex;min-height:var(--cell-line-height,24px)}.van-field__placeholder{color:var(--field-placeholder-text-color,#c8c9cc);left:0;pointer-events:none;position:absolute;right:0;top:0}.van-field__placeholder--error{color:var(--field-error-message-color,#ee0a24)}.van-field__icon-root{align-items:center;display:flex;min-height:var(--cell-line-height,24px)}.van-field__clear-root,.van-field__icon-container{line-height:inherit;margin-right:calc(var(--padding-xs, 8px)*-1);padding:0 var(--padding-xs,8px);vertical-align:middle}.van-field__button,.van-field__clear-root,.van-field__icon-container{flex-shrink:0}.van-field__clear-root{color:var(--field-clear-icon-color,#c8c9cc);font-size:var(--field-clear-icon-size,16px)}.van-field__icon-container{color:var(--field-icon-container-color,#969799);font-size:var(--field-icon-size,16px)}.van-field__icon-container:empty{display:none}.van-field__button{padding-left:var(--padding-xs,8px)}.van-field__button:empty{display:none}.van-field__error-message{color:var(--field-error-message-color,#ee0a24);display:block;font-size:var(--field-error-message-text-font-size,12px);text-align:left}.van-field__error-message--center{text-align:center}.van-field__error-message--right{text-align:right}.van-field__word-limit{color:var(--field-word-limit-color,#646566);font-size:var(--field-word-limit-font-size,12px);line-height:var(--field-word-limit-line-height,16px);margin-top:var(--padding-base,4px);text-align:right}.van-field__word-num{display:inline}.van-field__word-num--full{color:var(--field-word-num-full-color,#ee0a24)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/field/input.wxml b/src/miniprogram_npm/@vant/weapp/field/input.wxml new file mode 100644 index 0000000..86b288b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/input.wxml @@ -0,0 +1,31 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<input + id="{{ name }}" + class="{{ utils.bem('field__control', [inputAlign, { disabled, error }]) }} input-class" + type="{{ type }}" + focus="{{ focus }}" + cursor="{{ cursor }}" + value="{{ innerValue }}" + auto-focus="{{ autoFocus }}" + disabled="{{ disabled || readonly }}" + maxlength="{{ maxlength }}" + placeholder="{{ placeholder }}" + placeholder-style="{{ placeholderStyle }}" + placeholder-class="{{ utils.bem('field__placeholder', { error }) }}" + confirm-type="{{ confirmType }}" + confirm-hold="{{ confirmHold }}" + hold-keyboard="{{ holdKeyboard }}" + cursor-spacing="{{ cursorSpacing }}" + adjust-position="{{ adjustPosition }}" + selection-end="{{ selectionEnd }}" + selection-start="{{ selectionStart }}" + always-embed="{{ alwaysEmbed }}" + password="{{ password || type === 'password' }}" + bindinput="onInput" + bindtap="onClickInput" + bindblur="onBlur" + bindfocus="onFocus" + bindconfirm="onConfirm" + bindkeyboardheightchange="onKeyboardHeightChange" + bindnicknamereview="onBindNicknameReview" +/> diff --git a/src/miniprogram_npm/@vant/weapp/field/props.d.ts b/src/miniprogram_npm/@vant/weapp/field/props.d.ts new file mode 100644 index 0000000..5cd130a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/props.d.ts @@ -0,0 +1,4 @@ +/// <reference types="miniprogram-api-typings" /> +export declare const commonProps: WechatMiniprogram.Component.PropertyOption; +export declare const inputProps: WechatMiniprogram.Component.PropertyOption; +export declare const textareaProps: WechatMiniprogram.Component.PropertyOption; diff --git a/src/miniprogram_npm/@vant/weapp/field/props.js b/src/miniprogram_npm/@vant/weapp/field/props.js new file mode 100644 index 0000000..5ec647b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/props.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.textareaProps = exports.inputProps = exports.commonProps = void 0; +exports.commonProps = { + value: String, + placeholder: String, + placeholderStyle: String, + placeholderClass: String, + disabled: Boolean, + maxlength: { + type: Number, + value: -1, + }, + cursorSpacing: { + type: Number, + value: 50, + }, + autoFocus: Boolean, + focus: Boolean, + cursor: { + type: Number, + value: -1, + }, + selectionStart: { + type: Number, + value: -1, + }, + selectionEnd: { + type: Number, + value: -1, + }, + adjustPosition: { + type: Boolean, + value: true, + }, + holdKeyboard: Boolean, +}; +exports.inputProps = { + type: { + type: String, + value: 'text', + }, + password: Boolean, + confirmType: String, + confirmHold: Boolean, + alwaysEmbed: Boolean, +}; +exports.textareaProps = { + autoHeight: Boolean, + fixed: Boolean, + showConfirmBar: { + type: Boolean, + value: true, + }, + disableDefaultPadding: { + type: Boolean, + value: true, + }, +}; diff --git a/src/miniprogram_npm/@vant/weapp/field/textarea.wxml b/src/miniprogram_npm/@vant/weapp/field/textarea.wxml new file mode 100644 index 0000000..945d03e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/textarea.wxml @@ -0,0 +1,32 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> +<textarea + id="{{ name }}" + class="{{ utils.bem('field__control', [inputAlign, type, { disabled, error }]) }} input-class" + fixed="{{ fixed }}" + focus="{{ focus }}" + cursor="{{ cursor }}" + value="{{ innerValue }}" + auto-focus="{{ autoFocus }}" + disabled="{{ disabled || readonly }}" + maxlength="{{ maxlength }}" + placeholder="{{ placeholder }}" + placeholder-style="{{ placeholderStyle }}" + placeholder-class="{{ utils.bem('field__placeholder', { error, disabled }) }}" + auto-height="{{ !!autosize }}" + style="{{ computed.inputStyle(autosize) }}" + cursor-spacing="{{ cursorSpacing }}" + adjust-position="{{ adjustPosition }}" + show-confirm-bar="{{ showConfirmBar }}" + hold-keyboard="{{ holdKeyboard }}" + selection-end="{{ selectionEnd }}" + selection-start="{{ selectionStart }}" + disable-default-padding="{{ disableDefaultPadding }}" + bindinput="onInput" + bindtap="onClickInput" + bindblur="onBlur" + bindfocus="onFocus" + bindconfirm="onConfirm" + bindlinechange="onLineChange" + bindkeyboardheightchange="onKeyboardHeightChange" +/> diff --git a/src/miniprogram_npm/@vant/weapp/field/types.d.ts b/src/miniprogram_npm/@vant/weapp/field/types.d.ts new file mode 100644 index 0000000..357ccbe --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/types.d.ts @@ -0,0 +1,8 @@ +export interface InputDetails { + /** 输入框内容 */ + value: string; + /** 光标位置 */ + cursor?: number; + /** keyCode 为键值 (目前工具还不支持返回keyCode参数) `2.1.0` 起支持 */ + keyCode?: number; +} diff --git a/src/miniprogram_npm/@vant/weapp/field/types.js b/src/miniprogram_npm/@vant/weapp/field/types.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/field/types.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-button/index.js b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.js new file mode 100644 index 0000000..8179e89 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.js @@ -0,0 +1,46 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var button_1 = require("../mixins/button"); +var link_1 = require("../mixins/link"); +(0, component_1.VantComponent)({ + mixins: [link_1.link, button_1.button], + relation: (0, relation_1.useParent)('goods-action'), + props: { + text: String, + color: String, + size: { + type: String, + value: 'normal', + }, + loading: Boolean, + disabled: Boolean, + plain: Boolean, + type: { + type: String, + value: 'danger', + }, + customStyle: { + type: String, + value: '', + }, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + updateStyle: function () { + if (this.parent == null) { + return; + } + var index = this.index; + var _a = this.parent.children, children = _a === void 0 ? [] : _a; + this.setData({ + isFirst: index === 0, + isLast: index === children.length - 1, + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-button/index.json b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.json new file mode 100644 index 0000000..b567686 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-button": "../button/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml new file mode 100644 index 0000000..4530ab8 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml @@ -0,0 +1,35 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<van-button + id="{{ id }}" + button-id="{{ buttonId }}" + lang="{{ lang }}" + type="{{ type }}" + size="{{ size }}" + color="{{ color }}" + plain="{{ plain }}" + loading="{{ loading }}" + disabled="{{ disabled }}" + open-type="{{ openType }}" + class="{{ utils.bem('goods-action-button', [type, { first: isFirst, last: isLast, plain: plain }])}}" + custom-class="van-goods-action-button__inner custom-class" + custom-style="{{customStyle}}" + business-id="{{ businessId }}" + session-from="{{ sessionFrom }}" + app-parameter="{{ appParameter }}" + send-message-img="{{ sendMessageImg }}" + send-message-path="{{ sendMessagePath }}" + show-message-card="{{ showMessageCard }}" + send-message-title="{{ sendMessageTitle }}" + bind:click="onClick" + binderror="onError" + bindcontact="onContact" + bindopensetting="onOpenSetting" + bindgetuserinfo="onGetUserInfo" + bindagreeprivacyauthorization="onAgreePrivacyAuthorization" + bindgetRealTimePhoneNumber="onGetRealTimePhoneNumber" + bindgetphonenumber="onGetPhoneNumber" + bindlaunchapp="onLaunchApp" +> + {{ text }} + <slot></slot> +</van-button> diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss new file mode 100644 index 0000000..759a1d9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{flex:1}.van-goods-action-button{--button-warning-background-color:var(--goods-action-button-warning-color,linear-gradient(to right,#ffd01e,#ff8917));--button-danger-background-color:var(--goods-action-button-danger-color,linear-gradient(to right,#ff6034,#ee0a24));--button-default-height:var(--goods-action-button-height,40px);--button-line-height:var(--goods-action-button-line-height,20px);--button-plain-background-color:var(--goods-action-button-plain-color,#fff);--button-border-width:0;display:block}.van-goods-action-button--first{--button-border-radius:999px 0 0 var(--goods-action-button-border-radius,999px);margin-left:5px}.van-goods-action-button--last{--button-border-radius:0 999px var(--goods-action-button-border-radius,999px) 0;margin-right:5px}.van-goods-action-button--first.van-goods-action-button--last{--button-border-radius:var(--goods-action-button-border-radius,999px)}.van-goods-action-button--plain{--button-border-width:1px}.van-goods-action-button__inner{font-weight:var(--font-weight-bold,500)!important;width:100%}@media (max-width:321px){.van-goods-action-button{font-size:13px}} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.js b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.js new file mode 100644 index 0000000..828e1f5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var link_1 = require("../mixins/link"); +(0, component_1.VantComponent)({ + classes: ['icon-class', 'text-class', 'info-class'], + mixins: [link_1.link, button_1.button], + props: { + text: String, + dot: Boolean, + info: String, + icon: String, + size: String, + color: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + disabled: Boolean, + loading: Boolean, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.json b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.json new file mode 100644 index 0000000..93bfe8a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-button": "../button/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml new file mode 100644 index 0000000..30c1a8c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml @@ -0,0 +1,41 @@ +<van-button + square + id="{{ id }}" + size="large" + lang="{{ lang }}" + loading="{{ loading }}" + disabled="{{ disabled }}" + open-type="{{ openType }}" + business-id="{{ businessId }}" + custom-class="van-goods-action-icon" + session-from="{{ sessionFrom }}" + app-parameter="{{ appParameter }}" + send-message-img="{{ sendMessageImg }}" + send-message-path="{{ sendMessagePath }}" + show-message-card="{{ showMessageCard }}" + send-message-title="{{ sendMessageTitle }}" + bind:click="onClick" + binderror="onError" + bindcontact="onContact" + bindopensetting="onOpenSetting" + bindgetuserinfo="onGetUserInfo" + bindgetphonenumber="onGetPhoneNumber" + bindlaunchapp="onLaunchApp" +> + <van-icon + wx:if="{{ icon }}" + name="{{ icon }}" + dot="{{ dot }}" + info="{{ info }}" + size="{{ size }}" + color="{{ color }}" + class-prefix="{{ classPrefix }}" + class="van-goods-action-icon__icon" + custom-class="icon-class" + info-class="info-class" + /> + <view wx:else> + <slot name="icon" /> + </view> + <text class="text-class">{{ text }}</text> +</van-button> diff --git a/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss new file mode 100644 index 0000000..6e4758d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-goods-action-icon{border:none!important;color:var(--goods-action-icon-text-color,#646566)!important;display:flex!important;flex-direction:column;font-size:var(--goods-action-icon-font-size,10px)!important;height:var(--goods-action-icon-height,50px)!important;justify-content:center!important;line-height:1!important;min-width:var(--goods-action-icon-width,48px)}.van-goods-action-icon__icon{color:var(--goods-action-icon-color,#323233);display:flex;font-size:var(--goods-action-icon-size,18px);margin:0 auto 5px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/goods-action/index.d.ts b/src/miniprogram_npm/@vant/weapp/goods-action/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/goods-action/index.js b/src/miniprogram_npm/@vant/weapp/goods-action/index.js new file mode 100644 index 0000000..e49bcbc --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action/index.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('goods-action-button', function () { + this.children.forEach(function (item) { + item.updateStyle(); + }); + }), + props: { + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/goods-action/index.json b/src/miniprogram_npm/@vant/weapp/goods-action/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/goods-action/index.wxml b/src/miniprogram_npm/@vant/weapp/goods-action/index.wxml new file mode 100644 index 0000000..569450c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action/index.wxml @@ -0,0 +1,5 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="custom-class {{ utils.bem('goods-action', { safe: safeAreaInsetBottom }) }}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/goods-action/index.wxss b/src/miniprogram_npm/@vant/weapp/goods-action/index.wxss new file mode 100644 index 0000000..7793e77 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/goods-action/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-goods-action{align-items:center;background-color:var(--goods-action-background-color,#fff);bottom:0;box-sizing:initial;display:flex;height:var(--goods-action-height,50px);left:0;position:fixed;right:0}.van-goods-action--safe{padding-bottom:env(safe-area-inset-bottom)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/grid-item/index.d.ts b/src/miniprogram_npm/@vant/weapp/grid-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/grid-item/index.js b/src/miniprogram_npm/@vant/weapp/grid-item/index.js new file mode 100644 index 0000000..a7d47a2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid-item/index.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var link_1 = require("../mixins/link"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('grid'), + classes: ['content-class', 'icon-class', 'text-class'], + mixins: [link_1.link], + props: { + icon: String, + iconColor: String, + iconPrefix: { + type: String, + value: 'van-icon', + }, + dot: Boolean, + info: null, + badge: null, + text: String, + useSlot: Boolean, + }, + data: { + viewStyle: '', + }, + mounted: function () { + this.updateStyle(); + }, + methods: { + updateStyle: function () { + if (!this.parent) { + return; + } + var _a = this.parent, data = _a.data, children = _a.children; + var columnNum = data.columnNum, border = data.border, square = data.square, gutter = data.gutter, clickable = data.clickable, center = data.center, direction = data.direction, reverse = data.reverse, iconSize = data.iconSize; + this.setData({ + center: center, + border: border, + square: square, + gutter: gutter, + clickable: clickable, + direction: direction, + reverse: reverse, + iconSize: iconSize, + index: children.indexOf(this), + columnNum: columnNum, + }); + }, + onClick: function () { + this.$emit('click'); + this.jumpLink(); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/grid-item/index.json b/src/miniprogram_npm/@vant/weapp/grid-item/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/grid-item/index.wxml b/src/miniprogram_npm/@vant/weapp/grid-item/index.wxml new file mode 100644 index 0000000..e95087d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid-item/index.wxml @@ -0,0 +1,27 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="custom-class {{ utils.bem('grid-item', { square }) }}" + style="{{ computed.wrapperStyle({ square, gutter, columnNum, index }) }}" + bindtap="onClick" +> + <view + class="content-class {{ utils.bem('grid-item__content', [direction, { center, square, reverse, clickable, surround: border && gutter }]) }} {{ border ? 'van-hairline--surround' : '' }}" + style="{{ computed.contentStyle({ square, gutter }) }}" + > + <block wx:if="{{ useSlot }}"> + <slot /> + </block> + <block wx:else> + <view class="van-grid-item__icon icon-class"> + <van-icon wx:if="{{ icon }}" name="{{ icon }}" color="{{ iconColor }}" class-prefix="{{ iconPrefix }}" dot="{{ dot }}" info="{{ badge || info }}" size="{{ iconSize }}" /> + <slot wx:else name="icon"></slot> + </view> + <view class="van-grid-item__text text-class"> + <text wx:if="{{ text }}">{{ text }}</text> + <slot wx:else name="text"></slot> + </view> + </block> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/grid-item/index.wxs b/src/miniprogram_npm/@vant/weapp/grid-item/index.wxs new file mode 100644 index 0000000..2cfe37d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid-item/index.wxs @@ -0,0 +1,32 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function wrapperStyle(data) { + var width = 100 / data.columnNum + '%'; + + return style({ + width: width, + 'padding-top': data.square ? width : null, + 'padding-right': addUnit(data.gutter), + 'margin-top': + data.index >= data.columnNum && !data.square + ? addUnit(data.gutter) + : null, + }); +} + +function contentStyle(data) { + return data.square + ? style({ + right: addUnit(data.gutter), + bottom: addUnit(data.gutter), + height: 'auto', + }) + : ''; +} + +module.exports = { + wrapperStyle: wrapperStyle, + contentStyle: contentStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/grid-item/index.wxss b/src/miniprogram_npm/@vant/weapp/grid-item/index.wxss new file mode 100644 index 0000000..acaea84 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-grid-item{box-sizing:border-box;float:left;position:relative}.van-grid-item--square{height:0}.van-grid-item__content{background-color:var(--grid-item-content-background-color,#fff);box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:var(--grid-item-content-padding,16px 8px)}.van-grid-item__content:after{border-width:0 1px 1px 0;z-index:1}.van-grid-item__content--surround:after{border-width:1px}.van-grid-item__content--center{align-items:center;justify-content:center}.van-grid-item__content--square{left:0;position:absolute;right:0;top:0}.van-grid-item__content--horizontal{flex-direction:row}.van-grid-item__content--horizontal .van-grid-item__text{margin:0 0 0 8px}.van-grid-item__content--reverse{flex-direction:column-reverse}.van-grid-item__content--reverse .van-grid-item__text{margin:0 0 8px}.van-grid-item__content--horizontal.van-grid-item__content--reverse{flex-direction:row-reverse}.van-grid-item__content--horizontal.van-grid-item__content--reverse .van-grid-item__text{margin:0 8px 0 0}.van-grid-item__content--clickable:active{background-color:var(--grid-item-content-active-color,#f2f3f5)}.van-grid-item__icon{align-items:center;display:flex;font-size:var(--grid-item-icon-size,26px);height:var(--grid-item-icon-size,26px)}.van-grid-item__text{word-wrap:break-word;color:var(--grid-item-text-color,#646566);font-size:var(--grid-item-text-font-size,12px)}.van-grid-item__icon+.van-grid-item__text{margin-top:8px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/grid/index.d.ts b/src/miniprogram_npm/@vant/weapp/grid/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/grid/index.js b/src/miniprogram_npm/@vant/weapp/grid/index.js new file mode 100644 index 0000000..28d14f4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid/index.js @@ -0,0 +1,57 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('grid-item'), + props: { + square: { + type: Boolean, + observer: 'updateChildren', + }, + gutter: { + type: null, + value: 0, + observer: 'updateChildren', + }, + clickable: { + type: Boolean, + observer: 'updateChildren', + }, + columnNum: { + type: Number, + value: 4, + observer: 'updateChildren', + }, + center: { + type: Boolean, + value: true, + observer: 'updateChildren', + }, + border: { + type: Boolean, + value: true, + observer: 'updateChildren', + }, + direction: { + type: String, + observer: 'updateChildren', + }, + iconSize: { + type: String, + observer: 'updateChildren', + }, + reverse: { + type: Boolean, + value: false, + observer: 'updateChildren', + }, + }, + methods: { + updateChildren: function () { + this.children.forEach(function (child) { + child.updateStyle(); + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/grid/index.json b/src/miniprogram_npm/@vant/weapp/grid/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/grid/index.wxml b/src/miniprogram_npm/@vant/weapp/grid/index.wxml new file mode 100644 index 0000000..2e4118f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid/index.wxml @@ -0,0 +1,8 @@ +<wxs src="./index.wxs" module="computed" /> + +<view + class="van-grid custom-class {{ border && !gutter ? 'van-hairline--top' : '' }}" + style="{{ computed.rootStyle({ gutter }) }}" +> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/grid/index.wxs b/src/miniprogram_npm/@vant/weapp/grid/index.wxs new file mode 100644 index 0000000..cd3b1bd --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid/index.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style({ + 'padding-left': addUnit(data.gutter), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/grid/index.wxss b/src/miniprogram_npm/@vant/weapp/grid/index.wxss new file mode 100644 index 0000000..e347440 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/grid/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-grid{box-sizing:border-box;overflow:hidden;position:relative} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/icon/index.d.ts b/src/miniprogram_npm/@vant/weapp/icon/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/icon/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/icon/index.js b/src/miniprogram_npm/@vant/weapp/icon/index.js new file mode 100644 index 0000000..6758092 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/icon/index.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['info-class'], + props: { + dot: Boolean, + info: null, + size: null, + color: String, + customStyle: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + name: String, + }, + methods: { + onClick: function () { + this.$emit('click'); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/icon/index.json b/src/miniprogram_npm/@vant/weapp/icon/index.json new file mode 100644 index 0000000..bf0ebe0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/icon/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-info": "../info/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/icon/index.wxml b/src/miniprogram_npm/@vant/weapp/icon/index.wxml new file mode 100644 index 0000000..91b47f9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/icon/index.wxml @@ -0,0 +1,20 @@ +<wxs src="./index.wxs" module="computed" /> + +<view + class="{{ computed.rootClass({ classPrefix, name }) }}" + style="{{ computed.rootStyle({ customStyle, color, size }) }}" + bindtap="onClick" +> + <van-info + wx:if="{{ info !== null || dot }}" + dot="{{ dot }}" + info="{{ info }}" + custom-class="van-icon__info info-class" + /> + <image + wx:if="{{ computed.isImage(name) }}" + src="{{ name }}" + mode="aspectFit" + class="van-icon__image" + /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/icon/index.wxs b/src/miniprogram_npm/@vant/weapp/icon/index.wxs new file mode 100644 index 0000000..a906f76 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/icon/index.wxs @@ -0,0 +1,43 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function isImage(name) { + return name.indexOf('/') !== -1; +} + +function rootClass(data) { + var classes = ['custom-class']; + + if (data.classPrefix !== 'van-icon') { + classes.push('van-icon--custom') + } + + if (data.classPrefix != null) { + classes.push(data.classPrefix); + } + + if (isImage(data.name)) { + classes.push('van-icon--image'); + } else if (data.classPrefix != null) { + classes.push(data.classPrefix + '-' + data.name); + } + + return classes.join(' '); +} + +function rootStyle(data) { + return style([ + { + color: data.color, + 'font-size': addUnit(data.size), + }, + data.customStyle, + ]); +} + +module.exports = { + isImage: isImage, + rootClass: rootClass, + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/icon/index.wxss b/src/miniprogram_npm/@vant/weapp/icon/index.wxss new file mode 100644 index 0000000..feb3d7e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/icon/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-icon{text-rendering:auto;-webkit-font-smoothing:antialiased;font:normal normal normal 14px/1 vant-icon;font:normal normal normal 14px/1 var(--van-icon-font-family,"vant-icon");font-size:inherit;position:relative}.van-icon,.van-icon:before{display:inline-block}.van-icon-contact:before{content:"\e753"}.van-icon-notes:before{content:"\e63c"}.van-icon-records:before{content:"\e63d"}.van-icon-cash-back-record:before{content:"\e63e"}.van-icon-newspaper:before{content:"\e63f"}.van-icon-discount:before{content:"\e640"}.van-icon-completed:before{content:"\e641"}.van-icon-user:before{content:"\e642"}.van-icon-description:before{content:"\e643"}.van-icon-list-switch:before{content:"\e6ad"}.van-icon-list-switching:before{content:"\e65a"}.van-icon-link-o:before{content:"\e751"}.van-icon-miniprogram-o:before{content:"\e752"}.van-icon-qq:before{content:"\e74e"}.van-icon-wechat-moments:before{content:"\e74f"}.van-icon-weibo:before{content:"\e750"}.van-icon-cash-o:before{content:"\e74d"}.van-icon-guide-o:before{content:"\e74c"}.van-icon-invitation:before{content:"\e6d6"}.van-icon-shield-o:before{content:"\e74b"}.van-icon-exchange:before{content:"\e6af"}.van-icon-eye:before{content:"\e6b0"}.van-icon-enlarge:before{content:"\e6b1"}.van-icon-expand-o:before{content:"\e6b2"}.van-icon-eye-o:before{content:"\e6b3"}.van-icon-expand:before{content:"\e6b4"}.van-icon-filter-o:before{content:"\e6b5"}.van-icon-fire:before{content:"\e6b6"}.van-icon-fail:before{content:"\e6b7"}.van-icon-failure:before{content:"\e6b8"}.van-icon-fire-o:before{content:"\e6b9"}.van-icon-flag-o:before{content:"\e6ba"}.van-icon-font:before{content:"\e6bb"}.van-icon-font-o:before{content:"\e6bc"}.van-icon-gem-o:before{content:"\e6bd"}.van-icon-flower-o:before{content:"\e6be"}.van-icon-gem:before{content:"\e6bf"}.van-icon-gift-card:before{content:"\e6c0"}.van-icon-friends:before{content:"\e6c1"}.van-icon-friends-o:before{content:"\e6c2"}.van-icon-gold-coin:before{content:"\e6c3"}.van-icon-gold-coin-o:before{content:"\e6c4"}.van-icon-good-job-o:before{content:"\e6c5"}.van-icon-gift:before{content:"\e6c6"}.van-icon-gift-o:before{content:"\e6c7"}.van-icon-gift-card-o:before{content:"\e6c8"}.van-icon-good-job:before{content:"\e6c9"}.van-icon-home-o:before{content:"\e6ca"}.van-icon-goods-collect:before{content:"\e6cb"}.van-icon-graphic:before{content:"\e6cc"}.van-icon-goods-collect-o:before{content:"\e6cd"}.van-icon-hot-o:before{content:"\e6ce"}.van-icon-info:before{content:"\e6cf"}.van-icon-hotel-o:before{content:"\e6d0"}.van-icon-info-o:before{content:"\e6d1"}.van-icon-hot-sale-o:before{content:"\e6d2"}.van-icon-hot:before{content:"\e6d3"}.van-icon-like:before{content:"\e6d4"}.van-icon-idcard:before{content:"\e6d5"}.van-icon-like-o:before{content:"\e6d7"}.van-icon-hot-sale:before{content:"\e6d8"}.van-icon-location-o:before{content:"\e6d9"}.van-icon-location:before{content:"\e6da"}.van-icon-label:before{content:"\e6db"}.van-icon-lock:before{content:"\e6dc"}.van-icon-label-o:before{content:"\e6dd"}.van-icon-map-marked:before{content:"\e6de"}.van-icon-logistics:before{content:"\e6df"}.van-icon-manager:before{content:"\e6e0"}.van-icon-more:before{content:"\e6e1"}.van-icon-live:before{content:"\e6e2"}.van-icon-manager-o:before{content:"\e6e3"}.van-icon-medal:before{content:"\e6e4"}.van-icon-more-o:before{content:"\e6e5"}.van-icon-music-o:before{content:"\e6e6"}.van-icon-music:before{content:"\e6e7"}.van-icon-new-arrival-o:before{content:"\e6e8"}.van-icon-medal-o:before{content:"\e6e9"}.van-icon-new-o:before{content:"\e6ea"}.van-icon-free-postage:before{content:"\e6eb"}.van-icon-newspaper-o:before{content:"\e6ec"}.van-icon-new-arrival:before{content:"\e6ed"}.van-icon-minus:before{content:"\e6ee"}.van-icon-orders-o:before{content:"\e6ef"}.van-icon-new:before{content:"\e6f0"}.van-icon-paid:before{content:"\e6f1"}.van-icon-notes-o:before{content:"\e6f2"}.van-icon-other-pay:before{content:"\e6f3"}.van-icon-pause-circle:before{content:"\e6f4"}.van-icon-pause:before{content:"\e6f5"}.van-icon-pause-circle-o:before{content:"\e6f6"}.van-icon-peer-pay:before{content:"\e6f7"}.van-icon-pending-payment:before{content:"\e6f8"}.van-icon-passed:before{content:"\e6f9"}.van-icon-plus:before{content:"\e6fa"}.van-icon-phone-circle-o:before{content:"\e6fb"}.van-icon-phone-o:before{content:"\e6fc"}.van-icon-printer:before{content:"\e6fd"}.van-icon-photo-fail:before{content:"\e6fe"}.van-icon-phone:before{content:"\e6ff"}.van-icon-photo-o:before{content:"\e700"}.van-icon-play-circle:before{content:"\e701"}.van-icon-play:before{content:"\e702"}.van-icon-phone-circle:before{content:"\e703"}.van-icon-point-gift-o:before{content:"\e704"}.van-icon-point-gift:before{content:"\e705"}.van-icon-play-circle-o:before{content:"\e706"}.van-icon-shrink:before{content:"\e707"}.van-icon-photo:before{content:"\e708"}.van-icon-qr:before{content:"\e709"}.van-icon-qr-invalid:before{content:"\e70a"}.van-icon-question-o:before{content:"\e70b"}.van-icon-revoke:before{content:"\e70c"}.van-icon-replay:before{content:"\e70d"}.van-icon-service:before{content:"\e70e"}.van-icon-question:before{content:"\e70f"}.van-icon-search:before{content:"\e710"}.van-icon-refund-o:before{content:"\e711"}.van-icon-service-o:before{content:"\e712"}.van-icon-scan:before{content:"\e713"}.van-icon-share:before{content:"\e714"}.van-icon-send-gift-o:before{content:"\e715"}.van-icon-share-o:before{content:"\e716"}.van-icon-setting:before{content:"\e717"}.van-icon-points:before{content:"\e718"}.van-icon-photograph:before{content:"\e719"}.van-icon-shop:before{content:"\e71a"}.van-icon-shop-o:before{content:"\e71b"}.van-icon-shop-collect-o:before{content:"\e71c"}.van-icon-shop-collect:before{content:"\e71d"}.van-icon-smile:before{content:"\e71e"}.van-icon-shopping-cart-o:before{content:"\e71f"}.van-icon-sign:before{content:"\e720"}.van-icon-sort:before{content:"\e721"}.van-icon-star-o:before{content:"\e722"}.van-icon-smile-comment-o:before{content:"\e723"}.van-icon-stop:before{content:"\e724"}.van-icon-stop-circle-o:before{content:"\e725"}.van-icon-smile-o:before{content:"\e726"}.van-icon-star:before{content:"\e727"}.van-icon-success:before{content:"\e728"}.van-icon-stop-circle:before{content:"\e729"}.van-icon-records-o:before{content:"\e72a"}.van-icon-shopping-cart:before{content:"\e72b"}.van-icon-tosend:before{content:"\e72c"}.van-icon-todo-list:before{content:"\e72d"}.van-icon-thumb-circle-o:before{content:"\e72e"}.van-icon-thumb-circle:before{content:"\e72f"}.van-icon-umbrella-circle:before{content:"\e730"}.van-icon-underway:before{content:"\e731"}.van-icon-upgrade:before{content:"\e732"}.van-icon-todo-list-o:before{content:"\e733"}.van-icon-tv-o:before{content:"\e734"}.van-icon-underway-o:before{content:"\e735"}.van-icon-user-o:before{content:"\e736"}.van-icon-vip-card-o:before{content:"\e737"}.van-icon-vip-card:before{content:"\e738"}.van-icon-send-gift:before{content:"\e739"}.van-icon-wap-home:before{content:"\e73a"}.van-icon-wap-nav:before{content:"\e73b"}.van-icon-volume-o:before{content:"\e73c"}.van-icon-video:before{content:"\e73d"}.van-icon-wap-home-o:before{content:"\e73e"}.van-icon-volume:before{content:"\e73f"}.van-icon-warning:before{content:"\e740"}.van-icon-weapp-nav:before{content:"\e741"}.van-icon-wechat-pay:before{content:"\e742"}.van-icon-warning-o:before{content:"\e743"}.van-icon-wechat:before{content:"\e744"}.van-icon-setting-o:before{content:"\e745"}.van-icon-youzan-shield:before{content:"\e746"}.van-icon-warn-o:before{content:"\e747"}.van-icon-smile-comment:before{content:"\e748"}.van-icon-user-circle-o:before{content:"\e749"}.van-icon-video-o:before{content:"\e74a"}.van-icon-add-square:before{content:"\e65c"}.van-icon-add:before{content:"\e65d"}.van-icon-arrow-down:before{content:"\e65e"}.van-icon-arrow-up:before{content:"\e65f"}.van-icon-arrow:before{content:"\e660"}.van-icon-after-sale:before{content:"\e661"}.van-icon-add-o:before{content:"\e662"}.van-icon-alipay:before{content:"\e663"}.van-icon-ascending:before{content:"\e664"}.van-icon-apps-o:before{content:"\e665"}.van-icon-aim:before{content:"\e666"}.van-icon-award:before{content:"\e667"}.van-icon-arrow-left:before{content:"\e668"}.van-icon-award-o:before{content:"\e669"}.van-icon-audio:before{content:"\e66a"}.van-icon-bag-o:before{content:"\e66b"}.van-icon-balance-list:before{content:"\e66c"}.van-icon-back-top:before{content:"\e66d"}.van-icon-bag:before{content:"\e66e"}.van-icon-balance-pay:before{content:"\e66f"}.van-icon-balance-o:before{content:"\e670"}.van-icon-bar-chart-o:before{content:"\e671"}.van-icon-bars:before{content:"\e672"}.van-icon-balance-list-o:before{content:"\e673"}.van-icon-birthday-cake-o:before{content:"\e674"}.van-icon-bookmark:before{content:"\e675"}.van-icon-bill:before{content:"\e676"}.van-icon-bell:before{content:"\e677"}.van-icon-browsing-history-o:before{content:"\e678"}.van-icon-browsing-history:before{content:"\e679"}.van-icon-bookmark-o:before{content:"\e67a"}.van-icon-bulb-o:before{content:"\e67b"}.van-icon-bullhorn-o:before{content:"\e67c"}.van-icon-bill-o:before{content:"\e67d"}.van-icon-calendar-o:before{content:"\e67e"}.van-icon-brush-o:before{content:"\e67f"}.van-icon-card:before{content:"\e680"}.van-icon-cart-o:before{content:"\e681"}.van-icon-cart-circle:before{content:"\e682"}.van-icon-cart-circle-o:before{content:"\e683"}.van-icon-cart:before{content:"\e684"}.van-icon-cash-on-deliver:before{content:"\e685"}.van-icon-cash-back-record-o:before{content:"\e686"}.van-icon-cashier-o:before{content:"\e687"}.van-icon-chart-trending-o:before{content:"\e688"}.van-icon-certificate:before{content:"\e689"}.van-icon-chat:before{content:"\e68a"}.van-icon-clear:before{content:"\e68b"}.van-icon-chat-o:before{content:"\e68c"}.van-icon-checked:before{content:"\e68d"}.van-icon-clock:before{content:"\e68e"}.van-icon-clock-o:before{content:"\e68f"}.van-icon-close:before{content:"\e690"}.van-icon-closed-eye:before{content:"\e691"}.van-icon-circle:before{content:"\e692"}.van-icon-cluster-o:before{content:"\e693"}.van-icon-column:before{content:"\e694"}.van-icon-comment-circle-o:before{content:"\e695"}.van-icon-cluster:before{content:"\e696"}.van-icon-comment:before{content:"\e697"}.van-icon-comment-o:before{content:"\e698"}.van-icon-comment-circle:before{content:"\e699"}.van-icon-completed-o:before{content:"\e69a"}.van-icon-credit-pay:before{content:"\e69b"}.van-icon-coupon:before{content:"\e69c"}.van-icon-debit-pay:before{content:"\e69d"}.van-icon-coupon-o:before{content:"\e69e"}.van-icon-contact-o:before{content:"\e69f"}.van-icon-descending:before{content:"\e6a0"}.van-icon-desktop-o:before{content:"\e6a1"}.van-icon-diamond-o:before{content:"\e6a2"}.van-icon-description-o:before{content:"\e6a3"}.van-icon-delete:before{content:"\e6a4"}.van-icon-diamond:before{content:"\e6a5"}.van-icon-delete-o:before{content:"\e6a6"}.van-icon-cross:before{content:"\e6a7"}.van-icon-edit:before{content:"\e6a8"}.van-icon-ellipsis:before{content:"\e6a9"}.van-icon-down:before{content:"\e6aa"}.van-icon-discount-o:before{content:"\e6ab"}.van-icon-ecard-pay:before{content:"\e6ac"}.van-icon-envelop-o:before{content:"\e6ae"}@font-face{font-display:auto;font-family:vant-icon;font-style:normal;font-weight:400;src:url(//at.alicdn.com/t/c/font_2553510_kfwma2yq1rs.woff2?t=1694918397022) format("woff2"),url(//at.alicdn.com/t/c/font_2553510_kfwma2yq1rs.woff?t=1694918397022) format("woff")}:host{align-items:center;display:inline-flex;justify-content:center}.van-icon--custom{position:relative}.van-icon--image{height:1em;width:1em}.van-icon__image{height:100%;width:100%}.van-icon__info{z-index:1} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/image/index.d.ts b/src/miniprogram_npm/@vant/weapp/image/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/image/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/image/index.js b/src/miniprogram_npm/@vant/weapp/image/index.js new file mode 100644 index 0000000..40f6812 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/image/index.js @@ -0,0 +1,66 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +(0, component_1.VantComponent)({ + mixins: [button_1.button], + classes: ['custom-class', 'loading-class', 'error-class', 'image-class'], + props: { + src: { + type: String, + observer: function () { + this.setData({ + error: false, + loading: true, + }); + }, + }, + round: Boolean, + width: null, + height: null, + radius: null, + lazyLoad: Boolean, + useErrorSlot: Boolean, + useLoadingSlot: Boolean, + showMenuByLongpress: Boolean, + fit: { + type: String, + value: 'fill', + }, + webp: { + type: Boolean, + value: false, + }, + showError: { + type: Boolean, + value: true, + }, + showLoading: { + type: Boolean, + value: true, + }, + }, + data: { + error: false, + loading: true, + viewStyle: '', + }, + methods: { + onLoad: function (event) { + this.setData({ + loading: false, + }); + this.$emit('load', event.detail); + }, + onError: function (event) { + this.setData({ + loading: false, + error: true, + }); + this.$emit('error', event.detail); + }, + onClick: function (event) { + this.$emit('click', event.detail); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/image/index.json b/src/miniprogram_npm/@vant/weapp/image/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/image/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/image/index.wxml b/src/miniprogram_npm/@vant/weapp/image/index.wxml new file mode 100644 index 0000000..a6f573c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/image/index.wxml @@ -0,0 +1,35 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + style="{{ computed.rootStyle({ width, height, radius }) }}" + class="custom-class {{ utils.bem('image', { round })}}" + bind:tap="onClick" +> + <image + wx:if="{{ !error }}" + src="{{ src }}" + mode="{{ computed.mode(fit) }}" + lazy-load="{{ lazyLoad }}" + webp="{{ webp }}" + class="image-class van-image__img" + show-menu-by-longpress="{{ showMenuByLongpress }}" + bind:load="onLoad" + bind:error="onError" + /> + + <view + wx:if="{{ loading && showLoading }}" + class="loading-class van-image__loading" + > + <slot wx:if="{{ useLoadingSlot }}" name="loading" /> + <van-icon wx:else name="photo" custom-class="van-image__loading-icon" /> + </view> + <view + wx:if="{{ error && showError }}" + class="error-class van-image__error" + > + <slot wx:if="{{ useErrorSlot }}" name="error" /> + <van-icon wx:else name="photo-fail" custom-class="van-image__error-icon" /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/image/index.wxs b/src/miniprogram_npm/@vant/weapp/image/index.wxs new file mode 100644 index 0000000..cec14b8 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/image/index.wxs @@ -0,0 +1,32 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style([ + { + width: addUnit(data.width), + height: addUnit(data.height), + 'border-radius': addUnit(data.radius), + }, + data.radius ? 'overflow: hidden' : null, + ]); +} + +var FIT_MODE_MAP = { + none: 'center', + fill: 'scaleToFill', + cover: 'aspectFill', + contain: 'aspectFit', + widthFix: 'widthFix', + heightFix: 'heightFix', +}; + +function mode(fit) { + return FIT_MODE_MAP[fit]; +} + +module.exports = { + rootStyle: rootStyle, + mode: mode, +}; diff --git a/src/miniprogram_npm/@vant/weapp/image/index.wxss b/src/miniprogram_npm/@vant/weapp/image/index.wxss new file mode 100644 index 0000000..a9c6ebb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/image/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-image{display:inline-block;position:relative}.van-image--round{border-radius:50%;overflow:hidden}.van-image--round .van-image__img{border-radius:inherit}.van-image__error,.van-image__img,.van-image__loading{display:block;height:100%;width:100%}.van-image__error,.van-image__loading{align-items:center;background-color:var(--image-placeholder-background-color,#f7f8fa);color:var(--image-placeholder-text-color,#969799);display:flex;flex-direction:column;font-size:var(--image-placeholder-font-size,14px);justify-content:center;left:0;position:absolute;top:0}.van-image__loading-icon{color:var(--image-loading-icon-color,#dcdee0);font-size:var(--image-loading-icon-size,32px)!important}.van-image__error-icon{color:var(--image-error-icon-color,#dcdee0);font-size:var(--image-error-icon-size,32px)!important} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts b/src/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/index-anchor/index.js b/src/miniprogram_npm/@vant/weapp/index-anchor/index.js new file mode 100644 index 0000000..9a361a9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-anchor/index.js @@ -0,0 +1,28 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('index-bar'), + props: { + useSlot: Boolean, + index: null, + }, + data: { + active: false, + wrapperStyle: '', + anchorStyle: '', + }, + methods: { + scrollIntoView: function (scrollTop) { + var _this = this; + (0, utils_1.getRect)(this, '.van-index-anchor-wrapper').then(function (rect) { + wx.pageScrollTo({ + duration: 0, + scrollTop: scrollTop + rect.top - _this.parent.data.stickyOffsetTop, + }); + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/index-anchor/index.json b/src/miniprogram_npm/@vant/weapp/index-anchor/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-anchor/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/index-anchor/index.wxml b/src/miniprogram_npm/@vant/weapp/index-anchor/index.wxml new file mode 100644 index 0000000..49affa7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-anchor/index.wxml @@ -0,0 +1,14 @@ +<view + class="van-index-anchor-wrapper" + style="{{ wrapperStyle }}" +> + <view + class="van-index-anchor {{ active ? 'van-index-anchor--active van-hairline--bottom' : '' }}" + style="{{ anchorStyle }}" + > + <slot wx:if="{{ useSlot }}"/> + <block wx:else> + <text>{{ index }}</text> + </block> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/index-anchor/index.wxss b/src/miniprogram_npm/@vant/weapp/index-anchor/index.wxss new file mode 100644 index 0000000..4b91560 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-anchor/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-index-anchor{background-color:var(--index-anchor-background-color,transparent);color:var(--index-anchor-text-color,#323233);font-size:var(--index-anchor-font-size,14px);font-weight:var(--index-anchor-font-weight,500);line-height:var(--index-anchor-line-height,32px);padding:var(--index-anchor-padding,0 16px)}.van-index-anchor--active{background-color:var(--index-anchor-active-background-color,#fff);color:var(--index-anchor-active-text-color,#07c160);left:0;right:0} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/index-bar/index.d.ts b/src/miniprogram_npm/@vant/weapp/index-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/index-bar/index.js b/src/miniprogram_npm/@vant/weapp/index-bar/index.js new file mode 100644 index 0000000..afc5412 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-bar/index.js @@ -0,0 +1,243 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +var page_scroll_1 = require("../mixins/page-scroll"); +var indexList = function () { + var indexList = []; + var charCodeOfA = 'A'.charCodeAt(0); + for (var i = 0; i < 26; i++) { + indexList.push(String.fromCharCode(charCodeOfA + i)); + } + return indexList; +}; +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('index-anchor', function () { + this.updateData(); + }), + props: { + sticky: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 1, + }, + highlightColor: { + type: String, + value: color_1.GREEN, + }, + stickyOffsetTop: { + type: Number, + value: 0, + }, + indexList: { + type: Array, + value: indexList(), + }, + }, + mixins: [ + (0, page_scroll_1.pageScrollMixin)(function (event) { + this.scrollTop = (event === null || event === void 0 ? void 0 : event.scrollTop) || 0; + this.onScroll(); + }), + ], + data: { + activeAnchorIndex: null, + showSidebar: false, + }, + created: function () { + this.scrollTop = 0; + }, + methods: { + updateData: function () { + var _this = this; + wx.nextTick(function () { + if (_this.timer != null) { + clearTimeout(_this.timer); + } + _this.timer = setTimeout(function () { + _this.setData({ + showSidebar: !!_this.children.length, + }); + _this.setRect().then(function () { + _this.onScroll(); + }); + }, 0); + }); + }, + setRect: function () { + return Promise.all([ + this.setAnchorsRect(), + this.setListRect(), + this.setSiderbarRect(), + ]); + }, + setAnchorsRect: function () { + var _this = this; + return Promise.all(this.children.map(function (anchor) { + return (0, utils_1.getRect)(anchor, '.van-index-anchor-wrapper').then(function (rect) { + Object.assign(anchor, { + height: rect.height, + top: rect.top + _this.scrollTop, + }); + }); + })); + }, + setListRect: function () { + var _this = this; + return (0, utils_1.getRect)(this, '.van-index-bar').then(function (rect) { + if (!(0, utils_1.isDef)(rect)) { + return; + } + Object.assign(_this, { + height: rect.height, + top: rect.top + _this.scrollTop, + }); + }); + }, + setSiderbarRect: function () { + var _this = this; + return (0, utils_1.getRect)(this, '.van-index-bar__sidebar').then(function (res) { + if (!(0, utils_1.isDef)(res)) { + return; + } + _this.sidebar = { + height: res.height, + top: res.top, + }; + }); + }, + setDiffData: function (_a) { + var target = _a.target, data = _a.data; + var diffData = {}; + Object.keys(data).forEach(function (key) { + if (target.data[key] !== data[key]) { + diffData[key] = data[key]; + } + }); + if (Object.keys(diffData).length) { + target.setData(diffData); + } + }, + getAnchorRect: function (anchor) { + return (0, utils_1.getRect)(anchor, '.van-index-anchor-wrapper').then(function (rect) { return ({ + height: rect.height, + top: rect.top, + }); }); + }, + getActiveAnchorIndex: function () { + var _a = this, children = _a.children, scrollTop = _a.scrollTop; + var _b = this.data, sticky = _b.sticky, stickyOffsetTop = _b.stickyOffsetTop; + for (var i = this.children.length - 1; i >= 0; i--) { + var preAnchorHeight = i > 0 ? children[i - 1].height : 0; + var reachTop = sticky ? preAnchorHeight + stickyOffsetTop : 0; + if (reachTop + scrollTop >= children[i].top) { + return i; + } + } + return -1; + }, + onScroll: function () { + var _this = this; + var _a = this, _b = _a.children, children = _b === void 0 ? [] : _b, scrollTop = _a.scrollTop; + if (!children.length) { + return; + } + var _c = this.data, sticky = _c.sticky, stickyOffsetTop = _c.stickyOffsetTop, zIndex = _c.zIndex, highlightColor = _c.highlightColor; + var active = this.getActiveAnchorIndex(); + this.setDiffData({ + target: this, + data: { + activeAnchorIndex: active, + }, + }); + if (sticky) { + var isActiveAnchorSticky_1 = false; + if (active !== -1) { + isActiveAnchorSticky_1 = + children[active].top <= stickyOffsetTop + scrollTop; + } + children.forEach(function (item, index) { + if (index === active) { + var wrapperStyle = ''; + var anchorStyle = "\n color: ".concat(highlightColor, ";\n "); + if (isActiveAnchorSticky_1) { + wrapperStyle = "\n height: ".concat(children[index].height, "px;\n "); + anchorStyle = "\n position: fixed;\n top: ".concat(stickyOffsetTop, "px;\n z-index: ").concat(zIndex, ";\n color: ").concat(highlightColor, ";\n "); + } + _this.setDiffData({ + target: item, + data: { + active: true, + anchorStyle: anchorStyle, + wrapperStyle: wrapperStyle, + }, + }); + } + else if (index === active - 1) { + var currentAnchor = children[index]; + var currentOffsetTop = currentAnchor.top; + var targetOffsetTop = index === children.length - 1 + ? _this.top + : children[index + 1].top; + var parentOffsetHeight = targetOffsetTop - currentOffsetTop; + var translateY = parentOffsetHeight - currentAnchor.height; + var anchorStyle = "\n position: relative;\n transform: translate3d(0, ".concat(translateY, "px, 0);\n z-index: ").concat(zIndex, ";\n color: ").concat(highlightColor, ";\n "); + _this.setDiffData({ + target: item, + data: { + active: true, + anchorStyle: anchorStyle, + }, + }); + } + else { + _this.setDiffData({ + target: item, + data: { + active: false, + anchorStyle: '', + wrapperStyle: '', + }, + }); + } + }); + } + }, + onClick: function (event) { + this.scrollToAnchor(event.target.dataset.index); + }, + onTouchMove: function (event) { + var sidebarLength = this.children.length; + var touch = event.touches[0]; + var itemHeight = this.sidebar.height / sidebarLength; + var index = Math.floor((touch.clientY - this.sidebar.top) / itemHeight); + if (index < 0) { + index = 0; + } + else if (index > sidebarLength - 1) { + index = sidebarLength - 1; + } + this.scrollToAnchor(index); + }, + onTouchStop: function () { + this.scrollToAnchorIndex = null; + }, + scrollToAnchor: function (index) { + var _this = this; + if (typeof index !== 'number' || this.scrollToAnchorIndex === index) { + return; + } + this.scrollToAnchorIndex = index; + var anchor = this.children.find(function (item) { return item.data.index === _this.data.indexList[index]; }); + if (anchor) { + anchor.scrollIntoView(this.scrollTop); + this.$emit('select', anchor.data.index); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/index-bar/index.json b/src/miniprogram_npm/@vant/weapp/index-bar/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-bar/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/index-bar/index.wxml b/src/miniprogram_npm/@vant/weapp/index-bar/index.wxml new file mode 100644 index 0000000..19a59cf --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-bar/index.wxml @@ -0,0 +1,22 @@ +<view class="van-index-bar"> + <slot /> + + <view + wx:if="{{ showSidebar }}" + class="van-index-bar__sidebar" + catch:tap="onClick" + catch:touchmove="onTouchMove" + catch:touchend="onTouchStop" + catch:touchcancel="onTouchStop" + > + <view + wx:for="{{ indexList }}" + wx:key="index" + class="van-index-bar__index" + style="z-index: {{ zIndex + 1 }}; color: {{ activeAnchorIndex === index ? highlightColor : '' }}" + data-index="{{ index }}" + > + {{ item }} + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/index-bar/index.wxss b/src/miniprogram_npm/@vant/weapp/index-bar/index.wxss new file mode 100644 index 0000000..8568801 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/index-bar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-index-bar{position:relative}.van-index-bar__sidebar{display:flex;flex-direction:column;position:fixed;right:0;text-align:center;top:50%;transform:translateY(-50%);-webkit-user-select:none;user-select:none}.van-index-bar__index{font-size:var(--index-bar-index-font-size,10px);font-weight:500;line-height:var(--index-bar-index-line-height,14px);padding:0 var(--padding-base,4px) 0 var(--padding-md,16px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/info/index.d.ts b/src/miniprogram_npm/@vant/weapp/info/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/info/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/info/index.js b/src/miniprogram_npm/@vant/weapp/info/index.js new file mode 100644 index 0000000..e61af73 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/info/index.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + dot: Boolean, + info: null, + customStyle: String, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/info/index.json b/src/miniprogram_npm/@vant/weapp/info/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/info/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/info/index.wxml b/src/miniprogram_npm/@vant/weapp/info/index.wxml new file mode 100644 index 0000000..b39b524 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/info/index.wxml @@ -0,0 +1,7 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + wx:if="{{ info !== null && info !== '' || dot }}" + class="van-info {{ utils.bem('info', { dot }) }} custom-class" + style="{{ customStyle }}" +>{{ dot ? '' : info }}</view> diff --git a/src/miniprogram_npm/@vant/weapp/info/index.wxss b/src/miniprogram_npm/@vant/weapp/info/index.wxss new file mode 100644 index 0000000..375ed5a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/info/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-info{align-items:center;background-color:var(--info-background-color,#ee0a24);border:var(--info-border-width,1px) solid #fff;border-radius:var(--info-size,16px);box-sizing:border-box;color:var(--info-color,#fff);display:inline-flex;font-family:var(--info-font-family,-apple-system-font,Helvetica Neue,Arial,sans-serif);font-size:var(--info-font-size,12px);font-weight:var(--info-font-weight,500);height:var(--info-size,16px);justify-content:center;min-width:var(--info-size,16px);padding:var(--info-padding,0 3px);position:absolute;right:0;top:0;transform:translate(50%,-50%);transform-origin:100%;white-space:nowrap}.van-info--dot{background-color:var(--info-dot-color,#ee0a24);border-radius:100%;height:var(--info-dot-size,8px);min-width:0;width:var(--info-dot-size,8px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/loading/index.d.ts b/src/miniprogram_npm/@vant/weapp/loading/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/loading/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/loading/index.js b/src/miniprogram_npm/@vant/weapp/loading/index.js new file mode 100644 index 0000000..be9c0ef --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/loading/index.js @@ -0,0 +1,18 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + color: String, + vertical: Boolean, + type: { + type: String, + value: 'circular', + }, + size: String, + textSize: String, + }, + data: { + array12: Array.from({ length: 12 }), + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/loading/index.json b/src/miniprogram_npm/@vant/weapp/loading/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/loading/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/loading/index.wxml b/src/miniprogram_npm/@vant/weapp/loading/index.wxml new file mode 100644 index 0000000..7d4a539 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/loading/index.wxml @@ -0,0 +1,19 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="custom-class {{ utils.bem('loading', { vertical }) }}"> + <view + class="van-loading__spinner van-loading__spinner--{{ type }}" + style="{{ computed.spinnerStyle({ color, size }) }}" + > + <view + wx:if="{{ type === 'spinner' }}" + wx:for="{{ array12 }}" + wx:key="index" + class="van-loading__dot" + /> + </view> + <view class="van-loading__text" style="{{ computed.textStyle({ textSize }) }}"> + <slot /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/loading/index.wxs b/src/miniprogram_npm/@vant/weapp/loading/index.wxs new file mode 100644 index 0000000..02a0b80 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/loading/index.wxs @@ -0,0 +1,22 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function spinnerStyle(data) { + return style({ + color: data.color, + width: addUnit(data.size), + height: addUnit(data.size), + }); +} + +function textStyle(data) { + return style({ + 'font-size': addUnit(data.textSize), + }); +} + +module.exports = { + spinnerStyle: spinnerStyle, + textStyle: textStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/loading/index.wxss b/src/miniprogram_npm/@vant/weapp/loading/index.wxss new file mode 100644 index 0000000..fc84e84 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/loading/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{font-size:0;line-height:1}.van-loading{align-items:center;color:var(--loading-spinner-color,#c8c9cc);display:inline-flex;justify-content:center}.van-loading__spinner{animation:van-rotate var(--loading-spinner-animation-duration,.8s) linear infinite;box-sizing:border-box;height:var(--loading-spinner-size,30px);max-height:100%;max-width:100%;position:relative;width:var(--loading-spinner-size,30px)}.van-loading__spinner--spinner{animation-timing-function:steps(12)}.van-loading__spinner--circular{border:1px solid transparent;border-radius:100%;border-top-color:initial}.van-loading__text{color:var(--loading-text-color,#969799);font-size:var(--loading-text-font-size,14px);line-height:var(--loading-text-line-height,20px);margin-left:var(--padding-xs,8px)}.van-loading__text:empty{display:none}.van-loading--vertical{flex-direction:column}.van-loading--vertical .van-loading__text{margin:var(--padding-xs,8px) 0 0}.van-loading__dot{height:100%;left:0;position:absolute;top:0;width:100%}.van-loading__dot:before{background-color:currentColor;border-radius:40%;content:" ";display:block;height:25%;margin:0 auto;width:2px}.van-loading__dot:first-of-type{opacity:1;transform:rotate(30deg)}.van-loading__dot:nth-of-type(2){opacity:.9375;transform:rotate(60deg)}.van-loading__dot:nth-of-type(3){opacity:.875;transform:rotate(90deg)}.van-loading__dot:nth-of-type(4){opacity:.8125;transform:rotate(120deg)}.van-loading__dot:nth-of-type(5){opacity:.75;transform:rotate(150deg)}.van-loading__dot:nth-of-type(6){opacity:.6875;transform:rotate(180deg)}.van-loading__dot:nth-of-type(7){opacity:.625;transform:rotate(210deg)}.van-loading__dot:nth-of-type(8){opacity:.5625;transform:rotate(240deg)}.van-loading__dot:nth-of-type(9){opacity:.5;transform:rotate(270deg)}.van-loading__dot:nth-of-type(10){opacity:.4375;transform:rotate(300deg)}.van-loading__dot:nth-of-type(11){opacity:.375;transform:rotate(330deg)}.van-loading__dot:nth-of-type(12){opacity:.3125;transform:rotate(1turn)}@keyframes van-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/mixins/basic.d.ts b/src/miniprogram_npm/@vant/weapp/mixins/basic.d.ts new file mode 100644 index 0000000..b273369 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/basic.d.ts @@ -0,0 +1 @@ +export declare const basic: string; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/basic.js b/src/miniprogram_npm/@vant/weapp/mixins/basic.js new file mode 100644 index 0000000..405161a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/basic.js @@ -0,0 +1,30 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.basic = void 0; +exports.basic = Behavior({ + methods: { + $emit: function (name, detail, options) { + this.triggerEvent(name, detail, options); + }, + set: function (data) { + this.setData(data); + return new Promise(function (resolve) { return wx.nextTick(resolve); }); + }, + // high performance setData + setView: function (data, callback) { + var _this = this; + var target = {}; + var hasChange = false; + Object.keys(data).forEach(function (key) { + if (data[key] !== _this.data[key]) { + target[key] = data[key]; + hasChange = true; + } + }); + if (hasChange) { + return this.setData(target, callback); + } + return callback && callback(); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/mixins/button.d.ts b/src/miniprogram_npm/@vant/weapp/mixins/button.d.ts new file mode 100644 index 0000000..b51db87 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/button.d.ts @@ -0,0 +1 @@ +export declare const button: string; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/button.js b/src/miniprogram_npm/@vant/weapp/mixins/button.js new file mode 100644 index 0000000..8c1c499 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/button.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.button = void 0; +var version_1 = require("../common/version"); +exports.button = Behavior({ + externalClasses: ['hover-class'], + properties: { + id: String, + buttonId: String, + lang: String, + businessId: Number, + sessionFrom: String, + sendMessageTitle: String, + sendMessagePath: String, + sendMessageImg: String, + showMessageCard: Boolean, + appParameter: String, + ariaLabel: String, + openType: String, + getUserProfileDesc: String, + }, + data: { + canIUseGetUserProfile: (0, version_1.canIUseGetUserProfile)(), + }, + methods: { + onGetUserInfo: function (event) { + this.triggerEvent('getuserinfo', event.detail); + }, + onContact: function (event) { + this.triggerEvent('contact', event.detail); + }, + onGetPhoneNumber: function (event) { + this.triggerEvent('getphonenumber', event.detail); + }, + onGetRealTimePhoneNumber: function (event) { + this.triggerEvent('getrealtimephonenumber', event.detail); + }, + onError: function (event) { + this.triggerEvent('error', event.detail); + }, + onLaunchApp: function (event) { + this.triggerEvent('launchapp', event.detail); + }, + onOpenSetting: function (event) { + this.triggerEvent('opensetting', event.detail); + }, + onAgreePrivacyAuthorization: function (event) { + this.triggerEvent('agreeprivacyauthorization', event.detail); + }, + onChooseAvatar: function (event) { + this.triggerEvent('chooseavatar', event.detail); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/mixins/link.d.ts b/src/miniprogram_npm/@vant/weapp/mixins/link.d.ts new file mode 100644 index 0000000..d58043b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/link.d.ts @@ -0,0 +1 @@ +export declare const link: string; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/link.js b/src/miniprogram_npm/@vant/weapp/mixins/link.js new file mode 100644 index 0000000..14cb7e8 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/link.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.link = void 0; +exports.link = Behavior({ + properties: { + url: String, + linkType: { + type: String, + value: 'navigateTo', + }, + }, + methods: { + jumpLink: function (urlKey) { + if (urlKey === void 0) { urlKey = 'url'; } + var url = this.data[urlKey]; + if (url) { + if (this.data.linkType === 'navigateTo' && + getCurrentPages().length > 9) { + wx.redirectTo({ url: url }); + } + else { + wx[this.data.linkType]({ url: url }); + } + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts b/src/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts new file mode 100644 index 0000000..4625447 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts @@ -0,0 +1,6 @@ +/// <reference types="miniprogram-api-typings" /> +/// <reference types="miniprogram-api-typings" /> +type IPageScrollOption = WechatMiniprogram.Page.IPageScrollOption; +type Scroller = (this: WechatMiniprogram.Component.TrivialInstance, event?: IPageScrollOption) => void; +export declare function pageScrollMixin(scroller: Scroller): string; +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/page-scroll.js b/src/miniprogram_npm/@vant/weapp/mixins/page-scroll.js new file mode 100644 index 0000000..fce7049 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/page-scroll.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.pageScrollMixin = void 0; +var validator_1 = require("../common/validator"); +var utils_1 = require("../common/utils"); +function onPageScroll(event) { + var _a = (0, utils_1.getCurrentPage)().vanPageScroller, vanPageScroller = _a === void 0 ? [] : _a; + vanPageScroller.forEach(function (scroller) { + if (typeof scroller === 'function') { + // @ts-ignore + scroller(event); + } + }); +} +function pageScrollMixin(scroller) { + return Behavior({ + attached: function () { + var page = (0, utils_1.getCurrentPage)(); + if (!(0, utils_1.isDef)(page)) { + return; + } + var _scroller = scroller.bind(this); + var _a = page.vanPageScroller, vanPageScroller = _a === void 0 ? [] : _a; + if ((0, validator_1.isFunction)(page.onPageScroll) && page.onPageScroll !== onPageScroll) { + vanPageScroller.push(page.onPageScroll.bind(page)); + } + vanPageScroller.push(_scroller); + page.vanPageScroller = vanPageScroller; + page.onPageScroll = onPageScroll; + this._scroller = _scroller; + }, + detached: function () { + var _this = this; + var page = (0, utils_1.getCurrentPage)(); + if (!(0, utils_1.isDef)(page) || !(0, utils_1.isDef)(page.vanPageScroller)) { + return; + } + var vanPageScroller = page.vanPageScroller; + var index = vanPageScroller.findIndex(function (v) { return v === _this._scroller; }); + if (index > -1) { + page.vanPageScroller.splice(index, 1); + } + this._scroller = undefined; + }, + }); +} +exports.pageScrollMixin = pageScrollMixin; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/touch.d.ts b/src/miniprogram_npm/@vant/weapp/mixins/touch.d.ts new file mode 100644 index 0000000..35ee831 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/touch.d.ts @@ -0,0 +1 @@ +export declare const touch: string; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/touch.js b/src/miniprogram_npm/@vant/weapp/mixins/touch.js new file mode 100644 index 0000000..d762c2c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/touch.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.touch = void 0; +// @ts-nocheck +var MIN_DISTANCE = 10; +function getDirection(x, y) { + if (x > y && x > MIN_DISTANCE) { + return 'horizontal'; + } + if (y > x && y > MIN_DISTANCE) { + return 'vertical'; + } + return ''; +} +exports.touch = Behavior({ + methods: { + resetTouchStatus: function () { + this.direction = ''; + this.deltaX = 0; + this.deltaY = 0; + this.offsetX = 0; + this.offsetY = 0; + }, + touchStart: function (event) { + this.resetTouchStatus(); + var touch = event.touches[0]; + this.startX = touch.clientX; + this.startY = touch.clientY; + }, + touchMove: function (event) { + var touch = event.touches[0]; + this.deltaX = touch.clientX - this.startX; + this.deltaY = touch.clientY - this.startY; + this.offsetX = Math.abs(this.deltaX); + this.offsetY = Math.abs(this.deltaY); + this.direction = + this.direction || getDirection(this.offsetX, this.offsetY); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/mixins/transition.d.ts b/src/miniprogram_npm/@vant/weapp/mixins/transition.d.ts new file mode 100644 index 0000000..dd829e5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/transition.d.ts @@ -0,0 +1 @@ +export declare function transition(showDefaultValue: boolean): string; diff --git a/src/miniprogram_npm/@vant/weapp/mixins/transition.js b/src/miniprogram_npm/@vant/weapp/mixins/transition.js new file mode 100644 index 0000000..8cc6ca9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/mixins/transition.js @@ -0,0 +1,135 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.transition = void 0; +// @ts-nocheck +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var getClassNames = function (name) { return ({ + enter: "van-".concat(name, "-enter van-").concat(name, "-enter-active enter-class enter-active-class"), + 'enter-to': "van-".concat(name, "-enter-to van-").concat(name, "-enter-active enter-to-class enter-active-class"), + leave: "van-".concat(name, "-leave van-").concat(name, "-leave-active leave-class leave-active-class"), + 'leave-to': "van-".concat(name, "-leave-to van-").concat(name, "-leave-active leave-to-class leave-active-class"), +}); }; +function transition(showDefaultValue) { + return Behavior({ + properties: { + customStyle: String, + // @ts-ignore + show: { + type: Boolean, + value: showDefaultValue, + observer: 'observeShow', + }, + // @ts-ignore + duration: { + type: null, + value: 300, + }, + name: { + type: String, + value: 'fade', + }, + }, + data: { + type: '', + inited: false, + display: false, + }, + ready: function () { + if (this.data.show === true) { + this.observeShow(true, false); + } + }, + methods: { + observeShow: function (value, old) { + if (value === old) { + return; + } + value ? this.enter() : this.leave(); + }, + enter: function () { + var _this = this; + if (this.enterFinishedPromise) + return; + this.enterFinishedPromise = new Promise(function (resolve) { + var _a = _this.data, duration = _a.duration, name = _a.name; + var classNames = getClassNames(name); + var currentDuration = (0, validator_1.isObj)(duration) ? duration.enter : duration; + if (_this.status === 'enter') { + return; + } + _this.status = 'enter'; + _this.$emit('before-enter'); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'enter') { + return; + } + _this.$emit('enter'); + _this.setData({ + inited: true, + display: true, + classes: classNames.enter, + currentDuration: currentDuration, + }); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'enter') { + return; + } + _this.transitionEnded = false; + _this.setData({ classes: classNames['enter-to'] }); + resolve(); + }); + }); + }); + }, + leave: function () { + var _this = this; + if (!this.enterFinishedPromise) + return; + this.enterFinishedPromise.then(function () { + if (!_this.data.display) { + return; + } + var _a = _this.data, duration = _a.duration, name = _a.name; + var classNames = getClassNames(name); + var currentDuration = (0, validator_1.isObj)(duration) ? duration.leave : duration; + _this.status = 'leave'; + _this.$emit('before-leave'); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'leave') { + return; + } + _this.$emit('leave'); + _this.setData({ + classes: classNames.leave, + currentDuration: currentDuration, + }); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'leave') { + return; + } + _this.transitionEnded = false; + setTimeout(function () { + _this.onTransitionEnd(); + _this.enterFinishedPromise = null; + }, currentDuration); + _this.setData({ classes: classNames['leave-to'] }); + }); + }); + }); + }, + onTransitionEnd: function () { + if (this.transitionEnded) { + return; + } + this.transitionEnded = true; + this.$emit("after-".concat(this.status)); + var _a = this.data, show = _a.show, display = _a.display; + if (!show && display) { + this.setData({ display: false }); + } + }, + }, + }); +} +exports.transition = transition; diff --git a/src/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts b/src/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/nav-bar/index.js b/src/miniprogram_npm/@vant/weapp/nav-bar/index.js new file mode 100644 index 0000000..376b561 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/nav-bar/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + classes: ['title-class'], + props: { + title: String, + fixed: { + type: Boolean, + observer: 'setHeight', + }, + placeholder: { + type: Boolean, + observer: 'setHeight', + }, + leftText: String, + rightText: String, + customStyle: String, + leftArrow: Boolean, + border: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 1, + }, + safeAreaInsetTop: { + type: Boolean, + value: true, + }, + }, + data: { + height: 46, + }, + created: function () { + var statusBarHeight = (0, utils_1.getSystemInfoSync)().statusBarHeight; + this.setData({ + statusBarHeight: statusBarHeight, + height: 46 + statusBarHeight, + }); + }, + mounted: function () { + this.setHeight(); + }, + methods: { + onClickLeft: function () { + this.$emit('click-left'); + }, + onClickRight: function () { + this.$emit('click-right'); + }, + setHeight: function () { + var _this = this; + if (!this.data.fixed || !this.data.placeholder) { + return; + } + wx.nextTick(function () { + (0, utils_1.getRect)(_this, '.van-nav-bar').then(function (res) { + if (res && 'height' in res) { + _this.setData({ height: res.height }); + } + }); + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/nav-bar/index.json b/src/miniprogram_npm/@vant/weapp/nav-bar/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/nav-bar/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxml b/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxml new file mode 100644 index 0000000..b6405fd --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxml @@ -0,0 +1,42 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view wx:if="{{ fixed && placeholder }}" style="height: {{ height }}px;" /> + +<view + class="{{ utils.bem('nav-bar', { fixed }) }} custom-class {{ border ? 'van-hairline--bottom' : '' }}" + style="{{ computed.barStyle({ zIndex, statusBarHeight, safeAreaInsetTop }) }}; {{ customStyle }}" +> + <view class="van-nav-bar__content"> + <view class="van-nav-bar__left" bind:tap="onClickLeft"> + <block wx:if="{{ leftArrow || leftText }}"> + <van-icon + wx:if="{{ leftArrow }}" + size="16px" + name="arrow-left" + custom-class="van-nav-bar__arrow" + /> + <view + wx:if="{{ leftText }}" + class="van-nav-bar__text" + hover-class="van-nav-bar__text--hover" + hover-stay-time="70" + >{{ leftText }}</view> + </block> + <slot wx:else name="left" /> + </view> + <view class="van-nav-bar__title title-class van-ellipsis"> + <block wx:if="{{ title }}">{{ title }}</block> + <slot wx:else name="title" /> + </view> + <view class="van-nav-bar__right" bind:tap="onClickRight"> + <view + wx:if="{{ rightText }}" + class="van-nav-bar__text" + hover-class="van-nav-bar__text--hover" + hover-stay-time="70" + >{{ rightText }}</view> + <slot wx:else name="right" /> + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxs b/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxs new file mode 100644 index 0000000..55b4158 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function barStyle(data) { + return style({ + 'z-index': data.zIndex, + 'padding-top': data.safeAreaInsetTop ? data.statusBarHeight + 'px' : 0, + }); +} + +module.exports = { + barStyle: barStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxss b/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxss new file mode 100644 index 0000000..d11c31e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/nav-bar/index.wxss @@ -0,0 +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)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts b/src/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/notice-bar/index.js b/src/miniprogram_npm/@vant/weapp/notice-bar/index.js new file mode 100644 index 0000000..db2a755 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notice-bar/index.js @@ -0,0 +1,125 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + props: { + text: { + type: String, + value: '', + observer: 'init', + }, + mode: { + type: String, + value: '', + }, + url: { + type: String, + value: '', + }, + openType: { + type: String, + value: 'navigate', + }, + delay: { + type: Number, + value: 1, + }, + speed: { + type: Number, + value: 60, + observer: 'init', + }, + scrollable: null, + leftIcon: { + type: String, + value: '', + }, + color: String, + backgroundColor: String, + background: String, + wrapable: Boolean, + }, + data: { + show: true, + }, + created: function () { + this.resetAnimation = wx.createAnimation({ + duration: 0, + timingFunction: 'linear', + }); + }, + destroyed: function () { + this.timer && clearTimeout(this.timer); + }, + mounted: function () { + this.init(); + }, + methods: { + init: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + Promise.all([ + (0, utils_1.getRect)(_this, '.van-notice-bar__content'), + (0, utils_1.getRect)(_this, '.van-notice-bar__wrap'), + ]).then(function (rects) { + var contentRect = rects[0], wrapRect = rects[1]; + var _a = _this.data, speed = _a.speed, scrollable = _a.scrollable, delay = _a.delay; + if (contentRect == null || + wrapRect == null || + !contentRect.width || + !wrapRect.width || + scrollable === false) { + return; + } + if (scrollable || wrapRect.width < contentRect.width) { + var duration = ((wrapRect.width + contentRect.width) / speed) * 1000; + _this.wrapWidth = wrapRect.width; + _this.contentWidth = contentRect.width; + _this.duration = duration; + _this.animation = wx.createAnimation({ + duration: duration, + timingFunction: 'linear', + delay: delay, + }); + _this.scroll(true); + } + }); + }); + }, + scroll: function (isInit) { + var _this = this; + if (isInit === void 0) { isInit = false; } + this.timer && clearTimeout(this.timer); + this.timer = null; + this.setData({ + animationData: this.resetAnimation + .translateX(isInit ? 0 : this.wrapWidth) + .step() + .export(), + }); + (0, utils_1.requestAnimationFrame)(function () { + _this.setData({ + animationData: _this.animation + .translateX(-_this.contentWidth) + .step() + .export(), + }); + }); + this.timer = setTimeout(function () { + _this.scroll(); + }, this.duration + this.data.delay); + }, + onClickIcon: function (event) { + if (this.data.mode === 'closeable') { + this.timer && clearTimeout(this.timer); + this.timer = null; + this.setData({ show: false }); + this.$emit('close', event.detail); + } + }, + onClick: function (event) { + this.$emit('click', event); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/notice-bar/index.json b/src/miniprogram_npm/@vant/weapp/notice-bar/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notice-bar/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxml b/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxml new file mode 100644 index 0000000..21b0973 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxml @@ -0,0 +1,38 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + wx:if="{{ show }}" + class="custom-class {{ utils.bem('notice-bar', { withicon: mode, wrapable }) }}" + style="{{ computed.rootStyle({ color, backgroundColor, background }) }}" + bind:tap="onClick" +> + <van-icon + wx:if="{{ leftIcon }}" + name="{{ leftIcon }}" + class="van-notice-bar__left-icon" + /> + <slot wx:else name="left-icon" /> + + <view class="van-notice-bar__wrap"> + <view class="van-notice-bar__content {{ scrollable === false && !wrapable ? 'van-ellipsis' : '' }}" animation="{{ animationData }}"> + {{ text }} + <slot wx:if="{{ !text }}"></slot> + </view> + </view> + + <van-icon + wx:if="{{ mode === 'closeable' }}" + class="van-notice-bar__right-icon" + name="cross" + catch:tap="onClickIcon" + /> + <navigator + wx:elif="{{ mode === 'link' }}" + url="{{ url }}" + open-type="{{ openType }}" + > + <van-icon class="van-notice-bar__right-icon" name="arrow" /> + </navigator> + <slot wx:else name="right-icon" /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxs b/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxs new file mode 100644 index 0000000..11e6456 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxs @@ -0,0 +1,15 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style({ + color: data.color, + 'background-color': data.backgroundColor, + background: data.background, + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxss b/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxss new file mode 100644 index 0000000..497636c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notice-bar/index.wxss @@ -0,0 +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%} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/notify/index.d.ts b/src/miniprogram_npm/@vant/weapp/notify/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/notify/index.js b/src/miniprogram_npm/@vant/weapp/notify/index.js new file mode 100644 index 0000000..a9526aa --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + props: { + message: String, + background: String, + type: { + type: String, + value: 'danger', + }, + color: { + type: String, + value: color_1.WHITE, + }, + duration: { + type: Number, + value: 3000, + }, + zIndex: { + type: Number, + value: 110, + }, + safeAreaInsetTop: { + type: Boolean, + value: false, + }, + top: null, + }, + data: { + show: false, + onOpened: null, + onClose: null, + onClick: null, + }, + created: function () { + var statusBarHeight = (0, utils_1.getSystemInfoSync)().statusBarHeight; + this.setData({ statusBarHeight: statusBarHeight }); + }, + methods: { + show: function () { + var _this = this; + var _a = this.data, duration = _a.duration, onOpened = _a.onOpened; + clearTimeout(this.timer); + this.setData({ show: true }); + wx.nextTick(onOpened); + if (duration > 0 && duration !== Infinity) { + this.timer = setTimeout(function () { + _this.hide(); + }, duration); + } + }, + hide: function () { + var onClose = this.data.onClose; + clearTimeout(this.timer); + this.setData({ show: false }); + wx.nextTick(onClose); + }, + onTap: function (event) { + var onClick = this.data.onClick; + if (onClick) { + onClick(event.detail); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/notify/index.json b/src/miniprogram_npm/@vant/weapp/notify/index.json new file mode 100644 index 0000000..c14a65f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-transition": "../transition/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/notify/index.wxml b/src/miniprogram_npm/@vant/weapp/notify/index.wxml new file mode 100644 index 0000000..42d913e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/index.wxml @@ -0,0 +1,21 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<van-transition + name="slide-down" + show="{{ show }}" + custom-class="van-notify__container" + custom-style="{{ computed.rootStyle({ zIndex, top }) }}" + bind:tap="onTap" +> + <view + class="van-notify van-notify--{{ type }}" + style="{{ computed.notifyStyle({ background, color }) }}" + > + <view + wx:if="{{ safeAreaInsetTop }}" + style="height: {{ statusBarHeight }}px" + /> + <text>{{ message }}</text> + </view> +</van-transition> diff --git a/src/miniprogram_npm/@vant/weapp/notify/index.wxs b/src/miniprogram_npm/@vant/weapp/notify/index.wxs new file mode 100644 index 0000000..bbb94c2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/index.wxs @@ -0,0 +1,22 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style({ + 'z-index': data.zIndex, + top: addUnit(data.top), + }); +} + +function notifyStyle(data) { + return style({ + background: data.background, + color: data.color, + }); +} + +module.exports = { + rootStyle: rootStyle, + notifyStyle: notifyStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/notify/index.wxss b/src/miniprogram_npm/@vant/weapp/notify/index.wxss new file mode 100644 index 0000000..c030e9b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/index.wxss @@ -0,0 +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)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/notify/notify.d.ts b/src/miniprogram_npm/@vant/weapp/notify/notify.d.ts new file mode 100644 index 0000000..d5213cb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/notify.d.ts @@ -0,0 +1,22 @@ +interface NotifyOptions { + type?: 'primary' | 'success' | 'danger' | 'warning'; + color?: string; + zIndex?: number; + top?: number; + message: string; + context?: any; + duration?: number; + selector?: string; + background?: string; + safeAreaInsetTop?: boolean; + onClick?: () => void; + onOpened?: () => void; + onClose?: () => void; +} +declare function Notify(options: NotifyOptions | string): any; +declare namespace Notify { + var clear: (options?: NotifyOptions | undefined) => void; + var setDefaultOptions: (options: NotifyOptions) => void; + var resetDefaultOptions: () => void; +} +export default Notify; diff --git a/src/miniprogram_npm/@vant/weapp/notify/notify.js b/src/miniprogram_npm/@vant/weapp/notify/notify.js new file mode 100644 index 0000000..d470431 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/notify/notify.js @@ -0,0 +1,67 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var defaultOptions = { + selector: '#van-notify', + type: 'danger', + message: '', + background: '', + duration: 3000, + zIndex: 110, + top: 0, + color: color_1.WHITE, + safeAreaInsetTop: false, + onClick: function () { }, + onOpened: function () { }, + onClose: function () { }, +}; +var currentOptions = __assign({}, defaultOptions); +function parseOptions(message) { + if (message == null) { + return {}; + } + return typeof message === 'string' ? { message: message } : message; +} +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +function Notify(options) { + options = __assign(__assign({}, currentOptions), parseOptions(options)); + var context = options.context || getContext(); + var notify = context.selectComponent(options.selector); + delete options.context; + delete options.selector; + if (notify) { + notify.setData(options); + notify.show(); + return notify; + } + console.warn('未找到 van-notify 节点,请确认 selector 及 context 是否正确'); +} +exports.default = Notify; +Notify.clear = function (options) { + options = __assign(__assign({}, defaultOptions), parseOptions(options)); + var context = options.context || getContext(); + var notify = context.selectComponent(options.selector); + if (notify) { + notify.hide(); + } +}; +Notify.setDefaultOptions = function (options) { + Object.assign(currentOptions, options); +}; +Notify.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); +}; diff --git a/src/miniprogram_npm/@vant/weapp/overlay/index.d.ts b/src/miniprogram_npm/@vant/weapp/overlay/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/overlay/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/overlay/index.js b/src/miniprogram_npm/@vant/weapp/overlay/index.js new file mode 100644 index 0000000..9b58b5f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/overlay/index.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + show: Boolean, + customStyle: String, + duration: { + type: null, + value: 300, + }, + zIndex: { + type: Number, + value: 1, + }, + lockScroll: { + type: Boolean, + value: true, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + methods: { + onClick: function () { + this.$emit('click'); + }, + // for prevent touchmove + noop: function () { }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/overlay/index.json b/src/miniprogram_npm/@vant/weapp/overlay/index.json new file mode 100644 index 0000000..c14a65f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/overlay/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-transition": "../transition/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/overlay/index.wxml b/src/miniprogram_npm/@vant/weapp/overlay/index.wxml new file mode 100644 index 0000000..17fc56f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/overlay/index.wxml @@ -0,0 +1,7 @@ +<import src="./overlay.wxml" /> + +<root-portal wx:if="{{ rootPortal }}"> + <include src="./overlay.wxml" /> +</root-portal> + +<include wx:else src="./overlay.wxml" /> diff --git a/src/miniprogram_npm/@vant/weapp/overlay/index.wxss b/src/miniprogram_npm/@vant/weapp/overlay/index.wxss new file mode 100644 index 0000000..d1ad81a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/overlay/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-overlay{background-color:var(--overlay-background-color,rgba(0,0,0,.7));height:100%;left:0;position:fixed;top:0;width:100%} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/overlay/overlay.wxml b/src/miniprogram_npm/@vant/weapp/overlay/overlay.wxml new file mode 100644 index 0000000..017e801 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/overlay/overlay.wxml @@ -0,0 +1,10 @@ +<van-transition + show="{{ show }}" + custom-class="van-overlay custom-class" + custom-style="z-index: {{ zIndex }}; {{ customStyle }}" + duration="{{ duration }}" + bind:tap="onClick" + catch:touchmove="{{ lockScroll ? 'noop' : ''}}" +> + <slot></slot> +</van-transition> \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/panel/index.d.ts b/src/miniprogram_npm/@vant/weapp/panel/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/panel/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/panel/index.js b/src/miniprogram_npm/@vant/weapp/panel/index.js new file mode 100644 index 0000000..818b8c5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/panel/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['header-class', 'footer-class'], + props: { + desc: String, + title: String, + status: String, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/panel/index.json b/src/miniprogram_npm/@vant/weapp/panel/index.json new file mode 100644 index 0000000..0e5425c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/panel/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/panel/index.wxml b/src/miniprogram_npm/@vant/weapp/panel/index.wxml new file mode 100644 index 0000000..1843703 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/panel/index.wxml @@ -0,0 +1,19 @@ +<view class="van-panel van-hairline--top-bottom custom-class"> + <van-cell + wx:if="{{ title || desc || status }}" + title="{{ title }}" + label="{{ desc }}" + value="{{ status }}" + custom-class="header-class" + value-class="van-panel__header-value" + /> + <slot wx:else name="header" /> + + <view class="van-panel__content"> + <slot /> + </view> + + <view class="van-panel__footer van-hairline--top footer-class"> + <slot name="footer" /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/panel/index.wxss b/src/miniprogram_npm/@vant/weapp/panel/index.wxss new file mode 100644 index 0000000..485edcd --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/panel/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-panel{background:var(--panel-background-color,#fff)}.van-panel__header-value{color:var(--panel-header-value-color,#ee0a24)}.van-panel__footer{padding:var(--panel-footer-padding,8px 16px)}.van-panel__footer:empty{display:none} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/picker-column/index.d.ts b/src/miniprogram_npm/@vant/weapp/picker-column/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker-column/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/picker-column/index.js b/src/miniprogram_npm/@vant/weapp/picker-column/index.js new file mode 100644 index 0000000..9dbf17c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker-column/index.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var DEFAULT_DURATION = 200; +(0, component_1.VantComponent)({ + classes: ['active-class'], + props: { + valueKey: String, + className: String, + itemHeight: Number, + visibleItemCount: Number, + initialOptions: { + type: Array, + value: [], + }, + defaultIndex: { + type: Number, + value: 0, + observer: function (value) { + this.setIndex(value); + }, + }, + }, + data: { + startY: 0, + offset: 0, + duration: 0, + startOffset: 0, + options: [], + currentIndex: 0, + }, + created: function () { + var _this = this; + var _a = this.data, defaultIndex = _a.defaultIndex, initialOptions = _a.initialOptions; + this.set({ + currentIndex: defaultIndex, + options: initialOptions, + }).then(function () { + _this.setIndex(defaultIndex); + }); + }, + methods: { + getCount: function () { + return this.data.options.length; + }, + onTouchStart: function (event) { + this.setData({ + startY: event.touches[0].clientY, + startOffset: this.data.offset, + duration: 0, + }); + }, + onTouchMove: function (event) { + var data = this.data; + var deltaY = event.touches[0].clientY - data.startY; + this.setData({ + offset: (0, utils_1.range)(data.startOffset + deltaY, -(this.getCount() * data.itemHeight), data.itemHeight), + }); + }, + onTouchEnd: function () { + var data = this.data; + if (data.offset !== data.startOffset) { + this.setData({ duration: DEFAULT_DURATION }); + var index = (0, utils_1.range)(Math.round(-data.offset / data.itemHeight), 0, this.getCount() - 1); + this.setIndex(index, true); + } + }, + onClickItem: function (event) { + var index = event.currentTarget.dataset.index; + this.setIndex(index, true); + }, + adjustIndex: function (index) { + var data = this.data; + var count = this.getCount(); + index = (0, utils_1.range)(index, 0, count); + for (var i = index; i < count; i++) { + if (!this.isDisabled(data.options[i])) + return i; + } + for (var i = index - 1; i >= 0; i--) { + if (!this.isDisabled(data.options[i])) + return i; + } + }, + isDisabled: function (option) { + return (0, validator_1.isObj)(option) && option.disabled; + }, + getOptionText: function (option) { + var data = this.data; + return (0, validator_1.isObj)(option) && data.valueKey in option + ? option[data.valueKey] + : option; + }, + setIndex: function (index, userAction) { + var _this = this; + var data = this.data; + index = this.adjustIndex(index) || 0; + var offset = -index * data.itemHeight; + if (index !== data.currentIndex) { + return this.set({ offset: offset, currentIndex: index }).then(function () { + userAction && _this.$emit('change', index); + }); + } + return this.set({ offset: offset }); + }, + setValue: function (value) { + var options = this.data.options; + for (var i = 0; i < options.length; i++) { + if (this.getOptionText(options[i]) === value) { + return this.setIndex(i); + } + } + return Promise.resolve(); + }, + getValue: function () { + var data = this.data; + return data.options[data.currentIndex]; + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/picker-column/index.json b/src/miniprogram_npm/@vant/weapp/picker-column/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker-column/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/picker-column/index.wxml b/src/miniprogram_npm/@vant/weapp/picker-column/index.wxml new file mode 100644 index 0000000..f2c8da2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker-column/index.wxml @@ -0,0 +1,23 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="van-picker-column custom-class" + style="{{ computed.rootStyle({ itemHeight, visibleItemCount }) }}" + bind:touchstart="onTouchStart" + catch:touchmove="onTouchMove" + bind:touchend="onTouchEnd" + bind:touchcancel="onTouchEnd" +> + <view style="{{ computed.wrapperStyle({ offset, itemHeight, visibleItemCount, duration }) }}"> + <view + wx:for="{{ options }}" + wx:for-item="option" + wx:key="index" + data-index="{{ index }}" + style="height: {{ itemHeight }}px" + class="van-ellipsis {{ utils.bem('picker-column__item', { disabled: option && option.disabled, selected: index === currentIndex }) }} {{ index === currentIndex ? 'active-class' : '' }}" + bindtap="onClickItem" + >{{ computed.optionText(option, valueKey) }}</view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/picker-column/index.wxs b/src/miniprogram_npm/@vant/weapp/picker-column/index.wxs new file mode 100644 index 0000000..2d5a611 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker-column/index.wxs @@ -0,0 +1,36 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function isObj(x) { + var type = typeof x; + return x !== null && (type === 'object' || type === 'function'); +} + +function optionText(option, valueKey) { + return isObj(option) && option[valueKey] != null ? option[valueKey] : option; +} + +function rootStyle(data) { + return style({ + height: addUnit(data.itemHeight * data.visibleItemCount), + }); +} + +function wrapperStyle(data) { + var offset = addUnit( + data.offset + (data.itemHeight * (data.visibleItemCount - 1)) / 2 + ); + + return style({ + transition: 'transform ' + data.duration + 'ms', + 'line-height': addUnit(data.itemHeight), + transform: 'translate3d(0, ' + offset + ', 0)', + }); +} + +module.exports = { + optionText: optionText, + rootStyle: rootStyle, + wrapperStyle: wrapperStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/picker-column/index.wxss b/src/miniprogram_npm/@vant/weapp/picker-column/index.wxss new file mode 100644 index 0000000..519a438 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker-column/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-picker-column{color:var(--picker-option-text-color,#000);font-size:var(--picker-option-font-size,16px);overflow:hidden;text-align:center}.van-picker-column__item{padding:0 5px}.van-picker-column__item--selected{color:var(--picker-option-selected-text-color,#323233);font-weight:var(--font-weight-bold,500)}.van-picker-column__item--disabled{opacity:var(--picker-option-disabled-opacity,.3)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/picker/index.d.ts b/src/miniprogram_npm/@vant/weapp/picker/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/picker/index.js b/src/miniprogram_npm/@vant/weapp/picker/index.js new file mode 100644 index 0000000..06d1826 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/index.js @@ -0,0 +1,161 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var shared_1 = require("./shared"); +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { valueKey: { + type: String, + value: 'text', + }, toolbarPosition: { + type: String, + value: 'top', + }, defaultIndex: { + type: Number, + value: 0, + }, columns: { + type: Array, + value: [], + observer: function (columns) { + if (columns === void 0) { columns = []; } + this.simple = columns.length && !columns[0].values; + if (Array.isArray(this.children) && this.children.length) { + this.setColumns().catch(function () { }); + } + }, + } }), + beforeCreate: function () { + var _this = this; + Object.defineProperty(this, 'children', { + get: function () { return _this.selectAllComponents('.van-picker__column') || []; }, + }); + }, + methods: { + noop: function () { }, + setColumns: function () { + var _this = this; + var data = this.data; + var columns = this.simple ? [{ values: data.columns }] : data.columns; + var stack = columns.map(function (column, index) { + return _this.setColumnValues(index, column.values); + }); + return Promise.all(stack); + }, + emit: function (event) { + var type = event.currentTarget.dataset.type; + if (this.simple) { + this.$emit(type, { + value: this.getColumnValue(0), + index: this.getColumnIndex(0), + }); + } + else { + this.$emit(type, { + value: this.getValues(), + index: this.getIndexes(), + }); + } + }, + onChange: function (event) { + if (this.simple) { + this.$emit('change', { + picker: this, + value: this.getColumnValue(0), + index: this.getColumnIndex(0), + }); + } + else { + this.$emit('change', { + picker: this, + value: this.getValues(), + index: event.currentTarget.dataset.index, + }); + } + }, + // get column instance by index + getColumn: function (index) { + return this.children[index]; + }, + // get column value by index + getColumnValue: function (index) { + var column = this.getColumn(index); + return column && column.getValue(); + }, + // set column value by index + setColumnValue: function (index, value) { + var column = this.getColumn(index); + if (column == null) { + return Promise.reject(new Error('setColumnValue: 对应列不存在')); + } + return column.setValue(value); + }, + // get column option index by column index + getColumnIndex: function (columnIndex) { + return (this.getColumn(columnIndex) || {}).data.currentIndex; + }, + // set column option index by column index + setColumnIndex: function (columnIndex, optionIndex) { + var column = this.getColumn(columnIndex); + if (column == null) { + return Promise.reject(new Error('setColumnIndex: 对应列不存在')); + } + return column.setIndex(optionIndex); + }, + // get options of column by index + getColumnValues: function (index) { + return (this.children[index] || {}).data.options; + }, + // set options of column by index + setColumnValues: function (index, options, needReset) { + if (needReset === void 0) { needReset = true; } + var column = this.children[index]; + if (column == null) { + return Promise.reject(new Error('setColumnValues: 对应列不存在')); + } + var isSame = JSON.stringify(column.data.options) === JSON.stringify(options); + if (isSame) { + return Promise.resolve(); + } + return column.set({ options: options }).then(function () { + if (needReset) { + column.setIndex(0); + } + }); + }, + // get values of all columns + getValues: function () { + return this.children.map(function (child) { return child.getValue(); }); + }, + // set values of all columns + setValues: function (values) { + var _this = this; + var stack = values.map(function (value, index) { + return _this.setColumnValue(index, value); + }); + return Promise.all(stack); + }, + // get indexes of all columns + getIndexes: function () { + return this.children.map(function (child) { return child.data.currentIndex; }); + }, + // set indexes of all columns + setIndexes: function (indexes) { + var _this = this; + var stack = indexes.map(function (optionIndex, columnIndex) { + return _this.setColumnIndex(columnIndex, optionIndex); + }); + return Promise.all(stack); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/picker/index.json b/src/miniprogram_npm/@vant/weapp/picker/index.json new file mode 100644 index 0000000..2fcec89 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "picker-column": "../picker-column/index", + "loading": "../loading/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/picker/index.wxml b/src/miniprogram_npm/@vant/weapp/picker/index.wxml new file mode 100644 index 0000000..8564ccc --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/index.wxml @@ -0,0 +1,37 @@ +<wxs src="./index.wxs" module="computed" /> + +<view class="van-picker custom-class"> + <include wx:if="{{ toolbarPosition === 'top' }}" src="./toolbar.wxml" /> + + <view wx:if="{{ loading }}" class="van-picker__loading"> + <loading color="#1989fa"/> + </view> + + <view + class="van-picker__columns" + style="{{ computed.columnsStyle({ itemHeight, visibleItemCount }) }}" + catch:touchmove="noop" + > + <picker-column + class="van-picker__column" + wx:for="{{ computed.columns(columns) }}" + wx:key="index" + data-index="{{ index }}" + custom-class="column-class" + value-key="{{ valueKey }}" + initial-options="{{ item.values }}" + default-index="{{ item.defaultIndex || defaultIndex }}" + item-height="{{ itemHeight }}" + visible-item-count="{{ visibleItemCount }}" + active-class="active-class" + bind:change="onChange" + /> + <view class="van-picker__mask" style="{{ computed.maskStyle({ itemHeight, visibleItemCount }) }}" /> + <view + class="van-picker__frame van-hairline--top-bottom" + style="{{ computed.frameStyle({ itemHeight }) }}" + /> + </view> + + <include wx:if="{{ toolbarPosition === 'bottom' }}" src="./toolbar.wxml" /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/picker/index.wxs b/src/miniprogram_npm/@vant/weapp/picker/index.wxs new file mode 100644 index 0000000..0abbd10 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/index.wxs @@ -0,0 +1,42 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); +var array = require('../wxs/array.wxs'); + +function columnsStyle(data) { + return style({ + height: addUnit(data.itemHeight * data.visibleItemCount), + }); +} + +function maskStyle(data) { + return style({ + 'background-size': + '100% ' + addUnit((data.itemHeight * (data.visibleItemCount - 1)) / 2), + }); +} + +function frameStyle(data) { + return style({ + height: addUnit(data.itemHeight), + }); +} + +function columns(columns) { + if (!array.isArray(columns)) { + return []; + } + + if (columns.length && !columns[0].values) { + return [{ values: columns }]; + } + + return columns; +} + +module.exports = { + columnsStyle: columnsStyle, + frameStyle: frameStyle, + maskStyle: maskStyle, + columns: columns, +}; diff --git a/src/miniprogram_npm/@vant/weapp/picker/index.wxss b/src/miniprogram_npm/@vant/weapp/picker/index.wxss new file mode 100644 index 0000000..d924abb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-picker{-webkit-text-size-adjust:100%;background-color:var(--picker-background-color,#fff);overflow:hidden;position:relative;-webkit-user-select:none;user-select:none}.van-picker__toolbar{display:flex;height:var(--picker-toolbar-height,44px);justify-content:space-between;line-height:var(--picker-toolbar-height,44px)}.van-picker__cancel,.van-picker__confirm{font-size:var(--picker-action-font-size,14px);padding:var(--picker-action-padding,0 16px)}.van-picker__cancel--hover,.van-picker__confirm--hover{opacity:.7}.van-picker__confirm{color:var(--picker-confirm-action-color,#576b95)}.van-picker__cancel{color:var(--picker-cancel-action-color,#969799)}.van-picker__title{font-size:var(--picker-option-font-size,16px);font-weight:var(--font-weight-bold,500);max-width:50%;text-align:center}.van-picker__columns{display:flex;position:relative}.van-picker__column{flex:1 1;width:0}.van-picker__loading{align-items:center;background-color:var(--picker-loading-mask-color,hsla(0,0%,100%,.9));bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:4}.van-picker__mask{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-image:linear-gradient(180deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.4)),linear-gradient(0deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.4));background-position:top,bottom;background-repeat:no-repeat;height:100%;left:0;top:0;width:100%;z-index:2}.van-picker__frame,.van-picker__mask{pointer-events:none;position:absolute}.van-picker__frame{left:16px;right:16px;top:50%;transform:translateY(-50%);z-index:1} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/picker/shared.d.ts b/src/miniprogram_npm/@vant/weapp/picker/shared.d.ts new file mode 100644 index 0000000..c548045 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/shared.d.ts @@ -0,0 +1,21 @@ +export declare const pickerProps: { + title: StringConstructor; + loading: BooleanConstructor; + showToolbar: BooleanConstructor; + cancelButtonText: { + type: StringConstructor; + value: string; + }; + confirmButtonText: { + type: StringConstructor; + value: string; + }; + visibleItemCount: { + type: NumberConstructor; + value: number; + }; + itemHeight: { + type: NumberConstructor; + value: number; + }; +}; diff --git a/src/miniprogram_npm/@vant/weapp/picker/shared.js b/src/miniprogram_npm/@vant/weapp/picker/shared.js new file mode 100644 index 0000000..3d40a8c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/shared.js @@ -0,0 +1,24 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.pickerProps = void 0; +exports.pickerProps = { + title: String, + loading: Boolean, + showToolbar: Boolean, + cancelButtonText: { + type: String, + value: '取消', + }, + confirmButtonText: { + type: String, + value: '确认', + }, + visibleItemCount: { + type: Number, + value: 6, + }, + itemHeight: { + type: Number, + value: 44, + }, +}; diff --git a/src/miniprogram_npm/@vant/weapp/picker/toolbar.wxml b/src/miniprogram_npm/@vant/weapp/picker/toolbar.wxml new file mode 100644 index 0000000..414f612 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/picker/toolbar.wxml @@ -0,0 +1,23 @@ +<view wx:if="{{ showToolbar }}" class="van-picker__toolbar toolbar-class"> + <view + class="van-picker__cancel" + hover-class="van-picker__cancel--hover" + hover-stay-time="70" + data-type="cancel" + bindtap="emit" + > + {{ cancelButtonText }} + </view> + <view wx:if="{{ title }}" class="van-picker__title van-ellipsis">{{ + title + }}</view> + <view + class="van-picker__confirm" + hover-class="van-picker__confirm--hover" + hover-stay-time="70" + data-type="confirm" + bindtap="emit" + > + {{ confirmButtonText }} + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/popup/index.d.ts b/src/miniprogram_npm/@vant/weapp/popup/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/popup/index.js b/src/miniprogram_npm/@vant/weapp/popup/index.js new file mode 100644 index 0000000..18b08e6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/index.js @@ -0,0 +1,99 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var transition_1 = require("../mixins/transition"); +(0, component_1.VantComponent)({ + classes: [ + 'enter-class', + 'enter-active-class', + 'enter-to-class', + 'leave-class', + 'leave-active-class', + 'leave-to-class', + 'close-icon-class', + ], + mixins: [(0, transition_1.transition)(false)], + props: { + round: Boolean, + closeable: Boolean, + customStyle: String, + overlayStyle: String, + transition: { + type: String, + observer: 'observeClass', + }, + zIndex: { + type: Number, + value: 100, + }, + overlay: { + type: Boolean, + value: true, + }, + closeIcon: { + type: String, + value: 'cross', + }, + closeIconPosition: { + type: String, + value: 'top-right', + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + position: { + type: String, + value: 'center', + observer: 'observeClass', + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + safeAreaInsetTop: { + type: Boolean, + value: false, + }, + safeAreaTabBar: { + type: Boolean, + value: false, + }, + lockScroll: { + type: Boolean, + value: true, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + created: function () { + this.observeClass(); + }, + methods: { + onClickCloseIcon: function () { + this.$emit('close'); + }, + onClickOverlay: function () { + this.$emit('click-overlay'); + if (this.data.closeOnClickOverlay) { + this.$emit('close'); + } + }, + observeClass: function () { + var _a = this.data, transition = _a.transition, position = _a.position, duration = _a.duration; + var updateData = { + name: transition || position, + }; + if (transition === 'none') { + updateData.duration = 0; + this.originDuration = duration; + } + else if (this.originDuration != null) { + updateData.duration = this.originDuration; + } + this.setData(updateData); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/popup/index.json b/src/miniprogram_npm/@vant/weapp/popup/index.json new file mode 100644 index 0000000..88a6eab --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-overlay": "../overlay/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/popup/index.wxml b/src/miniprogram_npm/@vant/weapp/popup/index.wxml new file mode 100644 index 0000000..ab824b1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/index.wxml @@ -0,0 +1,21 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<import src="./popup.wxml" /> + +<van-overlay + wx:if="{{ overlay }}" + show="{{ show }}" + z-index="{{ zIndex }}" + custom-style="{{ overlayStyle }}" + duration="{{ duration }}" + bind:click="onClickOverlay" + lock-scroll="{{ lockScroll }}" + root-portal="{{ rootPortal }}" +/> + +<root-portal wx:if="{{ rootPortal }}"> + <include src="./popup.wxml" /> +</root-portal> + + <include wx:else src="./popup.wxml" /> diff --git a/src/miniprogram_npm/@vant/weapp/popup/index.wxs b/src/miniprogram_npm/@vant/weapp/popup/index.wxs new file mode 100644 index 0000000..8d59f24 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function popupStyle(data) { + return style([ + { + 'z-index': data.zIndex, + '-webkit-transition-duration': data.currentDuration + 'ms', + 'transition-duration': data.currentDuration + 'ms', + }, + data.display ? null : 'display: none', + data.customStyle, + ]); +} + +module.exports = { + popupStyle: popupStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/popup/index.wxss b/src/miniprogram_npm/@vant/weapp/popup/index.wxss new file mode 100644 index 0000000..91983b4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-popup{-webkit-overflow-scrolling:touch;animation:ease both;background-color:var(--popup-background-color,#fff);box-sizing:border-box;max-height:100%;overflow-y:auto;position:fixed;transition-timing-function:ease}.van-popup--center{left:50%;top:50%;transform:translate3d(-50%,-50%,0)}.van-popup--center.van-popup--round{border-radius:var(--popup-round-border-radius,16px)}.van-popup--top{left:0;top:0;width:100%}.van-popup--top.van-popup--round{border-radius:0 0 var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) var(--popup-round-border-radius,var(--popup-round-border-radius,16px))}.van-popup--right{right:0;top:50%;transform:translate3d(0,-50%,0)}.van-popup--right.van-popup--round{border-radius:var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) 0 0 var(--popup-round-border-radius,var(--popup-round-border-radius,16px))}.van-popup--bottom{bottom:0;left:0;width:100%}.van-popup--bottom.van-popup--round{border-radius:var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) 0 0}.van-popup--left{left:0;top:50%;transform:translate3d(0,-50%,0)}.van-popup--left.van-popup--round{border-radius:0 var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) 0}.van-popup--bottom.van-popup--safe{padding-bottom:env(safe-area-inset-bottom)}.van-popup--bottom.van-popup--safeTabBar,.van-popup--top.van-popup--safeTabBar{bottom:var(--tabbar-height,50px)}.van-popup--safeTop{padding-top:env(safe-area-inset-top)}.van-popup__close-icon{color:var(--popup-close-icon-color,#969799);font-size:var(--popup-close-icon-size,18px);position:absolute;z-index:var(--popup-close-icon-z-index,1)}.van-popup__close-icon--top-left{left:var(--popup-close-icon-margin,16px);top:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--top-right{right:var(--popup-close-icon-margin,16px);top:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--bottom-left{bottom:var(--popup-close-icon-margin,16px);left:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--bottom-right{bottom:var(--popup-close-icon-margin,16px);right:var(--popup-close-icon-margin,16px)}.van-popup__close-icon:active{opacity:.6}.van-scale-enter-active,.van-scale-leave-active{transition-property:opacity,transform}.van-scale-enter,.van-scale-leave-to{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.van-fade-enter-active,.van-fade-leave-active{transition-property:opacity}.van-fade-enter,.van-fade-leave-to{opacity:0}.van-center-enter-active,.van-center-leave-active{transition-property:opacity}.van-center-enter,.van-center-leave-to{opacity:0}.van-bottom-enter-active,.van-bottom-leave-active,.van-left-enter-active,.van-left-leave-active,.van-right-enter-active,.van-right-leave-active,.van-top-enter-active,.van-top-leave-active{transition-property:transform}.van-bottom-enter,.van-bottom-leave-to{transform:translate3d(0,100%,0)}.van-top-enter,.van-top-leave-to{transform:translate3d(0,-100%,0)}.van-left-enter,.van-left-leave-to{transform:translate3d(-100%,-50%,0)}.van-right-enter,.van-right-leave-to{transform:translate3d(100%,-50%,0)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/popup/popup.wxml b/src/miniprogram_npm/@vant/weapp/popup/popup.wxml new file mode 100644 index 0000000..bd8f508 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/popup/popup.wxml @@ -0,0 +1,16 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> +<view + wx:if="{{ inited }}" + class="custom-class {{ classes }} {{ utils.bem('popup', [position, { round, safe: safeAreaInsetBottom, safeTop: safeAreaInsetTop, safeTabBar: safeAreaTabBar }]) }}" + style="{{ computed.popupStyle({ zIndex, currentDuration, display, customStyle }) }}" + bind:transitionend="onTransitionEnd" +> + <slot /> + <van-icon + wx:if="{{ closeable }}" + name="{{ closeIcon }}" + class="close-icon-class van-popup__close-icon van-popup__close-icon--{{ closeIconPosition }}" + bind:tap="onClickCloseIcon" + /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/progress/index.d.ts b/src/miniprogram_npm/@vant/weapp/progress/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/progress/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/progress/index.js b/src/miniprogram_npm/@vant/weapp/progress/index.js new file mode 100644 index 0000000..3bca928 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/progress/index.js @@ -0,0 +1,55 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + props: { + inactive: Boolean, + percentage: { + type: Number, + observer: 'setLeft', + }, + pivotText: String, + pivotColor: String, + trackColor: String, + showPivot: { + type: Boolean, + value: true, + }, + color: { + type: String, + value: color_1.BLUE, + }, + textColor: { + type: String, + value: '#fff', + }, + strokeWidth: { + type: null, + value: 4, + }, + }, + data: { + right: 0, + }, + mounted: function () { + this.setLeft(); + }, + methods: { + setLeft: function () { + var _this = this; + Promise.all([ + (0, utils_1.getRect)(this, '.van-progress'), + (0, utils_1.getRect)(this, '.van-progress__pivot'), + ]).then(function (_a) { + var portion = _a[0], pivot = _a[1]; + if (portion && pivot) { + _this.setData({ + right: (pivot.width * (_this.data.percentage - 100)) / 100, + }); + } + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/progress/index.json b/src/miniprogram_npm/@vant/weapp/progress/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/progress/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/progress/index.wxml b/src/miniprogram_npm/@vant/weapp/progress/index.wxml new file mode 100644 index 0000000..e81514d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/progress/index.wxml @@ -0,0 +1,20 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="van-progress custom-class" + style="{{ computed.rootStyle({ strokeWidth, trackColor }) }}" +> + <view + class="van-progress__portion" + style="{{ computed.portionStyle({ percentage, inactive, color }) }}" + > + <view + wx:if="{{ showPivot && computed.pivotText(pivotText, percentage) }}" + style="{{ computed.pivotStyle({ textColor, pivotColor, inactive, color, right }) }}" + class="van-progress__pivot" + > + {{ computed.pivotText(pivotText, percentage) }} + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/progress/index.wxs b/src/miniprogram_npm/@vant/weapp/progress/index.wxs new file mode 100644 index 0000000..5b1e8e6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/progress/index.wxs @@ -0,0 +1,36 @@ +/* eslint-disable */ +var utils = require('../wxs/utils.wxs'); +var style = require('../wxs/style.wxs'); + +function pivotText(pivotText, percentage) { + return pivotText || percentage + '%'; +} + +function rootStyle(data) { + return style({ + 'height': data.strokeWidth ? utils.addUnit(data.strokeWidth) : '', + 'background': data.trackColor, + }); +} + +function portionStyle(data) { + return style({ + background: data.inactive ? '#cacaca' : data.color, + width: data.percentage ? data.percentage + '%' : '', + }); +} + +function pivotStyle(data) { + return style({ + color: data.textColor, + right: data.right + 'px', + background: data.pivotColor ? data.pivotColor : data.inactive ? '#cacaca' : data.color, + }); +} + +module.exports = { + pivotText: pivotText, + rootStyle: rootStyle, + portionStyle: portionStyle, + pivotStyle: pivotStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/progress/index.wxss b/src/miniprogram_npm/@vant/weapp/progress/index.wxss new file mode 100644 index 0000000..a08972a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/progress/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-progress{background:var(--progress-background-color,#ebedf0);border-radius:var(--progress-height,4px);height:var(--progress-height,4px);position:relative}.van-progress__portion{background:var(--progress-color,#1989fa);border-radius:inherit;height:100%;left:0;position:absolute}.van-progress__pivot{background-color:var(--progress-pivot-background-color,#1989fa);border-radius:1em;box-sizing:border-box;color:var(--progress-pivot-text-color,#fff);font-size:var(--progress-pivot-font-size,10px);line-height:var(--progress-pivot-line-height,1.6);min-width:3.6em;padding:var(--progress-pivot-padding,0 5px);position:absolute;text-align:center;top:50%;transform:translateY(-50%);word-break:keep-all} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/radio-group/index.d.ts b/src/miniprogram_npm/@vant/weapp/radio-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/radio-group/index.js b/src/miniprogram_npm/@vant/weapp/radio-group/index.js new file mode 100644 index 0000000..ddb2a60 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio-group/index.js @@ -0,0 +1,24 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useChildren)('radio'), + props: { + value: { + type: null, + observer: 'updateChildren', + }, + direction: String, + disabled: { + type: Boolean, + observer: 'updateChildren', + }, + }, + methods: { + updateChildren: function () { + this.children.forEach(function (child) { return child.updateFromParent(); }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/radio-group/index.json b/src/miniprogram_npm/@vant/weapp/radio-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/radio-group/index.wxml b/src/miniprogram_npm/@vant/weapp/radio-group/index.wxml new file mode 100644 index 0000000..0ab17af --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio-group/index.wxml @@ -0,0 +1,5 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="{{ utils.bem('radio-group', [direction]) }}"> + <slot></slot> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/radio-group/index.wxss b/src/miniprogram_npm/@vant/weapp/radio-group/index.wxss new file mode 100644 index 0000000..4e3b5d4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-radio-group--horizontal{display:flex;flex-wrap:wrap} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/radio/index.d.ts b/src/miniprogram_npm/@vant/weapp/radio/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/radio/index.js b/src/miniprogram_npm/@vant/weapp/radio/index.js new file mode 100644 index 0000000..61a86d5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var version_1 = require("../common/version"); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useParent)('radio-group', function () { + this.updateFromParent(); + }), + classes: ['icon-class', 'label-class'], + props: { + name: null, + value: null, + disabled: Boolean, + useIconSlot: Boolean, + checkedColor: String, + labelPosition: { + type: String, + value: 'right', + }, + labelDisabled: Boolean, + shape: { + type: String, + value: 'round', + }, + iconSize: { + type: null, + value: 20, + }, + }, + data: { + direction: '', + parentDisabled: false, + }, + methods: { + updateFromParent: function () { + if (!this.parent) { + return; + } + var _a = this.parent.data, value = _a.value, parentDisabled = _a.disabled, direction = _a.direction; + this.setData({ + value: value, + direction: direction, + parentDisabled: parentDisabled, + }); + }, + emitChange: function (value) { + var instance = this.parent || this; + instance.$emit('input', value); + instance.$emit('change', value); + if ((0, version_1.canIUseModel)()) { + instance.setData({ value: value }); + } + }, + onChange: function () { + if (!this.data.disabled && !this.data.parentDisabled) { + this.emitChange(this.data.name); + } + }, + onClickLabel: function () { + var _a = this.data, disabled = _a.disabled, parentDisabled = _a.parentDisabled, labelDisabled = _a.labelDisabled, name = _a.name; + if (!(disabled || parentDisabled) && !labelDisabled) { + this.emitChange(name); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/radio/index.json b/src/miniprogram_npm/@vant/weapp/radio/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/radio/index.wxml b/src/miniprogram_npm/@vant/weapp/radio/index.wxml new file mode 100644 index 0000000..5f898c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio/index.wxml @@ -0,0 +1,30 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="{{ utils.bem('radio', [direction]) }} custom-class"> + <view + wx:if="{{ labelPosition === 'left' }}" + class="{{ utils.bem('radio__label', [labelPosition, { disabled: disabled || parentDisabled }]) }} label-class" + bindtap="onClickLabel" + > + <slot /> + </view> + <view class="van-radio__icon-wrap" style="font-size: {{ utils.addUnit(iconSize) }}" bindtap="onChange"> + <slot wx:if="{{ useIconSlot }}" name="icon" /> + <van-icon + wx:else + name="success" + class="{{ utils.bem('radio__icon', [shape, { disabled: disabled || parentDisabled, checked: value === name }]) }}" + style="{{ computed.iconStyle({ iconSize, checkedColor, disabled, parentDisabled, value, name }) }}" + custom-class="icon-class" + custom-style="{{ computed.iconCustomStyle({ iconSize }) }}" + /> + </view> + <view + wx:if="{{ labelPosition === 'right' }}" + class="label-class {{ utils.bem('radio__label', [labelPosition, { disabled: disabled || parentDisabled }]) }}" + bindtap="onClickLabel" + > + <slot /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/radio/index.wxs b/src/miniprogram_npm/@vant/weapp/radio/index.wxs new file mode 100644 index 0000000..a428aad --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio/index.wxs @@ -0,0 +1,33 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function iconStyle(data) { + var styles = { + 'font-size': addUnit(data.iconSize), + }; + + if ( + data.checkedColor && + !(data.disabled || data.parentDisabled) && + data.value === data.name + ) { + styles['border-color'] = data.checkedColor; + styles['background-color'] = data.checkedColor; + } + + return style(styles); +} + +function iconCustomStyle(data) { + return style({ + 'line-height': addUnit(data.iconSize), + 'font-size': '.8em', + display: 'block', + }); +} + +module.exports = { + iconStyle: iconStyle, + iconCustomStyle: iconCustomStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/radio/index.wxss b/src/miniprogram_npm/@vant/weapp/radio/index.wxss new file mode 100644 index 0000000..257b0c7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/radio/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-radio{align-items:center;display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-radio__icon-wrap{flex:none}.van-radio--horizontal{margin-right:var(--padding-sm,12px)}.van-radio__icon{align-items:center;border:1px solid var(--radio-border-color,#c8c9cc);box-sizing:border-box;color:transparent;display:flex;font-size:var(--radio-size,20px);height:1em;justify-content:center;text-align:center;transition-duration:var(--radio-transition-duration,.2s);transition-property:color,border-color,background-color;width:1em}.van-radio__icon--round{border-radius:100%}.van-radio__icon--checked{background-color:var(--radio-checked-icon-color,#1989fa);border-color:var(--radio-checked-icon-color,#1989fa);color:#fff}.van-radio__icon--disabled{background-color:var(--radio-disabled-background-color,#ebedf0);border-color:var(--radio-disabled-icon-color,#c8c9cc)}.van-radio__icon--disabled.van-radio__icon--checked{color:var(--radio-disabled-icon-color,#c8c9cc)}.van-radio__label{word-wrap:break-word;color:var(--radio-label-color,#323233);line-height:var(--radio-size,20px);padding-left:var(--radio-label-margin,10px)}.van-radio__label--left{float:left;margin:0 var(--radio-label-margin,10px) 0 0}.van-radio__label--disabled{color:var(--radio-disabled-label-color,#c8c9cc)}.van-radio__label:empty{margin:0} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/rate/index.d.ts b/src/miniprogram_npm/@vant/weapp/rate/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/rate/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/rate/index.js b/src/miniprogram_npm/@vant/weapp/rate/index.js new file mode 100644 index 0000000..30a96de --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/rate/index.js @@ -0,0 +1,93 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var version_1 = require("../common/version"); +(0, component_1.VantComponent)({ + field: true, + classes: ['icon-class'], + props: { + value: { + type: Number, + observer: function (value) { + if (value !== this.data.innerValue) { + this.setData({ innerValue: value }); + } + }, + }, + readonly: Boolean, + disabled: Boolean, + allowHalf: Boolean, + size: null, + icon: { + type: String, + value: 'star', + }, + voidIcon: { + type: String, + value: 'star-o', + }, + color: String, + voidColor: String, + disabledColor: String, + count: { + type: Number, + value: 5, + observer: function (value) { + this.setData({ innerCountArray: Array.from({ length: value }) }); + }, + }, + gutter: null, + touchable: { + type: Boolean, + value: true, + }, + }, + data: { + innerValue: 0, + innerCountArray: Array.from({ length: 5 }), + }, + methods: { + onSelect: function (event) { + var _this = this; + var data = this.data; + var score = event.currentTarget.dataset.score; + if (!data.disabled && !data.readonly) { + this.setData({ innerValue: score + 1 }); + if ((0, version_1.canIUseModel)()) { + this.setData({ value: score + 1 }); + } + wx.nextTick(function () { + _this.$emit('input', score + 1); + _this.$emit('change', score + 1); + }); + } + }, + onTouchMove: function (event) { + var _this = this; + var touchable = this.data.touchable; + if (!touchable) + return; + var clientX = event.touches[0].clientX; + (0, utils_1.getAllRect)(this, '.van-rate__icon').then(function (list) { + var target = list + .sort(function (cur, next) { return cur.dataset.score - next.dataset.score; }) + .find(function (item) { return clientX >= item.left && clientX <= item.right; }); + if (target != null) { + _this.onSelect(__assign(__assign({}, event), { currentTarget: target })); + } + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/rate/index.json b/src/miniprogram_npm/@vant/weapp/rate/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/rate/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/rate/index.wxml b/src/miniprogram_npm/@vant/weapp/rate/index.wxml new file mode 100644 index 0000000..049714c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/rate/index.wxml @@ -0,0 +1,35 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="../wxs/style.wxs" module="style" /> + +<view + class="{{ utils.bem('rate') }} custom-class" + bind:touchmove="onTouchMove" +> + <view + class="{{ utils.bem('rate__item') }}" + wx:for="{{ innerCountArray }}" + wx:key="index" + style="{{ style({ paddingRight: index !== count - 1 ? utils.addUnit(gutter) : null }) }}" + > + <van-icon + name="{{ index + 1 <= innerValue ? icon : voidIcon }}" + class="{{ utils.bem('rate__icon', [{ disabled, full: index + 1 <= innerValue }])}}" + style="{{ style({ fontSize: utils.addUnit(size) }) }}" + custom-class="icon-class" + data-score="{{ index }}" + color="{{ disabled ? disabledColor : index + 1 <= innerValue ? color : voidColor }}" + bind:click="onSelect" + /> + + <van-icon + wx:if="{{ allowHalf }}" + name="{{ index + 0.5 <= innerValue ? icon : voidIcon }}" + class="{{ utils.bem('rate__icon', ['half', { disabled, full: index + 0.5 <= innerValue }]) }}" + style="{{ style({ fontSize: utils.addUnit(size) }) }}" + custom-class="icon-class" + data-score="{{ index - 0.5 }}" + color="{{ disabled ? disabledColor : index + 0.5 <= innerValue ? color : voidColor }}" + bind:click="onSelect" + /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/rate/index.wxss b/src/miniprogram_npm/@vant/weapp/rate/index.wxss new file mode 100644 index 0000000..470e4f4 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/rate/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-rate{display:inline-flex;-webkit-user-select:none;user-select:none}.van-rate__item{padding:0 var(--rate-horizontal-padding,2px);position:relative}.van-rate__item:not(:last-child){padding-right:var(--rate-icon-gutter,4px)}.van-rate__icon{color:var(--rate-icon-void-color,#c8c9cc);display:block;font-size:var(--rate-icon-size,20px);height:100%}.van-rate__icon--half{left:var(--rate-horizontal-padding,2px);overflow:hidden;position:absolute;top:0;width:.5em}.van-rate__icon--full,.van-rate__icon--half{color:var(--rate-icon-full-color,#ee0a24)}.van-rate__icon--disabled{color:var(--rate-icon-disabled-color,#c8c9cc)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/row/index.d.ts b/src/miniprogram_npm/@vant/weapp/row/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/row/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/row/index.js b/src/miniprogram_npm/@vant/weapp/row/index.js new file mode 100644 index 0000000..c27acd6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/row/index.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('col', function (target) { + var gutter = this.data.gutter; + if (gutter) { + target.setData({ gutter: gutter }); + } + }), + props: { + gutter: { + type: Number, + observer: 'setGutter', + }, + }, + methods: { + setGutter: function () { + var _this = this; + this.children.forEach(function (col) { + col.setData(_this.data); + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/row/index.json b/src/miniprogram_npm/@vant/weapp/row/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/row/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/row/index.wxml b/src/miniprogram_npm/@vant/weapp/row/index.wxml new file mode 100644 index 0000000..69a4359 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/row/index.wxml @@ -0,0 +1,5 @@ +<wxs src="./index.wxs" module="computed" /> + +<view class="van-row custom-class" style="{{ computed.rootStyle({ gutter }) }}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/row/index.wxs b/src/miniprogram_npm/@vant/weapp/row/index.wxs new file mode 100644 index 0000000..f5c5958 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/row/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + if (!data.gutter) { + return ''; + } + + return style({ + 'margin-right': addUnit(-data.gutter / 2), + 'margin-left': addUnit(-data.gutter / 2), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/row/index.wxss b/src/miniprogram_npm/@vant/weapp/row/index.wxss new file mode 100644 index 0000000..bb8946b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/row/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-row:after{clear:both;content:"";display:table} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/search/index.d.ts b/src/miniprogram_npm/@vant/weapp/search/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/search/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/search/index.js b/src/miniprogram_npm/@vant/weapp/search/index.js new file mode 100644 index 0000000..b5348b0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/search/index.js @@ -0,0 +1,100 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var version_1 = require("../common/version"); +(0, component_1.VantComponent)({ + field: true, + classes: ['field-class', 'input-class', 'cancel-class'], + props: { + value: { + type: String, + value: '', + }, + label: String, + focus: Boolean, + error: Boolean, + disabled: Boolean, + readonly: Boolean, + inputAlign: String, + showAction: Boolean, + useActionSlot: Boolean, + useLeftIconSlot: Boolean, + useRightIconSlot: Boolean, + leftIcon: { + type: String, + value: 'search', + }, + rightIcon: String, + placeholder: String, + placeholderStyle: String, + actionText: { + type: String, + value: '取消', + }, + background: { + type: String, + value: '#ffffff', + }, + maxlength: { + type: Number, + value: -1, + }, + shape: { + type: String, + value: 'square', + }, + clearable: { + type: Boolean, + value: true, + }, + clearTrigger: { + type: String, + value: 'focus', + }, + clearIcon: { + type: String, + value: 'clear', + }, + cursorSpacing: { + type: Number, + value: 0, + }, + }, + methods: { + onChange: function (event) { + if ((0, version_1.canIUseModel)()) { + this.setData({ value: event.detail }); + } + this.$emit('change', event.detail); + }, + onCancel: function () { + var _this = this; + /** + * 修复修改输入框值时,输入框失焦和赋值同时触发,赋值失效 + * https://github.com/youzan/vant-weapp/issues/1768 + */ + setTimeout(function () { + if ((0, version_1.canIUseModel)()) { + _this.setData({ value: '' }); + } + _this.$emit('cancel'); + _this.$emit('change', ''); + }, 200); + }, + onSearch: function (event) { + this.$emit('search', event.detail); + }, + onFocus: function (event) { + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + this.$emit('blur', event.detail); + }, + onClear: function (event) { + this.$emit('clear', event.detail); + }, + onClickInput: function (event) { + this.$emit('click-input', event.detail); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/search/index.json b/src/miniprogram_npm/@vant/weapp/search/index.json new file mode 100644 index 0000000..b4cfe91 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/search/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-field": "../field/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/search/index.wxml b/src/miniprogram_npm/@vant/weapp/search/index.wxml new file mode 100644 index 0000000..cbcb47a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/search/index.wxml @@ -0,0 +1,54 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + class="{{ utils.bem('search', { withaction: showAction || useActionSlot }) }} custom-class" + style="background: {{ background }}" +> + <view class="{{ utils.bem('search__content', [shape]) }}"> + <view class="van-search__label" wx:if="{{ label }}">{{ label }}</view> + <slot wx:else name="label" /> + + <van-field + type="search" + left-icon="{{ !useLeftIconSlot ? leftIcon : '' }}" + right-icon="{{ !useRightIconSlot ? rightIcon : '' }}" + focus="{{ focus }}" + error="{{ error }}" + border="{{ false }}" + confirm-type="search" + class="van-search__field field-class" + value="{{ value }}" + disabled="{{ disabled }}" + readonly="{{ readonly }}" + clearable="{{ clearable }}" + clear-trigger="{{ clearTrigger }}" + clear-icon="{{ clearIcon }}" + maxlength="{{ maxlength }}" + input-align="{{ inputAlign }}" + input-class="input-class" + placeholder="{{ placeholder }}" + placeholder-style="{{ placeholderStyle }}" + cursor-spacing="{{ cursorSpacing }}" + custom-style="padding: 5px 10px 5px 0; background-color: transparent;" + bind:blur="onBlur" + bind:focus="onFocus" + bind:change="onChange" + bind:confirm="onSearch" + bind:clear="onClear" + bind:click-input="onClickInput" + > + <slot wx:if="{{ useLeftIconSlot }}" name="left-icon" slot="left-icon" /> + <slot wx:if="{{ useRightIconSlot }}" name="right-icon" slot="right-icon" /> + </van-field> + </view> + + <view + wx:if="{{ showAction || useActionSlot }}" + class="van-search__action" + hover-class="van-search__action--hover" + hover-stay-time="70" + > + <slot wx:if="{{ useActionSlot }}" name="action" /> + <view wx:else bind:tap="onCancel" class="van-search__action-button cancel-class">{{ actionText }}</view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/search/index.wxss b/src/miniprogram_npm/@vant/weapp/search/index.wxss new file mode 100644 index 0000000..4f306b0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/search/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-search{align-items:center;box-sizing:border-box;display:flex;padding:var(--search-padding,10px 12px)}.van-search__content{background-color:var(--search-background-color,#f7f8fa);border-radius:2px;display:flex;flex:1;padding-left:var(--padding-sm,12px)}.van-search__content--round{border-radius:999px}.van-search__label{color:var(--search-label-color,#323233);font-size:var(--search-label-font-size,14px);line-height:var(--search-input-height,34px);padding:var(--search-label-padding,0 5px)}.van-search__field{flex:1}.van-search__field__left-icon{color:var(--search-left-icon-color,#969799)}.van-search--withaction{padding-right:0}.van-search__action{color:var(--search-action-text-color,#323233);font-size:var(--search-action-font-size,14px);line-height:var(--search-input-height,34px)}.van-search__action--hover{background-color:#f2f3f5}.van-search__action-button{padding:var(--search-action-padding,0 8px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts b/src/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/index.js b/src/miniprogram_npm/@vant/weapp/share-sheet/index.js new file mode 100644 index 0000000..11604a7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/index.js @@ -0,0 +1,61 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + // whether to show popup + show: Boolean, + // overlay custom style + overlayStyle: String, + // z-index + zIndex: { + type: Number, + value: 100, + }, + title: String, + cancelText: { + type: String, + value: '取消', + }, + description: String, + options: { + type: Array, + value: [], + }, + overlay: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + duration: { + type: null, + value: 300, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + methods: { + onClickOverlay: function () { + this.$emit('click-overlay'); + }, + onCancel: function () { + this.onClose(); + this.$emit('cancel'); + }, + onSelect: function (event) { + this.$emit('select', event.detail); + }, + onClose: function () { + this.$emit('close'); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/index.json b/src/miniprogram_npm/@vant/weapp/share-sheet/index.json new file mode 100644 index 0000000..15a7c22 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "options": "./options" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxml b/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxml new file mode 100644 index 0000000..72a5b25 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxml @@ -0,0 +1,47 @@ +<wxs src="./index.wxs" module="computed" /> + +<van-popup + round + class="van-share-sheet" + show="{{ show }}" + position="bottom" + overlay="{{ overlay }}" + duration="{{ duration }}" + z-index="{{ zIndex }}" + overlay-style="{{ overlayStyle }}" + close-on-click-overlay="{{ closeOnClickOverlay }}" + safe-area-inset-bottom="{{ safeAreaInsetBottom }}" + root-portal="{{ rootPortal }}" + bind:close="onClose" + bind:click-overlay="onClickOverlay" +> + <view class="van-share-sheet__header"> + <view class="van-share-sheet__title"> + <slot name="title" /> + </view> + <view wx:if="{{ title }}" class="van-share-sheet__title">{{ title }}</view> + + <view class="van-share-sheet__description"> + <slot name="description" /> + </view> + <view wx:if="{{ description }}" class="van-share-sheet__description"> + {{ description }} + </view> + </view> + + <block wx:if="{{ computed.isMulti(options) }}"> + <options + wx:for="{{ options }}" + show-border="{{ index !== 0 }}" + wx:key="index" + options="{{ item }}" + bind:select="onSelect" + /> + </block> + + <options wx:else options="{{ options }}" bind:select="onSelect" /> + + <button type="button" class="van-share-sheet__cancel" bindtap="onCancel"> + {{ cancelText }} + </button> +</van-popup> diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxs b/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxs new file mode 100644 index 0000000..2149ee9 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxs @@ -0,0 +1,12 @@ +/* eslint-disable */ +function isMulti(options) { + if (options == null || options[0] == null) { + return false; + } + + return "Array" === options.constructor && "Array" === options[0].constructor; +} + +module.exports = { + isMulti: isMulti +}; diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxss b/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxss new file mode 100644 index 0000000..e8d8dae --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-share-sheet__header{padding:12px 16px 4px;text-align:center}.van-share-sheet__title{color:#323233;font-size:14px;font-weight:400;line-height:20px;margin-top:8px}.van-share-sheet__title:empty,.van-share-sheet__title:not(:empty)+.van-share-sheet__title{display:none}.van-share-sheet__description{color:#969799;display:block;font-size:12px;line-height:16px;margin-top:8px}.van-share-sheet__description:empty,.van-share-sheet__description:not(:empty)+.van-share-sheet__description{display:none}.van-share-sheet__cancel{background:#fff;border:none;box-sizing:initial;display:block;font-size:16px;height:auto;line-height:48px;padding:0;text-align:center;width:100%}.van-share-sheet__cancel:before{background-color:#f7f8fa;content:" ";display:block;height:8px}.van-share-sheet__cancel:after{display:none}.van-share-sheet__cancel:active{background-color:#f2f3f5} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts b/src/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/options.js b/src/miniprogram_npm/@vant/weapp/share-sheet/options.js new file mode 100644 index 0000000..0432d4f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/options.js @@ -0,0 +1,27 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + options: Array, + showBorder: Boolean, + }, + methods: { + onSelect: function (event) { + var index = event.currentTarget.dataset.index; + var option = this.data.options[index]; + this.$emit('select', __assign(__assign({}, option), { index: index })); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/options.json b/src/miniprogram_npm/@vant/weapp/share-sheet/options.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/options.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxml b/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxml new file mode 100644 index 0000000..2983ebb --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxml @@ -0,0 +1,20 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./options.wxs" module="computed" /> + +<view class="{{ utils.bem('share-sheet__options', { border: showBorder }) }}"> + <view + wx:for="{{ options }}" + wx:key="index" + class="van-share-sheet__option" + data-index="{{ index }}" + bindtap="onSelect" + > + <button class="van-share-sheet__button" open-type="{{ item.openType }}"> + <image src="{{ computed.getIconURL(item.icon) }}" class="van-share-sheet__icon" /> + <view wx:if="{{ item.name }}" class="van-share-sheet__name">{{ item.name }}</view> + <view wx:if="{{ item.description }}" class="van-share-sheet__option-description"> + {{ item.description }} + </view> + </button> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxs b/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxs new file mode 100644 index 0000000..a116d32 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxs @@ -0,0 +1,14 @@ +/* eslint-disable */ +var PRESET_ICONS = ['qq', 'link', 'weibo', 'wechat', 'poster', 'qrcode', 'weapp-qrcode', 'wechat-moments']; + +function getIconURL(icon) { + if (PRESET_ICONS.indexOf(icon) !== -1) { + return 'https://img.yzcdn.cn/vant/share-sheet-' + icon + '.png'; + } + + return icon; +} + +module.exports = { + getIconURL: getIconURL, +}; diff --git a/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxss b/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxss new file mode 100644 index 0000000..b7f5455 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/share-sheet/options.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-share-sheet__options{-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto;overflow-y:visible;padding:16px 0 16px 8px;position:relative}.van-share-sheet__options--border:before{border-top:1px solid #ebedf0;box-sizing:border-box;content:" ";left:16px;pointer-events:none;position:absolute;right:0;top:0;transform:scaleY(.5);transform-origin:center}.van-share-sheet__options::-webkit-scrollbar{height:0}.van-share-sheet__option{align-items:center;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}.van-share-sheet__option:active{opacity:.7}.van-share-sheet__button{background-color:initial;border:0;height:auto;line-height:inherit;padding:0}.van-share-sheet__button:after{border:0}.van-share-sheet__icon{height:48px;margin:0 16px;width:48px}.van-share-sheet__name{color:#646566;font-size:12px;margin-top:8px;padding:0 4px}.van-share-sheet__option-description{color:#c8c9cc;font-size:12px;padding:0 4px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/sidebar-item/index.js b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.js new file mode 100644 index 0000000..eac568f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + classes: ['active-class', 'disabled-class'], + relation: (0, relation_1.useParent)('sidebar'), + props: { + dot: Boolean, + badge: null, + info: null, + title: String, + disabled: Boolean, + }, + methods: { + onClick: function () { + var _this = this; + var parent = this.parent; + if (!parent || this.data.disabled) { + return; + } + var index = parent.children.indexOf(this); + parent.setActive(index).then(function () { + _this.$emit('click', index); + parent.$emit('change', index); + }); + }, + setActive: function (selected) { + return this.setData({ selected: selected }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/sidebar-item/index.json b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.json new file mode 100644 index 0000000..bf0ebe0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-info": "../info/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml new file mode 100644 index 0000000..c5c08a6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml @@ -0,0 +1,18 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + class="{{ utils.bem('sidebar-item', { selected, disabled }) }} {{ selected ? 'active-class' : '' }} {{ disabled ? 'disabled-class' : '' }} custom-class" + hover-class="van-sidebar-item--hover" + hover-stay-time="70" + bind:tap="onClick" +> + <view class="van-sidebar-item__text"> + <van-info + wx:if="{{ badge != null || info !== null || dot }}" + dot="{{ dot }}" + info="{{ badge != null ? badge : info }}" + /> + <view wx:if="{{ title }}">{{ title }}</view> + <slot wx:else name="title" /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss new file mode 100644 index 0000000..f1ce421 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-sidebar-item{background-color:var(--sidebar-background-color,#f7f8fa);border-left:3px solid transparent;box-sizing:border-box;color:var(--sidebar-text-color,#323233);display:block;font-size:var(--sidebar-font-size,14px);line-height:var(--sidebar-line-height,20px);overflow:hidden;padding:var(--sidebar-padding,20px 12px 20px 8px);-webkit-user-select:none;user-select:none}.van-sidebar-item__text{display:inline-block;position:relative;word-break:break-all}.van-sidebar-item--hover:not(.van-sidebar-item--disabled){background-color:var(--sidebar-active-color,#f2f3f5)}.van-sidebar-item:after{border-bottom-width:1px}.van-sidebar-item--selected{border-color:var(--sidebar-selected-border-color,#ee0a24);color:var(--sidebar-selected-text-color,#323233);font-weight:var(--sidebar-selected-font-weight,500)}.van-sidebar-item--selected:after{border-right-width:1px}.van-sidebar-item--selected,.van-sidebar-item--selected.van-sidebar-item--hover{background-color:var(--sidebar-selected-background-color,#fff)}.van-sidebar-item--disabled{color:var(--sidebar-disabled-text-color,#c8c9cc)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/sidebar/index.d.ts b/src/miniprogram_npm/@vant/weapp/sidebar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/sidebar/index.js b/src/miniprogram_npm/@vant/weapp/sidebar/index.js new file mode 100644 index 0000000..f3e0a58 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar/index.js @@ -0,0 +1,36 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('sidebar-item', function () { + this.setActive(this.data.activeKey); + }), + props: { + activeKey: { + type: Number, + value: 0, + observer: 'setActive', + }, + }, + beforeCreate: function () { + this.currentActive = -1; + }, + methods: { + setActive: function (activeKey) { + var _a = this, children = _a.children, currentActive = _a.currentActive; + if (!children.length) { + return Promise.resolve(); + } + this.currentActive = activeKey; + var stack = []; + if (currentActive !== activeKey && children[currentActive]) { + stack.push(children[currentActive].setActive(false)); + } + if (children[activeKey]) { + stack.push(children[activeKey].setActive(true)); + } + return Promise.all(stack); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/sidebar/index.json b/src/miniprogram_npm/@vant/weapp/sidebar/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/sidebar/index.wxml b/src/miniprogram_npm/@vant/weapp/sidebar/index.wxml new file mode 100644 index 0000000..96b11c7 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar/index.wxml @@ -0,0 +1,3 @@ +<view class="van-sidebar custom-class"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/sidebar/index.wxss b/src/miniprogram_npm/@vant/weapp/sidebar/index.wxss new file mode 100644 index 0000000..5a2d44f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sidebar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-sidebar{width:var(--sidebar-width,80px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/skeleton/index.d.ts b/src/miniprogram_npm/@vant/weapp/skeleton/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/skeleton/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/skeleton/index.js b/src/miniprogram_npm/@vant/weapp/skeleton/index.js new file mode 100644 index 0000000..2ab3175 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/skeleton/index.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['avatar-class', 'title-class', 'row-class'], + props: { + row: { + type: Number, + value: 0, + observer: function (value) { + this.setData({ rowArray: Array.from({ length: value }) }); + }, + }, + title: Boolean, + avatar: Boolean, + loading: { + type: Boolean, + value: true, + }, + animate: { + type: Boolean, + value: true, + }, + avatarSize: { + type: String, + value: '32px', + }, + avatarShape: { + type: String, + value: 'round', + }, + titleWidth: { + type: String, + value: '40%', + }, + rowWidth: { + type: null, + value: '100%', + observer: function (val) { + this.setData({ isArray: val instanceof Array }); + }, + }, + }, + data: { + isArray: false, + rowArray: [], + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/skeleton/index.json b/src/miniprogram_npm/@vant/weapp/skeleton/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/skeleton/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/src/miniprogram_npm/@vant/weapp/skeleton/index.wxml b/src/miniprogram_npm/@vant/weapp/skeleton/index.wxml new file mode 100644 index 0000000..058e2ef --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/skeleton/index.wxml @@ -0,0 +1,29 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + wx:if="{{ loading }}" + class="custom-class {{ utils.bem('skeleton', [{animate}]) }}" +> + <view + wx:if="{{ avatar }}" + class="avatar-class {{ utils.bem('skeleton__avatar', [avatarShape])}}" + style="{{ 'width:' + avatarSize + ';height:' + avatarSize }}" + /> + <view class="{{ utils.bem('skeleton__content')}}"> + <view + wx:if="{{ title }}" + class="title-class {{ utils.bem('skeleton__title') }}" + style="{{ 'width:' + titleWidth }}" + /> + <view + wx:for="{{ rowArray }}" + wx:key="index" + wx:for-index="index" + class="row-class {{ utils.bem('skeleton__row') }}" + style="{{ 'width:' + (isArray ? rowWidth[index] : rowWidth) }}" + /> + </view> +</view> +<view wx:else class="{{ utils.bem('skeleton__content')}}"> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/skeleton/index.wxss b/src/miniprogram_npm/@vant/weapp/skeleton/index.wxss new file mode 100644 index 0000000..d59a5ed --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/skeleton/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-skeleton{box-sizing:border-box;display:flex;padding:var(--skeleton-padding,0 16px);width:100%}.van-skeleton__avatar{background-color:var(--skeleton-avatar-background-color,#f2f3f5);flex-shrink:0;margin-right:var(--padding-md,16px)}.van-skeleton__avatar--round{border-radius:100%}.van-skeleton__content{flex:1}.van-skeleton__avatar+.van-skeleton__content{padding-top:var(--padding-xs,8px)}.van-skeleton__row,.van-skeleton__title{background-color:var(--skeleton-row-background-color,#f2f3f5);height:var(--skeleton-row-height,16px)}.van-skeleton__title{margin:0}.van-skeleton__row:not(:first-child){margin-top:var(--skeleton-row-margin-top,12px)}.van-skeleton__title+.van-skeleton__row{margin-top:20px}.van-skeleton--animate{animation:van-skeleton-blink 1.2s ease-in-out infinite}@keyframes van-skeleton-blink{50%{opacity:.6}} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/slider/index.d.ts b/src/miniprogram_npm/@vant/weapp/slider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/slider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/slider/index.js b/src/miniprogram_npm/@vant/weapp/slider/index.js new file mode 100644 index 0000000..92adca8 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/slider/index.js @@ -0,0 +1,206 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var touch_1 = require("../mixins/touch"); +var version_1 = require("../common/version"); +var utils_1 = require("../common/utils"); +var DRAG_STATUS = { + START: 'start', + MOVING: 'moving', + END: 'end', +}; +(0, component_1.VantComponent)({ + mixins: [touch_1.touch], + props: { + range: Boolean, + disabled: Boolean, + useButtonSlot: Boolean, + activeColor: String, + inactiveColor: String, + max: { + type: Number, + value: 100, + }, + min: { + type: Number, + value: 0, + }, + step: { + type: Number, + value: 1, + }, + value: { + type: null, + value: 0, + observer: function (val) { + if (val !== this.value) { + this.updateValue(val); + } + }, + }, + vertical: Boolean, + barHeight: null, + }, + created: function () { + this.updateValue(this.data.value); + }, + methods: { + onTouchStart: function (event) { + var _this = this; + if (this.data.disabled) + return; + var index = event.currentTarget.dataset.index; + if (typeof index === 'number') { + this.buttonIndex = index; + } + this.touchStart(event); + this.startValue = this.format(this.value); + this.newValue = this.value; + if (this.isRange(this.newValue)) { + this.startValue = this.newValue.map(function (val) { return _this.format(val); }); + } + else { + this.startValue = this.format(this.newValue); + } + this.dragStatus = DRAG_STATUS.START; + }, + onTouchMove: function (event) { + var _this = this; + if (this.data.disabled) + return; + if (this.dragStatus === DRAG_STATUS.START) { + this.$emit('drag-start'); + } + this.touchMove(event); + this.dragStatus = DRAG_STATUS.MOVING; + (0, utils_1.getRect)(this, '.van-slider').then(function (rect) { + var vertical = _this.data.vertical; + var delta = vertical ? _this.deltaY : _this.deltaX; + var total = vertical ? rect.height : rect.width; + var diff = (delta / total) * _this.getRange(); + if (_this.isRange(_this.startValue)) { + _this.newValue[_this.buttonIndex] = + _this.startValue[_this.buttonIndex] + diff; + } + else { + _this.newValue = _this.startValue + diff; + } + _this.updateValue(_this.newValue, false, true); + }); + }, + onTouchEnd: function () { + var _this = this; + if (this.data.disabled) + return; + if (this.dragStatus === DRAG_STATUS.MOVING) { + this.dragStatus = DRAG_STATUS.END; + (0, utils_1.nextTick)(function () { + _this.updateValue(_this.newValue, true); + _this.$emit('drag-end'); + }); + } + }, + onClick: function (event) { + var _this = this; + if (this.data.disabled) + return; + var min = this.data.min; + (0, utils_1.getRect)(this, '.van-slider').then(function (rect) { + var vertical = _this.data.vertical; + var touch = event.touches[0]; + var delta = vertical + ? touch.clientY - rect.top + : touch.clientX - rect.left; + var total = vertical ? rect.height : rect.width; + var value = Number(min) + (delta / total) * _this.getRange(); + if (_this.isRange(_this.value)) { + var _a = _this.value, left = _a[0], right = _a[1]; + var middle = (left + right) / 2; + if (value <= middle) { + _this.updateValue([value, right], true); + } + else { + _this.updateValue([left, value], true); + } + } + else { + _this.updateValue(value, true); + } + }); + }, + isRange: function (val) { + var range = this.data.range; + return range && Array.isArray(val); + }, + handleOverlap: function (value) { + if (value[0] > value[1]) { + return value.slice(0).reverse(); + } + return value; + }, + updateValue: function (value, end, drag) { + var _this = this; + if (this.isRange(value)) { + value = this.handleOverlap(value).map(function (val) { return _this.format(val); }); + } + else { + value = this.format(value); + } + this.value = value; + var vertical = this.data.vertical; + var mainAxis = vertical ? 'height' : 'width'; + this.setData({ + wrapperStyle: "\n background: ".concat(this.data.inactiveColor || '', ";\n ").concat(vertical ? 'width' : 'height', ": ").concat((0, utils_1.addUnit)(this.data.barHeight) || '', ";\n "), + barStyle: "\n ".concat(mainAxis, ": ").concat(this.calcMainAxis(), ";\n left: ").concat(vertical ? 0 : this.calcOffset(), ";\n top: ").concat(vertical ? this.calcOffset() : 0, ";\n ").concat(drag ? 'transition: none;' : '', "\n "), + }); + if (drag) { + this.$emit('drag', { value: value }); + } + if (end) { + this.$emit('change', value); + } + if ((drag || end) && (0, version_1.canIUseModel)()) { + this.setData({ value: value }); + } + }, + getScope: function () { + return Number(this.data.max) - Number(this.data.min); + }, + getRange: function () { + var _a = this.data, max = _a.max, min = _a.min; + return max - min; + }, + getOffsetWidth: function (current, min) { + var scope = this.getScope(); + // 避免最小值小于最小step时出现负数情况 + return "".concat(Math.max(((current - min) * 100) / scope, 0), "%"); + }, + // 计算选中条的长度百分比 + calcMainAxis: function () { + var value = this.value; + var min = this.data.min; + if (this.isRange(value)) { + return this.getOffsetWidth(value[1], value[0]); + } + return this.getOffsetWidth(value, Number(min)); + }, + // 计算选中条的开始位置的偏移量 + calcOffset: function () { + var value = this.value; + var min = this.data.min; + var scope = this.getScope(); + if (this.isRange(value)) { + return "".concat(((value[0] - Number(min)) * 100) / scope, "%"); + } + return '0%'; + }, + format: function (value) { + var min = +this.data.min; + var max = +this.data.max; + var step = +this.data.step; + value = (0, utils_1.clamp)(value, min, max); + var diff = Math.round((value - min) / step) * step; + return (0, utils_1.addNumber)(min, diff); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/slider/index.json b/src/miniprogram_npm/@vant/weapp/slider/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/slider/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/slider/index.wxml b/src/miniprogram_npm/@vant/weapp/slider/index.wxml new file mode 100644 index 0000000..7c0184f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/slider/index.wxml @@ -0,0 +1,68 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="../wxs/style.wxs" module="style" /> + +<view + class="custom-class {{ utils.bem('slider', { disabled, vertical }) }}" + style="{{ wrapperStyle }}" + bind:tap="onClick" +> + <view + class="{{ utils.bem('slider__bar') }}" + style="{{ barStyle }}; {{ style({ backgroundColor: activeColor }) }}" + > + <view + wx:if="{{ range }}" + class="{{ utils.bem('slider__button-wrapper-left') }}" + data-index="{{ 0 }}" + bind:touchstart="onTouchStart" + catch:touchmove="onTouchMove" + bind:touchend="onTouchEnd" + bind:touchcancel="onTouchEnd" + > + <slot + wx:if="{{ useButtonSlot }}" + name="left-button" + /> + <view + wx:else + class="{{ utils.bem('slider__button') }}" + /> + </view> + <view + wx:if="{{ range }}" + class="{{ utils.bem('slider__button-wrapper-right') }}" + data-index="{{ 1 }}" + bind:touchstart="onTouchStart" + catch:touchmove="onTouchMove" + bind:touchend="onTouchEnd" + bind:touchcancel="onTouchEnd" + > + <slot + wx:if="{{ useButtonSlot }}" + name="right-button" + /> + <view + wx:else + class="{{ utils.bem('slider__button') }}" + /> + </view> + + <view + wx:if="{{ !range }}" + class="{{ utils.bem('slider__button-wrapper') }}" + bind:touchstart="onTouchStart" + catch:touchmove="onTouchMove" + bind:touchend="onTouchEnd" + bind:touchcancel="onTouchEnd" + > + <slot + wx:if="{{ useButtonSlot }}" + name="button" + /> + <view + wx:else + class="{{ utils.bem('slider__button') }}" + /> + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/slider/index.wxs b/src/miniprogram_npm/@vant/weapp/slider/index.wxs new file mode 100644 index 0000000..7c43e6e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/slider/index.wxs @@ -0,0 +1,14 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function barStyle(barHeight, activeColor) { + return style({ + height: addUnit(barHeight), + background: activeColor, + }); +} + +module.exports = { + barStyle: barStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/slider/index.wxss b/src/miniprogram_npm/@vant/weapp/slider/index.wxss new file mode 100644 index 0000000..d1587de --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/slider/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-slider{background-color:var(--slider-inactive-background-color,#ebedf0);border-radius:999px;height:var(--slider-bar-height,2px);position:relative}.van-slider:before{bottom:calc(var(--padding-xs, 8px)*-1);content:"";left:0;position:absolute;right:0;top:calc(var(--padding-xs, 8px)*-1)}.van-slider__bar{background-color:var(--slider-active-background-color,#1989fa);border-radius:inherit;height:100%;position:relative;transition:all .2s;width:100%}.van-slider__button{background-color:var(--slider-button-background-color,#fff);border-radius:var(--slider-button-border-radius,50%);box-shadow:var(--slider-button-box-shadow,0 1px 2px rgba(0,0,0,.5));height:var(--slider-button-height,24px);width:var(--slider-button-width,24px)}.van-slider__button-wrapper,.van-slider__button-wrapper-right{position:absolute;right:0;top:50%;transform:translate3d(50%,-50%,0)}.van-slider__button-wrapper-left{left:0;position:absolute;top:50%;transform:translate3d(-50%,-50%,0)}.van-slider--disabled{opacity:var(--slider-disabled-opacity,.5)}.van-slider--vertical{display:inline-block;height:100%;width:var(--slider-bar-height,2px)}.van-slider--vertical .van-slider__button-wrapper,.van-slider--vertical .van-slider__button-wrapper-right{bottom:0;right:50%;top:auto;transform:translate3d(50%,50%,0)}.van-slider--vertical .van-slider__button-wrapper-left{left:auto;right:50%;top:0;transform:translate3d(50%,-50%,0)}.van-slider--vertical:before{bottom:0;left:-8px;right:-8px;top:0} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/stepper/index.d.ts b/src/miniprogram_npm/@vant/weapp/stepper/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/stepper/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/stepper/index.js b/src/miniprogram_npm/@vant/weapp/stepper/index.js new file mode 100644 index 0000000..7e650a8 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/stepper/index.js @@ -0,0 +1,198 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var LONG_PRESS_START_TIME = 600; +var LONG_PRESS_INTERVAL = 200; +// add num and avoid float number +function add(num1, num2) { + var cardinal = Math.pow(10, 10); + return Math.round((num1 + num2) * cardinal) / cardinal; +} +function equal(value1, value2) { + return String(value1) === String(value2); +} +(0, component_1.VantComponent)({ + field: true, + classes: ['input-class', 'plus-class', 'minus-class'], + props: { + value: { + type: null, + }, + integer: { + type: Boolean, + observer: 'check', + }, + disabled: Boolean, + inputWidth: String, + buttonSize: String, + asyncChange: Boolean, + disableInput: Boolean, + decimalLength: { + type: Number, + value: null, + observer: 'check', + }, + min: { + type: null, + value: 1, + observer: 'check', + }, + max: { + type: null, + value: Number.MAX_SAFE_INTEGER, + observer: 'check', + }, + step: { + type: null, + value: 1, + }, + showPlus: { + type: Boolean, + value: true, + }, + showMinus: { + type: Boolean, + value: true, + }, + disablePlus: Boolean, + disableMinus: Boolean, + longPress: { + type: Boolean, + value: true, + }, + theme: String, + alwaysEmbed: Boolean, + }, + data: { + currentValue: '', + }, + watch: { + value: function () { + this.observeValue(); + }, + }, + created: function () { + this.setData({ + currentValue: this.format(this.data.value), + }); + }, + methods: { + observeValue: function () { + var value = this.data.value; + this.setData({ currentValue: this.format(value) }); + }, + check: function () { + var val = this.format(this.data.currentValue); + if (!equal(val, this.data.currentValue)) { + this.setData({ currentValue: val }); + } + }, + isDisabled: function (type) { + var _a = this.data, disabled = _a.disabled, disablePlus = _a.disablePlus, disableMinus = _a.disableMinus, currentValue = _a.currentValue, max = _a.max, min = _a.min; + if (type === 'plus') { + return disabled || disablePlus || +currentValue >= +max; + } + return disabled || disableMinus || +currentValue <= +min; + }, + onFocus: function (event) { + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + var value = this.format(event.detail.value); + this.setData({ currentValue: value }); + this.emitChange(value); + this.$emit('blur', __assign(__assign({}, event.detail), { value: value })); + }, + // filter illegal characters + filter: function (value) { + value = String(value).replace(/[^0-9.-]/g, ''); + if (this.data.integer && value.indexOf('.') !== -1) { + value = value.split('.')[0]; + } + return value; + }, + // limit value range + format: function (value) { + value = this.filter(value); + // format range + value = value === '' ? 0 : +value; + value = Math.max(Math.min(this.data.max, value), this.data.min); + // format decimal + if ((0, validator_1.isDef)(this.data.decimalLength)) { + value = value.toFixed(this.data.decimalLength); + } + return value; + }, + onInput: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + // allow input to be empty + if (value === '') { + return; + } + var formatted = this.format(value); + this.emitChange(formatted); + }, + emitChange: function (value) { + if (!this.data.asyncChange) { + this.setData({ currentValue: value }); + } + this.$emit('change', value); + }, + onChange: function () { + var type = this.type; + if (this.isDisabled(type)) { + this.$emit('overlimit', type); + return; + } + var diff = type === 'minus' ? -this.data.step : +this.data.step; + var value = this.format(add(+this.data.currentValue, diff)); + this.emitChange(value); + this.$emit(type); + }, + longPressStep: function () { + var _this = this; + this.longPressTimer = setTimeout(function () { + _this.onChange(); + _this.longPressStep(); + }, LONG_PRESS_INTERVAL); + }, + onTap: function (event) { + var type = event.currentTarget.dataset.type; + this.type = type; + this.onChange(); + }, + onTouchStart: function (event) { + var _this = this; + if (!this.data.longPress) { + return; + } + clearTimeout(this.longPressTimer); + var type = event.currentTarget.dataset.type; + this.type = type; + this.isLongPress = false; + this.longPressTimer = setTimeout(function () { + _this.isLongPress = true; + _this.onChange(); + _this.longPressStep(); + }, LONG_PRESS_START_TIME); + }, + onTouchEnd: function () { + if (!this.data.longPress) { + return; + } + clearTimeout(this.longPressTimer); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/stepper/index.json b/src/miniprogram_npm/@vant/weapp/stepper/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/stepper/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/stepper/index.wxml b/src/miniprogram_npm/@vant/weapp/stepper/index.wxml new file mode 100644 index 0000000..6dd44bc --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/stepper/index.wxml @@ -0,0 +1,43 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="{{ utils.bem('stepper', [theme]) }} custom-class"> + <view + wx:if="{{ showMinus }}" + data-type="minus" + style="{{ computed.buttonStyle({ buttonSize }) }}" + class="minus-class {{ utils.bem('stepper__minus', { disabled: disabled || disableMinus || currentValue <= min }) }}" + hover-class="van-stepper__minus--hover" + hover-stay-time="70" + bind:tap="onTap" + bind:touchstart="onTouchStart" + bind:touchend="onTouchEnd" + > + <slot name="minus" /> + </view> + <input + type="{{ integer ? 'number' : 'digit' }}" + class="input-class {{ utils.bem('stepper__input', { disabled: disabled || disableInput }) }}" + style="{{ computed.inputStyle({ buttonSize, inputWidth }) }}" + value="{{ currentValue }}" + focus="{{ focus }}" + disabled="{{ disabled || disableInput }}" + always-embed="{{ alwaysEmbed }}" + bindinput="onInput" + bind:focus="onFocus" + bind:blur="onBlur" + /> + <view + wx:if="{{ showPlus }}" + data-type="plus" + style="{{ computed.buttonStyle({ buttonSize }) }}" + class="plus-class {{ utils.bem('stepper__plus', { disabled: disabled || disablePlus || currentValue >= max }) }}" + hover-class="van-stepper__plus--hover" + hover-stay-time="70" + bind:tap="onTap" + bind:touchstart="onTouchStart" + bind:touchend="onTouchEnd" + > + <slot name="plus" /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/stepper/index.wxs b/src/miniprogram_npm/@vant/weapp/stepper/index.wxs new file mode 100644 index 0000000..a13e818 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/stepper/index.wxs @@ -0,0 +1,22 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function buttonStyle(data) { + return style({ + width: addUnit(data.buttonSize), + height: addUnit(data.buttonSize), + }); +} + +function inputStyle(data) { + return style({ + width: addUnit(data.inputWidth), + height: addUnit(data.buttonSize), + }); +} + +module.exports = { + buttonStyle: buttonStyle, + inputStyle: inputStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/stepper/index.wxss b/src/miniprogram_npm/@vant/weapp/stepper/index.wxss new file mode 100644 index 0000000..2561a7e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/stepper/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-stepper{font-size:0}.van-stepper__minus,.van-stepper__plus{background-color:var(--stepper-background-color,#f2f3f5);border:0;box-sizing:border-box;color:var(--stepper-button-icon-color,#323233);display:inline-block;height:var(--stepper-input-height,28px);margin:1px;padding:var(--padding-base,4px);position:relative;vertical-align:middle;width:var(--stepper-input-height,28px)}.van-stepper__minus:before,.van-stepper__plus:before{height:1px;width:9px}.van-stepper__minus:after,.van-stepper__plus:after{height:9px;width:1px}.van-stepper__minus:empty.van-stepper__minus:after,.van-stepper__minus:empty.van-stepper__minus:before,.van-stepper__minus:empty.van-stepper__plus:after,.van-stepper__minus:empty.van-stepper__plus:before,.van-stepper__plus:empty.van-stepper__minus:after,.van-stepper__plus:empty.van-stepper__minus:before,.van-stepper__plus:empty.van-stepper__plus:after,.van-stepper__plus:empty.van-stepper__plus:before{background-color:currentColor;bottom:0;content:"";left:0;margin:auto;position:absolute;right:0;top:0}.van-stepper__minus--hover,.van-stepper__plus--hover{background-color:var(--stepper-active-color,#e8e8e8)}.van-stepper__minus--disabled,.van-stepper__plus--disabled{color:var(--stepper-button-disabled-icon-color,#c8c9cc)}.van-stepper__minus--disabled,.van-stepper__minus--disabled.van-stepper__minus--hover,.van-stepper__minus--disabled.van-stepper__plus--hover,.van-stepper__plus--disabled,.van-stepper__plus--disabled.van-stepper__minus--hover,.van-stepper__plus--disabled.van-stepper__plus--hover{background-color:var(--stepper-button-disabled-color,#f7f8fa)}.van-stepper__minus{border-radius:var(--stepper-border-radius,var(--stepper-border-radius,4px)) 0 0 var(--stepper-border-radius,var(--stepper-border-radius,4px))}.van-stepper__minus:after{display:none}.van-stepper__plus{border-radius:0 var(--stepper-border-radius,var(--stepper-border-radius,4px)) var(--stepper-border-radius,var(--stepper-border-radius,4px)) 0}.van-stepper--round .van-stepper__input{background-color:initial!important}.van-stepper--round .van-stepper__minus,.van-stepper--round .van-stepper__plus{border-radius:100%}.van-stepper--round .van-stepper__minus:active,.van-stepper--round .van-stepper__plus:active{opacity:.7}.van-stepper--round .van-stepper__minus--disabled,.van-stepper--round .van-stepper__minus--disabled:active,.van-stepper--round .van-stepper__plus--disabled,.van-stepper--round .van-stepper__plus--disabled:active{opacity:.3}.van-stepper--round .van-stepper__plus{background-color:#ee0a24;color:#fff}.van-stepper--round .van-stepper__minus{background-color:#fff;border:1px solid #ee0a24;color:#ee0a24}.van-stepper__input{-webkit-appearance:none;background-color:var(--stepper-background-color,#f2f3f5);border:0;border-radius:0;border-width:1px 0;box-sizing:border-box;color:var(--stepper-input-text-color,#323233);display:inline-block;font-size:var(--stepper-input-font-size,14px);height:var(--stepper-input-height,28px);margin:1px;min-height:0;padding:1px;text-align:center;vertical-align:middle;width:var(--stepper-input-width,32px)}.van-stepper__input--disabled{background-color:var(--stepper-input-disabled-background-color,#f2f3f5);color:var(--stepper-input-disabled-text-color,#c8c9cc)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/steps/index.d.ts b/src/miniprogram_npm/@vant/weapp/steps/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/steps/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/steps/index.js b/src/miniprogram_npm/@vant/weapp/steps/index.js new file mode 100644 index 0000000..1a9986a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/steps/index.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var color_1 = require("../common/color"); +(0, component_1.VantComponent)({ + classes: ['desc-class'], + props: { + icon: String, + steps: Array, + active: Number, + direction: { + type: String, + value: 'horizontal', + }, + activeColor: { + type: String, + value: color_1.GREEN, + }, + inactiveColor: { + type: String, + value: color_1.GRAY_DARK, + }, + activeIcon: { + type: String, + value: 'checked', + }, + inactiveIcon: String, + }, + methods: { + onClick: function (event) { + var index = event.currentTarget.dataset.index; + this.$emit('click-step', index); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/steps/index.json b/src/miniprogram_npm/@vant/weapp/steps/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/steps/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/steps/index.wxml b/src/miniprogram_npm/@vant/weapp/steps/index.wxml new file mode 100644 index 0000000..00c8e10 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/steps/index.wxml @@ -0,0 +1,54 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="custom-class {{ utils.bem('steps', [direction]) }}"> + <view class="van-step__wrapper"> + <view + wx:for="{{ steps }}" + wx:key="index" + bindtap="onClick" + data-index="{{ index }}" + class="{{ utils.bem('step', [direction, status(index, active)]) }} van-hairline" + style="{{ status(index, active) === 'inactive' ? 'color: ' + inactiveColor: '' }}" + > + <view class="van-step__title" style="{{ index === active ? 'color: ' + activeColor : '' }}"> + <view>{{ item.text }}</view> + <view class="desc-class">{{ item.desc }}</view> + </view> + <view class="van-step__circle-container"> + <block wx:if="{{ index !== active }}"> + <van-icon + wx:if="{{ item.inactiveIcon || inactiveIcon }}" + color="{{ status(index, active) === 'inactive' ? inactiveColor: activeColor }}" + name="{{ item.inactiveIcon || inactiveIcon }}" + class="van-step__icon" + /> + <view + wx:else + class="van-step__circle" + style="{{ 'background-color: ' + (index < active ? activeColor : inactiveColor) }}" + /> + </block> + + <van-icon wx:else name="{{ item.activeIcon || activeIcon }}" color="{{ activeColor }}" class="van-step__icon" /> + </view> + <view + wx:if="{{ index !== steps.length - 1 }}" + class="van-step__line" style="{{ 'background-color: ' + (index < active ? activeColor : inactiveColor) }}" + /> + </view> + </view> +</view> + +<wxs module="status"> +function get(index, active) { + if (index < active) { + return 'finish'; + } else if (index === active) { + return 'process'; + } + + return 'inactive'; +} + +module.exports = get; +</wxs> diff --git a/src/miniprogram_npm/@vant/weapp/steps/index.wxss b/src/miniprogram_npm/@vant/weapp/steps/index.wxss new file mode 100644 index 0000000..c653884 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/steps/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-steps{background-color:var(--steps-background-color,#fff);overflow:hidden}.van-steps--horizontal{padding:10px}.van-steps--horizontal .van-step__wrapper{display:flex;overflow:hidden;position:relative}.van-steps--vertical{padding-left:10px}.van-steps--vertical .van-step__wrapper{padding:0 0 0 20px}.van-step{color:var(--step-text-color,#969799);flex:1;font-size:var(--step-font-size,14px);position:relative}.van-step--finish{color:var(--step-finish-text-color,#323233)}.van-step__circle{background-color:var(--step-circle-color,#969799);border-radius:50%;height:var(--step-circle-size,5px);width:var(--step-circle-size,5px)}.van-step--horizontal{padding-bottom:14px}.van-step--horizontal:first-child .van-step__title{transform:none}.van-step--horizontal:first-child .van-step__circle-container{padding:0 8px 0 0;transform:translate3d(0,50%,0)}.van-step--horizontal:last-child{position:absolute;right:0;width:auto}.van-step--horizontal:last-child .van-step__title{text-align:right;transform:none}.van-step--horizontal:last-child .van-step__circle-container{padding:0 0 0 8px;right:0;transform:translate3d(0,50%,0)}.van-step--horizontal .van-step__circle-container{background-color:#fff;bottom:6px;padding:0 var(--padding-xs,8px);position:absolute;transform:translate3d(-50%,50%,0);z-index:1}.van-step--horizontal .van-step__title{display:inline-block;font-size:var(--step-horizontal-title-font-size,12px);transform:translate3d(-50%,0,0)}.van-step--horizontal .van-step__line{background-color:var(--step-line-color,#ebedf0);bottom:6px;height:1px;left:0;position:absolute;right:0;transform:translate3d(0,50%,0)}.van-step--horizontal.van-step--process{color:var(--step-process-text-color,#323233)}.van-step--horizontal.van-step--process .van-step__icon{display:block;font-size:var(--step-icon-size,12px);line-height:1}.van-step--vertical{line-height:18px;padding:10px 10px 10px 0}.van-step--vertical:after{border-bottom-width:1px}.van-step--vertical:last-child:after{border-bottom-width:none}.van-step--vertical:first-child:before{background-color:#fff;content:"";height:20px;left:-15px;position:absolute;top:0;width:1px;z-index:1}.van-step--vertical .van-step__circle,.van-step--vertical .van-step__icon,.van-step--vertical .van-step__line{left:-14px;position:absolute;top:19px;transform:translate3d(-50%,-50%,0);z-index:2}.van-step--vertical .van-step__icon{background-color:var(--steps-background-color,#fff);font-size:var(--step-icon-size,12px);line-height:1}.van-step--vertical .van-step__line{background-color:var(--step-line-color,#ebedf0);height:100%;transform:translate3d(-50%,0,0);width:1px;z-index:1} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/sticky/index.d.ts b/src/miniprogram_npm/@vant/weapp/sticky/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sticky/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/sticky/index.js b/src/miniprogram_npm/@vant/weapp/sticky/index.js new file mode 100644 index 0000000..ffeb125 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sticky/index.js @@ -0,0 +1,126 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var page_scroll_1 = require("../mixins/page-scroll"); +var ROOT_ELEMENT = '.van-sticky'; +(0, component_1.VantComponent)({ + props: { + zIndex: { + type: Number, + value: 99, + }, + offsetTop: { + type: Number, + value: 0, + observer: 'onScroll', + }, + disabled: { + type: Boolean, + observer: 'onScroll', + }, + container: { + type: null, + observer: 'onScroll', + }, + scrollTop: { + type: null, + observer: function (val) { + this.onScroll({ scrollTop: val }); + }, + }, + }, + mixins: [ + (0, page_scroll_1.pageScrollMixin)(function (event) { + if (this.data.scrollTop != null) { + return; + } + this.onScroll(event); + }), + ], + data: { + height: 0, + fixed: false, + transform: 0, + }, + mounted: function () { + this.onScroll(); + }, + methods: { + onScroll: function (_a) { + var _this = this; + var _b = _a === void 0 ? {} : _a, scrollTop = _b.scrollTop; + var _c = this.data, container = _c.container, offsetTop = _c.offsetTop, disabled = _c.disabled; + if (disabled) { + this.setDataAfterDiff({ + fixed: false, + transform: 0, + }); + return; + } + this.scrollTop = scrollTop || this.scrollTop; + if (typeof container === 'function') { + Promise.all([(0, utils_1.getRect)(this, ROOT_ELEMENT), this.getContainerRect()]) + .then(function (_a) { + var root = _a[0], container = _a[1]; + if (offsetTop + root.height > container.height + container.top) { + _this.setDataAfterDiff({ + fixed: false, + transform: container.height - root.height, + }); + } + else if (offsetTop >= root.top) { + _this.setDataAfterDiff({ + fixed: true, + height: root.height, + transform: 0, + }); + } + else { + _this.setDataAfterDiff({ fixed: false, transform: 0 }); + } + }) + .catch(function () { }); + return; + } + (0, utils_1.getRect)(this, ROOT_ELEMENT).then(function (root) { + if (!(0, validator_1.isDef)(root) || (!root.width && !root.height)) { + return; + } + if (offsetTop >= root.top) { + _this.setDataAfterDiff({ fixed: true, height: root.height }); + _this.transform = 0; + } + else { + _this.setDataAfterDiff({ fixed: false }); + } + }); + }, + setDataAfterDiff: function (data) { + var _this = this; + wx.nextTick(function () { + var diff = Object.keys(data).reduce(function (prev, key) { + if (data[key] !== _this.data[key]) { + prev[key] = data[key]; + } + return prev; + }, {}); + if (Object.keys(diff).length > 0) { + _this.setData(diff); + } + _this.$emit('scroll', { + scrollTop: _this.scrollTop, + isFixed: data.fixed || _this.data.fixed, + }); + }); + }, + getContainerRect: function () { + var nodesRef = this.data.container(); + if (!nodesRef) { + return Promise.reject(new Error('not found container')); + } + return new Promise(function (resolve) { return nodesRef.boundingClientRect(resolve).exec(); }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/sticky/index.json b/src/miniprogram_npm/@vant/weapp/sticky/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sticky/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/sticky/index.wxml b/src/miniprogram_npm/@vant/weapp/sticky/index.wxml new file mode 100644 index 0000000..15e9f4a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sticky/index.wxml @@ -0,0 +1,8 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="custom-class van-sticky" style="{{ computed.containerStyle({ fixed, height, zIndex }) }}"> + <view class="{{ utils.bem('sticky-wrap', { fixed }) }}" style="{{ computed.wrapStyle({ fixed, offsetTop, transform, zIndex }) }}"> + <slot /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/sticky/index.wxs b/src/miniprogram_npm/@vant/weapp/sticky/index.wxs new file mode 100644 index 0000000..be99d89 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sticky/index.wxs @@ -0,0 +1,25 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function wrapStyle(data) { + return style({ + transform: data.transform + ? 'translate3d(0, ' + data.transform + 'px, 0)' + : '', + top: data.fixed ? addUnit(data.offsetTop) : '', + 'z-index': data.zIndex, + }); +} + +function containerStyle(data) { + return style({ + height: data.fixed ? addUnit(data.height) : '', + 'z-index': data.zIndex, + }); +} + +module.exports = { + wrapStyle: wrapStyle, + containerStyle: containerStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/sticky/index.wxss b/src/miniprogram_npm/@vant/weapp/sticky/index.wxss new file mode 100644 index 0000000..34d76aa --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/sticky/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-sticky{position:relative}.van-sticky-wrap--fixed{left:0;position:fixed;right:0} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts b/src/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/submit-bar/index.js b/src/miniprogram_npm/@vant/weapp/submit-bar/index.js new file mode 100644 index 0000000..d3bfc25 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/submit-bar/index.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['bar-class', 'price-class', 'button-class'], + props: { + tip: { + type: null, + observer: 'updateTip', + }, + tipIcon: String, + type: Number, + price: { + type: null, + observer: 'updatePrice', + }, + label: String, + loading: Boolean, + disabled: Boolean, + buttonText: String, + currency: { + type: String, + value: '¥', + }, + buttonType: { + type: String, + value: 'danger', + }, + decimalLength: { + type: Number, + value: 2, + observer: 'updatePrice', + }, + suffixLabel: String, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, + methods: { + updatePrice: function () { + var _a = this.data, price = _a.price, decimalLength = _a.decimalLength; + var priceStrArr = typeof price === 'number' && + (price / 100).toFixed(decimalLength).split('.'); + this.setData({ + hasPrice: typeof price === 'number', + integerStr: priceStrArr && priceStrArr[0], + decimalStr: decimalLength && priceStrArr ? ".".concat(priceStrArr[1]) : '', + }); + }, + updateTip: function () { + this.setData({ hasTip: typeof this.data.tip === 'string' }); + }, + onSubmit: function (event) { + this.$emit('submit', event.detail); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/submit-bar/index.json b/src/miniprogram_npm/@vant/weapp/submit-bar/index.json new file mode 100644 index 0000000..bda9b8d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/submit-bar/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-button": "../button/index", + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/submit-bar/index.wxml b/src/miniprogram_npm/@vant/weapp/submit-bar/index.wxml new file mode 100644 index 0000000..a56dd46 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/submit-bar/index.wxml @@ -0,0 +1,44 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view class="van-submit-bar custom-class"> + <slot name="top" /> + + <view class="van-submit-bar__tip"> + <van-icon + wx:if="{{ tipIcon }}" + size="12px" + name="{{ tipIcon }}" + custom-class="van-submit-bar__tip-icon" + /> + <view wx:if="{{ hasTip }}" class="van-submit-bar__tip-text"> + {{ tip }} + </view> + <slot name="tip" /> + </view> + + <view class="bar-class van-submit-bar__bar"> + <slot /> + <view wx:if="{{ hasPrice }}" class="van-submit-bar__text"> + <text>{{ label || '合计:' }}</text> + <text class="van-submit-bar__price price-class"> + <text class="van-submit-bar__currency">{{ currency }} </text> + <text class="van-submit-bar__price-integer">{{ integerStr }}</text><text>{{decimalStr}}</text> + </text> + <text class="van-submit-bar__suffix-label">{{ suffixLabel }}</text> + </view> + <van-button + round + type="{{ buttonType }}" + loading="{{ loading }}" + disabled="{{ disabled }}" + class="van-submit-bar__button" + custom-class="button-class" + custom-style="width: 100%;" + bind:click="onSubmit" + > + {{ loading ? '' : buttonText }} + </van-button> + </view> + + <view wx:if="{{ safeAreaInsetBottom }}" class="van-submit-bar__safe" /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/submit-bar/index.wxss b/src/miniprogram_npm/@vant/weapp/submit-bar/index.wxss new file mode 100644 index 0000000..8379a30 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/submit-bar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-submit-bar{background-color:var(--submit-bar-background-color,#fff);bottom:0;left:0;position:fixed;-webkit-user-select:none;user-select:none;width:100%;z-index:var(--submit-bar-z-index,100)}.van-submit-bar__tip{background-color:var(--submit-bar-tip-background-color,#fff7cc);color:var(--submit-bar-tip-color,#f56723);font-size:var(--submit-bar-tip-font-size,12px);line-height:var(--submit-bar-tip-line-height,1.5);padding:var(--submit-bar-tip-padding,10px)}.van-submit-bar__tip:empty{display:none}.van-submit-bar__tip-icon{margin-right:4px;vertical-align:middle}.van-submit-bar__tip-text{display:inline;vertical-align:middle}.van-submit-bar__bar{align-items:center;background-color:var(--submit-bar-background-color,#fff);display:flex;font-size:var(--submit-bar-text-font-size,14px);height:var(--submit-bar-height,50px);justify-content:flex-end;padding:var(--submit-bar-padding,0 16px)}.van-submit-bar__safe{height:constant(safe-area-inset-bottom);height:env(safe-area-inset-bottom)}.van-submit-bar__text{color:var(--submit-bar-text-color,#323233);flex:1;font-weight:var(--font-weight-bold,500);padding-right:var(--padding-sm,12px);text-align:right}.van-submit-bar__price{color:var(--submit-bar-price-color,#ee0a24);font-size:var(--submit-bar-price-font-size,12px);font-weight:var(--font-weight-bold,500)}.van-submit-bar__price-integer{font-family:Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif;font-size:20px}.van-submit-bar__currency{font-size:var(--submit-bar-currency-font-size,12px)}.van-submit-bar__suffix-label{margin-left:5px}.van-submit-bar__button{--button-default-height:var(--submit-bar-button-height,40px)!important;--button-line-height:var(--submit-bar-button-height,40px)!important;font-weight:var(--font-weight-bold,500);width:var(--submit-bar-button-width,110px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/swipe-cell/index.js b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.js new file mode 100644 index 0000000..1582b6c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.js @@ -0,0 +1,135 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var touch_1 = require("../mixins/touch"); +var utils_1 = require("../common/utils"); +var THRESHOLD = 0.3; +var ARRAY = []; +(0, component_1.VantComponent)({ + props: { + disabled: Boolean, + leftWidth: { + type: Number, + value: 0, + observer: function (leftWidth) { + if (leftWidth === void 0) { leftWidth = 0; } + if (this.offset > 0) { + this.swipeMove(leftWidth); + } + }, + }, + rightWidth: { + type: Number, + value: 0, + observer: function (rightWidth) { + if (rightWidth === void 0) { rightWidth = 0; } + if (this.offset < 0) { + this.swipeMove(-rightWidth); + } + }, + }, + asyncClose: Boolean, + name: { + type: null, + value: '', + }, + }, + mixins: [touch_1.touch], + data: { + catchMove: false, + wrapperStyle: '', + }, + created: function () { + this.offset = 0; + ARRAY.push(this); + }, + destroyed: function () { + var _this = this; + ARRAY = ARRAY.filter(function (item) { return item !== _this; }); + }, + methods: { + open: function (position) { + var _a = this.data, leftWidth = _a.leftWidth, rightWidth = _a.rightWidth; + var offset = position === 'left' ? leftWidth : -rightWidth; + this.swipeMove(offset); + this.$emit('open', { + position: position, + name: this.data.name, + }); + }, + close: function () { + this.swipeMove(0); + }, + swipeMove: function (offset) { + if (offset === void 0) { offset = 0; } + this.offset = (0, utils_1.range)(offset, -this.data.rightWidth, this.data.leftWidth); + var transform = "translate3d(".concat(this.offset, "px, 0, 0)"); + var transition = this.dragging + ? 'none' + : 'transform .6s cubic-bezier(0.18, 0.89, 0.32, 1)'; + this.setData({ + wrapperStyle: "\n -webkit-transform: ".concat(transform, ";\n -webkit-transition: ").concat(transition, ";\n transform: ").concat(transform, ";\n transition: ").concat(transition, ";\n "), + }); + }, + swipeLeaveTransition: function () { + var _a = this.data, leftWidth = _a.leftWidth, rightWidth = _a.rightWidth; + var offset = this.offset; + if (rightWidth > 0 && -offset > rightWidth * THRESHOLD) { + this.open('right'); + } + else if (leftWidth > 0 && offset > leftWidth * THRESHOLD) { + this.open('left'); + } + else { + this.swipeMove(0); + } + this.setData({ catchMove: false }); + }, + startDrag: function (event) { + if (this.data.disabled) { + return; + } + this.startOffset = this.offset; + this.touchStart(event); + }, + noop: function () { }, + onDrag: function (event) { + var _this = this; + if (this.data.disabled) { + return; + } + this.touchMove(event); + if (this.direction !== 'horizontal') { + return; + } + this.dragging = true; + ARRAY.filter(function (item) { return item !== _this && item.offset !== 0; }).forEach(function (item) { return item.close(); }); + this.setData({ catchMove: true }); + this.swipeMove(this.startOffset + this.deltaX); + }, + endDrag: function () { + if (this.data.disabled) { + return; + } + this.dragging = false; + this.swipeLeaveTransition(); + }, + onClick: function (event) { + var _a = event.currentTarget.dataset.key, position = _a === void 0 ? 'outside' : _a; + this.$emit('click', position); + if (!this.offset) { + return; + } + if (this.data.asyncClose) { + this.$emit('close', { + position: position, + instance: this, + name: this.data.name, + }); + } + else { + this.swipeMove(0); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/swipe-cell/index.json b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml new file mode 100644 index 0000000..3f7f726 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml @@ -0,0 +1,20 @@ +<view + class="van-swipe-cell custom-class" + data-key="cell" + catchtap="onClick" + bindtouchstart="startDrag" + catchtouchmove="{{ catchMove ? 'noop' : '' }}" + capture-bind:touchmove="onDrag" + bindtouchend="endDrag" + bindtouchcancel="endDrag" +> + <view style="{{ wrapperStyle }}"> + <view wx:if="{{ leftWidth }}" class="van-swipe-cell__left" data-key="left" catch:tap="onClick"> + <slot name="left" /> + </view> + <slot /> + <view wx:if="{{ rightWidth }}" class="van-swipe-cell__right" data-key="right" catch:tap="onClick"> + <slot name="right" /> + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss new file mode 100644 index 0000000..3a265bf --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-swipe-cell{overflow:hidden;position:relative}.van-swipe-cell__left,.van-swipe-cell__right{height:100%;position:absolute;top:0}.van-swipe-cell__left{left:0;transform:translate3d(-100%,0,0)}.van-swipe-cell__right{right:0;transform:translate3d(100%,0,0)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/switch/index.d.ts b/src/miniprogram_npm/@vant/weapp/switch/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/switch/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/switch/index.js b/src/miniprogram_npm/@vant/weapp/switch/index.js new file mode 100644 index 0000000..1d2317f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/switch/index.js @@ -0,0 +1,38 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + field: true, + classes: ['node-class'], + props: { + checked: null, + loading: Boolean, + disabled: Boolean, + activeColor: String, + inactiveColor: String, + size: { + type: String, + value: '30', + }, + activeValue: { + type: null, + value: true, + }, + inactiveValue: { + type: null, + value: false, + }, + }, + methods: { + onClick: function () { + var _a = this.data, activeValue = _a.activeValue, inactiveValue = _a.inactiveValue, disabled = _a.disabled, loading = _a.loading; + if (disabled || loading) { + return; + } + var checked = this.data.checked === activeValue; + var value = checked ? inactiveValue : activeValue; + this.$emit('input', value); + this.$emit('change', value); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/switch/index.json b/src/miniprogram_npm/@vant/weapp/switch/index.json new file mode 100644 index 0000000..01077f5 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/switch/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-loading": "../loading/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/switch/index.wxml b/src/miniprogram_npm/@vant/weapp/switch/index.wxml new file mode 100644 index 0000000..4e9789b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/switch/index.wxml @@ -0,0 +1,16 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="{{ utils.bem('switch', { on: checked === activeValue, disabled }) }} custom-class" + style="{{ computed.rootStyle({ size, checked, activeColor, inactiveColor, activeValue }) }}" + bind:tap="onClick" +> + <view class="van-switch__node node-class"> + <van-loading + wx:if="{{ loading }}" + color="{{ computed.loadingColor({ checked, activeColor, inactiveColor, activeValue }) }}" + custom-class="van-switch__loading" + /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/switch/index.wxs b/src/miniprogram_npm/@vant/weapp/switch/index.wxs new file mode 100644 index 0000000..3ae387a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/switch/index.wxs @@ -0,0 +1,26 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + var currentColor = data.checked === data.activeValue ? data.activeColor : data.inactiveColor; + + return style({ + 'font-size': addUnit(data.size), + 'background-color': currentColor, + }); +} + +var BLUE = '#1989fa'; +var GRAY_DARK = '#969799'; + +function loadingColor(data) { + return data.checked === data.activeValue + ? data.activeColor || BLUE + : data.inactiveColor || GRAY_DARK; +} + +module.exports = { + rootStyle: rootStyle, + loadingColor: loadingColor, +}; diff --git a/src/miniprogram_npm/@vant/weapp/switch/index.wxss b/src/miniprogram_npm/@vant/weapp/switch/index.wxss new file mode 100644 index 0000000..35929de --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/switch/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-switch{background-color:var(--switch-background-color,#fff);border:var(--switch-border,1px solid rgba(0,0,0,.1));border-radius:var(--switch-node-size,1em);box-sizing:initial;display:inline-block;height:var(--switch-height,1em);position:relative;transition:background-color var(--switch-transition-duration,.3s);width:var(--switch-width,2em)}.van-switch__node{background-color:var(--switch-node-background-color,#fff);border-radius:100%;box-shadow:var(--switch-node-box-shadow,0 3px 1px 0 rgba(0,0,0,.05),0 2px 2px 0 rgba(0,0,0,.1),0 3px 3px 0 rgba(0,0,0,.05));height:var(--switch-node-size,1em);left:0;position:absolute;top:0;transition:var(--switch-transition-duration,.3s) cubic-bezier(.3,1.05,.4,1.05);width:var(--switch-node-size,1em);z-index:var(--switch-node-z-index,1)}.van-switch__loading{height:50%;left:25%;position:absolute!important;top:25%;width:50%}.van-switch--on{background-color:var(--switch-on-background-color,#1989fa)}.van-switch--on .van-switch__node{transform:translateX(calc(var(--switch-width, 2em) - var(--switch-node-size, 1em)))}.van-switch--disabled{opacity:var(--switch-disabled-opacity,.4)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/tab/index.d.ts b/src/miniprogram_npm/@vant/weapp/tab/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tab/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/tab/index.js b/src/miniprogram_npm/@vant/weapp/tab/index.js new file mode 100644 index 0000000..ae4d06b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tab/index.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('tabs'), + props: { + dot: { + type: Boolean, + observer: 'update', + }, + info: { + type: null, + observer: 'update', + }, + title: { + type: String, + observer: 'update', + }, + disabled: { + type: Boolean, + observer: 'update', + }, + titleStyle: { + type: String, + observer: 'update', + }, + name: { + type: null, + value: '', + }, + }, + data: { + active: false, + }, + methods: { + getComputedName: function () { + if (this.data.name !== '') { + return this.data.name; + } + return this.index; + }, + updateRender: function (active, parent) { + var parentData = parent.data; + this.inited = this.inited || active; + this.setData({ + active: active, + shouldRender: this.inited || !parentData.lazyRender, + shouldShow: active || parentData.animated, + }); + }, + update: function () { + if (this.parent) { + this.parent.updateTabs(); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/tab/index.json b/src/miniprogram_npm/@vant/weapp/tab/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tab/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/tab/index.wxml b/src/miniprogram_npm/@vant/weapp/tab/index.wxml new file mode 100644 index 0000000..f5e99f2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tab/index.wxml @@ -0,0 +1,8 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + class="custom-class {{ utils.bem('tab__pane', { active, inactive: !active }) }}" + style="{{ shouldShow ? '' : 'display: none;' }}" +> + <slot wx:if="{{ shouldRender }}" /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/tab/index.wxss b/src/miniprogram_npm/@vant/weapp/tab/index.wxss new file mode 100644 index 0000000..1c90c88 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tab/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{box-sizing:border-box;flex-shrink:0;width:100%}.van-tab__pane{-webkit-overflow-scrolling:touch;box-sizing:border-box;overflow-y:auto}.van-tab__pane--active{height:auto}.van-tab__pane--inactive{height:0;overflow:visible} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/tabbar-item/index.js b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.js new file mode 100644 index 0000000..58a5065 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + props: { + info: null, + name: null, + icon: String, + dot: Boolean, + url: { + type: String, + value: '', + }, + linkType: { + type: String, + value: 'redirectTo', + }, + iconPrefix: { + type: String, + value: 'van-icon', + }, + }, + relation: (0, relation_1.useParent)('tabbar'), + data: { + active: false, + activeColor: '', + inactiveColor: '', + }, + methods: { + onClick: function () { + var parent = this.parent; + if (parent) { + var index = parent.children.indexOf(this); + var active = this.data.name || index; + if (active !== this.data.active) { + parent.$emit('change', active); + } + } + var _a = this.data, url = _a.url, linkType = _a.linkType; + if (url && wx[linkType]) { + return wx[linkType]({ url: url }); + } + this.$emit('click'); + }, + updateFromParent: function () { + var parent = this.parent; + if (!parent) { + return; + } + var index = parent.children.indexOf(this); + var parentData = parent.data; + var data = this.data; + var active = (data.name || index) === parentData.active; + var patch = {}; + if (active !== data.active) { + patch.active = active; + } + if (parentData.activeColor !== data.activeColor) { + patch.activeColor = parentData.activeColor; + } + if (parentData.inactiveColor !== data.inactiveColor) { + patch.inactiveColor = parentData.inactiveColor; + } + if (Object.keys(patch).length > 0) { + this.setData(patch); + } + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/tabbar-item/index.json b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.json new file mode 100644 index 0000000..16f174c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-info": "../info/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml new file mode 100644 index 0000000..524728f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml @@ -0,0 +1,28 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + class="{{ utils.bem('tabbar-item', { active }) }} custom-class" + style="color: {{ active ? activeColor : inactiveColor }}" + bindtap="onClick" +> + <view class="van-tabbar-item__icon"> + <van-icon + wx:if="{{ icon }}" + name="{{ icon }}" + class-prefix="{{ iconPrefix }}" + custom-class="van-tabbar-item__icon__inner" + /> + <block wx:else> + <slot wx:if="{{ active }}" name="icon-active" /> + <slot wx:else name="icon" /> + </block> + <van-info + dot="{{ dot }}" + info="{{ info }}" + custom-class="van-tabbar-item__info" + /> + </view> + <view class="van-tabbar-item__text"> + <slot /> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss new file mode 100644 index 0000000..21ee224 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{flex:1}.van-tabbar-item{align-items:center;color:var(--tabbar-item-text-color,#646566);display:flex;flex-direction:column;font-size:var(--tabbar-item-font-size,12px);height:100%;justify-content:center;line-height:var(--tabbar-item-line-height,1)}.van-tabbar-item__icon{font-size:var(--tabbar-item-icon-size,22px);margin-bottom:var(--tabbar-item-margin-bottom,4px);position:relative}.van-tabbar-item__icon__inner{display:block;min-width:1em}.van-tabbar-item--active{color:var(--tabbar-item-active-color,#1989fa)}.van-tabbar-item__info{margin-top:2px} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/tabbar/index.d.ts b/src/miniprogram_npm/@vant/weapp/tabbar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/tabbar/index.js b/src/miniprogram_npm/@vant/weapp/tabbar/index.js new file mode 100644 index 0000000..3db793d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('tabbar-item', function () { + this.updateChildren(); + }), + props: { + active: { + type: null, + observer: 'updateChildren', + }, + activeColor: { + type: String, + observer: 'updateChildren', + }, + inactiveColor: { + type: String, + observer: 'updateChildren', + }, + fixed: { + type: Boolean, + value: true, + observer: 'setHeight', + }, + placeholder: { + type: Boolean, + observer: 'setHeight', + }, + border: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 1, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, + data: { + height: 50, + }, + methods: { + updateChildren: function () { + var children = this.children; + if (!Array.isArray(children) || !children.length) { + return; + } + children.forEach(function (child) { return child.updateFromParent(); }); + }, + setHeight: function () { + var _this = this; + if (!this.data.fixed || !this.data.placeholder) { + return; + } + wx.nextTick(function () { + (0, utils_1.getRect)(_this, '.van-tabbar').then(function (res) { + _this.setData({ height: res.height }); + }); + }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/tabbar/index.json b/src/miniprogram_npm/@vant/weapp/tabbar/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/tabbar/index.wxml b/src/miniprogram_npm/@vant/weapp/tabbar/index.wxml new file mode 100644 index 0000000..43bb111 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar/index.wxml @@ -0,0 +1,10 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> + +<view + class="{{ border ? 'van-hairline--top-bottom' : '' }} {{ utils.bem('tabbar', { fixed, safe: safeAreaInsetBottom }) }} custom-class" + style="{{ zIndex ? 'z-index: ' + zIndex : '' }}" +> + <slot /> +</view> + +<view wx:if="{{ fixed && placeholder }}" style="height: {{ height }}px;"></view> diff --git a/src/miniprogram_npm/@vant/weapp/tabbar/index.wxss b/src/miniprogram_npm/@vant/weapp/tabbar/index.wxss new file mode 100644 index 0000000..42b6c1e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabbar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tabbar{background-color:var(--tabbar-background-color,#fff);box-sizing:initial;display:flex;height:var(--tabbar-height,50px);width:100%}.van-tabbar--fixed{bottom:0;left:0;position:fixed}.van-tabbar--safe{padding-bottom:env(safe-area-inset-bottom)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/tabs/index.d.ts b/src/miniprogram_npm/@vant/weapp/tabs/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabs/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/tabs/index.js b/src/miniprogram_npm/@vant/weapp/tabs/index.js new file mode 100644 index 0000000..3121957 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabs/index.js @@ -0,0 +1,327 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var touch_1 = require("../mixins/touch"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + mixins: [touch_1.touch], + classes: [ + 'nav-class', + 'tab-class', + 'tab-active-class', + 'line-class', + 'wrap-class', + ], + relation: (0, relation_1.useChildren)('tab', function () { + this.updateTabs(); + }), + props: { + sticky: Boolean, + border: Boolean, + swipeable: Boolean, + titleActiveColor: String, + titleInactiveColor: String, + color: String, + animated: { + type: Boolean, + observer: function () { + var _this = this; + this.children.forEach(function (child, index) { + return child.updateRender(index === _this.data.currentIndex, _this); + }); + }, + }, + lineWidth: { + type: null, + value: 40, + observer: 'resize', + }, + lineHeight: { + type: null, + value: -1, + }, + active: { + type: null, + value: 0, + observer: function (name) { + if (name !== this.getCurrentName()) { + this.setCurrentIndexByName(name); + } + }, + }, + type: { + type: String, + value: 'line', + }, + ellipsis: { + type: Boolean, + value: true, + }, + duration: { + type: Number, + value: 0.3, + }, + zIndex: { + type: Number, + value: 1, + }, + swipeThreshold: { + type: Number, + value: 5, + observer: function (value) { + this.setData({ + scrollable: this.children.length > value || !this.data.ellipsis, + }); + }, + }, + offsetTop: { + type: Number, + value: 0, + }, + lazyRender: { + type: Boolean, + value: true, + }, + useBeforeChange: { + type: Boolean, + value: false, + }, + }, + data: { + tabs: [], + scrollLeft: 0, + scrollable: false, + currentIndex: 0, + container: null, + skipTransition: true, + scrollWithAnimation: false, + lineOffsetLeft: 0, + inited: false, + }, + mounted: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + _this.swiping = true; + _this.setData({ + container: function () { return _this.createSelectorQuery().select('.van-tabs'); }, + }); + _this.resize(); + _this.scrollIntoView(); + }); + }, + methods: { + updateTabs: function () { + var _a = this, _b = _a.children, children = _b === void 0 ? [] : _b, data = _a.data; + this.setData({ + tabs: children.map(function (child) { return child.data; }), + scrollable: this.children.length > data.swipeThreshold || !data.ellipsis, + }); + this.setCurrentIndexByName(data.active || this.getCurrentName()); + }, + trigger: function (eventName, child) { + var currentIndex = this.data.currentIndex; + var data = this.getChildData(currentIndex, child); + if (!(0, validator_1.isDef)(data)) { + return; + } + this.$emit(eventName, data); + }, + onTap: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var child = this.children[index]; + if (child.data.disabled) { + this.trigger('disabled', child); + return; + } + this.onBeforeChange(index).then(function () { + _this.setCurrentIndex(index); + (0, utils_1.nextTick)(function () { + _this.trigger('click'); + }); + }); + }, + // correct the index of active tab + setCurrentIndexByName: function (name) { + var _a = this.children, children = _a === void 0 ? [] : _a; + var matched = children.filter(function (child) { return child.getComputedName() === name; }); + if (matched.length) { + this.setCurrentIndex(matched[0].index); + } + }, + setCurrentIndex: function (currentIndex) { + var _this = this; + var _a = this, data = _a.data, _b = _a.children, children = _b === void 0 ? [] : _b; + if (!(0, validator_1.isDef)(currentIndex) || + currentIndex >= children.length || + currentIndex < 0) { + return; + } + (0, utils_1.groupSetData)(this, function () { + children.forEach(function (item, index) { + var active = index === currentIndex; + if (active !== item.data.active || !item.inited) { + item.updateRender(active, _this); + } + }); + }); + if (currentIndex === data.currentIndex) { + if (!data.inited) { + this.resize(); + } + return; + } + var shouldEmitChange = data.currentIndex !== null; + this.setData({ currentIndex: currentIndex }); + (0, utils_1.requestAnimationFrame)(function () { + _this.resize(); + _this.scrollIntoView(); + }); + (0, utils_1.nextTick)(function () { + _this.trigger('input'); + if (shouldEmitChange) { + _this.trigger('change'); + } + }); + }, + getCurrentName: function () { + var activeTab = this.children[this.data.currentIndex]; + if (activeTab) { + return activeTab.getComputedName(); + } + }, + resize: function () { + var _this = this; + if (this.data.type !== 'line') { + return; + } + var _a = this.data, currentIndex = _a.currentIndex, ellipsis = _a.ellipsis, skipTransition = _a.skipTransition; + Promise.all([ + (0, utils_1.getAllRect)(this, '.van-tab'), + (0, utils_1.getRect)(this, '.van-tabs__line'), + ]).then(function (_a) { + var _b = _a[0], rects = _b === void 0 ? [] : _b, lineRect = _a[1]; + var rect = rects[currentIndex]; + if (rect == null) { + return; + } + var lineOffsetLeft = rects + .slice(0, currentIndex) + .reduce(function (prev, curr) { return prev + curr.width; }, 0); + lineOffsetLeft += + (rect.width - lineRect.width) / 2 + (ellipsis ? 0 : 8); + _this.setData({ lineOffsetLeft: lineOffsetLeft, inited: true }); + _this.swiping = true; + if (skipTransition) { + // waiting transition end + setTimeout(function () { + _this.setData({ skipTransition: false }); + }, _this.data.duration); + } + }); + }, + // scroll active tab into view + scrollIntoView: function () { + var _this = this; + var _a = this.data, currentIndex = _a.currentIndex, scrollable = _a.scrollable, scrollWithAnimation = _a.scrollWithAnimation; + if (!scrollable) { + return; + } + Promise.all([ + (0, utils_1.getAllRect)(this, '.van-tab'), + (0, utils_1.getRect)(this, '.van-tabs__nav'), + ]).then(function (_a) { + var tabRects = _a[0], navRect = _a[1]; + var tabRect = tabRects[currentIndex]; + var offsetLeft = tabRects + .slice(0, currentIndex) + .reduce(function (prev, curr) { return prev + curr.width; }, 0); + _this.setData({ + scrollLeft: offsetLeft - (navRect.width - tabRect.width) / 2, + }); + if (!scrollWithAnimation) { + (0, utils_1.nextTick)(function () { + _this.setData({ scrollWithAnimation: true }); + }); + } + }); + }, + onTouchScroll: function (event) { + this.$emit('scroll', event.detail); + }, + onTouchStart: function (event) { + if (!this.data.swipeable) + return; + this.swiping = true; + this.touchStart(event); + }, + onTouchMove: function (event) { + if (!this.data.swipeable || !this.swiping) + return; + this.touchMove(event); + }, + // watch swipe touch end + onTouchEnd: function () { + var _this = this; + if (!this.data.swipeable || !this.swiping) + return; + var _a = this, direction = _a.direction, deltaX = _a.deltaX, offsetX = _a.offsetX; + var minSwipeDistance = 50; + if (direction === 'horizontal' && offsetX >= minSwipeDistance) { + var index_1 = this.getAvaiableTab(deltaX); + if (index_1 !== -1) { + this.onBeforeChange(index_1).then(function () { return _this.setCurrentIndex(index_1); }); + } + } + this.swiping = false; + }, + getAvaiableTab: function (direction) { + var _a = this.data, tabs = _a.tabs, currentIndex = _a.currentIndex; + var step = direction > 0 ? -1 : 1; + for (var i = step; currentIndex + i < tabs.length && currentIndex + i >= 0; i += step) { + var index = currentIndex + i; + if (index >= 0 && + index < tabs.length && + tabs[index] && + !tabs[index].disabled) { + return index; + } + } + return -1; + }, + onBeforeChange: function (index) { + var _this = this; + var useBeforeChange = this.data.useBeforeChange; + if (!useBeforeChange) { + return Promise.resolve(); + } + return new Promise(function (resolve, reject) { + _this.$emit('before-change', __assign(__assign({}, _this.getChildData(index)), { callback: function (status) { return (status ? resolve() : reject()); } })); + }); + }, + getChildData: function (index, child) { + var currentChild = child || this.children[index]; + if (!(0, validator_1.isDef)(currentChild)) { + return; + } + return { + index: currentChild.index, + name: currentChild.getComputedName(), + title: currentChild.data.title, + }; + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/tabs/index.json b/src/miniprogram_npm/@vant/weapp/tabs/index.json new file mode 100644 index 0000000..19c0bc3 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabs/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-info": "../info/index", + "van-sticky": "../sticky/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/tabs/index.wxml b/src/miniprogram_npm/@vant/weapp/tabs/index.wxml new file mode 100644 index 0000000..05bb1e1 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabs/index.wxml @@ -0,0 +1,63 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="custom-class {{ utils.bem('tabs') }}"> + <van-sticky + disabled="{{ !sticky }}" + z-index="{{ zIndex }}" + offset-top="{{ offsetTop }}" + container="{{ container }}" + bind:scroll="onTouchScroll" + > + <view class="{{ utils.bem('tabs--') + type }} {{ utils.bem('tabs__wrap', { scrollable }) }} {{ type === 'line' && border ? 'van-hairline--top-bottom' : '' }} wrap-class"> + <slot name="nav-left" /> + + <scroll-view + scroll-x="{{ scrollable }}" + scroll-with-animation="{{ scrollWithAnimation }}" + scroll-left="{{ scrollLeft }}" + class="{{ utils.bem('tabs__scroll', [type]) }}" + style="{{ color ? 'border-color: ' + color : '' }}" + > + <view class="{{ utils.bem('tabs__nav', [type, { complete: !ellipsis }]) }} nav-class" style="{{ computed.navStyle(color, type) }}"> + <view wx:if="{{ type === 'line' }}" class="van-tabs__line" style="{{ computed.lineStyle({ color, lineOffsetLeft, lineHeight, skipTransition, duration, lineWidth, inited }) }}" /> + <view + wx:for="{{ tabs }}" + wx:key="index" + data-index="{{ index }}" + class="{{ computed.tabClass(index === currentIndex, ellipsis) }} {{ utils.bem('tab', { active: index === currentIndex, disabled: item.disabled, complete: !ellipsis }) }}" + style="{{ computed.tabStyle({ active: index === currentIndex, ellipsis, color, type, disabled: item.disabled, titleActiveColor, titleInactiveColor, swipeThreshold, scrollable }) }}" + bind:tap="onTap" + > + <view class="{{ ellipsis ? 'van-ellipsis' : '' }}" style="{{ item.titleStyle }}"> + {{ item.title }} + <van-info + wx:if="{{ item.info !== null || item.dot }}" + info="{{ item.info }}" + dot="{{ item.dot }}" + custom-class="van-tab__title__info" + /> + </view> + </view> + </view> + </scroll-view> + + <slot name="nav-right" /> + </view> + </van-sticky> + + <view + class="van-tabs__content" + bind:touchstart="onTouchStart" + bind:touchmove="onTouchMove" + bind:touchend="onTouchEnd" + bind:touchcancel="onTouchEnd" + > + <view + class="{{ utils.bem('tabs__track', [{ animated }]) }} van-tabs__track" + style="{{ computed.trackStyle({ duration, currentIndex, animated }) }}" + > + <slot /> + </view> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/tabs/index.wxs b/src/miniprogram_npm/@vant/weapp/tabs/index.wxs new file mode 100644 index 0000000..4059c7f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabs/index.wxs @@ -0,0 +1,83 @@ +/* eslint-disable */ +var utils = require('../wxs/utils.wxs'); +var style = require('../wxs/style.wxs'); + +function tabClass(active, ellipsis) { + var classes = ['tab-class']; + + if (active) { + classes.push('tab-active-class'); + } + + if (ellipsis) { + classes.push('van-ellipsis'); + } + + return classes.join(' '); +} + +function tabStyle(data) { + var titleColor = data.active + ? data.titleActiveColor + : data.titleInactiveColor; + + var ellipsis = data.scrollable && data.ellipsis; + + // card theme color + if (data.type === 'card') { + return style({ + 'border-color': data.color, + 'background-color': !data.disabled && data.active ? data.color : null, + color: titleColor || (!data.disabled && !data.active ? data.color : null), + 'flex-basis': ellipsis ? 88 / data.swipeThreshold + '%' : null, + }); + } + + return style({ + color: titleColor, + 'flex-basis': ellipsis ? 88 / data.swipeThreshold + '%' : null, + }); +} + +function navStyle(color, type) { + return style({ + 'border-color': type === 'card' && color ? color : null, + }); +} + +function trackStyle(data) { + if (!data.animated) { + return ''; + } + + return style({ + left: -100 * data.currentIndex + '%', + 'transition-duration': data.duration + 's', + '-webkit-transition-duration': data.duration + 's', + }); +} + +function lineStyle(data) { + return style({ + width: utils.addUnit(data.lineWidth), + opacity: data.inited ? 1 : 0, + transform: 'translateX(' + data.lineOffsetLeft + 'px)', + '-webkit-transform': 'translateX(' + data.lineOffsetLeft + 'px)', + 'background-color': data.color, + height: data.lineHeight !== -1 ? utils.addUnit(data.lineHeight) : null, + 'border-radius': + data.lineHeight !== -1 ? utils.addUnit(data.lineHeight) : null, + 'transition-duration': !data.skipTransition ? data.duration + 's' : null, + '-webkit-transition-duration': !data.skipTransition + ? data.duration + 's' + : null, + }); +} + +module.exports = { + tabClass: tabClass, + tabStyle: tabStyle, + trackStyle: trackStyle, + lineStyle: lineStyle, + navStyle: navStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/tabs/index.wxss b/src/miniprogram_npm/@vant/weapp/tabs/index.wxss new file mode 100644 index 0000000..09a93af --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tabs/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tabs{-webkit-tap-highlight-color:transparent;position:relative}.van-tabs__wrap{display:flex;overflow:hidden}.van-tabs__wrap--scrollable .van-tab{flex:0 0 22%}.van-tabs__wrap--scrollable .van-tab--complete{flex:1 0 auto!important;padding:0 12px}.van-tabs__wrap--scrollable .van-tabs__nav--complete{padding-left:8px;padding-right:8px}.van-tabs__scroll{background-color:var(--tabs-nav-background-color,#fff);overflow:auto}.van-tabs__scroll--line{box-sizing:initial;height:calc(100% + 15px)}.van-tabs__scroll--card{border:1px solid var(--tabs-default-color,#ee0a24);border-radius:2px;box-sizing:border-box;margin:0 var(--padding-md,16px);width:calc(100% - var(--padding-md, 16px)*2)}.van-tabs__scroll::-webkit-scrollbar{display:none}.van-tabs__nav{display:flex;position:relative;-webkit-user-select:none;user-select:none}.van-tabs__nav--card{box-sizing:border-box;height:var(--tabs-card-height,30px)}.van-tabs__nav--card .van-tab{border-right:1px solid var(--tabs-default-color,#ee0a24);color:var(--tabs-default-color,#ee0a24);line-height:calc(var(--tabs-card-height, 30px) - 2px)}.van-tabs__nav--card .van-tab:last-child{border-right:none}.van-tabs__nav--card .van-tab.van-tab--active{background-color:var(--tabs-default-color,#ee0a24);color:#fff}.van-tabs__nav--card .van-tab--disabled{color:var(--tab-disabled-text-color,#c8c9cc)}.van-tabs__line{background-color:var(--tabs-bottom-bar-color,#ee0a24);border-radius:var(--tabs-bottom-bar-height,3px);bottom:0;height:var(--tabs-bottom-bar-height,3px);left:0;opacity:0;position:absolute;z-index:1}.van-tabs__track{height:100%;position:relative;width:100%}.van-tabs__track--animated{display:flex;transition-property:left}.van-tabs__content{overflow:hidden}.van-tabs--line{height:var(--tabs-line-height,44px)}.van-tabs--card{height:var(--tabs-card-height,30px)}.van-tab{box-sizing:border-box;color:var(--tab-text-color,#646566);cursor:pointer;flex:1;font-size:var(--tab-font-size,14px);line-height:var(--tabs-line-height,44px);min-width:0;padding:0 5px;position:relative;text-align:center}.van-tab--active{color:var(--tab-active-text-color,#323233);font-weight:var(--font-weight-bold,500)}.van-tab--disabled{color:var(--tab-disabled-text-color,#c8c9cc)}.van-tab__title__info{position:relative!important;top:-1px!important;transform:translateX(0)!important} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/tag/index.d.ts b/src/miniprogram_npm/@vant/weapp/tag/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tag/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/tag/index.js b/src/miniprogram_npm/@vant/weapp/tag/index.js new file mode 100644 index 0000000..ec4069a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tag/index.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + size: String, + mark: Boolean, + color: String, + plain: Boolean, + round: Boolean, + textColor: String, + type: { + type: String, + value: 'default', + }, + closeable: Boolean, + }, + methods: { + onClose: function () { + this.$emit('close'); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/tag/index.json b/src/miniprogram_npm/@vant/weapp/tag/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tag/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/tag/index.wxml b/src/miniprogram_npm/@vant/weapp/tag/index.wxml new file mode 100644 index 0000000..59352dd --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tag/index.wxml @@ -0,0 +1,15 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view + class="custom-class {{ utils.bem('tag', [type, size, { mark, plain, round }]) }}" + style="{{ computed.rootStyle({ plain, color, textColor }) }}" +> + <slot /> + <van-icon + wx:if="{{ closeable }}" + name="cross" + custom-class="van-tag__close" + bind:click="onClose" + /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/tag/index.wxs b/src/miniprogram_npm/@vant/weapp/tag/index.wxs new file mode 100644 index 0000000..12d1668 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tag/index.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + return style({ + 'background-color': data.plain ? '' : data.color, + color: data.textColor || data.plain ? data.textColor || data.color : '', + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/tag/index.wxss b/src/miniprogram_npm/@vant/weapp/tag/index.wxss new file mode 100644 index 0000000..0f0cbae --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tag/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tag{align-items:center;border-radius:var(--tag-border-radius,2px);color:var(--tag-text-color,#fff);display:inline-flex;font-size:var(--tag-font-size,12px);line-height:var(--tag-line-height,16px);padding:var(--tag-padding,0 4px);position:relative}.van-tag--default{background-color:var(--tag-default-color,#969799)}.van-tag--default.van-tag--plain{color:var(--tag-default-color,#969799)}.van-tag--danger{background-color:var(--tag-danger-color,#ee0a24)}.van-tag--danger.van-tag--plain{color:var(--tag-danger-color,#ee0a24)}.van-tag--primary{background-color:var(--tag-primary-color,#1989fa)}.van-tag--primary.van-tag--plain{color:var(--tag-primary-color,#1989fa)}.van-tag--success{background-color:var(--tag-success-color,#07c160)}.van-tag--success.van-tag--plain{color:var(--tag-success-color,#07c160)}.van-tag--warning{background-color:var(--tag-warning-color,#ff976a)}.van-tag--warning.van-tag--plain{color:var(--tag-warning-color,#ff976a)}.van-tag--plain{background-color:var(--tag-plain-background-color,#fff)}.van-tag--plain:before{border:1px solid;border-radius:inherit;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.van-tag--medium{padding:var(--tag-medium-padding,2px 6px)}.van-tag--large{border-radius:var(--tag-large-border-radius,4px);font-size:var(--tag-large-font-size,14px);padding:var(--tag-large-padding,4px 8px)}.van-tag--mark{border-radius:0 var(--tag-round-border-radius,var(--tag-round-border-radius,999px)) var(--tag-round-border-radius,var(--tag-round-border-radius,999px)) 0}.van-tag--mark:after{content:"";display:block;width:2px}.van-tag--round{border-radius:var(--tag-round-border-radius,999px)}.van-tag__close{margin-left:2px;min-width:1em} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/toast/index.d.ts b/src/miniprogram_npm/@vant/weapp/toast/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/toast/index.js b/src/miniprogram_npm/@vant/weapp/toast/index.js new file mode 100644 index 0000000..0c01366 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/index.js @@ -0,0 +1,31 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + show: Boolean, + mask: Boolean, + message: String, + forbidClick: Boolean, + zIndex: { + type: Number, + value: 1000, + }, + type: { + type: String, + value: 'text', + }, + loadingType: { + type: String, + value: 'circular', + }, + position: { + type: String, + value: 'middle', + }, + }, + methods: { + // for prevent touchmove + noop: function () { }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/toast/index.json b/src/miniprogram_npm/@vant/weapp/toast/index.json new file mode 100644 index 0000000..9b1b78c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/index.json @@ -0,0 +1,9 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index", + "van-overlay": "../overlay/index", + "van-transition": "../transition/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/toast/index.wxml b/src/miniprogram_npm/@vant/weapp/toast/index.wxml new file mode 100644 index 0000000..69f143e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/index.wxml @@ -0,0 +1,36 @@ +<van-overlay + wx:if="{{ mask || forbidClick }}" + show="{{ show }}" + z-index="{{ zIndex }}" + custom-style="{{ mask ? '' : 'background-color: transparent;' }}" +/> +<van-transition + show="{{ show }}" + custom-style="z-index: {{ zIndex }}" + custom-class="van-toast__container" +> + <view + class="van-toast van-toast--{{ (type === 'text' || type === 'html') ? 'text' : 'icon' }} van-toast--{{ position }}" + catch:touchmove="noop" + > + <!-- text only --> + <text wx:if="{{ type === 'text' }}">{{ message }}</text> + + <!-- html only --> + <rich-text wx:elif="{{ type === 'html' }}" nodes="{{ message }}"></rich-text> + + <!-- with icon --> + <block wx:else> + <van-loading + wx:if="{{ type === 'loading' }}" + color="white" + type="{{ loadingType }}" + custom-class="van-toast__loading" + /> + <van-icon wx:else class="van-toast__icon" name="{{ type }}" /> + <text wx:if="{{ message }}" class="van-toast__text">{{ message }}</text> + </block> + + <slot /> + </view> +</van-transition> diff --git a/src/miniprogram_npm/@vant/weapp/toast/index.wxss b/src/miniprogram_npm/@vant/weapp/toast/index.wxss new file mode 100644 index 0000000..3b7a34e --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-toast{word-wrap:break-word;align-items:center;background-color:var(--toast-background-color,rgba(0,0,0,.7));border-radius:var(--toast-border-radius,8px);box-sizing:initial;color:var(--toast-text-color,#fff);display:flex;flex-direction:column;font-size:var(--toast-font-size,14px);justify-content:center;line-height:var(--toast-line-height,20px);white-space:pre-wrap}.van-toast__container{left:50%;max-width:var(--toast-max-width,70%);position:fixed;top:50%;transform:translate(-50%,-50%);width:-webkit-fit-content;width:fit-content}.van-toast--text{min-width:var(--toast-text-min-width,96px);padding:var(--toast-text-padding,8px 12px)}.van-toast--icon{min-height:var(--toast-default-min-height,88px);padding:var(--toast-default-padding,16px);width:var(--toast-default-width,88px)}.van-toast--icon .van-toast__icon{font-size:var(--toast-icon-size,36px)}.van-toast--icon .van-toast__text{padding-top:8px}.van-toast__loading{margin:10px 0}.van-toast--top{transform:translateY(-30vh)}.van-toast--bottom{transform:translateY(30vh)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/toast/toast.d.ts b/src/miniprogram_npm/@vant/weapp/toast/toast.d.ts new file mode 100644 index 0000000..de2a4a2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/toast.d.ts @@ -0,0 +1,28 @@ +/// <reference types="miniprogram-api-typings" /> +/// <reference types="miniprogram-api-typings" /> +type ToastMessage = string | number; +type ToastContext = WechatMiniprogram.Component.TrivialInstance | WechatMiniprogram.Page.TrivialInstance; +interface ToastOptions { + show?: boolean; + type?: string; + mask?: boolean; + zIndex?: number; + context?: (() => ToastContext) | ToastContext; + position?: string; + duration?: number; + selector?: string; + forbidClick?: boolean; + loadingType?: string; + message?: ToastMessage; + onClose?: () => void; +} +declare function Toast(toastOptions: ToastOptions | ToastMessage): WechatMiniprogram.Component.TrivialInstance | undefined; +declare namespace Toast { + var loading: (options: ToastMessage | ToastOptions) => WechatMiniprogram.Component.TrivialInstance | undefined; + var success: (options: ToastMessage | ToastOptions) => WechatMiniprogram.Component.TrivialInstance | undefined; + var fail: (options: ToastMessage | ToastOptions) => WechatMiniprogram.Component.TrivialInstance | undefined; + var clear: () => void; + var setDefaultOptions: (options: ToastOptions) => void; + var resetDefaultOptions: () => void; +} +export default Toast; diff --git a/src/miniprogram_npm/@vant/weapp/toast/toast.js b/src/miniprogram_npm/@vant/weapp/toast/toast.js new file mode 100644 index 0000000..f51a89a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/toast/toast.js @@ -0,0 +1,83 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var validator_1 = require("../common/validator"); +var defaultOptions = { + type: 'text', + mask: false, + message: '', + show: true, + zIndex: 1000, + duration: 2000, + position: 'middle', + forbidClick: false, + loadingType: 'circular', + selector: '#van-toast', +}; +var queue = []; +var currentOptions = __assign({}, defaultOptions); +function parseOptions(message) { + return (0, validator_1.isObj)(message) ? message : { message: message }; +} +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +function Toast(toastOptions) { + var options = __assign(__assign({}, currentOptions), parseOptions(toastOptions)); + var context = (typeof options.context === 'function' + ? options.context() + : options.context) || getContext(); + var toast = context.selectComponent(options.selector); + if (!toast) { + console.warn('未找到 van-toast 节点,请确认 selector 及 context 是否正确'); + return; + } + delete options.context; + delete options.selector; + toast.clear = function () { + toast.setData({ show: false }); + if (options.onClose) { + options.onClose(); + } + }; + queue.push(toast); + toast.setData(options); + clearTimeout(toast.timer); + if (options.duration != null && options.duration > 0) { + toast.timer = setTimeout(function () { + toast.clear(); + queue = queue.filter(function (item) { return item !== toast; }); + }, options.duration); + } + return toast; +} +var createMethod = function (type) { return function (options) { + return Toast(__assign({ type: type }, parseOptions(options))); +}; }; +Toast.loading = createMethod('loading'); +Toast.success = createMethod('success'); +Toast.fail = createMethod('fail'); +Toast.clear = function () { + queue.forEach(function (toast) { + toast.clear(); + }); + queue = []; +}; +Toast.setDefaultOptions = function (options) { + Object.assign(currentOptions, options); +}; +Toast.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); +}; +exports.default = Toast; diff --git a/src/miniprogram_npm/@vant/weapp/transition/index.d.ts b/src/miniprogram_npm/@vant/weapp/transition/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/transition/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/transition/index.js b/src/miniprogram_npm/@vant/weapp/transition/index.js new file mode 100644 index 0000000..55fc8b8 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/transition/index.js @@ -0,0 +1,15 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var transition_1 = require("../mixins/transition"); +(0, component_1.VantComponent)({ + classes: [ + 'enter-class', + 'enter-active-class', + 'enter-to-class', + 'leave-class', + 'leave-active-class', + 'leave-to-class', + ], + mixins: [(0, transition_1.transition)(true)], +}); diff --git a/src/miniprogram_npm/@vant/weapp/transition/index.json b/src/miniprogram_npm/@vant/weapp/transition/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/transition/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/src/miniprogram_npm/@vant/weapp/transition/index.wxml b/src/miniprogram_npm/@vant/weapp/transition/index.wxml new file mode 100644 index 0000000..2743785 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/transition/index.wxml @@ -0,0 +1,10 @@ +<wxs src="./index.wxs" module="computed" /> + +<view + wx:if="{{ inited }}" + class="van-transition custom-class {{ classes }}" + style="{{ computed.rootStyle({ currentDuration, display, customStyle }) }}" + bind:transitionend="onTransitionEnd" +> + <slot /> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/transition/index.wxs b/src/miniprogram_npm/@vant/weapp/transition/index.wxs new file mode 100644 index 0000000..e0babf6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/transition/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + return style([ + { + '-webkit-transition-duration': data.currentDuration + 'ms', + 'transition-duration': data.currentDuration + 'ms', + }, + data.display ? null : 'display: none', + data.customStyle, + ]); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/transition/index.wxss b/src/miniprogram_npm/@vant/weapp/transition/index.wxss new file mode 100644 index 0000000..3a3d37f --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/transition/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-transition{transition-timing-function:ease}.van-fade-enter-active,.van-fade-leave-active{transition-property:opacity}.van-fade-enter,.van-fade-leave-to{opacity:0}.van-fade-down-enter-active,.van-fade-down-leave-active,.van-fade-left-enter-active,.van-fade-left-leave-active,.van-fade-right-enter-active,.van-fade-right-leave-active,.van-fade-up-enter-active,.van-fade-up-leave-active{transition-property:opacity,transform}.van-fade-up-enter,.van-fade-up-leave-to{opacity:0;transform:translate3d(0,100%,0)}.van-fade-down-enter,.van-fade-down-leave-to{opacity:0;transform:translate3d(0,-100%,0)}.van-fade-left-enter,.van-fade-left-leave-to{opacity:0;transform:translate3d(-100%,0,0)}.van-fade-right-enter,.van-fade-right-leave-to{opacity:0;transform:translate3d(100%,0,0)}.van-slide-down-enter-active,.van-slide-down-leave-active,.van-slide-left-enter-active,.van-slide-left-leave-active,.van-slide-right-enter-active,.van-slide-right-leave-active,.van-slide-up-enter-active,.van-slide-up-leave-active{transition-property:transform}.van-slide-up-enter,.van-slide-up-leave-to{transform:translate3d(0,100%,0)}.van-slide-down-enter,.van-slide-down-leave-to{transform:translate3d(0,-100%,0)}.van-slide-left-enter,.van-slide-left-leave-to{transform:translate3d(-100%,0,0)}.van-slide-right-enter,.van-slide-right-leave-to{transform:translate3d(100%,0,0)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/tree-select/index.d.ts b/src/miniprogram_npm/@vant/weapp/tree-select/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tree-select/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/tree-select/index.js b/src/miniprogram_npm/@vant/weapp/tree-select/index.js new file mode 100644 index 0000000..b6f69b2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tree-select/index.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'main-item-class', + 'content-item-class', + 'main-active-class', + 'content-active-class', + 'main-disabled-class', + 'content-disabled-class', + ], + props: { + items: { + type: Array, + observer: 'updateSubItems', + }, + activeId: null, + mainActiveIndex: { + type: Number, + value: 0, + observer: 'updateSubItems', + }, + height: { + type: null, + value: 300, + }, + max: { + type: Number, + value: Infinity, + }, + selectedIcon: { + type: String, + value: 'success', + }, + }, + data: { + subItems: [], + }, + methods: { + // 当一个子项被选择时 + onSelectItem: function (event) { + var item = event.currentTarget.dataset.item; + var isArray = Array.isArray(this.data.activeId); + // 判断有没有超出右侧选择的最大数 + var isOverMax = isArray && this.data.activeId.length >= this.data.max; + // 判断该项有没有被选中, 如果有被选中,则忽视是否超出的条件 + var isSelected = isArray + ? this.data.activeId.indexOf(item.id) > -1 + : this.data.activeId === item.id; + if (!item.disabled && (!isOverMax || isSelected)) { + this.$emit('click-item', item); + } + }, + // 当一个导航被点击时 + onClickNav: function (event) { + var index = event.detail; + var item = this.data.items[index]; + if (!item.disabled) { + this.$emit('click-nav', { index: index }); + } + }, + // 更新子项列表 + updateSubItems: function () { + var _a = this.data, items = _a.items, mainActiveIndex = _a.mainActiveIndex; + var _b = (items[mainActiveIndex] || {}).children, children = _b === void 0 ? [] : _b; + this.setData({ subItems: children }); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/tree-select/index.json b/src/miniprogram_npm/@vant/weapp/tree-select/index.json new file mode 100644 index 0000000..42991a2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tree-select/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-sidebar": "../sidebar/index", + "van-sidebar-item": "../sidebar-item/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/tree-select/index.wxml b/src/miniprogram_npm/@vant/weapp/tree-select/index.wxml new file mode 100644 index 0000000..2663e52 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tree-select/index.wxml @@ -0,0 +1,41 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="wxs" /> + +<view + class="van-tree-select" + style="height: {{ utils.addUnit(height) }}" +> + <scroll-view scroll-y class="van-tree-select__nav"> + <van-sidebar active-key="{{ mainActiveIndex }}" bind:change="onClickNav" custom-class="van-tree-select__nav__inner"> + <van-sidebar-item + wx:for="{{ items }}" + wx:key="index" + custom-class="main-item-class" + active-class="main-active-class" + disabled-class="main-disabled-class" + badge="{{ item.badge }}" + dot="{{ item.dot }}" + title="{{ item.text }}" + disabled="{{ item.disabled }}" + /> + </van-sidebar> + </scroll-view> + <scroll-view scroll-y class="van-tree-select__content"> + <slot name="content" /> + <view + wx:for="{{ subItems }}" + wx:key="id" + class="van-ellipsis content-item-class {{ utils.bem('tree-select__item', { active: wxs.isActive(activeId, item.id), disabled: item.disabled }) }} {{ wxs.isActive(activeId, item.id) ? 'content-active-class' : '' }} {{ item.disabled ? 'content-disabled-class' : '' }}" + data-item="{{ item }}" + bind:tap="onSelectItem" + > + {{ item.text }} + <van-icon + wx:if="{{ wxs.isActive(activeId, item.id) }}" + name="{{ selectedIcon }}" + size="16px" + class="van-tree-select__selected" + /> + </view> + </scroll-view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/tree-select/index.wxs b/src/miniprogram_npm/@vant/weapp/tree-select/index.wxs new file mode 100644 index 0000000..b1cbb39 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tree-select/index.wxs @@ -0,0 +1,12 @@ +/* eslint-disable */ +var array = require('../wxs/array.wxs'); + +function isActive (activeList, itemId) { + if (array.isArray(activeList)) { + return activeList.indexOf(itemId) > -1; + } + + return activeList === itemId; +} + +module.exports.isActive = isActive; diff --git a/src/miniprogram_npm/@vant/weapp/tree-select/index.wxss b/src/miniprogram_npm/@vant/weapp/tree-select/index.wxss new file mode 100644 index 0000000..5bef0ac --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/tree-select/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tree-select{display:flex;font-size:var(--tree-select-font-size,14px);position:relative;-webkit-user-select:none;user-select:none}.van-tree-select__nav{--sidebar-padding:12px 8px 12px 12px;background-color:var(--tree-select-nav-background-color,#f7f8fa);flex:1}.van-tree-select__nav__inner{height:100%;width:100%!important}.van-tree-select__content{background-color:var(--tree-select-content-background-color,#fff);flex:2}.van-tree-select__item{font-weight:700;line-height:var(--tree-select-item-height,44px);padding:0 32px 0 var(--padding-md,16px);position:relative}.van-tree-select__item--active{color:var(--tree-select-item-active-color,#ee0a24)}.van-tree-select__item--disabled{color:var(--tree-select-item-disabled-color,#c8c9cc)}.van-tree-select__selected{position:absolute;right:var(--padding-md,16px);top:50%;transform:translateY(-50%)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/uploader/index.d.ts b/src/miniprogram_npm/@vant/weapp/uploader/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/src/miniprogram_npm/@vant/weapp/uploader/index.js b/src/miniprogram_npm/@vant/weapp/uploader/index.js new file mode 100644 index 0000000..7842d9b --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/index.js @@ -0,0 +1,183 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var shared_1 = require("./shared"); +var utils_1 = require("./utils"); +(0, component_1.VantComponent)({ + props: __assign(__assign(__assign(__assign({ disabled: Boolean, multiple: Boolean, uploadText: String, useBeforeRead: Boolean, afterRead: null, beforeRead: null, previewSize: { + type: null, + value: 80, + }, name: { + type: null, + value: '', + }, accept: { + type: String, + value: 'image', + }, fileList: { + type: Array, + value: [], + observer: 'formatFileList', + }, maxSize: { + type: Number, + value: Number.MAX_VALUE, + }, maxCount: { + type: Number, + value: 100, + }, deletable: { + type: Boolean, + value: true, + }, showUpload: { + type: Boolean, + value: true, + }, previewImage: { + type: Boolean, + value: true, + }, previewFullImage: { + type: Boolean, + value: true, + }, videoFit: { + type: String, + value: 'contain', + }, imageFit: { + type: String, + value: 'scaleToFill', + }, uploadIcon: { + type: String, + value: 'photograph', + } }, shared_1.imageProps), shared_1.videoProps), shared_1.mediaProps), shared_1.messageFileProps), + data: { + lists: [], + isInCount: true, + }, + methods: { + formatFileList: function () { + var _a = this.data, _b = _a.fileList, fileList = _b === void 0 ? [] : _b, maxCount = _a.maxCount; + var lists = fileList.map(function (item) { return (__assign(__assign({}, item), { isImage: (0, utils_1.isImageFile)(item), isVideo: (0, utils_1.isVideoFile)(item), deletable: (0, validator_1.isBoolean)(item.deletable) ? item.deletable : true })); }); + this.setData({ lists: lists, isInCount: lists.length < maxCount }); + }, + getDetail: function (index) { + return { + name: this.data.name, + index: index == null ? this.data.fileList.length : index, + }; + }, + startUpload: function () { + var _this = this; + var _a = this.data, maxCount = _a.maxCount, multiple = _a.multiple, lists = _a.lists, disabled = _a.disabled; + if (disabled) + return; + (0, utils_1.chooseFile)(__assign(__assign({}, this.data), { maxCount: maxCount - lists.length })) + .then(function (res) { + _this.onBeforeRead(multiple ? res : res[0]); + }) + .catch(function (error) { + _this.$emit('error', error); + }); + }, + onBeforeRead: function (file) { + var _this = this; + var _a = this.data, beforeRead = _a.beforeRead, useBeforeRead = _a.useBeforeRead; + var res = true; + if (typeof beforeRead === 'function') { + res = beforeRead(file, this.getDetail()); + } + if (useBeforeRead) { + res = new Promise(function (resolve, reject) { + _this.$emit('before-read', __assign(__assign({ file: file }, _this.getDetail()), { callback: function (ok) { + ok ? resolve() : reject(); + } })); + }); + } + if (!res) { + return; + } + if ((0, validator_1.isPromise)(res)) { + res.then(function (data) { return _this.onAfterRead(data || file); }); + } + else { + this.onAfterRead(file); + } + }, + onAfterRead: function (file) { + var _a = this.data, maxSize = _a.maxSize, afterRead = _a.afterRead; + var oversize = Array.isArray(file) + ? file.some(function (item) { return item.size > maxSize; }) + : file.size > maxSize; + if (oversize) { + this.$emit('oversize', __assign({ file: file }, this.getDetail())); + return; + } + if (typeof afterRead === 'function') { + afterRead(file, this.getDetail()); + } + this.$emit('after-read', __assign({ file: file }, this.getDetail())); + }, + deleteItem: function (event) { + var index = event.currentTarget.dataset.index; + this.$emit('delete', __assign(__assign({}, this.getDetail(index)), { file: this.data.fileList[index] })); + }, + onPreviewImage: function (event) { + if (!this.data.previewFullImage) + return; + var index = event.currentTarget.dataset.index; + var _a = this.data, lists = _a.lists, showmenu = _a.showmenu; + var item = lists[index]; + wx.previewImage({ + urls: lists.filter(function (item) { return (0, utils_1.isImageFile)(item); }).map(function (item) { return item.url; }), + current: item.url, + showmenu: showmenu, + fail: function () { + wx.showToast({ title: '预览图片失败', icon: 'none' }); + }, + }); + }, + onPreviewVideo: function (event) { + if (!this.data.previewFullImage) + return; + var index = event.currentTarget.dataset.index; + var lists = this.data.lists; + var sources = []; + var current = lists.reduce(function (sum, cur, curIndex) { + if (!(0, utils_1.isVideoFile)(cur)) { + return sum; + } + sources.push(__assign(__assign({}, cur), { type: 'video' })); + if (curIndex < index) { + sum++; + } + return sum; + }, 0); + wx.previewMedia({ + sources: sources, + current: current, + fail: function () { + wx.showToast({ title: '预览视频失败', icon: 'none' }); + }, + }); + }, + onPreviewFile: function (event) { + var index = event.currentTarget.dataset.index; + wx.openDocument({ + filePath: this.data.lists[index].url, + showMenu: true, + }); + }, + onClickPreview: function (event) { + var index = event.currentTarget.dataset.index; + var item = this.data.lists[index]; + this.$emit('click-preview', __assign(__assign({}, item), this.getDetail(index))); + }, + }, +}); diff --git a/src/miniprogram_npm/@vant/weapp/uploader/index.json b/src/miniprogram_npm/@vant/weapp/uploader/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/src/miniprogram_npm/@vant/weapp/uploader/index.wxml b/src/miniprogram_npm/@vant/weapp/uploader/index.wxml new file mode 100644 index 0000000..2276fbf --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/index.wxml @@ -0,0 +1,85 @@ +<wxs src="../wxs/utils.wxs" module="utils" /> +<wxs src="./index.wxs" module="computed" /> + +<view class="van-uploader"> + <view class="van-uploader__wrapper"> + <!-- 预览样式 --> + <view + wx:if="{{ previewImage }}" + wx:for="{{ lists }}" + wx:key="index" + class="van-uploader__preview" + data-index="{{ index }}" + bindtap="onClickPreview" + > + <image + wx:if="{{ item.isImage }}" + mode="{{ imageFit }}" + src="{{ item.thumb || item.url }}" + alt="{{ item.name || ('图片' + index) }}" + class="van-uploader__preview-image" + style="{{ computed.sizeStyle({ previewSize }) }}" + data-index="{{ index }}" + bindtap="onPreviewImage" + /> + <video + wx:elif="{{ item.isVideo }}" + src="{{ item.url }}" + title="{{ item.name || ('视频' + index) }}" + poster="{{ item.thumb }}" + autoplay="{{ item.autoplay }}" + object-fit="{{videoFit}}" + referrer-policy="{{videoReferrerPolicy}}" + class="van-uploader__preview-image" + style="{{ computed.sizeStyle({ previewSize }) }}" + data-index="{{ index }}" + bindtap="onPreviewVideo" + > + </video> + <view + wx:else + class="van-uploader__file" + style="{{ computed.sizeStyle({ previewSize }) }}" + data-index="{{ index }}" + bindtap="onPreviewFile" + > + <van-icon name="description" class="van-uploader__file-icon" /> + <view class="van-uploader__file-name van-ellipsis">{{ item.name || item.url }}</view> + </view> + <view + wx:if="{{ item.status === 'uploading' || item.status === 'failed' }}" + class="van-uploader__mask" + > + <van-icon wx:if="{{ item.status === 'failed' }}" name="close" class="van-uploader__mask-icon" /> + <van-loading wx:else custom-class="van-uploader__loading" /> + <text wx:if="{{ item.message }}" class="van-uploader__mask-message">{{ item.message }}</text> + </view> + <view + wx:if="{{ deletable && item.deletable }}" + data-index="{{ index }}" + class="van-uploader__preview-delete" + catch:tap="deleteItem" + > + <van-icon name="cross" class="van-uploader__preview-delete-icon" /> + </view> + </view> + + <!-- 上传样式 --> + <block wx:if="{{ isInCount }}"> + <view class="van-uploader__slot" bindtap="startUpload"> + <slot /> + </view> + + <!-- 默认上传样式 --> + <view + wx:if="{{ showUpload }}" + class="van-uploader__upload {{ disabled ? 'van-uploader__upload--disabled': ''}}" + style="{{ computed.sizeStyle({ previewSize }) }}" + bindtap="startUpload" + > + <van-icon name="{{ uploadIcon }}" class="van-uploader__upload-icon" /> + <text wx:if="{{ uploadText }}" class="van-uploader__upload-text">{{ uploadText }}</text> + </view> + </block> + </view> +</view> diff --git a/src/miniprogram_npm/@vant/weapp/uploader/index.wxs b/src/miniprogram_npm/@vant/weapp/uploader/index.wxs new file mode 100644 index 0000000..c567ec2 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function sizeStyle(data) { + return "Array" === data.previewSize.constructor ? style({ + width: addUnit(data.previewSize[0]), + height: addUnit(data.previewSize[1]), + }) : style({ + width: addUnit(data.previewSize), + height: addUnit(data.previewSize), + }); +} + +module.exports = { + sizeStyle: sizeStyle, +}; diff --git a/src/miniprogram_npm/@vant/weapp/uploader/index.wxss b/src/miniprogram_npm/@vant/weapp/uploader/index.wxss new file mode 100644 index 0000000..11f8696 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-uploader{display:inline-block;position:relative}.van-uploader__wrapper{display:flex;flex-wrap:wrap}.van-uploader__slot:empty{display:none}.van-uploader__slot:not(:empty)+.van-uploader__upload{display:none!important}.van-uploader__upload{align-items:center;background-color:var(--uploader-upload-background-color,#f7f8fa);box-sizing:border-box;display:flex;flex-direction:column;height:var(--uploader-size,80px);justify-content:center;margin:0 8px 8px 0;position:relative;width:var(--uploader-size,80px)}.van-uploader__upload:active{background-color:var(--uploader-upload-active-color,#f2f3f5)}.van-uploader__upload-icon{color:var(--uploader-icon-color,#dcdee0);font-size:var(--uploader-icon-size,24px)}.van-uploader__upload-text{color:var(--uploader-text-color,#969799);font-size:var(--uploader-text-font-size,12px);margin-top:var(--padding-xs,8px)}.van-uploader__upload--disabled{opacity:var(--uploader-disabled-opacity,.5)}.van-uploader__preview{cursor:pointer;margin:0 8px 8px 0;position:relative}.van-uploader__preview-image{display:block;height:var(--uploader-size,80px);overflow:hidden;width:var(--uploader-size,80px)}.van-uploader__preview-delete,.van-uploader__preview-delete:after{height:var(--uploader-delete-icon-size,14px);position:absolute;right:0;top:0;width:var(--uploader-delete-icon-size,14px)}.van-uploader__preview-delete:after{background-color:var(--uploader-delete-background-color,rgba(0,0,0,.7));border-radius:0 0 0 12px;content:""}.van-uploader__preview-delete-icon{color:var(--uploader-delete-color,#fff);font-size:var(--uploader-delete-icon-size,14px);position:absolute;right:0;top:0;transform:scale(.7) translate(10%,-10%);z-index:1}.van-uploader__file{align-items:center;background-color:var(--uploader-file-background-color,#f7f8fa);display:flex;flex-direction:column;height:var(--uploader-size,80px);justify-content:center;width:var(--uploader-size,80px)}.van-uploader__file-icon{color:var(--uploader-file-icon-color,#646566);font-size:var(--uploader-file-icon-size,20px)}.van-uploader__file-name{box-sizing:border-box;color:var(--uploader-file-name-text-color,#646566);font-size:var(--uploader-file-name-font-size,12px);margin-top:var(--uploader-file-name-margin-top,8px);padding:var(--uploader-file-name-padding,0 4px);text-align:center;width:100%}.van-uploader__mask{align-items:center;background-color:var(--uploader-mask-background-color,rgba(50,50,51,.88));bottom:0;color:#fff;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0}.van-uploader__mask-icon{font-size:var(--uploader-mask-icon-size,22px)}.van-uploader__mask-message{font-size:var(--uploader-mask-message-font-size,12px);line-height:var(--uploader-mask-message-line-height,14px);margin-top:6px;padding:0 var(--padding-base,4px)}.van-uploader__loading{color:var(--uploader-loading-icon-color,#fff)!important;height:var(--uploader-loading-icon-size,22px);width:var(--uploader-loading-icon-size,22px)} \ No newline at end of file diff --git a/src/miniprogram_npm/@vant/weapp/uploader/shared.d.ts b/src/miniprogram_npm/@vant/weapp/uploader/shared.d.ts new file mode 100644 index 0000000..77b4541 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/shared.d.ts @@ -0,0 +1,57 @@ +export declare const imageProps: { + sizeType: { + type: ArrayConstructor; + value: string[]; + }; + capture: { + type: ArrayConstructor; + value: string[]; + }; + showmenu: { + type: BooleanConstructor; + value: boolean; + }; +}; +export declare const videoProps: { + capture: { + type: ArrayConstructor; + value: string[]; + }; + compressed: { + type: BooleanConstructor; + value: boolean; + }; + maxDuration: { + type: NumberConstructor; + value: number; + }; + camera: { + type: StringConstructor; + value: string; + }; + referrerPolicy: { + type: StringConstructor; + value: string; + }; +}; +export declare const mediaProps: { + capture: { + type: ArrayConstructor; + value: string[]; + }; + mediaType: { + type: ArrayConstructor; + value: string[]; + }; + maxDuration: { + type: NumberConstructor; + value: number; + }; + camera: { + type: StringConstructor; + value: string; + }; +}; +export declare const messageFileProps: { + extension: null; +}; diff --git a/src/miniprogram_npm/@vant/weapp/uploader/shared.js b/src/miniprogram_npm/@vant/weapp/uploader/shared.js new file mode 100644 index 0000000..67f3263 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/shared.js @@ -0,0 +1,64 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.messageFileProps = exports.mediaProps = exports.videoProps = exports.imageProps = void 0; +// props for image +exports.imageProps = { + sizeType: { + type: Array, + value: ['original', 'compressed'], + }, + capture: { + type: Array, + value: ['album', 'camera'], + }, + showmenu: { + type: Boolean, + value: true, + }, +}; +// props for video +exports.videoProps = { + capture: { + type: Array, + value: ['album', 'camera'], + }, + compressed: { + type: Boolean, + value: true, + }, + maxDuration: { + type: Number, + value: 60, + }, + camera: { + type: String, + value: 'back', + }, + referrerPolicy: { + type: String, + value: 'no-referrer', + }, +}; +// props for media +exports.mediaProps = { + capture: { + type: Array, + value: ['album', 'camera'], + }, + mediaType: { + type: Array, + value: ['image', 'video', 'mix'], + }, + maxDuration: { + type: Number, + value: 60, + }, + camera: { + type: String, + value: 'back', + }, +}; +// props for file +exports.messageFileProps = { + extension: null, +}; diff --git a/src/miniprogram_npm/@vant/weapp/uploader/utils.d.ts b/src/miniprogram_npm/@vant/weapp/uploader/utils.d.ts new file mode 100644 index 0000000..1e76ee6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/utils.d.ts @@ -0,0 +1,24 @@ +export interface File { + url: string; + size?: number; + name?: string; + type: string; + duration?: number; + time?: number; + isImage?: boolean; + isVideo?: boolean; +} +export declare function isImageFile(item: File): boolean; +export declare function isVideoFile(item: File): boolean; +export declare function chooseFile({ accept, multiple, capture, compressed, maxDuration, sizeType, camera, maxCount, mediaType, extension, }: { + accept: any; + multiple: any; + capture: any; + compressed: any; + maxDuration: any; + sizeType: any; + camera: any; + maxCount: any; + mediaType: any; + extension: any; +}): Promise<File | File[]>; diff --git a/src/miniprogram_npm/@vant/weapp/uploader/utils.js b/src/miniprogram_npm/@vant/weapp/uploader/utils.js new file mode 100644 index 0000000..a5d49c6 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/uploader/utils.js @@ -0,0 +1,112 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.chooseFile = exports.isVideoFile = exports.isImageFile = void 0; +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +function isImageFile(item) { + if (item.isImage != null) { + return item.isImage; + } + if (item.type) { + return item.type === 'image'; + } + if (item.url) { + return (0, validator_1.isImageUrl)(item.url); + } + return false; +} +exports.isImageFile = isImageFile; +function isVideoFile(item) { + if (item.isVideo != null) { + return item.isVideo; + } + if (item.type) { + return item.type === 'video'; + } + if (item.url) { + return (0, validator_1.isVideoUrl)(item.url); + } + return false; +} +exports.isVideoFile = isVideoFile; +function formatImage(res) { + return res.tempFiles.map(function (item) { return (__assign(__assign({}, (0, utils_1.pickExclude)(item, ['path'])), { type: 'image', url: item.tempFilePath || item.path, thumb: item.tempFilePath || item.path })); }); +} +function formatVideo(res) { + return [ + __assign(__assign({}, (0, utils_1.pickExclude)(res, ['tempFilePath', 'thumbTempFilePath', 'errMsg'])), { type: 'video', url: res.tempFilePath, thumb: res.thumbTempFilePath }), + ]; +} +function formatMedia(res) { + return res.tempFiles.map(function (item) { return (__assign(__assign({}, (0, utils_1.pickExclude)(item, ['fileType', 'thumbTempFilePath', 'tempFilePath'])), { type: item.fileType, url: item.tempFilePath, thumb: item.fileType === 'video' ? item.thumbTempFilePath : item.tempFilePath })); }); +} +function formatFile(res) { + return res.tempFiles.map(function (item) { return (__assign(__assign({}, (0, utils_1.pickExclude)(item, ['path'])), { url: item.path })); }); +} +function chooseFile(_a) { + var accept = _a.accept, multiple = _a.multiple, capture = _a.capture, compressed = _a.compressed, maxDuration = _a.maxDuration, sizeType = _a.sizeType, camera = _a.camera, maxCount = _a.maxCount, mediaType = _a.mediaType, extension = _a.extension; + return new Promise(function (resolve, reject) { + switch (accept) { + case 'image': + if (utils_1.isPC || utils_1.isWxWork) { + wx.chooseImage({ + count: multiple ? Math.min(maxCount, 9) : 1, + sourceType: capture, + sizeType: sizeType, + success: function (res) { return resolve(formatImage(res)); }, + fail: reject, + }); + } + else { + wx.chooseMedia({ + count: multiple ? Math.min(maxCount, 9) : 1, + mediaType: ['image'], + sourceType: capture, + maxDuration: maxDuration, + sizeType: sizeType, + camera: camera, + success: function (res) { return resolve(formatImage(res)); }, + fail: reject, + }); + } + break; + case 'media': + wx.chooseMedia({ + count: multiple ? Math.min(maxCount, 9) : 1, + mediaType: mediaType, + sourceType: capture, + maxDuration: maxDuration, + sizeType: sizeType, + camera: camera, + success: function (res) { return resolve(formatMedia(res)); }, + fail: reject, + }); + break; + case 'video': + wx.chooseVideo({ + sourceType: capture, + compressed: compressed, + maxDuration: maxDuration, + camera: camera, + success: function (res) { return resolve(formatVideo(res)); }, + fail: reject, + }); + break; + default: + wx.chooseMessageFile(__assign(__assign({ count: multiple ? maxCount : 1, type: accept }, (extension ? { extension: extension } : {})), { success: function (res) { return resolve(formatFile(res)); }, fail: reject })); + break; + } + }); +} +exports.chooseFile = chooseFile; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs b/src/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs new file mode 100644 index 0000000..4f33462 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs @@ -0,0 +1,12 @@ +/* eslint-disable */ +var REGEXP = getRegExp('^-?\d+(\.\d+)?$'); + +function addUnit(value) { + if (value == null) { + return undefined; + } + + return REGEXP.test('' + value) ? value + 'px' : value; +} + +module.exports = addUnit; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/array.wxs b/src/miniprogram_npm/@vant/weapp/wxs/array.wxs new file mode 100644 index 0000000..610089c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/array.wxs @@ -0,0 +1,5 @@ +function isArray(array) { + return array && array.constructor === 'Array'; +} + +module.exports.isArray = isArray; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/bem.wxs b/src/miniprogram_npm/@vant/weapp/wxs/bem.wxs new file mode 100644 index 0000000..1efa129 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/bem.wxs @@ -0,0 +1,39 @@ +/* eslint-disable */ +var array = require('./array.wxs'); +var object = require('./object.wxs'); +var PREFIX = 'van-'; + +function join(name, mods) { + name = PREFIX + name; + mods = mods.map(function(mod) { + return name + '--' + mod; + }); + mods.unshift(name); + return mods.join(' '); +} + +function traversing(mods, conf) { + if (!conf) { + return; + } + + if (typeof conf === 'string' || typeof conf === 'number') { + mods.push(conf); + } else if (array.isArray(conf)) { + conf.forEach(function(item) { + traversing(mods, item); + }); + } else if (typeof conf === 'object') { + object.keys(conf).forEach(function(key) { + conf[key] && mods.push(key); + }); + } +} + +function bem(name, conf) { + var mods = []; + traversing(mods, conf); + return join(name, mods); +} + +module.exports = bem; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/memoize.wxs b/src/miniprogram_npm/@vant/weapp/wxs/memoize.wxs new file mode 100644 index 0000000..8f7f46d --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/memoize.wxs @@ -0,0 +1,55 @@ +/** + * Simple memoize + * wxs doesn't support fn.apply, so this memoize only support up to 2 args + */ +/* eslint-disable */ + +function isPrimitive(value) { + var type = typeof value; + return ( + type === 'boolean' || + type === 'number' || + type === 'string' || + type === 'undefined' || + value === null + ); +} + +// mock simple fn.call in wxs +function call(fn, args) { + if (args.length === 2) { + return fn(args[0], args[1]); + } + + if (args.length === 1) { + return fn(args[0]); + } + + return fn(); +} + +function serializer(args) { + if (args.length === 1 && isPrimitive(args[0])) { + return args[0]; + } + var obj = {}; + for (var i = 0; i < args.length; i++) { + obj['key' + i] = args[i]; + } + return JSON.stringify(obj); +} + +function memoize(fn) { + var cache = {}; + + return function() { + var key = serializer(arguments); + if (cache[key] === undefined) { + cache[key] = call(fn, arguments); + } + + return cache[key]; + }; +} + +module.exports = memoize; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/object.wxs b/src/miniprogram_npm/@vant/weapp/wxs/object.wxs new file mode 100644 index 0000000..e077107 --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/object.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var REGEXP = getRegExp('{|}|"', 'g'); + +function keys(obj) { + return JSON.stringify(obj) + .replace(REGEXP, '') + .split(',') + .map(function(item) { + return item.split(':')[0]; + }); +} + +module.exports.keys = keys; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/style.wxs b/src/miniprogram_npm/@vant/weapp/wxs/style.wxs new file mode 100644 index 0000000..d88ca7c --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/style.wxs @@ -0,0 +1,42 @@ +/* eslint-disable */ +var object = require('./object.wxs'); +var array = require('./array.wxs'); + +function kebabCase(word) { + var newWord = word + .replace(getRegExp("[A-Z]", 'g'), function (i) { + return '-' + i; + }) + .toLowerCase() + + return newWord; +} + +function style(styles) { + if (array.isArray(styles)) { + return styles + .filter(function (item) { + return item != null && item !== ''; + }) + .map(function (item) { + return style(item); + }) + .join(';'); + } + + if ('Object' === styles.constructor) { + return object + .keys(styles) + .filter(function (key) { + return styles[key] != null && styles[key] !== ''; + }) + .map(function (key) { + return [kebabCase(key), [styles[key]]].join(':'); + }) + .join(';'); + } + + return styles; +} + +module.exports = style; diff --git a/src/miniprogram_npm/@vant/weapp/wxs/utils.wxs b/src/miniprogram_npm/@vant/weapp/wxs/utils.wxs new file mode 100644 index 0000000..f66d33a --- /dev/null +++ b/src/miniprogram_npm/@vant/weapp/wxs/utils.wxs @@ -0,0 +1,10 @@ +/* eslint-disable */ +var bem = require('./bem.wxs'); +var memoize = require('./memoize.wxs'); +var addUnit = require('./add-unit.wxs'); + +module.exports = { + bem: memoize(bem), + memoize: memoize, + addUnit: addUnit +}; diff --git a/src/miniprogram_npm/crypto-js/index.js b/src/miniprogram_npm/crypto-js/index.js new file mode 100644 index 0000000..cd96df4 --- /dev/null +++ b/src/miniprogram_npm/crypto-js/index.js @@ -0,0 +1,7365 @@ +module.exports = (function() { +var __MODS__ = {}; +var __DEFINE__ = function(modId, func, req) { var m = { exports: {}, _tempexports: {} }; __MODS__[modId] = { status: 0, func: func, req: req, m: m }; }; +var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; }; +var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } }; +var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; }; +__DEFINE__(1734488773777, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./x64-core"), require("./lib-typedarrays"), require("./enc-utf16"), require("./enc-base64"), require("./enc-base64url"), require("./md5"), require("./sha1"), require("./sha256"), require("./sha224"), require("./sha512"), require("./sha384"), require("./sha3"), require("./ripemd160"), require("./hmac"), require("./pbkdf2"), require("./evpkdf"), require("./cipher-core"), require("./mode-cfb"), require("./mode-ctr"), require("./mode-ctr-gladman"), require("./mode-ofb"), require("./mode-ecb"), require("./pad-ansix923"), require("./pad-iso10126"), require("./pad-iso97971"), require("./pad-zeropadding"), require("./pad-nopadding"), require("./format-hex"), require("./aes"), require("./tripledes"), require("./rc4"), require("./rabbit"), require("./rabbit-legacy"), require("./blowfish")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./x64-core", "./lib-typedarrays", "./enc-utf16", "./enc-base64", "./enc-base64url", "./md5", "./sha1", "./sha256", "./sha224", "./sha512", "./sha384", "./sha3", "./ripemd160", "./hmac", "./pbkdf2", "./evpkdf", "./cipher-core", "./mode-cfb", "./mode-ctr", "./mode-ctr-gladman", "./mode-ofb", "./mode-ecb", "./pad-ansix923", "./pad-iso10126", "./pad-iso97971", "./pad-zeropadding", "./pad-nopadding", "./format-hex", "./aes", "./tripledes", "./rc4", "./rabbit", "./rabbit-legacy", "./blowfish"], factory); + } + else { + // Global (browser) + root.CryptoJS = factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + return CryptoJS; + +})); +}, function(modId) {var map = {"./core":1734488773778,"./x64-core":1734488773779,"./lib-typedarrays":1734488773780,"./enc-utf16":1734488773781,"./enc-base64":1734488773782,"./enc-base64url":1734488773783,"./md5":1734488773784,"./sha1":1734488773785,"./sha256":1734488773786,"./sha224":1734488773787,"./sha512":1734488773788,"./sha384":1734488773789,"./sha3":1734488773790,"./ripemd160":1734488773791,"./hmac":1734488773792,"./pbkdf2":1734488773793,"./evpkdf":1734488773794,"./cipher-core":1734488773795,"./mode-cfb":1734488773796,"./mode-ctr":1734488773797,"./mode-ctr-gladman":1734488773798,"./mode-ofb":1734488773799,"./mode-ecb":1734488773800,"./pad-ansix923":1734488773801,"./pad-iso10126":1734488773802,"./pad-iso97971":1734488773803,"./pad-zeropadding":1734488773804,"./pad-nopadding":1734488773805,"./format-hex":1734488773806,"./aes":1734488773807,"./tripledes":1734488773808,"./rc4":1734488773809,"./rabbit":1734488773810,"./rabbit-legacy":1734488773811,"./blowfish":1734488773812}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773778, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(); + } + else if (typeof define === "function" && define.amd) { + // AMD + define([], factory); + } + else { + // Global (browser) + root.CryptoJS = factory(); + } +}(this, function () { + + /*globals window, global, require*/ + + /** + * CryptoJS core components. + */ + var CryptoJS = CryptoJS || (function (Math, undefined) { + + var crypto; + + // Native crypto from window (Browser) + if (typeof window !== 'undefined' && window.crypto) { + crypto = window.crypto; + } + + // Native crypto in web worker (Browser) + if (typeof self !== 'undefined' && self.crypto) { + crypto = self.crypto; + } + + // Native crypto from worker + if (typeof globalThis !== 'undefined' && globalThis.crypto) { + crypto = globalThis.crypto; + } + + // Native (experimental IE 11) crypto from window (Browser) + if (!crypto && typeof window !== 'undefined' && window.msCrypto) { + crypto = window.msCrypto; + } + + // Native crypto from global (NodeJS) + if (!crypto && typeof global !== 'undefined' && global.crypto) { + crypto = global.crypto; + } + + // Native crypto import via require (NodeJS) + if (!crypto && typeof require === 'function') { + try { + crypto = require('crypto'); + } catch (err) {} + } + + /* + * Cryptographically secure pseudorandom number generator + * + * As Math.random() is cryptographically not safe to use + */ + var cryptoSecureRandomInt = function () { + if (crypto) { + // Use getRandomValues method (Browser) + if (typeof crypto.getRandomValues === 'function') { + try { + return crypto.getRandomValues(new Uint32Array(1))[0]; + } catch (err) {} + } + + // Use randomBytes method (NodeJS) + if (typeof crypto.randomBytes === 'function') { + try { + return crypto.randomBytes(4).readInt32LE(); + } catch (err) {} + } + } + + throw new Error('Native crypto module could not be used to get secure random number.'); + }; + + /* + * Local polyfill of Object.create + + */ + var create = Object.create || (function () { + function F() {} + + return function (obj) { + var subtype; + + F.prototype = obj; + + subtype = new F(); + + F.prototype = null; + + return subtype; + }; + }()); + + /** + * CryptoJS namespace. + */ + var C = {}; + + /** + * Library namespace. + */ + var C_lib = C.lib = {}; + + /** + * Base object for prototypal inheritance. + */ + var Base = C_lib.Base = (function () { + + + return { + /** + * Creates a new object that inherits from this object. + * + * @param {Object} overrides Properties to copy into the new object. + * + * @return {Object} The new object. + * + * @static + * + * @example + * + * var MyType = CryptoJS.lib.Base.extend({ + * field: 'value', + * + * method: function () { + * } + * }); + */ + extend: function (overrides) { + // Spawn + var subtype = create(this); + + // Augment + if (overrides) { + subtype.mixIn(overrides); + } + + // Create default initializer + if (!subtype.hasOwnProperty('init') || this.init === subtype.init) { + subtype.init = function () { + subtype.$super.init.apply(this, arguments); + }; + } + + // Initializer's prototype is the subtype object + subtype.init.prototype = subtype; + + // Reference supertype + subtype.$super = this; + + return subtype; + }, + + /** + * Extends this object and runs the init method. + * Arguments to create() will be passed to init(). + * + * @return {Object} The new object. + * + * @static + * + * @example + * + * var instance = MyType.create(); + */ + create: function () { + var instance = this.extend(); + instance.init.apply(instance, arguments); + + return instance; + }, + + /** + * Initializes a newly created object. + * Override this method to add some logic when your objects are created. + * + * @example + * + * var MyType = CryptoJS.lib.Base.extend({ + * init: function () { + * // ... + * } + * }); + */ + init: function () { + }, + + /** + * Copies properties into this object. + * + * @param {Object} properties The properties to mix in. + * + * @example + * + * MyType.mixIn({ + * field: 'value' + * }); + */ + mixIn: function (properties) { + for (var propertyName in properties) { + if (properties.hasOwnProperty(propertyName)) { + this[propertyName] = properties[propertyName]; + } + } + + // IE won't copy toString using the loop above + if (properties.hasOwnProperty('toString')) { + this.toString = properties.toString; + } + }, + + /** + * Creates a copy of this object. + * + * @return {Object} The clone. + * + * @example + * + * var clone = instance.clone(); + */ + clone: function () { + return this.init.prototype.extend(this); + } + }; + }()); + + /** + * An array of 32-bit words. + * + * @property {Array} words The array of 32-bit words. + * @property {number} sigBytes The number of significant bytes in this word array. + */ + var WordArray = C_lib.WordArray = Base.extend({ + /** + * Initializes a newly created word array. + * + * @param {Array} words (Optional) An array of 32-bit words. + * @param {number} sigBytes (Optional) The number of significant bytes in the words. + * + * @example + * + * var wordArray = CryptoJS.lib.WordArray.create(); + * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]); + * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6); + */ + init: function (words, sigBytes) { + words = this.words = words || []; + + if (sigBytes != undefined) { + this.sigBytes = sigBytes; + } else { + this.sigBytes = words.length * 4; + } + }, + + /** + * Converts this word array to a string. + * + * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex + * + * @return {string} The stringified word array. + * + * @example + * + * var string = wordArray + ''; + * var string = wordArray.toString(); + * var string = wordArray.toString(CryptoJS.enc.Utf8); + */ + toString: function (encoder) { + return (encoder || Hex).stringify(this); + }, + + /** + * Concatenates a word array to this word array. + * + * @param {WordArray} wordArray The word array to append. + * + * @return {WordArray} This word array. + * + * @example + * + * wordArray1.concat(wordArray2); + */ + concat: function (wordArray) { + // Shortcuts + var thisWords = this.words; + var thatWords = wordArray.words; + var thisSigBytes = this.sigBytes; + var thatSigBytes = wordArray.sigBytes; + + // Clamp excess bits + this.clamp(); + + // Concat + if (thisSigBytes % 4) { + // Copy one byte at a time + for (var i = 0; i < thatSigBytes; i++) { + var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff; + thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8); + } + } else { + // Copy one word at a time + for (var j = 0; j < thatSigBytes; j += 4) { + thisWords[(thisSigBytes + j) >>> 2] = thatWords[j >>> 2]; + } + } + this.sigBytes += thatSigBytes; + + // Chainable + return this; + }, + + /** + * Removes insignificant bits. + * + * @example + * + * wordArray.clamp(); + */ + clamp: function () { + // Shortcuts + var words = this.words; + var sigBytes = this.sigBytes; + + // Clamp + words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8); + words.length = Math.ceil(sigBytes / 4); + }, + + /** + * Creates a copy of this word array. + * + * @return {WordArray} The clone. + * + * @example + * + * var clone = wordArray.clone(); + */ + clone: function () { + var clone = Base.clone.call(this); + clone.words = this.words.slice(0); + + return clone; + }, + + /** + * Creates a word array filled with random bytes. + * + * @param {number} nBytes The number of random bytes to generate. + * + * @return {WordArray} The random word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.lib.WordArray.random(16); + */ + random: function (nBytes) { + var words = []; + + for (var i = 0; i < nBytes; i += 4) { + words.push(cryptoSecureRandomInt()); + } + + return new WordArray.init(words, nBytes); + } + }); + + /** + * Encoder namespace. + */ + var C_enc = C.enc = {}; + + /** + * Hex encoding strategy. + */ + var Hex = C_enc.Hex = { + /** + * Converts a word array to a hex string. + * + * @param {WordArray} wordArray The word array. + * + * @return {string} The hex string. + * + * @static + * + * @example + * + * var hexString = CryptoJS.enc.Hex.stringify(wordArray); + */ + stringify: function (wordArray) { + // Shortcuts + var words = wordArray.words; + var sigBytes = wordArray.sigBytes; + + // Convert + var hexChars = []; + for (var i = 0; i < sigBytes; i++) { + var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff; + hexChars.push((bite >>> 4).toString(16)); + hexChars.push((bite & 0x0f).toString(16)); + } + + return hexChars.join(''); + }, + + /** + * Converts a hex string to a word array. + * + * @param {string} hexStr The hex string. + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Hex.parse(hexString); + */ + parse: function (hexStr) { + // Shortcut + var hexStrLength = hexStr.length; + + // Convert + var words = []; + for (var i = 0; i < hexStrLength; i += 2) { + words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4); + } + + return new WordArray.init(words, hexStrLength / 2); + } + }; + + /** + * Latin1 encoding strategy. + */ + var Latin1 = C_enc.Latin1 = { + /** + * Converts a word array to a Latin1 string. + * + * @param {WordArray} wordArray The word array. + * + * @return {string} The Latin1 string. + * + * @static + * + * @example + * + * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray); + */ + stringify: function (wordArray) { + // Shortcuts + var words = wordArray.words; + var sigBytes = wordArray.sigBytes; + + // Convert + var latin1Chars = []; + for (var i = 0; i < sigBytes; i++) { + var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff; + latin1Chars.push(String.fromCharCode(bite)); + } + + return latin1Chars.join(''); + }, + + /** + * Converts a Latin1 string to a word array. + * + * @param {string} latin1Str The Latin1 string. + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Latin1.parse(latin1String); + */ + parse: function (latin1Str) { + // Shortcut + var latin1StrLength = latin1Str.length; + + // Convert + var words = []; + for (var i = 0; i < latin1StrLength; i++) { + words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8); + } + + return new WordArray.init(words, latin1StrLength); + } + }; + + /** + * UTF-8 encoding strategy. + */ + var Utf8 = C_enc.Utf8 = { + /** + * Converts a word array to a UTF-8 string. + * + * @param {WordArray} wordArray The word array. + * + * @return {string} The UTF-8 string. + * + * @static + * + * @example + * + * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray); + */ + stringify: function (wordArray) { + try { + return decodeURIComponent(escape(Latin1.stringify(wordArray))); + } catch (e) { + throw new Error('Malformed UTF-8 data'); + } + }, + + /** + * Converts a UTF-8 string to a word array. + * + * @param {string} utf8Str The UTF-8 string. + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Utf8.parse(utf8String); + */ + parse: function (utf8Str) { + return Latin1.parse(unescape(encodeURIComponent(utf8Str))); + } + }; + + /** + * Abstract buffered block algorithm template. + * + * The property blockSize must be implemented in a concrete subtype. + * + * @property {number} _minBufferSize The number of blocks that should be kept unprocessed in the buffer. Default: 0 + */ + var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({ + /** + * Resets this block algorithm's data buffer to its initial state. + * + * @example + * + * bufferedBlockAlgorithm.reset(); + */ + reset: function () { + // Initial values + this._data = new WordArray.init(); + this._nDataBytes = 0; + }, + + /** + * Adds new data to this block algorithm's buffer. + * + * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8. + * + * @example + * + * bufferedBlockAlgorithm._append('data'); + * bufferedBlockAlgorithm._append(wordArray); + */ + _append: function (data) { + // Convert string to WordArray, else assume WordArray already + if (typeof data == 'string') { + data = Utf8.parse(data); + } + + // Append + this._data.concat(data); + this._nDataBytes += data.sigBytes; + }, + + /** + * Processes available data blocks. + * + * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype. + * + * @param {boolean} doFlush Whether all blocks and partial blocks should be processed. + * + * @return {WordArray} The processed data. + * + * @example + * + * var processedData = bufferedBlockAlgorithm._process(); + * var processedData = bufferedBlockAlgorithm._process(!!'flush'); + */ + _process: function (doFlush) { + var processedWords; + + // Shortcuts + var data = this._data; + var dataWords = data.words; + var dataSigBytes = data.sigBytes; + var blockSize = this.blockSize; + var blockSizeBytes = blockSize * 4; + + // Count blocks ready + var nBlocksReady = dataSigBytes / blockSizeBytes; + if (doFlush) { + // Round up to include partial blocks + nBlocksReady = Math.ceil(nBlocksReady); + } else { + // Round down to include only full blocks, + // less the number of blocks that must remain in the buffer + nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0); + } + + // Count words ready + var nWordsReady = nBlocksReady * blockSize; + + // Count bytes ready + var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes); + + // Process blocks + if (nWordsReady) { + for (var offset = 0; offset < nWordsReady; offset += blockSize) { + // Perform concrete-algorithm logic + this._doProcessBlock(dataWords, offset); + } + + // Remove processed words + processedWords = dataWords.splice(0, nWordsReady); + data.sigBytes -= nBytesReady; + } + + // Return processed words + return new WordArray.init(processedWords, nBytesReady); + }, + + /** + * Creates a copy of this object. + * + * @return {Object} The clone. + * + * @example + * + * var clone = bufferedBlockAlgorithm.clone(); + */ + clone: function () { + var clone = Base.clone.call(this); + clone._data = this._data.clone(); + + return clone; + }, + + _minBufferSize: 0 + }); + + /** + * Abstract hasher template. + * + * @property {number} blockSize The number of 32-bit words this hasher operates on. Default: 16 (512 bits) + */ + var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({ + /** + * Configuration options. + */ + cfg: Base.extend(), + + /** + * Initializes a newly created hasher. + * + * @param {Object} cfg (Optional) The configuration options to use for this hash computation. + * + * @example + * + * var hasher = CryptoJS.algo.SHA256.create(); + */ + init: function (cfg) { + // Apply config defaults + this.cfg = this.cfg.extend(cfg); + + // Set initial values + this.reset(); + }, + + /** + * Resets this hasher to its initial state. + * + * @example + * + * hasher.reset(); + */ + reset: function () { + // Reset data buffer + BufferedBlockAlgorithm.reset.call(this); + + // Perform concrete-hasher logic + this._doReset(); + }, + + /** + * Updates this hasher with a message. + * + * @param {WordArray|string} messageUpdate The message to append. + * + * @return {Hasher} This hasher. + * + * @example + * + * hasher.update('message'); + * hasher.update(wordArray); + */ + update: function (messageUpdate) { + // Append + this._append(messageUpdate); + + // Update the hash + this._process(); + + // Chainable + return this; + }, + + /** + * Finalizes the hash computation. + * Note that the finalize operation is effectively a destructive, read-once operation. + * + * @param {WordArray|string} messageUpdate (Optional) A final message update. + * + * @return {WordArray} The hash. + * + * @example + * + * var hash = hasher.finalize(); + * var hash = hasher.finalize('message'); + * var hash = hasher.finalize(wordArray); + */ + finalize: function (messageUpdate) { + // Final message update + if (messageUpdate) { + this._append(messageUpdate); + } + + // Perform concrete-hasher logic + var hash = this._doFinalize(); + + return hash; + }, + + blockSize: 512/32, + + /** + * Creates a shortcut function to a hasher's object interface. + * + * @param {Hasher} hasher The hasher to create a helper for. + * + * @return {Function} The shortcut function. + * + * @static + * + * @example + * + * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256); + */ + _createHelper: function (hasher) { + return function (message, cfg) { + return new hasher.init(cfg).finalize(message); + }; + }, + + /** + * Creates a shortcut function to the HMAC's object interface. + * + * @param {Hasher} hasher The hasher to use in this HMAC helper. + * + * @return {Function} The shortcut function. + * + * @static + * + * @example + * + * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256); + */ + _createHmacHelper: function (hasher) { + return function (message, key) { + return new C_algo.HMAC.init(hasher, key).finalize(message); + }; + } + }); + + /** + * Algorithm namespace. + */ + var C_algo = C.algo = {}; + + return C; + }(Math)); + + + return CryptoJS; + +})); +}, function(modId) { var map = {}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773779, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function (undefined) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var Base = C_lib.Base; + var X32WordArray = C_lib.WordArray; + + /** + * x64 namespace. + */ + var C_x64 = C.x64 = {}; + + /** + * A 64-bit word. + */ + var X64Word = C_x64.Word = Base.extend({ + /** + * Initializes a newly created 64-bit word. + * + * @param {number} high The high 32 bits. + * @param {number} low The low 32 bits. + * + * @example + * + * var x64Word = CryptoJS.x64.Word.create(0x00010203, 0x04050607); + */ + init: function (high, low) { + this.high = high; + this.low = low; + } + + /** + * Bitwise NOTs this word. + * + * @return {X64Word} A new x64-Word object after negating. + * + * @example + * + * var negated = x64Word.not(); + */ + // not: function () { + // var high = ~this.high; + // var low = ~this.low; + + // return X64Word.create(high, low); + // }, + + /** + * Bitwise ANDs this word with the passed word. + * + * @param {X64Word} word The x64-Word to AND with this word. + * + * @return {X64Word} A new x64-Word object after ANDing. + * + * @example + * + * var anded = x64Word.and(anotherX64Word); + */ + // and: function (word) { + // var high = this.high & word.high; + // var low = this.low & word.low; + + // return X64Word.create(high, low); + // }, + + /** + * Bitwise ORs this word with the passed word. + * + * @param {X64Word} word The x64-Word to OR with this word. + * + * @return {X64Word} A new x64-Word object after ORing. + * + * @example + * + * var ored = x64Word.or(anotherX64Word); + */ + // or: function (word) { + // var high = this.high | word.high; + // var low = this.low | word.low; + + // return X64Word.create(high, low); + // }, + + /** + * Bitwise XORs this word with the passed word. + * + * @param {X64Word} word The x64-Word to XOR with this word. + * + * @return {X64Word} A new x64-Word object after XORing. + * + * @example + * + * var xored = x64Word.xor(anotherX64Word); + */ + // xor: function (word) { + // var high = this.high ^ word.high; + // var low = this.low ^ word.low; + + // return X64Word.create(high, low); + // }, + + /** + * Shifts this word n bits to the left. + * + * @param {number} n The number of bits to shift. + * + * @return {X64Word} A new x64-Word object after shifting. + * + * @example + * + * var shifted = x64Word.shiftL(25); + */ + // shiftL: function (n) { + // if (n < 32) { + // var high = (this.high << n) | (this.low >>> (32 - n)); + // var low = this.low << n; + // } else { + // var high = this.low << (n - 32); + // var low = 0; + // } + + // return X64Word.create(high, low); + // }, + + /** + * Shifts this word n bits to the right. + * + * @param {number} n The number of bits to shift. + * + * @return {X64Word} A new x64-Word object after shifting. + * + * @example + * + * var shifted = x64Word.shiftR(7); + */ + // shiftR: function (n) { + // if (n < 32) { + // var low = (this.low >>> n) | (this.high << (32 - n)); + // var high = this.high >>> n; + // } else { + // var low = this.high >>> (n - 32); + // var high = 0; + // } + + // return X64Word.create(high, low); + // }, + + /** + * Rotates this word n bits to the left. + * + * @param {number} n The number of bits to rotate. + * + * @return {X64Word} A new x64-Word object after rotating. + * + * @example + * + * var rotated = x64Word.rotL(25); + */ + // rotL: function (n) { + // return this.shiftL(n).or(this.shiftR(64 - n)); + // }, + + /** + * Rotates this word n bits to the right. + * + * @param {number} n The number of bits to rotate. + * + * @return {X64Word} A new x64-Word object after rotating. + * + * @example + * + * var rotated = x64Word.rotR(7); + */ + // rotR: function (n) { + // return this.shiftR(n).or(this.shiftL(64 - n)); + // }, + + /** + * Adds this word with the passed word. + * + * @param {X64Word} word The x64-Word to add with this word. + * + * @return {X64Word} A new x64-Word object after adding. + * + * @example + * + * var added = x64Word.add(anotherX64Word); + */ + // add: function (word) { + // var low = (this.low + word.low) | 0; + // var carry = (low >>> 0) < (this.low >>> 0) ? 1 : 0; + // var high = (this.high + word.high + carry) | 0; + + // return X64Word.create(high, low); + // } + }); + + /** + * An array of 64-bit words. + * + * @property {Array} words The array of CryptoJS.x64.Word objects. + * @property {number} sigBytes The number of significant bytes in this word array. + */ + var X64WordArray = C_x64.WordArray = Base.extend({ + /** + * Initializes a newly created word array. + * + * @param {Array} words (Optional) An array of CryptoJS.x64.Word objects. + * @param {number} sigBytes (Optional) The number of significant bytes in the words. + * + * @example + * + * var wordArray = CryptoJS.x64.WordArray.create(); + * + * var wordArray = CryptoJS.x64.WordArray.create([ + * CryptoJS.x64.Word.create(0x00010203, 0x04050607), + * CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f) + * ]); + * + * var wordArray = CryptoJS.x64.WordArray.create([ + * CryptoJS.x64.Word.create(0x00010203, 0x04050607), + * CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f) + * ], 10); + */ + init: function (words, sigBytes) { + words = this.words = words || []; + + if (sigBytes != undefined) { + this.sigBytes = sigBytes; + } else { + this.sigBytes = words.length * 8; + } + }, + + /** + * Converts this 64-bit word array to a 32-bit word array. + * + * @return {CryptoJS.lib.WordArray} This word array's data as a 32-bit word array. + * + * @example + * + * var x32WordArray = x64WordArray.toX32(); + */ + toX32: function () { + // Shortcuts + var x64Words = this.words; + var x64WordsLength = x64Words.length; + + // Convert + var x32Words = []; + for (var i = 0; i < x64WordsLength; i++) { + var x64Word = x64Words[i]; + x32Words.push(x64Word.high); + x32Words.push(x64Word.low); + } + + return X32WordArray.create(x32Words, this.sigBytes); + }, + + /** + * Creates a copy of this word array. + * + * @return {X64WordArray} The clone. + * + * @example + * + * var clone = x64WordArray.clone(); + */ + clone: function () { + var clone = Base.clone.call(this); + + // Clone "words" array + var words = clone.words = this.words.slice(0); + + // Clone each X64Word object + var wordsLength = words.length; + for (var i = 0; i < wordsLength; i++) { + words[i] = words[i].clone(); + } + + return clone; + } + }); + }()); + + + return CryptoJS; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773780, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Check if typed arrays are supported + if (typeof ArrayBuffer != 'function') { + return; + } + + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + + // Reference original init + var superInit = WordArray.init; + + // Augment WordArray.init to handle typed arrays + var subInit = WordArray.init = function (typedArray) { + // Convert buffers to uint8 + if (typedArray instanceof ArrayBuffer) { + typedArray = new Uint8Array(typedArray); + } + + // Convert other array views to uint8 + if ( + typedArray instanceof Int8Array || + (typeof Uint8ClampedArray !== "undefined" && typedArray instanceof Uint8ClampedArray) || + typedArray instanceof Int16Array || + typedArray instanceof Uint16Array || + typedArray instanceof Int32Array || + typedArray instanceof Uint32Array || + typedArray instanceof Float32Array || + typedArray instanceof Float64Array + ) { + typedArray = new Uint8Array(typedArray.buffer, typedArray.byteOffset, typedArray.byteLength); + } + + // Handle Uint8Array + if (typedArray instanceof Uint8Array) { + // Shortcut + var typedArrayByteLength = typedArray.byteLength; + + // Extract bytes + var words = []; + for (var i = 0; i < typedArrayByteLength; i++) { + words[i >>> 2] |= typedArray[i] << (24 - (i % 4) * 8); + } + + // Initialize this word array + superInit.call(this, words, typedArrayByteLength); + } else { + // Else call normal init + superInit.apply(this, arguments); + } + }; + + subInit.prototype = WordArray; + }()); + + + return CryptoJS.lib.WordArray; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773781, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var C_enc = C.enc; + + /** + * UTF-16 BE encoding strategy. + */ + var Utf16BE = C_enc.Utf16 = C_enc.Utf16BE = { + /** + * Converts a word array to a UTF-16 BE string. + * + * @param {WordArray} wordArray The word array. + * + * @return {string} The UTF-16 BE string. + * + * @static + * + * @example + * + * var utf16String = CryptoJS.enc.Utf16.stringify(wordArray); + */ + stringify: function (wordArray) { + // Shortcuts + var words = wordArray.words; + var sigBytes = wordArray.sigBytes; + + // Convert + var utf16Chars = []; + for (var i = 0; i < sigBytes; i += 2) { + var codePoint = (words[i >>> 2] >>> (16 - (i % 4) * 8)) & 0xffff; + utf16Chars.push(String.fromCharCode(codePoint)); + } + + return utf16Chars.join(''); + }, + + /** + * Converts a UTF-16 BE string to a word array. + * + * @param {string} utf16Str The UTF-16 BE string. + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Utf16.parse(utf16String); + */ + parse: function (utf16Str) { + // Shortcut + var utf16StrLength = utf16Str.length; + + // Convert + var words = []; + for (var i = 0; i < utf16StrLength; i++) { + words[i >>> 1] |= utf16Str.charCodeAt(i) << (16 - (i % 2) * 16); + } + + return WordArray.create(words, utf16StrLength * 2); + } + }; + + /** + * UTF-16 LE encoding strategy. + */ + C_enc.Utf16LE = { + /** + * Converts a word array to a UTF-16 LE string. + * + * @param {WordArray} wordArray The word array. + * + * @return {string} The UTF-16 LE string. + * + * @static + * + * @example + * + * var utf16Str = CryptoJS.enc.Utf16LE.stringify(wordArray); + */ + stringify: function (wordArray) { + // Shortcuts + var words = wordArray.words; + var sigBytes = wordArray.sigBytes; + + // Convert + var utf16Chars = []; + for (var i = 0; i < sigBytes; i += 2) { + var codePoint = swapEndian((words[i >>> 2] >>> (16 - (i % 4) * 8)) & 0xffff); + utf16Chars.push(String.fromCharCode(codePoint)); + } + + return utf16Chars.join(''); + }, + + /** + * Converts a UTF-16 LE string to a word array. + * + * @param {string} utf16Str The UTF-16 LE string. + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Utf16LE.parse(utf16Str); + */ + parse: function (utf16Str) { + // Shortcut + var utf16StrLength = utf16Str.length; + + // Convert + var words = []; + for (var i = 0; i < utf16StrLength; i++) { + words[i >>> 1] |= swapEndian(utf16Str.charCodeAt(i) << (16 - (i % 2) * 16)); + } + + return WordArray.create(words, utf16StrLength * 2); + } + }; + + function swapEndian(word) { + return ((word << 8) & 0xff00ff00) | ((word >>> 8) & 0x00ff00ff); + } + }()); + + + return CryptoJS.enc.Utf16; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773782, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var C_enc = C.enc; + + /** + * Base64 encoding strategy. + */ + var Base64 = C_enc.Base64 = { + /** + * Converts a word array to a Base64 string. + * + * @param {WordArray} wordArray The word array. + * + * @return {string} The Base64 string. + * + * @static + * + * @example + * + * var base64String = CryptoJS.enc.Base64.stringify(wordArray); + */ + stringify: function (wordArray) { + // Shortcuts + var words = wordArray.words; + var sigBytes = wordArray.sigBytes; + var map = this._map; + + // Clamp excess bits + wordArray.clamp(); + + // Convert + var base64Chars = []; + for (var i = 0; i < sigBytes; i += 3) { + var byte1 = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff; + var byte2 = (words[(i + 1) >>> 2] >>> (24 - ((i + 1) % 4) * 8)) & 0xff; + var byte3 = (words[(i + 2) >>> 2] >>> (24 - ((i + 2) % 4) * 8)) & 0xff; + + var triplet = (byte1 << 16) | (byte2 << 8) | byte3; + + for (var j = 0; (j < 4) && (i + j * 0.75 < sigBytes); j++) { + base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f)); + } + } + + // Add padding + var paddingChar = map.charAt(64); + if (paddingChar) { + while (base64Chars.length % 4) { + base64Chars.push(paddingChar); + } + } + + return base64Chars.join(''); + }, + + /** + * Converts a Base64 string to a word array. + * + * @param {string} base64Str The Base64 string. + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Base64.parse(base64String); + */ + parse: function (base64Str) { + // Shortcuts + var base64StrLength = base64Str.length; + var map = this._map; + var reverseMap = this._reverseMap; + + if (!reverseMap) { + reverseMap = this._reverseMap = []; + for (var j = 0; j < map.length; j++) { + reverseMap[map.charCodeAt(j)] = j; + } + } + + // Ignore padding + var paddingChar = map.charAt(64); + if (paddingChar) { + var paddingIndex = base64Str.indexOf(paddingChar); + if (paddingIndex !== -1) { + base64StrLength = paddingIndex; + } + } + + // Convert + return parseLoop(base64Str, base64StrLength, reverseMap); + + }, + + _map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=' + }; + + function parseLoop(base64Str, base64StrLength, reverseMap) { + var words = []; + var nBytes = 0; + for (var i = 0; i < base64StrLength; i++) { + if (i % 4) { + var bits1 = reverseMap[base64Str.charCodeAt(i - 1)] << ((i % 4) * 2); + var bits2 = reverseMap[base64Str.charCodeAt(i)] >>> (6 - (i % 4) * 2); + var bitsCombined = bits1 | bits2; + words[nBytes >>> 2] |= bitsCombined << (24 - (nBytes % 4) * 8); + nBytes++; + } + } + return WordArray.create(words, nBytes); + } + }()); + + + return CryptoJS.enc.Base64; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773783, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var C_enc = C.enc; + + /** + * Base64url encoding strategy. + */ + var Base64url = C_enc.Base64url = { + /** + * Converts a word array to a Base64url string. + * + * @param {WordArray} wordArray The word array. + * + * @param {boolean} urlSafe Whether to use url safe + * + * @return {string} The Base64url string. + * + * @static + * + * @example + * + * var base64String = CryptoJS.enc.Base64url.stringify(wordArray); + */ + stringify: function (wordArray, urlSafe) { + if (urlSafe === undefined) { + urlSafe = true + } + // Shortcuts + var words = wordArray.words; + var sigBytes = wordArray.sigBytes; + var map = urlSafe ? this._safe_map : this._map; + + // Clamp excess bits + wordArray.clamp(); + + // Convert + var base64Chars = []; + for (var i = 0; i < sigBytes; i += 3) { + var byte1 = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff; + var byte2 = (words[(i + 1) >>> 2] >>> (24 - ((i + 1) % 4) * 8)) & 0xff; + var byte3 = (words[(i + 2) >>> 2] >>> (24 - ((i + 2) % 4) * 8)) & 0xff; + + var triplet = (byte1 << 16) | (byte2 << 8) | byte3; + + for (var j = 0; (j < 4) && (i + j * 0.75 < sigBytes); j++) { + base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f)); + } + } + + // Add padding + var paddingChar = map.charAt(64); + if (paddingChar) { + while (base64Chars.length % 4) { + base64Chars.push(paddingChar); + } + } + + return base64Chars.join(''); + }, + + /** + * Converts a Base64url string to a word array. + * + * @param {string} base64Str The Base64url string. + * + * @param {boolean} urlSafe Whether to use url safe + * + * @return {WordArray} The word array. + * + * @static + * + * @example + * + * var wordArray = CryptoJS.enc.Base64url.parse(base64String); + */ + parse: function (base64Str, urlSafe) { + if (urlSafe === undefined) { + urlSafe = true + } + + // Shortcuts + var base64StrLength = base64Str.length; + var map = urlSafe ? this._safe_map : this._map; + var reverseMap = this._reverseMap; + + if (!reverseMap) { + reverseMap = this._reverseMap = []; + for (var j = 0; j < map.length; j++) { + reverseMap[map.charCodeAt(j)] = j; + } + } + + // Ignore padding + var paddingChar = map.charAt(64); + if (paddingChar) { + var paddingIndex = base64Str.indexOf(paddingChar); + if (paddingIndex !== -1) { + base64StrLength = paddingIndex; + } + } + + // Convert + return parseLoop(base64Str, base64StrLength, reverseMap); + + }, + + _map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=', + _safe_map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_', + }; + + function parseLoop(base64Str, base64StrLength, reverseMap) { + var words = []; + var nBytes = 0; + for (var i = 0; i < base64StrLength; i++) { + if (i % 4) { + var bits1 = reverseMap[base64Str.charCodeAt(i - 1)] << ((i % 4) * 2); + var bits2 = reverseMap[base64Str.charCodeAt(i)] >>> (6 - (i % 4) * 2); + var bitsCombined = bits1 | bits2; + words[nBytes >>> 2] |= bitsCombined << (24 - (nBytes % 4) * 8); + nBytes++; + } + } + return WordArray.create(words, nBytes); + } + }()); + + + return CryptoJS.enc.Base64url; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773784, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function (Math) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var Hasher = C_lib.Hasher; + var C_algo = C.algo; + + // Constants table + var T = []; + + // Compute constants + (function () { + for (var i = 0; i < 64; i++) { + T[i] = (Math.abs(Math.sin(i + 1)) * 0x100000000) | 0; + } + }()); + + /** + * MD5 hash algorithm. + */ + var MD5 = C_algo.MD5 = Hasher.extend({ + _doReset: function () { + this._hash = new WordArray.init([ + 0x67452301, 0xefcdab89, + 0x98badcfe, 0x10325476 + ]); + }, + + _doProcessBlock: function (M, offset) { + // Swap endian + for (var i = 0; i < 16; i++) { + // Shortcuts + var offset_i = offset + i; + var M_offset_i = M[offset_i]; + + M[offset_i] = ( + (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | + (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00) + ); + } + + // Shortcuts + var H = this._hash.words; + + var M_offset_0 = M[offset + 0]; + var M_offset_1 = M[offset + 1]; + var M_offset_2 = M[offset + 2]; + var M_offset_3 = M[offset + 3]; + var M_offset_4 = M[offset + 4]; + var M_offset_5 = M[offset + 5]; + var M_offset_6 = M[offset + 6]; + var M_offset_7 = M[offset + 7]; + var M_offset_8 = M[offset + 8]; + var M_offset_9 = M[offset + 9]; + var M_offset_10 = M[offset + 10]; + var M_offset_11 = M[offset + 11]; + var M_offset_12 = M[offset + 12]; + var M_offset_13 = M[offset + 13]; + var M_offset_14 = M[offset + 14]; + var M_offset_15 = M[offset + 15]; + + // Working variables + var a = H[0]; + var b = H[1]; + var c = H[2]; + var d = H[3]; + + // Computation + a = FF(a, b, c, d, M_offset_0, 7, T[0]); + d = FF(d, a, b, c, M_offset_1, 12, T[1]); + c = FF(c, d, a, b, M_offset_2, 17, T[2]); + b = FF(b, c, d, a, M_offset_3, 22, T[3]); + a = FF(a, b, c, d, M_offset_4, 7, T[4]); + d = FF(d, a, b, c, M_offset_5, 12, T[5]); + c = FF(c, d, a, b, M_offset_6, 17, T[6]); + b = FF(b, c, d, a, M_offset_7, 22, T[7]); + a = FF(a, b, c, d, M_offset_8, 7, T[8]); + d = FF(d, a, b, c, M_offset_9, 12, T[9]); + c = FF(c, d, a, b, M_offset_10, 17, T[10]); + b = FF(b, c, d, a, M_offset_11, 22, T[11]); + a = FF(a, b, c, d, M_offset_12, 7, T[12]); + d = FF(d, a, b, c, M_offset_13, 12, T[13]); + c = FF(c, d, a, b, M_offset_14, 17, T[14]); + b = FF(b, c, d, a, M_offset_15, 22, T[15]); + + a = GG(a, b, c, d, M_offset_1, 5, T[16]); + d = GG(d, a, b, c, M_offset_6, 9, T[17]); + c = GG(c, d, a, b, M_offset_11, 14, T[18]); + b = GG(b, c, d, a, M_offset_0, 20, T[19]); + a = GG(a, b, c, d, M_offset_5, 5, T[20]); + d = GG(d, a, b, c, M_offset_10, 9, T[21]); + c = GG(c, d, a, b, M_offset_15, 14, T[22]); + b = GG(b, c, d, a, M_offset_4, 20, T[23]); + a = GG(a, b, c, d, M_offset_9, 5, T[24]); + d = GG(d, a, b, c, M_offset_14, 9, T[25]); + c = GG(c, d, a, b, M_offset_3, 14, T[26]); + b = GG(b, c, d, a, M_offset_8, 20, T[27]); + a = GG(a, b, c, d, M_offset_13, 5, T[28]); + d = GG(d, a, b, c, M_offset_2, 9, T[29]); + c = GG(c, d, a, b, M_offset_7, 14, T[30]); + b = GG(b, c, d, a, M_offset_12, 20, T[31]); + + a = HH(a, b, c, d, M_offset_5, 4, T[32]); + d = HH(d, a, b, c, M_offset_8, 11, T[33]); + c = HH(c, d, a, b, M_offset_11, 16, T[34]); + b = HH(b, c, d, a, M_offset_14, 23, T[35]); + a = HH(a, b, c, d, M_offset_1, 4, T[36]); + d = HH(d, a, b, c, M_offset_4, 11, T[37]); + c = HH(c, d, a, b, M_offset_7, 16, T[38]); + b = HH(b, c, d, a, M_offset_10, 23, T[39]); + a = HH(a, b, c, d, M_offset_13, 4, T[40]); + d = HH(d, a, b, c, M_offset_0, 11, T[41]); + c = HH(c, d, a, b, M_offset_3, 16, T[42]); + b = HH(b, c, d, a, M_offset_6, 23, T[43]); + a = HH(a, b, c, d, M_offset_9, 4, T[44]); + d = HH(d, a, b, c, M_offset_12, 11, T[45]); + c = HH(c, d, a, b, M_offset_15, 16, T[46]); + b = HH(b, c, d, a, M_offset_2, 23, T[47]); + + a = II(a, b, c, d, M_offset_0, 6, T[48]); + d = II(d, a, b, c, M_offset_7, 10, T[49]); + c = II(c, d, a, b, M_offset_14, 15, T[50]); + b = II(b, c, d, a, M_offset_5, 21, T[51]); + a = II(a, b, c, d, M_offset_12, 6, T[52]); + d = II(d, a, b, c, M_offset_3, 10, T[53]); + c = II(c, d, a, b, M_offset_10, 15, T[54]); + b = II(b, c, d, a, M_offset_1, 21, T[55]); + a = II(a, b, c, d, M_offset_8, 6, T[56]); + d = II(d, a, b, c, M_offset_15, 10, T[57]); + c = II(c, d, a, b, M_offset_6, 15, T[58]); + b = II(b, c, d, a, M_offset_13, 21, T[59]); + a = II(a, b, c, d, M_offset_4, 6, T[60]); + d = II(d, a, b, c, M_offset_11, 10, T[61]); + c = II(c, d, a, b, M_offset_2, 15, T[62]); + b = II(b, c, d, a, M_offset_9, 21, T[63]); + + // Intermediate hash value + H[0] = (H[0] + a) | 0; + H[1] = (H[1] + b) | 0; + H[2] = (H[2] + c) | 0; + H[3] = (H[3] + d) | 0; + }, + + _doFinalize: function () { + // Shortcuts + var data = this._data; + var dataWords = data.words; + + var nBitsTotal = this._nDataBytes * 8; + var nBitsLeft = data.sigBytes * 8; + + // Add padding + dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); + + var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000); + var nBitsTotalL = nBitsTotal; + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = ( + (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) | + (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00) + ); + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = ( + (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) | + (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00) + ); + + data.sigBytes = (dataWords.length + 1) * 4; + + // Hash final blocks + this._process(); + + // Shortcuts + var hash = this._hash; + var H = hash.words; + + // Swap endian + for (var i = 0; i < 4; i++) { + // Shortcut + var H_i = H[i]; + + H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | + (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); + } + + // Return final computed hash + return hash; + }, + + clone: function () { + var clone = Hasher.clone.call(this); + clone._hash = this._hash.clone(); + + return clone; + } + }); + + function FF(a, b, c, d, x, s, t) { + var n = a + ((b & c) | (~b & d)) + x + t; + return ((n << s) | (n >>> (32 - s))) + b; + } + + function GG(a, b, c, d, x, s, t) { + var n = a + ((b & d) | (c & ~d)) + x + t; + return ((n << s) | (n >>> (32 - s))) + b; + } + + function HH(a, b, c, d, x, s, t) { + var n = a + (b ^ c ^ d) + x + t; + return ((n << s) | (n >>> (32 - s))) + b; + } + + function II(a, b, c, d, x, s, t) { + var n = a + (c ^ (b | ~d)) + x + t; + return ((n << s) | (n >>> (32 - s))) + b; + } + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.MD5('message'); + * var hash = CryptoJS.MD5(wordArray); + */ + C.MD5 = Hasher._createHelper(MD5); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacMD5(message, key); + */ + C.HmacMD5 = Hasher._createHmacHelper(MD5); + }(Math)); + + + return CryptoJS.MD5; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773785, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var Hasher = C_lib.Hasher; + var C_algo = C.algo; + + // Reusable object + var W = []; + + /** + * SHA-1 hash algorithm. + */ + var SHA1 = C_algo.SHA1 = Hasher.extend({ + _doReset: function () { + this._hash = new WordArray.init([ + 0x67452301, 0xefcdab89, + 0x98badcfe, 0x10325476, + 0xc3d2e1f0 + ]); + }, + + _doProcessBlock: function (M, offset) { + // Shortcut + var H = this._hash.words; + + // Working variables + var a = H[0]; + var b = H[1]; + var c = H[2]; + var d = H[3]; + var e = H[4]; + + // Computation + for (var i = 0; i < 80; i++) { + if (i < 16) { + W[i] = M[offset + i] | 0; + } else { + var n = W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16]; + W[i] = (n << 1) | (n >>> 31); + } + + var t = ((a << 5) | (a >>> 27)) + e + W[i]; + if (i < 20) { + t += ((b & c) | (~b & d)) + 0x5a827999; + } else if (i < 40) { + t += (b ^ c ^ d) + 0x6ed9eba1; + } else if (i < 60) { + t += ((b & c) | (b & d) | (c & d)) - 0x70e44324; + } else /* if (i < 80) */ { + t += (b ^ c ^ d) - 0x359d3e2a; + } + + e = d; + d = c; + c = (b << 30) | (b >>> 2); + b = a; + a = t; + } + + // Intermediate hash value + H[0] = (H[0] + a) | 0; + H[1] = (H[1] + b) | 0; + H[2] = (H[2] + c) | 0; + H[3] = (H[3] + d) | 0; + H[4] = (H[4] + e) | 0; + }, + + _doFinalize: function () { + // Shortcuts + var data = this._data; + var dataWords = data.words; + + var nBitsTotal = this._nDataBytes * 8; + var nBitsLeft = data.sigBytes * 8; + + // Add padding + dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = Math.floor(nBitsTotal / 0x100000000); + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = nBitsTotal; + data.sigBytes = dataWords.length * 4; + + // Hash final blocks + this._process(); + + // Return final computed hash + return this._hash; + }, + + clone: function () { + var clone = Hasher.clone.call(this); + clone._hash = this._hash.clone(); + + return clone; + } + }); + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.SHA1('message'); + * var hash = CryptoJS.SHA1(wordArray); + */ + C.SHA1 = Hasher._createHelper(SHA1); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacSHA1(message, key); + */ + C.HmacSHA1 = Hasher._createHmacHelper(SHA1); + }()); + + + return CryptoJS.SHA1; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773786, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function (Math) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var Hasher = C_lib.Hasher; + var C_algo = C.algo; + + // Initialization and round constants tables + var H = []; + var K = []; + + // Compute constants + (function () { + function isPrime(n) { + var sqrtN = Math.sqrt(n); + for (var factor = 2; factor <= sqrtN; factor++) { + if (!(n % factor)) { + return false; + } + } + + return true; + } + + function getFractionalBits(n) { + return ((n - (n | 0)) * 0x100000000) | 0; + } + + var n = 2; + var nPrime = 0; + while (nPrime < 64) { + if (isPrime(n)) { + if (nPrime < 8) { + H[nPrime] = getFractionalBits(Math.pow(n, 1 / 2)); + } + K[nPrime] = getFractionalBits(Math.pow(n, 1 / 3)); + + nPrime++; + } + + n++; + } + }()); + + // Reusable object + var W = []; + + /** + * SHA-256 hash algorithm. + */ + var SHA256 = C_algo.SHA256 = Hasher.extend({ + _doReset: function () { + this._hash = new WordArray.init(H.slice(0)); + }, + + _doProcessBlock: function (M, offset) { + // Shortcut + var H = this._hash.words; + + // Working variables + var a = H[0]; + var b = H[1]; + var c = H[2]; + var d = H[3]; + var e = H[4]; + var f = H[5]; + var g = H[6]; + var h = H[7]; + + // Computation + for (var i = 0; i < 64; i++) { + if (i < 16) { + W[i] = M[offset + i] | 0; + } else { + var gamma0x = W[i - 15]; + var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^ + ((gamma0x << 14) | (gamma0x >>> 18)) ^ + (gamma0x >>> 3); + + var gamma1x = W[i - 2]; + var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^ + ((gamma1x << 13) | (gamma1x >>> 19)) ^ + (gamma1x >>> 10); + + W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16]; + } + + var ch = (e & f) ^ (~e & g); + var maj = (a & b) ^ (a & c) ^ (b & c); + + var sigma0 = ((a << 30) | (a >>> 2)) ^ ((a << 19) | (a >>> 13)) ^ ((a << 10) | (a >>> 22)); + var sigma1 = ((e << 26) | (e >>> 6)) ^ ((e << 21) | (e >>> 11)) ^ ((e << 7) | (e >>> 25)); + + var t1 = h + sigma1 + ch + K[i] + W[i]; + var t2 = sigma0 + maj; + + h = g; + g = f; + f = e; + e = (d + t1) | 0; + d = c; + c = b; + b = a; + a = (t1 + t2) | 0; + } + + // Intermediate hash value + H[0] = (H[0] + a) | 0; + H[1] = (H[1] + b) | 0; + H[2] = (H[2] + c) | 0; + H[3] = (H[3] + d) | 0; + H[4] = (H[4] + e) | 0; + H[5] = (H[5] + f) | 0; + H[6] = (H[6] + g) | 0; + H[7] = (H[7] + h) | 0; + }, + + _doFinalize: function () { + // Shortcuts + var data = this._data; + var dataWords = data.words; + + var nBitsTotal = this._nDataBytes * 8; + var nBitsLeft = data.sigBytes * 8; + + // Add padding + dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = Math.floor(nBitsTotal / 0x100000000); + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = nBitsTotal; + data.sigBytes = dataWords.length * 4; + + // Hash final blocks + this._process(); + + // Return final computed hash + return this._hash; + }, + + clone: function () { + var clone = Hasher.clone.call(this); + clone._hash = this._hash.clone(); + + return clone; + } + }); + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.SHA256('message'); + * var hash = CryptoJS.SHA256(wordArray); + */ + C.SHA256 = Hasher._createHelper(SHA256); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacSHA256(message, key); + */ + C.HmacSHA256 = Hasher._createHmacHelper(SHA256); + }(Math)); + + + return CryptoJS.SHA256; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773787, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./sha256")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./sha256"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var C_algo = C.algo; + var SHA256 = C_algo.SHA256; + + /** + * SHA-224 hash algorithm. + */ + var SHA224 = C_algo.SHA224 = SHA256.extend({ + _doReset: function () { + this._hash = new WordArray.init([ + 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939, + 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 + ]); + }, + + _doFinalize: function () { + var hash = SHA256._doFinalize.call(this); + + hash.sigBytes -= 4; + + return hash; + } + }); + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.SHA224('message'); + * var hash = CryptoJS.SHA224(wordArray); + */ + C.SHA224 = SHA256._createHelper(SHA224); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacSHA224(message, key); + */ + C.HmacSHA224 = SHA256._createHmacHelper(SHA224); + }()); + + + return CryptoJS.SHA224; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./sha256":1734488773786}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773788, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./x64-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./x64-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var Hasher = C_lib.Hasher; + var C_x64 = C.x64; + var X64Word = C_x64.Word; + var X64WordArray = C_x64.WordArray; + var C_algo = C.algo; + + function X64Word_create() { + return X64Word.create.apply(X64Word, arguments); + } + + // Constants + var K = [ + X64Word_create(0x428a2f98, 0xd728ae22), X64Word_create(0x71374491, 0x23ef65cd), + X64Word_create(0xb5c0fbcf, 0xec4d3b2f), X64Word_create(0xe9b5dba5, 0x8189dbbc), + X64Word_create(0x3956c25b, 0xf348b538), X64Word_create(0x59f111f1, 0xb605d019), + X64Word_create(0x923f82a4, 0xaf194f9b), X64Word_create(0xab1c5ed5, 0xda6d8118), + X64Word_create(0xd807aa98, 0xa3030242), X64Word_create(0x12835b01, 0x45706fbe), + X64Word_create(0x243185be, 0x4ee4b28c), X64Word_create(0x550c7dc3, 0xd5ffb4e2), + X64Word_create(0x72be5d74, 0xf27b896f), X64Word_create(0x80deb1fe, 0x3b1696b1), + X64Word_create(0x9bdc06a7, 0x25c71235), X64Word_create(0xc19bf174, 0xcf692694), + X64Word_create(0xe49b69c1, 0x9ef14ad2), X64Word_create(0xefbe4786, 0x384f25e3), + X64Word_create(0x0fc19dc6, 0x8b8cd5b5), X64Word_create(0x240ca1cc, 0x77ac9c65), + X64Word_create(0x2de92c6f, 0x592b0275), X64Word_create(0x4a7484aa, 0x6ea6e483), + X64Word_create(0x5cb0a9dc, 0xbd41fbd4), X64Word_create(0x76f988da, 0x831153b5), + X64Word_create(0x983e5152, 0xee66dfab), X64Word_create(0xa831c66d, 0x2db43210), + X64Word_create(0xb00327c8, 0x98fb213f), X64Word_create(0xbf597fc7, 0xbeef0ee4), + X64Word_create(0xc6e00bf3, 0x3da88fc2), X64Word_create(0xd5a79147, 0x930aa725), + X64Word_create(0x06ca6351, 0xe003826f), X64Word_create(0x14292967, 0x0a0e6e70), + X64Word_create(0x27b70a85, 0x46d22ffc), X64Word_create(0x2e1b2138, 0x5c26c926), + X64Word_create(0x4d2c6dfc, 0x5ac42aed), X64Word_create(0x53380d13, 0x9d95b3df), + X64Word_create(0x650a7354, 0x8baf63de), X64Word_create(0x766a0abb, 0x3c77b2a8), + X64Word_create(0x81c2c92e, 0x47edaee6), X64Word_create(0x92722c85, 0x1482353b), + X64Word_create(0xa2bfe8a1, 0x4cf10364), X64Word_create(0xa81a664b, 0xbc423001), + X64Word_create(0xc24b8b70, 0xd0f89791), X64Word_create(0xc76c51a3, 0x0654be30), + X64Word_create(0xd192e819, 0xd6ef5218), X64Word_create(0xd6990624, 0x5565a910), + X64Word_create(0xf40e3585, 0x5771202a), X64Word_create(0x106aa070, 0x32bbd1b8), + X64Word_create(0x19a4c116, 0xb8d2d0c8), X64Word_create(0x1e376c08, 0x5141ab53), + X64Word_create(0x2748774c, 0xdf8eeb99), X64Word_create(0x34b0bcb5, 0xe19b48a8), + X64Word_create(0x391c0cb3, 0xc5c95a63), X64Word_create(0x4ed8aa4a, 0xe3418acb), + X64Word_create(0x5b9cca4f, 0x7763e373), X64Word_create(0x682e6ff3, 0xd6b2b8a3), + X64Word_create(0x748f82ee, 0x5defb2fc), X64Word_create(0x78a5636f, 0x43172f60), + X64Word_create(0x84c87814, 0xa1f0ab72), X64Word_create(0x8cc70208, 0x1a6439ec), + X64Word_create(0x90befffa, 0x23631e28), X64Word_create(0xa4506ceb, 0xde82bde9), + X64Word_create(0xbef9a3f7, 0xb2c67915), X64Word_create(0xc67178f2, 0xe372532b), + X64Word_create(0xca273ece, 0xea26619c), X64Word_create(0xd186b8c7, 0x21c0c207), + X64Word_create(0xeada7dd6, 0xcde0eb1e), X64Word_create(0xf57d4f7f, 0xee6ed178), + X64Word_create(0x06f067aa, 0x72176fba), X64Word_create(0x0a637dc5, 0xa2c898a6), + X64Word_create(0x113f9804, 0xbef90dae), X64Word_create(0x1b710b35, 0x131c471b), + X64Word_create(0x28db77f5, 0x23047d84), X64Word_create(0x32caab7b, 0x40c72493), + X64Word_create(0x3c9ebe0a, 0x15c9bebc), X64Word_create(0x431d67c4, 0x9c100d4c), + X64Word_create(0x4cc5d4be, 0xcb3e42b6), X64Word_create(0x597f299c, 0xfc657e2a), + X64Word_create(0x5fcb6fab, 0x3ad6faec), X64Word_create(0x6c44198c, 0x4a475817) + ]; + + // Reusable objects + var W = []; + (function () { + for (var i = 0; i < 80; i++) { + W[i] = X64Word_create(); + } + }()); + + /** + * SHA-512 hash algorithm. + */ + var SHA512 = C_algo.SHA512 = Hasher.extend({ + _doReset: function () { + this._hash = new X64WordArray.init([ + new X64Word.init(0x6a09e667, 0xf3bcc908), new X64Word.init(0xbb67ae85, 0x84caa73b), + new X64Word.init(0x3c6ef372, 0xfe94f82b), new X64Word.init(0xa54ff53a, 0x5f1d36f1), + new X64Word.init(0x510e527f, 0xade682d1), new X64Word.init(0x9b05688c, 0x2b3e6c1f), + new X64Word.init(0x1f83d9ab, 0xfb41bd6b), new X64Word.init(0x5be0cd19, 0x137e2179) + ]); + }, + + _doProcessBlock: function (M, offset) { + // Shortcuts + var H = this._hash.words; + + var H0 = H[0]; + var H1 = H[1]; + var H2 = H[2]; + var H3 = H[3]; + var H4 = H[4]; + var H5 = H[5]; + var H6 = H[6]; + var H7 = H[7]; + + var H0h = H0.high; + var H0l = H0.low; + var H1h = H1.high; + var H1l = H1.low; + var H2h = H2.high; + var H2l = H2.low; + var H3h = H3.high; + var H3l = H3.low; + var H4h = H4.high; + var H4l = H4.low; + var H5h = H5.high; + var H5l = H5.low; + var H6h = H6.high; + var H6l = H6.low; + var H7h = H7.high; + var H7l = H7.low; + + // Working variables + var ah = H0h; + var al = H0l; + var bh = H1h; + var bl = H1l; + var ch = H2h; + var cl = H2l; + var dh = H3h; + var dl = H3l; + var eh = H4h; + var el = H4l; + var fh = H5h; + var fl = H5l; + var gh = H6h; + var gl = H6l; + var hh = H7h; + var hl = H7l; + + // Rounds + for (var i = 0; i < 80; i++) { + var Wil; + var Wih; + + // Shortcut + var Wi = W[i]; + + // Extend message + if (i < 16) { + Wih = Wi.high = M[offset + i * 2] | 0; + Wil = Wi.low = M[offset + i * 2 + 1] | 0; + } else { + // Gamma0 + var gamma0x = W[i - 15]; + var gamma0xh = gamma0x.high; + var gamma0xl = gamma0x.low; + var gamma0h = ((gamma0xh >>> 1) | (gamma0xl << 31)) ^ ((gamma0xh >>> 8) | (gamma0xl << 24)) ^ (gamma0xh >>> 7); + var gamma0l = ((gamma0xl >>> 1) | (gamma0xh << 31)) ^ ((gamma0xl >>> 8) | (gamma0xh << 24)) ^ ((gamma0xl >>> 7) | (gamma0xh << 25)); + + // Gamma1 + var gamma1x = W[i - 2]; + var gamma1xh = gamma1x.high; + var gamma1xl = gamma1x.low; + var gamma1h = ((gamma1xh >>> 19) | (gamma1xl << 13)) ^ ((gamma1xh << 3) | (gamma1xl >>> 29)) ^ (gamma1xh >>> 6); + var gamma1l = ((gamma1xl >>> 19) | (gamma1xh << 13)) ^ ((gamma1xl << 3) | (gamma1xh >>> 29)) ^ ((gamma1xl >>> 6) | (gamma1xh << 26)); + + // W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16] + var Wi7 = W[i - 7]; + var Wi7h = Wi7.high; + var Wi7l = Wi7.low; + + var Wi16 = W[i - 16]; + var Wi16h = Wi16.high; + var Wi16l = Wi16.low; + + Wil = gamma0l + Wi7l; + Wih = gamma0h + Wi7h + ((Wil >>> 0) < (gamma0l >>> 0) ? 1 : 0); + Wil = Wil + gamma1l; + Wih = Wih + gamma1h + ((Wil >>> 0) < (gamma1l >>> 0) ? 1 : 0); + Wil = Wil + Wi16l; + Wih = Wih + Wi16h + ((Wil >>> 0) < (Wi16l >>> 0) ? 1 : 0); + + Wi.high = Wih; + Wi.low = Wil; + } + + var chh = (eh & fh) ^ (~eh & gh); + var chl = (el & fl) ^ (~el & gl); + var majh = (ah & bh) ^ (ah & ch) ^ (bh & ch); + var majl = (al & bl) ^ (al & cl) ^ (bl & cl); + + var sigma0h = ((ah >>> 28) | (al << 4)) ^ ((ah << 30) | (al >>> 2)) ^ ((ah << 25) | (al >>> 7)); + var sigma0l = ((al >>> 28) | (ah << 4)) ^ ((al << 30) | (ah >>> 2)) ^ ((al << 25) | (ah >>> 7)); + var sigma1h = ((eh >>> 14) | (el << 18)) ^ ((eh >>> 18) | (el << 14)) ^ ((eh << 23) | (el >>> 9)); + var sigma1l = ((el >>> 14) | (eh << 18)) ^ ((el >>> 18) | (eh << 14)) ^ ((el << 23) | (eh >>> 9)); + + // t1 = h + sigma1 + ch + K[i] + W[i] + var Ki = K[i]; + var Kih = Ki.high; + var Kil = Ki.low; + + var t1l = hl + sigma1l; + var t1h = hh + sigma1h + ((t1l >>> 0) < (hl >>> 0) ? 1 : 0); + var t1l = t1l + chl; + var t1h = t1h + chh + ((t1l >>> 0) < (chl >>> 0) ? 1 : 0); + var t1l = t1l + Kil; + var t1h = t1h + Kih + ((t1l >>> 0) < (Kil >>> 0) ? 1 : 0); + var t1l = t1l + Wil; + var t1h = t1h + Wih + ((t1l >>> 0) < (Wil >>> 0) ? 1 : 0); + + // t2 = sigma0 + maj + var t2l = sigma0l + majl; + var t2h = sigma0h + majh + ((t2l >>> 0) < (sigma0l >>> 0) ? 1 : 0); + + // Update working variables + hh = gh; + hl = gl; + gh = fh; + gl = fl; + fh = eh; + fl = el; + el = (dl + t1l) | 0; + eh = (dh + t1h + ((el >>> 0) < (dl >>> 0) ? 1 : 0)) | 0; + dh = ch; + dl = cl; + ch = bh; + cl = bl; + bh = ah; + bl = al; + al = (t1l + t2l) | 0; + ah = (t1h + t2h + ((al >>> 0) < (t1l >>> 0) ? 1 : 0)) | 0; + } + + // Intermediate hash value + H0l = H0.low = (H0l + al); + H0.high = (H0h + ah + ((H0l >>> 0) < (al >>> 0) ? 1 : 0)); + H1l = H1.low = (H1l + bl); + H1.high = (H1h + bh + ((H1l >>> 0) < (bl >>> 0) ? 1 : 0)); + H2l = H2.low = (H2l + cl); + H2.high = (H2h + ch + ((H2l >>> 0) < (cl >>> 0) ? 1 : 0)); + H3l = H3.low = (H3l + dl); + H3.high = (H3h + dh + ((H3l >>> 0) < (dl >>> 0) ? 1 : 0)); + H4l = H4.low = (H4l + el); + H4.high = (H4h + eh + ((H4l >>> 0) < (el >>> 0) ? 1 : 0)); + H5l = H5.low = (H5l + fl); + H5.high = (H5h + fh + ((H5l >>> 0) < (fl >>> 0) ? 1 : 0)); + H6l = H6.low = (H6l + gl); + H6.high = (H6h + gh + ((H6l >>> 0) < (gl >>> 0) ? 1 : 0)); + H7l = H7.low = (H7l + hl); + H7.high = (H7h + hh + ((H7l >>> 0) < (hl >>> 0) ? 1 : 0)); + }, + + _doFinalize: function () { + // Shortcuts + var data = this._data; + var dataWords = data.words; + + var nBitsTotal = this._nDataBytes * 8; + var nBitsLeft = data.sigBytes * 8; + + // Add padding + dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); + dataWords[(((nBitsLeft + 128) >>> 10) << 5) + 30] = Math.floor(nBitsTotal / 0x100000000); + dataWords[(((nBitsLeft + 128) >>> 10) << 5) + 31] = nBitsTotal; + data.sigBytes = dataWords.length * 4; + + // Hash final blocks + this._process(); + + // Convert hash to 32-bit word array before returning + var hash = this._hash.toX32(); + + // Return final computed hash + return hash; + }, + + clone: function () { + var clone = Hasher.clone.call(this); + clone._hash = this._hash.clone(); + + return clone; + }, + + blockSize: 1024/32 + }); + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.SHA512('message'); + * var hash = CryptoJS.SHA512(wordArray); + */ + C.SHA512 = Hasher._createHelper(SHA512); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacSHA512(message, key); + */ + C.HmacSHA512 = Hasher._createHmacHelper(SHA512); + }()); + + + return CryptoJS.SHA512; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./x64-core":1734488773779}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773789, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./x64-core"), require("./sha512")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./x64-core", "./sha512"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_x64 = C.x64; + var X64Word = C_x64.Word; + var X64WordArray = C_x64.WordArray; + var C_algo = C.algo; + var SHA512 = C_algo.SHA512; + + /** + * SHA-384 hash algorithm. + */ + var SHA384 = C_algo.SHA384 = SHA512.extend({ + _doReset: function () { + this._hash = new X64WordArray.init([ + new X64Word.init(0xcbbb9d5d, 0xc1059ed8), new X64Word.init(0x629a292a, 0x367cd507), + new X64Word.init(0x9159015a, 0x3070dd17), new X64Word.init(0x152fecd8, 0xf70e5939), + new X64Word.init(0x67332667, 0xffc00b31), new X64Word.init(0x8eb44a87, 0x68581511), + new X64Word.init(0xdb0c2e0d, 0x64f98fa7), new X64Word.init(0x47b5481d, 0xbefa4fa4) + ]); + }, + + _doFinalize: function () { + var hash = SHA512._doFinalize.call(this); + + hash.sigBytes -= 16; + + return hash; + } + }); + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.SHA384('message'); + * var hash = CryptoJS.SHA384(wordArray); + */ + C.SHA384 = SHA512._createHelper(SHA384); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacSHA384(message, key); + */ + C.HmacSHA384 = SHA512._createHmacHelper(SHA384); + }()); + + + return CryptoJS.SHA384; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./x64-core":1734488773779,"./sha512":1734488773788}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773790, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./x64-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./x64-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function (Math) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var Hasher = C_lib.Hasher; + var C_x64 = C.x64; + var X64Word = C_x64.Word; + var C_algo = C.algo; + + // Constants tables + var RHO_OFFSETS = []; + var PI_INDEXES = []; + var ROUND_CONSTANTS = []; + + // Compute Constants + (function () { + // Compute rho offset constants + var x = 1, y = 0; + for (var t = 0; t < 24; t++) { + RHO_OFFSETS[x + 5 * y] = ((t + 1) * (t + 2) / 2) % 64; + + var newX = y % 5; + var newY = (2 * x + 3 * y) % 5; + x = newX; + y = newY; + } + + // Compute pi index constants + for (var x = 0; x < 5; x++) { + for (var y = 0; y < 5; y++) { + PI_INDEXES[x + 5 * y] = y + ((2 * x + 3 * y) % 5) * 5; + } + } + + // Compute round constants + var LFSR = 0x01; + for (var i = 0; i < 24; i++) { + var roundConstantMsw = 0; + var roundConstantLsw = 0; + + for (var j = 0; j < 7; j++) { + if (LFSR & 0x01) { + var bitPosition = (1 << j) - 1; + if (bitPosition < 32) { + roundConstantLsw ^= 1 << bitPosition; + } else /* if (bitPosition >= 32) */ { + roundConstantMsw ^= 1 << (bitPosition - 32); + } + } + + // Compute next LFSR + if (LFSR & 0x80) { + // Primitive polynomial over GF(2): x^8 + x^6 + x^5 + x^4 + 1 + LFSR = (LFSR << 1) ^ 0x71; + } else { + LFSR <<= 1; + } + } + + ROUND_CONSTANTS[i] = X64Word.create(roundConstantMsw, roundConstantLsw); + } + }()); + + // Reusable objects for temporary values + var T = []; + (function () { + for (var i = 0; i < 25; i++) { + T[i] = X64Word.create(); + } + }()); + + /** + * SHA-3 hash algorithm. + */ + var SHA3 = C_algo.SHA3 = Hasher.extend({ + /** + * Configuration options. + * + * @property {number} outputLength + * The desired number of bits in the output hash. + * Only values permitted are: 224, 256, 384, 512. + * Default: 512 + */ + cfg: Hasher.cfg.extend({ + outputLength: 512 + }), + + _doReset: function () { + var state = this._state = [] + for (var i = 0; i < 25; i++) { + state[i] = new X64Word.init(); + } + + this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32; + }, + + _doProcessBlock: function (M, offset) { + // Shortcuts + var state = this._state; + var nBlockSizeLanes = this.blockSize / 2; + + // Absorb + for (var i = 0; i < nBlockSizeLanes; i++) { + // Shortcuts + var M2i = M[offset + 2 * i]; + var M2i1 = M[offset + 2 * i + 1]; + + // Swap endian + M2i = ( + (((M2i << 8) | (M2i >>> 24)) & 0x00ff00ff) | + (((M2i << 24) | (M2i >>> 8)) & 0xff00ff00) + ); + M2i1 = ( + (((M2i1 << 8) | (M2i1 >>> 24)) & 0x00ff00ff) | + (((M2i1 << 24) | (M2i1 >>> 8)) & 0xff00ff00) + ); + + // Absorb message into state + var lane = state[i]; + lane.high ^= M2i1; + lane.low ^= M2i; + } + + // Rounds + for (var round = 0; round < 24; round++) { + // Theta + for (var x = 0; x < 5; x++) { + // Mix column lanes + var tMsw = 0, tLsw = 0; + for (var y = 0; y < 5; y++) { + var lane = state[x + 5 * y]; + tMsw ^= lane.high; + tLsw ^= lane.low; + } + + // Temporary values + var Tx = T[x]; + Tx.high = tMsw; + Tx.low = tLsw; + } + for (var x = 0; x < 5; x++) { + // Shortcuts + var Tx4 = T[(x + 4) % 5]; + var Tx1 = T[(x + 1) % 5]; + var Tx1Msw = Tx1.high; + var Tx1Lsw = Tx1.low; + + // Mix surrounding columns + var tMsw = Tx4.high ^ ((Tx1Msw << 1) | (Tx1Lsw >>> 31)); + var tLsw = Tx4.low ^ ((Tx1Lsw << 1) | (Tx1Msw >>> 31)); + for (var y = 0; y < 5; y++) { + var lane = state[x + 5 * y]; + lane.high ^= tMsw; + lane.low ^= tLsw; + } + } + + // Rho Pi + for (var laneIndex = 1; laneIndex < 25; laneIndex++) { + var tMsw; + var tLsw; + + // Shortcuts + var lane = state[laneIndex]; + var laneMsw = lane.high; + var laneLsw = lane.low; + var rhoOffset = RHO_OFFSETS[laneIndex]; + + // Rotate lanes + if (rhoOffset < 32) { + tMsw = (laneMsw << rhoOffset) | (laneLsw >>> (32 - rhoOffset)); + tLsw = (laneLsw << rhoOffset) | (laneMsw >>> (32 - rhoOffset)); + } else /* if (rhoOffset >= 32) */ { + tMsw = (laneLsw << (rhoOffset - 32)) | (laneMsw >>> (64 - rhoOffset)); + tLsw = (laneMsw << (rhoOffset - 32)) | (laneLsw >>> (64 - rhoOffset)); + } + + // Transpose lanes + var TPiLane = T[PI_INDEXES[laneIndex]]; + TPiLane.high = tMsw; + TPiLane.low = tLsw; + } + + // Rho pi at x = y = 0 + var T0 = T[0]; + var state0 = state[0]; + T0.high = state0.high; + T0.low = state0.low; + + // Chi + for (var x = 0; x < 5; x++) { + for (var y = 0; y < 5; y++) { + // Shortcuts + var laneIndex = x + 5 * y; + var lane = state[laneIndex]; + var TLane = T[laneIndex]; + var Tx1Lane = T[((x + 1) % 5) + 5 * y]; + var Tx2Lane = T[((x + 2) % 5) + 5 * y]; + + // Mix rows + lane.high = TLane.high ^ (~Tx1Lane.high & Tx2Lane.high); + lane.low = TLane.low ^ (~Tx1Lane.low & Tx2Lane.low); + } + } + + // Iota + var lane = state[0]; + var roundConstant = ROUND_CONSTANTS[round]; + lane.high ^= roundConstant.high; + lane.low ^= roundConstant.low; + } + }, + + _doFinalize: function () { + // Shortcuts + var data = this._data; + var dataWords = data.words; + var nBitsTotal = this._nDataBytes * 8; + var nBitsLeft = data.sigBytes * 8; + var blockSizeBits = this.blockSize * 32; + + // Add padding + dataWords[nBitsLeft >>> 5] |= 0x1 << (24 - nBitsLeft % 32); + dataWords[((Math.ceil((nBitsLeft + 1) / blockSizeBits) * blockSizeBits) >>> 5) - 1] |= 0x80; + data.sigBytes = dataWords.length * 4; + + // Hash final blocks + this._process(); + + // Shortcuts + var state = this._state; + var outputLengthBytes = this.cfg.outputLength / 8; + var outputLengthLanes = outputLengthBytes / 8; + + // Squeeze + var hashWords = []; + for (var i = 0; i < outputLengthLanes; i++) { + // Shortcuts + var lane = state[i]; + var laneMsw = lane.high; + var laneLsw = lane.low; + + // Swap endian + laneMsw = ( + (((laneMsw << 8) | (laneMsw >>> 24)) & 0x00ff00ff) | + (((laneMsw << 24) | (laneMsw >>> 8)) & 0xff00ff00) + ); + laneLsw = ( + (((laneLsw << 8) | (laneLsw >>> 24)) & 0x00ff00ff) | + (((laneLsw << 24) | (laneLsw >>> 8)) & 0xff00ff00) + ); + + // Squeeze state to retrieve hash + hashWords.push(laneLsw); + hashWords.push(laneMsw); + } + + // Return final computed hash + return new WordArray.init(hashWords, outputLengthBytes); + }, + + clone: function () { + var clone = Hasher.clone.call(this); + + var state = clone._state = this._state.slice(0); + for (var i = 0; i < 25; i++) { + state[i] = state[i].clone(); + } + + return clone; + } + }); + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.SHA3('message'); + * var hash = CryptoJS.SHA3(wordArray); + */ + C.SHA3 = Hasher._createHelper(SHA3); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacSHA3(message, key); + */ + C.HmacSHA3 = Hasher._createHmacHelper(SHA3); + }(Math)); + + + return CryptoJS.SHA3; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./x64-core":1734488773779}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773791, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** @preserve + (c) 2012 by Cédric Mesnil. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + (function (Math) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var Hasher = C_lib.Hasher; + var C_algo = C.algo; + + // Constants table + var _zl = WordArray.create([ + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, + 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12, + 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2, + 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13]); + var _zr = WordArray.create([ + 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, + 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, + 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13, + 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14, + 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11]); + var _sl = WordArray.create([ + 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, + 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, + 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5, + 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12, + 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 ]); + var _sr = WordArray.create([ + 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, + 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, + 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5, + 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8, + 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 ]); + + var _hl = WordArray.create([ 0x00000000, 0x5A827999, 0x6ED9EBA1, 0x8F1BBCDC, 0xA953FD4E]); + var _hr = WordArray.create([ 0x50A28BE6, 0x5C4DD124, 0x6D703EF3, 0x7A6D76E9, 0x00000000]); + + /** + * RIPEMD160 hash algorithm. + */ + var RIPEMD160 = C_algo.RIPEMD160 = Hasher.extend({ + _doReset: function () { + this._hash = WordArray.create([0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0]); + }, + + _doProcessBlock: function (M, offset) { + + // Swap endian + for (var i = 0; i < 16; i++) { + // Shortcuts + var offset_i = offset + i; + var M_offset_i = M[offset_i]; + + // Swap + M[offset_i] = ( + (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) | + (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00) + ); + } + // Shortcut + var H = this._hash.words; + var hl = _hl.words; + var hr = _hr.words; + var zl = _zl.words; + var zr = _zr.words; + var sl = _sl.words; + var sr = _sr.words; + + // Working variables + var al, bl, cl, dl, el; + var ar, br, cr, dr, er; + + ar = al = H[0]; + br = bl = H[1]; + cr = cl = H[2]; + dr = dl = H[3]; + er = el = H[4]; + // Computation + var t; + for (var i = 0; i < 80; i += 1) { + t = (al + M[offset+zl[i]])|0; + if (i<16){ + t += f1(bl,cl,dl) + hl[0]; + } else if (i<32) { + t += f2(bl,cl,dl) + hl[1]; + } else if (i<48) { + t += f3(bl,cl,dl) + hl[2]; + } else if (i<64) { + t += f4(bl,cl,dl) + hl[3]; + } else {// if (i<80) { + t += f5(bl,cl,dl) + hl[4]; + } + t = t|0; + t = rotl(t,sl[i]); + t = (t+el)|0; + al = el; + el = dl; + dl = rotl(cl, 10); + cl = bl; + bl = t; + + t = (ar + M[offset+zr[i]])|0; + if (i<16){ + t += f5(br,cr,dr) + hr[0]; + } else if (i<32) { + t += f4(br,cr,dr) + hr[1]; + } else if (i<48) { + t += f3(br,cr,dr) + hr[2]; + } else if (i<64) { + t += f2(br,cr,dr) + hr[3]; + } else {// if (i<80) { + t += f1(br,cr,dr) + hr[4]; + } + t = t|0; + t = rotl(t,sr[i]) ; + t = (t+er)|0; + ar = er; + er = dr; + dr = rotl(cr, 10); + cr = br; + br = t; + } + // Intermediate hash value + t = (H[1] + cl + dr)|0; + H[1] = (H[2] + dl + er)|0; + H[2] = (H[3] + el + ar)|0; + H[3] = (H[4] + al + br)|0; + H[4] = (H[0] + bl + cr)|0; + H[0] = t; + }, + + _doFinalize: function () { + // Shortcuts + var data = this._data; + var dataWords = data.words; + + var nBitsTotal = this._nDataBytes * 8; + var nBitsLeft = data.sigBytes * 8; + + // Add padding + dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32); + dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = ( + (((nBitsTotal << 8) | (nBitsTotal >>> 24)) & 0x00ff00ff) | + (((nBitsTotal << 24) | (nBitsTotal >>> 8)) & 0xff00ff00) + ); + data.sigBytes = (dataWords.length + 1) * 4; + + // Hash final blocks + this._process(); + + // Shortcuts + var hash = this._hash; + var H = hash.words; + + // Swap endian + for (var i = 0; i < 5; i++) { + // Shortcut + var H_i = H[i]; + + // Swap + H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) | + (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00); + } + + // Return final computed hash + return hash; + }, + + clone: function () { + var clone = Hasher.clone.call(this); + clone._hash = this._hash.clone(); + + return clone; + } + }); + + + function f1(x, y, z) { + return ((x) ^ (y) ^ (z)); + + } + + function f2(x, y, z) { + return (((x)&(y)) | ((~x)&(z))); + } + + function f3(x, y, z) { + return (((x) | (~(y))) ^ (z)); + } + + function f4(x, y, z) { + return (((x) & (z)) | ((y)&(~(z)))); + } + + function f5(x, y, z) { + return ((x) ^ ((y) |(~(z)))); + + } + + function rotl(x,n) { + return (x<<n) | (x>>>(32-n)); + } + + + /** + * Shortcut function to the hasher's object interface. + * + * @param {WordArray|string} message The message to hash. + * + * @return {WordArray} The hash. + * + * @static + * + * @example + * + * var hash = CryptoJS.RIPEMD160('message'); + * var hash = CryptoJS.RIPEMD160(wordArray); + */ + C.RIPEMD160 = Hasher._createHelper(RIPEMD160); + + /** + * Shortcut function to the HMAC's object interface. + * + * @param {WordArray|string} message The message to hash. + * @param {WordArray|string} key The secret key. + * + * @return {WordArray} The HMAC. + * + * @static + * + * @example + * + * var hmac = CryptoJS.HmacRIPEMD160(message, key); + */ + C.HmacRIPEMD160 = Hasher._createHmacHelper(RIPEMD160); + }(Math)); + + + return CryptoJS.RIPEMD160; + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773792, function(require, module, exports) { +;(function (root, factory) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var Base = C_lib.Base; + var C_enc = C.enc; + var Utf8 = C_enc.Utf8; + var C_algo = C.algo; + + /** + * HMAC algorithm. + */ + var HMAC = C_algo.HMAC = Base.extend({ + /** + * Initializes a newly created HMAC. + * + * @param {Hasher} hasher The hash algorithm to use. + * @param {WordArray|string} key The secret key. + * + * @example + * + * var hmacHasher = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256, key); + */ + init: function (hasher, key) { + // Init hasher + hasher = this._hasher = new hasher.init(); + + // Convert string to WordArray, else assume WordArray already + if (typeof key == 'string') { + key = Utf8.parse(key); + } + + // Shortcuts + var hasherBlockSize = hasher.blockSize; + var hasherBlockSizeBytes = hasherBlockSize * 4; + + // Allow arbitrary length keys + if (key.sigBytes > hasherBlockSizeBytes) { + key = hasher.finalize(key); + } + + // Clamp excess bits + key.clamp(); + + // Clone key for inner and outer pads + var oKey = this._oKey = key.clone(); + var iKey = this._iKey = key.clone(); + + // Shortcuts + var oKeyWords = oKey.words; + var iKeyWords = iKey.words; + + // XOR keys with pad constants + for (var i = 0; i < hasherBlockSize; i++) { + oKeyWords[i] ^= 0x5c5c5c5c; + iKeyWords[i] ^= 0x36363636; + } + oKey.sigBytes = iKey.sigBytes = hasherBlockSizeBytes; + + // Set initial values + this.reset(); + }, + + /** + * Resets this HMAC to its initial state. + * + * @example + * + * hmacHasher.reset(); + */ + reset: function () { + // Shortcut + var hasher = this._hasher; + + // Reset + hasher.reset(); + hasher.update(this._iKey); + }, + + /** + * Updates this HMAC with a message. + * + * @param {WordArray|string} messageUpdate The message to append. + * + * @return {HMAC} This HMAC instance. + * + * @example + * + * hmacHasher.update('message'); + * hmacHasher.update(wordArray); + */ + update: function (messageUpdate) { + this._hasher.update(messageUpdate); + + // Chainable + return this; + }, + + /** + * Finalizes the HMAC computation. + * Note that the finalize operation is effectively a destructive, read-once operation. + * + * @param {WordArray|string} messageUpdate (Optional) A final message update. + * + * @return {WordArray} The HMAC. + * + * @example + * + * var hmac = hmacHasher.finalize(); + * var hmac = hmacHasher.finalize('message'); + * var hmac = hmacHasher.finalize(wordArray); + */ + finalize: function (messageUpdate) { + // Shortcut + var hasher = this._hasher; + + // Compute HMAC + var innerHash = hasher.finalize(messageUpdate); + hasher.reset(); + var hmac = hasher.finalize(this._oKey.clone().concat(innerHash)); + + return hmac; + } + }); + }()); + + +})); +}, function(modId) { var map = {"./core":1734488773778}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773793, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./sha256"), require("./hmac")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./sha256", "./hmac"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var Base = C_lib.Base; + var WordArray = C_lib.WordArray; + var C_algo = C.algo; + var SHA256 = C_algo.SHA256; + var HMAC = C_algo.HMAC; + + /** + * Password-Based Key Derivation Function 2 algorithm. + */ + var PBKDF2 = C_algo.PBKDF2 = Base.extend({ + /** + * Configuration options. + * + * @property {number} keySize The key size in words to generate. Default: 4 (128 bits) + * @property {Hasher} hasher The hasher to use. Default: SHA256 + * @property {number} iterations The number of iterations to perform. Default: 250000 + */ + cfg: Base.extend({ + keySize: 128/32, + hasher: SHA256, + iterations: 250000 + }), + + /** + * Initializes a newly created key derivation function. + * + * @param {Object} cfg (Optional) The configuration options to use for the derivation. + * + * @example + * + * var kdf = CryptoJS.algo.PBKDF2.create(); + * var kdf = CryptoJS.algo.PBKDF2.create({ keySize: 8 }); + * var kdf = CryptoJS.algo.PBKDF2.create({ keySize: 8, iterations: 1000 }); + */ + init: function (cfg) { + this.cfg = this.cfg.extend(cfg); + }, + + /** + * Computes the Password-Based Key Derivation Function 2. + * + * @param {WordArray|string} password The password. + * @param {WordArray|string} salt A salt. + * + * @return {WordArray} The derived key. + * + * @example + * + * var key = kdf.compute(password, salt); + */ + compute: function (password, salt) { + // Shortcut + var cfg = this.cfg; + + // Init HMAC + var hmac = HMAC.create(cfg.hasher, password); + + // Initial values + var derivedKey = WordArray.create(); + var blockIndex = WordArray.create([0x00000001]); + + // Shortcuts + var derivedKeyWords = derivedKey.words; + var blockIndexWords = blockIndex.words; + var keySize = cfg.keySize; + var iterations = cfg.iterations; + + // Generate key + while (derivedKeyWords.length < keySize) { + var block = hmac.update(salt).finalize(blockIndex); + hmac.reset(); + + // Shortcuts + var blockWords = block.words; + var blockWordsLength = blockWords.length; + + // Iterations + var intermediate = block; + for (var i = 1; i < iterations; i++) { + intermediate = hmac.finalize(intermediate); + hmac.reset(); + + // Shortcut + var intermediateWords = intermediate.words; + + // XOR intermediate with block + for (var j = 0; j < blockWordsLength; j++) { + blockWords[j] ^= intermediateWords[j]; + } + } + + derivedKey.concat(block); + blockIndexWords[0]++; + } + derivedKey.sigBytes = keySize * 4; + + return derivedKey; + } + }); + + /** + * Computes the Password-Based Key Derivation Function 2. + * + * @param {WordArray|string} password The password. + * @param {WordArray|string} salt A salt. + * @param {Object} cfg (Optional) The configuration options to use for this computation. + * + * @return {WordArray} The derived key. + * + * @static + * + * @example + * + * var key = CryptoJS.PBKDF2(password, salt); + * var key = CryptoJS.PBKDF2(password, salt, { keySize: 8 }); + * var key = CryptoJS.PBKDF2(password, salt, { keySize: 8, iterations: 1000 }); + */ + C.PBKDF2 = function (password, salt, cfg) { + return PBKDF2.create(cfg).compute(password, salt); + }; + }()); + + + return CryptoJS.PBKDF2; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./sha256":1734488773786,"./hmac":1734488773792}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773794, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./sha1"), require("./hmac")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./sha1", "./hmac"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var Base = C_lib.Base; + var WordArray = C_lib.WordArray; + var C_algo = C.algo; + var MD5 = C_algo.MD5; + + /** + * This key derivation function is meant to conform with EVP_BytesToKey. + * www.openssl.org/docs/crypto/EVP_BytesToKey.html + */ + var EvpKDF = C_algo.EvpKDF = Base.extend({ + /** + * Configuration options. + * + * @property {number} keySize The key size in words to generate. Default: 4 (128 bits) + * @property {Hasher} hasher The hash algorithm to use. Default: MD5 + * @property {number} iterations The number of iterations to perform. Default: 1 + */ + cfg: Base.extend({ + keySize: 128/32, + hasher: MD5, + iterations: 1 + }), + + /** + * Initializes a newly created key derivation function. + * + * @param {Object} cfg (Optional) The configuration options to use for the derivation. + * + * @example + * + * var kdf = CryptoJS.algo.EvpKDF.create(); + * var kdf = CryptoJS.algo.EvpKDF.create({ keySize: 8 }); + * var kdf = CryptoJS.algo.EvpKDF.create({ keySize: 8, iterations: 1000 }); + */ + init: function (cfg) { + this.cfg = this.cfg.extend(cfg); + }, + + /** + * Derives a key from a password. + * + * @param {WordArray|string} password The password. + * @param {WordArray|string} salt A salt. + * + * @return {WordArray} The derived key. + * + * @example + * + * var key = kdf.compute(password, salt); + */ + compute: function (password, salt) { + var block; + + // Shortcut + var cfg = this.cfg; + + // Init hasher + var hasher = cfg.hasher.create(); + + // Initial values + var derivedKey = WordArray.create(); + + // Shortcuts + var derivedKeyWords = derivedKey.words; + var keySize = cfg.keySize; + var iterations = cfg.iterations; + + // Generate key + while (derivedKeyWords.length < keySize) { + if (block) { + hasher.update(block); + } + block = hasher.update(password).finalize(salt); + hasher.reset(); + + // Iterations + for (var i = 1; i < iterations; i++) { + block = hasher.finalize(block); + hasher.reset(); + } + + derivedKey.concat(block); + } + derivedKey.sigBytes = keySize * 4; + + return derivedKey; + } + }); + + /** + * Derives a key from a password. + * + * @param {WordArray|string} password The password. + * @param {WordArray|string} salt A salt. + * @param {Object} cfg (Optional) The configuration options to use for this computation. + * + * @return {WordArray} The derived key. + * + * @static + * + * @example + * + * var key = CryptoJS.EvpKDF(password, salt); + * var key = CryptoJS.EvpKDF(password, salt, { keySize: 8 }); + * var key = CryptoJS.EvpKDF(password, salt, { keySize: 8, iterations: 1000 }); + */ + C.EvpKDF = function (password, salt, cfg) { + return EvpKDF.create(cfg).compute(password, salt); + }; + }()); + + + return CryptoJS.EvpKDF; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./sha1":1734488773785,"./hmac":1734488773792}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773795, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./evpkdf")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./evpkdf"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * Cipher core components. + */ + CryptoJS.lib.Cipher || (function (undefined) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var Base = C_lib.Base; + var WordArray = C_lib.WordArray; + var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm; + var C_enc = C.enc; + var Utf8 = C_enc.Utf8; + var Base64 = C_enc.Base64; + var C_algo = C.algo; + var EvpKDF = C_algo.EvpKDF; + + /** + * Abstract base cipher template. + * + * @property {number} keySize This cipher's key size. Default: 4 (128 bits) + * @property {number} ivSize This cipher's IV size. Default: 4 (128 bits) + * @property {number} _ENC_XFORM_MODE A constant representing encryption mode. + * @property {number} _DEC_XFORM_MODE A constant representing decryption mode. + */ + var Cipher = C_lib.Cipher = BufferedBlockAlgorithm.extend({ + /** + * Configuration options. + * + * @property {WordArray} iv The IV to use for this operation. + */ + cfg: Base.extend(), + + /** + * Creates this cipher in encryption mode. + * + * @param {WordArray} key The key. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @return {Cipher} A cipher instance. + * + * @static + * + * @example + * + * var cipher = CryptoJS.algo.AES.createEncryptor(keyWordArray, { iv: ivWordArray }); + */ + createEncryptor: function (key, cfg) { + return this.create(this._ENC_XFORM_MODE, key, cfg); + }, + + /** + * Creates this cipher in decryption mode. + * + * @param {WordArray} key The key. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @return {Cipher} A cipher instance. + * + * @static + * + * @example + * + * var cipher = CryptoJS.algo.AES.createDecryptor(keyWordArray, { iv: ivWordArray }); + */ + createDecryptor: function (key, cfg) { + return this.create(this._DEC_XFORM_MODE, key, cfg); + }, + + /** + * Initializes a newly created cipher. + * + * @param {number} xformMode Either the encryption or decryption transormation mode constant. + * @param {WordArray} key The key. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @example + * + * var cipher = CryptoJS.algo.AES.create(CryptoJS.algo.AES._ENC_XFORM_MODE, keyWordArray, { iv: ivWordArray }); + */ + init: function (xformMode, key, cfg) { + // Apply config defaults + this.cfg = this.cfg.extend(cfg); + + // Store transform mode and key + this._xformMode = xformMode; + this._key = key; + + // Set initial values + this.reset(); + }, + + /** + * Resets this cipher to its initial state. + * + * @example + * + * cipher.reset(); + */ + reset: function () { + // Reset data buffer + BufferedBlockAlgorithm.reset.call(this); + + // Perform concrete-cipher logic + this._doReset(); + }, + + /** + * Adds data to be encrypted or decrypted. + * + * @param {WordArray|string} dataUpdate The data to encrypt or decrypt. + * + * @return {WordArray} The data after processing. + * + * @example + * + * var encrypted = cipher.process('data'); + * var encrypted = cipher.process(wordArray); + */ + process: function (dataUpdate) { + // Append + this._append(dataUpdate); + + // Process available blocks + return this._process(); + }, + + /** + * Finalizes the encryption or decryption process. + * Note that the finalize operation is effectively a destructive, read-once operation. + * + * @param {WordArray|string} dataUpdate The final data to encrypt or decrypt. + * + * @return {WordArray} The data after final processing. + * + * @example + * + * var encrypted = cipher.finalize(); + * var encrypted = cipher.finalize('data'); + * var encrypted = cipher.finalize(wordArray); + */ + finalize: function (dataUpdate) { + // Final data update + if (dataUpdate) { + this._append(dataUpdate); + } + + // Perform concrete-cipher logic + var finalProcessedData = this._doFinalize(); + + return finalProcessedData; + }, + + keySize: 128/32, + + ivSize: 128/32, + + _ENC_XFORM_MODE: 1, + + _DEC_XFORM_MODE: 2, + + /** + * Creates shortcut functions to a cipher's object interface. + * + * @param {Cipher} cipher The cipher to create a helper for. + * + * @return {Object} An object with encrypt and decrypt shortcut functions. + * + * @static + * + * @example + * + * var AES = CryptoJS.lib.Cipher._createHelper(CryptoJS.algo.AES); + */ + _createHelper: (function () { + function selectCipherStrategy(key) { + if (typeof key == 'string') { + return PasswordBasedCipher; + } else { + return SerializableCipher; + } + } + + return function (cipher) { + return { + encrypt: function (message, key, cfg) { + return selectCipherStrategy(key).encrypt(cipher, message, key, cfg); + }, + + decrypt: function (ciphertext, key, cfg) { + return selectCipherStrategy(key).decrypt(cipher, ciphertext, key, cfg); + } + }; + }; + }()) + }); + + /** + * Abstract base stream cipher template. + * + * @property {number} blockSize The number of 32-bit words this cipher operates on. Default: 1 (32 bits) + */ + var StreamCipher = C_lib.StreamCipher = Cipher.extend({ + _doFinalize: function () { + // Process partial blocks + var finalProcessedBlocks = this._process(!!'flush'); + + return finalProcessedBlocks; + }, + + blockSize: 1 + }); + + /** + * Mode namespace. + */ + var C_mode = C.mode = {}; + + /** + * Abstract base block cipher mode template. + */ + var BlockCipherMode = C_lib.BlockCipherMode = Base.extend({ + /** + * Creates this mode for encryption. + * + * @param {Cipher} cipher A block cipher instance. + * @param {Array} iv The IV words. + * + * @static + * + * @example + * + * var mode = CryptoJS.mode.CBC.createEncryptor(cipher, iv.words); + */ + createEncryptor: function (cipher, iv) { + return this.Encryptor.create(cipher, iv); + }, + + /** + * Creates this mode for decryption. + * + * @param {Cipher} cipher A block cipher instance. + * @param {Array} iv The IV words. + * + * @static + * + * @example + * + * var mode = CryptoJS.mode.CBC.createDecryptor(cipher, iv.words); + */ + createDecryptor: function (cipher, iv) { + return this.Decryptor.create(cipher, iv); + }, + + /** + * Initializes a newly created mode. + * + * @param {Cipher} cipher A block cipher instance. + * @param {Array} iv The IV words. + * + * @example + * + * var mode = CryptoJS.mode.CBC.Encryptor.create(cipher, iv.words); + */ + init: function (cipher, iv) { + this._cipher = cipher; + this._iv = iv; + } + }); + + /** + * Cipher Block Chaining mode. + */ + var CBC = C_mode.CBC = (function () { + /** + * Abstract base CBC mode. + */ + var CBC = BlockCipherMode.extend(); + + /** + * CBC encryptor. + */ + CBC.Encryptor = CBC.extend({ + /** + * Processes the data block at offset. + * + * @param {Array} words The data words to operate on. + * @param {number} offset The offset where the block starts. + * + * @example + * + * mode.processBlock(data.words, offset); + */ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher; + var blockSize = cipher.blockSize; + + // XOR and encrypt + xorBlock.call(this, words, offset, blockSize); + cipher.encryptBlock(words, offset); + + // Remember this block to use with next block + this._prevBlock = words.slice(offset, offset + blockSize); + } + }); + + /** + * CBC decryptor. + */ + CBC.Decryptor = CBC.extend({ + /** + * Processes the data block at offset. + * + * @param {Array} words The data words to operate on. + * @param {number} offset The offset where the block starts. + * + * @example + * + * mode.processBlock(data.words, offset); + */ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher; + var blockSize = cipher.blockSize; + + // Remember this block to use with next block + var thisBlock = words.slice(offset, offset + blockSize); + + // Decrypt and XOR + cipher.decryptBlock(words, offset); + xorBlock.call(this, words, offset, blockSize); + + // This block becomes the previous block + this._prevBlock = thisBlock; + } + }); + + function xorBlock(words, offset, blockSize) { + var block; + + // Shortcut + var iv = this._iv; + + // Choose mixing block + if (iv) { + block = iv; + + // Remove IV for subsequent blocks + this._iv = undefined; + } else { + block = this._prevBlock; + } + + // XOR blocks + for (var i = 0; i < blockSize; i++) { + words[offset + i] ^= block[i]; + } + } + + return CBC; + }()); + + /** + * Padding namespace. + */ + var C_pad = C.pad = {}; + + /** + * PKCS #5/7 padding strategy. + */ + var Pkcs7 = C_pad.Pkcs7 = { + /** + * Pads data using the algorithm defined in PKCS #5/7. + * + * @param {WordArray} data The data to pad. + * @param {number} blockSize The multiple that the data should be padded to. + * + * @static + * + * @example + * + * CryptoJS.pad.Pkcs7.pad(wordArray, 4); + */ + pad: function (data, blockSize) { + // Shortcut + var blockSizeBytes = blockSize * 4; + + // Count padding bytes + var nPaddingBytes = blockSizeBytes - data.sigBytes % blockSizeBytes; + + // Create padding word + var paddingWord = (nPaddingBytes << 24) | (nPaddingBytes << 16) | (nPaddingBytes << 8) | nPaddingBytes; + + // Create padding + var paddingWords = []; + for (var i = 0; i < nPaddingBytes; i += 4) { + paddingWords.push(paddingWord); + } + var padding = WordArray.create(paddingWords, nPaddingBytes); + + // Add padding + data.concat(padding); + }, + + /** + * Unpads data that had been padded using the algorithm defined in PKCS #5/7. + * + * @param {WordArray} data The data to unpad. + * + * @static + * + * @example + * + * CryptoJS.pad.Pkcs7.unpad(wordArray); + */ + unpad: function (data) { + // Get number of padding bytes from last byte + var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff; + + // Remove padding + data.sigBytes -= nPaddingBytes; + } + }; + + /** + * Abstract base block cipher template. + * + * @property {number} blockSize The number of 32-bit words this cipher operates on. Default: 4 (128 bits) + */ + var BlockCipher = C_lib.BlockCipher = Cipher.extend({ + /** + * Configuration options. + * + * @property {Mode} mode The block mode to use. Default: CBC + * @property {Padding} padding The padding strategy to use. Default: Pkcs7 + */ + cfg: Cipher.cfg.extend({ + mode: CBC, + padding: Pkcs7 + }), + + reset: function () { + var modeCreator; + + // Reset cipher + Cipher.reset.call(this); + + // Shortcuts + var cfg = this.cfg; + var iv = cfg.iv; + var mode = cfg.mode; + + // Reset block mode + if (this._xformMode == this._ENC_XFORM_MODE) { + modeCreator = mode.createEncryptor; + } else /* if (this._xformMode == this._DEC_XFORM_MODE) */ { + modeCreator = mode.createDecryptor; + // Keep at least one block in the buffer for unpadding + this._minBufferSize = 1; + } + + if (this._mode && this._mode.__creator == modeCreator) { + this._mode.init(this, iv && iv.words); + } else { + this._mode = modeCreator.call(mode, this, iv && iv.words); + this._mode.__creator = modeCreator; + } + }, + + _doProcessBlock: function (words, offset) { + this._mode.processBlock(words, offset); + }, + + _doFinalize: function () { + var finalProcessedBlocks; + + // Shortcut + var padding = this.cfg.padding; + + // Finalize + if (this._xformMode == this._ENC_XFORM_MODE) { + // Pad data + padding.pad(this._data, this.blockSize); + + // Process final blocks + finalProcessedBlocks = this._process(!!'flush'); + } else /* if (this._xformMode == this._DEC_XFORM_MODE) */ { + // Process final blocks + finalProcessedBlocks = this._process(!!'flush'); + + // Unpad data + padding.unpad(finalProcessedBlocks); + } + + return finalProcessedBlocks; + }, + + blockSize: 128/32 + }); + + /** + * A collection of cipher parameters. + * + * @property {WordArray} ciphertext The raw ciphertext. + * @property {WordArray} key The key to this ciphertext. + * @property {WordArray} iv The IV used in the ciphering operation. + * @property {WordArray} salt The salt used with a key derivation function. + * @property {Cipher} algorithm The cipher algorithm. + * @property {Mode} mode The block mode used in the ciphering operation. + * @property {Padding} padding The padding scheme used in the ciphering operation. + * @property {number} blockSize The block size of the cipher. + * @property {Format} formatter The default formatting strategy to convert this cipher params object to a string. + */ + var CipherParams = C_lib.CipherParams = Base.extend({ + /** + * Initializes a newly created cipher params object. + * + * @param {Object} cipherParams An object with any of the possible cipher parameters. + * + * @example + * + * var cipherParams = CryptoJS.lib.CipherParams.create({ + * ciphertext: ciphertextWordArray, + * key: keyWordArray, + * iv: ivWordArray, + * salt: saltWordArray, + * algorithm: CryptoJS.algo.AES, + * mode: CryptoJS.mode.CBC, + * padding: CryptoJS.pad.PKCS7, + * blockSize: 4, + * formatter: CryptoJS.format.OpenSSL + * }); + */ + init: function (cipherParams) { + this.mixIn(cipherParams); + }, + + /** + * Converts this cipher params object to a string. + * + * @param {Format} formatter (Optional) The formatting strategy to use. + * + * @return {string} The stringified cipher params. + * + * @throws Error If neither the formatter nor the default formatter is set. + * + * @example + * + * var string = cipherParams + ''; + * var string = cipherParams.toString(); + * var string = cipherParams.toString(CryptoJS.format.OpenSSL); + */ + toString: function (formatter) { + return (formatter || this.formatter).stringify(this); + } + }); + + /** + * Format namespace. + */ + var C_format = C.format = {}; + + /** + * OpenSSL formatting strategy. + */ + var OpenSSLFormatter = C_format.OpenSSL = { + /** + * Converts a cipher params object to an OpenSSL-compatible string. + * + * @param {CipherParams} cipherParams The cipher params object. + * + * @return {string} The OpenSSL-compatible string. + * + * @static + * + * @example + * + * var openSSLString = CryptoJS.format.OpenSSL.stringify(cipherParams); + */ + stringify: function (cipherParams) { + var wordArray; + + // Shortcuts + var ciphertext = cipherParams.ciphertext; + var salt = cipherParams.salt; + + // Format + if (salt) { + wordArray = WordArray.create([0x53616c74, 0x65645f5f]).concat(salt).concat(ciphertext); + } else { + wordArray = ciphertext; + } + + return wordArray.toString(Base64); + }, + + /** + * Converts an OpenSSL-compatible string to a cipher params object. + * + * @param {string} openSSLStr The OpenSSL-compatible string. + * + * @return {CipherParams} The cipher params object. + * + * @static + * + * @example + * + * var cipherParams = CryptoJS.format.OpenSSL.parse(openSSLString); + */ + parse: function (openSSLStr) { + var salt; + + // Parse base64 + var ciphertext = Base64.parse(openSSLStr); + + // Shortcut + var ciphertextWords = ciphertext.words; + + // Test for salt + if (ciphertextWords[0] == 0x53616c74 && ciphertextWords[1] == 0x65645f5f) { + // Extract salt + salt = WordArray.create(ciphertextWords.slice(2, 4)); + + // Remove salt from ciphertext + ciphertextWords.splice(0, 4); + ciphertext.sigBytes -= 16; + } + + return CipherParams.create({ ciphertext: ciphertext, salt: salt }); + } + }; + + /** + * A cipher wrapper that returns ciphertext as a serializable cipher params object. + */ + var SerializableCipher = C_lib.SerializableCipher = Base.extend({ + /** + * Configuration options. + * + * @property {Formatter} format The formatting strategy to convert cipher param objects to and from a string. Default: OpenSSL + */ + cfg: Base.extend({ + format: OpenSSLFormatter + }), + + /** + * Encrypts a message. + * + * @param {Cipher} cipher The cipher algorithm to use. + * @param {WordArray|string} message The message to encrypt. + * @param {WordArray} key The key. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @return {CipherParams} A cipher params object. + * + * @static + * + * @example + * + * var ciphertextParams = CryptoJS.lib.SerializableCipher.encrypt(CryptoJS.algo.AES, message, key); + * var ciphertextParams = CryptoJS.lib.SerializableCipher.encrypt(CryptoJS.algo.AES, message, key, { iv: iv }); + * var ciphertextParams = CryptoJS.lib.SerializableCipher.encrypt(CryptoJS.algo.AES, message, key, { iv: iv, format: CryptoJS.format.OpenSSL }); + */ + encrypt: function (cipher, message, key, cfg) { + // Apply config defaults + cfg = this.cfg.extend(cfg); + + // Encrypt + var encryptor = cipher.createEncryptor(key, cfg); + var ciphertext = encryptor.finalize(message); + + // Shortcut + var cipherCfg = encryptor.cfg; + + // Create and return serializable cipher params + return CipherParams.create({ + ciphertext: ciphertext, + key: key, + iv: cipherCfg.iv, + algorithm: cipher, + mode: cipherCfg.mode, + padding: cipherCfg.padding, + blockSize: cipher.blockSize, + formatter: cfg.format + }); + }, + + /** + * Decrypts serialized ciphertext. + * + * @param {Cipher} cipher The cipher algorithm to use. + * @param {CipherParams|string} ciphertext The ciphertext to decrypt. + * @param {WordArray} key The key. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @return {WordArray} The plaintext. + * + * @static + * + * @example + * + * var plaintext = CryptoJS.lib.SerializableCipher.decrypt(CryptoJS.algo.AES, formattedCiphertext, key, { iv: iv, format: CryptoJS.format.OpenSSL }); + * var plaintext = CryptoJS.lib.SerializableCipher.decrypt(CryptoJS.algo.AES, ciphertextParams, key, { iv: iv, format: CryptoJS.format.OpenSSL }); + */ + decrypt: function (cipher, ciphertext, key, cfg) { + // Apply config defaults + cfg = this.cfg.extend(cfg); + + // Convert string to CipherParams + ciphertext = this._parse(ciphertext, cfg.format); + + // Decrypt + var plaintext = cipher.createDecryptor(key, cfg).finalize(ciphertext.ciphertext); + + return plaintext; + }, + + /** + * Converts serialized ciphertext to CipherParams, + * else assumed CipherParams already and returns ciphertext unchanged. + * + * @param {CipherParams|string} ciphertext The ciphertext. + * @param {Formatter} format The formatting strategy to use to parse serialized ciphertext. + * + * @return {CipherParams} The unserialized ciphertext. + * + * @static + * + * @example + * + * var ciphertextParams = CryptoJS.lib.SerializableCipher._parse(ciphertextStringOrParams, format); + */ + _parse: function (ciphertext, format) { + if (typeof ciphertext == 'string') { + return format.parse(ciphertext, this); + } else { + return ciphertext; + } + } + }); + + /** + * Key derivation function namespace. + */ + var C_kdf = C.kdf = {}; + + /** + * OpenSSL key derivation function. + */ + var OpenSSLKdf = C_kdf.OpenSSL = { + /** + * Derives a key and IV from a password. + * + * @param {string} password The password to derive from. + * @param {number} keySize The size in words of the key to generate. + * @param {number} ivSize The size in words of the IV to generate. + * @param {WordArray|string} salt (Optional) A 64-bit salt to use. If omitted, a salt will be generated randomly. + * + * @return {CipherParams} A cipher params object with the key, IV, and salt. + * + * @static + * + * @example + * + * var derivedParams = CryptoJS.kdf.OpenSSL.execute('Password', 256/32, 128/32); + * var derivedParams = CryptoJS.kdf.OpenSSL.execute('Password', 256/32, 128/32, 'saltsalt'); + */ + execute: function (password, keySize, ivSize, salt, hasher) { + // Generate random salt + if (!salt) { + salt = WordArray.random(64/8); + } + + // Derive key and IV + if (!hasher) { + var key = EvpKDF.create({ keySize: keySize + ivSize }).compute(password, salt); + } else { + var key = EvpKDF.create({ keySize: keySize + ivSize, hasher: hasher }).compute(password, salt); + } + + + // Separate key and IV + var iv = WordArray.create(key.words.slice(keySize), ivSize * 4); + key.sigBytes = keySize * 4; + + // Return params + return CipherParams.create({ key: key, iv: iv, salt: salt }); + } + }; + + /** + * A serializable cipher wrapper that derives the key from a password, + * and returns ciphertext as a serializable cipher params object. + */ + var PasswordBasedCipher = C_lib.PasswordBasedCipher = SerializableCipher.extend({ + /** + * Configuration options. + * + * @property {KDF} kdf The key derivation function to use to generate a key and IV from a password. Default: OpenSSL + */ + cfg: SerializableCipher.cfg.extend({ + kdf: OpenSSLKdf + }), + + /** + * Encrypts a message using a password. + * + * @param {Cipher} cipher The cipher algorithm to use. + * @param {WordArray|string} message The message to encrypt. + * @param {string} password The password. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @return {CipherParams} A cipher params object. + * + * @static + * + * @example + * + * var ciphertextParams = CryptoJS.lib.PasswordBasedCipher.encrypt(CryptoJS.algo.AES, message, 'password'); + * var ciphertextParams = CryptoJS.lib.PasswordBasedCipher.encrypt(CryptoJS.algo.AES, message, 'password', { format: CryptoJS.format.OpenSSL }); + */ + encrypt: function (cipher, message, password, cfg) { + // Apply config defaults + cfg = this.cfg.extend(cfg); + + // Derive key and other params + var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize, cfg.salt, cfg.hasher); + + // Add IV to config + cfg.iv = derivedParams.iv; + + // Encrypt + var ciphertext = SerializableCipher.encrypt.call(this, cipher, message, derivedParams.key, cfg); + + // Mix in derived params + ciphertext.mixIn(derivedParams); + + return ciphertext; + }, + + /** + * Decrypts serialized ciphertext using a password. + * + * @param {Cipher} cipher The cipher algorithm to use. + * @param {CipherParams|string} ciphertext The ciphertext to decrypt. + * @param {string} password The password. + * @param {Object} cfg (Optional) The configuration options to use for this operation. + * + * @return {WordArray} The plaintext. + * + * @static + * + * @example + * + * var plaintext = CryptoJS.lib.PasswordBasedCipher.decrypt(CryptoJS.algo.AES, formattedCiphertext, 'password', { format: CryptoJS.format.OpenSSL }); + * var plaintext = CryptoJS.lib.PasswordBasedCipher.decrypt(CryptoJS.algo.AES, ciphertextParams, 'password', { format: CryptoJS.format.OpenSSL }); + */ + decrypt: function (cipher, ciphertext, password, cfg) { + // Apply config defaults + cfg = this.cfg.extend(cfg); + + // Convert string to CipherParams + ciphertext = this._parse(ciphertext, cfg.format); + + // Derive key and other params + var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize, ciphertext.salt, cfg.hasher); + + // Add IV to config + cfg.iv = derivedParams.iv; + + // Decrypt + var plaintext = SerializableCipher.decrypt.call(this, cipher, ciphertext, derivedParams.key, cfg); + + return plaintext; + } + }); + }()); + + +})); +}, function(modId) { var map = {"./core":1734488773778,"./evpkdf":1734488773794}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773796, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * Cipher Feedback block mode. + */ + CryptoJS.mode.CFB = (function () { + var CFB = CryptoJS.lib.BlockCipherMode.extend(); + + CFB.Encryptor = CFB.extend({ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher; + var blockSize = cipher.blockSize; + + generateKeystreamAndEncrypt.call(this, words, offset, blockSize, cipher); + + // Remember this block to use with next block + this._prevBlock = words.slice(offset, offset + blockSize); + } + }); + + CFB.Decryptor = CFB.extend({ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher; + var blockSize = cipher.blockSize; + + // Remember this block to use with next block + var thisBlock = words.slice(offset, offset + blockSize); + + generateKeystreamAndEncrypt.call(this, words, offset, blockSize, cipher); + + // This block becomes the previous block + this._prevBlock = thisBlock; + } + }); + + function generateKeystreamAndEncrypt(words, offset, blockSize, cipher) { + var keystream; + + // Shortcut + var iv = this._iv; + + // Generate keystream + if (iv) { + keystream = iv.slice(0); + + // Remove IV for subsequent blocks + this._iv = undefined; + } else { + keystream = this._prevBlock; + } + cipher.encryptBlock(keystream, 0); + + // Encrypt + for (var i = 0; i < blockSize; i++) { + words[offset + i] ^= keystream[i]; + } + } + + return CFB; + }()); + + + return CryptoJS.mode.CFB; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773797, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * Counter block mode. + */ + CryptoJS.mode.CTR = (function () { + var CTR = CryptoJS.lib.BlockCipherMode.extend(); + + var Encryptor = CTR.Encryptor = CTR.extend({ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher + var blockSize = cipher.blockSize; + var iv = this._iv; + var counter = this._counter; + + // Generate keystream + if (iv) { + counter = this._counter = iv.slice(0); + + // Remove IV for subsequent blocks + this._iv = undefined; + } + var keystream = counter.slice(0); + cipher.encryptBlock(keystream, 0); + + // Increment counter + counter[blockSize - 1] = (counter[blockSize - 1] + 1) | 0 + + // Encrypt + for (var i = 0; i < blockSize; i++) { + words[offset + i] ^= keystream[i]; + } + } + }); + + CTR.Decryptor = Encryptor; + + return CTR; + }()); + + + return CryptoJS.mode.CTR; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773798, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** @preserve + * Counter block mode compatible with Dr Brian Gladman fileenc.c + * derived from CryptoJS.mode.CTR + * Jan Hruby jhruby.web@gmail.com + */ + CryptoJS.mode.CTRGladman = (function () { + var CTRGladman = CryptoJS.lib.BlockCipherMode.extend(); + + function incWord(word) + { + if (((word >> 24) & 0xff) === 0xff) { //overflow + var b1 = (word >> 16)&0xff; + var b2 = (word >> 8)&0xff; + var b3 = word & 0xff; + + if (b1 === 0xff) // overflow b1 + { + b1 = 0; + if (b2 === 0xff) + { + b2 = 0; + if (b3 === 0xff) + { + b3 = 0; + } + else + { + ++b3; + } + } + else + { + ++b2; + } + } + else + { + ++b1; + } + + word = 0; + word += (b1 << 16); + word += (b2 << 8); + word += b3; + } + else + { + word += (0x01 << 24); + } + return word; + } + + function incCounter(counter) + { + if ((counter[0] = incWord(counter[0])) === 0) + { + // encr_data in fileenc.c from Dr Brian Gladman's counts only with DWORD j < 8 + counter[1] = incWord(counter[1]); + } + return counter; + } + + var Encryptor = CTRGladman.Encryptor = CTRGladman.extend({ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher + var blockSize = cipher.blockSize; + var iv = this._iv; + var counter = this._counter; + + // Generate keystream + if (iv) { + counter = this._counter = iv.slice(0); + + // Remove IV for subsequent blocks + this._iv = undefined; + } + + incCounter(counter); + + var keystream = counter.slice(0); + cipher.encryptBlock(keystream, 0); + + // Encrypt + for (var i = 0; i < blockSize; i++) { + words[offset + i] ^= keystream[i]; + } + } + }); + + CTRGladman.Decryptor = Encryptor; + + return CTRGladman; + }()); + + + + + return CryptoJS.mode.CTRGladman; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773799, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * Output Feedback block mode. + */ + CryptoJS.mode.OFB = (function () { + var OFB = CryptoJS.lib.BlockCipherMode.extend(); + + var Encryptor = OFB.Encryptor = OFB.extend({ + processBlock: function (words, offset) { + // Shortcuts + var cipher = this._cipher + var blockSize = cipher.blockSize; + var iv = this._iv; + var keystream = this._keystream; + + // Generate keystream + if (iv) { + keystream = this._keystream = iv.slice(0); + + // Remove IV for subsequent blocks + this._iv = undefined; + } + cipher.encryptBlock(keystream, 0); + + // Encrypt + for (var i = 0; i < blockSize; i++) { + words[offset + i] ^= keystream[i]; + } + } + }); + + OFB.Decryptor = Encryptor; + + return OFB; + }()); + + + return CryptoJS.mode.OFB; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773800, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * Electronic Codebook block mode. + */ + CryptoJS.mode.ECB = (function () { + var ECB = CryptoJS.lib.BlockCipherMode.extend(); + + ECB.Encryptor = ECB.extend({ + processBlock: function (words, offset) { + this._cipher.encryptBlock(words, offset); + } + }); + + ECB.Decryptor = ECB.extend({ + processBlock: function (words, offset) { + this._cipher.decryptBlock(words, offset); + } + }); + + return ECB; + }()); + + + return CryptoJS.mode.ECB; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773801, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * ANSI X.923 padding strategy. + */ + CryptoJS.pad.AnsiX923 = { + pad: function (data, blockSize) { + // Shortcuts + var dataSigBytes = data.sigBytes; + var blockSizeBytes = blockSize * 4; + + // Count padding bytes + var nPaddingBytes = blockSizeBytes - dataSigBytes % blockSizeBytes; + + // Compute last byte position + var lastBytePos = dataSigBytes + nPaddingBytes - 1; + + // Pad + data.clamp(); + data.words[lastBytePos >>> 2] |= nPaddingBytes << (24 - (lastBytePos % 4) * 8); + data.sigBytes += nPaddingBytes; + }, + + unpad: function (data) { + // Get number of padding bytes from last byte + var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff; + + // Remove padding + data.sigBytes -= nPaddingBytes; + } + }; + + + return CryptoJS.pad.Ansix923; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773802, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * ISO 10126 padding strategy. + */ + CryptoJS.pad.Iso10126 = { + pad: function (data, blockSize) { + // Shortcut + var blockSizeBytes = blockSize * 4; + + // Count padding bytes + var nPaddingBytes = blockSizeBytes - data.sigBytes % blockSizeBytes; + + // Pad + data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes - 1)). + concat(CryptoJS.lib.WordArray.create([nPaddingBytes << 24], 1)); + }, + + unpad: function (data) { + // Get number of padding bytes from last byte + var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff; + + // Remove padding + data.sigBytes -= nPaddingBytes; + } + }; + + + return CryptoJS.pad.Iso10126; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773803, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * ISO/IEC 9797-1 Padding Method 2. + */ + CryptoJS.pad.Iso97971 = { + pad: function (data, blockSize) { + // Add 0x80 byte + data.concat(CryptoJS.lib.WordArray.create([0x80000000], 1)); + + // Zero pad the rest + CryptoJS.pad.ZeroPadding.pad(data, blockSize); + }, + + unpad: function (data) { + // Remove zero padding + CryptoJS.pad.ZeroPadding.unpad(data); + + // Remove one more byte -- the 0x80 byte + data.sigBytes--; + } + }; + + + return CryptoJS.pad.Iso97971; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773804, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * Zero padding strategy. + */ + CryptoJS.pad.ZeroPadding = { + pad: function (data, blockSize) { + // Shortcut + var blockSizeBytes = blockSize * 4; + + // Pad + data.clamp(); + data.sigBytes += blockSizeBytes - ((data.sigBytes % blockSizeBytes) || blockSizeBytes); + }, + + unpad: function (data) { + // Shortcut + var dataWords = data.words; + + // Unpad + var i = data.sigBytes - 1; + for (var i = data.sigBytes - 1; i >= 0; i--) { + if (((dataWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff)) { + data.sigBytes = i + 1; + break; + } + } + } + }; + + + return CryptoJS.pad.ZeroPadding; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773805, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + /** + * A noop padding strategy. + */ + CryptoJS.pad.NoPadding = { + pad: function () { + }, + + unpad: function () { + } + }; + + + return CryptoJS.pad.NoPadding; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773806, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function (undefined) { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var CipherParams = C_lib.CipherParams; + var C_enc = C.enc; + var Hex = C_enc.Hex; + var C_format = C.format; + + var HexFormatter = C_format.Hex = { + /** + * Converts the ciphertext of a cipher params object to a hexadecimally encoded string. + * + * @param {CipherParams} cipherParams The cipher params object. + * + * @return {string} The hexadecimally encoded string. + * + * @static + * + * @example + * + * var hexString = CryptoJS.format.Hex.stringify(cipherParams); + */ + stringify: function (cipherParams) { + return cipherParams.ciphertext.toString(Hex); + }, + + /** + * Converts a hexadecimally encoded ciphertext string to a cipher params object. + * + * @param {string} input The hexadecimally encoded string. + * + * @return {CipherParams} The cipher params object. + * + * @static + * + * @example + * + * var cipherParams = CryptoJS.format.Hex.parse(hexString); + */ + parse: function (input) { + var ciphertext = Hex.parse(input); + return CipherParams.create({ ciphertext: ciphertext }); + } + }; + }()); + + + return CryptoJS.format.Hex; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773807, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./enc-base64"), require("./md5"), require("./evpkdf"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./enc-base64", "./md5", "./evpkdf", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var BlockCipher = C_lib.BlockCipher; + var C_algo = C.algo; + + // Lookup tables + var SBOX = []; + var INV_SBOX = []; + var SUB_MIX_0 = []; + var SUB_MIX_1 = []; + var SUB_MIX_2 = []; + var SUB_MIX_3 = []; + var INV_SUB_MIX_0 = []; + var INV_SUB_MIX_1 = []; + var INV_SUB_MIX_2 = []; + var INV_SUB_MIX_3 = []; + + // Compute lookup tables + (function () { + // Compute double table + var d = []; + for (var i = 0; i < 256; i++) { + if (i < 128) { + d[i] = i << 1; + } else { + d[i] = (i << 1) ^ 0x11b; + } + } + + // Walk GF(2^8) + var x = 0; + var xi = 0; + for (var i = 0; i < 256; i++) { + // Compute sbox + var sx = xi ^ (xi << 1) ^ (xi << 2) ^ (xi << 3) ^ (xi << 4); + sx = (sx >>> 8) ^ (sx & 0xff) ^ 0x63; + SBOX[x] = sx; + INV_SBOX[sx] = x; + + // Compute multiplication + var x2 = d[x]; + var x4 = d[x2]; + var x8 = d[x4]; + + // Compute sub bytes, mix columns tables + var t = (d[sx] * 0x101) ^ (sx * 0x1010100); + SUB_MIX_0[x] = (t << 24) | (t >>> 8); + SUB_MIX_1[x] = (t << 16) | (t >>> 16); + SUB_MIX_2[x] = (t << 8) | (t >>> 24); + SUB_MIX_3[x] = t; + + // Compute inv sub bytes, inv mix columns tables + var t = (x8 * 0x1010101) ^ (x4 * 0x10001) ^ (x2 * 0x101) ^ (x * 0x1010100); + INV_SUB_MIX_0[sx] = (t << 24) | (t >>> 8); + INV_SUB_MIX_1[sx] = (t << 16) | (t >>> 16); + INV_SUB_MIX_2[sx] = (t << 8) | (t >>> 24); + INV_SUB_MIX_3[sx] = t; + + // Compute next counter + if (!x) { + x = xi = 1; + } else { + x = x2 ^ d[d[d[x8 ^ x2]]]; + xi ^= d[d[xi]]; + } + } + }()); + + // Precomputed Rcon lookup + var RCON = [0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x1b, 0x36]; + + /** + * AES block cipher algorithm. + */ + var AES = C_algo.AES = BlockCipher.extend({ + _doReset: function () { + var t; + + // Skip reset of nRounds has been set before and key did not change + if (this._nRounds && this._keyPriorReset === this._key) { + return; + } + + // Shortcuts + var key = this._keyPriorReset = this._key; + var keyWords = key.words; + var keySize = key.sigBytes / 4; + + // Compute number of rounds + var nRounds = this._nRounds = keySize + 6; + + // Compute number of key schedule rows + var ksRows = (nRounds + 1) * 4; + + // Compute key schedule + var keySchedule = this._keySchedule = []; + for (var ksRow = 0; ksRow < ksRows; ksRow++) { + if (ksRow < keySize) { + keySchedule[ksRow] = keyWords[ksRow]; + } else { + t = keySchedule[ksRow - 1]; + + if (!(ksRow % keySize)) { + // Rot word + t = (t << 8) | (t >>> 24); + + // Sub word + t = (SBOX[t >>> 24] << 24) | (SBOX[(t >>> 16) & 0xff] << 16) | (SBOX[(t >>> 8) & 0xff] << 8) | SBOX[t & 0xff]; + + // Mix Rcon + t ^= RCON[(ksRow / keySize) | 0] << 24; + } else if (keySize > 6 && ksRow % keySize == 4) { + // Sub word + t = (SBOX[t >>> 24] << 24) | (SBOX[(t >>> 16) & 0xff] << 16) | (SBOX[(t >>> 8) & 0xff] << 8) | SBOX[t & 0xff]; + } + + keySchedule[ksRow] = keySchedule[ksRow - keySize] ^ t; + } + } + + // Compute inv key schedule + var invKeySchedule = this._invKeySchedule = []; + for (var invKsRow = 0; invKsRow < ksRows; invKsRow++) { + var ksRow = ksRows - invKsRow; + + if (invKsRow % 4) { + var t = keySchedule[ksRow]; + } else { + var t = keySchedule[ksRow - 4]; + } + + if (invKsRow < 4 || ksRow <= 4) { + invKeySchedule[invKsRow] = t; + } else { + invKeySchedule[invKsRow] = INV_SUB_MIX_0[SBOX[t >>> 24]] ^ INV_SUB_MIX_1[SBOX[(t >>> 16) & 0xff]] ^ + INV_SUB_MIX_2[SBOX[(t >>> 8) & 0xff]] ^ INV_SUB_MIX_3[SBOX[t & 0xff]]; + } + } + }, + + encryptBlock: function (M, offset) { + this._doCryptBlock(M, offset, this._keySchedule, SUB_MIX_0, SUB_MIX_1, SUB_MIX_2, SUB_MIX_3, SBOX); + }, + + decryptBlock: function (M, offset) { + // Swap 2nd and 4th rows + var t = M[offset + 1]; + M[offset + 1] = M[offset + 3]; + M[offset + 3] = t; + + this._doCryptBlock(M, offset, this._invKeySchedule, INV_SUB_MIX_0, INV_SUB_MIX_1, INV_SUB_MIX_2, INV_SUB_MIX_3, INV_SBOX); + + // Inv swap 2nd and 4th rows + var t = M[offset + 1]; + M[offset + 1] = M[offset + 3]; + M[offset + 3] = t; + }, + + _doCryptBlock: function (M, offset, keySchedule, SUB_MIX_0, SUB_MIX_1, SUB_MIX_2, SUB_MIX_3, SBOX) { + // Shortcut + var nRounds = this._nRounds; + + // Get input, add round key + var s0 = M[offset] ^ keySchedule[0]; + var s1 = M[offset + 1] ^ keySchedule[1]; + var s2 = M[offset + 2] ^ keySchedule[2]; + var s3 = M[offset + 3] ^ keySchedule[3]; + + // Key schedule row counter + var ksRow = 4; + + // Rounds + for (var round = 1; round < nRounds; round++) { + // Shift rows, sub bytes, mix columns, add round key + var t0 = SUB_MIX_0[s0 >>> 24] ^ SUB_MIX_1[(s1 >>> 16) & 0xff] ^ SUB_MIX_2[(s2 >>> 8) & 0xff] ^ SUB_MIX_3[s3 & 0xff] ^ keySchedule[ksRow++]; + var t1 = SUB_MIX_0[s1 >>> 24] ^ SUB_MIX_1[(s2 >>> 16) & 0xff] ^ SUB_MIX_2[(s3 >>> 8) & 0xff] ^ SUB_MIX_3[s0 & 0xff] ^ keySchedule[ksRow++]; + var t2 = SUB_MIX_0[s2 >>> 24] ^ SUB_MIX_1[(s3 >>> 16) & 0xff] ^ SUB_MIX_2[(s0 >>> 8) & 0xff] ^ SUB_MIX_3[s1 & 0xff] ^ keySchedule[ksRow++]; + var t3 = SUB_MIX_0[s3 >>> 24] ^ SUB_MIX_1[(s0 >>> 16) & 0xff] ^ SUB_MIX_2[(s1 >>> 8) & 0xff] ^ SUB_MIX_3[s2 & 0xff] ^ keySchedule[ksRow++]; + + // Update state + s0 = t0; + s1 = t1; + s2 = t2; + s3 = t3; + } + + // Shift rows, sub bytes, add round key + var t0 = ((SBOX[s0 >>> 24] << 24) | (SBOX[(s1 >>> 16) & 0xff] << 16) | (SBOX[(s2 >>> 8) & 0xff] << 8) | SBOX[s3 & 0xff]) ^ keySchedule[ksRow++]; + var t1 = ((SBOX[s1 >>> 24] << 24) | (SBOX[(s2 >>> 16) & 0xff] << 16) | (SBOX[(s3 >>> 8) & 0xff] << 8) | SBOX[s0 & 0xff]) ^ keySchedule[ksRow++]; + var t2 = ((SBOX[s2 >>> 24] << 24) | (SBOX[(s3 >>> 16) & 0xff] << 16) | (SBOX[(s0 >>> 8) & 0xff] << 8) | SBOX[s1 & 0xff]) ^ keySchedule[ksRow++]; + var t3 = ((SBOX[s3 >>> 24] << 24) | (SBOX[(s0 >>> 16) & 0xff] << 16) | (SBOX[(s1 >>> 8) & 0xff] << 8) | SBOX[s2 & 0xff]) ^ keySchedule[ksRow++]; + + // Set output + M[offset] = t0; + M[offset + 1] = t1; + M[offset + 2] = t2; + M[offset + 3] = t3; + }, + + keySize: 256/32 + }); + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.AES.encrypt(message, key, cfg); + * var plaintext = CryptoJS.AES.decrypt(ciphertext, key, cfg); + */ + C.AES = BlockCipher._createHelper(AES); + }()); + + + return CryptoJS.AES; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./enc-base64":1734488773782,"./md5":1734488773784,"./evpkdf":1734488773794,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773808, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./enc-base64"), require("./md5"), require("./evpkdf"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./enc-base64", "./md5", "./evpkdf", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var WordArray = C_lib.WordArray; + var BlockCipher = C_lib.BlockCipher; + var C_algo = C.algo; + + // Permuted Choice 1 constants + var PC1 = [ + 57, 49, 41, 33, 25, 17, 9, 1, + 58, 50, 42, 34, 26, 18, 10, 2, + 59, 51, 43, 35, 27, 19, 11, 3, + 60, 52, 44, 36, 63, 55, 47, 39, + 31, 23, 15, 7, 62, 54, 46, 38, + 30, 22, 14, 6, 61, 53, 45, 37, + 29, 21, 13, 5, 28, 20, 12, 4 + ]; + + // Permuted Choice 2 constants + var PC2 = [ + 14, 17, 11, 24, 1, 5, + 3, 28, 15, 6, 21, 10, + 23, 19, 12, 4, 26, 8, + 16, 7, 27, 20, 13, 2, + 41, 52, 31, 37, 47, 55, + 30, 40, 51, 45, 33, 48, + 44, 49, 39, 56, 34, 53, + 46, 42, 50, 36, 29, 32 + ]; + + // Cumulative bit shift constants + var BIT_SHIFTS = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28]; + + // SBOXes and round permutation constants + var SBOX_P = [ + { + 0x0: 0x808200, + 0x10000000: 0x8000, + 0x20000000: 0x808002, + 0x30000000: 0x2, + 0x40000000: 0x200, + 0x50000000: 0x808202, + 0x60000000: 0x800202, + 0x70000000: 0x800000, + 0x80000000: 0x202, + 0x90000000: 0x800200, + 0xa0000000: 0x8200, + 0xb0000000: 0x808000, + 0xc0000000: 0x8002, + 0xd0000000: 0x800002, + 0xe0000000: 0x0, + 0xf0000000: 0x8202, + 0x8000000: 0x0, + 0x18000000: 0x808202, + 0x28000000: 0x8202, + 0x38000000: 0x8000, + 0x48000000: 0x808200, + 0x58000000: 0x200, + 0x68000000: 0x808002, + 0x78000000: 0x2, + 0x88000000: 0x800200, + 0x98000000: 0x8200, + 0xa8000000: 0x808000, + 0xb8000000: 0x800202, + 0xc8000000: 0x800002, + 0xd8000000: 0x8002, + 0xe8000000: 0x202, + 0xf8000000: 0x800000, + 0x1: 0x8000, + 0x10000001: 0x2, + 0x20000001: 0x808200, + 0x30000001: 0x800000, + 0x40000001: 0x808002, + 0x50000001: 0x8200, + 0x60000001: 0x200, + 0x70000001: 0x800202, + 0x80000001: 0x808202, + 0x90000001: 0x808000, + 0xa0000001: 0x800002, + 0xb0000001: 0x8202, + 0xc0000001: 0x202, + 0xd0000001: 0x800200, + 0xe0000001: 0x8002, + 0xf0000001: 0x0, + 0x8000001: 0x808202, + 0x18000001: 0x808000, + 0x28000001: 0x800000, + 0x38000001: 0x200, + 0x48000001: 0x8000, + 0x58000001: 0x800002, + 0x68000001: 0x2, + 0x78000001: 0x8202, + 0x88000001: 0x8002, + 0x98000001: 0x800202, + 0xa8000001: 0x202, + 0xb8000001: 0x808200, + 0xc8000001: 0x800200, + 0xd8000001: 0x0, + 0xe8000001: 0x8200, + 0xf8000001: 0x808002 + }, + { + 0x0: 0x40084010, + 0x1000000: 0x4000, + 0x2000000: 0x80000, + 0x3000000: 0x40080010, + 0x4000000: 0x40000010, + 0x5000000: 0x40084000, + 0x6000000: 0x40004000, + 0x7000000: 0x10, + 0x8000000: 0x84000, + 0x9000000: 0x40004010, + 0xa000000: 0x40000000, + 0xb000000: 0x84010, + 0xc000000: 0x80010, + 0xd000000: 0x0, + 0xe000000: 0x4010, + 0xf000000: 0x40080000, + 0x800000: 0x40004000, + 0x1800000: 0x84010, + 0x2800000: 0x10, + 0x3800000: 0x40004010, + 0x4800000: 0x40084010, + 0x5800000: 0x40000000, + 0x6800000: 0x80000, + 0x7800000: 0x40080010, + 0x8800000: 0x80010, + 0x9800000: 0x0, + 0xa800000: 0x4000, + 0xb800000: 0x40080000, + 0xc800000: 0x40000010, + 0xd800000: 0x84000, + 0xe800000: 0x40084000, + 0xf800000: 0x4010, + 0x10000000: 0x0, + 0x11000000: 0x40080010, + 0x12000000: 0x40004010, + 0x13000000: 0x40084000, + 0x14000000: 0x40080000, + 0x15000000: 0x10, + 0x16000000: 0x84010, + 0x17000000: 0x4000, + 0x18000000: 0x4010, + 0x19000000: 0x80000, + 0x1a000000: 0x80010, + 0x1b000000: 0x40000010, + 0x1c000000: 0x84000, + 0x1d000000: 0x40004000, + 0x1e000000: 0x40000000, + 0x1f000000: 0x40084010, + 0x10800000: 0x84010, + 0x11800000: 0x80000, + 0x12800000: 0x40080000, + 0x13800000: 0x4000, + 0x14800000: 0x40004000, + 0x15800000: 0x40084010, + 0x16800000: 0x10, + 0x17800000: 0x40000000, + 0x18800000: 0x40084000, + 0x19800000: 0x40000010, + 0x1a800000: 0x40004010, + 0x1b800000: 0x80010, + 0x1c800000: 0x0, + 0x1d800000: 0x4010, + 0x1e800000: 0x40080010, + 0x1f800000: 0x84000 + }, + { + 0x0: 0x104, + 0x100000: 0x0, + 0x200000: 0x4000100, + 0x300000: 0x10104, + 0x400000: 0x10004, + 0x500000: 0x4000004, + 0x600000: 0x4010104, + 0x700000: 0x4010000, + 0x800000: 0x4000000, + 0x900000: 0x4010100, + 0xa00000: 0x10100, + 0xb00000: 0x4010004, + 0xc00000: 0x4000104, + 0xd00000: 0x10000, + 0xe00000: 0x4, + 0xf00000: 0x100, + 0x80000: 0x4010100, + 0x180000: 0x4010004, + 0x280000: 0x0, + 0x380000: 0x4000100, + 0x480000: 0x4000004, + 0x580000: 0x10000, + 0x680000: 0x10004, + 0x780000: 0x104, + 0x880000: 0x4, + 0x980000: 0x100, + 0xa80000: 0x4010000, + 0xb80000: 0x10104, + 0xc80000: 0x10100, + 0xd80000: 0x4000104, + 0xe80000: 0x4010104, + 0xf80000: 0x4000000, + 0x1000000: 0x4010100, + 0x1100000: 0x10004, + 0x1200000: 0x10000, + 0x1300000: 0x4000100, + 0x1400000: 0x100, + 0x1500000: 0x4010104, + 0x1600000: 0x4000004, + 0x1700000: 0x0, + 0x1800000: 0x4000104, + 0x1900000: 0x4000000, + 0x1a00000: 0x4, + 0x1b00000: 0x10100, + 0x1c00000: 0x4010000, + 0x1d00000: 0x104, + 0x1e00000: 0x10104, + 0x1f00000: 0x4010004, + 0x1080000: 0x4000000, + 0x1180000: 0x104, + 0x1280000: 0x4010100, + 0x1380000: 0x0, + 0x1480000: 0x10004, + 0x1580000: 0x4000100, + 0x1680000: 0x100, + 0x1780000: 0x4010004, + 0x1880000: 0x10000, + 0x1980000: 0x4010104, + 0x1a80000: 0x10104, + 0x1b80000: 0x4000004, + 0x1c80000: 0x4000104, + 0x1d80000: 0x4010000, + 0x1e80000: 0x4, + 0x1f80000: 0x10100 + }, + { + 0x0: 0x80401000, + 0x10000: 0x80001040, + 0x20000: 0x401040, + 0x30000: 0x80400000, + 0x40000: 0x0, + 0x50000: 0x401000, + 0x60000: 0x80000040, + 0x70000: 0x400040, + 0x80000: 0x80000000, + 0x90000: 0x400000, + 0xa0000: 0x40, + 0xb0000: 0x80001000, + 0xc0000: 0x80400040, + 0xd0000: 0x1040, + 0xe0000: 0x1000, + 0xf0000: 0x80401040, + 0x8000: 0x80001040, + 0x18000: 0x40, + 0x28000: 0x80400040, + 0x38000: 0x80001000, + 0x48000: 0x401000, + 0x58000: 0x80401040, + 0x68000: 0x0, + 0x78000: 0x80400000, + 0x88000: 0x1000, + 0x98000: 0x80401000, + 0xa8000: 0x400000, + 0xb8000: 0x1040, + 0xc8000: 0x80000000, + 0xd8000: 0x400040, + 0xe8000: 0x401040, + 0xf8000: 0x80000040, + 0x100000: 0x400040, + 0x110000: 0x401000, + 0x120000: 0x80000040, + 0x130000: 0x0, + 0x140000: 0x1040, + 0x150000: 0x80400040, + 0x160000: 0x80401000, + 0x170000: 0x80001040, + 0x180000: 0x80401040, + 0x190000: 0x80000000, + 0x1a0000: 0x80400000, + 0x1b0000: 0x401040, + 0x1c0000: 0x80001000, + 0x1d0000: 0x400000, + 0x1e0000: 0x40, + 0x1f0000: 0x1000, + 0x108000: 0x80400000, + 0x118000: 0x80401040, + 0x128000: 0x0, + 0x138000: 0x401000, + 0x148000: 0x400040, + 0x158000: 0x80000000, + 0x168000: 0x80001040, + 0x178000: 0x40, + 0x188000: 0x80000040, + 0x198000: 0x1000, + 0x1a8000: 0x80001000, + 0x1b8000: 0x80400040, + 0x1c8000: 0x1040, + 0x1d8000: 0x80401000, + 0x1e8000: 0x400000, + 0x1f8000: 0x401040 + }, + { + 0x0: 0x80, + 0x1000: 0x1040000, + 0x2000: 0x40000, + 0x3000: 0x20000000, + 0x4000: 0x20040080, + 0x5000: 0x1000080, + 0x6000: 0x21000080, + 0x7000: 0x40080, + 0x8000: 0x1000000, + 0x9000: 0x20040000, + 0xa000: 0x20000080, + 0xb000: 0x21040080, + 0xc000: 0x21040000, + 0xd000: 0x0, + 0xe000: 0x1040080, + 0xf000: 0x21000000, + 0x800: 0x1040080, + 0x1800: 0x21000080, + 0x2800: 0x80, + 0x3800: 0x1040000, + 0x4800: 0x40000, + 0x5800: 0x20040080, + 0x6800: 0x21040000, + 0x7800: 0x20000000, + 0x8800: 0x20040000, + 0x9800: 0x0, + 0xa800: 0x21040080, + 0xb800: 0x1000080, + 0xc800: 0x20000080, + 0xd800: 0x21000000, + 0xe800: 0x1000000, + 0xf800: 0x40080, + 0x10000: 0x40000, + 0x11000: 0x80, + 0x12000: 0x20000000, + 0x13000: 0x21000080, + 0x14000: 0x1000080, + 0x15000: 0x21040000, + 0x16000: 0x20040080, + 0x17000: 0x1000000, + 0x18000: 0x21040080, + 0x19000: 0x21000000, + 0x1a000: 0x1040000, + 0x1b000: 0x20040000, + 0x1c000: 0x40080, + 0x1d000: 0x20000080, + 0x1e000: 0x0, + 0x1f000: 0x1040080, + 0x10800: 0x21000080, + 0x11800: 0x1000000, + 0x12800: 0x1040000, + 0x13800: 0x20040080, + 0x14800: 0x20000000, + 0x15800: 0x1040080, + 0x16800: 0x80, + 0x17800: 0x21040000, + 0x18800: 0x40080, + 0x19800: 0x21040080, + 0x1a800: 0x0, + 0x1b800: 0x21000000, + 0x1c800: 0x1000080, + 0x1d800: 0x40000, + 0x1e800: 0x20040000, + 0x1f800: 0x20000080 + }, + { + 0x0: 0x10000008, + 0x100: 0x2000, + 0x200: 0x10200000, + 0x300: 0x10202008, + 0x400: 0x10002000, + 0x500: 0x200000, + 0x600: 0x200008, + 0x700: 0x10000000, + 0x800: 0x0, + 0x900: 0x10002008, + 0xa00: 0x202000, + 0xb00: 0x8, + 0xc00: 0x10200008, + 0xd00: 0x202008, + 0xe00: 0x2008, + 0xf00: 0x10202000, + 0x80: 0x10200000, + 0x180: 0x10202008, + 0x280: 0x8, + 0x380: 0x200000, + 0x480: 0x202008, + 0x580: 0x10000008, + 0x680: 0x10002000, + 0x780: 0x2008, + 0x880: 0x200008, + 0x980: 0x2000, + 0xa80: 0x10002008, + 0xb80: 0x10200008, + 0xc80: 0x0, + 0xd80: 0x10202000, + 0xe80: 0x202000, + 0xf80: 0x10000000, + 0x1000: 0x10002000, + 0x1100: 0x10200008, + 0x1200: 0x10202008, + 0x1300: 0x2008, + 0x1400: 0x200000, + 0x1500: 0x10000000, + 0x1600: 0x10000008, + 0x1700: 0x202000, + 0x1800: 0x202008, + 0x1900: 0x0, + 0x1a00: 0x8, + 0x1b00: 0x10200000, + 0x1c00: 0x2000, + 0x1d00: 0x10002008, + 0x1e00: 0x10202000, + 0x1f00: 0x200008, + 0x1080: 0x8, + 0x1180: 0x202000, + 0x1280: 0x200000, + 0x1380: 0x10000008, + 0x1480: 0x10002000, + 0x1580: 0x2008, + 0x1680: 0x10202008, + 0x1780: 0x10200000, + 0x1880: 0x10202000, + 0x1980: 0x10200008, + 0x1a80: 0x2000, + 0x1b80: 0x202008, + 0x1c80: 0x200008, + 0x1d80: 0x0, + 0x1e80: 0x10000000, + 0x1f80: 0x10002008 + }, + { + 0x0: 0x100000, + 0x10: 0x2000401, + 0x20: 0x400, + 0x30: 0x100401, + 0x40: 0x2100401, + 0x50: 0x0, + 0x60: 0x1, + 0x70: 0x2100001, + 0x80: 0x2000400, + 0x90: 0x100001, + 0xa0: 0x2000001, + 0xb0: 0x2100400, + 0xc0: 0x2100000, + 0xd0: 0x401, + 0xe0: 0x100400, + 0xf0: 0x2000000, + 0x8: 0x2100001, + 0x18: 0x0, + 0x28: 0x2000401, + 0x38: 0x2100400, + 0x48: 0x100000, + 0x58: 0x2000001, + 0x68: 0x2000000, + 0x78: 0x401, + 0x88: 0x100401, + 0x98: 0x2000400, + 0xa8: 0x2100000, + 0xb8: 0x100001, + 0xc8: 0x400, + 0xd8: 0x2100401, + 0xe8: 0x1, + 0xf8: 0x100400, + 0x100: 0x2000000, + 0x110: 0x100000, + 0x120: 0x2000401, + 0x130: 0x2100001, + 0x140: 0x100001, + 0x150: 0x2000400, + 0x160: 0x2100400, + 0x170: 0x100401, + 0x180: 0x401, + 0x190: 0x2100401, + 0x1a0: 0x100400, + 0x1b0: 0x1, + 0x1c0: 0x0, + 0x1d0: 0x2100000, + 0x1e0: 0x2000001, + 0x1f0: 0x400, + 0x108: 0x100400, + 0x118: 0x2000401, + 0x128: 0x2100001, + 0x138: 0x1, + 0x148: 0x2000000, + 0x158: 0x100000, + 0x168: 0x401, + 0x178: 0x2100400, + 0x188: 0x2000001, + 0x198: 0x2100000, + 0x1a8: 0x0, + 0x1b8: 0x2100401, + 0x1c8: 0x100401, + 0x1d8: 0x400, + 0x1e8: 0x2000400, + 0x1f8: 0x100001 + }, + { + 0x0: 0x8000820, + 0x1: 0x20000, + 0x2: 0x8000000, + 0x3: 0x20, + 0x4: 0x20020, + 0x5: 0x8020820, + 0x6: 0x8020800, + 0x7: 0x800, + 0x8: 0x8020000, + 0x9: 0x8000800, + 0xa: 0x20800, + 0xb: 0x8020020, + 0xc: 0x820, + 0xd: 0x0, + 0xe: 0x8000020, + 0xf: 0x20820, + 0x80000000: 0x800, + 0x80000001: 0x8020820, + 0x80000002: 0x8000820, + 0x80000003: 0x8000000, + 0x80000004: 0x8020000, + 0x80000005: 0x20800, + 0x80000006: 0x20820, + 0x80000007: 0x20, + 0x80000008: 0x8000020, + 0x80000009: 0x820, + 0x8000000a: 0x20020, + 0x8000000b: 0x8020800, + 0x8000000c: 0x0, + 0x8000000d: 0x8020020, + 0x8000000e: 0x8000800, + 0x8000000f: 0x20000, + 0x10: 0x20820, + 0x11: 0x8020800, + 0x12: 0x20, + 0x13: 0x800, + 0x14: 0x8000800, + 0x15: 0x8000020, + 0x16: 0x8020020, + 0x17: 0x20000, + 0x18: 0x0, + 0x19: 0x20020, + 0x1a: 0x8020000, + 0x1b: 0x8000820, + 0x1c: 0x8020820, + 0x1d: 0x20800, + 0x1e: 0x820, + 0x1f: 0x8000000, + 0x80000010: 0x20000, + 0x80000011: 0x800, + 0x80000012: 0x8020020, + 0x80000013: 0x20820, + 0x80000014: 0x20, + 0x80000015: 0x8020000, + 0x80000016: 0x8000000, + 0x80000017: 0x8000820, + 0x80000018: 0x8020820, + 0x80000019: 0x8000020, + 0x8000001a: 0x8000800, + 0x8000001b: 0x0, + 0x8000001c: 0x20800, + 0x8000001d: 0x820, + 0x8000001e: 0x20020, + 0x8000001f: 0x8020800 + } + ]; + + // Masks that select the SBOX input + var SBOX_MASK = [ + 0xf8000001, 0x1f800000, 0x01f80000, 0x001f8000, + 0x0001f800, 0x00001f80, 0x000001f8, 0x8000001f + ]; + + /** + * DES block cipher algorithm. + */ + var DES = C_algo.DES = BlockCipher.extend({ + _doReset: function () { + // Shortcuts + var key = this._key; + var keyWords = key.words; + + // Select 56 bits according to PC1 + var keyBits = []; + for (var i = 0; i < 56; i++) { + var keyBitPos = PC1[i] - 1; + keyBits[i] = (keyWords[keyBitPos >>> 5] >>> (31 - keyBitPos % 32)) & 1; + } + + // Assemble 16 subkeys + var subKeys = this._subKeys = []; + for (var nSubKey = 0; nSubKey < 16; nSubKey++) { + // Create subkey + var subKey = subKeys[nSubKey] = []; + + // Shortcut + var bitShift = BIT_SHIFTS[nSubKey]; + + // Select 48 bits according to PC2 + for (var i = 0; i < 24; i++) { + // Select from the left 28 key bits + subKey[(i / 6) | 0] |= keyBits[((PC2[i] - 1) + bitShift) % 28] << (31 - i % 6); + + // Select from the right 28 key bits + subKey[4 + ((i / 6) | 0)] |= keyBits[28 + (((PC2[i + 24] - 1) + bitShift) % 28)] << (31 - i % 6); + } + + // Since each subkey is applied to an expanded 32-bit input, + // the subkey can be broken into 8 values scaled to 32-bits, + // which allows the key to be used without expansion + subKey[0] = (subKey[0] << 1) | (subKey[0] >>> 31); + for (var i = 1; i < 7; i++) { + subKey[i] = subKey[i] >>> ((i - 1) * 4 + 3); + } + subKey[7] = (subKey[7] << 5) | (subKey[7] >>> 27); + } + + // Compute inverse subkeys + var invSubKeys = this._invSubKeys = []; + for (var i = 0; i < 16; i++) { + invSubKeys[i] = subKeys[15 - i]; + } + }, + + encryptBlock: function (M, offset) { + this._doCryptBlock(M, offset, this._subKeys); + }, + + decryptBlock: function (M, offset) { + this._doCryptBlock(M, offset, this._invSubKeys); + }, + + _doCryptBlock: function (M, offset, subKeys) { + // Get input + this._lBlock = M[offset]; + this._rBlock = M[offset + 1]; + + // Initial permutation + exchangeLR.call(this, 4, 0x0f0f0f0f); + exchangeLR.call(this, 16, 0x0000ffff); + exchangeRL.call(this, 2, 0x33333333); + exchangeRL.call(this, 8, 0x00ff00ff); + exchangeLR.call(this, 1, 0x55555555); + + // Rounds + for (var round = 0; round < 16; round++) { + // Shortcuts + var subKey = subKeys[round]; + var lBlock = this._lBlock; + var rBlock = this._rBlock; + + // Feistel function + var f = 0; + for (var i = 0; i < 8; i++) { + f |= SBOX_P[i][((rBlock ^ subKey[i]) & SBOX_MASK[i]) >>> 0]; + } + this._lBlock = rBlock; + this._rBlock = lBlock ^ f; + } + + // Undo swap from last round + var t = this._lBlock; + this._lBlock = this._rBlock; + this._rBlock = t; + + // Final permutation + exchangeLR.call(this, 1, 0x55555555); + exchangeRL.call(this, 8, 0x00ff00ff); + exchangeRL.call(this, 2, 0x33333333); + exchangeLR.call(this, 16, 0x0000ffff); + exchangeLR.call(this, 4, 0x0f0f0f0f); + + // Set output + M[offset] = this._lBlock; + M[offset + 1] = this._rBlock; + }, + + keySize: 64/32, + + ivSize: 64/32, + + blockSize: 64/32 + }); + + // Swap bits across the left and right words + function exchangeLR(offset, mask) { + var t = ((this._lBlock >>> offset) ^ this._rBlock) & mask; + this._rBlock ^= t; + this._lBlock ^= t << offset; + } + + function exchangeRL(offset, mask) { + var t = ((this._rBlock >>> offset) ^ this._lBlock) & mask; + this._lBlock ^= t; + this._rBlock ^= t << offset; + } + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.DES.encrypt(message, key, cfg); + * var plaintext = CryptoJS.DES.decrypt(ciphertext, key, cfg); + */ + C.DES = BlockCipher._createHelper(DES); + + /** + * Triple-DES block cipher algorithm. + */ + var TripleDES = C_algo.TripleDES = BlockCipher.extend({ + _doReset: function () { + // Shortcuts + var key = this._key; + var keyWords = key.words; + // Make sure the key length is valid (64, 128 or >= 192 bit) + if (keyWords.length !== 2 && keyWords.length !== 4 && keyWords.length < 6) { + throw new Error('Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.'); + } + + // Extend the key according to the keying options defined in 3DES standard + var key1 = keyWords.slice(0, 2); + var key2 = keyWords.length < 4 ? keyWords.slice(0, 2) : keyWords.slice(2, 4); + var key3 = keyWords.length < 6 ? keyWords.slice(0, 2) : keyWords.slice(4, 6); + + // Create DES instances + this._des1 = DES.createEncryptor(WordArray.create(key1)); + this._des2 = DES.createEncryptor(WordArray.create(key2)); + this._des3 = DES.createEncryptor(WordArray.create(key3)); + }, + + encryptBlock: function (M, offset) { + this._des1.encryptBlock(M, offset); + this._des2.decryptBlock(M, offset); + this._des3.encryptBlock(M, offset); + }, + + decryptBlock: function (M, offset) { + this._des3.decryptBlock(M, offset); + this._des2.encryptBlock(M, offset); + this._des1.decryptBlock(M, offset); + }, + + keySize: 192/32, + + ivSize: 64/32, + + blockSize: 64/32 + }); + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.TripleDES.encrypt(message, key, cfg); + * var plaintext = CryptoJS.TripleDES.decrypt(ciphertext, key, cfg); + */ + C.TripleDES = BlockCipher._createHelper(TripleDES); + }()); + + + return CryptoJS.TripleDES; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./enc-base64":1734488773782,"./md5":1734488773784,"./evpkdf":1734488773794,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773809, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./enc-base64"), require("./md5"), require("./evpkdf"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./enc-base64", "./md5", "./evpkdf", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var StreamCipher = C_lib.StreamCipher; + var C_algo = C.algo; + + /** + * RC4 stream cipher algorithm. + */ + var RC4 = C_algo.RC4 = StreamCipher.extend({ + _doReset: function () { + // Shortcuts + var key = this._key; + var keyWords = key.words; + var keySigBytes = key.sigBytes; + + // Init sbox + var S = this._S = []; + for (var i = 0; i < 256; i++) { + S[i] = i; + } + + // Key setup + for (var i = 0, j = 0; i < 256; i++) { + var keyByteIndex = i % keySigBytes; + var keyByte = (keyWords[keyByteIndex >>> 2] >>> (24 - (keyByteIndex % 4) * 8)) & 0xff; + + j = (j + S[i] + keyByte) % 256; + + // Swap + var t = S[i]; + S[i] = S[j]; + S[j] = t; + } + + // Counters + this._i = this._j = 0; + }, + + _doProcessBlock: function (M, offset) { + M[offset] ^= generateKeystreamWord.call(this); + }, + + keySize: 256/32, + + ivSize: 0 + }); + + function generateKeystreamWord() { + // Shortcuts + var S = this._S; + var i = this._i; + var j = this._j; + + // Generate keystream word + var keystreamWord = 0; + for (var n = 0; n < 4; n++) { + i = (i + 1) % 256; + j = (j + S[i]) % 256; + + // Swap + var t = S[i]; + S[i] = S[j]; + S[j] = t; + + keystreamWord |= S[(S[i] + S[j]) % 256] << (24 - n * 8); + } + + // Update counters + this._i = i; + this._j = j; + + return keystreamWord; + } + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.RC4.encrypt(message, key, cfg); + * var plaintext = CryptoJS.RC4.decrypt(ciphertext, key, cfg); + */ + C.RC4 = StreamCipher._createHelper(RC4); + + /** + * Modified RC4 stream cipher algorithm. + */ + var RC4Drop = C_algo.RC4Drop = RC4.extend({ + /** + * Configuration options. + * + * @property {number} drop The number of keystream words to drop. Default 192 + */ + cfg: RC4.cfg.extend({ + drop: 192 + }), + + _doReset: function () { + RC4._doReset.call(this); + + // Drop + for (var i = this.cfg.drop; i > 0; i--) { + generateKeystreamWord.call(this); + } + } + }); + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.RC4Drop.encrypt(message, key, cfg); + * var plaintext = CryptoJS.RC4Drop.decrypt(ciphertext, key, cfg); + */ + C.RC4Drop = StreamCipher._createHelper(RC4Drop); + }()); + + + return CryptoJS.RC4; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./enc-base64":1734488773782,"./md5":1734488773784,"./evpkdf":1734488773794,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773810, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./enc-base64"), require("./md5"), require("./evpkdf"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./enc-base64", "./md5", "./evpkdf", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var StreamCipher = C_lib.StreamCipher; + var C_algo = C.algo; + + // Reusable objects + var S = []; + var C_ = []; + var G = []; + + /** + * Rabbit stream cipher algorithm + */ + var Rabbit = C_algo.Rabbit = StreamCipher.extend({ + _doReset: function () { + // Shortcuts + var K = this._key.words; + var iv = this.cfg.iv; + + // Swap endian + for (var i = 0; i < 4; i++) { + K[i] = (((K[i] << 8) | (K[i] >>> 24)) & 0x00ff00ff) | + (((K[i] << 24) | (K[i] >>> 8)) & 0xff00ff00); + } + + // Generate initial state values + var X = this._X = [ + K[0], (K[3] << 16) | (K[2] >>> 16), + K[1], (K[0] << 16) | (K[3] >>> 16), + K[2], (K[1] << 16) | (K[0] >>> 16), + K[3], (K[2] << 16) | (K[1] >>> 16) + ]; + + // Generate initial counter values + var C = this._C = [ + (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), + (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), + (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), + (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff) + ]; + + // Carry bit + this._b = 0; + + // Iterate the system four times + for (var i = 0; i < 4; i++) { + nextState.call(this); + } + + // Modify the counters + for (var i = 0; i < 8; i++) { + C[i] ^= X[(i + 4) & 7]; + } + + // IV setup + if (iv) { + // Shortcuts + var IV = iv.words; + var IV_0 = IV[0]; + var IV_1 = IV[1]; + + // Generate four subvectors + var i0 = (((IV_0 << 8) | (IV_0 >>> 24)) & 0x00ff00ff) | (((IV_0 << 24) | (IV_0 >>> 8)) & 0xff00ff00); + var i2 = (((IV_1 << 8) | (IV_1 >>> 24)) & 0x00ff00ff) | (((IV_1 << 24) | (IV_1 >>> 8)) & 0xff00ff00); + var i1 = (i0 >>> 16) | (i2 & 0xffff0000); + var i3 = (i2 << 16) | (i0 & 0x0000ffff); + + // Modify counter values + C[0] ^= i0; + C[1] ^= i1; + C[2] ^= i2; + C[3] ^= i3; + C[4] ^= i0; + C[5] ^= i1; + C[6] ^= i2; + C[7] ^= i3; + + // Iterate the system four times + for (var i = 0; i < 4; i++) { + nextState.call(this); + } + } + }, + + _doProcessBlock: function (M, offset) { + // Shortcut + var X = this._X; + + // Iterate the system + nextState.call(this); + + // Generate four keystream words + S[0] = X[0] ^ (X[5] >>> 16) ^ (X[3] << 16); + S[1] = X[2] ^ (X[7] >>> 16) ^ (X[5] << 16); + S[2] = X[4] ^ (X[1] >>> 16) ^ (X[7] << 16); + S[3] = X[6] ^ (X[3] >>> 16) ^ (X[1] << 16); + + for (var i = 0; i < 4; i++) { + // Swap endian + S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | + (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); + + // Encrypt + M[offset + i] ^= S[i]; + } + }, + + blockSize: 128/32, + + ivSize: 64/32 + }); + + function nextState() { + // Shortcuts + var X = this._X; + var C = this._C; + + // Save old counter values + for (var i = 0; i < 8; i++) { + C_[i] = C[i]; + } + + // Calculate new counter values + C[0] = (C[0] + 0x4d34d34d + this._b) | 0; + C[1] = (C[1] + 0xd34d34d3 + ((C[0] >>> 0) < (C_[0] >>> 0) ? 1 : 0)) | 0; + C[2] = (C[2] + 0x34d34d34 + ((C[1] >>> 0) < (C_[1] >>> 0) ? 1 : 0)) | 0; + C[3] = (C[3] + 0x4d34d34d + ((C[2] >>> 0) < (C_[2] >>> 0) ? 1 : 0)) | 0; + C[4] = (C[4] + 0xd34d34d3 + ((C[3] >>> 0) < (C_[3] >>> 0) ? 1 : 0)) | 0; + C[5] = (C[5] + 0x34d34d34 + ((C[4] >>> 0) < (C_[4] >>> 0) ? 1 : 0)) | 0; + C[6] = (C[6] + 0x4d34d34d + ((C[5] >>> 0) < (C_[5] >>> 0) ? 1 : 0)) | 0; + C[7] = (C[7] + 0xd34d34d3 + ((C[6] >>> 0) < (C_[6] >>> 0) ? 1 : 0)) | 0; + this._b = (C[7] >>> 0) < (C_[7] >>> 0) ? 1 : 0; + + // Calculate the g-values + for (var i = 0; i < 8; i++) { + var gx = X[i] + C[i]; + + // Construct high and low argument for squaring + var ga = gx & 0xffff; + var gb = gx >>> 16; + + // Calculate high and low result of squaring + var gh = ((((ga * ga) >>> 17) + ga * gb) >>> 15) + gb * gb; + var gl = (((gx & 0xffff0000) * gx) | 0) + (((gx & 0x0000ffff) * gx) | 0); + + // High XOR low + G[i] = gh ^ gl; + } + + // Calculate new state values + X[0] = (G[0] + ((G[7] << 16) | (G[7] >>> 16)) + ((G[6] << 16) | (G[6] >>> 16))) | 0; + X[1] = (G[1] + ((G[0] << 8) | (G[0] >>> 24)) + G[7]) | 0; + X[2] = (G[2] + ((G[1] << 16) | (G[1] >>> 16)) + ((G[0] << 16) | (G[0] >>> 16))) | 0; + X[3] = (G[3] + ((G[2] << 8) | (G[2] >>> 24)) + G[1]) | 0; + X[4] = (G[4] + ((G[3] << 16) | (G[3] >>> 16)) + ((G[2] << 16) | (G[2] >>> 16))) | 0; + X[5] = (G[5] + ((G[4] << 8) | (G[4] >>> 24)) + G[3]) | 0; + X[6] = (G[6] + ((G[5] << 16) | (G[5] >>> 16)) + ((G[4] << 16) | (G[4] >>> 16))) | 0; + X[7] = (G[7] + ((G[6] << 8) | (G[6] >>> 24)) + G[5]) | 0; + } + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.Rabbit.encrypt(message, key, cfg); + * var plaintext = CryptoJS.Rabbit.decrypt(ciphertext, key, cfg); + */ + C.Rabbit = StreamCipher._createHelper(Rabbit); + }()); + + + return CryptoJS.Rabbit; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./enc-base64":1734488773782,"./md5":1734488773784,"./evpkdf":1734488773794,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773811, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./enc-base64"), require("./md5"), require("./evpkdf"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./enc-base64", "./md5", "./evpkdf", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var StreamCipher = C_lib.StreamCipher; + var C_algo = C.algo; + + // Reusable objects + var S = []; + var C_ = []; + var G = []; + + /** + * Rabbit stream cipher algorithm. + * + * This is a legacy version that neglected to convert the key to little-endian. + * This error doesn't affect the cipher's security, + * but it does affect its compatibility with other implementations. + */ + var RabbitLegacy = C_algo.RabbitLegacy = StreamCipher.extend({ + _doReset: function () { + // Shortcuts + var K = this._key.words; + var iv = this.cfg.iv; + + // Generate initial state values + var X = this._X = [ + K[0], (K[3] << 16) | (K[2] >>> 16), + K[1], (K[0] << 16) | (K[3] >>> 16), + K[2], (K[1] << 16) | (K[0] >>> 16), + K[3], (K[2] << 16) | (K[1] >>> 16) + ]; + + // Generate initial counter values + var C = this._C = [ + (K[2] << 16) | (K[2] >>> 16), (K[0] & 0xffff0000) | (K[1] & 0x0000ffff), + (K[3] << 16) | (K[3] >>> 16), (K[1] & 0xffff0000) | (K[2] & 0x0000ffff), + (K[0] << 16) | (K[0] >>> 16), (K[2] & 0xffff0000) | (K[3] & 0x0000ffff), + (K[1] << 16) | (K[1] >>> 16), (K[3] & 0xffff0000) | (K[0] & 0x0000ffff) + ]; + + // Carry bit + this._b = 0; + + // Iterate the system four times + for (var i = 0; i < 4; i++) { + nextState.call(this); + } + + // Modify the counters + for (var i = 0; i < 8; i++) { + C[i] ^= X[(i + 4) & 7]; + } + + // IV setup + if (iv) { + // Shortcuts + var IV = iv.words; + var IV_0 = IV[0]; + var IV_1 = IV[1]; + + // Generate four subvectors + var i0 = (((IV_0 << 8) | (IV_0 >>> 24)) & 0x00ff00ff) | (((IV_0 << 24) | (IV_0 >>> 8)) & 0xff00ff00); + var i2 = (((IV_1 << 8) | (IV_1 >>> 24)) & 0x00ff00ff) | (((IV_1 << 24) | (IV_1 >>> 8)) & 0xff00ff00); + var i1 = (i0 >>> 16) | (i2 & 0xffff0000); + var i3 = (i2 << 16) | (i0 & 0x0000ffff); + + // Modify counter values + C[0] ^= i0; + C[1] ^= i1; + C[2] ^= i2; + C[3] ^= i3; + C[4] ^= i0; + C[5] ^= i1; + C[6] ^= i2; + C[7] ^= i3; + + // Iterate the system four times + for (var i = 0; i < 4; i++) { + nextState.call(this); + } + } + }, + + _doProcessBlock: function (M, offset) { + // Shortcut + var X = this._X; + + // Iterate the system + nextState.call(this); + + // Generate four keystream words + S[0] = X[0] ^ (X[5] >>> 16) ^ (X[3] << 16); + S[1] = X[2] ^ (X[7] >>> 16) ^ (X[5] << 16); + S[2] = X[4] ^ (X[1] >>> 16) ^ (X[7] << 16); + S[3] = X[6] ^ (X[3] >>> 16) ^ (X[1] << 16); + + for (var i = 0; i < 4; i++) { + // Swap endian + S[i] = (((S[i] << 8) | (S[i] >>> 24)) & 0x00ff00ff) | + (((S[i] << 24) | (S[i] >>> 8)) & 0xff00ff00); + + // Encrypt + M[offset + i] ^= S[i]; + } + }, + + blockSize: 128/32, + + ivSize: 64/32 + }); + + function nextState() { + // Shortcuts + var X = this._X; + var C = this._C; + + // Save old counter values + for (var i = 0; i < 8; i++) { + C_[i] = C[i]; + } + + // Calculate new counter values + C[0] = (C[0] + 0x4d34d34d + this._b) | 0; + C[1] = (C[1] + 0xd34d34d3 + ((C[0] >>> 0) < (C_[0] >>> 0) ? 1 : 0)) | 0; + C[2] = (C[2] + 0x34d34d34 + ((C[1] >>> 0) < (C_[1] >>> 0) ? 1 : 0)) | 0; + C[3] = (C[3] + 0x4d34d34d + ((C[2] >>> 0) < (C_[2] >>> 0) ? 1 : 0)) | 0; + C[4] = (C[4] + 0xd34d34d3 + ((C[3] >>> 0) < (C_[3] >>> 0) ? 1 : 0)) | 0; + C[5] = (C[5] + 0x34d34d34 + ((C[4] >>> 0) < (C_[4] >>> 0) ? 1 : 0)) | 0; + C[6] = (C[6] + 0x4d34d34d + ((C[5] >>> 0) < (C_[5] >>> 0) ? 1 : 0)) | 0; + C[7] = (C[7] + 0xd34d34d3 + ((C[6] >>> 0) < (C_[6] >>> 0) ? 1 : 0)) | 0; + this._b = (C[7] >>> 0) < (C_[7] >>> 0) ? 1 : 0; + + // Calculate the g-values + for (var i = 0; i < 8; i++) { + var gx = X[i] + C[i]; + + // Construct high and low argument for squaring + var ga = gx & 0xffff; + var gb = gx >>> 16; + + // Calculate high and low result of squaring + var gh = ((((ga * ga) >>> 17) + ga * gb) >>> 15) + gb * gb; + var gl = (((gx & 0xffff0000) * gx) | 0) + (((gx & 0x0000ffff) * gx) | 0); + + // High XOR low + G[i] = gh ^ gl; + } + + // Calculate new state values + X[0] = (G[0] + ((G[7] << 16) | (G[7] >>> 16)) + ((G[6] << 16) | (G[6] >>> 16))) | 0; + X[1] = (G[1] + ((G[0] << 8) | (G[0] >>> 24)) + G[7]) | 0; + X[2] = (G[2] + ((G[1] << 16) | (G[1] >>> 16)) + ((G[0] << 16) | (G[0] >>> 16))) | 0; + X[3] = (G[3] + ((G[2] << 8) | (G[2] >>> 24)) + G[1]) | 0; + X[4] = (G[4] + ((G[3] << 16) | (G[3] >>> 16)) + ((G[2] << 16) | (G[2] >>> 16))) | 0; + X[5] = (G[5] + ((G[4] << 8) | (G[4] >>> 24)) + G[3]) | 0; + X[6] = (G[6] + ((G[5] << 16) | (G[5] >>> 16)) + ((G[4] << 16) | (G[4] >>> 16))) | 0; + X[7] = (G[7] + ((G[6] << 8) | (G[6] >>> 24)) + G[5]) | 0; + } + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.RabbitLegacy.encrypt(message, key, cfg); + * var plaintext = CryptoJS.RabbitLegacy.decrypt(ciphertext, key, cfg); + */ + C.RabbitLegacy = StreamCipher._createHelper(RabbitLegacy); + }()); + + + return CryptoJS.RabbitLegacy; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./enc-base64":1734488773782,"./md5":1734488773784,"./evpkdf":1734488773794,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +__DEFINE__(1734488773812, function(require, module, exports) { +;(function (root, factory, undef) { + if (typeof exports === "object") { + // CommonJS + module.exports = exports = factory(require("./core"), require("./enc-base64"), require("./md5"), require("./evpkdf"), require("./cipher-core")); + } + else if (typeof define === "function" && define.amd) { + // AMD + define(["./core", "./enc-base64", "./md5", "./evpkdf", "./cipher-core"], factory); + } + else { + // Global (browser) + factory(root.CryptoJS); + } +}(this, function (CryptoJS) { + + (function () { + // Shortcuts + var C = CryptoJS; + var C_lib = C.lib; + var BlockCipher = C_lib.BlockCipher; + var C_algo = C.algo; + + const N = 16; + + //Origin pbox and sbox, derived from PI + const ORIG_P = [ + 0x243F6A88, 0x85A308D3, 0x13198A2E, 0x03707344, + 0xA4093822, 0x299F31D0, 0x082EFA98, 0xEC4E6C89, + 0x452821E6, 0x38D01377, 0xBE5466CF, 0x34E90C6C, + 0xC0AC29B7, 0xC97C50DD, 0x3F84D5B5, 0xB5470917, + 0x9216D5D9, 0x8979FB1B + ]; + + const ORIG_S = [ + [ 0xD1310BA6, 0x98DFB5AC, 0x2FFD72DB, 0xD01ADFB7, + 0xB8E1AFED, 0x6A267E96, 0xBA7C9045, 0xF12C7F99, + 0x24A19947, 0xB3916CF7, 0x0801F2E2, 0x858EFC16, + 0x636920D8, 0x71574E69, 0xA458FEA3, 0xF4933D7E, + 0x0D95748F, 0x728EB658, 0x718BCD58, 0x82154AEE, + 0x7B54A41D, 0xC25A59B5, 0x9C30D539, 0x2AF26013, + 0xC5D1B023, 0x286085F0, 0xCA417918, 0xB8DB38EF, + 0x8E79DCB0, 0x603A180E, 0x6C9E0E8B, 0xB01E8A3E, + 0xD71577C1, 0xBD314B27, 0x78AF2FDA, 0x55605C60, + 0xE65525F3, 0xAA55AB94, 0x57489862, 0x63E81440, + 0x55CA396A, 0x2AAB10B6, 0xB4CC5C34, 0x1141E8CE, + 0xA15486AF, 0x7C72E993, 0xB3EE1411, 0x636FBC2A, + 0x2BA9C55D, 0x741831F6, 0xCE5C3E16, 0x9B87931E, + 0xAFD6BA33, 0x6C24CF5C, 0x7A325381, 0x28958677, + 0x3B8F4898, 0x6B4BB9AF, 0xC4BFE81B, 0x66282193, + 0x61D809CC, 0xFB21A991, 0x487CAC60, 0x5DEC8032, + 0xEF845D5D, 0xE98575B1, 0xDC262302, 0xEB651B88, + 0x23893E81, 0xD396ACC5, 0x0F6D6FF3, 0x83F44239, + 0x2E0B4482, 0xA4842004, 0x69C8F04A, 0x9E1F9B5E, + 0x21C66842, 0xF6E96C9A, 0x670C9C61, 0xABD388F0, + 0x6A51A0D2, 0xD8542F68, 0x960FA728, 0xAB5133A3, + 0x6EEF0B6C, 0x137A3BE4, 0xBA3BF050, 0x7EFB2A98, + 0xA1F1651D, 0x39AF0176, 0x66CA593E, 0x82430E88, + 0x8CEE8619, 0x456F9FB4, 0x7D84A5C3, 0x3B8B5EBE, + 0xE06F75D8, 0x85C12073, 0x401A449F, 0x56C16AA6, + 0x4ED3AA62, 0x363F7706, 0x1BFEDF72, 0x429B023D, + 0x37D0D724, 0xD00A1248, 0xDB0FEAD3, 0x49F1C09B, + 0x075372C9, 0x80991B7B, 0x25D479D8, 0xF6E8DEF7, + 0xE3FE501A, 0xB6794C3B, 0x976CE0BD, 0x04C006BA, + 0xC1A94FB6, 0x409F60C4, 0x5E5C9EC2, 0x196A2463, + 0x68FB6FAF, 0x3E6C53B5, 0x1339B2EB, 0x3B52EC6F, + 0x6DFC511F, 0x9B30952C, 0xCC814544, 0xAF5EBD09, + 0xBEE3D004, 0xDE334AFD, 0x660F2807, 0x192E4BB3, + 0xC0CBA857, 0x45C8740F, 0xD20B5F39, 0xB9D3FBDB, + 0x5579C0BD, 0x1A60320A, 0xD6A100C6, 0x402C7279, + 0x679F25FE, 0xFB1FA3CC, 0x8EA5E9F8, 0xDB3222F8, + 0x3C7516DF, 0xFD616B15, 0x2F501EC8, 0xAD0552AB, + 0x323DB5FA, 0xFD238760, 0x53317B48, 0x3E00DF82, + 0x9E5C57BB, 0xCA6F8CA0, 0x1A87562E, 0xDF1769DB, + 0xD542A8F6, 0x287EFFC3, 0xAC6732C6, 0x8C4F5573, + 0x695B27B0, 0xBBCA58C8, 0xE1FFA35D, 0xB8F011A0, + 0x10FA3D98, 0xFD2183B8, 0x4AFCB56C, 0x2DD1D35B, + 0x9A53E479, 0xB6F84565, 0xD28E49BC, 0x4BFB9790, + 0xE1DDF2DA, 0xA4CB7E33, 0x62FB1341, 0xCEE4C6E8, + 0xEF20CADA, 0x36774C01, 0xD07E9EFE, 0x2BF11FB4, + 0x95DBDA4D, 0xAE909198, 0xEAAD8E71, 0x6B93D5A0, + 0xD08ED1D0, 0xAFC725E0, 0x8E3C5B2F, 0x8E7594B7, + 0x8FF6E2FB, 0xF2122B64, 0x8888B812, 0x900DF01C, + 0x4FAD5EA0, 0x688FC31C, 0xD1CFF191, 0xB3A8C1AD, + 0x2F2F2218, 0xBE0E1777, 0xEA752DFE, 0x8B021FA1, + 0xE5A0CC0F, 0xB56F74E8, 0x18ACF3D6, 0xCE89E299, + 0xB4A84FE0, 0xFD13E0B7, 0x7CC43B81, 0xD2ADA8D9, + 0x165FA266, 0x80957705, 0x93CC7314, 0x211A1477, + 0xE6AD2065, 0x77B5FA86, 0xC75442F5, 0xFB9D35CF, + 0xEBCDAF0C, 0x7B3E89A0, 0xD6411BD3, 0xAE1E7E49, + 0x00250E2D, 0x2071B35E, 0x226800BB, 0x57B8E0AF, + 0x2464369B, 0xF009B91E, 0x5563911D, 0x59DFA6AA, + 0x78C14389, 0xD95A537F, 0x207D5BA2, 0x02E5B9C5, + 0x83260376, 0x6295CFA9, 0x11C81968, 0x4E734A41, + 0xB3472DCA, 0x7B14A94A, 0x1B510052, 0x9A532915, + 0xD60F573F, 0xBC9BC6E4, 0x2B60A476, 0x81E67400, + 0x08BA6FB5, 0x571BE91F, 0xF296EC6B, 0x2A0DD915, + 0xB6636521, 0xE7B9F9B6, 0xFF34052E, 0xC5855664, + 0x53B02D5D, 0xA99F8FA1, 0x08BA4799, 0x6E85076A ], + [ 0x4B7A70E9, 0xB5B32944, 0xDB75092E, 0xC4192623, + 0xAD6EA6B0, 0x49A7DF7D, 0x9CEE60B8, 0x8FEDB266, + 0xECAA8C71, 0x699A17FF, 0x5664526C, 0xC2B19EE1, + 0x193602A5, 0x75094C29, 0xA0591340, 0xE4183A3E, + 0x3F54989A, 0x5B429D65, 0x6B8FE4D6, 0x99F73FD6, + 0xA1D29C07, 0xEFE830F5, 0x4D2D38E6, 0xF0255DC1, + 0x4CDD2086, 0x8470EB26, 0x6382E9C6, 0x021ECC5E, + 0x09686B3F, 0x3EBAEFC9, 0x3C971814, 0x6B6A70A1, + 0x687F3584, 0x52A0E286, 0xB79C5305, 0xAA500737, + 0x3E07841C, 0x7FDEAE5C, 0x8E7D44EC, 0x5716F2B8, + 0xB03ADA37, 0xF0500C0D, 0xF01C1F04, 0x0200B3FF, + 0xAE0CF51A, 0x3CB574B2, 0x25837A58, 0xDC0921BD, + 0xD19113F9, 0x7CA92FF6, 0x94324773, 0x22F54701, + 0x3AE5E581, 0x37C2DADC, 0xC8B57634, 0x9AF3DDA7, + 0xA9446146, 0x0FD0030E, 0xECC8C73E, 0xA4751E41, + 0xE238CD99, 0x3BEA0E2F, 0x3280BBA1, 0x183EB331, + 0x4E548B38, 0x4F6DB908, 0x6F420D03, 0xF60A04BF, + 0x2CB81290, 0x24977C79, 0x5679B072, 0xBCAF89AF, + 0xDE9A771F, 0xD9930810, 0xB38BAE12, 0xDCCF3F2E, + 0x5512721F, 0x2E6B7124, 0x501ADDE6, 0x9F84CD87, + 0x7A584718, 0x7408DA17, 0xBC9F9ABC, 0xE94B7D8C, + 0xEC7AEC3A, 0xDB851DFA, 0x63094366, 0xC464C3D2, + 0xEF1C1847, 0x3215D908, 0xDD433B37, 0x24C2BA16, + 0x12A14D43, 0x2A65C451, 0x50940002, 0x133AE4DD, + 0x71DFF89E, 0x10314E55, 0x81AC77D6, 0x5F11199B, + 0x043556F1, 0xD7A3C76B, 0x3C11183B, 0x5924A509, + 0xF28FE6ED, 0x97F1FBFA, 0x9EBABF2C, 0x1E153C6E, + 0x86E34570, 0xEAE96FB1, 0x860E5E0A, 0x5A3E2AB3, + 0x771FE71C, 0x4E3D06FA, 0x2965DCB9, 0x99E71D0F, + 0x803E89D6, 0x5266C825, 0x2E4CC978, 0x9C10B36A, + 0xC6150EBA, 0x94E2EA78, 0xA5FC3C53, 0x1E0A2DF4, + 0xF2F74EA7, 0x361D2B3D, 0x1939260F, 0x19C27960, + 0x5223A708, 0xF71312B6, 0xEBADFE6E, 0xEAC31F66, + 0xE3BC4595, 0xA67BC883, 0xB17F37D1, 0x018CFF28, + 0xC332DDEF, 0xBE6C5AA5, 0x65582185, 0x68AB9802, + 0xEECEA50F, 0xDB2F953B, 0x2AEF7DAD, 0x5B6E2F84, + 0x1521B628, 0x29076170, 0xECDD4775, 0x619F1510, + 0x13CCA830, 0xEB61BD96, 0x0334FE1E, 0xAA0363CF, + 0xB5735C90, 0x4C70A239, 0xD59E9E0B, 0xCBAADE14, + 0xEECC86BC, 0x60622CA7, 0x9CAB5CAB, 0xB2F3846E, + 0x648B1EAF, 0x19BDF0CA, 0xA02369B9, 0x655ABB50, + 0x40685A32, 0x3C2AB4B3, 0x319EE9D5, 0xC021B8F7, + 0x9B540B19, 0x875FA099, 0x95F7997E, 0x623D7DA8, + 0xF837889A, 0x97E32D77, 0x11ED935F, 0x16681281, + 0x0E358829, 0xC7E61FD6, 0x96DEDFA1, 0x7858BA99, + 0x57F584A5, 0x1B227263, 0x9B83C3FF, 0x1AC24696, + 0xCDB30AEB, 0x532E3054, 0x8FD948E4, 0x6DBC3128, + 0x58EBF2EF, 0x34C6FFEA, 0xFE28ED61, 0xEE7C3C73, + 0x5D4A14D9, 0xE864B7E3, 0x42105D14, 0x203E13E0, + 0x45EEE2B6, 0xA3AAABEA, 0xDB6C4F15, 0xFACB4FD0, + 0xC742F442, 0xEF6ABBB5, 0x654F3B1D, 0x41CD2105, + 0xD81E799E, 0x86854DC7, 0xE44B476A, 0x3D816250, + 0xCF62A1F2, 0x5B8D2646, 0xFC8883A0, 0xC1C7B6A3, + 0x7F1524C3, 0x69CB7492, 0x47848A0B, 0x5692B285, + 0x095BBF00, 0xAD19489D, 0x1462B174, 0x23820E00, + 0x58428D2A, 0x0C55F5EA, 0x1DADF43E, 0x233F7061, + 0x3372F092, 0x8D937E41, 0xD65FECF1, 0x6C223BDB, + 0x7CDE3759, 0xCBEE7460, 0x4085F2A7, 0xCE77326E, + 0xA6078084, 0x19F8509E, 0xE8EFD855, 0x61D99735, + 0xA969A7AA, 0xC50C06C2, 0x5A04ABFC, 0x800BCADC, + 0x9E447A2E, 0xC3453484, 0xFDD56705, 0x0E1E9EC9, + 0xDB73DBD3, 0x105588CD, 0x675FDA79, 0xE3674340, + 0xC5C43465, 0x713E38D8, 0x3D28F89E, 0xF16DFF20, + 0x153E21E7, 0x8FB03D4A, 0xE6E39F2B, 0xDB83ADF7 ], + [ 0xE93D5A68, 0x948140F7, 0xF64C261C, 0x94692934, + 0x411520F7, 0x7602D4F7, 0xBCF46B2E, 0xD4A20068, + 0xD4082471, 0x3320F46A, 0x43B7D4B7, 0x500061AF, + 0x1E39F62E, 0x97244546, 0x14214F74, 0xBF8B8840, + 0x4D95FC1D, 0x96B591AF, 0x70F4DDD3, 0x66A02F45, + 0xBFBC09EC, 0x03BD9785, 0x7FAC6DD0, 0x31CB8504, + 0x96EB27B3, 0x55FD3941, 0xDA2547E6, 0xABCA0A9A, + 0x28507825, 0x530429F4, 0x0A2C86DA, 0xE9B66DFB, + 0x68DC1462, 0xD7486900, 0x680EC0A4, 0x27A18DEE, + 0x4F3FFEA2, 0xE887AD8C, 0xB58CE006, 0x7AF4D6B6, + 0xAACE1E7C, 0xD3375FEC, 0xCE78A399, 0x406B2A42, + 0x20FE9E35, 0xD9F385B9, 0xEE39D7AB, 0x3B124E8B, + 0x1DC9FAF7, 0x4B6D1856, 0x26A36631, 0xEAE397B2, + 0x3A6EFA74, 0xDD5B4332, 0x6841E7F7, 0xCA7820FB, + 0xFB0AF54E, 0xD8FEB397, 0x454056AC, 0xBA489527, + 0x55533A3A, 0x20838D87, 0xFE6BA9B7, 0xD096954B, + 0x55A867BC, 0xA1159A58, 0xCCA92963, 0x99E1DB33, + 0xA62A4A56, 0x3F3125F9, 0x5EF47E1C, 0x9029317C, + 0xFDF8E802, 0x04272F70, 0x80BB155C, 0x05282CE3, + 0x95C11548, 0xE4C66D22, 0x48C1133F, 0xC70F86DC, + 0x07F9C9EE, 0x41041F0F, 0x404779A4, 0x5D886E17, + 0x325F51EB, 0xD59BC0D1, 0xF2BCC18F, 0x41113564, + 0x257B7834, 0x602A9C60, 0xDFF8E8A3, 0x1F636C1B, + 0x0E12B4C2, 0x02E1329E, 0xAF664FD1, 0xCAD18115, + 0x6B2395E0, 0x333E92E1, 0x3B240B62, 0xEEBEB922, + 0x85B2A20E, 0xE6BA0D99, 0xDE720C8C, 0x2DA2F728, + 0xD0127845, 0x95B794FD, 0x647D0862, 0xE7CCF5F0, + 0x5449A36F, 0x877D48FA, 0xC39DFD27, 0xF33E8D1E, + 0x0A476341, 0x992EFF74, 0x3A6F6EAB, 0xF4F8FD37, + 0xA812DC60, 0xA1EBDDF8, 0x991BE14C, 0xDB6E6B0D, + 0xC67B5510, 0x6D672C37, 0x2765D43B, 0xDCD0E804, + 0xF1290DC7, 0xCC00FFA3, 0xB5390F92, 0x690FED0B, + 0x667B9FFB, 0xCEDB7D9C, 0xA091CF0B, 0xD9155EA3, + 0xBB132F88, 0x515BAD24, 0x7B9479BF, 0x763BD6EB, + 0x37392EB3, 0xCC115979, 0x8026E297, 0xF42E312D, + 0x6842ADA7, 0xC66A2B3B, 0x12754CCC, 0x782EF11C, + 0x6A124237, 0xB79251E7, 0x06A1BBE6, 0x4BFB6350, + 0x1A6B1018, 0x11CAEDFA, 0x3D25BDD8, 0xE2E1C3C9, + 0x44421659, 0x0A121386, 0xD90CEC6E, 0xD5ABEA2A, + 0x64AF674E, 0xDA86A85F, 0xBEBFE988, 0x64E4C3FE, + 0x9DBC8057, 0xF0F7C086, 0x60787BF8, 0x6003604D, + 0xD1FD8346, 0xF6381FB0, 0x7745AE04, 0xD736FCCC, + 0x83426B33, 0xF01EAB71, 0xB0804187, 0x3C005E5F, + 0x77A057BE, 0xBDE8AE24, 0x55464299, 0xBF582E61, + 0x4E58F48F, 0xF2DDFDA2, 0xF474EF38, 0x8789BDC2, + 0x5366F9C3, 0xC8B38E74, 0xB475F255, 0x46FCD9B9, + 0x7AEB2661, 0x8B1DDF84, 0x846A0E79, 0x915F95E2, + 0x466E598E, 0x20B45770, 0x8CD55591, 0xC902DE4C, + 0xB90BACE1, 0xBB8205D0, 0x11A86248, 0x7574A99E, + 0xB77F19B6, 0xE0A9DC09, 0x662D09A1, 0xC4324633, + 0xE85A1F02, 0x09F0BE8C, 0x4A99A025, 0x1D6EFE10, + 0x1AB93D1D, 0x0BA5A4DF, 0xA186F20F, 0x2868F169, + 0xDCB7DA83, 0x573906FE, 0xA1E2CE9B, 0x4FCD7F52, + 0x50115E01, 0xA70683FA, 0xA002B5C4, 0x0DE6D027, + 0x9AF88C27, 0x773F8641, 0xC3604C06, 0x61A806B5, + 0xF0177A28, 0xC0F586E0, 0x006058AA, 0x30DC7D62, + 0x11E69ED7, 0x2338EA63, 0x53C2DD94, 0xC2C21634, + 0xBBCBEE56, 0x90BCB6DE, 0xEBFC7DA1, 0xCE591D76, + 0x6F05E409, 0x4B7C0188, 0x39720A3D, 0x7C927C24, + 0x86E3725F, 0x724D9DB9, 0x1AC15BB4, 0xD39EB8FC, + 0xED545578, 0x08FCA5B5, 0xD83D7CD3, 0x4DAD0FC4, + 0x1E50EF5E, 0xB161E6F8, 0xA28514D9, 0x6C51133C, + 0x6FD5C7E7, 0x56E14EC4, 0x362ABFCE, 0xDDC6C837, + 0xD79A3234, 0x92638212, 0x670EFA8E, 0x406000E0 ], + [ 0x3A39CE37, 0xD3FAF5CF, 0xABC27737, 0x5AC52D1B, + 0x5CB0679E, 0x4FA33742, 0xD3822740, 0x99BC9BBE, + 0xD5118E9D, 0xBF0F7315, 0xD62D1C7E, 0xC700C47B, + 0xB78C1B6B, 0x21A19045, 0xB26EB1BE, 0x6A366EB4, + 0x5748AB2F, 0xBC946E79, 0xC6A376D2, 0x6549C2C8, + 0x530FF8EE, 0x468DDE7D, 0xD5730A1D, 0x4CD04DC6, + 0x2939BBDB, 0xA9BA4650, 0xAC9526E8, 0xBE5EE304, + 0xA1FAD5F0, 0x6A2D519A, 0x63EF8CE2, 0x9A86EE22, + 0xC089C2B8, 0x43242EF6, 0xA51E03AA, 0x9CF2D0A4, + 0x83C061BA, 0x9BE96A4D, 0x8FE51550, 0xBA645BD6, + 0x2826A2F9, 0xA73A3AE1, 0x4BA99586, 0xEF5562E9, + 0xC72FEFD3, 0xF752F7DA, 0x3F046F69, 0x77FA0A59, + 0x80E4A915, 0x87B08601, 0x9B09E6AD, 0x3B3EE593, + 0xE990FD5A, 0x9E34D797, 0x2CF0B7D9, 0x022B8B51, + 0x96D5AC3A, 0x017DA67D, 0xD1CF3ED6, 0x7C7D2D28, + 0x1F9F25CF, 0xADF2B89B, 0x5AD6B472, 0x5A88F54C, + 0xE029AC71, 0xE019A5E6, 0x47B0ACFD, 0xED93FA9B, + 0xE8D3C48D, 0x283B57CC, 0xF8D56629, 0x79132E28, + 0x785F0191, 0xED756055, 0xF7960E44, 0xE3D35E8C, + 0x15056DD4, 0x88F46DBA, 0x03A16125, 0x0564F0BD, + 0xC3EB9E15, 0x3C9057A2, 0x97271AEC, 0xA93A072A, + 0x1B3F6D9B, 0x1E6321F5, 0xF59C66FB, 0x26DCF319, + 0x7533D928, 0xB155FDF5, 0x03563482, 0x8ABA3CBB, + 0x28517711, 0xC20AD9F8, 0xABCC5167, 0xCCAD925F, + 0x4DE81751, 0x3830DC8E, 0x379D5862, 0x9320F991, + 0xEA7A90C2, 0xFB3E7BCE, 0x5121CE64, 0x774FBE32, + 0xA8B6E37E, 0xC3293D46, 0x48DE5369, 0x6413E680, + 0xA2AE0810, 0xDD6DB224, 0x69852DFD, 0x09072166, + 0xB39A460A, 0x6445C0DD, 0x586CDECF, 0x1C20C8AE, + 0x5BBEF7DD, 0x1B588D40, 0xCCD2017F, 0x6BB4E3BB, + 0xDDA26A7E, 0x3A59FF45, 0x3E350A44, 0xBCB4CDD5, + 0x72EACEA8, 0xFA6484BB, 0x8D6612AE, 0xBF3C6F47, + 0xD29BE463, 0x542F5D9E, 0xAEC2771B, 0xF64E6370, + 0x740E0D8D, 0xE75B1357, 0xF8721671, 0xAF537D5D, + 0x4040CB08, 0x4EB4E2CC, 0x34D2466A, 0x0115AF84, + 0xE1B00428, 0x95983A1D, 0x06B89FB4, 0xCE6EA048, + 0x6F3F3B82, 0x3520AB82, 0x011A1D4B, 0x277227F8, + 0x611560B1, 0xE7933FDC, 0xBB3A792B, 0x344525BD, + 0xA08839E1, 0x51CE794B, 0x2F32C9B7, 0xA01FBAC9, + 0xE01CC87E, 0xBCC7D1F6, 0xCF0111C3, 0xA1E8AAC7, + 0x1A908749, 0xD44FBD9A, 0xD0DADECB, 0xD50ADA38, + 0x0339C32A, 0xC6913667, 0x8DF9317C, 0xE0B12B4F, + 0xF79E59B7, 0x43F5BB3A, 0xF2D519FF, 0x27D9459C, + 0xBF97222C, 0x15E6FC2A, 0x0F91FC71, 0x9B941525, + 0xFAE59361, 0xCEB69CEB, 0xC2A86459, 0x12BAA8D1, + 0xB6C1075E, 0xE3056A0C, 0x10D25065, 0xCB03A442, + 0xE0EC6E0E, 0x1698DB3B, 0x4C98A0BE, 0x3278E964, + 0x9F1F9532, 0xE0D392DF, 0xD3A0342B, 0x8971F21E, + 0x1B0A7441, 0x4BA3348C, 0xC5BE7120, 0xC37632D8, + 0xDF359F8D, 0x9B992F2E, 0xE60B6F47, 0x0FE3F11D, + 0xE54CDA54, 0x1EDAD891, 0xCE6279CF, 0xCD3E7E6F, + 0x1618B166, 0xFD2C1D05, 0x848FD2C5, 0xF6FB2299, + 0xF523F357, 0xA6327623, 0x93A83531, 0x56CCCD02, + 0xACF08162, 0x5A75EBB5, 0x6E163697, 0x88D273CC, + 0xDE966292, 0x81B949D0, 0x4C50901B, 0x71C65614, + 0xE6C6C7BD, 0x327A140A, 0x45E1D006, 0xC3F27B9A, + 0xC9AA53FD, 0x62A80F00, 0xBB25BFE2, 0x35BDD2F6, + 0x71126905, 0xB2040222, 0xB6CBCF7C, 0xCD769C2B, + 0x53113EC0, 0x1640E3D3, 0x38ABBD60, 0x2547ADF0, + 0xBA38209C, 0xF746CE76, 0x77AFA1C5, 0x20756060, + 0x85CBFE4E, 0x8AE88DD8, 0x7AAAF9B0, 0x4CF9AA7E, + 0x1948C25C, 0x02FB8A8C, 0x01C36AE4, 0xD6EBE1F9, + 0x90D4F869, 0xA65CDEA0, 0x3F09252D, 0xC208E69F, + 0xB74E6132, 0xCE77E25B, 0x578FDFE3, 0x3AC372E6 ] + ]; + + var BLOWFISH_CTX = { + pbox: [], + sbox: [] + } + + function F(ctx, x){ + let a = (x >> 24) & 0xFF; + let b = (x >> 16) & 0xFF; + let c = (x >> 8) & 0xFF; + let d = x & 0xFF; + + let y = ctx.sbox[0][a] + ctx.sbox[1][b]; + y = y ^ ctx.sbox[2][c]; + y = y + ctx.sbox[3][d]; + + return y; + } + + function BlowFish_Encrypt(ctx, left, right){ + let Xl = left; + let Xr = right; + let temp; + + for(let i = 0; i < N; ++i){ + Xl = Xl ^ ctx.pbox[i]; + Xr = F(ctx, Xl) ^ Xr; + + temp = Xl; + Xl = Xr; + Xr = temp; + } + + temp = Xl; + Xl = Xr; + Xr = temp; + + Xr = Xr ^ ctx.pbox[N]; + Xl = Xl ^ ctx.pbox[N + 1]; + + return {left: Xl, right: Xr}; + } + + function BlowFish_Decrypt(ctx, left, right){ + let Xl = left; + let Xr = right; + let temp; + + for(let i = N + 1; i > 1; --i){ + Xl = Xl ^ ctx.pbox[i]; + Xr = F(ctx, Xl) ^ Xr; + + temp = Xl; + Xl = Xr; + Xr = temp; + } + + temp = Xl; + Xl = Xr; + Xr = temp; + + Xr = Xr ^ ctx.pbox[1]; + Xl = Xl ^ ctx.pbox[0]; + + return {left: Xl, right: Xr}; + } + + /** + * Initialization ctx's pbox and sbox. + * + * @param {Object} ctx The object has pbox and sbox. + * @param {Array} key An array of 32-bit words. + * @param {int} keysize The length of the key. + * + * @example + * + * BlowFishInit(BLOWFISH_CTX, key, 128/32); + */ + function BlowFishInit(ctx, key, keysize) + { + for(let Row = 0; Row < 4; Row++) + { + ctx.sbox[Row] = []; + for(let Col = 0; Col < 256; Col++) + { + ctx.sbox[Row][Col] = ORIG_S[Row][Col]; + } + } + + let keyIndex = 0; + for(let index = 0; index < N + 2; index++) + { + ctx.pbox[index] = ORIG_P[index] ^ key[keyIndex]; + keyIndex++; + if(keyIndex >= keysize) + { + keyIndex = 0; + } + } + + let Data1 = 0; + let Data2 = 0; + let res = 0; + for(let i = 0; i < N + 2; i += 2) + { + res = BlowFish_Encrypt(ctx, Data1, Data2); + Data1 = res.left; + Data2 = res.right; + ctx.pbox[i] = Data1; + ctx.pbox[i + 1] = Data2; + } + + for(let i = 0; i < 4; i++) + { + for(let j = 0; j < 256; j += 2) + { + res = BlowFish_Encrypt(ctx, Data1, Data2); + Data1 = res.left; + Data2 = res.right; + ctx.sbox[i][j] = Data1; + ctx.sbox[i][j + 1] = Data2; + } + } + + return true; + } + + /** + * Blowfish block cipher algorithm. + */ + var Blowfish = C_algo.Blowfish = BlockCipher.extend({ + _doReset: function () { + // Skip reset of nRounds has been set before and key did not change + if (this._keyPriorReset === this._key) { + return; + } + + // Shortcuts + var key = this._keyPriorReset = this._key; + var keyWords = key.words; + var keySize = key.sigBytes / 4; + + //Initialization pbox and sbox + BlowFishInit(BLOWFISH_CTX, keyWords, keySize); + }, + + encryptBlock: function (M, offset) { + var res = BlowFish_Encrypt(BLOWFISH_CTX, M[offset], M[offset + 1]); + M[offset] = res.left; + M[offset + 1] = res.right; + }, + + decryptBlock: function (M, offset) { + var res = BlowFish_Decrypt(BLOWFISH_CTX, M[offset], M[offset + 1]); + M[offset] = res.left; + M[offset + 1] = res.right; + }, + + blockSize: 64/32, + + keySize: 128/32, + + ivSize: 64/32 + }); + + /** + * Shortcut functions to the cipher's object interface. + * + * @example + * + * var ciphertext = CryptoJS.Blowfish.encrypt(message, key, cfg); + * var plaintext = CryptoJS.Blowfish.decrypt(ciphertext, key, cfg); + */ + C.Blowfish = BlockCipher._createHelper(Blowfish); + }()); + + + return CryptoJS.Blowfish; + +})); +}, function(modId) { var map = {"./core":1734488773778,"./enc-base64":1734488773782,"./md5":1734488773784,"./evpkdf":1734488773794,"./cipher-core":1734488773795}; return __REQUIRE__(map[modId], modId); }) +return __REQUIRE__(1734488773777); +})() +//miniprogram-npm-outsideDeps=["crypto"] +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/src/miniprogram_npm/dayjs/index.js b/src/miniprogram_npm/dayjs/index.js new file mode 100644 index 0000000..686cb50 --- /dev/null +++ b/src/miniprogram_npm/dayjs/index.js @@ -0,0 +1,13 @@ +module.exports = (function() { +var __MODS__ = {}; +var __DEFINE__ = function(modId, func, req) { var m = { exports: {}, _tempexports: {} }; __MODS__[modId] = { status: 0, func: func, req: req, m: m }; }; +var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; }; +var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } }; +var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; }; +__DEFINE__(1734488773813, function(require, module, exports) { +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",c="month",f="quarter",h="year",d="date",l="Invalid Date",$=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return+(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},g="en",D={};D[g]=M;var p="$isDayjsObject",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if("string"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split("-");if(!i&&u.length>1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate("s"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v="set"+(this.$u?"UTC":"");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+"Hours",0);case u:return $(v+"Minutes",1);case s:return $(v+"Seconds",2);case i:return $(v+"Milliseconds",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=b.p(t),f="set"+(this.$u?"UTC":""),l=(n={},n[a]=f+"Date",n[d]=f+"Date",n[c]=f+"Month",n[h]=f+"FullYear",n[u]=f+"Hours",n[s]=f+"Minutes",n[i]=f+"Seconds",n[r]=f+"Milliseconds",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||"YYYY-MM-DDTHH:mm:ssZ",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,"0")},$=f||function(t,e,n){var r=t<12?"AM":"PM";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case"YY":return String(e.$y).slice(-2);case"YYYY":return b.s(e.$y,4,"0");case"M":return a+1;case"MM":return b.s(a+1,2,"0");case"MMM":return h(n.monthsShort,a,c,3);case"MMMM":return h(c,a);case"D":return e.$D;case"DD":return b.s(e.$D,2,"0");case"d":return String(e.$W);case"dd":return h(n.weekdaysMin,e.$W,o,2);case"ddd":return h(n.weekdaysShort,e.$W,o,3);case"dddd":return o[e.$W];case"H":return String(s);case"HH":return b.s(s,2,"0");case"h":return d(1);case"hh":return d(2);case"a":return $(s,u,!0);case"A":return $(s,u,!1);case"m":return String(u);case"mm":return b.s(u,2,"0");case"s":return String(e.$s);case"ss":return b.s(e.$s,2,"0");case"SSS":return b.s(e.$ms,3,"0");case"Z":return i}return null}(t)||i.replace(":","")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[["$ms",r],["$s",i],["$m",s],["$H",u],["$W",a],["$M",c],["$y",h],["$D",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=!0),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O})); +}, function(modId) {var map = {}; return __REQUIRE__(map[modId], modId); }) +return __REQUIRE__(1734488773813); +})() +//miniprogram-npm-outsideDeps=[] +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/src/miniprogram_npm/dayjs/index.js.map b/src/miniprogram_npm/dayjs/index.js.map new file mode 100644 index 0000000..39f5702 --- /dev/null +++ b/src/miniprogram_npm/dayjs/index.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["dayjs.min.js"],"names":[],"mappings":";;;;;;;AAAA","file":"index.js","sourcesContent":["!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return+(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||\"\").toLowerCase().replace(/s$/,\"\")},u:function(t){return void 0===t}},g=\"en\",D={};D[g]=M;var p=\"$isDayjsObject\",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if(\"string\"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split(\"-\");if(!i&&u.length>1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate(\"s\"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v=\"set\"+(this.$u?\"UTC\":\"\");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+\"Hours\",0);case u:return $(v+\"Minutes\",1);case s:return $(v+\"Seconds\",2);case i:return $(v+\"Milliseconds\",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=b.p(t),f=\"set\"+(this.$u?\"UTC\":\"\"),l=(n={},n[a]=f+\"Date\",n[d]=f+\"Date\",n[c]=f+\"Month\",n[h]=f+\"FullYear\",n[u]=f+\"Hours\",n[s]=f+\"Minutes\",n[i]=f+\"Seconds\",n[r]=f+\"Milliseconds\",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||\"YYYY-MM-DDTHH:mm:ssZ\",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,\"0\")},$=f||function(t,e,n){var r=t<12?\"AM\":\"PM\";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case\"YY\":return String(e.$y).slice(-2);case\"YYYY\":return b.s(e.$y,4,\"0\");case\"M\":return a+1;case\"MM\":return b.s(a+1,2,\"0\");case\"MMM\":return h(n.monthsShort,a,c,3);case\"MMMM\":return h(c,a);case\"D\":return e.$D;case\"DD\":return b.s(e.$D,2,\"0\");case\"d\":return String(e.$W);case\"dd\":return h(n.weekdaysMin,e.$W,o,2);case\"ddd\":return h(n.weekdaysShort,e.$W,o,3);case\"dddd\":return o[e.$W];case\"H\":return String(s);case\"HH\":return b.s(s,2,\"0\");case\"h\":return d(1);case\"hh\":return d(2);case\"a\":return $(s,u,!0);case\"A\":return $(s,u,!1);case\"m\":return String(u);case\"mm\":return b.s(u,2,\"0\");case\"s\":return String(e.$s);case\"ss\":return b.s(e.$s,2,\"0\");case\"SSS\":return b.s(e.$ms,3,\"0\");case\"Z\":return i}return null}(t)||i.replace(\":\",\"\")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[[\"$ms\",r],[\"$s\",i],[\"$m\",s],[\"$H\",u],[\"$W\",a],[\"$M\",c],[\"$y\",h],[\"$D\",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=!0),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O}));"]} \ No newline at end of file diff --git a/src/miniprogram_npm/miniprogram-licia/Benchmark.js b/src/miniprogram_npm/miniprogram-licia/Benchmark.js new file mode 100644 index 0000000..5e3e5ee --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Benchmark.js @@ -0,0 +1,244 @@ +var Class = require('./Class'); +var defaults = require('./defaults'); +var Promise = require('./Promise'); +var perfNow = require('./perfNow'); +var delay = require('./delay'); +var average = require('./average'); +var reduce = require('./reduce'); +var each = require('./each'); +var map = require('./map'); +var table = require('./table'); +var toStr = require('./toStr'); +exports = Class( + { + initialize: function Benchmark(fn) { + var options = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : {}; + defaults(options, defOpts); + this._fn = fn; + this._isRunning = false; + this._options = options; + }, + run: function() { + var _this = this; + if (this._isRunning) { + return this._pendingPromise; + } + this._reset(); + this._isRunning = true; + var options = this._options; + var pendingPromise = new Promise(function(resolve, reject) { + var runSample = function() { + var initCount = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : 1; + delay(function() { + _this + ._runSample(initCount) + .then(function(_ref) { + var period = _ref.period, + count = _ref.count; + var sample = _this._sample; + sample.push(period); + if ( + perfNow() - _this._timeStamp < + options.maxTime || + sample.length < options.minSamples + ) { + runSample(count); + } else { + resolve(_this._calcResult()); + } + }) + .catch(function(err) { + reject(err); + }); + }, options.delay); + }; + runSample(); + }); + function complete() { + this._isRunning = false; + delete this._pendingPromise; + } + pendingPromise.then(complete).catch(complete); + this._pendingPromise = pendingPromise; + return pendingPromise; + }, + _reset: function() { + this._timeStamp = perfNow(); + this._sample = []; + }, + _calcResult: function() { + var sample = this._sample; + var result = { + sample: sample, + toString: function() { + var hz = this.hz, + rme = this.rme, + name = this.name; + var size = this.sample.length; + return '' + .concat(name, ' x ') + .concat( + formatNumber(hz.toFixed(hz < 100 ? 2 : 0)), + ' ops/sec \xB1' + ) + .concat(rme.toFixed(2), '% (') + .concat(size, ' run') + .concat(size === 1 ? '' : 's', ' sampled)'); + } + }; + var size = sample.length; + result.name = this._options.name || this._fn.name || 'anonymous'; + result.mean = average.apply(null, sample); + function varOf(sum, x) { + return sum + Math.pow(x - result.mean, 2); + } + result.variance = reduce(sample, varOf, 0) / (size - 1) || 0; + result.deviation = Math.sqrt(result.variance); + result.sem = result.deviation / Math.sqrt(size); + var critical = tTable[Math.round(size - 1) || 1] || tTable.infinity; + result.moe = result.sem * critical; + result.rme = (result.moe / result.mean) * 100 || 0; + result.hz = 1000 / result.mean; + return result; + }, + _runSample: function(count) { + var _this2 = this; + var options = this._options; + var minTime = options.minTime; + return new Promise(function(resolve, reject) { + var runCycle = function(count) { + delay(function() { + var elapsed = 0; + try { + elapsed = _this2._runCycle(count); + } catch (e) { + return reject(e); + } + var period = elapsed / count; + if (elapsed < minTime) { + if (elapsed === 0) { + count *= 100; + } else { + count += Math.ceil( + (minTime - elapsed) / period + ); + } + runCycle(count); + } else { + resolve({ + count: count, + period: period + }); + } + }, options.delay); + }; + runCycle(count); + }); + }, + _runCycle: function(count) { + var fn = this._fn; + var now = perfNow(); + while (count--) { + fn(); + } + return perfNow() - now; + } + }, + { + all: function(benches, options) { + var promises = []; + each(benches, function(bench) { + if (!(bench instanceof exports)) { + bench = new exports(bench, options); + } + promises.push(bench.run()); + }); + return Promise.all(promises).then(function(results) { + results.toString = function() { + var data = map(results, function(_ref2, idx) { + var name = _ref2.name, + sample = _ref2.sample, + hz = _ref2.hz, + rme = _ref2.rme; + var columns = []; + var size = sample.length; + columns.push( + toStr(idx + 1), + name || 'anonymous', + formatNumber(hz.toFixed(hz < 100 ? 2 : 0)), + '\xB1'.concat(rme.toFixed(2), '%'), + '' + .concat(size, ' run') + .concat(size === 1 ? '' : 's') + ); + return columns; + }); + data.unshift([ + 'index', + 'name', + 'ops/sec', + 'rme', + 'sampled' + ]); + return table(data); + }; + return results; + }); + } + } +); +var defOpts = { + minTime: 50, + maxTime: 5000, + minSamples: 5, + delay: 5, + name: '' +}; +var tTable = { + '1': 12.706, + '2': 4.303, + '3': 3.182, + '4': 2.776, + '5': 2.571, + '6': 2.447, + '7': 2.365, + '8': 2.306, + '9': 2.262, + '10': 2.228, + '11': 2.201, + '12': 2.179, + '13': 2.16, + '14': 2.145, + '15': 2.131, + '16': 2.12, + '17': 2.11, + '18': 2.101, + '19': 2.093, + '20': 2.086, + '21': 2.08, + '22': 2.074, + '23': 2.069, + '24': 2.064, + '25': 2.06, + '26': 2.056, + '27': 2.052, + '28': 2.048, + '29': 2.045, + '30': 2.042, + infinity: 1.96 +}; +function formatNumber(number) { + number = String(number).split('.'); + return ( + number[0].replace(/(?=(?:\d{3})+$)(?!\b)/g, ',') + + (number[1] ? '.' + number[1] : '') + ); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/BloomFilter.js b/src/miniprogram_npm/miniprogram-licia/BloomFilter.js new file mode 100644 index 0000000..c65c8d6 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/BloomFilter.js @@ -0,0 +1,46 @@ +var Class = require('./Class'); +var fill = require('./fill'); +var fnv1a = require('./fnv1a'); +var strHash = require('./strHash'); +var each = require('./each'); +var some = require('./some'); +exports = Class({ + initialize: function() { + var size = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : 1024; + var k = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : 3; + this._buckets = fill(new Array(size), 0); + this._k = k; + this._size = size; + }, + add: function(val) { + var _this = this; + each(this._locations(val), function(location) { + return (_this._buckets[location] = 1); + }); + }, + test: function(val) { + var _this2 = this; + return !some(this._locations(val), function(location) { + return _this2._buckets[location] === 0; + }); + }, + _locations: function(val) { + var ret = []; + var size = this._size; + var a = fnv1a(val); + var b = strHash(val); + + for (var i = 0; i < this._k; i++) { + ret[i] = (a + b * i) % size; + } + return ret; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Caseless.js b/src/miniprogram_npm/miniprogram-licia/Caseless.js new file mode 100644 index 0000000..d2ae6f8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Caseless.js @@ -0,0 +1,35 @@ +var Class = require('./Class'); +var lowerCase = require('./lowerCase'); +var keys = require('./keys'); +exports = Class({ + initialize: function(obj) { + this._target = obj; + }, + set: function(key, val) { + var name = this.getKey(key); + if (name) key = name; + this._target[key] = val; + }, + get: function(key) { + key = this.getKey(key); + if (key) { + return this._target[key]; + } + }, + getKey: function(key) { + var name = lowerCase(key); + var _keys = keys(this._target); + for (var i = 0, len = _keys.length; i < len; i++) { + var _key = _keys[i]; + if (lowerCase(_key) === name) return _key; + } + }, + remove: function(key) { + delete this._target[this.getKey(key)]; + }, + has: function(key) { + return !!this.getKey(key); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Channel.js b/src/miniprogram_npm/miniprogram-licia/Channel.js new file mode 100644 index 0000000..97de876 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Channel.js @@ -0,0 +1,48 @@ +var Emitter = require('./Emitter'); +var each = require('./each'); +var remove = require('./remove'); +var some = require('./some'); +exports = Emitter.extend({ + initialize: function Channel() { + this._connections = []; + this.callSuper(Emitter, 'initialize'); + }, + send: function(msg) { + var _this = this; + each(this._connections, function(connection) { + connection.emit('message', msg, _this); + }); + }, + connect: function(connection) { + if (this.isConnected(connection)) { + return; + } + this._connections.push(connection); + connection.connect(this); + }, + disconnect: function(connection) { + if (!this.isConnected(connection)) { + return; + } + remove(this._connections, function(item) { + return item === connection; + }); + connection.disconnect(this); + }, + isConnected: function(connection) { + if (connection === this) { + throw new Error('Channel cannot be connected to itself.'); + } + return some(this._connections, function(item) { + return item === connection; + }); + }, + destroy: function() { + var _this2 = this; + each(this._connections, function(connection) { + _this2.disconnect(connection); + }); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Class.js b/src/miniprogram_npm/miniprogram-licia/Class.js new file mode 100644 index 0000000..519ee3f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Class.js @@ -0,0 +1,64 @@ +var extend = require('./extend'); +var toArr = require('./toArr'); +var inherits = require('./inherits'); +var safeGet = require('./safeGet'); +var isMiniProgram = require('./isMiniProgram'); +exports = function(methods, statics) { + return Base.extend(methods, statics); +}; +function makeClass(parent, methods, statics) { + statics = statics || {}; + var className = + methods.className || safeGet(methods, 'initialize.name') || ''; + delete methods.className; + var ctor = function() { + var args = toArr(arguments); + return this.initialize + ? this.initialize.apply(this, args) || this + : this; + }; + if (!isMiniProgram) { + try { + ctor = new Function( + 'toArr', + 'return function ' + + className + + '()' + + '{' + + 'var args = toArr(arguments);' + + 'return this.initialize ? this.initialize.apply(this, args) || this : this;' + + '};' + )(toArr); + } catch (e) {} + } + inherits(ctor, parent); + ctor.prototype.constructor = ctor; + ctor.extend = function(methods, statics) { + return makeClass(ctor, methods, statics); + }; + ctor.inherits = function(Class) { + inherits(ctor, Class); + }; + ctor.methods = function(methods) { + extend(ctor.prototype, methods); + return ctor; + }; + ctor.statics = function(statics) { + extend(ctor, statics); + return ctor; + }; + ctor.methods(methods).statics(statics); + return ctor; +} +var Base = (exports.Base = makeClass(Object, { + className: 'Base', + callSuper: function(parent, name, args) { + var superMethod = parent.prototype[name]; + return superMethod.apply(this, args); + }, + toString: function() { + return this.constructor.name; + } +})); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Color.js b/src/miniprogram_npm/miniprogram-licia/Color.js new file mode 100644 index 0000000..acf0965 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Color.js @@ -0,0 +1,95 @@ +var Class = require('./Class'); +var isStr = require('./isStr'); +var clamp = require('./clamp'); +var rgbToHsl = require('./rgbToHsl'); +var hslToRgb = require('./hslToRgb'); +var hex = require('./hex'); +exports = Class( + { + initialize: function Color(color) { + if (isStr(color)) color = exports.parse(color); + this.model = color.model; + this.val = color.val; + }, + toRgb: function() { + var val = this.val; + if (this.model === 'hsl') val = hslToRgb(val); + var prefix = 'rgba'; + if (val[3] === 1) { + prefix = 'rgb'; + val = val.slice(0, 3); + } + return prefix + '(' + val.join(', ') + ')'; + }, + toHex: function() { + var val = this.val; + if (this.model === 'hsl') val = hslToRgb(val); + var ret = hex.encode(val.slice(0, 3)); + if (ret[0] === ret[1] && ret[2] === ret[3] && ret[4] === ret[5]) { + ret = ret[0] + ret[2] + ret[5]; + } + return '#' + ret; + }, + toHsl: function() { + var val = this.val; + if (this.model === 'rgb') val = rgbToHsl(val); + var prefix = 'hsla'; + if (val[3] === 1) { + prefix = 'hsl'; + val = val.slice(0, 3); + } + val[1] = val[1] + '%'; + val[2] = val[2] + '%'; + return prefix + '(' + val.join(', ') + ')'; + } + }, + { + parse: function(colorStr) { + var i, match; + var val = [0, 0, 0, 1], + model = 'rgb'; + + if ((match = colorStr.match(regHexAbbr))) { + match = match[1]; + for (i = 0; i < 3; i++) { + val[i] = parseInt(match[i] + match[i], 16); + } + } else if ((match = colorStr.match(regHex))) { + match = match[1]; + for (i = 0; i < 3; i++) { + var i2 = i * 2; + val[i] = parseInt(match.slice(i2, i2 + 2), 16); + } + } else if ((match = colorStr.match(regRgba))) { + for (i = 0; i < 3; i++) { + val[i] = parseInt(match[i + 1], 0); + } + if (match[4]) val[3] = parseFloat(match[4]); + } else if ((match = colorStr.match(regRgbaPer))) { + for (i = 0; i < 3; i++) { + val[i] = Math.round(parseFloat(match[i + 1]) * 2.55); + } + if (match[4]) val[3] = parseFloat(match[4]); + } else if ((match = colorStr.match(regHsla))) { + model = 'hsl'; + val = [ + ((parseFloat(match[1]) % 360) + 360) % 360, + clamp(parseFloat(match[2]), 0, 100), + clamp(parseFloat(match[3]), 0, 100), + clamp(parseFloat(match[4]), 0, 1) + ]; + } + return { + val: val, + model: model + }; + } + } +); +var regHexAbbr = /^#([a-fA-F0-9]{3})$/; +var regHex = /^#([a-fA-F0-9]{6})$/; +var regRgba = /^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d.]+)\s*)?\)$/; +var regRgbaPer = /^rgba?\(\s*([+-]?[\d.]+)%\s*,\s*([+-]?[\d.]+)%\s*,\s*([+-]?[\d.]+)%\s*(?:,\s*([+-]?[\d.]+)\s*)?\)$/; +var regHsla = /^hsla?\(\s*([+-]?\d*[.]?\d+)(?:deg)?\s*,\s*([+-]?[\d.]+)%\s*,\s*([+-]?[\d.]+)%\s*(?:,\s*([+-]?[\d.]+)\s*)?\)$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Delegator.js b/src/miniprogram_npm/miniprogram-licia/Delegator.js new file mode 100644 index 0000000..c968eb8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Delegator.js @@ -0,0 +1,48 @@ +var Class = require('./Class'); +var safeGet = require('./safeGet'); +var defineProp = require('./defineProp'); +var isStr = require('./isStr'); +exports = Class({ + initialize: function Delegator(host, target) { + this._host = host; + if (isStr(target)) { + target = safeGet(host, target); + } + this._target = target; + }, + method: function(name, targetName) { + var target = this._target; + var fn = target[targetName || name]; + this._host[name] = function() { + return fn.apply(target, arguments); + }; + return this; + }, + getter: function(name, targetName) { + var target = this._target; + targetName = targetName || name; + defineProp(this._host, name, { + get: function() { + return target[targetName]; + }, + configurable: true + }); + return this; + }, + setter: function(name, targetName) { + var target = this._target; + targetName = targetName || name; + defineProp(this._host, name, { + set: function(val) { + return (target[targetName] = val); + }, + configurable: true + }); + return this; + }, + access: function(name, targetName) { + return this.getter(name, targetName).setter(name, targetName); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Dispatcher.js b/src/miniprogram_npm/miniprogram-licia/Dispatcher.js new file mode 100644 index 0000000..427ad82 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Dispatcher.js @@ -0,0 +1,55 @@ +var Class = require('./Class'); +var uniqId = require('./uniqId'); +exports = Class({ + initialize: function Dispatcher() { + this._callbacks = {}; + this._isDispatching = false; + this._isHandled = {}; + this._isPending = {}; + }, + dispatch: function(payload) { + this._startDispatching(payload); + for (var id in this._callbacks) { + if (this._isPending[id]) continue; + this._invokeCb(id); + } + this._stopDispatching(); + }, + register: function(cb) { + var id = uniqId('ID_'); + this._callbacks[id] = cb; + return id; + }, + waitFor: function(ids) { + for (var i = 0, len = ids.length; i < len; i++) { + var id = ids[i]; + if (this._isPending[id]) continue; + this._invokeCb(id); + } + }, + unregister: function(id) { + delete this._callbacks[id]; + }, + isDispatching: function() { + return this._isDispatching; + }, + _startDispatching: function(payload) { + for (var id in this._callbacks) { + this._isPending[id] = false; + this._isHandled[id] = false; + } + this._pendingPayload = payload; + this._isDispatching = true; + }, + _stopDispatching: function() { + delete this._pendingPayload; + this._isDispatching = false; + }, + _invokeCb: function(id) { + this._isPending[id] = true; + this._callbacks[id](this._pendingPayload); + this._isHandled[id] = true; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Emitter.js b/src/miniprogram_npm/miniprogram-licia/Emitter.js new file mode 100644 index 0000000..7412636 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Emitter.js @@ -0,0 +1,65 @@ +var Class = require('./Class'); +var has = require('./has'); +var each = require('./each'); +var slice = require('./slice'); +var once = require('./once'); +var clone = require('./clone'); +exports = Class( + { + initialize: function Emitter() { + this._events = this._events || {}; + }, + on: function(event, listener) { + this._events[event] = this._events[event] || []; + this._events[event].push(listener); + return this; + }, + off: function(event, listener) { + var events = this._events; + if (!has(events, event)) return; + var idx = events[event].indexOf(listener); + if (idx > -1) { + events[event].splice(idx, 1); + } + return this; + }, + once: function(event, listener) { + this.on(event, once(listener)); + return this; + }, + emit: function(event) { + var _this = this; + if (!has(this._events, event)) return; + var args = slice(arguments, 1); + var events = clone(this._events[event]); + each( + events, + function(val) { + return val.apply(_this, args); + }, + this + ); + return this; + }, + removeAllListeners: function(event) { + if (!event) { + this._events = {}; + } else { + delete this._events[event]; + } + return this; + } + }, + { + mixin: function(obj) { + each(['on', 'off', 'once', 'emit', 'removeAllListeners'], function( + val + ) { + obj[val] = exports.prototype[val]; + }); + obj._events = obj._events || {}; + } + } +); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Enum.js b/src/miniprogram_npm/miniprogram-licia/Enum.js new file mode 100644 index 0000000..7785e23 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Enum.js @@ -0,0 +1,31 @@ +var Class = require('./Class'); +var freeze = require('./freeze'); +var isArr = require('./isArr'); +var each = require('./each'); +var keys = require('./keys'); +exports = Class({ + initialize: function Enum(map) { + if (isArr(map)) { + this.size = map.length; + each( + map, + function(member, val) { + this[member] = val; + }, + this + ); + } else { + this.size = keys(map).length; + each( + map, + function(val, member) { + this[member] = val; + }, + this + ); + } + freeze(this); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/HashTable.js b/src/miniprogram_npm/miniprogram-licia/HashTable.js new file mode 100644 index 0000000..f5c61d4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/HashTable.js @@ -0,0 +1,61 @@ +var Class = require('./Class'); +var LinkedList = require('./LinkedList'); +var map = require('./map'); +var strHash = require('./strHash'); +var has = require('./has'); +exports = Class({ + initialize: function HashTable() { + var size = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : 32; + this._buckets = map(Array(size), function() { + return new LinkedList(); + }); + this._keys = {}; + }, + set: function(key, val) { + var keyHash = this._hash(key); + this._keys[key] = keyHash; + var linkedList = this._buckets[keyHash]; + var node = linkedList.find(function(val) { + return val.key === key; + }); + if (!node) { + linkedList.push({ + key: key, + value: val + }); + } else { + node.value.value = val; + } + }, + get: function(key) { + var linkedList = this._buckets[this._hash(key)]; + var node = linkedList.find(function(val) { + return val.key === key; + }); + if (node) { + return node.value.value; + } + }, + has: function(key) { + return has(this._keys, key); + }, + delete: function(key) { + var keyHash = this._hash(key); + delete this._keys[key]; + var linkedList = this._buckets[keyHash]; + var node = linkedList.find(function(val) { + return val.key === key; + }); + if (node) { + linkedList.rmNode(node); + } + }, + _hash: function(key) { + return strHash(key) % this._buckets.length; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Heap.js b/src/miniprogram_npm/miniprogram-licia/Heap.js new file mode 100644 index 0000000..a687143 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Heap.js @@ -0,0 +1,79 @@ +var Class = require('./Class'); +var swap = require('./swap'); +var isSorted = require('./isSorted'); +exports = Class({ + initialize: function Heap() { + var cmp = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : isSorted.defComparator; + this._cmp = cmp; + this.clear(); + }, + clear: function() { + this._data = []; + this.size = 0; + }, + add: function(item) { + this._data.push(item); + this.size++; + this._heapifyUp(this.size - 1); + return this.size; + }, + poll: function() { + var data = this._data; + if (this.size > 0) { + var item = data[0]; + data[0] = data[this.size - 1]; + this.size--; + this._heapifyDown(0); + return item; + } + }, + peek: function() { + if (this.size > 0) { + return this._data[0]; + } + }, + _heapifyUp: function(idx) { + var data = this._data; + var parent = parentIdx(idx); + while (idx > 0 && this._cmp(data[parent], data[idx]) > 0) { + swap(data, parent, idx); + idx = parent; + parent = parentIdx(idx); + } + }, + _heapifyDown: function(idx) { + var size = this.size; + var cmp = this._cmp; + var data = this._data; + while (leftChildIdx(idx) < size) { + var smallerIdx = leftChildIdx(idx); + var rightChild = rightChildIdx(idx); + if ( + rightChild < size && + cmp(data[rightChildIdx], data[smallerIdx]) < 0 + ) { + smallerIdx = rightChild; + } + if (cmp(data[idx], data[smallerIdx]) < 0) { + break; + } else { + swap(data, idx, smallerIdx); + } + idx = smallerIdx; + } + } +}); +function parentIdx(idx) { + return Math.floor((idx - 1) / 2); +} +function leftChildIdx(idx) { + return 2 * idx + 1; +} +function rightChildIdx(idx) { + return 2 * idx + 2; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/HeapSnapshot.js b/src/miniprogram_npm/miniprogram-licia/HeapSnapshot.js new file mode 100644 index 0000000..d36a926 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/HeapSnapshot.js @@ -0,0 +1,111 @@ +var Class = require('./Class'); +var toBool = require('./toBool'); +var camelCase = require('./camelCase'); +var LinkedList = require('./LinkedList'); +var isStr = require('./isStr'); +var each = require('./each'); +var map = require('./map'); +exports = Class({ + initialize: function HeapSnapshot(profile) { + if (isStr(profile)) { + profile = JSON.parse(profile); + } + this.nodes = new LinkedList(); + this.edges = new LinkedList(); + var snapshot = profile.snapshot; + var meta = snapshot.meta; + this.nodeFields = map(meta.node_fields, camelCase); + this.nodeTypes = meta.node_types[this.nodeFields.indexOf('type')]; + this.edgeFields = map(meta.edge_fields, camelCase); + this.edgeTypes = meta.edge_types[this.edgeFields.indexOf('type')]; + this._init(profile); + }, + _init: function(profile) { + var _this = this; + var nodes = profile.nodes, + edges = profile.edges, + strings = profile.strings; + var nodeFields = this.nodeFields, + edgeFields = this.edgeFields; + var curEdgeIdx = 0; + var nodeFieldCount = nodeFields.length; + var edgeFieldCount = edgeFields.length; + var nodeMap = {}; + for (var i = 0, len = nodes.length; i < len; i += nodeFieldCount) { + var node = new Node(this); + node.init(nodes.slice(i, i + nodeFieldCount), strings); + this.nodes.push(node); + nodeMap[i] = node; + } + this.nodes.forEach(function(node) { + var edgeCount = node.edgeCount; + delete node.edgeCount; + var maxEdgeIdx = curEdgeIdx + edgeCount * edgeFieldCount; + for (var _i = curEdgeIdx; _i < maxEdgeIdx; _i += edgeFieldCount) { + var edge = new Edge(_this, node); + edge.init( + edges.slice(_i, _i + edgeFieldCount), + strings, + nodeMap + ); + _this.edges.push(edge); + } + curEdgeIdx = maxEdgeIdx; + }); + } +}); +var Node = Class({ + initialize: function Node(heapSnapshot) { + this._heapSnapshot = heapSnapshot; + }, + init: function(fields, strings) { + var _this2 = this; + var heapSnapshot = this._heapSnapshot; + var nodeFields = heapSnapshot.nodeFields, + nodeTypes = heapSnapshot.nodeTypes; + each(nodeFields, function(field, idx) { + var val = fields[idx]; + switch (field) { + case 'name': + val = strings[val]; + break; + case 'detachedness': + val = toBool(val); + break; + case 'type': + val = nodeTypes[val]; + break; + } + _this2[field] = val; + }); + } +}); +var Edge = Class({ + initialize: function Edge(heapSnapshot, fromNode) { + this._heapSnapshot = heapSnapshot; + this.fromNode = fromNode; + }, + init: function(fields, strings, nodeMap) { + var _this3 = this; + var heapSnapshot = this._heapSnapshot; + var edgeFields = heapSnapshot.edgeFields, + edgeTypes = heapSnapshot.edgeTypes; + each(edgeFields, function(field, idx) { + var val = fields[idx]; + switch (field) { + case 'nameOrIndex': + val = strings[val]; + break; + case 'type': + val = edgeTypes[val]; + break; + case 'toNode': + val = nodeMap[val]; + break; + } + _this3[field] = val; + }); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/I18n.js b/src/miniprogram_npm/miniprogram-licia/I18n.js new file mode 100644 index 0000000..75cdbc2 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/I18n.js @@ -0,0 +1,38 @@ +var Class = require('./Class'); +var safeGet = require('./safeGet'); +var extend = require('./extend'); +var strTpl = require('./strTpl'); +var isStr = require('./isStr'); +var isFn = require('./isFn'); +exports = Class({ + initialize: function I18n(locale, langs) { + this._locale = locale; + this._langs = langs; + }, + set: function(locale, lang) { + if (this._langs[locale]) { + extend(this._langs[locale], lang); + } else { + this._langs[locale] = lang; + } + }, + t: function(path, data) { + var val = ''; + var lang = this._langs[this._locale]; + if (!lang) return ''; + val = safeGet(lang, path); + if (data) { + if (isStr(val)) { + val = strTpl(val, data); + } else if (isFn(val)) { + val = val(data); + } + } + return val || ''; + }, + locale: function(locale) { + this._locale = locale; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/JsonTransformer.js b/src/miniprogram_npm/miniprogram-licia/JsonTransformer.js new file mode 100644 index 0000000..2bdf4fe --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/JsonTransformer.js @@ -0,0 +1,68 @@ +var Class = require('./Class'); +var safeSet = require('./safeSet'); +var safeGet = require('./safeGet'); +var map = require('./map'); +var filter = require('./filter'); +var isFn = require('./isFn'); +var safeDel = require('./safeDel'); +var toArr = require('./toArr'); +var each = require('./each'); +exports = Class({ + className: 'JsonTransformer', + initialize: function(data) { + this._data = data || {}; + }, + set: function(key, val) { + if (arguments.length === 1) { + this._data = key; + return this; + } + safeSet(this._data, key, val); + return this; + }, + get: function(key) { + if (key == null) return this._data; + return safeGet(this._data, key); + }, + map: function(from, to, fn) { + if (isFn(from)) return this.set(map(this._data, from, this)); + if (isFn(to)) { + fn = to; + to = from; + } + return this.set(to, map(this.get(from), fn, this)); + }, + filter: function(from, to, fn) { + if (isFn(from)) return this.set(filter(this._data, from, this)); + if (isFn(to)) { + fn = to; + to = from; + } + return this.set(to, filter(this.get(from), fn, this)); + }, + remove: function(keys) { + keys = toArr(keys); + var data = this._data; + each(keys, function(key) { + safeDel(data, key); + }); + return this; + }, + compute: function(from, to, fn) { + if (isFn(from)) return this.set(from.call(this, this._data)); + if (isFn(to)) return this.set(from, to.call(this, this.get(from))); + from = map( + toArr(from), + function(key) { + return safeGet(this._data, key); + }, + this + ); + return this.set(to, fn.apply(this, from)); + }, + toString: function() { + return JSON.stringify(this._data); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/LinkedList.js b/src/miniprogram_npm/miniprogram-licia/LinkedList.js new file mode 100644 index 0000000..393b1cd --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/LinkedList.js @@ -0,0 +1,112 @@ +var Class = require('./Class'); +exports = Class({ + initialize: function LinkedList() { + this.tail = null; + this.head = null; + this.size = 0; + }, + push: function(val) { + var node = new Node(val, this.tail, null, this); + this.tail = node; + this.head = this.head || node; + this.size++; + return this.size; + }, + pop: function() { + if (!this.tail) return; + var node = this.tail; + this.tail = node.prev; + if (this.tail) { + this.tail.next = null; + } else { + this.head = null; + } + this.size--; + return node.value; + }, + unshift: function(val) { + var node = new Node(val, null, this.head, this); + this.head = node; + this.tail = this.tail || node; + this.size++; + return this.size; + }, + shift: function() { + if (!this.head) return; + var node = this.head; + this.head = node.next; + if (this.head) { + this.head.prev = null; + } else { + this.tail = null; + } + this.size--; + return node.value; + }, + rmNode: function(node) { + if (node.list !== this) { + throw Error('Node does not belong to this list'); + } + var next = node.next, + prev = node.prev; + if (next) { + next.prev = prev; + } + if (prev) { + prev.next = next; + } + if (node === this.head) { + this.head = next; + } + if (node === this.tail) { + this.tail = prev; + } + node.list = null; + node.prev = null; + node.next = null; + this.size--; + }, + find: function(fn) { + for (var i = 0, current = this.head; current !== null; i++) { + if (fn(current.value)) { + return current; + } + current = current.next; + } + }, + forEach: function(iterator, ctx) { + ctx = arguments.length > 1 ? ctx : this; + for (var i = 0, current = this.head; current !== null; i++) { + iterator.call(ctx, current.value, i, this); + current = current.next; + } + }, + toArr: function() { + var arr = new Array(this.size); + for (var i = 0, current = this.head; current !== null; i++) { + arr[i] = current.value; + current = current.next; + } + return arr; + } +}); +var Node = (exports.Node = Class({ + initialize: function Node(val, prev, next, list) { + this.value = val; + this.list = list; + if (prev) { + prev.next = this; + this.prev = prev; + } else { + this.prev = null; + } + if (next) { + next.prev = this; + this.next = next; + } else { + this.next = null; + } + } +})); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Logger.js b/src/miniprogram_npm/miniprogram-licia/Logger.js new file mode 100644 index 0000000..e7cf250 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Logger.js @@ -0,0 +1,69 @@ +var Emitter = require('./Emitter'); +var Enum = require('./Enum'); +var toArr = require('./toArr'); +var isUndef = require('./isUndef'); +var clone = require('./clone'); +var isStr = require('./isStr'); +var isNum = require('./isNum'); +exports = Emitter.extend( + { + initialize: function Logger(name, level) { + this.name = name; + this.setLevel(isUndef(level) ? exports.level.DEBUG : level); + this.callSuper(Emitter, 'initialize', arguments); + }, + setLevel: function(level) { + if (isStr(level)) { + level = exports.level[level.toUpperCase()]; + if (level) this._level = level; + return this; + } + if (isNum(level)) this._level = level; + return this; + }, + getLevel: function() { + return this._level; + }, + formatter: function(type, argList) { + return argList; + }, + trace: function() { + return this._log('trace', arguments); + }, + debug: function() { + return this._log('debug', arguments); + }, + info: function() { + return this._log('info', arguments); + }, + warn: function() { + return this._log('warn', arguments); + }, + error: function() { + return this._log('error', arguments); + }, + _log: function(type, argList) { + argList = toArr(argList); + if (argList.length === 0) return this; + this.emit('all', type, clone(argList)); + if (exports.level[type.toUpperCase()] < this._level) return this; + this.emit(type, clone(argList)); + + var consoleMethod = type === 'debug' ? console.log : console[type]; + consoleMethod.apply(console, this.formatter(type, argList)); + return this; + } + }, + { + level: new Enum({ + TRACE: 0, + DEBUG: 1, + INFO: 2, + WARN: 3, + ERROR: 4, + SILENT: 5 + }) + } +); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Lru.js b/src/miniprogram_npm/miniprogram-licia/Lru.js new file mode 100644 index 0000000..3624bd6 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Lru.js @@ -0,0 +1,63 @@ +var LinkedList = require('./LinkedList'); +var PseudoMap = require('./PseudoMap'); +var Class = require('./Class'); +exports = Class({ + initialize: function Lru(max) { + this._max = max; + this._list = new LinkedList(); + this._map = new PseudoMap(); + }, + has: function(key) { + return this._map.has(key); + }, + remove: function(key) { + var map = this._map; + if (this.has(key)) { + var node = map.get(key); + this._list.rmNode(node); + map.delete(key); + } + }, + get: function(key) { + var list = this._list; + var map = this._map; + var ret; + if (this.has(key)) { + var node = map.get(key); + ret = node.value.val; + list.rmNode(node); + list.unshift(node.value); + map.set(key, list.head); + } + return ret; + }, + set: function(key, val) { + var list = this._list; + var map = this._map; + if (this.has(key)) { + var node = map.get(key); + list.rmNode(node); + list.unshift({ + key: key, + val: val + }); + map.set(key, list.head); + } else { + list.unshift({ + key: key, + val: val + }); + map.set(key, list.head); + if (list.size > this._max) { + var item = list.pop(); + map.delete(item.key); + } + } + }, + clear: function() { + this._map = new PseudoMap(); + this._list = new LinkedList(); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/PriorityQueue.js b/src/miniprogram_npm/miniprogram-licia/PriorityQueue.js new file mode 100644 index 0000000..d6e2afc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/PriorityQueue.js @@ -0,0 +1,39 @@ +var Class = require('./Class'); +var Heap = require('./Heap'); +var isSorted = require('./isSorted'); +var wrap = require('./wrap'); +exports = Class({ + initialize: function PriorityQueue() { + var cmp = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : isSorted.defComparator; + this._heap = new Heap( + wrap(cmp, function(fn, a, b) { + return fn(a, b) * -1; + }) + ); + this.size = 0; + }, + clear: function() { + this._heap.clear(); + this.size = 0; + }, + enqueue: function(item) { + this._heap.add(item); + this.size++; + return this.size; + }, + dequeue: function() { + var item = this._heap.poll(); + if (item) { + this.size--; + return item; + } + }, + peek: function() { + return this._heap.peek(); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Promise.js b/src/miniprogram_npm/miniprogram-licia/Promise.js new file mode 100644 index 0000000..0f03eef --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Promise.js @@ -0,0 +1,178 @@ +var Class = require('./Class'); +var isObj = require('./isObj'); +var isFn = require('./isFn'); +var State = require('./State'); +var bind = require('./bind'); +var nextTick = require('./nextTick'); +var noop = require('./noop'); +var toArr = require('./toArr'); +var Promise = (exports = Class( + { + initialize: function Promise(fn) { + if (!isObj(this)) + throw new TypeError('Promises must be constructed via new'); + if (!isFn(fn)) throw new TypeError(fn + ' is not a function'); + var self = this; + this._state = new State('pending', { + fulfill: { + from: 'pending', + to: 'fulfilled' + }, + reject: { + from: 'pending', + to: 'rejected' + }, + adopt: { + from: 'pending', + to: 'adopted' + } + }) + .on('fulfill', assignVal) + .on('reject', assignVal) + .on('adopt', assignVal); + function assignVal(val) { + self._value = val; + } + this._handled = false; + this._value = undefined; + this._deferreds = []; + doResolve(fn, this); + }, + catch: function(onRejected) { + return this.then(null, onRejected); + }, + then: function(onFulfilled, onRejected) { + var promise = new Promise(noop); + handle(this, new Handler(onFulfilled, onRejected, promise)); + return promise; + } + }, + { + all: function(arr) { + var args = toArr(arr); + return new Promise(function(resolve, reject) { + if (args.length === 0) return resolve([]); + var remaining = args.length; + function res(i, val) { + try { + if (val && (isObj(val) || isFn(val))) { + var then = val.then; + if (isFn(then)) { + then.call( + val, + function(val) { + res(i, val); + }, + reject + ); + return; + } + } + args[i] = val; + if (--remaining === 0) resolve(args); + } catch (e) { + reject(e); + } + } + for (var i = 0; i < args.length; i++) res(i, args[i]); + }); + }, + resolve: function(val) { + if (val && isObj(val) && val.constructor === Promise) return val; + return new Promise(function(resolve) { + resolve(val); + }); + }, + reject: function(val) { + return new Promise(function(resolve, reject) { + reject(val); + }); + }, + race: function(values) { + return new Promise(function(resolve, reject) { + for (var i = 0, len = values.length; i < len; i++) { + values[i].then(resolve, reject); + } + }); + } + } +)); +var Handler = Class({ + initialize: function Handler(onFulfilled, onRejected, promise) { + this.onFulfilled = isFn(onFulfilled) ? onFulfilled : null; + this.onRejected = isFn(onRejected) ? onRejected : null; + this.promise = promise; + } +}); +function reject(self, err) { + self._state.reject(err); + finale(self); +} +function resolve(self, val) { + try { + if (val === self) + throw new TypeError('A promise cannot be resolved with itself'); + if (val && (isObj(val) || isFn(val))) { + var then = val.then; + if (val instanceof Promise) { + self._state.adopt(val); + return finale(self); + } + if (isFn(then)) return doResolve(bind(then, val), self); + } + self._state.fulfill(val); + finale(self); + } catch (e) { + reject(self, e); + } +} +function finale(self) { + for (var i = 0, len = self._deferreds.length; i < len; i++) { + handle(self, self._deferreds[i]); + } + self._deferreds = null; +} +function handle(self, deferred) { + while (self._state.is('adopted')) self = self._value; + if (self._state.is('pending')) return self._deferreds.push(deferred); + self._handled = true; + nextTick(function() { + var isFulfilled = self._state.is('fulfilled'); + var cb = isFulfilled ? deferred.onFulfilled : deferred.onRejected; + if (cb === null) + return (isFulfilled ? resolve : reject)( + deferred.promise, + self._value + ); + var ret; + try { + ret = cb(self._value); + } catch (e) { + return reject(deferred.promise, e); + } + resolve(deferred.promise, ret); + }); +} +function doResolve(fn, self) { + var done = false; + try { + fn( + function(val) { + if (done) return; + done = true; + resolve(self, val); + }, + function(reason) { + if (done) return; + done = true; + reject(self, reason); + } + ); + } catch (e) { + if (done) return; + done = true; + reject(self, e); + } +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/PseudoMap.js b/src/miniprogram_npm/miniprogram-licia/PseudoMap.js new file mode 100644 index 0000000..1036911 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/PseudoMap.js @@ -0,0 +1,64 @@ +var Class = require('./Class'); +var root = require('./root'); +var defineProp = require('./defineProp'); +var keys = require('./keys'); +var each = require('./each'); +var isArr = require('./isArr'); +var isUndef = require('./isUndef'); +if (root.Map && !false) { + exports = root.Map; +} else { + exports = Class({ + initialize: function PseudoMap(data) { + this.clear(); + var self = this; + defineProp(this, 'size', { + get: function() { + return keys(self._data).length; + }, + set: function() {}, + enumerable: true, + configurable: true + }); + if (data instanceof exports) { + data.forEach(function(val, key) { + this.set(key, val); + }, this); + } else if (isArr(data)) { + each( + data, + function(val) { + this.set(val[0], val[1]); + }, + this + ); + } + }, + forEach: function(fn, ctx) { + each( + this._data, + function(val, key) { + fn.call(this, val, key); + }, + ctx + ); + }, + has: function(key) { + return !isUndef(this._data[key]); + }, + get: function(key) { + return this._data[key]; + }, + set: function(key, val) { + this._data[key] = val; + }, + delete: function(key) { + delete this._data[key]; + }, + clear: function() { + this._data = {}; + } + }); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Queue.js b/src/miniprogram_npm/miniprogram-licia/Queue.js new file mode 100644 index 0000000..ab3b5e9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Queue.js @@ -0,0 +1,35 @@ +var Class = require('./Class'); +exports = Class({ + initialize: function Queue() { + this.clear(); + }, + clear: function() { + this._items = []; + this.size = 0; + }, + enqueue: function(item) { + this._items.push(item); + return ++this.size; + }, + dequeue: function() { + if (!this.size) return; + this.size--; + return this._items.shift(); + }, + peek: function() { + if (!this.size) return; + return this._items[0]; + }, + forEach: function(iterator, ctx) { + ctx = arguments.length > 1 ? ctx : this; + var items = this._items; + for (var i = 0, size = this.size; i < size; i++) { + iterator.call(ctx, items[i], i, this); + } + }, + toArr: function() { + return this._items.slice(0); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/QuickLru.js b/src/miniprogram_npm/miniprogram-licia/QuickLru.js new file mode 100644 index 0000000..4c01e78 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/QuickLru.js @@ -0,0 +1,49 @@ +var isUndef = require('./isUndef'); +var Class = require('./Class'); +exports = Class({ + initialize: function QuickLru(max) { + this._max = max; + this._cache = {}; + this._oldCache = {}; + this._size = 0; + }, + has: function(key) { + return !isUndef(this._cache[key]) || !isUndef(this._oldCache[key]); + }, + remove: function(key) { + if (!isUndef(this._cache[key])) this._cache[key] = undefined; + if (!isUndef(this._oldCache[key])) this._oldCache[key] = undefined; + }, + get: function(key) { + if (!isUndef(this._cache[key])) { + return this._cache[key]; + } + var val = this._oldCache[key]; + if (!isUndef(val)) { + this._update(key, val); + return val; + } + }, + set: function(key, val) { + if (!isUndef(this._cache[key])) { + this._cache[key] = val; + } else { + this._update(key, val); + } + }, + clear: function() { + this._cache = {}; + this._oldCache = {}; + }, + _update: function(key, val) { + this._cache[key] = val; + this._size++; + if (this._size > this._max) { + this._size = 0; + this._oldCache = this._cache; + this._cache = {}; + } + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Readiness.js b/src/miniprogram_npm/miniprogram-licia/Readiness.js new file mode 100644 index 0000000..638974e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Readiness.js @@ -0,0 +1,59 @@ +var Class = require('./Class'); +var toArr = require('./toArr'); +var each = require('./each'); +var map = require('./map'); +var noop = require('./noop'); +var some = require('./some'); +exports = Class({ + initialize: function Readiness() { + this._promises = {}; + this._resolves = {}; + this._states = {}; + }, + signal: function(tasks) { + var states = this._states; + each(this._getPromises(toArr(tasks)), function(val) { + if (!val.state) { + states[val.task] = true; + val.resolve(); + } + }); + }, + isReady: function(tasks) { + return !some(this._getPromises(toArr(tasks)), function(val) { + return !val.state; + }); + }, + ready: function(tasks) { + var fn = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : noop; + return Promise.all( + map(this._getPromises(toArr(tasks)), function(val) { + return val.promise; + }) + ).then(fn); + }, + _getPromises: function(tasks) { + var promises = this._promises; + var resolves = this._resolves; + var states = this._states; + return map(tasks, function(task) { + if (!promises[task]) { + promises[task] = new Promise(function(resolve) { + resolves[task] = resolve; + states[task] = false; + }); + } + return { + task: task, + promise: promises[task], + resolve: resolves[task], + state: states[task] + }; + }); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/ReduceStore.js b/src/miniprogram_npm/miniprogram-licia/ReduceStore.js new file mode 100644 index 0000000..543cb77 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/ReduceStore.js @@ -0,0 +1,41 @@ +var Class = require('./Class'); +var clone = require('./clone'); +var remove = require('./remove'); +exports = Class({ + initialize: function ReduceStore(reducer, initialState) { + this._reducer = reducer; + this._state = initialState; + this._curListeners = []; + this._nextListeners = this._curListeners; + }, + subscribe: function(listener) { + var isSubscribed = true; + this._ensureCanMutateNextListeners(); + this._nextListeners.push(listener); + var self = this; + return function() { + if (!isSubscribed) return; + isSubscribed = false; + self._ensureCanMutateNextListeners(); + remove(self._nextListeners, function(val) { + return val === listener; + }); + }; + }, + dispatch: function(action) { + this._state = this._reducer(this._state, action); + var listeners = (this._curListeners = this._nextListeners); + for (var i = 0, len = listeners.length; i < len; i++) listeners[i](); + return action; + }, + getState: function() { + return this._state; + }, + _ensureCanMutateNextListeners: function() { + if (this._nextListeners === this._curListeners) { + this._nextListeners = clone(this._curListeners); + } + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Semaphore.js b/src/miniprogram_npm/miniprogram-licia/Semaphore.js new file mode 100644 index 0000000..3beb419 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Semaphore.js @@ -0,0 +1,28 @@ +var Class = require('./Class'); +var Queue = require('./Queue'); +exports = Class({ + initialize: function Semaphore() { + var counter = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : 1; + this._counter = counter; + this._tasks = new Queue(); + }, + wait: function(fn) { + if (this._counter > 0) { + this._counter--; + return fn(); + } + this._tasks.enqueue(fn); + }, + signal: function() { + var task = this._tasks.dequeue(); + if (task) { + return task(); + } + this._counter++; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/SingleEmitter.js b/src/miniprogram_npm/miniprogram-licia/SingleEmitter.js new file mode 100644 index 0000000..a76bda4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/SingleEmitter.js @@ -0,0 +1,48 @@ +var Class = require('./Class'); +var clone = require('./clone'); +var each = require('./each'); +var toArr = require('./toArr'); +exports = Class( + { + initialize: function SingleEmitter() { + this._listeners = []; + }, + addListener: function(listener) { + this._listeners.push(listener); + }, + rmListener: function(listener) { + var idx = this._listeners.indexOf(listener); + if (idx > -1) { + this._listeners.splice(idx, 1); + } + }, + rmAllListeners: function() { + this._listeners = []; + }, + emit: function() { + var _this = this; + var args = toArr(arguments); + var listeners = clone(this._listeners); + each( + listeners, + function(listener) { + return listener.apply(_this, args); + }, + this + ); + } + }, + { + mixin: function(obj) { + each( + ['addListener', 'rmListener', 'emit', 'rmAllListeners'], + function(val) { + obj[val] = exports.prototype[val]; + } + ); + obj._listeners = obj._listeners || []; + } + } +); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Stack.js b/src/miniprogram_npm/miniprogram-licia/Stack.js new file mode 100644 index 0000000..8341b4d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Stack.js @@ -0,0 +1,35 @@ +var Class = require('./Class'); +var reverse = require('./reverse'); +exports = Class({ + initialize: function Stack() { + this.clear(); + }, + clear: function() { + this._items = []; + this.size = 0; + }, + push: function(item) { + this._items.push(item); + return ++this.size; + }, + pop: function() { + if (!this.size) return; + this.size--; + return this._items.pop(); + }, + peek: function() { + return this._items[this.size - 1]; + }, + forEach: function(iterator, ctx) { + ctx = arguments.length > 1 ? ctx : this; + var items = this._items; + for (var i = this.size - 1, j = 0; i >= 0; i--, j++) { + iterator.call(ctx, items[i], j, this); + } + }, + toArr: function() { + return reverse(this._items); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/State.js b/src/miniprogram_npm/miniprogram-licia/State.js new file mode 100644 index 0000000..7bd98d6 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/State.js @@ -0,0 +1,45 @@ +var Emitter = require('./Emitter'); +var each = require('./each'); +var some = require('./some'); +var toArr = require('./toArr'); +exports = Emitter.extend({ + className: 'State', + initialize: function(initial, events) { + this.callSuper(Emitter, 'initialize'); + this.current = initial; + var self = this; + each(events, function(event, key) { + self[key] = buildEvent(key, event); + }); + }, + is: function(state) { + return this.current === state; + } +}); +function buildEvent(name, event) { + var from = toArr(event.from); + var to = event.to; + return function() { + var args = toArr(arguments); + args.unshift(name); + var hasEvent = some( + from, + function(val) { + return this.current === val; + }, + this + ); + if (hasEvent) { + this.current = to; + this.emit.apply(this, args); + } else { + this.emit( + 'error', + new Error(this.current + ' => ' + to + ' error'), + name + ); + } + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Store.js b/src/miniprogram_npm/miniprogram-licia/Store.js new file mode 100644 index 0000000..f02a055 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Store.js @@ -0,0 +1,58 @@ +var Emitter = require('./Emitter'); +var isStr = require('./isStr'); +var isObj = require('./isObj'); +var each = require('./each'); +var toArr = require('./toArr'); +exports = Emitter.extend({ + initialize: function Store(data) { + this.callSuper(Emitter, 'initialize', arguments); + this._data = data || {}; + this.save(this._data); + }, + set: function(key, val) { + var data; + if (isStr(key)) { + data = {}; + data[key] = val; + } else if (isObj(key)) { + data = key; + } + var self = this; + each(data, function(val, key) { + var oldVal = self._data[key]; + self._data[key] = val; + self.emit('change', key, val, oldVal); + }); + this.save(this._data); + }, + get: function(key) { + var data = this._data; + if (isStr(key)) return data[key]; + var ret = {}; + each(key, function(val) { + ret[val] = data[val]; + }); + return ret; + }, + remove: function(key) { + key = toArr(key); + var data = this._data; + each(key, function(val) { + delete data[val]; + }); + this.save(data); + }, + clear: function() { + this._data = {}; + this.save(this._data); + }, + each: function(fn) { + each(this._data, fn); + }, + + save: function(data) { + this._data = data; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Trace.js b/src/miniprogram_npm/miniprogram-licia/Trace.js new file mode 100644 index 0000000..e980181 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Trace.js @@ -0,0 +1,157 @@ +var Class = require('./Class'); +var each = require('./each'); +var map = require('./map'); +exports = Class({ + initialize: function Trace() { + var _this = this; + var events = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : []; + this._processes = {}; + each(events, function(event) { + return _this.addEvent(event); + }); + }, + addEvent: function(event) { + var process = this.getProcess(event.pid); + process.addEvent(event); + }, + rmEvent: function(event) { + var process = this.getProcess(event.pid); + process.rmEvent(event); + }, + getProcess: function(id) { + var process = this._processes[id]; + if (!process) { + process = new Process(id); + this._processes[id] = process; + } + return process; + }, + rmProcess: function(id) { + delete this._processes[id]; + }, + processes: function() { + return map(this._processes); + }, + toJSON: function() { + var events = []; + each(this.processes(), function(process) { + events.push.apply(events, process.toJSON()); + }); + return events; + } +}); +var Process = Class({ + initialize: function Process(id) { + this._id = id; + this._name = ''; + this._threads = {}; + this._metadata = {}; + }, + id: function() { + return this._id; + }, + name: function() { + return this._name; + }, + addEvent: function(event) { + if (event.cat === '__metadata') { + if (event.name === 'process_name') { + this._name = event.args.name; + } + if (event.tid === 0) { + this._metadata[event.name] = event.args; + return; + } + } + var thread = this.getThread(event.tid); + thread.addEvent(event); + }, + rmEvent: function(event) { + var thread = this.getThread(event.tid); + thread.rmEvent(event); + }, + getThread: function(id) { + var thread = this._threads[id]; + if (!thread) { + thread = new Thread(id, this.id()); + this._threads[id] = thread; + } + return thread; + }, + rmThread: function(id) { + delete this._threads[id]; + }, + threads: function() { + return map(this._threads); + }, + toJSON: function() { + var _this2 = this; + var events = []; + each(this._metadata, function(args, name) { + events.push(createMetaEvent(_this2._id, 0, name, args)); + }); + each(this.threads(), function(thread) { + events.push.apply(events, thread.toJSON()); + }); + return events; + } +}); +var Thread = Class({ + initialize: function Thread(id, pid) { + this._id = id; + this._pid = pid; + this._name = ''; + this._events = []; + this._metadata = {}; + }, + id: function() { + return this._id; + }, + name: function() { + return this._name; + }, + addEvent: function(event) { + if (event.cat === '__metadata') { + if (event.name === 'thread_name') { + this._name = event.args.name; + } + this._metadata[event.name] = event.args; + return; + } + this._events.push(event); + }, + rmEvent: function(event) { + var events = this._events; + events.splice(events.indexOf(event), 1); + }, + events: function() { + return map(this._events); + }, + toJSON: function() { + var _this3 = this; + var events = []; + each(this._metadata, function(args, name) { + events.push(createMetaEvent(_this3._pid, _this3._id, name, args)); + }); + each(this.events(), function(event) { + events.push(event); + }); + return events; + } +}); +function createMetaEvent(pid, tid, name, args) { + return { + args: args, + cat: '__metadata', + name: name, + ph: 'M', + pid: pid, + tid: tid, + ts: 0 + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Tracing.js b/src/miniprogram_npm/miniprogram-licia/Tracing.js new file mode 100644 index 0000000..17ecfa6 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Tracing.js @@ -0,0 +1,227 @@ +var Class = require('./Class'); +var Trace = require('./Trace'); +var perfNow = require('./perfNow'); +var extend = require('./extend'); +var isNode = require('./isNode'); +var Stack = require('./Stack'); +var map = require('./map'); +var trim = require('./trim'); +var isEmpty = require('./isEmpty'); +var intersect = require('./intersect'); +var convertBase = require('./convertBase'); +var defPid = 0; +var defTid = 0; +var id = 0; +if (isNode) { + defPid = process.pid; + try { + defTid = eval('require')('worker_threads').threadId; + } catch (e) {} +} +exports = Class({ + initialize: function Tracing() { + var _ref = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : {}, + _ref$pid = _ref.pid, + pid = _ref$pid === void 0 ? defPid : _ref$pid, + _ref$tid = _ref.tid, + tid = _ref$tid === void 0 ? defTid : _ref$tid, + _ref$processName = _ref.processName, + processName = + _ref$processName === void 0 ? 'Process' : _ref$processName, + _ref$threadName = _ref.threadName, + threadName = + _ref$threadName === void 0 ? 'Thread' : _ref$threadName; + this._pid = pid; + this._tid = tid; + this._processName = processName; + this._threadName = threadName; + }, + start: function() { + var cat = + arguments.length > 0 && arguments[0] !== undefined + ? arguments[0] + : ''; + this._targetCat = processCat(cat); + if (!isEmpty(this._targetCat)) { + this._targetCat.push('__metadata'); + } + this._traceEventStack = new Stack(); + this._asyncEventMap = {}; + this._trace = new Trace(); + this.metadata( + 'process_name', + { + name: this._processName + }, + { + tid: 0, + ts: 0 + } + ); + this.metadata( + 'thread_name', + { + name: this._threadName + }, + { + ts: 0 + } + ); + }, + stop: function() { + var trace = this._trace; + if (!trace) { + throw Error('Need to call start first'); + } + delete this._targetCat; + delete this._traceEventStack; + delete this._asyncEventMap; + delete this._trace; + return trace.toJSON(); + }, + metadata: function(name, args, extra) { + this._addEvent('__metadata', name, Phase.Metadata, args, extra); + }, + begin: function(cat, name) { + var args = + arguments.length > 2 && arguments[2] !== undefined + ? arguments[2] + : {}; + if (!this._traceEventStack) { + return; + } + this._traceEventStack.push({ + cat: cat, + name: name, + args: args, + ts: this._getCurTs() + }); + }, + end: function(args) { + if (!this._traceEventStack) { + return; + } + var beginEvent = this._traceEventStack.pop(); + if (!beginEvent) { + throw Error('Need to call begin first'); + } + var cat = beginEvent.cat, + name = beginEvent.name, + ts = beginEvent.ts; + args = extend(beginEvent.args, args); + this._addEvent(cat, name, Phase.Complete, args, { + dur: this._getCurTs() - ts, + ts: ts + }); + }, + asyncBegin: function(cat, name) { + var id = + arguments.length > 2 && arguments[2] !== undefined + ? arguments[2] + : this.id(); + var args = + arguments.length > 3 && arguments[3] !== undefined + ? arguments[3] + : {}; + if (!this._asyncEventMap) { + return id; + } + this._asyncEventMap[id] = { + cat: cat, + name: name + }; + this._addEvent(cat, name, Phase.NestableAsyncBegin, args, { + id: id + }); + return id; + }, + asyncEnd: function(id) { + var args = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : {}; + if (!this._asyncEventMap) { + return; + } + var asyncBeginEvent = this._asyncEventMap[id]; + if (!asyncBeginEvent) { + throw Error('Need to call async begin first'); + } + var cat = asyncBeginEvent.cat, + name = asyncBeginEvent.name; + delete this._asyncEventMap[id]; + this._addEvent(cat, name, Phase.NestableAsyncEnd, args, { + id: id + }); + }, + instant: function(cat, name) { + var scope = + arguments.length > 2 && arguments[2] !== undefined + ? arguments[2] + : 't'; + var args = arguments.length > 3 ? arguments[3] : undefined; + this._addEvent(cat, name, Phase.Instant, args, { + s: scope + }); + }, + id: function() { + return '0x' + convertBase(id++, 10, 16); + }, + _addEvent: function(cat, name, ph) { + var args = + arguments.length > 3 && arguments[3] !== undefined + ? arguments[3] + : {}; + var extra = + arguments.length > 4 && arguments[4] !== undefined + ? arguments[4] + : {}; + if (!this._trace) { + return; + } + var targetCat = this._targetCat; + if (!isEmpty(targetCat)) { + var catArr = processCat(cat); + if (isEmpty(intersect(catArr, targetCat))) { + return; + } + } + var event = extend( + { + name: name, + cat: cat, + ph: ph, + ts: this._getCurTs(), + pid: this._pid, + tid: this._tid, + args: args + }, + extra + ); + this._trace.addEvent(event); + }, + _getCurTs: function() { + return Math.round(perfNow() * 1000); + } +}); +var Phase = { + Begin: 'B', + End: 'E', + Complete: 'X', + Instant: 'I', + NestableAsyncBegin: 'b', + NestableAsyncEnd: 'e', + Metadata: 'M' +}; +function processCat(cat) { + cat = trim(cat); + if (cat === '') { + return []; + } + return map(cat.split(','), trim); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Trie.js b/src/miniprogram_npm/miniprogram-licia/Trie.js new file mode 100644 index 0000000..2fd8191 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Trie.js @@ -0,0 +1,90 @@ +var Class = require('./Class'); +var each = require('./each'); + +exports = Class({ + initialize: function Trie() { + this.clear(); + }, + add: function(word) { + var edges = this._edges; + var node = this._root; + this._wordsInSubtree[node]++; + for (var i = 0, len = word.length; i < len; i++) { + var edge = word[i]; + var next = edges[node][edge]; + if (!next) { + if (this._freeNodes.length) { + next = this._freeNodes.pop(); + } else { + next = this._idx++; + this._isWord.push(false); + this._wordsInSubtree.push(0); + edges.push({}); + } + edges[node][edge] = next; + } + this._wordsInSubtree[next]++; + node = next; + } + this._isWord[node] = true; + }, + remove: function(word) { + if (!this.has(word)) { + return; + } + var node = this._root; + this._wordsInSubtree[node]--; + for (var i = 0, len = word.length; i < len; i++) { + var edge = word[i]; + var next = this._edges[node][edge]; + if (!--this._wordsInSubtree[next]) { + delete this._edges[node][edge]; + this._freeNodes.push(next); + } + node = next; + } + this._isWord[node] = false; + }, + has: function(word) { + var node = this._root; + for (var i = 0, len = word.length; i < len; i++) { + node = this._edges[node][word[i]]; + if (!node) { + return false; + } + } + return this._isWord[node]; + }, + words: function(prefix) { + var node = this._root; + for (var i = 0, len = prefix.length; i < len; i++) { + node = this._edges[node][prefix[i]]; + if (!node) { + return []; + } + } + var result = []; + this._dfs(node, prefix, result); + return result; + }, + clear: function() { + this._idx = 1; + this._root = 0; + this._edges = [{}]; + this._isWord = [false]; + this._wordsInSubtree = [0]; + this._freeNodes = []; + }, + _dfs: function(node, prefix, result) { + var _this = this; + if (this._isWord[node]) { + result.push(prefix); + } + var edges = this._edges[node]; + each(edges, function(node, edge) { + return _this._dfs(node, prefix + edge, result); + }); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Tween.js b/src/miniprogram_npm/miniprogram-licia/Tween.js new file mode 100644 index 0000000..8964fa5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Tween.js @@ -0,0 +1,98 @@ +var Emitter = require('./Emitter'); +var State = require('./State'); +var easing = require('./easing'); +var now = require('./now'); +var each = require('./each'); +var raf = require('./raf'); +var isFn = require('./isFn'); +exports = Emitter.extend({ + className: 'Tween', + initialize: function(target) { + this.callSuper(Emitter, 'initialize', arguments); + this._target = target; + this._dest = {}; + this._duration = 0; + this._progress = 0; + this._origin = {}; + this._diff = {}; + this._ease = easing['linear']; + this._state = new State('pause', { + play: { + from: 'pause', + to: 'play' + }, + pause: { + from: 'play', + to: 'pause' + } + }); + }, + to: function(props, duration, ease) { + var origin = {}; + var target = this._target; + var diff = {}; + ease = ease || this._ease; + this._dest = props; + this._duration = duration || this._duration; + this._ease = isFn(ease) ? ease : easing[ease]; + each(props, function(val, key) { + origin[key] = target[key]; + diff[key] = val - origin[key]; + }); + this._origin = origin; + this._diff = diff; + return this; + }, + progress: function(progress) { + var ease = this._ease; + var target = this._target; + var origin = this._origin; + var diff = this._diff; + var dest = this._dest; + var self = this; + if (progress != null) { + progress = progress < 1 ? progress : 1; + this._progress = progress; + each(dest, function(val, key) { + target[key] = origin[key] + diff[key] * ease(progress); + }); + self.emit('update', target); + return this; + } + return this._progress; + }, + play: function() { + var state = this._state; + if (state.is('play')) return; + state.play(); + var startTime = now(); + var progress = this._progress; + var duration = this._duration * (1 - progress); + var target = this._target; + var self = this; + function render() { + if (state.is('pause')) return; + var time = now(); + self.progress(progress + (time - startTime) / duration); + if (self._progress === 1) { + state.pause(); + self.emit('end', target); + return; + } + raf(render); + } + raf(render); + return this; + }, + pause: function() { + var state = this._state; + if (state.is('pause')) return; + state.pause(); + return this; + }, + paused: function() { + return this._state.is('pause'); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Url.js b/src/miniprogram_npm/miniprogram-licia/Url.js new file mode 100644 index 0000000..45a6d07 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Url.js @@ -0,0 +1,125 @@ +var Class = require('./Class'); +var extend = require('./extend'); +var trim = require('./trim'); +var query = require('./query'); +var isEmpty = require('./isEmpty'); +var each = require('./each'); +var isArr = require('./isArr'); +var toArr = require('./toArr'); +var isBrowser = require('./isBrowser'); +var isObj = require('./isObj'); +var toStr = require('./toStr'); +exports = Class( + { + className: 'Url', + initialize: function(url) { + if (!url && isBrowser) url = window.location.href; + extend(this, exports.parse(url || '')); + }, + setQuery: function(name, val) { + var query = this.query; + if (isObj(name)) { + each(name, function(val, key) { + query[key] = toStr(val); + }); + } else { + query[name] = toStr(val); + } + return this; + }, + rmQuery: function(name) { + var query = this.query; + if (!isArr(name)) name = toArr(name); + each(name, function(key) { + delete query[key]; + }); + return this; + }, + toString: function() { + return exports.stringify(this); + } + }, + { + parse: function(url) { + var ret = { + protocol: '', + auth: '', + hostname: '', + hash: '', + query: {}, + port: '', + pathname: '', + slashes: false + }; + var rest = trim(url); + var slashes = false; + var proto = rest.match(regProto); + if (proto) { + proto = proto[0]; + ret.protocol = proto.toLowerCase(); + rest = rest.substr(proto.length); + } + if (proto) { + slashes = rest.substr(0, 2) === '//'; + if (slashes) { + rest = rest.slice(2); + ret.slashes = true; + } + } + if (slashes) { + var host = rest; + var hostEnd = -1; + for (var i = 0, len = hostEndingChars.length; i < len; i++) { + var pos = rest.indexOf(hostEndingChars[i]); + if (pos !== -1 && (hostEnd === -1 || pos < hostEnd)) + hostEnd = pos; + } + if (hostEnd > -1) { + host = rest.slice(0, hostEnd); + rest = rest.slice(hostEnd); + } + var atSign = host.lastIndexOf('@'); + if (atSign !== -1) { + ret.auth = decodeURIComponent(host.slice(0, atSign)); + host = host.slice(atSign + 1); + } + ret.hostname = host; + var port = host.match(regPort); + if (port) { + port = port[0]; + if (port !== ':') ret.port = port.substr(1); + ret.hostname = host.substr(0, host.length - port.length); + } + } + var hash = rest.indexOf('#'); + if (hash !== -1) { + ret.hash = rest.substr(hash); + rest = rest.slice(0, hash); + } + var queryMark = rest.indexOf('?'); + if (queryMark !== -1) { + ret.query = query.parse(rest.substr(queryMark + 1)); + rest = rest.slice(0, queryMark); + } + ret.pathname = rest || '/'; + return ret; + }, + stringify: function(obj) { + var ret = + obj.protocol + + (obj.slashes ? '//' : '') + + (obj.auth ? encodeURIComponent(obj.auth) + '@' : '') + + obj.hostname + + (obj.port ? ':' + obj.port : '') + + obj.pathname; + if (!isEmpty(obj.query)) ret += '?' + query.stringify(obj.query); + if (obj.hash) ret += obj.hash; + return ret; + } + } +); +var regProto = /^([a-z0-9.+-]+:)/i; +var regPort = /:[0-9]*$/; +var hostEndingChars = ['/', '?', '#']; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Validator.js b/src/miniprogram_npm/miniprogram-licia/Validator.js new file mode 100644 index 0000000..8db3038 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Validator.js @@ -0,0 +1,82 @@ +var Class = require('./Class'); +var keys = require('./keys'); +var safeGet = require('./safeGet'); +var isFn = require('./isFn'); +var isUndef = require('./isUndef'); +var isNum = require('./isNum'); +var isStr = require('./isStr'); +var isBool = require('./isBool'); +exports = Class( + { + className: 'Validator', + initialize: function(options) { + this._options = options; + this._optKeys = keys(options); + }, + validate: function(obj) { + obj = obj || {}; + var options = this._options; + var objKeys = this._optKeys; + for (var i = 0, len = objKeys.length; i < len; i++) { + var key = objKeys[i]; + var result = this._validateVal( + safeGet(obj, key), + options[key], + key + ); + if (result !== true) return result; + } + return true; + }, + _validateVal: function(val, rules, objKey) { + var plugins = exports.plugins; + if (isFn(rules)) return rules(val); + var ruleKeys = keys(rules); + for (var i = 0, len = ruleKeys.length; i < len; i++) { + var key = ruleKeys[i]; + var config = rules[key]; + var result = true; + if (isFn(config)) result = config(val, objKey); + var plugin = plugins[key]; + if (plugin) result = plugin(val, objKey, config); + if (result !== true) return result; + } + return true; + } + }, + { + plugins: { + required: function(val, key, config) { + if (config && isUndef(val)) return key + ' is required'; + return true; + }, + number: function(val, key, config) { + if (config && !isUndef(val) && !isNum(val)) + return key + ' should be a number'; + return true; + }, + boolean: function(val, key, config) { + if (config && !isUndef(val) && !isBool(val)) + return key + ' should be a boolean'; + return true; + }, + string: function(val, key, config) { + if (config && !isUndef(val) && !isStr(val)) + return key + ' should be a string'; + return true; + }, + regexp: function(val, key, config) { + if (isStr(val) && !config.test(val)) + return ( + key + ' should match given regexp ' + config.toString() + ); + return true; + } + }, + addPlugin: function(name, plugin) { + exports.plugins[name] = plugin; + } + } +); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/Wrr.js b/src/miniprogram_npm/miniprogram-licia/Wrr.js new file mode 100644 index 0000000..ae3eb57 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/Wrr.js @@ -0,0 +1,86 @@ +var Class = require('./Class'); +var max = require('./max'); +var map = require('./map'); +var reduce = require('./reduce'); +var gcd = require('./gcd'); +var filter = require('./filter'); +exports = Class({ + initialize: function Wrr() { + this._peers = []; + }, + set: function(val, weight) { + var peers = this._peers; + var size = this.size; + for (var i = 0; i < size; i++) { + var peer = peers[i]; + if (peer.val === val) { + peer.weight = weight; + this._reset(); + return; + } + } + peers.push({ + val: val, + weight: weight + }); + this._reset(); + }, + get: function(val) { + var peers = this._peers; + var size = this.size; + for (var i = 0; i < size; i++) { + var peer = peers[i]; + if (peer.val === val) { + return peer.weight; + } + } + }, + remove: function(val) { + this._peers = filter(this._peers, function(peer) { + return peer.val !== val; + }); + this._reset(); + }, + next: function() { + var peers = this._peers; + var size = this.size; + if (size === 0) return; + + while (true) { + this._i = (this._i + 1) % size; + if (this._i === 0) { + this._cw = this._cw - this._gcdS; + if (this._cw <= 0) { + this._cw = this._maxS; + } + } + if (this._cw === 0) return; + if (peers[this._i].weight >= this._cw) { + return peers[this._i].val; + } + } + }, + clear: function() { + this._peers = []; + this._reset(); + }, + _reset: function() { + var peers = this._peers; + this.size = peers.length; + var weights = map(peers, function(peer) { + return peer.weight; + }); + this._i = -1; + this._cw = 0; + this._maxS = max.apply(null, weights); + this._gcdS = reduce( + weights, + function(prev, weight) { + return gcd(prev, weight); + }, + 0 + ); + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/abbrev.js b/src/miniprogram_npm/miniprogram-licia/abbrev.js new file mode 100644 index 0000000..bd5735a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/abbrev.js @@ -0,0 +1,28 @@ +var restArgs = require('./restArgs'); +var isSorted = require('./isSorted'); +exports = restArgs(function(names) { + names = names.sort(isSorted.defComparator); + var ret = {}; + var idleMap = {}; + for (var i = 0, len = names.length; i < len; i++) { + var str = names[i]; + var nextStr = names[i + 1] || ''; + if (str === nextStr) continue; + var start = false; + var abbrev = ''; + for (var j = 0, strLen = str.length; j < strLen; j++) { + abbrev += str[j]; + if (!start && (str[j] !== nextStr[j] || j === strLen - 1)) { + start = true; + } + if (!start) { + idleMap[abbrev] = str; + } else if (!ret[abbrev] && !idleMap[abbrev]) { + ret[abbrev] = str; + } + } + } + return ret; +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/after.js b/src/miniprogram_npm/miniprogram-licia/after.js new file mode 100644 index 0000000..6cb4ac3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/after.js @@ -0,0 +1,7 @@ +exports = function(n, fn) { + return function() { + if (--n < 1) return fn.apply(this, arguments); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/allKeys.js b/src/miniprogram_npm/miniprogram-licia/allKeys.js new file mode 100644 index 0000000..15ab6b3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/allKeys.js @@ -0,0 +1,42 @@ +var keys = require('./keys'); +var getProto = require('./getProto'); +var unique = require('./unique'); +var getOwnPropertyNames = Object.getOwnPropertyNames; +var getOwnPropertySymbols = Object.getOwnPropertySymbols; +exports = function(obj) { + var _ref = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : {}, + _ref$prototype = _ref.prototype, + prototype = _ref$prototype === void 0 ? true : _ref$prototype, + _ref$unenumerable = _ref.unenumerable, + unenumerable = _ref$unenumerable === void 0 ? false : _ref$unenumerable, + _ref$symbol = _ref.symbol, + symbol = _ref$symbol === void 0 ? false : _ref$symbol; + var ret = []; + if ((unenumerable || symbol) && getOwnPropertyNames) { + var getKeys = keys; + if (unenumerable && getOwnPropertyNames) getKeys = getOwnPropertyNames; + do { + ret = ret.concat(getKeys(obj)); + if (symbol && getOwnPropertySymbols) { + ret = ret.concat(getOwnPropertySymbols(obj)); + } + } while ( + prototype && + (obj = getProto(obj)) && + obj !== Object.prototype + ); + ret = unique(ret); + } else { + if (prototype) { + for (var key in obj) ret.push(key); + } else { + ret = keys(obj); + } + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/arrToMap.js b/src/miniprogram_npm/miniprogram-licia/arrToMap.js new file mode 100644 index 0000000..f00945b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/arrToMap.js @@ -0,0 +1,14 @@ +var each = require('./each'); +var isUndef = require('./isUndef'); +var isFn = require('./isFn'); +exports = function(arr, val) { + if (isUndef(val)) val = true; + var _isFn = isFn(val); + var ret = {}; + each(arr, function(key) { + ret[key] = _isFn ? val(key) : val; + }); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/atob.js b/src/miniprogram_npm/miniprogram-licia/atob.js new file mode 100644 index 0000000..2ba684b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/atob.js @@ -0,0 +1,21 @@ +var root = require('./root'); +var isNode = require('./isNode'); +var base64 = require('./base64'); +var map = require('./map'); +if (isNode) { + exports = function(str) { + return new Buffer(str, 'base64').toString('binary'); + }; +} else { + if (root.atob && !false) { + exports = root.atob; + } else { + exports = function(str) { + return map(base64.decode(str), function(c) { + return String.fromCharCode(c); + }).join(''); + }; + } +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/average.js b/src/miniprogram_npm/miniprogram-licia/average.js new file mode 100644 index 0000000..b68943f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/average.js @@ -0,0 +1,9 @@ +exports = function() { + var arr = arguments; + var sum = 0; + var len = arr.length; + for (var i = 0; i < len; i++) sum += arr[i]; + return sum / len; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/base64.js b/src/miniprogram_npm/miniprogram-licia/base64.js new file mode 100644 index 0000000..e40fe7f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/base64.js @@ -0,0 +1,83 @@ +exports = { + encode: function(bytes) { + var ret = []; + var len = bytes.length; + var remain = len % 3; + len = len - remain; + for (var i = 0; i < len; i += 3) { + ret.push( + numToBase64( + (bytes[i] << 16) + (bytes[i + 1] << 8) + bytes[i + 2] + ) + ); + } + len = bytes.length; + var tmp; + if (remain === 1) { + tmp = bytes[len - 1]; + ret.push(code[tmp >> 2]); + ret.push(code[(tmp << 4) & 0x3f]); + ret.push('=='); + } else if (remain === 2) { + tmp = (bytes[len - 2] << 8) + bytes[len - 1]; + ret.push(code[tmp >> 10]); + ret.push(code[(tmp >> 4) & 0x3f]); + ret.push(code[(tmp << 2) & 0x3f]); + ret.push('='); + } + return ret.join(''); + }, + decode: function(str) { + var len = str.length, + remain = 0; + if (str[len - 2] === '=') remain = 2; + else if (str[len - 1] === '=') remain = 1; + var ret = new Array((len * 3) / 4 - remain); + len = remain > 0 ? len - 4 : len; + var i, j; + for (i = 0, j = 0; i < len; i += 4) { + var num = base64ToNum(str[i], str[i + 1], str[i + 2], str[i + 3]); + ret[j++] = (num >> 16) & 0xff; + ret[j++] = (num >> 8) & 0xff; + ret[j++] = num & 0xff; + } + var tmp; + if (remain === 2) { + tmp = + (codeMap[str.charCodeAt(i)] << 2) | + (codeMap[str.charCodeAt(i + 1)] >> 4); + ret[j++] = tmp & 0xff; + } else if (remain === 1) { + tmp = + (codeMap[str.charCodeAt(i)] << 10) | + (codeMap[str.charCodeAt(i + 1)] << 4) | + (codeMap[str.charCodeAt(i + 2)] >> 2); + ret[j++] = (tmp >> 8) & 0xff; + ret[j++] = tmp & 0xff; + } + return ret; + } +}; +var codeMap = []; +var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; +for (var i = 0, len = code.length; i < len; i++) { + codeMap[code.charCodeAt(i)] = i; +} +function numToBase64(num) { + return ( + code[(num >> 18) & 0x3f] + + code[(num >> 12) & 0x3f] + + code[(num >> 6) & 0x3f] + + code[num & 0x3f] + ); +} +function base64ToNum(str1, str2, str3, str4) { + return ( + (codeMap[str1.charCodeAt(0)] << 18) | + (codeMap[str2.charCodeAt(0)] << 12) | + (codeMap[str3.charCodeAt(0)] << 6) | + codeMap[str4.charCodeAt(0)] + ); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/before.js b/src/miniprogram_npm/miniprogram-licia/before.js new file mode 100644 index 0000000..5c25de3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/before.js @@ -0,0 +1,10 @@ +exports = function(n, fn) { + var memo; + return function() { + if (--n > 0) memo = fn.apply(this, arguments); + if (n <= 1) fn = null; + return memo; + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/binarySearch.js b/src/miniprogram_npm/miniprogram-licia/binarySearch.js new file mode 100644 index 0000000..895f2cb --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/binarySearch.js @@ -0,0 +1,24 @@ +var isSorted = require('./isSorted'); +exports = function(arr, val) { + var cmp = + arguments.length > 2 && arguments[2] !== undefined + ? arguments[2] + : isSorted.defComparator; + var startIdx = 0; + var endIdx = arr.length - 1; + while (startIdx <= endIdx) { + var middleIdx = startIdx + Math.floor((endIdx - startIdx) / 2); + var middleVal = arr[middleIdx]; + if (cmp(middleVal, val) === 0) { + return middleIdx; + } + if (cmp(middleVal, val) < 0) { + startIdx = middleIdx + 1; + } else { + endIdx = middleIdx - 1; + } + } + return -1; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/bind.js b/src/miniprogram_npm/miniprogram-licia/bind.js new file mode 100644 index 0000000..64a793e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/bind.js @@ -0,0 +1,8 @@ +var restArgs = require('./restArgs'); +exports = restArgs(function(fn, ctx, args) { + return restArgs(function(callArgs) { + return fn.apply(ctx, args.concat(callArgs)); + }); +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/btoa.js b/src/miniprogram_npm/miniprogram-licia/btoa.js new file mode 100644 index 0000000..0a0470c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/btoa.js @@ -0,0 +1,23 @@ +var root = require('./root'); +var isNode = require('./isNode'); +var base64 = require('./base64'); +var map = require('./map'); +if (isNode) { + exports = function(str) { + return new Buffer(str, 'binary').toString('base64'); + }; +} else { + if (root.btoa && !false) { + exports = root.btoa; + } else { + exports = function(str) { + return base64.encode( + map(str, function(c) { + return c.charCodeAt(0); + }) + ); + }; + } +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/bubbleSort.js b/src/miniprogram_npm/miniprogram-licia/bubbleSort.js new file mode 100644 index 0000000..29fbab8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/bubbleSort.js @@ -0,0 +1,18 @@ +var swap = require('./swap'); +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + for (var i = 0, len = arr.length; i < len; i++) { + for (var j = i; j > 0; j--) { + if (cmp(arr[j], arr[j - 1]) < 0) { + swap(arr, j, j - 1); + } + } + } + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/bytesToStr.js b/src/miniprogram_npm/miniprogram-licia/bytesToStr.js new file mode 100644 index 0000000..820b611 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/bytesToStr.js @@ -0,0 +1,22 @@ +var utf8 = require('./utf8'); +var hex = require('./hex'); +var base64 = require('./base64'); +exports = function(bytes) { + var encoding = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : 'utf8'; + if (encoding === 'hex') return hex.encode(bytes); + if (encoding === 'base64') return base64.encode(bytes); + var str = []; + for (var i = 0, len = bytes.length; i < len; i++) { + str.push(String.fromCharCode(bytes[i])); + } + str = str.join(''); + if (encoding === 'utf8') { + str = utf8.decode(str); + } + return str; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/bytesToWords.js b/src/miniprogram_npm/miniprogram-licia/bytesToWords.js new file mode 100644 index 0000000..157ec11 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/bytesToWords.js @@ -0,0 +1,9 @@ +exports = function(bytes) { + var words = []; + for (var i = 0, len = bytes.length; i < len; i++) { + words[i >>> 2] |= bytes[i] << (24 - (i % 4) * 8); + } + return words; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/callbackify.js b/src/miniprogram_npm/miniprogram-licia/callbackify.js new file mode 100644 index 0000000..6124bc5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/callbackify.js @@ -0,0 +1,17 @@ +var restArgs = require('./restArgs'); +exports = function(fn) { + return restArgs(function(args) { + var cb = args.pop(); + fn.apply(this, args).then( + function(value) { + cb(null, value); + }, + function(err) { + if (err === null) err = new Error(); + cb(err); + } + ); + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/camelCase.js b/src/miniprogram_npm/miniprogram-licia/camelCase.js new file mode 100644 index 0000000..2f35235 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/camelCase.js @@ -0,0 +1,16 @@ +var splitCase = require('./splitCase'); +exports = function(str) { + var arr = splitCase(str); + var ret = arr[0]; + arr.shift(); + arr.forEach(capitalize, arr); + ret += arr.join(''); + return ret; +}; +function capitalize(val, idx) { + this[idx] = val.replace(/\w/, function(match) { + return match.toUpperCase(); + }); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/capitalize.js b/src/miniprogram_npm/miniprogram-licia/capitalize.js new file mode 100644 index 0000000..9d73fba --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/capitalize.js @@ -0,0 +1,5 @@ +exports = function(str) { + return str.charAt(0).toUpperCase() + str.substring(1).toLowerCase(); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/castPath.js b/src/miniprogram_npm/miniprogram-licia/castPath.js new file mode 100644 index 0000000..068affa --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/castPath.js @@ -0,0 +1,16 @@ +var has = require('./has'); +var isArr = require('./isArr'); +exports = function(str, obj) { + if (isArr(str)) return str; + if (obj && has(obj, str)) return [str]; + var ret = []; + str.replace(regPropName, function(match, number, quote, str) { + ret.push(quote ? str.replace(regEscapeChar, '$1') : number || match); + }); + return ret; +}; + +var regPropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; +var regEscapeChar = /\\(\\)?/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/centerAlign.js b/src/miniprogram_npm/miniprogram-licia/centerAlign.js new file mode 100644 index 0000000..0de3528 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/centerAlign.js @@ -0,0 +1,21 @@ +var longest = require('./longest'); +var isArr = require('./isArr'); +var isUndef = require('./isUndef'); +var map = require('./map'); +var lpad = require('./lpad'); +exports = function(str, width) { + var ret = str; + if (!isArr(ret)) { + ret = ret.split(regLineBreak); + } + if (isUndef(width)) width = longest(str); + ret = map(ret, function(str) { + var len = str.length; + return lpad(str, floor((width - len) / 2) + len); + }); + return ret.join('\n'); +}; +var regLineBreak = /\n/g; +var floor = Math.floor; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/char.js b/src/miniprogram_npm/miniprogram-licia/char.js new file mode 100644 index 0000000..4f84fcc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/char.js @@ -0,0 +1,5 @@ +exports = function(num) { + return String.fromCodePoint(num); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/chunk.js b/src/miniprogram_npm/miniprogram-licia/chunk.js new file mode 100644 index 0000000..5cedd72 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/chunk.js @@ -0,0 +1,12 @@ +exports = function(arr, size) { + var ret = []; + size = size || 1; + for (var i = 0, len = Math.ceil(arr.length / size); i < len; i++) { + var start = i * size; + var end = start + size; + ret.push(arr.slice(start, end)); + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/clamp.js b/src/miniprogram_npm/miniprogram-licia/clamp.js new file mode 100644 index 0000000..56a4b10 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/clamp.js @@ -0,0 +1,12 @@ +var isUndef = require('./isUndef'); +exports = function(n, lower, upper) { + if (isUndef(upper)) { + upper = lower; + lower = undefined; + } + if (!isUndef(lower) && n < lower) return lower; + if (n > upper) return upper; + return n; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/className.js b/src/miniprogram_npm/miniprogram-licia/className.js new file mode 100644 index 0000000..3cfd3d5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/className.js @@ -0,0 +1,20 @@ +var each = require('./each'); +var isStr = require('./isStr'); +var isNum = require('./isNum'); +var isArr = require('./isArr'); +var isObj = require('./isObj'); +exports = function() { + var ret = []; + each(arguments, function(arg) { + if (!arg) return; + if (isStr(arg) || isNum(arg)) return ret.push(arg); + if (isArr(arg)) return ret.push(exports.apply(null, arg)); + if (!isObj(arg)) return; + each(arg, function(val, key) { + if (val) ret.push(key); + }); + }); + return ret.join(' '); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/clone.js b/src/miniprogram_npm/miniprogram-licia/clone.js new file mode 100644 index 0000000..3b73e6a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/clone.js @@ -0,0 +1,9 @@ +var isObj = require('./isObj'); +var isArr = require('./isArr'); +var extend = require('./extend'); +exports = function(obj) { + if (!isObj(obj)) return obj; + return isArr(obj) ? obj.slice() : extend({}, obj); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/cloneDeep.js b/src/miniprogram_npm/miniprogram-licia/cloneDeep.js new file mode 100644 index 0000000..5babdae --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/cloneDeep.js @@ -0,0 +1,19 @@ +var isObj = require('./isObj'); +var isFn = require('./isFn'); +var isArr = require('./isArr'); +var mapObj = require('./mapObj'); +exports = function(obj) { + if (isArr(obj)) { + return obj.map(function(val) { + return exports(val); + }); + } + if (isObj(obj) && !isFn(obj)) { + return mapObj(obj, function(val) { + return exports(val); + }); + } + return obj; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/cmpVersion.js b/src/miniprogram_npm/miniprogram-licia/cmpVersion.js new file mode 100644 index 0000000..755df90 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/cmpVersion.js @@ -0,0 +1,16 @@ +var toInt = require('./toInt'); +var max = require('./max'); +exports = function(v1, v2) { + v1 = v1.split('.'); + v2 = v2.split('.'); + var len = max(v1.length, v2.length); + for (var i = 0; i < len; i++) { + var num1 = toInt(v1[i]); + var num2 = toInt(v2[i]); + if (num1 > num2) return 1; + if (num1 < num2) return -1; + } + return 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/combine.js b/src/miniprogram_npm/miniprogram-licia/combine.js new file mode 100644 index 0000000..337493b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/combine.js @@ -0,0 +1,9 @@ +exports = function(keys, values) { + var ret = {}; + for (var i = 0, len = keys.length; i < len; i++) { + ret[keys[i]] = values[i]; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/compact.js b/src/miniprogram_npm/miniprogram-licia/compact.js new file mode 100644 index 0000000..5191a5f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/compact.js @@ -0,0 +1,8 @@ +var filter = require('./filter'); +exports = function(arr) { + return filter(arr, function(val) { + return !!val; + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/compose.js b/src/miniprogram_npm/miniprogram-licia/compose.js new file mode 100644 index 0000000..c3537b0 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/compose.js @@ -0,0 +1,11 @@ +var restArgs = require('./restArgs'); +exports = restArgs(function(fnList) { + return function() { + var i = fnList.length - 1; + var result = fnList[i].apply(this, arguments); + while (i--) result = fnList[i].call(this, result); + return result; + }; +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/concat.js b/src/miniprogram_npm/miniprogram-licia/concat.js new file mode 100644 index 0000000..11281a5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/concat.js @@ -0,0 +1,11 @@ +var toArr = require('./toArr'); +exports = function() { + var args = toArr(arguments); + var ret = []; + for (var i = 0, len = args.length; i < len; i++) { + ret = ret.concat(toArr(args[i])); + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/contain.js b/src/miniprogram_npm/miniprogram-licia/contain.js new file mode 100644 index 0000000..10ca0f7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/contain.js @@ -0,0 +1,11 @@ +var idxOf = require('./idxOf'); +var isStr = require('./isStr'); +var isArrLike = require('./isArrLike'); +var values = require('./values'); +exports = function(arr, val) { + if (isStr(arr)) return arr.indexOf(val) > -1; + if (!isArrLike(arr)) arr = values(arr); + return idxOf(arr, val) >= 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/convertBase.js b/src/miniprogram_npm/miniprogram-licia/convertBase.js new file mode 100644 index 0000000..65c0a3d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/convertBase.js @@ -0,0 +1,5 @@ +exports = function(num, from, to) { + return parseInt(num, from).toString(to); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/convertBin.js b/src/miniprogram_npm/miniprogram-licia/convertBin.js new file mode 100644 index 0000000..99d2734 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/convertBin.js @@ -0,0 +1,60 @@ +var isStr = require('./isStr'); +var base64 = require('./base64'); +var isArrBuffer = require('./isArrBuffer'); +var isArr = require('./isArr'); +var isBuffer = require('./isBuffer'); +var type = require('./type'); +var lowerCase = require('./lowerCase'); +exports = function(bin, t) { + var result; + t = lowerCase(t); + if (isStr(bin)) { + result = new Uint8Array(base64.decode(bin)); + } else if (isArrBuffer(bin)) { + bin = bin.slice(0); + result = new Uint8Array(bin); + } else if (isArr(bin)) { + result = new Uint8Array(bin); + } else if (type(bin) === 'uint8array') { + result = bin.slice(0); + } else if (isBuffer(bin)) { + result = new Uint8Array(bin.length); + for (var i = 0; i < bin.length; i++) { + result[i] = bin[i]; + } + } + if (result) { + switch (t) { + case 'base64': + result = base64.encode(result); + break; + case 'arraybuffer': + result = result.buffer; + break; + case 'array': + result = [].slice.call(result); + break; + case 'buffer': + result = Buffer.from(result); + break; + case 'blob': + result = new Blob([result.buffer]); + break; + } + } + return result; +}; +exports.blobToArrBuffer = function(blob) { + return new Promise(function(resolve, reject) { + var fileReader = new FileReader(); + fileReader.onload = function(e) { + resolve(e.target.result); + }; + fileReader.onerror = function(err) { + reject(err); + }; + fileReader.readAsArrayBuffer(blob); + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/crc1.js b/src/miniprogram_npm/miniprogram-licia/crc1.js new file mode 100644 index 0000000..919a884 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/crc1.js @@ -0,0 +1,19 @@ +var isStr = require('./isStr'); +var strToBytes = require('./strToBytes'); + +exports = function(input, previous) { + return exports.signed(input, previous) >>> 0; +}; +exports.signed = function(input, previous) { + if (isStr(input)) input = strToBytes(input); + var crc = ~~previous; + var accum = 0; + for (var i = 0, len = input.length; i < len; i++) { + var byte = input[i]; + accum += byte; + } + crc += accum % 256; + return crc % 256; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/crc16.js b/src/miniprogram_npm/miniprogram-licia/crc16.js new file mode 100644 index 0000000..f6a33d1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/crc16.js @@ -0,0 +1,276 @@ +var isStr = require('./isStr'); +var strToBytes = require('./strToBytes'); + +var TABLE = [ + 0x0000, + 0xc0c1, + 0xc181, + 0x0140, + 0xc301, + 0x03c0, + 0x0280, + 0xc241, + 0xc601, + 0x06c0, + 0x0780, + 0xc741, + 0x0500, + 0xc5c1, + 0xc481, + 0x0440, + 0xcc01, + 0x0cc0, + 0x0d80, + 0xcd41, + 0x0f00, + 0xcfc1, + 0xce81, + 0x0e40, + 0x0a00, + 0xcac1, + 0xcb81, + 0x0b40, + 0xc901, + 0x09c0, + 0x0880, + 0xc841, + 0xd801, + 0x18c0, + 0x1980, + 0xd941, + 0x1b00, + 0xdbc1, + 0xda81, + 0x1a40, + 0x1e00, + 0xdec1, + 0xdf81, + 0x1f40, + 0xdd01, + 0x1dc0, + 0x1c80, + 0xdc41, + 0x1400, + 0xd4c1, + 0xd581, + 0x1540, + 0xd701, + 0x17c0, + 0x1680, + 0xd641, + 0xd201, + 0x12c0, + 0x1380, + 0xd341, + 0x1100, + 0xd1c1, + 0xd081, + 0x1040, + 0xf001, + 0x30c0, + 0x3180, + 0xf141, + 0x3300, + 0xf3c1, + 0xf281, + 0x3240, + 0x3600, + 0xf6c1, + 0xf781, + 0x3740, + 0xf501, + 0x35c0, + 0x3480, + 0xf441, + 0x3c00, + 0xfcc1, + 0xfd81, + 0x3d40, + 0xff01, + 0x3fc0, + 0x3e80, + 0xfe41, + 0xfa01, + 0x3ac0, + 0x3b80, + 0xfb41, + 0x3900, + 0xf9c1, + 0xf881, + 0x3840, + 0x2800, + 0xe8c1, + 0xe981, + 0x2940, + 0xeb01, + 0x2bc0, + 0x2a80, + 0xea41, + 0xee01, + 0x2ec0, + 0x2f80, + 0xef41, + 0x2d00, + 0xedc1, + 0xec81, + 0x2c40, + 0xe401, + 0x24c0, + 0x2580, + 0xe541, + 0x2700, + 0xe7c1, + 0xe681, + 0x2640, + 0x2200, + 0xe2c1, + 0xe381, + 0x2340, + 0xe101, + 0x21c0, + 0x2080, + 0xe041, + 0xa001, + 0x60c0, + 0x6180, + 0xa141, + 0x6300, + 0xa3c1, + 0xa281, + 0x6240, + 0x6600, + 0xa6c1, + 0xa781, + 0x6740, + 0xa501, + 0x65c0, + 0x6480, + 0xa441, + 0x6c00, + 0xacc1, + 0xad81, + 0x6d40, + 0xaf01, + 0x6fc0, + 0x6e80, + 0xae41, + 0xaa01, + 0x6ac0, + 0x6b80, + 0xab41, + 0x6900, + 0xa9c1, + 0xa881, + 0x6840, + 0x7800, + 0xb8c1, + 0xb981, + 0x7940, + 0xbb01, + 0x7bc0, + 0x7a80, + 0xba41, + 0xbe01, + 0x7ec0, + 0x7f80, + 0xbf41, + 0x7d00, + 0xbdc1, + 0xbc81, + 0x7c40, + 0xb401, + 0x74c0, + 0x7580, + 0xb541, + 0x7700, + 0xb7c1, + 0xb681, + 0x7640, + 0x7200, + 0xb2c1, + 0xb381, + 0x7340, + 0xb101, + 0x71c0, + 0x7080, + 0xb041, + 0x5000, + 0x90c1, + 0x9181, + 0x5140, + 0x9301, + 0x53c0, + 0x5280, + 0x9241, + 0x9601, + 0x56c0, + 0x5780, + 0x9741, + 0x5500, + 0x95c1, + 0x9481, + 0x5440, + 0x9c01, + 0x5cc0, + 0x5d80, + 0x9d41, + 0x5f00, + 0x9fc1, + 0x9e81, + 0x5e40, + 0x5a00, + 0x9ac1, + 0x9b81, + 0x5b40, + 0x9901, + 0x59c0, + 0x5880, + 0x9841, + 0x8801, + 0x48c0, + 0x4980, + 0x8941, + 0x4b00, + 0x8bc1, + 0x8a81, + 0x4a40, + 0x4e00, + 0x8ec1, + 0x8f81, + 0x4f40, + 0x8d01, + 0x4dc0, + 0x4c80, + 0x8c41, + 0x4400, + 0x84c1, + 0x8581, + 0x4540, + 0x8701, + 0x47c0, + 0x4680, + 0x8641, + 0x8201, + 0x42c0, + 0x4380, + 0x8341, + 0x4100, + 0x81c1, + 0x8081, + 0x4040 +]; +if (typeof Int32Array !== 'undefined') TABLE = new Int32Array(TABLE); +exports = function(input, previous) { + return exports.signed(input, previous) >>> 0; +}; +exports.signed = function(input, previous) { + if (isStr(input)) input = strToBytes(input); + var crc = ~~previous; + for (var i = 0, len = input.length; i < len; i++) { + var byte = input[i]; + crc = (TABLE[(crc ^ byte) & 0xff] ^ (crc >> 8)) & 0xffff; + } + return crc; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/crc32.js b/src/miniprogram_npm/miniprogram-licia/crc32.js new file mode 100644 index 0000000..06f0d2a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/crc32.js @@ -0,0 +1,29 @@ +var isStr = require('./isStr'); +var strToBytes = require('./strToBytes'); +var TABLE = []; +for (var n = 0; n < 256; n++) { + var c = n; + for (var k = 0; k < 8; k++) { + if (c & 1) { + c = 0xedb88320 ^ (c >>> 1); + } else { + c = c >>> 1; + } + } + TABLE[n] = c >>> 0; +} +if (typeof Int32Array !== 'undefined') TABLE = new Int32Array(TABLE); +exports = function(input, previous) { + return exports.signed(input, previous) >>> 0; +}; +exports.signed = function(input, previous) { + if (isStr(input)) input = strToBytes(input); + var crc = previous === 0 ? 0 : ~~previous ^ -1; + for (var i = 0, len = input.length; i < len; i++) { + var byte = input[i]; + crc = TABLE[(crc ^ byte) & 0xff] ^ (crc >>> 8); + } + return crc ^ -1; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/crc8.js b/src/miniprogram_npm/miniprogram-licia/crc8.js new file mode 100644 index 0000000..fbf930f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/crc8.js @@ -0,0 +1,276 @@ +var isStr = require('./isStr'); +var strToBytes = require('./strToBytes'); + +var TABLE = [ + 0x00, + 0x07, + 0x0e, + 0x09, + 0x1c, + 0x1b, + 0x12, + 0x15, + 0x38, + 0x3f, + 0x36, + 0x31, + 0x24, + 0x23, + 0x2a, + 0x2d, + 0x70, + 0x77, + 0x7e, + 0x79, + 0x6c, + 0x6b, + 0x62, + 0x65, + 0x48, + 0x4f, + 0x46, + 0x41, + 0x54, + 0x53, + 0x5a, + 0x5d, + 0xe0, + 0xe7, + 0xee, + 0xe9, + 0xfc, + 0xfb, + 0xf2, + 0xf5, + 0xd8, + 0xdf, + 0xd6, + 0xd1, + 0xc4, + 0xc3, + 0xca, + 0xcd, + 0x90, + 0x97, + 0x9e, + 0x99, + 0x8c, + 0x8b, + 0x82, + 0x85, + 0xa8, + 0xaf, + 0xa6, + 0xa1, + 0xb4, + 0xb3, + 0xba, + 0xbd, + 0xc7, + 0xc0, + 0xc9, + 0xce, + 0xdb, + 0xdc, + 0xd5, + 0xd2, + 0xff, + 0xf8, + 0xf1, + 0xf6, + 0xe3, + 0xe4, + 0xed, + 0xea, + 0xb7, + 0xb0, + 0xb9, + 0xbe, + 0xab, + 0xac, + 0xa5, + 0xa2, + 0x8f, + 0x88, + 0x81, + 0x86, + 0x93, + 0x94, + 0x9d, + 0x9a, + 0x27, + 0x20, + 0x29, + 0x2e, + 0x3b, + 0x3c, + 0x35, + 0x32, + 0x1f, + 0x18, + 0x11, + 0x16, + 0x03, + 0x04, + 0x0d, + 0x0a, + 0x57, + 0x50, + 0x59, + 0x5e, + 0x4b, + 0x4c, + 0x45, + 0x42, + 0x6f, + 0x68, + 0x61, + 0x66, + 0x73, + 0x74, + 0x7d, + 0x7a, + 0x89, + 0x8e, + 0x87, + 0x80, + 0x95, + 0x92, + 0x9b, + 0x9c, + 0xb1, + 0xb6, + 0xbf, + 0xb8, + 0xad, + 0xaa, + 0xa3, + 0xa4, + 0xf9, + 0xfe, + 0xf7, + 0xf0, + 0xe5, + 0xe2, + 0xeb, + 0xec, + 0xc1, + 0xc6, + 0xcf, + 0xc8, + 0xdd, + 0xda, + 0xd3, + 0xd4, + 0x69, + 0x6e, + 0x67, + 0x60, + 0x75, + 0x72, + 0x7b, + 0x7c, + 0x51, + 0x56, + 0x5f, + 0x58, + 0x4d, + 0x4a, + 0x43, + 0x44, + 0x19, + 0x1e, + 0x17, + 0x10, + 0x05, + 0x02, + 0x0b, + 0x0c, + 0x21, + 0x26, + 0x2f, + 0x28, + 0x3d, + 0x3a, + 0x33, + 0x34, + 0x4e, + 0x49, + 0x40, + 0x47, + 0x52, + 0x55, + 0x5c, + 0x5b, + 0x76, + 0x71, + 0x78, + 0x7f, + 0x6a, + 0x6d, + 0x64, + 0x63, + 0x3e, + 0x39, + 0x30, + 0x37, + 0x22, + 0x25, + 0x2c, + 0x2b, + 0x06, + 0x01, + 0x08, + 0x0f, + 0x1a, + 0x1d, + 0x14, + 0x13, + 0xae, + 0xa9, + 0xa0, + 0xa7, + 0xb2, + 0xb5, + 0xbc, + 0xbb, + 0x96, + 0x91, + 0x98, + 0x9f, + 0x8a, + 0x8d, + 0x84, + 0x83, + 0xde, + 0xd9, + 0xd0, + 0xd7, + 0xc2, + 0xc5, + 0xcc, + 0xcb, + 0xe6, + 0xe1, + 0xe8, + 0xef, + 0xfa, + 0xfd, + 0xf4, + 0xf3 +]; +if (typeof Int32Array !== 'undefined') TABLE = new Int32Array(TABLE); +exports = function(input, previous) { + return exports.signed(input, previous) >>> 0; +}; +exports.signed = function(input, previous) { + if (isStr(input)) input = strToBytes(input); + var crc = ~~previous; + for (var i = 0, len = input.length; i < len; i++) { + var byte = input[i]; + crc = TABLE[(crc ^ byte) & 0xff] & 0xff; + } + return crc; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/create.js b/src/miniprogram_npm/miniprogram-licia/create.js new file mode 100644 index 0000000..a5302e5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/create.js @@ -0,0 +1,11 @@ +var isObj = require('./isObj'); +exports = function(proto) { + if (!isObj(proto)) return {}; + if (objCreate && !false) return objCreate(proto); + function noop() {} + noop.prototype = proto; + return new noop(); +}; +var objCreate = Object.create; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/createAssigner.js b/src/miniprogram_npm/miniprogram-licia/createAssigner.js new file mode 100644 index 0000000..2ce8691 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/createAssigner.js @@ -0,0 +1,16 @@ +var isUndef = require('./isUndef'); +var each = require('./each'); +exports = function(keysFn, defaults) { + return function(obj) { + each(arguments, function(src, idx) { + if (idx === 0) return; + var keys = keysFn(src); + each(keys, function(key) { + if (!defaults || isUndef(obj[key])) obj[key] = src[key]; + }); + }); + return obj; + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/css.js b/src/miniprogram_npm/miniprogram-licia/css.js new file mode 100644 index 0000000..ac7ac3f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/css.js @@ -0,0 +1,329 @@ +var Class = require('./Class'); +var trim = require('./trim'); +var repeat = require('./repeat'); +var defaults = require('./defaults'); +var camelCase = require('./camelCase'); + +exports = { + parse: function(css) { + return new Parser(css).parse(); + }, + stringify: function(stylesheet, options) { + return new Compiler(stylesheet, options).compile(); + } +}; +var regComments = /(\/\*[\s\S]*?\*\/)/gi; +var regOpen = /^{\s*/; +var regClose = /^}/; +var regWhitespace = /^\s*/; +var regProperty = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/; +var regValue = /^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/; +var regSelector = /^([^{]+)/; +var regSemicolon = /^[;\s]*/; +var regColon = /^:\s*/; +var regMedia = /^@media *([^{]+)/; +var regKeyframes = /^@([-\w]+)?keyframes\s*/; +var regFontFace = /^@font-face\s*/; +var regSupports = /^@supports *([^{]+)/; +var regIdentifier = /^([-\w]+)\s*/; +var regKeyframeSelector = /^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/; +var regComma = /^,\s*/; +var Parser = Class({ + initialize: function Parser(css) { + this.input = stripCmt(css); + this.open = this._createMatcher(regOpen); + this.close = this._createMatcher(regClose); + this.whitespace = this._createMatcher(regWhitespace); + this.atImport = this._createAtRule('import'); + this.atCharset = this._createAtRule('charset'); + this.atNamespace = this._createAtRule('namespace'); + }, + parse: function() { + return this.stylesheet(); + }, + stylesheet: function() { + return { + type: 'stylesheet', + rules: this.rules() + }; + }, + rules: function() { + var rule; + var rules = []; + this.whitespace(); + while ( + this.input.length && + this.input[0] !== '}' && + (rule = this.atRule() || this.rule()) + ) { + rules.push(rule); + this.whitespace(); + } + return rules; + }, + atRule: function() { + if (this.input[0] !== '@') return; + return ( + this.atKeyframes() || + this.atMedia() || + this.atSupports() || + this.atImport() || + this.atCharset() || + this.atNamespace() || + this.atFontFace() + ); + }, + atKeyframes: function() { + var matched = this.match(regKeyframes); + if (!matched) return; + var vendor = matched[1] || ''; + matched = this.match(regIdentifier); + if (!matched) throw Error('@keyframes missing name'); + var name = matched[1]; + if (!this.open()) throw Error("@keyframes missing '{'"); + var keyframes = []; + var keyframe; + while ((keyframe = this.keyframe())) { + keyframes.push(keyframe); + } + if (!this.close()) throw Error("@keyframes missing '}'"); + return { + type: 'keyframes', + name: name, + vendor: vendor, + keyframes: keyframes + }; + }, + keyframe: function() { + var selector = []; + var matched; + while ((matched = this.match(regKeyframeSelector))) { + selector.push(matched[1]); + this.match(regComma); + } + if (!selector.length) return; + this.whitespace(); + return { + type: 'keyframe', + selector: selector.join(', '), + declarations: this.declarations() + }; + }, + atSupports: function() { + var matched = this.match(regSupports); + if (!matched) return; + var supports = trim(matched[1]); + if (!this.open()) throw Error("@supports missing '{'"); + var rules = this.rules(); + if (!this.close()) throw Error("@supports missing '}'"); + return { + type: 'supports', + supports: supports, + rules: rules + }; + }, + atFontFace: function() { + var matched = this.match(regFontFace); + if (!matched) return; + if (!this.open()) throw Error("@font-face missing '{'"); + var declaration; + var declarations = []; + while ((declaration = this.declaration())) { + declarations.push(declaration); + } + if (!this.close()) throw Error("@font-face missing '}'"); + return { + type: 'font-face', + declarations: declarations + }; + }, + atMedia: function() { + var matched = this.match(regMedia); + if (!matched) return; + var media = trim(matched[1]); + if (!this.open()) throw Error("@media missing '{'"); + this.whitespace(); + var rules = this.rules(); + if (!this.close()) throw Error("@media missing '}'"); + return { + type: 'media', + media: media, + rules: rules + }; + }, + rule: function() { + var selector = this.selector(); + if (!selector) throw Error('missing selector'); + return { + type: 'rule', + selector: selector, + declarations: this.declarations() + }; + }, + declarations: function() { + var declarations = []; + if (!this.open()) throw Error("missing '{'"); + this.whitespace(); + var declaration; + while ((declaration = this.declaration())) { + declarations.push(declaration); + } + if (!this.close()) throw Error("missing '}'"); + this.whitespace(); + return declarations; + }, + declaration: function() { + var property = this.match(regProperty); + if (!property) return; + property = trim(property[0]); + if (!this.match(regColon)) throw Error("property missing ':'"); + var value = this.match(regValue); + this.match(regSemicolon); + this.whitespace(); + return { + type: 'declaration', + property: property, + value: value ? trim(value[0]) : '' + }; + }, + selector: function() { + var matched = this.match(regSelector); + if (!matched) return; + return trim(matched[0]); + }, + match: function(reg) { + var matched = reg.exec(this.input); + if (!matched) return; + this.input = this.input.slice(matched[0].length); + return matched; + }, + _createMatcher: function(reg) { + var _this = this; + return function() { + return _this.match(reg); + }; + }, + _createAtRule: function(name) { + var reg = new RegExp('^@' + name + '\\s*([^;]+);'); + return function() { + var matched = this.match(reg); + if (!matched) return; + var ret = { + type: name + }; + ret[name] = trim(matched[1]); + return ret; + }; + } +}); +var Compiler = Class({ + initialize: function Compiler(input) { + var options = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : {}; + defaults(options, { + indent: ' ' + }); + this.input = input; + this.indentLevel = 0; + this.indentation = options.indent; + }, + compile: function() { + return this.stylesheet(this.input); + }, + stylesheet: function(node) { + return this.mapVisit(node.rules, '\n\n'); + }, + media: function(node) { + return ( + '@media ' + + node.media + + ' {\n' + + this.indent(1) + + this.mapVisit(node.rules, '\n\n') + + this.indent(-1) + + '\n}' + ); + }, + keyframes: function(node) { + return ( + '@'.concat(node.vendor, 'keyframes ') + + node.name + + ' {\n' + + this.indent(1) + + this.mapVisit(node.keyframes, '\n') + + this.indent(-1) + + '\n}' + ); + }, + supports: function(node) { + return ( + '@supports ' + + node.supports + + ' {\n' + + this.indent(1) + + this.mapVisit(node.rules, '\n\n') + + this.indent(-1) + + '\n}' + ); + }, + keyframe: function(node) { + return this.rule(node); + }, + mapVisit: function(nodes, delimiter) { + var str = ''; + for (var i = 0, len = nodes.length; i < len; i++) { + var node = nodes[i]; + str += this[camelCase(node.type)](node); + if (delimiter && i < len - 1) str += delimiter; + } + return str; + }, + fontFace: function(node) { + return ( + '@font-face {\n' + + this.indent(1) + + this.mapVisit(node.declarations, '\n') + + this.indent(-1) + + '\n}' + ); + }, + rule: function(node) { + return ( + this.indent() + + node.selector + + ' {\n' + + this.indent(1) + + this.mapVisit(node.declarations, '\n') + + this.indent(-1) + + '\n' + + this.indent() + + '}' + ); + }, + declaration: function(node) { + return this.indent() + node.property + ': ' + node.value + ';'; + }, + import: function(node) { + return '@import '.concat(node.import, ';'); + }, + charset: function(node) { + return '@charset '.concat(node.charset, ';'); + }, + namespace: function(node) { + return '@namespace '.concat(node.namespace, ';'); + }, + indent: function(level) { + if (level) { + this.indentLevel += level; + return ''; + } + return repeat(this.indentation, this.indentLevel); + } +}); +var stripCmt = function(str) { + return str.replace(regComments, ''); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/cssPriority.js b/src/miniprogram_npm/miniprogram-licia/cssPriority.js new file mode 100644 index 0000000..37f8f39 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/cssPriority.js @@ -0,0 +1,63 @@ +var selector = require('./selector'); +var each = require('./each'); +var startWith = require('./startWith'); +var contain = require('./contain'); +var cmpVersion = require('./cmpVersion'); + +exports = function(sel) { + var _ref = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : {}, + _ref$important = _ref.important, + important = _ref$important === void 0 ? false : _ref$important, + _ref$inlineStyle = _ref.inlineStyle, + inlineStyle = _ref$inlineStyle === void 0 ? false : _ref$inlineStyle, + _ref$position = _ref.position, + position = _ref$position === void 0 ? 0 : _ref$position; + var ret = [0, 0, 0, 0, 0, position]; + if (important) ret[0] = 1; + if (inlineStyle) ret[1] = 1; + var group = selector.parse(sel)[0]; + each(group, function(_ref2) { + var type = _ref2.type, + value = _ref2.value; + switch (type) { + case 'id': + ret[2]++; + break; + case 'class': + case 'attribute': + ret[3]++; + break; + case 'pseudo': + if (contain(PSEUDO_ELEMS, value.replace(/:/g, ''))) { + ret[4]++; + } else if (!startWith(value, '::')) { + ret[3]++; + } + break; + case 'tag': + if (value !== '*') { + ret[4]++; + } + break; + } + }); + return ret; +}; +var PSEUDO_ELEMS = [ + 'first-letter', + 'last-letter', + 'first-line', + 'last-line', + 'first-child', + 'last-child', + 'before', + 'after' +]; +exports.compare = function(p1, p2) { + return cmpVersion(p1.join('.'), p2.join('.')); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/curry.js b/src/miniprogram_npm/miniprogram-licia/curry.js new file mode 100644 index 0000000..9d4fd00 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/curry.js @@ -0,0 +1,15 @@ +var toArr = require('./toArr'); +exports = function(fn) { + var len = fn.length; + return function curriedFn() { + var args = toArr(arguments); + if (args.length < len) { + return function() { + return curriedFn.apply(null, args.concat(toArr(arguments))); + }; + } + return fn.apply(null, args); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/dataUrl.js b/src/miniprogram_npm/miniprogram-licia/dataUrl.js new file mode 100644 index 0000000..c93e71e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/dataUrl.js @@ -0,0 +1,68 @@ +var isDataUrl = require('./isDataUrl'); +var trim = require('./trim'); +var endWith = require('./endWith'); +var startWith = require('./startWith'); +var contain = require('./contain'); +var decodeUriComponent = require('./decodeUriComponent'); +var defaults = require('./defaults'); +var isStr = require('./isStr'); +var convertBin = require('./convertBin'); +exports = { + parse: function(dataUrl) { + if (!isDataUrl(dataUrl)) { + return null; + } + dataUrl = dataUrl.slice('data:'.length); + var commaIdx = dataUrl.indexOf(','); + var mime = trim(dataUrl.slice(0, commaIdx)); + var data = trim(dataUrl.slice(commaIdx + 1)); + var base64 = false; + if (endWith(mime, ';base64')) { + base64 = true; + mime = mime.slice(0, -';base64'.length); + } + var charset = ''; + if (contain(mime, 'charset=')) { + charset = mime.split('charset=')[1]; + mime = mime.split(';')[0]; + } + if (!mime) { + mime = 'text/plain'; + } + if (!base64 && startWith(mime, 'text/') && contain(data, '%')) { + data = decodeUriComponent(data); + } + return { + data: data, + mime: mime, + charset: charset, + base64: base64 + }; + }, + stringify: function(data, mime) { + var options = + arguments.length > 2 && arguments[2] !== undefined + ? arguments[2] + : {}; + defaults(options, { + base64: true, + charset: '' + }); + var result = 'data:' + mime; + if (options.charset && startWith(mime, 'text/')) { + result += ';charset=' + options.charset; + } + if (!isStr(data)) { + data = convertBin(data, 'base64'); + options.base64 = true; + } + if (options.base64) { + result += ';base64'; + } else if (startWith(mime, 'text/') || !mime) { + data = encodeURIComponent(data); + } + return result + ',' + data; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/dateFormat.js b/src/miniprogram_npm/miniprogram-licia/dateFormat.js new file mode 100644 index 0000000..a61ed69 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/dateFormat.js @@ -0,0 +1,142 @@ +var isStr = require('./isStr'); +var isDate = require('./isDate'); +var toStr = require('./toStr'); +var lpad = require('./lpad'); +exports = function(date, mask, utc, gmt) { + if (arguments.length === 1 && isStr(date) && !regNum.test(date)) { + mask = date; + date = undefined; + } + date = date || new Date(); + if (!isDate(date)) date = new Date(date); + mask = toStr(exports.masks[mask] || mask || exports.masks['default']); + var maskSlice = mask.slice(0, 4); + if (maskSlice === 'UTC:' || maskSlice === 'GMT:') { + mask = mask.slice(4); + utc = true; + if (maskSlice === 'GMT:') gmt = true; + } + var prefix = utc ? 'getUTC' : 'get'; + var d = date[prefix + 'Date'](); + var D = date[prefix + 'Day'](); + var m = date[prefix + 'Month'](); + var y = date[prefix + 'FullYear'](); + var H = date[prefix + 'Hours'](); + var M = date[prefix + 'Minutes'](); + var s = date[prefix + 'Seconds'](); + var L = date[prefix + 'Milliseconds'](); + var o = utc ? 0 : date.getTimezoneOffset(); + var flags = { + d: d, + dd: padZero(d), + ddd: exports.i18n.dayNames[D], + dddd: exports.i18n.dayNames[D + 7], + m: m + 1, + mm: padZero(m + 1), + mmm: exports.i18n.monthNames[m], + mmmm: exports.i18n.monthNames[m + 12], + yy: toStr(y).slice(2), + yyyy: y, + h: H % 12 || 12, + hh: padZero(H % 12 || 12), + H: H, + HH: padZero(H), + M: M, + MM: padZero(M), + s: s, + ss: padZero(s), + l: padZero(L, 3), + L: padZero(Math.round(L / 10)), + t: H < 12 ? 'a' : 'p', + tt: H < 12 ? 'am' : 'pm', + T: H < 12 ? 'A' : 'P', + TT: H < 12 ? 'AM' : 'PM', + Z: gmt + ? 'GMT' + : utc + ? 'UTC' + : (toStr(date).match(regTimezone) || ['']) + .pop() + .replace(regTimezoneClip, ''), + o: + (o > 0 ? '-' : '+') + + padZero(Math.floor(Math.abs(o) / 60) * 100 + (Math.abs(o) % 60), 4), + S: ['th', 'st', 'nd', 'rd'][ + d % 10 > 3 ? 0 : (((d % 100) - (d % 10) != 10) * d) % 10 + ] + }; + return mask.replace(regToken, function(match) { + if (match in flags) return flags[match]; + return match.slice(1, match.length - 1); + }); +}; +var padZero = function(str) { + var len = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2; + return lpad(toStr(str), len, '0'); +}; +var regToken = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloSZWN]|"[^"]*"|'[^']*'/g; +var regTimezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g; +var regNum = /\d/; +var regTimezoneClip = /[^-+\dA-Z]/g; +exports.masks = { + default: 'ddd mmm dd yyyy HH:MM:ss', + shortDate: 'm/d/yy', + mediumDate: 'mmm d, yyyy', + longDate: 'mmmm d, yyyy', + fullDate: 'dddd, mmmm d, yyyy', + shortTime: 'h:MM TT', + mediumTime: 'h:MM:ss TT', + longTime: 'h:MM:ss TT Z', + isoDate: 'yyyy-mm-dd', + isoTime: 'HH:MM:ss', + isoDateTime: "yyyy-mm-dd'T'HH:MM:sso", + isoUtcDateTime: "UTC:yyyy-mm-dd'T'HH:MM:ss'Z'", + expiresHeaderFormat: 'ddd, dd mmm yyyy HH:MM:ss Z' +}; +exports.i18n = { + dayNames: [ + 'Sun', + 'Mon', + 'Tue', + 'Wed', + 'Thu', + 'Fri', + 'Sat', + 'Sunday', + 'Monday', + 'Tuesday', + 'Wednesday', + 'Thursday', + 'Friday', + 'Saturday' + ], + monthNames: [ + 'Jan', + 'Feb', + 'Mar', + 'Apr', + 'May', + 'Jun', + 'Jul', + 'Aug', + 'Sep', + 'Oct', + 'Nov', + 'Dec', + 'January', + 'February', + 'March', + 'April', + 'May', + 'June', + 'July', + 'August', + 'September', + 'October', + 'November', + 'December' + ] +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/debounce.js b/src/miniprogram_npm/miniprogram-licia/debounce.js new file mode 100644 index 0000000..6c2d322 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/debounce.js @@ -0,0 +1,15 @@ +exports = function(fn, wait, immediate) { + var timeout; + return function() { + var ctx = this; + var args = arguments; + var throttler = function() { + timeout = null; + fn.apply(ctx, args); + }; + if (!immediate) clearTimeout(timeout); + if (!immediate || !timeout) timeout = setTimeout(throttler, wait); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/deburr.js b/src/miniprogram_npm/miniprogram-licia/deburr.js new file mode 100644 index 0000000..b930e07 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/deburr.js @@ -0,0 +1,206 @@ +exports = function(str) { + return str + .replace(regLatin, function(key) { + return deburredLetters[key]; + }) + .replace(regComboMark, ''); +}; + +var regComboMark = /[\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff]/g; +var regLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g; + +var deburredLetters = { + À: 'A', + Á: 'A', + Â: 'A', + Ã: 'A', + Ä: 'A', + Å: 'A', + à: 'a', + á: 'a', + â: 'a', + ã: 'a', + ä: 'a', + å: 'a', + Ç: 'C', + ç: 'c', + Ð: 'D', + ð: 'd', + È: 'E', + É: 'E', + Ê: 'E', + Ë: 'E', + è: 'e', + é: 'e', + ê: 'e', + ë: 'e', + Ì: 'I', + Í: 'I', + Î: 'I', + Ï: 'I', + ì: 'i', + í: 'i', + î: 'i', + ï: 'i', + Ñ: 'N', + ñ: 'n', + Ò: 'O', + Ó: 'O', + Ô: 'O', + Õ: 'O', + Ö: 'O', + Ø: 'O', + ò: 'o', + ó: 'o', + ô: 'o', + õ: 'o', + ö: 'o', + ø: 'o', + Ù: 'U', + Ú: 'U', + Û: 'U', + Ü: 'U', + ù: 'u', + ú: 'u', + û: 'u', + ü: 'u', + Ý: 'Y', + ý: 'y', + ÿ: 'y', + Æ: 'Ae', + æ: 'ae', + Þ: 'Th', + þ: 'th', + ß: 'ss', + + Ā: 'A', + Ă: 'A', + Ą: 'A', + ā: 'a', + ă: 'a', + ą: 'a', + Ć: 'C', + Ĉ: 'C', + Ċ: 'C', + Č: 'C', + ć: 'c', + ĉ: 'c', + ċ: 'c', + č: 'c', + Ď: 'D', + Đ: 'D', + ď: 'd', + đ: 'd', + Ē: 'E', + Ĕ: 'E', + Ė: 'E', + Ę: 'E', + Ě: 'E', + ē: 'e', + ĕ: 'e', + ė: 'e', + ę: 'e', + ě: 'e', + Ĝ: 'G', + Ğ: 'G', + Ġ: 'G', + Ģ: 'G', + ĝ: 'g', + ğ: 'g', + ġ: 'g', + ģ: 'g', + Ĥ: 'H', + Ħ: 'H', + ĥ: 'h', + ħ: 'h', + Ĩ: 'I', + Ī: 'I', + Ĭ: 'I', + Į: 'I', + İ: 'I', + ĩ: 'i', + ī: 'i', + ĭ: 'i', + į: 'i', + ı: 'i', + Ĵ: 'J', + ĵ: 'j', + Ķ: 'K', + ķ: 'k', + ĸ: 'k', + Ĺ: 'L', + Ļ: 'L', + Ľ: 'L', + Ŀ: 'L', + Ł: 'L', + ĺ: 'l', + ļ: 'l', + ľ: 'l', + ŀ: 'l', + ł: 'l', + Ń: 'N', + Ņ: 'N', + Ň: 'N', + Ŋ: 'N', + ń: 'n', + ņ: 'n', + ň: 'n', + ŋ: 'n', + Ō: 'O', + Ŏ: 'O', + Ő: 'O', + ō: 'o', + ŏ: 'o', + ő: 'o', + Ŕ: 'R', + Ŗ: 'R', + Ř: 'R', + ŕ: 'r', + ŗ: 'r', + ř: 'r', + Ś: 'S', + Ŝ: 'S', + Ş: 'S', + Š: 'S', + ś: 's', + ŝ: 's', + ş: 's', + š: 's', + Ţ: 'T', + Ť: 'T', + Ŧ: 'T', + ţ: 't', + ť: 't', + ŧ: 't', + Ũ: 'U', + Ū: 'U', + Ŭ: 'U', + Ů: 'U', + Ű: 'U', + Ų: 'U', + ũ: 'u', + ū: 'u', + ŭ: 'u', + ů: 'u', + ű: 'u', + ų: 'u', + Ŵ: 'W', + ŵ: 'w', + Ŷ: 'Y', + ŷ: 'y', + Ÿ: 'Y', + Ź: 'Z', + Ż: 'Z', + Ž: 'Z', + ź: 'z', + ż: 'z', + ž: 'z', + IJ: 'IJ', + ij: 'ij', + Œ: 'Oe', + œ: 'oe', + ʼn: "'n", + ſ: 's' +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/decodeUriComponent.js b/src/miniprogram_npm/miniprogram-licia/decodeUriComponent.js new file mode 100644 index 0000000..f363d60 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/decodeUriComponent.js @@ -0,0 +1,31 @@ +var each = require('./each'); +var ucs2 = require('./ucs2'); +var map = require('./map'); +var utf8 = require('./utf8'); +exports = function(str) { + try { + return decodeURIComponent(str); + } catch (e) { + var matches = str.match(regMatcher); + if (!matches) { + return str; + } + each(matches, function(match) { + str = str.replace(match, decode(match)); + }); + return str; + } +}; +function decode(str) { + str = str.split('%').slice(1); + var bytes = map(str, hexToInt); + str = ucs2.encode(bytes); + str = utf8.decode(str, true); + return str; +} +function hexToInt(numStr) { + return +('0x' + numStr); +} +var regMatcher = /(%[a-f0-9]{2})+/gi; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/defaults.js b/src/miniprogram_npm/miniprogram-licia/defaults.js new file mode 100644 index 0000000..942d2e8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/defaults.js @@ -0,0 +1,5 @@ +var createAssigner = require('./createAssigner'); +var allKeys = require('./allKeys'); +exports = createAssigner(allKeys, true); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/define.js b/src/miniprogram_npm/miniprogram-licia/define.js new file mode 100644 index 0000000..bea82fd --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/define.js @@ -0,0 +1,17 @@ +var toArr = require('./toArr'); +exports = function(name, requires, method) { + if (arguments.length === 2) { + method = requires; + requires = []; + } + define(name, requires, method); +}; +var modules = (exports._modules = {}); +function define(name, requires, method) { + modules[name] = { + requires: toArr(requires), + body: method + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/defineProp.js b/src/miniprogram_npm/miniprogram-licia/defineProp.js new file mode 100644 index 0000000..b331320 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/defineProp.js @@ -0,0 +1,26 @@ +var castPath = require('./castPath'); +var isStr = require('./isStr'); +var isObj = require('./isObj'); +var each = require('./each'); +exports = function(obj, prop, descriptor) { + if (isStr(prop)) { + defineProp(obj, prop, descriptor); + } else if (isObj(prop)) { + each(prop, function(descriptor, prop) { + defineProp(obj, prop, descriptor); + }); + } + return obj; +}; +function defineProp(obj, prop, descriptor) { + var path = castPath(prop, obj); + var lastProp = path.pop(); + + while ((prop = path.shift())) { + if (!obj[prop]) obj[prop] = {}; + obj = obj[prop]; + } + Object.defineProperty(obj, lastProp, descriptor); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/defined.js b/src/miniprogram_npm/miniprogram-licia/defined.js new file mode 100644 index 0000000..3ee1db6 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/defined.js @@ -0,0 +1,8 @@ +var isUndef = require('./isUndef'); +exports = function() { + for (var i = 0, len = arguments.length; i < len; i++) { + if (!isUndef(arguments[i])) return arguments[i]; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/delay.js b/src/miniprogram_npm/miniprogram-licia/delay.js new file mode 100644 index 0000000..393fe77 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/delay.js @@ -0,0 +1,8 @@ +var restArgs = require('./restArgs'); +exports = restArgs(function(fn, wait, args) { + return setTimeout(function() { + return fn.apply(null, args); + }, wait); +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/deprecate.js b/src/miniprogram_npm/miniprogram-licia/deprecate.js new file mode 100644 index 0000000..822a31a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/deprecate.js @@ -0,0 +1,36 @@ +var isNode = require('./isNode'); +var root = require('./root'); +var memStorage = require('./memStorage'); +if (isNode) { + exports = eval('require')('util').deprecate; +} else { + var localStorage = root.localStorage || memStorage; + exports = function(fn, msg) { + if (localStorage.getItem('noDeprecation')) { + return fn; + } + var warned = false; + function deprecated() { + if (!warned) { + warned = true; + + console.warn(msg); + } + for ( + var _len = arguments.length, args = new Array(_len), _key = 0; + _key < _len; + _key++ + ) { + args[_key] = arguments[_key]; + } + return fn.apply(this, args); + } + Object.setPrototypeOf(deprecated, fn); + if (fn.prototype) { + deprecated.prototype = fn.prototype; + } + return deprecated; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/detectBrowser.js b/src/miniprogram_npm/miniprogram-licia/detectBrowser.js new file mode 100644 index 0000000..66843ac --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/detectBrowser.js @@ -0,0 +1,51 @@ +var isBrowser = require('./isBrowser'); +var toInt = require('./toInt'); +var keys = require('./keys'); +exports = function(ua) { + ua = ua || (isBrowser ? navigator.userAgent : ''); + ua = ua.toLowerCase(); + var ieVer = getVer(ua, 'msie '); + if (ieVer) + return { + version: ieVer, + name: 'ie' + }; + if (regIe11.test(ua)) + return { + version: 11, + name: 'ie' + }; + for (var i = 0, len = browsers.length; i < len; i++) { + var name = browsers[i]; + var match = ua.match(regBrowsers[name]); + if (match == null) continue; + var version = toInt(match[1].split('.')[0]); + if (name === 'opera') version = getVer(ua, 'version/') || version; + return { + name: name, + version: version + }; + } + return { + name: 'unknown', + version: -1 + }; +}; +var regBrowsers = { + edge: /edge\/([0-9._]+)/, + firefox: /firefox\/([0-9.]+)(?:\s|$)/, + opera: /opera\/([0-9.]+)(?:\s|$)/, + android: /android\s([0-9.]+)/, + ios: /version\/([0-9._]+).*mobile.*safari.*/, + safari: /version\/([0-9._]+).*safari/, + chrome: /(?!chrom.*opr)chrom(?:e|ium)\/([0-9.]+)(:?\s|$)/ +}; +var regIe11 = /trident\/7\./; +var browsers = keys(regBrowsers); +function getVer(ua, mark) { + var idx = ua.indexOf(mark); + if (idx > -1) + return toInt(ua.substring(idx + mark.length, ua.indexOf('.', idx))); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/detectMocha.js b/src/miniprogram_npm/miniprogram-licia/detectMocha.js new file mode 100644 index 0000000..b0c51d3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/detectMocha.js @@ -0,0 +1,11 @@ +var root = require('./root'); +exports = function() { + for (var i = 0, len = methods.length; i < len; i++) { + var method = methods[i]; + if (typeof root[method] !== 'function') return false; + } + return true; +}; +var methods = ['afterEach', 'after', 'beforeEach', 'before', 'describe', 'it']; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/detectOs.js b/src/miniprogram_npm/miniprogram-licia/detectOs.js new file mode 100644 index 0000000..4edc766 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/detectOs.js @@ -0,0 +1,39 @@ +var isBrowser = require('./isBrowser'); +var isNode = require('./isNode'); +exports = function(ua) { + if (!ua && isBrowser) { + ua = navigator.userAgent; + } + function detect(keyword) { + return ua.indexOf(keyword) > -1; + } + if (ua) { + ua = ua.toLowerCase(); + if (detect('windows phone')) return 'windows phone'; + if (detect('win')) return 'windows'; + if (detect('android')) return 'android'; + if (detect('ipad') || detect('iphone') || detect('ipod')) return 'ios'; + if (detect('mac')) return 'os x'; + if (detect('linux')) return 'linux'; + } else if (isNode) { + var _process = process, + platform = _process.platform, + env = _process.env; + if ( + platform === 'win32' || + env.OSTYPE === 'cygwin' || + env.OSTYPE === 'msys' + ) { + return 'windows'; + } + if (platform === 'darwin') { + return 'os x'; + } + if (platform === 'linux') { + return 'linux'; + } + } + return 'unknown'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/difference.js b/src/miniprogram_npm/miniprogram-licia/difference.js new file mode 100644 index 0000000..8e5d16f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/difference.js @@ -0,0 +1,12 @@ +var restArgs = require('./restArgs'); +var flatten = require('./flatten'); +var filter = require('./filter'); +var contain = require('./contain'); +exports = restArgs(function(arr, args) { + args = flatten(args); + return filter(arr, function(val) { + return !contain(args, val); + }); +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/dotCase.js b/src/miniprogram_npm/miniprogram-licia/dotCase.js new file mode 100644 index 0000000..a88fb5b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/dotCase.js @@ -0,0 +1,6 @@ +var splitCase = require('./splitCase'); +exports = function(str) { + return splitCase(str).join('.'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/durationFormat.js b/src/miniprogram_npm/miniprogram-licia/durationFormat.js new file mode 100644 index 0000000..7beda3e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/durationFormat.js @@ -0,0 +1,39 @@ +var toInt = require('./toInt'); +var lpad = require('./lpad'); +var toStr = require('./toStr'); +var floor = Math.floor; +exports = function(duration) { + var mask = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : 'hh:mm:ss'; + duration = toInt(duration); + var d = floor(duration / 86400000); + var h = floor(duration / 3600000) % 24; + var m = floor(duration / 60000) % 60; + var s = floor(duration / 1000) % 60; + var l = floor(duration) % 1000; + var flags = { + d: d, + h: h, + hh: padZero(h), + m: m, + mm: padZero(m), + s: s, + ss: padZero(s), + l: l, + ll: padZero(l, 3) + }; + return mask.replace(regToken, function(match) { + if (match in flags) return flags[match]; + return match.slice(1, match.length - 1); + }); +}; +var padZero = function(str) { + var len = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2; + return lpad(toStr(str), len, '0'); +}; +var regToken = /d{1,2}|h{1,2}|m{1,2}|s{1,2}|l{1,2}|"[^"]*"|'[^']*'/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/each.js b/src/miniprogram_npm/miniprogram-licia/each.js new file mode 100644 index 0000000..0020098 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/each.js @@ -0,0 +1,18 @@ +var isArrLike = require('./isArrLike'); +var keys = require('./keys'); +var optimizeCb = require('./optimizeCb'); +exports = function(obj, iterator, ctx) { + iterator = optimizeCb(iterator, ctx); + var i, len; + if (isArrLike(obj)) { + for (i = 0, len = obj.length; i < len; i++) iterator(obj[i], i, obj); + } else { + var _keys = keys(obj); + for (i = 0, len = _keys.length; i < len; i++) { + iterator(obj[_keys[i]], _keys[i], obj); + } + } + return obj; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/easing.js b/src/miniprogram_npm/miniprogram-licia/easing.js new file mode 100644 index 0000000..a6a5b93 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/easing.js @@ -0,0 +1,63 @@ +var each = require('./each'); +var upperFirst = require('./upperFirst'); +exports.linear = function(t) { + return t; +}; +var pow = Math.pow; +var sqrt = Math.sqrt; +var sin = Math.sin; +var min = Math.min; +var asin = Math.asin; +var PI = Math.PI; +var fns = { + sine: function(t) { + return 1 + sin((PI / 2) * t - PI / 2); + }, + circ: function(t) { + return 1 - sqrt(1 - t * t); + }, + elastic: function(t, m) { + m = m || DEFAULT_ELASTICITY; + if (t === 0 || t === 1) return t; + var p = 1 - min(m, 998) / 1000; + var st = t / 1; + var st1 = st - 1; + var s = (p / (2 * PI)) * asin(1); + return -(pow(2, 10 * st1) * sin(((st1 - s) * (2 * PI)) / p)); + }, + back: function(t) { + return t * t * (3 * t - 2); + }, + bounce: function(t) { + var pow2, + bounce = 4; + + while (t < ((pow2 = pow(2, --bounce)) - 1) / 11) {} + return ( + 1 / pow(4, 3 - bounce) - 7.5625 * pow((pow2 * 3 - 2) / 22 - t, 2) + ); + } +}; +each(['quad', 'cubic', 'quart', 'quint', 'expo'], function(name, i) { + fns[name] = function(t) { + return pow(t, i + 2); + }; +}); +var DEFAULT_ELASTICITY = 400; +each(fns, function(fn, name) { + name = upperFirst(name); + exports['in' + name] = fn; + exports['out' + name] = function(t, m) { + return 1 - fn(1 - t, m); + }; + exports['inOut' + name] = function(t, m) { + return t < 0.5 ? fn(t * 2, m) / 2 : 1 - fn(t * -2 + 2, m) / 2; + }; + exports['outIn' + name] = function(t, m) { + return t < 0.5 + ? (1 - fn(1 - 2 * t, m)) / 2 + : (fn(t * 2 - 1, m) + 1) / 2; + }; +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/endWith.js b/src/miniprogram_npm/miniprogram-licia/endWith.js new file mode 100644 index 0000000..76a8d3c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/endWith.js @@ -0,0 +1,6 @@ +exports = function(str, suffix) { + var idx = str.length - suffix.length; + return idx >= 0 && str.indexOf(suffix, idx) === idx; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/escape.js b/src/miniprogram_npm/miniprogram-licia/escape.js new file mode 100644 index 0000000..89174e8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/escape.js @@ -0,0 +1,20 @@ +var keys = require('./keys'); +exports = function(str) { + return regTest.test(str) ? str.replace(regReplace, replaceFn) : str; +}; +var map = (exports.map = { + '&': '&amp;', + '<': '&lt;', + '>': '&gt;', + '"': '&quot;', + "'": '&#x27;', + '`': '&#x60;' +}); +var regSrc = '(?:' + keys(map).join('|') + ')'; +var regTest = new RegExp(regSrc); +var regReplace = new RegExp(regSrc, 'g'); +var replaceFn = function(match) { + return map[match]; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/escapeJsStr.js b/src/miniprogram_npm/miniprogram-licia/escapeJsStr.js new file mode 100644 index 0000000..7be9750 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/escapeJsStr.js @@ -0,0 +1,24 @@ +var toStr = require('./toStr'); +exports = function(str) { + return toStr(str).replace(regEscapeChars, function(char) { + switch (char) { + case '"': + case "'": + case '\\': + return '\\' + char; + case '\n': + return '\\n'; + case '\r': + return '\\r'; + // Line separator + case '\u2028': + return '\\u2028'; + // Paragraph separator + case '\u2029': + return '\\u2029'; + } + }); +}; +var regEscapeChars = /["'\\\n\r\u2028\u2029]/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/escapeRegExp.js b/src/miniprogram_npm/miniprogram-licia/escapeRegExp.js new file mode 100644 index 0000000..0c7d3b5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/escapeRegExp.js @@ -0,0 +1,5 @@ +exports = function(str) { + return str.replace(/\W/g, '\\$&'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/every.js b/src/miniprogram_npm/miniprogram-licia/every.js new file mode 100644 index 0000000..4fde31e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/every.js @@ -0,0 +1,15 @@ +var safeCb = require('./safeCb'); +var isArrLike = require('./isArrLike'); +var keys = require('./keys'); +exports = function(obj, predicate, ctx) { + predicate = safeCb(predicate, ctx); + var _keys = !isArrLike(obj) && keys(obj); + var len = (_keys || obj).length; + for (var i = 0; i < len; i++) { + var curKey = _keys ? _keys[i] : i; + if (!predicate(obj[curKey], curKey, obj)) return false; + } + return true; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/extend.js b/src/miniprogram_npm/miniprogram-licia/extend.js new file mode 100644 index 0000000..09aaeb4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/extend.js @@ -0,0 +1,5 @@ +var createAssigner = require('./createAssigner'); +var allKeys = require('./allKeys'); +exports = createAssigner(allKeys); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/extendDeep.js b/src/miniprogram_npm/miniprogram-licia/extendDeep.js new file mode 100644 index 0000000..38ede04 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/extendDeep.js @@ -0,0 +1,28 @@ +var isPlainObj = require('./isPlainObj'); +var each = require('./each'); +var cloneDeep = require('./cloneDeep'); +exports = function(obj) { + var i = 0; + var ret = obj; + var len = arguments.length; + while (++i < len) { + obj = arguments[i]; + if (isPlainObj(ret) && isPlainObj(obj)) { + each(obj, function(val, key) { + if ( + key === '__proto__' || + key === 'constructor' || + key === 'prototype' + ) { + return; + } + ret[key] = exports(ret[key], obj[key]); + }); + } else { + ret = cloneDeep(obj); + } + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/extendOwn.js b/src/miniprogram_npm/miniprogram-licia/extendOwn.js new file mode 100644 index 0000000..c093f30 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/extendOwn.js @@ -0,0 +1,5 @@ +var keys = require('./keys'); +var createAssigner = require('./createAssigner'); +exports = createAssigner(keys); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/extractBlockCmts.js b/src/miniprogram_npm/miniprogram-licia/extractBlockCmts.js new file mode 100644 index 0000000..08a08fc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/extractBlockCmts.js @@ -0,0 +1,17 @@ +var map = require('./map'); +var trim = require('./trim'); +var regBlockCmt = /(\/\*[\s\S]*?\*\/)/gm; +exports = function(str) { + var ret = str.match(regBlockCmt); + if (!ret) return []; + ret = map(ret, function(comment) { + return trim( + map(comment.split('\n'), function(line) { + return trim(line).replace(/^\/\*+|\*+\/$|^\*+/g, ''); + }).join('\n') + ); + }); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/extractUrls.js b/src/miniprogram_npm/miniprogram-licia/extractUrls.js new file mode 100644 index 0000000..6799c3a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/extractUrls.js @@ -0,0 +1,15 @@ +var unique = require('./unique'); +var trim = require('./trim'); +var map = require('./map'); +var toArr = require('./toArr'); +exports = function(str) { + var urlList = toArr(str.match(regUrl)); + return unique( + map(urlList, function(url) { + return trim(url); + }) + ); +}; +var regUrl = /((https?)|(ftp)):\/\/[\w.]+[^ \f\n\r\t\v"\\<>[\]\u2100-\uFFFF(),]*/gi; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fibonacci.js b/src/miniprogram_npm/miniprogram-licia/fibonacci.js new file mode 100644 index 0000000..a916028 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fibonacci.js @@ -0,0 +1,6 @@ +var memoize = require('./memoize'); +exports = memoize(function(n) { + return n < 2 ? n : exports(n - 1) + exports(n - 2); +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fileSize.js b/src/miniprogram_npm/miniprogram-licia/fileSize.js new file mode 100644 index 0000000..80fb0ef --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fileSize.js @@ -0,0 +1,9 @@ +exports = function(bytes) { + if (bytes <= 0) return '0'; + var suffixIdx = Math.floor(Math.log(bytes) / Math.log(1024)); + var val = bytes / Math.pow(2, suffixIdx * 10); + return +val.toFixed(2) + suffixList[suffixIdx]; +}; +var suffixList = ['', 'K', 'M', 'G', 'T']; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fileType.js b/src/miniprogram_npm/miniprogram-licia/fileType.js new file mode 100644 index 0000000..453d844 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fileType.js @@ -0,0 +1,148 @@ +function _slicedToArray(r, e) { + return ( + _arrayWithHoles(r) || + _iterableToArrayLimit(r, e) || + _unsupportedIterableToArray(r, e) || + _nonIterableRest() + ); +} +function _nonIterableRest() { + throw new TypeError( + 'Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.' + ); +} +function _unsupportedIterableToArray(r, a) { + if (r) { + if ('string' == typeof r) return _arrayLikeToArray(r, a); + var t = {}.toString.call(r).slice(8, -1); + return ( + 'Object' === t && r.constructor && (t = r.constructor.name), + 'Map' === t || 'Set' === t + ? Array.from(r) + : 'Arguments' === t || + /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) + ? _arrayLikeToArray(r, a) + : void 0 + ); + } +} +function _arrayLikeToArray(r, a) { + (null == a || a > r.length) && (a = r.length); + for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; + return n; +} +function _iterableToArrayLimit(r, l) { + var t = + null == r + ? null + : ('undefined' != typeof Symbol && r[Symbol.iterator]) || + r['@@iterator']; + if (null != t) { + var e, + n, + i, + u, + a = [], + f = !0, + o = !1; + try { + if (((i = (t = t.call(r)).next), 0 === l)) { + if (Object(t) !== t) return; + f = !1; + } else + for ( + ; + !(f = (e = i.call(t)).done) && + (a.push(e.value), a.length !== l); + f = !0 + ); + } catch (r) { + (o = !0), (n = r); + } finally { + try { + if ( + !f && + null != t.return && + ((u = t.return()), Object(u) !== u) + ) + return; + } finally { + if (o) throw n; + } + } + return a; + } +} +function _arrayWithHoles(r) { + if (Array.isArray(r)) return r; +} + +var type = require('./type'); +var mime = require('./mime'); +var isFn = require('./isFn'); +exports = function(input) { + if (type(input) !== 'uint8array') { + input = new Uint8Array(input); + } + for (var i = 0, len = types.length; i < len; i++) { + var _type = types[i]; + var _type2 = _slicedToArray(_type, 3), + ext = _type2[0], + magic = _type2[1], + offset = _type2[2]; + if (isFn(magic)) { + if (magic(input)) { + return { + ext: ext, + mime: mime(ext) + }; + } + } else if (check(input, magic, offset)) { + return { + ext: ext, + mime: mime(ext) + }; + } + } +}; +var types = [ + ['jpg', [0xff, 0xd8, 0xff]], + ['png', [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]], + ['gif', [0x47, 0x49, 0x46]], + ['webp', [0x57, 0x45, 0x42, 0x50], 8], + ['bmp', [0x42, 0x4d]], + ['gz', [0x1f, 0x8b, 0x8]], + [ + 'zip', + function(input) { + return ( + check(input, [0x50, 0x4b]) && + (input[2] === 0x3 || input[2] === 0x5 || input[2] === 0x7) && + (input[3] === 0x4 || input[3] === 0x6 || input[3] === 0x8) + ); + } + ], + [ + 'rar', + function(input) { + return ( + check(input, [0x52, 0x61, 0x72, 0x21, 0x1a, 0x7]) && + (input[6] === 0x0 || input[6] === 0x1) + ); + } + ], + ['pdf', [0x25, 0x50, 0x44, 0x46]], + ['exe', [0x4d, 0x5a]] +]; +function check(input, magic) { + var offset = + arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; + for (var i = 0, len = magic.length; i < len; i++) { + if (input[offset + i] !== magic[i]) { + return false; + } + } + return true; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fileUrl.js b/src/miniprogram_npm/miniprogram-licia/fileUrl.js new file mode 100644 index 0000000..2643a8b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fileUrl.js @@ -0,0 +1,13 @@ +var normalizePath = require('./normalizePath'); +exports = function(path) { + path = normalizePath(path); + if (path[0] !== '/') { + path = '/'.concat(path); + } + return encodeURI('file://'.concat(path)).replace( + /[?#]/g, + encodeURIComponent + ); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fill.js b/src/miniprogram_npm/miniprogram-licia/fill.js new file mode 100644 index 0000000..2c9d150 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fill.js @@ -0,0 +1,11 @@ +var isUndef = require('./isUndef'); +exports = function(arr, val, start, end) { + var len = arr.length; + if (!len) return []; + if (isUndef(end)) end = len; + if (isUndef(start)) start = 0; + while (start < end) arr[start++] = val; + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/filter.js b/src/miniprogram_npm/miniprogram-licia/filter.js new file mode 100644 index 0000000..941082d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/filter.js @@ -0,0 +1,12 @@ +var safeCb = require('./safeCb'); +var each = require('./each'); +exports = function(obj, predicate, ctx) { + var ret = []; + predicate = safeCb(predicate, ctx); + each(obj, function(val, idx, list) { + if (predicate(val, idx, list)) ret.push(val); + }); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/find.js b/src/miniprogram_npm/miniprogram-licia/find.js new file mode 100644 index 0000000..b5ff0de --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/find.js @@ -0,0 +1,11 @@ +var findKey = require('./findKey'); +var findIdx = require('./findIdx'); +var isArrLike = require('./isArrLike'); +var isUndef = require('./isUndef'); +exports = function(obj, predicate, ctx) { + var keyFinder = isArrLike(obj) ? findIdx : findKey; + var key = keyFinder(obj, predicate, ctx); + if (!isUndef(key) && key !== -1) return obj[key]; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/findIdx.js b/src/miniprogram_npm/miniprogram-licia/findIdx.js new file mode 100644 index 0000000..023068c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/findIdx.js @@ -0,0 +1,14 @@ +var safeCb = require('./safeCb'); +exports = function(arr, predicate, ctx, dir) { + dir = dir || 1; + predicate = safeCb(predicate, ctx); + var len = arr.length; + var i = dir > 0 ? 0 : len - 1; + while (i >= 0 && i < len) { + if (predicate(arr[i], i, arr)) return i; + i += dir; + } + return -1; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/findKey.js b/src/miniprogram_npm/miniprogram-licia/findKey.js new file mode 100644 index 0000000..663c802 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/findKey.js @@ -0,0 +1,13 @@ +var safeCb = require('./safeCb'); +var keys = require('./keys'); +exports = function(obj, predicate, ctx) { + predicate = safeCb(predicate, ctx); + var _keys = keys(obj); + var key; + for (var i = 0, len = _keys.length; i < len; i++) { + key = _keys[i]; + if (predicate(obj[key], key, obj)) return key; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/findLastIdx.js b/src/miniprogram_npm/miniprogram-licia/findLastIdx.js new file mode 100644 index 0000000..375bcf1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/findLastIdx.js @@ -0,0 +1,6 @@ +var findIdx = require('./findIdx'); +exports = function(arr, predicate, ctx) { + return findIdx(arr, predicate, ctx, -1); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/flatten.js b/src/miniprogram_npm/miniprogram-licia/flatten.js new file mode 100644 index 0000000..53290e9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/flatten.js @@ -0,0 +1,16 @@ +var isArr = require('./isArr'); +exports = function(arr) { + return flat(arr, []); +}; +function flat(arr, res) { + var len = arr.length, + i = -1, + cur; + while (len--) { + cur = arr[++i]; + isArr(cur) ? flat(cur, res) : res.push(cur); + } + return res; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fnArgs.js b/src/miniprogram_npm/miniprogram-licia/fnArgs.js new file mode 100644 index 0000000..697e1e0 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fnArgs.js @@ -0,0 +1,68 @@ +var startWith = require('./startWith'); +var last = require('./last'); +var lowerCase = require('./lowerCase'); +var isObj = require('./isObj'); +var type = require('./type'); +exports = function(types, args) { + var argsLen = args.length; + var typesLen = types.length; + var minLen = typesLen; + var maxLen = typesLen; + for (var i = 0; i < typesLen; i++) { + var _type = types[i].split('|'); + if (startWith(_type[0], '?')) { + _type[0] = _type[0].slice(1); + if (minLen === typesLen) { + minLen = i; + } + } + if (i === typesLen - 1 && startWith(_type[0], '...')) { + maxLen = Infinity; + _type[0] = _type[0].slice(3); + if (minLen === typesLen) { + minLen = i; + } + } + types[i] = _type; + } + if (argsLen < minLen) { + throw Error( + 'Expected at least ' + .concat(minLen, ' args but got ') + .concat(argsLen) + ); + } else if (argsLen > maxLen) { + throw Error( + 'Expected at most '.concat(maxLen, ' args but got ').concat(argsLen) + ); + } + for (var _i = 0; _i < argsLen; _i++) { + var arg = args[_i]; + if (_i >= typesLen) { + validateArg(arg, last(types), _i); + } else { + validateArg(arg, types[_i], _i); + } + } +}; +function validateArg(value, types, num) { + var isValid = false; + for (var i = 0, len = types.length; i < len; i++) { + var t = lowerCase(types[i]); + if ( + t === 'any' || + (t === 'object' && isObj(value)) || + type(value) === t + ) { + isValid = true; + break; + } + } + if (!isValid) { + throw TypeError( + 'Argument '.concat(num, ' should be type ').concat(types.join('|')) + ); + } +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fnParams.js b/src/miniprogram_npm/miniprogram-licia/fnParams.js new file mode 100644 index 0000000..65bcdd7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fnParams.js @@ -0,0 +1,26 @@ +var toSrc = require('./toSrc'); +var stripCmt = require('./stripCmt'); +var startWith = require('./startWith'); +var isStr = require('./isStr'); +exports = function(fn) { + var fnStr = stripCmt(isStr(fn) ? fn : toSrc(fn)); + var open; + var close; + if ( + !startWith(fnStr, 'async') && + !startWith(fnStr, 'function') && + !startWith(fnStr, '(') + ) { + open = 0; + close = fnStr.indexOf('=>'); + } else { + open = fnStr.indexOf('(') + 1; + close = fnStr.indexOf(')'); + } + var ret = fnStr.slice(open, close); + ret = ret.match(regArgNames); + return ret === null ? [] : ret; +}; +var regArgNames = /[^\s,]+/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fnv1a.js b/src/miniprogram_npm/miniprogram-licia/fnv1a.js new file mode 100644 index 0000000..bd5f22e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fnv1a.js @@ -0,0 +1,11 @@ +var BASE = 0x811c9dc5; +exports = function(str) { + var ret = BASE; + for (var i = 0, len = str.length; i < len; i++) { + ret ^= str.charCodeAt(i); + ret += (ret << 1) + (ret << 4) + (ret << 7) + (ret << 8) + (ret << 24); + } + return ret >>> 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/format.js b/src/miniprogram_npm/miniprogram-licia/format.js new file mode 100644 index 0000000..d407b12 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/format.js @@ -0,0 +1,45 @@ +var restArgs = require('./restArgs'); +var toInt = require('./toInt'); +var toNum = require('./toNum'); +var toStr = require('./toStr'); +exports = restArgs(function(str, values) { + var ret = ''; + for (var i = 0, len = str.length; i < len; i++) { + var c = str[i]; + if (c !== '%' || values.length === 0) { + ret += c; + continue; + } + i++; + var val = values.shift(); + switch (str[i]) { + case 'i': + case 'd': + ret += toInt(val); + break; + case 'f': + ret += toNum(val); + break; + case 's': + ret += toStr(val); + break; + case 'o': + ret += tryStringify(val); + break; + default: + i--; + values.unshift(val); + ret += c; + } + } + return ret; +}); +function tryStringify(obj) { + try { + return JSON.stringify(obj); + } catch (err) { + return '[Error Stringify]'; + } +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fraction.js b/src/miniprogram_npm/miniprogram-licia/fraction.js new file mode 100644 index 0000000..f8a6524 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fraction.js @@ -0,0 +1,17 @@ +var gcd = require('./gcd'); +var precision = require('./precision'); +exports = function(num) { + if (num === 0) return '0'; + var _precision = precision(num); + _precision = pow(10, _precision); + var numerator = num * _precision, + denominator = _precision; + var _gcd = abs(gcd(numerator, denominator)); + numerator /= _gcd; + denominator /= _gcd; + return numerator + '/' + denominator; +}; +var abs = Math.abs; +var pow = Math.pow; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/freeze.js b/src/miniprogram_npm/miniprogram-licia/freeze.js new file mode 100644 index 0000000..b13f344 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/freeze.js @@ -0,0 +1,14 @@ +var keys = require('./keys'); +exports = function(obj) { + if (Object.freeze) return Object.freeze(obj); + keys(obj).forEach(function(prop) { + if (!Object.getOwnPropertyDescriptor(obj, prop).configurable) return; + Object.defineProperty(obj, prop, { + writable: false, + configurable: false + }); + }); + return obj; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/freezeDeep.js b/src/miniprogram_npm/miniprogram-licia/freezeDeep.js new file mode 100644 index 0000000..a48306f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/freezeDeep.js @@ -0,0 +1,13 @@ +var freeze = require('./freeze'); +var keys = require('./keys'); +var isObj = require('./isObj'); +exports = function(obj) { + freeze(obj); + keys(obj).forEach(function(prop) { + var val = obj[prop]; + if (isObj(val) && !Object.isFrozen(val)) exports(val); + }); + return obj; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/fuzzySearch.js b/src/miniprogram_npm/miniprogram-licia/fuzzySearch.js new file mode 100644 index 0000000..ebe538f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/fuzzySearch.js @@ -0,0 +1,55 @@ +var filter = require('./filter'); +var map = require('./map'); +var isStr = require('./isStr'); +var safeGet = require('./safeGet'); +var levenshtein = require('./levenshtein'); +var pluck = require('./pluck'); +exports = function(needle, haystacks) { + var options = + arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + if (!options.caseSensitive) { + needle = needle.toLowerCase(); + } + haystacks = map(haystacks, function(haystack) { + var string = toStr(haystack, options); + if (!options.caseSensitive) { + string = string.toLowerCase(); + } + return { + value: haystack, + levenshtein: levenshtein(needle, string), + string: string + }; + }); + haystacks = filter(haystacks, function(haystack) { + return hasAllLetters(needle, haystack.string, options); + }); + haystacks.sort(function(a, b) { + return a.levenshtein - b.levenshtein; + }); + return pluck(haystacks, 'value'); +}; +function toStr(haystack, options) { + if (isStr(haystack)) return haystack; + return safeGet(haystack, options.key) || ''; +} +function hasAllLetters(needle, haystack) { + var hLen = haystack.length; + var nLen = needle.length; + if (nLen > hLen) return false; + if (nLen === hLen) return needle === haystack; + for (var i = 0, j = 0; i < nLen; i++) { + var c = needle.charCodeAt(i); + var has = false; + while (j < hLen) { + if (haystack.charCodeAt(j++) === c) { + has = true; + break; + } + } + if (!has) return false; + } + return true; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/gcd.js b/src/miniprogram_npm/miniprogram-licia/gcd.js new file mode 100644 index 0000000..117be5f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/gcd.js @@ -0,0 +1,6 @@ +exports = function(a, b) { + if (b === 0) return a; + return exports(b, a % b); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/getProto.js b/src/miniprogram_npm/miniprogram-licia/getProto.js new file mode 100644 index 0000000..1b3f2db --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/getProto.js @@ -0,0 +1,14 @@ +var isObj = require('./isObj'); +var isFn = require('./isFn'); +var getPrototypeOf = Object.getPrototypeOf; +var ObjectCtr = {}.constructor; +exports = function(obj) { + if (!isObj(obj)) return; + if (getPrototypeOf && !false) return getPrototypeOf(obj); + var proto = obj.__proto__; + if (proto || proto === null) return proto; + if (isFn(obj.constructor)) return obj.constructor.prototype; + if (obj instanceof ObjectCtr) return ObjectCtr.prototype; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/getUrlParam.js b/src/miniprogram_npm/miniprogram-licia/getUrlParam.js new file mode 100644 index 0000000..5260d82 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/getUrlParam.js @@ -0,0 +1,6 @@ +var Url = require('./Url'); +exports = function(name, url) { + return new Url(url).query[name]; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/golangify.js b/src/miniprogram_npm/miniprogram-licia/golangify.js new file mode 100644 index 0000000..068093d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/golangify.js @@ -0,0 +1,26 @@ +var isFn = require('./isFn'); +var restArgs = require('./restArgs'); +exports = function(fn) { + if (isFn(fn)) { + return restArgs(function(args) { + return fn + .apply(this, args) + .then(function(v) { + return [v, null]; + }) + .catch(function(err) { + return [void 0, err]; + }); + }); + } else { + return fn + .then(function(v) { + return [v, null]; + }) + .catch(function(err) { + return [void 0, err]; + }); + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/has.js b/src/miniprogram_npm/miniprogram-licia/has.js new file mode 100644 index 0000000..5b407ec --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/has.js @@ -0,0 +1,6 @@ +var hasOwnProp = Object.prototype.hasOwnProperty; +exports = function(obj, key) { + return hasOwnProp.call(obj, key); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/heapSort.js b/src/miniprogram_npm/miniprogram-licia/heapSort.js new file mode 100644 index 0000000..f9a472c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/heapSort.js @@ -0,0 +1,19 @@ +var Heap = require('./Heap'); +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + var heap = new Heap(cmp); + var len = arr.length; + for (var i = 0; i < len; i++) { + heap.add(arr[i]); + } + for (var _i = 0; _i < len; _i++) { + arr[_i] = heap.poll(); + } + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/hex.js b/src/miniprogram_npm/miniprogram-licia/hex.js new file mode 100644 index 0000000..86f2594 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/hex.js @@ -0,0 +1,23 @@ +var isOdd = require('./isOdd'); +exports = { + encode: function(bytes) { + var hex = []; + for (var i = 0, len = bytes.length; i < len; i++) { + var byte = bytes[i]; + hex.push((byte >>> 4).toString(16)); + hex.push((byte & 0xf).toString(16)); + } + return hex.join(''); + }, + decode: function(str) { + var bytes = []; + var len = str.length; + if (isOdd(len)) len--; + for (var i = 0; i < len; i += 2) { + bytes.push(parseInt(str.substr(i, 2), 16)); + } + return bytes; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/highlight.js b/src/miniprogram_npm/miniprogram-licia/highlight.js new file mode 100644 index 0000000..ac8676e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/highlight.js @@ -0,0 +1,135 @@ +var each = require('./each'); +var defaults = require('./defaults'); + +exports = function(str) { + var lang = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : 'js'; + var style = + arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + defaults(style, defStyle); + str = str.replace(/</g, '&lt;').replace(/>/g, '&gt;'); + lang = language[lang]; + var subLangSi = 0; + var subLangs = []; + each(lang, function(val) { + if (!val.language) return; + str = str.replace(val.re, function($1, $2) { + if (!$2) { + return $1; + } + subLangs[subLangSi++] = exports($2, val.language, style); + return $1.replace($2, '___subtmpl' + (subLangSi - 1) + '___'); + }); + }); + each(lang, function(val, key) { + if (language[val.language]) return; + str = str.replace(val.re, '___' + key + '___$1___end' + key + '___'); + }); + var levels = []; + str = str.replace(/___(?!subtmpl)\w+?___/g, function($0) { + var end = $0.substr(3, 3) === 'end', + tag = (!end ? $0.substr(3) : $0.substr(6)).replace(/_/g, ''), + lastTag = levels.length > 0 ? levels[levels.length - 1] : null; + if ( + !end && + (lastTag == null || + tag == lastTag || + (lastTag != null && + lang[lastTag] && + lang[lastTag].embed != undefined && + lang[lastTag].embed.indexOf(tag) > -1)) + ) { + levels.push(tag); + return $0; + } else if (end && tag == lastTag) { + levels.pop(); + return $0; + } + return ''; + }); + each(lang, function(val, key) { + var s = style[val.style] + ? ' style="'.concat(style[val.style], '"') + : ''; + str = str + .replace(new RegExp('___end' + key + '___', 'g'), '</span>') + .replace( + new RegExp('___' + key + '___', 'g'), + '<span class="'.concat(val.style, '"').concat(s, '>') + ); + }); + each(lang, function(val) { + if (!val.language) return; + str = str.replace(/___subtmpl\d+___/g, function($tmpl) { + var i = parseInt($tmpl.replace(/___subtmpl(\d+)___/, '$1'), 10); + return subLangs[i]; + }); + }); + return str; +}; +var defStyle = { + comment: 'color:#63a35c;', + string: 'color:#183691;', + number: 'color:#0086b3;', + keyword: 'color:#a71d5d;', + operator: 'color:#994500;' +}; +var language = {}; +language.js = { + comment: { + re: /(\/\/.*|\/\*([\s\S]*?)\*\/)/g, + style: 'comment' + }, + string: { + re: /(('.*?')|(".*?"))/g, + style: 'string' + }, + numbers: { + re: /(-?(\d+|\d+\.\d+|\.\d+))/g, + style: 'number' + }, + keywords: { + re: /(?:\b)(function|for|foreach|while|if|else|elseif|switch|break|as|return|this|class|self|default|var|const|let|false|true|null|undefined)(?:\b)/gi, + style: 'keyword' + }, + operator: { + re: /(\+|-|\/|\*|%|=|&lt;|&gt;|\||\?|\.)/g, + style: 'operator' + } +}; +language.html = { + comment: { + re: /(&lt;!--([\s\S]*?)--&gt;)/g, + style: 'comment' + }, + tag: { + re: /(&lt;\/?\w(.|\n)*?\/?&gt;)/g, + style: 'keyword', + embed: ['string'] + }, + string: language.js.string, + css: { + re: /(?:&lt;style.*?&gt;)([\s\S]*)?(?:&lt;\/style&gt;)/gi, + language: 'css' + }, + script: { + re: /(?:&lt;script.*?&gt;)([\s\S]*?)(?:&lt;\/script&gt;)/gi, + language: 'js' + } +}; +language.css = { + comment: language.js.comment, + string: language.js.string, + numbers: { + re: /((-?(\d+|\d+\.\d+|\.\d+)(%|px|em|pt|in)?)|#[0-9a-fA-F]{3}[0-9a-fA-F]{3})/g, + style: 'number' + }, + keywords: { + re: /(@\w+|:?:\w+|[a-z-]+:)/g, + style: 'keyword' + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/hookFn.js b/src/miniprogram_npm/miniprogram-licia/hookFn.js new file mode 100644 index 0000000..1610e52 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/hookFn.js @@ -0,0 +1,40 @@ +var noop = require('./noop'); +var defaults = require('./defaults'); +var toArr = require('./toArr'); +var isArr = require('./isArr'); +var isErr = require('./isErr'); +exports = function(fn, options) { + defaults(options, defOptions); + return function() { + var args = toArr(arguments); + var newArgs = options.before.apply(this, args); + if (isArr(newArgs)) { + args = newArgs; + } + try { + var result = fn.apply(this, args); + var newResult = options.after.call(this, result); + if (newResult) { + result = newResult; + } + return result; + } catch (e) { + var newErr = options.error(e); + if (newErr) { + if (isErr(newErr)) { + throw newErr; + } else { + return newErr; + } + } + throw e; + } + }; +}; +var defOptions = { + before: noop, + after: noop, + error: noop +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/hslToRgb.js b/src/miniprogram_npm/miniprogram-licia/hslToRgb.js new file mode 100644 index 0000000..52b448c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/hslToRgb.js @@ -0,0 +1,40 @@ +exports = function(hsl) { + var h = hsl[0] / 360; + var s = hsl[1] / 100; + var l = hsl[2] / 100; + var ret = []; + var t2; + var t3; + var val; + if (hsl[3]) ret[3] = hsl[3]; + if (s === 0) { + val = round(l * 255); + ret[0] = ret[1] = ret[2] = val; + return ret; + } + if (l < 0.5) { + t2 = l * (1 + s); + } else { + t2 = l + s - l * s; + } + var t1 = 2 * l - t2; + for (var i = 0; i < 3; i++) { + t3 = h + (1 / 3) * -(i - 1); + if (t3 < 0) t3++; + if (t3 > 1) t3--; + if (6 * t3 < 1) { + val = t1 + (t2 - t1) * 6 * t3; + } else if (2 * t3 < 1) { + val = t2; + } else if (3 * t3 < 2) { + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; + } else { + val = t1; + } + ret[i] = round(val * 255); + } + return ret; +}; +var round = Math.round; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/html.js b/src/miniprogram_npm/miniprogram-licia/html.js new file mode 100644 index 0000000..95b334d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/html.js @@ -0,0 +1,84 @@ +var parseHtml = require('./parseHtml'); +var Stack = require('./Stack'); +var isArr = require('./isArr'); +var each = require('./each'); +var isStr = require('./isStr'); +var mapObj = require('./mapObj'); +function parse(html) { + var ret = []; + var stack = new Stack(); + parseHtml(html, { + start: function(tag, attrs) { + attrs = mapObj(attrs, function(val) { + return unescapeQuote(val); + }); + stack.push({ + tag: tag, + attrs: attrs + }); + }, + end: function() { + var node = stack.pop(); + if (!stack.size) { + ret.push(node); + return; + } + var lastNode = stack.peek(); + if (!isArr(lastNode.content)) { + lastNode.content = []; + } + lastNode.content.push(node); + }, + comment: function(text) { + var comment = '<!--'.concat(text, '-->'); + var lastNode = stack.peek(); + if (!lastNode) { + ret.push(comment); + return; + } + if (!lastNode.content) lastNode.content = []; + lastNode.content.push(comment); + }, + text: function(text) { + var lastNode = stack.peek(); + if (!lastNode) { + ret.push(text); + return; + } + if (!lastNode.content) lastNode.content = []; + lastNode.content.push(text); + } + }); + return ret; +} +function stringify(tree) { + var ret = ''; + if (isArr(tree)) { + each(tree, function(node) { + return (ret += stringify(node)); + }); + } else if (isStr(tree)) { + ret = tree; + } else { + ret += '<'.concat(tree.tag); + each(tree.attrs, function(val, key) { + return (ret += ' '.concat(key, '="').concat(escapeQuote(val), '"')); + }); + ret += '>'; + if (tree.content) ret += stringify(tree.content); + ret += '</'.concat(tree.tag, '>'); + } + return ret; +} +var unescapeQuote = function(str) { + return str.replace(/&quot;/g, '"'); +}; +var escapeQuote = function(str) { + return str.replace(/"/g, '&quot;'); +}; +exports = { + parse: parse, + stringify: stringify +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/identity.js b/src/miniprogram_npm/miniprogram-licia/identity.js new file mode 100644 index 0000000..2566c33 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/identity.js @@ -0,0 +1,5 @@ +exports = function(val) { + return val; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/idxOf.js b/src/miniprogram_npm/miniprogram-licia/idxOf.js new file mode 100644 index 0000000..00dd41b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/idxOf.js @@ -0,0 +1,5 @@ +exports = function(arr, val, fromIdx) { + return Array.prototype.indexOf.call(arr, val, fromIdx); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/indent.js b/src/miniprogram_npm/miniprogram-licia/indent.js new file mode 100644 index 0000000..12be4f2 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/indent.js @@ -0,0 +1,16 @@ +var isNum = require('./isNum'); +var isUndef = require('./isUndef'); +var repeat = require('./repeat'); +var regLineBegin = /^(?!\s*$)/gm; +exports = function(str, char, len) { + if (isNum(char)) { + len = char; + char = ' '; + } + if (isUndef(len)) len = 4; + if (isUndef(char)) char = ' '; + char = repeat(char, len); + return str.replace(regLineBegin, char); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/index.js b/src/miniprogram_npm/miniprogram-licia/index.js new file mode 100644 index 0000000..38a192e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/index.js @@ -0,0 +1,359 @@ +exports.Benchmark = require('./Benchmark'); +exports.BloomFilter = require('./BloomFilter'); +exports.Caseless = require('./Caseless'); +exports.Channel = require('./Channel'); +exports.Class = require('./Class'); +exports.Color = require('./Color'); +exports.Delegator = require('./Delegator'); +exports.Dispatcher = require('./Dispatcher'); +exports.Emitter = require('./Emitter'); +exports.Enum = require('./Enum'); +exports.HashTable = require('./HashTable'); +exports.Heap = require('./Heap'); +exports.HeapSnapshot = require('./HeapSnapshot'); +exports.I18n = require('./I18n'); +exports.JsonTransformer = require('./JsonTransformer'); +exports.LinkedList = require('./LinkedList'); +exports.Logger = require('./Logger'); +exports.Lru = require('./Lru'); +exports.PriorityQueue = require('./PriorityQueue'); +exports.Promise = require('./Promise'); +exports.PseudoMap = require('./PseudoMap'); +exports.Queue = require('./Queue'); +exports.QuickLru = require('./QuickLru'); +exports.Readiness = require('./Readiness'); +exports.ReduceStore = require('./ReduceStore'); +exports.Semaphore = require('./Semaphore'); +exports.SingleEmitter = require('./SingleEmitter'); +exports.Stack = require('./Stack'); +exports.State = require('./State'); +exports.Store = require('./Store'); +exports.Trace = require('./Trace'); +exports.Tracing = require('./Tracing'); +exports.Trie = require('./Trie'); +exports.Tween = require('./Tween'); +exports.Url = require('./Url'); +exports.Validator = require('./Validator'); +exports.Wrr = require('./Wrr'); +exports.abbrev = require('./abbrev'); +exports.after = require('./after'); +exports.allKeys = require('./allKeys'); +exports.arrToMap = require('./arrToMap'); +exports.atob = require('./atob'); +exports.average = require('./average'); +exports.base64 = require('./base64'); +exports.before = require('./before'); +exports.binarySearch = require('./binarySearch'); +exports.bind = require('./bind'); +exports.btoa = require('./btoa'); +exports.bubbleSort = require('./bubbleSort'); +exports.bytesToStr = require('./bytesToStr'); +exports.bytesToWords = require('./bytesToWords'); +exports.callbackify = require('./callbackify'); +exports.camelCase = require('./camelCase'); +exports.capitalize = require('./capitalize'); +exports.castPath = require('./castPath'); +exports.centerAlign = require('./centerAlign'); +exports.char = require('./char'); +exports.chunk = require('./chunk'); +exports.clamp = require('./clamp'); +exports.className = require('./className'); +exports.clone = require('./clone'); +exports.cloneDeep = require('./cloneDeep'); +exports.cmpVersion = require('./cmpVersion'); +exports.combine = require('./combine'); +exports.compact = require('./compact'); +exports.compose = require('./compose'); +exports.concat = require('./concat'); +exports.contain = require('./contain'); +exports.convertBase = require('./convertBase'); +exports.convertBin = require('./convertBin'); +exports.crc1 = require('./crc1'); +exports.crc16 = require('./crc16'); +exports.crc32 = require('./crc32'); +exports.crc8 = require('./crc8'); +exports.create = require('./create'); +exports.createAssigner = require('./createAssigner'); +exports.css = require('./css'); +exports.cssPriority = require('./cssPriority'); +exports.curry = require('./curry'); +exports.dataUrl = require('./dataUrl'); +exports.dateFormat = require('./dateFormat'); +exports.debounce = require('./debounce'); +exports.deburr = require('./deburr'); +exports.decodeUriComponent = require('./decodeUriComponent'); +exports.defaults = require('./defaults'); +exports.define = require('./define'); +exports.defineProp = require('./defineProp'); +exports.defined = require('./defined'); +exports.delay = require('./delay'); +exports.deprecate = require('./deprecate'); +exports.detectBrowser = require('./detectBrowser'); +exports.detectMocha = require('./detectMocha'); +exports.detectOs = require('./detectOs'); +exports.difference = require('./difference'); +exports.dotCase = require('./dotCase'); +exports.durationFormat = require('./durationFormat'); +exports.each = require('./each'); +exports.easing = require('./easing'); +exports.endWith = require('./endWith'); +exports.escape = require('./escape'); +exports.escapeJsStr = require('./escapeJsStr'); +exports.escapeRegExp = require('./escapeRegExp'); +exports.every = require('./every'); +exports.extend = require('./extend'); +exports.extendDeep = require('./extendDeep'); +exports.extendOwn = require('./extendOwn'); +exports.extractBlockCmts = require('./extractBlockCmts'); +exports.extractUrls = require('./extractUrls'); +exports.fibonacci = require('./fibonacci'); +exports.fileSize = require('./fileSize'); +exports.fileType = require('./fileType'); +exports.fileUrl = require('./fileUrl'); +exports.fill = require('./fill'); +exports.filter = require('./filter'); +exports.find = require('./find'); +exports.findIdx = require('./findIdx'); +exports.findKey = require('./findKey'); +exports.findLastIdx = require('./findLastIdx'); +exports.flatten = require('./flatten'); +exports.fnArgs = require('./fnArgs'); +exports.fnParams = require('./fnParams'); +exports.fnv1a = require('./fnv1a'); +exports.format = require('./format'); +exports.fraction = require('./fraction'); +exports.freeze = require('./freeze'); +exports.freezeDeep = require('./freezeDeep'); +exports.fuzzySearch = require('./fuzzySearch'); +exports.gcd = require('./gcd'); +exports.getProto = require('./getProto'); +exports.getUrlParam = require('./getUrlParam'); +exports.golangify = require('./golangify'); +exports.has = require('./has'); +exports.heapSort = require('./heapSort'); +exports.hex = require('./hex'); +exports.highlight = require('./highlight'); +exports.hookFn = require('./hookFn'); +exports.hslToRgb = require('./hslToRgb'); +exports.html = require('./html'); +exports.identity = require('./identity'); +exports.idxOf = require('./idxOf'); +exports.indent = require('./indent'); +exports.inherits = require('./inherits'); +exports.ini = require('./ini'); +exports.insertionSort = require('./insertionSort'); +exports.intersect = require('./intersect'); +exports.intersectRange = require('./intersectRange'); +exports.invariant = require('./invariant'); +exports.invert = require('./invert'); +exports.isAbsoluteUrl = require('./isAbsoluteUrl'); +exports.isArgs = require('./isArgs'); +exports.isArr = require('./isArr'); +exports.isArrBuffer = require('./isArrBuffer'); +exports.isArrLike = require('./isArrLike'); +exports.isAsyncFn = require('./isAsyncFn'); +exports.isBool = require('./isBool'); +exports.isBrowser = require('./isBrowser'); +exports.isBuffer = require('./isBuffer'); +exports.isClose = require('./isClose'); +exports.isCyclic = require('./isCyclic'); +exports.isDataUrl = require('./isDataUrl'); +exports.isDate = require('./isDate'); +exports.isEmail = require('./isEmail'); +exports.isEmpty = require('./isEmpty'); +exports.isEqual = require('./isEqual'); +exports.isErr = require('./isErr'); +exports.isEven = require('./isEven'); +exports.isFinite = require('./isFinite'); +exports.isFn = require('./isFn'); +exports.isFullWidth = require('./isFullWidth'); +exports.isGeneratorFn = require('./isGeneratorFn'); +exports.isInt = require('./isInt'); +exports.isIp = require('./isIp'); +exports.isJson = require('./isJson'); +exports.isLeapYear = require('./isLeapYear'); +exports.isMac = require('./isMac'); +exports.isMap = require('./isMap'); +exports.isMatch = require('./isMatch'); +exports.isMiniProgram = require('./isMiniProgram'); +exports.isMobile = require('./isMobile'); +exports.isNaN = require('./isNaN'); +exports.isNative = require('./isNative'); +exports.isNil = require('./isNil'); +exports.isNode = require('./isNode'); +exports.isNull = require('./isNull'); +exports.isNum = require('./isNum'); +exports.isNumeric = require('./isNumeric'); +exports.isObj = require('./isObj'); +exports.isOdd = require('./isOdd'); +exports.isPlainObj = require('./isPlainObj'); +exports.isPrime = require('./isPrime'); +exports.isPrimitive = require('./isPrimitive'); +exports.isPromise = require('./isPromise'); +exports.isRegExp = require('./isRegExp'); +exports.isRelative = require('./isRelative'); +exports.isSet = require('./isSet'); +exports.isSorted = require('./isSorted'); +exports.isStr = require('./isStr'); +exports.isStrBlank = require('./isStrBlank'); +exports.isSymbol = require('./isSymbol'); +exports.isTypedArr = require('./isTypedArr'); +exports.isUndef = require('./isUndef'); +exports.isUrl = require('./isUrl'); +exports.isWeakMap = require('./isWeakMap'); +exports.isWeakSet = require('./isWeakSet'); +exports.isWindows = require('./isWindows'); +exports.jsonClone = require('./jsonClone'); +exports.kebabCase = require('./kebabCase'); +exports.keyCode = require('./keyCode'); +exports.keys = require('./keys'); +exports.last = require('./last'); +exports.levenshtein = require('./levenshtein'); +exports.linkify = require('./linkify'); +exports.longest = require('./longest'); +exports.lowerCase = require('./lowerCase'); +exports.lpad = require('./lpad'); +exports.ltrim = require('./ltrim'); +exports.map = require('./map'); +exports.mapObj = require('./mapObj'); +exports.matcher = require('./matcher'); +exports.max = require('./max'); +exports.md5 = require('./md5'); +exports.memStorage = require('./memStorage'); +exports.memoize = require('./memoize'); +exports.mergeArr = require('./mergeArr'); +exports.mergeSort = require('./mergeSort'); +exports.methods = require('./methods'); +exports.mime = require('./mime'); +exports.min = require('./min'); +exports.moment = require('./moment'); +exports.morse = require('./morse'); +exports.ms = require('./ms'); +exports.naturalSort = require('./naturalSort'); +exports.negate = require('./negate'); +exports.nextTick = require('./nextTick'); +exports.noop = require('./noop'); +exports.normalizeHeader = require('./normalizeHeader'); +exports.normalizePath = require('./normalizePath'); +exports.normalizePhone = require('./normalizePhone'); +exports.now = require('./now'); +exports.objToStr = require('./objToStr'); +exports.omit = require('./omit'); +exports.once = require('./once'); +exports.optimizeCb = require('./optimizeCb'); +exports.ordinal = require('./ordinal'); +exports.pad = require('./pad'); +exports.pairs = require('./pairs'); +exports.parallel = require('./parallel'); +exports.parseArgs = require('./parseArgs'); +exports.parseHtml = require('./parseHtml'); +exports.partial = require('./partial'); +exports.pascalCase = require('./pascalCase'); +exports.perfNow = require('./perfNow'); +exports.pick = require('./pick'); +exports.pluck = require('./pluck'); +exports.precision = require('./precision'); +exports.promisify = require('./promisify'); +exports.property = require('./property'); +exports.query = require('./query'); +exports.quickSort = require('./quickSort'); +exports.raf = require('./raf'); +exports.random = require('./random'); +exports.randomBytes = require('./randomBytes'); +exports.randomColor = require('./randomColor'); +exports.randomId = require('./randomId'); +exports.randomItem = require('./randomItem'); +exports.range = require('./range'); +exports.rc4 = require('./rc4'); +exports.reduce = require('./reduce'); +exports.reduceRight = require('./reduceRight'); +exports.reject = require('./reject'); +exports.remove = require('./remove'); +exports.repeat = require('./repeat'); +exports.replaceAll = require('./replaceAll'); +exports.restArgs = require('./restArgs'); +exports.reverse = require('./reverse'); +exports.rgbToHsl = require('./rgbToHsl'); +exports.root = require('./root'); +exports.rpad = require('./rpad'); +exports.rtrim = require('./rtrim'); +exports.safeCb = require('./safeCb'); +exports.safeDel = require('./safeDel'); +exports.safeGet = require('./safeGet'); +exports.safeSet = require('./safeSet'); +exports.sameOrigin = require('./sameOrigin'); +exports.sample = require('./sample'); +exports.seedRandom = require('./seedRandom'); +exports.selectionSort = require('./selectionSort'); +exports.selector = require('./selector'); +exports.shebang = require('./shebang'); +exports.shellSort = require('./shellSort'); +exports.shuffle = require('./shuffle'); +exports.size = require('./size'); +exports.sizeof = require('./sizeof'); +exports.sleep = require('./sleep'); +exports.slice = require('./slice'); +exports.slugify = require('./slugify'); +exports.snakeCase = require('./snakeCase'); +exports.some = require('./some'); +exports.sortBy = require('./sortBy'); +exports.sortKeys = require('./sortKeys'); +exports.spaceCase = require('./spaceCase'); +exports.splitCase = require('./splitCase'); +exports.splitPath = require('./splitPath'); +exports.startWith = require('./startWith'); +exports.strHash = require('./strHash'); +exports.strToBytes = require('./strToBytes'); +exports.strTpl = require('./strTpl'); +exports.strWidth = require('./strWidth'); +exports.stringify = require('./stringify'); +exports.stringifyAll = require('./stringifyAll'); +exports.stripAnsi = require('./stripAnsi'); +exports.stripBom = require('./stripBom'); +exports.stripCmt = require('./stripCmt'); +exports.stripColor = require('./stripColor'); +exports.stripHtmlTag = require('./stripHtmlTag'); +exports.stripIndent = require('./stripIndent'); +exports.stripNum = require('./stripNum'); +exports.sum = require('./sum'); +exports.swap = require('./swap'); +exports.table = require('./table'); +exports.throttle = require('./throttle'); +exports.timeAgo = require('./timeAgo'); +exports.timeTaken = require('./timeTaken'); +exports.times = require('./times'); +exports.toArr = require('./toArr'); +exports.toAsync = require('./toAsync'); +exports.toBool = require('./toBool'); +exports.toDate = require('./toDate'); +exports.toInt = require('./toInt'); +exports.toNum = require('./toNum'); +exports.toSrc = require('./toSrc'); +exports.toStr = require('./toStr'); +exports.topoSort = require('./topoSort'); +exports.trim = require('./trim'); +exports.truncate = require('./truncate'); +exports.tryIt = require('./tryIt'); +exports.type = require('./type'); +exports.types = require('./types'); +exports.ucs2 = require('./ucs2'); +exports.unescape = require('./unescape'); +exports.union = require('./union'); +exports.uniqId = require('./uniqId'); +exports.unique = require('./unique'); +exports.universalify = require('./universalify'); +exports.unzip = require('./unzip'); +exports.upperCase = require('./upperCase'); +exports.upperFirst = require('./upperFirst'); +exports.use = require('./use'); +exports.utf8 = require('./utf8'); +exports.uuid = require('./uuid'); +exports.values = require('./values'); +exports.vlq = require('./vlq'); +exports.waitUntil = require('./waitUntil'); +exports.waterfall = require('./waterfall'); +exports.wordWrap = require('./wordWrap'); +exports.wordsToBytes = require('./wordsToBytes'); +exports.wrap = require('./wrap'); +exports.wx = require('./wx'); +exports.zip = require('./zip'); diff --git a/src/miniprogram_npm/miniprogram-licia/inherits.js b/src/miniprogram_npm/miniprogram-licia/inherits.js new file mode 100644 index 0000000..e1e7e22 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/inherits.js @@ -0,0 +1,6 @@ +var create = require('./create'); +exports = function(Class, SuperClass) { + Class.prototype = create(SuperClass.prototype); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/ini.js b/src/miniprogram_npm/miniprogram-licia/ini.js new file mode 100644 index 0000000..13334b3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/ini.js @@ -0,0 +1,90 @@ +var each = require('./each'); +var trim = require('./trim'); +var safeSet = require('./safeSet'); +var safeGet = require('./safeGet'); +var endWith = require('./endWith'); +var isArr = require('./isArr'); +var isObj = require('./isObj'); + +var regSection = /^\[([^\]]*)\]$/i; +var regKeyVal = /^([^=]+)(=(.*))?$/i; +var regComment = /^\s*[;#]/; +function parse(ini) { + var ret = {}; + var section = ret; + each(ini.split('\n'), function(line) { + line = trim(line); + if (!line || line.match(regComment)) return; + var match = line.match(regSection); + if (match && match[1]) { + var _key = match[1]; + section = safeGet(ret, _key) || {}; + return safeSet(ret, _key, section); + } + match = line.match(regKeyVal); + if (!match) return; + var key = trim(match[1]); + var val = match[2] ? trim(match[3]) : true; + if (val === 'true') val = true; + if (val === 'false') val = false; + if (val === 'null') val = null; + if (endWith(key, '[]')) { + key = key.substring(0, key.length - 2); + if (!section[key]) section[key] = []; + } + isArr(section[key]) ? section[key].push(val) : (section[key] = val); + }); + return ret; +} +function stringify(obj) { + var options = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + var ret = ''; + var section = options.section; + var whitespace = options.whitespace; + var separator = whitespace ? ' = ' : '='; + var children = []; + each(obj, function(val, key) { + if (isArr(val)) { + each(val, function(item) { + ret += '' + .concat(key, '[]') + .concat(separator) + .concat(item, '\n'); + }); + } else if (isObj(val)) { + children.push({ + key: key, + val: val + }); + } else { + ret += '' + .concat(key) + .concat(separator) + .concat(val, '\n'); + } + }); + if (section && ret) { + ret = '['.concat(section, ']\n') + ret; + } + section = section ? section + '.' : ''; + each(children, function(child) { + child = stringify(child.val, { + section: section + child.key, + whitespace: options.whitespace + }); + if (child) { + if (ret) { + ret += '\n'; + } + ret += child; + } + }); + return ret; +} +exports = { + parse: parse, + stringify: stringify +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/insertionSort.js b/src/miniprogram_npm/miniprogram-licia/insertionSort.js new file mode 100644 index 0000000..c3ad7ab --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/insertionSort.js @@ -0,0 +1,20 @@ +var swap = require('./swap'); +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + for (var i = 1, len = arr.length; i < len; i++) { + for (var j = i; j > 0; j--) { + if (cmp(arr[j], arr[j - 1]) < 0) { + swap(arr, j, j - 1); + } else { + break; + } + } + } + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/intersect.js b/src/miniprogram_npm/miniprogram-licia/intersect.js new file mode 100644 index 0000000..d6d6ffc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/intersect.js @@ -0,0 +1,19 @@ +var contain = require('./contain'); +var toArr = require('./toArr'); +exports = function(arr) { + var ret = []; + var args = toArr(arguments); + var argsLen = args.length; + for (var i = 0, len = arr.length; i < len; i++) { + var item = arr[i]; + if (contain(ret, item)) continue; + var j = 1; + for (; j < argsLen; j++) { + if (!contain(args[j], item)) break; + } + if (j === argsLen) ret.push(item); + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/intersectRange.js b/src/miniprogram_npm/miniprogram-licia/intersectRange.js new file mode 100644 index 0000000..7875991 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/intersectRange.js @@ -0,0 +1,11 @@ +exports = function(a, b) { + var min = a.start < b.start ? a : b; + var max = min === a ? b : a; + if (min.end < max.start) return; + return { + start: max.start, + end: min.end < max.end ? min.end : max.end + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/invariant.js b/src/miniprogram_npm/miniprogram-licia/invariant.js new file mode 100644 index 0000000..30c4c05 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/invariant.js @@ -0,0 +1,35 @@ +var root = require('./root'); +exports = function(condition, format, a, b, c, d, e, f) { + var process = root.process || { + env: { + NODE_ENV: 'development' + } + }; + if (process.env.NODE_ENV !== 'production') { + if (format === undefined) { + throw new Error('invariant requires an error message argument'); + } + } + if (!condition) { + var error; + if (format === undefined) { + error = new Error( + 'Minified exception occurred; use the non-minified dev environment ' + + 'for the full error message and additional helpful warnings.' + ); + } else { + var args = [a, b, c, d, e, f]; + var argIndex = 0; + error = new Error( + format.replace(/%s/g, function() { + return args[argIndex++]; + }) + ); + error.name = 'Invariant Violation'; + } + error.framesToPop = 1; + throw error; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/invert.js b/src/miniprogram_npm/miniprogram-licia/invert.js new file mode 100644 index 0000000..1ec52f1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/invert.js @@ -0,0 +1,10 @@ +var each = require('./each'); +exports = function(obj) { + var ret = {}; + each(obj, function(val, key) { + ret[val] = key; + }); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isAbsoluteUrl.js b/src/miniprogram_npm/miniprogram-licia/isAbsoluteUrl.js new file mode 100644 index 0000000..a465c78 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isAbsoluteUrl.js @@ -0,0 +1,6 @@ +exports = function(url) { + return regAbsolute.test(url); +}; +var regAbsolute = /^[a-z][a-z0-9+.-]*:/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isArgs.js b/src/miniprogram_npm/miniprogram-licia/isArgs.js new file mode 100644 index 0000000..36d8830 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isArgs.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object Arguments]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isArr.js b/src/miniprogram_npm/miniprogram-licia/isArr.js new file mode 100644 index 0000000..2c07ff3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isArr.js @@ -0,0 +1,10 @@ +var objToStr = require('./objToStr'); +if (Array.isArray && !false) { + exports = Array.isArray; +} else { + exports = function(val) { + return objToStr(val) === '[object Array]'; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isArrBuffer.js b/src/miniprogram_npm/miniprogram-licia/isArrBuffer.js new file mode 100644 index 0000000..20d8fcf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isArrBuffer.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object ArrayBuffer]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isArrLike.js b/src/miniprogram_npm/miniprogram-licia/isArrLike.js new file mode 100644 index 0000000..6394dca --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isArrLike.js @@ -0,0 +1,10 @@ +var isNum = require('./isNum'); +var isFn = require('./isFn'); +var MAX_ARR_IDX = Math.pow(2, 53) - 1; +exports = function(val) { + if (!val) return false; + var len = val.length; + return isNum(len) && len >= 0 && len <= MAX_ARR_IDX && !isFn(val); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isAsyncFn.js b/src/miniprogram_npm/miniprogram-licia/isAsyncFn.js new file mode 100644 index 0000000..115411a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isAsyncFn.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object AsyncFunction]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isBool.js b/src/miniprogram_npm/miniprogram-licia/isBool.js new file mode 100644 index 0000000..022b906 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isBool.js @@ -0,0 +1,5 @@ +exports = function(val) { + return val === true || val === false; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isBrowser.js b/src/miniprogram_npm/miniprogram-licia/isBrowser.js new file mode 100644 index 0000000..5f7fa60 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isBrowser.js @@ -0,0 +1,6 @@ +exports = + typeof window === 'object' && + typeof document === 'object' && + document.nodeType === 9; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isBuffer.js b/src/miniprogram_npm/miniprogram-licia/isBuffer.js new file mode 100644 index 0000000..9c7d3c7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isBuffer.js @@ -0,0 +1,12 @@ +var isFn = require('./isFn'); +exports = function(val) { + if (val == null) return false; + if (val._isBuffer) return true; + return ( + val.constructor && + isFn(val.constructor.isBuffer) && + val.constructor.isBuffer(val) + ); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isClose.js b/src/miniprogram_npm/miniprogram-licia/isClose.js new file mode 100644 index 0000000..0ebabaa --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isClose.js @@ -0,0 +1,10 @@ +var isNum = require('./isNum'); +exports = function(a, b, relTol, absTol) { + if (!isNum(relTol)) relTol = 1e-9; + if (!isNum(absTol)) absTol = 0; + return abs(a - b) <= max(relTol * max(abs(a), abs(b)), absTol); +}; +var abs = Math.abs; +var max = Math.max; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isCyclic.js b/src/miniprogram_npm/miniprogram-licia/isCyclic.js new file mode 100644 index 0000000..7dc324d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isCyclic.js @@ -0,0 +1,38 @@ +var Class = require('./Class'); +var keys = require('./keys'); +var isObj = require('./isObj'); +exports = function(val, parents) { + if (!isObj(val)) { + return false; + } + if (parents && parents.contains(val)) { + return true; + } + parents = new Node(val, parents); + var _keys = keys(val); + for (var i = 0, len = _keys.length; i < len; i++) { + if (exports(val[_keys[i]], parents)) { + return true; + } + } + return false; +}; + +var Node = Class({ + initialize: function Node(val, next) { + this.val = val; + this.next = next; + }, + contains: function(val) { + var cursor = this; + while (cursor) { + if (cursor.val === val) { + return true; + } + cursor = cursor.next; + } + return false; + } +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isDataUrl.js b/src/miniprogram_npm/miniprogram-licia/isDataUrl.js new file mode 100644 index 0000000..6ceeacc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isDataUrl.js @@ -0,0 +1,8 @@ +var trim = require('./trim'); +exports = function(str) { + return regDataUrl.test(trim(str)); +}; + +var regDataUrl = /^data:([a-z]+\/[a-z0-9-+.]+(;[a-z0-9-.!#$%*+.{}|~`]+=[a-z0-9-.!#$%*+.{}|~`]+)*)?(;base64)?,([a-z0-9!$&',()*+;=\-._~:@/?%\s]*?)$/i; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isDate.js b/src/miniprogram_npm/miniprogram-licia/isDate.js new file mode 100644 index 0000000..54dc0df --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isDate.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object Date]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isEmail.js b/src/miniprogram_npm/miniprogram-licia/isEmail.js new file mode 100644 index 0000000..34155c8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isEmail.js @@ -0,0 +1,6 @@ +exports = function(val) { + return regEmail.test(val); +}; +var regEmail = /.+@.+\..+/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isEmpty.js b/src/miniprogram_npm/miniprogram-licia/isEmpty.js new file mode 100644 index 0000000..f37c6a6 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isEmpty.js @@ -0,0 +1,14 @@ +var isArrLike = require('./isArrLike'); +var isArr = require('./isArr'); +var isStr = require('./isStr'); +var isArgs = require('./isArgs'); +var keys = require('./keys'); +exports = function(val) { + if (val == null) return true; + if (isArrLike(val) && (isArr(val) || isStr(val) || isArgs(val))) { + return val.length === 0; + } + return keys(val).length === 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isEqual.js b/src/miniprogram_npm/miniprogram-licia/isEqual.js new file mode 100644 index 0000000..fbb4bb8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isEqual.js @@ -0,0 +1,75 @@ +var isFn = require('./isFn'); +var has = require('./has'); +var keys = require('./keys'); +exports = function(a, b) { + return eq(a, b); +}; +function deepEq(a, b, aStack, bStack) { + var className = toString.call(a); + if (className !== toString.call(b)) return false; + switch (className) { + case '[object RegExp]': + case '[object String]': + return '' + a === '' + b; + case '[object Number]': + if (+a !== +a) return +b !== +b; + return +a === 0 ? 1 / +a === 1 / b : +a === +b; + case '[object Date]': + case '[object Boolean]': + return +a === +b; + } + var areArrays = className === '[object Array]'; + if (!areArrays) { + if (typeof a != 'object' || typeof b != 'object') return false; + var aCtor = a.constructor; + var bCtor = b.constructor; + if ( + aCtor !== bCtor && + !( + isFn(aCtor) && + aCtor instanceof aCtor && + isFn(bCtor) && + bCtor instanceof bCtor + ) && + 'constructor' in a && + 'constructor' in b + ) + return false; + } + aStack = aStack || []; + bStack = bStack || []; + var length = aStack.length; + while (length--) if (aStack[length] === a) return bStack[length] === b; + aStack.push(a); + bStack.push(b); + if (areArrays) { + length = a.length; + if (length !== b.length) return false; + while (length--) + if (!eq(a[length], b[length], aStack, bStack)) return false; + } else { + var _keys = keys(a); + var key; + length = _keys.length; + if (keys(b).length !== length) return false; + while (length--) { + key = _keys[length]; + if (!(has(b, key) && eq(a[key], b[key], aStack, bStack))) + return false; + } + } + aStack.pop(); + bStack.pop(); + return true; +} +function eq(a, b, aStack, bStack) { + if (a === b) return a !== 0 || 1 / a === 1 / b; + if (a == null || b == null) return a === b; + if (a !== a) return b !== b; + var type = typeof a; + if (type !== 'function' && type !== 'object' && typeof b != 'object') + return false; + return deepEq(a, b, aStack, bStack); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isErr.js b/src/miniprogram_npm/miniprogram-licia/isErr.js new file mode 100644 index 0000000..ec27962 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isErr.js @@ -0,0 +1,12 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + switch (objToStr(val)) { + case '[object Error]': + case '[object DOMException]': + return true; + default: + return val instanceof Error; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isEven.js b/src/miniprogram_npm/miniprogram-licia/isEven.js new file mode 100644 index 0000000..daf74e4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isEven.js @@ -0,0 +1,7 @@ +var isInt = require('./isInt'); +exports = function(num) { + if (!isInt(num)) return false; + return num % 2 === 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isFinite.js b/src/miniprogram_npm/miniprogram-licia/isFinite.js new file mode 100644 index 0000000..f4577e3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isFinite.js @@ -0,0 +1,8 @@ +var root = require('./root'); +var nativeIsFinite = root.isFinite; +var nativeIsNaN = root.isNaN; +exports = function(val) { + return nativeIsFinite(val) && !nativeIsNaN(parseFloat(val)); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isFn.js b/src/miniprogram_npm/miniprogram-licia/isFn.js new file mode 100644 index 0000000..e291951 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isFn.js @@ -0,0 +1,11 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + var objStr = objToStr(val); + return ( + objStr === '[object Function]' || + objStr === '[object GeneratorFunction]' || + objStr === '[object AsyncFunction]' + ); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isFullWidth.js b/src/miniprogram_npm/miniprogram-licia/isFullWidth.js new file mode 100644 index 0000000..b7bf290 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isFullWidth.js @@ -0,0 +1,29 @@ +var isInt = require('./isInt'); + +exports = function isFullWidth(c) { + if (!isInt(c)) { + return false; + } + + return ( + c >= 0x1100 && + (c <= 0x115f || + c === 0x2329 || + c === 0x232a || + (0x2e80 <= c && c <= 0x3247 && c !== 0x303f) || + (0x3250 <= c && c <= 0x4dbf) || + (0x4e00 <= c && c <= 0xa4c6) || + (0xa960 <= c && c <= 0xa97c) || + (0xac00 <= c && c <= 0xd7a3) || + (0xf900 <= c && c <= 0xfaff) || + (0xfe10 <= c && c <= 0xfe19) || + (0xfe30 <= c && c <= 0xfe6b) || + (0xff01 <= c && c <= 0xff60) || + (0xffe0 <= c && c <= 0xffe6) || + (0x1b000 <= c && c <= 0x1b001) || + (0x1f200 <= c && c <= 0x1f251) || + (0x20000 <= c && c <= 0x3fffd)) + ); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isGeneratorFn.js b/src/miniprogram_npm/miniprogram-licia/isGeneratorFn.js new file mode 100644 index 0000000..e4fddc5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isGeneratorFn.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object GeneratorFunction]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isInt.js b/src/miniprogram_npm/miniprogram-licia/isInt.js new file mode 100644 index 0000000..07d46b1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isInt.js @@ -0,0 +1,6 @@ +var isNum = require('./isNum'); +exports = function(val) { + return isNum(val) && val % 1 === 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isIp.js b/src/miniprogram_npm/miniprogram-licia/isIp.js new file mode 100644 index 0000000..050f132 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isIp.js @@ -0,0 +1,54 @@ +exports = function(str) { + return exports.v4(str) || exports.v6(str); +}; + +var v4 = + '(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}'; +var regV4 = new RegExp('^'.concat(v4, '$')); +var v6seg = '[a-fA-F\\d]{1,4}'; +var v6 = [ + '(', + '(?:'.concat(v6seg, ':){7}(?:').concat(v6seg, '|:)|'), + '(?:' + .concat(v6seg, ':){6}(?:') + .concat(v4, '|:') + .concat(v6seg, '|:)|'), + '(?:' + .concat(v6seg, ':){5}(?::') + .concat(v4, '|(:') + .concat(v6seg, '){1,2}|:)|'), + '(?:' + .concat(v6seg, ':){4}(?:(:') + .concat(v6seg, '){0,1}:') + .concat(v4, '|(:') + .concat(v6seg, '){1,3}|:)|'), + '(?:' + .concat(v6seg, ':){3}(?:(:') + .concat(v6seg, '){0,2}:') + .concat(v4, '|(:') + .concat(v6seg, '){1,4}|:)|'), + '(?:' + .concat(v6seg, ':){2}(?:(:') + .concat(v6seg, '){0,3}:') + .concat(v4, '|(:') + .concat(v6seg, '){1,5}|:)|'), + '(?:' + .concat(v6seg, ':){1}(?:(:') + .concat(v6seg, '){0,4}:') + .concat(v4, '|(:') + .concat(v6seg, '){1,6}|:)|'), + '(?::((?::' + .concat(v6seg, '){0,5}:') + .concat(v4, '|(?::') + .concat(v6seg, '){1,7}|:))'), + ')(%[0-9a-zA-Z]{1,})?' +].join(''); +var regV6 = new RegExp('^'.concat(v6, '$')); +exports.v4 = function(str) { + return regV4.test(str); +}; +exports.v6 = function(str) { + return regV6.test(str); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isJson.js b/src/miniprogram_npm/miniprogram-licia/isJson.js new file mode 100644 index 0000000..8245c82 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isJson.js @@ -0,0 +1,10 @@ +exports = function(val) { + try { + JSON.parse(val); + return true; + } catch (e) { + return false; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isLeapYear.js b/src/miniprogram_npm/miniprogram-licia/isLeapYear.js new file mode 100644 index 0000000..4c6b4cb --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isLeapYear.js @@ -0,0 +1,5 @@ +exports = function(year) { + return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isMac.js b/src/miniprogram_npm/miniprogram-licia/isMac.js new file mode 100644 index 0000000..72fbd9d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isMac.js @@ -0,0 +1,4 @@ +var detectOs = require('./detectOs'); +exports = detectOs() === 'os x'; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isMap.js b/src/miniprogram_npm/miniprogram-licia/isMap.js new file mode 100644 index 0000000..ffbbfa3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isMap.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object Map]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isMatch.js b/src/miniprogram_npm/miniprogram-licia/isMatch.js new file mode 100644 index 0000000..98fc236 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isMatch.js @@ -0,0 +1,14 @@ +var keys = require('./keys'); +exports = function(obj, src) { + var _keys = keys(src); + var len = _keys.length; + if (obj == null) return !len; + obj = Object(obj); + for (var i = 0; i < len; i++) { + var key = _keys[i]; + if (src[key] !== obj[key] || !(key in obj)) return false; + } + return true; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isMiniProgram.js b/src/miniprogram_npm/miniprogram-licia/isMiniProgram.js new file mode 100644 index 0000000..1589806 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isMiniProgram.js @@ -0,0 +1,5 @@ +var isFn = require('./isFn'); + +exports = typeof wx !== 'undefined' && isFn(wx.openLocation); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isMobile.js b/src/miniprogram_npm/miniprogram-licia/isMobile.js new file mode 100644 index 0000000..6c0a212 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isMobile.js @@ -0,0 +1,10 @@ +var isBrowser = require('./isBrowser'); +var memoize = require('./memoize'); +var regMobileAll = /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i; +var regMobileFour = /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i; +exports = memoize(function(ua) { + ua = ua || (isBrowser ? navigator.userAgent : ''); + return regMobileAll.test(ua) || regMobileFour.test(ua.substr(0, 4)); +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNaN.js b/src/miniprogram_npm/miniprogram-licia/isNaN.js new file mode 100644 index 0000000..176d9a3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNaN.js @@ -0,0 +1,6 @@ +var isNum = require('./isNum'); +exports = function(val) { + return isNum(val) && val !== +val; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNative.js b/src/miniprogram_npm/miniprogram-licia/isNative.js new file mode 100644 index 0000000..9b02b85 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNative.js @@ -0,0 +1,23 @@ +var isObj = require('./isObj'); +var isFn = require('./isFn'); +var toSrc = require('./toSrc'); +exports = function(val) { + if (!isObj(val)) return false; + if (isFn(val)) return regIsNative.test(toSrc(val)); + + return regIsHostCtor.test(toSrc(val)); +}; +var hasOwnProperty = Object.prototype.hasOwnProperty; +var regIsNative = new RegExp( + '^' + + toSrc(hasOwnProperty) + .replace(/[\\^$.*+?()[\]{}|]/g, '\\$&') + .replace( + /hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, + '$1.*?' + ) + + '$' +); +var regIsHostCtor = /^\[object .+?Constructor\]$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNil.js b/src/miniprogram_npm/miniprogram-licia/isNil.js new file mode 100644 index 0000000..2a7de9a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNil.js @@ -0,0 +1,5 @@ +exports = function(val) { + return val == null; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNode.js b/src/miniprogram_npm/miniprogram-licia/isNode.js new file mode 100644 index 0000000..559584e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNode.js @@ -0,0 +1,5 @@ +var objToStr = require('./objToStr'); +exports = + typeof process !== 'undefined' && objToStr(process) === '[object process]'; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNull.js b/src/miniprogram_npm/miniprogram-licia/isNull.js new file mode 100644 index 0000000..82b8b08 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNull.js @@ -0,0 +1,5 @@ +exports = function(val) { + return val === null; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNum.js b/src/miniprogram_npm/miniprogram-licia/isNum.js new file mode 100644 index 0000000..43ef931 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNum.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object Number]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isNumeric.js b/src/miniprogram_npm/miniprogram-licia/isNumeric.js new file mode 100644 index 0000000..9743bc3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isNumeric.js @@ -0,0 +1,11 @@ +var isStr = require('./isStr'); +var isNaN = require('./isNaN'); +var isFinite = require('./isFinite'); +var isArr = require('./isArr'); +exports = function(val) { + if (isStr(val)) val = val.replace(regComma, ''); + return !isNaN(parseFloat(val)) && isFinite(val) && !isArr(val); +}; +var regComma = /,/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isObj.js b/src/miniprogram_npm/miniprogram-licia/isObj.js new file mode 100644 index 0000000..1a0fdd2 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isObj.js @@ -0,0 +1,6 @@ +exports = function(val) { + var type = typeof val; + return !!val && (type === 'function' || type === 'object'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isOdd.js b/src/miniprogram_npm/miniprogram-licia/isOdd.js new file mode 100644 index 0000000..7d65dcf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isOdd.js @@ -0,0 +1,7 @@ +var isInt = require('./isInt'); +exports = function(num) { + if (!isInt(num)) return false; + return num % 2 !== 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isPlainObj.js b/src/miniprogram_npm/miniprogram-licia/isPlainObj.js new file mode 100644 index 0000000..77dca83 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isPlainObj.js @@ -0,0 +1,13 @@ +var isObj = require('./isObj'); +var isArr = require('./isArr'); +var isFn = require('./isFn'); +var has = require('./has'); +exports = function(val) { + if (!isObj(val)) return false; + var ctor = val.constructor; + if (!isFn(ctor)) return false; + if (!has(ctor.prototype, 'isPrototypeOf')) return false; + return !isArr(val) && !isFn(val); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isPrime.js b/src/miniprogram_npm/miniprogram-licia/isPrime.js new file mode 100644 index 0000000..af6a498 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isPrime.js @@ -0,0 +1,11 @@ +exports = function(num) { + var boundary = Math.floor(Math.sqrt(num)); + for (var i = 2; i <= boundary; i++) { + if (num % i === 0) { + return false; + } + } + return num >= 2; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isPrimitive.js b/src/miniprogram_npm/miniprogram-licia/isPrimitive.js new file mode 100644 index 0000000..1533ba9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isPrimitive.js @@ -0,0 +1,6 @@ +exports = function(val) { + var type = typeof val; + return val == null || (type !== 'function' && type !== 'object'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isPromise.js b/src/miniprogram_npm/miniprogram-licia/isPromise.js new file mode 100644 index 0000000..c905b0b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isPromise.js @@ -0,0 +1,7 @@ +var isObj = require('./isObj'); +var isFn = require('./isFn'); +exports = function(val) { + return isObj(val) && isFn(val.then) && isFn(val.catch); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isRegExp.js b/src/miniprogram_npm/miniprogram-licia/isRegExp.js new file mode 100644 index 0000000..43708a2 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isRegExp.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object RegExp]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isRelative.js b/src/miniprogram_npm/miniprogram-licia/isRelative.js new file mode 100644 index 0000000..8dc14ef --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isRelative.js @@ -0,0 +1,6 @@ +exports = function(path) { + return !regAbsolute.test(path); +}; +var regAbsolute = /^([a-z]+:)?[\\/]/i; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isSet.js b/src/miniprogram_npm/miniprogram-licia/isSet.js new file mode 100644 index 0000000..95c5405 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isSet.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object Set]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isSorted.js b/src/miniprogram_npm/miniprogram-licia/isSorted.js new file mode 100644 index 0000000..9d76d42 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isSorted.js @@ -0,0 +1,17 @@ +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : exports.defComparator; + for (var i = 0, len = arr.length; i < len - 1; i++) { + if (cmp(arr[i], arr[i + 1]) > 0) return false; + } + return true; +}; +exports.defComparator = function(a, b) { + if (a < b) return -1; + if (a > b) return 1; + return 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isStr.js b/src/miniprogram_npm/miniprogram-licia/isStr.js new file mode 100644 index 0000000..496ae85 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isStr.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object String]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isStrBlank.js b/src/miniprogram_npm/miniprogram-licia/isStrBlank.js new file mode 100644 index 0000000..5b5f07c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isStrBlank.js @@ -0,0 +1,18 @@ +exports = function(str) { + for (var i = 0, len = str.length; i < len; i++) { + var c = str[i]; + if ( + c !== ' ' && + c !== '\n' && + c !== '\r' && + c !== '\t' && + c !== '\f' && + c !== '\v' + ) { + return false; + } + } + return true; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isSymbol.js b/src/miniprogram_npm/miniprogram-licia/isSymbol.js new file mode 100644 index 0000000..4237958 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isSymbol.js @@ -0,0 +1,5 @@ +exports = function(val) { + return typeof val === 'symbol'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isTypedArr.js b/src/miniprogram_npm/miniprogram-licia/isTypedArr.js new file mode 100644 index 0000000..426484d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isTypedArr.js @@ -0,0 +1,24 @@ +var objToStr = require('./objToStr'); +var each = require('./each'); +exports = function(val) { + return !!map[objToStr(val)]; +}; +var map = {}; +each( + [ + 'Int8Array', + 'Int16Array', + 'Int32Array', + 'Uint8Array', + 'Uint8ClampedArray', + 'Uint16Array', + 'Uint32Array', + 'Float32Array', + 'Float64Array' + ], + function(val) { + map['[object ' + val + ']'] = true; + } +); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isUndef.js b/src/miniprogram_npm/miniprogram-licia/isUndef.js new file mode 100644 index 0000000..a9ca7e9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isUndef.js @@ -0,0 +1,5 @@ +exports = function(val) { + return val === void 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isUrl.js b/src/miniprogram_npm/miniprogram-licia/isUrl.js new file mode 100644 index 0000000..6ef8394 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isUrl.js @@ -0,0 +1,6 @@ +exports = function(val) { + return regUrl.test(val); +}; +var regUrl = /^(?:\w+:)?\/\/([^\s.]+\.\S{2}|localhost[:?\d]*)\S*$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isWeakMap.js b/src/miniprogram_npm/miniprogram-licia/isWeakMap.js new file mode 100644 index 0000000..18ec435 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isWeakMap.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object WeakMap]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isWeakSet.js b/src/miniprogram_npm/miniprogram-licia/isWeakSet.js new file mode 100644 index 0000000..40b03e3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isWeakSet.js @@ -0,0 +1,6 @@ +var objToStr = require('./objToStr'); +exports = function(val) { + return objToStr(val) === '[object WeakSet]'; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/isWindows.js b/src/miniprogram_npm/miniprogram-licia/isWindows.js new file mode 100644 index 0000000..7900475 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/isWindows.js @@ -0,0 +1,4 @@ +var detectOs = require('./detectOs'); +exports = detectOs() === 'windows'; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/jsonClone.js b/src/miniprogram_npm/miniprogram-licia/jsonClone.js new file mode 100644 index 0000000..0e45dc2 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/jsonClone.js @@ -0,0 +1,5 @@ +exports = function(val) { + return JSON.parse(JSON.stringify(val)); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/kebabCase.js b/src/miniprogram_npm/miniprogram-licia/kebabCase.js new file mode 100644 index 0000000..9487732 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/kebabCase.js @@ -0,0 +1,6 @@ +var splitCase = require('./splitCase'); +exports = function(str) { + return splitCase(str).join('-'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/keyCode.js b/src/miniprogram_npm/miniprogram-licia/keyCode.js new file mode 100644 index 0000000..3d5f234 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/keyCode.js @@ -0,0 +1,61 @@ +var isStr = require('./isStr'); +var invert = require('./invert'); +exports = function(val) { + if (isStr(val)) return codeMap[val]; + return nameMap[val]; +}; +var codeMap = { + backspace: 8, + tab: 9, + enter: 13, + shift: 16, + ctrl: 17, + alt: 18, + 'pause/break': 19, + 'caps lock': 20, + esc: 27, + space: 32, + 'page up': 33, + 'page down': 34, + end: 35, + home: 36, + left: 37, + up: 38, + right: 39, + down: 40, + insert: 45, + delete: 46, + windows: 91, + 'right windows': 92, + 'windows menu': 93, + 'numpad *': 106, + 'numpad +': 107, + 'numpad -': 109, + 'numpad .': 110, + 'numpad /': 111, + 'num lock': 144, + 'scroll lock': 145, + ';': 186, + '=': 187, + ',': 188, + '-': 189, + '.': 190, + '/': 191, + '`': 192, + '[': 219, + '\\': 220, + ']': 221, + "'": 222 +}; + +// Lower case chars +for (var i = 97; i < 123; i++) codeMap[String.fromCharCode(i)] = i - 32; +// Numbers +for (var _i = 48; _i < 58; _i++) codeMap[_i - 48] = _i; +// Function keys +for (var _i2 = 1; _i2 < 13; _i2++) codeMap['f' + _i2] = _i2 + 111; +// Numpad keys +for (var _i3 = 0; _i3 < 10; _i3++) codeMap['numpad ' + _i3] = _i3 + 96; +var nameMap = invert(codeMap); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/keys.js b/src/miniprogram_npm/miniprogram-licia/keys.js new file mode 100644 index 0000000..4f2e4d8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/keys.js @@ -0,0 +1,14 @@ +var has = require('./has'); +if (Object.keys && !false) { + exports = Object.keys; +} else { + exports = function(obj) { + var ret = []; + for (var key in obj) { + if (has(obj, key)) ret.push(key); + } + return ret; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/last.js b/src/miniprogram_npm/miniprogram-licia/last.js new file mode 100644 index 0000000..057b6c8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/last.js @@ -0,0 +1,6 @@ +exports = function(arr) { + var len = arr ? arr.length : 0; + if (len) return arr[len - 1]; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/levenshtein.js b/src/miniprogram_npm/miniprogram-licia/levenshtein.js new file mode 100644 index 0000000..1232eb8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/levenshtein.js @@ -0,0 +1,59 @@ +var vector = []; +var bChars = []; + +exports = function(a, b) { + if (a === b) return 0; + + if (a.length > b.length) { + var tmp = a; + a = b; + b = tmp; + } + var aLen = a.length; + var bLen = b.length; + if (!aLen) return bLen; + if (!bLen) return aLen; + + while (aLen > 0 && a.charCodeAt(aLen - 1) === b.charCodeAt(bLen - 1)) { + aLen--; + bLen--; + } + if (!aLen) return bLen; + + var start = 0; + while (start < aLen && a.charCodeAt(start) === b.charCodeAt(start)) { + start++; + } + aLen -= start; + bLen -= start; + if (!aLen) return bLen; + var current = 0; + var left; + var above; + var charA; + var i = 0; + while (i < bLen) { + bChars[i] = b.charCodeAt(start + i); + vector[i] = ++i; + } + + for (var _i = 0; _i < aLen; _i++) { + left = _i; + current = _i + 1; + charA = a.charCodeAt(start + _i); + for (var j = 0; j < bLen; j++) { + above = current; + current = left; + left = vector[j]; + if (charA !== bChars[j]) { + if (left < current) current = left; + if (above < current) current = above; + current++; + } + vector[j] = current; + } + } + return current; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/linkify.js b/src/miniprogram_npm/miniprogram-licia/linkify.js new file mode 100644 index 0000000..d346af3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/linkify.js @@ -0,0 +1,16 @@ +var extractUrls = require('./extractUrls'); +var each = require('./each'); +var escapeRegExp = require('./escapeRegExp'); +exports = function(str, hyperlink) { + hyperlink = hyperlink || defHyperlink; + var urlList = extractUrls(str); + each(urlList, function(url) { + str = str.replace(new RegExp(escapeRegExp(url), 'g'), hyperlink); + }); + return str; +}; +function defHyperlink(url) { + return '<a href="' + url + '">' + url + '</a>'; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/longest.js b/src/miniprogram_npm/miniprogram-licia/longest.js new file mode 100644 index 0000000..0e98841 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/longest.js @@ -0,0 +1,16 @@ +var size = require('./size'); +exports = function(arr) { + if (arr.length < 1) return; + var ret = arr[0], + retSize = size(arr[0]); + for (var i = 1, len = arr.length; i < len; i++) { + var elSize = size(arr[i]); + if (elSize > retSize) { + ret = arr[i]; + retSize = elSize; + } + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/lowerCase.js b/src/miniprogram_npm/miniprogram-licia/lowerCase.js new file mode 100644 index 0000000..8a34f99 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/lowerCase.js @@ -0,0 +1,6 @@ +var toStr = require('./toStr'); +exports = function(str) { + return toStr(str).toLocaleLowerCase(); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/lpad.js b/src/miniprogram_npm/miniprogram-licia/lpad.js new file mode 100644 index 0000000..0542e91 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/lpad.js @@ -0,0 +1,11 @@ +var repeat = require('./repeat'); +var toStr = require('./toStr'); +exports = function(str, len, chars) { + str = toStr(str); + var strLen = str.length; + chars = chars || ' '; + if (strLen < len) str = (repeat(chars, len - strLen) + str).slice(-len); + return str; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/ltrim.js b/src/miniprogram_npm/miniprogram-licia/ltrim.js new file mode 100644 index 0000000..ba3c858 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/ltrim.js @@ -0,0 +1,30 @@ +var regSpace = /^\s+/; +exports = function(str, chars) { + if (chars == null) { + if (str.trimLeft) { + return str.trimLeft(); + } + return str.replace(regSpace, ''); + } + var start = 0; + var len = str.length; + var charLen = chars.length; + var found = true; + var i; + var c; + while (found && start < len) { + found = false; + i = -1; + c = str.charAt(start); + while (++i < charLen) { + if (c === chars[i]) { + found = true; + start++; + break; + } + } + } + return start >= len ? '' : str.substr(start, len); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/map.js b/src/miniprogram_npm/miniprogram-licia/map.js new file mode 100644 index 0000000..c4d863f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/map.js @@ -0,0 +1,16 @@ +var safeCb = require('./safeCb'); +var keys = require('./keys'); +var isArrLike = require('./isArrLike'); +exports = function(obj, iterator, ctx) { + iterator = safeCb(iterator, ctx); + var _keys = !isArrLike(obj) && keys(obj); + var len = (_keys || obj).length; + var results = Array(len); + for (var i = 0; i < len; i++) { + var curKey = _keys ? _keys[i] : i; + results[i] = iterator(obj[curKey], curKey, obj); + } + return results; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/mapObj.js b/src/miniprogram_npm/miniprogram-licia/mapObj.js new file mode 100644 index 0000000..fa21dc0 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/mapObj.js @@ -0,0 +1,15 @@ +var safeCb = require('./safeCb'); +var keys = require('./keys'); +exports = function(obj, iterator, ctx) { + iterator = safeCb(iterator, ctx); + var _keys = keys(obj); + var len = _keys.length; + var ret = {}; + for (var i = 0; i < len; i++) { + var curKey = _keys[i]; + ret[curKey] = iterator(obj[curKey], curKey, obj); + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/matcher.js b/src/miniprogram_npm/miniprogram-licia/matcher.js new file mode 100644 index 0000000..ed05712 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/matcher.js @@ -0,0 +1,10 @@ +var extendOwn = require('./extendOwn'); +var isMatch = require('./isMatch'); +exports = function(attrs) { + attrs = extendOwn({}, attrs); + return function(obj) { + return isMatch(obj, attrs); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/max.js b/src/miniprogram_npm/miniprogram-licia/max.js new file mode 100644 index 0000000..bde51f1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/max.js @@ -0,0 +1,10 @@ +exports = function() { + var arr = arguments; + var ret = arr[0]; + for (var i = 1, len = arr.length; i < len; i++) { + if (arr[i] > ret) ret = arr[i]; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/md5.js b/src/miniprogram_npm/miniprogram-licia/md5.js new file mode 100644 index 0000000..fbc45f9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/md5.js @@ -0,0 +1,140 @@ +var isStr = require('./isStr'); +var strToBytes = require('./strToBytes'); +var hex = require('./hex'); +var bytesToWords = require('./bytesToWords'); +var wordsToBytes = require('./wordsToBytes'); +var isNode = require('./isNode'); +var isArr = require('./isArr'); + +exports = function(msg) { + if (isStr(msg)) msg = strToBytes(msg); + var m = bytesToWords(msg); + var l = msg.length * 8; + var a = 1732584193; + var b = -271733879; + var c = -1732584194; + var d = 271733878; + + for (var i = 0; i < m.length; i++) { + m[i] = + (((m[i] << 8) | (m[i] >>> 24)) & 0x00ff00ff) | + (((m[i] << 24) | (m[i] >>> 8)) & 0xff00ff00); + } + + m[l >>> 5] |= 0x80 << l % 32; + m[(((l + 64) >>> 9) << 4) + 14] = l; + for (var _i = 0; _i < m.length; _i += 16) { + var aa = a; + var bb = b; + var cc = c; + var dd = d; + a = FF(a, b, c, d, m[_i + 0], 7, -680876936); + d = FF(d, a, b, c, m[_i + 1], 12, -389564586); + c = FF(c, d, a, b, m[_i + 2], 17, 606105819); + b = FF(b, c, d, a, m[_i + 3], 22, -1044525330); + a = FF(a, b, c, d, m[_i + 4], 7, -176418897); + d = FF(d, a, b, c, m[_i + 5], 12, 1200080426); + c = FF(c, d, a, b, m[_i + 6], 17, -1473231341); + b = FF(b, c, d, a, m[_i + 7], 22, -45705983); + a = FF(a, b, c, d, m[_i + 8], 7, 1770035416); + d = FF(d, a, b, c, m[_i + 9], 12, -1958414417); + c = FF(c, d, a, b, m[_i + 10], 17, -42063); + b = FF(b, c, d, a, m[_i + 11], 22, -1990404162); + a = FF(a, b, c, d, m[_i + 12], 7, 1804603682); + d = FF(d, a, b, c, m[_i + 13], 12, -40341101); + c = FF(c, d, a, b, m[_i + 14], 17, -1502002290); + b = FF(b, c, d, a, m[_i + 15], 22, 1236535329); + a = GG(a, b, c, d, m[_i + 1], 5, -165796510); + d = GG(d, a, b, c, m[_i + 6], 9, -1069501632); + c = GG(c, d, a, b, m[_i + 11], 14, 643717713); + b = GG(b, c, d, a, m[_i + 0], 20, -373897302); + a = GG(a, b, c, d, m[_i + 5], 5, -701558691); + d = GG(d, a, b, c, m[_i + 10], 9, 38016083); + c = GG(c, d, a, b, m[_i + 15], 14, -660478335); + b = GG(b, c, d, a, m[_i + 4], 20, -405537848); + a = GG(a, b, c, d, m[_i + 9], 5, 568446438); + d = GG(d, a, b, c, m[_i + 14], 9, -1019803690); + c = GG(c, d, a, b, m[_i + 3], 14, -187363961); + b = GG(b, c, d, a, m[_i + 8], 20, 1163531501); + a = GG(a, b, c, d, m[_i + 13], 5, -1444681467); + d = GG(d, a, b, c, m[_i + 2], 9, -51403784); + c = GG(c, d, a, b, m[_i + 7], 14, 1735328473); + b = GG(b, c, d, a, m[_i + 12], 20, -1926607734); + a = HH(a, b, c, d, m[_i + 5], 4, -378558); + d = HH(d, a, b, c, m[_i + 8], 11, -2022574463); + c = HH(c, d, a, b, m[_i + 11], 16, 1839030562); + b = HH(b, c, d, a, m[_i + 14], 23, -35309556); + a = HH(a, b, c, d, m[_i + 1], 4, -1530992060); + d = HH(d, a, b, c, m[_i + 4], 11, 1272893353); + c = HH(c, d, a, b, m[_i + 7], 16, -155497632); + b = HH(b, c, d, a, m[_i + 10], 23, -1094730640); + a = HH(a, b, c, d, m[_i + 13], 4, 681279174); + d = HH(d, a, b, c, m[_i + 0], 11, -358537222); + c = HH(c, d, a, b, m[_i + 3], 16, -722521979); + b = HH(b, c, d, a, m[_i + 6], 23, 76029189); + a = HH(a, b, c, d, m[_i + 9], 4, -640364487); + d = HH(d, a, b, c, m[_i + 12], 11, -421815835); + c = HH(c, d, a, b, m[_i + 15], 16, 530742520); + b = HH(b, c, d, a, m[_i + 2], 23, -995338651); + a = II(a, b, c, d, m[_i + 0], 6, -198630844); + d = II(d, a, b, c, m[_i + 7], 10, 1126891415); + c = II(c, d, a, b, m[_i + 14], 15, -1416354905); + b = II(b, c, d, a, m[_i + 5], 21, -57434055); + a = II(a, b, c, d, m[_i + 12], 6, 1700485571); + d = II(d, a, b, c, m[_i + 3], 10, -1894986606); + c = II(c, d, a, b, m[_i + 10], 15, -1051523); + b = II(b, c, d, a, m[_i + 1], 21, -2054922799); + a = II(a, b, c, d, m[_i + 8], 6, 1873313359); + d = II(d, a, b, c, m[_i + 15], 10, -30611744); + c = II(c, d, a, b, m[_i + 6], 15, -1560198380); + b = II(b, c, d, a, m[_i + 13], 21, 1309151649); + a = II(a, b, c, d, m[_i + 4], 6, -145523070); + d = II(d, a, b, c, m[_i + 11], 10, -1120210379); + c = II(c, d, a, b, m[_i + 2], 15, 718787259); + b = II(b, c, d, a, m[_i + 9], 21, -343485551); + a = (a + aa) >>> 0; + b = (b + bb) >>> 0; + c = (c + cc) >>> 0; + d = (d + dd) >>> 0; + } + return hex.encode(wordsToBytes(endian([a, b, c, d]))); +}; +function FF(a, b, c, d, x, s, t) { + var n = a + ((b & c) | (~b & d)) + (x >>> 0) + t; + return ((n << s) | (n >>> (32 - s))) + b; +} +function GG(a, b, c, d, x, s, t) { + var n = a + ((b & d) | (c & ~d)) + (x >>> 0) + t; + return ((n << s) | (n >>> (32 - s))) + b; +} +function HH(a, b, c, d, x, s, t) { + var n = a + (b ^ c ^ d) + (x >>> 0) + t; + return ((n << s) | (n >>> (32 - s))) + b; +} +function II(a, b, c, d, x, s, t) { + var n = a + (c ^ (b | ~d)) + (x >>> 0) + t; + return ((n << s) | (n >>> (32 - s))) + b; +} +function endian(n) { + if (n.constructor == Number) { + return (rotl(n, 8) & 0x00ff00ff) | (rotl(n, 24) & 0xff00ff00); + } + for (var i = 0; i < n.length; i++) n[i] = endian(n[i]); + return n; +} +function rotl(n, b) { + return (n << b) | (n >>> (32 - b)); +} +if (isNode) { + var crypto = eval('require')('crypto'); + exports = function(msg) { + if (isArr(msg)) { + msg = Buffer.from(msg); + } + var hash = crypto.createHash('md5'); + hash.update(msg); + return hash.digest('hex'); + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/memStorage.js b/src/miniprogram_npm/miniprogram-licia/memStorage.js new file mode 100644 index 0000000..e53d1e1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/memStorage.js @@ -0,0 +1,53 @@ +var keys = require('./keys'); +exports = { + getItem: function(key) { + return (API_KEYS[key] ? cloak[key] : this[key]) || null; + }, + setItem: function(key, val) { + API_KEYS[key] ? (cloak[key] = val) : (this[key] = val); + }, + removeItem: function(key) { + API_KEYS[key] ? delete cloak[key] : delete this[key]; + }, + key: function(i) { + var keys = enumerableKeys(); + return i >= 0 && i < keys.length ? keys[i] : null; + }, + clear: function() { + var keys = uncloakedKeys(); + + for (var i = 0, key; (key = keys[i]); i++) delete this[key]; + keys = cloakedKeys(); + + for (var _i = 0, _key; (_key = keys[_i]); _i++) delete cloak[_key]; + } +}; +Object.defineProperty(exports, 'length', { + enumerable: false, + configurable: true, + get: function() { + return enumerableKeys().length; + } +}); +var cloak = {}; +var API_KEYS = { + getItem: 1, + setItem: 1, + removeItem: 1, + key: 1, + clear: 1, + length: 1 +}; +function enumerableKeys() { + return uncloakedKeys().concat(cloakedKeys()); +} +function uncloakedKeys() { + return keys(exports).filter(function(key) { + return !API_KEYS[key]; + }); +} +function cloakedKeys() { + return keys(cloak); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/memoize.js b/src/miniprogram_npm/miniprogram-licia/memoize.js new file mode 100644 index 0000000..89c2646 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/memoize.js @@ -0,0 +1,13 @@ +var has = require('./has'); +exports = function(fn, hashFn) { + var memoize = function(key) { + var cache = memoize.cache; + var address = '' + (hashFn ? hashFn.apply(this, arguments) : key); + if (!has(cache, address)) cache[address] = fn.apply(this, arguments); + return cache[address]; + }; + memoize.cache = {}; + return memoize; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/mergeArr.js b/src/miniprogram_npm/miniprogram-licia/mergeArr.js new file mode 100644 index 0000000..7c896f1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/mergeArr.js @@ -0,0 +1,14 @@ +var restArgs = require('./restArgs'); +exports = restArgs(function(first, arrays) { + var end = first.length; + for (var i = 0, len = arrays.length; i < len; i++) { + var arr = arrays[i]; + for (var j = 0, _len = arr.length; j < _len; j++) { + first[end++] = arr[j]; + } + } + first.length = end; + return first; +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/mergeSort.js b/src/miniprogram_npm/miniprogram-licia/mergeSort.js new file mode 100644 index 0000000..3a915e7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/mergeSort.js @@ -0,0 +1,26 @@ +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + if (arr.length <= 1) return arr; + var middle = floor(arr.length / 2); + var left = arr.slice(0, middle); + var right = arr.slice(middle); + return merge(exports(left, cmp), exports(right, cmp), cmp); +}; +function merge(left, right, cmp) { + var ret = []; + var i = 0; + var j = 0; + while (i < left.length && j < right.length) { + cmp(left[i], right[j]) < 0 ? ret.push(left[i++]) : ret.push(right[j++]); + } + while (i < left.length) ret.push(left[i++]); + while (j < right.length) ret.push(right[j++]); + return ret; +} +var floor = Math.floor; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/methods.js b/src/miniprogram_npm/miniprogram-licia/methods.js new file mode 100644 index 0000000..bc70249 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/methods.js @@ -0,0 +1,10 @@ +var isFn = require('./isFn'); +exports = function(obj) { + var ret = []; + for (var key in obj) { + if (isFn(obj[key])) ret.push(key); + } + return ret.sort(); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/mime.js b/src/miniprogram_npm/miniprogram-licia/mime.js new file mode 100644 index 0000000..d857362 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/mime.js @@ -0,0 +1,83 @@ +var each = require('./each'); +var exts = { + 'image/jpeg': ['jpeg', 'jpg'], + 'image/png': ['png'], + 'image/gif': ['gif'], + 'image/webp': ['webp'], + 'image/tiff': ['tif', 'tiff'], + 'image/bmp': ['bmp'], + 'image/vnd.adobe.photoshop': ['psd'], + 'image/svg+xml': ['svg'], + + 'audio/mp4': ['m4a', 'mp4a'], + 'audio/midi': ['midi'], + 'audio/mpeg': ['mpga', 'mp2', 'mp2a', 'mp3', 'm2a', 'm3a'], + 'audio/ogg': ['ogg'], + 'audio/wav': ['wav'], + + 'video/mp4': ['mp4', 'mp4v', 'mpg4'], + 'video/x-matroska': ['mkv'], + 'video/webm': ['webm'], + 'video/x-msvideo': ['avi'], + 'video/quicktime': ['qt', 'mov'], + 'video/mpeg': ['mpeg', 'mpg', 'mpe', 'm1v', 'm2v'], + 'video/3gpp': ['3gp', '3gpp'], + + 'text/css': ['css'], + 'text/html': ['html', 'htm', 'shtml'], + 'text/yaml': ['yaml', 'yml'], + 'text/csv': ['csv'], + 'text/markdown': ['markdown', 'md'], + 'text/plain': ['txt', 'text', 'conf', 'log', 'ini'], + + 'font/ttf': ['ttf'], + 'font/woff': ['woff'], + 'font/woff2': ['woff2'], + + 'application/zip': ['zip'], + 'application/x-tar': ['tar'], + 'application/x-rar-compressed': ['rar'], + 'application/gzip': ['gz'], + 'application/x-7z-compressed': ['7z'], + 'application/octet-stream': [ + 'bin', + 'so', + 'exe', + 'dll', + 'dmg', + 'iso', + 'msi' + ], + 'application/epub+zip': ['epub'], + 'application/javascript': ['js'], + 'application/json': ['json'], + 'application/msword': ['doc', 'docx', 'dot', 'dotx'], + 'application/vnd.ms-excel': ['xls', 'xlsx', 'xla', 'xlt'], + 'application/vnd.ms-powerpoint': ['ppt', 'pptx', 'pps', 'pot'], + 'application/pdf': ['pdf'], + 'application/wasm': ['wasm'], + 'application/xml': ['xml'], + 'application/xml-dtd': ['dtd'] +}; +var mimeTypes = {}; +each(exts, function(ext, mimeType) { + each(ext, function(e) { + mimeTypes[e] = mimeType; + }); +}); +exports = function(name) { + return (isMimeType(name) ? getExt(name) : getType(name)) || undefined; +}; +function getType(name) { + return mimeTypes[name]; +} +function getExt(name) { + if (exts[name]) { + return exts[name][0]; + } +} +function isMimeType(name) { + return name.indexOf('/') > -1; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/min.js b/src/miniprogram_npm/miniprogram-licia/min.js new file mode 100644 index 0000000..9c8f551 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/min.js @@ -0,0 +1,10 @@ +exports = function() { + var arr = arguments; + var ret = arr[0]; + for (var i = 1, len = arr.length; i < len; i++) { + if (arr[i] < ret) ret = arr[i]; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/moment.js b/src/miniprogram_npm/miniprogram-licia/moment.js new file mode 100644 index 0000000..5b2b11a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/moment.js @@ -0,0 +1,256 @@ +var Class = require('./Class'); +var toDate = require('./toDate'); +var dateFormat = require('./dateFormat'); +var isLeapYear = require('./isLeapYear'); +var extend = require('./extend'); +var toStr = require('./toStr'); +var isNil = require('./isNil'); +var ms = require('./ms'); +exports = function(val) { + return new Moment(val); +}; +var Moment = Class({ + initialize: function Moment(val) { + this._d = toDate(val); + this._init(); + }, + _init: function() { + var d = this._d; + extend(this, { + _year: d.getFullYear(), + _month: d.getMonth(), + _date: d.getDate(), + _hour: d.getHours(), + _minute: d.getMinutes(), + _second: d.getSeconds(), + _millisecond: d.getMilliseconds() + }); + return this; + }, + format: function(mask) { + return dateFormat(this._d, mask); + }, + isValid: function() { + return !(this._d.toString() === 'Invalid Date'); + }, + isLeapYear: function() { + return isLeapYear(this._year); + }, + isSame: function(that) { + return this.valueOf() === that.valueOf(); + }, + valueOf: function() { + return this._d.getTime(); + }, + isBefore: function(that) { + return this.valueOf() < that.valueOf(); + }, + isAfter: function(that) { + return this.valueOf() > that.valueOf(); + }, + year: makeGetSet('year'), + month: makeGetSet('month'), + date: makeGetSet('date'), + hour: makeGetSet('hour'), + minute: makeGetSet('minute'), + second: makeGetSet('second'), + millisecond: makeGetSet('millisecond'), + unix: function() { + return floor(this.valueOf() / 1000); + }, + clone: function() { + return new Moment(this); + }, + toDate: function() { + return new Date(this._d); + }, + toArray: function() { + return [ + this._year, + this._month, + this._date, + this._hour, + this._minute, + this._second, + this._millisecond + ]; + }, + toJSON: function() { + return this.toISOString(); + }, + toISOString: function() { + return this.toDate().toISOString(); + }, + toObject: function() { + return { + years: this._year, + months: this._month, + date: this._date, + hours: this._hour, + minutes: this._minute, + seconds: this._second, + milliseconds: this._millisecond + }; + }, + toString: function() { + return this._d.toUTCString(); + }, + set: function(unit, num) { + var d = this._d; + unit = normalizeUnit(unit); + switch (unit) { + case 'year': + d.setFullYear(num); + break; + case 'month': + d.setMonth(num); + break; + case 'date': + d.setDate(num); + break; + case 'hour': + d.setHours(num); + break; + case 'minute': + d.setMinutes(num); + break; + case 'second': + d.setSeconds(num); + break; + case 'millisecond': + d.setMilliseconds(num); + break; + } + return this._init(); + }, + startOf: function(unit) { + unit = normalizeUnit(unit); + + /* eslint-disable no-fallthrough */ + switch (unit) { + case 'year': + this.month(0); + case 'month': + this.date(1); + case 'day': + case 'date': + this.hour(0); + case 'hour': + this.minute(0); + case 'minute': + this.second(0); + case 'second': + this.millisecond(0); + } + return this; + }, + endOf: function(unit) { + return this.startOf(unit) + .add(1, unit) + .subtract(1, 'ms'); + }, + daysInMonth: function() { + return this.clone() + .endOf('month') + .date(); + }, + add: createAdder(1), + subtract: createAdder(-1), + diff: function(input, unit, asFloat) { + var that = input instanceof Moment ? input : new Moment(input); + var ret; + unit = normalizeUnit(unit); + var diff = this - that; + switch (unit) { + case 'year': + ret = monthDiff(this, that) / 12; + break; + case 'month': + ret = monthDiff(this, that); + break; + case 'second': + ret = diff / 1e3; + break; + // 1000 + case 'minute': + ret = diff / 6e4; + break; + + case 'hour': + ret = diff / 36e5; + break; + // 1000 * 60 * 60 + case 'day': + ret = diff / 864e5; + break; + + default: + ret = diff; + } + return asFloat ? ret : absFloor(ret); + } +}); +var floor = Math.floor; +var ceil = Math.ceil; +function absFloor(num) { + return num < 0 ? ceil(num) || 0 : floor(num); +} +var unitShorthandMap = { + y: 'year', + M: 'month', + D: 'date', + d: 'day', + h: 'hour', + m: 'minute', + s: 'second', + ms: 'millisecond' +}; +var regEndS = /s$/; + +function normalizeUnit(unit) { + unit = toStr(unit); + if (unitShorthandMap[unit]) return unitShorthandMap[unit]; + return unit.toLowerCase().replace(regEndS, ''); +} +function makeGetSet(unit) { + return function(num) { + return isNil(num) ? this['_' + unit] : this.set(unit, num); + }; +} +function createAdder(dir) { + return function(num, unit) { + unit = normalizeUnit(unit); + if (unit === 'month') return this.month(this._month + dir * num); + if (unit === 'year') return this.year(this._year + dir * num); + var duration = createDuration(num, unit); + this._d = new Date(this.valueOf() + dir * duration); + return this._init(); + }; +} +var msMap = { + day: 'd', + hour: 'h', + minute: 'm', + second: 's', + millisecond: '' +}; +function createDuration(num, unit) { + return ms(num + msMap[unit]); +} + +function monthDiff(a, b) { + var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()); + var anchor = a.clone().add(wholeMonthDiff, 'months'); + var anchor2; + var adjust; + if (b - anchor < 0) { + anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); + adjust = (b - anchor) / (anchor - anchor2); + } else { + anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); + adjust = (b - anchor) / (anchor2 - anchor); + } + return -(wholeMonthDiff + adjust) || 0; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/morse.js b/src/miniprogram_npm/miniprogram-licia/morse.js new file mode 100644 index 0000000..b3de20f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/morse.js @@ -0,0 +1,80 @@ +var upperCase = require('./upperCase'); +var invert = require('./invert'); +exports = { + encode: function(txt) { + var len = txt.length; + var ret = Array(len); + for (var i = 0; i < len; i++) { + var c = upperCase(txt[i]); + ret[i] = map[c] || '?'; + } + return ret.join(' '); + }, + decode: function(morse) { + var ret = morse.split(' '); + for (var i = 0, len = ret.length; i < len; i++) { + ret[i] = decodeMap[ret[i]] || ' '; + } + return ret.join(''); + } +}; + +var map = { + A: '.-', + B: '-...', + C: '-.-.', + D: '-..', + E: '.', + F: '..-.', + G: '--.', + H: '....', + I: '..', + J: '.---', + K: '-.-', + L: '.-..', + M: '--', + N: '-.', + O: '---', + P: '.--.', + Q: '--.-', + R: '.-.', + S: '...', + T: '-', + U: '..-', + V: '...-', + W: '.--', + X: '-..-', + Y: '-.--', + Z: '--..', + Á: '.--.-', + Ä: '.-.-', + É: '..-..', + Ñ: '--.--', + Ö: '---.', + Ü: '..--', + '1': '.----', + '2': '..---', + '3': '...--', + '4': '....-', + '5': '.....', + '6': '-....', + '7': '--...', + '8': '---..', + '9': '----.', + '0': '-----', + ',': '--..--', + '.': '.-.-.-', + '?': '..--..', + ';': '-.-.-', + ':': '---...', + '/': '-..-.', + '-': '-....-', + "'": '.----.', + '()': '-.--.-', + _: '..--.-', + '@': '.--.-.', + ' ': '.......' +}; +var decodeMap = invert(map); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/ms.js b/src/miniprogram_npm/miniprogram-licia/ms.js new file mode 100644 index 0000000..48adcd3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/ms.js @@ -0,0 +1,31 @@ +var toNum = require('./toNum'); +var isStr = require('./isStr'); +exports = function(str) { + if (isStr(str)) { + var match = str.match(regStrTime); + if (!match) return 0; + return toNum(match[1]) * factor[match[2] || 'ms']; + } else { + var num = str; + var suffix = 'ms'; + for (var i = 0, len = suffixList.length; i < len; i++) { + if (num >= factor[suffixList[i]]) { + suffix = suffixList[i]; + break; + } + } + return +(num / factor[suffix]).toFixed(2) + suffix; + } +}; +var factor = { + ms: 1, + s: 1000 +}; +factor.m = factor.s * 60; +factor.h = factor.m * 60; +factor.d = factor.h * 24; +factor.y = factor.d * 365.25; +var suffixList = ['y', 'd', 'h', 'm', 's']; +var regStrTime = /^((?:\d+)?\.?\d+) *(s|m|h|d|y)?$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/naturalSort.js b/src/miniprogram_npm/miniprogram-licia/naturalSort.js new file mode 100644 index 0000000..0ac670b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/naturalSort.js @@ -0,0 +1,60 @@ +var startWith = require('./startWith'); +var root = require('./root'); +var toStr = require('./toStr'); +exports = function(arr) { + return arr.sort(naturalOrderComparator); +}; + +function naturalOrderComparator(a, b) { + a = toStr(a); + b = toStr(b); + if (startWith(a, '_') && !startWith(b, '_')) { + return 1; + } + if (startWith(b, '_') && !startWith(a, '_')) { + return -1; + } + var chunk = /^\d+|^\D+/; + var chunka, chunkb, anum, bnum; + + while (true) { + if (a) { + if (!b) { + return 1; + } + } else { + if (b) { + return -1; + } + return 0; + } + chunka = a.match(chunk)[0]; + chunkb = b.match(chunk)[0]; + anum = !root.isNaN(chunka); + bnum = !root.isNaN(chunkb); + if (anum && !bnum) { + return -1; + } + if (bnum && !anum) { + return 1; + } + if (anum && bnum) { + var diff = chunka - chunkb; + if (diff) { + return diff; + } + if (chunka.length !== chunkb.length) { + if (!+chunka && !+chunkb) { + return chunka.length - chunkb.length; + } + return chunkb.length - chunka.length; + } + } else if (chunka !== chunkb) { + return chunka < chunkb ? -1 : 1; + } + a = a.substring(chunka.length); + b = b.substring(chunkb.length); + } +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/negate.js b/src/miniprogram_npm/miniprogram-licia/negate.js new file mode 100644 index 0000000..356ed4e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/negate.js @@ -0,0 +1,7 @@ +exports = function(predicate) { + return function() { + return !predicate.apply(this, arguments); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/nextTick.js b/src/miniprogram_npm/miniprogram-licia/nextTick.js new file mode 100644 index 0000000..e24b6dc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/nextTick.js @@ -0,0 +1,18 @@ +if (typeof process === 'object' && process.nextTick && !false) { + exports = process.nextTick; +} else if (typeof setImmediate === 'function') { + exports = function(cb) { + setImmediate(ensureCallable(cb)); + }; +} else { + exports = function(cb) { + setTimeout(ensureCallable(cb), 0); + }; +} +function ensureCallable(fn) { + if (typeof fn !== 'function') + throw new TypeError(fn + ' is not a function'); + return fn; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/noop.js b/src/miniprogram_npm/miniprogram-licia/noop.js new file mode 100644 index 0000000..8d69526 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/noop.js @@ -0,0 +1,3 @@ +exports = function() {}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/normalizeHeader.js b/src/miniprogram_npm/miniprogram-licia/normalizeHeader.js new file mode 100644 index 0000000..c25e63b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/normalizeHeader.js @@ -0,0 +1,21 @@ +var map = require('./map'); +var capitalize = require('./capitalize'); +exports = function(header) { + var ret = specialHeaders[header.toLowerCase()]; + if (!ret) { + ret = map(header.split('-'), capitalize).join('-'); + } + return ret; +}; +var specialHeaders = { + 'content-md5': 'Content-MD5', + dnt: 'DNT', + etag: 'ETag', + 'last-event-id': 'Last-Event-ID', + tcn: 'TCN', + te: 'TE', + 'www-authenticate': 'WWW-Authenticate', + 'x-dnsprefetch-control': 'X-DNSPrefetch-Control' +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/normalizePath.js b/src/miniprogram_npm/miniprogram-licia/normalizePath.js new file mode 100644 index 0000000..89ed263 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/normalizePath.js @@ -0,0 +1,6 @@ +exports = function(path) { + return path.replace(regSlashes, '/'); +}; +var regSlashes = /[\\/]+/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/normalizePhone.js b/src/miniprogram_npm/miniprogram-licia/normalizePhone.js new file mode 100644 index 0000000..09827dc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/normalizePhone.js @@ -0,0 +1,22 @@ +var trim = require('./trim'); +exports = function(phone, options) { + phone = trim(phone); + var countryCode = options.countryCode, + _options$trunkPrefix = options.trunkPrefix, + trunkPrefix = + _options$trunkPrefix === void 0 ? false : _options$trunkPrefix; + var plusSign = regPlusSign.test(phone); + phone = phone.replace(regNotDigit, ''); + if (plusSign) { + phone = phone.replace(new RegExp('^'.concat(countryCode)), ''); + } + if (trunkPrefix) { + phone = phone.replace(regTrunkPrefix, ''); + } + return '+'.concat(countryCode + phone); +}; +var regPlusSign = /^\+/; +var regNotDigit = /\D/g; +var regTrunkPrefix = /^\d/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/now.js b/src/miniprogram_npm/miniprogram-licia/now.js new file mode 100644 index 0000000..7363bde --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/now.js @@ -0,0 +1,9 @@ +if (Date.now && !false) { + exports = Date.now; +} else { + exports = function() { + return new Date().getTime(); + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/objToStr.js b/src/miniprogram_npm/miniprogram-licia/objToStr.js new file mode 100644 index 0000000..b276029 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/objToStr.js @@ -0,0 +1,6 @@ +var ObjToStr = Object.prototype.toString; +exports = function(val) { + return ObjToStr.call(val); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/omit.js b/src/miniprogram_npm/miniprogram-licia/omit.js new file mode 100644 index 0000000..e572852 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/omit.js @@ -0,0 +1,6 @@ +var pick = require('./pick'); +exports = function(obj, filter) { + return pick(obj, filter, true); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/once.js b/src/miniprogram_npm/miniprogram-licia/once.js new file mode 100644 index 0000000..73bed34 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/once.js @@ -0,0 +1,5 @@ +var partial = require('./partial'); +var before = require('./before'); +exports = partial(before, 2); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/optimizeCb.js b/src/miniprogram_npm/miniprogram-licia/optimizeCb.js new file mode 100644 index 0000000..eed3595 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/optimizeCb.js @@ -0,0 +1,23 @@ +var isUndef = require('./isUndef'); +exports = function(fn, ctx, argCount) { + if (isUndef(ctx)) return fn; + switch (argCount == null ? 3 : argCount) { + case 1: + return function(val) { + return fn.call(ctx, val); + }; + case 3: + return function(val, idx, collection) { + return fn.call(ctx, val, idx, collection); + }; + case 4: + return function(accumulator, val, idx, collection) { + return fn.call(ctx, accumulator, val, idx, collection); + }; + } + return function() { + return fn.apply(ctx, arguments); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/ordinal.js b/src/miniprogram_npm/miniprogram-licia/ordinal.js new file mode 100644 index 0000000..7d1a778 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/ordinal.js @@ -0,0 +1,17 @@ +exports = function(num) { + var j = num % 10; + var k = num % 100; + var indicator = 'th'; + if (j == 1 && k != 11) { + indicator = 'st'; + } + if (j == 2 && k != 12) { + indicator = 'nd'; + } + if (j == 3 && k != 13) { + indicator = 'rd'; + } + return num + indicator; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/pad.js b/src/miniprogram_npm/miniprogram-licia/pad.js new file mode 100644 index 0000000..af76f5d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/pad.js @@ -0,0 +1,15 @@ +var repeat = require('./repeat'); +var toStr = require('./toStr'); +exports = function(str, len, chars) { + str = toStr(str); + var strLen = str.length; + chars = chars || ' '; + if (strLen < len) { + var padStr = repeat(chars, Math.ceil((len - strLen) / 2)); + str = padStr + str + padStr; + str = str.substr(Math.ceil((str.length - len) / 2), len); + } + return str; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/pairs.js b/src/miniprogram_npm/miniprogram-licia/pairs.js new file mode 100644 index 0000000..c7da88a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/pairs.js @@ -0,0 +1,12 @@ +var keys = require('./keys'); +exports = function(obj) { + var _keys = keys(obj); + var len = _keys.length; + var ret = Array(len); + for (var i = 0; i < len; i++) { + ret[i] = [_keys[i], obj[_keys[i]]]; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/parallel.js b/src/miniprogram_npm/miniprogram-licia/parallel.js new file mode 100644 index 0000000..f71a428 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/parallel.js @@ -0,0 +1,26 @@ +var noop = require('./noop'); +var each = require('./each'); +var nextTick = require('./nextTick'); +exports = function(tasks, cb) { + cb = cb || noop; + var results = []; + var pending = tasks.length; + if (!pending) return done(null); + each(tasks, function(task, i) { + task(function(err, result) { + taskCb(i, err, result); + }); + }); + function taskCb(i, err, result) { + results[i] = result; + if (--pending === 0 || err) done(err); + } + function done(err) { + nextTick(function() { + cb(err, results); + cb = noop; + }); + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/parseArgs.js b/src/miniprogram_npm/miniprogram-licia/parseArgs.js new file mode 100644 index 0000000..37ec8d1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/parseArgs.js @@ -0,0 +1,72 @@ +var defaults = require('./defaults'); +var toNum = require('./toNum'); +var invert = require('./invert'); +var toBool = require('./toBool'); +exports = function(args, opts) { + opts = opts || {}; + defaults(opts, defOpts); + var names = opts.names; + var shorthands = invert(opts.shorthands); + var remain = []; + var ret = { + remain: remain + }; + var name; + var type; + for (var i = 0, len = args.length; i < len; i++) { + var arg = args[i]; + var nextArg = args[i + 1]; + var match = arg.match(regDoubleDash); + if (match) { + name = match[1]; + type = names[name]; + if (!type) { + remain.push(arg); + } else if (nextArg && !regDashStart.test(nextArg)) { + setArg(name, nextArg); + i++; + } else if (type === 'boolean') { + setArg(name, true); + i++; + } + continue; + } + match = arg.match(regSingleDash); + if (match) { + var letters = match[1]; + for (var j = 0; j < letters.length; j++) { + var letter = letters[j]; + name = shorthands[letter]; + if (!name) continue; + type = names[name]; + if (type === 'boolean') setArg(shorthands[letter], true); + } + continue; + } + remain.push(arg); + } + function setArg(name, val) { + var type = names[name]; + switch (type) { + case 'number': + val = toNum(val); + break; + case 'boolean': + val = toBool(val); + break; + default: + break; + } + ret[name] = val; + } + return ret; +}; +var defOpts = { + names: {}, + shorthands: {} +}; +var regDoubleDash = /^--(.+)/; +var regSingleDash = /^-([^-]+)/; +var regDashStart = /^-/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/parseHtml.js b/src/miniprogram_npm/miniprogram-licia/parseHtml.js new file mode 100644 index 0000000..98840b1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/parseHtml.js @@ -0,0 +1,105 @@ +var last = require('./last'); +var arrToMap = require('./arrToMap'); +var startWith = require('./startWith'); +var lowerCase = require('./lowerCase'); + +exports = function(html, handler) { + var stack = []; + var text; + var lastHtml = html; + while (html) { + text = true; + if (!last(stack) || !SPECIAL[last(stack)]) { + if (startWith(html, '<!--')) { + var endIdx = html.indexOf('-->'); + if (endIdx >= 0) { + if (handler.comment) { + handler.comment(html.substring(4, endIdx)); + } + html = html.substring(endIdx + 3); + text = false; + } + } else if (startWith(html, '<!')) { + var match = html.match(regDoctype); + if (match) { + if (handler.text) + handler.text(html.substring(0, match[0].length)); + html = html.substring(match[0].length); + text = false; + } + } else if (startWith(html, '</')) { + var _match = html.match(regEndTag); + if (_match) { + html = html.substring(_match[0].length); + _match[0].replace(regEndTag, parseEndTag); + text = false; + } + } else if (startWith(html, '<')) { + var _match2 = html.match(regStartTag); + if (_match2) { + html = html.substring(_match2[0].length); + _match2[0].replace(regStartTag, parseStartTag); + text = false; + } + } + if (text) { + var _endIdx = html.indexOf('<'); + var _text = _endIdx < 0 ? html : html.substring(0, _endIdx); + html = _endIdx < 0 ? '' : html.substring(_endIdx); + if (handler.text) handler.text(_text); + } + } else { + var execRes = new RegExp('</'.concat(last(stack), '[^>]*>')).exec( + html + ); + if (execRes) { + var _text2 = html.substring(0, execRes.index); + html = html.substring(execRes.index + execRes[0].length); + if (_text2 && handler.text) handler.text(_text2); + } + parseEndTag('', last(stack)); + } + if (lastHtml === html) { + throw Error('Parse Error: ' + html); + } + lastHtml = html; + } + parseEndTag(); + function parseStartTag(tag, tagName, rest, unary) { + tagName = lowerCase(tagName); + unary = !!unary; + if (!unary) stack.push(tagName); + if (handler.start) { + var attrs = {}; + rest.replace(regAttr, function(all, $1, $2, $3, $4) { + attrs[$1] = $2 || $3 || $4 || ''; + }); + handler.start(tagName, attrs, unary); + } + } + function parseEndTag(tag, tagName) { + tagName = lowerCase(tagName); + var pos; + if (!tagName) { + pos = 0; + } else { + for (pos = stack.length - 1; pos >= 0; pos--) { + if (stack[pos] === tagName) break; + } + } + if (pos >= 0) { + for (var i = stack.length - 1; i >= pos; i--) { + if (handler.end) handler.end(stack[i]); + } + stack.length = pos; + } + } +}; +var regDoctype = /^<!\s*doctype((?:\s+[\w:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/i; +var regEndTag = /^<\/([-A-Za-z0-9_]+)[^>]*>/; +var regStartTag = /^<([-A-Za-z0-9_]+)((?:\s+[-A-Za-z0-9_:@.]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/i; +var regAttr = /([-A-Za-z0-9_:@.]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g; + +var SPECIAL = arrToMap('script,style'.split(',')); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/partial.js b/src/miniprogram_npm/miniprogram-licia/partial.js new file mode 100644 index 0000000..637ca0e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/partial.js @@ -0,0 +1,12 @@ +var restArgs = require('./restArgs'); +var toArr = require('./toArr'); +exports = restArgs(function(fn, partials) { + return function() { + var args = []; + args = args.concat(partials); + args = args.concat(toArr(arguments)); + return fn.apply(this, args); + }; +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/pascalCase.js b/src/miniprogram_npm/miniprogram-licia/pascalCase.js new file mode 100644 index 0000000..3d7bbf8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/pascalCase.js @@ -0,0 +1,7 @@ +var camelCase = require('./camelCase'); +var upperFirst = require('./upperFirst'); +exports = function(str) { + return upperFirst(camelCase(str)); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/perfNow.js b/src/miniprogram_npm/miniprogram-licia/perfNow.js new file mode 100644 index 0000000..f7a55bf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/perfNow.js @@ -0,0 +1,26 @@ +var now = require('./now'); +var root = require('./root'); +var performance = root.performance; +var process = root.process; +var loadTime; +if (performance && performance.now) { + exports = function() { + return performance.now(); + }; +} else if (process && process.hrtime) { + var getNanoSeconds = function() { + var hr = process.hrtime(); + return hr[0] * 1e9 + hr[1]; + }; + loadTime = getNanoSeconds() - process.uptime() * 1e9; + exports = function() { + return (getNanoSeconds() - loadTime) / 1e6; + }; +} else { + loadTime = now(); + exports = function() { + return now() - loadTime; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/pick.js b/src/miniprogram_npm/miniprogram-licia/pick.js new file mode 100644 index 0000000..1c0451b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/pick.js @@ -0,0 +1,26 @@ +var isStr = require('./isStr'); +var isArr = require('./isArr'); +var contain = require('./contain'); +var each = require('./each'); +exports = function(obj, filter, omit) { + if (isStr(filter)) filter = [filter]; + if (isArr(filter)) { + var keys = filter; + filter = function(val, key) { + return contain(keys, key); + }; + } + var ret = {}; + var iteratee = function(val, key) { + if (filter(val, key)) ret[key] = val; + }; + if (omit) { + iteratee = function(val, key) { + if (!filter(val, key)) ret[key] = val; + }; + } + each(obj, iteratee); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/pluck.js b/src/miniprogram_npm/miniprogram-licia/pluck.js new file mode 100644 index 0000000..6f3458b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/pluck.js @@ -0,0 +1,7 @@ +var map = require('./map'); +var property = require('./property'); +exports = function(obj, key) { + return map(obj, property(key)); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/precision.js b/src/miniprogram_npm/miniprogram-licia/precision.js new file mode 100644 index 0000000..27ac751 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/precision.js @@ -0,0 +1,11 @@ +exports = function(num) { + num = num.toExponential().match(regExponential); + var coefficient = num[1]; + var exponent = parseInt(num[2], 10); + var places = (coefficient.split('.')[1] || '').length; + var ret = places - exponent; + return ret < 0 ? 0 : ret; +}; +var regExponential = /^(-?\d?\.?\d+)e([+-]\d)+/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/promisify.js b/src/miniprogram_npm/miniprogram-licia/promisify.js new file mode 100644 index 0000000..e94d946 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/promisify.js @@ -0,0 +1,18 @@ +var restArgs = require('./restArgs'); +var root = require('./root'); +exports = function(fn, multiArgs) { + return restArgs(function(args) { + return new root.Promise(function(resolve, reject) { + args.push( + restArgs(function callback(err, values) { + if (err) return reject(err); + if (!multiArgs) return resolve(values[0]); + resolve(values); + }) + ); + fn.apply(this, args); + }); + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/property.js b/src/miniprogram_npm/miniprogram-licia/property.js new file mode 100644 index 0000000..f38d7dc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/property.js @@ -0,0 +1,15 @@ +var isArr = require('./isArr'); +var safeGet = require('./safeGet'); +exports = function(path) { + if (!isArr(path)) return shallowProperty(path); + return function(obj) { + return safeGet(obj, path); + }; +}; +function shallowProperty(key) { + return function(obj) { + return obj == null ? void 0 : obj[key]; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/query.js b/src/miniprogram_npm/miniprogram-licia/query.js new file mode 100644 index 0000000..eb56e0f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/query.js @@ -0,0 +1,50 @@ +var trim = require('./trim'); +var each = require('./each'); +var isUndef = require('./isUndef'); +var isArr = require('./isArr'); +var map = require('./map'); +var isEmpty = require('./isEmpty'); +var filter = require('./filter'); +var isObj = require('./isObj'); +exports = { + parse: function(str) { + var ret = {}; + str = trim(str).replace(regIllegalChars, ''); + each(str.split('&'), function(param) { + var parts = param.split('='); + var key = parts.shift(), + val = parts.length > 0 ? parts.join('=') : null; + key = decodeURIComponent(key); + val = decodeURIComponent(val); + if (isUndef(ret[key])) { + ret[key] = val; + } else if (isArr(ret[key])) { + ret[key].push(val); + } else { + ret[key] = [ret[key], val]; + } + }); + return ret; + }, + stringify: function(obj, arrKey) { + return filter( + map(obj, function(val, key) { + if (isObj(val) && isEmpty(val)) return ''; + if (isArr(val)) return exports.stringify(val, key); + return ( + (arrKey + ? encodeURIComponent(arrKey) + : encodeURIComponent(key)) + + '=' + + encodeURIComponent(val) + ); + }), + function(str) { + return str.length > 0; + } + ).join('&'); + } +}; +var regIllegalChars = /^(\?|#|&)/g; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/quickSort.js b/src/miniprogram_npm/miniprogram-licia/quickSort.js new file mode 100644 index 0000000..c26d469 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/quickSort.js @@ -0,0 +1,32 @@ +var swap = require('./swap'); +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + return quickSort(arr, 0, arr.length - 1, cmp); +}; +function quickSort(arr, left, right, cmp) { + if (arr.length <= 1) return arr; + var idx = partition(arr, left, right, cmp); + if (left < idx - 1) quickSort(arr, left, idx - 1, cmp); + if (idx < right) quickSort(arr, idx, right, cmp); + return arr; +} +function partition(arr, left, right, cmp) { + var pivot = arr[floor((right + left) / 2)]; + while (left <= right) { + while (cmp(arr[left], pivot) < 0) left++; + while (cmp(arr[right], pivot) > 0) right--; + if (left <= right) { + swap(arr, left, right); + left++; + right--; + } + } + return left; +} +var floor = Math.floor; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/raf.js b/src/miniprogram_npm/miniprogram-licia/raf.js new file mode 100644 index 0000000..68e1fee --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/raf.js @@ -0,0 +1,39 @@ +var now = require('./now'); +var isBrowser = require('./isBrowser'); +var raf, cancel; +var lastTime = 0; +if (isBrowser) { + raf = window.requestAnimationFrame; + cancel = window.cancelAnimationFrame; + var vendors = ['ms', 'moz', 'webkit', 'o']; + for (var i = 0, len = vendors.length; i < len && !raf; i++) { + raf = window[vendors[i] + 'RequestAnimationFrame']; + cancel = + window[vendors[i] + 'CancelAnimationFrame'] || + window[vendors[i] + 'CancelRequestAnimationFrame']; + } + if (raf) { + raf = raf.bind(window); + cancel = cancel.bind(window); + } +} +raf = + raf || + function(cb) { + var curTime = now(); + var timeToCall = Math.max(0, 16 - (curTime - lastTime)); + var id = setTimeout(function() { + cb(curTime + timeToCall); + }, timeToCall); + lastTime = curTime + timeToCall; + return id; + }; +cancel = + cancel || + function(id) { + clearTimeout(id); + }; +raf.cancel = cancel; +exports = raf; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/random.js b/src/miniprogram_npm/miniprogram-licia/random.js new file mode 100644 index 0000000..a3b2913 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/random.js @@ -0,0 +1,18 @@ +exports = function(min, max, floating) { + if (max == null) { + max = min; + min = 0; + } + var rand = Math.random(); + if (floating || min % 1 || max % 1) { + return Math.min( + min + + rand * + (max - min + parseFloat('1e-' + ((rand + '').length - 1))), + max + ); + } + return min + Math.floor(rand * (max - min + 1)); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/randomBytes.js b/src/miniprogram_npm/miniprogram-licia/randomBytes.js new file mode 100644 index 0000000..7675fef --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/randomBytes.js @@ -0,0 +1,26 @@ +var random = require('./random'); +var isBrowser = require('./isBrowser'); +var isNode = require('./isNode'); +exports = function(size) { + var ret = new Uint8Array(size); + for (var i = 0; i < size; i++) ret[i] = random(0, 255); + return ret; +}; +var crypto; +if (isBrowser) { + crypto = window.crypto || window.msCrypto; + if (crypto) { + exports = function(size) { + var ret = new Uint8Array(size); + crypto.getRandomValues(ret); + return ret; + }; + } +} else if (isNode) { + crypto = eval('require')('crypto'); + exports = function(size) { + return crypto.randomBytes(size); + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/randomColor.js b/src/miniprogram_npm/miniprogram-licia/randomColor.js new file mode 100644 index 0000000..18cb7a0 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/randomColor.js @@ -0,0 +1,60 @@ +var defaults = require('./defaults'); +var random = require('./random'); +var Color = require('./Color'); +var seedRandom = require('./seedRandom'); +var isFn = require('./isFn'); +exports = function() { + var options = + arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; + defaults(options, defOpts); + var count = options.count; + var randomH = options.randomH, + randomL = options.randomL, + randomS = options.randomS; + if (!isFn(randomH)) { + var seed = options.seed || random(0, 100000); + randomH = seedRandom(seed, 0, 360, false); + randomL = seedRandom(seed + 1, 0, 1); + randomS = seedRandom(seed + 2, 0, 1); + } + if (count > 1) { + var colors = []; + for (var i = 0; i < count; i++) { + colors.push( + exports( + defaults( + { + count: 1, + randomH: randomH, + randomL: randomL, + randomS: randomS + }, + options + ) + ) + ); + } + return colors; + } + var hue = options.hue || randomH(); + var lightness = options.lightness || randomL().toFixed(2); + var saturation = options.saturation || randomS().toFixed(2); + var color = new Color({ + val: [hue, Math.round(saturation * 100), Math.round(lightness * 100)], + model: 'hsl' + }); + switch (options.format) { + case 'hsl': + return color.toHsl(); + case 'rgb': + return color.toRgb(); + default: + return color.toHex(); + } +}; +var defOpts = { + count: 1, + format: 'hex' +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/randomId.js b/src/miniprogram_npm/miniprogram-licia/randomId.js new file mode 100644 index 0000000..1661bce --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/randomId.js @@ -0,0 +1,20 @@ +var randomBytes = require('./randomBytes'); +var defSymbols = + 'ModuleSymbhasOwnPr-0123456789ABCDEFGHIJKLNQRTUVWXYZ_cfgijkpqtvxz'; +exports = function() { + var size = + arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 21; + var symbols = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : defSymbols; + var id = ''; + var len = symbols.length; + var bytes = randomBytes(size); + while (0 < size--) { + id += symbols[bytes[size] % len]; + } + return id; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/randomItem.js b/src/miniprogram_npm/miniprogram-licia/randomItem.js new file mode 100644 index 0000000..26886b7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/randomItem.js @@ -0,0 +1,6 @@ +var random = require('./random'); +exports = function(arr) { + return arr[random(0, arr.length - 1)]; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/range.js b/src/miniprogram_npm/miniprogram-licia/range.js new file mode 100644 index 0000000..548f6f8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/range.js @@ -0,0 +1,13 @@ +exports = function(start, end, step) { + if (end == null) { + end = start || 0; + start = 0; + } + if (!step) step = end < start ? -1 : 1; + var len = Math.max(Math.ceil((end - start) / step), 0); + var ret = Array(len); + for (var i = 0; i < len; i++, start += step) ret[i] = start; + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/rc4.js b/src/miniprogram_npm/miniprogram-licia/rc4.js new file mode 100644 index 0000000..538ab1e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/rc4.js @@ -0,0 +1,46 @@ +var base64 = require('./base64'); +var bytesToStr = require('./bytesToStr'); +var strToBytes = require('./strToBytes'); +exports = { + encrypt: function(key, str) { + return rc4(key, str, false); + }, + decrypt: function(key, str) { + return rc4(key, str, true); + } +}; +function rc4(key, str, decrypt) { + key = strToBytes(key); + if (!decrypt) { + str = strToBytes(str); + } else { + str = base64.decode(str); + } + var result = []; + var s = []; + var j = 0; + var i = 0; + var x; + for (i = 0; i < 256; i++) { + s[i] = i; + } + for (i = 0; i < 256; i++) { + j = (j + s[i] + key[i % key.length]) % 256; + x = s[i]; + s[i] = s[j]; + s[j] = x; + } + i = 0; + j = 0; + for (var y = 0, len = str.length; y < len; y++) { + i = (i + 1) % 256; + j = (j + s[i]) % 256; + x = s[i]; + s[i] = s[j]; + s[j] = x; + result.push(str[y] ^ s[(s[i] + s[j]) % 256]); + } + return !decrypt ? base64.encode(result) : bytesToStr(result); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/reduce.js b/src/miniprogram_npm/miniprogram-licia/reduce.js new file mode 100644 index 0000000..3c0b99f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/reduce.js @@ -0,0 +1,38 @@ +var optimizeCb = require('./optimizeCb'); +var isArrLike = require('./isArrLike'); +var isUndef = require('./isUndef'); +var keys = require('./keys'); +exports = createReduce(1); +exports.create = createReduce; +function createReduce(dir) { + return function(obj, iterator, initial, ctx) { + iterator = optimizeCb(iterator, ctx); + var i, len, key; + if (isArrLike(obj)) { + len = obj.length; + i = dir > 0 ? 0 : len - 1; + if (isUndef(initial)) { + initial = obj[i]; + i += dir; + } + for (; i < len && i >= 0; i += dir) { + initial = iterator(initial, obj[i], i, obj); + } + } else { + var _keys = keys(obj); + len = _keys.length; + i = dir > 0 ? 0 : len - 1; + if (isUndef(initial)) { + initial = obj[_keys[i]]; + i += dir; + } + for (; i < len && i >= 0; i += dir) { + key = _keys[i]; + initial = iterator(initial, obj[key], key, obj); + } + } + return initial; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/reduceRight.js b/src/miniprogram_npm/miniprogram-licia/reduceRight.js new file mode 100644 index 0000000..d602f3a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/reduceRight.js @@ -0,0 +1,4 @@ +var reduce = require('./reduce'); +exports = reduce.create(-1); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/reject.js b/src/miniprogram_npm/miniprogram-licia/reject.js new file mode 100644 index 0000000..8ba4b5e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/reject.js @@ -0,0 +1,9 @@ +var safeCb = require('./safeCb'); +var negate = require('./negate'); +var filter = require('./filter'); +exports = function(obj, predicate, ctx) { + predicate = safeCb(negate(predicate), ctx); + return filter(obj, predicate); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/remove.js b/src/miniprogram_npm/miniprogram-licia/remove.js new file mode 100644 index 0000000..eba3465 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/remove.js @@ -0,0 +1,18 @@ +var safeCb = require('./safeCb'); +exports = function(arr, iterator, ctx) { + var ret = []; + iterator = safeCb(iterator, ctx); + var i = -1; + var len = arr.length; + while (++i < len) { + var realIdx = i - ret.length; + var val = arr[realIdx]; + if (iterator(val, i, arr)) { + ret.push(val); + arr.splice(realIdx, 1); + } + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/repeat.js b/src/miniprogram_npm/miniprogram-licia/repeat.js new file mode 100644 index 0000000..8fa0132 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/repeat.js @@ -0,0 +1,12 @@ +exports = function(str, n) { + var ret = ''; + if (n < 1) return ''; + while (n > 0) { + if (n & 1) ret += str; + n >>= 1; + str += str; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/replaceAll.js b/src/miniprogram_npm/miniprogram-licia/replaceAll.js new file mode 100644 index 0000000..119885d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/replaceAll.js @@ -0,0 +1,6 @@ +var escapeRegExp = require('./escapeRegExp'); +exports = function(str, substr, newSubstr) { + return str.replace(new RegExp(escapeRegExp(substr), 'g'), newSubstr); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/restArgs.js b/src/miniprogram_npm/miniprogram-licia/restArgs.js new file mode 100644 index 0000000..5d85ea1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/restArgs.js @@ -0,0 +1,24 @@ +exports = function(fn, startIdx) { + startIdx = startIdx == null ? fn.length - 1 : +startIdx; + return function() { + var len = Math.max(arguments.length - startIdx, 0); + var rest = new Array(len); + var i; + for (i = 0; i < len; i++) rest[i] = arguments[i + startIdx]; + + switch (startIdx) { + case 0: + return fn.call(this, rest); + case 1: + return fn.call(this, arguments[0], rest); + case 2: + return fn.call(this, arguments[0], arguments[1], rest); + } + var args = new Array(startIdx + 1); + for (i = 0; i < startIdx; i++) args[i] = arguments[i]; + args[startIdx] = rest; + return fn.apply(this, args); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/reverse.js b/src/miniprogram_npm/miniprogram-licia/reverse.js new file mode 100644 index 0000000..a7f29cf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/reverse.js @@ -0,0 +1,11 @@ +exports = function(arr) { + var len = arr.length; + var ret = Array(len); + len--; + for (var i = 0; i <= len; i++) { + ret[len - i] = arr[i]; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/rgbToHsl.js b/src/miniprogram_npm/miniprogram-licia/rgbToHsl.js new file mode 100644 index 0000000..159016c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/rgbToHsl.js @@ -0,0 +1,37 @@ +exports = function(rgb) { + var r = rgb[0] / 255; + var g = rgb[1] / 255; + var b = rgb[2] / 255; + var min = mMin(r, g, b); + var max = mMax(r, g, b); + var delta = max - min; + var h; + var s; + if (max === min) { + h = 0; + } else if (r === max) { + h = (g - b) / delta; + } else if (g === max) { + h = 2 + (b - r) / delta; + } else { + h = 4 + (r - g) / delta; + } + h = mMin(h * 60, 360); + if (h < 0) h += 360; + var l = (min + max) / 2; + if (max === min) { + s = 0; + } else if (l <= 0.5) { + s = delta / (max + min); + } else { + s = delta / (2 - max - min); + } + var ret = [round(h), round(s * 100), round(l * 100)]; + if (rgb[3]) ret[3] = rgb[3]; + return ret; +}; +var mMin = Math.min; +var mMax = Math.max; +var round = Math.round; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/root.js b/src/miniprogram_npm/miniprogram-licia/root.js new file mode 100644 index 0000000..6e9d8a4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/root.js @@ -0,0 +1,4 @@ +var isBrowser = require('./isBrowser'); +exports = isBrowser ? window : global; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/rpad.js b/src/miniprogram_npm/miniprogram-licia/rpad.js new file mode 100644 index 0000000..270cb2a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/rpad.js @@ -0,0 +1,11 @@ +var repeat = require('./repeat'); +var toStr = require('./toStr'); +exports = function(str, len, chars) { + str = toStr(str); + var strLen = str.length; + chars = chars || ' '; + if (strLen < len) str = (str + repeat(chars, len - strLen)).slice(0, len); + return str; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/rtrim.js b/src/miniprogram_npm/miniprogram-licia/rtrim.js new file mode 100644 index 0000000..13409ae --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/rtrim.js @@ -0,0 +1,28 @@ +exports = function(str, chars) { + if (chars == null) { + if (str.trimRight) { + return str.trimRight(); + } + chars = ' \r\n\t\f\v'; + } + var end = str.length - 1; + var charLen = chars.length; + var found = true; + var i; + var c; + while (found && end >= 0) { + found = false; + i = -1; + c = str.charAt(end); + while (++i < charLen) { + if (c === chars[i]) { + found = true; + end--; + break; + } + } + } + return end >= 0 ? str.substring(0, end + 1) : ''; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/safeCb.js b/src/miniprogram_npm/miniprogram-licia/safeCb.js new file mode 100644 index 0000000..5d42cca --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/safeCb.js @@ -0,0 +1,15 @@ +var isFn = require('./isFn'); +var isObj = require('./isObj'); +var isArr = require('./isArr'); +var optimizeCb = require('./optimizeCb'); +var matcher = require('./matcher'); +var identity = require('./identity'); +var property = require('./property'); +exports = function(val, ctx, argCount) { + if (val == null) return identity; + if (isFn(val)) return optimizeCb(val, ctx, argCount); + if (isObj(val) && !isArr(val)) return matcher(val); + return property(val); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/safeDel.js b/src/miniprogram_npm/miniprogram-licia/safeDel.js new file mode 100644 index 0000000..fd61980 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/safeDel.js @@ -0,0 +1,16 @@ +var isUndef = require('./isUndef'); +var castPath = require('./castPath'); +exports = function(obj, path) { + path = castPath(path, obj); + var prop, ret; + + while ((prop = path.shift())) { + ret = obj[prop]; + if (path.length === 0) delete obj[prop]; + obj = ret; + if (isUndef(obj)) return; + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/safeGet.js b/src/miniprogram_npm/miniprogram-licia/safeGet.js new file mode 100644 index 0000000..0b882b4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/safeGet.js @@ -0,0 +1,15 @@ +var isUndef = require('./isUndef'); +var castPath = require('./castPath'); +exports = function(obj, path) { + path = castPath(path, obj); + var prop; + prop = path.shift(); + while (!isUndef(prop)) { + obj = obj[prop]; + if (obj == null) return; + prop = path.shift(); + } + return obj; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/safeSet.js b/src/miniprogram_npm/miniprogram-licia/safeSet.js new file mode 100644 index 0000000..4a94b1c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/safeSet.js @@ -0,0 +1,29 @@ +var castPath = require('./castPath'); +var isUndef = require('./isUndef'); +var toStr = require('./toStr'); +var isSymbol = require('./isSymbol'); +var isStr = require('./isStr'); +exports = function(obj, path, val) { + path = castPath(path, obj); + var lastProp = path.pop(); + var prop; + prop = path.shift(); + while (!isUndef(prop)) { + if (!isStr(prop) && !isSymbol(prop)) { + prop = toStr(prop); + } + if ( + prop === '__proto__' || + prop === 'constructor' || + prop === 'prototype' + ) { + return; + } + if (!obj[prop]) obj[prop] = {}; + obj = obj[prop]; + prop = path.shift(); + } + obj[lastProp] = val; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sameOrigin.js b/src/miniprogram_npm/miniprogram-licia/sameOrigin.js new file mode 100644 index 0000000..4e432e8 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sameOrigin.js @@ -0,0 +1,14 @@ +var Url = require('./Url'); +exports = function(url1, url2) { + url1 = new Url(url1); + url2 = new Url(url2); + url1.port = url1.port | 0 || (url1.protocol === 'https' ? 443 : 80); + url2.port = url2.port | 0 || (url2.protocol === 'https' ? 443 : 80); + return ( + url1.protocol === url2.protocol && + url1.hostname === url2.hostname && + url1.port === url2.port + ); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sample.js b/src/miniprogram_npm/miniprogram-licia/sample.js new file mode 100644 index 0000000..1120330 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sample.js @@ -0,0 +1,18 @@ +var isArrLike = require('./isArrLike'); +var clone = require('./clone'); +var values = require('./values'); +var random = require('./random'); +var swap = require('./swap'); +exports = function(obj, n) { + var sample = isArrLike(obj) ? clone(obj) : values(obj); + var len = sample.length; + n = Math.max(Math.min(n, len), 0); + var last = len - 1; + for (var i = 0; i < n; i++) { + var rand = random(i, last); + swap(sample, i, rand); + } + return sample.slice(0, n); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/seedRandom.js b/src/miniprogram_npm/miniprogram-licia/seedRandom.js new file mode 100644 index 0000000..fe66fa3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/seedRandom.js @@ -0,0 +1,18 @@ +exports = function(seed) { + var min = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var max = + arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; + var floating = + arguments.length > 3 && arguments[3] !== undefined + ? arguments[3] + : true; + return function() { + seed = (seed * 9301 + 49297) % 233280; + var rnd = seed / 233280.0; + rnd = min + rnd * (max - min); + return floating ? rnd : Math.floor(rnd); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/selectionSort.js b/src/miniprogram_npm/miniprogram-licia/selectionSort.js new file mode 100644 index 0000000..3631337 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/selectionSort.js @@ -0,0 +1,23 @@ +var swap = require('./swap'); +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + var min; + for (var i = 0, len = arr.length; i < len; i++) { + min = i; + for (var j = i + 1; j < len; j++) { + if (cmp(arr[j], arr[min]) < 0) { + min = j; + } + } + if (i != min) { + swap(arr, i, min); + } + } + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/selector.js b/src/miniprogram_npm/miniprogram-licia/selector.js new file mode 100644 index 0000000..fdb237a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/selector.js @@ -0,0 +1,137 @@ +var trim = require('./trim'); +var each = require('./each'); +var identity = require('./identity'); +var map = require('./map'); + +var whitespace = '[\\x20\\t\\r\\n\\f]'; +var identifier = '(?:\\\\[\\da-fA-F]{1,6}'.concat( + whitespace, + '?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+' +); +var attributes = '\\[' + .concat(whitespace, '*(') + .concat(identifier, ')(?:') + .concat(whitespace, '*([*^$|!~]?=)') + .concat( + whitespace, + '*(?:\'((?:\\\\.|[^\\\\\'])*)\'|"((?:\\\\.|[^\\\\"])*)"|(' + ) + .concat(identifier, '))|)') + .concat(whitespace, '*\\]'); +var pseudos = '::?(' + .concat( + identifier, + ')(?:\\(((\'((?:\\\\.|[^\\\\\'])*)\'|"((?:\\\\.|[^\\\\"])*)")|((?:\\\\.|[^\\\\()[\\]]|' + ) + .concat(attributes, ')*)|.*)\\)|)'); +var regComma = new RegExp('^'.concat(whitespace, '*,').concat(whitespace, '*')); +var regCombinators = new RegExp( + '^' + .concat(whitespace, '*([>+~]|') + .concat(whitespace, ')') + .concat(whitespace, '*') +); +var matchExpr = { + id: { + reg: new RegExp('^#('.concat(identifier, ')')), + value: function(raw) { + return raw.slice(1); + }, + toStr: function(value) { + return '#'.concat(value); + } + }, + class: { + reg: new RegExp('^\\.('.concat(identifier, ')')), + value: function(raw) { + return raw.slice(1); + }, + toStr: function(value) { + return '.'.concat(value); + } + }, + tag: { + reg: new RegExp('^('.concat(identifier, '|[*])')), + value: identity + }, + attribute: { + reg: new RegExp('^'.concat(attributes)), + value: function(raw) { + return raw.slice(1, raw.length - 1); + }, + toStr: function(value) { + return '['.concat(value, ']'); + } + }, + pseudo: { + reg: new RegExp('^'.concat(pseudos)), + value: identity + } +}; +each(matchExpr, function(item) { + if (!item.value) item.value = identity; + if (!item.toStr) item.toStr = identity; +}); +function parse(selector) { + selector = trim(selector); + var groups = []; + var tokens; + var match; + var matched; + while (selector) { + if (!matched || (match = regComma.exec(selector))) { + if (match) { + selector = selector.slice(match[0].length); + } + tokens = []; + groups.push(tokens); + } + matched = false; + if ((match = regCombinators.exec(selector))) { + matched = match.shift(); + selector = selector.slice(matched.length); + matched = trim(matched); + if (!matched) matched = ' '; + tokens.push({ + value: matched, + type: 'combinator' + }); + } + each(matchExpr, function(_ref, type) { + var reg = _ref.reg, + value = _ref.value; + if ((match = reg.exec(selector))) { + matched = match.shift(); + selector = selector.slice(matched.length); + matched = trim(matched); + tokens.push({ + value: value(matched), + type: type + }); + } + }); + if (!matched) { + break; + } + } + return groups; +} +function stringify(groups) { + return map(groups, function(group) { + group = map(group, function(_ref2) { + var type = _ref2.type, + value = _ref2.value; + if (type === 'combinator') { + return value === ' ' ? value : ' '.concat(value, ' '); + } + return matchExpr[type].toStr(value); + }); + return group.join(''); + }).join(', '); +} +exports = { + parse: parse, + stringify: stringify +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/shebang.js b/src/miniprogram_npm/miniprogram-licia/shebang.js new file mode 100644 index 0000000..181ff80 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/shebang.js @@ -0,0 +1,9 @@ +var trim = require('./trim'); +var regShebang = /^#!(.*)/; +exports = function(str) { + var match = str.match(regShebang); + if (!match) return; + return trim(match[1]); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/shellSort.js b/src/miniprogram_npm/miniprogram-licia/shellSort.js new file mode 100644 index 0000000..b05e1ec --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/shellSort.js @@ -0,0 +1,25 @@ +var swap = require('./swap'); +var isSorted = require('./isSorted'); +exports = function(arr) { + var cmp = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : isSorted.defComparator; + var len = arr.length; + var gap = Math.floor(len / 2); + while (gap > 0) { + for (var i = gap; i <= len - gap; i++) { + for (var j = i; j > 0; j -= gap) { + if (cmp(arr[j], arr[j - gap]) < 0) { + swap(arr, j, j - gap); + } else { + break; + } + } + } + gap = Math.floor(gap / 2); + } + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/shuffle.js b/src/miniprogram_npm/miniprogram-licia/shuffle.js new file mode 100644 index 0000000..672f7b4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/shuffle.js @@ -0,0 +1,6 @@ +var sample = require('./sample'); +exports = function(obj) { + return sample(obj, Infinity); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/size.js b/src/miniprogram_npm/miniprogram-licia/size.js new file mode 100644 index 0000000..fb94ebf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/size.js @@ -0,0 +1,7 @@ +var isArrLike = require('./isArrLike'); +var keys = require('./keys'); +exports = function(obj) { + return isArrLike(obj) ? obj.length : keys(obj).length; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sizeof.js b/src/miniprogram_npm/miniprogram-licia/sizeof.js new file mode 100644 index 0000000..81d544b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sizeof.js @@ -0,0 +1,47 @@ +var isArr = require('./isArr'); +var keys = require('./keys'); +var isBuffer = require('./isBuffer'); +var isNull = require('./isNull'); + +var strSize = 2; +var boolSize = 4; +var numSize = 8; +exports = function(obj) { + return sizeof(obj, { + values: [] + }); +}; +function sizeof(obj, _ref) { + var values = _ref.values; + var t = typeof obj; + if (t === 'string') return obj.length * strSize; + if (t === 'number') return numSize; + if (t === 'boolean') return boolSize; + var size = 0; + if (t === 'object' && !isNull(obj)) { + if (values.indexOf(obj) > -1) { + return 0; + } + values.push(obj); + if (isArr(obj)) { + for (var i = 0, len = obj.length; i < len; i++) { + size += sizeof(obj[i], { + values: values + }); + } + } else { + var _keys = keys(obj); + for (var _i = 0, _len = _keys.length; _i < _len; _i++) { + var key = _keys[_i]; + size += key.length * strSize; + size += sizeof(obj[key], { + values: values + }); + } + } + } + if (isBuffer(obj)) return obj.length; + return size; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sleep.js b/src/miniprogram_npm/miniprogram-licia/sleep.js new file mode 100644 index 0000000..0196daf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sleep.js @@ -0,0 +1,7 @@ +exports = function(timeout) { + return new Promise(function(resolve) { + return setTimeout(resolve, timeout); + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/slice.js b/src/miniprogram_npm/miniprogram-licia/slice.js new file mode 100644 index 0000000..73f979a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/slice.js @@ -0,0 +1,22 @@ +exports = function(arr, start, end) { + var len = arr.length; + if (start == null) { + start = 0; + } else if (start < 0) { + start = Math.max(len + start, 0); + } else { + start = Math.min(start, len); + } + if (end == null) { + end = len; + } else if (end < 0) { + end = Math.max(len + end, 0); + } else { + end = Math.min(end, len); + } + var ret = []; + while (start < end) ret.push(arr[start++]); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/slugify.js b/src/miniprogram_npm/miniprogram-licia/slugify.js new file mode 100644 index 0000000..ed6ebd5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/slugify.js @@ -0,0 +1,27 @@ +var defaults = require('./defaults'); +var each = require('./each'); +var reduce = require('./reduce'); +exports = function(str) { + var replacement = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + defaults(replacement, defReplacement); + return reduce( + str, + function(result, char) { + return result + (replacement[char] || char); + }, + '' + ).replace(regForbidden, ''); +}; +var regForbidden = /[^\w\s$*_+~.()'"!\-:@]/g; + +var REPLACEMENT = + '$ dollar,% percent,& and,< less,> greater,| or,¢ cent,£ pound,¤ currency,¥ yen,© (c),ª a,® (r),º o,À A,Á A, A,à A,Ä A,Å A,Æ AE,Ç C,È E,É E,Ê E,Ë E,Ì I,Í I,Î I,Ï I,Ð D,Ñ N,Ò O,Ó O,Ô O,Õ O,Ö O,Ø O,Ù U,Ú U,Û U,Ü U,Ý Y,Þ TH,ß ss,à a,á a,â a,ã a,ä a,å a,æ ae,ç c,è e,é e,ê e,ë e,ì i,í i,î i,ï i,ð d,ñ n,ò o,ó o,ô o,õ o,ö o,ø o,ù u,ú u,û u,ü u,ý y,þ th,ÿ y,Ā A,ā a,Ă A,ă a,Ą A,ą a,Ć C,ć c,Č C,č c,Ď D,ď d,Đ DJ,đ dj,Ē E,ē e,Ė E,ė e,Ę e,ę e,Ě E,ě e,Ğ G,ğ g,Ģ G,ģ g,Ĩ I,ĩ i,Ī i,ī i,Į I,į i,İ I,ı i,Ķ k,ķ k,Ļ L,ļ l,Ľ L,ľ l,Ł L,ł l,Ń N,ń n,Ņ N,ņ n,Ň N,ň n,Ő O,ő o,Œ OE,œ oe,Ŕ R,ŕ r,Ř R,ř r,Ś S,ś s,Ş S,ş s,Š S,š s,Ţ T,ţ t,Ť T,ť t,Ũ U,ũ u,Ū u,ū u,Ů U,ů u,Ű U,ű u,Ų U,ų u,Ź Z,ź z,Ż Z,ż z,Ž Z,ž z,ƒ f,Ơ O,ơ o,Ư U,ư u,Lj LJ,lj lj,Nj NJ,nj nj,Ș S,ș s,Ț T,ț t,˚ o,Ά A,Έ E,Ή H,Ί I,Ό O,Ύ Y,Ώ W,ΐ i,Α A,Β B,Γ G,Δ D,Ε E,Ζ Z,Η H,Θ 8,Ι I,Κ K,Λ L,Μ M,Ν N,Ξ 3,Ο O,Π P,Ρ R,Σ S,Τ T,Υ Y,Φ F,Χ X,Ψ PS,Ω W,Ϊ I,Ϋ Y,ά a,έ e,ή h,ί i,ΰ y,α a,β b,γ g,δ d,ε e,ζ z,η h,θ 8,ι i,κ k,λ l,μ m,ν n,ξ 3,ο o,π p,ρ r,ς s,σ s,τ t,υ y,φ f,χ x,ψ ps,ω w,ϊ i,ϋ y,ό o,ύ y,ώ w,Ё Yo,Ђ DJ,Є Ye,І I,Ї Yi,Ј J,Љ LJ,Њ NJ,Ћ C,Џ DZ,А A,Б B,В V,Г G,Д D,Е E,Ж Zh,З Z,И I,Й J,К K,Л L,М M,Н N,О O,П P,Р R,С S,Т T,У U,Ф F,Х H,Ц C,Ч Ch,Ш Sh,Щ Sh,Ъ U,Ы Y,Ь ,Э E,Ю Yu,Я Ya,а a,б b,в v,г g,д d,е e,ж zh,з z,и i,й j,к k,л l,м m,н n,о o,п p,р r,с s,т t,у u,ф f,х h,ц c,ч ch,ш sh,щ sh,ъ u,ы y,ь ,э e,ю yu,я ya,ё yo,ђ dj,є ye,і i,ї yi,ј j,љ lj,њ nj,ћ c,џ dz,Ґ G,ґ g,฿ baht,ა a,ბ b,გ g,დ d,ე e,ვ v,ზ z,თ t,ი i,კ k,ლ l,მ m,ნ n,ო o,პ p,ჟ zh,რ r,ს s,ტ t,უ u,ფ f,ქ k,ღ gh,ყ q,შ sh,ჩ ch,ც ts,ძ dz,წ ts,ჭ ch,ხ kh,ჯ j,ჰ h,ẞ SS,Ạ A,ạ a,Ả A,ả a,Ấ A,ấ a,Ầ A,ầ a,Ẩ A,ẩ a,Ẫ A,ẫ a,Ậ A,ậ a,Ắ A,ắ a,Ằ A,ằ a,Ẳ A,ẳ a,Ẵ A,ẵ a,Ặ A,ặ a,Ẹ E,ẹ e,Ẻ E,ẻ e,Ẽ E,ẽ e,Ế E,ế e,Ề E,ề e,Ể E,ể e,Ễ E,ễ e,Ệ E,ệ e,Ỉ I,ỉ i,Ị I,ị i,Ọ O,ọ o,Ỏ O,ỏ o,Ố O,ố o,Ồ O,ồ o,Ổ O,ổ o,Ỗ O,ỗ o,Ộ O,ộ o,Ớ O,ớ o,Ờ O,ờ o,Ở O,ở o,Ỡ O,ỡ o,Ợ O,ợ o,Ụ U,ụ u,Ủ U,ủ u,Ứ U,ứ u,Ừ U,ừ u,Ử U,ử u,Ữ U,ữ u,Ự U,ự u,Ỳ Y,ỳ y,Ỵ Y,ỵ y,Ỷ Y,ỷ y,Ỹ Y,ỹ y,‘ \',’ \',“ ",” ",† +,• *,… ...,₠ ecu,₢ cruzeiro,₣ french franc,₤ lira,₥ mill,₦ naira,₧ peseta,₨ rupee,₩ won,₪ new shequel,₫ dong,€ euro,₭ kip,₮ tugrik,₯ drachma,₰ penny,₱ peso,₲ guarani,₳ austral,₴ hryvnia,₵ cedi,₹ indian rupee,₽ russian ruble,₿ bitcoin,℠ sm,™ tm,∂ d,∆ delta,∑ sum,∞ infinity,♥ love,元 yuan,円 yen,﷼ rial'; +var defReplacement = {}; +each(REPLACEMENT.split(','), function(item) { + item = item.split(' '); + defReplacement[item[0]] = item[1]; +}); +defReplacement[' '] = '-'; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/snakeCase.js b/src/miniprogram_npm/miniprogram-licia/snakeCase.js new file mode 100644 index 0000000..49f106e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/snakeCase.js @@ -0,0 +1,6 @@ +var splitCase = require('./splitCase'); +exports = function(str) { + return splitCase(str).join('_'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/some.js b/src/miniprogram_npm/miniprogram-licia/some.js new file mode 100644 index 0000000..8868c75 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/some.js @@ -0,0 +1,15 @@ +var safeCb = require('./safeCb'); +var isArrLike = require('./isArrLike'); +var keys = require('./keys'); +exports = function(obj, predicate, ctx) { + predicate = safeCb(predicate, ctx); + var _keys = !isArrLike(obj) && keys(obj); + var len = (_keys || obj).length; + for (var i = 0; i < len; i++) { + var key = _keys ? _keys[i] : i; + if (predicate(obj[key], key, obj)) return true; + } + return false; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sortBy.js b/src/miniprogram_npm/miniprogram-licia/sortBy.js new file mode 100644 index 0000000..6169e17 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sortBy.js @@ -0,0 +1,28 @@ +var safeCb = require('./safeCb'); +var pluck = require('./pluck'); +var map = require('./map'); +var isUndef = require('./isUndef'); +exports = function(obj, iteratee, ctx) { + iteratee = safeCb(iteratee, ctx); + var idx = 0; + return pluck( + map(obj, function(val, key) { + return { + val: val, + idx: idx++, + criteria: iteratee(val, key, obj) + }; + }).sort(function(left, right) { + var a = left.criteria; + var b = right.criteria; + if (a !== b) { + if (a > b || isUndef(a)) return 1; + if (a < b || isUndef(b)) return -1; + } + return left.idx - right.idx; + }), + 'val' + ); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sortKeys.js b/src/miniprogram_npm/miniprogram-licia/sortKeys.js new file mode 100644 index 0000000..2fe3d51 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sortKeys.js @@ -0,0 +1,56 @@ +var isSorted = require('./isSorted'); +var defaults = require('./defaults'); +var keys = require('./keys'); +var isArr = require('./isArr'); +var isObj = require('./isObj'); +exports = function(obj) { + var options = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + defaults(options, defOpts); + var deep = options.deep, + comparator = options.comparator; + var visited = []; + var visitedResult = []; + function sort(obj) { + var idx = visited.indexOf(obj); + if (idx > -1) { + return visitedResult[idx]; + } + var result; + if (isArr(obj)) { + result = []; + visited.push(obj); + visitedResult.push(result); + for (var i = 0, len = obj.length; i < len; i++) { + var value = obj[i]; + if (deep && isObj(value)) { + result[i] = sort(value); + } else { + result[i] = value; + } + } + } else { + result = {}; + visited.push(obj); + visitedResult.push(result); + var _keys = keys(obj).sort(comparator); + for (var _i = 0, _len = _keys.length; _i < _len; _i++) { + var key = _keys[_i]; + var _value = obj[key]; + if (deep && isObj(_value)) { + result[key] = sort(_value); + } else { + result[key] = _value; + } + } + } + return result; + } + return sort(obj); +}; +var defOpts = { + deep: false, + comparator: isSorted.defComparator +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/spaceCase.js b/src/miniprogram_npm/miniprogram-licia/spaceCase.js new file mode 100644 index 0000000..31704ce --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/spaceCase.js @@ -0,0 +1,6 @@ +var splitCase = require('./splitCase'); +exports = function(str) { + return splitCase(str).join(' '); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/splitCase.js b/src/miniprogram_npm/miniprogram-licia/splitCase.js new file mode 100644 index 0000000..e97d17f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/splitCase.js @@ -0,0 +1,13 @@ +var regUpperCase = /([A-Z])/g; +var regSeparator = /[_.\- ]+/g; +var regTrim = /(^-)|(-$)/g; +exports = function(str) { + str = str + .replace(regUpperCase, '-$1') + .toLowerCase() + .replace(regSeparator, '-') + .replace(regTrim, ''); + return str.split('-'); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/splitPath.js b/src/miniprogram_npm/miniprogram-licia/splitPath.js new file mode 100644 index 0000000..8306d2b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/splitPath.js @@ -0,0 +1,11 @@ +exports = function(path) { + var match = path.match(regSplit); + return { + dir: match[1], + name: match[2], + ext: match[3] + }; +}; +var regSplit = /^([\s\S]*?)((?:\.{1,2}|[^\\/]+?|)(\.[^./\\]*|))(?:[\\/]*)$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/startWith.js b/src/miniprogram_npm/miniprogram-licia/startWith.js new file mode 100644 index 0000000..8501088 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/startWith.js @@ -0,0 +1,5 @@ +exports = function(str, prefix) { + return str.indexOf(prefix) === 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/strHash.js b/src/miniprogram_npm/miniprogram-licia/strHash.js new file mode 100644 index 0000000..4c7f580 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/strHash.js @@ -0,0 +1,10 @@ +exports = function(str) { + var hash = 5381; + var i = str.length; + while (i) { + hash = (hash << 5) + hash + str.charCodeAt(--i); + } + return hash >>> 0; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/strToBytes.js b/src/miniprogram_npm/miniprogram-licia/strToBytes.js new file mode 100644 index 0000000..734bdbf --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/strToBytes.js @@ -0,0 +1,21 @@ +var utf8 = require('./utf8'); +var hex = require('./hex'); +var base64 = require('./base64'); +exports = function(str) { + var encoding = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : 'utf8'; + if (encoding === 'hex') return hex.decode(str); + if (encoding === 'base64') return base64.decode(str); + var bytes = []; + if (encoding === 'utf8') { + str = utf8.encode(str); + } + for (var i = 0, len = str.length; i < len; i++) { + bytes.push(str.charCodeAt(i) & 0xff); + } + return bytes; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/strTpl.js b/src/miniprogram_npm/miniprogram-licia/strTpl.js new file mode 100644 index 0000000..a5ab0d7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/strTpl.js @@ -0,0 +1,10 @@ +var safeGet = require('./safeGet'); +var toStr = require('./toStr'); +var regSep = /{{(.*?)}}/g; +exports = function(str, data) { + return str.replace(regSep, function(match, key) { + return toStr(safeGet(data, key)); + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/strWidth.js b/src/miniprogram_npm/miniprogram-licia/strWidth.js new file mode 100644 index 0000000..5ef921e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/strWidth.js @@ -0,0 +1,17 @@ +var stripAnsi = require('./stripAnsi'); +var isFullWidth = require('./isFullWidth'); +exports = function(str) { + str = stripAnsi(str); + var width = 0; + for (var i = 0, len = str.length; i < len; i++) { + var c = str.codePointAt(i); + + if (c <= 31 || c === 127) { + continue; + } + width += isFullWidth(c) ? 2 : 1; + } + return width; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stringify.js b/src/miniprogram_npm/miniprogram-licia/stringify.js new file mode 100644 index 0000000..6ed3083 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stringify.js @@ -0,0 +1,44 @@ +var type = require('./type'); +var upperFirst = require('./upperFirst'); +var toStr = require('./toStr'); +var isUndef = require('./isUndef'); +var isFn = require('./isFn'); +var isRegExp = require('./isRegExp'); +exports = function(obj, spaces) { + return JSON.stringify(obj, serializer(), spaces); +}; +function serializer() { + var stack = []; + var keys = []; + return function(key, val) { + if (stack.length > 0) { + var pos = stack.indexOf(this); + if (pos > -1) { + stack.splice(pos + 1); + keys.splice(pos, Infinity, key); + } else { + stack.push(this); + keys.push(key); + } + var valPos = stack.indexOf(val); + if (valPos > -1) { + if (stack[0] === val) { + val = '[Circular ~]'; + } else { + val = + '[Circular ~.' + keys.slice(0, valPos).join('.') + ']'; + } + } + } else { + stack.push(val); + } + if (isRegExp(val) || isFn(val)) { + val = '[' + upperFirst(type(val)) + ' ' + toStr(val) + ']'; + } else if (isUndef(val)) { + val = null; + } + return val; + }; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stringifyAll.js b/src/miniprogram_npm/miniprogram-licia/stringifyAll.js new file mode 100644 index 0000000..b27af01 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stringifyAll.js @@ -0,0 +1,403 @@ +var escapeJsStr = require('./escapeJsStr'); +var type = require('./type'); +var toStr = require('./toStr'); +var endWith = require('./endWith'); +var toSrc = require('./toSrc'); +var keys = require('./keys'); +var each = require('./each'); +var Class = require('./Class'); +var getProto = require('./getProto'); +var difference = require('./difference'); +var extend = require('./extend'); +var isPromise = require('./isPromise'); +var filter = require('./filter'); +var now = require('./now'); +var allKeys = require('./allKeys'); +var contain = require('./contain'); +var isObj = require('./isObj'); +var isMiniProgram = require('./isMiniProgram'); +var create = require('./create'); +var startWith = require('./startWith'); +var safeSet = require('./safeSet'); +var defineProp = require('./defineProp'); +var pick = require('./pick'); +var isArrLike = require('./isArrLike'); +exports = function(obj) { + var _ref = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : {}, + self = _ref.self, + _ref$startTime = _ref.startTime, + startTime = _ref$startTime === void 0 ? now() : _ref$startTime, + _ref$timeout = _ref.timeout, + timeout = _ref$timeout === void 0 ? 0 : _ref$timeout, + _ref$depth = _ref.depth, + depth = _ref$depth === void 0 ? 0 : _ref$depth, + _ref$curDepth = _ref.curDepth, + curDepth = _ref$curDepth === void 0 ? 1 : _ref$curDepth, + _ref$visitor = _ref.visitor, + visitor = _ref$visitor === void 0 ? new Visitor() : _ref$visitor, + _ref$unenumerable = _ref.unenumerable, + unenumerable = _ref$unenumerable === void 0 ? false : _ref$unenumerable, + _ref$symbol = _ref.symbol, + symbol = _ref$symbol === void 0 ? false : _ref$symbol, + _ref$accessGetter = _ref.accessGetter, + accessGetter = _ref$accessGetter === void 0 ? false : _ref$accessGetter, + _ref$ignore = _ref.ignore, + ignore = _ref$ignore === void 0 ? [] : _ref$ignore; + var json = ''; + var options = { + visitor: visitor, + unenumerable: unenumerable, + symbol: symbol, + accessGetter: accessGetter, + depth: depth, + curDepth: curDepth + 1, + timeout: timeout, + startTime: startTime, + ignore: ignore + }; + var t = type(obj, false); + if (t === 'String') { + json = wrapStr(obj); + } else if (t === 'Number') { + json = toStr(obj); + if (endWith(json, 'Infinity')) { + json = '{"value":"'.concat(json, '","type":"Number"}'); + } + } else if (t === 'NaN') { + json = '{"value":"NaN","type":"Number"}'; + } else if (t === 'Boolean') { + json = obj ? 'true' : 'false'; + } else if (t === 'Null') { + json = 'null'; + } else if (t === 'Undefined') { + json = '{"type":"Undefined"}'; + } else if (t === 'Symbol') { + var val = 'Symbol'; + try { + val = toStr(obj); + } catch (e) {} + json = '{"value":'.concat(wrapStr(val), ',"type":"Symbol"}'); + } else { + if (timeout && now() - startTime > timeout) { + return wrapStr('Timeout'); + } + if (depth && curDepth > depth) { + return wrapStr('{...}'); + } + json = '{'; + var parts = []; + var visitedObj = visitor.get(obj); + var id; + if (visitedObj) { + id = visitedObj.id; + parts.push('"reference":'.concat(id)); + } else { + id = visitor.set(obj); + parts.push('"id":'.concat(id)); + } + parts.push('"type":"'.concat(t, '"')); + if (endWith(t, 'Function')) { + parts.push('"value":'.concat(wrapStr(toSrc(obj)))); + } else if (t === 'RegExp') { + parts.push('"value":'.concat(wrapStr(obj))); + } + if (!visitedObj) { + var enumerableKeys = keys(obj); + if (enumerableKeys.length) { + parts.push( + iterateObj( + 'enumerable', + enumerableKeys, + self || obj, + options + ) + ); + } + if (unenumerable) { + var unenumerableKeys = difference( + allKeys(obj, { + prototype: false, + unenumerable: true + }), + enumerableKeys + ); + if (unenumerableKeys.length) { + parts.push( + iterateObj( + 'unenumerable', + unenumerableKeys, + self || obj, + options + ) + ); + } + } + if (symbol) { + var symbolKeys = filter( + allKeys(obj, { + prototype: false, + symbol: true + }), + function(key) { + return typeof key === 'symbol'; + } + ); + if (symbolKeys.length) { + parts.push( + iterateObj('symbol', symbolKeys, self || obj, options) + ); + } + } + var prototype = getProto(obj); + if (prototype && !contain(ignore, prototype)) { + var proto = '"proto":'.concat( + exports( + prototype, + extend(options, { + self: self || obj + }) + ) + ); + parts.push(proto); + } + } + json += parts.join(',') + '}'; + } + return json; +}; +function iterateObj(name, keys, obj, options) { + var parts = []; + each(keys, function(key) { + var val; + var descriptor = Object.getOwnPropertyDescriptor(obj, key); + var hasGetter = descriptor && descriptor.get; + var hasSetter = descriptor && descriptor.set; + if (!options.accessGetter && hasGetter) { + val = '(...)'; + } else { + try { + val = obj[key]; + if (contain(options.ignore, val)) { + return; + } + if (isPromise(val)) { + val.catch(function() {}); + } + } catch (e) { + val = e.message; + } + } + parts.push(''.concat(wrapKey(key), ':').concat(exports(val, options))); + if (hasGetter) { + parts.push( + '' + .concat(wrapKey('get ' + toStr(key)), ':') + .concat(exports(descriptor.get, options)) + ); + } + if (hasSetter) { + parts.push( + '' + .concat(wrapKey('set ' + toStr(key)), ':') + .concat(exports(descriptor.set, options)) + ); + } + }); + return '"'.concat(name, '":{') + parts.join(',') + '}'; +} +function wrapKey(key) { + return '"'.concat(escapeJsonStr(key), '"'); +} +function wrapStr(str) { + return '"'.concat(escapeJsonStr(toStr(str)), '"'); +} +function escapeJsonStr(str) { + return escapeJsStr(str) + .replace(/\\'/g, "'") + .replace(/\t/g, '\\t'); +} +var Visitor = Class({ + initialize: function() { + this.id = 1; + this.visited = []; + }, + set: function(val) { + var visited = this.visited, + id = this.id; + var obj = { + id: id, + val: val + }; + visited.push(obj); + this.id++; + return id; + }, + get: function(val) { + var visited = this.visited; + for (var i = 0, len = visited.length; i < len; i++) { + var obj = visited[i]; + if (val === obj.val) return obj; + } + return false; + } +}); +exports.parse = function(str) { + var map = {}; + var obj = parse(JSON.parse(str), { + map: map + }); + correctReference(map); + return obj; +}; +function correctReference(map) { + each(map, function(obj) { + var enumerableKeys = keys(obj); + for (var i = 0, len = enumerableKeys.length; i < len; i++) { + var key = enumerableKeys[i]; + if (isObj(obj[key])) { + var reference = obj[key].reference; + if (reference && map[reference]) { + obj[key] = map[reference]; + } + } + } + var proto = getProto(obj); + if (proto && proto.reference) { + if (map[proto.reference]) { + Object.setPrototypeOf(obj, map[proto.reference]); + } + } + }); +} +function parse(obj, options) { + var map = options.map; + if (!isObj(obj)) { + return obj; + } + var id = obj.id, + type = obj.type, + value = obj.value, + proto = obj.proto, + reference = obj.reference; + var enumerable = obj.enumerable, + unenumerable = obj.unenumerable; + if (reference) { + return obj; + } + if (type === 'Number') { + if (value === 'Infinity') { + return Number.POSITIVE_INFINITY; + } else if (value === '-Infinity') { + return Number.NEGATIVE_INFINITY; + } + return NaN; + } else if (type === 'Undefined') { + return undefined; + } + var newObj; + if (type === 'Function') { + newObj = function() {}; + newObj.toString = function() { + return value; + }; + if (proto) { + Object.setPrototypeOf(newObj, parse(proto, options)); + } + } else if (type === 'RegExp') { + newObj = strToRegExp(value); + } else { + if (type !== 'Object') { + var Fn; + if (!isMiniProgram) { + Fn = new Function(type, ''); + } else { + Fn = function() {}; + } + if (proto) { + Fn.prototype = parse(proto, options); + } + newObj = new Fn(); + } else { + if (proto) { + newObj = create(parse(proto, options)); + } else { + newObj = create(null); + } + } + } + var defineProps = {}; + if (enumerable) { + var len; + if (isArrLike(enumerable)) { + len = enumerable.length; + delete enumerable.length; + } + enumerable = pick(enumerable, function(value, key) { + return !handleGetterSetter(enumerable, value, key); + }); + each(enumerable, function(value, key) { + var defineProp = defineProps[key] || {}; + if (!defineProp.get) { + newObj[key] = parse(value, options); + } + }); + if (len) { + newObj.length = len; + } + } + if (unenumerable) { + unenumerable = pick(unenumerable, function(value, key) { + return !handleGetterSetter(unenumerable, value, key); + }); + each(unenumerable, function(value, key) { + var defineProp = defineProps[key] || {}; + if (!defineProp.get) { + value = parse(value, options); + if (isObj(value) && value.reference) { + var _reference = value.reference; + value = function() { + return map[_reference]; + }; + defineProp.get = value; + } else { + defineProp.value = value; + } + } + defineProp.enumerable = false; + defineProps[key] = defineProp; + }); + } + defineProp(newObj, defineProps); + function handleGetterSetter(obj, val, key) { + key = toStr(key); + var isGetterAndSetter = false; + each(['get', 'set'], function(type) { + if (startWith(key, type + ' ')) { + var realKey = key.replace(type + ' ', ''); + if (obj[realKey]) { + val = parse(val, options); + if (val === 'Timeout') { + val = retTimeout; + } + safeSet(defineProps, [realKey, type], val); + isGetterAndSetter = true; + } + } + }); + return isGetterAndSetter; + } + map[id] = newObj; + return newObj; +} +function retTimeout() { + return 'Timeout'; +} +function strToRegExp(str) { + var lastSlash = str.lastIndexOf('/'); + return new RegExp(str.slice(1, lastSlash), str.slice(lastSlash + 1)); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripAnsi.js b/src/miniprogram_npm/miniprogram-licia/stripAnsi.js new file mode 100644 index 0000000..644e2af --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripAnsi.js @@ -0,0 +1,6 @@ +var regAnsi = /[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g; +exports = function(str) { + return str.replace(regAnsi, ''); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripBom.js b/src/miniprogram_npm/miniprogram-licia/stripBom.js new file mode 100644 index 0000000..cc9d1db --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripBom.js @@ -0,0 +1,8 @@ +exports = function(str) { + if (str.charCodeAt(0) === 0xfeff) { + return str.slice(1); + } + return str; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripCmt.js b/src/miniprogram_npm/miniprogram-licia/stripCmt.js new file mode 100644 index 0000000..dfca727 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripCmt.js @@ -0,0 +1,56 @@ +exports = function(str) { + str = ('__' + str + '__').split(''); + var mode = { + singleQuote: false, + doubleQuote: false, + regex: false, + blockComment: false, + lineComment: false, + condComp: false + }; + for (var i = 0, l = str.length; i < l; i++) { + if (mode.regex) { + if (str[i] === '/' && str[i - 1] !== '\\') mode.regex = false; + continue; + } + if (mode.singleQuote) { + if (str[i] === "'" && str[i - 1] !== '\\') mode.singleQuote = false; + continue; + } + if (mode.doubleQuote) { + if (str[i] === '"' && str[i - 1] !== '\\') mode.doubleQuote = false; + continue; + } + if (mode.blockComment) { + if (str[i] === '*' && str[i + 1] === '/') { + str[i + 1] = ''; + mode.blockComment = false; + } + str[i] = ''; + continue; + } + if (mode.lineComment) { + if (str[i + 1] === '\n') mode.lineComment = false; + str[i] = ''; + continue; + } + mode.doubleQuote = str[i] === '"'; + mode.singleQuote = str[i] === "'"; + if (str[i] === '/') { + if (str[i + 1] === '*') { + str[i] = ''; + mode.blockComment = true; + continue; + } + if (str[i + 1] === '/') { + str[i] = ''; + mode.lineComment = true; + continue; + } + mode.regex = true; + } + } + return str.join('').slice(2, -2); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripColor.js b/src/miniprogram_npm/miniprogram-licia/stripColor.js new file mode 100644 index 0000000..5a4bad3 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripColor.js @@ -0,0 +1,6 @@ +var regColor = /\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]/g; +exports = function(str) { + return str.replace(regColor, ''); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripHtmlTag.js b/src/miniprogram_npm/miniprogram-licia/stripHtmlTag.js new file mode 100644 index 0000000..1ad3095 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripHtmlTag.js @@ -0,0 +1,6 @@ +var regHtmlTag = /<[^>]*>/g; +exports = function(str) { + return str.replace(regHtmlTag, ''); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripIndent.js b/src/miniprogram_npm/miniprogram-licia/stripIndent.js new file mode 100644 index 0000000..0eeeac5 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripIndent.js @@ -0,0 +1,40 @@ +var isStr = require('./isStr'); +var toArr = require('./toArr'); +var min = require('./min'); +var map = require('./map'); +var trim = require('./trim'); +exports = function(literals) { + if (isStr(literals)) literals = toArr(literals); + var str = ''; + for ( + var _len = arguments.length, + placeholders = new Array(_len > 1 ? _len - 1 : 0), + _key = 1; + _key < _len; + _key++ + ) { + placeholders[_key - 1] = arguments[_key]; + } + for (var i = 0, len = literals.length; i < len; i++) { + str += literals[i]; + if (placeholders[i]) str += placeholders[i]; + } + var lines = str.split('\n'); + var indentLens = []; + for (var _i = 0, _len2 = lines.length; _i < _len2; _i++) { + var line = lines[_i]; + var _indent = line.match(regStartSpaces); + if (_indent) { + indentLens.push(_indent[1].length); + } + } + var indent = indentLens.length > 0 ? min.apply(null, indentLens) : 0; + return trim( + map(lines, function(line) { + return line[0] === ' ' ? line.slice(indent) : line; + }).join('\n') + ); +}; +var regStartSpaces = /^(\s+)\S+/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/stripNum.js b/src/miniprogram_npm/miniprogram-licia/stripNum.js new file mode 100644 index 0000000..99da492 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/stripNum.js @@ -0,0 +1,7 @@ +exports = function(num) { + var precision = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 12; + return parseFloat(num.toPrecision(precision)); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/sum.js b/src/miniprogram_npm/miniprogram-licia/sum.js new file mode 100644 index 0000000..1f29302 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/sum.js @@ -0,0 +1,8 @@ +exports = function() { + var arr = arguments; + var ret = 0; + for (var i = 0, len = arr.length; i < len; i++) ret += arr[i]; + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/swap.js b/src/miniprogram_npm/miniprogram-licia/swap.js new file mode 100644 index 0000000..d0aec07 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/swap.js @@ -0,0 +1,8 @@ +exports = function(arr, a, b) { + var tmp = arr[a]; + arr[a] = arr[b]; + arr[b] = tmp; + return arr; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/table.js b/src/miniprogram_npm/miniprogram-licia/table.js new file mode 100644 index 0000000..8cf3bbe --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/table.js @@ -0,0 +1,118 @@ +var each = require('./each'); +var strWidth = require('./strWidth'); +var map = require('./map'); +var repeat = require('./repeat'); +var cloneDeep = require('./cloneDeep'); +exports = function(rows) { + rows = cloneDeep(rows); + var options = { + border: defBorder + }; + options.columns = getColumns(rows); + padData(rows, options); + return render(rows, options); +}; +function padData(rows, options) { + var columnCount = options.columns.length; + for (var i = 0, len = rows.length; i < len; i++) { + while (rows[i].length < columnCount) { + rows[i].push(''); + } + } + return loopData(rows, function(data, row, column) { + var _options$columns$colu = options.columns[column], + paddingLeft = _options$columns$colu.paddingLeft, + width = _options$columns$colu.width, + paddingRight = _options$columns$colu.paddingRight; + return ( + repeat(' ', paddingLeft) + + data + + repeat(' ', width - strWidth(data) - paddingRight) + ); + }); +} +function loopData(rows, handler) { + for (var i = 0, len = rows.length; i < len; i++) { + var row = rows[i]; + for (var j = 0, _len = row.length; j < _len; j++) { + var data = handler(row[j], i, j); + if (data) { + row[j] = data; + } + } + } +} +function getColumns(rows) { + var columns = []; + var paddingLeft = 1; + var paddingRight = 1; + loopData(rows, function(data, row, column) { + columns[column] = columns[column] || { + width: paddingLeft + paddingRight, + paddingLeft: paddingLeft, + paddingRight: paddingRight + }; + var width = strWidth(data) + paddingLeft + paddingRight; + if (width > columns[column].width) { + columns[column].width = width; + } + }); + return columns; +} +function render(rows, options) { + var ret = ''; + ret += renderBorder('top', options); + each(rows, function(row, idx) { + ret += renderRow(row, options); + if (idx === rows.length - 1) { + ret += renderBorder('bottom', options); + } else { + ret += renderBorder('join', options); + } + }); + return ret; +} +function renderRow(columns, options) { + var border = options.border; + return ( + border.bodyLeft + + columns.join(border.bodyJoin) + + border.bodyRight + + '\n' + ); +} +function renderBorder(type, options) { + var border = options.border, + columns = options.columns; + var left = border[type + 'Left']; + var right = border[type + 'Right']; + var body = border[type + 'Body']; + var join = border[type + 'Join']; + var ret = map(columns, function(column) { + return repeat(body, column.width); + }).join(join); + ret = left + ret + right; + if (type !== 'bottom') { + ret += '\n'; + } + return ret; +} +var defBorder = { + topBody: '─', + topJoin: '┬', + topLeft: '┌', + topRight: '┐', + bottomBody: '─', + bottomJoin: '┴', + bottomLeft: '└', + bottomRight: '┘', + bodyLeft: '│', + bodyRight: '│', + bodyJoin: '│', + joinBody: '─', + joinLeft: '├', + joinRight: '┤', + joinJoin: '┼' +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/throttle.js b/src/miniprogram_npm/miniprogram-licia/throttle.js new file mode 100644 index 0000000..c677095 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/throttle.js @@ -0,0 +1,6 @@ +var debounce = require('./debounce'); +exports = function(fn, wait) { + return debounce(fn, wait, true); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/timeAgo.js b/src/miniprogram_npm/miniprogram-licia/timeAgo.js new file mode 100644 index 0000000..c816c17 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/timeAgo.js @@ -0,0 +1,42 @@ +var isDate = require('./isDate'); +var toInt = require('./toInt'); +exports = function(date, now) { + if (!isDate(date)) date = new Date(date); + now = now || new Date(); + if (!isDate(now)) now = new Date(now); + var diff = (now - date) / 1000; + var i = 0; + var ago = diff > 0; + diff = Math.abs(diff); + while (diff >= secArr[i] && i < secArrLen) { + diff /= secArr[i]; + i++; + } + diff = toInt(diff); + i *= 2; + if (diff > (i === 0 ? 9 : 1)) i += 1; + return format(diff, i, ago); +}; +var secArr = [60, 60, 24, 7, 365 / 7 / 12, 12]; +var secArrLen = secArr.length; +function format(diff, i, ago) { + return exports.i18n[i][ago ? 0 : 1].replace('%s', diff); +} +exports.i18n = [ + ['just now', 'right now'], + ['%s seconds ago', 'in %s seconds'], + ['1 minute ago', 'in 1 minute'], + ['%s minutes ago', 'in %s minutes'], + ['1 hour ago', 'in 1 hour'], + ['%s hours ago', 'in %s hours'], + ['1 day ago', 'in 1 day'], + ['%s days ago', 'in %s days'], + ['1 week ago', 'in 1 week'], + ['%s weeks ago', 'in %s weeks'], + ['1 month ago', 'in 1 month'], + ['%s months ago', 'in %s months'], + ['1 year ago', 'in 1 year'], + ['%s years ago', 'in %s years'] +]; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/timeTaken.js b/src/miniprogram_npm/miniprogram-licia/timeTaken.js new file mode 100644 index 0000000..1e72933 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/timeTaken.js @@ -0,0 +1,8 @@ +var perfNow = require('./perfNow'); +exports = function(fn) { + var start = perfNow(); + fn(); + return perfNow() - start; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/times.js b/src/miniprogram_npm/miniprogram-licia/times.js new file mode 100644 index 0000000..8ca5132 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/times.js @@ -0,0 +1,11 @@ +var optimizeCb = require('./optimizeCb'); +exports = function(n, fn, ctx) { + var ret = Array(Math.max(0, n)); + fn = optimizeCb(fn, ctx, 1); + for (var i = 0; i < n; i++) { + ret[i] = fn(i); + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toArr.js b/src/miniprogram_npm/miniprogram-licia/toArr.js new file mode 100644 index 0000000..d115380 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toArr.js @@ -0,0 +1,12 @@ +var isArrLike = require('./isArrLike'); +var map = require('./map'); +var isArr = require('./isArr'); +var isStr = require('./isStr'); +exports = function(val) { + if (!val) return []; + if (isArr(val)) return val; + if (isArrLike(val) && !isStr(val)) return map(val); + return [val]; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toAsync.js b/src/miniprogram_npm/miniprogram-licia/toAsync.js new file mode 100644 index 0000000..d54fd85 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toAsync.js @@ -0,0 +1,52 @@ +var toArr = require('./toArr'); +var isGeneratorFn = require('./isGeneratorFn'); +var isPromise = require('./isPromise'); +var toStr = require('./toStr'); + +exports = function(fn) { + if (!isGeneratorFn(fn)) { + throw new TypeError('Expected a generator function'); + } + return function() { + var _this = this; + var args = toArr(arguments); + return new Promise(function(resolve, reject) { + var generator = fn.apply(_this, args); + function onFulfilled(res) { + var ret; + try { + ret = generator.next(res); + } catch (e) { + return reject(e); + } + next(ret); + } + function onRejected(err) { + var ret; + try { + ret = generator.throw(err); + } catch (e) { + return reject(e); + } + next(ret); + } + function next(ret) { + if (ret.done) return resolve(ret.value); + if (isPromise(ret.value)) { + return ret.value.then(onFulfilled, onRejected); + } + return onRejected( + new TypeError( + 'You may only yield a promise, '.concat( + toStr(ret.value), + ' is passed' + ) + ) + ); + } + onFulfilled(); + }); + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toBool.js b/src/miniprogram_npm/miniprogram-licia/toBool.js new file mode 100644 index 0000000..c92a8d4 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toBool.js @@ -0,0 +1,10 @@ +var isStr = require('./isStr'); +exports = function(val) { + if (isStr(val)) { + val = val.toLowerCase(); + return val !== '0' && val !== '' && val !== 'false'; + } + return !!val; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toDate.js b/src/miniprogram_npm/miniprogram-licia/toDate.js new file mode 100644 index 0000000..d599d75 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toDate.js @@ -0,0 +1,14 @@ +var isDate = require('./isDate'); +var isStr = require('./isStr'); +exports = function(val) { + if (!val) return new Date(); + if (isDate(val)) return val; + if (isStr(val)) { + var match = val.match(regDate); + if (match) return new Date(match[1], match[2] - 1, match[3]); + } + return new Date(val); +}; +var regDate = /^(\d{4})-?(\d{2})-?(\d{1,2})$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toInt.js b/src/miniprogram_npm/miniprogram-licia/toInt.js new file mode 100644 index 0000000..6e6d49c --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toInt.js @@ -0,0 +1,8 @@ +var toNum = require('./toNum'); +exports = function(val) { + if (!val) return val === 0 ? val : 0; + val = toNum(val); + return val - (val % 1); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toNum.js b/src/miniprogram_npm/miniprogram-licia/toNum.js new file mode 100644 index 0000000..62bf36a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toNum.js @@ -0,0 +1,15 @@ +var isNum = require('./isNum'); +var isObj = require('./isObj'); +var isFn = require('./isFn'); +var isStr = require('./isStr'); +exports = function(val) { + if (isNum(val)) return val; + if (isObj(val)) { + var temp = isFn(val.valueOf) ? val.valueOf() : val; + val = isObj(temp) ? temp + '' : temp; + } + if (!isStr(val)) return val === 0 ? val : +val; + return +val; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toSrc.js b/src/miniprogram_npm/miniprogram-licia/toSrc.js new file mode 100644 index 0000000..89589e9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toSrc.js @@ -0,0 +1,14 @@ +var isNil = require('./isNil'); +exports = function(fn) { + if (isNil(fn)) return ''; + try { + return fnToStr.call(fn); + } catch (e) {} + try { + return fn + ''; + } catch (e) {} + return ''; +}; +var fnToStr = Function.prototype.toString; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/toStr.js b/src/miniprogram_npm/miniprogram-licia/toStr.js new file mode 100644 index 0000000..2c7e0c1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/toStr.js @@ -0,0 +1,5 @@ +exports = function(val) { + return val == null ? '' : val.toString(); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/topoSort.js b/src/miniprogram_npm/miniprogram-licia/topoSort.js new file mode 100644 index 0000000..8e53c8f --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/topoSort.js @@ -0,0 +1,43 @@ +exports = function(edges) { + return sort(uniqueNodes(edges), edges); +}; +function uniqueNodes(arr) { + var ret = []; + for (var i = 0, len = arr.length; i < len; i++) { + var edge = arr[i]; + if (ret.indexOf(edge[0]) < 0) ret.push(edge[0]); + if (ret.indexOf(edge[1]) < 0) ret.push(edge[1]); + } + return ret; +} +function sort(nodes, edges) { + var cursor = nodes.length; + var sorted = new Array(cursor); + var visited = {}; + var i = cursor; + while (i--) { + if (!visited[i]) visit(nodes[i], i, []); + } + function visit(node, i, predecessors) { + if (predecessors.indexOf(node) >= 0) { + throw new Error('Cyclic dependency: ' + JSON.stringify(node)); + } + if (visited[i]) return; + visited[i] = true; + var outgoing = edges.filter(function(edge) { + return edge[0] === node; + }); + + if ((i = outgoing.length)) { + var preds = predecessors.concat(node); + do { + var child = outgoing[--i][1]; + visit(child, nodes.indexOf(child), preds); + } while (i); + } + sorted[--cursor] = node; + } + return sorted; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/trim.js b/src/miniprogram_npm/miniprogram-licia/trim.js new file mode 100644 index 0000000..44eaa22 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/trim.js @@ -0,0 +1,10 @@ +var ltrim = require('./ltrim'); +var rtrim = require('./rtrim'); +exports = function(str, chars) { + if (chars == null && str.trim) { + return str.trim(); + } + return ltrim(rtrim(str, chars), chars); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/truncate.js b/src/miniprogram_npm/miniprogram-licia/truncate.js new file mode 100644 index 0000000..56bb3c7 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/truncate.js @@ -0,0 +1,27 @@ +var defaults = require('./defaults'); +var isUndef = require('./isUndef'); +exports = function(txt, width) { + var options = + arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + defaults(options, defOptions); + var ellipsis = options.ellipsis, + separator = options.separator; + var len = txt.length; + if (width > len) return txt; + var end = width - ellipsis.length; + if (end < 1) return ellipsis; + var ret = txt.slice(0, end); + if (isUndef(separator)) return ret + ellipsis; + if (txt.indexOf(separator, end) !== end) { + var idx = ret.lastIndexOf(separator); + if (idx > -1) { + ret = ret.slice(0, idx); + } + } + return ret + ellipsis; +}; +var defOptions = { + ellipsis: '...' +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/tryIt.js b/src/miniprogram_npm/miniprogram-licia/tryIt.js new file mode 100644 index 0000000..d079d01 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/tryIt.js @@ -0,0 +1,12 @@ +var noop = require('./noop'); +exports = function(fn, cb) { + cb = cb || noop; + try { + cb(null, fn()); + } catch (e) { + cb(e); + return; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/type.js b/src/miniprogram_npm/miniprogram-licia/type.js new file mode 100644 index 0000000..733f2cc --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/type.js @@ -0,0 +1,24 @@ +var objToStr = require('./objToStr'); +var isNaN = require('./isNaN'); +var lowerCase = require('./lowerCase'); +var isBuffer = require('./isBuffer'); +exports = function(val) { + var lower = + arguments.length > 1 && arguments[1] !== undefined + ? arguments[1] + : true; + var ret; + if (val === null) ret = 'Null'; + if (val === undefined) ret = 'Undefined'; + if (isNaN(val)) ret = 'NaN'; + if (isBuffer(val)) ret = 'Buffer'; + if (!ret) { + ret = objToStr(val).match(regObj); + if (ret) ret = ret[1]; + } + if (!ret) return ''; + return lower ? lowerCase(ret) : ret; +}; +var regObj = /^\[object\s+(.*?)]$/; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/types.js b/src/miniprogram_npm/miniprogram-licia/types.js new file mode 100644 index 0000000..de9c910 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/types.js @@ -0,0 +1,3 @@ +exports = {}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/ucs2.js b/src/miniprogram_npm/miniprogram-licia/ucs2.js new file mode 100644 index 0000000..e4da234 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/ucs2.js @@ -0,0 +1,37 @@ +var chunk = require('./chunk'); +var map = require('./map'); + +exports = { + encode: function(arr) { + if (arr.length < 32768) { + return String.fromCodePoint.apply(String, arr); + } + return map(chunk(arr, 32767), function(nums) { + return String.fromCodePoint.apply(String, nums); + }).join(''); + }, + decode: function(str) { + var ret = []; + var i = 0; + var len = str.length; + while (i < len) { + var c = str.charCodeAt(i++); + + if (c >= 0xd800 && c <= 0xdbff && i < len) { + var tail = str.charCodeAt(i++); + + if ((tail & 0xfc00) === 0xdc00) { + ret.push(((c & 0x3ff) << 10) + (tail & 0x3ff) + 0x10000); + } else { + ret.push(c); + i--; + } + } else { + ret.push(c); + } + } + return ret; + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/unescape.js b/src/miniprogram_npm/miniprogram-licia/unescape.js new file mode 100644 index 0000000..84abd2d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/unescape.js @@ -0,0 +1,15 @@ +var escape = require('./escape'); +var keys = require('./keys'); +var invert = require('./invert'); +exports = function(str) { + return regTest.test(str) ? str.replace(regReplace, replaceFn) : str; +}; +var map = invert(escape.map); +var regSrc = '(?:' + keys(map).join('|') + ')'; +var regTest = new RegExp(regSrc); +var regReplace = new RegExp(regSrc, 'g'); +function replaceFn(match) { + return map[match]; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/union.js b/src/miniprogram_npm/miniprogram-licia/union.js new file mode 100644 index 0000000..9b01f17 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/union.js @@ -0,0 +1,8 @@ +var restArgs = require('./restArgs'); +var unique = require('./unique'); +var flatten = require('./flatten'); +exports = restArgs(function(arrays) { + return unique(flatten(arrays)); +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/uniqId.js b/src/miniprogram_npm/miniprogram-licia/uniqId.js new file mode 100644 index 0000000..804bb48 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/uniqId.js @@ -0,0 +1,7 @@ +var idCounter = 0; +exports = function(prefix) { + var id = ++idCounter + ''; + return prefix ? prefix + id : id; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/unique.js b/src/miniprogram_npm/miniprogram-licia/unique.js new file mode 100644 index 0000000..8aa676e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/unique.js @@ -0,0 +1,16 @@ +var filter = require('./filter'); +exports = function(arr, cmp) { + cmp = cmp || isEqual; + return filter(arr, function(item, idx, arr) { + var len = arr.length; + while (++idx < len) { + if (cmp(item, arr[idx])) return false; + } + return true; + }); +}; +function isEqual(a, b) { + return a === b; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/universalify.js b/src/miniprogram_npm/miniprogram-licia/universalify.js new file mode 100644 index 0000000..c35b214 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/universalify.js @@ -0,0 +1,31 @@ +var promisify = require('./promisify'); +var callbackify = require('./callbackify'); +var last = require('./last'); +var isFn = require('./isFn'); +exports = function(fn, type) { + var callbackFn; + var promiseFn; + if (type === 'callback') { + callbackFn = fn; + promiseFn = promisify(fn); + } else { + promiseFn = fn; + callbackFn = callbackify(fn); + } + return function() { + for ( + var _len = arguments.length, args = new Array(_len), _key = 0; + _key < _len; + _key++ + ) { + args[_key] = arguments[_key]; + } + if (isFn(last(args))) { + callbackFn.apply(this, args); + } else { + return promiseFn.apply(this, args); + } + }; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/unzip.js b/src/miniprogram_npm/miniprogram-licia/unzip.js new file mode 100644 index 0000000..c12c83a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/unzip.js @@ -0,0 +1,18 @@ +var map = require('./map'); +var pluck = require('./pluck'); +var max = require('./max'); +exports = function(arr) { + var len = max.apply( + null, + map(arr, function(arr) { + return arr.length; + }) + ); + var ret = Array(len); + for (var i = 0; i < len; i++) { + ret[i] = pluck(arr, i); + } + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/upperCase.js b/src/miniprogram_npm/miniprogram-licia/upperCase.js new file mode 100644 index 0000000..cf2c9c9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/upperCase.js @@ -0,0 +1,6 @@ +var toStr = require('./toStr'); +exports = function(str) { + return toStr(str).toLocaleUpperCase(); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/upperFirst.js b/src/miniprogram_npm/miniprogram-licia/upperFirst.js new file mode 100644 index 0000000..c4a3d54 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/upperFirst.js @@ -0,0 +1,6 @@ +exports = function(str) { + if (str.length < 1) return str; + return str[0].toUpperCase() + str.slice(1); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/use.js b/src/miniprogram_npm/miniprogram-licia/use.js new file mode 100644 index 0000000..55cdd31 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/use.js @@ -0,0 +1,29 @@ +var map = require('./map'); +var define = require('./define'); +var has = require('./has'); +var toArr = require('./toArr'); +exports = function(requires, method) { + if (method == null) { + method = requires; + requires = []; + } + requires = map(toArr(requires), function(val) { + return req(val); + }); + method.apply(null, requires); +}; +var modules = define._modules; +var requireMarks = {}; +function req(name) { + if (has(requireMarks, name)) return modules[name]; + var requires = modules[name].requires; + var body = modules[name].body; + var len = requires.length; + for (var i = 0; i < len; i++) requires[i] = req(requires[i]); + var exports = body.apply(null, requires); + if (exports) modules[name] = exports; + requireMarks[name] = true; + return modules[name]; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/utf8.js b/src/miniprogram_npm/miniprogram-licia/utf8.js new file mode 100644 index 0000000..9c88c8b --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/utf8.js @@ -0,0 +1,127 @@ +var ucs2 = require('./ucs2'); + +exports = { + encode: function(str) { + var codePoints = ucs2.decode(str); + var byteArr = ''; + for (var i = 0, len = codePoints.length; i < len; i++) { + byteArr += encodeCodePoint(codePoints[i]); + } + return byteArr; + }, + decode: function(str, safe) { + byteArr = ucs2.decode(str); + byteIdx = 0; + byteCount = byteArr.length; + codePoint = 0; + bytesSeen = 0; + bytesNeeded = 0; + lowerBoundary = 0x80; + upperBoundary = 0xbf; + var codePoints = []; + var tmp; + while ((tmp = decodeCodePoint(safe)) !== false) { + codePoints.push(tmp); + } + return ucs2.encode(codePoints); + } +}; +var fromCharCode = String.fromCharCode; +function encodeCodePoint(codePoint) { + if ((codePoint & 0xffffff80) === 0) { + return fromCharCode(codePoint); + } + var ret = '', + count, + offset; + + if ((codePoint & 0xfffff800) === 0) { + count = 1; + offset = 0xc0; + } else if ((codePoint & 0xffff0000) === 0) { + count = 2; + offset = 0xe0; + } else if ((codePoint & 0xffe00000) == 0) { + count = 3; + offset = 0xf0; + } + ret += fromCharCode((codePoint >> (6 * count)) + offset); + while (count > 0) { + var tmp = codePoint >> (6 * (count - 1)); + ret += fromCharCode(0x80 | (tmp & 0x3f)); + count--; + } + return ret; +} +var byteArr, + byteIdx, + byteCount, + codePoint, + bytesSeen, + bytesNeeded, + lowerBoundary, + upperBoundary; +function decodeCodePoint(safe) { + while (true) { + if (byteIdx >= byteCount && bytesNeeded) { + if (safe) return goBack(); + throw new Error('Invalid byte index'); + } + if (byteIdx === byteCount) return false; + var byte = byteArr[byteIdx]; + byteIdx++; + if (!bytesNeeded) { + if ((byte & 0x80) === 0) { + return byte; + } + + if ((byte & 0xe0) === 0xc0) { + bytesNeeded = 1; + codePoint = byte & 0x1f; + } else if ((byte & 0xf0) === 0xe0) { + if (byte === 0xe0) lowerBoundary = 0xa0; + if (byte === 0xed) upperBoundary = 0x9f; + bytesNeeded = 2; + codePoint = byte & 0xf; + } else if ((byte & 0xf8) === 0xf0) { + if (byte === 0xf0) lowerBoundary = 0x90; + if (byte === 0xf4) upperBoundary = 0x8f; + bytesNeeded = 3; + codePoint = byte & 0x7; + } else { + if (safe) return goBack(); + throw new Error('Invalid UTF-8 detected'); + } + continue; + } + if (byte < lowerBoundary || byte > upperBoundary) { + if (safe) { + byteIdx--; + return goBack(); + } + throw new Error('Invalid continuation byte'); + } + lowerBoundary = 0x80; + upperBoundary = 0xbf; + codePoint = (codePoint << 6) | (byte & 0x3f); + bytesSeen++; + if (bytesSeen !== bytesNeeded) continue; + var tmp = codePoint; + codePoint = 0; + bytesNeeded = 0; + bytesSeen = 0; + return tmp; + } +} +function goBack() { + var start = byteIdx - bytesSeen - 1; + byteIdx = start + 1; + codePoint = 0; + bytesNeeded = 0; + bytesSeen = 0; + lowerBoundary = 0x80; + upperBoundary = 0xbf; + return byteArr[start]; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/uuid.js b/src/miniprogram_npm/miniprogram-licia/uuid.js new file mode 100644 index 0000000..446951d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/uuid.js @@ -0,0 +1,34 @@ +var randomBytes = require('./randomBytes'); +exports = function() { + var b = randomBytes(16); + b[6] = (b[6] & 0x0f) | 0x40; + b[8] = (b[8] & 0x3f) | 0x80; + return ( + hexBytes[b[0]] + + hexBytes[b[1]] + + hexBytes[b[2]] + + hexBytes[b[3]] + + '-' + + hexBytes[b[4]] + + hexBytes[b[5]] + + '-' + + hexBytes[b[6]] + + hexBytes[b[7]] + + '-' + + hexBytes[b[8]] + + hexBytes[b[9]] + + '-' + + hexBytes[b[10]] + + hexBytes[b[11]] + + hexBytes[b[12]] + + hexBytes[b[13]] + + hexBytes[b[14]] + + hexBytes[b[15]] + ); +}; +var hexBytes = []; +for (var i = 0; i < 256; i++) { + hexBytes[i] = (i + 0x100).toString(16).substr(1); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/values.js b/src/miniprogram_npm/miniprogram-licia/values.js new file mode 100644 index 0000000..985989e --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/values.js @@ -0,0 +1,10 @@ +var each = require('./each'); +exports = function(obj) { + var ret = []; + each(obj, function(val) { + ret.push(val); + }); + return ret; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/vlq.js b/src/miniprogram_npm/miniprogram-licia/vlq.js new file mode 100644 index 0000000..71e5c5d --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/vlq.js @@ -0,0 +1,69 @@ +var toArr = require('./toArr'); + +exports = { + encode: function(arr) { + arr = toArr(arr); + var ret = ''; + for (var i = 0, len = arr.length; i < len; i++) { + ret += encode(arr[i]); + } + return ret; + }, + decode: function(str) { + var ret = []; + var i = 0; + var len = str.length; + while (i < len) { + var value = 0; + var continuation = false; + var shift = 0; + do { + var digit = charToInt[str[i++]]; + continuation = (digit & VLQ_CONTINUATION_BIT) !== 0; + digit &= VLQ_BASE_MASK; + value = value + (digit << shift); + shift = shift + VLQ_BASE_SHIFT; + } while (continuation); + ret.push(fromVLQSigned(value)); + } + return ret; + } +}; +var charToInt = {}; +var intToChar = {}; +var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; +for (var i = 0, len = chars.length; i < len; i++) { + charToInt[chars[i]] = i; + intToChar[i] = chars[i]; +} +var VLQ_BASE_SHIFT = 5; +var VLQ_BASE = 1 << VLQ_BASE_SHIFT; +var VLQ_BASE_MASK = VLQ_BASE - 1; +var VLQ_CONTINUATION_BIT = VLQ_BASE; +function encode(value) { + var ret = ''; + value = toVLQSigned(value); + do { + var digit = value & VLQ_BASE_MASK; + value >>>= VLQ_BASE_SHIFT; + if (value > 0) { + digit |= VLQ_CONTINUATION_BIT; + } + ret += intToChar[digit]; + } while (value > 0); + return ret; +} +function toVLQSigned(value) { + if (value < 0) { + return (-value << 1) + 1; + } else { + return (value << 1) + 0; + } +} +function fromVLQSigned(value) { + var negate = (value & 1) === 1; + value = value >> 1; + return negate ? -value : value; +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/waitUntil.js b/src/miniprogram_npm/miniprogram-licia/waitUntil.js new file mode 100644 index 0000000..5e724e9 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/waitUntil.js @@ -0,0 +1,36 @@ +var now = require('./now'); +exports = function(condition) { + var timeout = + arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var interval = + arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 250; + function evalCondition() { + return new Promise(function(resolve, reject) { + try { + resolve(condition()); + } catch (e) { + reject(e); + } + }); + } + return new Promise(function(resolve, reject) { + var startTime = now(); + var pollCondition = function() { + evalCondition().then(function(val) { + var elapsed = now() - startTime; + if (val) { + resolve(val); + } else if (timeout && elapsed >= timeout) { + reject( + Error('Wait timed out after '.concat(timeout, ' ms')) + ); + } else { + setTimeout(pollCondition, interval); + } + }, reject); + }; + pollCondition(); + }); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/waterfall.js b/src/miniprogram_npm/miniprogram-licia/waterfall.js new file mode 100644 index 0000000..8f11c48 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/waterfall.js @@ -0,0 +1,27 @@ +var noop = require('./noop'); +var nextTick = require('./nextTick'); +var restArgs = require('./restArgs'); +exports = function(tasks, cb) { + cb = cb || noop; + var current = 0; + var taskCb = restArgs(function(err, args) { + if (++current >= tasks.length || err) { + args.unshift(err); + nextTick(function() { + cb.apply(null, args); + }); + } else { + args.push(taskCb); + tasks[current].apply(null, args); + } + }); + if (tasks.length) { + tasks[0](taskCb); + } else { + nextTick(function() { + cb(); + }); + } +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/wordWrap.js b/src/miniprogram_npm/miniprogram-licia/wordWrap.js new file mode 100644 index 0000000..04713ed --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/wordWrap.js @@ -0,0 +1,49 @@ +var map = require('./map'); +var reduce = require('./reduce'); +var concat = require('./concat'); +var last = require('./last'); +var trim = require('./trim'); +exports = function(txt, width) { + var lines = txt.split('\n'); + return map(lines, function(line) { + return wrap(line, width); + }).join('\n'); +}; +var regWordBoundary = /(\S+\s+)/; +function wrap(txt, width) { + var chunks = reduce( + txt.split(regWordBoundary), + function(chunks, word) { + if (trim(word) === '') return chunks; + if (word.length > width) { + chunks = concat( + chunks, + word.match(new RegExp('.{1,'.concat(width, '}'), 'g')) + ); + } else { + chunks.push(word); + } + return chunks; + }, + [] + ); + var lines = reduce( + chunks, + function(lines, chunk) { + var lastLine = last(lines); + if (lastLine.length + chunk.length > width) { + if (trim(lastLine) === '') { + lines.pop(); + } + lines.push(chunk); + } else { + lines[lines.length - 1] = lastLine + chunk; + } + return lines; + }, + [chunks.shift()] + ); + return lines.join('\n'); +} + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/wordsToBytes.js b/src/miniprogram_npm/miniprogram-licia/wordsToBytes.js new file mode 100644 index 0000000..c3b9e22 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/wordsToBytes.js @@ -0,0 +1,9 @@ +exports = function(words) { + var bytes = []; + for (var b = 0, len = words.length * 32; b < len; b += 8) { + bytes.push((words[b >>> 5] >>> (24 - (b % 32))) & 0xff); + } + return bytes; +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/wrap.js b/src/miniprogram_npm/miniprogram-licia/wrap.js new file mode 100644 index 0000000..e6ad71a --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/wrap.js @@ -0,0 +1,6 @@ +var partial = require('./partial'); +exports = function(fn, wrapper) { + return partial(wrapper, fn); +}; + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/wx.js b/src/miniprogram_npm/miniprogram-licia/wx.js new file mode 100644 index 0000000..d6d50d1 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/wx.js @@ -0,0 +1,69 @@ +var each = require('./each'); +var arrToMap = require('./arrToMap'); +var startWith = require('./startWith'); +var endWith = require('./endWith'); +var extend = require('./extend'); + +var noPromiseMethods = arrToMap([ + 'stopRecord', + 'getRecorderManager', + 'pauseVoice', + 'stopVoice', + 'pauseBackgroundAudio', + 'stopBackgroundAudio', + 'getBackgroundAudioManager', + 'createAudioContext', + 'createInnerAudioContext', + 'createVideoContext', + 'createCameraContext', + 'createMapContext', + 'canIUse', + 'startAccelerometer', + 'stopAccelerometer', + 'startCompass', + 'stopCompass', + 'onBLECharacteristicValueChange', + 'onBLEConnectionStateChange', + 'hideToast', + 'hideLoading', + 'showNavigationBarLoading', + 'hideNavigationBarLoading', + 'navigateBack', + 'createAnimation', + 'pageScrollTo', + 'createSelectorQuery', + 'createCanvasContext', + 'createContext', + 'drawCanvas', + 'hideKeyboard', + 'stopPullDownRefresh', + 'arrayBufferToBase64', + 'base64ToArrayBuffer' +]); +function needToPromisify(name) { + return ( + !noPromiseMethods[name] && + !startWith(name, 'on') && + !endWith(name, 'Sync') + ); +} +each(wx, function(fn, name) { + if (!needToPromisify(name)) return; + exports[name] = function(obj) { + return new Promise(function(resolve, reject) { + fn.call( + wx, + extend(obj, { + success: function(res) { + resolve(res); + }, + fail: function(res) { + reject(res); + } + }) + ); + }); + }; +}); + +module.exports = exports; diff --git a/src/miniprogram_npm/miniprogram-licia/zip.js b/src/miniprogram_npm/miniprogram-licia/zip.js new file mode 100644 index 0000000..1f96866 --- /dev/null +++ b/src/miniprogram_npm/miniprogram-licia/zip.js @@ -0,0 +1,5 @@ +var restArgs = require('./restArgs'); +var unzip = require('./unzip'); +exports = restArgs(unzip); + +module.exports = exports; diff --git a/src/miniprogram_npm/mp-html/index.js b/src/miniprogram_npm/mp-html/index.js new file mode 100644 index 0000000..3196d80 --- /dev/null +++ b/src/miniprogram_npm/mp-html/index.js @@ -0,0 +1,8 @@ +"use strict";function e(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}/*! + * mp-html v2.5.0 + * https://github.com/jin-yufeng/mp-html + * + * Released under the MIT license + * Author: Jin Yufeng + */ +var t=require("./parser"),n=[];Component({data:{nodes:[]},properties:{containerStyle:String,content:{type:String,value:"",observer:function(e){this.setContent(e)}},copyLink:{type:Boolean,value:!0},domain:String,errorImg:String,lazyLoad:Boolean,loadingImg:String,pauseVideo:{type:Boolean,value:!0},previewImg:{type:null,value:!0},scrollTable:Boolean,selectable:null,setTitle:{type:Boolean,value:!0},showImgMenu:{type:Boolean,value:!0},tagStyle:Object,useAnchor:null},created:function(){this.plugins=[];for(var e=n.length;e--;)this.plugins.push(new n[e](this))},detached:function(){this._hook("onDetached")},methods:{in:function(e,t,n){e&&t&&n&&(this._in={page:e,selector:t,scrollTop:n})},navigateTo:function(t,n){var i=this;return new Promise(function(o,r){if(!i.data.useAnchor)return void r(Error("Anchor is disabled"));var a=wx.createSelectorQuery().in(i._in?i._in.page:i).select((i._in?i._in.selector:"._root")+(t?"".concat(">>>","#").concat(t):"")).boundingClientRect();i._in?a.select(i._in.selector).scrollOffset().select(i._in.selector).boundingClientRect():a.selectViewport().scrollOffset(),a.exec(function(t){if(!t[0])return void r(Error("Label not found"));var a=t[1].scrollTop+t[0].top-(t[2]?t[2].top:0)+(n||parseInt(i.data.useAnchor)||0);i._in?i._in.page.setData(e({},i._in.scrollTop,a)):wx.pageScrollTo({scrollTop:a,duration:300}),o()})})},getText:function(e){var t="";return function e(n){for(var i=0;i<n.length;i++){var o=n[i];if("text"===o.type)t+=o.text.replace(/&amp;/g,"&");else if("br"===o.name)t+="\n";else{var r="p"===o.name||"div"===o.name||"tr"===o.name||"li"===o.name||"h"===o.name[0]&&o.name[1]>"0"&&o.name[1]<"7";r&&t&&"\n"!==t[t.length-1]&&(t+="\n"),o.children&&e(o.children),r&&"\n"!==t[t.length-1]?t+="\n":"td"!==o.name&&"th"!==o.name||(t+="\t")}}}(e||this.data.nodes),t},getRect:function(){var e=this;return new Promise(function(t,n){wx.createSelectorQuery().in(e).select("._root").boundingClientRect().exec(function(e){return e[0]?t(e[0]):n(Error("Root label not found"))})})},pauseMedia:function(){for(var e=(this._videos||[]).length;e--;)this._videos[e].pause()},setPlaybackRate:function(e){this.playbackRate=e;for(var t=(this._videos||[]).length;t--;)this._videos[t].playbackRate(e)},setContent:function(e,n){var i=this;this.imgList&&n||(this.imgList=[]),this._videos=[];var o={},r=new t(this).parse(e);if(n)for(var a=this.data.nodes.length,s=r.length;s--;)o["nodes[".concat(a+s,"]")]=r[s];else o.nodes=r;if(this.setData(o,function(){i._hook("onLoad"),i.triggerEvent("load")}),this.data.lazyLoad||this.imgList._unloadimgs<this.imgList.length/2){var l=0,c=function e(t){t&&t.height||(t={}),t.height===l?i.triggerEvent("ready",t):(l=t.height,setTimeout(function(){i.getRect().then(e).catch(e)},350))};this.getRect().then(c).catch(c)}else this.imgList._unloadimgs||this.getRect().then(function(e){i.triggerEvent("ready",e)}).catch(function(){i.triggerEvent("ready",{})})},_hook:function(e){for(var t=n.length;t--;)this.plugins[t][e]&&this.plugins[t][e]()},_add:function(e){e.detail.root=this}}}); \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/index.json b/src/miniprogram_npm/mp-html/index.json new file mode 100644 index 0000000..36b626e --- /dev/null +++ b/src/miniprogram_npm/mp-html/index.json @@ -0,0 +1 @@ +{"component":true,"usingComponents":{"node":"./node/node"}} \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/index.wxml b/src/miniprogram_npm/mp-html/index.wxml new file mode 100644 index 0000000..3021bfc --- /dev/null +++ b/src/miniprogram_npm/mp-html/index.wxml @@ -0,0 +1 @@ +<view class="_root {{selectable?'_select':''}}" style="{{containerStyle}}"><slot wx:if="{{!nodes[0]}}"/><node id="_root" childs="{{nodes}}" opts="{{[lazyLoad,loadingImg,errorImg,showImgMenu,selectable]}}" catchadd="_add"/></view> \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/index.wxss b/src/miniprogram_npm/mp-html/index.wxss new file mode 100644 index 0000000..5f74d06 --- /dev/null +++ b/src/miniprogram_npm/mp-html/index.wxss @@ -0,0 +1 @@ +._root{padding:1px 0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}._select{-webkit-user-select:text;user-select:text} \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/node/node.js b/src/miniprogram_npm/mp-html/node/node.js new file mode 100644 index 0000000..8fc562a --- /dev/null +++ b/src/miniprogram_npm/mp-html/node/node.js @@ -0,0 +1 @@ +"use strict";function t(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,i)}return r}function e(e){for(var i=1;i<arguments.length;i++){var o=null!=arguments[i]?arguments[i]:{};i%2?t(Object(o),!0).forEach(function(t){r(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))})}return e}function r(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}Component({data:{ctrl:{},isiOS:wx.getSystemInfoSync().system.includes("iOS")},properties:{childs:Array,opts:Array},options:{addGlobalClass:!0},attached:function(){this.triggerEvent("add",this,{bubbles:!0,composed:!0})},methods:{noop:function(){},getNode:function(t){try{for(var e=t.split("_"),r=this.data.childs[e[0]],i=1;i<e.length;i++)r=r.children[e[i]];return r}catch(t){return{text:"",attrs:{},children:[]}}},play:function(t){var r=t.target.dataset.i,i=this.getNode(r);if(this.root.triggerEvent("play",{source:i.name,attrs:e(e({},i.attrs),{},{src:i.src[this.data.ctrl[r]||0]})}),this.root.data.pauseVideo){for(var o=!1,s=t.target.id,a=this.root._videos.length;a--;)this.root._videos[a].id===s?o=!0:this.root._videos[a].pause();if(!o){var n=wx.createVideoContext(s,this);n.id=s,this.root.playbackRate&&n.playbackRate(this.root.playbackRate),this.root._videos.push(n)}}},imgTap:function(t){var e=this.getNode(t.target.dataset.i);if(e.a)return this.linkTap(e.a);if(!e.attrs.ignore&&(this.root.triggerEvent("imgtap",e.attrs),this.root.data.previewImg)){var r=this.root.imgList[e.i];wx.previewImage({showmenu:this.root.data.showImgMenu,current:r,urls:this.root.imgList})}},imgLoad:function(t){var e,i=t.target.dataset.i,o=this.getNode(i);o.w?(this.data.opts[1]&&!this.data.ctrl[i]||-1===this.data.ctrl[i])&&(e=1):e=t.detail.width,e&&this.setData(r({},"ctrl."+i,e)),this.checkReady()},checkReady:function(){var t=this;this.root.data.lazyLoad||(this.root.imgList._unloadimgs-=1,this.root.imgList._unloadimgs||setTimeout(function(){t.root.getRect().then(function(e){t.root.triggerEvent("ready",e)}).catch(function(){t.root.triggerEvent("ready",{})})},350))},linkTap:function(t){var e=t.currentTarget?this.getNode(t.currentTarget.dataset.i):{},r=e.attrs||t,i=r.href;this.root.triggerEvent("linktap",Object.assign({innerText:this.root.getText(e.children||[])},r)),i&&("#"===i[0]?this.root.navigateTo(i.substring(1)).catch(function(){}):i.split("?")[0].includes("://")?this.root.data.copyLink&&wx.setClipboardData({data:i,success:function(){return wx.showToast({title:"链接已复制"})}}):wx.navigateTo({url:i,fail:function(){wx.switchTab({url:i,fail:function(){}})}}))},mediaError:function(t){var e=t.target.dataset.i,i=this.getNode(e);if("video"===i.name||"audio"===i.name){var o=(this.data.ctrl[e]||0)+1;if(o>i.src.length&&(o=0),o<i.src.length)return this.setData(r({},"ctrl."+e,o))}else"img"===i.name&&(this.data.opts[2]&&this.setData(r({},"ctrl."+e,-1)),this.checkReady());this.root&&this.root.triggerEvent("error",{source:i.name,attrs:i.attrs,errMsg:t.detail.errMsg})}}}); \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/node/node.json b/src/miniprogram_npm/mp-html/node/node.json new file mode 100644 index 0000000..36f7ff7 --- /dev/null +++ b/src/miniprogram_npm/mp-html/node/node.json @@ -0,0 +1 @@ +{"component":true,"usingComponents":{"node":"./node"}} \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/node/node.wxml b/src/miniprogram_npm/mp-html/node/node.wxml new file mode 100644 index 0000000..2107aab --- /dev/null +++ b/src/miniprogram_npm/mp-html/node/node.wxml @@ -0,0 +1 @@ +<wxs module="isInline">var e={abbr:!0,b:!0,big:!0,code:!0,del:!0,em:!0,i:!0,ins:!0,label:!0,q:!0,small:!0,span:!0,strong:!0,sub:!0,sup:!0};module.exports=function(n,i){return e[n]||-1!==(i||"").indexOf("inline")};</wxs><template name="el"><block wx:if="{{n.name==='img'}}"><rich-text wx:if="{{n.t}}" style="display:{{n.t}}" nodes="<img class='_img' style='{{n.attrs.style}}' src='{{n.attrs.src}}'>" data-i="{{i}}" catchtap="imgTap"/><block wx:else><image wx:if="{{(opts[1]&&!ctrl[i])||ctrl[i]<0}}" class="_img" style="{{n.attrs.style}}" src="{{ctrl[i]<0?opts[2]:opts[1]}}" mode="widthFix"/><image id="{{n.attrs.id}}" class="_img {{n.attrs.class}}" style="{{ctrl[i]===-1?'display:none;':''}}width:{{ctrl[i]||1}}px;height:1px;{{n.attrs.style}}" src="{{n.attrs.src}}" mode="{{!n.h?'widthFix':(!n.w?'heightFix':(n.m||'scaleToFill'))}}" lazy-load="{{opts[0]}}" webp="{{n.webp}}" show-menu-by-longpress="{{opts[3]&&!n.attrs.ignore}}" data-i="{{i}}" bindload="imgLoad" binderror="mediaError" catchtap="imgTap" bindlongpress="noop"/></block></block><text wx:elif="{{n.text}}" user-select="{{opts[4]=='force'&&isiOS}}" decode>{{n.text}}</text><text wx:elif="{{n.name==='br'}}">\n</text><view wx:elif="{{n.name==='a'}}" id="{{n.attrs.id}}" class="{{n.attrs.href?'_a ':''}}{{n.attrs.class}}" hover-class="_hover" style="display:inline;{{n.attrs.style}}" data-i="{{i}}" catchtap="linkTap"><node childs="{{n.children}}" opts="{{opts}}" style="display:inherit"/></view><video wx:elif="{{n.name==='video'}}" id="{{n.attrs.id}}" class="{{n.attrs.class}}" style="{{n.attrs.style}}" autoplay="{{n.attrs.autoplay}}" controls="{{n.attrs.controls}}" loop="{{n.attrs.loop}}" muted="{{n.attrs.muted}}" object-fit="{{n.attrs['object-fit']}}" poster="{{n.attrs.poster}}" src="{{n.src[ctrl[i]||0]}}" data-i="{{i}}" bindplay="play" binderror="mediaError"/><audio wx:elif="{{n.name==='audio'}}" id="{{n.attrs.id}}" class="{{n.attrs.class}}" style="{{n.attrs.style}}" author="{{n.attrs.author}}" controls="{{n.attrs.controls}}" loop="{{n.attrs.loop}}" name="{{n.attrs.name}}" poster="{{n.attrs.poster}}" src="{{n.src[ctrl[i]||0]}}" data-i="{{i}}" bindplay="play" binderror="mediaError"/><rich-text wx:else id="{{n.attrs.id}}" style="{{n.f}}" user-select="{{opts[4]}}" nodes="{{[n]}}"/></template><block wx:for="{{childs}}" wx:for-item="n1" wx:for-index="i1" wx:key="i1"><template wx:if="{{!n1.c&&(!n1.children||n1.name==='a'||!isInline(n1.name,n1.attrs.style))}}" is="el" data="{{n:n1,i:''+i1,opts:opts,ctrl:ctrl}}"/><view wx:else id="{{n1.attrs.id}}" class="_{{n1.name}} {{n1.attrs.class}}" style="{{n1.attrs.style}}"><block wx:for="{{n1.children}}" wx:for-item="n2" wx:for-index="i2" wx:key="i2"><template wx:if="{{!n2.c&&(!n2.children||n2.name==='a'||!isInline(n2.name,n2.attrs.style))}}" is="el" data="{{n:n2,i:i1+'_'+i2,opts:opts,ctrl:ctrl}}"/><view wx:else id="{{n2.attrs.id}}" class="_{{n2.name}} {{n2.attrs.class}}" style="{{n2.attrs.style}}"><block wx:for="{{n2.children}}" wx:for-item="n3" wx:for-index="i3" wx:key="i3"><template wx:if="{{!n3.c&&(!n3.children||n3.name==='a'||!isInline(n3.name,n3.attrs.style))}}" is="el" data="{{n:n3,i:i1+'_'+i2+'_'+i3,opts:opts,ctrl:ctrl}}"/><view wx:else id="{{n3.attrs.id}}" class="_{{n3.name}} {{n3.attrs.class}}" style="{{n3.attrs.style}}"><block wx:for="{{n3.children}}" wx:for-item="n4" wx:for-index="i4" wx:key="i4"><template wx:if="{{!n4.c&&(!n4.children||n4.name==='a'||!isInline(n4.name,n4.attrs.style))}}" is="el" data="{{n:n4,i:i1+'_'+i2+'_'+i3+'_'+i4,opts:opts,ctrl:ctrl}}"/><view wx:else id="{{n4.attrs.id}}" class="_{{n4.name}} {{n4.attrs.class}}" style="{{n4.attrs.style}}"><block wx:for="{{n4.children}}" wx:for-item="n5" wx:for-index="i5" wx:key="i5"><template wx:if="{{!n5.c&&(!n5.children||n5.name==='a'||!isInline(n5.name,n5.attrs.style))}}" is="el" data="{{n:n5,i:i1+'_'+i2+'_'+i3+'_'+i4+'_'+i5,opts:opts,ctrl:ctrl}}"/><node wx:else id="{{n5.attrs.id}}" class="_{{n5.name}} {{n5.attrs.class}}" style="{{n5.attrs.style}}" childs="{{n5.children}}" opts="{{opts}}"/></block></view></block></view></block></view></block></view></block> \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/node/node.wxss b/src/miniprogram_npm/mp-html/node/node.wxss new file mode 100644 index 0000000..43a2fab --- /dev/null +++ b/src/miniprogram_npm/mp-html/node/node.wxss @@ -0,0 +1 @@ +._a{padding:1.5px 0 1.5px 0;color:#366092;word-break:break-all}._hover{text-decoration:underline;opacity:.7}._img{max-width:100%;-webkit-touch-callout:none}._b,._strong{font-weight:700}._code{font-family:monospace}._del{text-decoration:line-through}._em,._i{font-style:italic}._h1{font-size:2em}._h2{font-size:1.5em}._h3{font-size:1.17em}._h5{font-size:.83em}._h6{font-size:.67em}._h1,._h2,._h3,._h4,._h5,._h6{display:block;font-weight:700}._ins{text-decoration:underline}._li{display:list-item}._ol{list-style-type:decimal}._ol,._ul{display:block;padding-left:40px;margin:1em 0}._q::before{content:'"'}._q::after{content:'"'}._sub{font-size:smaller;vertical-align:sub}._sup{font-size:smaller;vertical-align:super}._tbody,._tfoot,._thead{display:table-row-group}._tr{display:table-row}._td,._th{display:table-cell;vertical-align:middle}._th{font-weight:700;text-align:center}._ul{list-style-type:disc}._ul ._ul{margin:0;list-style-type:circle}._ul ._ul ._ul{list-style-type:square}._abbr,._b,._code,._del,._em,._i,._ins,._label,._q,._span,._strong,._sub,._sup{display:inline}._blockquote,._div,._p{display:block} \ No newline at end of file diff --git a/src/miniprogram_npm/mp-html/parser.js b/src/miniprogram_npm/mp-html/parser.js new file mode 100644 index 0000000..20b87f6 --- /dev/null +++ b/src/miniprogram_npm/mp-html/parser.js @@ -0,0 +1 @@ +"use strict";function t(t,e){var s;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(s=i(t))||e&&t&&"number"==typeof t.length){s&&(t=s);var n=0,a=function(){};return{s:a,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o=!0,l=!1;return{s:function(){s=t[Symbol.iterator]()},n:function(){var t=s.next();return o=t.done,t},e:function(t){l=!0,r=t},f:function(){try{o||null==s.return||s.return()}finally{if(l)throw r}}}}function i(t,i){if(t){if("string"==typeof t)return e(t,i);var s=Object.prototype.toString.call(t).slice(8,-1);return"Object"===s&&t.constructor&&(s=t.constructor.name),"Map"===s||"Set"===s?Array.from(t):"Arguments"===s||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s)?e(t,i):void 0}}function e(t,i){(null==i||i>t.length)&&(i=t.length);for(var e=0,s=new Array(i);e<i;e++)s[e]=t[e];return s}function s(t){for(var i=Object.create(null),e=t.split(","),s=e.length;s--;)i[e[s]]=!0;return i}function n(t,i){for(var e=t.indexOf("&");-1!==e;){var s=t.indexOf(";",e+3),n=void 0;if(-1===s)break;"#"===t[e+1]?(n=parseInt(("x"===t[e+2]?"0":"")+t.substring(e+2,s)),isNaN(n)||(t=t.substr(0,e)+String.fromCharCode(n)+t.substr(s+1))):(n=t.substring(e+1,s),(l.entities[n]||"amp"===n&&i)&&(t=t.substr(0,e)+(l.entities[n]||"&")+t.substr(s+1))),e=t.indexOf("&",e+1)}return t}function a(t){for(var i=t.length-1,e=i;e>=-1;e--)(-1===e||t[e].c||!t[e].name||"div"!==t[e].name&&"p"!==t[e].name&&"h"!==t[e].name[0]||(t[e].attrs.style||"").includes("inline"))&&(i-e>=5&&t.splice(e+1,i-e,{name:"div",attrs:{},children:t.slice(e+1,i+1)}),i=e-1)}function r(t){this.options=t.data||{},this.tagStyle=Object.assign({},l.tagStyle,this.options.tagStyle),this.imgList=t.imgList||[],this.imgList._unloadimgs=0,this.plugins=t.plugins||[],this.attrs=Object.create(null),this.stack=[],this.nodes=[],this.pre=(this.options.containerStyle||"").includes("white-space")&&this.options.containerStyle.includes("pre")?2:0}function o(t){this.handler=t}var l={trustTags:s("a,abbr,ad,audio,b,blockquote,br,code,col,colgroup,dd,del,dl,dt,div,em,fieldset,h1,h2,h3,h4,h5,h6,hr,i,img,ins,label,legend,li,ol,p,q,ruby,rt,source,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,title,ul,video"),blockTags:s("address,article,aside,body,caption,center,cite,footer,header,html,nav,pre,section"),ignoreTags:s("area,base,canvas,embed,frame,head,iframe,input,link,map,meta,param,rp,script,source,style,textarea,title,track,wbr"),voidTags:s("area,base,br,col,circle,ellipse,embed,frame,hr,img,input,line,link,meta,param,path,polygon,rect,source,track,use,wbr"),entities:{lt:"<",gt:">",quot:'"',apos:"'",ensp:" ",emsp:" ",nbsp:" ",semi:";",ndash:"–",mdash:"—",middot:"·",lsquo:"‘",rsquo:"’",ldquo:"“",rdquo:"”",bull:"•",hellip:"…",larr:"←",uarr:"↑",rarr:"→",darr:"↓"},tagStyle:{address:"font-style:italic",big:"display:inline;font-size:1.2em",caption:"display:table-caption;text-align:center",center:"text-align:center",cite:"font-style:italic",dd:"margin-left:40px",mark:"background-color:yellow",pre:"font-family:monospace;white-space:pre",s:"text-decoration:line-through",small:"display:inline;font-size:0.8em",strike:"text-decoration:line-through",u:"text-decoration:underline"},svgDict:{animatetransform:"animateTransform",lineargradient:"linearGradient",viewbox:"viewBox",attributename:"attributeName",repeatcount:"repeatCount",repeatdur:"repeatDur",foreignobject:"foreignObject"}},h={},c=wx.getSystemInfoSync(),d=c.windowWidth,p=c.system,u=s(" ,\r,\n,\t,\f"),f=0;r.prototype.parse=function(t){for(var i=this.plugins.length;i--;)this.plugins[i].onUpdate&&(t=this.plugins[i].onUpdate(t,l)||t);for(new o(this).parse(t);this.stack.length;)this.popNode();return this.nodes.length>50&&a(this.nodes),this.nodes},r.prototype.expose=function(){for(var t=this.stack.length;t--;){var i=this.stack[t];if(i.c||"a"===i.name||"video"===i.name||"audio"===i.name)return;i.c=1}},r.prototype.hook=function(t){for(var i=this.plugins.length;i--;)if(this.plugins[i].onParse&&!1===this.plugins[i].onParse(t,this))return!1;return!0},r.prototype.getUrl=function(t){var i=this.options.domain;return"/"===t[0]?"/"===t[1]?t=(i?i.split("://")[0]:"http")+":"+t:i&&(t=i+t):!i||t.includes("data:")||t.includes("://")||(t=i+"/"+t),t},r.prototype.parseStyle=function(t){var i=t.attrs,e=(this.tagStyle[t.name]||"").split(";").concat((i.style||"").split(";")),s={},n="";i.id&&!this.xml&&(this.options.useAnchor?this.expose():"img"!==t.name&&"a"!==t.name&&"video"!==t.name&&"audio"!==t.name&&(i.id=void 0)),i.width&&(s.width=parseFloat(i.width)+(i.width.includes("%")?"%":"px"),i.width=void 0),i.height&&(s.height=parseFloat(i.height)+(i.height.includes("%")?"%":"px"),i.height=void 0);for(var a=0,r=e.length;a<r;a++){var o=e[a].split(":");if(!(o.length<2)){var l=o.shift().trim().toLowerCase(),h=o.join(":").trim();if("-"===h[0]&&h.lastIndexOf("-")>0||h.includes("safe"))n+=";".concat(l,":").concat(h);else if(!s[l]||h.includes("import")||!s[l].includes("import")){if(h.includes("url")){var c=h.indexOf("(")+1;if(c){for(;'"'===h[c]||"'"===h[c]||u[h[c]];)c++;h=h.substr(0,c)+this.getUrl(h.substr(c))}}else h.includes("rpx")&&(h=h.replace(/[0-9.]+\s*rpx/g,function(t){return parseFloat(t)*d/750+"px"}));s[l]=h}}}return t.attrs.style=n,s},r.prototype.onTagName=function(t){this.tagName=this.xml?t:t.toLowerCase(),"svg"===this.tagName&&(this.xml=(this.xml||0)+1,l.ignoreTags.style=void 0)},r.prototype.onAttrName=function(t){t=this.xml?t:t.toLowerCase(),"data-"===t.substr(0,5)?"data-src"!==t||this.attrs.src?"img"===this.tagName||"a"===this.tagName?this.attrName=t:this.attrName=void 0:this.attrName="src":(this.attrName=t,this.attrs[t]="T")},r.prototype.onAttrVal=function(t){var i=this.attrName||"";"style"===i||"href"===i?this.attrs[i]=n(t,!0):i.includes("src")?this.attrs[i]=this.getUrl(n(t,!0)):i&&(this.attrs[i]=t)},r.prototype.onOpenTag=function(t){var i=Object.create(null);i.name=this.tagName,i.attrs=this.attrs,this.attrs=Object.create(null);var e=i.attrs,s=this.stack[this.stack.length-1],n=s?s.children:this.nodes,a=this.xml?t:l.voidTags[i.name];if(h[i.name]&&(e.class=h[i.name]+(e.class?" "+e.class:"")),"embed"===i.name){var r=e.src||"";r.includes(".mp4")||r.includes(".3gp")||r.includes(".m3u8")||(e.type||"").includes("video")?i.name="video":(r.includes(".mp3")||r.includes(".wav")||r.includes(".aac")||r.includes(".m4a")||(e.type||"").includes("audio"))&&(i.name="audio"),e.autostart&&(e.autoplay="T"),e.controls="T"}if("video"!==i.name&&"audio"!==i.name||("video"!==i.name||e.id||(e.id="v"+f++),e.controls||e.autoplay||(e.controls="T"),i.src=[],e.src&&(i.src.push(e.src),e.src=void 0),this.expose()),a){if(!this.hook(i)||l.ignoreTags[i.name])return void("base"!==i.name||this.options.domain?"source"===i.name&&s&&("video"===s.name||"audio"===s.name)&&e.src&&s.src.push(e.src):this.options.domain=e.href);var o=this.parseStyle(i);if("img"===i.name){if(e.src&&(e.src.includes("webp")&&(i.webp="T"),e.src.includes("data:")&&"all"!==this.options.previewImg&&!e["original-src"]&&(e.ignore="T"),!e.ignore||i.webp||e.src.includes("cloud://"))){for(var c=this.stack.length;c--;){var p=this.stack[c];"table"!==p.name||i.webp||e.src.includes("cloud://")||(!o.display||o.display.includes("inline")?i.t="inline-block":i.t=o.display,o.display=void 0);var u=p.attrs.style||"";if(!u.includes("flex:")||u.includes("flex:0")||u.includes("flex: 0")||o.width&&!(parseInt(o.width)>100))if(u.includes("flex")&&"100%"===o.width)for(var g=c+1;g<this.stack.length;g++){var m=this.stack[g].attrs.style||"";if(!m.includes(";width")&&!m.includes(" width")&&0!==m.indexOf("width")){o.width="";break}}else u.includes("inline-block")&&(o.width&&"%"===o.width[o.width.length-1]?(p.attrs.style+=";max-width:"+o.width,o.width=""):p.attrs.style+=";max-width:100%");else{o.width="100% !important",o.height="";for(var v=c+1;v<this.stack.length;v++)this.stack[v].attrs.style=(this.stack[v].attrs.style||"").replace("inline-","")}"a"===p.name?i.a=p.attrs:p.c=1}i.i=this.imgList.length;var y=e["original-src"]||e.src;if(this.imgList.includes(y)){var b=y.indexOf("://");if(-1!==b){b+=3;for(var x=y.substr(0,b);b<y.length&&"/"!==y[b];b++)x+=Math.random()>.5?y[b].toUpperCase():y[b];x+=y.substr(b),y=x}}this.imgList.push(y),i.t||(this.imgList._unloadimgs+=1)}"inline"===o.display&&(o.display=""),e.ignore&&(o["max-width"]=o["max-width"]||"100%",e.style+=";-webkit-touch-callout:none"),parseInt(o.width)>d&&(o.height=void 0),isNaN(parseInt(o.width))||(i.w="T"),!isNaN(parseInt(o.height))&&(!o.height.includes("%")||s&&(s.attrs.style||"").includes("height"))&&(i.h="T"),i.w&&i.h&&o["object-fit"]&&("contain"===o["object-fit"]?i.m="aspectFit":"cover"===o["object-fit"]&&(i.m="aspectFill"))}else if("svg"===i.name)return n.push(i),this.stack.push(i),void this.popNode();for(var w in o)o[w]&&(e.style+=";".concat(w,":").concat(o[w].replace(" !important","")));e.style=e.style.substr(1)||void 0}else("pre"===i.name||(e.style||"").includes("white-space")&&e.style.includes("pre"))&&2!==this.pre&&(this.pre=i.pre=1),i.children=[],this.stack.push(i);n.push(i)},r.prototype.onCloseTag=function(t){t=this.xml?t:t.toLowerCase();var i;for(i=this.stack.length;i--&&this.stack[i].name!==t;);if(-1!==i)for(;this.stack.length>i;)this.popNode();else if("p"===t||"br"===t){var e=this.stack.length?this.stack[this.stack.length-1].children:this.nodes;e.push({name:t,attrs:{class:h[t],style:this.tagStyle[t]}})}},r.prototype.popNode=function(){var i=this.stack.pop(),e=i.attrs,s=i.children,n=this.stack[this.stack.length-1],r=n?n.children:this.nodes;if(!this.hook(i)||l.ignoreTags[i.name])return"title"===i.name&&s.length&&"text"===s[0].type&&this.options.setTitle&&wx.setNavigationBarTitle({title:s[0].text}),void r.pop();if(i.pre&&2!==this.pre){this.pre=i.pre=void 0;for(var o=this.stack.length;o--;)this.stack[o].pre&&(this.pre=1)}if("svg"===i.name){if(this.xml>1)return void this.xml--;var h="",c=e.style;return e.style="",e.xmlns="http://www.w3.org/2000/svg",function i(e){if("text"===e.type)return void(h+=e.text);var s=l.svgDict[e.name]||e.name;if("foreignObject"===s){var n,a=t(e.children||[]);try{for(a.s();!(n=a.n()).done;){var r=n.value;if(r.attrs&&!r.attrs.xmlns){r.attrs.xmlns="http://www.w3.org/1999/xhtml";break}}}catch(t){a.e(t)}finally{a.f()}}h+="<"+s;for(var o in e.attrs){var c=e.attrs[o];c&&(h+=" ".concat(l.svgDict[o]||o,'="').concat(c.replace(/"/g,""),'"'))}if(e.children){h+=">";for(var d=0;d<e.children.length;d++)i(e.children[d]);h+="</"+s+">"}else h+="/>"}(i),i.name="img",i.attrs={src:"data:image/svg+xml;utf8,"+h.replace(/#/g,"%23"),style:c,ignore:"T"},i.children=void 0,this.xml=!1,void(l.ignoreTags.style=!0)}var p={};if(e.align&&("table"===i.name?"center"===e.align?p["margin-inline-start"]=p["margin-inline-end"]="auto":p.float=e.align:p["text-align"]=e.align,e.align=void 0),e.dir&&(p.direction=e.dir,e.dir=void 0),"font"===i.name&&(e.color&&(p.color=e.color,e.color=void 0),e.face&&(p["font-family"]=e.face,e.face=void 0),e.size)){var u=parseInt(e.size);isNaN(u)||(u<1?u=1:u>7&&(u=7),p["font-size"]=["x-small","small","medium","large","x-large","xx-large","xxx-large"][u-1]),e.size=void 0}if((e.class||"").includes("align-center")&&(p["text-align"]="center"),Object.assign(p,this.parseStyle(i)),"table"!==i.name&&parseInt(p.width)>d&&(p["max-width"]="100%",p["box-sizing"]="border-box"),l.blockTags[i.name])i.name="div";else if(l.trustTags[i.name]||this.xml)if("a"===i.name||"ad"===i.name)this.expose();else if("video"===i.name||"audio"===i.name)(p.height||"").includes("auto")&&(p.height=void 0),i.children=void 0;else if("ul"!==i.name&&"ol"!==i.name||!i.c)if("table"===i.name){var f=parseFloat(e.cellpadding),g=parseFloat(e.cellspacing),m=parseFloat(e.border),v=p["border-color"],y=p["border-style"];if(i.c&&(isNaN(f)&&(f=2),isNaN(g)&&(g=2)),m&&(e.style+=";border:".concat(m,"px ").concat(y||"solid"," ").concat(v||"gray")),i.flag&&i.c){i.flag=void 0,p.display="grid","collapse"===p["border-collapse"]&&(p["border-collapse"]=void 0,g=0),g?(p["grid-gap"]=g+"px",p.padding=g+"px"):m&&(e.style+=";border-left:0;border-top:0");var b=[],x=[],w=[],k={};!function i(e){for(var s=0;s<e.length;s++)if("tr"===e[s].name)x.push(e[s]);else if("colgroup"===e[s].name){var n,a=1,r=t(e[s].children||[]);try{for(r.s();!(n=r.n()).done;){var o=n.value;if("col"===o.name){var l=o.attrs.style||"",h=l.indexOf("width")?l.indexOf(";width"):0;if(-1!==h){var c=l.indexOf(";",h+6);-1===c&&(c=l.length),b[a]=l.substring(h?h+7:6,c)}a+=1}}}catch(t){r.e(t)}finally{r.f()}}else i(e[s].children||[])}(s);for(var N=1;N<=x.length;N++){for(var T=1,O=0;O<x[N-1].children.length;O++){var j=x[N-1].children[O];if("td"===j.name||"th"===j.name){for(;k[N+"."+T];)T++;j.c=1;var S=j.attrs.style||"",C=S.indexOf("width")?S.indexOf(";width"):0;if(-1!==C){var I=S.indexOf(";",C+6);-1===I&&(I=S.length),j.attrs.colspan||(b[T]=S.substring(C?C+7:6,I)),S=S.substr(0,C)+S.substr(I)}if(S+=";display:flex;flex-direction:column",-1!==(C=S.indexOf("vertical-align"))){var A=S.substr(C+15,10);A.includes("middle")?S+=";justify-content:center":A.includes("bottom")&&(S+=";justify-content:flex-end")}else S+=";justify-content:center";if(-1!==(C=S.indexOf("text-align"))){var L=S.substr(C+11,10);L.includes("center")?S+=";justify-content: center":L.includes("right")&&(S+=";justify-content: right")}if(S=(m?";border:".concat(m,"px ").concat(y||"solid"," ").concat(v||"gray")+(g?"":";border-right:0;border-bottom:0"):"")+(f?";padding:".concat(f,"px"):"")+";"+S,j.attrs.colspan&&(S+=";grid-column-start:".concat(T,";grid-column-end:").concat(T+parseInt(j.attrs.colspan)),j.attrs.rowspan||(S+=";grid-row-start:".concat(N,";grid-row-end:").concat(N+1)),T+=parseInt(j.attrs.colspan)-1),j.attrs.rowspan){S+=";grid-row-start:".concat(N,";grid-row-end:").concat(N+parseInt(j.attrs.rowspan)),j.attrs.colspan||(S+=";grid-column-start:".concat(T,";grid-column-end:").concat(T+1));for(var z=1;z<j.attrs.rowspan;z++)for(var F=0;F<(j.attrs.colspan||1);F++)k[N+z+"."+(T-F)]=1}S&&(j.attrs.style=S),w.push(j),T++}}if(1===N){for(var U="",q=1;q<T;q++)U+=(b[q]?b[q]:"auto")+" ";p["grid-template-columns"]=U}}i.children=w}else i.c&&(p.display="table"),isNaN(g)||(p["border-spacing"]=g+"px"),(m||f||i.c)&&function t(e){for(var s=0;s<e.length;s++){var n=e[s];i.c&&(n.c=1),"th"===n.name||"td"===n.name?(m&&(n.attrs.style="border:".concat(m,"px ").concat(y||"solid"," ").concat(v||"gray",";").concat(n.attrs.style||"")),f&&(n.attrs.style="padding:".concat(f,"px;").concat(n.attrs.style||""))):n.children&&t(n.children)}}(s);if(this.options.scrollTable&&!(e.style||"").includes("inline")){var V=Object.assign({},i);i.name="div",i.attrs={style:"overflow-x:auto;padding:1px"},i.children=[V],e=V.attrs}}else if(("tbody"===i.name||"tr"===i.name)&&i.flag&&i.c)i.flag=void 0,function t(i){for(var e=0;e<i.length;e++)if("td"===i[e].name)for(var s=0,n=["color","background","background-color"];s<n.length;s++){var a=n[s];p[a]&&(i[e].attrs.style=a+":"+p[a]+";"+(i[e].attrs.style||""))}else t(i[e].children||[])}(s);else if("td"!==i.name&&"th"!==i.name||!e.colspan&&!e.rowspan){if("ruby"===i.name){i.name="span";for(var D=0;D<s.length-1;D++)"text"===s[D].type&&"rt"===s[D+1].name&&(s[D]={name:"span",attrs:{style:"display:inline-block;text-align:center"},children:[{name:"div",attrs:{style:"font-size:50%;"+(s[D+1].attrs.style||"")},children:s[D+1].children},s[D]]},s.splice(D+1,1))}}else for(var B=this.stack.length;B--;)"table"!==this.stack[B].name&&"tbody"!==this.stack[B].name&&"tr"!==this.stack[B].name||(this.stack[B].flag=1);else{var M={a:"lower-alpha",A:"upper-alpha",i:"lower-roman",I:"upper-roman"};M[e.type]&&(e.style+=";list-style-type:"+M[e.type],e.type=void 0),i.c=1;for(var P=s.length;P--;)"li"===s[P].name&&(s[P].c=1)}else i.name="span";if((p.display||"").includes("flex")&&!i.c)for(var Z=s.length;Z--;){var _=s[Z];_.f&&(_.attrs.style=(_.attrs.style||"")+_.f,_.f=void 0)}var E=n&&((n.attrs.style||"").includes("flex")||(n.attrs.style||"").includes("grid"))&&!i.c&&!(p.display||"").includes("inline");E&&(i.f=";max-width:100%"),s.length>=50&&i.c&&!(p.display||"").includes("flex")&&a(s);for(var G in p)if(p[G]){var W=";".concat(G,":").concat(p[G].replace(" !important",""));E&&(G.includes("flex")&&"flex-direction"!==G||"align-self"===G||G.includes("grid")||"-"===p[G][0]||G.includes("width")&&W.includes("%"))?(i.f+=W,"width"===G&&(e.style+=";width:100%")):e.style+=W}e.style=e.style.substr(1)||void 0},r.prototype.onText=function(t){if(!this.pre){for(var i,e="",s=0,a=t.length;s<a;s++)u[t[s]]?(" "!==e[e.length-1]&&(e+=" "),"\n"!==t[s]||i||(i=!0)):e+=t[s];if(" "===e&&i)return;t=e}var r=Object.create(null);if(r.type="text",r.text=n(t),this.hook(r)){"force"===this.options.selectable&&p.includes("iOS")&&!wx.canIUse("rich-text.user-select")&&this.expose();(this.stack.length?this.stack[this.stack.length-1].children:this.nodes).push(r)}},o.prototype.parse=function(t){this.content=t||"",this.i=0,this.start=0,this.state=this.text;for(var i=this.content.length;-1!==this.i&&this.i<i;)this.state()},o.prototype.checkClose=function(t){var i="/"===this.content[this.i];return!!(">"===this.content[this.i]||i&&">"===this.content[this.i+1])&&(t&&this.handler[t](this.content.substring(this.start,this.i)),this.i+=i?2:1,this.start=this.i,this.handler.onOpenTag(i),"script"===this.handler.tagName?(this.i=this.content.indexOf("</",this.i),-1!==this.i&&(this.i+=2,this.start=this.i),this.state=this.endTag):this.state=this.text,!0)},o.prototype.text=function(){if(this.i=this.content.indexOf("<",this.i),-1===this.i)return void(this.start<this.content.length&&this.handler.onText(this.content.substring(this.start,this.content.length)));var t=this.content[this.i+1];if(t>="a"&&t<="z"||t>="A"&&t<="Z")this.start!==this.i&&this.handler.onText(this.content.substring(this.start,this.i)),this.start=++this.i,this.state=this.tagName;else if("/"===t||"!"===t||"?"===t){this.start!==this.i&&this.handler.onText(this.content.substring(this.start,this.i));var i=this.content[this.i+2];if("/"===t&&(i>="a"&&i<="z"||i>="A"&&i<="Z"))return this.i+=2,this.start=this.i,void(this.state=this.endTag);var e="--\x3e";"!"===t&&"-"===this.content[this.i+2]&&"-"===this.content[this.i+3]||(e=">"),this.i=this.content.indexOf(e,this.i),-1!==this.i&&(this.i+=e.length,this.start=this.i)}else this.i++},o.prototype.tagName=function(){if(u[this.content[this.i]]){for(this.handler.onTagName(this.content.substring(this.start,this.i));u[this.content[++this.i]];);this.i<this.content.length&&!this.checkClose()&&(this.start=this.i,this.state=this.attrName)}else this.checkClose("onTagName")||this.i++},o.prototype.attrName=function(){var t=this.content[this.i];if(u[t]||"="===t){this.handler.onAttrName(this.content.substring(this.start,this.i));for(var i="="===t,e=this.content.length;++this.i<e;)if(t=this.content[this.i],!u[t]){if(this.checkClose())return;if(i)return this.start=this.i,void(this.state=this.attrVal);if("="!==this.content[this.i])return this.start=this.i,void(this.state=this.attrName);i=!0}}else this.checkClose("onAttrName")||this.i++},o.prototype.attrVal=function(){var t=this.content[this.i],i=this.content.length;if('"'===t||"'"===t){if(this.start=++this.i,this.i=this.content.indexOf(t,this.i),-1===this.i)return;this.handler.onAttrVal(this.content.substring(this.start,this.i))}else for(;this.i<i;this.i++){if(u[this.content[this.i]]){this.handler.onAttrVal(this.content.substring(this.start,this.i));break}if(this.checkClose("onAttrVal"))return}for(;u[this.content[++this.i]];);this.i<i&&!this.checkClose()&&(this.start=this.i,this.state=this.attrName)},o.prototype.endTag=function(){var t=this.content[this.i];if(u[t]||">"===t||"/"===t){if(this.handler.onCloseTag(this.content.substring(this.start,this.i)),">"!==t&&(this.i=this.content.indexOf(">",this.i),-1===this.i))return;this.start=++this.i,this.state=this.text}else this.i++},module.exports=r; \ No newline at end of file diff --git a/src/pages/article/index.json b/src/pages/article/index.json new file mode 100644 index 0000000..511f5e0 --- /dev/null +++ b/src/pages/article/index.json @@ -0,0 +1,10 @@ +{ + "navigationStyle": "default", + "navigationBarTitleText": "详情", + "usingComponents": { + "van-slider": "@vant/weapp/slider/index", + "van-popup": "@vant/weapp/popup/index", + "mp-html": "mp-html", + "global-toast":"/components/global-toast/index" + } +} diff --git a/src/pages/article/index.scss b/src/pages/article/index.scss new file mode 100644 index 0000000..8a33293 --- /dev/null +++ b/src/pages/article/index.scss @@ -0,0 +1,257 @@ +.page { + padding: 48rpx 20rpx 200rpx; + + .page-title { + font-size: 44rpx; + color: #222222; + font-weight: bold; + line-height: 48rpx; + } + + .page-info { + display: flex; + align-items: center; + justify-content: space-between; + .page-date { + margin-top: 24rpx; + font-size: 28rpx; + color: #999999; + } + .view-num { + font-size: 28rpx; + color: #999999; + display: flex; + align-items: center; + gap: 12rpx; + .icon { + width: 28rpx; + height: 28rpx; + } + } + } + + .audio-bar { + margin-top: 32rpx; + padding: 32rpx; + --slider-disabled-opacity: 1; + background-color: #f9fafb; + border-radius: 24rpx; + + .a-header { + display: flex; + align-items: center; + justify-content: space-between; + + .wrap { + line-height: 1; + + .name { + font-size: 32rpx; + color: #000000; + font-weight: bold; + } + + .date { + margin-top: 12rpx; + font-size: 24rpx; + color: #65686c; + } + } + + .icon { + width: 64rpx; + height: 64rpx; + } + } + + .progress { + display: block; + margin-top: 30rpx; + .custom-button { + position: relative; + flex-shrink: 0; + width: 20rpx; + height: 20rpx; + background: #ffffff; + border-radius: 50%; + border: 2rpx solid #3795f7; + box-sizing: border-box; + &::after { + content: ''; + display: block; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 64rpx; + height: 64rpx; + background-color: transparent; + } + } + } + } + + .rich { + margin-top: 32rpx; + } + + .quick-article { + margin-top: 24rpx; + padding: 26rpx 32rpx; + background: #f9fafb; + line-height: 48rpx; + border-radius: 16rpx 16rpx 16rpx 16rpx; + color: #3795f7; + font-size: 36rpx; + + .label { + color: #3795f7; + } + } + + .type { + margin-top: 48rpx; + display: flex; + align-items: center; + flex-wrap: wrap; + gap: 24rpx; + + .label { + font-size: 32rpx; + color: #999999; + } + + .item { + padding: 6rpx 24rpx; + border-radius: 40rpx; + font-size: 32rpx; + color: #fff; + background-color: #3795f7; + } + } + + .footer { + position: fixed; + bottom: 0; + left: 0; + width: 100%; + padding: 30rpx 30rpx calc(30rpx + env(safe-area-inset-bottom)); + display: flex; + align-items: center; + justify-content: space-between; + box-shadow: 0 -6rpx 32.8rpx rgba(0, 0, 0, 0.1); + background: #ffffff; + + .item { + position: relative; + flex: 1; + display: flex; + align-items: center; + justify-content: center; + gap: 12rpx; + font-size: 36rpx; + + .icon { + width: 56rpx; + height: 56rpx; + } + .item-tip { + position: absolute; + left: 0; + top: -45rpx; + transform: translateY(-100%); + padding: 16rpx 32rpx; + font-size: 36rpx; + color: #ffffff; + background: rgba(0, 0, 0, 0.8); + border-radius: 8rpx 8rpx 8rpx 8rpx; + white-space: nowrap; + .close { + position: absolute; + top: -12rpx; + right: -12rpx; + width: 36rpx; + height: 36rpx; + } + &::after { + content: ''; + position: absolute; + bottom: -10rpx; + left: 40%; + width: 0; + height: 0; + border-left: 12rpx solid transparent; + border-right: 12rpx solid transparent; + border-top: 12rpx solid rgba(0, 0, 0, 0.9); + } + } + } + } +} + +.popup-directory { + .p-close-line { + padding: 36rpx 32rpx; + display: flex; + justify-content: flex-end; + .option { + font-size: 32rpx; + color: #999999; + .icon { + margin-left: 10rpx; + width: 24rpx; + height: 24rpx; + transform: rotate(180deg); + } + } + } + .p-title { + padding: 0 32rpx; + font-size: 44rpx; + color: #222222; + font-weight: bold; + } + .p-type { + padding: 32rpx; + display: flex; + align-items: center; + flex-wrap: wrap; + + .label { + font-size: 32rpx; + color: #999999; + } + + .item { + border-radius: 40rpx; + font-size: 32rpx; + color: #3795f7; + } + } + .p-scroll { + max-height: 50vh; + font-size: 36rpx; + .row { + padding: 32rpx; + position: relative; + &::after { + position: absolute; + bottom: 0; + left: 32rpx; + content: ''; + width: calc(100% - 64rpx); + height: 1px; + background-color: #f0f0f0; + } + &:last-of-type::after { + display: none; + } + &.current { + background: rgba(55, 149, 247, 0.06); + } + } + .place-row { + height: 120rpx; + } + } +} diff --git a/src/pages/article/index.ts b/src/pages/article/index.ts new file mode 100644 index 0000000..28cdc84 --- /dev/null +++ b/src/pages/article/index.ts @@ -0,0 +1,349 @@ +import { decryptData } from '@/utils/crypto'; +const app = getApp<IAppOption>(); + +Page({ + data: { + show: false, + BookId: '', + ChapterId: '', + chapterList: [], + + book: {} as any, + chapter: {} as any, + prevAndNext: {} as any, + + progress: 0, + url: 'http://m10.music.126.net/20241126110303/3f2481d2d6d50acd2009359539eadda0/ymusic/5353/0f0f/0358/d99739615f8e5153d77042092f07fd77.mp3', + play: false, + time: '00:00/00:00', + currentTime: 0, + drag: false, + + chapterTip: false, + + toastShow: false, + toastType: 3, + previewImg: true, + + listener: false, + globalStop: false, + }, + BackgroundAudioManager: null as WechatMiniprogram.BackgroundAudioManager | null, + onLoad(options) { + this.BackgroundAudioManager = wx.getBackgroundAudioManager(); + this.setData({ + BookId: options.id, + globalStop: this.BackgroundAudioManager.paused, + }); + if (options.cid) { + this.setData({ + ChapterId: options.cid, + }); + } + const previewImg = !['mac', 'windows'].includes(wx.getDeviceInfo().platform); + this.setData({ + previewImg, + }); + + app.waitLogin(false, true).then(() => { + this.getChapterList(); + this.getDetail(); + }); + }, + getChapterList() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/book/chapter-list', + data: { + BookId: this.data.BookId, + }, + }).then((res) => { + this.setData({ + chapterList: res.list, + }); + }); + }, + getDetail() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/book/detail', + data: { + BookId: this.data.BookId, + ChapterId: this.data.ChapterId, + }, + showMsg: false, + }) + .then((res) => { + if (res.chapter.content_encrypt === 1) { + res.chapter.Content = decryptData(res.chapter.Content); + } + this.setData({ + book: { + ...res.book, + PublishDate: res.book.PublishTime.split(' ')[0], + }, + chapter: res.chapter, + prevAndNext: { + prev: Array.isArray(res.prevAndNext.prev) ? null : res.prevAndNext.prev, + next: Array.isArray(res.prevAndNext.next) ? null : res.prevAndNext.next, + }, + ChapterId: res.chapter.Id, + show: !this.data.ChapterId, + }); + if (res.chapter.AudioUrl?.url) { + const time = `00:00/${this.formatTime(res.chapter.AudioUrl.duration)}`; + this.setData({ + time, + }); + } + wx.setNavigationBarTitle({ + title: res.book.BookName, + }); + this.handleView(); + this.initBackgroundAudioManager(); + }) + .catch((err) => { + if (err.data.code === 403) { + this.setData({ + toastShow: true, + toastType: 3, + }); + } + }); + }, + handleView() { + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/add-browse-record', + data: { + BookId: this.data.BookId, + ChapterId: this.data.ChapterId, + }, + }); + }, + handleDirectory() { + this.setData({ + show: true, + }); + }, + handleSwitchDirectory(e) { + const { id } = e.currentTarget.dataset; + this.setData({ + ChapterId: id, + }); + this.getDetail(); + this.onClose(); + }, + onClose() { + const chapterTip = !wx.getStorageSync('chapterTip'); + this.setData({ + show: false, + chapterTip, + }); + if (chapterTip) { + setTimeout(() => { + this.handleTipClsoe(); + }, 5000); + } + }, + + handleCollect() { + const { Id } = this.data.book; + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/collect', + data: { BookId: Id }, + }).then(() => { + wx.showToast({ + title: '您已收藏这本书,可在我的页查看', + icon: 'none', + }); + this.setData({ + [`book.IsCollect`]: 1, + }); + }); + }, + handleUnCollect() { + const { Id } = this.data.book; + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/cancel-collect', + data: { BookId: Id }, + }).then(() => { + wx.showToast({ + title: '取消收藏', + icon: 'none', + }); + this.setData({ + [`book.IsCollect`]: 0, + }); + }); + }, + initBackgroundAudioManager() { + const { chapter } = this.data; + if (this.BackgroundAudioManager) { + if (this.BackgroundAudioManager.src === chapter.AudioUrl.url && !this.BackgroundAudioManager.paused) { + this.setData({ + play: true, + }); + this.backgroundAudioManagerListener(); + } else { + this.backgroundAudioManagerListener(); + this.setData({ + play: false, + progress: 0, + currentTime: 0, + }); + } + } + }, + backgroundAudioManagerListener() { + const { chapter } = this.data; + if (!this.BackgroundAudioManager) return; + const timeUpdateListener = () => { + const isCurrent = this.BackgroundAudioManager?.src === chapter.AudioUrl.url; + if (this.BackgroundAudioManager && !this.data.drag && this.data.play && isCurrent) { + const { currentTime, duration } = this.BackgroundAudioManager; + const time = `${this.formatTime(currentTime)}/${this.formatTime(duration)}`; + const progress = (currentTime / duration) * 100; + this.setData({ + time, + progress, + currentTime, + }); + } + }; + const endedListener = () => { + const time = `00:00/${this.formatTime(chapter.AudioUrl.duration)}`; + this.setData({ + play: false, + progress: 0, + time, + currentTime: 0, + globalStop: true, + }); + }; + const playListener = () => { + const isCurrent = this.BackgroundAudioManager?.src === chapter.AudioUrl.url; + if (!isCurrent) return; + this.setData({ + play: true, + }); + }; + const pauseListener = () => { + this.setData({ + play: false, + }); + }; + const stopListener = () => { + const time = `00:00/${this.formatTime(chapter.AudioUrl.duration)}`; + this.setData({ + play: false, + globalStop: true, + progress: 0, + time, + currentTime: 0, + }); + }; + this.BackgroundAudioManager.onTimeUpdate(timeUpdateListener); + this.BackgroundAudioManager.onEnded(endedListener); + this.BackgroundAudioManager.onPlay(playListener); + this.BackgroundAudioManager.onPause(pauseListener); + this.BackgroundAudioManager.onStop(stopListener); + this.setData({ + listener: true, + }); + }, + handlePlay() { + const { chapter, currentTime, play, listener, globalStop } = this.data; + if (play) return; + if (this.BackgroundAudioManager) { + if (this.BackgroundAudioManager.src !== chapter.AudioUrl.url || globalStop) { + this.BackgroundAudioManager.title = chapter.ChapterName; + this.BackgroundAudioManager.coverImgUrl = chapter.CoverUrl; + this.BackgroundAudioManager.src = chapter.AudioUrl.url; + } else { + this.BackgroundAudioManager.play(); + this.BackgroundAudioManager.seek(this.BackgroundAudioManager.currentTime || currentTime); + } + if (!listener) { + this.backgroundAudioManagerListener(); + } + } + this.setData({ + globalStop: false, + }); + }, + handlePause() { + const { play } = this.data; + if (this.BackgroundAudioManager && play) { + this.setData({ + play: false, + }); + this.BackgroundAudioManager.pause(); + } + }, + handleDragStart() { + this.setData({ + drag: true, + }); + }, + handleDragEnd() { + this.setData({ + drag: false, + }); + if (this.data.play) { + this.BackgroundAudioManager?.seek(this.data.currentTime); + } + }, + handleDrag(e: any) { + const current = e.detail.value; + const duration = this.BackgroundAudioManager?.duration || this.data.chapter.AudioUrl.duration; + const currentTime = (current / 100) * duration; + const time = `${this.formatTime(currentTime)}/${this.formatTime(duration)}`; + this.setData({ + time, + currentTime, + }); + }, + formatTime(time: number) { + const minutes = Math.floor(time / 60); + const seconds = Math.floor(time % 60); + return `${minutes < 10 ? `0${minutes}` : minutes}:${seconds < 10 ? `0${seconds}` : seconds}`; + }, + handleAuthClose() { + this.setData({ + toastShow: false, + }); + wx.navigateBack({ + fail() { + wx.reLaunch({ + url: '/pages/classify/index', + }); + }, + }); + }, + handleAuthConform() { + const { BookId, ChapterId } = this.data; + const backPath = `/pages/article/index?id=${BookId}&cid=${ChapterId}`; + app.globalData.backPath = backPath; + wx.navigateTo({ + url: '/pages/login/index?back=1', + }); + }, + handleType() { + wx.redirectTo({ + url: `/pages/classify/index?id=${this.data.chapter.CateId}`, + }); + }, + handleTipClsoe() { + if (this.data.chapterTip) { + wx.setStorageSync('chapterTip', 'open'); + } + this.setData({ + chapterTip: false, + }); + }, +}); + +export {}; diff --git a/src/pages/article/index.wxml b/src/pages/article/index.wxml new file mode 100644 index 0000000..79e5c4e --- /dev/null +++ b/src/pages/article/index.wxml @@ -0,0 +1,125 @@ +<page-meta page-style="{{ show ? 'overflow: hidden;' : '' }}" /> +<view class="page"> + <view class="page-title">{{chapter.ChapterName}}</view> + <view class="page-info"> + <view class="page-date">{{book.PublishDate}}</view> + <!-- <view class="view-num"> + <image class="icon" src="{{imageUrl}}icon-eye.png?t={{Timestamp}}"></image> + {{~~book.OperateNum + ~~book.BrowseNum}} + </view> --> + </view> + <view class="audio-bar" wx:if="{{chapter.AudioUrl}}"> + <view class="a-header"> + <view class="wrap"> + <view class="name">概要解读</view> + <view class="date">{{time}}</view> + </view> + <image + bind:tap="handlePause" + wx:if="{{play}}" + class="icon" + src="{{imageUrl}}icon-stop.png?t={{Timestamp}}" + ></image> + <image bind:tap="handlePlay" wx:else class="icon" src="{{imageUrl}}icon-play.png?t={{Timestamp}}"></image> + </view> + <van-slider + class="progress" + custom-class="progress" + step="0.001" + value="{{progress}}" + bar-height="12rpx" + active-color="#3795F7" + inactive-color="#FFFFFF" + use-button-slot + bind:drag-start="handleDragStart" + bind:drag-end="handleDragEnd" + bind:drag="handleDrag" + > + <view class="custom-button" slot="button"></view> + </van-slider> + </view> + <view class="rich"> + <mp-html + content="{{chapter.Content}}" + scroll-table="{{true}}" + preview-img="{{previewImg}}" + show-img-menu="{{false}}" + ></mp-html> + </view> + <view + class="quick-article" + wx:if="{{prevAndNext.prev}}" + bind:tap="handleSwitchDirectory" + data-id="{{prevAndNext.prev.Id}}" + > + <text class="label">上一篇:</text> + {{prevAndNext.prev.ChapterName}} + </view> + <view + class="quick-article" + wx:if="{{prevAndNext.next}}" + bind:tap="handleSwitchDirectory" + data-id="{{prevAndNext.next.Id}}" + > + <text class="label">下一篇:</text> + {{prevAndNext.next.ChapterName}} + </view> + <view class="type" wx:if="{{chapter.CateName}}" bind:tap="handleType"> + <view class="label">分类</view> + <view class="item">{{chapter.CateName}}</view> + </view> + + <view class="footer"> + <view class="item" bind:tap="handleDirectory"> + <image class="icon" src="{{imageUrl}}icon-directory.png?t={{Timestamp}}"></image> + 目录 + <view class="item-tip" catch:tap="handleTipClsoe" wx:if="{{chapterTip}}"> + 查看全文目录,可点击这里 + <image class="close" src="{{imageUrl}}item-tip-close.png?t={{Timestamp}}"></image> + </view> + </view> + <view class="item" wx:if="{{book.IsCollect===1}}" bind:tap="handleUnCollect"> + <image class="icon" src="{{imageUrl}}icon-collection-active.png?t={{Timestamp}}"></image> + 取消收藏 + </view> + <view class="item" wx:else bind:tap="handleCollect"> + <image class="icon" src="{{imageUrl}}icon-collection1.png?t={{Timestamp}}"></image> + 收藏 + </view> + </view> +</view> + +<van-popup show="{{ show }}" round position="bottom" bind:close="onClose"> + <view class="popup-directory"> + <view class="p-close-line" bind:tap="onClose"> + <view class="option"> + 目录收起 + <image class="icon" src="{{imageUrl}}fold-up.png?t={{Timestamp}}"></image> + </view> + </view> + <view class="p-title">{{book.BookName}}</view> + <view class="p-type" wx:if="{{chapter.CateName}}" bind:tap="handleType"> + <view class="label">分类:</view> + <view class="item">{{chapter.CateName}}</view> + </view> + <scroll-view class="p-scroll" scroll-y scroll-into-view="row{{ChapterId}}"> + <view + class="row {{ChapterId === item.Id && 'current'}} row{{ item.Id }}" + wx:for="{{chapterList}}" + wx:key="Id" + bind:tap="handleSwitchDirectory" + data-id="{{item.Id}}" + > + {{index+1}}. {{item.ChapterName}} + </view> + <view class="place-row"></view> + </scroll-view> + </view> +</van-popup> + +<global-toast + show="{{toastShow}}" + type="{{toastType}}" + bind:close="handleAuthClose" + bind:conform="handleAuthConform" +></global-toast> diff --git a/src/pages/classify/index.json b/src/pages/classify/index.json new file mode 100644 index 0000000..abf9db4 --- /dev/null +++ b/src/pages/classify/index.json @@ -0,0 +1,8 @@ +{ + "navigationStyle": "default", + "navigationBarTitleText": "", + "usingComponents": { + "van-icon": "@vant/weapp/icon/index", + "van-divider": "@vant/weapp/divider/index" + } +} diff --git a/src/pages/classify/index.scss b/src/pages/classify/index.scss new file mode 100644 index 0000000..ccd2d58 --- /dev/null +++ b/src/pages/classify/index.scss @@ -0,0 +1,137 @@ +page { + background-color: #f3f4f5; +} +.page { + padding-top: 100rpx; + padding-bottom: 80rpx; + + .scroll { + position: fixed; + top: 0; + left: 0; + z-index: 100000000000; + width: 100%; + background-color: #fff; + } + .nav { + padding: 0 16rpx; + display: flex; + background-color: #fff; + &::-webkit-scrollbar { + display: none; + } + .nav-item { + flex-shrink: 0; + padding: 32rpx 16rpx; + font-size: 36rpx; + color: #222222; + line-height: 36rpx; + &.active { + font-size: 36rpx; + color: #3795f7; + font-weight: bold; + position: relative; + &::after { + position: absolute; + bottom: 0; + left: 50%; + transform: translateX(-50%); + content: ''; + width: 44rpx; + height: 8rpx; + background: #3795f7; + border-radius: 0rpx 0rpx 0rpx 0rpx; + } + } + } + } + .types { + padding: 32rpx 32rpx 0; + display: flex; + gap: 16rpx; + flex-wrap: wrap; + .type { + min-width: 160rpx; + padding: 8rpx 10rpx; + box-sizing: border-box; + font-size: 32rpx; + color: #65686c; + line-height: 40rpx; + background-color: #fff; + border-radius: 8rpx; + text-align: center; + &.active { + color: #fff; + background-color: #3795f7; + } + } + } + .der { + margin-top: 32rpx; + font-size: 28rpx; + color: #999999; + text-align: center; + } + .card { + margin: 32rpx 32rpx 24rpx; + padding: 24rpx; + display: flex; + gap: 24rpx; + background: linear-gradient(173deg, #ffffff 0%, #eff7ff 100%); + border-radius: 24rpx 24rpx 24rpx 24rpx; + border: 2rpx solid #ffffff; + &:last-of-type { + margin-bottom: 0; + } + .photo { + flex-shrink: 0; + width: 218rpx; + height: 218rpx; + border-radius: 16rpx; + } + .c-container { + flex: 1; + display: flex; + flex-direction: column; + justify-content: space-between; + .title { + font-size: 36rpx; + color: #222222; + font-weight: bold; + line-height: 48rpx; + } + .type { + margin-top: 16rpx; + flex: 1; + font-size: 32rpx; + color: #999999; + } + .stat { + margin-top: 42rpx; + display: flex; + align-items: center; + justify-content: space-between; + gap: 40rpx; + .s-item { + display: flex; + align-items: center; + gap: 8rpx; + font-size: 28rpx; + color: #999999; + .icon { + width: 32rpx; + height: 32rpx; + } + &.active { + color: #3795f7; + } + } + } + } + } + .none { + display: block; + margin: 30rpx auto; + width: 80%; + } +} diff --git a/src/pages/classify/index.ts b/src/pages/classify/index.ts new file mode 100644 index 0000000..47f34fd --- /dev/null +++ b/src/pages/classify/index.ts @@ -0,0 +1,200 @@ +const app = getApp<IAppOption>(); + +Page({ + data: { + background: 'transparent', + + list: [], + pagination: { + page: 1, + pages: 1, + count: 1, + }, + recommendList: [], + recommendPagination: { + page: 1, + pages: 1, + count: 0, + }, + + cateList: [] as any, + CateId: '', + CateSecondId: '', + cateSecondList: [] as any, + + scrollIntoView: '', + }, + onLoad(options) { + this.setData({ + CateId: options.id || '', + }); + app.waitLogin().then(() => { + this.getCateList(); + this.cateCallback(this.data.CateId, this.data.CateSecondId); + }); + }, + getCateList() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/book/cate-list', + data: {}, + }).then((res) => { + this.setData({ + cateList: res, + }); + if (this.data.CateId) { + this.setData({ + cateSecondList: res.find((item: any) => item.Id === this.data.CateId)?.Children || [], + scrollIntoView: `nav-item${this.data.CateId}`, + }); + } + }); + }, + handleCate(e) { + const { index } = e.currentTarget.dataset; + if (typeof index === 'number') { + this.setData({ + CateId: this.data.cateList[index].Id, + CateSecondId: '', + cateSecondList: this.data.cateList[index].Children, + }); + } else { + this.setData({ CateId: '', CateSecondId: '', cateSecondList: [] }); + } + this.cateCallback(this.data.CateId, this.data.CateSecondId); + }, + handleSecondCate(e) { + const { index } = e.currentTarget.dataset; + if (typeof index === 'number') { + this.setData({ + CateSecondId: this.data.cateSecondList[index].Id, + }); + } else { + this.setData({ CateSecondId: '' }); + } + this.cateCallback(this.data.CateId, this.data.CateSecondId); + }, + cateCallback(CateId, CateSecondId) { + this.setData({ + list: [], + pagination: { + page: 1, + pages: 1, + count: 1, + }, + recommendList: [], + recommendPagination: { + page: 1, + pages: 1, + count: this.data.CateSecondId ? 1 : 0, + }, + }); + this.getList(1, CateId, CateSecondId); + if (CateId && CateSecondId) { + this.getRecommendList(1, CateId, CateSecondId); + } + }, + getList(newPage = 1, CateId, CateSecondId) { + wx.ajax({ + method: 'GET', + url: `?r=shizhong/book/list`, + data: { + page: newPage, + CateId, + CateSecondId, + }, + }).then((res) => { + const list = res.page === 1 ? res.list : [...this.data.list, ...res.list]; + this.setData({ + list, + pagination: { + page: res.page, + pages: res.pages, + count: res.count, + }, + }); + }); + }, + getRecommendList(newPage = 1, CateId, CateSecondId) { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/book/recommend-list', + data: { + CateId, + CateSecondId, + page: newPage, + }, + }).then((res) => { + const recommendList = res.page === 1 ? res.list : [...this.data.recommendList, ...res.list]; + this.setData({ + recommendList, + recommendPagination: { + page: res.page, + pages: res.pages, + count: res.count, + }, + }); + }); + }, + onReachBottom() { + const { page, pages } = this.data.pagination; + const { page: rPage, pages: rPages } = this.data.recommendPagination; + if (pages > page && this.data.list.length) { + this.getList(page + 1, this.data.CateId, this.data.CateSecondId); + } else if (rPages > rPage && this.data.recommendList.length && this.data.CateId && this.data.CateSecondId) { + this.getRecommendList(rPage + 1, this.data.CateId, this.data.CateSecondId); + } + }, + handleCollect(e) { + const { index, list } = e.currentTarget.dataset; + const { Id } = this.data[list][index]; + app.waitLogin(false, true).then(() => { + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/collect', + data: { BookId: Id }, + }).then(() => { + wx.showToast({ + title: '您已收藏这本书,可在我的页查看', + icon: 'none', + }); + this.setData({ + [`${list}[${index}].IsCollect`]: '1', + }); + }); + }); + }, + handleUnCollect(e) { + const { index, list } = e.currentTarget.dataset; + const { Id } = this.data[list][index]; + app.waitLogin(false, true).then(() => { + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/cancel-collect', + data: { BookId: Id }, + }).then(() => { + wx.showToast({ + title: '取消收藏', + icon: 'none', + }); + this.setData({ + [`${list}[${index}].IsCollect`]: '0', + }); + }); + }); + }, + handleDetail(e) { + const { id } = e.currentTarget.dataset; + const backPath = `/pages/article/index?id=${id}`; + app.waitLogin(false, true, backPath).then(() => { + wx.navigateTo({ + url: backPath, + }); + }); + }, + handleBack() { + wx.navigateBack(); + }, +}); + +export {}; diff --git a/src/pages/classify/index.wxml b/src/pages/classify/index.wxml new file mode 100644 index 0000000..e5fe9c0 --- /dev/null +++ b/src/pages/classify/index.wxml @@ -0,0 +1,102 @@ +<view class="page"> + <scroll-view class="scroll" scroll-x scroll-into-view="{{scrollIntoView}}"> + <view class="nav"> + <view class="nav-item {{!CateId && 'active'}}" bind:tap="handleCate">全部</view> + <view + class="nav-item {{CateId=== item.Id &&'active'}}" + wx:for="{{cateList}}" + wx:key="Id" + bind:tap="handleCate" + data-index="{{index}}" + id="nav-item{{item.Id}}" + > + {{item.CateName}} + </view> + </view> + </scroll-view> + + <view class="types" wx:if="{{CateId && cateSecondList.length}}"> + <view class="type {{!CateSecondId && 'active'}}" bind:tap="handleSecondCate">全部</view> + <view + class="type {{CateSecondId=== item.Id && 'active'}}" + wx:for="{{cateSecondList}}" + wx:key="Id" + bind:tap="handleSecondCate" + data-index="{{index}}" + > + {{item.CateName}} + </view> + </view> + <view class="card" wx:for="{{list}}" wx:key="Id" data-id="{{item.Id}}" bind:tap="handleDetail"> + <image class="photo" mode="aspectFill" src="{{item.CoverUrl}}"></image> + <view class="c-container"> + <view class="title">{{item.BookName}}</view> + <view class="type">{{item.CateName}}{{item.CateSecondName ? '/'+item.CateSecondName : ''}}</view> + <view class="stat"> + <view class="s-item"> + <!-- <image class="icon" src="{{imageUrl}}icon-eye.png?t={{Timestamp}}"></image> --> + 阅读 {{~~item.OperateNum + ~~item.BrowseNum}} + </view> + <view + class="s-item active" + wx:if="{{item.IsCollect === '1'}}" + catch:tap="handleUnCollect" + data-index="{{index}}" + data-list="list" + > + <image class="icon" src="{{imageUrl}}icon-collection-active.png?t={{Timestamp}}"></image> + 已收藏 + </view> + <view class="s-item" wx:else catch:tap="handleCollect" data-index="{{index}}" data-list="list"> + <image class="icon" src="{{imageUrl}}icon-collection.png?t={{Timestamp}}"></image> + 收藏 + </view> + </view> + </view> + </view> + <block wx:if="{{pagination.page >= pagination.pages}}"> + <view class="der" wx:if="{{recommendList.length}}">— — 以下为本分类下其他内容 — —</view> + <view class="card" wx:for="{{recommendList}}" wx:key="Id" bind:tap="handleDetail" data-id="{{item.Id}}"> + <image class="photo" mode="aspectFill" src="{{item.CoverUrl}}"></image> + <view class="c-container"> + <view class="title">{{item.BookName}}</view> + <view class="type">{{item.CateName}}{{item.CateSecondName ? '/'+item.CateSecondName : ''}}</view> + <view class="stat"> + <view class="s-item"> + <!-- <image class="icon" src="{{imageUrl}}icon-eye.png?t={{Timestamp}}"></image> --> + 阅读 {{~~item.OperateNum + ~~item.BrowseNum}} + </view> + <view + class="s-item active" + wx:if="{{item.IsCollect === '1'}}" + catch:tap="handleUnCollect" + data-index="{{index}}" + data-list="recommendList" + > + <image class="icon" src="{{imageUrl}}icon-collection-active.png?t={{Timestamp}}"></image> + 已收藏 + </view> + <view class="s-item" wx:else catch:tap="handleCollect" data-index="{{index}}" data-list="recommendList"> + <image class="icon" src="{{imageUrl}}icon-collection.png?t={{Timestamp}}"></image> + 收藏 + </view> + </view> + </view> + </view> + </block> + <view class="pagintion"> + <image + class="none" + src="{{imageUrl}}none.png?t={{Timestamp}}" + wx:if="{{pagination.count==0 && recommendPagination.count==0}}" + ></image> + <van-divider + contentPosition="center" + wx:elif="{{pagination.page<pagination.pages || recommendPagination.page < recommendPagination.pages}}" + > + <van-loading /> + 加载中... + </van-divider> + <van-divider contentPosition="center" wx:else>没有更多了</van-divider> + </view> +</view> diff --git a/src/pages/collection/index.json b/src/pages/collection/index.json new file mode 100644 index 0000000..9806cef --- /dev/null +++ b/src/pages/collection/index.json @@ -0,0 +1,7 @@ +{ + "usingComponents": { + "van-nav-bar": "@vant/weapp/nav-bar/index", + "van-icon": "@vant/weapp/icon/index", + "pagination":"/components/pagination/index" + } +} diff --git a/src/pages/collection/index.scss b/src/pages/collection/index.scss new file mode 100644 index 0000000..bb34f94 --- /dev/null +++ b/src/pages/collection/index.scss @@ -0,0 +1,60 @@ +page { + background-color: #f3f4f5; +} +.page { + margin: 50rpx 32rpx 0; + padding-bottom: 80rpx; + .card { + padding: 24rpx; + display: flex; + gap: 24rpx; + background: linear-gradient(173deg, #ffffff 0%, #eff7ff 100%); + border-radius: 24rpx 24rpx 24rpx 24rpx; + border: 2rpx solid #ffffff; + .photo { + flex-shrink: 0; + width: 218rpx; + height: 218rpx; + border-radius: 16rpx; + } + .c-container { + flex: 1; + display: flex; + flex-direction: column; + justify-content: space-between; + .title { + font-size: 36rpx; + color: #222222; + font-weight: bold; + line-height: 48rpx; + } + .type { + flex: 1; + margin-top: 16rpx; + font-size: 32rpx; + color: #999999; + } + .stat { + margin-top: 42rpx; + display: flex; + align-items: center; + justify-content: space-between; + gap: 40rpx; + .s-item { + display: flex; + align-items: center; + gap: 8rpx; + font-size: 28rpx; + color: #999999; + .icon { + width: 32rpx; + height: 32rpx; + } + &.active { + color: #3795f7; + } + } + } + } + } +} diff --git a/src/pages/collection/index.ts b/src/pages/collection/index.ts new file mode 100644 index 0000000..8dc7b04 --- /dev/null +++ b/src/pages/collection/index.ts @@ -0,0 +1,94 @@ +const app = getApp<IAppOption>(); + +Page({ + data: { + background: 'transparent', + + pagination: { + page: 1, + pages: 1, + count: 1, + }, + list: [], + }, + onLoad() { + app.waitLogin(false, true).then(() => { + this.getList(); + }); + }, + getList(newPage = 1) { + wx.ajax({ + method: 'GET', + url: `?r=shizhong/book/collect-list`, + data: { + page: newPage, + }, + }).then((res) => { + res.list.forEach((item) => { + item.IsCollect = '1'; + }); + const list = res.page === 1 ? res.list : [...this.data.list, ...res.list]; + this.setData({ + list, + pagination: { + page: res.page, + pages: res.pages, + count: res.count, + }, + }); + }); + }, + onReachBottom() { + const { page, pages } = this.data.pagination; + if (pages > page && this.data.list.length) { + this.getList(page + 1); + } + }, + handleCollect(e) { + const { index, list } = e.currentTarget.dataset; + const { BookId } = this.data[list][index]; + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/collect', + data: { BookId }, + }).then(() => { + wx.showToast({ + title: '您已收藏这本书,可在我的页查看', + icon: 'none', + }); + this.setData({ + [`${list}[${index}].IsCollect`]: '1', + }); + }); + }, + handleUnCollect(e) { + const { index, list } = e.currentTarget.dataset; + const { BookId } = this.data[list][index]; + wx.ajax({ + method: 'POST', + url: '?r=shizhong/book/cancel-collect', + data: { BookId }, + }).then(() => { + wx.showToast({ + title: '取消收藏', + icon: 'none', + }); + this.setData({ + [`${list}[${index}].IsCollect`]: '0', + }); + }); + }, + handleBack() { + wx.navigateBack(); + }, + handleDetail(e) { + const { id } = e.currentTarget.dataset; + app.waitLogin(false, true).then(() => { + wx.navigateTo({ + url: `/pages/article/index?id=${id}`, + }); + }); + }, +}); + +export {}; diff --git a/src/pages/collection/index.wxml b/src/pages/collection/index.wxml new file mode 100644 index 0000000..a072214 --- /dev/null +++ b/src/pages/collection/index.wxml @@ -0,0 +1,40 @@ +<van-nav-bar + title="我的收藏" + border="{{false}}" + custom-style="background:{{background}}" + bind:click-left="handleBack" + fixed +> + <van-icon name="arrow-left" slot="left" color="#000" size="46rpx" /> +</van-nav-bar> + +<view class="page" style="padding-top:{{menuButtonInfo.bottom}}px;"> + <view class="card" wx:for="{{list}}" wx:key="Id" bind:tap="handleDetail" data-id="{{item.BookId}}"> + <image class="photo" mode="aspectFill" src="{{item.CoverUrl}}"></image> + <view class="c-container"> + <view class="title">{{item.BookName}}</view> + <view class="type">{{item.CateName}}{{item.CateSecondName ? '/'+item.CateSecondName : ''}}</view> + <view class="stat"> + <view class="s-item"> + <!-- <image class="icon" src="{{imageUrl}}icon-eye.png?t={{Timestamp}}"></image> --> + 阅读 {{~~item.OperateNum + ~~item.BrowseNum}} + </view> + <view + class="s-item active" + wx:if="{{item.IsCollect === '1'}}" + catch:tap="handleUnCollect" + data-index="{{index}}" + data-list="list" + > + <image class="icon" src="{{imageUrl}}icon-collection-active.png?t={{Timestamp}}"></image> + 已收藏 + </view> + <view class="s-item" wx:else catch:tap="handleCollect" data-index="{{index}}" data-list="list"> + <image class="icon" src="{{imageUrl}}icon-collection.png?t={{Timestamp}}"></image> + 收藏 + </view> + </view> + </view> + </view> + <pagination pagination="{{pagination}}"></pagination> +</view> diff --git a/src/pages/home/index.json b/src/pages/home/index.json new file mode 100644 index 0000000..69181e7 --- /dev/null +++ b/src/pages/home/index.json @@ -0,0 +1,5 @@ +{ + "usingComponents": { + "van-popup": "@vant/weapp/popup/index" + } +} diff --git a/src/pages/home/index.scss b/src/pages/home/index.scss new file mode 100644 index 0000000..d71aa43 --- /dev/null +++ b/src/pages/home/index.scss @@ -0,0 +1,219 @@ +page { + background-color: #f3f4f5; +} +.page { + padding-bottom: 10vh; + min-height: 100vh; + .logo { + margin-left: 32rpx; + width: 327rpx; + max-height: 100rpx; + } + .page-title { + margin: 50rpx 0 0 32rpx; + width: 580rpx; + height: 52rpx; + } + .page-slogan { + margin: 14rpx 32rpx 0; + padding: 30rpx 32rpx; + font-size: 28rpx; + color: #65686c; + line-height: 52rpx; + } + .search { + margin: 34rpx 32rpx 0; + padding: 0 0 0 24rpx; + display: flex; + align-items: center; + background: linear-gradient(158deg, #ffffff 0%, #f2f9fe 100%); + border-radius: 106rpx 106rpx 106rpx 106rpx; + border: 1px solid #ffffff; + .icon { + width: 36rpx; + height: 36rpx; + } + .input { + flex: 1; + padding: 16rpx; + line-height: 40rpx; + font-size: 28rpx; + } + .place-input { + color: #c9cdd4; + } + } + .swiper { + margin: 36rpx 32rpx -52rpx; + height: 318rpx; + + .wx-swiper-dots { + bottom: 60rpx; + display: flex; + align-items: center; + } + .wx-swiper-dot { + width: 8rpx; + height: 8rpx; + } + .wx-swiper-dot-active { + width: 24rpx !important; + height: 8rpx !important; + border-radius: 5rpx !important; + } + + .swiper-item { + position: relative; + .banner { + position: absolute; + top: 0; + left: 0; + z-index: 1; + display: block; + width: 100%; + height: 274rpx; + border-radius: 32rpx; + } + &::after { + content: ''; + position: absolute; + bottom: 74rpx; + left: 40rpx; + width: 606rpx; + height: 194rpx; + background: rgba(0, 43, 88, 0.28); + box-shadow: 0rpx 8rpx 8rpx 0rpx rgba(0, 0, 0, 0.65); + border-radius: 0rpx 0rpx 0rpx 0rpx; + filter: blur(16.5px); + } + } + } + + .cards { + margin: 52rpx 32rpx 0; + display: grid; + gap: 28rpx 26rpx; + grid-template-columns: repeat(2, 1fr); + grid-template-rows: repeat(auto-fill, 164rpx); + .card { + padding: 20rpx 30rpx; + display: flex; + justify-content: center; + flex-direction: column; + overflow: hidden; + height: 164rpx; + box-sizing: border-box; + .title { + font-size: 36rpx; + color: #3795f7; + line-height: 42rpx; + font-weight: bold; + } + .content { + margin-top: 10rpx; + font-size: 28rpx; + color: #65686c; + min-width: 0; + line-height: 40rpx; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + } + } + } + + .remark { + margin: 52rpx 32rpx 0; + .r-header { + display: flex; + align-items: center; + gap: 16rpx; + font-size: 36rpx; + color: #222222; + font-weight: bold; + &::before { + content: ''; + width: 8rpx; + height: 34rpx; + background-color: #3795f7; + } + } + .r-content { + margin-top: 30rpx; + padding: 32rpx; + width: 100%; + box-sizing: border-box; + height: 272rpx; + font-size: 32rpx; + background-color: #fff; + border-radius: 24rpx; + } + .textarea-placeholder { + color: #babdc1; + } + .submit { + margin: 28rpx auto 0; + width: 236rpx; + height: 70rpx; + font-size: 32rpx; + color: #fff; + text-align: center; + line-height: 70rpx; + background: linear-gradient(90deg, #134df6 36%, #3795f7 100%); + border-radius: 112rpx 112rpx 112rpx 112rpx; + } + .not-submit { + background: #e3e3e3; + } + } +} + +.popup { + padding: 33rpx 0 0; + + .popup-container { + padding: 280rpx 48rpx 0; + width: 622rpx; + height: 490rpx; + box-sizing: border-box; + background: linear-gradient(180deg, #e7f8ff 0%, #ffffff 100%); + border-radius: 32rpx; + position: relative; + + .badge { + position: absolute; + left: 0; + top: -33px; + width: 246rpx; + height: 286rpx; + } + + .title { + position: absolute; + top: 50rpx; + right: 28rpx; + width: 338rpx; + height: 164rpx; + } + + .conform { + height: 88rpx; + text-align: center; + background: #3795f7; + line-height: 88rpx; + font-size: 36rpx; + color: #ffffff; + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + + .cancel { + margin-top: 10rpx; + font-size: 32rpx; + color: #999999; + text-align: center; + line-height: 88rpx; + } + } +} diff --git a/src/pages/home/index.ts b/src/pages/home/index.ts new file mode 100644 index 0000000..b33e438 --- /dev/null +++ b/src/pages/home/index.ts @@ -0,0 +1,136 @@ +const app = getApp<IAppOption>(); + +Page({ + data: { + show: false, + + cateList: [] as any, + remark: '', + + feedbackCount: 0, + bannerList: [], + userInfo: {}, + }, + onLoad() { + app.waitLogin().then(() => { + this.getCateList(); + this.getBanner(); + this.getRemarkCount(); + app.getUserInfo(this, (res) => { + if (res.showQuestion === 1) { + this.setData({ + show: true, + }); + } + }); + }); + }, + getBanner() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/index/index', + data: {}, + }).then((res) => { + this.setData({ + bannerList: res, + }); + }); + }, + handleBanner(e) { + const { index } = e.currentTarget.dataset; + const bannerItem: any = this.data.bannerList[index]; + if (bannerItem.configType === '1') { + wx.navigateTo({ + url: `/pages/article/index?id=${bannerItem.configContent}`, + }); + } else if (bannerItem.configType === '2') { + wx.navigateTo({ + url: `/pages/article/index?id=${bannerItem.configContentBookId}&cid=${bannerItem.configContent}`, + }); + } else if (bannerItem.configType === '3') { + wx.navigateTo({ + url: `/pages/longPicture/index?url=${encodeURIComponent(bannerItem.configContent)}`, + }); + } + }, + getCateList() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/book/cate-list', + data: {}, + }).then((res) => { + this.setData({ + cateList: res, + }); + }); + }, + handleDetail(e) { + const { index } = e.currentTarget.dataset; + const item = this.data.cateList[index]; + wx.navigateTo({ + url: `/pages/classify/index?id=${item.Id}`, + }); + }, + handleSearch() { + wx.navigateTo({ + url: '/pages/search/index', + }); + }, + getRemarkCount() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/account/get-can-feedback-count', + data: {}, + showMsg: false, + }).then((res) => { + this.setData({ + feedbackCount: res, + }); + }); + }, + handleRemark() { + const { remark } = this.data; + wx.ajax({ + method: 'POST', + url: '?r=shizhong/account/send-feedback', + data: { + content: remark, + }, + loading: true, + }).then(() => { + wx.showToast({ + title: '提交成功', + icon: 'none', + }); + this.setData({ + remark: '', + }); + }); + }, + handleNotRemark() { + wx.showToast({ + icon: 'none', + title: '今日留言次数已达上限,欢迎明天再来留言吧', + }); + }, + handleTopic() { + wx.navigateTo({ + url: '/pages/topic/index?back=1', + }); + this.handleCancelTopic(); + }, + handleCancelTopic() { + this.setData({ + show: false, + }); + wx.ajax({ + method: 'POST', + url: '?r=shizhong/account/visit', + data: { + type: 1, + }, + }); + }, +}); + +export {}; diff --git a/src/pages/home/index.wxml b/src/pages/home/index.wxml new file mode 100644 index 0000000..aa56a07 --- /dev/null +++ b/src/pages/home/index.wxml @@ -0,0 +1,79 @@ +<view + class="page" + style="background: url('{{imageUrl}}home-bg.png?t={{Timestamp}}') no-repeat top center/100% 580rpx;padding-top:{{menuButtonInfo.top}}px;" +> + <image class="logo" mode="widthFix" src="{{imageUrl}}home-logo.png?t={{Timestamp}}"></image> + <image class="page-title" src="{{imageUrl}}home-title.png?t={{Timestamp}}"></image> + <view + class="page-slogan" + style="background: url('{{imageUrl}}slogan-bg.png?t={{Timestamp}}') no-repeat top center/100% 100%;" + > + 基于循证医学和临床指南等,构建科学/系统/高效的健康信息平台,助力人人都做家庭健康师,提高预期寿命和健康寿命,减短带病生存期。 + </view> + <view class="search" bind:tap="handleSearch"> + <image class="icon" src="{{imageUrl}}icon-search.png?t={{Timestamp}}"></image> + <input + type="text" + disabled="{{true}}" + class="input" + placeholder-class="place-input" + confirm-type="search" + bindconfirm="handleSearch" + placeholder="请输入要搜索的内容" + /> + </view> + <swiper + wx:if="{{bannerList.length>0}}" + class="swiper" + autoplay + interval="{{5000}}" + indicator-dots="{{bannerList.length>1}}" + indicator-color="{{bannerList.length>1 ? 'rgba(255,255,255,0.62)' :'transparent'}}" + indicator-active-color="{{bannerList.length>1 ? '#FFFFFF' :'transparent'}}" + > + <swiper-item + class="swiper-item" + wx:for="{{bannerList}}" + wx:key="configId" + bind:tap="handleBanner" + data-index="{{index}}" + > + <image class="banner" mode="aspectFill" src="{{item.configImg}}"></image> + </swiper-item> + </swiper> + <view class="cards"> + <view + class="card" + wx:for="{{cateList}}" + wx:key="index" + style="background: url('{{imageUrl}}home-card-bg.png?t={{Timestamp}}') no-repeat center/100%" + bind:tap="handleDetail" + data-index="{{index}}" + > + <view class="title">{{item.CateName}}</view> + <view class="content">{{item.Intro}}</view> + </view> + </view> + <view class="remark"> + <view class="r-header">留言板</view> + <textarea + class="r-content" + model:value="{{remark}}" + placeholder-class="textarea-placeholder" + placeholder="欢迎反馈您的问题" + ></textarea> + <view wx:if="{{feedbackCount>0}}" class="submit" bind:tap="handleRemark">提交</view> + <view wx:else class="submit not-submit" bind:tap="handleNotRemark">提交</view> + </view> +</view> + +<van-popup show="{{ show }}" bind:close="onClose" round style="--popup-background-color: transparent"> + <view class="popup"> + <view class="popup-container"> + <image class="badge" src="{{imageUrl}}login-popup-badge.png?t={{Timestamp}}"></image> + <image class="title" src="{{imageUrl}}login-popup-title.png?t={{Timestamp}}"></image> + <view class="conform" bind:tap="handleTopic">开始</view> + <view class="cancel" bind:tap="handleCancelTopic">关闭</view> + </view> + </view> +</van-popup> diff --git a/src/pages/login/index.json b/src/pages/login/index.json new file mode 100644 index 0000000..b3238b0 --- /dev/null +++ b/src/pages/login/index.json @@ -0,0 +1,7 @@ +{ + "usingComponents": { + "van-icon": "@vant/weapp/icon/index", + "van-nav-bar": "@vant/weapp/nav-bar/index", + "van-popup": "@vant/weapp/popup/index" + } +} diff --git a/src/pages/login/index.scss b/src/pages/login/index.scss new file mode 100644 index 0000000..386f93f --- /dev/null +++ b/src/pages/login/index.scss @@ -0,0 +1,143 @@ +.page { + position: relative; + .logo { + position: absolute; + left: 32rpx; + width: 327rpx; + max-height: 100rpx; + } + .container { + margin-top: 336rpx; + padding: 64rpx 32rpx 0; + background: linear-gradient(to bottom, rgba(255, 255, 255, 0.76) 0%, #ffffff 100%) no-repeat top center/100% 186rpx; + border-radius: 32rpx; + + .tel { + .input { + padding: 24rpx 48rpx; + background-color: #f4f7fa; + border-radius: 96rpx; + font-size: 32rpx; + } + + .place-input { + color: #babdc1; + } + } + + .code-row { + margin-top: 32rpx; + display: flex; + align-items: center; + gap: 30rpx; + background-color: #f4f7fa; + border-radius: 96rpx; + + .code { + flex: 1; + padding: 24rpx 48rpx; + font-size: 32rpx; + } + + .place-code { + color: #babdc1; + } + + .btn { + flex-shrink: 0; + padding: 24rpx; + width: 7em; + text-align: center; + color: #3795f7; + font-size: 32rpx; + border-radius: 96rpx; + } + } + + .protool { + margin-top: 56rpx; + display: flex; + align-items: center; + font-size: 28rpx; + color: #999; + + .radio { + transform: scale(0.7); + } + + .link { + color: #3795f7; + } + } + + .submit { + margin-top: 70rpx; + text-align: center; + font-size: 36rpx; + color: #3795f7; + line-height: 84rpx; + border: 1px solid rgba(55, 149, 247, 0.2); + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + + .tel-btn { + margin-top: 32rpx; + text-align: center; + font-size: 36rpx; + color: #ffffff; + line-height: 88rpx; + border-radius: 96rpx 96rpx 96rpx 96rpx; + background: linear-gradient(90deg, #134df6 16%, #3795f7 100%); + } + + .visitor { + margin-top: 236rpx; + display: flex; + align-items: center; + justify-content: center; + font-size: 32rpx; + line-height: 1; + color: #3795f7; + } + } +} + +.popup { + padding: 33rpx 0 0; + + .popup-container { + padding: 64rpx 44rpx 10rpx; + width: 622rpx; + box-sizing: border-box; + background: linear-gradient(180deg, #e7f8ff 0%, #ffffff 100%); + border-radius: 32rpx; + position: relative; + + .content { + font-size: 36rpx; + color: #65686c; + text-align: center; + .link { + color: #3795f7; + } + } + + .conform { + margin-top: 48rpx; + height: 88rpx; + text-align: center; + background: #3795f7; + line-height: 86rpx; + font-size: 36rpx; + color: #ffffff; + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + + .cancel { + padding: 32rpx 0; + font-size: 32rpx; + color: #3795f7; + text-align: center; + } + } +} diff --git a/src/pages/login/index.ts b/src/pages/login/index.ts new file mode 100644 index 0000000..35ddd78 --- /dev/null +++ b/src/pages/login/index.ts @@ -0,0 +1,170 @@ +const app = getApp<IAppOption>(); +let timer: number | null = 0; + +Page({ + data: { + menuButtonInfo: {}, + mobile: '', + code: '', + protool: false, + codeText: '发送验证码', + + back: false, + + type: '', + show: false, + }, + onLoad(options) { + this.setData({ + back: options.back === '1', + }); + }, + onShow() { + wx.hideShareMenu(); + }, + getCode() { + if (timer) return; + const mobile = this.data.mobile; + if (!mobile) { + wx.showToast({ + title: '手机号不能为空', + icon: 'none', + }); + return; + } + // 验证手机号 + if (!/^1[3-9,]\d{9}$/.test(mobile)) { + wx.showToast({ + title: '手机号格式不正确', + icon: 'none', + }); + return; + } + wx.ajax({ + method: 'POST', + url: '?r=shizhong/login/send-verify-code', + data: { + mobile, + }, + }).then(() => { + wx.showToast({ + icon: 'none', + title: '验证码已发送~', + }); + let time = 60; + timer = setInterval(() => { + time--; + this.setData({ + codeText: `${time}s后重新发送`, + }); + if (time <= 0) { + clearInterval(timer as number); + timer = null; + this.setData({ + codeText: '发送验证码', + }); + } + }, 1000); + }); + }, + handleSubmit() { + const { show, mobile, code, protool } = this.data; + if (!protool && !show) { + this.setData({ + type: 'login', + show: true, + }); + return; + } else if (show) { + this.setData({ + show: false, + protool: true, + }); + } + if (!mobile) { + wx.showToast({ + title: '请输入手机号', + icon: 'none', + }); + return; + } + if (!code) { + wx.showToast({ + title: '请输入验证码', + icon: 'none', + }); + return; + } + wx.ajax({ + method: 'POST', + url: '?r=shizhong/login/reg-login', + data: { + mobile, + code, + }, + }).then(() => { + this.submitCallback(); + }); + }, + handleWxSubmit(e: any) { + const { show, protool } = this.data; + if (!protool && !show) { + this.setData({ + type: 'phone', + show: true, + }); + return; + } else if (show) { + this.setData({ + show: false, + protool: true, + }); + } + const { iv, encryptedData } = e.detail; + if (iv && encryptedData) { + wx.ajax({ + method: 'POST', + url: '?r=shizhong/login/wx-reg-login', + data: { + iv: encodeURIComponent(iv), + encryptedData: encodeURIComponent(encryptedData), + }, + }).then(() => { + this.submitCallback(); + }); + } + }, + submitCallback() { + app.globalData.isLogin = 1; + const backPath = app.globalData.backPath; + wx.reLaunch({ url: backPath || '/pages/home/index' }); + app.globalData.backPath = ''; + }, + handleProtool() { + this.setData({ + protool: !this.data.protool, + }); + }, + handleNavProtool() { + wx.navigateTo({ url: `/pages/protocol/index` }); + }, + handleVisitor() { + if (app.globalData.isLogin !== 1) { + app.globalData.isLogin = 999; + app.globalData.backPath = ''; + } + wx.reLaunch({ + url: '/pages/home/index', + }); + }, + handleCancel() { + this.setData({ + show: false, + }); + }, + handleBack() { + wx.navigateBack(); + }, +}); + +export {}; diff --git a/src/pages/login/index.wxml b/src/pages/login/index.wxml new file mode 100644 index 0000000..4b96c45 --- /dev/null +++ b/src/pages/login/index.wxml @@ -0,0 +1,73 @@ +<van-nav-bar + wx:if="{{back}}" + title="" + border="{{false}}" + custom-style="background:transparent" + bind:click-left="handleBack" + fixed +> + <van-icon name="arrow-left" slot="left" color="#000" size="46rpx" /> +</van-nav-bar> +<view + class="page" + style="background: url('{{imageUrl}}login-bg.png?t={{Timestamp}}') no-repeat top center/100% 624rpx;padding-top:{{menuButtonInfo.bottom}}px;" +> + <image + class="logo" + style="top:{{menuButtonInfo.top}}px" + mode="widthFix" + src="{{imageUrl}}home-logo.png?t={{Timestamp}}" + ></image> + <view class="container"> + <view class="tel"> + <input + type="number" + model:value="{{mobile}}" + placeholder-class="place-input" + class="input" + placeholder="请输入手机号" + /> + </view> + <view class="code-row"> + <input + type="text" + placeholder="请输入验证码" + class="code" + placeholder-class="place-code" + model:value="{{code}}" + type="number" + /> + <view class="btn" bind:tap="getCode">{{codeText}}</view> + </view> + <view class="protool"> + <radio class="radio" color="#3795F7" checked="{{protool}}" bind:tap="handleProtool"></radio> + 我已阅读并同意 + <text class="link" bind:tap="handleNavProtool">《用户隐私协议》</text> + </view> + <view class="submit" bind:tap="handleSubmit">手机验证码登录</view> + <button wx:if="{{protool}}" class="tel-btn" open-type="getPhoneNumber" bindgetphonenumber="handleWxSubmit"> + 手机号一键快捷登录 + </button> + <button wx:else class="tel-btn" bind:tap="handleWxSubmit">手机号一键快捷登录</button> + <view class="visitor" bind:tap="handleVisitor" wx:if="{{!back}}"> + 游客访问 + <van-icon name="arrow" /> + </view> + </view> +</view> + +<van-popup show="{{ show }}" bind:close="onClose" round style="--popup-background-color: transparent"> + <view class="popup"> + <view class="popup-container"> + <div class="content"> + 已阅读并同意 + <text class="link" bind:tap="handleNavProtool">《用户隐私协议》</text> + </div> + <button wx:if="{{type==='phone'}}" class="conform" open-type="getPhoneNumber" bindgetphonenumber="handleWxSubmit"> + 同意并继续 + </button> + <button wx:else class="conform" bind:tap="handleSubmit">同意并继续</button> + <view class="cancel" bind:tap="handleCancel">取消</view> + </view> + </view> +</van-popup> diff --git a/src/pages/longPicture/index.json b/src/pages/longPicture/index.json new file mode 100644 index 0000000..11cc17e --- /dev/null +++ b/src/pages/longPicture/index.json @@ -0,0 +1,5 @@ +{ + "navigationStyle": "default", + "navigationBarTitleText": "详情", + "usingComponents": {} +} diff --git a/src/pages/longPicture/index.scss b/src/pages/longPicture/index.scss new file mode 100644 index 0000000..019048d --- /dev/null +++ b/src/pages/longPicture/index.scss @@ -0,0 +1,3 @@ +.banner { + width: 100%; +} diff --git a/src/pages/longPicture/index.ts b/src/pages/longPicture/index.ts new file mode 100644 index 0000000..a086f18 --- /dev/null +++ b/src/pages/longPicture/index.ts @@ -0,0 +1,17 @@ +const _app = getApp<IAppOption>(); + +Page({ + data: { + url: '', + }, + onLoad(options) { + const { url } = options; + if (url) { + this.setData({ + url: decodeURIComponent(url), + }); + } + }, +}); + +export {}; diff --git a/src/pages/longPicture/index.wxml b/src/pages/longPicture/index.wxml new file mode 100644 index 0000000..312598c --- /dev/null +++ b/src/pages/longPicture/index.wxml @@ -0,0 +1 @@ +<image class="banner" mode="widthFix" src="{{url}}"></image> diff --git a/src/pages/my/index.json b/src/pages/my/index.json new file mode 100644 index 0000000..5fa5f3c --- /dev/null +++ b/src/pages/my/index.json @@ -0,0 +1,7 @@ +{ + "usingComponents": { + "van-icon": "@vant/weapp/icon/index", + "global-toast": "/components/global-toast/index", + "uploadFile": "/components/uploadFile/index" + } +} diff --git a/src/pages/my/index.scss b/src/pages/my/index.scss new file mode 100644 index 0000000..a9de4c9 --- /dev/null +++ b/src/pages/my/index.scss @@ -0,0 +1,90 @@ +page { + background-color: #f3f4f5; +} +.page { + background: linear-gradient(180deg, #d2f1fe 0%, rgba(244, 248, 249, 0) 100%) no-repeat top center / 100% 682rpx; + .login { + margin: 32rpx 62rpx 0; + display: flex; + gap: 24rpx; + .upload { + flex-shrink: 0; + .avatar { + width: 160rpx; + height: 160rpx; + border-radius: 50%; + } + } + .user { + padding-top: 10rpx; + flex: 1; + .name { + font-size: 40rpx; + color: #141515; + font-weight: bold; + line-height: 1; + word-break: break-all; + .icon { + vertical-align: -4rpx; + width: 36rpx; + height: 36rpx; + } + } + .tel { + margin-top: 8rpx; + font-size: 28rpx; + color: #999999; + line-height: 40rpx; + } + .status { + margin-top: 8rpx; + font-size: 28rpx; + color: #999999; + line-height: 40rpx; + } + } + .switch { + display: flex; + align-items: center; + font-size: 28rpx; + color: #999999; + } + } + .no-login { + margin: 32rpx 62rpx 0; + display: flex; + align-items: center; + gap: 24rpx; + .avatar { + width: 160rpx; + height: 160rpx; + } + .name { + font-size: 40rpx; + color: #3795f7; + } + } + .nav-list { + margin: 70rpx 32rpx 0; + padding: 0 30rpx; + background: #ffffff; + border-radius: 16rpx 16rpx 16rpx 16rpx; + border: 2rpx solid #ffffff; + .nav-item { + padding: 32rpx 0; + display: flex; + align-items: center; + border-bottom: 1px solid #f0f0f0; + font-size: 36rpx; + color: #000000; + &:last-of-type { + border: none; + } + .icon { + margin-right: 20rpx; + width: 48rpx; + height: 48rpx; + } + } + } +} diff --git a/src/pages/my/index.ts b/src/pages/my/index.ts new file mode 100644 index 0000000..f29ea60 --- /dev/null +++ b/src/pages/my/index.ts @@ -0,0 +1,93 @@ +const app = getApp<IAppOption>(); + +Page({ + data: { + toastShow: false, + toastType: 1, + + userInfo: {} as any, + }, + onShow() { + wx.showTabBar({}); + app.waitLogin().then(() => { + app.getUserInfo(this); + }); + }, + handleCollection() { + wx.navigateTo({ + url: '/pages/collection/index', + }); + }, + handleLogin() { + wx.navigateTo({ + url: '/pages/login/index', + }); + }, + handleLoginOut() { + wx.showModal({ + title: '是否确认退出登录?', + success: (res) => { + if (res.confirm) { + wx.ajax({ + method: 'POST', + url: '?r=shizhong/account/logout', + data: {}, + }).then(() => { + app.globalData.isLogin = 0; + app.globalData.isAnswer = '0'; + app.waitLogin(); + }); + } + }, + }); + }, + handleEditUser() { + wx.navigateTo({ + url: '/pages/userInfo/index', + }); + }, + handleAvatar(e) { + const avatar = e.detail.fileUrl; + wx.ajax({ + method: 'POST', + url: '?r=shizhong/account/update-info', + data: { + userName: this.data.userInfo.username, + avatar, + }, + }).then(() => { + app.getUserInfo(this); + }); + }, + handleOffice() { + wx.hideTabBar({ + success: () => { + this.setData({ + toastShow: true, + toastType: 1, + }); + }, + }); + }, + handleCompanyOffice() { + wx.hideTabBar({ + success: () => { + this.setData({ + toastShow: true, + toastType: 2, + }); + }, + }); + }, + handleToastClose() { + this.setData({ + toastShow: false, + }); + wx.showTabBar({}); + }, + handleTopic() { + wx.navigateTo({ + url: '/pages/topic/index?back=1', + }); + }, +}); diff --git a/src/pages/my/index.wxml b/src/pages/my/index.wxml new file mode 100644 index 0000000..8c6d72d --- /dev/null +++ b/src/pages/my/index.wxml @@ -0,0 +1,50 @@ +<view class="page" style="padding-top:{{ menuButtonInfo.bottom }}px;"> + <view class="login" wx:if="{{userInfo.isLogin===1}}"> + <uploadFile class="upload" chooseAvatar bind:file="handleFile" data-key="Img" bind:file="handleAvatar"> + <image wx:if="{{userInfo.avatar}}" class="avatar" mode="aspectFill" src="{{userInfo.avatar}}"></image> + <image wx:else class="avatar" mode="aspectFill" src="{{imageUrl}}user.png?t={{Timestamp}}"></image> + </uploadFile> + + <view class="user"> + <view class="name"> + {{userInfo.username || '---'}} + <image class="icon" src="{{imageUrl}}icon-edit.png?t={{Timestamp}}" bind:tap="handleEditUser"></image> + </view> + <view class="tel">{{userInfo.telephone}}</view> + <view class="status">{{userInfo.isMember===1?'会员':'非会员'}}</view> + </view> + <view class="switch" bind:tap="handleLoginOut"> + 退出登录 + <van-icon name="arrow" /> + </view> + </view> + <view class="no-login" wx:else> + <image class="avatar" src="{{imageUrl}}user.png?t={{Timestamp}}"></image> + <view class="name" bind:tap="handleLogin">登录</view> + </view> + <view class="nav-list"> + <view class="nav-item" bind:tap="handleCollection"> + <image class="icon" src="{{imageUrl}}my-list-icon1.png?t={{Timestamp}}"></image> + 我的收藏 + </view> + <view class="nav-item" bind:tap="handleTopic" wx:if="{{userInfo.isAnswer==='0' || userInfo.isAnswer===0}}"> + <image class="icon" src="{{imageUrl}}my-list-icon4.png?t={{Timestamp}}"></image> + 问卷调查 + </view> + <view class="nav-item" bind:tap="handleOffice"> + <image class="icon" src="{{imageUrl}}my-list-icon2.png?t={{Timestamp}}"></image> + 关注公众号 + </view> + <view class="nav-item" bind:tap="handleCompanyOffice"> + <image class="icon" src="{{imageUrl}}my-list-icon3.png?t={{Timestamp}}"></image> + 联系我们 + </view> + </view> +</view> + +<global-toast + show="{{toastShow}}" + type="{{toastType}}" + params="{{userInfo}}" + bind:close="handleToastClose" +></global-toast> diff --git a/src/pages/protocol/index.json b/src/pages/protocol/index.json new file mode 100644 index 0000000..a1709b1 --- /dev/null +++ b/src/pages/protocol/index.json @@ -0,0 +1,7 @@ +{ + "navigationBarTitleText": "用户隐私协议", + "navigationStyle": "default", + "usingComponents": { + "mp-html": "mp-html" + } +} diff --git a/src/pages/protocol/index.scss b/src/pages/protocol/index.scss new file mode 100644 index 0000000..b9f0774 --- /dev/null +++ b/src/pages/protocol/index.scss @@ -0,0 +1,3 @@ +.page { + padding: 32rpx; +} diff --git a/src/pages/protocol/index.ts b/src/pages/protocol/index.ts new file mode 100644 index 0000000..72064ef --- /dev/null +++ b/src/pages/protocol/index.ts @@ -0,0 +1,10 @@ +const _app = getApp<IAppOption>(); + +Page({ + data: { + content:`<p style="text-align: center; line-height: 1.5;"><span style="font-size: 24px; font-family: 宋体;"><strong>适中健康信息小程序隐私政策 </strong></span></p><p style="text-align: center; line-height: 1.5;"><br></p><p style="text-align: right; line-height: 1.5;"><span style="font-family: 宋体;">本版本更新日期:2024年12月12日</span></p><p style="text-align: right; line-height: 1.5;"><span style="font-family: 宋体;">本版本生效日期:2024年12月20日</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">“适中健康信息”(以下亦称“我们”)非常注重保护用户(“您”)的个人信息及隐私。我们希望通过本《适中健康信息小程序隐私政策》(以下简称“本隐私政策”或本“政策”)向您清晰地介绍在使用我们的产品/服务时,我们如何处理您的个人信息。您及您的隐私对于我们至关重要,我们非常重视您的隐私和个人信息的保护。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">请您在使用本产品/服务前,务必仔细阅读并充分理解本隐私政策。我们将逐一说明我们收集您的个人信息的类型及其对应的用途,以便您了解我们针对某一特定功能或服务所收集的具体个人信息的类别、使用理由及收集方式。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><a href="" target=""><span style="font-family: 宋体;">您在完成勾选并点击“同意”按钮后,本隐私政策即构成对双方有约束力的法律文件,即表示您同意我们按照本隐私政策收集、使用、处理和存储您的相关个人信息。</span></a></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>【本隐私政策的适用范围】</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>本隐私政策适用于您通过任何方式使用适中健康信息小程序平台或我们通过其他方式与您沟通合作时提供的全部功能和/或服务(以下合称为“本平台服务”)而收集或存储的信息。我们希望通过本隐私政策向您说明在您使用本平台服务时或我们通过其他方式与您沟通合作时,我们是如何收集、存储、使用、加工、传输、提供、公开、删除这些信息,以及我们将为您提供查阅、更正、限制、拒绝、删除、注销这些信息的方式。</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">本隐私政策将帮您了解以下信息:</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">1. 我们如何收集和使用您的个人信息</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">2. 我们基于何种目的或场景,收集和使用您的个人信息</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">3. 我们如何使用Cookie等同类技术</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">4. 我们如何委托处理、共享、转让、公开披露您的个人信息</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">5. 我们如何保存、保护您的个人信息</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">6. 您查阅、更正、限制、拒绝、删除、注销个人信息的权利</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">7. 未成年人保护</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">8. 本隐私政策变更及通知</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">9. 如何联系我们</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">10. 名词定义和解释</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>一、 &nbsp; &nbsp; 我们如何收集和使用您的个人信息</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(一)我们会根据本隐私政策的约定,为实现本平台服务而对所收集的个人信息进行使用。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(二)我们深知个人信息对您的重要性,并会尽全力保护您的个人信息安全可靠。我们致力于维持您对我们的信任,恪守以下原则,保护您的个人信息:合法、正当、必要和诚信原则,目的明确和直接相关原则,公开透明原则、准确性原则、问责性原则、数据安全原则等。同时,我们承诺将按业界成熟的安全标准,采取必要的措施保障您的个人信息的安全。</strong></span></p><p style="text-indent: 24pt; line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(三)我们对您个人信息的使用建立在下述一项或多项合法依据之上:您的同意、对公开信息的合理使用、为履行双方所签署的合同所必须及为遵守我们的法律义务。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><a href="" target=""><span style="font-family: 宋体;"><strong>二、 &nbsp; &nbsp; 我们基于何种目的或场景,收集和使用您的个人信息</strong></span></a></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">出于本隐私政策所描述的目的或场景,当您使用本平台服务时,我们可能会收集有关您的如下个人信息。若您不同意提供下列信息,有权拒绝提供,但您可能无法继续使用本平台的全部或部分服务:</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(一) &nbsp; 注册、登录</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>当您需要使用本平台服务时,您首先需要注册本平台账号。为注册本平台账号,您需要提供您的手机号,以及选择性提供头像、昵称,您后续可以自主在【我的】页中填写或修改您的头像、昵称。如果您不提供上述信息,将影响您使用本平台的基本功能。</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(二) &nbsp; 向您提供的本平台服务</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>1.页面浏览</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">当您在本平台浏览页面时,我们会收集您的本平台账号UID信息、微信OpenID,用来展示您的权益内容,以方便您的便捷使用。</span></p><p style="text-indent: 24pt; line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>2.留言板</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">当您在本平台给我们留言,我们将会收集、储存您的如下个人信息:微信OpenID、本平台账号UID信息、留言信息。以上信息不对外公开展示。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>3.阅读文章</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">您在本平台上阅读文章时,我们将会收集您的本平台账号UID信息,以判断您是否有对应的阅读权限。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>4.收藏文章</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">您在本平台上收藏或查看收藏文章时,我们将会收集您的本平台账号UID信息,以记录或读取该账号下收藏的文章内容。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>5.为您提供安全保障及更佳的服务体验</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">当您使用本平台服务时,我们会自动收集您对我们服务的详细使用情况,作为有关网络日志保存。包括浏览、点击查看、搜索查询、分享信息、发布信息、访问日期和时间、浏览的内容及时长、浏览记录等。为了保障您的账号安全以及系统运行安全,防止欺诈、网络病毒、网络攻击等安全风险,本平台服务将满足法律法规和我们协议规则的相关要求,同时,我们会根据不同操作系统为您提供最佳的浏览体验。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(三) 如果您对我们收集和使用您的个人信息的法律依据有任何疑问或需要提供进一步的信息,请通过本隐私政策第九章节「如何联系我们」提供的联系方式与我们联系。</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(四) 当我们要将您的个人信息用于本隐私政策未载明的其他目的时,会事先征求您的同意。请您知悉,本平台向您提供的服务可能将不断更新和发展,如果您选择使用本隐私政策中尚未列明的其他功能或服务时,我们会在收集您的个人信息前通过推送通知、更为显著的弹窗等方式向您详细说明信息收集的目的、方式、范围并征求您的同意。</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><a href="" target=""><span style="font-family: 宋体;"><strong>三、 &nbsp; &nbsp; 我们如何使用Cookie等同类技术</strong></span></a></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(一)依托于微信小程序提供的原生能力</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">为了帮助提升您的产品体验,我们会使用微信提供的一些原生能力来避免您重复登录,并存储您所在城市信息等数据,进而帮助判断您的登录状态、更好的为您提供服务、判断账户或数据安全。所有的信息获取都会经过您的授权同意才会使用,并且我们不会主动共享或转让您的信息至任何第三方,不会对外公开披露您的任何信息,您可以通过移除小程序的方式删除您已授权的信息。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(二)Cookies 的使用</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们提供的产品服务中,为了能够让您获得更好的浏览体验,我们会在您的微信内置浏览器上记录Cookies信息,指定给您的Cookies是唯一的,它只能被将Cookies发布给您的域中的Web服务器读取。大部分手机的微信内置浏览器会自动接受Cookies,我们不会将Cookies用于本隐私政策所述目的之外的任何用途。您可以在微信“我-设置-通用-存储空间-缓存”中清除保存的所有 Cookies,但如果您这么做,您可能需要在每一次访问小程序内嵌网站时重新授权获取相关信息,而且您之前的相关记录信息也会被删除,并且可能会对您所使用服务的安全性有一定影响。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>四、 &nbsp; &nbsp; 我们如何委托处理、共享、转让、公开披露您的个人信息</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(一) &nbsp; 委托处理</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们会聘请服务提供商来协助我们提供客户支持。对我们委托处理个人信息的公司、组织和个人,我们会与其签署严格的个人信息保护条款和保密协定,要求他们按照我们的要求、本个人信息保护政策以及其他任何相关的个人信息保护、保密和信息安全措施来处理您的个人信息,并且对他们的个人信息处理活动进行监督。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(二) &nbsp; 共享</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们不会将任何个人信息出售给第三方。我们不会向本小程序运营公司以外的任何公司、组织和个人提供您的个人信息,但以下情况除外:</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">1. 在向您进行明确告知并获取您的单独同意的情况下共享:获得您的单独同意后,我们会与我们所披露的有关个人信息处理者共享您的相关个人信息;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">2. 我们可能会根据法律法规规定,或按政府主管部门的强制性要求,向有关主管部门提供您的个人信息。</span></p><p style="text-indent: 24.1pt; line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(三) &nbsp; 转让</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>我们不会将您的个人信息转让给任何公司、组织和个人,但以下情况除外:</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">1. 在向您进行明确告知并获取您的单独同意的情况下转让:获得您的单独同意后,我们会向我们所披露的有关个人信息处理者转让您的相关个人信息;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">2. 在涉及合并、分立、解散、被宣告破产时,如涉及到个人信息转让,我们会向您告知接收方的名称或者姓名和联系方式。如接收方变更原先的处理目的、处理方式的,我们将要求该接收方重新取得您的同意。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(四) &nbsp; 公开披露</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们仅会在获得您明确同意后,公开披露您的个人信息。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>五、 &nbsp; &nbsp; 我们如何保存、保护您的个人信息</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(一) &nbsp; 保存地点</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们依照法律法规的规定,将在境内运营过程中收集和产生的您的个人信息存储于中华人民共和国境内。目前,我们不会将上述信息传输至其他地区,如果我们向其他地区传输,我们将遵循相关国家规定或者征求您的同意。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(二) &nbsp; 保存时间</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们会采取一切合理可行的措施,确保未收集无关的个人信息。适中健康信息小程序中个人信息储存必要期限是适中健康信息小程序为您终止服务后3年。超出必要期限后,我们将对您的个人信息进行删除或匿名化处理,但法律法规另有规定的除外。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(三) &nbsp; 保护措施</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们已使用符合业界标准的安全防护措施保护您提供的个人信息,防止数据遭到未经授权访问、公开披露、使用、修改、损坏或丢失。我们会采取一切合理可行的措施,保护您的个人信息。例如,我们会使用加密技术(例如SSL)确保数据的保密性;我们会使用受信赖的保护机制防止数据遭到恶意攻击;我们会部署访问控制机制,确保只有授权人员才可访问个人信息;以及我们会举办安全和隐私保护培训课程,加强员工对于保护个人信息重要性的认识。互联网环境并非百分之百安全,我们将尽力确保或担保您发送给我们的任何信息的安全性。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(四) &nbsp; &nbsp;数据安全能力</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们会使用不低于行业同行的加密技术、匿名化处理及相关合理可行的手段保护您的个人信息,并使用安全保护机制防止您的个人信息遭到恶意攻击。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们会建立专门的安全部门、安全管理制度、数据安全流程保障您的个人信息安全。我们采取严格的数据使用和访问制度,确保只有授权人员才可访问您的个人信息,并适时对数据和技术进行安全审计。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(五) &nbsp; 安全事件处理</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">在不幸发生个人信息安全事件后,我们将按照法律法规的要求,及时向您告知:安全事件的基本情况和可能的影响、我们已采取或将要采取的处置措施、您可自主防范和降低风险的建议、对您的补救措施等。我们将及时将事件相关情况以邮件、信函、电话、推送通知等方式告知您,难以逐一告知个人信息主体时,我们会采取合理、有效的方式发布公告。 同时,我们还将按照监管部门要求,主动上报个人信息安全事件的处置情况。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>六、 &nbsp; &nbsp; 您查阅、更正、限制、拒绝、删除、注销个人信息的权利</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们非常重视并保护您对于个人信息处理活动中的知情权、决定权、限制权、拒绝权等权利,并为您提供了行使在个人信息处理活动中相关权利的方法。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(一) &nbsp; 查阅权和更正权</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">除法律法规规定的情形除外,您有权随时查阅和更正您的个人信息,您可以通过在</span><span style="font-family: 宋体;"><strong>本平台的【我的】</strong></span><span style="font-family: 宋体;">查阅或修改您的个人信息,包括头像、昵称。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(二) &nbsp; 限制或拒绝权</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">对于您个人信息的收集和使用,您可以在本平台上随时通过以下方式撤回授权同意,以限制或拒绝我们收集或使用您的个人信息:</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">您可以通过「</span><span style="font-family: 宋体;"><strong>第九章节、如何联系我们</strong></span><span style="font-family: 宋体;">」进行相应的同意撤回。请您谨慎操作,否则,因注销账号产生的数据丢失问题均由您自行承担。在注销账号之后,我们将停止为您提供本平台服务,并依据您的要求,删除您的个人信息,但法律法规另有规定的除外。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(三) &nbsp; 删除权</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">1.</span><span style="font-family: 宋体;"><strong>您可通过微信的缓存清理功能,删除您在本平台的缓存记录</strong></span><span style="font-family: 宋体;">提供的相关个人信息。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">2.如果您需要删除您在使用本平台过程中产生的其他个人信息,在您的合理要求并经验证核实您的身份后,我们会处理您的请求。您可以通过本隐私政策</span><span style="font-family: 宋体;"><strong>「第九章节、如何联系我们</strong></span><span style="font-family: 宋体;">」方式向我们进行反馈。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">3.在以下情形中,您可以向我们提出删除个人信息的请求:</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(1) &nbsp;我们永久不再为您提供产品或服务;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(2) &nbsp;您撤回对我们收集、使用您的个人信息的同意;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(3) &nbsp;我们处理个人信息的行为违反法律、行政法规;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(4) &nbsp;我们处理个人信息的行为违反了与您的约定;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(5) &nbsp;您注销了用户帐号;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(6) &nbsp;法律、行政法规规定的其他情形。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">您同意并理解,您删除某些您已提交的个人信息可能导致您无法使用本平台的部分或者全部服务。</span></p><p style="text-indent: 15pt; text-align: left; line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>(四) &nbsp; 注销权</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">您可以通过「</span><span style="font-family: 宋体;"><strong>第九章节、如何联系我们</strong></span><span style="font-family: 宋体;">」进行账户注销。一旦您注销账户,我们将停止为您提供服务。请您谨慎操作,否则,因注销账号产生的数据丢失问题均由您自行承担。当您选择注销账户后,我们将停止为您提供服务,并依据您的要求,删除您的个人信息,但法律法规另有规定的除外。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>七、 &nbsp; &nbsp; 未成年人保护</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们非常重视对未成年人个人信息的保护,本平台服务主要面向成年人。如果我们发现收集了未成年人的个人信息,我们将尽快删除相关信息。如果您是未成年人的监护人,并且您认为我们收集了未成年人的个人信息,请您及时与我们联系,我们将采取措施删除相关信息。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>八、 &nbsp; &nbsp; 本隐私政策变更及通知</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(一)为了向您提供更好的功能与服务,本平台服务将不时更新与变化,因此,我们将适时修订及变更隐私政策。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(二)未经您明确同意,我们不会削减您按照本隐私政策所应享有的权利。我们会在本页面上发布对本政策所做的任何变更。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">(三)对于重大变更,我们可能还会提供本平台公告、推送通知或更为显著的弹窗等方式,向您发送隐私政策的最新版本。本政策重大变更包括但不限于:</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">1.我们的服务模式发生重大变化。如处理个人信息的目的、处理的个人信息类型、个人信息的使用方式等;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">2.我们在所有权结构、组织架构等方面发生重大变化。如业务调整、破产并购等引起的所有者变更等;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">3.个人信息共享、转让或公开披露的主要对象发生变化;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">4.您参与个人信息处理方面的权利及其行使方式发生重大变化;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">5.我们的联络方式及投诉渠道发生变化;</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">6.个人信息安全影响评估报告表明存在高风险时。</span></p><p style="line-height: 1.5;"><span style="color: black; font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>九、 &nbsp; &nbsp; 如何联系我们</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="color: black; font-family: 宋体;">如果您对本隐私协议有任何疑问、意见或建议,或者您需要行使您的个人信息权利,请通过以下方式与我们联系:</span></p><p style="line-height: 1.5;"><span style="color: black; font-family: 宋体;">[电子邮箱地址] </span><a href="mailto:sunyuping@188.com" target=""><span style="font-family: 宋体;">sunyuping@188.com</span></a></p><p style="line-height: 1.5;"><span style="font-family: 宋体;">我们将在收到您的联系信息后,尽快回复您并处理您的问题。</span></p><p style="line-height: 1.5;"><span style="color: black; font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>十、 &nbsp; &nbsp; 名词定义与解释</strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>本平台</strong></span><span style="font-family: 宋体;">:通过电子化信息平台运营和提供的数字化产品和服务,电子化信息平台包括但不限于适中健康信息小程序、微信公众号提供数字化产品和服务的系统或平台等,具体以用户实际注册、访问或使用为准(对于该等数字化产品和服务,本协议统称为“电子化信息平台”或“平台”或“本平台”)</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong> </strong></span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>个人信息</strong></span><span style="font-family: 宋体;">:以电子或者其他方式记录的与已识别或可识别的自然人有关的各种信息,不包括匿名化处理后的信息。如姓名、出生日期、身份证件号码、个人生物识别信息、住址、通信通讯联系方式、通信记录和内容、账号密码、财产信息、征信信息、行踪轨迹、住宿信息、健康生理信息、交易信息等。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>敏感个人信息</strong></span><span style="font-family: 宋体;">:敏感个人信息是指一旦泄露或者非法使用,容易导致自然人的人格尊严受到侵害或者人身、财产安全受到危害的个人信息,包括生物识别、宗教信仰、特定身份、医疗健康、金融账户、行踪轨迹等信息,以及不满十四周岁未成年人的个人信息。例如,个人敏感信息包括身份证件号码、个人生物识别信息、银行账号、通信内容、健康生理信息等。本平台不涉及敏感信息收集。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"><strong>OpenID:</strong></span><span style="font-family: 宋体;">微信OpenID是用户在微信平台上的唯一标识符,用于身份验证和跨平台登录。此处OpenID是指本平台用户注册后的唯一加密用户身份标识。</span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><span style="font-family: 宋体;"> </span></p><p style="line-height: 1.5;"><br></p><p style="line-height: 1.5;"><br></p><p style="text-align: right; line-height: 1.5;"><span style="font-family: 宋体;">适中健康信息</span></p><p style="line-height: 1.5;"><br></p><p><br></p>` + }, + onLoad() {}, +}); + +export {} diff --git a/src/pages/protocol/index.wxml b/src/pages/protocol/index.wxml new file mode 100644 index 0000000..3bf9773 --- /dev/null +++ b/src/pages/protocol/index.wxml @@ -0,0 +1,3 @@ +<view class="page"> + <mp-html content="{{content}}" scroll-table="{{true}}"></mp-html> +</view> diff --git a/src/pages/search/index.json b/src/pages/search/index.json new file mode 100644 index 0000000..9806cef --- /dev/null +++ b/src/pages/search/index.json @@ -0,0 +1,7 @@ +{ + "usingComponents": { + "van-nav-bar": "@vant/weapp/nav-bar/index", + "van-icon": "@vant/weapp/icon/index", + "pagination":"/components/pagination/index" + } +} diff --git a/src/pages/search/index.scss b/src/pages/search/index.scss new file mode 100644 index 0000000..187a809 --- /dev/null +++ b/src/pages/search/index.scss @@ -0,0 +1,106 @@ +page { + background-color: #f3f4f5; +} +.page { + padding-bottom: 80rpx; + .search { + margin: 34rpx 32rpx 0; + padding: 0 0 0 24rpx; + display: flex; + align-items: center; + background: linear-gradient(158deg, #ffffff 0%, #f2f9fe 100%); + border-radius: 106rpx 106rpx 106rpx 106rpx; + border: 1px solid #ffffff; + .icon { + width: 36rpx; + height: 36rpx; + } + .input { + flex: 1; + padding: 16rpx; + line-height: 40rpx; + font-size: 28rpx; + } + .place-input { + color: #c9cdd4; + } + } + .tip { + margin: 52rpx 32rpx 0; + font-size: 28rpx; + color: #222222; + font-weight: bold; + } + .card { + padding: 24rpx; + margin: 24rpx 32rpx 0; + display: flex; + gap: 24rpx; + background: linear-gradient(173deg, #ffffff 0%, #eff7ff 100%); + border-radius: 24rpx 24rpx 24rpx 24rpx; + border: 2rpx solid #ffffff; + .photo { + flex-shrink: 0; + width: 218rpx; + height: 218rpx; + border-radius: 16rpx; + } + .c-container { + flex: 1; + display: flex; + flex-direction: column; + justify-content: space-between; + .title { + font-size: 36rpx; + color: #222222; + font-weight: bold; + line-height: 48rpx; + } + .book-name { + flex: 1; + padding-top: 20rpx; + font-size: 32rpx; + color: #999999; + } + .c-footer { + margin-top: 20px; + display: flex; + justify-content: space-between; + gap: 20rpx; + .type { + font-size: 32rpx; + color: #999999; + } + .stat { + flex-shrink: 0; + .s-item { + display: flex; + align-items: center; + gap: 8rpx; + font-size: 28rpx; + color: #999999; + .icon { + width: 32rpx; + height: 32rpx; + } + } + } + } + } + } + .empty-search { + .e-icon { + margin: 186rpx auto 0; + display: block; + width: 217rpx; + height: 236rpx; + } + .content { + margin-top: 44rpx; + font-size: 32rpx; + line-height: 48rpx; + color: #999999; + text-align: center; + } + } +} diff --git a/src/pages/search/index.ts b/src/pages/search/index.ts new file mode 100644 index 0000000..c386fd7 --- /dev/null +++ b/src/pages/search/index.ts @@ -0,0 +1,78 @@ +const app = getApp<IAppOption>(); + +Page({ + data: { + background: 'transparent', + + focus: false, + Search: '', + pagination: { + page: 1, + pages: 1, + count: 1, + }, + list: [], + }, + onLoad() { + app.waitLogin().then(() => { + this.setData({ + focus: true, + }); + }); + }, + handleInput() { + this.setData({ + 'pagination.count': 1, + }); + }, + handleSearch() { + if (!this.data.Search) { + wx.showToast({ + title: '请输入搜索内容', + icon: 'none', + }); + return; + } + this.getList(); + }, + getList(newPage = 1) { + wx.ajax({ + method: 'GET', + url: `?r=shizhong/book/search-list`, + data: { + page: newPage, + Search: this.data.Search, + }, + }).then((res) => { + const list = res.page === 1 ? res.list : [...this.data.list, ...res.list]; + this.setData({ + list, + pagination: { + page: res.page, + pages: res.pages, + count: res.count, + }, + }); + }); + }, + onReachBottom() { + const { page, pages } = this.data.pagination; + if (pages > page && this.data.list.length) { + this.getList(page + 1); + } + }, + handleBack() { + wx.navigateBack(); + }, + handleDetail(e) { + const { id, cid } = e.currentTarget.dataset; + const backPath = `/pages/article/index?id=${id}&cid=${cid}`; + app.waitLogin(false, true, backPath).then(() => { + wx.navigateTo({ + url: backPath, + }); + }); + }, +}); + +export {}; diff --git a/src/pages/search/index.wxml b/src/pages/search/index.wxml new file mode 100644 index 0000000..5c0facf --- /dev/null +++ b/src/pages/search/index.wxml @@ -0,0 +1,58 @@ +<van-nav-bar + title="搜索" + border="{{false}}" + custom-style="background:{{background}}" + bind:click-left="handleBack" + fixed +> + <van-icon name="arrow-left" slot="left" color="#000" size="46rpx" /> +</van-nav-bar> +<view class="page" style="padding-top:{{menuButtonInfo.bottom}}px;"> + <view class="search"> + <image class="icon" src="{{imageUrl}}icon-search.png?t={{Timestamp}}"></image> + <input + type="text" + class="input" + model:value="{{Search}}" + focus="{{focus}}" + placeholder-class="place-input" + confirm-type="search" + bindconfirm="handleSearch" + placeholder="请输入要搜索的内容" + bindinput="handleInput" + /> + </view> + <view class="tip" wx:if="{{list.length}}">以下为搜到的内容</view> + <view + class="card" + wx:for="{{list}}" + wx:key="index" + bind:tap="handleDetail" + data-id="{{item.BookId}}" + data-cid="{{item.ChapterId}}" + > + <image class="photo" mode="aspectFill" src="{{item.CoverUrl}}"></image> + <view class="c-container"> + <view class="title">{{item.ChapterName}}</view> + <view class="book-name">{{item.BookName}}</view> + <view class="c-footer"> + <view class="type">{{item.CateName}}{{item.CateSecondName ? '/'+item.CateSecondName : ''}}</view> + <view class="stat"> + <view class="s-item"> + <!-- <image class="icon" src="{{imageUrl}}icon-eye.png?t={{Timestamp}}"></image> --> + 阅读 {{~~item.OperateNum + ~~item.BrowseNum}} + </view> + </view> + </view> + </view> + </view> + <view class="empty-search" wx:if="{{Search && pagination.count==='0'}}"> + <image class="e-icon" src="{{imageUrl}}empty-1.png?t={{Timestamp}}"></image> + <view class="content"> + 抱歉,未搜到相关内容 + <view></view> + 换个词试试吧 + </view> + </view> + <pagination wx:elif="{{list.length}}" pagination="{{pagination}}"></pagination> +</view> diff --git a/src/pages/switchLogin/index.json b/src/pages/switchLogin/index.json new file mode 100644 index 0000000..2b97f2d --- /dev/null +++ b/src/pages/switchLogin/index.json @@ -0,0 +1,6 @@ +{ + "usingComponents": { + "van-icon": "@vant/weapp/icon/index", + "van-nav-bar": "@vant/weapp/nav-bar/index" + } +} diff --git a/src/pages/switchLogin/index.scss b/src/pages/switchLogin/index.scss new file mode 100644 index 0000000..e0813cc --- /dev/null +++ b/src/pages/switchLogin/index.scss @@ -0,0 +1,161 @@ +.page { + .container { + margin-top: 336rpx; + padding: 64rpx 32rpx 0; + background: linear-gradient(to bottom, rgba(255, 255, 255, 0.76) 0%, #ffffff 100%) no-repeat top center/100% 186rpx; + border-radius: 32rpx; + + .tel { + .input { + padding: 24rpx 48rpx; + background-color: #f4f7fa; + border-radius: 96rpx; + font-size: 32rpx; + } + + .place-input { + color: #babdc1; + } + } + + .code-row { + margin-top: 32rpx; + display: flex; + align-items: center; + gap: 30rpx; + + .code { + flex: 1; + padding: 24rpx 48rpx; + background-color: #f4f7fa; + border-radius: 96rpx; + font-size: 32rpx; + } + + .place-code { + color: #babdc1; + } + + .btn { + flex-shrink: 0; + padding: 24rpx; + width: 7em; + text-align: center; + color: #fff; + font-size: 32rpx; + background-color: #3795f7; + border-radius: 96rpx; + } + } + + .protool { + margin-top: 56rpx; + display: flex; + align-items: center; + font-size: 28rpx; + color: #999; + + .radio { + transform: scale(0.7); + } + + .link { + color: #3795f7; + } + } + + .submit { + margin-top: 88rpx; + padding: 22rpx; + text-align: center; + font-size: 36rpx; + color: #fff; + line-height: 44rpx; + background: linear-gradient(90deg, #134df6 36%, #3795f7 100%); + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + + .tel-btn { + margin: 78rpx auto 0; + padding: 12rpx 44rpx; + border-radius: 52rpx; + width: 352rpx; + font-size: 32rpx; + line-height: 40rpx; + color: rgba(153, 153, 153, 1); + display: flex; + gap: 12rpx; + align-items: center; + justify-content: center; + outline: none; + + .icon { + width: 28rpx; + height: 40rpx; + } + + &::after { + border: none; + outline: none; + } + } + + .visitor { + margin-top: 196rpx; + display: flex; + align-items: center; + justify-content: center; + font-size: 32rpx; + line-height: 1; + color: #3795f7; + } + } +} + +.popup { + padding: 33rpx 0 0; + + .popup-container { + padding: 280rpx 48rpx 0; + width: 622rpx; + height: 490rpx; + box-sizing: border-box; + background: linear-gradient(180deg, #e7f8ff 0%, #ffffff 100%); + border-radius: 32rpx; + position: relative; + + .badge { + position: absolute; + left: 0; + top: -33px; + width: 246rpx; + height: 286rpx; + } + + .title { + position: absolute; + top: 50rpx; + right: 28rpx; + width: 338rpx; + height: 164rpx; + } + + .conform { + height: 88rpx; + text-align: center; + background: #3795f7; + line-height: 88rpx; + font-size: 36rpx; + color: #FFFFFF; + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + + .cancel{ + margin-top: 10rpx; + font-size: 32rpx; + color: #999999; + text-align: center; + line-height: 88rpx; + } + } +} diff --git a/src/pages/switchLogin/index.ts b/src/pages/switchLogin/index.ts new file mode 100644 index 0000000..6fce3a5 --- /dev/null +++ b/src/pages/switchLogin/index.ts @@ -0,0 +1,95 @@ +const app = getApp<IAppOption>(); +let timer: number | null = 0; + +Page({ + data: { + menuButtonInfo: {}, + mobile: '', + code: '', + codeText: '发送验证码', + }, + onLoad() {}, + getCode() { + if (timer) return; + const mobile = this.data.mobile; + if (!mobile) { + wx.showToast({ + title: '手机号不能为空', + icon: 'none', + }); + return; + } + // 验证手机号 + if (!/^1[3-9,]\d{9}$/.test(mobile)) { + wx.showToast({ + title: '手机号格式不正确', + icon: 'none', + }); + return; + } + wx.ajax({ + method: 'POST', + url: '?r=shizhong/login/send-verify-code', + data: { + mobile, + }, + }).then(() => { + wx.showToast({ + icon: 'none', + title: '验证码已发送~', + }); + let time = 60; + timer = setInterval(() => { + time--; + this.setData({ + codeText: `${time}s后重新发送`, + }); + if (time <= 0) { + clearInterval(timer as number); + timer = null; + this.setData({ + codeText: '发送验证码', + }); + } + }, 1000); + }); + }, + handleSubmit() { + const { mobile, code } = this.data; + if (!mobile) { + wx.showToast({ + title: '请输入手机号', + icon: 'none', + }); + return; + } + if (!code) { + wx.showToast({ + title: '请输入验证码', + icon: 'none', + }); + return; + } + wx.ajax({ + method: 'POST', + url: '?r=shizhong/login/reg-login', + data: { + mobile, + code, + }, + }).then(() => { + this.submitCallback(); + }); + }, + submitCallback() { + app.globalData.isLogin = 1; + wx.reLaunch({ + url: '/pages/home/index', + }); + }, + handleBack(){ + wx.navigateBack() + } +}); + +export {}; diff --git a/src/pages/switchLogin/index.wxml b/src/pages/switchLogin/index.wxml new file mode 100644 index 0000000..1aaffeb --- /dev/null +++ b/src/pages/switchLogin/index.wxml @@ -0,0 +1,35 @@ +<van-nav-bar + right-text="按钮" + left-arrow + fixed + custom-style="background:transparent;" + bind:click-left="handleBack" +/> +<view + class="page" + style="background: url('{{imageUrl}}login-bg.png?t={{Timestamp}}') no-repeat top center/100% 624rpx;padding-top:{{menuButtonInfo.bottom}}px;" +> + <view class="container"> + <view class="tel"> + <input + type="number" + model:value="{{mobile}}" + placeholder-class="place-input" + class="input" + placeholder="请输入手机号" + /> + </view> + <view class="code-row"> + <input + type="text" + placeholder="请输入验证码" + class="code" + placeholder-class="place-code" + model:value="{{code}}" + type="number" + /> + <view class="btn" bind:tap="getCode">{{codeText}}</view> + </view> + <view class="submit" bind:tap="handleSubmit">切换账号</view> + </view> +</view> diff --git a/src/pages/topic/index.json b/src/pages/topic/index.json new file mode 100644 index 0000000..9d75de7 --- /dev/null +++ b/src/pages/topic/index.json @@ -0,0 +1,8 @@ +{ + "usingComponents": { + "van-progress": "@vant/weapp/progress/index", + "van-nav-bar": "@vant/weapp/nav-bar/index", + "van-icon": "@vant/weapp/icon/index", + "van-popup": "@vant/weapp/popup/index" + } +} diff --git a/src/pages/topic/index.scss b/src/pages/topic/index.scss new file mode 100644 index 0000000..fd9085a --- /dev/null +++ b/src/pages/topic/index.scss @@ -0,0 +1,219 @@ +page { + background: #f3f4f5 linear-gradient(180deg, #d2f1fe 0%, rgba(244, 248, 249, 0) 100%) no-repeat top center/100% 442rpx; +} + +.page { + min-height: 100vh; + overflow: hidden; + + .swiper { + width: 100%; + height: 1632rpx; + box-sizing: border-box; + } + + .topic { + position: relative; + margin: 16rpx 48rpx; + padding: 48rpx 40rpx 0; + box-sizing: border-box; + background: #ffffff; + box-shadow: 0rpx 8rpx 32rpx 0rpx rgba(188, 188, 188, 0.18); + border-radius: 24rpx 24rpx 24rpx 24rpx; + &::before { + content: ''; + position: absolute; + bottom: -50rpx; + left: 52rpx; + width: calc(100% - 104rpx); + height: 50rpx; + background: rgba(55, 149, 247, 0.24); + border-radius: 0 0 24rpx 24rpx; + } + &::after { + content: ''; + position: absolute; + bottom: -30rpx; + left: 22rpx; + width: calc(100% - 44rpx); + height: 30rpx; + background: rgba(55, 149, 247, 0.8); + border-radius: 0 0 24rpx 24rpx; + } + + .order { + font-size: 60rpx; + color: #3795f7; + font-weight: bold; + + .all { + font-size: 44rpx; + color: #cdcdcd; + } + } + + .progress { + margin-top: 26rpx; + } + + .content { + margin-top: 34rpx; + font-size: 36rpx; + color: #222222; + line-height: 64rpx; + white-space: pre-line; + } + + .btn { + margin-top: 32rpx; + font-size: 36rpx; + color: #65686c; + line-height: 88rpx; + text-align: center; + height: 88rpx; + background: #f4f7fa; + border-radius: 84rpx 84rpx 84rpx 84rpx; + + &.active { + color: #ffffff; + background: #3795f7; + } + } + + .footer { + width: 100%; + padding: 60rpx 0; + box-sizing: border-box; + display: flex; + align-items: center; + justify-content: space-between; + + .prev { + flex: 1; + font-size: 36rpx; + color: #3795f7; + font-weight: bold; + display: flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + + .icon { + margin-right: 16rpx; + width: 44rpx; + height: 44rpx; + } + } + + .submit { + width: 290rpx; + height: 88rpx; + font-size: 36rpx; + color: #ffffff; + background: #3795f7; + border-radius: 96rpx 96rpx 96rpx 96rpx; + text-align: center; + line-height: 88rpx; + font-weight: normal; + } + } + } + + .end { + position: relative; + margin: 272rpx 48rpx 16rpx; + padding: 70rpx 52rpx 84rpx; + box-sizing: border-box; + background: #ffffff; + box-shadow: 0rpx 8rpx 32rpx 0rpx rgba(188, 188, 188, 0.18); + border-radius: 24rpx 24rpx 24rpx 24rpx; + .badge { + display: block; + margin: 0 auto; + width: 217rpx; + height: 182rpx; + } + .title { + font-size: 40rpx; + color: #222222; + font-weight: bold; + text-align: center; + } + .content { + margin-top: 30rpx; + font-size: 32rpx; + color: #222222; + } + .codes { + margin-top: 30rpx; + display: flex; + justify-content: space-between; + .c-item { + .code { + width: 246rpx; + height: 246rpx; + } + .name { + margin-top: 4rpx; + text-align: center; + font-size: 28rpx; + color: #222222; + } + } + } + .btn { + margin-top: 54rpx; + height: 88rpx; + text-align: center; + line-height: 88rpx; + font-size: 36rpx; + color: #fff; + background: #3795f7; + border-radius: 96rpx 96rpx 96rpx 96rpx; + } + } +} + +.relove { + position: fixed; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + z-index: 10; + width: 388rpx; + height: 350rpx; + background: rgba(0, 0, 0, 0.67); + border-radius: 42rpx 42rpx 42rpx 42rpx; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; + text-align: center; + .icon { + width: 84rpx; + height: 84rpx; + } + .content { + margin-top: 26rpx; + font-size: 40rpx; + color: #ffffff; + } +} + +.start { + padding: 710rpx 32rpx 0; + width: 654rpx; + height: 860rpx; + box-sizing: border-box; + .btn { + width: 596rpx; + height: 88rpx; + font-size: 36rpx; + color: #FFFFFF; + display: flex; + align-items: center; + justify-content: center; + background: #3795f7; + border-radius: 96rpx 96rpx 96rpx 96rpx; + } +} diff --git a/src/pages/topic/index.ts b/src/pages/topic/index.ts new file mode 100644 index 0000000..464bf9b --- /dev/null +++ b/src/pages/topic/index.ts @@ -0,0 +1,146 @@ +const app = getApp<IAppOption>(); +// const licia = require('miniprogram-licia'); + +Page({ + data: { + nav: 0, + percentage: 0, + question: [] as { questionId: string; title: string; answer?: '1' | '2' }[], + + back: false, + + start: true, + end: false, + + answerList: [ + ['非常了解', '一般了解', '完全不了解'], + ['非常了解', '一般了解', '完全不了解'], + ['非常了解', '一般了解', '完全不了解'], + ['非常了解', '一般了解', '完全不了解'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['非常了解', '一般了解', '完全不了解'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ['很感兴趣', '一般兴趣', '不感兴趣'], + ], + }, + onLoad(options) { + this.setData({ + back: options.back === '1', + }); + app.waitLogin(true).then(() => { + this.getList(); + }); + }, + getList() { + wx.ajax({ + method: 'GET', + url: '?r=shizhong/account/get-question', + data: {}, + }).then((res) => { + this.setData({ + question: res, + }); + }); + }, + handleEnd() { + app.waitLogin().then(() => { + wx.reLaunch({ + url: '/pages/home/index', + }); + }); + }, + // handleBtn: licia.debounce(function (e) { + // const { index, id } = e.currentTarget.dataset; + // const { question, nav } = this.data; + // question[index].answer = id; + // this.setData({ + // question, + // nav: nav === question.length - 1 ? nav : nav + 1, + // percentage: ((nav + 1) / question.length) * 100, + // }); + // }, 200), + handleBtn(e) { + const { index, id } = e.currentTarget.dataset; + const { question, nav } = this.data; + // 防止重复点击 + if (question[index].answer && nav > index) return; + question[index].answer = id; + this.setData({ + question, + nav: nav === question.length - 1 ? nav : nav + 1, + percentage: ((nav + 1) / question.length) * 100, + }); + }, + handlePrev() { + this.setData({ + nav: this.data.nav - 1, + }); + }, + handleSubmit() { + const answer = this.data.question.map((item) => { + return { + qId: item.questionId, + answer: item.answer, + }; + }); + wx.ajax({ + method: 'POST', + url: '?r=shizhong/account/answer-question', + data: { + answer: JSON.stringify(answer), + }, + }).then(() => { + this.setData({ + end: true, + }); + }); + }, + bindtransition() { + this.setData({ + nav: this.data.nav, + }); + }, + catchTouchMove() { + return false; + }, + handleStart() { + this.setData({ start: false }); + }, + handleBack() { + if (this.data.end) { + wx.navigateBack(); + } else { + wx.showModal({ + title: '确认退出?', + content: '还差一点就完成了,退出会清空所有答题,确认现在要退出吗?', + cancelText: '退出', + confirmText: '继续答题', + success: (res) => { + if (res.cancel) { + if (this.data.back) { + wx.navigateBack(); + } else { + wx.reLaunch({ + url: '/pages/home/index', + }); + } + } + }, + }); + } + }, +}); + +export {}; diff --git a/src/pages/topic/index.wxml b/src/pages/topic/index.wxml new file mode 100644 index 0000000..7802710 --- /dev/null +++ b/src/pages/topic/index.wxml @@ -0,0 +1,100 @@ +<view + class="page" + style="background: url('{{imageUrl}}topic{{end?'-end':''}}-bg.png?t={{Timestamp}}') no-repeat left {{menuButtonInfo.bottom+102}}rpx /100% 1284rpx;" +> + <van-nav-bar title="" border="{{false}}" custom-style="background:transparent" bind:click-left="handleBack" fixed> + <van-icon name="arrow-left" slot="left" color="#000" size="46rpx" /> + </van-nav-bar> + <swiper + class="swiper" + current="{{nav}}" + bindtransition="bindtransition" + style="margin-top:{{menuButtonInfo.bottom+73}}px;" + wx:if="{{!end}}" + > + <swiper-item wx:for="{{question}}" wx:key="index" wx:for-item="questionItem" catch:touchmove="catchTouchMove"> + <view class="topic"> + <view class="order"> + {{index + 1}}/ + <text class="all">{{question.length}}</text> + </view> + <view class="progress"> + <van-progress + percentage="{{percentage}}" + show-pivot="{{false}}" + stroke-width="{{8}}" + track-color="#F4F7FA" + color="#3795F7" + /> + </view> + <view class="content">{{questionItem.title}}</view> + <view + class="btn {{questionItem.answer==='1' && 'active'}}" + bind:tap="handleBtn" + data-id="1" + data-index="{{index}}" + > + {{answerList[index][0]}} + </view> + <view + class="btn {{questionItem.answer==='2' && 'active'}}" + bind:tap="handleBtn" + data-id="2" + data-index="{{index}}" + > + {{answerList[index][1]}} + </view> + <view + class="btn {{questionItem.answer==='3' && 'active'}}" + bind:tap="handleBtn" + data-id="3" + data-index="{{index}}" + > + {{answerList[index][2]}} + </view> + <view class="footer"> + <view class="prev" bind:tap="handlePrev" wx:if="{{index>0}}"> + <image class="icon" src="{{imageUrl}}icon-prev.png?t={{Timestamp}}"></image> + 上一题 + </view> + <view + class="submit" + wx:if="{{index === question.length-1 && question[question.length-1].answer}}" + bind:tap="handleSubmit" + > + 提交 + </view> + </view> + </view> + </swiper-item> + <swiper-item></swiper-item> + </swiper> + <view class="end" wx:if="{{end}}"> + <image class="badge" src="{{imageUrl}}topic-start-badge.png?t={{Timestamp}}"></image> + <view class="title"> + 提交成功 + <view></view> + 感谢您的参与! + </view> + <view class="content"> + 欢迎使用适中健康信息小程序,您将看到一个查有可依、科学性、体系化的健康信息世界,化零为整,随时查阅。 + </view> + <view class="codes"> + <view class="c-item"> + <image class="code" src="{{imageUrl}}topic-start-code1.png?t={{Timestamp}}" show-menu-by-longpress></image> + <view class="name">关注公众号</view> + </view> + <view class="c-item"> + <image class="code" src="{{imageUrl}}topic-start-code2.png?t={{Timestamp}}" show-menu-by-longpress></image> + <view class="name">关注企微号</view> + </view> + </view> + <view class="btn" bind:tap="handleEnd">现在体验</view> + </view> +</view> + +<van-popup show="{{ start }}" custom-style="background:transparent" round> + <view class="start" style="background: url('{{imageUrl}}topic-start.png?t={{Timestamp}}') no-repeat center /100%;"> + <view class="btn" bind:tap="handleStart">开始答题</view> + </view> +</van-popup> diff --git a/src/pages/userInfo/index.json b/src/pages/userInfo/index.json new file mode 100644 index 0000000..fb43e76 --- /dev/null +++ b/src/pages/userInfo/index.json @@ -0,0 +1,7 @@ +{ + "navigationStyle": "default", + "navigationBarTitleText": "个人信息", + "usingComponents": { + "uploadFile": "/components/uploadFile/index" + } +} diff --git a/src/pages/userInfo/index.scss b/src/pages/userInfo/index.scss new file mode 100644 index 0000000..f0171e1 --- /dev/null +++ b/src/pages/userInfo/index.scss @@ -0,0 +1,56 @@ +page { + background-color: #f3f4f5; +} +.page { + padding: 32rpx; + .container { + border-radius: 16rpx; + background-color: #fff; + .row { + padding: 36rpx 32rpx; + display: flex; + align-items: center; + justify-content: space-between; + border-bottom: 1px solid #f0f0f0; + &:last-of-type { + border: none; + } + &.small { + padding: 24rpx 32rpx; + } + .label { + font-size: 36rpx; + color: #222222; + } + .wrap { + flex: 1; + display: flex; + justify-content: flex-end; + .avatar { + position: relative; + width: 100rpx; + height: 100rpx; + .a-img { + width: 100rpx; + height: 100rpx; + border-radius: 50%; + } + .icon { + position: absolute; + bottom: 0; + right: 0; + width: 32rpx; + height: 32rpx; + } + } + .input { + text-align: right; + font-size: 36rpx; + } + .place-input { + color: #babdc1; + } + } + } + } +} diff --git a/src/pages/userInfo/index.ts b/src/pages/userInfo/index.ts new file mode 100644 index 0000000..2f86ab6 --- /dev/null +++ b/src/pages/userInfo/index.ts @@ -0,0 +1,59 @@ +const app = getApp<IAppOption>(); + +Page({ + data: { + username: '', + userInfo: {} as any, + }, + onLoad() { + app.waitLogin().then(() => { + app.getUserInfo(this); + }); + }, + handleFile(e) { + const avatar = e.detail.fileUrl; + this.setData({ + 'userInfo.avatar': avatar, + }); + this.updateUserInfo(); + }, + handleInputBlur(e) { + this.setData({ + username: e.detail.value, + }); + }, + handleInputBlurPass(e) { + if (e.detail.pass) { + this.setData({ + [`userInfo.username`]: this.data.username, + }); + this.updateUserInfo(); + } + }, + updateUserInfo() { + const { avatar, username } = this.data.userInfo; + if (!username) { + wx.showToast({ + title: '请输入用户名', + icon: 'none', + }); + return; + } + wx.ajax({ + method: 'POST', + url: '?r=shizhong/account/update-info', + data: { + userName: username, + avatar, + }, + }).then(() => { + app.getUserInfo(this); + wx.showToast({ + title: '保存成功', + icon: 'none', + }); + }); + }, +}); + +export {}; diff --git a/src/pages/userInfo/index.wxml b/src/pages/userInfo/index.wxml new file mode 100644 index 0000000..14b9cc3 --- /dev/null +++ b/src/pages/userInfo/index.wxml @@ -0,0 +1,42 @@ +<view class="page"> + <view class="container"> + <view class="row small"> + <view class="label">头像</view> + <view class="wrap"> + <uploadFile + class="avatar" + chooseAvatar + data-key="Img" + bind:file="handleFile" + > + <image + wx:if="{{userInfo.avatar}}" + class="a-img" + src="{{userInfo.avatar}}" + ></image> + <image + wx:else + class="a-img" + src="{{imageUrl}}user.png?t={{Timestamp}}" + ></image> + <image class="icon" src="{{imageUrl}}icon-pic.png?t={{Timestamp}}"></image> + </uploadFile> + </view> + </view> + <view class="row"> + <view class="label">昵称</view> + <view class="wrap"> + <input + class="input" + type="nickname" + value="{{userInfo.username}}" + placeholder-class="place-input" + placeholder="请输入昵称" + data-key="username" + bindblur="handleInputBlur" + bindnicknamereview="handleInputBlurPass" + ></input> + </view> + </view> + </view> +</view> diff --git a/src/sitemap.json b/src/sitemap.json new file mode 100644 index 0000000..ca02add --- /dev/null +++ b/src/sitemap.json @@ -0,0 +1,7 @@ +{ + "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html", + "rules": [{ + "action": "allow", + "page": "*" + }] +} \ No newline at end of file diff --git a/src/utils/component.ts b/src/utils/component.ts new file mode 100644 index 0000000..d3b9c1f --- /dev/null +++ b/src/utils/component.ts @@ -0,0 +1,58 @@ +/** + * 使用方法: + * 1、app.js 引入此文件:const page = require('xx/xx/page); + * 2、app.js onLaunch 的时候 Page = page + */ + +const originalComponent = Component; + +function component( + config: WechatMiniprogram.Component.Instance< + WechatMiniprogram.Component.DataOption, + WechatMiniprogram.Component.PropertyOption, + WechatMiniprogram.Component.MethodOption, + WechatMiniprogram.Component.BehaviorOption + >, +) { + if (config?.lifetimes?.attached) { + const originalOnAttached = config.lifetimes.attached; + config.lifetimes.attached = function (options) { + setImageParams(this); + getApp().getMenuInfo(this); + + if (originalOnAttached) { + originalOnAttached.call(this, options); + } + }; + } else { + const originalOnAttached = config.attached; + config.attached = function (options) { + setImageParams(this); + getApp().getMenuInfo(this); + + if (originalOnAttached) { + originalOnAttached.call(this, options); + } + }; + } + + return originalComponent(config); +} + +function setImageParams( + currPage: WechatMiniprogram.Component.Instance< + WechatMiniprogram.Component.DataOption, + WechatMiniprogram.Component.PropertyOption, + WechatMiniprogram.Component.MethodOption, + WechatMiniprogram.Component.BehaviorOption + >, +) { + const date = new Date(); + const Timestamp = date.getTime(); + currPage.setData({ + imageUrl: getApp().globalData.imageUrl, + Timestamp, + }); +} + +export default component; diff --git a/src/utils/crypto.ts b/src/utils/crypto.ts new file mode 100644 index 0000000..421e131 --- /dev/null +++ b/src/utils/crypto.ts @@ -0,0 +1,34 @@ +import CryptoJS from 'crypto-js'; +// 使用密钥长度128的RIJNDAEL算法解码数据,加密模式:ECB + +const key = 'hbsaas1mobile2a6f8'; + +// 解密函数 +export function decryptData(encryptedData) { + // Step 1: 替换 base64 字符中的 "+" 和 "/" 为 URL 安全的字符 + encryptedData = encryptedData.replace(/-/g, '+').replace(/_/g, '/'); + + // Step 2: 解码 base64 数据 + const decodedData = CryptoJS.enc.Base64.parse(encryptedData); + + // Step 3: 填充 key,确保它的长度为 24 字节(128 位) + let paddedKey = key; + const keyLength = paddedKey.length; + if (keyLength < 24) { + paddedKey = paddedKey.padEnd(24, '\0'); // 用零填充至 16 字节 + } + + // Step 4: 使用 AES ECB 模式解密 + const decryptedData = CryptoJS.AES.decrypt({ ciphertext: decodedData }, CryptoJS.enc.Utf8.parse(paddedKey), { + mode: CryptoJS.mode.ECB, + padding: CryptoJS.pad.Pkcs7, // 与 PHP 中的 PKCS5 padding 对应 + }); + + // Step 5: 转换解密结果为明文字符串 + return decryptedData.toString(CryptoJS.enc.Utf8); +} + +// 示例使用: +// const encryptedData = "6QUbssj247RF6oIMf9nqT6F5LoYpAkFENy5wc572gws"; // 从 PHP 获取的加密数据 +// const decrypted = decryptData(encryptedData, key); +// console.log(decrypted); // 输出解密后的数据 diff --git a/src/utils/dayjs/day-zh-cn.js b/src/utils/dayjs/day-zh-cn.js new file mode 100644 index 0000000..59f5cc0 --- /dev/null +++ b/src/utils/dayjs/day-zh-cn.js @@ -0,0 +1,2 @@ + +!function(e,_){"object"==typeof exports&&"undefined"!=typeof module?module.exports=_(require("dayjs")):"function"==typeof define&&define.amd?define(["dayjs"],_):(e="undefined"!=typeof globalThis?globalThis:e||self).dayjs_locale_zh_cn=_(e.dayjs)}(this,(function(e){"use strict";function _(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=_(e),d={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,_){return"W"===_?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,_){var t=100*e+_;return t<600?"凌晨":t<900?"早上":t<1100?"上午":t<1300?"中午":t<1800?"下午":"晚上"}};return t.default.locale(d,null,!0),d})); diff --git a/src/utils/dayjs/relativeTime.d.ts b/src/utils/dayjs/relativeTime.d.ts new file mode 100644 index 0000000..444b0c2 --- /dev/null +++ b/src/utils/dayjs/relativeTime.d.ts @@ -0,0 +1,24 @@ +import { PluginFunc, ConfigType } from 'dayjs' + +declare interface RelativeTimeThreshold { + l: string + r?: number + d?: string +} + +declare interface RelativeTimeOptions { + rounding?: (num: number) => number + thresholds?: RelativeTimeThreshold[] +} + +declare const plugin: PluginFunc<RelativeTimeOptions> +export = plugin + +declare module 'dayjs' { + interface Dayjs { + fromNow(withoutSuffix?: boolean): string + from(compared: ConfigType, withoutSuffix?: boolean): string + toNow(withoutSuffix?: boolean): string + to(compared: ConfigType, withoutSuffix?: boolean): string + } +} diff --git a/src/utils/dayjs/relativeTime.js b/src/utils/dayjs/relativeTime.js new file mode 100644 index 0000000..898eee6 --- /dev/null +++ b/src/utils/dayjs/relativeTime.js @@ -0,0 +1 @@ +!function(r,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(r="undefined"!=typeof globalThis?globalThis:r||self).dayjs_plugin_relativeTime=e()}(this,(function(){"use strict";return function(r,e,t){r=r||{};var n=e.prototype,o={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function i(r,e,t,o){return n.fromToBase(r,e,t,o)}t.en.relativeTime=o,n.fromToBase=function(e,n,i,d,u){for(var f,a,s,l=i.$locale().relativeTime||o,h=r.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],m=h.length,c=0;c<m;c+=1){var y=h[c];y.d&&(f=d?t(e).diff(i,y.d,!0):i.diff(e,y.d,!0));var p=(r.rounding||Math.round)(Math.abs(f));if(s=f>0,p<=y.r||!y.r){p<=1&&c>0&&(y=h[c-1]);var v=l[y.l];u&&(p=u(""+p)),a="string"==typeof v?v.replace("%d",p):v(p,n,y.l,s);break}}if(n)return a;var M=s?l.future:l.past;return"function"==typeof M?M(a):M.replace("%s",a)},n.to=function(r,e){return i(r,e,this,!0)},n.from=function(r,e){return i(r,e,this)};var d=function(r){return r.$u?t.utc():t()};n.toNow=function(r){return this.to(d(this),r)},n.fromNow=function(r){return this.from(d(this),r)}}})); \ No newline at end of file diff --git a/src/utils/page.ts b/src/utils/page.ts new file mode 100644 index 0000000..3374017 --- /dev/null +++ b/src/utils/page.ts @@ -0,0 +1,63 @@ +/** + * 使用方法: + * 1、app.js 引入此文件:const page = require('xx/xx/page); + * 2、app.js onLaunch 的时候 Page = page + */ + +const originalPage = Page; + +function page(config: WechatMiniprogram.Page.Instance<WechatMiniprogram.IAnyObject, WechatMiniprogram.IAnyObject>) { + const originalOnLoad = config.onLoad; + config.onLoad = function (options) { + setImageParams(this); + getApp().getMenuInfo(this); + + if (originalOnLoad) { + originalOnLoad.call(this, options); + } + }; + + const originalOnShareAppMessage = config.onShareAppMessage; + config.onShareAppMessage = function (options) { + if (originalOnShareAppMessage) { + return originalOnShareAppMessage.call(this, options); + } else { + // const date = new Date(); + // const Timestamp = date.getTime(); + + // const pages = getCurrentPages(); + // const currentPage = pages[pages.length - 1]; + // const url = currentPage.route; + + return { + // imageUrl: `${getApp().globalData.imageUrl}1/1.png?t=${Timestamp}`, + }; + } + }; + + config.onPageScroll = function (e: any) { + const { scrollTop } = e; + let background = 'transparent'; + if (scrollTop > 20) { + background = '#fff'; + } + this.setData({ + background, + }); + }; + + return originalPage(config); +} + +function setImageParams( + currPage: WechatMiniprogram.Page.Instance<WechatMiniprogram.IAnyObject, WechatMiniprogram.IAnyObject>, +) { + const date = new Date(); + const Timestamp = date.getTime(); + currPage.setData({ + imageUrl: getApp().globalData.imageUrl, + Timestamp, + }); +} + +export default page; diff --git a/src/utils/request.ts b/src/utils/request.ts new file mode 100644 index 0000000..816f481 --- /dev/null +++ b/src/utils/request.ts @@ -0,0 +1,71 @@ +interface IGlobalParams { + gUrl: string +} + +export const request = function ( + { gUrl }: IGlobalParams, + { url, method, data, header, showMsg = true, loading = false, isJSON = false, ...options }: IAgaxParams, +): Promise<any> { + return new Promise((resolve, reject) => { + if (loading) { + wx.showLoading({ + title: '加载中...', + mask: true, + }) + } + wx.request({ + header: { + loginState: getApp().globalData.loginState, + ...header, + }, + url: gUrl + url, + method, + data: { + loginState: getApp().globalData.loginState, + ...(data as object), + }, + ...options, + success(res: any) { + const { code, data } = res.data + if (isJSON) { + resolve(res.data) + } else if (code === 0) { + resolve(data) + } else if (showMsg) { + const msg = errPicker(res.data) + if (loading) { + setTimeout(() => { + wx.showToast({ + title: msg, + icon: 'none', + }) + }, 30) + } else { + wx.showToast({ + title: msg, + icon: 'none', + }) + reject(res) + } + } else { + reject(res) + } + }, + fail(err) { + reject(err) + }, + complete() { + if (loading) { + wx.hideLoading() + } + }, + }) + }) +} + +function errPicker(err: any) { + if (typeof err === 'string') { + return err + } + return err.data || err.msg || err.errMsg || (err.detail && err.detail.errMsg) || '未知错误' +} diff --git a/src/utils/util.ts b/src/utils/util.ts new file mode 100644 index 0000000..fc0ca95 --- /dev/null +++ b/src/utils/util.ts @@ -0,0 +1,64 @@ +export const formatTime = (date: Date) => { + const year = date.getFullYear(); + const month = date.getMonth() + 1; + const day = date.getDate(); + const hour = date.getHours(); + const minute = date.getMinutes(); + const second = date.getSeconds(); + + return `${[year, month, day].map(formatNumber).join('/')} ${[hour, minute, second].map(formatNumber).join(':')}`; +}; + +export const formatNumber = (n: number) => { + const s = n.toString(); + return s[1] ? s : `0${s}`; +}; + +/** + * 获取当前页面路径 + * @returns string + */ +export const getCurrentPageUrl = function () { + const pages = getCurrentPages(); + const currentPage = pages[pages.length - 1]; + const url = `/${currentPage.route}`; + return url; +}; + +/** + * 获取当前页面路径 & 参数 + * @returns string + */ +export const getCurrentPageUrlWithArgs = function () { + const pages = getCurrentPages(); + const currentPage = pages[pages.length - 1]; + const url = currentPage.route; + const options = currentPage.options; + let urlWithArgs = `/${url}?`; + for (const key in options) { + const value = options[key]; + urlWithArgs += `${key}=${value}&`; + } + urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1); + return urlWithArgs; +}; + +const parseUrlArgsToArray = (urlArgs) => { + urlArgs = urlArgs.split('&'); + const results = {}; + urlArgs.forEach((arg) => { + arg = arg.split('='); + if (arg[0] && arg[1]) { + results[arg[0]] = arg[1]; + } + }); + return results; +}; + +export const parseScene = (scene) => { + if (scene) { + return parseUrlArgsToArray(decodeURIComponent(scene)); + } else { + return null; + } +}; diff --git a/src/utils/util.wxs b/src/utils/util.wxs new file mode 100644 index 0000000..d56aab6 --- /dev/null +++ b/src/utils/util.wxs @@ -0,0 +1,12 @@ +function include(value, arr) { + for (var i = 0; i < arr.length; i++) { + if (arr[i] === value) { + return true; + } + } + return false; +} + +module.exports = { + include: include, +}; diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..11a248b --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,30 @@ +{ + "compilerOptions": { + "target": "ES2020", + "lib": ["ES2020"], + "experimentalDecorators": true, + "baseUrl": ".", + "module": "CommonJS", + "paths": { + "@vant/weapp/*": ["path/to/node_modules/@vant/weapp/dist/*"], + "@/*": ["src/*"] + }, + "typeRoots": ["./typings"], + "types": ["miniprogram-api-typings"], + "allowJs": true, + "strict": true, + "strictNullChecks": true, + "strictPropertyInitialization": true, + "alwaysStrict": true, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": false, + "noImplicitReturns": true, + "noImplicitThis": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true + }, + "include": ["./**/*.ts"], + "exclude": ["node_modules"] +} diff --git a/typings/index.d.ts b/typings/index.d.ts new file mode 100644 index 0000000..fb8efe7 --- /dev/null +++ b/typings/index.d.ts @@ -0,0 +1,70 @@ +interface IAppOption { + globalData: { + userInfo?: IUserInfo; + url: string; + upFileUrl: string; + imageUrl: string; + loginState: string; + isLogin: 0 | 1 | 999; + isAnswer: '0' | '1'; + scene: null | { [key: string]: any }; + backPath: string; + }; + userInfoReadyCallback?: WechatMiniprogram.GetUserInfoSuccessCallback; + waitLogin: (waitLoginState?: boolean, requireLogin?: boolean, backPath?: string) => Promise<any>; + getMenuInfo: (arg0: WechatMiniprogram.Page.Instance<any, any>) => void; + getUserInfo: (arg0: WechatMiniprogram.Page.Instance<any, any>, arg1?: (arg0: any) => void) => void; +} + +interface IAgaxParams extends WechatMiniprogram.RequestOption { + showMsg?: boolean; + loading?: boolean; + isJSON?: boolean; +} + +declare namespace WechatMiniprogram { + export interface Wx { + ajax: (arg0: IAgaxParams) => Promise<any>; + WebIM; + } +} + +interface IUserInfo { + UserId: string; + IsDoctor: number; + DoctorId: number; + Name: string; + Img: string; + Telephone: string; + HospitalId: string; + TitleType: number; + OtherTitle: string; + DoctorLevel: number; + Introduce: string; + Department: IDepartment[]; + DepartmentId: string[]; + Specialty: ISpecialty[]; + SpecialtyId: string[]; + HospitalName: string; + HospitalClassification: string; + HospitalLevel: string; + ProvinceName: string; + CityName: string; + CountyName: string; + Address: string; + HospitalClassificationName: string; + HospitalLevelName: string; +} + +interface IDepartment { + DepartmentId: string; + DepartmentName: string; + DoctorId: string; +} + +interface ISpecialty { + SpecialtyId: string; + SpecialtyName: string; + DepartmentId: string; + DoctorId: string; +}

    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�dlJ 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 U<62f!0Rs?ty85}Sb4q9e056+9(*OVf literal 0 HcmV?d00001 diff --git a/src/images/topic-start.png b/src/images/topic-start.png new file mode 100644 index 0000000000000000000000000000000000000000..4d75520040eb0f0656de9b32217b9e3e4494420f GIT binary patch literal 224965 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

  • c%tJeMUdSLIDYcJ+}5&;S~8!j4du0hT=hH6B|^OSjVC+PM%%R_h4kRz0}I1FQ2GfVOh`0bi_Awa z?nv4aSZRr0!&6N^!zVbLJTDP6J~#JNal)=Si93aF+t=!!2cQ{5sCn_Tn^;iEvF>m} zT9DlANq%H~*f}6PGWSg7rz=q=e}7F82%_Px&^GQTORA@u(SxsnFM-)D1c*zrzg`%M)dBmB)g`k^);HKcBg?5phDF#faf{RKO zk-Cv8DrV6_pzW?uOA1;LR1|C}1qBy%rGi3tmOJwyF_ntZD`)1CZGxr;WE&gCH@k=SUMNzb~)oLyDDo)P`jE#*o1_uXkA>#fxj;ET< z=AXSF(Gvnv%Fl!lHvnMQ3TS4YW9Ez2+Ba1ashU7dO8Ko2;sOBFe4xzyXlZF_W?^BW zRTYWK2q>jKKtwm|pJsq-MNxDt48w<2kf?-!l=7eu;x+&@Izch>a{zdXh$lR-5fNRm z)_%WP5}PIk&To`b8xg1}r7j_&bKLbX^Qy9YP&xQn;`Hefr1VQloW&xEM?@|g8|LW}Cg$MwE4T3|+3>)7>EsGmap6k0xN_ZwMeBDAXoXBwp#1VOOjPt`lC zLVW`7yAN#n6)2PcdB(i6J&*@X8Jofc+REF@4#{xq{m^KwpR5R2%)Drf*->WZsv0Au zbYgI)ApEFPzFbp-wboA7SQTIWU%0A(Rplp5R{1i~@|R;cvB?-SQ&qsK{iG4tj)+cL zS(Orr=(4ZJR1Ku8ztlFal=>!-zdQZjjG}0+>_tRbfLY_#JBK)3^e!S!q&RrZ%>QRO z?$vi=Oqa~F?m;S%_#BBY>AP3J^7{1;f0^=na+@*>0A2EW-hfrx6(-;SxC_0Zp`pV< z2)7#UUTpOSzG{G3{`_Cu%oWIT_`bhyc>-?%3@>9(k4t?T00000NkvXXu0mjfe2@PF literal 0 HcmV?d00001 diff --git a/src/images/tabbar/tab2.png b/src/images/tabbar/tab2.png new file mode 100644 index 0000000000000000000000000000000000000000..01c56469b4902888ec7210e130f6b2c420fd6312 GIT binary patch literal 1472 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 j$k2;|ek7JAuD|NkoJA_c{Kv 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 literal 0 HcmV?d00001 diff --git a/src/images/topic-card-bg.png b/src/images/topic-card-bg.png new file mode 100644 index 0000000000000000000000000000000000000000..dfc03ab225a5c3b9b0eac99bfcc1ba46822e039b GIT binary patch literal 119724 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