eoss 0.1.0-alpha.5 → 0.1.0-alpha.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/account-login.js +3631 -3413
- package/lib/autocomplete.js +3635 -3393
- package/lib/button-group.js +7391 -7172
- package/lib/button.js +3632 -3390
- package/lib/ca-login.js +3621 -3379
- package/lib/calendar.js +7401 -7182
- package/lib/carousel.js +3 -3
- package/lib/cascader-panel.js +4692 -4450
- package/lib/cascader.js +4701 -4459
- package/lib/checkbox-group.js +4842 -4623
- package/lib/checkbox.js +70 -70
- package/lib/collapse-item.js +3632 -3390
- package/lib/color-picker.js +3621 -3379
- package/lib/data-table.js +19264 -19046
- package/lib/date-picker.js +3620 -3378
- package/lib/dialog.js +3632 -3390
- package/lib/dropdown.js +7830 -7611
- package/lib/email-login.js +3634 -3415
- package/lib/eoss.common.js +588 -358
- package/lib/flow-group.js +3623 -3376
- package/lib/flow.js +3637 -3418
- package/lib/form-item.js +3635 -3392
- package/lib/form.js +10123 -9904
- package/lib/icon.js +3632 -3390
- package/lib/image.js +3632 -3390
- package/lib/index.js +1 -1
- package/lib/index.js.LICENSE.txt +1 -1
- package/lib/input-number.js +2615 -2373
- package/lib/input.js +3632 -3390
- package/lib/loading.js +3632 -3390
- package/lib/login.js +5273 -5052
- package/lib/main.js +3622 -3403
- package/lib/menu-item-group.js +3632 -3390
- package/lib/menu-item.js +3632 -3390
- package/lib/menu.js +3632 -3390
- package/lib/message-box.js +3632 -3390
- package/lib/message.js +3632 -3390
- package/lib/notification.js +3632 -3390
- package/lib/option.js +4447 -4205
- package/lib/pagination.js +9941 -9723
- package/lib/phone-login.js +3634 -3415
- package/lib/popconfirm.js +4834 -4592
- package/lib/popover.js +3635 -3393
- package/lib/qrcode-login.js +3633 -3414
- package/lib/radio-group.js +4430 -4211
- package/lib/radio.js +24 -24
- package/lib/rate.js +3632 -3390
- package/lib/scrollbar.js +3632 -3390
- package/lib/select.js +3633 -3415
- package/lib/selector-panel.js +3670 -3447
- package/lib/selector.js +3638 -3415
- package/lib/slider.js +2618 -2376
- package/lib/step.js +3632 -3390
- package/lib/steps.js +3632 -3390
- package/lib/submenu.js +3632 -3390
- package/lib/switch.js +3632 -3390
- package/lib/table-column.js +3817 -3574
- package/lib/table.js +4884 -4665
- package/lib/tabs.js +3632 -3390
- package/lib/theme-chalk/base.css +1 -1
- package/lib/theme-chalk/icon.css +1 -1
- package/lib/theme-chalk/index.css +1 -1
- package/lib/theme-chalk/main.css +1 -1
- package/lib/time-picker.js +3620 -3378
- package/lib/time-select.js +3621 -3379
- package/lib/tips.js +4419 -4200
- package/lib/tooltip.js +3632 -3390
- package/lib/transfer.js +4853 -4634
- package/lib/tree-group.js +3614 -3372
- package/lib/tree.js +3503 -3261
- package/lib/upload.js +3636 -3417
- package/lib/utils/ajax.js +25 -51
- package/lib/utils/index.js +8 -6
- package/lib/utils/util.js +378 -145
- package/lib/wujie.js +3618 -3373
- package/package.json +1 -1
- package/packages/autocomplete/src/autocomplete.vue +1 -1
- package/packages/carousel/src/item.vue +1 -1
- package/packages/carousel/src/main.vue +1 -1
- package/packages/cascader/src/cascader.vue +1 -1
- package/packages/checkbox/src/checkbox-group.vue +1 -1
- package/packages/checkbox/src/checkbox.vue +29 -29
- package/packages/flow-group/src/main.vue +2 -2
- package/packages/form/src/form.vue +3 -5
- package/packages/input/src/input.vue +2 -2
- package/packages/input-number/src/input-number.vue +2 -2
- package/packages/login/src/login.vue +4 -4
- package/packages/main/src/main.vue +13 -12
- package/packages/popover/src/main.vue +1 -1
- package/packages/radio/src/radio-group.vue +1 -1
- package/packages/radio/src/radio.vue +1 -1
- package/packages/select/src/select.vue +1 -1
- package/packages/slider/src/slider.vue +2 -4
- package/packages/table/src/layout-observer.js +5 -5
- package/packages/table/src/table copy.vue +1 -1
- package/packages/table/src/table-body.js +11 -11
- package/packages/table/src/table-column.js +1 -1
- package/packages/theme-chalk/package.json +6 -6
- package/packages/theme-chalk/src/common/var.scss +2 -2
- package/packages/theme-chalk/src/mixins/function.scss +21 -1
- package/packages/upload/src/index.vue +2 -2
- package/src/index.js +2 -2
- package/src/utils/ajax.js +0 -14
- package/src/utils/index.js +3 -3
- package/src/utils/util.js +320 -104
package/lib/utils/util.js
CHANGED
|
@@ -14,15 +14,10 @@ exports.confirm = exports.concatenate = exports.coerceTruthyValueToArray = void
|
|
|
14
14
|
exports.debounce = debounce;
|
|
15
15
|
exports.generateId = exports.formatFileSize = exports.extend = exports.exportXls = exports.exclAttribute = exports.escapeRegexpString = exports.error = exports.encode = exports.downloadFile = exports.domEval = exports.delUrlParam = exports.decode = void 0;
|
|
16
16
|
exports.get = get;
|
|
17
|
-
exports.getParams = exports.getObjectType = exports.getMyWinTop = exports.getLength = exports.getFileType = void 0;
|
|
18
|
-
exports.getPropByPath = getPropByPath;
|
|
19
|
-
exports.getZoom = exports.getWinTop = exports.getValues = exports.getValueByPath = exports.getTypeName = exports.getStyle = exports.getScript = void 0;
|
|
17
|
+
exports.getZoom = exports.getWinTop = exports.getValues = exports.getValueByPath = exports.getTypeName = exports.getStyle = exports.getScript = exports.getPropByPath = exports.getParams = exports.getObjectType = exports.getMyWinTop = exports.getLength = exports.getFileType = void 0;
|
|
20
18
|
exports.grouping = grouping;
|
|
21
19
|
exports.guid = guid;
|
|
22
|
-
exports.hasChars = void 0;
|
|
23
|
-
exports.hasOwn = hasOwn;
|
|
24
|
-
exports.lowerCase = exports.looseEqual = exports.loading = exports.loadJs = exports.kebabCase = exports.joinUrl = exports.isObjectEqual = exports.isIE = exports.isFunction = exports.isFirefox = exports.isExist = exports.isEqual = exports.isEmpty = exports.isEdge = exports.indexOfObj = exports.identical = void 0;
|
|
25
|
-
exports.noop = noop;
|
|
20
|
+
exports.noop = exports.lowerCase = exports.looseEqual = exports.loading = exports.loadJs = exports.kebabCase = exports.joinUrl = exports.isObjectEqual = exports.isIE = exports.isFunction = exports.isFirefox = exports.isExist = exports.isEqual = exports.isEmpty = exports.isEdge = exports.indexOfObj = exports.identical = exports.hasOwn = exports.hasChars = void 0;
|
|
26
21
|
exports.objToArray = objToArray;
|
|
27
22
|
exports.overbrim = void 0;
|
|
28
23
|
exports.pager = pager;
|
|
@@ -32,9 +27,7 @@ exports.sendMessage = exports.rmbToCapital = exports.requestAnimationFrame = exp
|
|
|
32
27
|
exports.set = set;
|
|
33
28
|
exports.takeRight = exports.takeLeft = exports.sum = exports.success = exports.startWith = exports.setScale = exports.setFavicon = void 0;
|
|
34
29
|
exports.throttle = throttle;
|
|
35
|
-
exports.toFunction = exports.toFixed = exports.timestampUrl = void 0;
|
|
36
|
-
exports.toObject = toObject;
|
|
37
|
-
exports.trimWhitespace = void 0;
|
|
30
|
+
exports.trimWhitespace = exports.toObject = exports.toFunction = exports.toFixed = exports.timestampUrl = void 0;
|
|
38
31
|
exports.uid = uid;
|
|
39
32
|
exports.winTopOpen = exports.watermark = exports.warning = exports.valueEquals = exports.uuid = exports.urlJoinParams = exports.upperType = exports.updateTheme = void 0;
|
|
40
33
|
var _isArray = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/is-array"));
|
|
@@ -47,17 +40,18 @@ var _setTimeout2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-j
|
|
|
47
40
|
var _lastIndexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/last-index-of"));
|
|
48
41
|
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
49
42
|
var _sort = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/sort"));
|
|
43
|
+
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
50
44
|
var _every = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/every"));
|
|
51
45
|
var _isFinite = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/number/is-finite"));
|
|
52
46
|
var _reduce = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/reduce"));
|
|
53
47
|
var _parseFloat2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/parse-float"));
|
|
54
|
-
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
55
48
|
var _endsWith = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/ends-with"));
|
|
56
49
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/map"));
|
|
57
50
|
var _url = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/url"));
|
|
58
51
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
59
52
|
var _now = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/date/now"));
|
|
60
53
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
|
|
54
|
+
var _map2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
61
55
|
var _trim = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/trim"));
|
|
62
56
|
var _some = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/some"));
|
|
63
57
|
var _startsWith = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/starts-with"));
|
|
@@ -68,9 +62,9 @@ var _types = require("./types");
|
|
|
68
62
|
var _messageBox = _interopRequireDefault(require("../../packages/message-box"));
|
|
69
63
|
var _date = require("./date");
|
|
70
64
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
71
|
-
function _extends() { var
|
|
72
|
-
function _createForOfIteratorHelperLoose(r, e) { var
|
|
73
|
-
function _unsupportedIterableToArray(r, a) { if (r) { var
|
|
65
|
+
function _extends() { var _context1; return _extends = _Object$assign ? _bindInstanceProperty(_context1 = _Object$assign).call(_context1) : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
66
|
+
function _createForOfIteratorHelperLoose(r, e) { var _context0; var t = "undefined" != typeof _Symbol && _getIteratorMethod(r) || r["@@iterator"]; if (t) return _bindInstanceProperty(_context0 = (t = t.call(r)).next).call(_context0, t); if (_Array$isArray2(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
67
|
+
function _unsupportedIterableToArray(r, a) { if (r) { var _context9; if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = _sliceInstanceProperty2(_context9 = {}.toString.call(r)).call(_context9, 8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? _Array$from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
74
68
|
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
75
69
|
function _readOnlyError(r) { throw new TypeError('"' + r + '" is read-only'); }
|
|
76
70
|
var _get = require('lodash/get');
|
|
@@ -81,22 +75,57 @@ var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
|
81
75
|
// 导入date中的formatDate函数
|
|
82
76
|
|
|
83
77
|
var publicKey = 'abcdefghijklmnopqrstuvwxyz12345678';
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* 空函数
|
|
81
|
+
* @desc 不执行任何操作的空函数
|
|
82
|
+
* @return {undefined}
|
|
83
|
+
**/
|
|
84
|
+
var noop = exports.noop = function noop() {};
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* 检查对象是否拥有指定属性
|
|
88
|
+
* @desc 检查对象自身是否包含指定的属性(不包括原型链上的属性)
|
|
89
|
+
* @param {Object} obj - 要检查的对象
|
|
90
|
+
* @param {string} key - 要检查的属性名
|
|
91
|
+
* @return {boolean} 是否拥有该属性
|
|
92
|
+
**/
|
|
93
|
+
var hasOwn = exports.hasOwn = function hasOwn(obj, key) {
|
|
94
|
+
if (!(0, _types.isObject)(obj) && typeof obj !== 'object') {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
87
97
|
return hasOwnProperty.call(obj, key);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* 将数组转换为对象
|
|
102
|
+
* @desc 将对象数组合并为一个对象
|
|
103
|
+
* @param {Array} [arr=[]] - 对象数组
|
|
104
|
+
* @return {Object} 合并后的对象
|
|
105
|
+
**/
|
|
106
|
+
var toObject = exports.toObject = function toObject(arr) {
|
|
107
|
+
if (arr === void 0) {
|
|
108
|
+
arr = [];
|
|
109
|
+
}
|
|
91
110
|
var res = {};
|
|
111
|
+
if (!(0, _isArray.default)(arr)) {
|
|
112
|
+
return res;
|
|
113
|
+
}
|
|
92
114
|
for (var i = 0; i < arr.length; i++) {
|
|
93
115
|
if (arr[i]) {
|
|
94
116
|
_extend(res, arr[i]);
|
|
95
117
|
}
|
|
96
118
|
}
|
|
97
119
|
return res;
|
|
98
|
-
}
|
|
99
|
-
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* 根据路径获取对象属性值
|
|
124
|
+
* @desc 根据点分隔的路径字符串获取对象中的属性值
|
|
125
|
+
* @param {Object} object - 源对象
|
|
126
|
+
* @param {string} prop - 属性路径(如 'a.b.c')
|
|
127
|
+
* @return {*} 获取到的属性值,如果路径不存在则返回null
|
|
128
|
+
**/
|
|
100
129
|
var getValueByPath = exports.getValueByPath = function getValueByPath(object, prop) {
|
|
101
130
|
if (Object.prototype.toString.call(object).toLowerCase() !== '[object object]') {
|
|
102
131
|
return object;
|
|
@@ -116,7 +145,33 @@ var getValueByPath = exports.getValueByPath = function getValueByPath(object, pr
|
|
|
116
145
|
}
|
|
117
146
|
return result;
|
|
118
147
|
};
|
|
119
|
-
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* 获取属性路径信息
|
|
151
|
+
* @desc 获取对象属性路径的详细信息,包括父对象、属性名和属性值
|
|
152
|
+
* @param {Object} obj - 源对象
|
|
153
|
+
* @param {string} path - 属性路径(如 'a.b.c' 或 'a[0].b')
|
|
154
|
+
* @param {boolean} [strict=false] - 是否严格模式,严格模式下路径不存在会抛出错误
|
|
155
|
+
* @return {Object} 包含父对象(o)、属性名(k)和属性值(v)的对象
|
|
156
|
+
**/
|
|
157
|
+
var getPropByPath = exports.getPropByPath = function getPropByPath(obj, path, strict) {
|
|
158
|
+
if (strict === void 0) {
|
|
159
|
+
strict = false;
|
|
160
|
+
}
|
|
161
|
+
if (!(0, _types.isObject)(obj) && typeof obj !== 'object') {
|
|
162
|
+
return {
|
|
163
|
+
o: null,
|
|
164
|
+
k: '',
|
|
165
|
+
v: null
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
if (!(0, _types.isString)(path)) {
|
|
169
|
+
return {
|
|
170
|
+
o: obj,
|
|
171
|
+
k: '',
|
|
172
|
+
v: null
|
|
173
|
+
};
|
|
174
|
+
}
|
|
120
175
|
var tempObj = obj;
|
|
121
176
|
path = path.replace(/\[(\w+)\]/g, '.$1');
|
|
122
177
|
path = path.replace(/^\./, '');
|
|
@@ -139,11 +194,24 @@ function getPropByPath(obj, path, strict) {
|
|
|
139
194
|
k: keyArr[i],
|
|
140
195
|
v: tempObj ? tempObj[keyArr[i]] : null
|
|
141
196
|
};
|
|
142
|
-
}
|
|
143
|
-
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
/**
|
|
200
|
+
* 生成随机ID
|
|
201
|
+
* @desc 生成一个1-9999之间的随机整数作为ID
|
|
202
|
+
* @return {number} 随机ID
|
|
203
|
+
**/
|
|
144
204
|
var generateId = exports.generateId = function generateId() {
|
|
145
205
|
return Math.floor(Math.random() * 10000);
|
|
146
206
|
};
|
|
207
|
+
|
|
208
|
+
/**
|
|
209
|
+
* 检查两个数组是否值相等
|
|
210
|
+
* @desc 深度比较两个数组是否包含相同的元素(严格相等比较)
|
|
211
|
+
* @param {Array} a - 第一个数组
|
|
212
|
+
* @param {Array} b - 第二个数组
|
|
213
|
+
* @return {boolean} 数组是否值相等
|
|
214
|
+
**/
|
|
147
215
|
var valueEquals = exports.valueEquals = function valueEquals(a, b) {
|
|
148
216
|
// see: https://stackoverflow.com/questions/3115982/how-to-check-if-two-arrays-are-equal-with-javascript
|
|
149
217
|
if (a === b) return true;
|
|
@@ -155,6 +223,13 @@ var valueEquals = exports.valueEquals = function valueEquals(a, b) {
|
|
|
155
223
|
}
|
|
156
224
|
return true;
|
|
157
225
|
};
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* 转义正则表达式特殊字符
|
|
229
|
+
* @desc 将字符串中的正则表达式特殊字符转义,使其可以安全地用于正则表达式
|
|
230
|
+
* @param {*} [value=''] - 要转义的字符串
|
|
231
|
+
* @return {string} 转义后的字符串
|
|
232
|
+
**/
|
|
158
233
|
var escapeRegexpString = exports.escapeRegexpString = function escapeRegexpString(value) {
|
|
159
234
|
if (value === void 0) {
|
|
160
235
|
value = '';
|
|
@@ -163,7 +238,20 @@ var escapeRegexpString = exports.escapeRegexpString = function escapeRegexpStrin
|
|
|
163
238
|
};
|
|
164
239
|
|
|
165
240
|
// TODO: use native Array.find, Array.findIndex when IE support is dropped
|
|
241
|
+
/**
|
|
242
|
+
* 查找数组中符合条件的元素索引
|
|
243
|
+
* @desc 查找数组中第一个满足测试函数的元素的索引
|
|
244
|
+
* @param {Array} arr - 要查找的数组
|
|
245
|
+
* @param {Function} pred - 测试函数,返回true表示找到匹配元素
|
|
246
|
+
* @return {number} 找到的元素索引,未找到返回-1
|
|
247
|
+
**/
|
|
166
248
|
var arrayFindIndex = exports.arrayFindIndex = function arrayFindIndex(arr, pred) {
|
|
249
|
+
if (!(0, _isArray.default)(arr)) {
|
|
250
|
+
return -1;
|
|
251
|
+
}
|
|
252
|
+
if (typeof pred !== 'function') {
|
|
253
|
+
return -1;
|
|
254
|
+
}
|
|
167
255
|
for (var i = 0; i !== arr.length; ++i) {
|
|
168
256
|
if (pred(arr[i])) {
|
|
169
257
|
return i;
|
|
@@ -171,12 +259,32 @@ var arrayFindIndex = exports.arrayFindIndex = function arrayFindIndex(arr, pred)
|
|
|
171
259
|
}
|
|
172
260
|
return -1;
|
|
173
261
|
};
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* 查找数组中符合条件的元素
|
|
265
|
+
* @desc 查找数组中第一个满足测试函数的元素
|
|
266
|
+
* @param {Array} arr - 要查找的数组
|
|
267
|
+
* @param {Function} pred - 测试函数,返回true表示找到匹配元素
|
|
268
|
+
* @return {*} 找到的元素,未找到返回undefined
|
|
269
|
+
**/
|
|
174
270
|
var arrayFind = exports.arrayFind = function arrayFind(arr, pred) {
|
|
271
|
+
if (!(0, _isArray.default)(arr)) {
|
|
272
|
+
return undefined;
|
|
273
|
+
}
|
|
274
|
+
if (typeof pred !== 'function') {
|
|
275
|
+
return undefined;
|
|
276
|
+
}
|
|
175
277
|
var idx = arrayFindIndex(arr, pred);
|
|
176
278
|
return idx !== -1 ? arr[idx] : undefined;
|
|
177
279
|
};
|
|
178
280
|
|
|
179
281
|
// coerce truthy value to array
|
|
282
|
+
/**
|
|
283
|
+
* 将真值转换为数组
|
|
284
|
+
* @desc 如果输入是数组则直接返回,否则将真值包装为数组,假值返回空数组
|
|
285
|
+
* @param {*} val - 要转换的值
|
|
286
|
+
* @return {Array} 转换后的数组
|
|
287
|
+
**/
|
|
180
288
|
var coerceTruthyValueToArray = exports.coerceTruthyValueToArray = function coerceTruthyValueToArray(val) {
|
|
181
289
|
if ((0, _isArray.default)(val)) {
|
|
182
290
|
return val;
|
|
@@ -282,7 +390,7 @@ function objToArray(obj) {
|
|
|
282
390
|
}
|
|
283
391
|
|
|
284
392
|
// requestAnimationFrame 适配函数
|
|
285
|
-
var raFrame = window.requestAnimationFrame || window
|
|
393
|
+
var raFrame = window.requestAnimationFrame || window['webkitRequestAnimationFrame'] || function (callback) {
|
|
286
394
|
return (0, _setTimeout2.default)(callback, 1000 / 60);
|
|
287
395
|
};
|
|
288
396
|
|
|
@@ -315,7 +423,7 @@ var requestAnimationFrame = exports.requestAnimationFrame = raFrame;
|
|
|
315
423
|
* })
|
|
316
424
|
* cancelAnimationFrame(id)
|
|
317
425
|
*/
|
|
318
|
-
var cancelAnimationFrame = exports.cancelAnimationFrame = window.cancelAnimationFrame || window
|
|
426
|
+
var cancelAnimationFrame = exports.cancelAnimationFrame = window.cancelAnimationFrame || window['webkitCancelAnimationFrame'] || function (id) {
|
|
319
427
|
window.clearTimeout(id);
|
|
320
428
|
};
|
|
321
429
|
|
|
@@ -499,7 +607,8 @@ function pager(data, page, size) {
|
|
|
499
607
|
/**
|
|
500
608
|
* getWinTop
|
|
501
609
|
* @desc 获取同域的top窗口
|
|
502
|
-
* @param {object} wind - window对象
|
|
610
|
+
* @param {object} [wind] - window对象
|
|
611
|
+
* @return {Window} 同域的top窗口
|
|
503
612
|
**/
|
|
504
613
|
var _getWinTop = exports.getWinTop = function getWinTop(wind) {
|
|
505
614
|
wind = wind ? wind : window.__WUJIE_RAW_WINDOW__ ? window.__WUJIE_RAW_WINDOW__ : window;
|
|
@@ -645,28 +754,35 @@ var getFileType = exports.getFileType = function getFileType(fileName) {
|
|
|
645
754
|
|
|
646
755
|
/**
|
|
647
756
|
* arrUnique
|
|
648
|
-
* @desc
|
|
757
|
+
* @desc 数组元素对象去重
|
|
649
758
|
* @author huangbo
|
|
650
759
|
* @date 2022年5月7日
|
|
651
|
-
* @param {
|
|
760
|
+
* @param {Array} [data] - 原始数组
|
|
652
761
|
* @param {String} [key] - 对象子元素的属性名
|
|
762
|
+
* @return {Array} 去重后的数组
|
|
653
763
|
**/
|
|
654
764
|
var arrUnique = exports.arrUnique = function arrUnique(data, key) {
|
|
765
|
+
// 验证输入参数
|
|
766
|
+
if (!(0, _isArray.default)(data) || data.length === 0) return [];
|
|
655
767
|
var newArr = [];
|
|
656
768
|
if (key === undefined) {
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
769
|
+
var _context2, _context3;
|
|
770
|
+
// 对基本类型数组去重
|
|
771
|
+
var sortedData = (0, _sort.default)(_context2 = (0, _concat.default)(_context3 = []).call(_context3, data)).call(_context2); // 避免修改原数组
|
|
772
|
+
newArr = [sortedData[0]];
|
|
773
|
+
for (var i = 1; i < sortedData.length; i++) {
|
|
774
|
+
if (sortedData[i] !== newArr[newArr.length - 1]) {
|
|
775
|
+
newArr.push(sortedData[i]);
|
|
662
776
|
}
|
|
663
777
|
}
|
|
664
778
|
} else {
|
|
779
|
+
// 对对象数组按指定键去重
|
|
665
780
|
var obj = {};
|
|
666
781
|
for (var _i = 0; _i < data.length; _i++) {
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
782
|
+
var item = data[_i];
|
|
783
|
+
if (item && obj[item[key]] === undefined) {
|
|
784
|
+
newArr.push(item);
|
|
785
|
+
obj[item[key]] = true;
|
|
670
786
|
}
|
|
671
787
|
}
|
|
672
788
|
}
|
|
@@ -685,17 +801,19 @@ var average = exports.average = function average() {
|
|
|
685
801
|
for (var _len2 = arguments.length, numbers = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
686
802
|
numbers[_key2] = arguments[_key2];
|
|
687
803
|
}
|
|
688
|
-
//
|
|
804
|
+
// 处理空参数情况
|
|
805
|
+
if (numbers.length === 0) return 0;
|
|
806
|
+
|
|
807
|
+
// 确保所有参数都是有效数字
|
|
689
808
|
if (!(0, _every.default)(numbers).call(numbers, _isFinite.default)) {
|
|
690
809
|
throw new Error('Invalid input. Please provide valid numbers.');
|
|
691
810
|
}
|
|
692
811
|
|
|
693
|
-
//
|
|
812
|
+
// 计算平均值
|
|
694
813
|
var sum = (0, _reduce.default)(numbers).call(numbers, function (acc, num) {
|
|
695
814
|
return acc + num;
|
|
696
815
|
}, 0);
|
|
697
|
-
|
|
698
|
-
return average;
|
|
816
|
+
return sum / numbers.length;
|
|
699
817
|
};
|
|
700
818
|
|
|
701
819
|
/**
|
|
@@ -711,7 +829,9 @@ var formatFileSize = exports.formatFileSize = function formatFileSize(size, digi
|
|
|
711
829
|
if (digits === void 0) {
|
|
712
830
|
digits = 2;
|
|
713
831
|
}
|
|
714
|
-
|
|
832
|
+
// 验证输入参数
|
|
833
|
+
if (size === 0 || typeof size !== 'number' || isNaN(size)) return '';
|
|
834
|
+
if (typeof digits !== 'number' || isNaN(digits)) digits = 2;
|
|
715
835
|
var k = 1024;
|
|
716
836
|
var sizes = ['B', 'KB', 'MB', 'GB', 'TB'];
|
|
717
837
|
var i = Math.floor(Math.log(size) / Math.log(k));
|
|
@@ -724,9 +844,10 @@ var formatFileSize = exports.formatFileSize = function formatFileSize(size, digi
|
|
|
724
844
|
|
|
725
845
|
/**
|
|
726
846
|
* browser
|
|
727
|
-
* @desc
|
|
847
|
+
* @desc 浏览器类型
|
|
728
848
|
* @author huangbo
|
|
729
849
|
* @date 2022年5月7日
|
|
850
|
+
* @return {string|undefined} 浏览器类型标识
|
|
730
851
|
**/
|
|
731
852
|
var browser = exports.browser = function browser() {
|
|
732
853
|
var reg = {
|
|
@@ -744,9 +865,14 @@ var browser = exports.browser = function browser() {
|
|
|
744
865
|
|
|
745
866
|
/**
|
|
746
867
|
* busEmit
|
|
747
|
-
* @desc
|
|
868
|
+
* @desc 发送事件
|
|
748
869
|
* @author huangbo
|
|
749
870
|
* @date 2022年5月7日
|
|
871
|
+
* @param {Object} that - Vue实例或包含bus的对象
|
|
872
|
+
* @param {Object} options - 事件选项
|
|
873
|
+
* @param {string} options.method - 事件名称
|
|
874
|
+
* @param {Array|*} options.args - 事件参数
|
|
875
|
+
* @param {Object} [options.opener] - 窗口对象(用于跨窗口通信)
|
|
750
876
|
**/
|
|
751
877
|
var busEmit = exports.busEmit = function busEmit(that, _ref) {
|
|
752
878
|
var method = _ref.method,
|
|
@@ -763,7 +889,7 @@ var busEmit = exports.busEmit = function busEmit(that, _ref) {
|
|
|
763
889
|
return;
|
|
764
890
|
}
|
|
765
891
|
if (isIE()) {
|
|
766
|
-
var
|
|
892
|
+
var _context4;
|
|
767
893
|
if (window.top !== window.self) {
|
|
768
894
|
window.top.postMessage({
|
|
769
895
|
method: method,
|
|
@@ -773,14 +899,14 @@ var busEmit = exports.busEmit = function busEmit(that, _ref) {
|
|
|
773
899
|
return;
|
|
774
900
|
}
|
|
775
901
|
var bus = that ? that.bus || that.$root.Bus || that.$root.$bus : null;
|
|
776
|
-
bus && ((0, _isArray.default)(args) ? bus.$emit.apply(bus, (0, _concat.default)(
|
|
902
|
+
bus && ((0, _isArray.default)(args) ? bus.$emit.apply(bus, (0, _concat.default)(_context4 = [method]).call(_context4, args)) : bus.$emit(method, args));
|
|
777
903
|
} else {
|
|
778
|
-
var
|
|
904
|
+
var _context6;
|
|
779
905
|
if (window.top !== window.self) {
|
|
780
906
|
var _bus = window.$wujie ? window.$wujie.bus : null;
|
|
781
907
|
if (_bus) {
|
|
782
|
-
var
|
|
783
|
-
(0, _isArray.default)(args) ? _bus.$emit.apply(_bus, (0, _concat.default)(
|
|
908
|
+
var _context5;
|
|
909
|
+
(0, _isArray.default)(args) ? _bus.$emit.apply(_bus, (0, _concat.default)(_context5 = [method]).call(_context5, args)) : _bus.$emit(method, args);
|
|
784
910
|
} else {
|
|
785
911
|
window.top.postMessage({
|
|
786
912
|
method: method,
|
|
@@ -791,7 +917,7 @@ var busEmit = exports.busEmit = function busEmit(that, _ref) {
|
|
|
791
917
|
return;
|
|
792
918
|
}
|
|
793
919
|
var _bus2 = that ? that.bus || that.$root.Bus || that.$root.$bus : null;
|
|
794
|
-
_bus2 && ((0, _isArray.default)(args) ? _bus2.$emit.apply(_bus2, (0, _concat.default)(
|
|
920
|
+
_bus2 && ((0, _isArray.default)(args) ? _bus2.$emit.apply(_bus2, (0, _concat.default)(_context6 = [method]).call(_context6, args)) : _bus2.$emit(method, args));
|
|
795
921
|
}
|
|
796
922
|
};
|
|
797
923
|
|
|
@@ -799,6 +925,7 @@ var busEmit = exports.busEmit = function busEmit(that, _ref) {
|
|
|
799
925
|
* chunkToChinese
|
|
800
926
|
* @desc 将四位数的整数转换为中文大写
|
|
801
927
|
* @param {number} chunk - 数字
|
|
928
|
+
* @return {string} 中文大写数字
|
|
802
929
|
**/
|
|
803
930
|
var chunkToChinese = exports.chunkToChinese = function chunkToChinese(chunk) {
|
|
804
931
|
var numberToChinese = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖'];
|
|
@@ -823,7 +950,6 @@ var chunkToChinese = exports.chunkToChinese = function chunkToChinese(chunk) {
|
|
|
823
950
|
|
|
824
951
|
/**
|
|
825
952
|
* concatenate
|
|
826
|
-
* @desc 指定连接符合并文本
|
|
827
953
|
* @desc 使用指定的连接符合并文本字符串
|
|
828
954
|
* @author SuTao
|
|
829
955
|
* @date 2023年12月14日
|
|
@@ -845,11 +971,13 @@ var concatenate = exports.concatenate = function concatenate(separator) {
|
|
|
845
971
|
|
|
846
972
|
/**
|
|
847
973
|
* delUrlParam
|
|
848
|
-
* @desc
|
|
974
|
+
* @desc 删除url指定参数
|
|
849
975
|
* @author huangbo
|
|
850
976
|
* @date 2022年5月7日
|
|
851
|
-
* @param {
|
|
852
|
-
* @param {String
|
|
977
|
+
* @param {Object} options - 参数选项
|
|
978
|
+
* @param {String} [options.url] - url地址
|
|
979
|
+
* @param {String|Array} [options.key] - 参数名
|
|
980
|
+
* @return {string} 删除参数后的url
|
|
853
981
|
**/
|
|
854
982
|
var delUrlParam = exports.delUrlParam = function delUrlParam(_ref2) {
|
|
855
983
|
var url = _ref2.url,
|
|
@@ -897,7 +1025,7 @@ var delUrlParam = exports.delUrlParam = function delUrlParam(_ref2) {
|
|
|
897
1025
|
|
|
898
1026
|
/**
|
|
899
1027
|
* domEval
|
|
900
|
-
* @desc
|
|
1028
|
+
* @desc 添加js内容
|
|
901
1029
|
* @author huangbo
|
|
902
1030
|
* @date 2022年5月7日
|
|
903
1031
|
* @param {String} [code] - js内容
|
|
@@ -910,10 +1038,10 @@ var domEval = exports.domEval = function domEval(code) {
|
|
|
910
1038
|
|
|
911
1039
|
/**
|
|
912
1040
|
* downloadFile
|
|
913
|
-
* @desc
|
|
1041
|
+
* @desc 下载附件
|
|
914
1042
|
* @author huangbo
|
|
915
1043
|
* @date 2022年5月7日
|
|
916
|
-
* @param {String}
|
|
1044
|
+
* @param {String} fileUrl - 文件下载地址
|
|
917
1045
|
**/
|
|
918
1046
|
var downloadFile = exports.downloadFile = function downloadFile(fileUrl) {
|
|
919
1047
|
var link = document.createElement('a');
|
|
@@ -927,10 +1055,11 @@ var downloadFile = exports.downloadFile = function downloadFile(fileUrl) {
|
|
|
927
1055
|
|
|
928
1056
|
/**
|
|
929
1057
|
* encode
|
|
930
|
-
* @desc
|
|
1058
|
+
* @desc 加密
|
|
931
1059
|
* @author huangbo
|
|
932
1060
|
* @date 2022年5月7日
|
|
933
|
-
* @param {string}
|
|
1061
|
+
* @param {string} value - 被加密的字符串
|
|
1062
|
+
* @return {string} 加密后的字符串
|
|
934
1063
|
**/
|
|
935
1064
|
var encode = exports.encode = function encode(value) {
|
|
936
1065
|
var kleng = publicKey.length;
|
|
@@ -954,11 +1083,11 @@ var encode = exports.encode = function encode(value) {
|
|
|
954
1083
|
|
|
955
1084
|
/**
|
|
956
1085
|
* decode
|
|
957
|
-
* @desc
|
|
1086
|
+
* @desc 解密
|
|
958
1087
|
* @author huangbo
|
|
959
1088
|
* @date 2022年5月7日
|
|
960
|
-
* @param {string}
|
|
961
|
-
* @
|
|
1089
|
+
* @param {string} value - 被解密的加密字符串
|
|
1090
|
+
* @return {string} 解密后的字符串
|
|
962
1091
|
**/
|
|
963
1092
|
var decode = exports.decode = function decode(value) {
|
|
964
1093
|
var kleng = publicKey.length;
|
|
@@ -985,11 +1114,14 @@ var decode = exports.decode = function decode(value) {
|
|
|
985
1114
|
};
|
|
986
1115
|
|
|
987
1116
|
/**
|
|
988
|
-
*
|
|
989
|
-
* @desc
|
|
1117
|
+
* exclAttribute
|
|
1118
|
+
* @desc 排除对象中的指定属性
|
|
990
1119
|
* @author huangbo
|
|
991
1120
|
* @date 2022年5月7日
|
|
992
|
-
* @param {
|
|
1121
|
+
* @param {Object} options - 参数选项
|
|
1122
|
+
* @param {String|Array} [options.attrs='value'] - 要排除的属性
|
|
1123
|
+
* @param {Object} options.data - 源对象
|
|
1124
|
+
* @return {Object} 排除属性后的新对象
|
|
993
1125
|
**/
|
|
994
1126
|
// 用于缓存exclAttribute的结果
|
|
995
1127
|
var _exclAttributeCache = new _map.default();
|
|
@@ -1035,8 +1167,9 @@ var exclAttribute = exports.exclAttribute = function exclAttribute(_ref3) {
|
|
|
1035
1167
|
* @desc 导出表格数据
|
|
1036
1168
|
* @author huangbo
|
|
1037
1169
|
* @date 2022年5月7日
|
|
1038
|
-
* @param {Object}
|
|
1039
|
-
* @param {
|
|
1170
|
+
* @param {Object} options - 参数选项
|
|
1171
|
+
* @param {Object} options.data - 导出数据
|
|
1172
|
+
* @param {String} [options.name] - 文件名
|
|
1040
1173
|
**/
|
|
1041
1174
|
var exportXls = exports.exportXls = function exportXls(_ref4) {
|
|
1042
1175
|
var data = _ref4.data,
|
|
@@ -1070,6 +1203,7 @@ var exportXls = exports.exportXls = function exportXls(_ref4) {
|
|
|
1070
1203
|
* @param {Boolean} [deep] - 是否深拷贝
|
|
1071
1204
|
* @param {Object} [target] - 目标对象
|
|
1072
1205
|
* @param {...Object} [source] - 源对象
|
|
1206
|
+
* @return {Object} 拷贝后的对象
|
|
1073
1207
|
**/
|
|
1074
1208
|
var _extend = exports.extend = function extend() {
|
|
1075
1209
|
// target目标对象 source源对象
|
|
@@ -1126,7 +1260,8 @@ var _extend = exports.extend = function extend() {
|
|
|
1126
1260
|
* @desc 获取数据类型
|
|
1127
1261
|
* @author huangbo
|
|
1128
1262
|
* @date 2022年5月7日
|
|
1129
|
-
* @param {
|
|
1263
|
+
* @param {*} [obj] - 任意值
|
|
1264
|
+
* @return {string} 数据类型
|
|
1130
1265
|
**/
|
|
1131
1266
|
var getObjectType = exports.getObjectType = function getObjectType(obj) {
|
|
1132
1267
|
return Object.prototype.toString.call(obj).replace(/\[object (.*)\]/, '$1').toLowerCase();
|
|
@@ -1137,10 +1272,15 @@ var getObjectType = exports.getObjectType = function getObjectType(obj) {
|
|
|
1137
1272
|
* @desc 获取URL参数
|
|
1138
1273
|
* @author huangbo
|
|
1139
1274
|
* @date 2022年5月7日
|
|
1140
|
-
* @param {
|
|
1275
|
+
* @param {Object} options - 参数配置对象
|
|
1276
|
+
* @param {String} [options.url] - url地址,可选
|
|
1277
|
+
* @param {String} [options.name] - 参数名,可选
|
|
1278
|
+
* @return {Object|string} 参数对象或指定参数值
|
|
1141
1279
|
**/
|
|
1142
|
-
var getParams = exports.getParams = function getParams(
|
|
1143
|
-
var
|
|
1280
|
+
var getParams = exports.getParams = function getParams(_temp) {
|
|
1281
|
+
var _ref5 = _temp === void 0 ? {} : _temp,
|
|
1282
|
+
url = _ref5.url,
|
|
1283
|
+
name = _ref5.name;
|
|
1144
1284
|
var href = '';
|
|
1145
1285
|
try {
|
|
1146
1286
|
href = window.top.location.href;
|
|
@@ -1148,17 +1288,30 @@ var getParams = exports.getParams = function getParams(key, url) {
|
|
|
1148
1288
|
href = window.location.href;
|
|
1149
1289
|
}
|
|
1150
1290
|
var paramStr = (url || href).split('?')[1] || '';
|
|
1151
|
-
if (!paramStr) return '';
|
|
1152
1291
|
var params = {};
|
|
1153
|
-
|
|
1154
|
-
var
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1292
|
+
if (paramStr) {
|
|
1293
|
+
var _context7;
|
|
1294
|
+
(0, _forEach.default)(_context7 = paramStr.split('&')).call(_context7, function (item) {
|
|
1295
|
+
var _item$split = item.split('='),
|
|
1296
|
+
k = _item$split[0],
|
|
1297
|
+
value = _item$split[1];
|
|
1298
|
+
if (k) {
|
|
1299
|
+
var decodedKey = decodeURIComponent(k);
|
|
1300
|
+
var decodedValue = decodeURIComponent(value || '');
|
|
1301
|
+
|
|
1302
|
+
// 处理重复参数,保存为数组
|
|
1303
|
+
if (params[decodedKey] !== undefined) {
|
|
1304
|
+
if (!(0, _isArray.default)(params[decodedKey])) {
|
|
1305
|
+
params[decodedKey] = [params[decodedKey]];
|
|
1306
|
+
}
|
|
1307
|
+
params[decodedKey].push(decodedValue);
|
|
1308
|
+
} else {
|
|
1309
|
+
params[decodedKey] = decodedValue;
|
|
1310
|
+
}
|
|
1311
|
+
}
|
|
1312
|
+
});
|
|
1313
|
+
}
|
|
1314
|
+
return name ? params[name] || '' : params;
|
|
1162
1315
|
};
|
|
1163
1316
|
|
|
1164
1317
|
/**
|
|
@@ -1166,7 +1319,8 @@ var getParams = exports.getParams = function getParams(key, url) {
|
|
|
1166
1319
|
* @desc 获取并执行JS文件
|
|
1167
1320
|
* @author huangbo
|
|
1168
1321
|
* @date 2022年5月7日
|
|
1169
|
-
* @param {String}
|
|
1322
|
+
* @param {String} url - 脚本地址
|
|
1323
|
+
* @return {Promise} Promise对象
|
|
1170
1324
|
**/
|
|
1171
1325
|
var getScript = exports.getScript = function getScript(url) {
|
|
1172
1326
|
return new _promise.default(function (resolve, reject) {
|
|
@@ -1191,6 +1345,7 @@ var getScript = exports.getScript = function getScript(url) {
|
|
|
1191
1345
|
* @date 2022年5月7日
|
|
1192
1346
|
* @param {Element} [el] - dom元素
|
|
1193
1347
|
* @param {String} [style] - 样式名称
|
|
1348
|
+
* @return {string} 样式值
|
|
1194
1349
|
**/
|
|
1195
1350
|
var getStyle = exports.getStyle = function getStyle(el, style) {
|
|
1196
1351
|
if (!el || !style) return '';
|
|
@@ -1215,6 +1370,7 @@ var getStyle = exports.getStyle = function getStyle(el, style) {
|
|
|
1215
1370
|
* @author huangbo
|
|
1216
1371
|
* @date 2022年5月7日
|
|
1217
1372
|
* @param {String} [type] - 类型
|
|
1373
|
+
* @return {string} 转换后的类型文本
|
|
1218
1374
|
**/
|
|
1219
1375
|
var getTypeName = exports.getTypeName = function getTypeName(type) {
|
|
1220
1376
|
if (!type) return '';
|
|
@@ -1240,8 +1396,9 @@ var getTypeName = exports.getTypeName = function getTypeName(type) {
|
|
|
1240
1396
|
* @desc 处理数据获取值
|
|
1241
1397
|
* @author huangbo
|
|
1242
1398
|
* @date 2022年5月7日
|
|
1243
|
-
* @param {
|
|
1399
|
+
* @param {Object} [obj] - 数据源
|
|
1244
1400
|
* @param {String} [key] - 键名,支持a.b.c形式
|
|
1401
|
+
* @return {*} 获取的值
|
|
1245
1402
|
**/
|
|
1246
1403
|
var getValues = exports.getValues = function getValues(obj, key) {
|
|
1247
1404
|
if (!obj || !key) return obj;
|
|
@@ -1259,6 +1416,7 @@ var getValues = exports.getValues = function getValues(obj, key) {
|
|
|
1259
1416
|
* @desc 获取缩放比
|
|
1260
1417
|
* @author huangbo
|
|
1261
1418
|
* @date 2022年5月7日
|
|
1419
|
+
* @return {number} 缩放比例
|
|
1262
1420
|
**/
|
|
1263
1421
|
var getZoom = exports.getZoom = function getZoom() {
|
|
1264
1422
|
// 获取当前页面的缩放比例
|
|
@@ -1289,6 +1447,7 @@ var getZoom = exports.getZoom = function getZoom() {
|
|
|
1289
1447
|
* @desc 获取同域top窗口
|
|
1290
1448
|
* @author huangbo
|
|
1291
1449
|
* @date 2022年5月7日
|
|
1450
|
+
* @return {Window} 同域的top窗口
|
|
1292
1451
|
**/
|
|
1293
1452
|
var getMyWinTop = exports.getMyWinTop = function getMyWinTop() {
|
|
1294
1453
|
var win = window.__WUJIE_RAW_WINDOW__ ? window.__WUJIE_RAW_WINDOW__ : window;
|
|
@@ -1312,6 +1471,7 @@ var getMyWinTop = exports.getMyWinTop = function getMyWinTop() {
|
|
|
1312
1471
|
* @author huangbo
|
|
1313
1472
|
* @date 2022年5月7日
|
|
1314
1473
|
* @param {String} [str] - 字符串
|
|
1474
|
+
* @return {number} 字符个数(中文算2个,其他算1个)
|
|
1315
1475
|
**/
|
|
1316
1476
|
var getLength = exports.getLength = function getLength(str) {
|
|
1317
1477
|
if (!str) return 0;
|
|
@@ -1336,6 +1496,7 @@ var getLength = exports.getLength = function getLength(str) {
|
|
|
1336
1496
|
* @author huangbo
|
|
1337
1497
|
* @date 2022年5月7日
|
|
1338
1498
|
* @param {String} [url] - url地址
|
|
1499
|
+
* @return {string} 更新时间戳后的url
|
|
1339
1500
|
**/
|
|
1340
1501
|
var timestampUrl = exports.timestampUrl = function timestampUrl(url) {
|
|
1341
1502
|
if (!url) return '';
|
|
@@ -1357,7 +1518,8 @@ var timestampUrl = exports.timestampUrl = function timestampUrl(url) {
|
|
|
1357
1518
|
* @author huangbo
|
|
1358
1519
|
* @date 2022年5月7日
|
|
1359
1520
|
* @param {String} [str] - 被检测字符串
|
|
1360
|
-
* @param {String} [chars] - 目标字符
|
|
1521
|
+
* @param {String|Array} [chars] - 目标字符
|
|
1522
|
+
* @return {boolean} 是否包含目标字符
|
|
1361
1523
|
**/
|
|
1362
1524
|
var hasChars = exports.hasChars = function hasChars(str, chars) {
|
|
1363
1525
|
if (!str || !chars) return false;
|
|
@@ -1379,8 +1541,9 @@ var hasChars = exports.hasChars = function hasChars(str, chars) {
|
|
|
1379
1541
|
* @desc 验证值是否相同
|
|
1380
1542
|
* @author huangbo
|
|
1381
1543
|
* @date 2022年5月7日
|
|
1382
|
-
* @param {
|
|
1383
|
-
* @param {
|
|
1544
|
+
* @param {*} [a] - 第一个值
|
|
1545
|
+
* @param {*} [b] - 第二个值
|
|
1546
|
+
* @return {boolean} 值是否相同
|
|
1384
1547
|
**/
|
|
1385
1548
|
var _identical = exports.identical = function identical(a, b) {
|
|
1386
1549
|
// 如果是严格相等,直接返回
|
|
@@ -1421,17 +1584,52 @@ var _identical = exports.identical = function identical(a, b) {
|
|
|
1421
1584
|
/**
|
|
1422
1585
|
* indexOfObj
|
|
1423
1586
|
* @desc 查找数组对象下标
|
|
1424
|
-
* @
|
|
1425
|
-
* @
|
|
1426
|
-
* @param {Array}
|
|
1427
|
-
* @
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
var
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1587
|
+
* @param {Array} arry - 被查找的数组
|
|
1588
|
+
* @param {Object|string} target - 目标对象或字符串值
|
|
1589
|
+
* @param {string|Array<string>} key - 目标对象的属性名,可以是逗号分隔的字符串或数组
|
|
1590
|
+
* @returns {number} 找到返回下标,未找到返回-1
|
|
1591
|
+
*/
|
|
1592
|
+
var indexOfObj = exports.indexOfObj = function indexOfObj(arry, target, key) {
|
|
1593
|
+
var _context8;
|
|
1594
|
+
// 参数校验
|
|
1595
|
+
if (!(0, _isArray.default)(arry)) {
|
|
1596
|
+
return -1;
|
|
1597
|
+
}
|
|
1598
|
+
|
|
1599
|
+
// 没有key的情况:直接比较对象
|
|
1600
|
+
if (!key) {
|
|
1601
|
+
var targetStr = (0, _stringify.default)(target);
|
|
1602
|
+
for (var i = 0; i < arry.length; i++) {
|
|
1603
|
+
if ((0, _stringify.default)(arry[i]) === targetStr) {
|
|
1604
|
+
return i;
|
|
1605
|
+
}
|
|
1606
|
+
}
|
|
1607
|
+
return -1;
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
// 统一处理key为数组
|
|
1611
|
+
var keys = (0, _isArray.default)(key) ? key : typeof key === 'string' ? (0, _map2.default)(_context8 = key.split(',')).call(_context8, function (k) {
|
|
1612
|
+
return (0, _trim.default)(k).call(k);
|
|
1613
|
+
}) : [];
|
|
1614
|
+
|
|
1615
|
+
// 遍历数组查找匹配项
|
|
1616
|
+
for (var _i2 = 0; _i2 < arry.length; _i2++) {
|
|
1617
|
+
var currentItem = arry[_i2];
|
|
1618
|
+
|
|
1619
|
+
// 遍历所有key进行匹配
|
|
1620
|
+
for (var j = 0; j < keys.length; j++) {
|
|
1621
|
+
var currentKey = keys[j];
|
|
1622
|
+
|
|
1623
|
+
// 如果target是字符串,直接比较
|
|
1624
|
+
if (typeof target === 'string') {
|
|
1625
|
+
if (currentItem[currentKey] === target) {
|
|
1626
|
+
return _i2;
|
|
1627
|
+
}
|
|
1628
|
+
} else if (target && typeof target === 'object') {
|
|
1629
|
+
if (currentItem[currentKey] === target[currentKey]) {
|
|
1630
|
+
return _i2;
|
|
1631
|
+
}
|
|
1632
|
+
}
|
|
1435
1633
|
}
|
|
1436
1634
|
}
|
|
1437
1635
|
return -1;
|
|
@@ -1442,7 +1640,8 @@ var indexOfObj = exports.indexOfObj = function indexOfObj(arr, key, value) {
|
|
|
1442
1640
|
* @desc 判断是否为空
|
|
1443
1641
|
* @author huangbo
|
|
1444
1642
|
* @date 2022年5月7日
|
|
1445
|
-
* @param {
|
|
1643
|
+
* @param {*} [value] - 任意值
|
|
1644
|
+
* @return {boolean} 是否为空
|
|
1446
1645
|
**/
|
|
1447
1646
|
var isEmpty = exports.isEmpty = function isEmpty(value) {
|
|
1448
1647
|
if (value === undefined || value === null) {
|
|
@@ -1465,7 +1664,8 @@ var isEmpty = exports.isEmpty = function isEmpty(value) {
|
|
|
1465
1664
|
* @desc 判断是否存在
|
|
1466
1665
|
* @author huangbo
|
|
1467
1666
|
* @date 2022年5月7日
|
|
1468
|
-
* @param {
|
|
1667
|
+
* @param {*} [value] - 任意值
|
|
1668
|
+
* @return {boolean} 是否存在
|
|
1469
1669
|
**/
|
|
1470
1670
|
var isExist = exports.isExist = function isExist(value) {
|
|
1471
1671
|
return value !== undefined && value !== null;
|
|
@@ -1476,7 +1676,8 @@ var isExist = exports.isExist = function isExist(value) {
|
|
|
1476
1676
|
* @desc 判断是否是函数
|
|
1477
1677
|
* @author huangbo
|
|
1478
1678
|
* @date 2022年5月7日
|
|
1479
|
-
* @param {
|
|
1679
|
+
* @param {*} [value] - 任意值
|
|
1680
|
+
* @return {boolean} 是否是函数
|
|
1480
1681
|
**/
|
|
1481
1682
|
var isFunction = exports.isFunction = function isFunction(value) {
|
|
1482
1683
|
return typeof value === 'function';
|
|
@@ -1487,8 +1688,9 @@ var isFunction = exports.isFunction = function isFunction(value) {
|
|
|
1487
1688
|
* @desc 判断对象是否相等
|
|
1488
1689
|
* @author huangbo
|
|
1489
1690
|
* @date 2022年5月7日
|
|
1490
|
-
* @param {
|
|
1491
|
-
* @param {
|
|
1691
|
+
* @param {*} [a] - 第一个值
|
|
1692
|
+
* @param {*} [b] - 第二个值
|
|
1693
|
+
* @return {boolean} 对象是否相等
|
|
1492
1694
|
**/
|
|
1493
1695
|
var _isObjectEqual = exports.isObjectEqual = function isObjectEqual(a, b) {
|
|
1494
1696
|
// 如果两者严格相等,直接返回true
|
|
@@ -1547,26 +1749,19 @@ var _isObjectEqual = exports.isObjectEqual = function isObjectEqual(a, b) {
|
|
|
1547
1749
|
return true;
|
|
1548
1750
|
};
|
|
1549
1751
|
|
|
1550
|
-
/**
|
|
1551
|
-
* joinUrl
|
|
1552
|
-
* @desc:判断url地址是否以字符开头,没有则添加
|
|
1553
|
-
* @author huangbo
|
|
1554
|
-
* @date 2022年5月7日
|
|
1555
|
-
* @param {string} [reg] - 域名或者路径
|
|
1556
|
-
* @param {string/array} [url] - 地址
|
|
1557
|
-
* @param {boolean} [single] - 是否做js沙箱隔离
|
|
1558
|
-
**/
|
|
1559
1752
|
/**
|
|
1560
1753
|
* joinUrl
|
|
1561
1754
|
* @desc 拼接路径
|
|
1562
1755
|
* @author huangbo
|
|
1563
1756
|
* @date 2022年5月7日
|
|
1564
|
-
* @param {
|
|
1565
|
-
* @param {string
|
|
1757
|
+
* @param {Object} options - 参数选项
|
|
1758
|
+
* @param {string} options.url - 地址
|
|
1759
|
+
* @param {string|array} options.reg - 域名或者路径前缀
|
|
1760
|
+
* @return {string} 拼接后的url
|
|
1566
1761
|
**/
|
|
1567
|
-
var joinUrl = exports.joinUrl = function joinUrl(
|
|
1568
|
-
var url =
|
|
1569
|
-
reg =
|
|
1762
|
+
var joinUrl = exports.joinUrl = function joinUrl(_ref6) {
|
|
1763
|
+
var url = _ref6.url,
|
|
1764
|
+
reg = _ref6.reg;
|
|
1570
1765
|
// 类型检查
|
|
1571
1766
|
if (typeof url !== 'string') {
|
|
1572
1767
|
return url;
|
|
@@ -1618,7 +1813,7 @@ var joinUrl = exports.joinUrl = function joinUrl(_ref5) {
|
|
|
1618
1813
|
* @desc 加载JS文件
|
|
1619
1814
|
* @author huangbo
|
|
1620
1815
|
* @date 2022年5月7日
|
|
1621
|
-
* @param {String}
|
|
1816
|
+
* @param {String} url - JS文件地址
|
|
1622
1817
|
* @param {Function} [callback] - 回调函数
|
|
1623
1818
|
**/
|
|
1624
1819
|
var loadJs = exports.loadJs = function loadJs(url, callback) {
|
|
@@ -1637,7 +1832,8 @@ var loadJs = exports.loadJs = function loadJs(url, callback) {
|
|
|
1637
1832
|
* @desc 加载动画
|
|
1638
1833
|
* @author huangbo
|
|
1639
1834
|
* @date 2022年5月7日
|
|
1640
|
-
* @param {String} [text] - 提示文本
|
|
1835
|
+
* @param {String} [text='请求中...'] - 提示文本
|
|
1836
|
+
* @return {Object} Loading实例
|
|
1641
1837
|
**/
|
|
1642
1838
|
var loading = exports.loading = function loading(text) {
|
|
1643
1839
|
if (text === void 0) {
|
|
@@ -1656,6 +1852,7 @@ var loading = exports.loading = function loading(text) {
|
|
|
1656
1852
|
* @author huangbo
|
|
1657
1853
|
* @date 2022年5月7日
|
|
1658
1854
|
* @param {String} [str] - 字符串
|
|
1855
|
+
* @return {string} 转换后的字符串
|
|
1659
1856
|
**/
|
|
1660
1857
|
var lowerCase = exports.lowerCase = function lowerCase(str) {
|
|
1661
1858
|
if (typeof str !== 'string') return str;
|
|
@@ -1668,6 +1865,7 @@ var lowerCase = exports.lowerCase = function lowerCase(str) {
|
|
|
1668
1865
|
* @author huangbo
|
|
1669
1866
|
* @date 2022年5月7日
|
|
1670
1867
|
* @param {Element} [el] - dom元素
|
|
1868
|
+
* @return {boolean} 是否溢出
|
|
1671
1869
|
**/
|
|
1672
1870
|
var overbrim = exports.overbrim = function overbrim(el) {
|
|
1673
1871
|
if (!el) return false;
|
|
@@ -1698,6 +1896,7 @@ var overbrim = exports.overbrim = function overbrim(el) {
|
|
|
1698
1896
|
* @author huangbo
|
|
1699
1897
|
* @date 2022年5月7日
|
|
1700
1898
|
* @param {Object} [obj] - 源对象
|
|
1899
|
+
* @return {string} URL参数字符串
|
|
1701
1900
|
**/
|
|
1702
1901
|
var queryParams = exports.queryParams = function queryParams(obj) {
|
|
1703
1902
|
if (!obj || typeof obj !== 'object') return '';
|
|
@@ -1727,6 +1926,7 @@ var queryParams = exports.queryParams = function queryParams(obj) {
|
|
|
1727
1926
|
* @author huangbo
|
|
1728
1927
|
* @date 2022年5月7日
|
|
1729
1928
|
* @param {Function} [callback] - 回调函数
|
|
1929
|
+
* @return {Function} 移除监听器的函数
|
|
1730
1930
|
**/
|
|
1731
1931
|
var receiveMessage = exports.receiveMessage = function receiveMessage(callback) {
|
|
1732
1932
|
var handleMessage = function handleMessage(event) {
|
|
@@ -1748,7 +1948,8 @@ var receiveMessage = exports.receiveMessage = function receiveMessage(callback)
|
|
|
1748
1948
|
* @author huangbo
|
|
1749
1949
|
* @date 2022年5月7日
|
|
1750
1950
|
* @param {Number} [num] - 数字
|
|
1751
|
-
* @param {Number} [digits] - 小数位数
|
|
1951
|
+
* @param {Number} [digits=2] - 小数位数
|
|
1952
|
+
* @return {string} 补全后的数字字符串
|
|
1752
1953
|
**/
|
|
1753
1954
|
var replenish = exports.replenish = function replenish(num, digits) {
|
|
1754
1955
|
if (digits === void 0) {
|
|
@@ -1767,6 +1968,7 @@ var replenish = exports.replenish = function replenish(num, digits) {
|
|
|
1767
1968
|
* @author huangbo
|
|
1768
1969
|
* @date 2022年5月7日
|
|
1769
1970
|
* @param {Number} [num] - 金额
|
|
1971
|
+
* @return {string} 人民币大写
|
|
1770
1972
|
**/
|
|
1771
1973
|
var rmbToCapital = exports.rmbToCapital = function rmbToCapital(num) {
|
|
1772
1974
|
// 检查输入是否为数字
|
|
@@ -1805,10 +2007,10 @@ var rmbToCapital = exports.rmbToCapital = function rmbToCapital(num) {
|
|
|
1805
2007
|
// 处理小数部分
|
|
1806
2008
|
var decimalCapital = '';
|
|
1807
2009
|
if ((0, _parseInt2.default)(decimalPart, 10) > 0) {
|
|
1808
|
-
for (var
|
|
1809
|
-
var _digit = (0, _parseInt2.default)(decimalPart[
|
|
2010
|
+
for (var _i3 = 0; _i3 < decimalPart.length; _i3++) {
|
|
2011
|
+
var _digit = (0, _parseInt2.default)(decimalPart[_i3], 10);
|
|
1810
2012
|
if (_digit > 0) {
|
|
1811
|
-
decimalCapital += chineseNumbers[_digit] + decimalUnits[
|
|
2013
|
+
decimalCapital += chineseNumbers[_digit] + decimalUnits[_i3];
|
|
1812
2014
|
} else if (decimalCapital[decimalCapital.length - 1] !== chineseNumbers[0]) {
|
|
1813
2015
|
decimalCapital += chineseNumbers[_digit];
|
|
1814
2016
|
}
|
|
@@ -1867,12 +2069,13 @@ var setScale = exports.setScale = function setScale(scale) {
|
|
|
1867
2069
|
* @desc 向iframe发送信息
|
|
1868
2070
|
* @author huangbo
|
|
1869
2071
|
* @date 2022年5月7日
|
|
1870
|
-
* @param {
|
|
1871
|
-
* @param {
|
|
2072
|
+
* @param {Object} options - 参数选项
|
|
2073
|
+
* @param {String} options.id - iframe元素id
|
|
2074
|
+
* @param {Object} options.data - 发送的数据
|
|
1872
2075
|
**/
|
|
1873
|
-
var sendMessage = exports.sendMessage = function sendMessage(
|
|
1874
|
-
var id =
|
|
1875
|
-
data =
|
|
2076
|
+
var sendMessage = exports.sendMessage = function sendMessage(_ref7) {
|
|
2077
|
+
var id = _ref7.id,
|
|
2078
|
+
data = _ref7.data;
|
|
1876
2079
|
var iframe = document.getElementById(id);
|
|
1877
2080
|
if (!iframe) {
|
|
1878
2081
|
console.error("iframe with id " + id + " not found");
|
|
@@ -1891,7 +2094,7 @@ var sendMessage = exports.sendMessage = function sendMessage(_ref6) {
|
|
|
1891
2094
|
* @desc 设置浏览器图标
|
|
1892
2095
|
* @author huangbo
|
|
1893
2096
|
* @date 2022年5月7日
|
|
1894
|
-
* @param {String}
|
|
2097
|
+
* @param {String} url - 图标URL
|
|
1895
2098
|
**/
|
|
1896
2099
|
var setFavicon = exports.setFavicon = function setFavicon(url) {
|
|
1897
2100
|
if (!url) {
|
|
@@ -1923,7 +2126,8 @@ var setFavicon = exports.setFavicon = function setFavicon(url) {
|
|
|
1923
2126
|
* @desc 求和
|
|
1924
2127
|
* @author huangbo
|
|
1925
2128
|
* @date 2022年5月7日
|
|
1926
|
-
* @param {...number}
|
|
2129
|
+
* @param {...number} numbers - 数字
|
|
2130
|
+
* @return {number} 数字的总和
|
|
1927
2131
|
**/
|
|
1928
2132
|
var sum = exports.sum = function sum() {
|
|
1929
2133
|
for (var _len4 = arguments.length, numbers = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
|
@@ -1946,6 +2150,7 @@ var sum = exports.sum = function sum() {
|
|
|
1946
2150
|
* @date 2022年5月7日
|
|
1947
2151
|
* @param {String} [str] - 源字符串
|
|
1948
2152
|
* @param {String} [searchString] - 搜索字符串
|
|
2153
|
+
* @return {boolean} 是否以指定字符开头
|
|
1949
2154
|
**/
|
|
1950
2155
|
var startWith = exports.startWith = function startWith(str, searchString) {
|
|
1951
2156
|
if (typeof str !== 'string' || typeof searchString !== 'string') {
|
|
@@ -1961,6 +2166,7 @@ var startWith = exports.startWith = function startWith(str, searchString) {
|
|
|
1961
2166
|
* @date 2022年5月7日
|
|
1962
2167
|
* @param {String} [str] - 源字符串
|
|
1963
2168
|
* @param {Number} [length] - 提取长度
|
|
2169
|
+
* @return {string} 提取后的字符串
|
|
1964
2170
|
**/
|
|
1965
2171
|
var takeLeft = exports.takeLeft = function takeLeft(str, length) {
|
|
1966
2172
|
if (typeof str !== 'string' || typeof length !== 'number' || length < 0) {
|
|
@@ -1976,6 +2182,7 @@ var takeLeft = exports.takeLeft = function takeLeft(str, length) {
|
|
|
1976
2182
|
* @date 2022年5月7日
|
|
1977
2183
|
* @param {String} [str] - 源字符串
|
|
1978
2184
|
* @param {Number} [length] - 提取长度
|
|
2185
|
+
* @return {string} 提取后的字符串
|
|
1979
2186
|
**/
|
|
1980
2187
|
var takeRight = exports.takeRight = function takeRight(str, length) {
|
|
1981
2188
|
if (typeof str !== 'string' || typeof length !== 'number' || length < 0) {
|
|
@@ -1990,6 +2197,7 @@ var takeRight = exports.takeRight = function takeRight(str, length) {
|
|
|
1990
2197
|
* @author huangbo
|
|
1991
2198
|
* @date 2022年5月7日
|
|
1992
2199
|
* @param {String} [str] - 源字符串
|
|
2200
|
+
* @return {string} 删除空格后的字符串
|
|
1993
2201
|
**/
|
|
1994
2202
|
var trimWhitespace = exports.trimWhitespace = function trimWhitespace(str) {
|
|
1995
2203
|
if (typeof str !== 'string') {
|
|
@@ -2004,7 +2212,8 @@ var trimWhitespace = exports.trimWhitespace = function trimWhitespace(str) {
|
|
|
2004
2212
|
* @author huangbo
|
|
2005
2213
|
* @date 2022年5月7日
|
|
2006
2214
|
* @param {Number} [num] - 浮点数
|
|
2007
|
-
* @param {Number} [digits] - 小数位数
|
|
2215
|
+
* @param {Number} [digits=2] - 小数位数
|
|
2216
|
+
* @return {number} 保留小数位后的数字
|
|
2008
2217
|
**/
|
|
2009
2218
|
var toFixed = exports.toFixed = function toFixed(num, digits) {
|
|
2010
2219
|
if (digits === void 0) {
|
|
@@ -2023,6 +2232,7 @@ var toFixed = exports.toFixed = function toFixed(num, digits) {
|
|
|
2023
2232
|
* @author huangbo
|
|
2024
2233
|
* @date 2022年5月7日
|
|
2025
2234
|
* @param {String} [str] - 函数字符串
|
|
2235
|
+
* @return {Function|null} 转换后的函数或null
|
|
2026
2236
|
**/
|
|
2027
2237
|
var toFunction = exports.toFunction = function toFunction(str) {
|
|
2028
2238
|
if (typeof str !== 'string') {
|
|
@@ -2071,6 +2281,7 @@ var updateTheme = exports.updateTheme = function updateTheme(color) {
|
|
|
2071
2281
|
* @author huangbo
|
|
2072
2282
|
* @date 2022年5月7日
|
|
2073
2283
|
* @param {String} [str] - 字符串
|
|
2284
|
+
* @return {string} 转换后的字符串
|
|
2074
2285
|
**/
|
|
2075
2286
|
var upperType = exports.upperType = function upperType(str) {
|
|
2076
2287
|
if (typeof str !== 'string') {
|
|
@@ -2084,25 +2295,47 @@ var upperType = exports.upperType = function upperType(str) {
|
|
|
2084
2295
|
* @desc 对象转url拼接参数
|
|
2085
2296
|
* @author huangbo
|
|
2086
2297
|
* @date 2022年5月7日
|
|
2087
|
-
* @param {String} [url] - 源url
|
|
2088
|
-
* @param {Object} [params] - 参数对象
|
|
2298
|
+
* @param {String} [options.url] - 源url
|
|
2299
|
+
* @param {Object} [options.params] - 参数对象
|
|
2300
|
+
* @param {Boolean} [options.timestamp] - 是否添加时间戳
|
|
2089
2301
|
**/
|
|
2090
|
-
var urlJoinParams = exports.urlJoinParams = function urlJoinParams(
|
|
2302
|
+
var urlJoinParams = exports.urlJoinParams = function urlJoinParams(_temp2) {
|
|
2303
|
+
var _ref8 = _temp2 === void 0 ? {} : _temp2,
|
|
2304
|
+
_ref8$url = _ref8.url,
|
|
2305
|
+
url = _ref8$url === void 0 ? '' : _ref8$url,
|
|
2306
|
+
_ref8$params = _ref8.params,
|
|
2307
|
+
params = _ref8$params === void 0 ? {} : _ref8$params,
|
|
2308
|
+
_ref8$timestamp = _ref8.timestamp,
|
|
2309
|
+
timestamp = _ref8$timestamp === void 0 ? false : _ref8$timestamp;
|
|
2091
2310
|
if (typeof url !== 'string') {
|
|
2092
|
-
return
|
|
2311
|
+
return '';
|
|
2093
2312
|
}
|
|
2094
|
-
if (!
|
|
2095
|
-
return
|
|
2313
|
+
if (!url) {
|
|
2314
|
+
return '';
|
|
2315
|
+
}
|
|
2316
|
+
// 处理URL中的锚点
|
|
2317
|
+
var urlWithoutHash = url;
|
|
2318
|
+
var hash = '';
|
|
2319
|
+
var hashIndex = (0, _indexOf.default)(url).call(url, '#');
|
|
2320
|
+
if (hashIndex > -1) {
|
|
2321
|
+
urlWithoutHash = (0, _slice.default)(url).call(url, 0, hashIndex);
|
|
2322
|
+
hash = (0, _slice.default)(url).call(url, hashIndex);
|
|
2323
|
+
}
|
|
2324
|
+
// 复制参数对象以避免修改原对象
|
|
2325
|
+
var paramsCopy = _extends({}, params);
|
|
2326
|
+
// 添加时间戳
|
|
2327
|
+
if (timestamp) {
|
|
2328
|
+
paramsCopy._t = (0, _now.default)();
|
|
2096
2329
|
}
|
|
2097
2330
|
// 将参数对象转换为URL参数字符串
|
|
2098
|
-
var queryString = queryParams(
|
|
2331
|
+
var queryString = queryParams(paramsCopy);
|
|
2099
2332
|
if (!queryString) {
|
|
2100
2333
|
return url;
|
|
2101
2334
|
}
|
|
2102
2335
|
// 检查URL是否已经包含查询参数
|
|
2103
|
-
var hasQuery = (0, _includes.default)(
|
|
2336
|
+
var hasQuery = (0, _includes.default)(urlWithoutHash).call(urlWithoutHash, '?');
|
|
2104
2337
|
// 拼接URL和查询参数
|
|
2105
|
-
return "" +
|
|
2338
|
+
return "" + urlWithoutHash + (hasQuery ? '&' : '?') + queryString + hash;
|
|
2106
2339
|
};
|
|
2107
2340
|
|
|
2108
2341
|
/**
|
|
@@ -2207,11 +2440,11 @@ var watermark = exports.watermark = function watermark(text, options) {
|
|
|
2207
2440
|
* @param {String} [target] - 打开方式
|
|
2208
2441
|
* @param {String} [name] - 窗口名称
|
|
2209
2442
|
**/
|
|
2210
|
-
var winTopOpen = exports.winTopOpen = function winTopOpen(
|
|
2211
|
-
var url =
|
|
2212
|
-
|
|
2213
|
-
target =
|
|
2214
|
-
name =
|
|
2443
|
+
var winTopOpen = exports.winTopOpen = function winTopOpen(_ref9) {
|
|
2444
|
+
var url = _ref9.url,
|
|
2445
|
+
_ref9$target = _ref9.target,
|
|
2446
|
+
target = _ref9$target === void 0 ? '_blank' : _ref9$target,
|
|
2447
|
+
name = _ref9.name;
|
|
2215
2448
|
try {
|
|
2216
2449
|
if (target === '_blank') {
|
|
2217
2450
|
window.top.open(url, name);
|