From b2fd3ba3471e9cddfed0115317f581e96cea7ae9 Mon Sep 17 00:00:00 2001 From: YeMingfei666 <1619116647@qq.com> Date: Fri, 20 Dec 2024 18:01:37 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0other=E5=88=86=E5=8C=85?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=20=E6=88=91=E7=9A=84=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E9=87=8C=E5=A2=9E=E5=8A=A0=E8=B7=B3=E8=BD=ACother=E5=88=86?= =?UTF-8?q?=E5=8C=85=E8=B7=B3=E8=BD=AC=EF=BC=88=E4=BB=85=E5=9C=A8ios?= =?UTF-8?q?=E4=B8=8D=E6=98=AF=E6=B5=8F=E8=A7=88=E5=99=A8=E5=AE=A1=E6=A0=B8?= =?UTF-8?q?=E6=97=B6=E5=B1=95=E7=A4=BA=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.vue | 72 +- common/config/config.js | 8 + components/other-xuafu.vue | 458 +++ libs/components/demo-title.vue | 94 + libs/components/dynamic-demo-template.vue | 689 ++++ libs/components/multiple-options-demo.vue | 147 + libs/components/nav-index-button.vue | 169 + libs/mixin/dynamic_demo_mixin.js | 52 + libs/mixin/template_page_mixin.js | 60 + libs/navigation/navigation.js | 330 ++ main.js | 13 +- other/blogger/blogger.vue | 1206 +++++++ other/blogger/details.vue | 800 +++++ other/index/index.vue | 1042 ++++++ other/slotMachine/components/pop-ling-qu.vue | 163 + other/slotMachine/slotMachine.vue | 125 +- other/static/ad.png | Bin 0 -> 154587 bytes other/static/avatar/5.png | Bin 0 -> 20656 bytes other/static/avatar/6.png | Bin 0 -> 21999 bytes other/static/avatar/7.png | Bin 0 -> 20118 bytes other/tools/tools.vue | 779 +++++ other/topic/reserve.vue | 570 ++++ other/topic/topic.vue | 1287 ++++++++ pages.json | 80 +- pages/me/index.vue | 9 +- store/$t.mixin.js | 28 + store/index.js | 75 + tuniao-ui/README.md | 4 + .../tn-action-sheet/tn-action-sheet.vue | 202 ++ .../tn-avatar-group/tn-avatar-group.vue | 104 + tuniao-ui/components/tn-avatar/tn-avatar.vue | 298 ++ tuniao-ui/components/tn-badge/tn-badge.vue | 173 + tuniao-ui/components/tn-button/tn-button.vue | 302 ++ .../components/tn-calendar/tn-calendar.vue | 707 ++++ .../tn-car-keyboard/tn-car-keyboard.vue | 320 ++ .../tn-cascade-selection.vue | 654 ++++ .../tn-checkbox-group/tn-checkbox-group.vue | 134 + .../components/tn-checkbox/tn-checkbox.vue | 328 ++ .../tn-circle-progress/tn-circle-progress.vue | 223 ++ .../tn-collapse-item/tn-collapse-item.vue | 236 ++ .../components/tn-collapse/tn-collapse.vue | 98 + .../tn-color-icon/tn-color-icon.vue | 318 ++ .../tn-column-notice/tn-column-notice.vue | 251 ++ .../tn-count-down/tn-count-down.vue | 314 ++ .../tn-count-scroll/tn-count-scroll.vue | 171 + .../components/tn-count-to/tn-count-to.vue | 231 ++ tuniao-ui/components/tn-cropper/index.wxs | 328 ++ .../components/tn-cropper/tn-cropper.vue | 570 ++++ .../tn-custom-swiper-item/index.wxs | 288 ++ .../tn-custom-swiper-item.vue | 277 ++ .../tn-custom-swiper/tn-custom-swiper.vue | 535 +++ tuniao-ui/components/tn-drag/index.wxs | 265 ++ tuniao-ui/components/tn-drag/tn-drag.vue | 278 ++ tuniao-ui/components/tn-empty/tn-empty.vue | 190 ++ tuniao-ui/components/tn-fab/tn-fab.vue | 523 +++ .../components/tn-form-item/tn-form-item.vue | 457 +++ tuniao-ui/components/tn-form/tn-form.vue | 139 + .../components/tn-goods-nav/tn-goods-nav.vue | 382 +++ .../components/tn-grid-item/tn-grid-item.vue | 114 + tuniao-ui/components/tn-grid/tn-grid.vue | 111 + .../tn-image-upload-drag.vue | 1011 ++++++ .../tn-image-upload/tn-image-upload.vue | 645 ++++ .../tn-index-anchor/tn-index-anchor.vue | 90 + .../tn-index-list/tn-index-list.vue | 361 ++ tuniao-ui/components/tn-input/tn-input.vue | 427 +++ .../components/tn-keyboard/tn-keyboard.vue | 220 ++ .../components/tn-landscape/tn-landscape.vue | 225 ++ .../components/tn-lazy-load/tn-lazy-load.vue | 254 ++ .../tn-line-progress/tn-line-progress.vue | 143 + .../components/tn-list-cell/tn-list-cell.vue | 209 ++ .../components/tn-list-view/tn-list-view.vue | 184 ++ .../components/tn-load-more/tn-load-more.vue | 188 ++ .../components/tn-loading/tn-loading.vue | 114 + tuniao-ui/components/tn-modal/tn-modal.vue | 246 ++ .../components/tn-nav-bar/tn-nav-bar.vue | 355 ++ .../tn-notice-bar/tn-notice-bar.vue | 209 ++ .../tn-number-box/tn-number-box.vue | 401 +++ .../tn-number-keyboard/tn-number-keyboard.vue | 182 + tuniao-ui/components/tn-picker/tn-picker.vue | 723 ++++ tuniao-ui/components/tn-popup/tn-popup.vue | 491 +++ .../tn-radio-group/tn-radio-group.vue | 124 + tuniao-ui/components/tn-radio/tn-radio.vue | 265 ++ tuniao-ui/components/tn-rate/tn-rate.vue | 334 ++ .../components/tn-read-more/tn-read-more.vue | 222 ++ .../tn-row-notice/tn-row-notice.vue | 301 ++ .../tn-scroll-list/tn-scroll-list.vue | 177 + .../tn-scroll-view/tn-scroll-view.vue | 401 +++ tuniao-ui/components/tn-select/tn-select.vue | 380 +++ .../tn-sign-board/tn-sign-board.vue | 690 ++++ .../components/tn-skeleton/tn-skeleton.vue | 254 ++ tuniao-ui/components/tn-slider/tn-slider.vue | 255 ++ .../components/tn-stack-swiper/index-h5.wxs | 657 ++++ .../components/tn-stack-swiper/index.wxs | 657 ++++ .../tn-stack-swiper/tn-stack-swiper.vue | 284 ++ tuniao-ui/components/tn-steps/tn-steps.vue | 346 ++ tuniao-ui/components/tn-sticky/tn-sticky.vue | 186 ++ .../tn-subsection/tn-subsection.vue | 410 +++ .../components/tn-swipe-action-item/index.wxs | 230 ++ .../tn-swipe-action-item.vue | 236 ++ .../tn-swipe-action/tn-swipe-action.vue | 61 + tuniao-ui/components/tn-swiper/tn-swiper.vue | 364 ++ tuniao-ui/components/tn-switch/tn-switch.vue | 241 ++ tuniao-ui/components/tn-tabbar/tn-tabbar.vue | 576 ++++ tuniao-ui/components/tn-table/tn-table.vue | 100 + .../tn-tabs-swiper/tn-tabs-swiper.vue | 444 +++ tuniao-ui/components/tn-tabs/tn-tabs.vue | 340 ++ tuniao-ui/components/tn-tag/tn-tag.vue | 223 ++ tuniao-ui/components/tn-td/tn-td.vue | 307 ++ .../tn-time-line-item/tn-time-line-item.vue | 71 + .../tn-time-line-item.vue_bk | 71 + .../components/tn-time-line/tn-time-line.vue | 39 + .../tn-time-line/tn-time-line.vue_bk | 39 + tuniao-ui/components/tn-tips/tn-tips.vue | 240 ++ tuniao-ui/components/tn-toast/tn-toast.vue | 227 ++ tuniao-ui/components/tn-tr/tn-tr.vue | 210 ++ .../components/tn-tree-node/tn-tree-node.vue | 143 + .../components/tn-tree-view/tn-tree-view.vue | 50 + .../tn-verification-code-input.vue | 324 ++ .../tn-verification-code.vue | 149 + .../components/tn-waterfall/tn-waterfall.vue | 165 + tuniao-ui/iconfont.css | 2941 +++++++++++++++++ tuniao-ui/index.js | 70 + tuniao-ui/index.scss | 13 + tuniao-ui/libs/config/color.js | 15 + tuniao-ui/libs/config/zIndex.js | 17 + tuniao-ui/libs/css/color.scss | 563 ++++ tuniao-ui/libs/css/main.scss | 722 ++++ tuniao-ui/libs/css/style.h5.scss | 35 + tuniao-ui/libs/css/style.mp.scss | 52 + tuniao-ui/libs/function/$parent.js | 18 + tuniao-ui/libs/function/array.js | 22 + tuniao-ui/libs/function/color.js | 270 ++ tuniao-ui/libs/function/colorUtils.js | 270 ++ tuniao-ui/libs/function/deepClone.js | 29 + tuniao-ui/libs/function/message.js | 74 + tuniao-ui/libs/function/messageUtils.js | 74 + tuniao-ui/libs/function/number.js | 128 + tuniao-ui/libs/function/string.js | 69 + tuniao-ui/libs/function/test.js | 232 ++ .../libs/function/updateCustomBarInfo.js | 44 + tuniao-ui/libs/function/uuid.js | 41 + tuniao-ui/libs/mixin/components_color.js | 47 + tuniao-ui/libs/mixin/mixin.js | 68 + tuniao-ui/libs/mixin/mpShare.js | 30 + tuniao-ui/libs/mixin/touch.js | 61 + tuniao-ui/libs/utils/area.js | 1 + tuniao-ui/libs/utils/async-validator.js | 1356 ++++++++ tuniao-ui/libs/utils/calendar.js | 546 +++ tuniao-ui/libs/utils/city.js | 1 + tuniao-ui/libs/utils/emitter.js | 55 + tuniao-ui/libs/utils/province.js | 1 + tuniao-ui/theme.scss | 183 + uni.scss | 1 + utils/api.js | 11 + 154 files changed, 43228 insertions(+), 84 deletions(-) create mode 100644 common/config/config.js create mode 100644 components/other-xuafu.vue create mode 100644 libs/components/demo-title.vue create mode 100644 libs/components/dynamic-demo-template.vue create mode 100644 libs/components/multiple-options-demo.vue create mode 100644 libs/components/nav-index-button.vue create mode 100644 libs/mixin/dynamic_demo_mixin.js create mode 100644 libs/mixin/template_page_mixin.js create mode 100644 libs/navigation/navigation.js create mode 100644 other/blogger/blogger.vue create mode 100644 other/blogger/details.vue create mode 100644 other/index/index.vue create mode 100644 other/slotMachine/components/pop-ling-qu.vue create mode 100644 other/static/ad.png create mode 100644 other/static/avatar/5.png create mode 100644 other/static/avatar/6.png create mode 100644 other/static/avatar/7.png create mode 100644 other/tools/tools.vue create mode 100644 other/topic/reserve.vue create mode 100644 other/topic/topic.vue create mode 100644 store/$t.mixin.js create mode 100644 store/index.js create mode 100644 tuniao-ui/README.md create mode 100644 tuniao-ui/components/tn-action-sheet/tn-action-sheet.vue create mode 100644 tuniao-ui/components/tn-avatar-group/tn-avatar-group.vue create mode 100644 tuniao-ui/components/tn-avatar/tn-avatar.vue create mode 100644 tuniao-ui/components/tn-badge/tn-badge.vue create mode 100644 tuniao-ui/components/tn-button/tn-button.vue create mode 100644 tuniao-ui/components/tn-calendar/tn-calendar.vue create mode 100644 tuniao-ui/components/tn-car-keyboard/tn-car-keyboard.vue create mode 100644 tuniao-ui/components/tn-cascade-selection/tn-cascade-selection.vue create mode 100644 tuniao-ui/components/tn-checkbox-group/tn-checkbox-group.vue create mode 100644 tuniao-ui/components/tn-checkbox/tn-checkbox.vue create mode 100644 tuniao-ui/components/tn-circle-progress/tn-circle-progress.vue create mode 100644 tuniao-ui/components/tn-collapse-item/tn-collapse-item.vue create mode 100644 tuniao-ui/components/tn-collapse/tn-collapse.vue create mode 100644 tuniao-ui/components/tn-color-icon/tn-color-icon.vue create mode 100644 tuniao-ui/components/tn-column-notice/tn-column-notice.vue create mode 100644 tuniao-ui/components/tn-count-down/tn-count-down.vue create mode 100644 tuniao-ui/components/tn-count-scroll/tn-count-scroll.vue create mode 100644 tuniao-ui/components/tn-count-to/tn-count-to.vue create mode 100644 tuniao-ui/components/tn-cropper/index.wxs create mode 100644 tuniao-ui/components/tn-cropper/tn-cropper.vue create mode 100644 tuniao-ui/components/tn-custom-swiper-item/index.wxs create mode 100644 tuniao-ui/components/tn-custom-swiper-item/tn-custom-swiper-item.vue create mode 100644 tuniao-ui/components/tn-custom-swiper/tn-custom-swiper.vue create mode 100644 tuniao-ui/components/tn-drag/index.wxs create mode 100644 tuniao-ui/components/tn-drag/tn-drag.vue create mode 100644 tuniao-ui/components/tn-empty/tn-empty.vue create mode 100644 tuniao-ui/components/tn-fab/tn-fab.vue create mode 100644 tuniao-ui/components/tn-form-item/tn-form-item.vue create mode 100644 tuniao-ui/components/tn-form/tn-form.vue create mode 100644 tuniao-ui/components/tn-goods-nav/tn-goods-nav.vue create mode 100644 tuniao-ui/components/tn-grid-item/tn-grid-item.vue create mode 100644 tuniao-ui/components/tn-grid/tn-grid.vue create mode 100644 tuniao-ui/components/tn-image-upload-drag/tn-image-upload-drag.vue create mode 100644 tuniao-ui/components/tn-image-upload/tn-image-upload.vue create mode 100644 tuniao-ui/components/tn-index-anchor/tn-index-anchor.vue create mode 100644 tuniao-ui/components/tn-index-list/tn-index-list.vue create mode 100644 tuniao-ui/components/tn-input/tn-input.vue create mode 100644 tuniao-ui/components/tn-keyboard/tn-keyboard.vue create mode 100644 tuniao-ui/components/tn-landscape/tn-landscape.vue create mode 100644 tuniao-ui/components/tn-lazy-load/tn-lazy-load.vue create mode 100644 tuniao-ui/components/tn-line-progress/tn-line-progress.vue create mode 100644 tuniao-ui/components/tn-list-cell/tn-list-cell.vue create mode 100644 tuniao-ui/components/tn-list-view/tn-list-view.vue create mode 100644 tuniao-ui/components/tn-load-more/tn-load-more.vue create mode 100644 tuniao-ui/components/tn-loading/tn-loading.vue create mode 100644 tuniao-ui/components/tn-modal/tn-modal.vue create mode 100644 tuniao-ui/components/tn-nav-bar/tn-nav-bar.vue create mode 100644 tuniao-ui/components/tn-notice-bar/tn-notice-bar.vue create mode 100644 tuniao-ui/components/tn-number-box/tn-number-box.vue create mode 100644 tuniao-ui/components/tn-number-keyboard/tn-number-keyboard.vue create mode 100644 tuniao-ui/components/tn-picker/tn-picker.vue create mode 100644 tuniao-ui/components/tn-popup/tn-popup.vue create mode 100644 tuniao-ui/components/tn-radio-group/tn-radio-group.vue create mode 100644 tuniao-ui/components/tn-radio/tn-radio.vue create mode 100644 tuniao-ui/components/tn-rate/tn-rate.vue create mode 100644 tuniao-ui/components/tn-read-more/tn-read-more.vue create mode 100644 tuniao-ui/components/tn-row-notice/tn-row-notice.vue create mode 100644 tuniao-ui/components/tn-scroll-list/tn-scroll-list.vue create mode 100644 tuniao-ui/components/tn-scroll-view/tn-scroll-view.vue create mode 100644 tuniao-ui/components/tn-select/tn-select.vue create mode 100644 tuniao-ui/components/tn-sign-board/tn-sign-board.vue create mode 100644 tuniao-ui/components/tn-skeleton/tn-skeleton.vue create mode 100644 tuniao-ui/components/tn-slider/tn-slider.vue create mode 100644 tuniao-ui/components/tn-stack-swiper/index-h5.wxs create mode 100644 tuniao-ui/components/tn-stack-swiper/index.wxs create mode 100644 tuniao-ui/components/tn-stack-swiper/tn-stack-swiper.vue create mode 100644 tuniao-ui/components/tn-steps/tn-steps.vue create mode 100644 tuniao-ui/components/tn-sticky/tn-sticky.vue create mode 100644 tuniao-ui/components/tn-subsection/tn-subsection.vue create mode 100644 tuniao-ui/components/tn-swipe-action-item/index.wxs create mode 100644 tuniao-ui/components/tn-swipe-action-item/tn-swipe-action-item.vue create mode 100644 tuniao-ui/components/tn-swipe-action/tn-swipe-action.vue create mode 100644 tuniao-ui/components/tn-swiper/tn-swiper.vue create mode 100644 tuniao-ui/components/tn-switch/tn-switch.vue create mode 100644 tuniao-ui/components/tn-tabbar/tn-tabbar.vue create mode 100644 tuniao-ui/components/tn-table/tn-table.vue create mode 100644 tuniao-ui/components/tn-tabs-swiper/tn-tabs-swiper.vue create mode 100644 tuniao-ui/components/tn-tabs/tn-tabs.vue create mode 100644 tuniao-ui/components/tn-tag/tn-tag.vue create mode 100644 tuniao-ui/components/tn-td/tn-td.vue create mode 100644 tuniao-ui/components/tn-time-line-item/tn-time-line-item.vue create mode 100644 tuniao-ui/components/tn-time-line-item/tn-time-line-item.vue_bk create mode 100644 tuniao-ui/components/tn-time-line/tn-time-line.vue create mode 100644 tuniao-ui/components/tn-time-line/tn-time-line.vue_bk create mode 100644 tuniao-ui/components/tn-tips/tn-tips.vue create mode 100644 tuniao-ui/components/tn-toast/tn-toast.vue create mode 100644 tuniao-ui/components/tn-tr/tn-tr.vue create mode 100644 tuniao-ui/components/tn-tree-node/tn-tree-node.vue create mode 100644 tuniao-ui/components/tn-tree-view/tn-tree-view.vue create mode 100644 tuniao-ui/components/tn-verification-code-input/tn-verification-code-input.vue create mode 100644 tuniao-ui/components/tn-verification-code/tn-verification-code.vue create mode 100644 tuniao-ui/components/tn-waterfall/tn-waterfall.vue create mode 100644 tuniao-ui/iconfont.css create mode 100644 tuniao-ui/index.js create mode 100644 tuniao-ui/index.scss create mode 100644 tuniao-ui/libs/config/color.js create mode 100644 tuniao-ui/libs/config/zIndex.js create mode 100644 tuniao-ui/libs/css/color.scss create mode 100644 tuniao-ui/libs/css/main.scss create mode 100644 tuniao-ui/libs/css/style.h5.scss create mode 100644 tuniao-ui/libs/css/style.mp.scss create mode 100644 tuniao-ui/libs/function/$parent.js create mode 100644 tuniao-ui/libs/function/array.js create mode 100644 tuniao-ui/libs/function/color.js create mode 100644 tuniao-ui/libs/function/colorUtils.js create mode 100644 tuniao-ui/libs/function/deepClone.js create mode 100644 tuniao-ui/libs/function/message.js create mode 100644 tuniao-ui/libs/function/messageUtils.js create mode 100644 tuniao-ui/libs/function/number.js create mode 100644 tuniao-ui/libs/function/string.js create mode 100644 tuniao-ui/libs/function/test.js create mode 100644 tuniao-ui/libs/function/updateCustomBarInfo.js create mode 100644 tuniao-ui/libs/function/uuid.js create mode 100644 tuniao-ui/libs/mixin/components_color.js create mode 100644 tuniao-ui/libs/mixin/mixin.js create mode 100644 tuniao-ui/libs/mixin/mpShare.js create mode 100644 tuniao-ui/libs/mixin/touch.js create mode 100644 tuniao-ui/libs/utils/area.js create mode 100644 tuniao-ui/libs/utils/async-validator.js create mode 100644 tuniao-ui/libs/utils/calendar.js create mode 100644 tuniao-ui/libs/utils/city.js create mode 100644 tuniao-ui/libs/utils/emitter.js create mode 100644 tuniao-ui/libs/utils/province.js create mode 100644 tuniao-ui/theme.scss create mode 100644 utils/api.js diff --git a/App.vue b/App.vue index 1f7b077..83e2dff 100644 --- a/App.vue +++ b/App.vue @@ -1,6 +1,6 @@ - + + \ No newline at end of file diff --git a/libs/components/demo-title.vue b/libs/components/demo-title.vue new file mode 100644 index 0000000..1386ff8 --- /dev/null +++ b/libs/components/demo-title.vue @@ -0,0 +1,94 @@ + + + + + diff --git a/libs/components/dynamic-demo-template.vue b/libs/components/dynamic-demo-template.vue new file mode 100644 index 0000000..2bafebe --- /dev/null +++ b/libs/components/dynamic-demo-template.vue @@ -0,0 +1,689 @@ + + + + + diff --git a/libs/components/multiple-options-demo.vue b/libs/components/multiple-options-demo.vue new file mode 100644 index 0000000..f3644b6 --- /dev/null +++ b/libs/components/multiple-options-demo.vue @@ -0,0 +1,147 @@ + + + + + diff --git a/libs/components/nav-index-button.vue b/libs/components/nav-index-button.vue new file mode 100644 index 0000000..8301940 --- /dev/null +++ b/libs/components/nav-index-button.vue @@ -0,0 +1,169 @@ + + + + + diff --git a/libs/mixin/dynamic_demo_mixin.js b/libs/mixin/dynamic_demo_mixin.js new file mode 100644 index 0000000..66ff992 --- /dev/null +++ b/libs/mixin/dynamic_demo_mixin.js @@ -0,0 +1,52 @@ +/** + * 动态参数演示mixin + */ +module.exports = { + data() { + return { + // 效果显示框top的值 + contentContainerTop: '0px', + contentContainerIsTop: false, + + // 参数显示框top的值 + sectionContainerTop: '0px' + } + }, + onReady() { + this.updateSectionContainerTop() + }, + methods: { + // 处理演示效果框的位置 + async _handleContentConatinerPosition() { + // 获取效果演示框的节点信息 + const contentContainer = await this._tGetRect('#content_container') + // 获取参数框的节点信息 + this._tGetRect('#section_container').then((res) => { + // 判断参数框是否在移动,如果是则更新效果框的位置 + // 如果效果框的顶部已经触控到顶部导航栏就停止跟随 + if (res.top - contentContainer.bottom != 15) { + const newTop = res.top - (contentContainer.height + uni.upx2px(20)) + const minTop = this.vuex_custom_bar_height + 1 + if (newTop < minTop) { + this.contentContainerTop = minTop + 'px' + this.contentContainerIsTop = true + } else { + this.contentContainerTop = newTop + 'px' + this.contentContainerIsTop = false + } + } + }) + }, + // 更新状态切换栏位置信息 + updateSectionContainerTop() { + this._tGetRect('#content_container').then((res) => { + this.contentContainerTop = (this.vuex_custom_bar_height + 148) + 'px' + this.sectionContainerTop = (res.height + 20) + 'px' + }) + } + }, + // 监听页面滚动 + onPageScroll() { + this._handleContentConatinerPosition() + } +} diff --git a/libs/mixin/template_page_mixin.js b/libs/mixin/template_page_mixin.js new file mode 100644 index 0000000..3a46196 --- /dev/null +++ b/libs/mixin/template_page_mixin.js @@ -0,0 +1,60 @@ +/** + * 演示页面mixin + */ +module.exports = { + data() { + return { + + } + }, + onLoad() { + // 更新顶部导航栏信息 + this.updateCustomBarInfo() + }, + methods: { + // 点击左上角返回按钮时触发事件 + goBack() { + // 通过判断当前页面的页面栈信息,是否有上一页进行返回,如果没有则跳转到首页 + const pages = getCurrentPages() + if (pages && pages.length > 0) { + const firstPage = pages[0] + if (pages.length == 1 && (!firstPage.route || firstPage.route != 'pages/index')) { + uni.reLaunch({ + url: '/pages/index' + }) + } else { + uni.navigateBack({ + delta: 1 + }) + } + } else { + uni.reLaunch({ + url: '/pages/index' + }) + } + }, + // 更新顶部导航栏信息 + async updateCustomBarInfo() { + // 获取vuex中的自定义顶栏的高度 + let customBarHeight = this.vuex_custom_bar_height + let statusBarHeight = this.vuex_status_bar_height + // 如果获取失败则重新获取 + if (!customBarHeight) { + try { + const navBarInfo = await this.$t.updateCustomBar() + customBarHeight = navBarInfo.customBarHeight + statusBarHeight = navBarInfo.statusBarHeight + } catch(e) { + setTimeout(() => { + this.updateCustomBarInfo() + }, 10) + return + } + } + + // 更新vuex中的导航栏信息 + this.$t.vuex('vuex_status_bar_height', statusBarHeight) + this.$t.vuex('vuex_custom_bar_height', customBarHeight) + } + } +} \ No newline at end of file diff --git a/libs/navigation/navigation.js b/libs/navigation/navigation.js new file mode 100644 index 0000000..ec62a40 --- /dev/null +++ b/libs/navigation/navigation.js @@ -0,0 +1,330 @@ +/** + * 页面展示列表数据 + */ +export default { + data: [{ + title: '图鸟首页', + backgroundColor: 'tn-cool-bg-color-1', + list: [{ + icon: 'code', + title: '关于我们', + url: '/homePages/about', + author: '图鸟北北' + },{ + icon: 'code', + title: '全局搜索', + url: '/homePages/search', + author: '图鸟北北' + }, + { + icon: 'code', + title: '今日热榜', + url: '/homePages/hot', + author: '图鸟北北' + }, + { + icon: 'code', + title: '前端业务', + url: '/homePages/profession', + author: '图鸟北北' + }, + { + icon: 'code', + title: '加载效果', + url: '/homePages/loading', + author: '图鸟北北' + } + ] + }, + { + title: '酷炫圈子', + backgroundColor: 'tn-cool-bg-color-1', + list: [{ + icon: 'code', + title: '博主_Me', + url: '/circlePages/blogger', + author: '图鸟北北' + }, + { + icon: 'code', + title: '博主_Ta', + url: '/circlePages/blogger_other', + author: '图鸟北北' + }, + { + icon: 'code', + title: '编辑发布', + url: '/circlePages/edit', + author: '图鸟北北' + }, + { + icon: 'code', + title: '广告页', + url: '/circlePages/advertise', + author: '图鸟北北' + }, + { + icon: 'code', + title: '资讯详情', + url: '/circlePages/news', + author: '图鸟北北' + }, + { + icon: 'code', + title: '名片王者', + url: '/circlePages/king', + author: '图鸟北北' + }, + { + icon: 'code', + title: '智能名片', + url: '/circlePages/business', + author: '图鸟北北' + }, + { + icon: 'code', + title: '精选圈子', + url: '/circlePages/group', + author: '图鸟北北' + }, + { + icon: 'code', + title: '积分排行', + url: '/circlePages/ranking', + author: '图鸟北北' + }, + { + icon: 'code', + title: '圈子详情', + url: '/circlePages/details', + author: '图鸟北北' + }, + { + icon: 'code', + title: '预约接龙', + url: '/circlePages/reserve', + author: '图鸟北北' + }, + { + icon: 'code', + title: '活动创建', + url: '/circlePages/create', + author: '图鸟北北' + }, + { + icon: 'code', + title: '打造圈子', + url: '/circlePages/build', + author: '图鸟北北' + }, + { + icon: 'code', + title: '一起群聊', + url: '/circlePages/chat', + author: '图鸟北北' + }, + { + icon: 'code', + title: '对话聊天', + url: '/circlePages/chatting', + author: '图鸟北北' + } + ] + }, + { + title: '活动广场', + backgroundColor: 'tn-cool-bg-color-1', + list: [{ + icon: 'code', + title: '地图打卡', + url: '/activityPages/map', + author: '图鸟北北' + }, + { + icon: 'code', + title: '快速答题', + url: '/activityPages/topic', + author: '图鸟北北' + }, + { + icon: 'code', + title: '课程学习', + url: '/activityPages/study', + author: '图鸟北北' + }, + { + icon: 'code', + title: '开源项目', + url: '/activityPages/project', + author: '图鸟北北' + }, + { + icon: 'code', + title: '活动星球', + url: '/activityPages/planet', + author: '图鸟北北' + } + ] + }, + { + title: '商品优选', + backgroundColor: 'tn-cool-bg-color-1', + list: [{ + icon: 'code', + title: '优质商家', + url: '/preferredPages/shop', + author: '图鸟北北' + }, + { + icon: 'code', + title: '商品详情', + url: '/preferredPages/product', + author: '图鸟北北' + }, + { + icon: 'code', + title: '历史订单', + url: '/preferredPages/order', + author: '图鸟北北' + }, + { + icon: 'code', + title: '商品分类', + url: '/preferredPages/classify', + author: '图鸟北北' + }, + { + icon: 'code', + title: '商家相册', + url: '/preferredPages/photo', + author: '图鸟北北' + }, + { + icon: 'code', + title: '品牌官网', + url: '/preferredPages/website', + author: '图鸟北北' + }, + { + icon: 'code', + title: '积分兑换', + url: '/preferredPages/redeem', + author: '图鸟北北' + }, + { + icon: 'code', + title: '免单活动', + url: '/preferredPages/award', + author: '图鸟北北' + }, + { + icon: 'code', + title: '免单获取', + url: '/preferredPages/awardget', + author: '图鸟北北' + } + ] + }, + { + title: '关于我的', + backgroundColor: 'tn-cool-bg-color-1', + list: [{ + icon: 'code', + title: '使用协议', + url: '/minePages/protocol', + author: '图鸟北北' + }, + { + icon: 'code', + title: '授权登录', + url: '/minePages/login', + author: '图鸟北北' + }, + { + icon: 'code', + title: '消息通知', + url: '/minePages/message', + author: '图鸟北北' + }, + { + icon: 'code', + title: '全局设置', + url: '/minePages/set', + author: '图鸟北北' + }, + { + icon: 'code', + title: '立即体验', + url: '/minePages/start', + author: '图鸟北北' + }, + { + icon: 'code', + title: '感谢名单', + url: '/minePages/thanks', + author: '图鸟北北' + }, + { + icon: 'code', + title: '版本更新', + url: '/minePages/version', + author: '图鸟北北' + }, + { + icon: 'code', + title: '帮助中心', + url: '/minePages/help', + author: '图鸟北北' + }, + { + icon: 'code', + title: '头像上传', + url: '/minePages/avatar', + author: '图鸟北北' + }, + { + icon: 'code', + title: '积分明细', + url: '/minePages/integral', + author: '图鸟北北' + }, + { + icon: 'code', + title: '积分签到', + url: '/minePages/signed', + author: '图鸟北北' + }, + { + icon: 'code', + title: '好物收藏', + url: '/minePages/collect', + author: '图鸟北北' + }, + { + icon: 'code', + title: '账号安全', + url: '/minePages/safety', + author: '图鸟北北' + }, + { + icon: 'code', + title: '赞赏支持', + url: '/minePages/reward', + author: '图鸟北北' + }, + { + icon: 'code', + title: '缺省页', + url: '/minePages/default', + author: '图鸟北北' + }, + { + icon: 'code', + title: '富文本', + url: '/minePages/content', + author: '图鸟北北' + } + ] + } + ] +} diff --git a/main.js b/main.js index 74b2cd9..c1a0d4c 100644 --- a/main.js +++ b/main.js @@ -1,10 +1,10 @@ -import Vue from 'vue' import App from './App' - - +import store from './store' +import Vue from 'vue' import HttpRequest from './common/httpRequest' import HttpCache from './common/cache' import queue from './common/queue' +import TuniaoUI from 'tuniao-ui' Vue.config.productionTip = false Vue.prototype.$Request = HttpRequest; @@ -12,7 +12,6 @@ Vue.prototype.$queue = queue; Vue.prototype.$Sysconf = HttpRequest.config; Vue.prototype.$SysCache = HttpCache; - App.mpType = 'app' // 引入全局uView @@ -21,13 +20,17 @@ Vue.use(uView); const app = new Vue({ + store, ...App }) // http拦截器,将此部分放在new Vue()和app.$mount()之间,才能App.vue中正常使用 import httpInterceptor from '@/common/http.interceptor.js' Vue.use(httpInterceptor, app) - +Vue.use(TuniaoUI) +// 引入TuniaoUI提供的vuex简写方法 +let vuexStore = require('@/store/$t.mixin.js') +Vue.mixin(vuexStore) // http接口API集中管理引入部分 import httpApi from '@/common/http.api.js' Vue.use(httpApi, app) diff --git a/other/blogger/blogger.vue b/other/blogger/blogger.vue new file mode 100644 index 0000000..f2708d4 --- /dev/null +++ b/other/blogger/blogger.vue @@ -0,0 +1,1206 @@ + + + + + diff --git a/other/blogger/details.vue b/other/blogger/details.vue new file mode 100644 index 0000000..089c384 --- /dev/null +++ b/other/blogger/details.vue @@ -0,0 +1,800 @@ + + + + + diff --git a/other/index/index.vue b/other/index/index.vue new file mode 100644 index 0000000..17e014b --- /dev/null +++ b/other/index/index.vue @@ -0,0 +1,1042 @@ + + + + + \ No newline at end of file diff --git a/other/slotMachine/components/pop-ling-qu.vue b/other/slotMachine/components/pop-ling-qu.vue new file mode 100644 index 0000000..3daa8e1 --- /dev/null +++ b/other/slotMachine/components/pop-ling-qu.vue @@ -0,0 +1,163 @@ + + + + + \ No newline at end of file diff --git a/other/slotMachine/slotMachine.vue b/other/slotMachine/slotMachine.vue index a45b726..47c622b 100644 --- a/other/slotMachine/slotMachine.vue +++ b/other/slotMachine/slotMachine.vue @@ -1,33 +1,73 @@ - + \ No newline at end of file diff --git a/other/static/ad.png b/other/static/ad.png new file mode 100644 index 0000000000000000000000000000000000000000..7ebd0e1ece4bf0ac78be17d15d700430738e3dbb GIT binary patch literal 154587 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

_^27wTII$Qgqi4Uf*=s%% zsOB+eF=*`Y8t&34bX)q!@eZrqQkggF>FhZne$s3iVt~*Y5T{3V7Cn$O8;iqN9m`TM z7oCE`bXBLqHUKEp6SLnvz*ybae#NU*?@g{y9=khf5+ficd`x`hHbZ8KGhID_bJbFg z1yWY4I-gl5o}cA=i)lU*ADUAQZ18D!03>VjmBZ3d^3WH?Dc8HJYD~(WD zW6)7O5WU1*NANZI#%Vj=qxRa^f*i%Yyky1Z%rtUJAI-74eBn&*8&ZjJV-KCC`fY!w zcU4!7d=4D3ygQDcj^t)Kg*AqXIeF|4*KD$WjtJN?k6n0Ub=sc_1JmLgQgpHF64YVQ zKa5;8HYkE6@&u1X=evIwcovw3^7^@M8?@LRi7a^&5!H(bMb2BQ)-(lo;ozOH!`MyH zIgp3w%Th_Yu0Z{~Upfd9VpqPj&}a}!JW=UrTsOf z-oCs09z^vDM_~Hz(w;zej$Ry*ihz0riib=H2J@Ty%Yx?PuAX`Ib%J+PI*Z%}2(hyC zgfRL1O6L4_>!V~kUU)syvth`dzK=5OAmETVfrLGaac=TMK%!&&JX~Cw#F1uwrt>|i zF;2zjJ=$bfN>5M`I9bwcMwHQu&NM7P=732YL5C#e{e#CNMOyOxqq^a;_lmESkx`pH z0-#}0dwA3n^H#N@&!I5U`PDcxfhwFrza?^H-c!v!-Y!d#7Z)_AeyycZuffv`DL?%9 z2c7jpW;KHoucHHQr+k_{^%#SFJ?licJ#dmNC#%@bN?B=+&JmFep|}$;?_(8?=4Fo4 z`RNJ+V?E%xo~#D+N1s`b-nybPWMy`T1`7(6`i+tdT~K9V=8M`!ohBrlTv% z8JgF5wW8}NgWdA8&S-cQbJO*R?$i=y^jVEVxu0$3E%x-K#8RAthRY|r)D5xCH)jD!_tGt07!l#H9ryAC-1+iLA zOzmcjQQX$#nJ^_ib zNyL@P^%9yqBpC5hOeY8vm}Ym7P#PNT|?eP=J_# zpu?q)+dxcQBnkCfkgBIxd-?}5j$B4(A}-6n{LLTv=H|8EweH8@o+yhYP1(}+ab4?a z&i$GB3F{SeOrEjwjC-_5DwbcW%%0GdFHHUP{vd|6Ve51GN(IMJ*&3&lBtJK5Qn3~} zEMC%+hDIOL5{Fy-cZIh`q$_n(B_p>Ys_m)%GmzY~^f%?K$3{LH@}J^bTu+>=MFnJ#N4W zRUa+PHQ?Ku>){6v*6-#yMgCBq^85$*;ce)N5rL|ij&TLRssZrX5@18kErel<_!{E! z$)P$!k~4`^>~GKrJ8Uu?lD|{dnn-%sW3fjX91DHo!bB1+Jx=*mP*YAKg5@I2Ad8I+ zeUAn5ihajPSc^iGnTM&!_Bv1N9Z)m#4-2tt$NO(T)%GHqu(p*3I<|$C^h}PbIfA1= zOAi+c0{%$i$4pLMMur#ae(fY%BOQe-G!bvDxKOF^Dp}SBciE-%epE3^4QKKsTGi#{ z2rZOlEU8v&{GRq?skiU?p=#jP^)->1gq;DKffJ7%pnsR>S^{Y%FU-vJK6D3#LF`s8 zzg(?g<`jM^{WNNx;TKq$yr*5p^WDGD>DT)VnYcCBC-yyaUvIBZ+#E2Xhi1doRaZ^I zdKFILxXR-MU0)r8(`=in#F+(k_9;DIf&yn@veq0MxKQQ7d&S4iYPIFI{AtXbGr_fv zV<+x1+q?`uD%K+j&R^d+i1~*hgAGM>W9jC-q`GSMJ9YI1P3>M_i&&p8=si?Z+RN>K z8Yx#Q3qK~5#I@?GH7jUvRy5}|tX0yrQ!sCjB=nQa6$OOqP3OA)Ow$)H-dB?GvG-Ve z@vb#m@g%_&Q0pjX{{}`23ds4=!umSss^3(fX7mo%l-)qoZAzi{zR5H?^#{#c%`37y8-X^k0hJHJ<{g&uq>&zDb9P z0`|pm|4<>=1wW+arF;-g+;~xCfDa5|IrrA-*0tQ!CIm<{0RQy^P>b{h6oT;)xnK6% zS=p)Z>Pqi<|6uy%8AKgH?3z3x7GJ#dE@ihFq`rRI{wJihhmu6@(2!;Y*rXp$n$$a|5xx%rsJ+jr9) z?0)14mFd<*=URQ%a+^i%TnU zvkIX%!`1hTb3}6Q1L%*-!@YsE^6k*LA#T+jaR!nVbCv)NraN`QXz@WYn+deQui2uZcO=SHpN zbk@^XC&b$PlNEFc>39OKZUzS@(P=u72zPAd)F-&aXUa zhTLs-K|K#=CrD(cQu)67xFQ$gD>$(oSHG^i?)xTy-4-f&Xcg4ASN+eE6F&;;j`zi% zJzWwvV-LDrY@qJ`GJrwOIE>>ldZvDa64b@u)RwGLJQdu|Mdy8~C92Z~n!&8!i_rZ; zr@m)`tH>aa?*?Q@TJla}7%*^m*p1E)gF`?;Y|zrSkT~no0GrOpyXTw1Q@WWE#J-cb zw=d0K`;}m08`Lkdg#1FeU;HD&(^~5U29}|V?I%8IzM(DI-96YarxkgAQMo&d#A(<& zjgk8C0`A@Pq4i(cI7f(^pa;k_pMu*<4#F)(AecQ?kGmU-u&d8AcN;F=UAxk>x%4wF zw7(5@Fycu6AnjF0_+A|TfzP3$_~O5}mh#!%n;DJX5xG0Qx|;GZd;U9sbmcy(k?vrE z@56!kPJe`?5LM7UdiArc_PN#`2-r0semMwU@+h2m0wKzIbsq<%26?R(V;|8l1RLXe zNsuEE!{M^KmLhcc#R{ZnD4SO6ziD?uT4zhk_JDWY57s4vG9m=8EGKrttlMF-!)Qhx zck=1FDq778&@;DSTm<0Fkz>aqz`bjq3SMjJe;b!W9NTL(d~kJe)q*HoJwHV?N1;%V zj*f-c>I5(XzbTA{6`i!aSd~Y8rCS?p?gV#j9R7OMDrsLox= zZ{i9a6ldo=ltta){odfGM2d&pF#Rza5JM=IsJB_*K=xi$pww_LfiT@N;_dR7_ zJxVqCUBnG4LptXtj*4Y_Bj-c-w^t-|H32sk8E~a;x11u~xt#T?2t#$<3S{}r$cB&V zsLhycvenhBM}YGDF^>lkagLq`3X^c;AhG;uKkBOCKyK>P?(8t?Sxq$1z5M7fMUuvB zxqnm`ZD{C=)ftY-|9cMDqAks)2-h1d<1!xZY!2?3kc%WOGQmJ*c=bHd7EH?tK$-Bi zL#dvGu|Be_7IPtUoIX$AAjZ{A&-fEx;e;Y(YIcU-JHntG_#fTWnf~+N7i(jZhRKt|<`@e*v-V{kB?SXt; zYit)j5qwfsCL_~*ypk0B(guy;<&4*rpVGrLqFOkY1$Czh;A5vrTgQ8CMwZ1E?v_gV z;05_!Q*)ZpDt(=4!vgQ+C~KY{37w_WQjlz8Gl9=$>bj`JkTm)^MlWKU{Uc*3u1%2(^uh(;_)=-9rsewA7~MXSg@yh_?i=FxU{q zP@;bPlL=r({h);*gf5R4Ex+`H<=aK{gcZ8}S_s1ME2(9s90csifnqIm5rDtR@2G1y zna?xVy(Ylp`bx0mJ1BtfHrf^f|Ga|)yx%pnn9$4?lt|}C&QnfwB&QZ&j z=Yzwvf2UrT@G+pLAxB!RE&;+{gJ;IF%gk)aD@3ZL@T&o*vehXFgf(I(C`{?JQb#{y zS!|@H-WAsVi5;Vsn($3pPP)KH(rg0z%)gtsTcQRZ$&T4e#%lrkNiLXL$O-ZhYOE3L z8FB`;mRjYU7p@#&Xtotw9HSHLuW7x*qI&h6qq9n5*Gw@U&ts%GNmY-ovN@&5NLg-Z z2x4eR58Uo*@|Ea*XSmMV8ap6l*PjO`WB$FqYXzmA{^_=i{em26L6QogQ%Aa6V~x6W zq0;nTCEi}IiWos=*z)*TLOx@$Ap-D!Yv}0Xa*^Vjdy`;=oy$X{h2>|o>9*mB{w5;L zYq{aXK9kXj#;)6@J!b~Yx2|va8-rbpN4(&d)36c;TAgmilB}7Q%DNgohj>*w2FfJ! zyF8{wTyXLpFLwtWhB6atXAYjTR5l;+GIe5Q)|6L6;^!2)uLRgBox56*Fs}>i7mPoOg@w!Dvdp>lB4!{RSCtEaSP7d#=^q<1wN@DgG^tpL&^(J zu5ivLA#pS+>e6z&^eU)>XJ@$U4b2;zTGVifxQmdzaQH5B+@snXghZkn(d(i_mIKCK zMP#YOqrAcfP1LUdyN*;TmZ}UR%Vg(JRsRDAlho1RiqGtK8(tOT9xjnQF`WX6|G1CUBOi zvg>lP(9mO|Sk*DumBxEJ1^iri6E(-Pet6+3a7Qj*6xij7sbV}syy9qHr!ZsiK}R00 zpM$JV>5(bOS+Eq|wSZ&=&cfIhcvdZz3(tuOW5p@uQlEb8)^=_D1^%+b+h z$Y0b*Dv&b`eN=T>vk9~I@7339mJ@9o&4K_`tYLZ@Y6Srr8mP>YsyF$OEZ^#$-;4?E zyvKXH`ZO#O)3Lev9QdTL0bpl^YWToT=g5&1 zsw?|4N7=2#($|SmR^^R!kEd{co`)O7IM1Fl*u};{3%{Hihc1JBSydu|e4;A-mY$lvmXE&bDmgRE{xjO6 zDdx1=uewhw({rB%x5+T&7G@DYpGX|S6%ova7o5iSMm1A0Uh9 z64n|o;Znl8|2IOBX$&`aK@11YE|!e21<(VxRPy3tCQJFo#9RwU9)qCfA*n@e-fj4Y z$0rxCZks61?%;CSdiTEIU0WEWr8sn;^9)7kcuoPjXmfG@-zC8V;SM)TNDx`7hoCsv zQydD#|E!ERxBoG&%o{dX_PAt7bSg5advm-B`tuE_E$%7>ynTKNK-UgFb2E=yJnZ@Z zg07Ntje}5O?Bf$ecUa&lRwU)l4{1tt>3$!49Yv_COew?P-3WM;iwolL(*@&y0z%?= zms9v*D?Rp;2NL4saMwKeIp~?c5aeEWeT!(qqV4?#jt`cV7DYsybnd-1+@6~oR0s|V z&BJf1G>OL|JIeT&f!B1UI$l-`yx{Z0`v>&X;R%N3yT6rfCySFFTcAi%dr6hP108ac z2?kG^ULPo8N+Jl_EIKCK9q4tw@$1o9@{=cqOL&|_kk9$`xM;LABApm`^-CtUn|>Avq(j2Q`lG;UO#sbnAno2#UN**JxNkE5S?Wv-`>6 z$>Bx`hWMK?r-O6Y9#;3m7B}TLv50`@KhhlsgsUiGPTly6hY-x}Xy3un+`imCl6}JU zm$M;}-E&&oNW8RC>yoE?`2hhMSy!?pk%7V7QG}@Xt}Otp=V0$_L7Ys`SL zt=osgecI#e;qmcBkQllpLQi&8AvhL8(EIB4-k^xJn<`AuHTS{RvBXPXz*P1;bQ zyplbnB!fj(+(>;lUrh;)H>%2h&m>xzm^am-H-i#(qip0nk&&LK6*XS*jbXaLuD+*Kl4PudisZBAr;$fB=m!5h=eJ<2iBo|tXcu-Pz=-H;aAU2^jLk69 zYEzaB>LKNvDESy!za-jHPiAEMUSCDM9bH*Bg8rN;ssd?^fsBLfZLQVZCY6mw{nugT zcU685E7UHPHbCSReA()OOKrzhYOi`-=~d%C%eK7K6}vxnUfoq)w9NK-Zl-vG*E2P& zi5Dny)rcd?yWd%_8$?kx8kEZYFb zKRM3IJUJL>=bv!M)oHcf)2j(`P8Zg!@Ic#b{-Wab#Q+lx?V)`$-w9La^}FjV43R{O zAd;(=S*CA!D;?kIjxW6D{^`qD7_G_qMsn17T1@YB2dvJ2s2Tk$xM;DlbU|ZPKWS)w zUOPX(szhhm$Kt-|9h9_E_QQ^2X~;T%LMP*ge9lusfhv3 zQmd}A;@q0vMPFuxzfF)HmF@jj5i-sY#QC`S16v$zx(1I7pl9_aj=*i~fV=7mTR(bI zGb0j zWmr|awn_(j;|=QGwBWw3&n4D&DDYL)gw~YuW;5hDx2w%d*7+reEgPR_LxTW6I6^bO zFNO*jHL~*#UnbDZMI(`-+M5^|FDJZlQ#5Dl+-O}7K#Wds*r^T%^Sn{*1ZhB6=g7@s z0@>6cv0fMb0y)V*(^sEHc+!8bvaW@=7L- z+bPa(2^pjmlf!RP)9k(OSadb#8;~9Dx9V6u%GV@v#IEvpokfc<^Xy?ez&9$w$U;(R zG4k!+T}(^_S9K7@T*Ai&Con1!EXWX|SuKj}Ky>7|RHLD;QTlB!0!dk)IJTYslSNq> zX*cSnH90tl#s^%BQ#Hr_BTT@}PhuY&+ljIW#X*jzBaItuL>mzd{zp z$NCzbZH*jsn(=22FSqi&Zo%a?EOkep$C7#rijy)PZya#=kNS^l!oucf zM6RwqGOf!0*-a9ssH~JcUyd!nQ=l{Vl8<>;GBe$)5`3v$Bozd=ebsab?bPhcUK1X; zOyVw2^#ow&jQ|0-Vwepg+!4|2<*<^xXG$uCakXrmG8RBqY_C`YI|nDSU4&VM^X+tt z3!N3`RWR4 zP3KtW98*1FUXI8ixz$YGW5EtvEyNiJ{cN za2n1js_F{9ALc1od%SAq6v-Bft}1fLbt_Mi_A)#v+X!mVV6Wm5FKWlFB-1>BQncsP zXF%TxyH;pqC=%=Tn*d|Pjby7hZ4cQwsyOh3peItCRv$PzdYgvFvzjvOt5+)CaALQY zqu4d`%{nMy?W{LCa3tlfhzY8xLCHQ^icE6g6?|@=BiD%!dJ%o>DBc4 z>h`K`NTL>=!ZfB5#^UnwWdX^_k+^yvoCwoWK#UJU#9Aadx#^DcebeCW6}1{Cv6x*| zc6ky~9}gVQygdAB%->+IKxYA?B94%>koN2P2}^Xr(NCNe6%wl z{#L^+V0X-!Wjihn_sti&<^^spJy$0BY4CXS3C+e4hSrF)$*$^k{*^)0 zn(0;+;Y|Y(9-E!98M8x%Xstot`@|ikv-$O$`I$3yvOaJq>z&Cf?bq5YcbH#E%I3Xq z?2$L}Ff{nCFSlWIC}3HPGgU%qyM{~f;r7(%30PR)&|8yM#aMBlq59cw#Z(Z>Eg%us zqTa5NvedCSkbb|&r(gbyVpS1;pw?uY0|hB6-led2kK;wL1o?Ckre#e-Eh%+@&~cCE zNYbaKluxLarjyp{?Lp&zlG(pxEW@dL1&1!$ z+mGNZNj2hwf)Kd6AsLo6Xr(MG`LL%aFsny?Khi><$~UIklHn#KndN6!<#NY#ki-}> z+p+}rS5cHX(F5*B1ieKpFwT=$n7ckflgP|D6hB$(Zew{chP1^TD>tCGh$o@i=P&_& z6dJJlb_|lC>12qXcjKZS#v}YGQoSrbBQ;f$Dxj$bADk(UA)!bo5UROmOFN}3r*iSj zV?01(lkhmvt!(!Ga!SlBC^wP0+%z9cZ;cOcdG@+wNGO_H301D<;tlK4!cXW7Bx0Mv zlI%kwJY%YEfvYGmho_+3);TqBWT(7JzHm*cHM**y(UAZoN7$rz(R}#@-*_9U!XX1|JrYhU?lAEoM zor;_m2`g|bCUun%qT$ia8Px$Ek(lF)rY6)DXzSPNW;T^HL{zhu^UOJN-9%6xw1=g7 zx}p<5YHfHlDcPAheVJ`HkR7;6nJaI}wEY9L1%0`!g@xL%fXSeopKK^Taq(Y2U+QOR z(oEl`);iT2xtL_}tGCT|nsP=*D_Pt$)&*jH97T__xz*;5C-m-8YnSKZ)$a)#X4#T( zb-ZY2(YNJLe=nuOoK?2!Glt1Y=F6?6qd#KE$$O&WW>L}DCHRs0r*u1I;i^$M!C%?1 z@(tgcv8g1V$}6+Y*7wrF@0=?_#j{2XxMXhI4`xM?Sqm)iO4&beNhnS+7husJD(M;Z zU~L=DrTYhL55|S8zQ)_GHmLfp_Id`(i?uk(oX-HBIR`@AXorhT&YG_F9#7CA+jZ-AIj1U0gyi>i1d}eZNPd zrnRJ;aiqnI%IBJ+kg7x}^@-HFBAlkGWJo7@XUS{9$ZeIXPj$;#@mjsv!K{KmW|W3g zIDekRFPjLe=q*Dl7t`mCl6{{f_$G6oRt`=60WONscVQ_d#L~x87+JRaDFpLwa81Xt8<_jEz>xCB2c8^$Tg zy8!#tIxA1)L~4=0$)9-ni;hw%DVa zpu2vxn0fJ9f;d_P+ZN_XD%hp5@=%&@l=VhEHmS9ust#xfrL>AKO|Kbm7Gq5$IsWai zn&qSV8X_i)jbj?|t+i`< zTlJ;2Z@21h)K5rQTMdBwdqD_153&`*U-OeI*y1Kb$>|j)g2^RL62agm4T41l#iPQ@$LIC z>C$c?lo3n!tGbu4C-+Fa;T_^!uw|hbaL;`*eCp!uU!{3am(~Y zvcfcy@`&c;KEQu}qL1vI-@sGkV>P(%iHIu3BJ_wF{K*IiqWkIV;DR(tL|Je|#u>^6i7H2kopAS8AaV)0&N zpzsFF0PBjC+tc0=zjwmAe*}eF(>cU#l8cUdbVeaG63sF2x>jBikmR<|5vm2+#zW{- z7U;6SX}5Wf&v((>EM&O;0d)My1+fFJAh2C*(b4SYg{QOT9xvM9C-}rG@Zh$Kb@Ow7 zw1_Z`Br{*OEr)*E0mKl^g~7?vg~i0!vg zihEndeFpH`ExyI;bD0^gd6_dv24Y(m-$I8}iurP{ zeA--U=O1n6CkkGDH5-kiy!S3o4>;Q!84DZuZ8Gty>-h{~ZPf*Vgb_`KPMthN_7V#e$;6ESi-AsKt z2{Y-xK8#8Rf_I>!3x9zR8<-OFpin=kRUZ@vjY>1Ownp3mGU`gv+tKn@^sgoTl%&h| zQEM7o>j3JzL)+Vcr=B1i;s|$_%dTzl-SE*xOq5$H41^HYh87C&Z;3yu91?&K`x0Uq zD)jdy79@sX!;OCbN`amx#RCcnypdl(oYK1UQMn)lXFMa^-Q})f2e9s-$}?_yWQH&k z+#dIb>mg3F4LX8u>+^@hC}7d`MlSCl9#9bb)*$ydrpSg0x)kc$-xDUCb%1C4=Qx~> zMgf9}vQHK7UOn=7A94n(<23i&t+Noi#4mNk8H1>YC;L=~zn(sdq91e+^V|(WSUTA*8gD3UhEt@Gm zZJNo{w$}gUB8eBV&;5@lHPGEs{u>pvt0YVmufw7e>F>B_+m z{amz*Kd}+F7Da!4ae%PW|Lq^y2YAL{354R@;Z)$+*?)_``?$mdu5JA@gyoHdjUE%# zdJrWtdePZA&|2sjMSu1E>g*^c^zgQ8>mT5K9zLRy7RTijysP8T+8?*^jRQ%JCeH1n z`{*d5N!}LsrVRn^EwS`)Jm|A-cE7ekI7;&~2Gw9pz?VjVI#a`_xP#>XVPOOdm~iLqgC209^tR2t%HjJ27P99*r4N?ic9pu`1^cvBYLa-w`j|X*d+dNZFJo`$Ss&hcD~sZL z=+S*#bNkSRvvc$!@=`2z_TNHkaYJma$W$tob7w!F~kd6Td^8}*zL8JHGkK%M_q{;qn46#x< ziw8UeD|#*pboCoa(}}0*Hqv*dq$u}74}XrN^7h8j6H=k|hP@T-Ni9bRXpSz4*@_lw zDe~0j#%_I`oSZ}_fadmZ1(eIrd?)I4-FOYb;?1i@0JOzh7 z_t@+sdUv3UGmm>RWQB3~eW9&`gXpw{akvA%yWz7Se#g5F%b$;};qjFr>LGNkp5r;Goh`OkAAkgHJAWm8|8@g5KZu9yhJN)d8vTfn z1F))y?So@_|+f94H+&avl1>@~ON9ffzS5FSNV#qP(-=12y>&2Rn zmBiD@W+^Zpud@Ga@iwk)|8TMS=I}m5VNH}uuPx@`>95qL(~+mk;Ld7DU{GM-6V7&! z=aq}^OBUiqp4Pk=K1n=`r1H6&r#!sSAzh31_q(_9#T}gJjJNEKpTTB9|A(os42UCG zx?OZ}cXxMpclY29L4reY2`<6iU4tdKF7CktK{t4CcYB-r-S55k3mB%mr@O0Xx~oo| z(=FteXLv+8e7;L&N+xtZDcHOm^^u+Tl>yR&z2a+AKZqenS6xAfSRoM)m*U}N&0Q*? z$fdT1ZfV4!)rcYXN$_<8=0$9&qykNn<5d01=T2WTr z4=QyXcT9D{DB7BSS@|ctkv5jb)fbP!%B{ICC;9iZH{iA{3IY=HF$8i^vLRq%h}}(#CGd~0^ax^ z(M1S5&u6yOQM!-eC4)bj_L{NsHZyD=7F`p^k2->Pj>szURe@O{N5bdF=jfKMVx<PcLRfZ34!3L1%TK-WL(b?yY48r_07Ayu#ix-^In z{t=6LXjvC%xg?X^+qy3P|7`hy-wZu5KUfJR?8+Oe_~djxN?&t$ve4*w@?v38RE@1O zkrH!}zop0P?umYT*>(H=YOi&ZG!TtdYNvr+`Re}hd1_UEb@i+zimg#CGmPRTUyv+V zxPYWs9^XVhDLQ^oqopTEY$2|`bWFwz73h*!^hA&CfR6!UcWK%UgyJirq70I5GtGFt z>xXbd%+ze?fwg;!`cu_EW<-tuv*K%VGBb2rG-j8EtkdfU$otfp5*_()p}Y}t+N^;r zfI?)*H;7ba)&0@%w#~#>+bt(Ilw&P(5E7-OwqC-5cY3IP%mh zO7P}4L_}VD#RRGdmXOi%TKjWex|}LGR1r4)VF`gSJCl3hX{?yLZOqoKv%`Z&`w;aa zW6!-SqSNInj{#>2(xCu$*MrHK-~==djCH5uy0FZQ4YyjBzccKjNoA0G<)bpyXVzLe zEc5)FMZ`hN8Q|9Ohe3#P>D@xngFkQo5FV=BdV{||1hcseOG>y`_rkt>fl>KyZ3Mft z1&3S>3*3OuUY?$OLbk*SoZMPYr~AZFNF*(g<2zRG?jrLA|Adu_wBKFM<3QaIBdl56 zdo35TzGhaDOEw0S` zrq@B_ws#OJjR7%nYUkW7eheUI>yxpx8S~pY3W)@MW1?ou=vFH@0fCE*8d69p_(*+wZ$3$D(-{Ri4TCOP;$~ZG@K}pU?_a4r4Jj{?PXMA6ZvZd29omi(gk6|1 zU|mp7Kd=TufVA&y=$y zLh)o_8I_76yUGzACMMfvMK0Yksn5;%1JIooD+ZGzFXSWstNH>WYTojr`!7lKZuNTI z^9T8CS^Zcp*^Y3aBqtsxtQX@HG&H-_V-)+?uf}^+>e6|&2%T_Z-D>X-JH_o;V0YtDG zjnhE;((+I^cg6^+1(5|hxS=U+r3}ss8+EW4i)^V;IoT(ac^i z9+-xxRIvBCywKSEdezXMn}3j2_s z!4C?Pxwn6&T%LscUjQIX&_!}4|2tsp--W^FCq|ujfL*!xEpHGB-@W-Oc1>`zR^d|) z7>(G!<5B;X=j~6^i_^`)evi)VY4^jjUHO-N4mal&ee);^vxL%YLXY5=uOsh((r)rT z9yXQc?X33XYlX;rt7{Ir$e4J;|2M$|A|)D zBP5+1(ieR(IFyfz===5WfRuZ-Aje-sg$n5LpKByszhx0X2*eg{eWalUpxJn?i%;-nJNXSpAH-ZvUAE}ioFMYNS?i#;jhFMV2k2nO zU_?O=m;cTR#0*M!&EC)_jotxVX4`Ne&7O&hzIbz}EwOcdP9JI!t{B2+@Eh z`ytO)Kz(72d;tZR`r6S5;c5Lh_>eYU0Mh>q7wsMJpLxdu-iXzqzo{$x1}a*-1FmHP z-}D>)dYP10uQ&$pE62ael!h%XJcmB#|F;_+A5|+-g-=|y2i^g{H%u|fr76rJS5h;@ z-$?$MD<}vshQHNnZS%kLjfH%}SC9UtHu(-XVon??y>5LfEdJ&FhW0-f#Id5^@Rmmj zZe`HVnBD<*X6p0TrZu1V_B{`qQ!2mxwR#6Uc9w`mN`O$CsM#P=2~+>pS05qt3opv} zWFbVw$qMorTs_A^hcp8*-j(22#o(dRI7cmABhRTH%_sd>3~nUv01bCnMhP}L4xC7= zH0W(Q4CoMNO2-|t+TU-x{_DMk<&br_BJ31hH76|1R-(#~_GdTM91gZ_I;@j=Az>!n zj>c+GM~78z{|~GMsn|B>(f#fhrm;>Z+_Z(WBH7`ANDL-Ll5IFVzt8aQnQ3mQ8pEK- z3F5=$hiYg%k|YK>hDM;UqV@auI8gf}r2bIQ zl7<6a8y$#l21efjHoD0S^S`q30#TxT^s`|{d$Y@{z9P}gCp{7`+*rcb$aE@JknB$`OCyz_Cf@kxc=e5`4w;6VIWiypeyz%t( zGCJ(`hnljoYu?N)ev2cTU&}n2WB0}MM6J>yb#wP8=zhp?BGkxX7j5z6mHbdVdNDk2 z0IlpzR$yRgDd`|kBuOq}R>i5AELHrrbubtb85*?n&D4-oju%R5W~KMjNkIS)!Psez z-nTu2o1C+X3Qc5Of;ZyumjeTCU+($?y_YlDnS%(1yvBT8Pae>z*kf)Ny%s9Z(2cy- zjCDressh0o*wM#T$CD;OF6Wnh)b%C!WTm0pNmthg133RSP2~AP0hXy-oolwrCct9I^(^v#_V0+Z$uE+)A4RS(WcVNylgqPEetn~Ep;>FcW zRbJgYYVYiy=NQ?`-btuqK@th}32w+~@*vn5O!Q@>-(n#HEH3I2J|F}+GrvHn?2Qug z2Gje1D*+hRBETH~-svjYO?2@@QJ6xLo{U8f@7&ElWMt4{h16rN1uup~eZ(QBm$&_{ zq(G@F($)nx5Id`@)KtvYwuQX!vc%p@5&Tm?i21n?qH zacFOCg>F58#*c)&NbkUdgBb{1^ieSpqz7!KZyy$%&Cs%hf7bc?Ki(`9j@DyuE&&$X z8lxjOyg*rh+Tp)cd63?NOsz%FVv#% z16r{oT%%byOq2%cki|u-5fxglBfyzhYx`U*eNWgMM=I`nm8J4_nsfvr$L9}mCStFs3p$~(oV-k|N-bu~88bLF+GQerGSLUFF;S%Hji~|v=~$LU5Gu>83MK#* z9}25nRKpfV=9w%i+V#erm+X9Q?33Z|XG~Bd%x}Cw@j?%;eAX1g4(+|`rSHF5cr(4c zVcKgAwmH=`+UNXuu+EAIznN^RCK6wL z^tnuS0x}->wf-4k!ixQpF)>fEfdxY?ehjs~i{ zN|jH|vZC4P;Vc`{%Cl*Xe2X|V)LD^fLPPg$_^gP4<@5i)DIiN>MdwO|@gZ z(2-KBjxmP0B~+P}ovR`ROR;~PtN3i`@(sn{tMkKdS_3~6cj1UeAhelniMZ?eAUn^HreP4 z9K;<){?CsA-6Qs{-u;X3@vk6jovx^?0N0|=?3vpFKU81EF@^|FzpbLl)2_@nF521* z&IuN3F5I?Qs7m}w0%nyl#Tv1Y&uKkIHit#>tT#_8Dzp=NX3J5HXmNaN%}@8b{cygs zlP6b7Rg}Q-H>~RPUgr3}kBC9e;IGY5k1pA+&O4sm>g)Yf&O>&hnr(s?+YaaK z1YYVf7mY5n_JRSwfkc5^;Z!qIwV_^8NM(AR`N47plP?lOi*%=h7~Lm(Cefb?5!Bir z7OL^Wv;z3gNE>%2BADA#L^uB)wW7H02)-pv%}*RzHdb5K^QD1yT~8uePz)2vKH8 z*&=&pi&SnKFM4{R4YKO*^Qh!4PN@oFvT7(Dz+q-B8cjGCSJfcsBP_AJ10*VUYzpM5 z#(T}bX|%@2DYeElQX6h|Kfs`|d}Dolq5dw=DPH~8Y>?z~!uYzD-d_~9*WzO!LAj%> zZ9uEhM>sD9&dQR>OkP}})G)D=i2G>0CegH>do^aajrr-3gtX zB28b(j}Wad+Cf?X&8Y&GgB^h6MbgDw3#DJLGZoBGa6KZGe$Tq0o zLxM7uDtjF|D#L=XO6DX=EOFJ$L?DL0L@B+|1cvpdxe2}u>l0KqrbtyGEjg~g;HSnh z_5(A2Rjh08f67_Bnpq5Y8|i{Wb5a)mlR`1Ps8B|$shz`lIj~NTl{EQXFcvE4IwT>L zE0o$D6U)BOsI5C$ORg2-_X}8#`1YOP`Y>A#pKCiWBTEshd@x%@C@md6rNn{Ajgb*` zop$!?7r{*Z%)HC-$-P}t#SI+mL!=PKO0{s9UQ_rohbKM4HqyZuf*Aem1)K^fK{?L| z6S44CcK`VE1=GBnp`Q(XKsv`_jP{h`qG@%Q`|HDX5g!~umoXH92>gTKo>%qy zJCLe(n>Y#2&%^0qaa{fu^@+R?w~-2-*MofxiV0yo!6X=)gZk z|Mta~0I9MEx-1HM_F~KIP;7f$w0JuwN;68JYLyK%Bi5UxFnuK}AuW57dN$k1Y^fvgRjI?fYG`}yf5EDi39(;DQ7ue_fHhYJLz~#82e802-N#NPetTEW~i{dvk1r5a8I$i(5sId?7n} zI5Q*hsEI%C#S-p)UgRCr!rH>Bn5ls9w6wqPQU+P8qWqXK7@p9nGk>(ZIy$!1HD&k#@-hT2QD+DBn=5rCVG$~ z_KJ->L?!~_ck3nC?<0_U6FLr_Ath`0O54C3Ow?HhIpmpcdFDjQt8G^_{60Tw@ttP^ zD=3gFoZLdNM`V@%9H36Uv^liUI7lW)5Y2W{K(YBfJRgG(FcqFN1*_zDD6Mb=KnAwo zF_{YxlGpEwxmb=Wp#qO=WrTcn5Z}d7pxkdG9Ob!sZdfZ(p-fMYwKzj-S)F+cE5%!T zqpj8ES@I+4=391$&lTPHRoUk`OeN8y2x?ig&;g95w7eLtzxfIZ^%|@mO323pBFSQv zOK+sKEUh`&!}NQ*xmj61XE`d@rA?U2Xg@OPY%BGo=VdRZRVxBcpd`!9yJIsCtdU(L z&fz!bMrSo*0N_(xo_D}LazoT}1tCjkK`Ax28e7`rr(tgc?dvoXMQ*VPZO-y*T)b3G zt+Y8RYm>6>W6V6?yebyU;SVe&nFV+aOI8m0@8;{9-Da z%3**pmkLdhpjhHg;Eu82X5rc$8kbotp{E@>i5@(VM)o~4rz^`aS=WL#^F`yR zFqJN63okdH9gEht##s*DR(>;uD$!&B1QsBk{3c%3F(i)F8rC{B#?_6i z>Bxen|1&#dpA(rR0e3Ii1uc0qUWJc*O`K8sC7z-r+14p{)!}>dkflCAb<1OQHcI#qgz8HFOvB=n+CTEcyd2& z&$G_W1KWk5Lm(je0~!=aQIe2P$TxaE4V2}h`z$wYyrp8JtBu<~b*tAvENlx!g0f^@ zt=2hZOP9<3Q7*3!;xJn0)aYpb=lq5d&1LBt7UBdG5J%z5wl~pD{e|VG6&u&8IDk2sN|;NNChIwo zV|m=GIHzWN+=;150o~>5&hq8gr$w>G5-w!on5f7Ea`bR|<1Xtt%dQupaJ&6d47Q?I zlbbi1!o4?wB2Bw!V{*o$nBd8gGgnMhp*Npu2?+r3z}V^71LnD=Zd|0p{r-}(Z%m2# zm!9n({v{`Fz1?*~FV zz~NGkCGGP%Os9J(Uxj`Y7a}4lOF$m1v>K>@=WyetY3m}PME8qp;!P&xq)bd;TvJxP zhf*$%i3(qwT~200SyW1mW{V&iOch2=nxlZwBqyb(`J@^yi?cZ{?kNR*PQp-OQHMy- z_bojp)%Js0o|wB{ZEhQLRQ)tlr%yX|AF_~pQEUPU1H7(PbiQ=fV1V--;5R^&)7Zh- zfR~Bptsx|SP(h)@0f@8=)?b7$%`u?gthND2{YxBYo@$L=@#XHH=FXQpXw|kOyy}79?qEOZkgqkNI}n1t zZ~c}F{4P#|h$rX%;YhLgE`0E+C`2^X8!YOHP=;JzM5kO16WUktCkGM zH}MwuSs`ED4(Jf)%Yp)g10 z-a4P%(no4+Lgl6tfyke&oF)MfR;k}DZTRwsklhpk{T)C)8@$8a=?OYtGnP`jU>|mc z2tX1$UGXgks1m&lz927;9BOFjp%pG@7lUR%7;#@+0-YAtX25NI9OHb&^AOuw|MCt{ zogvdaRhO?Km*1hf8~p$g&kFl98qTtVzSP@w)muQ&-~&@Ps6IGYfaw;0ezy7S@tWh8 zfX0d0+iP_7cyC`(?SUrz?do_B`y?!}D>Jw&4T8A}y1hlGAcd(EpBV(?p;ko)i2jzN z@9m6=xLN1FzV}&oMLe%BK8CPg%&1fJXBlp9cP5er3vi)}O5fh*h9L|0@$Iykhz0qY zp99tsHas8Kwx%Bx=rJ)cdovFFj~iwRO`rr4HEuy;L2riHsSug#C2gI#_7hU z#JIw(>&FL3S!wmS*o)#+dkig^B=nMkh*0V3rSivKluDQAn zFkiA-fcGGu^s#Jph=@g4E2*ftnl4ri(UG)CVHPRX+})rqqDbOTe?q(QmT?>7U^dEs!b&MC4v*1&Wa^E zD-tU!)Dj^}rUHv#7?U+z$pST88bi&f8HYyJwvMDukf~#~dcGnp-Gx&jyDIMzKGkHx zDNzISaeC-=m3=4TJ2{V{OhS$Mt2Ncq&!77XS-+2#+_{o`HTpE_>9DiY6SHGJnQo(@ zhA)Ojx1?&OrZ1_~n^5WGBu{$9uHfc&>zg2{&R1etdwyY3{QHvxikX%MDODmT2`g0> zpp_PvtTgKN#6FT(MZ1~Jn4f8L2q(%(v8HTkzX%Ua`q_z=RTf5>#sGP3F%(U#b|RR8CJPXP(fa&sN_79M7;z2?%0DAH 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 literal 0 HcmV?d00001 diff --git a/other/static/avatar/5.png b/other/static/avatar/5.png new file mode 100644 index 0000000000000000000000000000000000000000..f1799887d3deb5c9e9514ab16303b5ac284fd1fc GIT binary patch literal 20656 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 JPDHLkV1hAnw&wr< literal 0 HcmV?d00001 diff --git a/other/tools/tools.vue b/other/tools/tools.vue new file mode 100644 index 0000000..2fb9c1f --- /dev/null +++ b/other/tools/tools.vue @@ -0,0 +1,779 @@ + + + + + \ No newline at end of file diff --git a/other/topic/reserve.vue b/other/topic/reserve.vue new file mode 100644 index 0000000..6b59b66 --- /dev/null +++ b/other/topic/reserve.vue @@ -0,0 +1,570 @@ + + + + + diff --git a/other/topic/topic.vue b/other/topic/topic.vue new file mode 100644 index 0000000..a5e54d7 --- /dev/null +++ b/other/topic/topic.vue @@ -0,0 +1,1287 @@ + + + + + diff --git a/pages.json b/pages.json index a028a7a..1ef6993 100644 --- a/pages.json +++ b/pages.json @@ -1,6 +1,7 @@ { "easycom": { - "^u-(.*)": "@/uview-ui/components/u-$1/u-$1.vue" + "^u-(.*)": "@/uview-ui/components/u-$1/u-$1.vue", + "^tn-(.*)": "@/tuniao-ui/components/tn-$1/tn-$1.vue" }, "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages { @@ -688,7 +689,13 @@ }, { "root": "other", - "pages": [ + "pages": [{ + "path": "index/index", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "更多" + } + }, { "path": "about/about", "style": { @@ -696,33 +703,68 @@ } }, { - "path" : "coup/coup", - "style" : - { - "navigationBarTitleText" : "卡包" + "path": "coup/coup", + "style": { + "navigationBarTitleText": "卡包" } }, { - "path" : "address/address", - "style" : - { - "navigationBarTitleText" : "收货地址" + "path": "address/address", + "style": { + "navigationBarTitleText": "收货地址" } }, { - "path" : "pay/pay", - "style" : - { - "navigationBarTitleText" : "发红包" + "path": "pay/pay", + "style": { + "navigationBarTitleText": "发红包" } }, { - "path" : "slotMachine/slotMachine", - "style" : - { - "navigationBarTitleText" : "抽奖", + "path": "slotMachine/slotMachine", + "style": { + "navigationBarTitleText": "抽奖", + "navigationStyle": "custom" + + } + }, + { + "path" : "blogger/blogger", + "style" : + { + "navigationBarTitleText" : "", + "navigationStyle": "custom" + } + }, + { + "path" : "blogger/details", + "style" : + { + "navigationBarTitleText" : "", + "navigationStyle": "custom" + } + }, + { + "path" : "topic/topic", + "style" : + { + "navigationBarTitleText" : "话题" + } + }, + { + "path" : "topic/reserve", + "style" : + { + "navigationBarTitleText" : "", + "navigationStyle": "custom" + } + }, + { + "path" : "tools/tools", + "style" : + { + "navigationBarTitleText" : "", "navigationStyle": "custom" - } } diff --git a/pages/me/index.vue b/pages/me/index.vue index d074982..bad33ef 100644 --- a/pages/me/index.vue +++ b/pages/me/index.vue @@ -251,16 +251,21 @@ - + + + + + diff --git a/tuniao-ui/components/tn-avatar-group/tn-avatar-group.vue b/tuniao-ui/components/tn-avatar-group/tn-avatar-group.vue new file mode 100644 index 0000000..4d5b547 --- /dev/null +++ b/tuniao-ui/components/tn-avatar-group/tn-avatar-group.vue @@ -0,0 +1,104 @@ + + + + + diff --git a/tuniao-ui/components/tn-avatar/tn-avatar.vue b/tuniao-ui/components/tn-avatar/tn-avatar.vue new file mode 100644 index 0000000..96e7100 --- /dev/null +++ b/tuniao-ui/components/tn-avatar/tn-avatar.vue @@ -0,0 +1,298 @@ + + + + + diff --git a/tuniao-ui/components/tn-badge/tn-badge.vue b/tuniao-ui/components/tn-badge/tn-badge.vue new file mode 100644 index 0000000..5e1747d --- /dev/null +++ b/tuniao-ui/components/tn-badge/tn-badge.vue @@ -0,0 +1,173 @@ + + + + + diff --git a/tuniao-ui/components/tn-button/tn-button.vue b/tuniao-ui/components/tn-button/tn-button.vue new file mode 100644 index 0000000..820ce2f --- /dev/null +++ b/tuniao-ui/components/tn-button/tn-button.vue @@ -0,0 +1,302 @@ + + + + + diff --git a/tuniao-ui/components/tn-calendar/tn-calendar.vue b/tuniao-ui/components/tn-calendar/tn-calendar.vue new file mode 100644 index 0000000..e0711e8 --- /dev/null +++ b/tuniao-ui/components/tn-calendar/tn-calendar.vue @@ -0,0 +1,707 @@ + + + + + diff --git a/tuniao-ui/components/tn-car-keyboard/tn-car-keyboard.vue b/tuniao-ui/components/tn-car-keyboard/tn-car-keyboard.vue new file mode 100644 index 0000000..f92559c --- /dev/null +++ b/tuniao-ui/components/tn-car-keyboard/tn-car-keyboard.vue @@ -0,0 +1,320 @@ + + + + + diff --git a/tuniao-ui/components/tn-cascade-selection/tn-cascade-selection.vue b/tuniao-ui/components/tn-cascade-selection/tn-cascade-selection.vue new file mode 100644 index 0000000..02ac406 --- /dev/null +++ b/tuniao-ui/components/tn-cascade-selection/tn-cascade-selection.vue @@ -0,0 +1,654 @@ + + + + + diff --git a/tuniao-ui/components/tn-checkbox-group/tn-checkbox-group.vue b/tuniao-ui/components/tn-checkbox-group/tn-checkbox-group.vue new file mode 100644 index 0000000..5472ad5 --- /dev/null +++ b/tuniao-ui/components/tn-checkbox-group/tn-checkbox-group.vue @@ -0,0 +1,134 @@ + + + + + diff --git a/tuniao-ui/components/tn-checkbox/tn-checkbox.vue b/tuniao-ui/components/tn-checkbox/tn-checkbox.vue new file mode 100644 index 0000000..e11d8f5 --- /dev/null +++ b/tuniao-ui/components/tn-checkbox/tn-checkbox.vue @@ -0,0 +1,328 @@ + + + + + diff --git a/tuniao-ui/components/tn-circle-progress/tn-circle-progress.vue b/tuniao-ui/components/tn-circle-progress/tn-circle-progress.vue new file mode 100644 index 0000000..6788c5d --- /dev/null +++ b/tuniao-ui/components/tn-circle-progress/tn-circle-progress.vue @@ -0,0 +1,223 @@ + + + + + diff --git a/tuniao-ui/components/tn-collapse-item/tn-collapse-item.vue b/tuniao-ui/components/tn-collapse-item/tn-collapse-item.vue new file mode 100644 index 0000000..62a9493 --- /dev/null +++ b/tuniao-ui/components/tn-collapse-item/tn-collapse-item.vue @@ -0,0 +1,236 @@ + + + + + diff --git a/tuniao-ui/components/tn-collapse/tn-collapse.vue b/tuniao-ui/components/tn-collapse/tn-collapse.vue new file mode 100644 index 0000000..00ec9a2 --- /dev/null +++ b/tuniao-ui/components/tn-collapse/tn-collapse.vue @@ -0,0 +1,98 @@ + + + + + diff --git a/tuniao-ui/components/tn-color-icon/tn-color-icon.vue b/tuniao-ui/components/tn-color-icon/tn-color-icon.vue new file mode 100644 index 0000000..c7ad83b --- /dev/null +++ b/tuniao-ui/components/tn-color-icon/tn-color-icon.vue @@ -0,0 +1,318 @@ + + + + + diff --git a/tuniao-ui/components/tn-column-notice/tn-column-notice.vue b/tuniao-ui/components/tn-column-notice/tn-column-notice.vue new file mode 100644 index 0000000..d5d795b --- /dev/null +++ b/tuniao-ui/components/tn-column-notice/tn-column-notice.vue @@ -0,0 +1,251 @@ + + + + + diff --git a/tuniao-ui/components/tn-count-down/tn-count-down.vue b/tuniao-ui/components/tn-count-down/tn-count-down.vue new file mode 100644 index 0000000..7a97943 --- /dev/null +++ b/tuniao-ui/components/tn-count-down/tn-count-down.vue @@ -0,0 +1,314 @@ + + + + + diff --git a/tuniao-ui/components/tn-count-scroll/tn-count-scroll.vue b/tuniao-ui/components/tn-count-scroll/tn-count-scroll.vue new file mode 100644 index 0000000..de208c8 --- /dev/null +++ b/tuniao-ui/components/tn-count-scroll/tn-count-scroll.vue @@ -0,0 +1,171 @@ + + + + + diff --git a/tuniao-ui/components/tn-count-to/tn-count-to.vue b/tuniao-ui/components/tn-count-to/tn-count-to.vue new file mode 100644 index 0000000..c3d8854 --- /dev/null +++ b/tuniao-ui/components/tn-count-to/tn-count-to.vue @@ -0,0 +1,231 @@ + + + + + diff --git a/tuniao-ui/components/tn-cropper/index.wxs b/tuniao-ui/components/tn-cropper/index.wxs new file mode 100644 index 0000000..6707e96 --- /dev/null +++ b/tuniao-ui/components/tn-cropper/index.wxs @@ -0,0 +1,328 @@ +var cropper = { + // 画布x轴起点 + cutX: 0, + // 画布y轴起点 + cutY: 0, + // 触摸点信息(手指与图片中心点的相对位置) + touchRelactive: [{ + x: 0, + y: 0 + }], + // 双指触摸时斜边的长度 + hypotenuseLength:0, + // 是否结束触摸 + touchEndFlag: false, + // 画布宽高 + canvasWidth: 0, + canvasHeight: 0, + // 图片宽高 + imgWidth: 0, + imgHeight: 0, + // 图片缩放比例 + scale: 1, + // 图片旋转角度 + angle: 0, + // 图片上边距 + imgTop: 0, + // 图片左边距 + imgLeft: 0, + // 窗口宽高 + windowWidth: 0, + windowHeight: 0, + init: true +} + +function bool(str) { + return str === 'true' || str === true +} + +function propsChange(prop, oldProp, ownerInstance, instance) { + if (prop && prop !== 'null') { + var params = prop.split(',') + var type = +params[0] + var dataset = instance.getDataset() + if (cropper.init || type == 4) { + cropper.canvasWidth = +dataset.width + cropper.canvasHeight = +dataset.height + cropper.imgTop = +dataset.windowheight / 2 + cropper.imgLeft = +dataset.windowwidth / 2 + cropper.imgWidth = +dataset.imgwidth + cropper.imgHeight = +dataset.imgheight + cropper.windowHeight = +dataset.windowheight + cropper.windowWidth = +dataset.windowwidth + cropper.init = false + } else if (type == 2 || type == 3) { + cropper.imgWidth = +dataset.imgwidth + cropper.imgHeight = +dataset.imgheight + } + cropper.angle = +dataset.angle + if (type == 3) { + imgTransform(ownerInstance) + } + switch(type) { + case 1: + setCutCenter(ownerInstance) + // 设置裁剪框大小 + computeCutSize(ownerInstance) + // 检查裁剪框是否在范围内 + cutDetectionPosition(ownerInstance) + break + case 2: + setCutCenter(ownerInstance) + break + case 3: + imgMarginDetectionScale(ownerInstance) + break + case 4: + imageReset(ownerInstance) + break + case 5: + setCutCenter(ownerInstance) + break + default: + break + } + } +} + +function touchStart(event, ownerInstance) { + var touch = event.touches || event.changedTouches + cropper.touchEndFlag = false + if (touch.length === 1) { + cropper.touchRelactive[0] = { + x: touch[0].pageX - cropper.imgLeft, + y: touch[0].pageY - cropper.imgTop + } + } else { + var width = Math.abs(touch[0].pageX - touch[1].pageX) + var height = Math.abs(touch[0].pageY - touch[1].pageY) + cropper.touchRelactive = [{ + x: touch[0].pageX - cropper.imgLeft, + y: touch[0].pageY - cropper.imgTop + },{ + x: touch[1].pageX - cropper.imgLeft, + y: touch[1].pageY - cropper.imgTop + }] + cropper.hypotenuseLength = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)) + } +} + +function touchMove(event, ownerInstance) { + var touch = event.touches || event.changedTouches + if (cropper.touchEndFlag) return + moveDuring(ownerInstance) + if (event.touches.length === 1) { + var left = touch[0].pageX - cropper.touchRelactive[0].x, + top = touch[0].pageY - cropper.touchRelactive[0].y; + cropper.imgLeft = left + cropper.imgTop = top + imgTransform(ownerInstance) + imgMarginDetectionPosition(ownerInstance) + } else { + var dataset = event.instance.getDataset() + var minScale = +dataset.minscale + var maxScale = +dataset.maxscale + var width = Math.abs(touch[0].pageX - touch[1].pageX), + height = Math.abs(touch[0].pageY - touch[1].pageY), + hypotenuse = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)), + scale = cropper.scale * (hypotenuse / cropper.hypotenuseLength), + current_deg = 0; + scale = scale <= minScale ? minScale : scale + scale = scale >= maxScale ? maxScale : scale + cropper.scale = scale + imgMarginDetectionScale(ownerInstance, true) + var touchRelative = [{ + x: touch[0].pageX - cropper.imgLeft, + y: touch[0].pageY - cropper.imgTop + }, { + x: touch[1].pageX - cropper.imgLeft, + y: touch[1].pageY - cropper.imgTop + }] + cropper.touchRelactive = touchRelative + cropper.hypotenuseLength = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2)) + // 更新视图 + cropper.angle = cropper.angle + current_deg + imgTransform(ownerInstance) + } +} + +function touchEnd(event, ownerInstance) { + cropper.touchEndFlag = true + moveStop(ownerInstance) + updateData(ownerInstance) +} + +function moveDuring(ownerInstance) { + if (!ownerInstance) return + ownerInstance.callMethod('moveDuring') +} + +function moveStop(ownerInstance) { + if (!ownerInstance) return + ownerInstance.callMethod('moveStop') +} + +function setCutCenter(ownerInstance) { + var cutX = (cropper.windowWidth - cropper.canvasWidth) * 0.5 + var cutY = (cropper.windowHeight - cropper.canvasHeight) * 0.5 + + cropper.imgTop = cropper.imgTop - cropper.cutY + cutY + cropper.cutY = cutY + cropper.imgLeft = cropper.imgLeft - cropper.cutX + cutX + cropper.cutX = cutX + cutDetectionPosition(ownerInstance) + imgTransform(ownerInstance) + updateData(ownerInstance) +} + +// 检测剪裁框位置是否在允许的范围内(屏幕内) +function cutDetectionPosition(ownerInstance) { + var windowHeight = cropper.windowHeight, + windowWidth = cropper.windowWidth; + + // 检测上边距是否在范围内 + var cutDetectionPositionTop = function() { + if (cropper.cutY < 0) { + cropper.cutY = 0 + } + if (cropper.cutY > windowHeight - cropper.canvasHeight) { + cropper.cutY = windowHeight - cropper.canvasHeight + } + } + + // 检测左边距是否在范围内 + var cutDetectionPositionLeft = function() { + if (cropper.cutX < 0) { + cropper.cutX = 0 + } + if (cropper.cutX > windowWidth - cropper.canvasWidth) { + cropper.cutX = windowWidth - cropper.canvasWidth + } + } + + // 裁剪框坐标处理(如果只写一个参数则另一个默认为0,都不写默认为居中) + if (cropper.cutX === null && cropper.cutY === null) { + var cutX = (windowWidth - cropper.canvasWidth) * 0.5, + cutY = (windowHeight - cropper.canvasHeight) * 0.5; + cropper.cutX = cutX + cropper.cutY = cutY + } else if (cropper.cutX !== null && cropper.cutX !== null) { + cutDetectionPositionTop() + cutDetectionPositionLeft() + } else if (cropper.cutX !== null && cropper.cutY === null) { + cutDetectionPositionLeft() + cropper.cutY = (windowHeight - cropper.canvasHeight) / 2 + } else if (cropper.cutX === null && cropper.cutY !== null) { + cutDetectionPositionTop() + cropper.cutX = (windowWidth - cropper.canvasWidth) / 2 + } +} + +// 图片边缘检测-缩放 +function imgMarginDetectionScale(ownerInstance, delay) { + var scale = cropper.scale, + imgWidth = cropper.imgWidth, + imgHeight = cropper.imgHeight; + if ((cropper.angle / 90) % 2) { + imgWidth = cropper.imgHeight + imgHeight = cropper.imgWidth + } + if (imgWidth * scale < cropper.canvasWidth) { + scale = cropper.canvasWidth / imgWidth + } + if (imgHeight * scale < cropper.canvasHeight) { + scale = Math.max(scale, cropper.canvasHeight / imgHeight) + } + imgMarginDetectionPosition(ownerInstance, scale, delay) +} + +// 图片边缘检测-位置 +function imgMarginDetectionPosition(ownerInstance, scale, delay) { + var left = cropper.imgLeft, + top = cropper.imgTop, + imgWidth = cropper.imgWidth, + imgHeight = cropper.imgHeight; + scale = scale || cropper.scale + if ((cropper.angle / 90) % 2) { + imgWidth = cropper.imgHeight + imgHeight = cropper.imgWidth + } + + left = cropper.cutX + (imgWidth * scale) / 2 >= left ? left : cropper.cutX + (imgWidth * scale) / 2 + left = cropper.cutX + cropper.canvasWidth - (imgWidth * scale) / 2 <= left ? left : cropper.cutX + cropper.canvasWidth - (imgWidth * scale) / 2 + top = cropper.cutY + (imgHeight * scale) / 2 >= top ? top : cropper.cutY + (imgHeight * scale) / 2 + top = cropper.cutY + cropper.canvasHeight - (imgHeight * scale) / 2 <= top ? top : cropper.cutY + cropper.canvasHeight - (imgHeight * scale) / 2 + + cropper.imgLeft = left + cropper.imgTop = top + cropper.scale = scale + if (!delay || delay === 'null') { + imgTransform(ownerInstance) + } +} + +// 改变截取值大小 +function computeCutSize(ownerInstance) { + if (cropper.canvasWidth > cropper.windowWidth) { + cropper.canvasWidth = cropper.windowWidth + } else if (cropper.canvasWidth + cropper.cutX > cropper.windowWidth) { + cropper.cutX = cropper.windowWidth - cropper.cutX + } + if (cropper.canvasHeight > cropper.windowHeight) { + cropper.canvasHeight = cropper.windowHeight + } else if (cropper.canvasHeight + cropper.cutY > cropper.windowHeight) { + cropper.cutY = cropper.windowHeight - cropper.cutY + } +} + +// 图片动画 +function imgTransform(ownerInstance) { + var image = ownerInstance.selectComponent('.tn-cropper__image') + if (!image) return + var x = cropper.imgLeft - cropper.imgWidth / 2, + y = cropper.imgTop - cropper.imgHeight / 2; + image.setStyle({ + 'transform': 'translate3d('+ x + 'px,' + y + 'px,0) scale(' + cropper.scale +') rotate(' + cropper.angle + 'deg)' + }) +} + +// 图片重置 +function imageReset(ownerInstance) { + cropper.scale = 1 + cropper.angle = 0 + imgTransform(ownerInstance) +} + +// 高度变化 +function canvasHeight(ownerInstance) { + if (!ownerInstance) return + computeCutSize(ownerInstance) +} + +// 宽度变化 +function canvasWidth(ownerInstance) { + if (!ownerInstance) return + computeCutSize(ownerInstance) +} + +// 更新数据 +function updateData(ownerInstance) { + if (!ownerInstance) return + ownerInstance.callMethod('change', { + cutX: cropper.cutX, + cutY: cropper.cutY, + imgWidth: cropper.imgWidth, + imgHeight: cropper.imgHeight, + scale: cropper.scale, + angle: cropper.angle, + imgTop: cropper.imgTop, + imgLeft: cropper.imgLeft + }) +} + +module.exports = { + touchStart: touchStart, + touchMove: touchMove, + touchEnd: touchEnd, + propsChange: propsChange +} \ No newline at end of file diff --git a/tuniao-ui/components/tn-cropper/tn-cropper.vue b/tuniao-ui/components/tn-cropper/tn-cropper.vue new file mode 100644 index 0000000..65d75d3 --- /dev/null +++ b/tuniao-ui/components/tn-cropper/tn-cropper.vue @@ -0,0 +1,570 @@ + + + + + + diff --git a/tuniao-ui/components/tn-custom-swiper-item/index.wxs b/tuniao-ui/components/tn-custom-swiper-item/index.wxs new file mode 100644 index 0000000..a6c12b7 --- /dev/null +++ b/tuniao-ui/components/tn-custom-swiper-item/index.wxs @@ -0,0 +1,288 @@ + +function setTimeout(instance, cb, time) { + if (time > 0) { + var s = getDate().getTime() + var fn = function () { + if (getDate().getTime() - s > time) { + cb && cb() + } else + instance.requestAnimationFrame(fn) + } + fn() + } + else + cb && cb() +} + +// 判断触摸的移动方向 +function decideSwiperDirection(startTouches, currentTouches, vertical) { + // 震动偏移容差 + var toleranceShake = 150 + // 移动容差 + var toleranceTranslate = 10 + + if (!vertical) { + // 水平方向移动 + if (Math.abs(currentTouches.y - startTouches.y) <= toleranceShake) { + // console.log(currentTouches.x, startTouches.x); + if (Math.abs(currentTouches.x - startTouches.x) > toleranceTranslate) { + if (currentTouches.x - startTouches.x > 0) { + return 'right' + } else if (currentTouches.x - startTouches.x < 0) { + return 'left' + } + } + } + } else { + // 垂直方向移动 + if (Math.abs(currentTouches.x - startTouches.x) <= toleranceShake) { + // console.log(currentTouches.x, startTouches.x); + if (Math.abs(currentTouches.y - startTouches.y) > toleranceTranslate) { + if (currentTouches.y - startTouches.y > 0) { + return 'down' + } else if (currentTouches.y - startTouches.y < 0) { + return 'up' + } + } + } + } + return '' +} + +// swiperItem参数数据更新 +var itemDataObserver = function(newVal, oldVal, ownerInstance, instance) { + if (!newVal || newVal === 'undefined') return + var state = ownerInstance.getState() + state.itemData = newVal +} + +// swiperIndex数据更新 +var currentIndexObserver = function(newVal, oldVal, ownerInstance, instance) { + if ((!newVal && newVal != 0) || newVal === 'undefined') return + var state = ownerInstance.getState() + state.currentIndex = newVal +} + +// containerData数据更新 +var containerDataObserver = function(newVal, oldVal, ownerInstance, instance) { + if (!newVal || newVal === 'undefined') return + var state = ownerInstance.getState() + state.containerData = newVal +} + +// 开始触摸 +var touchStart = function(event, ownerInstance) { + console.log('touchStart'); + var instance = event.instance + var dataset = instance.getDataset() + var state = ownerInstance.getState() + var itemData = state.itemData + var containerData = state.containerData + + // 由于当前SwiperIndex初始为0,可能会导致swiperIndex数据没有更新 + if (!state.currentIndex || state.currentIndex === 'undefined') { + state.currentIndex = 0 + } + + if (!containerData || containerData.circular === 'undefined') { + containerData.circular = false + } + state.containerData = containerData + + // 如果当前切换动画还没执行结束,再次触摸会重新加载对应的swiperContainer的信息 + // console.log(containerData.animationFinish); + if (!containerData.animationFinish) { + ownerInstance.callMethod('changeParentSwiperContainerStyleStatus',{ + status: 'reload' + }) + } + + // 判断是否为为当前显示的SwiperItem + if (itemData.index != state.currentIndex) return + + var touches = event.changedTouches[0] + if (!touches) return + + // 标记滑动开始时间 + state.touchStartTime = getDate().getTime() + + // 记录当前滑动开始的x,y坐标 + state.touchRelactive = { + x: touches.pageX, + y: touches.pageY + } + // 记录触摸id,用于处理多指的情况 + state.touchId = touches.identifier + + // 标记开始触摸 + state.touching = true + ownerInstance.callMethod('updateTouchingStatus', { + status: true + }) +} + +// 正在移动 +var touchMove = function(event, ownerInstance) { + console.log('touchMove'); + var instance = event.instance + var dataset = instance.getDataset() + var state = ownerInstance.getState() + var itemData = state.itemData + var containerData = state.containerData + + // 判断是否为为当前显示的SwiperItem + if (itemData.index != state.currentIndex) return + + // 判断是否开始触摸 + if (!state.touching) return + + var touches = event.changedTouches[0] + if (!touches) return + // 判断是否为同一个触摸点 + if (state.touchId != touches.identifier) return + + var currentTouchRelactive = { + x: touches.pageX, + y: touches.pageY + } + + // 计算相对位移比例 + if (containerData.vertical) { + var touchDistance = currentTouchRelactive.y - state.touchRelactive.y + var itemHeight = itemData.itemHeight + var distanceRate = touchDistance / itemHeight + // console.log(currentTouchRelactive.y, touchDistance, itemHeight, distanceRate); + + // 判断是否为衔接轮播,如果不是衔接轮播,如果当前为第一个swiperItem并且向下滑、当前为最后一个swiperItem并且向上滑时不进行操作 + if (!containerData.circular && + ((state.currentIndex === 0 && touchDistance > 0) || (state.currentIndex === containerData.swiperItemLength - 1 && touchDistance < 0)) + ) { + return + } + + // 如果超出了距离则不进行操作 + if((Math.abs(touchDistance) > (itemData.itemTop + itemData.itemHeight))) { + ownerInstance.callMethod('updateParentSwiperContainerStyle', { + value: distanceRate < 0 ? -1 : 1 + }) + return + } + } else { + var touchDistance = currentTouchRelactive.x - state.touchRelactive.x + var itemWidth = itemData.itemWidth + var distanceRate = touchDistance / itemWidth + // console.log(currentTouchRelactive.x, touchDistance, itemWidth, distanceRate); + + // 判断是否为衔接轮播,如果不是衔接轮播,如果当前为第一个swiperItem并且向右滑、当前为最后一个swiperItem并且向左滑时不进行操作 + if (!containerData.circular && + ((state.currentIndex === 0 && touchDistance > 0) || (state.currentIndex === containerData.swiperItemLength - 1 && touchDistance < 0)) + ) { + return + } + + // 如果超出了距离则不进行操作 + if((Math.abs(touchDistance) > (itemData.itemLeft + itemData.itemWidth))) { + ownerInstance.callMethod('updateParentSwiperContainerStyle', { + value: distanceRate < 0 ? -1 : 1 + }) + return + } + } + + ownerInstance.callMethod('updateParentSwiperContainerStyle', { + value: distanceRate + }) +} + +// 移动结束 +var touchEnd = function(event, ownerInstance) { + console.log('touchEnd'); + var instance = event.instance + var dataset = instance.getDataset() + var state = ownerInstance.getState() + var itemData = state.itemData + var containerData = state.containerData + + // 判断是否为为当前显示的SwiperItem + if (itemData.index != state.currentIndex) return + + // 判断是否开始触摸 + if (!state.touching) return + + var touches = event.changedTouches[0] + if (!touches) return + // 判断是否为同一个触摸点 + if (state.touchId != touches.identifier) return + + + var currentTime = getDate().getTime() + var currentTouchRelactive = { + x: touches.pageX, + y: touches.pageY + } + + if (containerData.vertical) { + // 判断触摸移动方向 + var direction = decideSwiperDirection(state.touchRelactive, currentTouchRelactive, true) + // 判断是否为衔接轮播,如果不是衔接轮播,如果当前为第一个swiperItem并且向下滑、当前为最后一个swiperItem并且向上滑时不进行操作 + if (containerData.circular || + !((state.currentIndex === 0 && direction === 'down') || (state.currentIndex === containerData.swiperItemLength - 1 && direction === 'up')) + ) { + // 判断触摸的时间和移动的距离是否超过了当前itemHeight的一半,如果是则执行切换操作 + // console.log(currentTime - state.touchStartTime, Math.abs(currentTouchRelactive.y - state.touchRelactive.y)); + if ((currentTime - state.touchStartTime) > 200 && Math.abs(currentTouchRelactive.y - state.touchRelactive.y) < itemData.itemHeight / 2) { + ownerInstance.callMethod('changeParentSwiperContainerStyleStatus',{ + status: 'reset' + }) + } else { + // console.log(direction, state.touchRelactive.y, currentTouchRelactive.y); + + ownerInstance.callMethod('updateParentSwiperContainerStyleWithDirection', { + direction: direction + }) + } + } + } else { + // 判断触摸移动方向 + var direction = decideSwiperDirection(state.touchRelactive, currentTouchRelactive, false) + // 判断是否为衔接轮播,如果不是衔接轮播,如果当前为第一个swiperItem并且向右滑、当前为最后一个swiperItem并且向左滑时不进行操作 + if (containerData.circular || + !((state.currentIndex === 0 && direction === 'right') || (state.currentIndex === containerData.swiperItemLength - 1 && direction === 'left')) + ) { + // 判断触摸的时间和移动的距离是否超过了当前itemWidth的一半,如果是则执行切换操作 + // console.log(currentTime - state.touchStartTime, Math.abs(currentTouchRelactive.x - state.touchRelactive.x)); + if ((currentTime - state.touchStartTime) > 200 && Math.abs(currentTouchRelactive.x - state.touchRelactive.x) < itemData.itemWidth / 2) { + ownerInstance.callMethod('changeParentSwiperContainerStyleStatus',{ + status: 'reset' + }) + } else { + // console.log(direction, state.touchRelactive.x, currentTouchRelactive.x); + + ownerInstance.callMethod('updateParentSwiperContainerStyleWithDirection', { + direction: direction + }) + } + } + } + + // 清除标记 + state.touchId = null + state.touchRelactive = null + state.touchStartTime = 0 + + + // 标记停止触摸 + state.touching = true + ownerInstance.callMethod('updateTouchingStatus', { + status: false + }) +} + +module.exports = { + itemDataObserver: itemDataObserver, + currentIndexObserver: currentIndexObserver, + containerDataObserver: containerDataObserver, + touchStart: touchStart, + touchMove: touchMove, + touchEnd: touchEnd +} \ No newline at end of file diff --git a/tuniao-ui/components/tn-custom-swiper-item/tn-custom-swiper-item.vue b/tuniao-ui/components/tn-custom-swiper-item/tn-custom-swiper-item.vue new file mode 100644 index 0000000..5fd3c5b --- /dev/null +++ b/tuniao-ui/components/tn-custom-swiper-item/tn-custom-swiper-item.vue @@ -0,0 +1,277 @@ + + + + + + diff --git a/tuniao-ui/components/tn-custom-swiper/tn-custom-swiper.vue b/tuniao-ui/components/tn-custom-swiper/tn-custom-swiper.vue new file mode 100644 index 0000000..2094fe6 --- /dev/null +++ b/tuniao-ui/components/tn-custom-swiper/tn-custom-swiper.vue @@ -0,0 +1,535 @@ + + + + + diff --git a/tuniao-ui/components/tn-drag/index.wxs b/tuniao-ui/components/tn-drag/index.wxs new file mode 100644 index 0000000..6df1e84 --- /dev/null +++ b/tuniao-ui/components/tn-drag/index.wxs @@ -0,0 +1,265 @@ +// 判断是否出界 +var isOutRange = function(x1, y1, x2, y2, x3, y3) { + return x1 < 0 || x1 >= y1 || x2 < 0 || x2 >= y2 || x3 < 0 || x3 >= y3 +} +var edit = false + +function bool(str) { + return str === 'true' || str === true +} +/** + * 排序核心 + * @param {Object} startKey 开始时位置 + * @param {Object} endKey 结束时位置 + * @param {Object} instance wxs内的局部变量快照 + */ +var sortCore = function(startKey, endKey, state) { + var basedata = state.basedata + var excludeFix = function(sortKey, type) { + // fixed 元素位置不会变化, 这里直接用 sortKey 获取,更加便捷 + if (state.list[sortKey].fixed) { + var _sortKey = type ? --sortKey : ++sortKey + return excludeFix(sortKey, type) + } + return sortKey + } + + // 先获取到 endKey 对应的 realKey, 防止下面排序过程中该 realKey 被修改 + var endRealKey = -1 + state.list.forEach(function(item) { + if (item.sortKey === endKey) endRealKey = item.realKey + }) + + return state.list.map(function(item) { + if (item.fixed) return item + var sortKey = item.sortKey + var realKey = item.realKey + + if (startKey < endKey) { + // 正序拖动 + if (sortKey > startKey && sortKey <= endKey) { + --realKey + sortKey = excludeFix(--sortKey, true) + } else if (sortKey === startKey) { + realKey = endRealKey + sortKey = endKey + } + } else if (startKey > endKey) { + // 倒序拖动 + if (sortKey >= endKey && sortKey < startKey) { + ++realKey + sortKey = excludeFix(++sortKey, false) + } else if (sortKey === startKey) { + realKey = endRealKey + sortKey = endKey + } + } + + if (item.sortKey != sortKey) { + item.translateX = (sortKey % basedata.columns) * 100 + '%' + item.translateY = Math.floor(sortKey / basedata.columns) * 100 + '%' + item.sortKey = sortKey + item.realKey = realKey + } + return item + }) +} + +var triggerCustomEvent = function(list, type, instance) { + if (!instance) return + var _list = [], + listData = []; + + list.forEach(function(item) { + _list[item.sortKey] = item + }) + _list.forEach(function(item) { + listData.push(item.data) + }) + + // 编译到小程序 funcName作为参数传递导致事件不执行 + switch(type) { + case 'change': + instance.callMethod('change', {data: listData}) + break + case 'sortEnd': + instance.callMethod('sortEnd', {data: listData}) + break + } +} + +var listObserver = function(newVal, oldVal, ownerInstance, instance) { + var state = ownerInstance.getState() + state.itemsInstance = ownerInstance.selectAllComponents('.tn-drag__item') + + state.list = newVal || [] + + state.list.forEach(function(item, index) { + var itemInstance = state.itemsInstance[index] + if (item && itemInstance) { + itemInstance.setStyle({ + 'transform': 'translate3d('+ item.translateX + ',' + item.translateY +', 0)' + }) + if (item.fixed) itemInstance.addClass('tn-drag__fixed') + } + }) +} + +var baseDataObserver = function(newVal, oldVal, ownerInstance, instance) { + var state = ownerInstance.getState() + state.basedata = newVal +} + +var longPress = function(event, ownerInstance) { + var instance = event.instance + var dataset = instance.getDataset() + var state = ownerInstance.getState() + + edit = bool(dataset.edit) + if (!edit) return + if (!state.basedata || state.basedata === 'undefined') { + state.basedata = JSON.parse(dataset.basedata) + } + var basedata = state.basedata + var touches = event.changedTouches[0] + if (!touches) return + + state.current = +dataset.index + + // 初始项是固定项则返回 + var item = state.list[state.current] + if (item && item.fixed) return + + // 如果已经在 drag 中则返回, 防止多指触发 drag 动作, touchstart 事件中有效果 + if (state.dragging) return + + ownerInstance.callMethod("drag", { + dragging: true + }) + + // 计算X, Y轴初始位移,使item中心移动到点击处,单列的时候X轴初始不做位移 + state.translateX = basedata.columns === 1 ? 0 : touches.pageX - (basedata.itemWidth / 2 + basedata.left) + state.translateY = touches.pageY - (basedata.itemHeight / 2 + basedata.top) + state.touchId = touches.identifier + + instance.setStyle({ + 'transform': 'translate3d(' + state.translateX + 'px,' + state.translateY +'px, 0)' + }) + state.itemsInstance.forEach(function(item, index) { + item.removeClass("tn-drag__transition").removeClass("tn-drag__current") + item.addClass(index === state.current ? "tn-drag__current" : "tn-drag__transition") + }) + + ownerInstance.callMethod("vibrate") + state.dragging = true +} + +var touchStart = function(event, ownerInstance) { + var instance = event.instance + var dataset = instance.getDataset() + edit = bool(dataset.edit) +} + +var touchMove = function(event, ownerInstance) { + var instance = event.instance + var dataset = instance.getDataset() + var state = ownerInstance.getState() + var basedata = state.basedata + + if (!state.dragging || !edit) return + var touches = event.changedTouches[0] + if (!touches) return + + // 如果不是同一个触发点则返回 + if (state.touchId !== touches.identifier) return + + // 计算X,Y轴位移, 单列时候X轴初始不做位移 + var translateX = basedata.columns === 1 ? 0 : touches.pageX - (basedata.itemWidth / 2 + basedata.left) + var translateY = touches.pageY - (basedata.itemHeight / 2 + basedata.top) + + // 到顶到低自动滑动 + if (touches.clientY > basedata.windowHeight - basedata.itemHeight - basedata.realBottomSize) { + // 当前触摸点pageY + item高度 - (屏幕高度 - 底部固定区域高度) + ownerInstance.callMethod('pageScroll', { + scrollTop: touches.pageY + basedata.itemHeight - (basedata.windowHeight - basedata.realBottomSize) + }) + } else if (touches.clientY < basedata.itemHeight + basedata.realTopSize) { + // 当前触摸点pageY - item高度 - 顶部固定区域高 + ownerInstance.callMethod('pageScroll', { + scrollTop: touches.pageY - basedata.itemHeight - basedata.realTopSize + }) + } + + // 设置当前激活元素的偏移量 + instance.setStyle({ + 'transform': 'translate3d('+ translateX + 'px,' + translateY + 'px, 0)' + }) + + var startKey = state.list[state.current].sortKey + var currentX = Math.round(translateX / basedata.itemWidth) + var currentY = Math.round(translateY / basedata.itemHeight) + var endKey = currentX + basedata.columns * currentY + + // 目标项时固定项则返回 + var item = state.list[endKey] + if (item && item.fixed) return + + // X轴或者Y轴超出范围则返回 + if (isOutRange(currentX, basedata.columns, currentY, basedata.rows, endKey, state.list.length)) return + + // 防止拖拽过程中发生乱序问题 + if (startKey === endKey || startKey === state.preStartKey) return + state.preStartKey = startKey + + var list = sortCore(startKey, endKey, state) + state.itemsInstance.forEach(function(itemInstance, index) { + var item = list[index] + if (index !== state.current) { + itemInstance.setStyle({ + 'transform': 'translate3d('+ item.translateX + ',' + item.translateY +', 0)' + }) + } + }) + + // ownerInstance.callMethod('vibrate') + ownerInstance.callMethod('listDataChange', { + data: list + }) + triggerCustomEvent(list, "change", ownerInstance) +} + +var touchEnd = function(event, ownerInstance) { + var instance = event.instance + var dataset = instance.getDataset() + var state = ownerInstance.getState() + var basedata = state.basedata + + if (!state.dragging || !edit) return + triggerCustomEvent(state.list, "sortEnd", ownerInstance) + + instance.addClass('tn-drag__transition') + instance.setStyle({ + 'transform': 'translate3d('+ state.list[state.current].translateX + ',' + state.list[state.current].translateY + ', 0)' + }) + state.itemsInstance.forEach(function(item, index) { + item.removeClass('tn-drag__transition') + }) + + state.preStartKey = -1 + state.dragging = false + ownerInstance.callMethod('drag', { + dragging: false + }) + state.current = -1 + state.translateX = 0 + state.translateY = 0 +} + +module.exports = { + longPress: longPress, + touchStart: touchStart, + touchMove: touchMove, + touchEnd: touchEnd, + baseDataObserver: baseDataObserver, + listObserver: listObserver +} \ No newline at end of file diff --git a/tuniao-ui/components/tn-drag/tn-drag.vue b/tuniao-ui/components/tn-drag/tn-drag.vue new file mode 100644 index 0000000..17d269d --- /dev/null +++ b/tuniao-ui/components/tn-drag/tn-drag.vue @@ -0,0 +1,278 @@ + + + + + diff --git a/tuniao-ui/components/tn-empty/tn-empty.vue b/tuniao-ui/components/tn-empty/tn-empty.vue new file mode 100644 index 0000000..3a85b15 --- /dev/null +++ b/tuniao-ui/components/tn-empty/tn-empty.vue @@ -0,0 +1,190 @@ + + + + + diff --git a/tuniao-ui/components/tn-fab/tn-fab.vue b/tuniao-ui/components/tn-fab/tn-fab.vue new file mode 100644 index 0000000..6b867e9 --- /dev/null +++ b/tuniao-ui/components/tn-fab/tn-fab.vue @@ -0,0 +1,523 @@ + + + + + diff --git a/tuniao-ui/components/tn-form-item/tn-form-item.vue b/tuniao-ui/components/tn-form-item/tn-form-item.vue new file mode 100644 index 0000000..9e9725c --- /dev/null +++ b/tuniao-ui/components/tn-form-item/tn-form-item.vue @@ -0,0 +1,457 @@ + + + + + diff --git a/tuniao-ui/components/tn-form/tn-form.vue b/tuniao-ui/components/tn-form/tn-form.vue new file mode 100644 index 0000000..f0ebf19 --- /dev/null +++ b/tuniao-ui/components/tn-form/tn-form.vue @@ -0,0 +1,139 @@ + + + + + diff --git a/tuniao-ui/components/tn-goods-nav/tn-goods-nav.vue b/tuniao-ui/components/tn-goods-nav/tn-goods-nav.vue new file mode 100644 index 0000000..bf577cf --- /dev/null +++ b/tuniao-ui/components/tn-goods-nav/tn-goods-nav.vue @@ -0,0 +1,382 @@ + + + + + diff --git a/tuniao-ui/components/tn-grid-item/tn-grid-item.vue b/tuniao-ui/components/tn-grid-item/tn-grid-item.vue new file mode 100644 index 0000000..2837bc2 --- /dev/null +++ b/tuniao-ui/components/tn-grid-item/tn-grid-item.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/tuniao-ui/components/tn-grid/tn-grid.vue b/tuniao-ui/components/tn-grid/tn-grid.vue new file mode 100644 index 0000000..f5487c6 --- /dev/null +++ b/tuniao-ui/components/tn-grid/tn-grid.vue @@ -0,0 +1,111 @@ + + + + + diff --git a/tuniao-ui/components/tn-image-upload-drag/tn-image-upload-drag.vue b/tuniao-ui/components/tn-image-upload-drag/tn-image-upload-drag.vue new file mode 100644 index 0000000..05b4b25 --- /dev/null +++ b/tuniao-ui/components/tn-image-upload-drag/tn-image-upload-drag.vue @@ -0,0 +1,1011 @@ + + + + + diff --git a/tuniao-ui/components/tn-image-upload/tn-image-upload.vue b/tuniao-ui/components/tn-image-upload/tn-image-upload.vue new file mode 100644 index 0000000..f9d7d8c --- /dev/null +++ b/tuniao-ui/components/tn-image-upload/tn-image-upload.vue @@ -0,0 +1,645 @@ + + + + + diff --git a/tuniao-ui/components/tn-index-anchor/tn-index-anchor.vue b/tuniao-ui/components/tn-index-anchor/tn-index-anchor.vue new file mode 100644 index 0000000..97bef6e --- /dev/null +++ b/tuniao-ui/components/tn-index-anchor/tn-index-anchor.vue @@ -0,0 +1,90 @@ + + + + + diff --git a/tuniao-ui/components/tn-index-list/tn-index-list.vue b/tuniao-ui/components/tn-index-list/tn-index-list.vue new file mode 100644 index 0000000..91fc639 --- /dev/null +++ b/tuniao-ui/components/tn-index-list/tn-index-list.vue @@ -0,0 +1,361 @@ + + + + + diff --git a/tuniao-ui/components/tn-input/tn-input.vue b/tuniao-ui/components/tn-input/tn-input.vue new file mode 100644 index 0000000..902bb91 --- /dev/null +++ b/tuniao-ui/components/tn-input/tn-input.vue @@ -0,0 +1,427 @@ +