From f7364c799897f6ac140fb9d835373b509f081bc7 Mon Sep 17 00:00:00 2001 From: YeMingfei666 <1619116647@qq.com> Date: Mon, 6 Jan 2025 10:03:56 +0800 Subject: [PATCH] first --- .gitignore | 1 + App.vue | 18 + index.html | 20 + main.js | 23 + manifest.json | 138 + package.json | 7 + pages.json | 26 + pages/index/index.vue | 8 + static/logo.png | Bin 0 -> 4023 bytes template.html | 29 + uni.promisify.adaptor.js | 13 + uni.scss | 77 + .../dist/cache/.vite/deps/_metadata.json | 15 + unpackage/dist/cache/.vite/deps/package.json | 3 + unpackage/dist/cache/.vite/deps/uview-plus.js | 3687 +++++++++++++++++ .../dist/cache/.vite/deps/uview-plus.js.map | 7 + unpackage/res/icons/1024x1024.png | Bin 0 -> 141451 bytes unpackage/res/icons/120x120.png | Bin 0 -> 5429 bytes unpackage/res/icons/144x144.png | Bin 0 -> 6868 bytes unpackage/res/icons/152x152.png | Bin 0 -> 7265 bytes unpackage/res/icons/167x167.png | Bin 0 -> 8330 bytes unpackage/res/icons/180x180.png | Bin 0 -> 9364 bytes unpackage/res/icons/192x192.png | Bin 0 -> 10307 bytes unpackage/res/icons/20x20.png | Bin 0 -> 732 bytes unpackage/res/icons/29x29.png | Bin 0 -> 1073 bytes unpackage/res/icons/40x40.png | Bin 0 -> 1502 bytes unpackage/res/icons/58x58.png | Bin 0 -> 2289 bytes unpackage/res/icons/60x60.png | Bin 0 -> 2400 bytes unpackage/res/icons/72x72.png | Bin 0 -> 2996 bytes unpackage/res/icons/76x76.png | Bin 0 -> 3176 bytes unpackage/res/icons/80x80.png | Bin 0 -> 3331 bytes unpackage/res/icons/87x87.png | Bin 0 -> 3717 bytes unpackage/res/icons/96x96.png | Bin 0 -> 4196 bytes 33 files changed, 4072 insertions(+) create mode 100644 .gitignore create mode 100644 App.vue create mode 100644 index.html create mode 100644 main.js create mode 100644 manifest.json create mode 100644 package.json create mode 100644 pages.json create mode 100644 pages/index/index.vue create mode 100644 static/logo.png create mode 100644 template.html create mode 100644 uni.promisify.adaptor.js create mode 100644 uni.scss create mode 100644 unpackage/dist/cache/.vite/deps/_metadata.json create mode 100644 unpackage/dist/cache/.vite/deps/package.json create mode 100644 unpackage/dist/cache/.vite/deps/uview-plus.js create mode 100644 unpackage/dist/cache/.vite/deps/uview-plus.js.map create mode 100644 unpackage/res/icons/1024x1024.png create mode 100644 unpackage/res/icons/120x120.png create mode 100644 unpackage/res/icons/144x144.png create mode 100644 unpackage/res/icons/152x152.png create mode 100644 unpackage/res/icons/167x167.png create mode 100644 unpackage/res/icons/180x180.png create mode 100644 unpackage/res/icons/192x192.png create mode 100644 unpackage/res/icons/20x20.png create mode 100644 unpackage/res/icons/29x29.png create mode 100644 unpackage/res/icons/40x40.png create mode 100644 unpackage/res/icons/58x58.png create mode 100644 unpackage/res/icons/60x60.png create mode 100644 unpackage/res/icons/72x72.png create mode 100644 unpackage/res/icons/76x76.png create mode 100644 unpackage/res/icons/80x80.png create mode 100644 unpackage/res/icons/87x87.png create mode 100644 unpackage/res/icons/96x96.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2ccbe46 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/node_modules/ diff --git a/App.vue b/App.vue new file mode 100644 index 0000000..13aae2b --- /dev/null +++ b/App.vue @@ -0,0 +1,18 @@ + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..c3ff205 --- /dev/null +++ b/index.html @@ -0,0 +1,20 @@ + + + + + + + + + + +
+ + + diff --git a/main.js b/main.js new file mode 100644 index 0000000..0a1e17b --- /dev/null +++ b/main.js @@ -0,0 +1,23 @@ +import App from './App' +import uviewPlus from 'uview-plus' +// #ifndef VUE3 +import Vue from 'vue' +import './uni.promisify.adaptor' +Vue.config.productionTip = false +App.mpType = 'app' +const app = new Vue({ + ...App +}) +app.$mount() +// #endif + +// #ifdef VUE3 +import { createSSRApp } from 'vue' +export function createApp() { + const app = createSSRApp(App) + app.use(uviewPlus) + return { + app + } +} +// #endif \ No newline at end of file diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..6013768 --- /dev/null +++ b/manifest.json @@ -0,0 +1,138 @@ +{ + "name" : "duanju-app-v3", + "appid" : "__UNI__E0B05B1", + "description" : "", + "versionName" : "1.0.0", + "versionCode" : "100", + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : true, + "waiting" : true, + "autoclose" : true, + "delay" : 0 + }, + /* 模块配置 */ + "modules" : { + "Camera" : {}, + "Push" : {}, + "VideoPlayer" : {} + }, + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ], + "schemes" : "com.hnsiyao.duanju", + "minSdkVersion" : 28, + "targetSdkVersion" : 33 + }, + /* ios打包配置 */ + "ios" : { + "privacyDescription" : { + "NSPhotoLibraryUsageDescription" : "获取您的相册读取权限,目的是为了在我的资料页面使用相册读取功能,修改上传头像", + "NSCameraUsageDescription" : "获取您的摄像头权限,目的是为了在我的资料页面使用摄像头功能,修改上传头像" + }, + "urltypes" : "com.hnsiyao.duanju" + }, + /* SDK配置 */ + "sdkConfigs" : { + "push" : { + "unipush" : {} + }, + "ad" : { + "gdt" : {} + } + }, + "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ], + "minSdkVersion" : 28, + "targetSdkVersion" : 33, + "schemes" : "com.hnsiyao.duanju", + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } + } + }, + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true, + "mergeVirtualHostAttributes" : true + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true, + "mergeVirtualHostAttributes" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "3", + "h5" : { + "title" : "斯耀短剧", + "template" : "template.html", + "router" : { + "mode" : "history" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..892ce72 --- /dev/null +++ b/package.json @@ -0,0 +1,7 @@ +{ + "dependencies": { + "clipboard": "^2.0.11", + "dayjs": "^1.11.13", + "uview-plus": "^3.3.61" + } +} diff --git a/pages.json b/pages.json new file mode 100644 index 0000000..5dc8267 --- /dev/null +++ b/pages.json @@ -0,0 +1,26 @@ +{ + "easycom": { + "autoscan": true, + // 注意一定要放在custom里,否则无效,https://ask.dcloud.net.cn/question/131175 + "custom": { + "^u--(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^up-(.*)": "uview-plus/components/u-$1/u-$1.vue", + "^u-([^-].*)": "uview-plus/components/u-$1/u-$1.vue" + } + }, + "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages + { + "path": "pages/index/index", + "style": { + "navigationBarTitleText": "uni-app" + } + } + ], + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarTitleText": "uni-app", + "navigationBarBackgroundColor": "#F8F8F8", + "backgroundColor": "#F8F8F8" + }, + "uniIdRouter": {} +} \ No newline at end of file diff --git a/pages/index/index.vue b/pages/index/index.vue new file mode 100644 index 0000000..48d48ea --- /dev/null +++ b/pages/index/index.vue @@ -0,0 +1,8 @@ + + + + + diff --git a/static/logo.png b/static/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b5771e209bb677e2ebd5ff766ad5ee11790f305a GIT binary patch literal 4023 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 SYs}WS&%*SCNx89m_ + + + + + + + <%= htmlWebpackPlugin.options.title %> + + + + + + + + + + + + +
+ + + \ No newline at end of file diff --git a/uni.promisify.adaptor.js b/uni.promisify.adaptor.js new file mode 100644 index 0000000..5fec4f3 --- /dev/null +++ b/uni.promisify.adaptor.js @@ -0,0 +1,13 @@ +uni.addInterceptor({ + returnValue (res) { + if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) { + return res; + } + return new Promise((resolve, reject) => { + res.then((res) => { + if (!res) return resolve(res) + return res[0] ? reject(res[0]) : resolve(res[1]) + }); + }); + }, +}); \ No newline at end of file diff --git a/uni.scss b/uni.scss new file mode 100644 index 0000000..5351510 --- /dev/null +++ b/uni.scss @@ -0,0 +1,77 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ + +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ + +/* 颜色变量 */ + +/* 行为相关颜色 */ +$uni-color-primary: #007aff; +$uni-color-success: #4cd964; +$uni-color-warning: #f0ad4e; +$uni-color-error: #dd524d; + +/* 文字基本颜色 */ +$uni-text-color:#333;//基本色 +$uni-text-color-inverse:#fff;//反色 +$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息 +$uni-text-color-placeholder: #808080; +$uni-text-color-disable:#c0c0c0; + +/* 背景颜色 */ +$uni-bg-color:#ffffff; +$uni-bg-color-grey:#f8f8f8; +$uni-bg-color-hover:#f1f1f1;//点击状态颜色 +$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色 + +/* 边框颜色 */ +$uni-border-color:#c8c7cc; + +/* 尺寸变量 */ + +/* 文字尺寸 */ +$uni-font-size-sm:12px; +$uni-font-size-base:14px; +$uni-font-size-lg:16px; + +/* 图片尺寸 */ +$uni-img-size-sm:20px; +$uni-img-size-base:26px; +$uni-img-size-lg:40px; + +/* Border Radius */ +$uni-border-radius-sm: 2px; +$uni-border-radius-base: 3px; +$uni-border-radius-lg: 6px; +$uni-border-radius-circle: 50%; + +/* 水平间距 */ +$uni-spacing-row-sm: 5px; +$uni-spacing-row-base: 10px; +$uni-spacing-row-lg: 15px; + +/* 垂直间距 */ +$uni-spacing-col-sm: 4px; +$uni-spacing-col-base: 8px; +$uni-spacing-col-lg: 12px; + +/* 透明度 */ +$uni-opacity-disabled: 0.3; // 组件禁用态的透明度 + +/* 文章场景相关 */ +$uni-color-title: #2C405A; // 文章标题颜色 +$uni-font-size-title:20px; +$uni-color-subtitle: #555555; // 二级标题颜色 +$uni-font-size-subtitle:26px; +$uni-color-paragraph: #3F536E; // 文章段落颜色 +$uni-font-size-paragraph:15px; +@import 'uview-plus/theme.scss'; \ No newline at end of file diff --git a/unpackage/dist/cache/.vite/deps/_metadata.json b/unpackage/dist/cache/.vite/deps/_metadata.json new file mode 100644 index 0000000..0dd2470 --- /dev/null +++ b/unpackage/dist/cache/.vite/deps/_metadata.json @@ -0,0 +1,15 @@ +{ + "hash": "2432d8b6", + "configHash": "25f7d80a", + "lockfileHash": "1d928b20", + "browserHash": "6ca20d4f", + "optimized": { + "uview-plus": { + "src": "../../../../../node_modules/uview-plus/index.js", + "file": "uview-plus.js", + "fileHash": "0b72656a", + "needsInterop": false + } + }, + "chunks": {} +} \ No newline at end of file diff --git a/unpackage/dist/cache/.vite/deps/package.json b/unpackage/dist/cache/.vite/deps/package.json new file mode 100644 index 0000000..3dbc1ca --- /dev/null +++ b/unpackage/dist/cache/.vite/deps/package.json @@ -0,0 +1,3 @@ +{ + "type": "module" +} diff --git a/unpackage/dist/cache/.vite/deps/uview-plus.js b/unpackage/dist/cache/.vite/deps/uview-plus.js new file mode 100644 index 0000000..0a53b53 --- /dev/null +++ b/unpackage/dist/cache/.vite/deps/uview-plus.js @@ -0,0 +1,3687 @@ +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/vue.js +var defineMixin = (options) => { + return options; +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/test.js +function email(value) { + return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(value); +} +function mobile(value) { + return /^1[23456789]\d{9}$/.test(value); +} +function url(value) { + return /^((https|http|ftp|rtsp|mms):\/\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\/?)|(\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\/?)$/.test(value); +} +function date(value) { + if (!value) + return false; + if (typeof value === "number") { + if (value.toString().length !== 10 && value.toString().length !== 13) { + return false; + } + return !isNaN(new Date(value).getTime()); + } + if (typeof value === "string") { + const numV = Number(value); + if (!isNaN(numV)) { + if (numV.toString().length === 10 || numV.toString().length === 13) { + return !isNaN(new Date(numV).getTime()); + } + } + if (value.length < 10 || value.length > 19) { + return false; + } + const dateRegex = /^\d{4}[-\/]\d{2}[-\/]\d{2}( \d{1,2}:\d{2}(:\d{2})?)?$/; + if (!dateRegex.test(value)) { + return false; + } + const dateValue = new Date(value); + return !isNaN(dateValue.getTime()); + } + return false; +} +function dateISO(value) { + return /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value); +} +function number(value) { + return /^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/.test(value); +} +function string(value) { + return typeof value === "string"; +} +function digits(value) { + return /^\d+$/.test(value); +} +function idCard(value) { + return /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test( + value + ); +} +function carNo(value) { + const xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/; + const creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/; + if (value.length === 7) { + return creg.test(value); + } + if (value.length === 8) { + return xreg.test(value); + } + return false; +} +function amount(value) { + return /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/.test(value); +} +function chinese(value) { + const reg = /^[\u4e00-\u9fa5]+$/gi; + return reg.test(value); +} +function letter(value) { + return /^[a-zA-Z]*$/.test(value); +} +function enOrNum(value) { + const reg = /^[0-9a-zA-Z]*$/g; + return reg.test(value); +} +function contains(value, param) { + return value.indexOf(param) >= 0; +} +function range(value, param) { + return value >= param[0] && value <= param[1]; +} +function rangeLength(value, param) { + return value.length >= param[0] && value.length <= param[1]; +} +function landline(value) { + const reg = /^\d{3,4}-\d{7,8}(-\d{3,4})?$/; + return reg.test(value); +} +function empty(value) { + switch (typeof value) { + case "undefined": + return true; + case "string": + if (value.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, "").length == 0) + return true; + break; + case "boolean": + if (!value) + return true; + break; + case "number": + if (value === 0 || isNaN(value)) + return true; + break; + case "object": + if (value === null || value.length === 0) + return true; + for (const i in value) { + return false; + } + return true; + } + return false; +} +function jsonString(value) { + if (typeof value === "string") { + try { + const obj = JSON.parse(value); + if (typeof obj === "object" && obj) { + return true; + } + return false; + } catch (e) { + return false; + } + } + return false; +} +function array(value) { + if (typeof Array.isArray === "function") { + return Array.isArray(value); + } + return Object.prototype.toString.call(value) === "[object Array]"; +} +function object(value) { + return Object.prototype.toString.call(value) === "[object Object]"; +} +function code(value, len = 6) { + return new RegExp(`^\\d{${len}}$`).test(value); +} +function func(value) { + return typeof value === "function"; +} +function promise(value) { + return object(value) && func(value.then) && func(value.catch); +} +function image(value) { + const newValue = value.split("?")[0]; + const IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i; + return IMAGE_REGEXP.test(newValue); +} +function video(value) { + const VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i; + return VIDEO_REGEXP.test(value); +} +function regExp(o) { + return o && Object.prototype.toString.call(o) === "[object RegExp]"; +} +var test_default = { + email, + mobile, + url, + date, + dateISO, + number, + digits, + idCard, + carNo, + amount, + chinese, + letter, + enOrNum, + contains, + range, + rangeLength, + empty, + isEmpty: empty, + jsonString, + landline, + object, + array, + code, + func, + promise, + video, + image, + regExp, + string +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/digit.js +var _boundaryCheckingState = true; +function strip(num, precision = 15) { + return +parseFloat(Number(num).toPrecision(precision)); +} +function digitLength(num) { + const eSplit = num.toString().split(/[eE]/); + const len = (eSplit[0].split(".")[1] || "").length - +(eSplit[1] || 0); + return len > 0 ? len : 0; +} +function float2Fixed(num) { + if (num.toString().indexOf("e") === -1) { + return Number(num.toString().replace(".", "")); + } + const dLen = digitLength(num); + return dLen > 0 ? strip(Number(num) * Math.pow(10, dLen)) : Number(num); +} +function checkBoundary(num) { + if (_boundaryCheckingState) { + if (num > Number.MAX_SAFE_INTEGER || num < Number.MIN_SAFE_INTEGER) { + console.warn(`${num} 超出了精度限制,结果可能不正确`); + } + } +} +function iteratorOperation(arr, operation) { + const [num1, num2, ...others] = arr; + let res = operation(num1, num2); + others.forEach((num) => { + res = operation(res, num); + }); + return res; +} +function times(...nums) { + if (nums.length > 2) { + return iteratorOperation(nums, times); + } + const [num1, num2] = nums; + const num1Changed = float2Fixed(num1); + const num2Changed = float2Fixed(num2); + const baseNum = digitLength(num1) + digitLength(num2); + const leftValue = num1Changed * num2Changed; + checkBoundary(leftValue); + return leftValue / Math.pow(10, baseNum); +} +function divide(...nums) { + if (nums.length > 2) { + return iteratorOperation(nums, divide); + } + const [num1, num2] = nums; + const num1Changed = float2Fixed(num1); + const num2Changed = float2Fixed(num2); + checkBoundary(num1Changed); + checkBoundary(num2Changed); + return times(num1Changed / num2Changed, strip(Math.pow(10, digitLength(num2) - digitLength(num1)))); +} +function round(num, ratio) { + const base = Math.pow(10, ratio); + let result = divide(Math.round(Math.abs(times(num, base))), base); + if (num < 0 && result !== 0) { + result = times(result, -1); + } + return result; +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/config/config.js +var version = "3"; +if (true) { + console.log(` + %c uview-plus V${version} %c https://ijry.github.io/uview-plus/ + +`, "color: #ffffff; background: #3c9cff; padding:5px 0;", "color: #3c9cff;background: #ffffff; padding:5px 0;"); +} +var config_default = { + v: version, + version, + // 主题名称 + type: [ + "primary", + "success", + "info", + "error", + "warning" + ], + // 颜色部分,本来可以通过scss的:export导出供js使用,但是奈何nvue不支持 + color: { + "u-primary": "#2979ff", + "u-warning": "#ff9900", + "u-success": "#19be6b", + "u-error": "#fa3534", + "u-info": "#909399", + "u-main-color": "#303133", + "u-content-color": "#606266", + "u-tips-color": "#909399", + "u-light-color": "#c0c4cc", + "up-primary": "#2979ff", + "up-warning": "#ff9900", + "up-success": "#19be6b", + "up-error": "#fa3534", + "up-info": "#909399", + "up-main-color": "#303133", + "up-content-color": "#606266", + "up-tips-color": "#909399", + "up-light-color": "#c0c4cc" + }, + // 默认单位,可以通过配置为rpx,那么在用于传入组件大小参数为数值时,就默认为rpx + unit: "px" +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/index.js +function range2(min = 0, max = 0, value = 0) { + return Math.max(min, Math.min(max, Number(value))); +} +function getPx(value, unit = false) { + if (number(value)) { + return unit ? `${value}px` : Number(value); + } + if (/(rpx|upx)$/.test(value)) { + return unit ? `${uni.upx2px(parseInt(value))}px` : Number(uni.upx2px(parseInt(value))); + } + return unit ? `${parseInt(value)}px` : parseInt(value); +} +function sleep(value = 30) { + return new Promise((resolve) => { + setTimeout(() => { + resolve(); + }, value); + }); +} +function os() { + return uni.getDeviceInfo().platform.toLowerCase(); +} +function sys() { + return uni.getSystemInfoSync(); +} +function getWindowInfo() { + let ret = {}; + ret = uni.getWindowInfo(); + return ret; +} +function getDeviceInfo() { + let ret = {}; + ret = uni.getDeviceInfo(); + return ret; +} +function random(min, max) { + if (min >= 0 && max > 0 && max >= min) { + const gab = max - min + 1; + return Math.floor(Math.random() * gab + min); + } + return 0; +} +function guid(len = 32, firstU = true, radix = null) { + const chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""); + const uuid = []; + radix = radix || chars.length; + if (len) { + for (let i = 0; i < len; i++) + uuid[i] = chars[0 | Math.random() * radix]; + } else { + let r; + uuid[8] = uuid[13] = uuid[18] = uuid[23] = "-"; + uuid[14] = "4"; + for (let i = 0; i < 36; i++) { + if (!uuid[i]) { + r = 0 | Math.random() * 16; + uuid[i] = chars[i == 19 ? r & 3 | 8 : r]; + } + } + } + if (firstU) { + uuid.shift(); + return `u${uuid.join("")}`; + } + return uuid.join(""); +} +function $parent(name2 = void 0) { + let parent = this.$parent; + while (parent) { + name2 = name2.replace(/up-([a-zA-Z0-9-_]+)/g, "u-$1"); + if (parent.$options && parent.$options.name !== name2) { + parent = parent.$parent; + } else { + return parent; + } + } + return false; +} +function addStyle(customStyle, target = "object") { + if (empty(customStyle) || typeof customStyle === "object" && target === "object" || target === "string" && typeof customStyle === "string") { + return customStyle; + } + if (target === "object") { + customStyle = trim(customStyle); + const styleArray = customStyle.split(";"); + const style = {}; + for (let i = 0; i < styleArray.length; i++) { + if (styleArray[i]) { + const item = styleArray[i].split(":"); + style[trim(item[0])] = trim(item[1]); + } + } + return style; + } + let string2 = ""; + if (typeof customStyle === "object") { + customStyle.forEach((val, i) => { + const key = i.replace(/([A-Z])/g, "-$1").toLowerCase(); + string2 += `${key}:${val};`; + }); + } + return trim(string2); +} +function addUnit(value = "auto", unit = "") { + if (!unit) { + unit = config_default.unit || "px"; + } + if (unit == "rpx" && number(String(value))) { + value = value * 2; + } + value = String(value); + return number(value) ? `${value}${unit}` : value; +} +function deepClone(obj) { + if ([null, void 0, NaN, false].includes(obj)) + return obj; + if (typeof obj !== "object" && typeof obj !== "function") { + return obj; + } + const o = array(obj) ? [] : {}; + for (const i in obj) { + if (obj.hasOwnProperty(i)) { + o[i] = typeof obj[i] === "object" ? deepClone(obj[i]) : obj[i]; + } + } + return o; +} +function deepMerge(targetOrigin = {}, source = {}) { + let target = deepClone(targetOrigin); + if (typeof target !== "object" || typeof source !== "object") + return false; + for (const prop in source) { + if (!source.hasOwnProperty(prop)) + continue; + if (prop in target) { + if (source[prop] == null) { + target[prop] = source[prop]; + } else if (typeof target[prop] !== "object") { + target[prop] = source[prop]; + } else if (typeof source[prop] !== "object") { + target[prop] = source[prop]; + } else if (target[prop].concat && source[prop].concat) { + target[prop] = target[prop].concat(source[prop]); + } else { + target[prop] = deepMerge(target[prop], source[prop]); + } + } else { + target[prop] = source[prop]; + } + } + return target; +} +function shallowMerge(target, source = {}) { + if (typeof target !== "object" || typeof source !== "object") + return false; + for (const prop in source) { + if (!source.hasOwnProperty(prop)) + continue; + if (prop in target) { + if (source[prop] == null) { + target[prop] = source[prop]; + } else if (typeof target[prop] !== "object") { + target[prop] = source[prop]; + } else if (typeof source[prop] !== "object") { + target[prop] = source[prop]; + } else if (target[prop].concat && source[prop].concat) { + target[prop] = target[prop].concat(source[prop]); + } else { + target[prop] = shallowMerge(target[prop], source[prop]); + } + } else { + target[prop] = source[prop]; + } + } + return target; +} +function error(err) { + if (true) { + console.error(`uView提示:${err}`); + } +} +function randomArray(array2 = []) { + return array2.sort(() => Math.random() - 0.5); +} +if (!String.prototype.padStart) { + String.prototype.padStart = function(maxLength, fillString = " ") { + if (Object.prototype.toString.call(fillString) !== "[object String]") { + throw new TypeError( + "fillString must be String" + ); + } + const str = this; + if (str.length >= maxLength) + return String(str); + const fillLength = maxLength - str.length; + let times2 = Math.ceil(fillLength / fillString.length); + while (times2 >>= 1) { + fillString += fillString; + if (times2 === 1) { + fillString += fillString; + } + } + return fillString.slice(0, fillLength) + str; + }; +} +function timeFormat(dateTime = null, formatStr = "yyyy-mm-dd") { + let date2; + if (!dateTime) { + date2 = /* @__PURE__ */ new Date(); + } else if (/^\d{10}$/.test(dateTime.toString().trim())) { + date2 = new Date(dateTime * 1e3); + } else if (typeof dateTime === "string" && /^\d+$/.test(dateTime.trim())) { + date2 = new Date(Number(dateTime)); + } else { + date2 = new Date( + typeof dateTime === "string" ? dateTime.replace(/-/g, "/") : dateTime + ); + } + const timeSource = { + "y": date2.getFullYear().toString(), + // 年 + "m": (date2.getMonth() + 1).toString().padStart(2, "0"), + // 月 + "d": date2.getDate().toString().padStart(2, "0"), + // 日 + "h": date2.getHours().toString().padStart(2, "0"), + // 时 + "M": date2.getMinutes().toString().padStart(2, "0"), + // 分 + "s": date2.getSeconds().toString().padStart(2, "0") + // 秒 + // 有其他格式化字符需求可以继续添加,必须转化成字符串 + }; + for (const key in timeSource) { + const [ret] = new RegExp(`${key}+`).exec(formatStr) || []; + if (ret) { + const beginIndex = key === "y" && ret.length === 2 ? 2 : 0; + formatStr = formatStr.replace(ret, timeSource[key].slice(beginIndex)); + } + } + return formatStr; +} +function timeFrom(timestamp = null, format = "yyyy-mm-dd") { + if (timestamp == null) + timestamp = Number(/* @__PURE__ */ new Date()); + timestamp = parseInt(timestamp); + if (timestamp.toString().length == 10) + timestamp *= 1e3; + let timer2 = (/* @__PURE__ */ new Date()).getTime() - timestamp; + timer2 = parseInt(timer2 / 1e3); + let tips = ""; + switch (true) { + case timer2 < 300: + tips = "刚刚"; + break; + case (timer2 >= 300 && timer2 < 3600): + tips = `${parseInt(timer2 / 60)}分钟前`; + break; + case (timer2 >= 3600 && timer2 < 86400): + tips = `${parseInt(timer2 / 3600)}小时前`; + break; + case (timer2 >= 86400 && timer2 < 2592e3): + tips = `${parseInt(timer2 / 86400)}天前`; + break; + default: + if (format === false) { + if (timer2 >= 2592e3 && timer2 < 365 * 86400) { + tips = `${parseInt(timer2 / (86400 * 30))}个月前`; + } else { + tips = `${parseInt(timer2 / (86400 * 365))}年前`; + } + } else { + tips = timeFormat(timestamp, format); + } + } + return tips; +} +function trim(str, pos = "both") { + str = String(str); + if (pos == "both") { + return str.replace(/^\s+|\s+$/g, ""); + } + if (pos == "left") { + return str.replace(/^\s*/, ""); + } + if (pos == "right") { + return str.replace(/(\s*$)/g, ""); + } + if (pos == "all") { + return str.replace(/\s+/g, ""); + } + return str; +} +function queryParams(data = {}, isPrefix = true, arrayFormat = "brackets") { + const prefix = isPrefix ? "?" : ""; + const _result = []; + if (["indices", "brackets", "repeat", "comma"].indexOf(arrayFormat) == -1) + arrayFormat = "brackets"; + for (const key in data) { + const value = data[key]; + if (["", void 0, null].indexOf(value) >= 0) { + continue; + } + if (value.constructor === Array) { + switch (arrayFormat) { + case "indices": + for (let i = 0; i < value.length; i++) { + _result.push(`${key}[${i}]=${value[i]}`); + } + break; + case "brackets": + value.forEach((_value) => { + _result.push(`${key}[]=${_value}`); + }); + break; + case "repeat": + value.forEach((_value) => { + _result.push(`${key}=${_value}`); + }); + break; + case "comma": + let commaStr = ""; + value.forEach((_value) => { + commaStr += (commaStr ? "," : "") + _value; + }); + _result.push(`${key}=${commaStr}`); + break; + default: + value.forEach((_value) => { + _result.push(`${key}[]=${_value}`); + }); + } + } else { + _result.push(`${key}=${value}`); + } + } + return _result.length ? prefix + _result.join("&") : ""; +} +function toast(title, duration = 2e3) { + uni.showToast({ + title: String(title), + icon: "none", + duration + }); +} +function type2icon(type = "success", fill = false) { + if (["primary", "info", "error", "warning", "success"].indexOf(type) == -1) + type = "success"; + let iconName = ""; + switch (type) { + case "primary": + iconName = "info-circle"; + break; + case "info": + iconName = "info-circle"; + break; + case "error": + iconName = "close-circle"; + break; + case "warning": + iconName = "error-circle"; + break; + case "success": + iconName = "checkmark-circle"; + break; + default: + iconName = "checkmark-circle"; + } + if (fill) + iconName += "-fill"; + return iconName; +} +function priceFormat(number2, decimals = 0, decimalPoint = ".", thousandsSeparator = ",") { + number2 = `${number2}`.replace(/[^0-9+-Ee.]/g, ""); + const n = !isFinite(+number2) ? 0 : +number2; + const prec = !isFinite(+decimals) ? 0 : Math.abs(decimals); + const sep = typeof thousandsSeparator === "undefined" ? "," : thousandsSeparator; + const dec = typeof decimalPoint === "undefined" ? "." : decimalPoint; + let s = ""; + s = (prec ? round(n, prec) + "" : `${Math.round(n)}`).split("."); + const re = /(-?\d+)(\d{3})/; + while (re.test(s[0])) { + s[0] = s[0].replace(re, `$1${sep}$2`); + } + if ((s[1] || "").length < prec) { + s[1] = s[1] || ""; + s[1] += new Array(prec - s[1].length + 1).join("0"); + } + return s.join(dec); +} +function getDuration(value, unit = true) { + const valueNum = parseInt(value); + if (unit) { + if (/s$/.test(value)) + return value; + return value > 30 ? `${value}ms` : `${value}s`; + } + if (/ms$/.test(value)) + return valueNum; + if (/s$/.test(value)) + return valueNum > 30 ? valueNum : valueNum * 1e3; + return valueNum; +} +function padZero(value) { + return `00${value}`.slice(-2); +} +function formValidate(instance, event) { + const formItem = $parent.call(instance, "u-form-item"); + const form = $parent.call(instance, "u-form"); + if (formItem && form) { + form.validateField(formItem.prop, () => { + }, event); + } +} +function getProperty(obj, key) { + if (typeof obj !== "object" || null == obj) { + return ""; + } + if (typeof key !== "string" || key === "") { + return ""; + } + if (key.indexOf(".") !== -1) { + const keys = key.split("."); + let firstObj = obj[keys[0]] || {}; + for (let i = 1; i < keys.length; i++) { + if (firstObj) { + firstObj = firstObj[keys[i]]; + } + } + return firstObj; + } + return obj[key]; +} +function setProperty(obj, key, value) { + if (typeof obj !== "object" || null == obj) { + return; + } + const inFn = function(_obj, keys, v) { + if (keys.length === 1) { + _obj[keys[0]] = v; + return; + } + while (keys.length > 1) { + const k = keys[0]; + if (!_obj[k] || typeof _obj[k] !== "object") { + _obj[k] = {}; + } + const key2 = keys.shift(); + inFn(_obj[k], keys, v); + } + }; + if (typeof key !== "string" || key === "") { + } else if (key.indexOf(".") !== -1) { + const keys = key.split("."); + inFn(obj, keys, value); + } else { + obj[key] = value; + } +} +function page() { + const pages2 = getCurrentPages(); + return `/${pages2[pages2.length - 1].route || ""}`; +} +function pages() { + const pages2 = getCurrentPages(); + return pages2; +} +function getValueByPath(obj, path) { + const pathArr = path.split("."); + return pathArr.reduce((acc, curr) => { + return acc && acc[curr] !== void 0 ? acc[curr] : void 0; + }, obj); +} +var function_default = { + range: range2, + getPx, + sleep, + os, + sys, + getWindowInfo, + random, + guid, + $parent, + addStyle, + addUnit, + deepClone, + deepMerge, + shallowMerge, + error, + randomArray, + timeFormat, + timeFrom, + trim, + queryParams, + toast, + type2icon, + priceFormat, + getDuration, + padZero, + formValidate, + getProperty, + setProperty, + page, + pages, + getValueByPath + // setConfig +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/util/route.js +var Router = class { + constructor() { + this.config = { + type: "navigateTo", + url: "", + delta: 1, + // navigateBack页面后退时,回退的层数 + params: {}, + // 传递的参数 + animationType: "pop-in", + // 窗口动画,只在APP有效 + animationDuration: 300, + // 窗口动画持续时间,单位毫秒,只在APP有效 + intercept: false + // 是否需要拦截 + }; + this.route = this.route.bind(this); + } + // 判断url前面是否有"/",如果没有则加上,否则无法跳转 + addRootPath(url2) { + return url2[0] === "/" ? url2 : `/${url2}`; + } + // 整合路由参数 + mixinParam(url2, params) { + url2 = url2 && this.addRootPath(url2); + let query = ""; + if (/.*\/.*\?.*=.*/.test(url2)) { + query = queryParams(params, false); + return url2 += `&${query}`; + } + query = queryParams(params); + return url2 += query; + } + // 对外的方法名称 + async route(options = {}, params = {}) { + let mergeConfig = {}; + if (typeof options === "string") { + mergeConfig.url = this.mixinParam(options, params); + mergeConfig.type = "navigateTo"; + } else { + mergeConfig = deepMerge(this.config, options); + mergeConfig.url = this.mixinParam(options.url, options.params); + } + if (mergeConfig.url === page()) + return; + if (params.intercept) { + this.config.intercept = params.intercept; + } + mergeConfig.params = params; + mergeConfig = deepMerge(this.config, mergeConfig); + if (typeof uni.$u.routeIntercept === "function") { + const isNext = await new Promise((resolve, reject) => { + uni.$u.routeIntercept(mergeConfig, resolve); + }); + isNext && this.openPage(mergeConfig); + } else { + this.openPage(mergeConfig); + } + } + // 执行路由跳转 + openPage(config) { + const { + url: url2, + type, + delta, + animationType, + animationDuration + } = config; + if (config.type == "navigateTo" || config.type == "to") { + uni.navigateTo({ + url: url2, + animationType, + animationDuration + }); + } + if (config.type == "redirectTo" || config.type == "redirect") { + uni.redirectTo({ + url: url2 + }); + } + if (config.type == "switchTab" || config.type == "tab") { + uni.switchTab({ + url: url2 + }); + } + if (config.type == "reLaunch" || config.type == "launch") { + uni.reLaunch({ + url: url2 + }); + } + if (config.type == "navigateBack" || config.type == "back") { + uni.navigateBack({ + delta + }); + } + } +}; +var route_default = new Router().route; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/mixin/mixin.js +var mixin = defineMixin({ + // 定义每个组件都可能需要用到的外部样式以及类名 + props: { + // 每个组件都有的父组件传递的样式,可以为字符串或者对象形式 + customStyle: { + type: [Object, String], + default: () => ({}) + }, + customClass: { + type: String, + default: "" + }, + // 跳转的页面路径 + url: { + type: String, + default: "" + }, + // 页面跳转的类型 + linkType: { + type: String, + default: "navigateTo" + } + }, + data() { + return {}; + }, + onLoad() { + this.$u.getRect = this.$uGetRect; + }, + created() { + this.$u.getRect = this.$uGetRect; + }, + computed: { + // 在2.x版本中,将会把$u挂载到uni对象下,导致在模板中无法使用uni.$u.xxx形式 + // 所以这里通过computed计算属性将其附加到this.$u上,就可以在模板或者js中使用uni.$u.xxx + // 只在nvue环境通过此方式引入完整的$u,其他平台会出现性能问题,非nvue则按需引入(主要原因是props过大) + $u() { + return deepMerge(uni.$u, { + props: void 0, + http: void 0, + mixin: void 0 + }); + }, + /** + * 生成bem规则类名 + * 由于微信小程序,H5,nvue之间绑定class的差异,无法通过:class="[bem()]"的形式进行同用 + * 故采用如下折中做法,最后返回的是数组(一般平台)或字符串(支付宝和字节跳动平台),类似['a', 'b', 'c']或'a b c'的形式 + * @param {String} name 组件名称 + * @param {Array} fixed 一直会存在的类名 + * @param {Array} change 会根据变量值为true或者false而出现或者隐藏的类名 + * @returns {Array|string} + */ + bem() { + return function(name2, fixed, change) { + const prefix = `u-${name2}--`; + const classes = {}; + if (fixed) { + fixed.map((item) => { + classes[prefix + this[item]] = true; + }); + } + if (change) { + change.map((item) => { + this[item] ? classes[prefix + item] = this[item] : delete classes[prefix + item]; + }); + } + return Object.keys(classes); + }; + } + }, + methods: { + // 跳转某一个页面 + openPage(urlKey = "url") { + const url2 = this[urlKey]; + if (url2) { + route_default({ type: this.linkType, url: url2 }); + } + }, + navTo(url2 = "", linkType = "navigateTo") { + route_default({ type: this.linkType, url: url2 }); + }, + // 查询节点信息 + // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸,为支付宝的bug(2020-07-21) + // 解决办法为在组件根部再套一个没有任何作用的view元素 + $uGetRect(selector, all) { + return new Promise((resolve) => { + uni.createSelectorQuery().in(this)[all ? "selectAll" : "select"](selector).boundingClientRect((rect) => { + if (all && Array.isArray(rect) && rect.length) { + resolve(rect); + } + if (!all && rect) { + resolve(rect); + } + }).exec(); + }); + }, + getParentData(parentName = "") { + if (!this.parent) + this.parent = {}; + this.parent = $parent.call(this, parentName); + if (this.parent.children) { + this.parent.children.indexOf(this) === -1 && this.parent.children.push(this); + } + if (this.parent && this.parentData) { + Object.keys(this.parentData).map((key) => { + this.parentData[key] = this.parent[key]; + }); + } + }, + // 阻止事件冒泡 + preventEvent(e) { + e && typeof e.stopPropagation === "function" && e.stopPropagation(); + }, + // 空操作 + noop(e) { + this.preventEvent(e); + } + }, + onReachBottom() { + uni.$emit("uOnReachBottom"); + }, + beforeUnmount() { + if (this.parent && test_default.array(this.parent.children)) { + const childrenList = this.parent.children; + childrenList.map((child, index) => { + if (child === this) { + childrenList.splice(index, 1); + } + }); + } + } +}); + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/mixin/mpMixin.js +var mpMixin = defineMixin({}); + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/utils.js +var { toString } = Object.prototype; +function isArray(val) { + return toString.call(val) === "[object Array]"; +} +function isObject(val) { + return val !== null && typeof val === "object"; +} +function isDate(val) { + return toString.call(val) === "[object Date]"; +} +function isURLSearchParams(val) { + return typeof URLSearchParams !== "undefined" && val instanceof URLSearchParams; +} +function forEach(obj, fn) { + if (obj === null || typeof obj === "undefined") { + return; + } + if (typeof obj !== "object") { + obj = [obj]; + } + if (isArray(obj)) { + for (let i = 0, l = obj.length; i < l; i++) { + fn.call(null, obj[i], i, obj); + } + } else { + for (const key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + fn.call(null, obj[key], key, obj); + } + } + } +} +function isPlainObject(obj) { + return Object.prototype.toString.call(obj) === "[object Object]"; +} +function deepMerge2() { + const result = {}; + function assignValue(val, key) { + if (typeof result[key] === "object" && typeof val === "object") { + result[key] = deepMerge2(result[key], val); + } else if (typeof val === "object") { + result[key] = deepMerge2({}, val); + } else { + result[key] = val; + } + } + for (let i = 0, l = arguments.length; i < l; i++) { + forEach(arguments[i], assignValue); + } + return result; +} +function isUndefined(val) { + return typeof val === "undefined"; +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/helpers/buildURL.js +function encode(val) { + return encodeURIComponent(val).replace(/%40/gi, "@").replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]"); +} +function buildURL(url2, params) { + if (!params) { + return url2; + } + let serializedParams; + if (isURLSearchParams(params)) { + serializedParams = params.toString(); + } else { + const parts = []; + forEach(params, (val, key) => { + if (val === null || typeof val === "undefined") { + return; + } + if (isArray(val)) { + key = `${key}[]`; + } else { + val = [val]; + } + forEach(val, (v) => { + if (isDate(v)) { + v = v.toISOString(); + } else if (isObject(v)) { + v = JSON.stringify(v); + } + parts.push(`${encode(key)}=${encode(v)}`); + }); + }); + serializedParams = parts.join("&"); + } + if (serializedParams) { + const hashmarkIndex = url2.indexOf("#"); + if (hashmarkIndex !== -1) { + url2 = url2.slice(0, hashmarkIndex); + } + url2 += (url2.indexOf("?") === -1 ? "?" : "&") + serializedParams; + } + return url2; +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/helpers/isAbsoluteURL.js +function isAbsoluteURL(url2) { + return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url2); +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/helpers/combineURLs.js +function combineURLs(baseURL, relativeURL) { + return relativeURL ? `${baseURL.replace(/\/+$/, "")}/${relativeURL.replace(/^\/+/, "")}` : baseURL; +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/buildFullPath.js +function buildFullPath(baseURL, requestedURL) { + if (baseURL && !isAbsoluteURL(requestedURL)) { + return combineURLs(baseURL, requestedURL); + } + return requestedURL; +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/settle.js +function settle(resolve, reject, response) { + const { validateStatus: validateStatus2 } = response.config; + const status = response.statusCode; + if (status && (!validateStatus2 || validateStatus2(status))) { + resolve(response); + } else { + reject(response); + } +} + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/adapters/index.js +var mergeKeys = (keys, config2) => { + const config = {}; + keys.forEach((prop) => { + if (!isUndefined(config2[prop])) { + config[prop] = config2[prop]; + } + }); + return config; +}; +var adapters_default = (config) => new Promise((resolve, reject) => { + const fullPath = buildURL(buildFullPath(config.baseURL, config.url), config.params); + const _config = { + url: fullPath, + header: config.header, + complete: (response) => { + config.fullPath = fullPath; + response.config = config; + try { + if (typeof response.data === "string") { + response.data = JSON.parse(response.data); + } + } catch (e) { + } + settle(resolve, reject, response); + } + }; + let requestTask; + if (config.method === "UPLOAD") { + delete _config.header["content-type"]; + delete _config.header["Content-Type"]; + const otherConfig = { + filePath: config.filePath, + name: config.name + }; + const optionalKeys = [ + "files", + "file", + "timeout", + "formData" + ]; + requestTask = uni.uploadFile({ ..._config, ...otherConfig, ...mergeKeys(optionalKeys, config) }); + } else if (config.method === "DOWNLOAD") { + if (!isUndefined(config.timeout)) { + _config.timeout = config.timeout; + } + requestTask = uni.downloadFile(_config); + } else { + const optionalKeys = [ + "data", + "method", + "timeout", + "dataType", + "responseType", + "withCredentials" + ]; + requestTask = uni.request({ ..._config, ...mergeKeys(optionalKeys, config) }); + } + if (config.getTask) { + config.getTask(requestTask, config); + } +}); + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/dispatchRequest.js +var dispatchRequest_default = (config) => adapters_default(config); + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/InterceptorManager.js +function InterceptorManager() { + this.handlers = []; +} +InterceptorManager.prototype.use = function use(fulfilled, rejected) { + this.handlers.push({ + fulfilled, + rejected + }); + return this.handlers.length - 1; +}; +InterceptorManager.prototype.eject = function eject(id) { + if (this.handlers[id]) { + this.handlers[id] = null; + } +}; +InterceptorManager.prototype.forEach = function forEach2(fn) { + this.handlers.forEach((h) => { + if (h !== null) { + fn(h); + } + }); +}; +var InterceptorManager_default = InterceptorManager; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/mergeConfig.js +var mergeKeys2 = (keys, globalsConfig, config2) => { + const config = {}; + keys.forEach((prop) => { + if (!isUndefined(config2[prop])) { + config[prop] = config2[prop]; + } else if (!isUndefined(globalsConfig[prop])) { + config[prop] = globalsConfig[prop]; + } + }); + return config; +}; +var mergeConfig_default = (globalsConfig, config2 = {}) => { + const method = config2.method || globalsConfig.method || "GET"; + let config = { + baseURL: globalsConfig.baseURL || "", + method, + url: config2.url || "", + params: config2.params || {}, + custom: { ...globalsConfig.custom || {}, ...config2.custom || {} }, + header: deepMerge2(globalsConfig.header || {}, config2.header || {}) + }; + const defaultToConfig2Keys = ["getTask", "validateStatus"]; + config = { ...config, ...mergeKeys2(defaultToConfig2Keys, globalsConfig, config2) }; + if (method === "DOWNLOAD") { + if (!isUndefined(config2.timeout)) { + config.timeout = config2.timeout; + } else if (!isUndefined(globalsConfig.timeout)) { + config.timeout = globalsConfig.timeout; + } + } else if (method === "UPLOAD") { + delete config.header["content-type"]; + delete config.header["Content-Type"]; + const uploadKeys = [ + "files", + "file", + "filePath", + "name", + "timeout", + "formData" + ]; + uploadKeys.forEach((prop) => { + if (!isUndefined(config2[prop])) { + config[prop] = config2[prop]; + } + }); + if (isUndefined(config.timeout) && !isUndefined(globalsConfig.timeout)) { + config.timeout = globalsConfig.timeout; + } + } else { + const defaultsKeys = [ + "data", + "timeout", + "dataType", + "responseType", + "withCredentials" + ]; + config = { ...config, ...mergeKeys2(defaultsKeys, globalsConfig, config2) }; + } + return config; +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/defaults.js +var defaults_default = { + baseURL: "", + header: {}, + method: "GET", + dataType: "json", + responseType: "text", + custom: {}, + timeout: 6e4, + withCredentials: false, + validateStatus: function validateStatus(status) { + return status >= 200 && status < 300; + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/utils/clone.js +var clone = function() { + "use strict"; + function _instanceof(obj, type) { + return type != null && obj instanceof type; + } + var nativeMap; + try { + nativeMap = Map; + } catch (_) { + nativeMap = function() { + }; + } + var nativeSet; + try { + nativeSet = Set; + } catch (_) { + nativeSet = function() { + }; + } + var nativePromise; + try { + nativePromise = Promise; + } catch (_) { + nativePromise = function() { + }; + } + function clone2(parent, circular, depth, prototype, includeNonEnumerable) { + if (typeof circular === "object") { + depth = circular.depth; + prototype = circular.prototype; + includeNonEnumerable = circular.includeNonEnumerable; + circular = circular.circular; + } + var allParents = []; + var allChildren = []; + var useBuffer = typeof Buffer != "undefined"; + if (typeof circular == "undefined") + circular = true; + if (typeof depth == "undefined") + depth = Infinity; + function _clone(parent2, depth2) { + if (parent2 === null) + return null; + if (depth2 === 0) + return parent2; + var child; + var proto; + if (typeof parent2 != "object") { + return parent2; + } + if (_instanceof(parent2, nativeMap)) { + child = new nativeMap(); + } else if (_instanceof(parent2, nativeSet)) { + child = new nativeSet(); + } else if (_instanceof(parent2, nativePromise)) { + child = new nativePromise(function(resolve, reject) { + parent2.then(function(value) { + resolve(_clone(value, depth2 - 1)); + }, function(err) { + reject(_clone(err, depth2 - 1)); + }); + }); + } else if (clone2.__isArray(parent2)) { + child = []; + } else if (clone2.__isRegExp(parent2)) { + child = new RegExp(parent2.source, __getRegExpFlags(parent2)); + if (parent2.lastIndex) + child.lastIndex = parent2.lastIndex; + } else if (clone2.__isDate(parent2)) { + child = new Date(parent2.getTime()); + } else if (useBuffer && Buffer.isBuffer(parent2)) { + if (Buffer.from) { + child = Buffer.from(parent2); + } else { + child = new Buffer(parent2.length); + parent2.copy(child); + } + return child; + } else if (_instanceof(parent2, Error)) { + child = Object.create(parent2); + } else { + if (typeof prototype == "undefined") { + proto = Object.getPrototypeOf(parent2); + child = Object.create(proto); + } else { + child = Object.create(prototype); + proto = prototype; + } + } + if (circular) { + var index = allParents.indexOf(parent2); + if (index != -1) { + return allChildren[index]; + } + allParents.push(parent2); + allChildren.push(child); + } + if (_instanceof(parent2, nativeMap)) { + parent2.forEach(function(value, key) { + var keyChild = _clone(key, depth2 - 1); + var valueChild = _clone(value, depth2 - 1); + child.set(keyChild, valueChild); + }); + } + if (_instanceof(parent2, nativeSet)) { + parent2.forEach(function(value) { + var entryChild = _clone(value, depth2 - 1); + child.add(entryChild); + }); + } + for (var i in parent2) { + var attrs = Object.getOwnPropertyDescriptor(parent2, i); + if (attrs) { + child[i] = _clone(parent2[i], depth2 - 1); + } + try { + var objProperty = Object.getOwnPropertyDescriptor(parent2, i); + if (objProperty.set === "undefined") { + continue; + } + child[i] = _clone(parent2[i], depth2 - 1); + } catch (e) { + if (e instanceof TypeError) { + continue; + } else if (e instanceof ReferenceError) { + continue; + } + } + } + if (Object.getOwnPropertySymbols) { + var symbols = Object.getOwnPropertySymbols(parent2); + for (var i = 0; i < symbols.length; i++) { + var symbol = symbols[i]; + var descriptor = Object.getOwnPropertyDescriptor(parent2, symbol); + if (descriptor && !descriptor.enumerable && !includeNonEnumerable) { + continue; + } + child[symbol] = _clone(parent2[symbol], depth2 - 1); + Object.defineProperty(child, symbol, descriptor); + } + } + if (includeNonEnumerable) { + var allPropertyNames = Object.getOwnPropertyNames(parent2); + for (var i = 0; i < allPropertyNames.length; i++) { + var propertyName = allPropertyNames[i]; + var descriptor = Object.getOwnPropertyDescriptor(parent2, propertyName); + if (descriptor && descriptor.enumerable) { + continue; + } + child[propertyName] = _clone(parent2[propertyName], depth2 - 1); + Object.defineProperty(child, propertyName, descriptor); + } + } + return child; + } + return _clone(parent, depth); + } + clone2.clonePrototype = function clonePrototype(parent) { + if (parent === null) + return null; + var c = function() { + }; + c.prototype = parent; + return new c(); + }; + function __objToStr(o) { + return Object.prototype.toString.call(o); + } + clone2.__objToStr = __objToStr; + function __isDate(o) { + return typeof o === "object" && __objToStr(o) === "[object Date]"; + } + clone2.__isDate = __isDate; + function __isArray(o) { + return typeof o === "object" && __objToStr(o) === "[object Array]"; + } + clone2.__isArray = __isArray; + function __isRegExp(o) { + return typeof o === "object" && __objToStr(o) === "[object RegExp]"; + } + clone2.__isRegExp = __isRegExp; + function __getRegExpFlags(re) { + var flags = ""; + if (re.global) + flags += "g"; + if (re.ignoreCase) + flags += "i"; + if (re.multiline) + flags += "m"; + return flags; + } + clone2.__getRegExpFlags = __getRegExpFlags; + return clone2; +}(); +var clone_default = clone; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/core/Request.js +var Request = class { + /** + * @param {Object} arg - 全局配置 + * @param {String} arg.baseURL - 全局根路径 + * @param {Object} arg.header - 全局header + * @param {String} arg.method = [GET|POST|PUT|DELETE|CONNECT|HEAD|OPTIONS|TRACE] - 全局默认请求方式 + * @param {String} arg.dataType = [json] - 全局默认的dataType + * @param {String} arg.responseType = [text|arraybuffer] - 全局默认的responseType。支付宝小程序不支持 + * @param {Object} arg.custom - 全局默认的自定义参数 + * @param {Number} arg.timeout - 全局默认的超时时间,单位 ms。默认60000。H5(HBuilderX 2.9.9+)、APP(HBuilderX 2.9.9+)、微信小程序(2.10.0)、支付宝小程序 + * @param {Boolean} arg.sslVerify - 全局默认的是否验证 ssl 证书。默认true.仅App安卓端支持(HBuilderX 2.3.3+) + * @param {Boolean} arg.withCredentials - 全局默认的跨域请求时是否携带凭证(cookies)。默认false。仅H5支持(HBuilderX 2.6.15+) + * @param {Boolean} arg.firstIpv4 - 全DNS解析时优先使用ipv4。默认false。仅 App-Android 支持 (HBuilderX 2.8.0+) + * @param {Function(statusCode):Boolean} arg.validateStatus - 全局默认的自定义验证器。默认statusCode >= 200 && statusCode < 300 + */ + constructor(arg = {}) { + if (!isPlainObject(arg)) { + arg = {}; + console.warn("设置全局参数必须接收一个Object"); + } + this.config = clone_default({ ...defaults_default, ...arg }); + this.interceptors = { + request: new InterceptorManager_default(), + response: new InterceptorManager_default() + }; + } + /** + * @Function + * @param {Request~setConfigCallback} f - 设置全局默认配置 + */ + setConfig(f) { + this.config = f(this.config); + } + middleware(config) { + config = mergeConfig_default(this.config, config); + const chain = [dispatchRequest_default, void 0]; + let promise2 = Promise.resolve(config); + this.interceptors.request.forEach((interceptor) => { + chain.unshift(interceptor.fulfilled, interceptor.rejected); + }); + this.interceptors.response.forEach((interceptor) => { + chain.push(interceptor.fulfilled, interceptor.rejected); + }); + while (chain.length) { + promise2 = promise2.then(chain.shift(), chain.shift()); + } + return promise2; + } + /** + * @Function + * @param {Object} config - 请求配置项 + * @prop {String} options.url - 请求路径 + * @prop {Object} options.data - 请求参数 + * @prop {Object} [options.responseType = config.responseType] [text|arraybuffer] - 响应的数据类型 + * @prop {Object} [options.dataType = config.dataType] - 如果设为 json,会尝试对返回的数据做一次 JSON.parse + * @prop {Object} [options.header = config.header] - 请求header + * @prop {Object} [options.method = config.method] - 请求方法 + * @returns {Promise} + */ + request(config = {}) { + return this.middleware(config); + } + get(url2, options = {}) { + return this.middleware({ + url: url2, + method: "GET", + ...options + }); + } + post(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "POST", + ...options + }); + } + put(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "PUT", + ...options + }); + } + delete(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "DELETE", + ...options + }); + } + connect(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "CONNECT", + ...options + }); + } + head(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "HEAD", + ...options + }); + } + options(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "OPTIONS", + ...options + }); + } + trace(url2, data, options = {}) { + return this.middleware({ + url: url2, + data, + method: "TRACE", + ...options + }); + } + upload(url2, config = {}) { + config.url = url2; + config.method = "UPLOAD"; + return this.middleware(config); + } + download(url2, config = {}) { + config.url = url2; + config.method = "DOWNLOAD"; + return this.middleware(config); + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/luch-request/index.js +var luch_request_default = Request; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/colorGradient.js +function colorGradient(startColor = "rgb(0, 0, 0)", endColor = "rgb(255, 255, 255)", step = 10) { + const startRGB = hexToRgb(startColor, false); + const startR = startRGB[0]; + const startG = startRGB[1]; + const startB = startRGB[2]; + const endRGB = hexToRgb(endColor, false); + const endR = endRGB[0]; + const endG = endRGB[1]; + const endB = endRGB[2]; + const sR = (endR - startR) / step; + const sG = (endG - startG) / step; + const sB = (endB - startB) / step; + const colorArr = []; + for (let i = 0; i < step; i++) { + let hex = rgbToHex(`rgb(${Math.round(sR * i + startR)},${Math.round(sG * i + startG)},${Math.round(sB * i + startB)})`); + if (i === 0) + hex = rgbToHex(startColor); + if (i === step - 1) + hex = rgbToHex(endColor); + colorArr.push(hex); + } + return colorArr; +} +function hexToRgb(sColor, str = true) { + const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; + sColor = String(sColor).toLowerCase(); + if (sColor && reg.test(sColor)) { + if (sColor.length === 4) { + let sColorNew = "#"; + for (let i = 1; i < 4; i += 1) { + sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1)); + } + sColor = sColorNew; + } + const sColorChange = []; + for (let i = 1; i < 7; i += 2) { + sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`)); + } + if (!str) { + return sColorChange; + } + return `rgb(${sColorChange[0]},${sColorChange[1]},${sColorChange[2]})`; + } + if (/^(rgb|RGB)/.test(sColor)) { + const arr = sColor.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(","); + return arr.map((val) => Number(val)); + } + return sColor; +} +function rgbToHex(rgb) { + const _this = rgb; + const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; + if (/^(rgb|RGB)/.test(_this)) { + const aColor = _this.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(","); + let strHex = "#"; + for (let i = 0; i < aColor.length; i++) { + let hex = Number(aColor[i]).toString(16); + hex = String(hex).length == 1 ? `${0}${hex}` : hex; + if (hex === "0") { + hex += hex; + } + strHex += hex; + } + if (strHex.length !== 7) { + strHex = _this; + } + return strHex; + } + if (reg.test(_this)) { + const aNum = _this.replace(/#/, "").split(""); + if (aNum.length === 6) { + return _this; + } + if (aNum.length === 3) { + let numHex = "#"; + for (let i = 0; i < aNum.length; i += 1) { + numHex += aNum[i] + aNum[i]; + } + return numHex; + } + } else { + return _this; + } +} +function colorToRgba(color6, alpha) { + color6 = rgbToHex(color6); + const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; + let sColor = String(color6).toLowerCase(); + if (sColor && reg.test(sColor)) { + if (sColor.length === 4) { + let sColorNew = "#"; + for (let i = 1; i < 4; i += 1) { + sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1)); + } + sColor = sColorNew; + } + const sColorChange = []; + for (let i = 1; i < 7; i += 2) { + sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`)); + } + return `rgba(${sColorChange.join(",")},${alpha})`; + } + return sColor; +} +var colorGradient_default = { + colorGradient, + hexToRgb, + rgbToHex, + colorToRgba +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/debounce.js +var timeout = null; +function debounce(func2, wait = 500, immediate = false) { + if (timeout !== null) + clearTimeout(timeout); + if (immediate) { + const callNow = !timeout; + timeout = setTimeout(() => { + timeout = null; + }, wait); + if (callNow) + typeof func2 === "function" && func2(); + } else { + timeout = setTimeout(() => { + typeof func2 === "function" && func2(); + }, wait); + } +} +var debounce_default = debounce; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/throttle.js +var timer; +var flag; +function throttle(func2, wait = 500, immediate = true) { + if (immediate) { + if (!flag) { + flag = true; + typeof func2 === "function" && func2(); + timer = setTimeout(() => { + flag = false; + }, wait); + } + } else if (!flag) { + flag = true; + timer = setTimeout(() => { + flag = false; + typeof func2 === "function" && func2(); + }, wait); + } +} +var throttle_default = throttle; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-action-sheet/actionSheet.js +var actionSheet_default = { + // action-sheet组件 + actionSheet: { + show: false, + title: "", + description: "", + actions: [], + index: "", + cancelText: "", + closeOnClickAction: true, + safeAreaInsetBottom: true, + openType: "", + closeOnClickOverlay: true, + round: 0, + wrapMaxHeight: "600px" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-album/album.js +var album_default = { + // album 组件 + album: { + urls: [], + keyName: "", + singleSize: 180, + multipleSize: 70, + space: 6, + singleMode: "scaleToFill", + multipleMode: "aspectFill", + maxCount: 9, + previewFullImage: true, + rowCount: 3, + showMore: true, + autoWrap: false, + unit: "px", + stop: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-alert/alert.js +var alert_default = { + // alert警告组件 + alert: { + title: "", + type: "warning", + description: "", + closable: false, + showIcon: false, + effect: "light", + center: false, + fontSize: 14 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-avatar/avatar.js +var avatar_default = { + // avatar 组件 + avatar: { + src: "", + shape: "circle", + size: 40, + mode: "scaleToFill", + text: "", + bgColor: "#c0c4cc", + color: "#ffffff", + fontSize: 18, + icon: "", + mpAvatar: false, + randomBgColor: false, + defaultUrl: "", + colorIndex: "", + name: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-avatar-group/avatarGroup.js +var avatarGroup_default = { + // avatarGroup 组件 + avatarGroup: { + urls: [], + maxCount: 5, + shape: "circle", + mode: "scaleToFill", + showMore: true, + size: 40, + keyName: "", + gap: 0.5, + extraValue: 0 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-back-top/backtop.js +var backtop_default = { + // backtop组件 + backtop: { + mode: "circle", + icon: "arrow-upward", + text: "", + duration: 100, + scrollTop: 0, + top: 400, + bottom: 100, + right: 20, + zIndex: 9, + iconStyle: { + color: "#909399", + fontSize: "19px" + } + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-badge/badge.js +var badge_default = { + // 徽标数组件 + badge: { + isDot: false, + value: "", + show: true, + max: 999, + type: "error", + showZero: false, + bgColor: null, + color: null, + shape: "circle", + numberType: "overflow", + offset: [], + inverted: false, + absolute: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-button/button.js +var button_default = { + // button组件 + button: { + hairline: false, + type: "info", + size: "normal", + shape: "square", + plain: false, + disabled: false, + loading: false, + loadingText: "", + loadingMode: "spinner", + loadingSize: 15, + openType: "", + formType: "", + appParameter: "", + hoverStopPropagation: true, + lang: "en", + sessionFrom: "", + sendMessageTitle: "", + sendMessagePath: "", + sendMessageImg: "", + showMessageCard: false, + dataName: "", + throttleTime: 0, + hoverStartTime: 0, + hoverStayTime: 200, + text: "", + icon: "", + iconColor: "", + color: "", + stop: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-calendar/calendar.js +var calendar_default = { + // calendar 组件 + calendar: { + title: "日期选择", + showTitle: true, + showSubtitle: true, + mode: "single", + startText: "开始", + endText: "结束", + customList: [], + color: "#3c9cff", + minDate: 0, + maxDate: 0, + defaultDate: null, + maxCount: Number.MAX_SAFE_INTEGER, + // Infinity + rowHeight: 56, + formatter: null, + showLunar: false, + showMark: true, + confirmText: "确定", + confirmDisabledText: "确定", + show: false, + closeOnClickOverlay: false, + readonly: false, + showConfirm: true, + maxRange: Number.MAX_SAFE_INTEGER, + // Infinity + rangePrompt: "", + showRangePrompt: true, + allowSameDay: false, + round: 0, + monthNum: 3 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-car-keyboard/carKeyboard.js +var carKeyboard_default = { + // 车牌号键盘 + carKeyboard: { + random: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-cell/cell.js +var cell_default = { + // cell组件的props + cell: { + customClass: "", + title: "", + label: "", + value: "", + icon: "", + disabled: false, + border: true, + center: false, + url: "", + linkType: "navigateTo", + clickable: false, + isLink: false, + required: false, + arrowDirection: "", + iconStyle: {}, + rightIconStyle: {}, + rightIcon: "arrow-right", + titleStyle: {}, + size: "", + stop: true, + name: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-cell-group/cellGroup.js +var cellGroup_default = { + // cell-group组件的props + cellGroup: { + title: "", + border: true, + customStyle: {} + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-checkbox/checkbox.js +var checkbox_default = { + // checkbox组件 + checkbox: { + name: "", + shape: "", + size: "", + checkbox: false, + disabled: "", + activeColor: "", + inactiveColor: "", + iconSize: "", + iconColor: "", + label: "", + labelSize: "", + labelColor: "", + labelDisabled: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-checkbox-group/checkboxGroup.js +var checkboxGroup_default = { + // checkbox-group组件 + checkboxGroup: { + name: "", + value: [], + shape: "square", + disabled: false, + activeColor: "#2979ff", + inactiveColor: "#c8c9cc", + size: 18, + placement: "row", + labelSize: 14, + labelColor: "#303133", + labelDisabled: false, + iconColor: "#ffffff", + iconSize: 12, + iconPlacement: "left", + borderBottom: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-circle-progress/circleProgress.js +var circleProgress_default = { + // circleProgress 组件 + circleProgress: { + percentage: 30 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-code/code.js +var code_default = { + // code 组件 + code: { + seconds: 60, + startText: "获取验证码", + changeText: "X秒重新获取", + endText: "重新获取", + keepRunning: false, + uniqueKey: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-code-input/codeInput.js +var codeInput_default = { + // codeInput 组件 + codeInput: { + adjustPosition: true, + maxlength: 6, + dot: false, + mode: "box", + hairline: false, + space: 10, + value: "", + focus: false, + bold: false, + color: "#606266", + fontSize: 18, + size: 35, + disabledKeyboard: false, + borderColor: "#c9cacc", + disabledDot: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-col/col.js +var col_default = { + // col 组件 + col: { + span: 12, + offset: 0, + justify: "start", + align: "stretch", + textAlign: "left" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-collapse/collapse.js +var collapse_default = { + // collapse 组件 + collapse: { + value: null, + accordion: false, + border: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-collapse-item/collapseItem.js +var collapseItem_default = { + // collapseItem 组件 + collapseItem: { + title: "", + value: "", + label: "", + disabled: false, + isLink: true, + clickable: true, + border: true, + align: "left", + name: "", + icon: "", + duration: 300, + showRight: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-column-notice/columnNotice.js +var columnNotice_default = { + // columnNotice 组件 + columnNotice: { + text: "", + icon: "volume", + mode: "", + color: "#f9ae3d", + bgColor: "#fdf6ec", + fontSize: 14, + speed: 80, + step: false, + duration: 1500, + disableTouch: true, + justifyContent: "flex-start" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-count-down/countDown.js +var countDown_default = { + // u-count-down 计时器组件 + countDown: { + time: 0, + format: "HH:mm:ss", + autoStart: true, + millisecond: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-count-to/countTo.js +var countTo_default = { + // countTo 组件 + countTo: { + startVal: 0, + endVal: 0, + duration: 2e3, + autoplay: true, + decimals: 0, + useEasing: true, + decimal: ".", + color: "#606266", + fontSize: 22, + bold: false, + separator: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-datetime-picker/datetimePicker.js +var datetimePicker_default = { + // datetimePicker 组件 + datetimePicker: { + show: false, + popupMode: "bottom", + showToolbar: true, + value: "", + title: "", + mode: "datetime", + maxDate: new Date((/* @__PURE__ */ new Date()).getFullYear() + 10, 0, 1).getTime(), + minDate: new Date((/* @__PURE__ */ new Date()).getFullYear() - 10, 0, 1).getTime(), + minHour: 0, + maxHour: 23, + minMinute: 0, + maxMinute: 59, + filter: null, + formatter: null, + loading: false, + itemHeight: 44, + cancelText: "取消", + confirmText: "确认", + cancelColor: "#909193", + confirmColor: "#3c9cff", + visibleItemCount: 5, + closeOnClickOverlay: false, + defaultIndex: [] + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-divider/divider.js +var divider_default = { + // divider组件 + divider: { + dashed: false, + hairline: true, + dot: false, + textPosition: "center", + text: "", + textSize: 14, + textColor: "#909399", + lineColor: "#dcdfe6" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-empty/empty.js +var empty_default = { + // empty组件 + empty: { + icon: "", + text: "", + textColor: "#c0c4cc", + textSize: 14, + iconColor: "#c0c4cc", + iconSize: 90, + mode: "data", + width: 160, + height: 160, + show: true, + marginTop: 0 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-form/form.js +var form_default = { + // form 组件 + form: { + model: {}, + rules: {}, + errorType: "message", + borderBottom: true, + labelPosition: "left", + labelWidth: 45, + labelAlign: "left", + labelStyle: {} + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-form-item/formItem.js +var formItem_default = { + // formItem 组件 + formItem: { + label: "", + prop: "", + rules: [], + borderBottom: "", + labelPosition: "", + labelWidth: "", + rightIcon: "", + leftIcon: "", + required: false, + leftIconStyle: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-gap/gap.js +var gap_default = { + // gap组件 + gap: { + bgColor: "transparent", + height: 20, + marginTop: 0, + marginBottom: 0, + customStyle: {} + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-grid/grid.js +var grid_default = { + // grid组件 + grid: { + col: 3, + border: false, + align: "left" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-grid-item/gridItem.js +var gridItem_default = { + // grid-item组件 + gridItem: { + name: null, + bgColor: "transparent" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-icon/icon.js +var { + color +} = config_default; +var icon_default = { + // icon组件 + icon: { + name: "", + color: color["u-content-color"], + size: "16px", + bold: false, + index: "", + hoverClass: "", + customPrefix: "uicon", + label: "", + labelPos: "right", + labelSize: "15px", + labelColor: color["u-content-color"], + space: "3px", + imgMode: "", + width: "", + height: "", + top: 0, + stop: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-image/image.js +var image_default = { + // image组件 + image: { + src: "", + mode: "aspectFill", + width: "300", + height: "225", + shape: "square", + radius: 0, + lazyLoad: true, + showMenuByLongpress: true, + loadingIcon: "photo", + errorIcon: "error-circle", + showLoading: true, + showError: true, + fade: true, + webp: false, + duration: 500, + bgColor: "#f3f4f6" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-index-anchor/indexAnchor.js +var indexAnchor_default = { + // indexAnchor 组件 + indexAnchor: { + text: "", + color: "#606266", + size: 14, + bgColor: "#dedede", + height: 32 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-index-list/indexList.js +var indexList_default = { + // indexList 组件 + indexList: { + inactiveColor: "#606266", + activeColor: "#5677fc", + indexList: [], + sticky: true, + customNavHeight: 0, + safeBottomFix: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-input/input.js +var input_default = { + // index 组件 + input: { + value: "", + type: "text", + fixed: false, + disabled: false, + disabledColor: "#f5f7fa", + clearable: false, + password: false, + maxlength: 140, + placeholder: null, + placeholderClass: "input-placeholder", + placeholderStyle: "color: #c0c4cc", + showWordLimit: false, + confirmType: "done", + confirmHold: false, + holdKeyboard: false, + focus: false, + autoBlur: false, + disableDefaultPadding: false, + cursor: -1, + cursorSpacing: 30, + selectionStart: -1, + selectionEnd: -1, + adjustPosition: true, + inputAlign: "left", + fontSize: "15px", + color: "#303133", + prefixIcon: "", + prefixIconStyle: "", + suffixIcon: "", + suffixIconStyle: "", + border: "surround", + readonly: false, + shape: "square", + formatter: null + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-keyboard/keyboard.js +var keyboard_default = { + // 键盘组件 + keyboard: { + mode: "number", + dotDisabled: false, + tooltip: true, + showTips: true, + tips: "", + showCancel: true, + showConfirm: true, + random: false, + safeAreaInsetBottom: true, + closeOnClickOverlay: true, + show: false, + overlay: true, + zIndex: 10075, + cancelText: "取消", + confirmText: "确定", + autoChange: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-line/line.js +var line_default = { + // line组件 + line: { + color: "#d6d7d9", + length: "100%", + direction: "row", + hairline: true, + margin: 0, + dashed: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-line-progress/lineProgress.js +var lineProgress_default = { + // lineProgress 组件 + lineProgress: { + activeColor: "#19be6b", + inactiveColor: "#ececec", + percentage: 0, + showText: true, + height: 12 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-link/link.js +var { + color: color2 +} = config_default; +var link_default = { + // link超链接组件props参数 + link: { + color: color2["u-primary"], + fontSize: 15, + underLine: false, + href: "", + mpTips: "链接已复制,请在浏览器打开", + lineColor: "", + text: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-list/list.js +var list_default = { + // list 组件 + list: { + showScrollbar: false, + lowerThreshold: 50, + upperThreshold: 0, + scrollTop: 0, + offsetAccuracy: 10, + enableFlex: false, + pagingEnabled: false, + scrollable: true, + scrollIntoView: "", + scrollWithAnimation: false, + enableBackToTop: false, + height: 0, + width: 0, + preLoadScreen: 1 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-list-item/listItem.js +var listItem_default = { + // listItem 组件 + listItem: { + anchor: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-loading-icon/loadingIcon.js +var { + color: color3 +} = config_default; +var loadingIcon_default = { + // loading-icon加载中图标组件 + loadingIcon: { + show: true, + color: color3["u-tips-color"], + textColor: color3["u-tips-color"], + vertical: false, + mode: "spinner", + size: 24, + textSize: 15, + text: "", + timingFunction: "ease-in-out", + duration: 1200, + inactiveColor: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-loading-page/loadingPage.js +var loadingPage_default = { + // loading-page组件 + loadingPage: { + loadingText: "正在加载", + image: "", + loadingMode: "circle", + loading: false, + bgColor: "#ffffff", + color: "#C8C8C8", + fontSize: 19, + iconSize: 28, + loadingColor: "#C8C8C8", + zIndex: 10 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-loadmore/loadmore.js +var loadmore_default = { + // loadmore 组件 + loadmore: { + status: "loadmore", + bgColor: "transparent", + icon: true, + fontSize: 14, + iconSize: 17, + color: "#606266", + loadingIcon: "spinner", + loadmoreText: "加载更多", + loadingText: "正在加载...", + nomoreText: "没有更多了", + isDot: false, + iconColor: "#b7b7b7", + marginTop: 10, + marginBottom: 10, + height: "auto", + line: false, + lineColor: "#E6E8EB", + dashed: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-modal/modal.js +var modal_default = { + // modal 组件 + modal: { + show: false, + title: "", + content: "", + confirmText: "确认", + cancelText: "取消", + showConfirmButton: true, + showCancelButton: false, + confirmColor: "#2979ff", + cancelColor: "#606266", + buttonReverse: false, + zoom: true, + asyncClose: false, + closeOnClickOverlay: false, + negativeTop: 0, + width: "650rpx", + confirmButtonShape: "", + contentTextAlign: "left" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/config/color.js +var color4 = { + primary: "#3c9cff", + info: "#909399", + default: "#909399", + warning: "#f9ae3d", + error: "#f56c6c", + success: "#5ac725", + mainColor: "#303133", + contentColor: "#606266", + tipsColor: "#909399", + lightColor: "#c0c4cc", + borderColor: "#e4e7ed" +}; +var color_default = color4; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-navbar/navbar.js +var navbar_default = { + // navbar 组件 + navbar: { + safeAreaInsetTop: true, + placeholder: false, + fixed: true, + border: false, + leftIcon: "arrow-left", + leftText: "", + rightText: "", + rightIcon: "", + title: "", + titleColor: "", + bgColor: "#ffffff", + titleWidth: "400rpx", + height: "44px", + leftIconSize: 20, + leftIconColor: color_default.mainColor, + autoBack: false, + titleStyle: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-no-network/noNetwork.js +var noNetwork_default = { + // noNetwork + noNetwork: { + tips: "哎呀,网络信号丢失", + zIndex: "", + image: "data:image/png;base64,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" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-notice-bar/noticeBar.js +var noticeBar_default = { + // noticeBar + noticeBar: { + text: [], + direction: "row", + step: false, + icon: "volume", + mode: "", + color: "#f9ae3d", + bgColor: "#fdf6ec", + speed: 80, + fontSize: 14, + duration: 2e3, + disableTouch: true, + url: "", + linkType: "navigateTo", + justifyContent: "flex-start" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-notify/notify.js +var notify_default = { + // notify组件 + notify: { + top: 0, + type: "primary", + color: "#ffffff", + bgColor: "", + message: "", + duration: 3e3, + fontSize: 15, + safeAreaInsetTop: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-number-box/numberBox.js +var numberBox_default = { + // 步进器组件 + numberBox: { + name: "", + value: 0, + min: 1, + max: Number.MAX_SAFE_INTEGER, + step: 1, + integer: false, + disabled: false, + disabledInput: false, + asyncChange: false, + inputWidth: 35, + showMinus: true, + showPlus: true, + decimalLength: null, + longPress: true, + color: "#323233", + buttonSize: 30, + bgColor: "#EBECEE", + cursorSpacing: 100, + disableMinus: false, + disablePlus: false, + iconStyle: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-number-keyboard/numberKeyboard.js +var numberKeyboard_default = { + // 数字键盘 + numberKeyboard: { + mode: "number", + dotDisabled: false, + random: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-overlay/overlay.js +var overlay_default = { + // overlay组件 + overlay: { + show: false, + zIndex: 10070, + duration: 300, + opacity: 0.5 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-parse/parse.js +var parse_default = { + // parse + parse: { + copyLink: true, + errorImg: "", + lazyLoad: false, + loadingImg: "", + pauseVideo: true, + previewImg: true, + setTitle: true, + showImgMenu: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-picker/picker.js +var picker_default = { + // picker + picker: { + show: false, + popupMode: "bottom", + showToolbar: true, + title: "", + columns: [], + loading: false, + itemHeight: 44, + cancelText: "取消", + confirmText: "确定", + cancelColor: "#909193", + confirmColor: "#3c9cff", + visibleItemCount: 5, + keyName: "text", + closeOnClickOverlay: false, + defaultIndex: [], + immediateChange: true, + zIndex: 10076 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-popup/popup.js +var popup_default = { + // popup组件 + popup: { + show: false, + overlay: true, + mode: "bottom", + duration: 300, + closeable: false, + overlayStyle: {}, + closeOnClickOverlay: true, + zIndex: 10075, + safeAreaInsetBottom: true, + safeAreaInsetTop: false, + closeIconPos: "top-right", + round: 0, + zoom: true, + bgColor: "", + overlayOpacity: 0.5 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-radio/radio.js +var radio_default = { + // radio组件 + radio: { + name: "", + shape: "", + disabled: "", + labelDisabled: "", + activeColor: "", + inactiveColor: "", + iconSize: "", + labelSize: "", + label: "", + labelColor: "", + size: "", + iconColor: "", + placement: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-radio-group/radioGroup.js +var radioGroup_default = { + // radio-group组件 + radioGroup: { + value: "", + disabled: false, + shape: "circle", + activeColor: "#2979ff", + inactiveColor: "#c8c9cc", + name: "", + size: 18, + placement: "row", + label: "", + labelColor: "#303133", + labelSize: 14, + labelDisabled: false, + iconColor: "#ffffff", + iconSize: 12, + borderBottom: false, + iconPlacement: "left", + gap: "10px" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-rate/rate.js +var rate_default = { + // rate组件 + rate: { + value: 1, + count: 5, + disabled: false, + size: 18, + inactiveColor: "#b2b2b2", + activeColor: "#FA3534", + gutter: 4, + minCount: 1, + allowHalf: false, + activeIcon: "star-fill", + inactiveIcon: "star", + touchable: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-read-more/readMore.js +var readMore_default = { + // readMore + readMore: { + showHeight: 400, + toggle: false, + closeText: "展开阅读全文", + openText: "收起", + color: "#2979ff", + fontSize: 14, + textIndent: "2em", + name: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-row/row.js +var row_default = { + // row + row: { + gutter: 0, + justify: "start", + align: "center" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-row-notice/rowNotice.js +var rowNotice_default = { + // rowNotice + rowNotice: { + text: "", + icon: "volume", + mode: "", + color: "#f9ae3d", + bgColor: "#fdf6ec", + fontSize: 14, + speed: 80 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-scroll-list/scrollList.js +var scrollList_default = { + // scrollList + scrollList: { + indicatorWidth: 50, + indicatorBarWidth: 20, + indicator: true, + indicatorColor: "#f2f2f2", + indicatorActiveColor: "#3c9cff", + indicatorStyle: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-search/search.js +var search_default = { + // search + search: { + shape: "round", + bgColor: "#f2f2f2", + placeholder: "请输入关键字", + clearabled: true, + focus: false, + showAction: true, + actionStyle: {}, + actionText: "搜索", + inputAlign: "left", + inputStyle: {}, + disabled: false, + borderColor: "transparent", + searchIconColor: "#909399", + searchIconSize: 22, + color: "#606266", + placeholderColor: "#909399", + searchIcon: "search", + margin: "0", + animation: false, + value: "", + maxlength: "-1", + height: 32, + label: null + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-section/section.js +var section_default = { + // u-section组件 + section: { + title: "", + subTitle: "更多", + right: true, + fontSize: 15, + bold: true, + color: "#303133", + subColor: "#909399", + showLine: true, + lineColor: "", + arrow: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-skeleton/skeleton.js +var skeleton_default = { + // skeleton + skeleton: { + loading: true, + animate: true, + rows: 0, + rowsWidth: "100%", + rowsHeight: 18, + title: true, + titleWidth: "50%", + titleHeight: 18, + avatar: false, + avatarSize: 32, + avatarShape: "circle" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-slider/slider.js +var slider_default = { + // slider组件 + slider: { + value: 0, + blockSize: 18, + min: 0, + max: 100, + step: 1, + activeColor: "#2979ff", + inactiveColor: "#c0c4cc", + blockColor: "#ffffff", + showValue: false, + disabled: false, + blockStyle: {}, + useNative: false, + height: "2px" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-status-bar/statusBar.js +var statusBar_default = { + // statusBar + statusBar: { + bgColor: "transparent" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-steps/steps.js +var steps_default = { + // steps组件 + steps: { + direction: "row", + current: 0, + activeColor: "#3c9cff", + inactiveColor: "#969799", + activeIcon: "", + inactiveIcon: "", + dot: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-steps-item/stepsItem.js +var stepsItem_default = { + // steps-item组件 + stepsItem: { + title: "", + desc: "", + iconSize: 17, + error: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-sticky/sticky.js +var sticky_default = { + // sticky组件 + sticky: { + offsetTop: 0, + customNavHeight: 0, + disabled: false, + bgColor: "transparent", + zIndex: "", + index: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-subsection/subsection.js +var subsection_default = { + // subsection组件 + subsection: { + list: [], + current: 0, + activeColor: "#3c9cff", + inactiveColor: "#303133", + mode: "button", + fontSize: 12, + bold: true, + bgColor: "#eeeeef", + keyName: "name" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-swipe-action/swipeAction.js +var swipeAction_default = { + // swipe-action组件 + swipeAction: { + autoClose: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-swipe-action-item/swipeActionItem.js +var swipeActionItem_default = { + // swipeActionItem 组件 + swipeActionItem: { + show: false, + closeOnClick: true, + name: "", + disabled: false, + threshold: 20, + autoClose: true, + options: [], + duration: 300 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-swiper/swiper.js +var swiper_default = { + // swiper 组件 + swiper: { + list: [], + indicator: false, + indicatorActiveColor: "#FFFFFF", + indicatorInactiveColor: "rgba(255, 255, 255, 0.35)", + indicatorStyle: "", + indicatorMode: "line", + autoplay: true, + current: 0, + currentItemId: "", + interval: 3e3, + duration: 300, + circular: false, + previousMargin: 0, + nextMargin: 0, + acceleration: false, + displayMultipleItems: 1, + easingFunction: "default", + keyName: "url", + imgMode: "aspectFill", + height: 130, + bgColor: "#f3f4f6", + radius: 4, + loading: false, + showTitle: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-swiper-indicator/swipterIndicator.js +var swipterIndicator_default = { + // swiperIndicator 组件 + swiperIndicator: { + length: 0, + current: 0, + indicatorActiveColor: "", + indicatorInactiveColor: "", + indicatorMode: "line" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-switch/switch.js +var switch_default = { + // switch + switch: { + loading: false, + disabled: false, + size: 25, + activeColor: "#2979ff", + inactiveColor: "#ffffff", + value: false, + activeValue: true, + inactiveValue: false, + asyncChange: false, + space: 0 + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-tabbar/tabbar.js +var tabbar_default = { + // tabbar + tabbar: { + value: null, + safeAreaInsetBottom: true, + border: true, + zIndex: 1, + activeColor: "#1989fa", + inactiveColor: "#7d7e80", + fixed: true, + placeholder: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-tabbar-item/tabbarItem.js +var tabbarItem_default = { + // + tabbarItem: { + name: null, + icon: "", + badge: null, + dot: false, + text: "", + badgeStyle: "top: 6px;right:2px;" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-tabs/tabs.js +var tabs_default = { + // + tabs: { + duration: 300, + list: [], + lineColor: "#3c9cff", + activeStyle: { + color: "#303133" + }, + inactiveStyle: { + color: "#606266" + }, + lineWidth: 20, + lineHeight: 3, + lineBgSize: "cover", + itemStyle: { + height: "44px" + }, + scrollable: true, + current: 0, + keyName: "name" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-tag/tag.js +var tag_default = { + // tag 组件 + tag: { + type: "primary", + disabled: false, + size: "medium", + shape: "square", + text: "", + bgColor: "", + color: "", + borderColor: "", + closeColor: "#C6C7CB", + name: "", + plainFill: false, + plain: false, + closable: false, + show: true, + icon: "", + iconColor: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-text/text.js +var text_default = { + // text 组件 + text: { + type: "", + show: true, + text: "", + prefixIcon: "", + suffixIcon: "", + mode: "", + href: "", + format: "", + call: false, + openType: "", + bold: false, + block: false, + lines: "", + color: "#303133", + size: 15, + iconStyle: { + fontSize: "15px" + }, + decoration: "none", + margin: 0, + lineHeight: "", + align: "left", + wordWrap: "normal", + flex1: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-textarea/textarea.js +var textarea_default = { + // textarea 组件 + textarea: { + value: "", + placeholder: "", + placeholderClass: "textarea-placeholder", + placeholderStyle: "color: #c0c4cc", + height: 70, + confirmType: "done", + disabled: false, + count: false, + focus: false, + autoHeight: false, + fixed: false, + cursorSpacing: 0, + cursor: "", + showConfirmBar: true, + selectionStart: -1, + selectionEnd: -1, + adjustPosition: true, + disableDefaultPadding: false, + holdKeyboard: false, + maxlength: 140, + border: "surround", + formatter: null + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-toast/toast.js +var toast_default = { + // toast组件 + toast: { + zIndex: 10090, + loading: false, + text: "", + icon: "", + type: "", + loadingMode: "", + show: "", + overlay: false, + position: "center", + params: {}, + duration: 2e3, + isTab: false, + url: "", + callback: null, + back: false + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-toolbar/toolbar.js +var toolbar_default = { + // toolbar 组件 + toolbar: { + show: true, + cancelText: "取消", + confirmText: "确认", + cancelColor: "#909193", + confirmColor: "#3c9cff", + title: "" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-tooltip/tooltip.js +var tooltip_default = { + // tooltip 组件 + tooltip: { + text: "", + copyText: "", + size: 14, + color: "#606266", + bgColor: "transparent", + direction: "top", + zIndex: 10071, + showCopy: true, + buttons: [], + overlay: true, + showToast: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-transition/transition.js +var transition_default = { + // transition动画组件的props + transition: { + show: false, + mode: "fade", + duration: "300", + timingFunction: "ease-out" + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/components/u-upload/upload.js +var upload_default = { + // upload组件 + upload: { + accept: "image", + extension: [], + capture: ["album", "camera"], + compressed: true, + camera: "back", + maxDuration: 60, + uploadIcon: "camera-fill", + uploadIconColor: "#D3D4D6", + useBeforeRead: false, + previewFullImage: true, + maxCount: 52, + disabled: false, + imageMode: "aspectFill", + name: "", + sizeType: ["original", "compressed"], + multiple: false, + deletable: true, + maxSize: Number.MAX_VALUE, + fileList: [], + uploadText: "", + width: 80, + height: 80, + previewImage: true + } +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/config/props.js +var { + color: color5 +} = config_default; +var props_default = { + ...actionSheet_default, + ...album_default, + ...alert_default, + ...avatar_default, + ...avatarGroup_default, + ...backtop_default, + ...badge_default, + ...button_default, + ...calendar_default, + ...carKeyboard_default, + ...cell_default, + ...cellGroup_default, + ...checkbox_default, + ...checkboxGroup_default, + ...circleProgress_default, + ...code_default, + ...codeInput_default, + ...col_default, + ...collapse_default, + ...collapseItem_default, + ...columnNotice_default, + ...countDown_default, + ...countTo_default, + ...datetimePicker_default, + ...divider_default, + ...empty_default, + ...form_default, + ...formItem_default, + ...gap_default, + ...grid_default, + ...gridItem_default, + ...icon_default, + ...image_default, + ...indexAnchor_default, + ...indexList_default, + ...input_default, + ...keyboard_default, + ...line_default, + ...lineProgress_default, + ...link_default, + ...list_default, + ...listItem_default, + ...loadingIcon_default, + ...loadingPage_default, + ...loadmore_default, + ...modal_default, + ...navbar_default, + ...noNetwork_default, + ...noticeBar_default, + ...notify_default, + ...numberBox_default, + ...numberKeyboard_default, + ...overlay_default, + ...parse_default, + ...picker_default, + ...popup_default, + ...radio_default, + ...radioGroup_default, + ...rate_default, + ...readMore_default, + ...row_default, + ...rowNotice_default, + ...scrollList_default, + ...search_default, + ...section_default, + ...skeleton_default, + ...slider_default, + ...statusBar_default, + ...steps_default, + ...stepsItem_default, + ...sticky_default, + ...subsection_default, + ...swipeAction_default, + ...swipeActionItem_default, + ...swiper_default, + ...swipterIndicator_default, + ...switch_default, + ...tabbar_default, + ...tabbarItem_default, + ...tabs_default, + ...tag_default, + ...text_default, + ...textarea_default, + ...toast_default, + ...toolbar_default, + ...tooltip_default, + ...transition_default, + ...upload_default +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/config/zIndex.js +var zIndex_default = { + toast: 10090, + noNetwork: 10080, + // popup包含popup,actionsheet,keyboard,picker的值 + popup: 10075, + mask: 10070, + navbar: 980, + topTips: 975, + sticky: 970, + indexListSticky: 965 +}; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/libs/function/platform.js +var platform = "none"; +platform = "vue3"; +platform = "h5"; +var platform_default = platform; + +// C:/Users/Administrator/Documents/HBuilderProjects/duanju-app-v3/node_modules/uview-plus/index.js +var http = new luch_request_default(); +var themeType = ["primary", "success", "error", "warning", "info"]; +function setConfig(configs) { + function_default.shallowMerge(config_default, configs.config || {}); + function_default.shallowMerge(props_default, configs.props || {}); + function_default.shallowMerge(color_default, configs.color || {}); + function_default.shallowMerge(zIndex_default, configs.zIndex || {}); +} +function_default.setConfig = setConfig; +var $u = { + route: route_default, + date: function_default.timeFormat, + // 另名date + colorGradient: colorGradient_default.colorGradient, + hexToRgb: colorGradient_default.hexToRgb, + rgbToHex: colorGradient_default.rgbToHex, + colorToRgba: colorGradient_default.colorToRgba, + test: test_default, + type: themeType, + http, + config: config_default, + // uview-plus配置信息相关,比如版本号 + zIndex: zIndex_default, + debounce: debounce_default, + throttle: throttle_default, + mixin, + mpMixin, + props: props_default, + ...function_default, + color: color_default, + platform: platform_default +}; +var mount$u = function() { + uni.$u = $u; +}; +var importFn = import.meta.glob("./components/u-*/u-*.vue", { eager: true }); +var components = []; +for (const key in importFn) { + let component = importFn[key].default; + if (component.name && component.name.indexOf("u--") !== 0) { + component.install = function(Vue) { + Vue.component(name, component); + }; + components.push(component); + } +} +var install = (Vue) => { + components.forEach(function(component) { + const name2 = component.name.replace(/u-([a-zA-Z0-9-_]+)/g, "up-$1"); + Vue.component(name2, component); + }); + uni.$u = $u; + Vue.config.globalProperties.$u = $u; + Vue.mixin(mixin); +}; +var uview_plus_default = { + install +}; +export { + $parent, + addStyle, + addUnit, + color_default as color, + colorGradient, + colorToRgba, + debounce_default as debounce, + deepClone, + deepMerge, + uview_plus_default as default, + error, + formValidate, + getDeviceInfo, + getDuration, + getProperty, + getPx, + getValueByPath, + getWindowInfo, + guid, + hexToRgb, + http, + mixin, + mount$u, + mpMixin, + os, + padZero, + page, + pages, + platform_default as platform, + priceFormat, + props_default as props, + queryParams, + random, + randomArray, + range2 as range, + rgbToHex, + route_default as route, + setConfig, + setProperty, + shallowMerge, + sleep, + sys, + test_default as test, + themeType, + throttle_default as throttle, + timeFormat, + timeFrom, + toast, + trim, + type2icon, + zIndex_default as zIndex +}; +//# sourceMappingURL=uview-plus.js.map diff --git a/unpackage/dist/cache/.vite/deps/uview-plus.js.map b/unpackage/dist/cache/.vite/deps/uview-plus.js.map new file mode 100644 index 0000000..f8e3f66 --- /dev/null +++ b/unpackage/dist/cache/.vite/deps/uview-plus.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["../../../../../node_modules/uview-plus/libs/vue.js", "../../../../../node_modules/uview-plus/libs/function/test.js", "../../../../../node_modules/uview-plus/libs/function/digit.js", "../../../../../node_modules/uview-plus/libs/config/config.js", "../../../../../node_modules/uview-plus/libs/function/index.js", "../../../../../node_modules/uview-plus/libs/util/route.js", "../../../../../node_modules/uview-plus/libs/mixin/mixin.js", "../../../../../node_modules/uview-plus/libs/mixin/mpMixin.js", "../../../../../node_modules/uview-plus/libs/luch-request/utils.js", "../../../../../node_modules/uview-plus/libs/luch-request/helpers/buildURL.js", "../../../../../node_modules/uview-plus/libs/luch-request/helpers/isAbsoluteURL.js", "../../../../../node_modules/uview-plus/libs/luch-request/helpers/combineURLs.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/buildFullPath.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/settle.js", "../../../../../node_modules/uview-plus/libs/luch-request/adapters/index.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/dispatchRequest.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/InterceptorManager.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/mergeConfig.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/defaults.js", "../../../../../node_modules/uview-plus/libs/luch-request/utils/clone.js", "../../../../../node_modules/uview-plus/libs/luch-request/core/Request.js", "../../../../../node_modules/uview-plus/libs/luch-request/index.js", "../../../../../node_modules/uview-plus/libs/function/colorGradient.js", "../../../../../node_modules/uview-plus/libs/function/debounce.js", "../../../../../node_modules/uview-plus/libs/function/throttle.js", "../../../../../node_modules/uview-plus/components/u-action-sheet/actionSheet.js", "../../../../../node_modules/uview-plus/components/u-album/album.js", "../../../../../node_modules/uview-plus/components/u-alert/alert.js", "../../../../../node_modules/uview-plus/components/u-avatar/avatar.js", "../../../../../node_modules/uview-plus/components/u-avatar-group/avatarGroup.js", "../../../../../node_modules/uview-plus/components/u-back-top/backtop.js", "../../../../../node_modules/uview-plus/components/u-badge/badge.js", "../../../../../node_modules/uview-plus/components/u-button/button.js", "../../../../../node_modules/uview-plus/components/u-calendar/calendar.js", "../../../../../node_modules/uview-plus/components/u-car-keyboard/carKeyboard.js", "../../../../../node_modules/uview-plus/components/u-cell/cell.js", "../../../../../node_modules/uview-plus/components/u-cell-group/cellGroup.js", "../../../../../node_modules/uview-plus/components/u-checkbox/checkbox.js", "../../../../../node_modules/uview-plus/components/u-checkbox-group/checkboxGroup.js", "../../../../../node_modules/uview-plus/components/u-circle-progress/circleProgress.js", "../../../../../node_modules/uview-plus/components/u-code/code.js", "../../../../../node_modules/uview-plus/components/u-code-input/codeInput.js", "../../../../../node_modules/uview-plus/components/u-col/col.js", "../../../../../node_modules/uview-plus/components/u-collapse/collapse.js", "../../../../../node_modules/uview-plus/components/u-collapse-item/collapseItem.js", "../../../../../node_modules/uview-plus/components/u-column-notice/columnNotice.js", "../../../../../node_modules/uview-plus/components/u-count-down/countDown.js", "../../../../../node_modules/uview-plus/components/u-count-to/countTo.js", "../../../../../node_modules/uview-plus/components/u-datetime-picker/datetimePicker.js", "../../../../../node_modules/uview-plus/components/u-divider/divider.js", "../../../../../node_modules/uview-plus/components/u-empty/empty.js", "../../../../../node_modules/uview-plus/components/u-form/form.js", "../../../../../node_modules/uview-plus/components/u-form-item/formItem.js", "../../../../../node_modules/uview-plus/components/u-gap/gap.js", "../../../../../node_modules/uview-plus/components/u-grid/grid.js", "../../../../../node_modules/uview-plus/components/u-grid-item/gridItem.js", "../../../../../node_modules/uview-plus/components/u-icon/icon.js", "../../../../../node_modules/uview-plus/components/u-image/image.js", "../../../../../node_modules/uview-plus/components/u-index-anchor/indexAnchor.js", "../../../../../node_modules/uview-plus/components/u-index-list/indexList.js", "../../../../../node_modules/uview-plus/components/u-input/input.js", "../../../../../node_modules/uview-plus/components/u-keyboard/keyboard.js", "../../../../../node_modules/uview-plus/components/u-line/line.js", "../../../../../node_modules/uview-plus/components/u-line-progress/lineProgress.js", "../../../../../node_modules/uview-plus/components/u-link/link.js", "../../../../../node_modules/uview-plus/components/u-list/list.js", "../../../../../node_modules/uview-plus/components/u-list-item/listItem.js", "../../../../../node_modules/uview-plus/components/u-loading-icon/loadingIcon.js", "../../../../../node_modules/uview-plus/components/u-loading-page/loadingPage.js", "../../../../../node_modules/uview-plus/components/u-loadmore/loadmore.js", "../../../../../node_modules/uview-plus/components/u-modal/modal.js", "../../../../../node_modules/uview-plus/libs/config/color.js", "../../../../../node_modules/uview-plus/components/u-navbar/navbar.js", "../../../../../node_modules/uview-plus/components/u-no-network/noNetwork.js", "../../../../../node_modules/uview-plus/components/u-notice-bar/noticeBar.js", "../../../../../node_modules/uview-plus/components/u-notify/notify.js", "../../../../../node_modules/uview-plus/components/u-number-box/numberBox.js", "../../../../../node_modules/uview-plus/components/u-number-keyboard/numberKeyboard.js", "../../../../../node_modules/uview-plus/components/u-overlay/overlay.js", "../../../../../node_modules/uview-plus/components/u-parse/parse.js", "../../../../../node_modules/uview-plus/components/u-picker/picker.js", "../../../../../node_modules/uview-plus/components/u-popup/popup.js", "../../../../../node_modules/uview-plus/components/u-radio/radio.js", "../../../../../node_modules/uview-plus/components/u-radio-group/radioGroup.js", "../../../../../node_modules/uview-plus/components/u-rate/rate.js", "../../../../../node_modules/uview-plus/components/u-read-more/readMore.js", "../../../../../node_modules/uview-plus/components/u-row/row.js", "../../../../../node_modules/uview-plus/components/u-row-notice/rowNotice.js", "../../../../../node_modules/uview-plus/components/u-scroll-list/scrollList.js", "../../../../../node_modules/uview-plus/components/u-search/search.js", "../../../../../node_modules/uview-plus/components/u-section/section.js", "../../../../../node_modules/uview-plus/components/u-skeleton/skeleton.js", "../../../../../node_modules/uview-plus/components/u-slider/slider.js", "../../../../../node_modules/uview-plus/components/u-status-bar/statusBar.js", "../../../../../node_modules/uview-plus/components/u-steps/steps.js", "../../../../../node_modules/uview-plus/components/u-steps-item/stepsItem.js", "../../../../../node_modules/uview-plus/components/u-sticky/sticky.js", "../../../../../node_modules/uview-plus/components/u-subsection/subsection.js", "../../../../../node_modules/uview-plus/components/u-swipe-action/swipeAction.js", "../../../../../node_modules/uview-plus/components/u-swipe-action-item/swipeActionItem.js", "../../../../../node_modules/uview-plus/components/u-swiper/swiper.js", "../../../../../node_modules/uview-plus/components/u-swiper-indicator/swipterIndicator.js", "../../../../../node_modules/uview-plus/components/u-switch/switch.js", "../../../../../node_modules/uview-plus/components/u-tabbar/tabbar.js", "../../../../../node_modules/uview-plus/components/u-tabbar-item/tabbarItem.js", "../../../../../node_modules/uview-plus/components/u-tabs/tabs.js", "../../../../../node_modules/uview-plus/components/u-tag/tag.js", "../../../../../node_modules/uview-plus/components/u-text/text.js", "../../../../../node_modules/uview-plus/components/u-textarea/textarea.js", "../../../../../node_modules/uview-plus/components/u-toast/toast.js", "../../../../../node_modules/uview-plus/components/u-toolbar/toolbar.js", "../../../../../node_modules/uview-plus/components/u-tooltip/tooltip.js", "../../../../../node_modules/uview-plus/components/u-transition/transition.js", "../../../../../node_modules/uview-plus/components/u-upload/upload.js", "../../../../../node_modules/uview-plus/libs/config/props.js", "../../../../../node_modules/uview-plus/libs/config/zIndex.js", "../../../../../node_modules/uview-plus/libs/function/platform.js", "../../../../../node_modules/uview-plus/index.js"], + "sourcesContent": ["export const defineMixin = (options) => {\n return options\n}\n", "/**\r\n * 验证电子邮箱格式\r\n */\r\nexport function email(value) {\r\n return /^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证手机格式\r\n */\r\nexport function mobile(value) {\r\n return /^1[23456789]\\d{9}$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证URL格式\r\n */\r\nexport function url(value) {\r\n return /^((https|http|ftp|rtsp|mms):\\/\\/)(([0-9a-zA-Z_!~*'().&=+$%-]+: )?[0-9a-zA-Z_!~*'().&=+$%-]+@)?(([0-9]{1,3}.){3}[0-9]{1,3}|([0-9a-zA-Z_!~*'()-]+.)*([0-9a-zA-Z][0-9a-zA-Z-]{0,61})?[0-9a-zA-Z].[a-zA-Z]{2,6})(:[0-9]{1,4})?((\\/?)|(\\/[0-9a-zA-Z_!~*'().;?:@&=+$,%#-]+)+\\/?)$/\r\n .test(value)\r\n}\r\n\r\n/**\r\n * 验证日期格式\r\n * @param {number | string} value yyyy-mm-dd hh:mm:ss 或 时间戳\r\n */\r\nexport function date(value) {\r\n if (!value) return false;\r\n // number类型,判断是否是时间戳\r\n if (typeof value === \"number\") {\r\n // len === 10 秒级时间戳 len === 13 毫秒级时间戳\r\n if (value.toString().length !== 10 && value.toString().length !== 13) {\r\n return false;\r\n }\r\n return !isNaN(new Date(value).getTime());\r\n }\r\n if (typeof value === \"string\") {\r\n // 是否为string类型时间戳\r\n const numV = Number(value);\r\n if (!isNaN(numV)) {\r\n if (\r\n numV.toString().length === 10 ||\r\n numV.toString().length === 13\r\n ) {\r\n return !isNaN(new Date(numV).getTime());\r\n }\r\n }\r\n // 非时间戳,且长度在yyyy-mm-dd 至 yyyy-mm-dd hh:mm:ss 之间\r\n if (value.length < 10 || value.length > 19) {\r\n return false;\r\n }\r\n const dateRegex =\r\n /^\\d{4}[-\\/]\\d{2}[-\\/]\\d{2}( \\d{1,2}:\\d{2}(:\\d{2})?)?$/;\r\n if (!dateRegex.test(value)) {\r\n return false;\r\n }\r\n // 检查是否为有效日期\r\n const dateValue = new Date(value);\r\n return !isNaN(dateValue.getTime());\r\n }\r\n // 非number和string类型,不做校验\r\n return false;\r\n}\r\n\r\n/**\r\n * 验证ISO类型的日期格式\r\n */\r\nexport function dateISO(value) {\r\n return /^\\d{4}[\\/\\-](0?[1-9]|1[012])[\\/\\-](0?[1-9]|[12][0-9]|3[01])$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证十进制数字\r\n */\r\nexport function number(value) {\r\n return /^[\\+-]?(\\d+\\.?\\d*|\\.\\d+|\\d\\.\\d+e\\+\\d+)$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证字符串\r\n */\r\nexport function string(value) {\r\n return typeof value === 'string'\r\n}\r\n\r\n/**\r\n * 验证整数\r\n */\r\nexport function digits(value) {\r\n return /^\\d+$/.test(value)\r\n}\r\n\r\n/**\r\n * 验证身份证号码\r\n */\r\nexport function idCard(value) {\r\n return /^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$/.test(\r\n value\r\n )\r\n}\r\n\r\n/**\r\n * 是否车牌号\r\n */\r\nexport function carNo(value) {\r\n // 新能源车牌\r\n const xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/\r\n // 旧车牌\r\n const creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/\r\n if (value.length === 7) {\r\n return creg.test(value)\r\n } if (value.length === 8) {\r\n return xreg.test(value)\r\n }\r\n return false\r\n}\r\n\r\n/**\r\n * 金额,只允许2位小数\r\n */\r\nexport function amount(value) {\r\n // 金额,只允许保留两位小数\r\n return /^[1-9]\\d*(,\\d{3})*(\\.\\d{1,2})?$|^0\\.\\d{1,2}$/.test(value)\r\n}\r\n\r\n/**\r\n * 中文\r\n */\r\nexport function chinese(value) {\r\n const reg = /^[\\u4e00-\\u9fa5]+$/gi\r\n return reg.test(value)\r\n}\r\n\r\n/**\r\n * 只能输入字母\r\n */\r\nexport function letter(value) {\r\n return /^[a-zA-Z]*$/.test(value)\r\n}\r\n\r\n/**\r\n * 只能是字母或者数字\r\n */\r\nexport function enOrNum(value) {\r\n // 英文或者数字\r\n const reg = /^[0-9a-zA-Z]*$/g\r\n return reg.test(value)\r\n}\r\n\r\n/**\r\n * 验证是否包含某个值\r\n */\r\nexport function contains(value, param) {\r\n return value.indexOf(param) >= 0\r\n}\r\n\r\n/**\r\n * 验证一个值范围[min, max]\r\n */\r\nexport function range(value, param) {\r\n return value >= param[0] && value <= param[1]\r\n}\r\n\r\n/**\r\n * 验证一个长度范围[min, max]\r\n */\r\nexport function rangeLength(value, param) {\r\n return value.length >= param[0] && value.length <= param[1]\r\n}\r\n\r\n/**\r\n * 是否固定电话\r\n */\r\nexport function landline(value) {\r\n const reg = /^\\d{3,4}-\\d{7,8}(-\\d{3,4})?$/\r\n return reg.test(value)\r\n}\r\n\r\n/**\r\n * 判断是否为空\r\n */\r\nexport function empty(value) {\r\n switch (typeof value) {\r\n case 'undefined':\r\n return true\r\n case 'string':\r\n if (value.replace(/(^[ \\t\\n\\r]*)|([ \\t\\n\\r]*$)/g, '').length == 0) return true\r\n break\r\n case 'boolean':\r\n if (!value) return true\r\n break\r\n case 'number':\r\n if (value === 0 || isNaN(value)) return true\r\n break\r\n case 'object':\r\n if (value === null || value.length === 0) return true\r\n for (const i in value) {\r\n return false\r\n }\r\n return true\r\n }\r\n return false\r\n}\r\n\r\n/**\r\n * 是否json字符串\r\n */\r\nexport function jsonString(value) {\r\n if (typeof value === 'string') {\r\n try {\r\n const obj = JSON.parse(value)\r\n if (typeof obj === 'object' && obj) {\r\n return true\r\n }\r\n return false\r\n } catch (e) {\r\n return false\r\n }\r\n }\r\n return false\r\n}\r\n\r\n/**\r\n * 是否数组\r\n */\r\nexport function array(value) {\r\n if (typeof Array.isArray === 'function') {\r\n return Array.isArray(value)\r\n }\r\n return Object.prototype.toString.call(value) === '[object Array]'\r\n}\r\n\r\n/**\r\n * 是否对象\r\n */\r\nexport function object(value) {\r\n return Object.prototype.toString.call(value) === '[object Object]'\r\n}\r\n\r\n/**\r\n * 是否短信验证码\r\n */\r\nexport function code(value, len = 6) {\r\n return new RegExp(`^\\\\d{${len}}$`).test(value)\r\n}\r\n\r\n/**\r\n * 是否函数方法\r\n * @param {Object} value\r\n */\r\nexport function func(value) {\r\n return typeof value === 'function'\r\n}\r\n\r\n/**\r\n * 是否promise对象\r\n * @param {Object} value\r\n */\r\nexport function promise(value) {\r\n return object(value) && func(value.then) && func(value.catch)\r\n}\r\n\r\n/** 是否图片格式\r\n * @param {Object} value\r\n */\r\nexport function image(value) {\r\n const newValue = value.split('?')[0]\r\n const IMAGE_REGEXP = /\\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i\r\n return IMAGE_REGEXP.test(newValue)\r\n}\r\n\r\n/**\r\n * 是否视频格式\r\n * @param {Object} value\r\n */\r\nexport function video(value) {\r\n const VIDEO_REGEXP = /\\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8)/i\r\n return VIDEO_REGEXP.test(value)\r\n}\r\n\r\n/**\r\n * 是否为正则对象\r\n * @param {Object}\r\n * @return {Boolean}\r\n */\r\nexport function regExp(o) {\r\n return o && Object.prototype.toString.call(o) === '[object RegExp]'\r\n}\r\n\r\nexport default {\r\n email,\r\n mobile,\r\n url,\r\n date,\r\n dateISO,\r\n number,\r\n digits,\r\n idCard,\r\n carNo,\r\n amount,\r\n chinese,\r\n letter,\r\n enOrNum,\r\n contains,\r\n range,\r\n rangeLength,\r\n empty,\r\n isEmpty: empty,\r\n jsonString,\r\n landline,\r\n object,\r\n array,\r\n code,\r\n func,\r\n promise,\r\n video,\r\n image,\r\n regExp,\r\n string\r\n}\r\n", "let _boundaryCheckingState = true; // 是否进行越界检查的全局开关\n\n/**\n * 把错误的数据转正\n * @private\n * @example strip(0.09999999999999998)=0.1\n */\nexport function strip(num, precision = 15) {\n return +parseFloat(Number(num).toPrecision(precision));\n}\n\n/**\n * Return digits length of a number\n * @private\n * @param {*number} num Input number\n */\nexport function digitLength(num) {\n // Get digit length of e\n const eSplit = num.toString().split(/[eE]/);\n const len = (eSplit[0].split('.')[1] || '').length - +(eSplit[1] || 0);\n return len > 0 ? len : 0;\n}\n\n/**\n * 把小数转成整数,如果是小数则放大成整数\n * @private\n * @param {*number} num 输入数\n */\nexport function float2Fixed(num) {\n if (num.toString().indexOf('e') === -1) {\n return Number(num.toString().replace('.', ''));\n }\n const dLen = digitLength(num);\n return dLen > 0 ? strip(Number(num) * Math.pow(10, dLen)) : Number(num);\n}\n\n/**\n * 检测数字是否越界,如果越界给出提示\n * @private\n * @param {*number} num 输入数\n */\nexport function checkBoundary(num) {\n if (_boundaryCheckingState) {\n if (num > Number.MAX_SAFE_INTEGER || num < Number.MIN_SAFE_INTEGER) {\n console.warn(`${num} 超出了精度限制,结果可能不正确`);\n }\n }\n}\n\n/**\n * 把递归操作扁平迭代化\n * @param {number[]} arr 要操作的数字数组\n * @param {function} operation 迭代操作\n * @private\n */\nexport function iteratorOperation(arr, operation) {\n const [num1, num2, ...others] = arr;\n let res = operation(num1, num2);\n\n others.forEach((num) => {\n res = operation(res, num);\n });\n\n return res;\n}\n\n/**\n * 高精度乘法\n * @export\n */\nexport function times(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, times);\n }\n\n const [num1, num2] = nums;\n const num1Changed = float2Fixed(num1);\n const num2Changed = float2Fixed(num2);\n const baseNum = digitLength(num1) + digitLength(num2);\n const leftValue = num1Changed * num2Changed;\n\n checkBoundary(leftValue);\n\n return leftValue / Math.pow(10, baseNum);\n}\n\n/**\n * 高精度加法\n * @export\n */\nexport function plus(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, plus);\n }\n\n const [num1, num2] = nums;\n // 取最大的小数位\n const baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));\n // 把小数都转为整数然后再计算\n return (times(num1, baseNum) + times(num2, baseNum)) / baseNum;\n}\n\n/**\n * 高精度减法\n * @export\n */\nexport function minus(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, minus);\n }\n\n const [num1, num2] = nums;\n const baseNum = Math.pow(10, Math.max(digitLength(num1), digitLength(num2)));\n return (times(num1, baseNum) - times(num2, baseNum)) / baseNum;\n}\n\n/**\n * 高精度除法\n * @export\n */\nexport function divide(...nums) {\n if (nums.length > 2) {\n return iteratorOperation(nums, divide);\n }\n\n const [num1, num2] = nums;\n const num1Changed = float2Fixed(num1);\n const num2Changed = float2Fixed(num2);\n checkBoundary(num1Changed);\n checkBoundary(num2Changed);\n // 重要,这里必须用strip进行修正\n return times(num1Changed / num2Changed, strip(Math.pow(10, digitLength(num2) - digitLength(num1))));\n}\n\n/**\n * 四舍五入\n * @export\n */\nexport function round(num, ratio) {\n const base = Math.pow(10, ratio);\n let result = divide(Math.round(Math.abs(times(num, base))), base);\n if (num < 0 && result !== 0) {\n result = times(result, -1);\n }\n // 位数不足则补0\n return result;\n}\n\n/**\n * 是否进行边界检查,默认开启\n * @param flag 标记开关,true 为开启,false 为关闭,默认为 true\n * @export\n */\nexport function enableBoundaryChecking(flag = true) {\n _boundaryCheckingState = flag;\n}\n\n\nexport default {\n times,\n plus,\n minus,\n divide,\n round,\n enableBoundaryChecking,\n};\n\n", "const version = '3'\n\n// 开发环境才提示,生产环境不会提示\nif (process.env.NODE_ENV === 'development') {\n\tconsole.log(`\\n %c uview-plus V${version} %c https://ijry.github.io/uview-plus/ \\n\\n`, 'color: #ffffff; background: #3c9cff; padding:5px 0;', 'color: #3c9cff;background: #ffffff; padding:5px 0;');\n}\n\nexport default {\n v: version,\n version,\n // 主题名称\n type: [\n 'primary',\n 'success',\n 'info',\n 'error',\n 'warning'\n ],\n // 颜色部分,本来可以通过scss的:export导出供js使用,但是奈何nvue不支持\n color: {\n 'u-primary': '#2979ff',\n 'u-warning': '#ff9900',\n 'u-success': '#19be6b',\n 'u-error': '#fa3534',\n 'u-info': '#909399',\n 'u-main-color': '#303133',\n 'u-content-color': '#606266',\n 'u-tips-color': '#909399',\n 'u-light-color': '#c0c4cc',\n 'up-primary': '#2979ff',\n 'up-warning': '#ff9900',\n 'up-success': '#19be6b',\n 'up-error': '#fa3534',\n 'up-info': '#909399',\n 'up-main-color': '#303133',\n 'up-content-color': '#606266',\n 'up-tips-color': '#909399',\n 'up-light-color': '#c0c4cc'\n },\n\t// 默认单位,可以通过配置为rpx,那么在用于传入组件大小参数为数值时,就默认为rpx\n\tunit: 'px'\n}\n", "import {\r\n\tnumber as testNumber,\r\n\tarray as testArray,\r\n\tempty as testEmpty\r\n} from './test'\r\nimport { round } from './digit.js'\r\nimport config from '../config/config';\r\n/**\r\n * @description 如果value小于min,取min;如果value大于max,取max\r\n * @param {number} min \r\n * @param {number} max \r\n * @param {number} value\r\n */\r\nexport function range(min = 0, max = 0, value = 0) {\r\n\treturn Math.max(min, Math.min(max, Number(value)))\r\n}\r\n\r\n/**\r\n * @description 用于获取用户传递值的px值 如果用户传递了\"xxpx\"或者\"xxrpx\",取出其数值部分,如果是\"xxxrpx\"还需要用过uni.rpx2px进行转换\r\n * @param {number|string} value 用户传递值的px值\r\n * @param {boolean} unit \r\n * @returns {number|string}\r\n */\r\nexport function getPx(value, unit = false) {\r\n\tif (testNumber(value)) {\r\n\t\treturn unit ? `${value}px` : Number(value)\r\n\t}\r\n\t// 如果带有rpx,先取出其数值部分,再转为px值\r\n\tif (/(rpx|upx)$/.test(value)) {\r\n\t\treturn unit ? `${uni.upx2px(parseInt(value))}px` : Number(uni.upx2px(parseInt(value)))\r\n\t}\r\n\treturn unit ? `${parseInt(value)}px` : parseInt(value)\r\n}\r\n\r\n/**\r\n * @description 进行延时,以达到可以简写代码的目的 比如: await uni.$u.sleep(20)将会阻塞20ms\r\n * @param {number} value 堵塞时间 单位ms 毫秒\r\n * @returns {Promise} 返回promise\r\n */\r\nexport function sleep(value = 30) {\r\n\treturn new Promise((resolve) => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tresolve()\r\n\t\t}, value)\r\n\t})\r\n}\r\n/**\r\n * @description 运行期判断平台\r\n * @returns {string} 返回所在平台(小写) \r\n * @link 运行期判断平台 https://uniapp.dcloud.io/frame?id=判断平台\r\n */\r\nexport function os() {\r\n\r\n\treturn uni.getDeviceInfo().platform.toLowerCase()\r\n\r\n\r\n\r\n\r\n}\r\n/**\r\n * @description 获取系统信息同步接口\r\n * @link 获取系统信息同步接口 https://uniapp.dcloud.io/api/system/info?id=getsysteminfosync \r\n */\r\nexport function sys() {\r\n\treturn uni.getSystemInfoSync()\r\n}\r\nexport function getWindowInfo() {\r\n\tlet ret = {}\r\n\r\n\tret = uni.getWindowInfo()\r\n\r\n\r\n\r\n\r\n\treturn ret\r\n}\r\nexport function getDeviceInfo() {\r\n\tlet ret = {}\r\n\r\n\tret = uni.getDeviceInfo()\r\n\r\n\r\n\r\n\r\n\treturn ret\r\n}\r\n\r\n/**\r\n * @description 取一个区间数\r\n * @param {Number} min 最小值\r\n * @param {Number} max 最大值\r\n */\r\nexport function random(min, max) {\r\n\tif (min >= 0 && max > 0 && max >= min) {\r\n\t\tconst gab = max - min + 1\r\n\t\treturn Math.floor(Math.random() * gab + min)\r\n\t}\r\n\treturn 0\r\n}\r\n\r\n/**\r\n * @param {Number} len uuid的长度\r\n * @param {Boolean} firstU 将返回的首字母置为\"u\"\r\n * @param {Nubmer} radix 生成uuid的基数(意味着返回的字符串都是这个基数),2-二进制,8-八进制,10-十进制,16-十六进制\r\n */\r\nexport function guid(len = 32, firstU = true, radix = null) {\r\n\tconst chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('')\r\n\tconst uuid = []\r\n\tradix = radix || chars.length\r\n\r\n\tif (len) {\r\n\t\t// 如果指定uuid长度,只是取随机的字符,0|x为位运算,能去掉x的小数位,返回整数位\r\n\t\tfor (let i = 0; i < len; i++) uuid[i] = chars[0 | Math.random() * radix]\r\n\t} else {\r\n\t\tlet r\r\n\t\t// rfc4122标准要求返回的uuid中,某些位为固定的字符\r\n\t\tuuid[8] = uuid[13] = uuid[18] = uuid[23] = '-'\r\n\t\tuuid[14] = '4'\r\n\r\n\t\tfor (let i = 0; i < 36; i++) {\r\n\t\t\tif (!uuid[i]) {\r\n\t\t\t\tr = 0 | Math.random() * 16\r\n\t\t\t\tuuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r]\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t// 移除第一个字符,并用u替代,因为第一个字符为数值时,该guuid不能用作id或者class\r\n\tif (firstU) {\r\n\t\tuuid.shift()\r\n\t\treturn `u${uuid.join('')}`\r\n\t}\r\n\treturn uuid.join('')\r\n}\r\n\r\n/**\r\n* @description 获取父组件的参数,因为支付宝小程序不支持provide/inject的写法\r\n this.$parent在非H5中,可以准确获取到父组件,但是在H5中,需要多次this.$parent.$parent.xxx\r\n 这里默认值等于undefined有它的含义,因为最顶层元素(组件)的$parent就是undefined,意味着不传name\r\n 值(默认为undefined),就是查找最顶层的$parent\r\n* @param {string|undefined} name 父组件的参数名\r\n*/\r\nexport function $parent(name = undefined) {\r\n\tlet parent = this.$parent\r\n\t// 通过while历遍,这里主要是为了H5需要多层解析的问题\r\n\twhile (parent) {\r\n\t\t// 父组件\r\n name = name.replace(/up-([a-zA-Z0-9-_]+)/g, 'u-$1') \r\n\t\tif (parent.$options && parent.$options.name !== name) {\r\n\t\t\t// 如果组件的name不相等,继续上一级寻找\r\n\t\t\tparent = parent.$parent\r\n\t\t} else {\r\n\t\t\treturn parent\r\n\t\t}\r\n\t}\r\n\treturn false\r\n}\r\n\r\n/**\r\n * @description 样式转换\r\n * 对象转字符串,或者字符串转对象\r\n * @param {object | string} customStyle 需要转换的目标\r\n * @param {String} target 转换的目的,object-转为对象,string-转为字符串\r\n * @returns {object|string}\r\n */\r\nexport function addStyle(customStyle, target = 'object') {\r\n\t// 字符串转字符串,对象转对象情形,直接返回\r\n\tif (testEmpty(customStyle) || typeof(customStyle) === 'object' && target === 'object' || target === 'string' &&\r\n\t\ttypeof(customStyle) === 'string') {\r\n\t\treturn customStyle\r\n\t}\r\n\t// 字符串转对象\r\n\tif (target === 'object') {\r\n\t\t// 去除字符串样式中的两端空格(中间的空格不能去掉,比如padding: 20px 0如果去掉了就错了),空格是无用的\r\n\t\tcustomStyle = trim(customStyle)\r\n\t\t// 根据\";\"将字符串转为数组形式\r\n\t\tconst styleArray = customStyle.split(';')\r\n\t\tconst style = {}\r\n\t\t// 历遍数组,拼接成对象\r\n\t\tfor (let i = 0; i < styleArray.length; i++) {\r\n\t\t\t// 'font-size:20px;color:red;',如此最后字符串有\";\"的话,会导致styleArray最后一个元素为空字符串,这里需要过滤\r\n\t\t\tif (styleArray[i]) {\r\n\t\t\t\tconst item = styleArray[i].split(':')\r\n\t\t\t\tstyle[trim(item[0])] = trim(item[1])\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn style\r\n\t}\r\n\t// 这里为对象转字符串形式\r\n\tlet string = ''\r\n\tif (typeof customStyle === 'object') {\r\n\t\tcustomStyle.forEach((val, i) => {\r\n\t\t\t// 驼峰转为中划线的形式,否则css内联样式,无法识别驼峰样式属性名\r\n\t\t\tconst key = i.replace(/([A-Z])/g, '-$1').toLowerCase()\r\n\t\t\tstring += `${key}:${val};`\r\n\t\t})\r\n\t}\r\n\t// 去除两端空格\r\n\treturn trim(string)\r\n}\r\n\r\n/**\r\n * @description 添加单位,如果有rpx,upx,%,px等单位结尾或者值为auto,直接返回,否则加上px单位结尾\r\n * @param {string|number} value 需要添加单位的值\r\n * @param {string} unit 添加的单位名 比如px\r\n */\r\nexport function addUnit(value = 'auto', unit = '') {\r\n\tif (!unit) {\r\n\t\tunit = config.unit || 'px'\r\n\t}\r\n\tif (unit == 'rpx' && testNumber(String(value))) {\r\n\t\tvalue = value * 2\r\n\t}\r\n\tvalue = String(value)\r\n\t// 用内置验证规则中的number判断是否为数值\r\n\treturn testNumber(value) ? `${value}${unit}` : value\r\n}\r\n\r\n/**\r\n * @description 深度克隆\r\n * @param {object} obj 需要深度克隆的对象\r\n * @returns {*} 克隆后的对象或者原值(不是对象)\r\n */\r\nexport function deepClone(obj) {\r\n\t// 对常见的“非”值,直接返回原来值\r\n\tif ([null, undefined, NaN, false].includes(obj)) return obj\r\n\tif (typeof obj !== 'object' && typeof obj !== 'function') {\r\n\t\t// 原始类型直接返回\r\n\t\treturn obj\r\n\t}\r\n\tconst o = testArray(obj) ? [] : {}\r\n\tfor (const i in obj) {\r\n\t\tif (obj.hasOwnProperty(i)) {\r\n\t\t\to[i] = typeof obj[i] === 'object' ? deepClone(obj[i]) : obj[i]\r\n\t\t}\r\n\t}\r\n\treturn o\r\n}\r\n\r\n/**\r\n * @description JS对象深度合并\r\n * @param {object} target 需要拷贝的对象\r\n * @param {object} source 拷贝的来源对象\r\n * @returns {object|boolean} 深度合并后的对象或者false(入参有不是对象)\r\n */\r\nexport function deepMerge(targetOrigin = {}, source = {}) {\r\n\tlet target = deepClone(targetOrigin)\r\n\tif (typeof target !== 'object' || typeof source !== 'object') return false\r\n\tfor (const prop in source) {\r\n\t\tif (!source.hasOwnProperty(prop)) continue\r\n\t\tif (prop in target) {\r\n\t\t\tif (source[prop] == null) {\r\n\t\t\t\ttarget[prop] = source[prop]\r\n\t\t\t}else if (typeof target[prop] !== 'object') {\r\n\t\t\t\ttarget[prop] = source[prop]\r\n\t\t\t} else if (typeof source[prop] !== 'object') {\r\n\t\t\t\ttarget[prop] = source[prop]\r\n\t\t\t} else if (target[prop].concat && source[prop].concat) {\r\n\t\t\t\ttarget[prop] = target[prop].concat(source[prop])\r\n\t\t\t} else {\r\n\t\t\t\ttarget[prop] = deepMerge(target[prop], source[prop])\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\ttarget[prop] = source[prop]\r\n\t\t}\r\n\t}\r\n\treturn target\r\n}\r\n/**\r\n * @description JS对象深度合并\r\n * @param {object} target 需要拷贝的对象\r\n * @param {object} source 拷贝的来源对象\r\n * @returns {object|boolean} 深度合并后的对象或者false(入参有不是对象)\r\n */\r\nexport function shallowMerge(target, source = {}) {\r\n\tif (typeof target !== 'object' || typeof source !== 'object') return false\r\n\tfor (const prop in source) {\r\n\t\tif (!source.hasOwnProperty(prop)) continue\r\n\t\tif (prop in target) {\r\n\t\t\tif (source[prop] == null) {\r\n\t\t\t\ttarget[prop] = source[prop]\r\n\t\t\t}else if (typeof target[prop] !== 'object') {\r\n\t\t\t\ttarget[prop] = source[prop]\r\n\t\t\t} else if (typeof source[prop] !== 'object') {\r\n\t\t\t\ttarget[prop] = source[prop]\r\n\t\t\t} else if (target[prop].concat && source[prop].concat) {\r\n\t\t\t\ttarget[prop] = target[prop].concat(source[prop])\r\n\t\t\t} else {\r\n\t\t\t\ttarget[prop] = shallowMerge(target[prop], source[prop])\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\ttarget[prop] = source[prop]\r\n\t\t}\r\n\t}\r\n\treturn target\r\n}\r\n\r\n/**\r\n * @description error提示\r\n * @param {*} err 错误内容\r\n */\r\nexport function error(err) {\r\n\t// 开发环境才提示,生产环境不会提示\r\n\tif (process.env.NODE_ENV === 'development') {\r\n\t\tconsole.error(`uView提示:${err}`)\r\n\t}\r\n}\r\n\r\n/**\r\n * @description 打乱数组\r\n * @param {array} array 需要打乱的数组\r\n * @returns {array} 打乱后的数组\r\n */\r\nexport function randomArray(array = []) {\r\n\t// 原理是sort排序,Math.random()产生0<= x < 1之间的数,会导致x-0.05大于或者小于0\r\n\treturn array.sort(() => Math.random() - 0.5)\r\n}\r\n\r\n// padStart 的 polyfill,因为某些机型或情况,还无法支持es7的padStart,比如电脑版的微信小程序\r\n// 所以这里做一个兼容polyfill的兼容处理\r\nif (!String.prototype.padStart) {\r\n\t// 为了方便表示这里 fillString 用了ES6 的默认参数,不影响理解\r\n\tString.prototype.padStart = function(maxLength, fillString = ' ') {\r\n\t\tif (Object.prototype.toString.call(fillString) !== '[object String]') {\r\n\t\t\tthrow new TypeError(\r\n\t\t\t\t'fillString must be String'\r\n\t\t\t)\r\n\t\t}\r\n\t\tconst str = this\r\n\t\t// 返回 String(str) 这里是为了使返回的值是字符串字面量,在控制台中更符合直觉\r\n\t\tif (str.length >= maxLength) return String(str)\r\n\r\n\t\tconst fillLength = maxLength - str.length\r\n\t\tlet times = Math.ceil(fillLength / fillString.length)\r\n\t\twhile (times >>= 1) {\r\n\t\t\tfillString += fillString\r\n\t\t\tif (times === 1) {\r\n\t\t\t\tfillString += fillString\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn fillString.slice(0, fillLength) + str\r\n\t}\r\n}\r\n\r\n/**\r\n * @description 格式化时间\r\n * @param {String|Number} dateTime 需要格式化的时间戳\r\n * @param {String} fmt 格式化规则 yyyy:mm:dd|yyyy:mm|yyyy年mm月dd日|yyyy年mm月dd日 hh时MM分等,可自定义组合 默认yyyy-mm-dd\r\n * @returns {string} 返回格式化后的字符串\r\n */\r\nexport function timeFormat(dateTime = null, formatStr = 'yyyy-mm-dd') {\r\n let date\r\n\t// 若传入时间为假值,则取当前时间\r\n if (!dateTime) {\r\n date = new Date()\r\n }\r\n // 若为unix秒时间戳,则转为毫秒时间戳(逻辑有点奇怪,但不敢改,以保证历史兼容)\r\n else if (/^\\d{10}$/.test(dateTime.toString().trim())) {\r\n date = new Date(dateTime * 1000)\r\n }\r\n // 若用户传入字符串格式时间戳,new Date无法解析,需做兼容\r\n else if (typeof dateTime === 'string' && /^\\d+$/.test(dateTime.trim())) {\r\n date = new Date(Number(dateTime))\r\n }\r\n // 其他都认为符合 RFC 2822 规范\r\n else {\r\n // 处理平台性差异,在Safari/Webkit中,new Date仅支持/作为分割符的字符串时间\r\n date = new Date(\r\n typeof dateTime === 'string'\r\n ? dateTime.replace(/-/g, '/')\r\n : dateTime\r\n )\r\n }\r\n\r\n\tconst timeSource = {\r\n\t\t'y': date.getFullYear().toString(), // 年\r\n\t\t'm': (date.getMonth() + 1).toString().padStart(2, '0'), // 月\r\n\t\t'd': date.getDate().toString().padStart(2, '0'), // 日\r\n\t\t'h': date.getHours().toString().padStart(2, '0'), // 时\r\n\t\t'M': date.getMinutes().toString().padStart(2, '0'), // 分\r\n\t\t's': date.getSeconds().toString().padStart(2, '0') // 秒\r\n\t\t// 有其他格式化字符需求可以继续添加,必须转化成字符串\r\n\t}\r\n\r\n for (const key in timeSource) {\r\n const [ret] = new RegExp(`${key}+`).exec(formatStr) || []\r\n if (ret) {\r\n // 年可能只需展示两位\r\n const beginIndex = key === 'y' && ret.length === 2 ? 2 : 0\r\n formatStr = formatStr.replace(ret, timeSource[key].slice(beginIndex))\r\n }\r\n }\r\n\r\n return formatStr\r\n}\r\n\r\n/**\r\n * @description 时间戳转为多久之前\r\n * @param {String|Number} timestamp 时间戳\r\n * @param {String|Boolean} format \r\n * 格式化规则如果为时间格式字符串,超出一定时间范围,返回固定的时间格式;\r\n * 如果为布尔值false,无论什么时间,都返回多久以前的格式\r\n * @returns {string} 转化后的内容\r\n */\r\nexport function timeFrom(timestamp = null, format = 'yyyy-mm-dd') {\r\n\tif (timestamp == null) timestamp = Number(new Date())\r\n\ttimestamp = parseInt(timestamp)\r\n\t// 判断用户输入的时间戳是秒还是毫秒,一般前端js获取的时间戳是毫秒(13位),后端传过来的为秒(10位)\r\n\tif (timestamp.toString().length == 10) timestamp *= 1000\r\n\tlet timer = (new Date()).getTime() - timestamp\r\n\ttimer = parseInt(timer / 1000)\r\n\t// 如果小于5分钟,则返回\"刚刚\",其他以此类推\r\n\tlet tips = ''\r\n\tswitch (true) {\r\n\t\tcase timer < 300:\r\n\t\t\ttips = '刚刚'\r\n\t\t\tbreak\r\n\t\tcase timer >= 300 && timer < 3600:\r\n\t\t\ttips = `${parseInt(timer / 60)}分钟前`\r\n\t\t\tbreak\r\n\t\tcase timer >= 3600 && timer < 86400:\r\n\t\t\ttips = `${parseInt(timer / 3600)}小时前`\r\n\t\t\tbreak\r\n\t\tcase timer >= 86400 && timer < 2592000:\r\n\t\t\ttips = `${parseInt(timer / 86400)}天前`\r\n\t\t\tbreak\r\n\t\tdefault:\r\n\t\t\t// 如果format为false,则无论什么时间戳,都显示xx之前\r\n\t\t\tif (format === false) {\r\n\t\t\t\tif (timer >= 2592000 && timer < 365 * 86400) {\r\n\t\t\t\t\ttips = `${parseInt(timer / (86400 * 30))}个月前`\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttips = `${parseInt(timer / (86400 * 365))}年前`\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\ttips = timeFormat(timestamp, format)\r\n\t\t\t}\r\n\t}\r\n\treturn tips\r\n}\r\n\r\n/**\r\n * @description 去除空格\r\n * @param String str 需要去除空格的字符串\r\n * @param String pos both(左右)|left|right|all 默认both\r\n */\r\nexport function trim(str, pos = 'both') {\r\n\tstr = String(str)\r\n\tif (pos == 'both') {\r\n\t\treturn str.replace(/^\\s+|\\s+$/g, '')\r\n\t}\r\n\tif (pos == 'left') {\r\n\t\treturn str.replace(/^\\s*/, '')\r\n\t}\r\n\tif (pos == 'right') {\r\n\t\treturn str.replace(/(\\s*$)/g, '')\r\n\t}\r\n\tif (pos == 'all') {\r\n\t\treturn str.replace(/\\s+/g, '')\r\n\t}\r\n\treturn str\r\n}\r\n\r\n/**\r\n * @description 对象转url参数\r\n * @param {object} data,对象\r\n * @param {Boolean} isPrefix,是否自动加上\"?\"\r\n * @param {string} arrayFormat 规则 indices|brackets|repeat|comma\r\n */\r\nexport function queryParams(data = {}, isPrefix = true, arrayFormat = 'brackets') {\r\n\tconst prefix = isPrefix ? '?' : ''\r\n\tconst _result = []\r\n\tif (['indices', 'brackets', 'repeat', 'comma'].indexOf(arrayFormat) == -1) arrayFormat = 'brackets'\r\n\tfor (const key in data) {\r\n\t\tconst value = data[key]\r\n\t\t// 去掉为空的参数\r\n\t\tif (['', undefined, null].indexOf(value) >= 0) {\r\n\t\t\tcontinue\r\n\t\t}\r\n\t\t// 如果值为数组,另行处理\r\n\t\tif (value.constructor === Array) {\r\n\t\t\t// e.g. {ids: [1, 2, 3]}\r\n\t\t\tswitch (arrayFormat) {\r\n\t\t\t\tcase 'indices':\r\n\t\t\t\t\t// 结果: ids[0]=1&ids[1]=2&ids[2]=3\r\n\t\t\t\t\tfor (let i = 0; i < value.length; i++) {\r\n\t\t\t\t\t\t_result.push(`${key}[${i}]=${value[i]}`)\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak\r\n\t\t\t\tcase 'brackets':\r\n\t\t\t\t\t// 结果: ids[]=1&ids[]=2&ids[]=3\r\n\t\t\t\t\tvalue.forEach((_value) => {\r\n\t\t\t\t\t\t_result.push(`${key}[]=${_value}`)\r\n\t\t\t\t\t})\r\n\t\t\t\t\tbreak\r\n\t\t\t\tcase 'repeat':\r\n\t\t\t\t\t// 结果: ids=1&ids=2&ids=3\r\n\t\t\t\t\tvalue.forEach((_value) => {\r\n\t\t\t\t\t\t_result.push(`${key}=${_value}`)\r\n\t\t\t\t\t})\r\n\t\t\t\t\tbreak\r\n\t\t\t\tcase 'comma':\r\n\t\t\t\t\t// 结果: ids=1,2,3\r\n\t\t\t\t\tlet commaStr = ''\r\n\t\t\t\t\tvalue.forEach((_value) => {\r\n\t\t\t\t\t\tcommaStr += (commaStr ? ',' : '') + _value\r\n\t\t\t\t\t})\r\n\t\t\t\t\t_result.push(`${key}=${commaStr}`)\r\n\t\t\t\t\tbreak\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tvalue.forEach((_value) => {\r\n\t\t\t\t\t\t_result.push(`${key}[]=${_value}`)\r\n\t\t\t\t\t})\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t_result.push(`${key}=${value}`)\r\n\t\t}\r\n\t}\r\n\treturn _result.length ? prefix + _result.join('&') : ''\r\n}\r\n\r\n/**\r\n * 显示消息提示框\r\n * @param {String} title 提示的内容,长度与 icon 取值有关。\r\n * @param {Number} duration 提示的延迟时间,单位毫秒,默认:2000\r\n */\r\nexport function toast(title, duration = 2000) {\r\n\tuni.showToast({\r\n\t\ttitle: String(title),\r\n\t\ticon: 'none',\r\n\t\tduration\r\n\t})\r\n}\r\n\r\n/**\r\n * @description 根据主题type值,获取对应的图标\r\n * @param {String} type 主题名称,primary|info|error|warning|success\r\n * @param {boolean} fill 是否使用fill填充实体的图标\r\n */\r\nexport function type2icon(type = 'success', fill = false) {\r\n\t// 如果非预置值,默认为success\r\n\tif (['primary', 'info', 'error', 'warning', 'success'].indexOf(type) == -1) type = 'success'\r\n\tlet iconName = ''\r\n\t// 目前(2019-12-12),info和primary使用同一个图标\r\n\tswitch (type) {\r\n\t\tcase 'primary':\r\n\t\t\ticonName = 'info-circle'\r\n\t\t\tbreak\r\n\t\tcase 'info':\r\n\t\t\ticonName = 'info-circle'\r\n\t\t\tbreak\r\n\t\tcase 'error':\r\n\t\t\ticonName = 'close-circle'\r\n\t\t\tbreak\r\n\t\tcase 'warning':\r\n\t\t\ticonName = 'error-circle'\r\n\t\t\tbreak\r\n\t\tcase 'success':\r\n\t\t\ticonName = 'checkmark-circle'\r\n\t\t\tbreak\r\n\t\tdefault:\r\n\t\t\ticonName = 'checkmark-circle'\r\n\t}\r\n\t// 是否是实体类型,加上-fill,在icon组件库中,实体的类名是后面加-fill的\r\n\tif (fill) iconName += '-fill'\r\n\treturn iconName\r\n}\r\n\r\n/**\r\n * @description 数字格式化\r\n * @param {number|string} number 要格式化的数字\r\n * @param {number} decimals 保留几位小数\r\n * @param {string} decimalPoint 小数点符号\r\n * @param {string} thousandsSeparator 千分位符号\r\n * @returns {string} 格式化后的数字\r\n */\r\nexport function priceFormat(number, decimals = 0, decimalPoint = '.', thousandsSeparator = ',') {\r\n\tnumber = (`${number}`).replace(/[^0-9+-Ee.]/g, '')\r\n\tconst n = !isFinite(+number) ? 0 : +number\r\n\tconst prec = !isFinite(+decimals) ? 0 : Math.abs(decimals)\r\n\tconst sep = (typeof thousandsSeparator === 'undefined') ? ',' : thousandsSeparator\r\n\tconst dec = (typeof decimalPoint === 'undefined') ? '.' : decimalPoint\r\n\tlet s = ''\r\n\r\n\ts = (prec ? round(n, prec) + '' : `${Math.round(n)}`).split('.')\r\n\tconst re = /(-?\\d+)(\\d{3})/\r\n\twhile (re.test(s[0])) {\r\n\t\ts[0] = s[0].replace(re, `$1${sep}$2`)\r\n\t}\r\n\t\r\n\tif ((s[1] || '').length < prec) {\r\n\t\ts[1] = s[1] || ''\r\n\t\ts[1] += new Array(prec - s[1].length + 1).join('0')\r\n\t}\r\n\treturn s.join(dec)\r\n}\r\n\r\n/**\r\n * @description 获取duration值\r\n * 如果带有ms或者s直接返回,如果大于一定值,认为是ms单位,小于一定值,认为是s单位\r\n * 比如以30位阈值,那么300大于30,可以理解为用户想要的是300ms,而不是想花300s去执行一个动画\r\n * @param {String|number} value 比如: \"1s\"|\"100ms\"|1|100\r\n * @param {boolean} unit 提示: 如果是false 默认返回number\r\n * @return {string|number} \r\n */\r\nexport function getDuration(value, unit = true) {\r\n\tconst valueNum = parseInt(value)\r\n\tif (unit) {\r\n\t\tif (/s$/.test(value)) return value\r\n\t\treturn value > 30 ? `${value}ms` : `${value}s`\r\n\t}\r\n\tif (/ms$/.test(value)) return valueNum\r\n\tif (/s$/.test(value)) return valueNum > 30 ? valueNum : valueNum * 1000\r\n\treturn valueNum\r\n}\r\n\r\n/**\r\n * @description 日期的月或日补零操作\r\n * @param {String} value 需要补零的值\r\n */\r\nexport function padZero(value) {\r\n\treturn `00${value}`.slice(-2)\r\n}\r\n\r\n/**\r\n * @description 在u-form的子组件内容发生变化,或者失去焦点时,尝试通知u-form执行校验方法\r\n * @param {*} instance\r\n * @param {*} event\r\n */\r\nexport function formValidate(instance, event) {\r\n\tconst formItem = $parent.call(instance, 'u-form-item')\r\n\tconst form = $parent.call(instance, 'u-form')\r\n\t// 如果发生变化的input或者textarea等,其父组件中有u-form-item或者u-form等,就执行form的validate方法\r\n\t// 同时将form-item的pros传递给form,让其进行精确对象验证\r\n\tif (formItem && form) {\r\n\t\tform.validateField(formItem.prop, () => {}, event)\r\n\t}\r\n}\r\n\r\n/**\r\n * @description 获取某个对象下的属性,用于通过类似'a.b.c'的形式去获取一个对象的的属性的形式\r\n * @param {object} obj 对象\r\n * @param {string} key 需要获取的属性字段\r\n * @returns {*}\r\n */\r\nexport function getProperty(obj, key) {\r\n\tif (typeof obj !== 'object' || null == obj) {\r\n return ''\r\n }\r\n\tif (typeof key !== 'string' || key === '') {\r\n\t\treturn ''\r\n\t}\r\n\tif (key.indexOf('.') !== -1) {\r\n\t\tconst keys = key.split('.')\r\n\t\tlet firstObj = obj[keys[0]] || {}\r\n\r\n\t\tfor (let i = 1; i < keys.length; i++) {\r\n\t\t\tif (firstObj) {\r\n\t\t\t\tfirstObj = firstObj[keys[i]]\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn firstObj\r\n\t}\r\n\treturn obj[key]\r\n}\r\n\r\n/**\r\n * @description 设置对象的属性值,如果'a.b.c'的形式进行设置\r\n * @param {object} obj 对象\r\n * @param {string} key 需要设置的属性\r\n * @param {string} value 设置的值\r\n */\r\nexport function setProperty(obj, key, value) {\r\n\tif (typeof obj !== 'object' || null == obj) {\r\n\t\treturn\r\n\t}\r\n\t// 递归赋值\r\n\tconst inFn = function(_obj, keys, v) {\r\n\t\t// 最后一个属性key\r\n\t\tif (keys.length === 1) {\r\n\t\t\t_obj[keys[0]] = v\r\n\t\t\treturn\r\n\t\t}\r\n\t\t// 0~length-1个key\r\n\t\twhile (keys.length > 1) {\r\n\t\t\tconst k = keys[0]\r\n\t\t\tif (!_obj[k] || (typeof _obj[k] !== 'object')) {\r\n\t\t\t\t_obj[k] = {}\r\n\t\t\t}\r\n\t\t\tconst key = keys.shift()\r\n\t\t\t// 自调用判断是否存在属性,不存在则自动创建对象\r\n\t\t\tinFn(_obj[k], keys, v)\r\n\t\t}\r\n\t}\r\n\r\n\tif (typeof key !== 'string' || key === '') {\r\n\r\n\t} else if (key.indexOf('.') !== -1) { // 支持多层级赋值操作\r\n\t\tconst keys = key.split('.')\r\n\t\tinFn(obj, keys, value)\r\n\t} else {\r\n\t\tobj[key] = value\r\n\t}\r\n}\r\n\r\n/**\r\n * @description 获取当前页面路径\r\n */\r\nexport function page() {\r\n\tconst pages = getCurrentPages()\r\n\t// 某些特殊情况下(比如页面进行redirectTo时的一些时机),pages可能为空数组\r\n\treturn `/${pages[pages.length - 1].route || ''}`\r\n}\r\n\r\n/**\r\n * @description 获取当前路由栈实例数组\r\n */\r\nexport function pages() {\r\n\tconst pages = getCurrentPages()\r\n\treturn pages\r\n}\r\n\r\nexport function getValueByPath(obj, path) {\r\n // 将路径字符串按 '.' 分割成数组\r\n const pathArr = path.split('.');\r\n // 使用 reduce 方法从 obj 开始,逐级访问嵌套属性\r\n return pathArr.reduce((acc, curr) => {\r\n // 如果当前累加器(acc)是对象且包含当前键(curr),则返回该键对应的值\r\n // 否则返回 undefined(表示路径不存在)\r\n return acc && acc[curr] !== undefined ? acc[curr] : undefined;\r\n }, obj);\r\n}\r\n\r\nexport default {\r\n\trange,\r\n\tgetPx,\r\n\tsleep,\r\n\tos,\r\n\tsys,\r\n\tgetWindowInfo,\r\n\trandom,\r\n\tguid,\r\n\t$parent,\r\n\taddStyle,\r\n\taddUnit,\r\n\tdeepClone,\r\n\tdeepMerge,\r\n shallowMerge,\r\n\terror,\r\n\trandomArray,\r\n\ttimeFormat,\r\n\ttimeFrom,\r\n\ttrim,\r\n\tqueryParams,\r\n\ttoast,\r\n\ttype2icon,\r\n\tpriceFormat,\r\n\tgetDuration,\r\n\tpadZero,\r\n\tformValidate,\r\n\tgetProperty,\r\n\tsetProperty,\r\n\tpage,\r\n\tpages,\r\n\tgetValueByPath,\r\n\t// setConfig\r\n}\r\n", "/**\n * 路由跳转方法,该方法相对于直接使用uni.xxx的好处是使用更加简单快捷\n * 并且带有路由拦截功能\n */\nimport { queryParams, deepMerge, page } from '../function/index';\nclass Router {\n constructor() {\n // 原始属性定义\n this.config = {\n type: 'navigateTo',\n url: '',\n delta: 1, // navigateBack页面后退时,回退的层数\n params: {}, // 传递的参数\n animationType: 'pop-in', // 窗口动画,只在APP有效\n animationDuration: 300, // 窗口动画持续时间,单位毫秒,只在APP有效\n intercept: false // 是否需要拦截\n }\n // 因为route方法是需要对外赋值给另外的对象使用,同时route内部有使用this,会导致route失去上下文\n // 这里在构造函数中进行this绑定\n this.route = this.route.bind(this)\n }\n\n // 判断url前面是否有\"/\",如果没有则加上,否则无法跳转\n addRootPath(url) {\n return url[0] === '/' ? url : `/${url}`\n }\n\n // 整合路由参数\n mixinParam(url, params) {\n url = url && this.addRootPath(url)\n\n // 使用正则匹配,主要依据是判断是否有\"/\",\"?\",\"=\"等,如“/page/index/index?name=mary\"\n // 如果有url中有get参数,转换后无需带上\"?\"\n let query = ''\n if (/.*\\/.*\\?.*=.*/.test(url)) {\n // object对象转为get类型的参数\n query = queryParams(params, false)\n // 因为已有get参数,所以后面拼接的参数需要带上\"&\"隔开\n return url += `&${query}`\n }\n // 直接拼接参数,因为此处url中没有后面的query参数,也就没有\"?/&\"之类的符号\n query = queryParams(params)\n return url += query\n }\n\n // 对外的方法名称\n async route(options = {}, params = {}) {\n // 合并用户的配置和内部的默认配置\n let mergeConfig = {}\n\n if (typeof options === 'string') {\n // 如果options为字符串,则为route(url, params)的形式\n mergeConfig.url = this.mixinParam(options, params)\n mergeConfig.type = 'navigateTo'\n } else {\n mergeConfig = deepMerge(this.config, options)\n // 否则正常使用mergeConfig中的url和params进行拼接\n mergeConfig.url = this.mixinParam(options.url, options.params)\n }\n\n // 如果本次跳转的路径和本页面路径一致,不执行跳转,防止用户快速点击跳转按钮,造成多次跳转同一个页面的问题\n if (mergeConfig.url === page()) return\n\n if (params.intercept) {\n this.config.intercept = params.intercept\n }\n // params参数也带给拦截器\n mergeConfig.params = params\n // 合并内外部参数\n mergeConfig = deepMerge(this.config, mergeConfig)\n // 判断用户是否定义了拦截器\n if (typeof uni.$u.routeIntercept === 'function') {\n // 定一个promise,根据用户执行resolve(true)或者resolve(false)来决定是否进行路由跳转\n const isNext = await new Promise((resolve, reject) => {\n uni.$u.routeIntercept(mergeConfig, resolve)\n })\n // 如果isNext为true,则执行路由跳转\n isNext && this.openPage(mergeConfig)\n } else {\n this.openPage(mergeConfig)\n }\n }\n\n // 执行路由跳转\n openPage(config) {\n // 解构参数\n const {\n url,\n type,\n delta,\n animationType,\n animationDuration\n } = config\n if (config.type == 'navigateTo' || config.type == 'to') {\n uni.navigateTo({\n url,\n animationType,\n animationDuration\n })\n }\n if (config.type == 'redirectTo' || config.type == 'redirect') {\n uni.redirectTo({\n url\n })\n }\n if (config.type == 'switchTab' || config.type == 'tab') {\n uni.switchTab({\n url\n })\n }\n if (config.type == 'reLaunch' || config.type == 'launch') {\n uni.reLaunch({\n url\n })\n }\n if (config.type == 'navigateBack' || config.type == 'back') {\n uni.navigateBack({\n delta\n })\n }\n }\n}\n\nexport default (new Router()).route\n", "import { defineMixin } from '../vue'\nimport { deepMerge, $parent, sleep } from '../function/index'\nimport test from '../function/test'\nimport route from '../util/route'\n\n\n\n\n\nexport const mixin = defineMixin({\n // 定义每个组件都可能需要用到的外部样式以及类名\n props: {\n // 每个组件都有的父组件传递的样式,可以为字符串或者对象形式\n customStyle: {\n type: [Object, String],\n default: () => ({})\n },\n customClass: {\n type: String,\n default: ''\n },\n // 跳转的页面路径\n url: {\n type: String,\n default: ''\n },\n // 页面跳转的类型\n linkType: {\n type: String,\n default: 'navigateTo'\n }\n },\n data() {\n return {}\n },\n onLoad() {\n // getRect挂载到$u上,因为这方法需要使用in(this),所以无法把它独立成一个单独的文件导出\n this.$u.getRect = this.$uGetRect\n },\n created() {\n // 组件当中,只有created声明周期,为了能在组件使用,故也在created中将方法挂载到$u\n this.$u.getRect = this.$uGetRect\n },\n computed: {\n // 在2.x版本中,将会把$u挂载到uni对象下,导致在模板中无法使用uni.$u.xxx形式\n // 所以这里通过computed计算属性将其附加到this.$u上,就可以在模板或者js中使用uni.$u.xxx\n // 只在nvue环境通过此方式引入完整的$u,其他平台会出现性能问题,非nvue则按需引入(主要原因是props过大)\n $u() {\n\n // 在非nvue端,移除props,http,mixin等对象,避免在小程序setData时数据过大影响性能\n return deepMerge(uni.$u, {\n props: undefined,\n http: undefined,\n mixin: undefined\n })\n\n\n\n\n },\n /**\n * 生成bem规则类名\n * 由于微信小程序,H5,nvue之间绑定class的差异,无法通过:class=\"[bem()]\"的形式进行同用\n * 故采用如下折中做法,最后返回的是数组(一般平台)或字符串(支付宝和字节跳动平台),类似['a', 'b', 'c']或'a b c'的形式\n * @param {String} name 组件名称\n * @param {Array} fixed 一直会存在的类名\n * @param {Array} change 会根据变量值为true或者false而出现或者隐藏的类名\n * @returns {Array|string}\n */\n bem() {\n return function (name, fixed, change) {\n // 类名前缀\n const prefix = `u-${name}--`\n const classes = {}\n if (fixed) {\n fixed.map((item) => {\n // 这里的类名,会一直存在\n classes[prefix + this[item]] = true\n })\n }\n if (change) {\n change.map((item) => {\n // 这里的类名,会根据this[item]的值为true或者false,而进行添加或者移除某一个类\n this[item] ? (classes[prefix + item] = this[item]) : (delete classes[prefix + item])\n })\n }\n return Object.keys(classes)\n // 支付宝,头条小程序无法动态绑定一个数组类名,否则解析出来的结果会带有\",\",而导致失效\n\n\n\n }\n }\n },\n methods: {\n // 跳转某一个页面\n openPage(urlKey = 'url') {\n const url = this[urlKey]\n if (url) {\n // h5官方回应:发行h5会自动摇树优化,所有使用uni的地方,都会被直接转换成具体的API调用 https://ask.dcloud.net.cn/question/161523?notification_id-1201922__rf-false__item_id-226372\n // 使用封装的 route 进行跳转(直接调用方法),不使用 uni 对象\n route({ type: this.linkType, url })\n // 执行类似uni.navigateTo的方法\n // uni[this.linkType]({\n // url\n // })\n }\n },\n navTo(url = '', linkType = 'navigateTo') {\n route({ type: this.linkType, url })\n },\n // 查询节点信息\n // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸,为支付宝的bug(2020-07-21)\n // 解决办法为在组件根部再套一个没有任何作用的view元素\n $uGetRect(selector, all) {\n return new Promise((resolve) => {\n\n uni.createSelectorQuery()\n .in(this)[all ? 'selectAll' : 'select'](selector)\n .boundingClientRect((rect) => {\n if (all && Array.isArray(rect) && rect.length) {\n resolve(rect)\n }\n if (!all && rect) {\n resolve(rect)\n }\n })\n .exec()\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n })\n },\n getParentData(parentName = '') {\n // 避免在created中去定义parent变量\n if (!this.parent) this.parent = {}\n // 这里的本质原理是,通过获取父组件实例(也即类似u-radio的父组件u-radio-group的this)\n // 将父组件this中对应的参数,赋值给本组件(u-radio的this)的parentData对象中对应的属性\n // 之所以需要这么做,是因为所有端中,头条小程序不支持通过this.parent.xxx去监听父组件参数的变化\n // 此处并不会自动更新子组件的数据,而是依赖父组件u-radio-group去监听data的变化,手动调用更新子组件的方法去重新获取\n this.parent = $parent.call(this, parentName)\n if (this.parent.children) {\n // 如果父组件的children不存在本组件的实例,才将本实例添加到父组件的children中\n this.parent.children.indexOf(this) === -1 && this.parent.children.push(this)\n }\n if (this.parent && this.parentData) {\n // 历遍parentData中的属性,将parent中的同名属性赋值给parentData\n Object.keys(this.parentData).map((key) => {\n this.parentData[key] = this.parent[key]\n })\n }\n },\n // 阻止事件冒泡\n preventEvent(e) {\n e && typeof (e.stopPropagation) === 'function' && e.stopPropagation()\n },\n // 空操作\n noop(e) {\n this.preventEvent(e)\n }\n },\n onReachBottom() {\n uni.$emit('uOnReachBottom')\n\t},\n\tbeforeUnmount() {\n // 判断当前页面是否存在parent和chldren,一般在checkbox和checkbox-group父子联动的场景会有此情况\n // 组件销毁时,移除子组件在父组件children数组中的实例,释放资源,避免数据混乱\n if (this.parent && test.array(this.parent.children)) {\n // 组件销毁时,移除父组件中的children数组中对应的实例\n const childrenList = this.parent.children\n childrenList.map((child, index) => {\n // 如果相等,则移除\n if (child === this) {\n childrenList.splice(index, 1)\n }\n })\n }\n }\n})\n\nexport default mixin\n", "import { defineMixin } from '../vue'\n\nexport const mpMixin = defineMixin({\n\n\n\n\n\n\n})\n\nexport default mpMixin\n\n", "'use strict'\r\n\r\n// utils is a library of generic helper functions non-specific to axios\r\n\r\nconst { toString } = Object.prototype\r\n\r\n/**\r\n * Determine if a value is an Array\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is an Array, otherwise false\r\n */\r\nexport function isArray(val) {\r\n return toString.call(val) === '[object Array]'\r\n}\r\n\r\n/**\r\n * Determine if a value is an Object\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is an Object, otherwise false\r\n */\r\nexport function isObject(val) {\r\n return val !== null && typeof val === 'object'\r\n}\r\n\r\n/**\r\n * Determine if a value is a Date\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is a Date, otherwise false\r\n */\r\nexport function isDate(val) {\r\n return toString.call(val) === '[object Date]'\r\n}\r\n\r\n/**\r\n * Determine if a value is a URLSearchParams object\r\n *\r\n * @param {Object} val The value to test\r\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\r\n */\r\nexport function isURLSearchParams(val) {\r\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams\r\n}\r\n\r\n/**\r\n * Iterate over an Array or an Object invoking a function for each item.\r\n *\r\n * If `obj` is an Array callback will be called passing\r\n * the value, index, and complete array for each item.\r\n *\r\n * If 'obj' is an Object callback will be called passing\r\n * the value, key, and complete object for each property.\r\n *\r\n * @param {Object|Array} obj The object to iterate\r\n * @param {Function} fn The callback to invoke for each item\r\n */\r\nexport function forEach(obj, fn) {\r\n // Don't bother if no value provided\r\n if (obj === null || typeof obj === 'undefined') {\r\n return\r\n }\r\n\r\n // Force an array if not already something iterable\r\n if (typeof obj !== 'object') {\r\n /* eslint no-param-reassign:0 */\r\n obj = [obj]\r\n }\r\n\r\n if (isArray(obj)) {\r\n // Iterate over array values\r\n for (let i = 0, l = obj.length; i < l; i++) {\r\n fn.call(null, obj[i], i, obj)\r\n }\r\n } else {\r\n // Iterate over object keys\r\n for (const key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n fn.call(null, obj[key], key, obj)\r\n }\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * 是否为boolean 值\r\n * @param val\r\n * @returns {boolean}\r\n */\r\nexport function isBoolean(val) {\r\n return typeof val === 'boolean'\r\n}\r\n\r\n/**\r\n * 是否为真正的对象{} new Object\r\n * @param {any} obj - 检测的对象\r\n * @returns {boolean}\r\n */\r\nexport function isPlainObject(obj) {\r\n return Object.prototype.toString.call(obj) === '[object Object]'\r\n}\r\n\r\n/**\r\n * Function equal to merge with the difference being that no reference\r\n * to original objects is kept.\r\n *\r\n * @see merge\r\n * @param {Object} obj1 Object to merge\r\n * @returns {Object} Result of all merge properties\r\n */\r\nexport function deepMerge(/* obj1, obj2, obj3, ... */) {\r\n const result = {}\r\n function assignValue(val, key) {\r\n if (typeof result[key] === 'object' && typeof val === 'object') {\r\n result[key] = deepMerge(result[key], val)\r\n } else if (typeof val === 'object') {\r\n result[key] = deepMerge({}, val)\r\n } else {\r\n result[key] = val\r\n }\r\n }\r\n for (let i = 0, l = arguments.length; i < l; i++) {\r\n forEach(arguments[i], assignValue)\r\n }\r\n return result\r\n}\r\n\r\nexport function isUndefined(val) {\r\n return typeof val === 'undefined'\r\n}\r\n", "'use strict'\r\n\r\nimport * as utils from '../utils'\r\n\r\nfunction encode(val) {\r\n return encodeURIComponent(val)\r\n .replace(/%40/gi, '@')\r\n .replace(/%3A/gi, ':')\r\n .replace(/%24/g, '$')\r\n .replace(/%2C/gi, ',')\r\n .replace(/%20/g, '+')\r\n .replace(/%5B/gi, '[')\r\n .replace(/%5D/gi, ']')\r\n}\r\n\r\n/**\r\n * Build a URL by appending params to the end\r\n *\r\n * @param {string} url The base of the url (e.g., http://www.google.com)\r\n * @param {object} [params] The params to be appended\r\n * @returns {string} The formatted url\r\n */\r\nexport default function buildURL(url, params) {\r\n /* eslint no-param-reassign:0 */\r\n if (!params) {\r\n return url\r\n }\r\n\r\n let serializedParams\r\n if (utils.isURLSearchParams(params)) {\r\n serializedParams = params.toString()\r\n } else {\r\n const parts = []\r\n\r\n utils.forEach(params, (val, key) => {\r\n if (val === null || typeof val === 'undefined') {\r\n return\r\n }\r\n\r\n if (utils.isArray(val)) {\r\n key = `${key}[]`\r\n } else {\r\n val = [val]\r\n }\r\n\r\n utils.forEach(val, (v) => {\r\n if (utils.isDate(v)) {\r\n v = v.toISOString()\r\n } else if (utils.isObject(v)) {\r\n v = JSON.stringify(v)\r\n }\r\n parts.push(`${encode(key)}=${encode(v)}`)\r\n })\r\n })\r\n\r\n serializedParams = parts.join('&')\r\n }\r\n\r\n if (serializedParams) {\r\n const hashmarkIndex = url.indexOf('#')\r\n if (hashmarkIndex !== -1) {\r\n url = url.slice(0, hashmarkIndex)\r\n }\r\n\r\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams\r\n }\r\n\r\n return url\r\n}\r\n", "'use strict'\r\n\r\n/**\r\n * Determines whether the specified URL is absolute\r\n *\r\n * @param {string} url The URL to test\r\n * @returns {boolean} True if the specified URL is absolute, otherwise false\r\n */\r\nexport default function isAbsoluteURL(url) {\r\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\r\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\r\n // by any combination of letters, digits, plus, period, or hyphen.\r\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url)\r\n}\r\n", "'use strict'\r\n\r\n/**\r\n * Creates a new URL by combining the specified URLs\r\n *\r\n * @param {string} baseURL The base URL\r\n * @param {string} relativeURL The relative URL\r\n * @returns {string} The combined URL\r\n */\r\nexport default function combineURLs(baseURL, relativeURL) {\r\n return relativeURL\r\n ? `${baseURL.replace(/\\/+$/, '')}/${relativeURL.replace(/^\\/+/, '')}`\r\n : baseURL\r\n}\r\n", "'use strict'\r\n\r\nimport isAbsoluteURL from '../helpers/isAbsoluteURL'\r\nimport combineURLs from '../helpers/combineURLs'\r\n\r\n/**\r\n * Creates a new URL by combining the baseURL with the requestedURL,\r\n * only when the requestedURL is not already an absolute URL.\r\n * If the requestURL is absolute, this function returns the requestedURL untouched.\r\n *\r\n * @param {string} baseURL The base URL\r\n * @param {string} requestedURL Absolute or relative URL to combine\r\n * @returns {string} The combined full path\r\n */\r\nexport default function buildFullPath(baseURL, requestedURL) {\r\n if (baseURL && !isAbsoluteURL(requestedURL)) {\r\n return combineURLs(baseURL, requestedURL)\r\n }\r\n return requestedURL\r\n}\r\n", "/**\r\n * Resolve or reject a Promise based on response status.\r\n *\r\n * @param {Function} resolve A function that resolves the promise.\r\n * @param {Function} reject A function that rejects the promise.\r\n * @param {object} response The response.\r\n */\r\nexport default function settle(resolve, reject, response) {\r\n const { validateStatus } = response.config\r\n const status = response.statusCode\r\n if (status && (!validateStatus || validateStatus(status))) {\r\n resolve(response)\r\n } else {\r\n reject(response)\r\n }\r\n}\r\n", "import buildURL from '../helpers/buildURL'\r\nimport buildFullPath from '../core/buildFullPath'\r\nimport settle from '../core/settle'\r\nimport { isUndefined } from '../utils'\r\n\r\n/**\r\n * 返回可选值存在的配置\r\n * @param {Array} keys - 可选值数组\r\n * @param {Object} config2 - 配置\r\n * @return {{}} - 存在的配置项\r\n */\r\nconst mergeKeys = (keys, config2) => {\r\n const config = {}\r\n keys.forEach((prop) => {\r\n if (!isUndefined(config2[prop])) {\r\n config[prop] = config2[prop]\r\n }\r\n })\r\n return config\r\n}\r\nexport default (config) => new Promise((resolve, reject) => {\r\n const fullPath = buildURL(buildFullPath(config.baseURL, config.url), config.params)\r\n const _config = {\r\n url: fullPath,\r\n header: config.header,\r\n complete: (response) => {\r\n config.fullPath = fullPath\r\n response.config = config\r\n try {\r\n // 对可能字符串不是json 的情况容错\r\n if (typeof response.data === 'string') {\r\n response.data = JSON.parse(response.data)\r\n }\r\n // eslint-disable-next-line no-empty\r\n } catch (e) {\r\n }\r\n settle(resolve, reject, response)\r\n }\r\n }\r\n let requestTask\r\n if (config.method === 'UPLOAD') {\r\n delete _config.header['content-type']\r\n delete _config.header['Content-Type']\r\n const otherConfig = {\r\n\r\n\r\n\r\n filePath: config.filePath,\r\n name: config.name\r\n }\r\n const optionalKeys = [\r\n\r\n 'files',\r\n\r\n\r\n 'file',\r\n\r\n\r\n 'timeout',\r\n\r\n 'formData'\r\n ]\r\n requestTask = uni.uploadFile({ ..._config, ...otherConfig, ...mergeKeys(optionalKeys, config) })\r\n } else if (config.method === 'DOWNLOAD') {\r\n\r\n if (!isUndefined(config.timeout)) {\r\n _config.timeout = config.timeout\r\n }\r\n\r\n requestTask = uni.downloadFile(_config)\r\n } else {\r\n const optionalKeys = [\r\n 'data',\r\n 'method',\r\n\r\n 'timeout',\r\n\r\n 'dataType',\r\n\r\n 'responseType',\r\n\r\n\r\n\r\n\r\n\r\n 'withCredentials',\r\n\r\n\r\n\r\n\r\n ]\r\n requestTask = uni.request({ ..._config, ...mergeKeys(optionalKeys, config) })\r\n }\r\n if (config.getTask) {\r\n config.getTask(requestTask, config)\r\n }\r\n})\r\n", "import adapter from '../adapters/index'\r\n\r\nexport default (config) => adapter(config)\r\n", "'use strict'\r\n\r\nfunction InterceptorManager() {\r\n this.handlers = []\r\n}\r\n\r\n/**\r\n * Add a new interceptor to the stack\r\n *\r\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\r\n * @param {Function} rejected The function to handle `reject` for a `Promise`\r\n *\r\n * @return {Number} An ID used to remove interceptor later\r\n */\r\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\r\n this.handlers.push({\r\n fulfilled,\r\n rejected\r\n })\r\n return this.handlers.length - 1\r\n}\r\n\r\n/**\r\n * Remove an interceptor from the stack\r\n *\r\n * @param {Number} id The ID that was returned by `use`\r\n */\r\nInterceptorManager.prototype.eject = function eject(id) {\r\n if (this.handlers[id]) {\r\n this.handlers[id] = null\r\n }\r\n}\r\n\r\n/**\r\n * Iterate over all the registered interceptors\r\n *\r\n * This method is particularly useful for skipping over any\r\n * interceptors that may have become `null` calling `eject`.\r\n *\r\n * @param {Function} fn The function to call for each interceptor\r\n */\r\nInterceptorManager.prototype.forEach = function forEach(fn) {\r\n this.handlers.forEach((h) => {\r\n if (h !== null) {\r\n fn(h)\r\n }\r\n })\r\n}\r\n\r\nexport default InterceptorManager\r\n", "import { deepMerge, isUndefined } from '../utils'\r\n\r\n/**\r\n * 合并局部配置优先的配置,如果局部有该配置项则用局部,如果全局有该配置项则用全局\r\n * @param {Array} keys - 配置项\r\n * @param {Object} globalsConfig - 当前的全局配置\r\n * @param {Object} config2 - 局部配置\r\n * @return {{}}\r\n */\r\nconst mergeKeys = (keys, globalsConfig, config2) => {\r\n const config = {}\r\n keys.forEach((prop) => {\r\n if (!isUndefined(config2[prop])) {\r\n config[prop] = config2[prop]\r\n } else if (!isUndefined(globalsConfig[prop])) {\r\n config[prop] = globalsConfig[prop]\r\n }\r\n })\r\n return config\r\n}\r\n/**\r\n *\r\n * @param globalsConfig - 当前实例的全局配置\r\n * @param config2 - 当前的局部配置\r\n * @return - 合并后的配置\r\n */\r\nexport default (globalsConfig, config2 = {}) => {\r\n const method = config2.method || globalsConfig.method || 'GET'\r\n let config = {\r\n baseURL: globalsConfig.baseURL || '',\r\n method,\r\n url: config2.url || '',\r\n params: config2.params || {},\r\n custom: { ...(globalsConfig.custom || {}), ...(config2.custom || {}) },\r\n header: deepMerge(globalsConfig.header || {}, config2.header || {})\r\n }\r\n const defaultToConfig2Keys = ['getTask', 'validateStatus']\r\n config = { ...config, ...mergeKeys(defaultToConfig2Keys, globalsConfig, config2) }\r\n\r\n // eslint-disable-next-line no-empty\r\n if (method === 'DOWNLOAD') {\r\n\r\n if (!isUndefined(config2.timeout)) {\r\n config.timeout = config2.timeout\r\n } else if (!isUndefined(globalsConfig.timeout)) {\r\n config.timeout = globalsConfig.timeout\r\n }\r\n\r\n } else if (method === 'UPLOAD') {\r\n delete config.header['content-type']\r\n delete config.header['Content-Type']\r\n const uploadKeys = [\r\n\r\n 'files',\r\n\r\n\r\n\r\n\r\n\r\n 'file',\r\n\r\n 'filePath',\r\n 'name',\r\n\r\n 'timeout',\r\n\r\n 'formData'\r\n ]\r\n uploadKeys.forEach((prop) => {\r\n if (!isUndefined(config2[prop])) {\r\n config[prop] = config2[prop]\r\n }\r\n })\r\n\r\n if (isUndefined(config.timeout) && !isUndefined(globalsConfig.timeout)) {\r\n config.timeout = globalsConfig.timeout\r\n }\r\n\r\n } else {\r\n const defaultsKeys = [\r\n 'data',\r\n\r\n 'timeout',\r\n\r\n 'dataType',\r\n\r\n 'responseType',\r\n\r\n\r\n\r\n\r\n\r\n 'withCredentials',\r\n\r\n\r\n\r\n\r\n ]\r\n config = { ...config, ...mergeKeys(defaultsKeys, globalsConfig, config2) }\r\n }\r\n\r\n return config\r\n}\r\n", "/**\r\n * 默认的全局配置\r\n */\r\n\r\nexport default {\r\n baseURL: '',\r\n header: {},\r\n method: 'GET',\r\n dataType: 'json',\r\n\r\n responseType: 'text',\r\n\r\n custom: {},\r\n\r\n timeout: 60000,\r\n\r\n\r\n\r\n\r\n\r\n withCredentials: false,\r\n\r\n\r\n\r\n\r\n validateStatus: function validateStatus(status) {\r\n return status >= 200 && status < 300\r\n }\r\n}\r\n", "/* eslint-disable */\r\nvar clone = (function() {\r\n 'use strict';\r\n\r\n function _instanceof(obj, type) {\r\n return type != null && obj instanceof type;\r\n }\r\n\r\n var nativeMap;\r\n try {\r\n nativeMap = Map;\r\n } catch(_) {\r\n // maybe a reference error because no `Map`. Give it a dummy value that no\r\n // value will ever be an instanceof.\r\n nativeMap = function() {};\r\n }\r\n\r\n var nativeSet;\r\n try {\r\n nativeSet = Set;\r\n } catch(_) {\r\n nativeSet = function() {};\r\n }\r\n\r\n var nativePromise;\r\n try {\r\n nativePromise = Promise;\r\n } catch(_) {\r\n nativePromise = function() {};\r\n }\r\n\r\n /**\r\n * Clones (copies) an Object using deep copying.\r\n *\r\n * This function supports circular references by default, but if you are certain\r\n * there are no circular references in your object, you can save some CPU time\r\n * by calling clone(obj, false).\r\n *\r\n * Caution: if `circular` is false and `parent` contains circular references,\r\n * your program may enter an infinite loop and crash.\r\n *\r\n * @param `parent` - the object to be cloned\r\n * @param `circular` - set to true if the object to be cloned may contain\r\n * circular references. (optional - true by default)\r\n * @param `depth` - set to a number if the object is only to be cloned to\r\n * a particular depth. (optional - defaults to Infinity)\r\n * @param `prototype` - sets the prototype to be used when cloning an object.\r\n * (optional - defaults to parent prototype).\r\n * @param `includeNonEnumerable` - set to true if the non-enumerable properties\r\n * should be cloned as well. Non-enumerable properties on the prototype\r\n * chain will be ignored. (optional - false by default)\r\n */\r\n function clone(parent, circular, depth, prototype, includeNonEnumerable) {\r\n if (typeof circular === 'object') {\r\n depth = circular.depth;\r\n prototype = circular.prototype;\r\n includeNonEnumerable = circular.includeNonEnumerable;\r\n circular = circular.circular;\r\n }\r\n // maintain two arrays for circular references, where corresponding parents\r\n // and children have the same index\r\n var allParents = [];\r\n var allChildren = [];\r\n\r\n var useBuffer = typeof Buffer != 'undefined';\r\n\r\n if (typeof circular == 'undefined')\r\n circular = true;\r\n\r\n if (typeof depth == 'undefined')\r\n depth = Infinity;\r\n\r\n // recurse this function so we don't reset allParents and allChildren\r\n function _clone(parent, depth) {\r\n // cloning null always returns null\r\n if (parent === null)\r\n return null;\r\n\r\n if (depth === 0)\r\n return parent;\r\n\r\n var child;\r\n var proto;\r\n if (typeof parent != 'object') {\r\n return parent;\r\n }\r\n\r\n if (_instanceof(parent, nativeMap)) {\r\n child = new nativeMap();\r\n } else if (_instanceof(parent, nativeSet)) {\r\n child = new nativeSet();\r\n } else if (_instanceof(parent, nativePromise)) {\r\n child = new nativePromise(function (resolve, reject) {\r\n parent.then(function(value) {\r\n resolve(_clone(value, depth - 1));\r\n }, function(err) {\r\n reject(_clone(err, depth - 1));\r\n });\r\n });\r\n } else if (clone.__isArray(parent)) {\r\n child = [];\r\n } else if (clone.__isRegExp(parent)) {\r\n child = new RegExp(parent.source, __getRegExpFlags(parent));\r\n if (parent.lastIndex) child.lastIndex = parent.lastIndex;\r\n } else if (clone.__isDate(parent)) {\r\n child = new Date(parent.getTime());\r\n } else if (useBuffer && Buffer.isBuffer(parent)) {\r\n if (Buffer.from) {\r\n // Node.js >= 5.10.0\r\n child = Buffer.from(parent);\r\n } else {\r\n // Older Node.js versions\r\n child = new Buffer(parent.length);\r\n parent.copy(child);\r\n }\r\n return child;\r\n } else if (_instanceof(parent, Error)) {\r\n child = Object.create(parent);\r\n } else {\r\n if (typeof prototype == 'undefined') {\r\n proto = Object.getPrototypeOf(parent);\r\n child = Object.create(proto);\r\n }\r\n else {\r\n child = Object.create(prototype);\r\n proto = prototype;\r\n }\r\n }\r\n\r\n if (circular) {\r\n var index = allParents.indexOf(parent);\r\n\r\n if (index != -1) {\r\n return allChildren[index];\r\n }\r\n allParents.push(parent);\r\n allChildren.push(child);\r\n }\r\n\r\n if (_instanceof(parent, nativeMap)) {\r\n parent.forEach(function(value, key) {\r\n var keyChild = _clone(key, depth - 1);\r\n var valueChild = _clone(value, depth - 1);\r\n child.set(keyChild, valueChild);\r\n });\r\n }\r\n if (_instanceof(parent, nativeSet)) {\r\n parent.forEach(function(value) {\r\n var entryChild = _clone(value, depth - 1);\r\n child.add(entryChild);\r\n });\r\n }\r\n\r\n for (var i in parent) {\r\n var attrs = Object.getOwnPropertyDescriptor(parent, i);\r\n if (attrs) {\r\n child[i] = _clone(parent[i], depth - 1);\r\n }\r\n\r\n try {\r\n var objProperty = Object.getOwnPropertyDescriptor(parent, i);\r\n if (objProperty.set === 'undefined') {\r\n // no setter defined. Skip cloning this property\r\n continue;\r\n }\r\n child[i] = _clone(parent[i], depth - 1);\r\n } catch(e){\r\n if (e instanceof TypeError) {\r\n // when in strict mode, TypeError will be thrown if child[i] property only has a getter\r\n // we can't do anything about this, other than inform the user that this property cannot be set.\r\n continue\r\n } else if (e instanceof ReferenceError) {\r\n //this may happen in non strict mode\r\n continue\r\n }\r\n }\r\n\r\n }\r\n\r\n if (Object.getOwnPropertySymbols) {\r\n var symbols = Object.getOwnPropertySymbols(parent);\r\n for (var i = 0; i < symbols.length; i++) {\r\n // Don't need to worry about cloning a symbol because it is a primitive,\r\n // like a number or string.\r\n var symbol = symbols[i];\r\n var descriptor = Object.getOwnPropertyDescriptor(parent, symbol);\r\n if (descriptor && !descriptor.enumerable && !includeNonEnumerable) {\r\n continue;\r\n }\r\n child[symbol] = _clone(parent[symbol], depth - 1);\r\n Object.defineProperty(child, symbol, descriptor);\r\n }\r\n }\r\n\r\n if (includeNonEnumerable) {\r\n var allPropertyNames = Object.getOwnPropertyNames(parent);\r\n for (var i = 0; i < allPropertyNames.length; i++) {\r\n var propertyName = allPropertyNames[i];\r\n var descriptor = Object.getOwnPropertyDescriptor(parent, propertyName);\r\n if (descriptor && descriptor.enumerable) {\r\n continue;\r\n }\r\n child[propertyName] = _clone(parent[propertyName], depth - 1);\r\n Object.defineProperty(child, propertyName, descriptor);\r\n }\r\n }\r\n\r\n return child;\r\n }\r\n\r\n return _clone(parent, depth);\r\n }\r\n\r\n /**\r\n * Simple flat clone using prototype, accepts only objects, usefull for property\r\n * override on FLAT configuration object (no nested props).\r\n *\r\n * USE WITH CAUTION! This may not behave as you wish if you do not know how this\r\n * works.\r\n */\r\n clone.clonePrototype = function clonePrototype(parent) {\r\n if (parent === null)\r\n return null;\r\n\r\n var c = function () {};\r\n c.prototype = parent;\r\n return new c();\r\n };\r\n\r\n// private utility functions\r\n\r\n function __objToStr(o) {\r\n return Object.prototype.toString.call(o);\r\n }\r\n clone.__objToStr = __objToStr;\r\n\r\n function __isDate(o) {\r\n return typeof o === 'object' && __objToStr(o) === '[object Date]';\r\n }\r\n clone.__isDate = __isDate;\r\n\r\n function __isArray(o) {\r\n return typeof o === 'object' && __objToStr(o) === '[object Array]';\r\n }\r\n clone.__isArray = __isArray;\r\n\r\n function __isRegExp(o) {\r\n return typeof o === 'object' && __objToStr(o) === '[object RegExp]';\r\n }\r\n clone.__isRegExp = __isRegExp;\r\n\r\n function __getRegExpFlags(re) {\r\n var flags = '';\r\n if (re.global) flags += 'g';\r\n if (re.ignoreCase) flags += 'i';\r\n if (re.multiline) flags += 'm';\r\n return flags;\r\n }\r\n clone.__getRegExpFlags = __getRegExpFlags;\r\n\r\n return clone;\r\n})();\r\n\r\nexport default clone\r\n", "/**\r\n * @Class Request\r\n * @description luch-request http请求插件\r\n * @version 3.0.7\r\n * @Author lu-ch\r\n * @Date 2021-09-04\r\n * @Email webwork.s@qq.com\r\n * 文档: https://www.quanzhan.co/luch-request/\r\n * github: https://github.com/lei-mu/luch-request\r\n * DCloud: http://ext.dcloud.net.cn/plugin?id=392\r\n * HBuilderX: beat-3.0.4 alpha-3.0.4\r\n */\r\n\r\nimport dispatchRequest from './dispatchRequest'\r\nimport InterceptorManager from './InterceptorManager'\r\nimport mergeConfig from './mergeConfig'\r\nimport defaults from './defaults'\r\nimport { isPlainObject } from '../utils'\r\nimport clone from '../utils/clone'\r\n\r\nexport default class Request {\r\n /**\r\n * @param {Object} arg - 全局配置\r\n * @param {String} arg.baseURL - 全局根路径\r\n * @param {Object} arg.header - 全局header\r\n * @param {String} arg.method = [GET|POST|PUT|DELETE|CONNECT|HEAD|OPTIONS|TRACE] - 全局默认请求方式\r\n * @param {String} arg.dataType = [json] - 全局默认的dataType\r\n * @param {String} arg.responseType = [text|arraybuffer] - 全局默认的responseType。支付宝小程序不支持\r\n * @param {Object} arg.custom - 全局默认的自定义参数\r\n * @param {Number} arg.timeout - 全局默认的超时时间,单位 ms。默认60000。H5(HBuilderX 2.9.9+)、APP(HBuilderX 2.9.9+)、微信小程序(2.10.0)、支付宝小程序\r\n * @param {Boolean} arg.sslVerify - 全局默认的是否验证 ssl 证书。默认true.仅App安卓端支持(HBuilderX 2.3.3+)\r\n * @param {Boolean} arg.withCredentials - 全局默认的跨域请求时是否携带凭证(cookies)。默认false。仅H5支持(HBuilderX 2.6.15+)\r\n * @param {Boolean} arg.firstIpv4 - 全DNS解析时优先使用ipv4。默认false。仅 App-Android 支持 (HBuilderX 2.8.0+)\r\n * @param {Function(statusCode):Boolean} arg.validateStatus - 全局默认的自定义验证器。默认statusCode >= 200 && statusCode < 300\r\n */\r\n constructor(arg = {}) {\r\n if (!isPlainObject(arg)) {\r\n arg = {}\r\n console.warn('设置全局参数必须接收一个Object')\r\n }\r\n this.config = clone({ ...defaults, ...arg })\r\n this.interceptors = {\r\n request: new InterceptorManager(),\r\n response: new InterceptorManager()\r\n }\r\n }\r\n\r\n /**\r\n * @Function\r\n * @param {Request~setConfigCallback} f - 设置全局默认配置\r\n */\r\n setConfig(f) {\r\n this.config = f(this.config)\r\n }\r\n\r\n middleware(config) {\r\n config = mergeConfig(this.config, config)\r\n const chain = [dispatchRequest, undefined]\r\n let promise = Promise.resolve(config)\r\n\r\n this.interceptors.request.forEach((interceptor) => {\r\n chain.unshift(interceptor.fulfilled, interceptor.rejected)\r\n })\r\n\r\n this.interceptors.response.forEach((interceptor) => {\r\n chain.push(interceptor.fulfilled, interceptor.rejected)\r\n })\r\n\r\n while (chain.length) {\r\n promise = promise.then(chain.shift(), chain.shift())\r\n }\r\n\r\n return promise\r\n }\r\n\r\n /**\r\n * @Function\r\n * @param {Object} config - 请求配置项\r\n * @prop {String} options.url - 请求路径\r\n * @prop {Object} options.data - 请求参数\r\n * @prop {Object} [options.responseType = config.responseType] [text|arraybuffer] - 响应的数据类型\r\n * @prop {Object} [options.dataType = config.dataType] - 如果设为 json,会尝试对返回的数据做一次 JSON.parse\r\n * @prop {Object} [options.header = config.header] - 请求header\r\n * @prop {Object} [options.method = config.method] - 请求方法\r\n * @returns {Promise}\r\n */\r\n request(config = {}) {\r\n return this.middleware(config)\r\n }\r\n\r\n get(url, options = {}) {\r\n return this.middleware({\r\n url,\r\n method: 'GET',\r\n ...options\r\n })\r\n }\r\n\r\n post(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'POST',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n put(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'PUT',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n delete(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'DELETE',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n connect(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'CONNECT',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n head(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'HEAD',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n options(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'OPTIONS',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n trace(url, data, options = {}) {\r\n return this.middleware({\r\n url,\r\n data,\r\n method: 'TRACE',\r\n ...options\r\n })\r\n }\r\n\r\n\r\n\r\n upload(url, config = {}) {\r\n config.url = url\r\n config.method = 'UPLOAD'\r\n return this.middleware(config)\r\n }\r\n\r\n download(url, config = {}) {\r\n config.url = url\r\n config.method = 'DOWNLOAD'\r\n return this.middleware(config)\r\n }\r\n}\r\n\r\n/**\r\n * setConfig回调\r\n * @return {Object} - 返回操作后的config\r\n * @callback Request~setConfigCallback\r\n * @param {Object} config - 全局默认config\r\n */\r\n", "import Request from './core/Request'\n\r\nexport default Request\r\n", "/**\r\n * 求两个颜色之间的渐变值\r\n * @param {string} startColor 开始的颜色\r\n * @param {string} endColor 结束的颜色\r\n * @param {number} step 颜色等分的份额\r\n * */\r\nexport function colorGradient(startColor = 'rgb(0, 0, 0)', endColor = 'rgb(255, 255, 255)', step = 10) {\r\n const startRGB = hexToRgb(startColor, false) // 转换为rgb数组模式\r\n const startR = startRGB[0]\r\n const startG = startRGB[1]\r\n const startB = startRGB[2]\r\n\r\n const endRGB = hexToRgb(endColor, false)\r\n const endR = endRGB[0]\r\n const endG = endRGB[1]\r\n const endB = endRGB[2]\r\n\r\n const sR = (endR - startR) / step // 总差值\r\n const sG = (endG - startG) / step\r\n const sB = (endB - startB) / step\r\n const colorArr = []\r\n for (let i = 0; i < step; i++) {\r\n // 计算每一步的hex值\r\n let hex = rgbToHex(`rgb(${Math.round((sR * i + startR))},${Math.round((sG * i + startG))},${Math.round((sB\r\n\t\t\t* i + startB))})`)\r\n // 确保第一个颜色值为startColor的值\r\n if (i === 0) hex = rgbToHex(startColor)\r\n // 确保最后一个颜色值为endColor的值\r\n if (i === step - 1) hex = rgbToHex(endColor)\r\n colorArr.push(hex)\r\n }\r\n return colorArr\r\n}\r\n\r\n// 将hex表示方式转换为rgb表示方式(这里返回rgb数组模式)\r\nexport function hexToRgb(sColor, str = true) {\r\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/\r\n sColor = String(sColor).toLowerCase()\r\n if (sColor && reg.test(sColor)) {\r\n if (sColor.length === 4) {\r\n let sColorNew = '#'\r\n for (let i = 1; i < 4; i += 1) {\r\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1))\r\n }\r\n sColor = sColorNew\r\n }\r\n // 处理六位的颜色值\r\n const sColorChange = []\r\n for (let i = 1; i < 7; i += 2) {\r\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`))\r\n }\r\n if (!str) {\r\n return sColorChange\r\n }\r\n return `rgb(${sColorChange[0]},${sColorChange[1]},${sColorChange[2]})`\r\n } if (/^(rgb|RGB)/.test(sColor)) {\r\n const arr = sColor.replace(/(?:\\(|\\)|rgb|RGB)*/g, '').split(',')\r\n return arr.map((val) => Number(val))\r\n }\r\n return sColor\r\n}\r\n\r\n// 将rgb表示方式转换为hex表示方式\r\nexport function rgbToHex(rgb) {\r\n const _this = rgb\r\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/\r\n if (/^(rgb|RGB)/.test(_this)) {\r\n const aColor = _this.replace(/(?:\\(|\\)|rgb|RGB)*/g, '').split(',')\r\n let strHex = '#'\r\n for (let i = 0; i < aColor.length; i++) {\r\n let hex = Number(aColor[i]).toString(16)\r\n hex = String(hex).length == 1 ? `${0}${hex}` : hex // 保证每个rgb的值为2位\r\n if (hex === '0') {\r\n hex += hex\r\n }\r\n strHex += hex\r\n }\r\n if (strHex.length !== 7) {\r\n strHex = _this\r\n }\r\n return strHex\r\n } if (reg.test(_this)) {\r\n const aNum = _this.replace(/#/, '').split('')\r\n if (aNum.length === 6) {\r\n return _this\r\n } if (aNum.length === 3) {\r\n let numHex = '#'\r\n for (let i = 0; i < aNum.length; i += 1) {\r\n numHex += (aNum[i] + aNum[i])\r\n }\r\n return numHex\r\n }\r\n } else {\r\n return _this\r\n }\r\n}\r\n\r\n/**\r\n* JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串\r\n* sHex为传入的十六进制的色值\r\n* alpha为rgba的透明度\r\n*/\r\nexport function colorToRgba(color, alpha) {\r\n color = rgbToHex(color)\r\n // 十六进制颜色值的正则表达式\r\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/\r\n /* 16进制颜色转为RGB格式 */\r\n let sColor = String(color).toLowerCase()\r\n if (sColor && reg.test(sColor)) {\r\n if (sColor.length === 4) {\r\n let sColorNew = '#'\r\n for (let i = 1; i < 4; i += 1) {\r\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1))\r\n }\r\n sColor = sColorNew\r\n }\r\n // 处理六位的颜色值\r\n const sColorChange = []\r\n for (let i = 1; i < 7; i += 2) {\r\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`))\r\n }\r\n // return sColorChange.join(',')\r\n return `rgba(${sColorChange.join(',')},${alpha})`\r\n }\r\n\r\n return sColor\r\n}\r\n\r\nexport default {\r\n colorGradient,\r\n hexToRgb,\r\n rgbToHex,\r\n colorToRgba\r\n}\r\n", "let timeout = null\r\n\r\n/**\r\n * 防抖原理:一定时间内,只有最后一次操作,再过wait毫秒后才执行函数\r\n *\r\n * @param {Function} func 要执行的回调函数\r\n * @param {Number} wait 延时的时间\r\n * @param {Boolean} immediate 是否立即执行\r\n * @return null\r\n */\r\nexport function debounce(func, wait = 500, immediate = false) {\r\n // 清除定时器\r\n if (timeout !== null) clearTimeout(timeout)\r\n // 立即执行,此类情况一般用不到\r\n if (immediate) {\r\n const callNow = !timeout\r\n timeout = setTimeout(() => {\r\n timeout = null\r\n }, wait)\r\n if (callNow) typeof func === 'function' && func()\r\n } else {\r\n // 设置定时器,当最后一次操作后,timeout不会再被清除,所以在延时wait毫秒后执行func回调方法\r\n timeout = setTimeout(() => {\r\n typeof func === 'function' && func()\r\n }, wait)\r\n }\r\n}\r\n\r\nexport default debounce\r\n", "let timer;\r\nlet flag;\r\n/**\r\n * 节流原理:在一定时间内,只能触发一次\r\n *\r\n * @param {Function} func 要执行的回调函数\r\n * @param {Number} wait 延时的时间\r\n * @param {Boolean} immediate 是否立即执行\r\n * @return null\r\n */\r\nexport function throttle(func, wait = 500, immediate = true) {\r\n if (immediate) {\r\n if (!flag) {\r\n flag = true\r\n // 如果是立即执行,则在wait毫秒内开始时执行\r\n typeof func === 'function' && func()\r\n timer = setTimeout(() => {\r\n flag = false\r\n }, wait)\r\n }\r\n } else if (!flag) {\r\n flag = true\r\n // 如果是非立即执行,则在wait毫秒内的结束处执行\r\n timer = setTimeout(() => {\r\n flag = false\r\n typeof func === 'function' && func()\r\n }, wait)\r\n }\r\n}\r\nexport default throttle\r\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:44:35\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/actionSheet.js\n */\nexport default {\n // action-sheet组件\n actionSheet: {\n show: false,\n title: '',\n description: '',\n actions: [],\n index: '',\n cancelText: '',\n closeOnClickAction: true,\n safeAreaInsetBottom: true,\n openType: '',\n closeOnClickOverlay: true,\n round: 0,\n wrapMaxHeight: '600px'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:47:24\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/album.js\n */\nexport default {\n // album 组件\n album: {\n urls: [],\n keyName: '',\n singleSize: 180,\n multipleSize: 70,\n space: 6,\n singleMode: 'scaleToFill',\n multipleMode: 'aspectFill',\n maxCount: 9,\n previewFullImage: true,\n rowCount: 3,\n showMore: true,\n autoWrap: false,\n unit: 'px',\n stop: true,\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:48:53\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/alert.js\n */\nexport default {\n // alert警告组件\n alert: {\n title: '',\n type: 'warning',\n description: '',\n closable: false,\n showIcon: false,\n effect: 'light',\n center: false,\n fontSize: 14\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:49:22\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/avatar.js\n */\nexport default {\n // avatar 组件\n avatar: {\n src: '',\n shape: 'circle',\n size: 40,\n mode: 'scaleToFill',\n text: '',\n bgColor: '#c0c4cc',\n color: '#ffffff',\n fontSize: 18,\n icon: '',\n mpAvatar: false,\n randomBgColor: false,\n defaultUrl: '',\n colorIndex: '',\n name: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:49:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/avatarGroup.js\n */\nexport default {\n // avatarGroup 组件\n avatarGroup: {\n urls: [],\n maxCount: 5,\n shape: 'circle',\n mode: 'scaleToFill',\n showMore: true,\n size: 40,\n keyName: '',\n gap: 0.5,\n\t\textraValue: 0\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:50:18\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/backtop.js\n */\nexport default {\n // backtop组件\n backtop: {\n mode: 'circle',\n icon: 'arrow-upward',\n text: '',\n duration: 100,\n scrollTop: 0,\n top: 400,\n bottom: 100,\n right: 20,\n zIndex: 9,\n iconStyle: {\n color: '#909399',\n fontSize: '19px'\n }\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-23 19:51:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/badge.js\n */\nexport default {\n // 徽标数组件\n badge: {\n isDot: false,\n value: '',\n show: true,\n max: 999,\n type: 'error',\n showZero: false,\n bgColor: null,\n color: null,\n shape: 'circle',\n numberType: 'overflow',\n offset: [],\n inverted: false,\n absolute: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:51:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/button.js\n */\nexport default {\n // button组件\n button: {\n hairline: false,\n type: 'info',\n size: 'normal',\n shape: 'square',\n plain: false,\n disabled: false,\n loading: false,\n loadingText: '',\n loadingMode: 'spinner',\n loadingSize: 15,\n openType: '',\n formType: '',\n appParameter: '',\n hoverStopPropagation: true,\n lang: 'en',\n sessionFrom: '',\n sendMessageTitle: '',\n sendMessagePath: '',\n sendMessageImg: '',\n showMessageCard: false,\n dataName: '',\n throttleTime: 0,\n hoverStartTime: 0,\n hoverStayTime: 200,\n text: '',\n icon: '',\n iconColor: '',\n color: '',\n stop: true,\n }\n}\n", "/*\r\n * @Author : LQ\r\n * @Description :\r\n * @version : 1.0\r\n * @Date : 2021-08-20 16:44:21\r\n * @LastAuthor : LQ\r\n * @lastTime : 2021-08-20 16:52:43\r\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/calendar.js\r\n */\r\nexport default {\r\n // calendar 组件\r\n calendar: {\r\n title: '日期选择',\r\n showTitle: true,\r\n showSubtitle: true,\r\n mode: 'single',\r\n startText: '开始',\r\n endText: '结束',\r\n customList: [],\r\n color: '#3c9cff',\r\n minDate: 0,\r\n maxDate: 0,\r\n defaultDate: null,\r\n maxCount: Number.MAX_SAFE_INTEGER, // Infinity\r\n rowHeight: 56,\r\n formatter: null,\r\n showLunar: false,\r\n showMark: true,\r\n confirmText: '确定',\r\n confirmDisabledText: '确定',\r\n show: false,\r\n closeOnClickOverlay: false,\r\n readonly: false,\r\n showConfirm: true,\r\n maxRange: Number.MAX_SAFE_INTEGER, // Infinity\r\n rangePrompt: '',\r\n showRangePrompt: true,\r\n allowSameDay: false,\r\n\t\tround: 0,\r\n\t\tmonthNum: 3\r\n }\r\n}\r\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:53:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/carKeyboard.js\n */\nexport default {\n // 车牌号键盘\n carKeyboard: {\n random: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-23 20:53:09\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/cell.js\n */\nexport default {\n\t// cell组件的props\n\tcell: {\n\t\tcustomClass: '',\n\t\ttitle: '',\n\t\tlabel: '',\n\t\tvalue: '',\n\t\ticon: '',\n\t\tdisabled: false,\n\t\tborder: true,\n\t\tcenter: false,\n\t\turl: '',\n\t\tlinkType: 'navigateTo',\n\t\tclickable: false,\n\t\tisLink: false,\n\t\trequired: false,\n\t\tarrowDirection: '',\n\t\ticonStyle: {},\n\t\trightIconStyle: {},\n\t\trightIcon: 'arrow-right',\n\t\ttitleStyle: {},\n\t\tsize: '',\n\t\tstop: true,\n\t\tname: ''\n\t}\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:54:16\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/cellGroup.js\n */\nexport default {\n // cell-group组件的props\n cellGroup: {\n title: '',\n border: true,\n customStyle: {}\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-23 21:06:59\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/checkbox.js\n */\nexport default {\n // checkbox组件\n checkbox: {\n name: '',\n shape: '',\n size: '',\n checkbox: false,\n disabled: '',\n activeColor: '',\n inactiveColor: '',\n iconSize: '',\n iconColor: '',\n label: '',\n labelSize: '',\n labelColor: '',\n labelDisabled: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:54:47\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/checkboxGroup.js\n */\nexport default {\n // checkbox-group组件\n checkboxGroup: {\n name: '',\n value: [],\n shape: 'square',\n disabled: false,\n activeColor: '#2979ff',\n inactiveColor: '#c8c9cc',\n size: 18,\n placement: 'row',\n labelSize: 14,\n labelColor: '#303133',\n labelDisabled: false,\n iconColor: '#ffffff',\n iconSize: 12,\n iconPlacement: 'left',\n borderBottom: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:02\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/circleProgress.js\n */\nexport default {\n // circleProgress 组件\n circleProgress: {\n percentage: 30\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/code.js\n */\n\nexport default {\n // code 组件\n code: {\n seconds: 60,\n startText: '获取验证码',\n changeText: 'X秒重新获取',\n endText: '重新获取',\n keepRunning: false,\n uniqueKey: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:55:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/codeInput.js\n */\nexport default {\n // codeInput 组件\n codeInput: {\n\t\tadjustPosition: true,\n maxlength: 6,\n dot: false,\n mode: 'box',\n hairline: false,\n space: 10,\n value: '',\n focus: false,\n bold: false,\n color: '#606266',\n fontSize: 18,\n size: 35,\n disabledKeyboard: false,\n borderColor: '#c9cacc',\n\t\tdisabledDot: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:12\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/col.js\n */\nexport default {\n // col 组件\n col: {\n span: 12,\n offset: 0,\n justify: 'start',\n align: 'stretch',\n textAlign: 'left'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:30\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapse.js\n */\nexport default {\n // collapse 组件\n collapse: {\n value: null,\n accordion: false,\n border: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:56:42\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/collapseItem.js\n */\nexport default {\n // collapseItem 组件\n collapseItem: {\n title: '',\n value: '',\n label: '',\n disabled: false,\n isLink: true,\n clickable: true,\n border: true,\n align: 'left',\n name: '',\n icon: '',\n duration: 300,\n showRight: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:16\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/columnNotice.js\n */\nexport default {\n // columnNotice 组件\n columnNotice: {\n text: '',\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n fontSize: 14,\n speed: 80,\n step: false,\n duration: 1500,\n disableTouch: true,\n\t\tjustifyContent: 'flex-start'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:11:29\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/countDown.js\n */\nexport default {\n // u-count-down 计时器组件\n countDown: {\n time: 0,\n format: 'HH:mm:ss',\n autoStart: true,\n millisecond: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/countTo.js\n */\nexport default {\n // countTo 组件\n countTo: {\n startVal: 0,\n endVal: 0,\n duration: 2000,\n autoplay: true,\n decimals: 0,\n useEasing: true,\n decimal: '.',\n color: '#606266',\n fontSize: 22,\n bold: false,\n separator: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:57:48\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/datetimePicker.js\n */\nexport default {\n // datetimePicker 组件\n datetimePicker: {\n show: false,\n\t\tpopupMode: 'bottom',\n showToolbar: true,\n value: '',\n title: '',\n mode: 'datetime',\n maxDate: new Date(new Date().getFullYear() + 10, 0, 1).getTime(),\n minDate: new Date(new Date().getFullYear() - 10, 0, 1).getTime(),\n minHour: 0,\n maxHour: 23,\n minMinute: 0,\n maxMinute: 59,\n filter: null,\n formatter: null,\n loading: false,\n itemHeight: 44,\n cancelText: '取消',\n confirmText: '确认',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n visibleItemCount: 5,\n closeOnClickOverlay: false,\n defaultIndex: []\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:58:03\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/divider.js\n */\nexport default {\n // divider组件\n divider: {\n dashed: false,\n hairline: true,\n dot: false,\n textPosition: 'center',\n text: '',\n textSize: 14,\n textColor: '#909399',\n lineColor: '#dcdfe6'\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:27\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/empty.js\n */\nexport default {\n // empty组件\n empty: {\n icon: '',\n text: '',\n textColor: '#c0c4cc',\n textSize: 14,\n iconColor: '#c0c4cc',\n iconSize: 90,\n mode: 'data',\n width: 160,\n height: 160,\n show: true,\n marginTop: 0\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:03:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/form.js\n */\nexport default {\n // form 组件\n form: {\n model: {},\n rules: {},\n errorType: 'message',\n borderBottom: true,\n labelPosition: 'left',\n labelWidth: 45,\n labelAlign: 'left',\n labelStyle: {}\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:04:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/formItem.js\n */\nexport default {\n // formItem 组件\n formItem: {\n label: '',\n prop: '',\n rules: [],\n borderBottom: '',\n labelPosition: '',\n labelWidth: '',\n rightIcon: '',\n leftIcon: '',\n required: false,\n leftIconStyle: '',\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:25\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/gap.js\n */\nexport default {\n // gap组件\n gap: {\n bgColor: 'transparent',\n height: 20,\n marginTop: 0,\n marginBottom: 0,\n customStyle: {}\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:57\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/grid.js\n */\nexport default {\n // grid组件\n grid: {\n col: 3,\n border: false,\n align: 'left'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/gridItem.js\n */\nexport default {\n // grid-item组件\n gridItem: {\n name: null,\n bgColor: 'transparent'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 18:00:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/icon.js\n */\nimport config from '../../libs/config/config'\n\nconst {\n color\n} = config\nexport default {\n // icon组件\n icon: {\n name: '',\n color: color['u-content-color'],\n size: '16px',\n bold: false,\n index: '',\n hoverClass: '',\n customPrefix: 'uicon',\n label: '',\n labelPos: 'right',\n labelSize: '15px',\n labelColor: color['u-content-color'],\n space: '3px',\n imgMode: '',\n width: '',\n height: '',\n top: 0,\n stop: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:51\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/image.js\n */\nexport default {\n // image组件\n image: {\n src: '',\n mode: 'aspectFill',\n width: '300',\n height: '225',\n shape: 'square',\n radius: 0,\n lazyLoad: true,\n showMenuByLongpress: true,\n loadingIcon: 'photo',\n errorIcon: 'error-circle',\n showLoading: true,\n showError: true,\n fade: true,\n webp: false,\n duration: 500,\n bgColor: '#f3f4f6'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:15\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexAnchor.js\n */\nexport default {\n // indexAnchor 组件\n indexAnchor: {\n text: '',\n color: '#606266',\n size: 14,\n bgColor: '#dedede',\n height: 32\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:35\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/indexList.js\n */\nexport default {\n // indexList 组件\n indexList: {\n inactiveColor: '#606266',\n activeColor: '#5677fc',\n indexList: [],\n sticky: true,\n customNavHeight: 0,\n safeBottomFix: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:13:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/input.js\n */\nexport default {\n\t// index 组件\n\tinput: {\n\t\tvalue: '',\n\t\ttype: 'text',\n\t\tfixed: false,\n\t\tdisabled: false,\n\t\tdisabledColor: '#f5f7fa',\n\t\tclearable: false,\n\t\tpassword: false,\n\t\tmaxlength: 140,\n\t\tplaceholder: null,\n\t\tplaceholderClass: 'input-placeholder',\n\t\tplaceholderStyle: 'color: #c0c4cc',\n\t\tshowWordLimit: false,\n\t\tconfirmType: 'done',\n\t\tconfirmHold: false,\n\t\tholdKeyboard: false,\n\t\tfocus: false,\n\t\tautoBlur: false,\n\t\tdisableDefaultPadding: false,\n\t\tcursor: -1,\n\t\tcursorSpacing: 30,\n\t\tselectionStart: -1,\n\t\tselectionEnd: -1,\n\t\tadjustPosition: true,\n\t\tinputAlign: 'left',\n\t\tfontSize: '15px',\n\t\tcolor: '#303133',\n\t\tprefixIcon: '',\n\t\tprefixIconStyle: '',\n\t\tsuffixIcon: '',\n\t\tsuffixIconStyle: '',\n\t\tborder: 'surround',\n\t\treadonly: false,\n\t\tshape: 'square',\n\t\tformatter: null\n\t}\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/keyboard.js\n */\nexport default {\n // 键盘组件\n keyboard: {\n mode: 'number',\n dotDisabled: false,\n tooltip: true,\n showTips: true,\n tips: '',\n showCancel: true,\n showConfirm: true,\n random: false,\n safeAreaInsetBottom: true,\n closeOnClickOverlay: true,\n show: false,\n overlay: true,\n zIndex: 10075,\n cancelText: '取消',\n confirmText: '确定',\n autoChange: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:04:49\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/line.js\n */\nexport default {\n // line组件\n line: {\n color: '#d6d7d9',\n length: '100%',\n direction: 'row',\n hairline: true,\n margin: 0,\n dashed: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:14:11\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/lineProgress.js\n */\nexport default {\n // lineProgress 组件\n lineProgress: {\n activeColor: '#19be6b',\n inactiveColor: '#ececec',\n percentage: 0,\n showText: true,\n height: 12\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:45:36\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/link.js\n */\nimport config from '../../libs/config/config'\n\nconst {\n color\n} = config\nexport default {\n // link超链接组件props参数\n link: {\n color: color['u-primary'],\n fontSize: 15,\n underLine: false,\n href: '',\n mpTips: '链接已复制,请在浏览器打开',\n lineColor: '',\n text: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:14:53\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/list.js\n */\nexport default {\n // list 组件\n list: {\n showScrollbar: false,\n lowerThreshold: 50,\n upperThreshold: 0,\n scrollTop: 0,\n offsetAccuracy: 10,\n enableFlex: false,\n pagingEnabled: false,\n scrollable: true,\n scrollIntoView: '',\n scrollWithAnimation: false,\n enableBackToTop: false,\n height: 0,\n width: 0,\n preLoadScreen: 1\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:40\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/listItem.js\n */\nexport default {\n // listItem 组件\n listItem: {\n anchor: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:45:47\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingIcon.js\n */\nimport config from '../../libs/config/config'\n\nconst {\n color\n} = config\nexport default {\n // loading-icon加载中图标组件\n loadingIcon: {\n show: true,\n color: color['u-tips-color'],\n textColor: color['u-tips-color'],\n vertical: false,\n mode: 'spinner',\n size: 24,\n textSize: 15,\n text: '',\n timingFunction: 'ease-in-out',\n duration: 1200,\n inactiveColor: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:00:23\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadingPage.js\n */\nexport default {\n // loading-page组件\n loadingPage: {\n loadingText: '正在加载',\n image: '',\n loadingMode: 'circle',\n loading: false,\n bgColor: '#ffffff',\n color: '#C8C8C8',\n fontSize: 19,\n iconSize: 28,\n loadingColor: '#C8C8C8',\n zIndex: 10\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:26\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/loadmore.js\n */\nexport default {\n // loadmore 组件\n loadmore: {\n status: 'loadmore',\n bgColor: 'transparent',\n icon: true,\n fontSize: 14,\n\t\ticonSize: 17,\n color: '#606266',\n loadingIcon: 'spinner',\n loadmoreText: '加载更多',\n loadingText: '正在加载...',\n nomoreText: '没有更多了',\n isDot: false,\n iconColor: '#b7b7b7',\n marginTop: 10,\n marginBottom: 10,\n height: 'auto',\n line: false,\n\t\tlineColor: '#E6E8EB',\n\t\tdashed: false,\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:15:59\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/modal.js\n */\nexport default {\n // modal 组件\n modal: {\n show: false,\n title: '',\n content: '',\n confirmText: '确认',\n cancelText: '取消',\n showConfirmButton: true,\n showCancelButton: false,\n confirmColor: '#2979ff',\n cancelColor: '#606266',\n buttonReverse: false,\n zoom: true,\n asyncClose: false,\n closeOnClickOverlay: false,\n negativeTop: 0,\n width: '650rpx',\n confirmButtonShape: '',\n contentTextAlign: 'left'\n }\n}\n", "// 为了让用户能够自定义主题,会逐步弃用此文件,各颜色通过css提供\r\n// 为了给某些特殊场景使用和向后兼容,无需删除此文件(2020-06-20)\r\nconst color = {\r\n primary: '#3c9cff',\r\n info: '#909399',\r\n default: '#909399',\r\n warning: '#f9ae3d',\r\n error: '#f56c6c',\r\n success: '#5ac725',\r\n mainColor: '#303133',\r\n contentColor: '#606266',\r\n tipsColor: '#909399',\r\n lightColor: '#c0c4cc',\r\n borderColor: '#e4e7ed'\r\n}\r\n\r\nexport default color\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:16:18\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/navbar.js\n */\nimport color from '../../libs/config/color'\nexport default {\n // navbar 组件\n navbar: {\n safeAreaInsetTop: true,\n placeholder: false,\n fixed: true,\n border: false,\n leftIcon: 'arrow-left',\n leftText: '',\n rightText: '',\n rightIcon: '',\n title: '',\n titleColor: '',\n bgColor: '#ffffff',\n titleWidth: '400rpx',\n height: '44px',\n\t\tleftIconSize: 20,\n\t\tleftIconColor: color.mainColor,\n\t\tautoBack: false,\n\t\ttitleStyle: ''\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:16:39\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/noNetwork.js\n */\nexport default {\n // noNetwork\n noNetwork: {\n tips: '哎呀,网络信号丢失',\n zIndex: '',\n image: 'data:image/png;base64,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'\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:17:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/noticeBar.js\n */\nexport default {\n // noticeBar\n noticeBar: {\n text: [],\n direction: 'row',\n step: false,\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n speed: 80,\n fontSize: 14,\n duration: 2000,\n disableTouch: true,\n url: '',\n linkType: 'navigateTo',\n\t\tjustifyContent: 'flex-start'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:10:21\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/notify.js\n */\nexport default {\n // notify组件\n notify: {\n top: 0,\n type: 'primary',\n color: '#ffffff',\n bgColor: '',\n message: '',\n duration: 3000,\n fontSize: 15,\n safeAreaInsetTop: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:11:46\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberBox.js\n */\nexport default {\n // 步进器组件\n numberBox: {\n name: '',\n value: 0,\n min: 1,\n max: Number.MAX_SAFE_INTEGER,\n step: 1,\n integer: false,\n disabled: false,\n disabledInput: false,\n asyncChange: false,\n inputWidth: 35,\n showMinus: true,\n showPlus: true,\n decimalLength: null,\n longPress: true,\n color: '#323233',\n buttonSize: 30,\n bgColor: '#EBECEE',\n cursorSpacing: 100,\n disableMinus: false,\n disablePlus: false,\n iconStyle: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:08:05\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/numberKeyboard.js\n */\nexport default {\n // 数字键盘\n numberKeyboard: {\n mode: 'number',\n dotDisabled: false,\n random: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/overlay.js\n */\nexport default {\n // overlay组件\n overlay: {\n show: false,\n zIndex: 10070,\n duration: 300,\n opacity: 0.5\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:17:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/parse.js\n */\nexport default {\n // parse\n parse: {\n copyLink: true,\n errorImg: '',\n lazyLoad: false,\n loadingImg: '',\n pauseVideo: true,\n previewImg: true,\n setTitle: true,\n showImgMenu: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/picker.js\n */\nexport default {\n // picker\n picker: {\n show: false,\n\t\tpopupMode: 'bottom',\n showToolbar: true,\n title: '',\n columns: [],\n loading: false,\n itemHeight: 44,\n cancelText: '取消',\n confirmText: '确定',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n visibleItemCount: 5,\n keyName: 'text',\n closeOnClickOverlay: false,\n defaultIndex: [],\n\t\timmediateChange: true,\n\t\tzIndex: 10076,\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:06:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/popup.js\n */\nexport default {\n // popup组件\n popup: {\n show: false,\n overlay: true,\n mode: 'bottom',\n duration: 300,\n closeable: false,\n overlayStyle: {},\n closeOnClickOverlay: true,\n zIndex: 10075,\n safeAreaInsetBottom: true,\n safeAreaInsetTop: false,\n closeIconPos: 'top-right',\n round: 0,\n zoom: true,\n bgColor: '',\n overlayOpacity: 0.5\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:02:34\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/radio.js\n */\nexport default {\n // radio组件\n radio: {\n name: '',\n shape: '',\n disabled: '',\n labelDisabled: '',\n activeColor: '',\n inactiveColor: '',\n iconSize: '',\n labelSize: '',\n label: '',\n labelColor: '',\n size: '',\n iconColor: '',\n placement: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : CPS\n * @lastTime : 2024-11-05 16:01:12\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/radioGroup.js\n */\nexport default {\n // radio-group组件\n radioGroup: {\n value: '',\n disabled: false,\n shape: 'circle',\n activeColor: '#2979ff',\n inactiveColor: '#c8c9cc',\n name: '',\n size: 18,\n placement: 'row',\n label: '',\n labelColor: '#303133',\n labelSize: 14,\n labelDisabled: false,\n iconColor: '#ffffff',\n iconSize: 12,\n borderBottom: false,\n iconPlacement: 'left',\n gap: \"10px\"\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:05:09\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/rate.js\n */\nexport default {\n // rate组件\n rate: {\n value: 1,\n count: 5,\n disabled: false,\n size: 18,\n inactiveColor: '#b2b2b2',\n activeColor: '#FA3534',\n gutter: 4,\n minCount: 1,\n allowHalf: false,\n activeIcon: 'star-fill',\n inactiveIcon: 'star',\n touchable: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:41\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/readMore.js\n */\nexport default {\n // readMore\n readMore: {\n showHeight: 400,\n toggle: false,\n closeText: '展开阅读全文',\n openText: '收起',\n color: '#2979ff',\n fontSize: 14,\n textIndent: '2em',\n name: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:18:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/row.js\n */\nexport default {\n // row\n row: {\n gutter: 0,\n justify: 'start',\n align: 'center'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/rowNotice.js\n */\nexport default {\n // rowNotice\n rowNotice: {\n text: '',\n icon: 'volume',\n mode: '',\n color: '#f9ae3d',\n bgColor: '#fdf6ec',\n fontSize: 14,\n speed: 80\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:28\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/scrollList.js\n */\nexport default {\n // scrollList\n scrollList: {\n indicatorWidth: 50,\n indicatorBarWidth: 20,\n indicator: true,\n indicatorColor: '#f2f2f2',\n indicatorActiveColor: '#3c9cff',\n indicatorStyle: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:19:45\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/search.js\n */\nexport default {\n // search\n search: {\n shape: 'round',\n bgColor: '#f2f2f2',\n placeholder: '请输入关键字',\n clearabled: true,\n focus: false,\n showAction: true,\n actionStyle: {},\n actionText: '搜索',\n inputAlign: 'left',\n inputStyle: {},\n disabled: false,\n borderColor: 'transparent',\n searchIconColor: '#909399',\n searchIconSize: 22,\n color: '#606266',\n placeholderColor: '#909399',\n searchIcon: 'search',\n margin: '0',\n animation: false,\n value: '',\n maxlength: '-1',\n height: 32,\n label: null\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:33\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/section.js\n */\nexport default {\n // u-section组件\n section: {\n title: '',\n subTitle: '更多',\n right: true,\n fontSize: 15,\n bold: true,\n color: '#303133',\n subColor: '#909399',\n showLine: true,\n lineColor: '',\n arrow: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:20:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/skeleton.js\n */\nexport default {\n // skeleton\n skeleton: {\n loading: true,\n animate: true,\n rows: 0,\n rowsWidth: '100%',\n rowsHeight: 18,\n title: true,\n titleWidth: '50%',\n titleHeight: 18,\n avatar: false,\n avatarSize: 32,\n avatarShape: 'circle'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:08:25\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/slider.js\n */\nexport default {\n // slider组件\n slider: {\n value: 0,\n blockSize: 18,\n min: 0,\n max: 100,\n step: 1,\n activeColor: '#2979ff',\n inactiveColor: '#c0c4cc',\n blockColor: '#ffffff',\n showValue: false,\n\t\tdisabled:false,\n blockStyle: {},\n useNative: false,\n height: '2px'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:20:39\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/statusBar.js\n */\nexport default {\n // statusBar\n statusBar: {\n bgColor: 'transparent'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:37\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/steps.js\n */\nexport default {\n // steps组件\n steps: {\n direction: 'row',\n current: 0,\n activeColor: '#3c9cff',\n inactiveColor: '#969799',\n activeIcon: '',\n inactiveIcon: '',\n dot: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/stepsItem.js\n */\nexport default {\n // steps-item组件\n stepsItem: {\n title: '',\n desc: '',\n iconSize: 17,\n error: false\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:30\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/sticky.js\n */\nexport default {\n // sticky组件\n sticky: {\n offsetTop: 0,\n customNavHeight: 0,\n disabled: false,\n bgColor: 'transparent',\n zIndex: '',\n index: ''\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:12:20\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/subsection.js\n */\nexport default {\n // subsection组件\n subsection: {\n list: [],\n current: 0,\n activeColor: '#3c9cff',\n inactiveColor: '#303133',\n mode: 'button',\n fontSize: 12,\n bold: true,\n bgColor: '#eeeeef',\n\t\tkeyName: 'name'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:00:42\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeAction.js\n */\nexport default {\n // swipe-action组件\n swipeAction: {\n autoClose: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:01:13\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swipeActionItem.js\n */\nexport default {\n // swipeActionItem 组件\n swipeActionItem: {\n show: false,\n closeOnClick: true,\n name: '',\n disabled: false,\n threshold: 20,\n autoClose: true,\n options: [],\n duration: 300\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:21:38\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiper.js\n */\nexport default {\n // swiper 组件\n swiper: {\n list: [],\n indicator: false,\n indicatorActiveColor: '#FFFFFF',\n indicatorInactiveColor: 'rgba(255, 255, 255, 0.35)',\n indicatorStyle: '',\n indicatorMode: 'line',\n autoplay: true,\n current: 0,\n currentItemId: '',\n interval: 3000,\n duration: 300,\n circular: false,\n previousMargin: 0,\n nextMargin: 0,\n acceleration: false,\n displayMultipleItems: 1,\n easingFunction: 'default',\n keyName: 'url',\n imgMode: 'aspectFill',\n height: 130,\n bgColor: '#f3f4f6',\n radius: 4,\n loading: false,\n showTitle: false\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:07\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/swiperIndicator.js\n */\nexport default {\n // swiperIndicator 组件\n swiperIndicator: {\n length: 0,\n current: 0,\n indicatorActiveColor: '',\n indicatorInactiveColor: '',\n\t\tindicatorMode: 'line'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:24\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/switch.js\n */\nexport default {\n // switch\n switch: {\n loading: false,\n disabled: false,\n size: 25,\n activeColor: '#2979ff',\n inactiveColor: '#ffffff',\n value: false,\n activeValue: true,\n inactiveValue: false,\n asyncChange: false,\n space: 0\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:40\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbar.js\n */\nexport default {\n // tabbar\n tabbar: {\n value: null,\n safeAreaInsetBottom: true,\n border: true,\n zIndex: 1,\n activeColor: '#1989fa',\n inactiveColor: '#7d7e80',\n fixed: true,\n placeholder: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:22:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabbarItem.js\n */\nexport default {\n //\n tabbarItem: {\n name: null,\n icon: '',\n badge: null,\n dot: false,\n text: '',\n badgeStyle: 'top: 6px;right:2px;'\n }\n}\n", "/*\r\n * @Author : LQ\r\n * @Description :\r\n * @version : 1.0\r\n * @Date : 2021-08-20 16:44:21\r\n * @LastAuthor : LQ\r\n * @lastTime : 2021-08-20 17:23:14\r\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tabs.js\r\n */\r\nexport default {\r\n //\r\n tabs: {\r\n duration: 300,\r\n list: [],\r\n lineColor: '#3c9cff',\r\n activeStyle: {\r\n color: '#303133'\r\n },\r\n inactiveStyle: {\r\n color: '#606266'\r\n },\r\n lineWidth: 20,\r\n lineHeight: 3,\r\n lineBgSize: 'cover',\r\n itemStyle: {\r\n height: '44px'\r\n },\r\n scrollable: true,\r\n\t\tcurrent: 0,\r\n\t\tkeyName: 'name'\r\n }\r\n}\r\n", "/*\r\n * @Author : LQ\r\n * @Description :\r\n * @version : 1.0\r\n * @Date : 2021-08-20 16:44:21\r\n * @LastAuthor : LQ\r\n * @lastTime : 2021-08-20 17:23:37\r\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tag.js\r\n */\r\nexport default {\r\n\t// tag 组件\r\n\ttag: {\r\n\t\ttype: 'primary',\r\n\t\tdisabled: false,\r\n\t\tsize: 'medium',\r\n\t\tshape: 'square',\r\n\t\ttext: '',\r\n\t\tbgColor: '',\r\n\t\tcolor: '',\r\n\t\tborderColor: '',\r\n\t\tcloseColor: '#C6C7CB',\r\n\t\tname: '',\r\n\t\tplainFill: false,\r\n\t\tplain: false,\r\n\t\tclosable: false,\r\n\t\tshow: true,\r\n\t\ticon: '',\r\n\t\ticonColor: ''\r\n\t}\r\n}", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:23:58\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/text.js\n */\nexport default {\n // text 组件\n text: {\n type: '',\n show: true,\n text: '',\n prefixIcon: '',\n suffixIcon: '',\n mode: '',\n href: '',\n format: '',\n call: false,\n openType: '',\n bold: false,\n block: false,\n lines: '',\n color: '#303133',\n size: 15,\n iconStyle: {\n fontSize: '15px'\n },\n decoration: 'none',\n margin: 0,\n lineHeight: '',\n align: 'left',\n wordWrap: 'normal',\n\t\tflex1: true\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:24:32\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/textarea.js\n */\nexport default {\n\t// textarea 组件\n\ttextarea: {\n\t\tvalue: '',\n\t\tplaceholder: '',\n\t\tplaceholderClass: 'textarea-placeholder',\n\t\tplaceholderStyle: 'color: #c0c4cc',\n\t\theight: 70,\n\t\tconfirmType: 'done',\n\t\tdisabled: false,\n\t\tcount: false,\n\t\tfocus: false,\n\t\tautoHeight: false,\n\t\tfixed: false,\n\t\tcursorSpacing: 0,\n\t\tcursor: '',\n\t\tshowConfirmBar: true,\n\t\tselectionStart: -1,\n\t\tselectionEnd: -1,\n\t\tadjustPosition: true,\n\t\tdisableDefaultPadding: false,\n\t\tholdKeyboard: false,\n\t\tmaxlength: 140,\n\t\tborder: 'surround',\n\t\tformatter: null\n\t}\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:07:07\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/toast.js\n */\nexport default {\n // toast组件\n toast: {\n zIndex: 10090,\n loading: false,\n text: '',\n icon: '',\n type: '',\n loadingMode: '',\n show: '',\n overlay: false,\n position: 'center',\n params: {},\n duration: 2000,\n isTab: false,\n url: '',\n callback: null,\n back: false\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:24:55\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/toolbar.js\n */\nexport default {\n // toolbar 组件\n toolbar: {\n show: true,\n cancelText: '取消',\n confirmText: '确认',\n cancelColor: '#909193',\n confirmColor: '#3c9cff',\n title: ''\n }\n\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:25:14\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/tooltip.js\n */\nexport default {\n // tooltip 组件\n tooltip: {\n text: '',\n copyText: '',\n size: 14,\n color: '#606266',\n bgColor: 'transparent',\n direction: 'top',\n zIndex: 10071,\n showCopy: true,\n buttons: [],\n overlay: true,\n showToast: true\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 16:59:00\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/transition.js\n */\nexport default {\n // transition动画组件的props\n transition: {\n show: false,\n mode: 'fade',\n duration: '300',\n timingFunction: 'ease-out'\n }\n}\n", "/*\n * @Author : LQ\n * @Description :\n * @version : 1.0\n * @Date : 2021-08-20 16:44:21\n * @LastAuthor : LQ\n * @lastTime : 2021-08-20 17:09:50\n * @FilePath : /u-view2.0/uview-ui/libs/config/props/upload.js\n */\nexport default {\n\t// upload组件\n\tupload: {\n\t\taccept: 'image',\n\t\textension: [],\n\t\tcapture: ['album', 'camera'],\n\t\tcompressed: true,\n\t\tcamera: 'back',\n\t\tmaxDuration: 60,\n\t\tuploadIcon: 'camera-fill',\n\t\tuploadIconColor: '#D3D4D6',\n\t\tuseBeforeRead: false,\n\t\tpreviewFullImage: true,\n\t\tmaxCount: 52,\n\t\tdisabled: false,\n\t\timageMode: 'aspectFill',\n\t\tname: '',\n\t\tsizeType: ['original', 'compressed'],\n\t\tmultiple: false,\n\t\tdeletable: true,\n\t\tmaxSize: Number.MAX_VALUE,\n\t\tfileList: [],\n\t\tuploadText: '',\n\t\twidth: 80,\n\t\theight: 80,\n\t\tpreviewImage: true\n\t}\n}\n", "/**\n * 此文件的作用为统一配置所有组件的props参数\n * 借此用户可以全局覆盖组件的props默认值\n * 无需在每个引入组件的页面中都配置一次\n */\nimport config from './config'\n\nimport ActionSheet from '../../components/u-action-sheet/actionSheet'\nimport Album from '../../components/u-album/album'\nimport Alert from '../../components/u-alert/alert'\nimport Avatar from '../../components/u-avatar/avatar'\nimport AvatarGroup from '../../components/u-avatar-group/avatarGroup'\nimport Backtop from '../../components/u-back-top/backtop'\nimport Badge from '../../components/u-badge/badge'\nimport Button from '../../components/u-button/button'\nimport Calendar from '../../components/u-calendar/calendar'\nimport CarKeyboard from '../../components/u-car-keyboard/carKeyboard'\nimport Cell from '../../components/u-cell/cell'\nimport CellGroup from '../../components/u-cell-group/cellGroup'\nimport Checkbox from '../../components/u-checkbox/checkbox'\nimport CheckboxGroup from '../../components/u-checkbox-group/checkboxGroup'\nimport CircleProgress from '../../components/u-circle-progress/circleProgress'\nimport Code from '../../components/u-code/code'\nimport CodeInput from '../../components/u-code-input/codeInput'\nimport Col from '../../components/u-col/col'\nimport Collapse from '../../components/u-collapse/collapse'\nimport CollapseItem from '../../components/u-collapse-item/collapseItem'\nimport ColumnNotice from '../../components/u-column-notice/columnNotice'\nimport CountDown from '../../components/u-count-down/countDown'\nimport CountTo from '../../components/u-count-to/countTo'\nimport DatetimePicker from '../../components/u-datetime-picker/datetimePicker'\nimport Divider from '../../components/u-divider/divider'\nimport Empty from '../../components/u-empty/empty'\nimport Form from '../../components/u-form/form'\nimport GormItem from '../../components/u-form-item/formItem'\nimport Gap from '../../components/u-gap/gap'\nimport Grid from '../../components/u-grid/grid'\nimport GridItem from '../../components/u-grid-item/gridItem'\nimport Icon from '../../components/u-icon/icon'\nimport Image from '../../components/u-image/image'\nimport IndexAnchor from '../../components/u-index-anchor/indexAnchor'\nimport IndexList from '../../components/u-index-list/indexList'\nimport Input from '../../components/u-input/input'\nimport Keyboard from '../../components/u-keyboard/keyboard'\nimport Line from '../../components/u-line/line'\nimport LineProgress from '../../components/u-line-progress/lineProgress'\nimport Link from '../../components/u-link/link'\nimport List from '../../components/u-list/list'\nimport ListItem from '../../components/u-list-item/listItem'\nimport LoadingIcon from '../../components/u-loading-icon/loadingIcon'\nimport LoadingPage from '../../components/u-loading-page/loadingPage'\nimport Loadmore from '../../components/u-loadmore/loadmore'\nimport Modal from '../../components/u-modal/modal'\nimport Navbar from '../../components/u-navbar/navbar'\nimport NoNetwork from '../../components/u-no-network/noNetwork'\nimport NoticeBar from '../../components/u-notice-bar/noticeBar'\nimport Notify from '../../components/u-notify/notify'\nimport NumberBox from '../../components/u-number-box/numberBox'\nimport NumberKeyboard from '../../components/u-number-keyboard/numberKeyboard'\nimport Overlay from '../../components/u-overlay/overlay'\nimport Parse from '../../components/u-parse/parse'\nimport Picker from '../../components/u-picker/picker'\nimport Popup from '../../components/u-popup/popup'\nimport Radio from '../../components/u-radio/radio'\nimport RadioGroup from '../../components/u-radio-group/radioGroup'\nimport Rate from '../../components/u-rate/rate'\nimport ReadMore from '../../components/u-read-more/readMore'\nimport Row from '../../components/u-row/row'\nimport RowNotice from '../../components/u-row-notice/rowNotice'\nimport ScrollList from '../../components/u-scroll-list/scrollList'\nimport Search from '../../components/u-search/search'\nimport Section from '../../components/u-section/section'\nimport Skeleton from '../../components/u-skeleton/skeleton'\nimport Slider from '../../components/u-slider/slider'\nimport StatusBar from '../../components/u-status-bar/statusBar'\nimport Steps from '../../components/u-steps/steps'\nimport StepsItem from '../../components/u-steps-item/stepsItem'\nimport Sticky from '../../components/u-sticky/sticky'\nimport Subsection from '../../components/u-subsection/subsection'\nimport SwipeAction from '../../components/u-swipe-action/swipeAction'\nimport SwipeActionItem from '../../components/u-swipe-action-item/swipeActionItem'\nimport Swiper from '../../components/u-swiper/swiper'\nimport SwipterIndicator from '../../components/u-swiper-indicator/swipterIndicator'\nimport Switch from '../../components/u-switch/switch'\nimport Tabbar from '../../components/u-tabbar/tabbar'\nimport TabbarItem from '../../components/u-tabbar-item/tabbarItem'\nimport Tabs from '../../components/u-tabs/tabs'\nimport Tag from '../../components/u-tag/tag'\nimport Text from '../../components/u-text/text'\nimport Textarea from '../../components/u-textarea/textarea'\nimport Toast from '../../components/u-toast/toast'\nimport Toolbar from '../../components/u-toolbar/toolbar'\nimport Tooltip from '../../components/u-tooltip/tooltip'\nimport Transition from '../../components/u-transition/transition'\nimport Upload from '../../components/u-upload/upload'\n\nconst {\n color\n} = config\n\nexport default {\n ...ActionSheet,\n ...Album,\n ...Alert,\n ...Avatar,\n ...AvatarGroup,\n ...Backtop,\n ...Badge,\n ...Button,\n ...Calendar,\n ...CarKeyboard,\n ...Cell,\n ...CellGroup,\n ...Checkbox,\n ...CheckboxGroup,\n ...CircleProgress,\n ...Code,\n ...CodeInput,\n ...Col,\n ...Collapse,\n ...CollapseItem,\n ...ColumnNotice,\n ...CountDown,\n ...CountTo,\n ...DatetimePicker,\n ...Divider,\n ...Empty,\n ...Form,\n ...GormItem,\n ...Gap,\n ...Grid,\n ...GridItem,\n ...Icon,\n ...Image,\n ...IndexAnchor,\n ...IndexList,\n ...Input,\n ...Keyboard,\n ...Line,\n ...LineProgress,\n ...Link,\n ...List,\n ...ListItem,\n ...LoadingIcon,\n ...LoadingPage,\n ...Loadmore,\n ...Modal,\n ...Navbar,\n ...NoNetwork,\n ...NoticeBar,\n ...Notify,\n ...NumberBox,\n ...NumberKeyboard,\n ...Overlay,\n ...Parse,\n ...Picker,\n ...Popup,\n ...Radio,\n ...RadioGroup,\n ...Rate,\n ...ReadMore,\n ...Row,\n ...RowNotice,\n ...ScrollList,\n ...Search,\n ...Section,\n ...Skeleton,\n ...Slider,\n ...StatusBar,\n ...Steps,\n ...StepsItem,\n ...Sticky,\n ...Subsection,\n ...SwipeAction,\n ...SwipeActionItem,\n ...Swiper,\n ...SwipterIndicator,\n ...Switch,\n ...Tabbar,\n ...TabbarItem,\n ...Tabs,\n ...Tag,\n ...Text,\n ...Textarea,\n ...Toast,\n ...Toolbar,\n ...Tooltip,\n ...Transition,\n ...Upload\n}\n", "// uniapp在H5中各API的z-index值如下:\r\n/**\r\n * actionsheet: 999\r\n * modal: 999\r\n * navigate: 998\r\n * tabbar: 998\r\n * toast: 999\r\n */\r\n\r\nexport default {\r\n toast: 10090,\r\n noNetwork: 10080,\r\n // popup包含popup,actionsheet,keyboard,picker的值\r\n popup: 10075,\r\n mask: 10070,\r\n navbar: 980,\r\n topTips: 975,\r\n sticky: 970,\r\n indexListSticky: 965\r\n}\n", "/**\n * 注意:\n * 此部分内容,在vue-cli模式下,需要在vue.config.js加入如下内容才有效:\n * module.exports = {\n * transpileDependencies: ['uview-v2']\n * }\n */\n\nlet platform = 'none'\n\n\nplatform = 'vue3'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nplatform = 'h5'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport default platform\n", "// 看到此报错,是因为没有配置vite.config.js的【transpileDependencies】\n// const pleaseSetTranspileDependencies = {}, babelTest = pleaseSetTranspileDependencies?.test\n\n// 引入全局mixin\nimport { mixin } from './libs/mixin/mixin.js'\n// 小程序特有的mixin\nimport { mpMixin } from './libs/mixin/mpMixin.js'\n// 全局挂载引入http相关请求拦截插件\nimport Request from './libs/luch-request'\n\n// 路由封装\nimport route from './libs/util/route.js'\n// 颜色渐变相关,colorGradient-颜色渐变,hexToRgb-十六进制颜色转rgb颜色,rgbToHex-rgb转十六进制\nimport colorGradient from './libs/function/colorGradient.js'\n\n// 规则检验\nimport test from './libs/function/test.js'\n// 防抖方法\nimport debounce from './libs/function/debounce.js'\n// 节流方法\nimport throttle from './libs/function/throttle.js'\n// 公共文件写入的方法\nimport index from './libs/function/index.js'\n\n// 配置信息\nimport config from './libs/config/config.js'\n// props配置信息\nimport props from './libs/config/props.js'\n// 各个需要fixed的地方的z-index配置文件\nimport zIndex from './libs/config/zIndex.js'\n// 关于颜色的配置,特殊场景使用\nimport color from './libs/config/color.js'\n// 平台\nimport platform from './libs/function/platform'\n\n// 导出\nconst http = new Request()\nlet themeType = ['primary', 'success', 'error', 'warning', 'info'];\nexport { route, http, debounce, throttle, platform, themeType, mixin, mpMixin, props, color, test, zIndex }\nexport * from './libs/function/index.js'\nexport * from './libs/function/colorGradient.js'\n\n/**\n * @description 修改uView内置属性值\n * @param {object} props 修改内置props属性\n * @param {object} config 修改内置config属性\n * @param {object} color 修改内置color属性\n * @param {object} zIndex 修改内置zIndex属性\n */\nexport function setConfig(configs) {\n\tindex.shallowMerge(config, configs.config || {})\n\tindex.shallowMerge(props, configs.props || {})\n\tindex.shallowMerge(color, configs.color || {})\n\tindex.shallowMerge(zIndex, configs.zIndex || {})\n}\nindex.setConfig = setConfig\n\nconst $u = {\n route,\n date: index.timeFormat, // 另名date\n colorGradient: colorGradient.colorGradient,\n hexToRgb: colorGradient.hexToRgb,\n rgbToHex: colorGradient.rgbToHex,\n colorToRgba: colorGradient.colorToRgba,\n test,\n type: themeType,\n http,\n config, // uview-plus配置信息相关,比如版本号\n zIndex,\n debounce,\n throttle,\n mixin,\n mpMixin,\n props,\n ...index,\n color,\n platform\n}\n\nexport const mount$u = function() {\n uni.$u = $u\n}\n\n\nconst importFn = import.meta.glob('./components/u-*/u-*.vue', { eager: true })\nlet components = [];\n\n// 批量注册全局组件\nfor (const key in importFn) {\n let component = importFn[key].default;\n if (component.name && component.name.indexOf('u--') !== 0) {\n component.install = function (Vue) {\n Vue.component(name, component);\n };\n \n // 导入组件\n components.push(component);\n }\n}\n\n\nfunction toCamelCase(str) {\n return str.replace(/-([a-z])/g, function(match, group1) {\n return group1.toUpperCase();\n }).replace(/^[a-z]/, function(match) {\n return match.toUpperCase();\n });\n}\n\nconst install = (Vue) => {\n\n components.forEach(function(component) {\n const name = component.name.replace(/u-([a-zA-Z0-9-_]+)/g, 'up-$1');\n Vue.component(name, component); \n });\n\n\n // 同时挂载到uni和Vue.prototype中\n // $u挂载到uni对象上\n uni.$u = $u\n\n\n // 只有vue,挂载到Vue.prototype才有意义,因为nvue中全局Vue.prototype和Vue.mixin是无效的\n Vue.config.globalProperties.$u = $u\n Vue.mixin(mixin)\n\n}\n\nexport default {\n install\n}\n"], + "mappings": "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", + "names": ["range", "name", "string", "array", "times", "date", "timer", "number", "key", "pages", "url", "name", "url", "deepMerge", "url", "url", "validateStatus", "forEach", "mergeKeys", "deepMerge", "clone", "parent", "depth", "promise", "url", "color", "func", "func", "color", "color", "color", "color", "name"] +} diff --git a/unpackage/res/icons/1024x1024.png b/unpackage/res/icons/1024x1024.png new file mode 100644 index 0000000000000000000000000000000000000000..dd63b27a1c7fecefe5f9b8ec559868c16d36e6c9 GIT binary patch literal 141451 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

-r$m+so-MFC_k%|*KV{Jmki_`EmuX(B= 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 literal 0 HcmV?d00001 diff --git a/unpackage/res/icons/144x144.png b/unpackage/res/icons/144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..5c629356a1661b79e970392fce128ec47f1f5cb4 GIT binary patch literal 6868 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

)O+l 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 literal 0 HcmV?d00001 diff --git a/unpackage/res/icons/167x167.png b/unpackage/res/icons/167x167.png new file mode 100644 index 0000000000000000000000000000000000000000..6dc494f3db4fcc733fdf16c7e50445510c67dfc6 GIT binary patch literal 8330 zcmV;5Aa&n~P)&GQWr(tv`!u(MICF|mXg?U zva)5blQ@czGT(d1nk-~$55)o;(6)95aklrg#(XvR% znWANpk~2liA|+>vhC|9lWa%7o;UH3+k6bUE5|<(oh?HPu8s?9|>=?`*MyxgS@5AyW zAgG5M`8IqNXfr}Y%k<`Blnk*GldHx0;L657_Sg; z&LZIK5m@>F%7xk*Zy!P#ZIO$oag3K2vKuynqffOBIoe-dIOCyAhQORVB4IoCO)T!fV=lW?PaI0!!zJ#W)qO_?jRk zXX`>lpuB93`?=yki-3!#K*|YqmP|8=B6aJ{g@}L@Vd11jx-rC#0cXcx;RKY6Yhz5S zsb@;g#>1RtD6n{Xm2?#XT6aWB%gr{kwTP**&^{ciN=nWkh#<@7D+IJ-z}dqve{}7K zV&b6HR5RNZ>+TSw3p%+%o$Bd3%W&4Fjj{jL&l?l3HVkX$C5B0gd!L$D6XDdiP26ZXb| zb7SUY1u3+aVl)%2q@I_Ga!R=fOQ)?k&`ZGM!IKhN<;zInf?7|?DN=@|vsN5v5zvkS z=Z`{hfs|>N5L!+-MUa(=%IxSlM>afv6bdtG9Jo=?baG0G@}a+n^1Cp9*mTP)lTZ$r z9i3uhpxNY+vxwRSD#mpESZJl;lN2U8H^+KB!$t#?(}x)) zU{cJbT_FR&0IA#G2&iEg2@+S%GUm_BgkTx?K;Q#~bO{V8=mV8W)S48nf|em?=sjvx zSqm^{Eg6tLU@5IN0R-VR^~wSQmlw8FT3X87{$KY5ltW4FhEkCDnlB z$r*Z;YSc3BmA$0kWERGANN*X2OVD3R-F_=VWubjjO;rk(e?R7FIMN=nGS^Z0be zT(Tg8B^WM3zN`xrQZxhYL#RwgO;r- zHaKdGH({+4qFPil%G%rRd!I0tQZ7D3J)@p0E0}15iFRl!Bg4xuvV`hP-F{+d8FKo$^;!nq0}~@%yBekSl38^1 ztz#=0INb%Ox{#hCj4Z;?Qhjc}74FV78!hA3UCOxz!$;nBs}NODJz4*34rbfnST8cT z3?mDuzLn4jBZUSnubeJ4X!uAwaPK@HL{y(+B?HcP!udSXUV=@FFfyOI{irZm~3IPh~vMZ>ZV|zIZCwt*!FVeRHBl9r4fXZxiza4;%&8Rx=DX&pN zRBLP*Q8l$?9f+cuRq<*7S*P1!x&w|3BEt(XI*;mI^1ntlDu3&UHzDaqgUdytk6ZdR z6189yb@pM4uM+#!K~M0K0cX46Y!A{=gwZ(|nL~9r!kbngX0tAkI^s=O6XgsTw@hNt z-LJ2}W8OaE)Ul4cE&v5fIe32%jt?SzOE5YM!*eJ@Hm-WM6gh(uqS*Jmwj*chw21=cpqJF6Ln>57`l9(;SRWn{I!Dp`N=#(6EUgezBwjkrJbNRnvP;bIkXG z2q3U8Sv~tj1!wx;Oh3}O0-I-GWE$1JMn72KL^IU8rN|jNloU5H@*wW5%2=ec`v_50 z-L}>)&-Ow)936pUn~;G8*nAN+Gz-QWF(!>U3-}W+CZgP`3>(Yz9s7(y+Sp{()N$G= z226CrL=TcH!N?43oj&-sNf{AyZ7OKHwIhl2KGMkZ8EiMUFW`lvF!V z??EkDd|1-tEnha^LLXe{hqfXzIt802P(2Ib_61?Bh-tJzCJ%i#QSTFnO}Mx2K@x-R zRb}EF^EqD&@w{W7VX7I}u7Z^uoEU`@n~|Oc*m40zCmQeem4ZyCx#aqwZ2;N^t@Qx3 z52EaC=kc}y^T)6<9VnHf-U+e|7)pu~59-eQsHSgyT^$RN#y)kVi{h?ph%HyQ!$JTb zk^;3Gv+eU1Cv)H9VOJ|^RR0->Z+Te-9xl& zH)J|dMtj{V)(kZ0(cl_Ch$yNVIGf0OPE$V0pnIf@+(WFO;Ul}OO)!Fw#roY z$yjT{T0Hg($SL5|99(q{wdY#6V;8EcTl4>|KQvA`Yf6kfh%)FNI+hs{U&hYJEut7% z(`~L2&AIJeOrj|#$t+vN`F}dr3gv!bpWoybs{wic7`%TB9{mn-%WbGVcf$=gqB86E zrKinLh-@S==)*^3$(U3ad14HKfMYYR~Z-IZe1O&U2+ZI!jknZp`3 z$sB}J4mET2rBf=uwQb4$pMvdoz|;it{FCtZ%TOw5%j&TDUu)X;rBZ-R%5g|0C*g_5 z;YUv(*Ia|zyAO8kKy~KB4Ql~3Cg${=U+J??1`NX@m$m4&9pqC^Ra=e6q`HqFa`}-b zP}Mx=uH0tEcwOD_iO<2->ye-Sf0zze(V*s)*X5f>{Yq=Y0AHm|Rbr8o|L!_F@IM*6qnIu`Y=M?J8f9WRYYFR-F1vvRW^6XAWMsmcHL@LMNU6r z>W+mGF|dx$zO}8o@^I%))V+IQ+f|MGnMl@{oHk@(8aebhy!k8?3)SR|rD_pedg5et zBq4tigPdTh=<*Vb{Q`OV2QdDA00FJzAvRdeuC}4_87eNoH>B+=h9nBH9d($Tylc>f0oP0#Cc@@6UfWYRrTfXlI`u} zVoT?~dz3)=l=XZDnGD>z9d+*>xZ`G2E}0R^rjipdm1K4TdFco6&Oy!ndB1gBg^f@q zrfNcs)N{l zrI~rAUwl20kFNRTw4oHLe+1)~eh>A?e}fzM;F{(itHGI>6F zyFseyTgNKnYCot>&_!Wp^QAHr%dk=smWt-GQW6SfVJ4rC5Wbv&>P76vY*mNa)@;}143P)eJ&ic7Q{VCtFQOYFj+NE5E zgZq)kziUo!OIqcD(8S1dkqIUN%Vj7Dl*>X{u5)RYK%N(#q<0YcVQBkc*SZcfNtV_g1w#j^w6w${k%{ZFgLf zvbnYv!5mk`qlT;7s|~mnlGS?7x(YT5Ic+GV;IeDs;Xj4(_mBhs3MYPni=>GWF+!Ob z5D|FgAoBfhAq(@-20>|GmNjiSmU8t5=ElQbM)N*bHdGwpeo3Hr9mNDCRly#D@SQd&U zb6vJbs9aQXDxu@Ju1}3>D$T`FIp$ak8&5gCP)fnoAA+qn!O=HOlAb>1E|l2tkxwEN z(5{HUTR%r0{U*##*N|Pi*CzRdLK%vsiYnUY-8A&+Lz8)H3F|mtz2~KTbxF0+$!S9= z1FpRdw%r0_uOiQV56+&@7p}>*2aW&f>It&AfIRjswhP zHN7Nu)z$oOTGbS9FG2R`tx^NM7zxczx@5^|LuIpY$9-_iUGUm-$N|rjkzQ2AQtne_ zfkM$#!sU{%GJT%Hv8O0Ho@1*X`*T?o@mO_xE?x7znA`(9desajkA6r=*N(=%{$z%c zU;~iThRWt(*GJ&Cd*GF4k>?+WnTx*V%T`RdY!lI1yW_%YH;9gyfePud(_7cwx@*r* zHNE{*^`TWw%>^Q=+8*7YyR+?tGIiKMVKcqM_%}T)};BwI< zWYLNXonN?HlY+MWs1>Z5I&xLwJ4b6Fsu>(>hN-51sVL_dOvxD=#gZ_&P~zldkrPuz zPD~XzKDCR9fg8DF=>Ydm{gixhKE%OV@Efbt5jlk1fn?Qm?WdaB-}7Rolc%;k$n%@-=Du@3LuZ``OG+HuFF&S5Ig@qk1~pB(9CDY;#`^XOtGhx+QD)7zcQ8$()#oFZm2a`vK0 zyi=1U#;1y$o+>dpUot1W;vkc9lL?}e6Qb4?dJ8jr^n+*Fcm8E^j#oT}lF)7h9qGb| zh_6epPImC9pG7v0!t3kn2wN$)dQ7~vbjK9a-M#euum4KNdL4upF=x-5pDA&Avc&1B z5~n6j5?+`sQ7ro@o7WLXM?E#CbG`h_mA}R_qxbRPnf>gYI7GHwa zu#4A4e|A6aII?n4cw$i9_^szyMRBWp)5W1)EnV*IW;hcRkikEumCLPSamnN^uTYv8vtCTK_4BQ*5AoFI`}mbJ&#-&qHL_A#B|>nj zf%d$YNR?x{I8akxmw88C>qZ517ftnlqaX4jvBxuPBudWr#tV#JFo}3(s>IogC68IH>`38oFtGrG%E9a|~ORrJx@;;Gn^>)<< z6Q-JOyQ@?)Y|!1gli&b6BuvgnpI_w6ls(KFRp5QPNBuvh>Tym1`hx%N8 z^0u7LkMgzaev>QbPxHxBPjmalU!Vwg?e>vqF{ih*PmQ`%Q)7!xHFaaZ_Jz{QYv)qXxsFWQSr=i)3J?%B%UZ2uzv zeft+V+_TkvGOB9&S`$Szm8+j9s_E@ncR^@|=TSgO8D#tG`;}lX5_jw2@J~+sOX~NN zMEz~MTd?=u>D|U(-Mo!kE{^f=_%mEPcdDwEbM4&on-Cn|F5PzJSaqzaNqa(6b0wRl zt*0}tae+vdoZ0G+xOQ>{m#&w%^~9I8Q2CAi>v*I8T6Rpm$EQ#3XWRS-p7z{Z{+GEX zPp-PdP_34x3Dv|p7Oa{&t4KUkhX%%+^%6i2 zPpya-s()Y6tVmLIowp6j%HY88EgT%$&b{Z~ z5!T=JM9w&2ISdmtW1K$rl7?+l!et{`rc# z_`O|!$TzOKm$__*t4zFm>%sSi!d0`nm7-E)2aQCcpyA_38j<)W&sveF+$(hSi*L!l} z#(znC;Zfn+wot<`PkolnWIOr#*8BLv?myuFU9pEnBd1YKx7zEq-(5laJK zPh0Xo%#vt}*^DC2FCf>SyhLp&ehabaqbckkp~Z)vZBw~CU)}a$9=Y@P`S#^ISvInj z5&`o#gU3&OR8u>N#M&C@ZOCt6CQMGqI9hCql11z*(T_4D_Kjw1?R1`K>*9Z0_Yr>k z&fn$H%WkJ&WL)h;angECwCYK4i6mb^<3yt5%ovJXf=}N$QE#hjmAo{%ub|e?cJ%Of z*ME%9@BRYc-*U?;Nr4d6bP!LYkhW{(So{^ZDJs#Zx2KQ?`DtF_voThLk-0$@(E@{13FQcu|unCz*nH zx3ql)+<$Hbl|9-u$bY%{H`12M zMk~1RsQUn~_HE%ycl;W^yW`jS*}!G?3`Dbh*zl2sxm+8)-R-{T>p=su^?2p$b6v!E zOrie1e9!A1vj{~zr`$;5zcg?ezq9k#`GXz5%By{&Reky;LI8`sJ&CCF>-8#G zGhiQ#RwD>RXhnNic8e^Nc zLY(?Z#E(fsfG0+-=970l#Gl;y5e|3t>Git-k7w9uXv`TL@%bIA0TISJLX*YeT3Kh0M@bPp#xtjWae=e0C6p+g( zhB`6~=QC`|XBo+7+0>a~#M-u(p^gmpgtN-r%_|yYsfjfsXAr{4%07;@=)m=;Y^{s&Jc9V2N`HW*R z$v2$OFx+XbJ9F!wbWza&a)P0t)F1{lKGCYZZSQ_YDZ1JeeVrMG@&@?Ty zS+!wE7Zr(}KVHu((tJ2SLp zQqt9m#L1a4%x8%TrD!po9<@=jUSel6imrBpzD|RIyuDNiXs>%a4B9dZ!)WYW(~XYA z$*Gj0JqJsL$Tf&I<)QXrmo|%Zy`2XAT_)-J^9KDE;cOCix2sjsrD#4H^7De`LvG=- zeBvsd^Sn}K2$5eUoubboT;D4BOycF+jJjX=kYer85OUh@hOfmrD`gHx<=Zm!<`sQi z2EBQMK5OZBYbKRFW$!8K!(VI8u$SJZZ z={7tX@_XwqzO&52ve1(^3E10Z(9@}C&zYHSO1czL&=7K_NRb2@^YBNC6bT?DXNs1E z0Yn~=Op#&@v0?z{nr%gj6dIf}fY+OCMT!&}ykP)OHQS05DKvOWiO6NZ5ul^l)}%;b zVF|d_P)eN!{-N2{q)6ewKPaV6D*zE01P%dLH`SyRDd0G;QzFv%G^`i{T0B-|N0{^6x8rK#4HpF literal 0 HcmV?d00001 diff --git a/unpackage/res/icons/180x180.png b/unpackage/res/icons/180x180.png new file mode 100644 index 0000000000000000000000000000000000000000..f7a9365fc1cb71b32c74aa47374a3cd359c45ba4 GIT binary patch literal 9364 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 O0000b)Oy8yTW07XG2 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 VBi&+u$;JQx002ovPDHLkV1l4o47vaS literal 0 HcmV?d00001 diff --git a/unpackage/res/icons/20x20.png b/unpackage/res/icons/20x20.png new file mode 100644 index 0000000000000000000000000000000000000000..576fd2ec5fd8f5d1210d6eff334653b64934f394 GIT binary patch literal 732 zcmV<20wev2P)Ll)GybQ5431=iZqlJ9#tL|#d&dfa)6DQe+DDfK(_YR!z z$9E5xi>i*Ps?-0MQ`Iq1)dVp7hg22f3gUMc@8?~~^wDf6JW1TU#8GsDv9$$j#YiLUmktT-v|2j!-OD&M%6#DW57!M5v zdL0tDzt7@N32`xCAT}`X!3Q606Uaxf{wL!71>TS_Nk9eEtkicO%I)yhN5cpjvzY+(OcKi(pU7Ifj9403=PbUn z*sc8pmoL;F`Afwy`zdDjbIeRBX1cV4nYOd+?3m!_+k0$WEMe8)Il)uGWMwenx-3iv zy#3?{FQ%8MqEvBI#j%9pMei`rdIs3PFu{qrM{HUwV=yU54FkB&g-3WV;!5C(=Y zu=EC&d|(N47Aw1IZb3KRTPH5b7%aT#*XbMA*~PyDhgeoQXWA;MJhs3 z11k_L5Q_>HumM!DVh2KE!3M;dB?49~cqwh^rY%GT0um3Y2wJsjM1m6_PU1&m`_3E| zGjTkL9Y`tRSVwcm_xgP2KX>jKqpC+$by0W57FG4AsOkbxVCSrCb^@rjhL*oa{RTk6 zy=H;^22?LW^&(U*pq21Sf2CVCvZ)1Z0x}AIhZR#QqiFb>|Q{; z)i}r`Az6TA5&HJ_fCe3VswRR6NCG4cq`^snWFTFDdJ{AW^9h(sKtW*Se&pUU=-&g5 zhjb}}sA~H_=uaomGw-0a6@(;c0!Tn0;1hZPq_W8Kuc05mhko}>G#_~&h?9cb??6UJ z;kJE|T(I;;a~UV1A$zF(as_~6|b6yHQ+gX9NbbOd?yA;g5L z<0$~*CXs_<$kVSQhaQ7;U)UVhJYc<9{4s}4O}4+&0IY>ZOIc|t^`=rU{YmZ9({vv8 zp1oHRDHwSe4mI;sV$OT8iQNiT%vAx|? z-cGZ=Qd;tvF1NVy+cI|Y1b6=W1#Yu}3BagCz6LST*x&@=)l~zx?!$ZKx$a6Ymn=We zwwPJ4OqVS)OP19jz@oHJY+;N~vZEX>o#pV{m!y4*AQ(VYkaiM+A#}kYh5neB7n?Y)RjE;V--A6!E-2jhN5=^=SOd%=r40@Fea2|3S@k9-~AFyJ|)9O=^FhuCPb<}knL^UI7S>j_y;==Tgc&)^!m rzAdiS{^ClK=vga$o|Z900000NkvXXu0mjfA1UXf literal 0 HcmV?d00001 diff --git a/unpackage/res/icons/40x40.png b/unpackage/res/icons/40x40.png new file mode 100644 index 0000000000000000000000000000000000000000..090c69322a0ad652150b88b5447b32bffa4d94e8 GIT binary patch literal 1502 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 SddYwQ0000(aEQpQ7YH{| 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