├── .DS_Store ├── LICENSE ├── README.md ├── docs ├── .DS_Store ├── .nojekyll ├── README.md ├── config.js ├── dev.md ├── img │ ├── .DS_Store │ ├── 2.jpg │ ├── cat.png │ ├── catadd.png │ ├── catedit.png │ ├── favicon.ico │ ├── info.png │ ├── interface.png │ ├── pcshow1.png │ ├── pcshow2.png │ ├── pcshow3.png │ ├── pcshow4.png │ ├── pcshow5.png │ ├── pkg.png │ ├── statistics.png │ ├── tx.jpg │ ├── update.png │ ├── user.png │ ├── usercat.png │ ├── wechat1.png │ ├── wechat2.png │ ├── wechat3.png │ ├── wechat33.png │ ├── wechat4.png │ ├── wechat5.png │ ├── wechat6.png │ └── 小程序.jpg ├── index.html ├── introduce.md ├── java.md ├── landing.html ├── pc.md ├── toc.md └── wechat.md ├── pc ├── .babelrc ├── .editorconfig ├── .gitignore ├── .postcssrc.js ├── README.md ├── build │ ├── build.js │ ├── check-versions.js │ ├── logo.png │ ├── utils.js │ ├── vue-loader.conf.js │ ├── webpack.base.conf.js │ ├── webpack.dev.conf.js │ ├── webpack.prod.conf.js │ └── webpack.test.conf.js ├── config │ ├── dev.env.js │ ├── index.js │ ├── prod.env.js │ └── test.env.js ├── dist │ ├── index.html │ └── static │ │ ├── 1.png │ │ ├── app.jpg │ │ ├── bitbug_favicon.ico │ │ ├── css │ │ ├── app.818e3dc22d29604f02be1d30c09f2505.css │ │ └── app.818e3dc22d29604f02be1d30c09f2505.css.map │ │ ├── defaultApp.jpg │ │ ├── disable.png │ │ ├── enable.png │ │ ├── fonts │ │ ├── ionicons.99ac330.woff │ │ └── ionicons.d535a25.ttf │ │ ├── img │ │ └── ionicons.a2c4a26.svg │ │ ├── js │ │ ├── app.16a660845fb5bf07b543.js │ │ ├── app.16a660845fb5bf07b543.js.map │ │ ├── manifest.3ad1d5771e9b13dbdad2.js │ │ ├── manifest.3ad1d5771e9b13dbdad2.js.map │ │ ├── vendor.9efa0feb8e5d0cd8cf86.js │ │ └── vendor.9efa0feb8e5d0cd8cf86.js.map │ │ ├── logo.png │ │ ├── tvbg.jpg │ │ ├── xlm.png │ │ ├── 电视机_1.png │ │ └── 鹿.png ├── index.html ├── package-lock.json ├── package.json ├── src │ ├── App.vue │ ├── api │ │ ├── common.js │ │ ├── food.js │ │ └── user.js │ ├── assets │ │ ├── layout.css │ │ ├── logo.jpg │ │ └── main.css │ ├── components │ │ ├── canvasBg │ │ │ ├── canvas1.js │ │ │ └── canvas1.vue │ │ ├── card │ │ │ ├── details.js │ │ │ ├── details.vue │ │ │ ├── overview.js │ │ │ └── overview.vue │ │ ├── charts │ │ │ ├── detail-line.js │ │ │ ├── detail-line.vue │ │ │ ├── index.js │ │ │ └── index.vue │ │ ├── echarts │ │ │ ├── bar │ │ │ │ ├── demo1.js │ │ │ │ ├── demo1.vue │ │ │ │ ├── demo2.js │ │ │ │ └── demo2.vue │ │ │ ├── calendar │ │ │ │ ├── demo1.js │ │ │ │ ├── demo1.vue │ │ │ │ ├── demo2.js │ │ │ │ └── demo2.vue │ │ │ ├── funnel │ │ │ │ ├── demo1.js │ │ │ │ └── demo1.vue │ │ │ ├── histogram │ │ │ │ ├── demo1.js │ │ │ │ ├── demo1.vue │ │ │ │ ├── demo2.js │ │ │ │ └── demo2.vue │ │ │ ├── line │ │ │ │ ├── demo1.js │ │ │ │ └── demo1.vue │ │ │ ├── mix │ │ │ │ ├── demo1.js │ │ │ │ └── demo1.vue │ │ │ ├── point │ │ │ │ ├── demo1.js │ │ │ │ └── demo1.vue │ │ │ ├── radar │ │ │ │ ├── demo1.js │ │ │ │ ├── demo1.vue │ │ │ │ ├── demo2.js │ │ │ │ └── demo2.vue │ │ │ └── tree │ │ │ │ ├── demo1.js │ │ │ │ └── demo1.vue │ │ ├── header │ │ │ ├── header.js │ │ │ ├── header.vue │ │ │ └── logo.png │ │ ├── info │ │ │ ├── info.js │ │ │ └── info.vue │ │ ├── push │ │ │ ├── add.js │ │ │ └── add.vue │ │ └── statistics │ │ │ ├── num.js │ │ │ └── num.vue │ ├── main.js │ ├── pages │ │ ├── error │ │ │ └── 404.vue │ │ ├── food │ │ │ ├── cat.vue │ │ │ ├── components │ │ │ │ ├── foodAdd.vue │ │ │ │ ├── foodCatAdd.vue │ │ │ │ ├── foodDetail.vue │ │ │ │ └── packageAdd.vue │ │ │ ├── index.vue │ │ │ └── package.vue │ │ ├── index.vue │ │ ├── login │ │ │ ├── login.vue │ │ │ └── signin.vue │ │ ├── setting │ │ │ ├── addClick.vue │ │ │ ├── click.vue │ │ │ ├── index.vue │ │ │ └── statistics.vue │ │ ├── statistics │ │ │ ├── components │ │ │ │ ├── detail-line.js │ │ │ │ └── detail-line.vue │ │ │ └── index.vue │ │ ├── text.vue │ │ ├── user │ │ │ ├── components │ │ │ │ ├── UserAdd.vue │ │ │ │ ├── UserCatAdd.vue │ │ │ │ └── UserDetail.vue │ │ │ ├── settingInfo.vue │ │ │ ├── user.vue │ │ │ └── userCat.vue │ │ └── welcome │ │ │ └── welcome.vue │ ├── router │ │ └── index.js │ ├── store │ │ └── store.js │ └── utils │ │ ├── Validate │ │ ├── Validate.js │ │ └── pattern.js │ │ ├── axios.js │ │ ├── http.js │ │ ├── login.js │ │ ├── request.js │ │ ├── storage.js │ │ └── utils.js ├── static │ ├── .gitkeep │ ├── 1.png │ ├── app.jpg │ ├── bitbug_favicon.ico │ ├── defaultApp.jpg │ ├── disable.png │ ├── enable.png │ ├── logo.png │ ├── tvbg.jpg │ ├── xlm.png │ ├── 电视机_1.png │ └── 鹿.png └── test │ ├── e2e │ ├── custom-assertions │ │ └── elementCount.js │ ├── nightwatch.conf.js │ ├── runner.js │ └── specs │ │ └── test.js │ └── unit │ ├── .eslintrc │ ├── index.js │ ├── karma.conf.js │ └── specs │ └── HelloWorld.spec.js ├── snapshot.png └── wechat ├── .editorconfig ├── .gitignore ├── .prettierrc ├── .wepycache ├── .wepyignore ├── dist ├── .gitignore ├── _wepylogs.js ├── app.js ├── app.json ├── app.wxss ├── components │ ├── ads.js │ ├── ads.wxss │ ├── animeList.js │ ├── animeList.wxss │ ├── bookList.js │ ├── bookList.wxss │ ├── cart.js │ ├── cart.wxss │ ├── counter.js │ ├── counter.wxss │ ├── foodList.js │ ├── foodList.wxss │ ├── group.js │ ├── group.wxss │ ├── groupitem.js │ ├── groupitem.wxss │ ├── icon.js │ ├── icon.wxss │ ├── imageList.js │ ├── imageList.wxss │ ├── list.js │ ├── list.wxss │ ├── panel.js │ ├── panel.wxss │ ├── pannelTag.js │ ├── pannelTag.wxss │ ├── screen.js │ ├── screen.wxss │ ├── searchbar.js │ ├── searchbar.wxss │ ├── side_tab.js │ ├── side_tab.wxss │ ├── stars.js │ ├── stars.wxss │ ├── swiper.js │ ├── swiper.wxss │ ├── time.js │ ├── time.wxss │ ├── wepy-list.js │ └── wepy-list.wxss ├── config.js ├── images │ ├── download.zip │ ├── font_756788_45k0lfetmni │ │ ├── demo.css │ │ ├── demo_fontclass.html │ │ ├── demo_symbol.html │ │ ├── demo_unicode.html │ │ ├── iconfont.css │ │ ├── iconfont.eot │ │ ├── iconfont.js │ │ ├── iconfont.svg │ │ ├── iconfont.ttf │ │ └── iconfont.woff │ ├── icon │ │ ├── add.jpg │ │ ├── add.jpg.crdownload │ │ ├── addAfter.jpg │ │ ├── addBefore.jpg │ │ ├── download.zip │ │ ├── icon-avatar@2x.png │ │ ├── icon-cancel@2x.png │ │ ├── icon-eye-active@2x.png │ │ ├── icon-eye@2x.png │ │ ├── icon-location@2x.png │ │ ├── icon-star-active@2x.png │ │ ├── icon-star@2x.png │ │ ├── menhera.jpg │ │ └── search.png │ ├── swiper.png │ ├── tabbars │ │ ├── active.jpg │ │ ├── active.jpg.crdownload │ │ ├── icon-mark-active@2x.png │ │ ├── icon-mark@2x.png │ │ ├── icon-shelf-active@2x.png │ │ ├── icon-shelf@2x.png │ │ ├── icon-smile-active@2x.png │ │ ├── icon-smile@2x.png │ │ ├── menhera.jpg │ │ └── menhera.jpg.crdownload │ └── transfonter.org-20180831-064726 │ │ ├── demo.html │ │ ├── iconfont.ttf │ │ └── stylesheet.css ├── img │ ├── download.zip │ ├── download │ │ ├── 1 │ │ │ ├── demo.css │ │ │ ├── demo_fontclass.html │ │ │ ├── demo_symbol.html │ │ │ ├── demo_unicode.html │ │ │ ├── iconfont.css │ │ │ ├── iconfont.eot │ │ │ ├── iconfont.js │ │ │ ├── iconfont.svg │ │ │ ├── iconfont.ttf │ │ │ └── iconfont.woff │ │ ├── font_756788_0vj6p189ve8 │ │ │ ├── demo.css │ │ │ ├── demo_fontclass.html │ │ │ ├── demo_symbol.html │ │ │ ├── demo_unicode.html │ │ │ ├── iconfont.css │ │ │ ├── iconfont.eot │ │ │ ├── iconfont.js │ │ │ ├── iconfont.svg │ │ │ ├── iconfont.ttf │ │ │ └── iconfont.woff │ │ └── font_756788_deyll83yi25 │ │ │ ├── demo.css │ │ │ ├── demo_fontclass.html │ │ │ ├── demo_symbol.html │ │ │ ├── demo_unicode.html │ │ │ ├── iconfont.css │ │ │ ├── iconfont.eot │ │ │ ├── iconfont.js │ │ │ ├── iconfont.svg │ │ │ ├── iconfont.ttf │ │ │ └── iconfont.woff │ ├── transfonter.org-20180720-090137.zip │ ├── transfonter.org-20180720-090137 │ │ ├── demo.html │ │ ├── iconfont.woff │ │ ├── iconfont.woff2 │ │ └── stylesheet.css │ ├── transfonter.org-20180720-092448.zip │ └── transfonter.org-20180720-092448 │ │ ├── demo.html │ │ ├── iconfont.woff │ │ ├── iconfont.woff2 │ │ └── stylesheet.css ├── index.template.html ├── mixins │ ├── base.js │ ├── cart.js │ ├── data.js │ ├── http.js │ ├── test.js │ └── user.js ├── npm │ ├── flux-standard-action │ │ └── lib │ │ │ └── index.js │ ├── invariant │ │ └── browser.js │ ├── lodash._basefor │ │ └── index.js │ ├── lodash.camelcase │ │ └── index.js │ ├── lodash.curry │ │ └── index.js │ ├── lodash.isarguments │ │ └── index.js │ ├── lodash.isarray │ │ └── index.js │ ├── lodash.isplainobject │ │ └── index.js │ ├── lodash.keysin │ │ └── index.js │ ├── lodash │ │ ├── _DataView.js │ │ ├── _LazyWrapper.js │ │ ├── _LodashWrapper.js │ │ ├── _Map.js │ │ ├── _Promise.js │ │ ├── _Set.js │ │ ├── _Symbol.js │ │ ├── _WeakMap.js │ │ ├── _apply.js │ │ ├── _arrayEach.js │ │ ├── _arrayIncludes.js │ │ ├── _arrayLikeKeys.js │ │ ├── _arrayMap.js │ │ ├── _arrayReduce.js │ │ ├── _asciiToArray.js │ │ ├── _asciiWords.js │ │ ├── _baseCreate.js │ │ ├── _baseFindIndex.js │ │ ├── _baseGetTag.js │ │ ├── _baseIndexOf.js │ │ ├── _baseIsArguments.js │ │ ├── _baseIsMap.js │ │ ├── _baseIsNaN.js │ │ ├── _baseIsNative.js │ │ ├── _baseIsTypedArray.js │ │ ├── _baseKeys.js │ │ ├── _baseLodash.js │ │ ├── _basePropertyOf.js │ │ ├── _baseSetData.js │ │ ├── _baseSetToString.js │ │ ├── _baseSlice.js │ │ ├── _baseTimes.js │ │ ├── _baseToString.js │ │ ├── _baseUnary.js │ │ ├── _baseValues.js │ │ ├── _castSlice.js │ │ ├── _composeArgs.js │ │ ├── _composeArgsRight.js │ │ ├── _copyArray.js │ │ ├── _coreJsData.js │ │ ├── _countHolders.js │ │ ├── _createBind.js │ │ ├── _createCaseFirst.js │ │ ├── _createCompounder.js │ │ ├── _createCtor.js │ │ ├── _createCurry.js │ │ ├── _createHybrid.js │ │ ├── _createPartial.js │ │ ├── _createRecurry.js │ │ ├── _createWrap.js │ │ ├── _deburrLetter.js │ │ ├── _defineProperty.js │ │ ├── _freeGlobal.js │ │ ├── _getData.js │ │ ├── _getFuncName.js │ │ ├── _getHolder.js │ │ ├── _getNative.js │ │ ├── _getPrototype.js │ │ ├── _getRawTag.js │ │ ├── _getTag.js │ │ ├── _getValue.js │ │ ├── _getWrapDetails.js │ │ ├── _hasUnicode.js │ │ ├── _hasUnicodeWord.js │ │ ├── _insertWrapDetails.js │ │ ├── _isIndex.js │ │ ├── _isLaziable.js │ │ ├── _isMasked.js │ │ ├── _isPrototype.js │ │ ├── _mergeData.js │ │ ├── _metaMap.js │ │ ├── _nativeKeys.js │ │ ├── _nodeUtil.js │ │ ├── _objectToString.js │ │ ├── _overArg.js │ │ ├── _realNames.js │ │ ├── _reorder.js │ │ ├── _replaceHolders.js │ │ ├── _root.js │ │ ├── _setData.js │ │ ├── _setToString.js │ │ ├── _setWrapToString.js │ │ ├── _shortOut.js │ │ ├── _strictIndexOf.js │ │ ├── _stringToArray.js │ │ ├── _toSource.js │ │ ├── _unicodeToArray.js │ │ ├── _unicodeWords.js │ │ ├── _updateWrapDetails.js │ │ ├── _wrapperClone.js │ │ ├── camelCase.js │ │ ├── capitalize.js │ │ ├── constant.js │ │ ├── curry.js │ │ ├── deburr.js │ │ ├── identity.js │ │ ├── includes.js │ │ ├── isArguments.js │ │ ├── isArray.js │ │ ├── isArrayLike.js │ │ ├── isBuffer.js │ │ ├── isEmpty.js │ │ ├── isFunction.js │ │ ├── isLength.js │ │ ├── isMap.js │ │ ├── isNil.js │ │ ├── isNull.js │ │ ├── isObject.js │ │ ├── isObjectLike.js │ │ ├── isPlainObject.js │ │ ├── isString.js │ │ ├── isSymbol.js │ │ ├── isTypedArray.js │ │ ├── isUndefined.js │ │ ├── keys.js │ │ ├── last.js │ │ ├── noop.js │ │ ├── stubFalse.js │ │ ├── toFinite.js │ │ ├── toInteger.js │ │ ├── toNumber.js │ │ ├── toString.js │ │ ├── upperFirst.js │ │ ├── values.js │ │ ├── words.js │ │ └── wrapperLodash.js │ ├── promise-polyfill │ │ └── promise.js │ ├── reduce-reducers │ │ └── dist │ │ │ └── index.js │ ├── redux-actions │ │ └── lib │ │ │ ├── combineActions.js │ │ │ ├── constants.js │ │ │ ├── createAction.js │ │ │ ├── createActions.js │ │ │ ├── createCurriedAction.js │ │ │ ├── handleAction.js │ │ │ ├── handleActions.js │ │ │ ├── index.js │ │ │ └── utils │ │ │ ├── arrayToObject.js │ │ │ ├── camelCase.js │ │ │ ├── flattenActionMap.js │ │ │ ├── flattenReducerMap.js │ │ │ ├── flattenWhenNode.js │ │ │ ├── getLastElement.js │ │ │ ├── hasGeneratorInterface.js │ │ │ ├── identity.js │ │ │ ├── isArray.js │ │ │ ├── isEmpty.js │ │ │ ├── isFunction.js │ │ │ ├── isMap.js │ │ │ ├── isNil.js │ │ │ ├── isNull.js │ │ │ ├── isPlainObject.js │ │ │ ├── isString.js │ │ │ ├── isSymbol.js │ │ │ ├── isUndefined.js │ │ │ ├── ownKeys.js │ │ │ ├── toString.js │ │ │ └── unflattenActionCreators.js │ ├── redux-promise │ │ └── lib │ │ │ └── index.js │ ├── redux │ │ └── lib │ │ │ ├── applyMiddleware.js │ │ │ ├── bindActionCreators.js │ │ │ ├── combineReducers.js │ │ │ ├── compose.js │ │ │ ├── createStore.js │ │ │ ├── index.js │ │ │ └── utils │ │ │ └── warning.js │ ├── regenerator-runtime │ │ └── runtime.js │ ├── symbol-observable │ │ └── lib │ │ │ ├── index.js │ │ │ └── ponyfill.js │ ├── wepy-async-function │ │ ├── global.js │ │ └── index.js │ ├── wepy-com-toast │ │ ├── toast.js │ │ ├── toast.wxml │ │ └── toast.wxss │ ├── wepy-redux │ │ └── lib │ │ │ ├── connect │ │ │ └── index.js │ │ │ ├── helpers │ │ │ └── index.js │ │ │ ├── index.js │ │ │ └── store.js │ └── wepy │ │ └── lib │ │ ├── app.js │ │ ├── base.js │ │ ├── component.js │ │ ├── event.js │ │ ├── mixin.js │ │ ├── native.js │ │ ├── page.js │ │ ├── util.js │ │ └── wepy.js ├── pages │ ├── address.js │ ├── address.json │ ├── address.wxml │ ├── address.wxss │ ├── detail.js │ ├── detail.json │ ├── detail.wxml │ ├── detail.wxss │ ├── img.js │ ├── img.json │ ├── img.wxml │ ├── img.wxss │ ├── index.js │ ├── index.json │ ├── index.wxml │ ├── index.wxss │ ├── old.js │ ├── old.json │ ├── old.wxml │ ├── old.wxss │ ├── order.js │ ├── order.json │ ├── order.wxml │ ├── order.wxss │ ├── search.js │ ├── search.json │ ├── search.wxml │ ├── search.wxss │ ├── searchTag.js │ ├── searchTag.json │ ├── searchTag.wxml │ ├── searchTag.wxss │ ├── status.js │ ├── status.json │ ├── status.wxml │ ├── status.wxss │ ├── submit.js │ ├── submit.json │ ├── submit.wxml │ ├── submit.wxss │ ├── top.js │ ├── top.json │ ├── top.wxml │ ├── top.wxss │ ├── user.js │ ├── user.json │ ├── user.wxml │ └── user.wxss ├── project.config.json ├── store │ ├── actions │ │ ├── counter.js │ │ └── index.js │ ├── index.js │ ├── reducers │ │ ├── counter.js │ │ ├── index.js │ │ ├── user.js │ │ └── user.redux.js │ ├── reduxs │ │ └── user.redux.js │ └── types │ │ ├── counter.js │ │ └── index.js └── style │ └── weui.wxss ├── package.json ├── project.config.json ├── src ├── app.wpy ├── components │ ├── cart.wpy │ ├── foodList.wpy │ ├── icon.wpy │ ├── searchbar.wpy │ ├── side_tab.wpy │ ├── stars.wpy │ └── time.wpy ├── config.js ├── images │ ├── font_756788_45k0lfetmni │ │ ├── demo.css │ │ ├── demo_fontclass.html │ │ ├── demo_symbol.html │ │ ├── demo_unicode.html │ │ ├── iconfont.css │ │ ├── iconfont.eot │ │ ├── iconfont.js │ │ ├── iconfont.svg │ │ ├── iconfont.ttf │ │ └── iconfont.woff │ └── icon │ │ ├── add.jpg │ │ ├── addAfter.jpg │ │ ├── addBefore.jpg │ │ ├── icon-avatar@2x.png │ │ ├── icon-cancel@2x.png │ │ ├── icon-eye-active@2x.png │ │ ├── icon-eye@2x.png │ │ ├── icon-location@2x.png │ │ ├── icon-star-active@2x.png │ │ ├── icon-star@2x.png │ │ ├── menhera.jpg │ │ └── search.png ├── index.template.html ├── mixins │ ├── base.js │ ├── cart.js │ ├── data.js │ ├── http.js │ ├── test.js │ └── user.js ├── pages │ ├── address.wpy │ ├── detail.wpy │ ├── order.wpy │ ├── status.wpy │ └── submit.wpy ├── store │ ├── actions │ │ ├── counter.js │ │ └── index.js │ ├── index.js │ ├── reducers │ │ ├── counter.js │ │ └── index.js │ ├── reduxs │ │ └── user.redux.js │ └── types │ │ ├── counter.js │ │ └── index.js └── style │ └── weui.wxss └── wepy.config.js /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/.DS_Store -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 あやめ 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 微信订餐小程序 2 | 3 | [文档说明](https://calamus0427.github.io/wechat-order/docs) 4 | [管理后台预览](https://calamus0427.github.io/wechat-order/pc/dist/index.html#/login) 5 | 6 | ## 代码说明 7 | - /wechat 小程序代码 8 | - /pc 管理后代代码 9 | - /docs 文档说明源码(文档说明中的截图展示未更新,具体参考项目示例 10 | 11 | ## 截图 12 | snapshot 13 | 14 | -------------------------------------------------------------------------------- /docs/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/.DS_Store -------------------------------------------------------------------------------- /docs/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/.nojekyll -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | # docute 2 | 3 | just start writing... 4 | -------------------------------------------------------------------------------- /docs/dev.md: -------------------------------------------------------------------------------- 1 | ## 管理后台开发 2 | 3 | - ### 安装依赖 4 | ```bash 5 | # npm install 6 | ``` 7 | 8 | - ### 启动 9 | ```bash 10 | # npm run dev 11 | ``` 12 | 13 | - ### 打包部署 14 | ``` 15 | $ npm run build 16 | ``` 17 | 18 | 关于跨域问题的解决: 19 | - **cors** (Cross Origin Resource) 20 | - 在 dev 开发模式下可以下使用**webpack 的 proxy 21 | ```config.js 22 | proxyTable: { 23 | '/list': { 24 | target: 'http://api.xxxxxxxx.com', 25 | changeOrigin: true, 26 | pathRewrite: { 27 | '^/list': '/list' 28 | } 29 | } 30 | } 31 | ``` 32 | 33 | - ### 安装依赖 34 | ```bash 35 | ## 安装wepy 36 | # npm install wepy-cli -g 37 | ## 下载安装其他以来 38 | # npm install 39 | ``` 40 | 41 | 42 | - ### 启动 43 | ```bash 44 | # wepy build --watch 45 | ``` 46 | 47 | - ### 发布 48 | 打开小程序开发工具,文件指向生成的dist文件夹下 49 | 50 | 51 | ## 服务端接口说明 52 | ![img](./img/interface.png) 53 | 54 | [接口地址](http://yapi.demo.qunar.com/project/16780/interface/api/136761) 55 | -------------------------------------------------------------------------------- /docs/img/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/.DS_Store -------------------------------------------------------------------------------- /docs/img/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/2.jpg -------------------------------------------------------------------------------- /docs/img/cat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/cat.png -------------------------------------------------------------------------------- /docs/img/catadd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/catadd.png -------------------------------------------------------------------------------- /docs/img/catedit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/catedit.png -------------------------------------------------------------------------------- /docs/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/favicon.ico -------------------------------------------------------------------------------- /docs/img/info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/info.png -------------------------------------------------------------------------------- /docs/img/interface.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/interface.png -------------------------------------------------------------------------------- /docs/img/pcshow1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/pcshow1.png -------------------------------------------------------------------------------- /docs/img/pcshow2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/pcshow2.png -------------------------------------------------------------------------------- /docs/img/pcshow3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/pcshow3.png -------------------------------------------------------------------------------- /docs/img/pcshow4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/pcshow4.png -------------------------------------------------------------------------------- /docs/img/pcshow5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/pcshow5.png -------------------------------------------------------------------------------- /docs/img/pkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/pkg.png -------------------------------------------------------------------------------- /docs/img/statistics.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/statistics.png -------------------------------------------------------------------------------- /docs/img/tx.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/tx.jpg -------------------------------------------------------------------------------- /docs/img/update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/update.png -------------------------------------------------------------------------------- /docs/img/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/user.png -------------------------------------------------------------------------------- /docs/img/usercat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/usercat.png -------------------------------------------------------------------------------- /docs/img/wechat1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat1.png -------------------------------------------------------------------------------- /docs/img/wechat2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat2.png -------------------------------------------------------------------------------- /docs/img/wechat3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat3.png -------------------------------------------------------------------------------- /docs/img/wechat33.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat33.png -------------------------------------------------------------------------------- /docs/img/wechat4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat4.png -------------------------------------------------------------------------------- /docs/img/wechat5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat5.png -------------------------------------------------------------------------------- /docs/img/wechat6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/wechat6.png -------------------------------------------------------------------------------- /docs/img/小程序.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/docs/img/小程序.jpg -------------------------------------------------------------------------------- /docs/introduce.md: -------------------------------------------------------------------------------- 1 |

移动订餐平台 2 |

3 | 4 | 5 | ## 需求分析 6 | ![img](./img/小程序.jpg) 7 | 8 | 9 | ## 项目介绍 10 | - 实现移动订餐:减少食堂窗口排队人数,优化排队秩序,提高患者或陪护人员用餐体验 11 | - 实现菜品供需分析:辅助食堂优化材料采购计划,保证供需平衡,不浪费材料的同时满足用餐需求 12 | - 实现菜品评价分析:辅助食堂提升菜品质量,提高患者或陪护人员满意度 13 | - 实现定制套餐配置:使患者或陪护人员快捷选择适合特殊人群、特殊病种的套餐 14 | ### 包含内容 15 | #### 小程序端 16 | #### pc端 17 | #### 服务端 18 | 19 | ## 项目演示 20 | ### 小程序 21 | ![img](./img/wechat1.png) 22 | ![img](./img/wechat2.png) 23 | ![img](./img/wechat3.png) 24 | ![img](./img/wechat4.png) 25 | ![img](./img/wechat5.png) 26 | ![img](./img/wechat6.png) 27 | ![img](./img/wechat33.png) 28 | 29 | ### pc管理后台 30 | ![img](./img/cat.png) 31 | ![img](./img/catadd.png) 32 | ![img](./img/catedit.png) 33 | ![img](./img/update.png) 34 | ![img](./img/user.png) 35 | ![img](./img/usercat.png) 36 | ![img](./img/pcshow1.png) 37 | ![img](./img/pcshow2.png) 38 | ![img](./img/pcshow3.png) 39 | ![img](./img/pcshow4.png) 40 | ![img](./img/pcshow5.png) 41 | ![img](./img/info.png) 42 | ![img](./img/statistics.png) 43 | 44 | 45 | 46 | ## 技术栈 47 | 48 | 49 | ## 遇到的问题 50 | 51 | 52 | ## 待优化 53 | 54 | 55 | 56 | 57 | 58 | > [calamus.xyz](https://calamus.xyz) · GitHub [@calamus0427](https://github.com/calamus0427) 59 | -------------------------------------------------------------------------------- /docs/java.md: -------------------------------------------------------------------------------- 1 | ## 接口演示 2 | ![img](./img/interface.png) 3 | 4 | 5 | ## 技术栈 6 | - java 7 | - mysql 8 | - Spring boot 9 | 10 | ## 优点 11 | 1. yapi接口对接形式 12 | 前后端分离开发,不影响进度; 13 | 接口未开发完成时采用mock数据,完成后直接对接; 14 | 2. 跨域处理 15 | 16 | ## 待优化 17 | - 接口restful 18 | - 其他接口可继续完成 -------------------------------------------------------------------------------- /docs/pc.md: -------------------------------------------------------------------------------- 1 | 2 | #### 部分页面截图 3 | ![img](./img/cat.png) 4 | ![img](./img/catadd.png) 5 | ![img](./img/catedit.png) 6 | ![img](./img/update.png) 7 | ![img](./img/user.png) 8 | ![img](./img/usercat.png) 9 | ![img](./img/pcshow1.png) 10 | ![img](./img/pcshow2.png) 11 | ![img](./img/pcshow3.png) 12 | ![img](./img/pcshow4.png) 13 | ![img](./img/pcshow5.png) 14 | ![img](./img/info.png) 15 | ![img](./img/statistics.png) 16 | 17 | 18 | 19 | ## 技术栈 20 | - vue 21 | - vue-router 22 | - vuex 23 | - iview 24 | - axios 25 | - echarts 26 | - mockjs 27 | 28 | ## 优点 29 | 1. 表格化数据统计,更直观 30 | 2. 菜品分类和菜品的管理更友好 31 | 3. 菜品按照套餐和单品单独处理,更便于操作,可筛选分类 32 | 4. 人员身份验证管理,授权处理 33 | 5. 404页面的处理 34 | 6. 说明文档完整,便于项目维护 35 | 36 | ## 开发遇到的问题 37 | 38 | ## 待优化 39 | 现在的管理后台只是简单的实现了对小程序需要的数据和管理人员的简单管理; 40 | 后期可以增加一些个性化设置等 41 | -------------------------------------------------------------------------------- /docs/toc.md: -------------------------------------------------------------------------------- 1 | - [Install](/install) 2 | - [Guide](/guide) 3 | - [How to do A](/guide/how-to-do-a) 4 | - [How to do B](/guide/how-to-do-b) 5 | -------------------------------------------------------------------------------- /pc/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "modules": false, 5 | "targets": { 6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"] 7 | } 8 | }], 9 | "stage-2" 10 | ], 11 | "plugins": ["transform-vue-jsx", "transform-runtime"], 12 | "env": { 13 | "test": { 14 | "presets": ["env", "stage-2"], 15 | "plugins": ["transform-vue-jsx", "istanbul"] 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /pc/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /pc/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | npm-debug.log* 4 | yarn-debug.log* 5 | yarn-error.log* 6 | /test/unit/coverage/ 7 | /test/e2e/reports/ 8 | selenium-debug.log 9 | 10 | # Editor directories and files 11 | .idea 12 | .vscode 13 | *.suo 14 | *.ntvs* 15 | *.njsproj 16 | *.sln 17 | -------------------------------------------------------------------------------- /pc/.postcssrc.js: -------------------------------------------------------------------------------- 1 | // https://github.com/michael-ciniawsky/postcss-load-config 2 | 3 | module.exports = { 4 | "plugins": { 5 | "postcss-import": {}, 6 | "postcss-url": {}, 7 | // to edit target browsers: use "browserslist" field in package.json 8 | "autoprefixer": {} 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /pc/README.md: -------------------------------------------------------------------------------- 1 | # face 2 | 3 | > calamus 4 | > [测试服](http://172.20.135.139:8080/) 5 | 6 | ## [接口文档](http://172.20.135.99:8284/swagger-ui.html#!/%E6%96%87%E4%BB%B6%E4%B8%8A%E4%BC%A0/uploadFromatUsingPOST) 7 | 8 | ## Build Setup 9 | 10 | ``` bash 11 | # 项目依赖安装 12 | npm install 13 | 14 | # 项目运行及端口号 localhost:2333 15 | npm run dev 16 | 17 | # 打包生成的项目 18 | npm run build 19 | 20 | # build for production and view the bundle analyzer report 21 | npm run build --report 22 | 23 | # unit测试 24 | npm run unit 25 | 26 | # e2e测试 27 | npm run e2e 28 | 29 | # 运行所有测试 30 | npm test 31 | ``` 32 | -------------------------------------------------------------------------------- /pc/build/build.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | require('./check-versions')() 3 | 4 | process.env.NODE_ENV = 'production' 5 | 6 | const ora = require('ora') 7 | const rm = require('rimraf') 8 | const path = require('path') 9 | const chalk = require('chalk') 10 | const webpack = require('webpack') 11 | const config = require('../config') 12 | const webpackConfig = require('./webpack.prod.conf') 13 | 14 | const spinner = ora('building for production...') 15 | spinner.start() 16 | 17 | rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => { 18 | if (err) throw err 19 | webpack(webpackConfig, (err, stats) => { 20 | spinner.stop() 21 | if (err) throw err 22 | process.stdout.write(stats.toString({ 23 | colors: true, 24 | modules: false, 25 | children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build. 26 | chunks: false, 27 | chunkModules: false 28 | }) + '\n\n') 29 | 30 | if (stats.hasErrors()) { 31 | console.log(chalk.red(' Build failed with errors.\n')) 32 | process.exit(1) 33 | } 34 | 35 | console.log(chalk.cyan(' Build complete.\n')) 36 | console.log(chalk.yellow( 37 | ' Tip: built files are meant to be served over an HTTP server.\n' + 38 | ' Opening index.html over file:// won\'t work.\n' 39 | )) 40 | }) 41 | }) 42 | -------------------------------------------------------------------------------- /pc/build/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/build/logo.png -------------------------------------------------------------------------------- /pc/build/vue-loader.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const utils = require('./utils') 3 | const config = require('../config') 4 | const isProduction = process.env.NODE_ENV === 'production' 5 | const sourceMapEnabled = isProduction 6 | ? config.build.productionSourceMap 7 | : config.dev.cssSourceMap 8 | 9 | module.exports = { 10 | loaders: utils.cssLoaders({ 11 | sourceMap: sourceMapEnabled, 12 | extract: isProduction 13 | }), 14 | cssSourceMap: sourceMapEnabled, 15 | cacheBusting: config.dev.cacheBusting, 16 | transformToRequire: { 17 | video: ['src', 'poster'], 18 | source: 'src', 19 | img: 'src', 20 | image: 'xlink:href' 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /pc/build/webpack.test.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | // This is the webpack config used for unit tests. 3 | 4 | const utils = require('./utils') 5 | const webpack = require('webpack') 6 | const merge = require('webpack-merge') 7 | const baseWebpackConfig = require('./webpack.base.conf') 8 | 9 | const webpackConfig = merge(baseWebpackConfig, { 10 | // use inline sourcemap for karma-sourcemap-loader 11 | module: { 12 | rules: utils.styleLoaders() 13 | }, 14 | devtool: '#inline-source-map', 15 | resolveLoader: { 16 | alias: { 17 | // necessary to to make lang="scss" work in test when using vue-loader's ?inject option 18 | // see discussion at https://github.com/vuejs/vue-loader/issues/724 19 | 'scss-loader': 'sass-loader' 20 | } 21 | }, 22 | plugins: [ 23 | new webpack.DefinePlugin({ 24 | 'process.env': require('../config/test.env') 25 | }) 26 | ] 27 | }) 28 | 29 | // no need for app entry during tests 30 | delete webpackConfig.entry 31 | 32 | module.exports = webpackConfig 33 | -------------------------------------------------------------------------------- /pc/config/dev.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const prodEnv = require('./prod.env') 4 | 5 | module.exports = merge(prodEnv, { 6 | NODE_ENV: '"development"', 7 | BASE_API: '"http://yapi.demo.qunar.com/mock/16780"', 8 | }) 9 | -------------------------------------------------------------------------------- /pc/config/prod.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | module.exports = { 3 | NODE_ENV: '"production"', 4 | API_HOST:'' 5 | } 6 | -------------------------------------------------------------------------------- /pc/config/test.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const devEnv = require('./dev.env') 4 | 5 | module.exports = merge(devEnv, { 6 | NODE_ENV: '"testing"' 7 | }) 8 | -------------------------------------------------------------------------------- /pc/dist/index.html: -------------------------------------------------------------------------------- 1 | 医院食堂移动订餐平台
-------------------------------------------------------------------------------- /pc/dist/static/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/1.png -------------------------------------------------------------------------------- /pc/dist/static/app.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/app.jpg -------------------------------------------------------------------------------- /pc/dist/static/bitbug_favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/bitbug_favicon.ico -------------------------------------------------------------------------------- /pc/dist/static/defaultApp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/defaultApp.jpg -------------------------------------------------------------------------------- /pc/dist/static/disable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/disable.png -------------------------------------------------------------------------------- /pc/dist/static/enable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/enable.png -------------------------------------------------------------------------------- /pc/dist/static/fonts/ionicons.99ac330.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/fonts/ionicons.99ac330.woff -------------------------------------------------------------------------------- /pc/dist/static/fonts/ionicons.d535a25.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/dist/static/fonts/ionicons.d535a25.ttf -------------------------------------------------------------------------------- /pc/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js: -------------------------------------------------------------------------------- 1 | !function(r){var n=window.webpackJsonp;window.webpackJsonp=function(e,u,c){for(var f,i,p,a=0,l=[];a 2 | 3 | 4 | 5 | 6 | 7 | 医院食堂移动订餐平台 8 | 9 | 10 | 11 | 34 | 35 | 36 |
37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /pc/src/api/common.js: -------------------------------------------------------------------------------- 1 | import http from '@/utils/http' 2 | 3 | /** 4 | * 获取医院信息 5 | * 6 | * @export 7 | * @param {any} params 8 | * @returns 9 | */ 10 | export function getHospitalInfo (params) { 11 | return http.post( 12 | '/get_info', 13 | params 14 | ) 15 | } -------------------------------------------------------------------------------- /pc/src/assets/layout.css: -------------------------------------------------------------------------------- 1 | .align-center { 2 | text-align: center; 3 | } -------------------------------------------------------------------------------- /pc/src/assets/logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/src/assets/logo.jpg -------------------------------------------------------------------------------- /pc/src/assets/main.css: -------------------------------------------------------------------------------- 1 | *::-webkit-scrollbar { 2 | /*滚动条整体样式*/ 3 | width: 5px; 4 | /*高宽分别对应横竖滚动条的尺寸*/ 5 | height: 5px; 6 | } 7 | 8 | *::-webkit-scrollbar-thumb { 9 | /*滚动条里面小方块*/ 10 | border-radius: 5px; 11 | -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); 12 | background: #495060; 13 | } 14 | 15 | *::-webkit-scrollbar-track { 16 | /*滚动条里面轨道*/ 17 | -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); 18 | border-radius: 10px; 19 | background: #EDEDED; 20 | } -------------------------------------------------------------------------------- /pc/src/components/canvasBg/canvas1.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import CLCanvasBg1 from './canvas1.vue'; 3 | 4 | Vue.component('cl-canvasBg1', CLCanvasBg1); 5 | 6 | export default CLCanvasBg1; 7 | -------------------------------------------------------------------------------- /pc/src/components/card/details.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import ClAppDetail from './details.vue'; 3 | 4 | Vue.component('cl-details', ClAppDetail); 5 | 6 | export default ClAppDetail; 7 | -------------------------------------------------------------------------------- /pc/src/components/card/overview.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import ClAppOverview from './overview.vue'; 3 | 4 | Vue.component('cl-overview', ClAppOverview); 5 | 6 | export default ClAppOverview; 7 | -------------------------------------------------------------------------------- /pc/src/components/charts/detail-line.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import detailLine from "./detail-line.vue"; 3 | 4 | Vue.component("cl-detail-chart", detailLine); 5 | 6 | export default detailLine; 7 | -------------------------------------------------------------------------------- /pc/src/components/charts/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import demo1 from './index.vue'; 3 | 4 | Vue.component('cl-chart', demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/bar/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-barchart1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/bar/demo2.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo2 from "./demo2.vue"; 3 | 4 | Vue.component("cl-charts-barchart2", demo2); 5 | 6 | export default demo2; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/calendar/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-date1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/calendar/demo2.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo2 from "./demo2.vue"; 3 | 4 | Vue.component("cl-charts-date2", demo2); 5 | 6 | export default demo2; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/funnel/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-funnel1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/histogram/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import CLEhartsHistogram from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-histogram", CLEhartsHistogram); 5 | 6 | export default CLEhartsHistogram; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/histogram/demo2.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo2 from "./demo2.vue"; 3 | 4 | Vue.component("cl-charts-histogram2", demo2); 5 | 6 | export default demo2; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/line/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-line1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/mix/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-mix1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/point/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-point1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/radar/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-radar1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/radar/demo2.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo2 from "./demo2.vue"; 3 | 4 | Vue.component("cl-charts-radar2", demo2); 5 | 6 | export default demo2; 7 | -------------------------------------------------------------------------------- /pc/src/components/echarts/tree/demo1.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import demo1 from "./demo1.vue"; 3 | 4 | Vue.component("cl-charts-tree1", demo1); 5 | 6 | export default demo1; 7 | -------------------------------------------------------------------------------- /pc/src/components/header/header.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Header from './header.vue'; 3 | 4 | Vue.component('cl-header', Header); 5 | 6 | export default Header; 7 | -------------------------------------------------------------------------------- /pc/src/components/header/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/src/components/header/logo.png -------------------------------------------------------------------------------- /pc/src/components/info/info.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import CLInfo from './info.vue'; 3 | 4 | Vue.component('cl-info', CLInfo); 5 | 6 | export default CLInfo; 7 | -------------------------------------------------------------------------------- /pc/src/components/push/add.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import CLAdd from './add.vue'; 3 | 4 | Vue.component('cl-add', CLAdd); 5 | 6 | export default CLAdd; 7 | -------------------------------------------------------------------------------- /pc/src/components/statistics/num.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import appNum from './num.vue'; 3 | 4 | Vue.component('cl-count', appNum); 5 | 6 | export default appNum; 7 | -------------------------------------------------------------------------------- /pc/src/main.js: -------------------------------------------------------------------------------- 1 | // The Vue build version to load with the `import` command 2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias. 3 | import Vue from 'vue' 4 | import App from './App' 5 | import router from './router' 6 | import axios from 'axios' 7 | import Qs from 'qs' 8 | import iView from 'iview' 9 | import 'iview/dist/styles/iview.css' 10 | import './assets/main.css' 11 | import './assets/layout.css' 12 | import storage from './utils/storage.js' 13 | Vue.prototype.$storage = storage; 14 | import request from './utils/request.js' 15 | Vue.prototype.$request = request; 16 | Vue.config.productionTip = false 17 | Vue.prototype.$http = axios 18 | Vue.prototype.$Qs = Qs; 19 | Vue.use(iView) 20 | import Vuex from 'vuex' 21 | 22 | import 'es6-promise/auto' 23 | 24 | import ZkTable from 'vue-table-with-tree-grid' 25 | 26 | Vue.use(ZkTable) 27 | 28 | import store from './store/store.js' 29 | import './utils/login.js' 30 | import './utils/axios.js' 31 | import './utils/utils.js' 32 | 33 | Vue.use(Vuex) 34 | 35 | /* eslint-disable no-new */ 36 | new Vue({ 37 | el: '#app', 38 | router, 39 | store, 40 | storage, 41 | components: { App }, 42 | template: '' 43 | }) -------------------------------------------------------------------------------- /pc/src/pages/setting/statistics.vue: -------------------------------------------------------------------------------- 1 | 22 | 37 | -------------------------------------------------------------------------------- /pc/src/pages/statistics/components/detail-line.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import detailLine from "./detail-line.vue"; 3 | 4 | Vue.component("cl-detail-chart", detailLine); 5 | 6 | export default detailLine; 7 | -------------------------------------------------------------------------------- /pc/src/pages/statistics/index.vue: -------------------------------------------------------------------------------- 1 | 13 | 25 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /pc/src/pages/text.vue: -------------------------------------------------------------------------------- 1 | 2 | 7 | 16 | -------------------------------------------------------------------------------- /pc/src/pages/welcome/welcome.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 31 | 43 | 44 | -------------------------------------------------------------------------------- /pc/src/utils/Validate/pattern.js: -------------------------------------------------------------------------------- 1 | /** 2 | * EXTEND PATTERN 3 | */ 4 | const stringNumber = /^[0-9]*$/ 5 | const normalNumber = /^\d+(\.\d+)?$/ 6 | const account = /^[a-zA-Z0-9_-]{4,}$/ 7 | const cellPhone = /^1[34578]\d{9}$/ 8 | const complexPassword = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/ 9 | const qq = /^[a-zA-Z0-9_-]{4,16}$/ 10 | const dictTypeCode = /^[0-9a-zA-Z_]{1,10}$/ 11 | const dictOther = /^[\s\S]{1,30}$/ 12 | const dictNum = /^[0-9]{1,3}$/ 13 | const paramsOther = /^[\s\S]{1,50}$/ 14 | const vehicleNumber = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/ 15 | export default { 16 | stringNumber, 17 | normalNumber, 18 | account, 19 | cellPhone, 20 | complexPassword, 21 | qq, 22 | dictTypeCode, 23 | dictOther, 24 | dictNum, 25 | paramsOther, 26 | vehicleNumber 27 | } 28 | -------------------------------------------------------------------------------- /pc/src/utils/login.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import router from '../router/index.js' 3 | import storage from './storage.js' 4 | import Vuex from 'vuex' 5 | import store from '../store/store.js' 6 | import iView from 'iview' 7 | import 'iview/dist/styles/iview.css' 8 | 9 | //登录token验证 10 | // router.beforeEach((to, from, next) => { 11 | // let token = storage.getStorage('user') == null 12 | // ? '' 13 | // : storage.getStorage('user').token; 14 | // if(to.meta.requireAuth){ 15 | // if (!Boolean(token)) { 16 | // if (to.path == '/login' || to.path == '/'){ 17 | // next() 18 | // }else{ 19 | // next({path: '/'}) 20 | // } 21 | // }else{ 22 | // next() 23 | // } 24 | // }else{ 25 | // next() 26 | // } 27 | // }) -------------------------------------------------------------------------------- /pc/src/utils/request.js: -------------------------------------------------------------------------------- 1 | /** 2 | * BASE PER FIX URL 3 | */ 4 | const baseUrl = { 5 | localhost: 'http://localhost:8080', 6 | dev: 'http://yapi.demo.qunar.com/mock/16780', 7 | prod: 'https://www.calamus.xyz/api' 8 | } 9 | // 10 | // export const BASE_PER_FIX_URL = process.env.NODE_ENV === 'production' ? baseUrl.prod : baseUrl.dev 11 | export const BASE_PER_FIX_URL = baseUrl.dev 12 | -------------------------------------------------------------------------------- /pc/src/utils/storage.js: -------------------------------------------------------------------------------- 1 | /* 2 | storage 主要放项目中的storage相关操作:存取等 3 | */ 4 | var storage = { 5 | /** 6 | 对本地数据进行操作的相关方法,如localStorage,sessionStorage的封装 7 | */ 8 | setStorage: function (key, value, duration) { 9 | var data = { 10 | value: value, 11 | expiryTime: !duration || isNaN(duration) 12 | ? 0 13 | : parseInt(duration) 14 | }; 15 | localStorage[key] = JSON.stringify(data); 16 | }, 17 | getStorage: function (key) { 18 | var data = localStorage[key]; 19 | if (!data || data === "null") { 20 | return null; 21 | } 22 | var now = this.getCurrentTimeStamp(); 23 | var obj; 24 | try { 25 | obj = JSON.parse(data); 26 | } catch (e) { 27 | return null; 28 | } 29 | //过期时间设置 30 | if (obj.expiryTime === 0 || obj.expiryTime > now) { 31 | return obj.value; 32 | } 33 | return null; 34 | }, 35 | removeStorage: function (key) { 36 | localStorage.removeItem(key); 37 | }, 38 | getSession: function (key) { 39 | var data = sessionStorage[key]; 40 | if (!data || data === "null") { 41 | return null; 42 | } 43 | return JSON 44 | .parse(data) 45 | .value; 46 | 47 | }, 48 | setSession: function (key, value) { 49 | var data = { 50 | value: value 51 | } 52 | sessionStorage[key] = JSON.stringify(data); 53 | }, 54 | getCurrentTimeStamp: function () { 55 | return Date.parse(new Date()); 56 | } 57 | }; 58 | export default storage; 59 | -------------------------------------------------------------------------------- /pc/src/utils/utils.js: -------------------------------------------------------------------------------- 1 | Date.prototype.Format = function (fmt) { //author: meizz 2 | var o = { 3 | "M+": this.getMonth() + 1, //月份 4 | "d+": this.getDate(), //日 5 | "h+": this.getHours(), //小时 6 | "m+": this.getMinutes(), //分 7 | "s+": this.getSeconds(), //秒 8 | "q+": Math.floor((this.getMonth() + 3) / 3), //季度 9 | "S": this.getMilliseconds() //毫秒 10 | }; 11 | if (/(y+)/.test(fmt)) 12 | fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); 13 | for (var k in o) 14 | if (new RegExp("(" + k + ")").test(fmt)) 15 | fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) 16 | ? (o[k]) 17 | : (("00" + o[k]).substr(("" + o[k]).length))); 18 | return fmt; 19 | } 20 | -------------------------------------------------------------------------------- /pc/static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/.gitkeep -------------------------------------------------------------------------------- /pc/static/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/1.png -------------------------------------------------------------------------------- /pc/static/app.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/app.jpg -------------------------------------------------------------------------------- /pc/static/bitbug_favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/bitbug_favicon.ico -------------------------------------------------------------------------------- /pc/static/defaultApp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/defaultApp.jpg -------------------------------------------------------------------------------- /pc/static/disable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/disable.png -------------------------------------------------------------------------------- /pc/static/enable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/enable.png -------------------------------------------------------------------------------- /pc/static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/logo.png -------------------------------------------------------------------------------- /pc/static/tvbg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/tvbg.jpg -------------------------------------------------------------------------------- /pc/static/xlm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/xlm.png -------------------------------------------------------------------------------- /pc/static/电视机_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/电视机_1.png -------------------------------------------------------------------------------- /pc/static/鹿.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/pc/static/鹿.png -------------------------------------------------------------------------------- /pc/test/e2e/custom-assertions/elementCount.js: -------------------------------------------------------------------------------- 1 | // A custom Nightwatch assertion. 2 | // The assertion name is the filename. 3 | // Example usage: 4 | // 5 | // browser.assert.elementCount(selector, count) 6 | // 7 | // For more information on custom assertions see: 8 | // http://nightwatchjs.org/guide#writing-custom-assertions 9 | 10 | exports.assertion = function (selector, count) { 11 | this.message = 'Testing if element <' + selector + '> has count: ' + count 12 | this.expected = count 13 | this.pass = function (val) { 14 | return val === this.expected 15 | } 16 | this.value = function (res) { 17 | return res.value 18 | } 19 | this.command = function (cb) { 20 | var self = this 21 | return this.api.execute(function (selector) { 22 | return document.querySelectorAll(selector).length 23 | }, [selector], function (res) { 24 | cb.call(self, res) 25 | }) 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /pc/test/e2e/nightwatch.conf.js: -------------------------------------------------------------------------------- 1 | require('babel-register') 2 | var config = require('../../config') 3 | 4 | // http://nightwatchjs.org/gettingstarted#settings-file 5 | module.exports = { 6 | src_folders: ['test/e2e/specs'], 7 | output_folder: 'test/e2e/reports', 8 | custom_assertions_path: ['test/e2e/custom-assertions'], 9 | 10 | selenium: { 11 | start_process: true, 12 | server_path: require('selenium-server').path, 13 | host: '127.0.0.1', 14 | port: 4444, 15 | cli_args: { 16 | 'webdriver.chrome.driver': require('chromedriver').path 17 | } 18 | }, 19 | 20 | test_settings: { 21 | default: { 22 | selenium_port: 4444, 23 | selenium_host: 'localhost', 24 | silent: true, 25 | globals: { 26 | devServerURL: 'http://localhost:' + (process.env.PORT || config.dev.port) 27 | } 28 | }, 29 | 30 | chrome: { 31 | desiredCapabilities: { 32 | browserName: 'chrome', 33 | javascriptEnabled: true, 34 | acceptSslCerts: true 35 | } 36 | }, 37 | 38 | firefox: { 39 | desiredCapabilities: { 40 | browserName: 'firefox', 41 | javascriptEnabled: true, 42 | acceptSslCerts: true 43 | } 44 | } 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /pc/test/e2e/specs/test.js: -------------------------------------------------------------------------------- 1 | // For authoring Nightwatch tests, see 2 | // http://nightwatchjs.org/guide#usage 3 | 4 | module.exports = { 5 | 'default e2e tests': function (browser) { 6 | // automatically uses dev Server port from /config.index.js 7 | // default: http://localhost:8080 8 | // see nightwatch.conf.js 9 | const devServer = browser.globals.devServerURL 10 | 11 | browser 12 | .url(devServer) 13 | .waitForElementVisible('#app', 5000) 14 | .assert.elementPresent('.hello') 15 | .assert.containsText('h1', 'Welcome to Your Vue.js App') 16 | .assert.elementCount('img', 1) 17 | .end() 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /pc/test/unit/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "mocha": true 4 | }, 5 | "globals": { 6 | "expect": true, 7 | "sinon": true 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /pc/test/unit/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | Vue.config.productionTip = false 4 | 5 | // require all test files (files that ends with .spec.js) 6 | const testsContext = require.context('./specs', true, /\.spec$/) 7 | testsContext.keys().forEach(testsContext) 8 | 9 | // require all src files except main.js for coverage. 10 | // you can also change this to match only the subset of files that 11 | // you want coverage for. 12 | const srcContext = require.context('../../src', true, /^\.\/(?!main(\.js)?$)/) 13 | srcContext.keys().forEach(srcContext) 14 | -------------------------------------------------------------------------------- /pc/test/unit/karma.conf.js: -------------------------------------------------------------------------------- 1 | // This is a karma config file. For more details see 2 | // http://karma-runner.github.io/0.13/config/configuration-file.html 3 | // we are also using it with karma-webpack 4 | // https://github.com/webpack/karma-webpack 5 | 6 | var webpackConfig = require('../../build/webpack.test.conf') 7 | 8 | module.exports = function karmaConfig (config) { 9 | config.set({ 10 | // to run in additional browsers: 11 | // 1. install corresponding karma launcher 12 | // http://karma-runner.github.io/0.13/config/browsers.html 13 | // 2. add it to the `browsers` array below. 14 | browsers: ['PhantomJS'], 15 | frameworks: ['mocha', 'sinon-chai', 'phantomjs-shim'], 16 | reporters: ['spec', 'coverage'], 17 | files: ['./index.js'], 18 | preprocessors: { 19 | './index.js': ['webpack', 'sourcemap'] 20 | }, 21 | webpack: webpackConfig, 22 | webpackMiddleware: { 23 | noInfo: true 24 | }, 25 | coverageReporter: { 26 | dir: './coverage', 27 | reporters: [ 28 | { type: 'lcov', subdir: '.' }, 29 | { type: 'text-summary' } 30 | ] 31 | } 32 | }) 33 | } 34 | -------------------------------------------------------------------------------- /pc/test/unit/specs/HelloWorld.spec.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import HelloWorld from '@/components/HelloWorld' 3 | 4 | describe('HelloWorld.vue', () => { 5 | it('should render correct contents', () => { 6 | const Constructor = Vue.extend(HelloWorld) 7 | const vm = new Constructor().$mount() 8 | expect(vm.$el.querySelector('.hello h1').textContent) 9 | .to.equal('Welcome to Your Vue.js App') 10 | }) 11 | }) 12 | -------------------------------------------------------------------------------- /snapshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/snapshot.png -------------------------------------------------------------------------------- /wechat/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /wechat/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | !dist 3 | .DS_Store 4 | node_modules 5 | package-lock.json 6 | -------------------------------------------------------------------------------- /wechat/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": true 3 | } 4 | -------------------------------------------------------------------------------- /wechat/.wepyignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | .DS_Store 4 | *.wpy___jb_tmp___ 5 | -------------------------------------------------------------------------------- /wechat/dist/.gitignore: -------------------------------------------------------------------------------- 1 | # Windows 2 | [Dd]esktop.ini 3 | Thumbs.db 4 | $RECYCLE.BIN/ 5 | 6 | # macOS 7 | .DS_Store 8 | .fseventsd 9 | .Spotlight-V100 10 | .TemporaryItems 11 | .Trashes 12 | 13 | # Node.js 14 | node_modules/ 15 | -------------------------------------------------------------------------------- /wechat/dist/_wepylogs.js: -------------------------------------------------------------------------------- 1 | console.log('WePY开启错误监控'); 2 | console.error("CLI报错:Missing files: ../components/imageList in /Users/calamus/calamus/my-project/wechat-jc/wechat/src/pages/order.wpy"); 3 | console.error("CLI报错:找不到组件:/Users/calamus/calamus/my-project/wechat-jc/wechat/src/components/imageList\n请尝试使用 npm install /Users/calamus/calamus/my-project/wechat-jc/wechat/src/components/imageList 安装"); 4 | -------------------------------------------------------------------------------- /wechat/dist/app.json: -------------------------------------------------------------------------------- 1 | {"pages":["pages/order","pages/submit","pages/address","pages/status"],"window":{"backgroundTextStyle":"light","navigationBarBackgroundColor":"#fb7299","navigationBarTitleText":"订餐小程序","navigationBarTextStyle":"#fff"}} -------------------------------------------------------------------------------- /wechat/dist/components/ads.wxss: -------------------------------------------------------------------------------- 1 | .ads-body { 2 | border-left: 3px solid #FF5577; 3 | padding-left: 5px; 4 | } 5 | .scroll-view_H { 6 | display: flex; 7 | white-space: nowrap; 8 | /* color:#FF5577 */ 9 | } 10 | .scroll-view-item_H { 11 | font-size: 14px; 12 | display: inline-block; 13 | } 14 | -------------------------------------------------------------------------------- /wechat/dist/components/animeList.wxss: -------------------------------------------------------------------------------- 1 | @import "./stars.wxss"; 2 | .weui-badge { 3 | background-color: #FF5577; 4 | } 5 | .animelist { 6 | margin-top: 10px; 7 | background-color: #fff; 8 | } 9 | .animelist-name { 10 | font-size: 32rpx; 11 | padding-left: 10px; 12 | border-left: 3px solid #FF5577; 13 | } 14 | .animelist-item { 15 | display: flex; 16 | align-items: center; 17 | } 18 | .animeList-item-main { 19 | display: flex; 20 | align-items: center; 21 | justify-content: space-between; 22 | } 23 | .animeList-item-bottom { 24 | display: flex; 25 | align-items: center; 26 | justify-content: space-between; 27 | } 28 | .animeList-item-right { 29 | display: flex; 30 | align-items: center; 31 | } 32 | .animelist-item-image image { 33 | padding: 8px; 34 | height: 100px; 35 | width: 100px; 36 | } 37 | .animeList-item-time { 38 | font-size: 70%; 39 | color: #9B9B9B; 40 | } 41 | .animeList-item-description { 42 | color: #999; 43 | font-size: 90%; 44 | display: -webkit-box; 45 | -webkit-line-clamp: 2; 46 | -webkit-box-orient: vertical; 47 | overflow: hidden; 48 | word-break: break-all; 49 | text-overflow: ellipsis; 50 | } 51 | .anime-item-tags { 52 | background-color: #F1F1F1; 53 | color: #9B9B9B; 54 | margin-right: 0.2em; 55 | padding: 0 0.6em; 56 | border-radius: 1em; 57 | display: inline-block; 58 | font-size: 60%; 59 | } 60 | .animeList-item-flag { 61 | font-size: 80%; 62 | } 63 | -------------------------------------------------------------------------------- /wechat/dist/components/bookList.wxss: -------------------------------------------------------------------------------- 1 | .animelist { 2 | margin-top: 10px; 3 | background-color: #fff; 4 | } 5 | .animelist-name { 6 | padding-left: 10px; 7 | border-left: 3px solid green; 8 | } 9 | -------------------------------------------------------------------------------- /wechat/dist/components/counter.wxss: -------------------------------------------------------------------------------- 1 | .counter { 2 | text-align: left; 3 | font-size: 12px; 4 | } 5 | .count { 6 | font-size: 18px; 7 | font-weight: bold; 8 | } 9 | .count.red { 10 | color: red; 11 | } 12 | .count.green { 13 | color: green; 14 | } 15 | -------------------------------------------------------------------------------- /wechat/dist/components/group.wxss: -------------------------------------------------------------------------------- 1 | @import "./groupitem.wxss"; 2 | -------------------------------------------------------------------------------- /wechat/dist/components/groupitem.wxss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/components/groupitem.wxss -------------------------------------------------------------------------------- /wechat/dist/components/icon.wxss: -------------------------------------------------------------------------------- 1 | .ads-body { 2 | border-left: 3px solid #FF5577; 3 | padding-left: 5px; 4 | } 5 | .scroll-view_H { 6 | display: flex; 7 | white-space: nowrap; 8 | /* color:#FF5577 */ 9 | } 10 | .scroll-view-item_H { 11 | font-size: 14px; 12 | display: inline-block; 13 | } 14 | -------------------------------------------------------------------------------- /wechat/dist/components/imageList.wxss: -------------------------------------------------------------------------------- 1 | @import "./stars.wxss"; 2 | .imageList { 3 | background-color: #fff; 4 | } 5 | .animelist { 6 | display: flex; 7 | flex-wrap: wrap; 8 | justify-content: space-between; 9 | background-color: #fff; 10 | } 11 | .animelist-item { 12 | margin-left: 10px; 13 | display: flex; 14 | align-items: center; 15 | flex-direction: column; 16 | } 17 | .animelist-item-image image { 18 | padding: 8px; 19 | height: 100px; 20 | width: 100px; 21 | } 22 | .animeList-item-name { 23 | color: #626E7A; 24 | font-size: 28rpx; 25 | } 26 | -------------------------------------------------------------------------------- /wechat/dist/components/list.wxss: -------------------------------------------------------------------------------- 1 | .mylist:odd { 2 | color: red; 3 | } 4 | .mylist:even { 5 | color: green; 6 | } 7 | -------------------------------------------------------------------------------- /wechat/dist/components/panel.wxss: -------------------------------------------------------------------------------- 1 | .panel { 2 | width: 100%; 3 | margin-top: 20rpx; 4 | text-align: left; 5 | font-size: 12px; 6 | padding-top: 20rpx; 7 | padding-left: 50rpx; 8 | padding-bottom: 20rpx; 9 | border: 1px solid #ccc; 10 | } 11 | .panel .title { 12 | padding-bottom: 20rpx; 13 | font-size: 14px; 14 | font-weight: bold; 15 | } 16 | .panel .info { 17 | padding: 15rpx; 18 | } 19 | .panel .testcounter { 20 | margin-top: 15rpx; 21 | position: absolute; 22 | } 23 | .panel .counterview { 24 | margin-left: 120rpx; 25 | } 26 | -------------------------------------------------------------------------------- /wechat/dist/components/pannelTag.wxss: -------------------------------------------------------------------------------- 1 | .pannel { 2 | margin: 20rpx; 3 | text-align: left; 4 | font-size: 12px; 5 | padding-top: 20rpx; 6 | padding-left: 50rpx; 7 | padding-bottom: 20rpx; 8 | border: 1px solid #ccc; 9 | } 10 | -------------------------------------------------------------------------------- /wechat/dist/components/screen.wxss: -------------------------------------------------------------------------------- 1 | .screen-placeholder { 2 | opacity: 0; 3 | pointer-events: none; 4 | } 5 | .screen-wrapper { 6 | position: fixed; 7 | left: 0; 8 | right: 0; 9 | } 10 | -------------------------------------------------------------------------------- /wechat/dist/components/searchbar.wxss: -------------------------------------------------------------------------------- 1 | .weui-search-bar { 2 | border: none; 3 | } 4 | .weui-search-bar__cancel-btn { 5 | color: #FF5577; 6 | font-size: 28rpx; 7 | } 8 | -------------------------------------------------------------------------------- /wechat/dist/components/side_tab.wxss: -------------------------------------------------------------------------------- 1 | .inline { 2 | text-overflow: ellipsis; 3 | word-break: keep-all; 4 | white-space: nowrap; 5 | overflow: hidden; 6 | } 7 | .side-tab { 8 | border-right: 5px; 9 | width: 180rpx; 10 | min-width: 180rpx; 11 | height: 100%; 12 | z-index: 2; 13 | } 14 | .side-tab .tab-item { 15 | position: relative; 16 | height: 110rpx; 17 | display: flex; 18 | flex-direction: column; 19 | justify-content: center; 20 | background-color: #F5F7F9; 21 | border-top: 1px solid #EDEDED; 22 | padding-left: 20rpx; 23 | } 24 | .side-tab .tab-item text { 25 | color: #626E7A; 26 | font-size: 28rpx; 27 | } 28 | .side-tab .tab-item .tab-num { 29 | position: absolute; 30 | right: 5px; 31 | top: 5px; 32 | } 33 | .side-tab .tab-item-seleted { 34 | background-color: #fb7299; 35 | } 36 | .side-tab .tab-item-seleted text { 37 | color: #fff; 38 | font-weight: bold; 39 | } 40 | -------------------------------------------------------------------------------- /wechat/dist/components/stars.wxss: -------------------------------------------------------------------------------- 1 | .staricon._1bf4c96 { 2 | width: 10px; 3 | height: 10px; 4 | } 5 | text._1bf4c96 { 6 | font-size: 14px; 7 | } 8 | -------------------------------------------------------------------------------- /wechat/dist/components/swiper.wxss: -------------------------------------------------------------------------------- 1 | swiper, 2 | .swiper { 3 | width: 100%; 4 | } 5 | .swiper-image { 6 | position: absolute; 7 | top: 50%; 8 | left: 50%; 9 | width: 100%; 10 | transform: translate(-50%, -50%); 11 | } 12 | -------------------------------------------------------------------------------- /wechat/dist/components/time.wxss: -------------------------------------------------------------------------------- 1 | .sendTime._ce986dc { 2 | position: fixed ; 3 | bottom: 0; 4 | height: 200px; 5 | width: 100%; 6 | background-color: #fff; 7 | } 8 | .iconfont._ce986dc { 9 | float: right; 10 | margin-right: 10px; 11 | } 12 | .time-item._ce986dc { 13 | margin: 10px; 14 | } 15 | .checked._ce986dc { 16 | color: green; 17 | } 18 | .submit-btn._ce986dc { 19 | display: block; 20 | height: 45px; 21 | border-top: 1px solid #ccc; 22 | line-height: 45px; 23 | width: 100%; 24 | text-align: center; 25 | } 26 | -------------------------------------------------------------------------------- /wechat/dist/components/wepy-list.wxss: -------------------------------------------------------------------------------- 1 | .mylist:odd { 2 | color: red; 3 | } 4 | .mylist:even { 5 | color: green; 6 | } 7 | -------------------------------------------------------------------------------- /wechat/dist/images/download.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/download.zip -------------------------------------------------------------------------------- /wechat/dist/images/font_756788_45k0lfetmni/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/font_756788_45k0lfetmni/iconfont.eot -------------------------------------------------------------------------------- /wechat/dist/images/font_756788_45k0lfetmni/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/font_756788_45k0lfetmni/iconfont.ttf -------------------------------------------------------------------------------- /wechat/dist/images/font_756788_45k0lfetmni/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/font_756788_45k0lfetmni/iconfont.woff -------------------------------------------------------------------------------- /wechat/dist/images/icon/add.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/add.jpg -------------------------------------------------------------------------------- /wechat/dist/images/icon/add.jpg.crdownload: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/add.jpg.crdownload -------------------------------------------------------------------------------- /wechat/dist/images/icon/addAfter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/addAfter.jpg -------------------------------------------------------------------------------- /wechat/dist/images/icon/addBefore.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/addBefore.jpg -------------------------------------------------------------------------------- /wechat/dist/images/icon/download.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/download.zip -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-avatar@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-avatar@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-cancel@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-cancel@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-eye-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-eye-active@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-eye@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-eye@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-location@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-location@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-star-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-star-active@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/icon-star@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/icon-star@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/icon/menhera.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/menhera.jpg -------------------------------------------------------------------------------- /wechat/dist/images/icon/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/icon/search.png -------------------------------------------------------------------------------- /wechat/dist/images/swiper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/swiper.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/active.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/active.jpg -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/active.jpg.crdownload: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/active.jpg.crdownload -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/icon-mark-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/icon-mark-active@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/icon-mark@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/icon-mark@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/icon-shelf-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/icon-shelf-active@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/icon-shelf@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/icon-shelf@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/icon-smile-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/icon-smile-active@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/icon-smile@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/icon-smile@2x.png -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/menhera.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/menhera.jpg -------------------------------------------------------------------------------- /wechat/dist/images/tabbars/menhera.jpg.crdownload: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/tabbars/menhera.jpg.crdownload -------------------------------------------------------------------------------- /wechat/dist/images/transfonter.org-20180831-064726/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/images/transfonter.org-20180831-064726/iconfont.ttf -------------------------------------------------------------------------------- /wechat/dist/img/download.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download.zip -------------------------------------------------------------------------------- /wechat/dist/img/download/1/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/1/iconfont.eot -------------------------------------------------------------------------------- /wechat/dist/img/download/1/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/1/iconfont.ttf -------------------------------------------------------------------------------- /wechat/dist/img/download/1/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/1/iconfont.woff -------------------------------------------------------------------------------- /wechat/dist/img/download/font_756788_0vj6p189ve8/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/font_756788_0vj6p189ve8/iconfont.eot -------------------------------------------------------------------------------- /wechat/dist/img/download/font_756788_0vj6p189ve8/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/font_756788_0vj6p189ve8/iconfont.ttf -------------------------------------------------------------------------------- /wechat/dist/img/download/font_756788_0vj6p189ve8/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/font_756788_0vj6p189ve8/iconfont.woff -------------------------------------------------------------------------------- /wechat/dist/img/download/font_756788_deyll83yi25/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/font_756788_deyll83yi25/iconfont.eot -------------------------------------------------------------------------------- /wechat/dist/img/download/font_756788_deyll83yi25/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/font_756788_deyll83yi25/iconfont.ttf -------------------------------------------------------------------------------- /wechat/dist/img/download/font_756788_deyll83yi25/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/download/font_756788_deyll83yi25/iconfont.woff -------------------------------------------------------------------------------- /wechat/dist/img/transfonter.org-20180720-090137.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/transfonter.org-20180720-090137.zip -------------------------------------------------------------------------------- /wechat/dist/img/transfonter.org-20180720-090137/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/transfonter.org-20180720-090137/iconfont.woff -------------------------------------------------------------------------------- /wechat/dist/img/transfonter.org-20180720-090137/iconfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/transfonter.org-20180720-090137/iconfont.woff2 -------------------------------------------------------------------------------- /wechat/dist/img/transfonter.org-20180720-092448.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/transfonter.org-20180720-092448.zip -------------------------------------------------------------------------------- /wechat/dist/img/transfonter.org-20180720-092448/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/transfonter.org-20180720-092448/iconfont.woff -------------------------------------------------------------------------------- /wechat/dist/img/transfonter.org-20180720-092448/iconfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/dist/img/transfonter.org-20180720-092448/iconfont.woff2 -------------------------------------------------------------------------------- /wechat/dist/index.template.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 转 WEB DEMO 11 | 14 | 15 | 16 |
17 | 18 | 19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /wechat/dist/npm/flux-standard-action/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | exports.isFSA = isFSA; 5 | exports.isError = isError; 6 | 7 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } 8 | 9 | var _lodashIsplainobject = require('./../../lodash.isplainobject/index.js'); 10 | 11 | var _lodashIsplainobject2 = _interopRequireDefault(_lodashIsplainobject); 12 | 13 | var validKeys = ['type', 'payload', 'error', 'meta']; 14 | 15 | function isValidKey(key) { 16 | return validKeys.indexOf(key) > -1; 17 | } 18 | 19 | function isFSA(action) { 20 | return _lodashIsplainobject2['default'](action) && typeof action.type !== 'undefined' && Object.keys(action).every(isValidKey); 21 | } 22 | 23 | function isError(action) { 24 | return action.error === true; 25 | } -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_DataView.js: -------------------------------------------------------------------------------- 1 | var getNative = require('./_getNative.js'), 2 | root = require('./_root.js'); 3 | 4 | /* Built-in method references that are verified to be native. */ 5 | var DataView = getNative(root, 'DataView'); 6 | 7 | module.exports = DataView; 8 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_LazyWrapper.js: -------------------------------------------------------------------------------- 1 | var baseCreate = require('./_baseCreate.js'), 2 | baseLodash = require('./_baseLodash.js'); 3 | 4 | /** Used as references for the maximum length and index of an array. */ 5 | var MAX_ARRAY_LENGTH = 4294967295; 6 | 7 | /** 8 | * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation. 9 | * 10 | * @private 11 | * @constructor 12 | * @param {*} value The value to wrap. 13 | */ 14 | function LazyWrapper(value) { 15 | this.__wrapped__ = value; 16 | this.__actions__ = []; 17 | this.__dir__ = 1; 18 | this.__filtered__ = false; 19 | this.__iteratees__ = []; 20 | this.__takeCount__ = MAX_ARRAY_LENGTH; 21 | this.__views__ = []; 22 | } 23 | 24 | // Ensure `LazyWrapper` is an instance of `baseLodash`. 25 | LazyWrapper.prototype = baseCreate(baseLodash.prototype); 26 | LazyWrapper.prototype.constructor = LazyWrapper; 27 | 28 | module.exports = LazyWrapper; 29 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_LodashWrapper.js: -------------------------------------------------------------------------------- 1 | var baseCreate = require('./_baseCreate.js'), 2 | baseLodash = require('./_baseLodash.js'); 3 | 4 | /** 5 | * The base constructor for creating `lodash` wrapper objects. 6 | * 7 | * @private 8 | * @param {*} value The value to wrap. 9 | * @param {boolean} [chainAll] Enable explicit method chain sequences. 10 | */ 11 | function LodashWrapper(value, chainAll) { 12 | this.__wrapped__ = value; 13 | this.__actions__ = []; 14 | this.__chain__ = !!chainAll; 15 | this.__index__ = 0; 16 | this.__values__ = undefined; 17 | } 18 | 19 | LodashWrapper.prototype = baseCreate(baseLodash.prototype); 20 | LodashWrapper.prototype.constructor = LodashWrapper; 21 | 22 | module.exports = LodashWrapper; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_Map.js: -------------------------------------------------------------------------------- 1 | var getNative = require('./_getNative.js'), 2 | root = require('./_root.js'); 3 | 4 | /* Built-in method references that are verified to be native. */ 5 | var Map = getNative(root, 'Map'); 6 | 7 | module.exports = Map; 8 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_Promise.js: -------------------------------------------------------------------------------- 1 | var getNative = require('./_getNative.js'), 2 | root = require('./_root.js'); 3 | 4 | /* Built-in method references that are verified to be native. */ 5 | var Promise = getNative(root, 'Promise'); 6 | 7 | module.exports = Promise; 8 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_Set.js: -------------------------------------------------------------------------------- 1 | var getNative = require('./_getNative.js'), 2 | root = require('./_root.js'); 3 | 4 | /* Built-in method references that are verified to be native. */ 5 | var Set = getNative(root, 'Set'); 6 | 7 | module.exports = Set; 8 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_Symbol.js: -------------------------------------------------------------------------------- 1 | var root = require('./_root.js'); 2 | 3 | /** Built-in value references. */ 4 | var Symbol = root.Symbol; 5 | 6 | module.exports = Symbol; 7 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_WeakMap.js: -------------------------------------------------------------------------------- 1 | var getNative = require('./_getNative.js'), 2 | root = require('./_root.js'); 3 | 4 | /* Built-in method references that are verified to be native. */ 5 | var WeakMap = getNative(root, 'WeakMap'); 6 | 7 | module.exports = WeakMap; 8 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_apply.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A faster alternative to `Function#apply`, this function invokes `func` 3 | * with the `this` binding of `thisArg` and the arguments of `args`. 4 | * 5 | * @private 6 | * @param {Function} func The function to invoke. 7 | * @param {*} thisArg The `this` binding of `func`. 8 | * @param {Array} args The arguments to invoke `func` with. 9 | * @returns {*} Returns the result of `func`. 10 | */ 11 | function apply(func, thisArg, args) { 12 | switch (args.length) { 13 | case 0: return func.call(thisArg); 14 | case 1: return func.call(thisArg, args[0]); 15 | case 2: return func.call(thisArg, args[0], args[1]); 16 | case 3: return func.call(thisArg, args[0], args[1], args[2]); 17 | } 18 | return func.apply(thisArg, args); 19 | } 20 | 21 | module.exports = apply; 22 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_arrayEach.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A specialized version of `_.forEach` for arrays without support for 3 | * iteratee shorthands. 4 | * 5 | * @private 6 | * @param {Array} [array] The array to iterate over. 7 | * @param {Function} iteratee The function invoked per iteration. 8 | * @returns {Array} Returns `array`. 9 | */ 10 | function arrayEach(array, iteratee) { 11 | var index = -1, 12 | length = array == null ? 0 : array.length; 13 | 14 | while (++index < length) { 15 | if (iteratee(array[index], index, array) === false) { 16 | break; 17 | } 18 | } 19 | return array; 20 | } 21 | 22 | module.exports = arrayEach; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_arrayIncludes.js: -------------------------------------------------------------------------------- 1 | var baseIndexOf = require('./_baseIndexOf.js'); 2 | 3 | /** 4 | * A specialized version of `_.includes` for arrays without support for 5 | * specifying an index to search from. 6 | * 7 | * @private 8 | * @param {Array} [array] The array to inspect. 9 | * @param {*} target The value to search for. 10 | * @returns {boolean} Returns `true` if `target` is found, else `false`. 11 | */ 12 | function arrayIncludes(array, value) { 13 | var length = array == null ? 0 : array.length; 14 | return !!length && baseIndexOf(array, value, 0) > -1; 15 | } 16 | 17 | module.exports = arrayIncludes; 18 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_arrayMap.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A specialized version of `_.map` for arrays without support for iteratee 3 | * shorthands. 4 | * 5 | * @private 6 | * @param {Array} [array] The array to iterate over. 7 | * @param {Function} iteratee The function invoked per iteration. 8 | * @returns {Array} Returns the new mapped array. 9 | */ 10 | function arrayMap(array, iteratee) { 11 | var index = -1, 12 | length = array == null ? 0 : array.length, 13 | result = Array(length); 14 | 15 | while (++index < length) { 16 | result[index] = iteratee(array[index], index, array); 17 | } 18 | return result; 19 | } 20 | 21 | module.exports = arrayMap; 22 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_arrayReduce.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A specialized version of `_.reduce` for arrays without support for 3 | * iteratee shorthands. 4 | * 5 | * @private 6 | * @param {Array} [array] The array to iterate over. 7 | * @param {Function} iteratee The function invoked per iteration. 8 | * @param {*} [accumulator] The initial value. 9 | * @param {boolean} [initAccum] Specify using the first element of `array` as 10 | * the initial value. 11 | * @returns {*} Returns the accumulated value. 12 | */ 13 | function arrayReduce(array, iteratee, accumulator, initAccum) { 14 | var index = -1, 15 | length = array == null ? 0 : array.length; 16 | 17 | if (initAccum && length) { 18 | accumulator = array[++index]; 19 | } 20 | while (++index < length) { 21 | accumulator = iteratee(accumulator, array[index], index, array); 22 | } 23 | return accumulator; 24 | } 25 | 26 | module.exports = arrayReduce; 27 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_asciiToArray.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Converts an ASCII `string` to an array. 3 | * 4 | * @private 5 | * @param {string} string The string to convert. 6 | * @returns {Array} Returns the converted array. 7 | */ 8 | function asciiToArray(string) { 9 | return string.split(''); 10 | } 11 | 12 | module.exports = asciiToArray; 13 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_asciiWords.js: -------------------------------------------------------------------------------- 1 | /** Used to match words composed of alphanumeric characters. */ 2 | var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g; 3 | 4 | /** 5 | * Splits an ASCII `string` into an array of its words. 6 | * 7 | * @private 8 | * @param {string} The string to inspect. 9 | * @returns {Array} Returns the words of `string`. 10 | */ 11 | function asciiWords(string) { 12 | return string.match(reAsciiWord) || []; 13 | } 14 | 15 | module.exports = asciiWords; 16 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseCreate.js: -------------------------------------------------------------------------------- 1 | var isObject = require('./isObject.js'); 2 | 3 | /** Built-in value references. */ 4 | var objectCreate = Object.create; 5 | 6 | /** 7 | * The base implementation of `_.create` without support for assigning 8 | * properties to the created object. 9 | * 10 | * @private 11 | * @param {Object} proto The object to inherit from. 12 | * @returns {Object} Returns the new object. 13 | */ 14 | var baseCreate = (function() { 15 | function object() {} 16 | return function(proto) { 17 | if (!isObject(proto)) { 18 | return {}; 19 | } 20 | if (objectCreate) { 21 | return objectCreate(proto); 22 | } 23 | object.prototype = proto; 24 | var result = new object; 25 | object.prototype = undefined; 26 | return result; 27 | }; 28 | }()); 29 | 30 | module.exports = baseCreate; 31 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseFindIndex.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The base implementation of `_.findIndex` and `_.findLastIndex` without 3 | * support for iteratee shorthands. 4 | * 5 | * @private 6 | * @param {Array} array The array to inspect. 7 | * @param {Function} predicate The function invoked per iteration. 8 | * @param {number} fromIndex The index to search from. 9 | * @param {boolean} [fromRight] Specify iterating from right to left. 10 | * @returns {number} Returns the index of the matched value, else `-1`. 11 | */ 12 | function baseFindIndex(array, predicate, fromIndex, fromRight) { 13 | var length = array.length, 14 | index = fromIndex + (fromRight ? 1 : -1); 15 | 16 | while ((fromRight ? index-- : ++index < length)) { 17 | if (predicate(array[index], index, array)) { 18 | return index; 19 | } 20 | } 21 | return -1; 22 | } 23 | 24 | module.exports = baseFindIndex; 25 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseGetTag.js: -------------------------------------------------------------------------------- 1 | var Symbol = require('./_Symbol.js'), 2 | getRawTag = require('./_getRawTag.js'), 3 | objectToString = require('./_objectToString.js'); 4 | 5 | /** `Object#toString` result references. */ 6 | var nullTag = '[object Null]', 7 | undefinedTag = '[object Undefined]'; 8 | 9 | /** Built-in value references. */ 10 | var symToStringTag = Symbol ? Symbol.toStringTag : undefined; 11 | 12 | /** 13 | * The base implementation of `getTag` without fallbacks for buggy environments. 14 | * 15 | * @private 16 | * @param {*} value The value to query. 17 | * @returns {string} Returns the `toStringTag`. 18 | */ 19 | function baseGetTag(value) { 20 | if (value == null) { 21 | return value === undefined ? undefinedTag : nullTag; 22 | } 23 | return (symToStringTag && symToStringTag in Object(value)) 24 | ? getRawTag(value) 25 | : objectToString(value); 26 | } 27 | 28 | module.exports = baseGetTag; 29 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseIndexOf.js: -------------------------------------------------------------------------------- 1 | var baseFindIndex = require('./_baseFindIndex.js'), 2 | baseIsNaN = require('./_baseIsNaN.js'), 3 | strictIndexOf = require('./_strictIndexOf.js'); 4 | 5 | /** 6 | * The base implementation of `_.indexOf` without `fromIndex` bounds checks. 7 | * 8 | * @private 9 | * @param {Array} array The array to inspect. 10 | * @param {*} value The value to search for. 11 | * @param {number} fromIndex The index to search from. 12 | * @returns {number} Returns the index of the matched value, else `-1`. 13 | */ 14 | function baseIndexOf(array, value, fromIndex) { 15 | return value === value 16 | ? strictIndexOf(array, value, fromIndex) 17 | : baseFindIndex(array, baseIsNaN, fromIndex); 18 | } 19 | 20 | module.exports = baseIndexOf; 21 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseIsArguments.js: -------------------------------------------------------------------------------- 1 | var baseGetTag = require('./_baseGetTag.js'), 2 | isObjectLike = require('./isObjectLike.js'); 3 | 4 | /** `Object#toString` result references. */ 5 | var argsTag = '[object Arguments]'; 6 | 7 | /** 8 | * The base implementation of `_.isArguments`. 9 | * 10 | * @private 11 | * @param {*} value The value to check. 12 | * @returns {boolean} Returns `true` if `value` is an `arguments` object, 13 | */ 14 | function baseIsArguments(value) { 15 | return isObjectLike(value) && baseGetTag(value) == argsTag; 16 | } 17 | 18 | module.exports = baseIsArguments; 19 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseIsMap.js: -------------------------------------------------------------------------------- 1 | var getTag = require('./_getTag.js'), 2 | isObjectLike = require('./isObjectLike.js'); 3 | 4 | /** `Object#toString` result references. */ 5 | var mapTag = '[object Map]'; 6 | 7 | /** 8 | * The base implementation of `_.isMap` without Node.js optimizations. 9 | * 10 | * @private 11 | * @param {*} value The value to check. 12 | * @returns {boolean} Returns `true` if `value` is a map, else `false`. 13 | */ 14 | function baseIsMap(value) { 15 | return isObjectLike(value) && getTag(value) == mapTag; 16 | } 17 | 18 | module.exports = baseIsMap; 19 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseIsNaN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The base implementation of `_.isNaN` without support for number objects. 3 | * 4 | * @private 5 | * @param {*} value The value to check. 6 | * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`. 7 | */ 8 | function baseIsNaN(value) { 9 | return value !== value; 10 | } 11 | 12 | module.exports = baseIsNaN; 13 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseKeys.js: -------------------------------------------------------------------------------- 1 | var isPrototype = require('./_isPrototype.js'), 2 | nativeKeys = require('./_nativeKeys.js'); 3 | 4 | /** Used for built-in method references. */ 5 | var objectProto = Object.prototype; 6 | 7 | /** Used to check objects for own properties. */ 8 | var hasOwnProperty = objectProto.hasOwnProperty; 9 | 10 | /** 11 | * The base implementation of `_.keys` which doesn't treat sparse arrays as dense. 12 | * 13 | * @private 14 | * @param {Object} object The object to query. 15 | * @returns {Array} Returns the array of property names. 16 | */ 17 | function baseKeys(object) { 18 | if (!isPrototype(object)) { 19 | return nativeKeys(object); 20 | } 21 | var result = []; 22 | for (var key in Object(object)) { 23 | if (hasOwnProperty.call(object, key) && key != 'constructor') { 24 | result.push(key); 25 | } 26 | } 27 | return result; 28 | } 29 | 30 | module.exports = baseKeys; 31 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseLodash.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The function whose prototype chain sequence wrappers inherit from. 3 | * 4 | * @private 5 | */ 6 | function baseLodash() { 7 | // No operation performed. 8 | } 9 | 10 | module.exports = baseLodash; 11 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_basePropertyOf.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The base implementation of `_.propertyOf` without support for deep paths. 3 | * 4 | * @private 5 | * @param {Object} object The object to query. 6 | * @returns {Function} Returns the new accessor function. 7 | */ 8 | function basePropertyOf(object) { 9 | return function(key) { 10 | return object == null ? undefined : object[key]; 11 | }; 12 | } 13 | 14 | module.exports = basePropertyOf; 15 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseSetData.js: -------------------------------------------------------------------------------- 1 | var identity = require('./identity.js'), 2 | metaMap = require('./_metaMap.js'); 3 | 4 | /** 5 | * The base implementation of `setData` without support for hot loop shorting. 6 | * 7 | * @private 8 | * @param {Function} func The function to associate metadata with. 9 | * @param {*} data The metadata. 10 | * @returns {Function} Returns `func`. 11 | */ 12 | var baseSetData = !metaMap ? identity : function(func, data) { 13 | metaMap.set(func, data); 14 | return func; 15 | }; 16 | 17 | module.exports = baseSetData; 18 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseSetToString.js: -------------------------------------------------------------------------------- 1 | var constant = require('./constant.js'), 2 | defineProperty = require('./_defineProperty.js'), 3 | identity = require('./identity.js'); 4 | 5 | /** 6 | * The base implementation of `setToString` without support for hot loop shorting. 7 | * 8 | * @private 9 | * @param {Function} func The function to modify. 10 | * @param {Function} string The `toString` result. 11 | * @returns {Function} Returns `func`. 12 | */ 13 | var baseSetToString = !defineProperty ? identity : function(func, string) { 14 | return defineProperty(func, 'toString', { 15 | 'configurable': true, 16 | 'enumerable': false, 17 | 'value': constant(string), 18 | 'writable': true 19 | }); 20 | }; 21 | 22 | module.exports = baseSetToString; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseSlice.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The base implementation of `_.slice` without an iteratee call guard. 3 | * 4 | * @private 5 | * @param {Array} array The array to slice. 6 | * @param {number} [start=0] The start position. 7 | * @param {number} [end=array.length] The end position. 8 | * @returns {Array} Returns the slice of `array`. 9 | */ 10 | function baseSlice(array, start, end) { 11 | var index = -1, 12 | length = array.length; 13 | 14 | if (start < 0) { 15 | start = -start > length ? 0 : (length + start); 16 | } 17 | end = end > length ? length : end; 18 | if (end < 0) { 19 | end += length; 20 | } 21 | length = start > end ? 0 : ((end - start) >>> 0); 22 | start >>>= 0; 23 | 24 | var result = Array(length); 25 | while (++index < length) { 26 | result[index] = array[index + start]; 27 | } 28 | return result; 29 | } 30 | 31 | module.exports = baseSlice; 32 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseTimes.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The base implementation of `_.times` without support for iteratee shorthands 3 | * or max array length checks. 4 | * 5 | * @private 6 | * @param {number} n The number of times to invoke `iteratee`. 7 | * @param {Function} iteratee The function invoked per iteration. 8 | * @returns {Array} Returns the array of results. 9 | */ 10 | function baseTimes(n, iteratee) { 11 | var index = -1, 12 | result = Array(n); 13 | 14 | while (++index < n) { 15 | result[index] = iteratee(index); 16 | } 17 | return result; 18 | } 19 | 20 | module.exports = baseTimes; 21 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseToString.js: -------------------------------------------------------------------------------- 1 | var Symbol = require('./_Symbol.js'), 2 | arrayMap = require('./_arrayMap.js'), 3 | isArray = require('./isArray.js'), 4 | isSymbol = require('./isSymbol.js'); 5 | 6 | /** Used as references for various `Number` constants. */ 7 | var INFINITY = 1 / 0; 8 | 9 | /** Used to convert symbols to primitives and strings. */ 10 | var symbolProto = Symbol ? Symbol.prototype : undefined, 11 | symbolToString = symbolProto ? symbolProto.toString : undefined; 12 | 13 | /** 14 | * The base implementation of `_.toString` which doesn't convert nullish 15 | * values to empty strings. 16 | * 17 | * @private 18 | * @param {*} value The value to process. 19 | * @returns {string} Returns the string. 20 | */ 21 | function baseToString(value) { 22 | // Exit early for strings to avoid a performance hit in some environments. 23 | if (typeof value == 'string') { 24 | return value; 25 | } 26 | if (isArray(value)) { 27 | // Recursively convert values (susceptible to call stack limits). 28 | return arrayMap(value, baseToString) + ''; 29 | } 30 | if (isSymbol(value)) { 31 | return symbolToString ? symbolToString.call(value) : ''; 32 | } 33 | var result = (value + ''); 34 | return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result; 35 | } 36 | 37 | module.exports = baseToString; 38 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseUnary.js: -------------------------------------------------------------------------------- 1 | /** 2 | * The base implementation of `_.unary` without support for storing metadata. 3 | * 4 | * @private 5 | * @param {Function} func The function to cap arguments for. 6 | * @returns {Function} Returns the new capped function. 7 | */ 8 | function baseUnary(func) { 9 | return function(value) { 10 | return func(value); 11 | }; 12 | } 13 | 14 | module.exports = baseUnary; 15 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_baseValues.js: -------------------------------------------------------------------------------- 1 | var arrayMap = require('./_arrayMap.js'); 2 | 3 | /** 4 | * The base implementation of `_.values` and `_.valuesIn` which creates an 5 | * array of `object` property values corresponding to the property names 6 | * of `props`. 7 | * 8 | * @private 9 | * @param {Object} object The object to query. 10 | * @param {Array} props The property names to get values for. 11 | * @returns {Object} Returns the array of property values. 12 | */ 13 | function baseValues(object, props) { 14 | return arrayMap(props, function(key) { 15 | return object[key]; 16 | }); 17 | } 18 | 19 | module.exports = baseValues; 20 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_castSlice.js: -------------------------------------------------------------------------------- 1 | var baseSlice = require('./_baseSlice.js'); 2 | 3 | /** 4 | * Casts `array` to a slice if it's needed. 5 | * 6 | * @private 7 | * @param {Array} array The array to inspect. 8 | * @param {number} start The start position. 9 | * @param {number} [end=array.length] The end position. 10 | * @returns {Array} Returns the cast slice. 11 | */ 12 | function castSlice(array, start, end) { 13 | var length = array.length; 14 | end = end === undefined ? length : end; 15 | return (!start && end >= length) ? array : baseSlice(array, start, end); 16 | } 17 | 18 | module.exports = castSlice; 19 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_composeArgs.js: -------------------------------------------------------------------------------- 1 | /* Built-in method references for those with the same name as other `lodash` methods. */ 2 | var nativeMax = Math.max; 3 | 4 | /** 5 | * Creates an array that is the composition of partially applied arguments, 6 | * placeholders, and provided arguments into a single array of arguments. 7 | * 8 | * @private 9 | * @param {Array} args The provided arguments. 10 | * @param {Array} partials The arguments to prepend to those provided. 11 | * @param {Array} holders The `partials` placeholder indexes. 12 | * @params {boolean} [isCurried] Specify composing for a curried function. 13 | * @returns {Array} Returns the new array of composed arguments. 14 | */ 15 | function composeArgs(args, partials, holders, isCurried) { 16 | var argsIndex = -1, 17 | argsLength = args.length, 18 | holdersLength = holders.length, 19 | leftIndex = -1, 20 | leftLength = partials.length, 21 | rangeLength = nativeMax(argsLength - holdersLength, 0), 22 | result = Array(leftLength + rangeLength), 23 | isUncurried = !isCurried; 24 | 25 | while (++leftIndex < leftLength) { 26 | result[leftIndex] = partials[leftIndex]; 27 | } 28 | while (++argsIndex < holdersLength) { 29 | if (isUncurried || argsIndex < argsLength) { 30 | result[holders[argsIndex]] = args[argsIndex]; 31 | } 32 | } 33 | while (rangeLength--) { 34 | result[leftIndex++] = args[argsIndex++]; 35 | } 36 | return result; 37 | } 38 | 39 | module.exports = composeArgs; 40 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_copyArray.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Copies the values of `source` to `array`. 3 | * 4 | * @private 5 | * @param {Array} source The array to copy values from. 6 | * @param {Array} [array=[]] The array to copy values to. 7 | * @returns {Array} Returns `array`. 8 | */ 9 | function copyArray(source, array) { 10 | var index = -1, 11 | length = source.length; 12 | 13 | array || (array = Array(length)); 14 | while (++index < length) { 15 | array[index] = source[index]; 16 | } 17 | return array; 18 | } 19 | 20 | module.exports = copyArray; 21 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_coreJsData.js: -------------------------------------------------------------------------------- 1 | var root = require('./_root.js'); 2 | 3 | /** Used to detect overreaching core-js shims. */ 4 | var coreJsData = root['__core-js_shared__']; 5 | 6 | module.exports = coreJsData; 7 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_countHolders.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Gets the number of `placeholder` occurrences in `array`. 3 | * 4 | * @private 5 | * @param {Array} array The array to inspect. 6 | * @param {*} placeholder The placeholder to search for. 7 | * @returns {number} Returns the placeholder count. 8 | */ 9 | function countHolders(array, placeholder) { 10 | var length = array.length, 11 | result = 0; 12 | 13 | while (length--) { 14 | if (array[length] === placeholder) { 15 | ++result; 16 | } 17 | } 18 | return result; 19 | } 20 | 21 | module.exports = countHolders; 22 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_createBind.js: -------------------------------------------------------------------------------- 1 | var createCtor = require('./_createCtor.js'), 2 | root = require('./_root.js'); 3 | 4 | /** Used to compose bitmasks for function metadata. */ 5 | var WRAP_BIND_FLAG = 1; 6 | 7 | /** 8 | * Creates a function that wraps `func` to invoke it with the optional `this` 9 | * binding of `thisArg`. 10 | * 11 | * @private 12 | * @param {Function} func The function to wrap. 13 | * @param {number} bitmask The bitmask flags. See `createWrap` for more details. 14 | * @param {*} [thisArg] The `this` binding of `func`. 15 | * @returns {Function} Returns the new wrapped function. 16 | */ 17 | function createBind(func, bitmask, thisArg) { 18 | var isBind = bitmask & WRAP_BIND_FLAG, 19 | Ctor = createCtor(func); 20 | 21 | function wrapper() { 22 | var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func; 23 | return fn.apply(isBind ? thisArg : this, arguments); 24 | } 25 | return wrapper; 26 | } 27 | 28 | module.exports = createBind; 29 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_createCaseFirst.js: -------------------------------------------------------------------------------- 1 | var castSlice = require('./_castSlice.js'), 2 | hasUnicode = require('./_hasUnicode.js'), 3 | stringToArray = require('./_stringToArray.js'), 4 | toString = require('./toString.js'); 5 | 6 | /** 7 | * Creates a function like `_.lowerFirst`. 8 | * 9 | * @private 10 | * @param {string} methodName The name of the `String` case method to use. 11 | * @returns {Function} Returns the new case function. 12 | */ 13 | function createCaseFirst(methodName) { 14 | return function(string) { 15 | string = toString(string); 16 | 17 | var strSymbols = hasUnicode(string) 18 | ? stringToArray(string) 19 | : undefined; 20 | 21 | var chr = strSymbols 22 | ? strSymbols[0] 23 | : string.charAt(0); 24 | 25 | var trailing = strSymbols 26 | ? castSlice(strSymbols, 1).join('') 27 | : string.slice(1); 28 | 29 | return chr[methodName]() + trailing; 30 | }; 31 | } 32 | 33 | module.exports = createCaseFirst; 34 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_createCompounder.js: -------------------------------------------------------------------------------- 1 | var arrayReduce = require('./_arrayReduce.js'), 2 | deburr = require('./deburr.js'), 3 | words = require('./words.js'); 4 | 5 | /** Used to compose unicode capture groups. */ 6 | var rsApos = "['\u2019]"; 7 | 8 | /** Used to match apostrophes. */ 9 | var reApos = RegExp(rsApos, 'g'); 10 | 11 | /** 12 | * Creates a function like `_.camelCase`. 13 | * 14 | * @private 15 | * @param {Function} callback The function to combine each word. 16 | * @returns {Function} Returns the new compounder function. 17 | */ 18 | function createCompounder(callback) { 19 | return function(string) { 20 | return arrayReduce(words(deburr(string).replace(reApos, '')), callback, ''); 21 | }; 22 | } 23 | 24 | module.exports = createCompounder; 25 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_defineProperty.js: -------------------------------------------------------------------------------- 1 | var getNative = require('./_getNative.js'); 2 | 3 | var defineProperty = (function() { 4 | try { 5 | var func = getNative(Object, 'defineProperty'); 6 | func({}, '', {}); 7 | return func; 8 | } catch (e) {} 9 | }()); 10 | 11 | module.exports = defineProperty; 12 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_freeGlobal.js: -------------------------------------------------------------------------------- 1 | /** Detect free variable `global` from Node.js. */ 2 | var freeGlobal = typeof global == 'object' && global && global.Object === Object && global; 3 | 4 | module.exports = freeGlobal || this; 5 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getData.js: -------------------------------------------------------------------------------- 1 | var metaMap = require('./_metaMap.js'), 2 | noop = require('./noop.js'); 3 | 4 | /** 5 | * Gets metadata for `func`. 6 | * 7 | * @private 8 | * @param {Function} func The function to query. 9 | * @returns {*} Returns the metadata for `func`. 10 | */ 11 | var getData = !metaMap ? noop : function(func) { 12 | return metaMap.get(func); 13 | }; 14 | 15 | module.exports = getData; 16 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getFuncName.js: -------------------------------------------------------------------------------- 1 | var realNames = require('./_realNames.js'); 2 | 3 | /** Used for built-in method references. */ 4 | var objectProto = Object.prototype; 5 | 6 | /** Used to check objects for own properties. */ 7 | var hasOwnProperty = objectProto.hasOwnProperty; 8 | 9 | /** 10 | * Gets the name of `func`. 11 | * 12 | * @private 13 | * @param {Function} func The function to query. 14 | * @returns {string} Returns the function name. 15 | */ 16 | function getFuncName(func) { 17 | var result = (func.name + ''), 18 | array = realNames[result], 19 | length = hasOwnProperty.call(realNames, result) ? array.length : 0; 20 | 21 | while (length--) { 22 | var data = array[length], 23 | otherFunc = data.func; 24 | if (otherFunc == null || otherFunc == func) { 25 | return data.name; 26 | } 27 | } 28 | return result; 29 | } 30 | 31 | module.exports = getFuncName; 32 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getHolder.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Gets the argument placeholder value for `func`. 3 | * 4 | * @private 5 | * @param {Function} func The function to inspect. 6 | * @returns {*} Returns the placeholder value. 7 | */ 8 | function getHolder(func) { 9 | var object = func; 10 | return object.placeholder; 11 | } 12 | 13 | module.exports = getHolder; 14 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getNative.js: -------------------------------------------------------------------------------- 1 | var baseIsNative = require('./_baseIsNative.js'), 2 | getValue = require('./_getValue.js'); 3 | 4 | /** 5 | * Gets the native function at `key` of `object`. 6 | * 7 | * @private 8 | * @param {Object} object The object to query. 9 | * @param {string} key The key of the method to get. 10 | * @returns {*} Returns the function if it's native, else `undefined`. 11 | */ 12 | function getNative(object, key) { 13 | var value = getValue(object, key); 14 | return baseIsNative(value) ? value : undefined; 15 | } 16 | 17 | module.exports = getNative; 18 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getPrototype.js: -------------------------------------------------------------------------------- 1 | var overArg = require('./_overArg.js'); 2 | 3 | /** Built-in value references. */ 4 | var getPrototype = overArg(Object.getPrototypeOf, Object); 5 | 6 | module.exports = getPrototype; 7 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getRawTag.js: -------------------------------------------------------------------------------- 1 | var Symbol = require('./_Symbol.js'); 2 | 3 | /** Used for built-in method references. */ 4 | var objectProto = Object.prototype; 5 | 6 | /** Used to check objects for own properties. */ 7 | var hasOwnProperty = objectProto.hasOwnProperty; 8 | 9 | /** 10 | * Used to resolve the 11 | * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) 12 | * of values. 13 | */ 14 | var nativeObjectToString = objectProto.toString; 15 | 16 | /** Built-in value references. */ 17 | var symToStringTag = Symbol ? Symbol.toStringTag : undefined; 18 | 19 | /** 20 | * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values. 21 | * 22 | * @private 23 | * @param {*} value The value to query. 24 | * @returns {string} Returns the raw `toStringTag`. 25 | */ 26 | function getRawTag(value) { 27 | var isOwn = hasOwnProperty.call(value, symToStringTag), 28 | tag = value[symToStringTag]; 29 | 30 | try { 31 | value[symToStringTag] = undefined; 32 | var unmasked = true; 33 | } catch (e) {} 34 | 35 | var result = nativeObjectToString.call(value); 36 | if (unmasked) { 37 | if (isOwn) { 38 | value[symToStringTag] = tag; 39 | } else { 40 | delete value[symToStringTag]; 41 | } 42 | } 43 | return result; 44 | } 45 | 46 | module.exports = getRawTag; 47 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getValue.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Gets the value at `key` of `object`. 3 | * 4 | * @private 5 | * @param {Object} [object] The object to query. 6 | * @param {string} key The key of the property to get. 7 | * @returns {*} Returns the property value. 8 | */ 9 | function getValue(object, key) { 10 | return object == null ? undefined : object[key]; 11 | } 12 | 13 | module.exports = getValue; 14 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_getWrapDetails.js: -------------------------------------------------------------------------------- 1 | /** Used to match wrap detail comments. */ 2 | var reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/, 3 | reSplitDetails = /,? & /; 4 | 5 | /** 6 | * Extracts wrapper details from the `source` body comment. 7 | * 8 | * @private 9 | * @param {string} source The source to inspect. 10 | * @returns {Array} Returns the wrapper details. 11 | */ 12 | function getWrapDetails(source) { 13 | var match = source.match(reWrapDetails); 14 | return match ? match[1].split(reSplitDetails) : []; 15 | } 16 | 17 | module.exports = getWrapDetails; 18 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_hasUnicode.js: -------------------------------------------------------------------------------- 1 | /** Used to compose unicode character classes. */ 2 | var rsAstralRange = '\\ud800-\\udfff', 3 | rsComboMarksRange = '\\u0300-\\u036f', 4 | reComboHalfMarksRange = '\\ufe20-\\ufe2f', 5 | rsComboSymbolsRange = '\\u20d0-\\u20ff', 6 | rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange, 7 | rsVarRange = '\\ufe0e\\ufe0f'; 8 | 9 | /** Used to compose unicode capture groups. */ 10 | var rsZWJ = '\\u200d'; 11 | 12 | /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */ 13 | var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']'); 14 | 15 | /** 16 | * Checks if `string` contains Unicode symbols. 17 | * 18 | * @private 19 | * @param {string} string The string to inspect. 20 | * @returns {boolean} Returns `true` if a symbol is found, else `false`. 21 | */ 22 | function hasUnicode(string) { 23 | return reHasUnicode.test(string); 24 | } 25 | 26 | module.exports = hasUnicode; 27 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_hasUnicodeWord.js: -------------------------------------------------------------------------------- 1 | /** Used to detect strings that need a more robust regexp to match words. */ 2 | var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/; 3 | 4 | /** 5 | * Checks if `string` contains a word composed of Unicode symbols. 6 | * 7 | * @private 8 | * @param {string} string The string to inspect. 9 | * @returns {boolean} Returns `true` if a word is found, else `false`. 10 | */ 11 | function hasUnicodeWord(string) { 12 | return reHasUnicodeWord.test(string); 13 | } 14 | 15 | module.exports = hasUnicodeWord; 16 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_insertWrapDetails.js: -------------------------------------------------------------------------------- 1 | /** Used to match wrap detail comments. */ 2 | var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/; 3 | 4 | /** 5 | * Inserts wrapper `details` in a comment at the top of the `source` body. 6 | * 7 | * @private 8 | * @param {string} source The source to modify. 9 | * @returns {Array} details The details to insert. 10 | * @returns {string} Returns the modified source. 11 | */ 12 | function insertWrapDetails(source, details) { 13 | var length = details.length; 14 | if (!length) { 15 | return source; 16 | } 17 | var lastIndex = length - 1; 18 | details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex]; 19 | details = details.join(length > 2 ? ', ' : ' '); 20 | return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n'); 21 | } 22 | 23 | module.exports = insertWrapDetails; 24 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_isIndex.js: -------------------------------------------------------------------------------- 1 | /** Used as references for various `Number` constants. */ 2 | var MAX_SAFE_INTEGER = 9007199254740991; 3 | 4 | /** Used to detect unsigned integer values. */ 5 | var reIsUint = /^(?:0|[1-9]\d*)$/; 6 | 7 | /** 8 | * Checks if `value` is a valid array-like index. 9 | * 10 | * @private 11 | * @param {*} value The value to check. 12 | * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. 13 | * @returns {boolean} Returns `true` if `value` is a valid index, else `false`. 14 | */ 15 | function isIndex(value, length) { 16 | var type = typeof value; 17 | length = length == null ? MAX_SAFE_INTEGER : length; 18 | 19 | return !!length && 20 | (type == 'number' || 21 | (type != 'symbol' && reIsUint.test(value))) && 22 | (value > -1 && value % 1 == 0 && value < length); 23 | } 24 | 25 | module.exports = isIndex; 26 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_isLaziable.js: -------------------------------------------------------------------------------- 1 | var LazyWrapper = require('./_LazyWrapper.js'), 2 | getData = require('./_getData.js'), 3 | getFuncName = require('./_getFuncName.js'), 4 | lodash = require('./wrapperLodash.js'); 5 | 6 | /** 7 | * Checks if `func` has a lazy counterpart. 8 | * 9 | * @private 10 | * @param {Function} func The function to check. 11 | * @returns {boolean} Returns `true` if `func` has a lazy counterpart, 12 | * else `false`. 13 | */ 14 | function isLaziable(func) { 15 | var funcName = getFuncName(func), 16 | other = lodash[funcName]; 17 | 18 | if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) { 19 | return false; 20 | } 21 | if (func === other) { 22 | return true; 23 | } 24 | var data = getData(other); 25 | return !!data && func === data[0]; 26 | } 27 | 28 | module.exports = isLaziable; 29 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_isMasked.js: -------------------------------------------------------------------------------- 1 | var coreJsData = require('./_coreJsData.js'); 2 | 3 | /** Used to detect methods masquerading as native. */ 4 | var maskSrcKey = (function() { 5 | var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || ''); 6 | return uid ? ('Symbol(src)_1.' + uid) : ''; 7 | }()); 8 | 9 | /** 10 | * Checks if `func` has its source masked. 11 | * 12 | * @private 13 | * @param {Function} func The function to check. 14 | * @returns {boolean} Returns `true` if `func` is masked, else `false`. 15 | */ 16 | function isMasked(func) { 17 | return !!maskSrcKey && (maskSrcKey in func); 18 | } 19 | 20 | module.exports = isMasked; 21 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_isPrototype.js: -------------------------------------------------------------------------------- 1 | /** Used for built-in method references. */ 2 | var objectProto = Object.prototype; 3 | 4 | /** 5 | * Checks if `value` is likely a prototype object. 6 | * 7 | * @private 8 | * @param {*} value The value to check. 9 | * @returns {boolean} Returns `true` if `value` is a prototype, else `false`. 10 | */ 11 | function isPrototype(value) { 12 | var Ctor = value && value.constructor, 13 | proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto; 14 | 15 | return value === proto; 16 | } 17 | 18 | module.exports = isPrototype; 19 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_metaMap.js: -------------------------------------------------------------------------------- 1 | var WeakMap = require('./_WeakMap.js'); 2 | 3 | /** Used to store function metadata. */ 4 | var metaMap = WeakMap && new WeakMap; 5 | 6 | module.exports = metaMap; 7 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_nativeKeys.js: -------------------------------------------------------------------------------- 1 | var overArg = require('./_overArg.js'); 2 | 3 | /* Built-in method references for those with the same name as other `lodash` methods. */ 4 | var nativeKeys = overArg(Object.keys, Object); 5 | 6 | module.exports = nativeKeys; 7 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_nodeUtil.js: -------------------------------------------------------------------------------- 1 | var freeGlobal = require('./_freeGlobal.js'); 2 | 3 | /** Detect free variable `exports`. */ 4 | var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; 5 | 6 | /** Detect free variable `module`. */ 7 | var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; 8 | 9 | /** Detect the popular CommonJS extension `module.exports`. */ 10 | var moduleExports = freeModule && freeModule.exports === freeExports; 11 | 12 | /** Detect free variable `process` from Node.js. */ 13 | var freeProcess = moduleExports && freeGlobal.process; 14 | 15 | /** Used to access faster Node.js helpers. */ 16 | var nodeUtil = (function() { 17 | try { 18 | // Use `util.types` for Node.js 10+. 19 | var types = freeModule && freeModule.require && freeModule.require('util').types; 20 | 21 | if (types) { 22 | return types; 23 | } 24 | 25 | // Legacy `process.binding('util')` for Node.js < 10. 26 | return freeProcess && freeProcess.binding && freeProcess.binding('util'); 27 | } catch (e) {} 28 | }()); 29 | 30 | module.exports = nodeUtil; 31 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_objectToString.js: -------------------------------------------------------------------------------- 1 | /** Used for built-in method references. */ 2 | var objectProto = Object.prototype; 3 | 4 | /** 5 | * Used to resolve the 6 | * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring) 7 | * of values. 8 | */ 9 | var nativeObjectToString = objectProto.toString; 10 | 11 | /** 12 | * Converts `value` to a string using `Object.prototype.toString`. 13 | * 14 | * @private 15 | * @param {*} value The value to convert. 16 | * @returns {string} Returns the converted string. 17 | */ 18 | function objectToString(value) { 19 | return nativeObjectToString.call(value); 20 | } 21 | 22 | module.exports = objectToString; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_overArg.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Creates a unary function that invokes `func` with its argument transformed. 3 | * 4 | * @private 5 | * @param {Function} func The function to wrap. 6 | * @param {Function} transform The argument transform. 7 | * @returns {Function} Returns the new function. 8 | */ 9 | function overArg(func, transform) { 10 | return function(arg) { 11 | return func(transform(arg)); 12 | }; 13 | } 14 | 15 | module.exports = overArg; 16 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_realNames.js: -------------------------------------------------------------------------------- 1 | /** Used to lookup unminified function names. */ 2 | var realNames = {}; 3 | 4 | module.exports = realNames; 5 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_reorder.js: -------------------------------------------------------------------------------- 1 | var copyArray = require('./_copyArray.js'), 2 | isIndex = require('./_isIndex.js'); 3 | 4 | /* Built-in method references for those with the same name as other `lodash` methods. */ 5 | var nativeMin = Math.min; 6 | 7 | /** 8 | * Reorder `array` according to the specified indexes where the element at 9 | * the first index is assigned as the first element, the element at 10 | * the second index is assigned as the second element, and so on. 11 | * 12 | * @private 13 | * @param {Array} array The array to reorder. 14 | * @param {Array} indexes The arranged array indexes. 15 | * @returns {Array} Returns `array`. 16 | */ 17 | function reorder(array, indexes) { 18 | var arrLength = array.length, 19 | length = nativeMin(indexes.length, arrLength), 20 | oldArray = copyArray(array); 21 | 22 | while (length--) { 23 | var index = indexes[length]; 24 | array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; 25 | } 26 | return array; 27 | } 28 | 29 | module.exports = reorder; 30 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_replaceHolders.js: -------------------------------------------------------------------------------- 1 | /** Used as the internal argument placeholder. */ 2 | var PLACEHOLDER = '__lodash_placeholder__'; 3 | 4 | /** 5 | * Replaces all `placeholder` elements in `array` with an internal placeholder 6 | * and returns an array of their indexes. 7 | * 8 | * @private 9 | * @param {Array} array The array to modify. 10 | * @param {*} placeholder The placeholder to replace. 11 | * @returns {Array} Returns the new array of placeholder indexes. 12 | */ 13 | function replaceHolders(array, placeholder) { 14 | var index = -1, 15 | length = array.length, 16 | resIndex = 0, 17 | result = []; 18 | 19 | while (++index < length) { 20 | var value = array[index]; 21 | if (value === placeholder || value === PLACEHOLDER) { 22 | array[index] = PLACEHOLDER; 23 | result[resIndex++] = index; 24 | } 25 | } 26 | return result; 27 | } 28 | 29 | module.exports = replaceHolders; 30 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_root.js: -------------------------------------------------------------------------------- 1 | var freeGlobal = require('./_freeGlobal.js'); 2 | 3 | /** Detect free variable `self`. */ 4 | var freeSelf = typeof self == 'object' && self && self.Object === Object && self; 5 | 6 | /** Used as a reference to the global object. */ 7 | var root = freeGlobal || freeSelf || Function('return this')(); 8 | 9 | module.exports = root; 10 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_setData.js: -------------------------------------------------------------------------------- 1 | var baseSetData = require('./_baseSetData.js'), 2 | shortOut = require('./_shortOut.js'); 3 | 4 | /** 5 | * Sets metadata for `func`. 6 | * 7 | * **Note:** If this function becomes hot, i.e. is invoked a lot in a short 8 | * period of time, it will trip its breaker and transition to an identity 9 | * function to avoid garbage collection pauses in V8. See 10 | * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070) 11 | * for more details. 12 | * 13 | * @private 14 | * @param {Function} func The function to associate metadata with. 15 | * @param {*} data The metadata. 16 | * @returns {Function} Returns `func`. 17 | */ 18 | var setData = shortOut(baseSetData); 19 | 20 | module.exports = setData; 21 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_setToString.js: -------------------------------------------------------------------------------- 1 | var baseSetToString = require('./_baseSetToString.js'), 2 | shortOut = require('./_shortOut.js'); 3 | 4 | /** 5 | * Sets the `toString` method of `func` to return `string`. 6 | * 7 | * @private 8 | * @param {Function} func The function to modify. 9 | * @param {Function} string The `toString` result. 10 | * @returns {Function} Returns `func`. 11 | */ 12 | var setToString = shortOut(baseSetToString); 13 | 14 | module.exports = setToString; 15 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_setWrapToString.js: -------------------------------------------------------------------------------- 1 | var getWrapDetails = require('./_getWrapDetails.js'), 2 | insertWrapDetails = require('./_insertWrapDetails.js'), 3 | setToString = require('./_setToString.js'), 4 | updateWrapDetails = require('./_updateWrapDetails.js'); 5 | 6 | /** 7 | * Sets the `toString` method of `wrapper` to mimic the source of `reference` 8 | * with wrapper details in a comment at the top of the source body. 9 | * 10 | * @private 11 | * @param {Function} wrapper The function to modify. 12 | * @param {Function} reference The reference function. 13 | * @param {number} bitmask The bitmask flags. See `createWrap` for more details. 14 | * @returns {Function} Returns `wrapper`. 15 | */ 16 | function setWrapToString(wrapper, reference, bitmask) { 17 | var source = (reference + ''); 18 | return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask))); 19 | } 20 | 21 | module.exports = setWrapToString; 22 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_shortOut.js: -------------------------------------------------------------------------------- 1 | /** Used to detect hot functions by number of calls within a span of milliseconds. */ 2 | var HOT_COUNT = 800, 3 | HOT_SPAN = 16; 4 | 5 | /* Built-in method references for those with the same name as other `lodash` methods. */ 6 | var nativeNow = Date.now; 7 | 8 | /** 9 | * Creates a function that'll short out and invoke `identity` instead 10 | * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN` 11 | * milliseconds. 12 | * 13 | * @private 14 | * @param {Function} func The function to restrict. 15 | * @returns {Function} Returns the new shortable function. 16 | */ 17 | function shortOut(func) { 18 | var count = 0, 19 | lastCalled = 0; 20 | 21 | return function() { 22 | var stamp = nativeNow(), 23 | remaining = HOT_SPAN - (stamp - lastCalled); 24 | 25 | lastCalled = stamp; 26 | if (remaining > 0) { 27 | if (++count >= HOT_COUNT) { 28 | return arguments[0]; 29 | } 30 | } else { 31 | count = 0; 32 | } 33 | return func.apply(undefined, arguments); 34 | }; 35 | } 36 | 37 | module.exports = shortOut; 38 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_strictIndexOf.js: -------------------------------------------------------------------------------- 1 | /** 2 | * A specialized version of `_.indexOf` which performs strict equality 3 | * comparisons of values, i.e. `===`. 4 | * 5 | * @private 6 | * @param {Array} array The array to inspect. 7 | * @param {*} value The value to search for. 8 | * @param {number} fromIndex The index to search from. 9 | * @returns {number} Returns the index of the matched value, else `-1`. 10 | */ 11 | function strictIndexOf(array, value, fromIndex) { 12 | var index = fromIndex - 1, 13 | length = array.length; 14 | 15 | while (++index < length) { 16 | if (array[index] === value) { 17 | return index; 18 | } 19 | } 20 | return -1; 21 | } 22 | 23 | module.exports = strictIndexOf; 24 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_stringToArray.js: -------------------------------------------------------------------------------- 1 | var asciiToArray = require('./_asciiToArray.js'), 2 | hasUnicode = require('./_hasUnicode.js'), 3 | unicodeToArray = require('./_unicodeToArray.js'); 4 | 5 | /** 6 | * Converts `string` to an array. 7 | * 8 | * @private 9 | * @param {string} string The string to convert. 10 | * @returns {Array} Returns the converted array. 11 | */ 12 | function stringToArray(string) { 13 | return hasUnicode(string) 14 | ? unicodeToArray(string) 15 | : asciiToArray(string); 16 | } 17 | 18 | module.exports = stringToArray; 19 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_toSource.js: -------------------------------------------------------------------------------- 1 | /** Used for built-in method references. */ 2 | var funcProto = Function.prototype; 3 | 4 | /** Used to resolve the decompiled source of functions. */ 5 | var funcToString = funcProto.toString; 6 | 7 | /** 8 | * Converts `func` to its source code. 9 | * 10 | * @private 11 | * @param {Function} func The function to convert. 12 | * @returns {string} Returns the source code. 13 | */ 14 | function toSource(func) { 15 | if (func != null) { 16 | try { 17 | return funcToString.call(func); 18 | } catch (e) {} 19 | try { 20 | return (func + ''); 21 | } catch (e) {} 22 | } 23 | return ''; 24 | } 25 | 26 | module.exports = toSource; 27 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/_wrapperClone.js: -------------------------------------------------------------------------------- 1 | var LazyWrapper = require('./_LazyWrapper.js'), 2 | LodashWrapper = require('./_LodashWrapper.js'), 3 | copyArray = require('./_copyArray.js'); 4 | 5 | /** 6 | * Creates a clone of `wrapper`. 7 | * 8 | * @private 9 | * @param {Object} wrapper The wrapper to clone. 10 | * @returns {Object} Returns the cloned wrapper. 11 | */ 12 | function wrapperClone(wrapper) { 13 | if (wrapper instanceof LazyWrapper) { 14 | return wrapper.clone(); 15 | } 16 | var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__); 17 | result.__actions__ = copyArray(wrapper.__actions__); 18 | result.__index__ = wrapper.__index__; 19 | result.__values__ = wrapper.__values__; 20 | return result; 21 | } 22 | 23 | module.exports = wrapperClone; 24 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/camelCase.js: -------------------------------------------------------------------------------- 1 | var capitalize = require('./capitalize.js'), 2 | createCompounder = require('./_createCompounder.js'); 3 | 4 | /** 5 | * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase). 6 | * 7 | * @static 8 | * @memberOf _ 9 | * @since 3.0.0 10 | * @category String 11 | * @param {string} [string=''] The string to convert. 12 | * @returns {string} Returns the camel cased string. 13 | * @example 14 | * 15 | * _.camelCase('Foo Bar'); 16 | * // => 'fooBar' 17 | * 18 | * _.camelCase('--foo-bar--'); 19 | * // => 'fooBar' 20 | * 21 | * _.camelCase('__FOO_BAR__'); 22 | * // => 'fooBar' 23 | */ 24 | var camelCase = createCompounder(function(result, word, index) { 25 | word = word.toLowerCase(); 26 | return result + (index ? capitalize(word) : word); 27 | }); 28 | 29 | module.exports = camelCase; 30 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/capitalize.js: -------------------------------------------------------------------------------- 1 | var toString = require('./toString.js'), 2 | upperFirst = require('./upperFirst.js'); 3 | 4 | /** 5 | * Converts the first character of `string` to upper case and the remaining 6 | * to lower case. 7 | * 8 | * @static 9 | * @memberOf _ 10 | * @since 3.0.0 11 | * @category String 12 | * @param {string} [string=''] The string to capitalize. 13 | * @returns {string} Returns the capitalized string. 14 | * @example 15 | * 16 | * _.capitalize('FRED'); 17 | * // => 'Fred' 18 | */ 19 | function capitalize(string) { 20 | return upperFirst(toString(string).toLowerCase()); 21 | } 22 | 23 | module.exports = capitalize; 24 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/constant.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Creates a function that returns `value`. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 2.4.0 7 | * @category Util 8 | * @param {*} value The value to return from the new function. 9 | * @returns {Function} Returns the new constant function. 10 | * @example 11 | * 12 | * var objects = _.times(2, _.constant({ 'a': 1 })); 13 | * 14 | * console.log(objects); 15 | * // => [{ 'a': 1 }, { 'a': 1 }] 16 | * 17 | * console.log(objects[0] === objects[1]); 18 | * // => true 19 | */ 20 | function constant(value) { 21 | return function() { 22 | return value; 23 | }; 24 | } 25 | 26 | module.exports = constant; 27 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/identity.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This method returns the first argument it receives. 3 | * 4 | * @static 5 | * @since 0.1.0 6 | * @memberOf _ 7 | * @category Util 8 | * @param {*} value Any value. 9 | * @returns {*} Returns `value`. 10 | * @example 11 | * 12 | * var object = { 'a': 1 }; 13 | * 14 | * console.log(_.identity(object) === object); 15 | * // => true 16 | */ 17 | function identity(value) { 18 | return value; 19 | } 20 | 21 | module.exports = identity; 22 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isArguments.js: -------------------------------------------------------------------------------- 1 | var baseIsArguments = require('./_baseIsArguments.js'), 2 | isObjectLike = require('./isObjectLike.js'); 3 | 4 | /** Used for built-in method references. */ 5 | var objectProto = Object.prototype; 6 | 7 | /** Used to check objects for own properties. */ 8 | var hasOwnProperty = objectProto.hasOwnProperty; 9 | 10 | /** Built-in value references. */ 11 | var propertyIsEnumerable = objectProto.propertyIsEnumerable; 12 | 13 | /** 14 | * Checks if `value` is likely an `arguments` object. 15 | * 16 | * @static 17 | * @memberOf _ 18 | * @since 0.1.0 19 | * @category Lang 20 | * @param {*} value The value to check. 21 | * @returns {boolean} Returns `true` if `value` is an `arguments` object, 22 | * else `false`. 23 | * @example 24 | * 25 | * _.isArguments(function() { return arguments; }()); 26 | * // => true 27 | * 28 | * _.isArguments([1, 2, 3]); 29 | * // => false 30 | */ 31 | var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) { 32 | return isObjectLike(value) && hasOwnProperty.call(value, 'callee') && 33 | !propertyIsEnumerable.call(value, 'callee'); 34 | }; 35 | 36 | module.exports = isArguments; 37 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isArray.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Checks if `value` is classified as an `Array` object. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 0.1.0 7 | * @category Lang 8 | * @param {*} value The value to check. 9 | * @returns {boolean} Returns `true` if `value` is an array, else `false`. 10 | * @example 11 | * 12 | * _.isArray([1, 2, 3]); 13 | * // => true 14 | * 15 | * _.isArray(document.body.children); 16 | * // => false 17 | * 18 | * _.isArray('abc'); 19 | * // => false 20 | * 21 | * _.isArray(_.noop); 22 | * // => false 23 | */ 24 | var isArray = Array.isArray; 25 | 26 | module.exports = isArray; 27 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isArrayLike.js: -------------------------------------------------------------------------------- 1 | var isFunction = require('./isFunction.js'), 2 | isLength = require('./isLength.js'); 3 | 4 | /** 5 | * Checks if `value` is array-like. A value is considered array-like if it's 6 | * not a function and has a `value.length` that's an integer greater than or 7 | * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`. 8 | * 9 | * @static 10 | * @memberOf _ 11 | * @since 4.0.0 12 | * @category Lang 13 | * @param {*} value The value to check. 14 | * @returns {boolean} Returns `true` if `value` is array-like, else `false`. 15 | * @example 16 | * 17 | * _.isArrayLike([1, 2, 3]); 18 | * // => true 19 | * 20 | * _.isArrayLike(document.body.children); 21 | * // => true 22 | * 23 | * _.isArrayLike('abc'); 24 | * // => true 25 | * 26 | * _.isArrayLike(_.noop); 27 | * // => false 28 | */ 29 | function isArrayLike(value) { 30 | return value != null && isLength(value.length) && !isFunction(value); 31 | } 32 | 33 | module.exports = isArrayLike; 34 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isBuffer.js: -------------------------------------------------------------------------------- 1 | var root = require('./_root.js'), 2 | stubFalse = require('./stubFalse.js'); 3 | 4 | /** Detect free variable `exports`. */ 5 | var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; 6 | 7 | /** Detect free variable `module`. */ 8 | var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; 9 | 10 | /** Detect the popular CommonJS extension `module.exports`. */ 11 | var moduleExports = freeModule && freeModule.exports === freeExports; 12 | 13 | /** Built-in value references. */ 14 | var Buffer = moduleExports ? root.Buffer : undefined; 15 | 16 | /* Built-in method references for those with the same name as other `lodash` methods. */ 17 | var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined; 18 | 19 | /** 20 | * Checks if `value` is a buffer. 21 | * 22 | * @static 23 | * @memberOf _ 24 | * @since 4.3.0 25 | * @category Lang 26 | * @param {*} value The value to check. 27 | * @returns {boolean} Returns `true` if `value` is a buffer, else `false`. 28 | * @example 29 | * 30 | * _.isBuffer(new Buffer(2)); 31 | * // => true 32 | * 33 | * _.isBuffer(new Uint8Array(2)); 34 | * // => false 35 | */ 36 | var isBuffer = nativeIsBuffer || stubFalse; 37 | 38 | module.exports = isBuffer; 39 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isFunction.js: -------------------------------------------------------------------------------- 1 | var baseGetTag = require('./_baseGetTag.js'), 2 | isObject = require('./isObject.js'); 3 | 4 | /** `Object#toString` result references. */ 5 | var asyncTag = '[object AsyncFunction]', 6 | funcTag = '[object Function]', 7 | genTag = '[object GeneratorFunction]', 8 | proxyTag = '[object Proxy]'; 9 | 10 | /** 11 | * Checks if `value` is classified as a `Function` object. 12 | * 13 | * @static 14 | * @memberOf _ 15 | * @since 0.1.0 16 | * @category Lang 17 | * @param {*} value The value to check. 18 | * @returns {boolean} Returns `true` if `value` is a function, else `false`. 19 | * @example 20 | * 21 | * _.isFunction(_); 22 | * // => true 23 | * 24 | * _.isFunction(/abc/); 25 | * // => false 26 | */ 27 | function isFunction(value) { 28 | if (!isObject(value)) { 29 | return false; 30 | } 31 | // The use of `Object#toString` avoids issues with the `typeof` operator 32 | // in Safari 9 which returns 'object' for typed arrays and other constructors. 33 | var tag = baseGetTag(value); 34 | return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag; 35 | } 36 | 37 | module.exports = isFunction; 38 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isLength.js: -------------------------------------------------------------------------------- 1 | /** Used as references for various `Number` constants. */ 2 | var MAX_SAFE_INTEGER = 9007199254740991; 3 | 4 | /** 5 | * Checks if `value` is a valid array-like length. 6 | * 7 | * **Note:** This method is loosely based on 8 | * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength). 9 | * 10 | * @static 11 | * @memberOf _ 12 | * @since 4.0.0 13 | * @category Lang 14 | * @param {*} value The value to check. 15 | * @returns {boolean} Returns `true` if `value` is a valid length, else `false`. 16 | * @example 17 | * 18 | * _.isLength(3); 19 | * // => true 20 | * 21 | * _.isLength(Number.MIN_VALUE); 22 | * // => false 23 | * 24 | * _.isLength(Infinity); 25 | * // => false 26 | * 27 | * _.isLength('3'); 28 | * // => false 29 | */ 30 | function isLength(value) { 31 | return typeof value == 'number' && 32 | value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER; 33 | } 34 | 35 | module.exports = isLength; 36 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isMap.js: -------------------------------------------------------------------------------- 1 | var baseIsMap = require('./_baseIsMap.js'), 2 | baseUnary = require('./_baseUnary.js'), 3 | nodeUtil = require('./_nodeUtil.js'); 4 | 5 | /* Node.js helper references. */ 6 | var nodeIsMap = nodeUtil && nodeUtil.isMap; 7 | 8 | /** 9 | * Checks if `value` is classified as a `Map` object. 10 | * 11 | * @static 12 | * @memberOf _ 13 | * @since 4.3.0 14 | * @category Lang 15 | * @param {*} value The value to check. 16 | * @returns {boolean} Returns `true` if `value` is a map, else `false`. 17 | * @example 18 | * 19 | * _.isMap(new Map); 20 | * // => true 21 | * 22 | * _.isMap(new WeakMap); 23 | * // => false 24 | */ 25 | var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap; 26 | 27 | module.exports = isMap; 28 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isNil.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Checks if `value` is `null` or `undefined`. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 4.0.0 7 | * @category Lang 8 | * @param {*} value The value to check. 9 | * @returns {boolean} Returns `true` if `value` is nullish, else `false`. 10 | * @example 11 | * 12 | * _.isNil(null); 13 | * // => true 14 | * 15 | * _.isNil(void 0); 16 | * // => true 17 | * 18 | * _.isNil(NaN); 19 | * // => false 20 | */ 21 | function isNil(value) { 22 | return value == null; 23 | } 24 | 25 | module.exports = isNil; 26 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isNull.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Checks if `value` is `null`. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 0.1.0 7 | * @category Lang 8 | * @param {*} value The value to check. 9 | * @returns {boolean} Returns `true` if `value` is `null`, else `false`. 10 | * @example 11 | * 12 | * _.isNull(null); 13 | * // => true 14 | * 15 | * _.isNull(void 0); 16 | * // => false 17 | */ 18 | function isNull(value) { 19 | return value === null; 20 | } 21 | 22 | module.exports = isNull; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isObject.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Checks if `value` is the 3 | * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types) 4 | * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) 5 | * 6 | * @static 7 | * @memberOf _ 8 | * @since 0.1.0 9 | * @category Lang 10 | * @param {*} value The value to check. 11 | * @returns {boolean} Returns `true` if `value` is an object, else `false`. 12 | * @example 13 | * 14 | * _.isObject({}); 15 | * // => true 16 | * 17 | * _.isObject([1, 2, 3]); 18 | * // => true 19 | * 20 | * _.isObject(_.noop); 21 | * // => true 22 | * 23 | * _.isObject(null); 24 | * // => false 25 | */ 26 | function isObject(value) { 27 | var type = typeof value; 28 | return value != null && (type == 'object' || type == 'function'); 29 | } 30 | 31 | module.exports = isObject; 32 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isObjectLike.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Checks if `value` is object-like. A value is object-like if it's not `null` 3 | * and has a `typeof` result of "object". 4 | * 5 | * @static 6 | * @memberOf _ 7 | * @since 4.0.0 8 | * @category Lang 9 | * @param {*} value The value to check. 10 | * @returns {boolean} Returns `true` if `value` is object-like, else `false`. 11 | * @example 12 | * 13 | * _.isObjectLike({}); 14 | * // => true 15 | * 16 | * _.isObjectLike([1, 2, 3]); 17 | * // => true 18 | * 19 | * _.isObjectLike(_.noop); 20 | * // => false 21 | * 22 | * _.isObjectLike(null); 23 | * // => false 24 | */ 25 | function isObjectLike(value) { 26 | return value != null && typeof value == 'object'; 27 | } 28 | 29 | module.exports = isObjectLike; 30 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isString.js: -------------------------------------------------------------------------------- 1 | var baseGetTag = require('./_baseGetTag.js'), 2 | isArray = require('./isArray.js'), 3 | isObjectLike = require('./isObjectLike.js'); 4 | 5 | /** `Object#toString` result references. */ 6 | var stringTag = '[object String]'; 7 | 8 | /** 9 | * Checks if `value` is classified as a `String` primitive or object. 10 | * 11 | * @static 12 | * @since 0.1.0 13 | * @memberOf _ 14 | * @category Lang 15 | * @param {*} value The value to check. 16 | * @returns {boolean} Returns `true` if `value` is a string, else `false`. 17 | * @example 18 | * 19 | * _.isString('abc'); 20 | * // => true 21 | * 22 | * _.isString(1); 23 | * // => false 24 | */ 25 | function isString(value) { 26 | return typeof value == 'string' || 27 | (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag); 28 | } 29 | 30 | module.exports = isString; 31 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isSymbol.js: -------------------------------------------------------------------------------- 1 | var baseGetTag = require('./_baseGetTag.js'), 2 | isObjectLike = require('./isObjectLike.js'); 3 | 4 | /** `Object#toString` result references. */ 5 | var symbolTag = '[object Symbol]'; 6 | 7 | /** 8 | * Checks if `value` is classified as a `Symbol` primitive or object. 9 | * 10 | * @static 11 | * @memberOf _ 12 | * @since 4.0.0 13 | * @category Lang 14 | * @param {*} value The value to check. 15 | * @returns {boolean} Returns `true` if `value` is a symbol, else `false`. 16 | * @example 17 | * 18 | * _.isSymbol(Symbol.iterator); 19 | * // => true 20 | * 21 | * _.isSymbol('abc'); 22 | * // => false 23 | */ 24 | function isSymbol(value) { 25 | return typeof value == 'symbol' || 26 | (isObjectLike(value) && baseGetTag(value) == symbolTag); 27 | } 28 | 29 | module.exports = isSymbol; 30 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isTypedArray.js: -------------------------------------------------------------------------------- 1 | var baseIsTypedArray = require('./_baseIsTypedArray.js'), 2 | baseUnary = require('./_baseUnary.js'), 3 | nodeUtil = require('./_nodeUtil.js'); 4 | 5 | /* Node.js helper references. */ 6 | var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray; 7 | 8 | /** 9 | * Checks if `value` is classified as a typed array. 10 | * 11 | * @static 12 | * @memberOf _ 13 | * @since 3.0.0 14 | * @category Lang 15 | * @param {*} value The value to check. 16 | * @returns {boolean} Returns `true` if `value` is a typed array, else `false`. 17 | * @example 18 | * 19 | * _.isTypedArray(new Uint8Array); 20 | * // => true 21 | * 22 | * _.isTypedArray([]); 23 | * // => false 24 | */ 25 | var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray; 26 | 27 | module.exports = isTypedArray; 28 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/isUndefined.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Checks if `value` is `undefined`. 3 | * 4 | * @static 5 | * @since 0.1.0 6 | * @memberOf _ 7 | * @category Lang 8 | * @param {*} value The value to check. 9 | * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`. 10 | * @example 11 | * 12 | * _.isUndefined(void 0); 13 | * // => true 14 | * 15 | * _.isUndefined(null); 16 | * // => false 17 | */ 18 | function isUndefined(value) { 19 | return value === undefined; 20 | } 21 | 22 | module.exports = isUndefined; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/keys.js: -------------------------------------------------------------------------------- 1 | var arrayLikeKeys = require('./_arrayLikeKeys.js'), 2 | baseKeys = require('./_baseKeys.js'), 3 | isArrayLike = require('./isArrayLike.js'); 4 | 5 | /** 6 | * Creates an array of the own enumerable property names of `object`. 7 | * 8 | * **Note:** Non-object values are coerced to objects. See the 9 | * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys) 10 | * for more details. 11 | * 12 | * @static 13 | * @since 0.1.0 14 | * @memberOf _ 15 | * @category Object 16 | * @param {Object} object The object to query. 17 | * @returns {Array} Returns the array of property names. 18 | * @example 19 | * 20 | * function Foo() { 21 | * this.a = 1; 22 | * this.b = 2; 23 | * } 24 | * 25 | * Foo.prototype.c = 3; 26 | * 27 | * _.keys(new Foo); 28 | * // => ['a', 'b'] (iteration order is not guaranteed) 29 | * 30 | * _.keys('hi'); 31 | * // => ['0', '1'] 32 | */ 33 | function keys(object) { 34 | return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object); 35 | } 36 | 37 | module.exports = keys; 38 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/last.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Gets the last element of `array`. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 0.1.0 7 | * @category Array 8 | * @param {Array} array The array to query. 9 | * @returns {*} Returns the last element of `array`. 10 | * @example 11 | * 12 | * _.last([1, 2, 3]); 13 | * // => 3 14 | */ 15 | function last(array) { 16 | var length = array == null ? 0 : array.length; 17 | return length ? array[length - 1] : undefined; 18 | } 19 | 20 | module.exports = last; 21 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/noop.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This method returns `undefined`. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 2.3.0 7 | * @category Util 8 | * @example 9 | * 10 | * _.times(2, _.noop); 11 | * // => [undefined, undefined] 12 | */ 13 | function noop() { 14 | // No operation performed. 15 | } 16 | 17 | module.exports = noop; 18 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/stubFalse.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This method returns `false`. 3 | * 4 | * @static 5 | * @memberOf _ 6 | * @since 4.13.0 7 | * @category Util 8 | * @returns {boolean} Returns `false`. 9 | * @example 10 | * 11 | * _.times(2, _.stubFalse); 12 | * // => [false, false] 13 | */ 14 | function stubFalse() { 15 | return false; 16 | } 17 | 18 | module.exports = stubFalse; 19 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/toFinite.js: -------------------------------------------------------------------------------- 1 | var toNumber = require('./toNumber.js'); 2 | 3 | /** Used as references for various `Number` constants. */ 4 | var INFINITY = 1 / 0, 5 | MAX_INTEGER = 1.7976931348623157e+308; 6 | 7 | /** 8 | * Converts `value` to a finite number. 9 | * 10 | * @static 11 | * @memberOf _ 12 | * @since 4.12.0 13 | * @category Lang 14 | * @param {*} value The value to convert. 15 | * @returns {number} Returns the converted number. 16 | * @example 17 | * 18 | * _.toFinite(3.2); 19 | * // => 3.2 20 | * 21 | * _.toFinite(Number.MIN_VALUE); 22 | * // => 5e-324 23 | * 24 | * _.toFinite(Infinity); 25 | * // => 1.7976931348623157e+308 26 | * 27 | * _.toFinite('3.2'); 28 | * // => 3.2 29 | */ 30 | function toFinite(value) { 31 | if (!value) { 32 | return value === 0 ? value : 0; 33 | } 34 | value = toNumber(value); 35 | if (value === INFINITY || value === -INFINITY) { 36 | var sign = (value < 0 ? -1 : 1); 37 | return sign * MAX_INTEGER; 38 | } 39 | return value === value ? value : 0; 40 | } 41 | 42 | module.exports = toFinite; 43 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/toInteger.js: -------------------------------------------------------------------------------- 1 | var toFinite = require('./toFinite.js'); 2 | 3 | /** 4 | * Converts `value` to an integer. 5 | * 6 | * **Note:** This method is loosely based on 7 | * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger). 8 | * 9 | * @static 10 | * @memberOf _ 11 | * @since 4.0.0 12 | * @category Lang 13 | * @param {*} value The value to convert. 14 | * @returns {number} Returns the converted integer. 15 | * @example 16 | * 17 | * _.toInteger(3.2); 18 | * // => 3 19 | * 20 | * _.toInteger(Number.MIN_VALUE); 21 | * // => 0 22 | * 23 | * _.toInteger(Infinity); 24 | * // => 1.7976931348623157e+308 25 | * 26 | * _.toInteger('3.2'); 27 | * // => 3 28 | */ 29 | function toInteger(value) { 30 | var result = toFinite(value), 31 | remainder = result % 1; 32 | 33 | return result === result ? (remainder ? result - remainder : result) : 0; 34 | } 35 | 36 | module.exports = toInteger; 37 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/toString.js: -------------------------------------------------------------------------------- 1 | var baseToString = require('./_baseToString.js'); 2 | 3 | /** 4 | * Converts `value` to a string. An empty string is returned for `null` 5 | * and `undefined` values. The sign of `-0` is preserved. 6 | * 7 | * @static 8 | * @memberOf _ 9 | * @since 4.0.0 10 | * @category Lang 11 | * @param {*} value The value to convert. 12 | * @returns {string} Returns the converted string. 13 | * @example 14 | * 15 | * _.toString(null); 16 | * // => '' 17 | * 18 | * _.toString(-0); 19 | * // => '-0' 20 | * 21 | * _.toString([1, 2, 3]); 22 | * // => '1,2,3' 23 | */ 24 | function toString(value) { 25 | return value == null ? '' : baseToString(value); 26 | } 27 | 28 | module.exports = toString; 29 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/upperFirst.js: -------------------------------------------------------------------------------- 1 | var createCaseFirst = require('./_createCaseFirst.js'); 2 | 3 | /** 4 | * Converts the first character of `string` to upper case. 5 | * 6 | * @static 7 | * @memberOf _ 8 | * @since 4.0.0 9 | * @category String 10 | * @param {string} [string=''] The string to convert. 11 | * @returns {string} Returns the converted string. 12 | * @example 13 | * 14 | * _.upperFirst('fred'); 15 | * // => 'Fred' 16 | * 17 | * _.upperFirst('FRED'); 18 | * // => 'FRED' 19 | */ 20 | var upperFirst = createCaseFirst('toUpperCase'); 21 | 22 | module.exports = upperFirst; 23 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/values.js: -------------------------------------------------------------------------------- 1 | var baseValues = require('./_baseValues.js'), 2 | keys = require('./keys.js'); 3 | 4 | /** 5 | * Creates an array of the own enumerable string keyed property values of `object`. 6 | * 7 | * **Note:** Non-object values are coerced to objects. 8 | * 9 | * @static 10 | * @since 0.1.0 11 | * @memberOf _ 12 | * @category Object 13 | * @param {Object} object The object to query. 14 | * @returns {Array} Returns the array of property values. 15 | * @example 16 | * 17 | * function Foo() { 18 | * this.a = 1; 19 | * this.b = 2; 20 | * } 21 | * 22 | * Foo.prototype.c = 3; 23 | * 24 | * _.values(new Foo); 25 | * // => [1, 2] (iteration order is not guaranteed) 26 | * 27 | * _.values('hi'); 28 | * // => ['h', 'i'] 29 | */ 30 | function values(object) { 31 | return object == null ? [] : baseValues(object, keys(object)); 32 | } 33 | 34 | module.exports = values; 35 | -------------------------------------------------------------------------------- /wechat/dist/npm/lodash/words.js: -------------------------------------------------------------------------------- 1 | var asciiWords = require('./_asciiWords.js'), 2 | hasUnicodeWord = require('./_hasUnicodeWord.js'), 3 | toString = require('./toString.js'), 4 | unicodeWords = require('./_unicodeWords.js'); 5 | 6 | /** 7 | * Splits `string` into an array of its words. 8 | * 9 | * @static 10 | * @memberOf _ 11 | * @since 3.0.0 12 | * @category String 13 | * @param {string} [string=''] The string to inspect. 14 | * @param {RegExp|string} [pattern] The pattern to match words. 15 | * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`. 16 | * @returns {Array} Returns the words of `string`. 17 | * @example 18 | * 19 | * _.words('fred, barney, & pebbles'); 20 | * // => ['fred', 'barney', 'pebbles'] 21 | * 22 | * _.words('fred, barney, & pebbles', /[^, ]+/g); 23 | * // => ['fred', 'barney', '&', 'pebbles'] 24 | */ 25 | function words(string, pattern, guard) { 26 | string = toString(string); 27 | pattern = guard ? undefined : pattern; 28 | 29 | if (pattern === undefined) { 30 | return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string); 31 | } 32 | return string.match(pattern) || []; 33 | } 34 | 35 | module.exports = words; 36 | -------------------------------------------------------------------------------- /wechat/dist/npm/reduce-reducers/dist/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function () { 8 | for (var _len = arguments.length, reducers = Array(_len), _key = 0; _key < _len; _key++) { 9 | reducers[_key] = arguments[_key]; 10 | } 11 | 12 | return function (previous, current) { 13 | return reducers.reduce(function (p, r) { 14 | return r(p, current); 15 | }, previous); 16 | }; 17 | }; 18 | 19 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/constants.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | var DEFAULT_NAMESPACE = exports.DEFAULT_NAMESPACE = '/'; 7 | var ACTION_TYPE_DELIMITER = exports.ACTION_TYPE_DELIMITER = '||'; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/createCurriedAction.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _lodash = require('./../../lodash.curry/index.js'); 8 | 9 | var _lodash2 = _interopRequireDefault(_lodash); 10 | 11 | var _createAction = require('./createAction.js'); 12 | 13 | var _createAction2 = _interopRequireDefault(_createAction); 14 | 15 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 16 | 17 | exports.default = function (type, payloadCreator) { 18 | return (0, _lodash2.default)((0, _createAction2.default)(type, payloadCreator), payloadCreator.length); 19 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/arrayToObject.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (array, callback) { 8 | return array.reduce(function (partialObject, element) { 9 | return callback(partialObject, element); 10 | }, {}); 11 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/camelCase.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _lodash = require('./../../../lodash.camelcase/index.js'); 8 | 9 | var _lodash2 = _interopRequireDefault(_lodash); 10 | 11 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 12 | 13 | var namespacer = '/'; 14 | 15 | exports.default = function (type) { 16 | return type.indexOf(namespacer) === -1 ? (0, _lodash2.default)(type) : type.split(namespacer).map(function (part) { 17 | return (0, _lodash2.default)(part); 18 | }).join(namespacer); 19 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/flattenActionMap.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _isPlainObject = require('./isPlainObject.js'); 8 | 9 | var _isPlainObject2 = _interopRequireDefault(_isPlainObject); 10 | 11 | var _flattenWhenNode = require('./flattenWhenNode.js'); 12 | 13 | var _flattenWhenNode2 = _interopRequireDefault(_flattenWhenNode); 14 | 15 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 16 | 17 | exports.default = (0, _flattenWhenNode2.default)(_isPlainObject2.default); -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/flattenReducerMap.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _isPlainObject = require('./isPlainObject.js'); 8 | 9 | var _isPlainObject2 = _interopRequireDefault(_isPlainObject); 10 | 11 | var _isMap = require('./isMap.js'); 12 | 13 | var _isMap2 = _interopRequireDefault(_isMap); 14 | 15 | var _hasGeneratorInterface = require('./hasGeneratorInterface.js'); 16 | 17 | var _hasGeneratorInterface2 = _interopRequireDefault(_hasGeneratorInterface); 18 | 19 | var _flattenWhenNode = require('./flattenWhenNode.js'); 20 | 21 | var _flattenWhenNode2 = _interopRequireDefault(_flattenWhenNode); 22 | 23 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 24 | 25 | exports.default = (0, _flattenWhenNode2.default)(function (node) { 26 | return ((0, _isPlainObject2.default)(node) || (0, _isMap2.default)(node)) && !(0, _hasGeneratorInterface2.default)(node); 27 | }); -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/getLastElement.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (array) { 8 | return array[array.length - 1]; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/hasGeneratorInterface.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = hasGeneratorInterface; 7 | 8 | var _ownKeys = require('./ownKeys.js'); 9 | 10 | var _ownKeys2 = _interopRequireDefault(_ownKeys); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | function hasGeneratorInterface(handler) { 15 | var keys = (0, _ownKeys2.default)(handler); 16 | var hasOnlyInterfaceNames = keys.every(function (ownKey) { 17 | return ownKey === 'next' || ownKey === 'throw'; 18 | }); 19 | return keys.length && keys.length <= 2 && hasOnlyInterfaceNames; 20 | } -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/identity.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isArray.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return Array.isArray(value); 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isEmpty.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value.length === 0; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isFunction.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return typeof value === 'function'; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isMap.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value instanceof Map; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isNil.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value === null || value === undefined; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isNull.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value === null; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isPlainObject.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; 8 | 9 | exports.default = function (value) { 10 | if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) !== 'object' || value === null) return false; 11 | 12 | var proto = value; 13 | while (Object.getPrototypeOf(proto) !== null) { 14 | proto = Object.getPrototypeOf(proto); 15 | } 16 | 17 | return Object.getPrototypeOf(value) === proto; 18 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isString.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return typeof value === 'string'; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isSymbol.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; 8 | 9 | exports.default = function (value) { 10 | return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'symbol' || (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && Object.prototype.toString.call(value) === '[object Symbol]'; 11 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/isUndefined.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value === undefined; 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/ownKeys.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = ownKeys; 7 | 8 | var _isMap = require('./isMap.js'); 9 | 10 | var _isMap2 = _interopRequireDefault(_isMap); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | function ownKeys(object) { 15 | if ((0, _isMap2.default)(object)) { 16 | return Array.from(object.keys()); 17 | } 18 | 19 | if (typeof Reflect !== 'undefined' && typeof Reflect.ownKeys === 'function') { 20 | return Reflect.ownKeys(object); 21 | } 22 | 23 | var keys = Object.getOwnPropertyNames(object); 24 | 25 | if (typeof Object.getOwnPropertySymbols === 'function') { 26 | keys = keys.concat(Object.getOwnPropertySymbols(object)); 27 | } 28 | 29 | return keys; 30 | } -------------------------------------------------------------------------------- /wechat/dist/npm/redux-actions/lib/utils/toString.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (value) { 8 | return value.toString(); 9 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/redux-promise/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | 5 | var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; 6 | 7 | exports['default'] = promiseMiddleware; 8 | 9 | var _fluxStandardAction = require('./../../flux-standard-action/lib/index.js'); 10 | 11 | function isPromise(val) { 12 | return val && typeof val.then === 'function'; 13 | } 14 | 15 | function promiseMiddleware(_ref) { 16 | var dispatch = _ref.dispatch; 17 | 18 | return function (next) { 19 | return function (action) { 20 | if (!_fluxStandardAction.isFSA(action)) { 21 | return isPromise(action) ? action.then(dispatch) : next(action); 22 | } 23 | 24 | return isPromise(action.payload) ? action.payload.then(function (result) { 25 | return dispatch(_extends({}, action, { payload: result })); 26 | }, function (error) { 27 | return dispatch(_extends({}, action, { payload: error, error: true })); 28 | }) : next(action); 29 | }; 30 | }; 31 | } 32 | 33 | module.exports = exports['default']; -------------------------------------------------------------------------------- /wechat/dist/npm/redux/lib/compose.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | exports.__esModule = true; 4 | exports["default"] = compose; 5 | /** 6 | * Composes single-argument functions from right to left. The rightmost 7 | * function can take multiple arguments as it provides the signature for 8 | * the resulting composite function. 9 | * 10 | * @param {...Function} funcs The functions to compose. 11 | * @returns {Function} A function obtained by composing the argument functions 12 | * from right to left. For example, compose(f, g, h) is identical to doing 13 | * (...args) => f(g(h(...args))). 14 | */ 15 | 16 | function compose() { 17 | for (var _len = arguments.length, funcs = Array(_len), _key = 0; _key < _len; _key++) { 18 | funcs[_key] = arguments[_key]; 19 | } 20 | 21 | if (funcs.length === 0) { 22 | return function (arg) { 23 | return arg; 24 | }; 25 | } 26 | 27 | if (funcs.length === 1) { 28 | return funcs[0]; 29 | } 30 | 31 | return funcs.reduce(function (a, b) { 32 | return function () { 33 | return a(b.apply(undefined, arguments)); 34 | }; 35 | }); 36 | } -------------------------------------------------------------------------------- /wechat/dist/npm/redux/lib/utils/warning.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | exports['default'] = warning; 5 | /** 6 | * Prints a warning in the console if it exists. 7 | * 8 | * @param {String} message The warning message. 9 | * @returns {void} 10 | */ 11 | function warning(message) { 12 | /* eslint-disable no-console */ 13 | if (typeof console !== 'undefined' && typeof console.error === 'function') { 14 | console.error(message); 15 | } 16 | /* eslint-enable no-console */ 17 | try { 18 | // This error was thrown as a convenience so that if you enable 19 | // "break on all exceptions" in your console, 20 | // it would pause the execution at this line. 21 | throw new Error(message); 22 | /* eslint-disable no-empty */ 23 | } catch (e) {} 24 | /* eslint-enable no-empty */ 25 | } -------------------------------------------------------------------------------- /wechat/dist/npm/symbol-observable/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _ponyfill = require('./ponyfill.js'); 8 | 9 | var _ponyfill2 = _interopRequireDefault(_ponyfill); 10 | 11 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } 12 | 13 | var root; /* global window */ 14 | 15 | 16 | if (typeof self !== 'undefined') { 17 | root = self; 18 | } else if (typeof window !== 'undefined') { 19 | root = window; 20 | } else if (typeof global !== 'undefined') { 21 | root = global; 22 | } else if (typeof module !== 'undefined') { 23 | root = module; 24 | } else { 25 | root = Function('return this')(); 26 | } 27 | 28 | var result = (0, _ponyfill2['default'])(root); 29 | exports['default'] = result; -------------------------------------------------------------------------------- /wechat/dist/npm/symbol-observable/lib/ponyfill.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports['default'] = symbolObservablePonyfill; 7 | function symbolObservablePonyfill(root) { 8 | var result; 9 | var _Symbol = root.Symbol; 10 | 11 | if (typeof _Symbol === 'function') { 12 | if (_Symbol.observable) { 13 | result = _Symbol.observable; 14 | } else { 15 | result = _Symbol('observable'); 16 | _Symbol.observable = result; 17 | } 18 | } else { 19 | result = '@@observable'; 20 | } 21 | 22 | return result; 23 | }; -------------------------------------------------------------------------------- /wechat/dist/npm/wepy-async-function/global.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Tencent is pleased to support the open source community by making WePY available. 3 | * Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | * 5 | * Licensed under the MIT License (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at 6 | * http://opensource.org/licenses/MIT 7 | * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 8 | */ 9 | 10 | 11 | var global = module.exports = typeof window !== 'undefined' && window.Math === Math 12 | ? window : typeof self !== 'undefined' && self.Math === Math ? self : this; 13 | -------------------------------------------------------------------------------- /wechat/dist/npm/wepy-async-function/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Tencent is pleased to support the open source community by making WePY available. 3 | * Copyright (C) 2017 THL A29 Limited, a Tencent company. All rights reserved. 4 | * 5 | * Licensed under the MIT License (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at 6 | * http://opensource.org/licenses/MIT 7 | * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 8 | */ 9 | 10 | 11 | var g = require('./global.js'); 12 | 13 | if (!g.Promise) { 14 | // IOS 10.0.1 may cause IOS crash. 15 | g.Promise = require('./../promise-polyfill/promise.js'); 16 | } 17 | if (!g.regeneratorRuntime) { 18 | g.regeneratorRuntime = require('./../regenerator-runtime/runtime.js'); 19 | } 20 | -------------------------------------------------------------------------------- /wechat/dist/npm/wepy-com-toast/toast.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | {{title}} 12 | 13 | 14 | -------------------------------------------------------------------------------- /wechat/dist/npm/wepy-com-toast/toast.wxss: -------------------------------------------------------------------------------- 1 | 2 | .wetoast { 3 | display: none; 4 | } 5 | .wetoast_show { 6 | display: block; 7 | } 8 | .wetoast__mask { 9 | position: fixed; 10 | z-index: 1000; 11 | top: 0; 12 | right: 0; 13 | left: 0; 14 | bottom: 0; 15 | } 16 | .wetoast__bd { 17 | opacity: 0; 18 | display: flex; 19 | flex-direction: column; 20 | position: fixed; 21 | z-index: 5000; 22 | min-width: 8.4em; 23 | min-height: 8.4em; 24 | max-width: 70%; 25 | top: 140px; 26 | left: 50%; 27 | padding: 15px; 28 | box-sizing: border-box; 29 | transform: translateX(-50%); 30 | background: rgba(40, 40, 40, 0.75); 31 | border-radius: 5px; 32 | color: #FFFFFF; 33 | word-wrap: break-word; 34 | word-break: break-all; 35 | align-items: center; 36 | justify-content: space-around; 37 | } 38 | .wetoast__bd__img { 39 | margin-top: 3px; 40 | } 41 | .wetoast__bd__img_desc { 42 | width: 55px; 43 | height: 55px; 44 | vertical-align: middle; 45 | } 46 | .wetoast__bd__title { 47 | margin: 3px 0; 48 | font-size: 1.2em; 49 | } 50 | -------------------------------------------------------------------------------- /wechat/dist/npm/wepy-redux/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | exports.__esModule = true; 4 | exports.mapActions = exports.mapState = exports.getStore = exports.setStore = exports.connect = undefined; 5 | 6 | var _connect = require('./connect/index.js'); 7 | 8 | var _connect2 = _interopRequireDefault(_connect); 9 | 10 | var _store = require('./store.js'); 11 | 12 | var _helpers = require('./helpers/index.js'); 13 | 14 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 15 | 16 | exports.connect = _connect2.default; 17 | exports.setStore = _store.setStore; 18 | exports.getStore = _store.getStore; 19 | exports.mapState = _helpers.mapState; 20 | exports.mapActions = _helpers.mapActions; -------------------------------------------------------------------------------- /wechat/dist/npm/wepy-redux/lib/store.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | exports.__esModule = true; 4 | exports.getStore = getStore; 5 | exports.setStore = setStore; 6 | 7 | 8 | var store = null; 9 | 10 | function getStore() { 11 | return store; 12 | } 13 | 14 | function setStore(s) { 15 | store = s; 16 | } -------------------------------------------------------------------------------- /wechat/dist/npm/wepy/lib/native.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = {}; 7 | //# sourceMappingURL=native.js.map -------------------------------------------------------------------------------- /wechat/dist/pages/address.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"新增收货地址"} -------------------------------------------------------------------------------- /wechat/dist/pages/address.wxss: -------------------------------------------------------------------------------- 1 | button { 2 | background-color: #ff8eb3; 3 | color: #fff; 4 | width: 80%; 5 | margin-top: 50px; 6 | } 7 | input { 8 | text-align: right; 9 | } 10 | -------------------------------------------------------------------------------- /wechat/dist/pages/detail.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"详情"} -------------------------------------------------------------------------------- /wechat/dist/pages/detail.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/screen.wxss"; 2 | @import "./../components/swiper.wxss"; 3 | .detail-cover { 4 | display: block; 5 | margin: 40rpx auto 0; 6 | } 7 | .detail-info, 8 | .detail-desc { 9 | color: #aaa; 10 | font-size: 14px; 11 | line-height: 1; 12 | padding: 0.5em 0; 13 | overflow: hidden; 14 | text-align: center; 15 | } 16 | .detail-info, 17 | .detail-text { 18 | text-align: left; 19 | line-height: 1.5; 20 | } 21 | .tag { 22 | display: inline-block; 23 | padding: 0 .6em; 24 | border-radius: 1em; 25 | margin-right: .5em; 26 | font-size: 60%; 27 | color: #9B9B9B; 28 | background: #F1F1F1; 29 | } 30 | .screen-wrapper { 31 | position: fixed; 32 | left: 0; 33 | right: 0; 34 | } 35 | .btn-flex-1 { 36 | padding: 0; 37 | width: 3.5em; 38 | line-height: 1.6; 39 | overflow: hidden; 40 | } 41 | .btn-flex-full { 42 | flex: 1 1 auto; 43 | } 44 | .btn-text-bottom { 45 | line-height: 1; 46 | color: #777; 47 | } 48 | -------------------------------------------------------------------------------- /wechat/dist/pages/img.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"test"} -------------------------------------------------------------------------------- /wechat/dist/pages/img.wxss: -------------------------------------------------------------------------------- 1 | @import "./../npm/wepy-com-toast/toast.wxss"; 2 | @import "./../components/group.wxss"; 3 | @import "./../components/wepy-list.wxss"; 4 | @import "./../components/counter.wxss"; 5 | @import "./../components/panel.wxss"; 6 | .userinfo { 7 | display: flex; 8 | flex-direction: column; 9 | align-items: center; 10 | } 11 | .userinfo-avatar { 12 | width: 80rpx; 13 | height: 80rpx; 14 | border-radius: 50%; 15 | } 16 | .userinfo-nickname { 17 | color: #aaa; 18 | } 19 | -------------------------------------------------------------------------------- /wechat/dist/pages/index.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"test"} -------------------------------------------------------------------------------- /wechat/dist/pages/index.wxss: -------------------------------------------------------------------------------- 1 | @import "./../npm/wepy-com-toast/toast.wxss"; 2 | @import "./../components/group.wxss"; 3 | @import "./../components/wepy-list.wxss"; 4 | @import "./../components/counter.wxss"; 5 | @import "./../components/panel.wxss"; 6 | .userinfo { 7 | display: flex; 8 | flex-direction: column; 9 | align-items: center; 10 | } 11 | .userinfo-avatar { 12 | width: 80rpx; 13 | height: 80rpx; 14 | border-radius: 50%; 15 | } 16 | .userinfo-nickname { 17 | color: #aaa; 18 | } 19 | -------------------------------------------------------------------------------- /wechat/dist/pages/old.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"订餐服务"} -------------------------------------------------------------------------------- /wechat/dist/pages/old.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/ads.wxss"; 2 | @import "./../components/searchbar.wxss"; 3 | @import "./../components/imageList.wxss"; 4 | @import "./../components/side_tab.wxss"; 5 | .main-box { 6 | display: flex; 7 | width: 100%; 8 | position: absolute; 9 | top: 80px; 10 | bottom: 0px; 11 | } 12 | .main-box .goods-box { 13 | flex: 1; 14 | height: 100%; 15 | } 16 | -------------------------------------------------------------------------------- /wechat/dist/pages/order.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"订餐服务"} -------------------------------------------------------------------------------- /wechat/dist/pages/order.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/icon.wxss"; 2 | @import "./../components/cart.wxss"; 3 | @import "./../components/searchbar.wxss"; 4 | @import "./../components/foodList.wxss"; 5 | @import "./../components/side_tab.wxss"; 6 | .weui-search-bar { 7 | background-color: #fb7299 !important; 8 | } 9 | .sort { 10 | height: 40px; 11 | background-color: #fff; 12 | } 13 | .sort .sort-item { 14 | display: inline-block; 15 | width: 50%; 16 | text-align: center; 17 | font-size: 14px; 18 | line-height: 26px; 19 | margin-top: 7px; 20 | box-sizing: border-box; 21 | } 22 | .sort .sort-item:first-child { 23 | border-right: 1px solid #fb7299; 24 | } 25 | .main-box { 26 | display: flex; 27 | width: 100%; 28 | position: absolute; 29 | top: 95px; 30 | bottom: 50px; 31 | } 32 | .main-box .goods-box { 33 | flex: 1; 34 | height: 100%; 35 | } 36 | .selectSort { 37 | color: #fb7299; 38 | } 39 | -------------------------------------------------------------------------------- /wechat/dist/pages/search.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"搜索"} -------------------------------------------------------------------------------- /wechat/dist/pages/search.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/animeList.wxss"; 2 | @import "./../components/searchbar.wxss"; 3 | .userinfo { 4 | display: flex; 5 | flex-direction: column; 6 | align-items: center; 7 | } 8 | -------------------------------------------------------------------------------- /wechat/dist/pages/searchTag.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"搜索"} -------------------------------------------------------------------------------- /wechat/dist/pages/searchTag.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | paanel 30 | 31 | 32 | -------------------------------------------------------------------------------- /wechat/dist/pages/searchTag.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/pannelTag.wxss"; 2 | @import "./../components/animeList.wxss"; 3 | @import "./../components/searchbar.wxss"; 4 | .userinfo { 5 | display: flex; 6 | flex-direction: column; 7 | align-items: center; 8 | } 9 | -------------------------------------------------------------------------------- /wechat/dist/pages/status.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"订单成功"} -------------------------------------------------------------------------------- /wechat/dist/pages/status.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 订餐成功 6 | 7 | 8 | 9 | 付款金额 10 | {{sumPrice}} 11 | 12 | 13 | 14 | 收货人 15 | {{message.name}} 16 | 17 | 18 | 送货地址 19 | {{message.address}} 20 | 21 | 22 | 预计送餐时间 23 | {{time}} 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /wechat/dist/pages/status.wxss: -------------------------------------------------------------------------------- 1 | .status._7bfdeea { 2 | text-align: center; 3 | margin: 30px 0; 4 | } 5 | .status view._7bfdeea { 6 | margin-top: 10px; 7 | } 8 | .content-item._7bfdeea { 9 | padding: 0 15px; 10 | } 11 | .hr._7bfdeea { 12 | border-bottom: 1px solid #ccc; 13 | margin: 0 15px; 14 | margin-bottom: 20px; 15 | } 16 | .content-item .content-item-name._7bfdeea { 17 | color: #999; 18 | } 19 | .content-item._7bfdeea:first-child { 20 | margin-bottom: 20px; 21 | } 22 | .content-item .content-item-detail._7bfdeea { 23 | float: right; 24 | } 25 | button._7bfdeea { 26 | background-color: #ff8eb3; 27 | color: #fff; 28 | width: 80%; 29 | margin-top: 50px; 30 | } 31 | -------------------------------------------------------------------------------- /wechat/dist/pages/submit.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"提交订单"} -------------------------------------------------------------------------------- /wechat/dist/pages/top.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"追番推荐"} -------------------------------------------------------------------------------- /wechat/dist/pages/top.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/animeList.wxss"; 2 | @import "./../components/ads.wxss"; 3 | @import "./../components/searchbar.wxss"; 4 | @import "./../components/swiper.wxss"; 5 | @import "./../npm/wepy-com-toast/toast.wxss"; 6 | @import "./../components/group.wxss"; 7 | @import "./../components/wepy-list.wxss"; 8 | @import "./../components/counter.wxss"; 9 | @import "./../components/panel.wxss"; 10 | .userinfo { 11 | display: flex; 12 | flex-direction: column; 13 | align-items: center; 14 | } 15 | .userinfo-avatar { 16 | width: 80rpx; 17 | height: 80rpx; 18 | border-radius: 50%; 19 | } 20 | .userinfo-nickname { 21 | color: #aaa; 22 | } 23 | -------------------------------------------------------------------------------- /wechat/dist/pages/user.json: -------------------------------------------------------------------------------- 1 | {"navigationBarTitleText":"朕的寝宫"} -------------------------------------------------------------------------------- /wechat/dist/pages/user.wxss: -------------------------------------------------------------------------------- 1 | @import "./../components/animeList.wxss"; 2 | .page-user .userinfo { 3 | padding: 20rpx 0; 4 | } 5 | .page-user .userinfo-avatar { 6 | float: left; 7 | width: 100rpx; 8 | height: 100rpx; 9 | border-radius: 50%; 10 | } 11 | .page-user .userinfo-info { 12 | float: left; 13 | line-height: 1; 14 | padding: 8rpx 0; 15 | margin-left: 24rpx; 16 | } 17 | .page-user .userinfo-nickname { 18 | font-size: 36.26666667rpx; 19 | margin-bottom: 16rpx; 20 | } 21 | .page-user .userinfo-status { 22 | color: #999; 23 | font-size: 31.73333333rpx; 24 | } 25 | -------------------------------------------------------------------------------- /wechat/dist/project.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "项目配置文件。", 3 | "setting": { 4 | "urlCheck": false, 5 | "es6": false, 6 | "postcss": false, 7 | "minified": false, 8 | "newFeature": true 9 | }, 10 | "compileType": "miniprogram", 11 | "libVersion": "1.9.94", 12 | "appid": "wxba1d37a4858cdb44", 13 | "projectname": "%E8%AE%A2%E9%A4%90%E5%B0%8F%E7%A8%8B%E5%BA%8F", 14 | "isGameTourist": false, 15 | "condition": { 16 | "search": { 17 | "current": -1, 18 | "list": [] 19 | }, 20 | "conversation": { 21 | "current": -1, 22 | "list": [] 23 | }, 24 | "game": { 25 | "currentL": -1, 26 | "list": [] 27 | }, 28 | "miniprogram": { 29 | "current": -1, 30 | "list": [] 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /wechat/dist/store/actions/counter.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.asyncInc = undefined; 7 | 8 | var _counter = require('./../types/counter.js'); 9 | 10 | var _reduxActions = require('./../../npm/redux-actions/lib/index.js'); 11 | 12 | var asyncInc = exports.asyncInc = (0, _reduxActions.createAction)(_counter.ASYNC_INCREMENT, function () { 13 | return new Promise(function (resolve) { 14 | setTimeout(function () { 15 | resolve(1); 16 | }, 1000); 17 | }); 18 | }); 19 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvdW50ZXIuanMiXSwibmFtZXMiOlsiYXN5bmNJbmMiLCJBU1lOQ19JTkNSRU1FTlQiLCJQcm9taXNlIiwic2V0VGltZW91dCIsInJlc29sdmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFTyxJQUFNQSw4QkFBVyxnQ0FBYUMsd0JBQWIsRUFBOEIsWUFBTTtBQUMxRCxTQUFPLElBQUlDLE9BQUosQ0FBWSxtQkFBVztBQUM1QkMsZUFBVyxZQUFNO0FBQ2ZDLGNBQVEsQ0FBUjtBQUNELEtBRkQsRUFFRyxJQUZIO0FBR0QsR0FKTSxDQUFQO0FBS0QsQ0FOdUIsQ0FBakIiLCJmaWxlIjoiY291bnRlci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFTWU5DX0lOQ1JFTUVOVCB9IGZyb20gJy4uL3R5cGVzL2NvdW50ZXInXG5pbXBvcnQgeyBjcmVhdGVBY3Rpb24gfSBmcm9tICdyZWR1eC1hY3Rpb25zJ1xuXG5leHBvcnQgY29uc3QgYXN5bmNJbmMgPSBjcmVhdGVBY3Rpb24oQVNZTkNfSU5DUkVNRU5ULCAoKSA9PiB7XG4gIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHJlc29sdmUoMSlcbiAgICB9LCAxMDAwKVxuICB9KVxufSkiXX0= -------------------------------------------------------------------------------- /wechat/dist/store/actions/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _counter = require('./counter.js'); 8 | 9 | Object.keys(_counter).forEach(function (key) { 10 | if (key === "default" || key === "__esModule") return; 11 | Object.defineProperty(exports, key, { 12 | enumerable: true, 13 | get: function get() { 14 | return _counter[key]; 15 | } 16 | }); 17 | }); 18 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb3VudGVyJyJdfQ== -------------------------------------------------------------------------------- /wechat/dist/store/reducers/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _redux = require('./../../npm/redux/lib/index.js'); 8 | 9 | var _counter = require('./counter.js'); 10 | 11 | var _counter2 = _interopRequireDefault(_counter); 12 | 13 | var _user = require('./../reduxs/user.redux.js'); 14 | 15 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 16 | 17 | exports.default = (0, _redux.combineReducers)({ 18 | counter: _counter2.default 19 | }); 20 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbImNvdW50ZXIiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOzs7O0FBQ0E7Ozs7a0JBRWUsNEJBQWdCO0FBQzdCQTtBQUQ2QixDQUFoQixDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tYmluZVJlZHVjZXJzIH0gZnJvbSAncmVkdXgnXG5pbXBvcnQgY291bnRlciBmcm9tICcuL2NvdW50ZXInXG5pbXBvcnQge3VzZXJSZWR1Y2VyfSBmcm9tICcuLi9yZWR1eHMvdXNlci5yZWR1eCdcblxuZXhwb3J0IGRlZmF1bHQgY29tYmluZVJlZHVjZXJzKHtcbiAgY291bnRlclxufSkiXX0= -------------------------------------------------------------------------------- /wechat/dist/store/reducers/user.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ1c2VyLmpzIiwic291cmNlc0NvbnRlbnQiOltdfQ== -------------------------------------------------------------------------------- /wechat/dist/store/reducers/user.redux.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVzZXIucmVkdXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJ1c2VyLnJlZHV4LmpzIiwic291cmNlc0NvbnRlbnQiOltdfQ== -------------------------------------------------------------------------------- /wechat/dist/store/types/counter.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | var INCREMENT = exports.INCREMENT = 'INCREMENT'; 7 | 8 | var DECREMENT = exports.DECREMENT = 'DECREMENT'; 9 | 10 | var ASYNC_INCREMENT = exports.ASYNC_INCREMENT = 'ASYNC_INCREMENT'; 11 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvdW50ZXIuanMiXSwibmFtZXMiOlsiSU5DUkVNRU5UIiwiREVDUkVNRU5UIiwiQVNZTkNfSU5DUkVNRU5UIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFPLElBQU1BLGdDQUFZLFdBQWxCOztBQUVBLElBQU1DLGdDQUFZLFdBQWxCOztBQUVBLElBQU1DLDRDQUFrQixpQkFBeEIiLCJmaWxlIjoiY291bnRlci5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBJTkNSRU1FTlQgPSAnSU5DUkVNRU5UJ1xuXG5leHBvcnQgY29uc3QgREVDUkVNRU5UID0gJ0RFQ1JFTUVOVCdcblxuZXhwb3J0IGNvbnN0IEFTWU5DX0lOQ1JFTUVOVCA9ICdBU1lOQ19JTkNSRU1FTlQnIl19 -------------------------------------------------------------------------------- /wechat/dist/store/types/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _counter = require('./counter.js'); 8 | 9 | Object.keys(_counter).forEach(function (key) { 10 | if (key === "default" || key === "__esModule") return; 11 | Object.defineProperty(exports, key, { 12 | enumerable: true, 13 | get: function get() { 14 | return _counter[key]; 15 | } 16 | }); 17 | }); 18 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb3VudGVyJyJdfQ== -------------------------------------------------------------------------------- /wechat/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "demo2-wepy", 3 | "version": "0.0.2", 4 | "description": "A WePY project", 5 | "main": "dist/app.js", 6 | "scripts": { 7 | "dev": "wepy build --watch", 8 | "build": "cross-env NODE_ENV=production wepy build --no-cache", 9 | "dev:web": "wepy build --output web", 10 | "clean": "find ./dist -maxdepth 1 -not -name 'project.config.json' -not -name 'dist' | xargs rm -rf", 11 | "test": "echo \"Error: no test specified\" && exit 1" 12 | }, 13 | "wepy": { 14 | "module-a": false, 15 | "./src/components/list": "./src/components/wepy-list.wpy" 16 | }, 17 | "author": "calamus0427 <1211994507@qq.com>", 18 | "license": "MIT", 19 | "dependencies": { 20 | "redux": "^3.7.2", 21 | "redux-actions": "^2.2.1", 22 | "redux-promise": "^0.5.3", 23 | "wepy": "^1.6.0", 24 | "wepy-async-function": "^1.4.6", 25 | "wepy-com-toast": "^1.0.2", 26 | "wepy-redux": "^1.5.3" 27 | }, 28 | "devDependencies": { 29 | "babel-eslint": "^7.2.1", 30 | "babel-plugin-transform-class-properties": "^6.24.1", 31 | "babel-plugin-transform-decorators-legacy": "^1.3.4", 32 | "babel-plugin-transform-export-extensions": "^6.22.0", 33 | "babel-plugin-transform-object-rest-spread": "^6.26.0", 34 | "babel-preset-env": "^1.6.1", 35 | "cross-env": "^5.1.3", 36 | "wepy-compiler-babel": "^1.5.1", 37 | "wepy-compiler-less": "^1.3.10" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /wechat/project.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "A WePY project", 3 | "setting": { 4 | "urlCheck": false, 5 | "es6": false, 6 | "postcss": false, 7 | "minified": false, 8 | "newFeature": true 9 | }, 10 | "compileType": "miniprogram", 11 | "appid": "wx4b2e83f35cd8e203", 12 | "projectname": "demo2-wepy", 13 | "miniprogramRoot": "./dist", 14 | "condition": {} 15 | } -------------------------------------------------------------------------------- /wechat/src/components/stars.wpy: -------------------------------------------------------------------------------- 1 | 10 | 20 | 36 | -------------------------------------------------------------------------------- /wechat/src/config.js: -------------------------------------------------------------------------------- 1 | /* ======================================================== 2 | 小程序配置文件 3 | ======================================================== */ 4 | 5 | // 域名 6 | // var host = 'http://127.0.0.1:3000'; 7 | var host = 'http://yapi.demo.qunar.com/mock/16780'; 8 | 9 | // 下面的地址配合云端 Demo 工作 10 | export const service = { 11 | // 列表接口 GET 12 | list: `${host}/bookmall/list`, 13 | 14 | // 筛选页接口 GET 15 | tags: `${host}/bookmall/tags`, 16 | 17 | // 假装有收藏接口 POST 18 | collect: `${host}/bookmall/list`, 19 | 20 | // 主域 21 | host 22 | } 23 | 24 | export default { 25 | service 26 | } 27 | -------------------------------------------------------------------------------- /wechat/src/images/font_756788_45k0lfetmni/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/font_756788_45k0lfetmni/iconfont.eot -------------------------------------------------------------------------------- /wechat/src/images/font_756788_45k0lfetmni/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/font_756788_45k0lfetmni/iconfont.ttf -------------------------------------------------------------------------------- /wechat/src/images/font_756788_45k0lfetmni/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/font_756788_45k0lfetmni/iconfont.woff -------------------------------------------------------------------------------- /wechat/src/images/icon/add.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/add.jpg -------------------------------------------------------------------------------- /wechat/src/images/icon/addAfter.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/addAfter.jpg -------------------------------------------------------------------------------- /wechat/src/images/icon/addBefore.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/addBefore.jpg -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-avatar@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-avatar@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-cancel@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-cancel@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-eye-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-eye-active@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-eye@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-eye@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-location@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-location@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-star-active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-star-active@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/icon-star@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/icon-star@2x.png -------------------------------------------------------------------------------- /wechat/src/images/icon/menhera.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/menhera.jpg -------------------------------------------------------------------------------- /wechat/src/images/icon/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/calamus0427/wechat-order/5ca1427310f241257879a29619148d8a339b2e9e/wechat/src/images/icon/search.png -------------------------------------------------------------------------------- /wechat/src/index.template.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 转 WEB DEMO 11 | 14 | 15 | 16 |
17 | 18 | 19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /wechat/src/mixins/data.js: -------------------------------------------------------------------------------- 1 | import wepy from 'wepy' 2 | 3 | export default class dataMixin extends wepy.mixin { 4 | data = { 5 | mixin: 'This is mixin data.' 6 | } 7 | methods = { 8 | tap() { 9 | this.mixin = 'mixin data was changed' 10 | console.log('mixin method tap') 11 | } 12 | } 13 | 14 | onShow() { 15 | console.log('mixin onShow') 16 | } 17 | 18 | onLoad() { 19 | console.log('mixin onLoad') 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /wechat/src/mixins/test.js: -------------------------------------------------------------------------------- 1 | import wepy from 'wepy' 2 | 3 | export default class testMixin extends wepy.mixin { 4 | data = { 5 | mixin: 'This is mixin data.' 6 | } 7 | methods = { 8 | tap () { 9 | this.mixin = 'mixin data was changed' 10 | console.log('mixin method tap') 11 | } 12 | } 13 | 14 | onShow() { 15 | console.log('mixin onShow') 16 | } 17 | 18 | onLoad() { 19 | console.log('mixin onLoad') 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /wechat/src/store/actions/counter.js: -------------------------------------------------------------------------------- 1 | import { ASYNC_INCREMENT } from '../types/counter' 2 | import { createAction } from 'redux-actions' 3 | 4 | export const asyncInc = createAction(ASYNC_INCREMENT, () => { 5 | return new Promise(resolve => { 6 | setTimeout(() => { 7 | resolve(1) 8 | }, 1000) 9 | }) 10 | }) -------------------------------------------------------------------------------- /wechat/src/store/actions/index.js: -------------------------------------------------------------------------------- 1 | export * from './counter' -------------------------------------------------------------------------------- /wechat/src/store/index.js: -------------------------------------------------------------------------------- 1 | import { createStore, applyMiddleware } from 'redux' 2 | import promiseMiddleware from 'redux-promise' 3 | import rootReducer from './reducers' 4 | 5 | export default function configStore () { 6 | const store = createStore(rootReducer, applyMiddleware(promiseMiddleware)) 7 | return store 8 | } -------------------------------------------------------------------------------- /wechat/src/store/reducers/counter.js: -------------------------------------------------------------------------------- 1 | import { handleActions } from 'redux-actions' 2 | import { INCREMENT, DECREMENT, ASYNC_INCREMENT } from '../types/counter' 3 | 4 | export default handleActions({ 5 | [INCREMENT] (state) { 6 | return { 7 | ...state, 8 | num: state.num + 1 9 | } 10 | }, 11 | [DECREMENT] (state) { 12 | return { 13 | ...state, 14 | num: state.num - 1 15 | } 16 | }, 17 | [ASYNC_INCREMENT] (state, action) { 18 | return { 19 | ...state, 20 | asyncNum: state.asyncNum + action.payload 21 | } 22 | } 23 | }, { 24 | num: 0, 25 | asyncNum: 0 26 | }) -------------------------------------------------------------------------------- /wechat/src/store/reducers/index.js: -------------------------------------------------------------------------------- 1 | import { combineReducers } from 'redux' 2 | import counter from './counter' 3 | import {userReducer} from '../reduxs/user.redux' 4 | 5 | export default combineReducers({ 6 | counter 7 | }) -------------------------------------------------------------------------------- /wechat/src/store/reduxs/user.redux.js: -------------------------------------------------------------------------------- 1 | const AUTH_SUCCESS = 'LOGOUT_SUCCESS' // redux type 2 | 3 | const initState = { // 默认仓库数据 4 | isAuth: false, 5 | name: '' // 用户名字 6 | 7 | } 8 | 9 | export function userReducer(state = initState, action) { // userdeux 规则 10 | switch (action.type) { 11 | case AUTH_SUCCESS: 12 | return {...initState, isAuth: true, ...action.payload} 13 | default: 14 | return state 15 | } 16 | } 17 | 18 | export function authSuccess(data) { // redux action 19 | return { 20 | type: AUTH_SUCCESS, 21 | payload: data 22 | } 23 | } -------------------------------------------------------------------------------- /wechat/src/store/types/counter.js: -------------------------------------------------------------------------------- 1 | export const INCREMENT = 'INCREMENT' 2 | 3 | export const DECREMENT = 'DECREMENT' 4 | 5 | export const ASYNC_INCREMENT = 'ASYNC_INCREMENT' -------------------------------------------------------------------------------- /wechat/src/store/types/index.js: -------------------------------------------------------------------------------- 1 | export * from './counter' --------------------------------------------------------------------------------