light-h5-core-lib 2.7.5 → 2.8.1

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.
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ /**
40
+ * 异步处理工具
41
+ * @author Aonaufly
42
+ */
43
+ var PromiseUtil = /** @class */ (function () {
44
+ function PromiseUtil() {
45
+ }
46
+ /**
47
+ * 执行所有异步并返回数据
48
+ */
49
+ PromiseUtil.all = function (promiseArr) {
50
+ return __awaiter(this, void 0, void 0, function () {
51
+ return __generator(this, function (_a) {
52
+ return [2 /*return*/, new Promise(function (resolve, reject) {
53
+ var promises = Array.from(promiseArr);
54
+ var r = [];
55
+ var len = promises.length;
56
+ var count = 0;
57
+ var _loop_1 = function (i) {
58
+ Promise.resolve(promises[i]).then(function (o) {
59
+ r[i] = o;
60
+ if (++count === len) {
61
+ resolve(r);
62
+ }
63
+ }).catch(function (e) { return reject(e); });
64
+ };
65
+ for (var i = 0; i < len; i++) {
66
+ _loop_1(i);
67
+ }
68
+ })];
69
+ });
70
+ });
71
+ };
72
+ return PromiseUtil;
73
+ }());
74
+ exports.default = PromiseUtil;
@@ -1,54 +1,92 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RandomNumUtil = void 0;
4
- /**
5
- * 随机数生成工具
6
- * @author aonaufly
7
- */
8
- var RandomNumUtil = /** @class */ (function () {
9
- function RandomNumUtil() {
10
- }
11
- /**
12
- * 获取一定范围的随机整数
13
- *
14
- * <b>( min ≤ r ≤ max )</b>
15
- *
16
- * @param min 最小数
17
- * @param max 最大数
18
- * @param isInt 是否返回整数
19
- */
20
- RandomNumUtil.randomNumBoth = function (min, max, isInt) {
21
- if (isInt === void 0) { isInt = true; }
22
- var Range = max - min;
23
- if (Range > 0.0) {
24
- var Rand = Math.random();
25
- var num = void 0;
26
- if (isInt) {
27
- num = min + Math.round(Rand * Range); //四舍五入
28
- }
29
- else {
30
- num = min + Rand * Range;
31
- }
32
- return num;
33
- }
34
- else {
35
- return isInt ? min : Math.round(min);
36
- }
37
- };
38
- /**
39
- * 打乱数组
40
- */
41
- RandomNumUtil.shuffleSort = function (arr) {
42
- var n = arr.length;
43
- var index;
44
- var temp;
45
- while (n--) {
46
- index = Math.floor(Math.random() * n);
47
- temp = arr[index];
48
- arr[index] = arr[n];
49
- arr[n] = temp;
50
- }
51
- };
52
- return RandomNumUtil;
53
- }());
54
- exports.RandomNumUtil = RandomNumUtil;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RandomNumUtil = void 0;
4
+ /**
5
+ * 随机数生成工具
6
+ * @author aonaufly
7
+ */
8
+ var RandomNumUtil = /** @class */ (function () {
9
+ function RandomNumUtil() {
10
+ }
11
+ /**
12
+ * 获取一定范围的随机整数
13
+ *
14
+ * <b>( min ≤ r ≤ max )</b>
15
+ *
16
+ * @param min 最小数
17
+ * @param max 最大数
18
+ * @param isInt 是否返回整数
19
+ */
20
+ RandomNumUtil.randomNumBoth = function (min, max, isInt) {
21
+ if (isInt === void 0) { isInt = true; }
22
+ var Range = max - min;
23
+ if (Range > 0.0) {
24
+ var Rand = Math.random();
25
+ var num = void 0;
26
+ if (isInt) {
27
+ num = min + Math.round(Rand * Range); //四舍五入
28
+ }
29
+ else {
30
+ num = min + Rand * Range;
31
+ }
32
+ return num;
33
+ }
34
+ else {
35
+ return isInt ? min : Math.round(min);
36
+ }
37
+ };
38
+ /**
39
+ * 打乱数组
40
+ */
41
+ RandomNumUtil.shuffleSort = function (arr) {
42
+ var n = arr.length;
43
+ var index;
44
+ var temp;
45
+ while (n--) {
46
+ index = Math.floor(Math.random() * n);
47
+ temp = arr[index];
48
+ arr[index] = arr[n];
49
+ arr[n] = temp;
50
+ }
51
+ };
52
+ /**
53
+ * 获得偏振系数
54
+ * @param factor 偏振因子(>0)
55
+ * @param negativeIntRadio 负数的比率(> 0的整数)
56
+ * @param positiveIntRadio 正数的比率 (>0的整数)
57
+ * @return -factor 或者factor
58
+ */
59
+ RandomNumUtil.getPolarizationFactor = function (factor, negativeIntRadio, positiveIntRadio) {
60
+ if (factor === void 0) { factor = 1; }
61
+ if (negativeIntRadio === void 0) { negativeIntRadio = 1; }
62
+ if (positiveIntRadio === void 0) { positiveIntRadio = 1; }
63
+ var r = RandomNumUtil.randomNumWithRadio(0, 1, [negativeIntRadio, positiveIntRadio]);
64
+ if (r == 0)
65
+ return -1 * factor;
66
+ return r * factor;
67
+ };
68
+ /**
69
+ * 按照比率获得随机数(对于整数)
70
+ * @param min 最小数
71
+ * @param max 最大数
72
+ * @param radioArr 比率
73
+ */
74
+ RandomNumUtil.randomNumWithRadio = function (min, max, radioArr) {
75
+ var total = 0;
76
+ var i;
77
+ for (i = 0; i < radioArr.length; i++) {
78
+ total += radioArr[i];
79
+ }
80
+ var r = RandomNumUtil.randomNumBoth(1, total, true);
81
+ var target = 0;
82
+ for (i = 0; i < radioArr.length; i++) {
83
+ target += radioArr[i];
84
+ if (r <= target) {
85
+ return i + min;
86
+ }
87
+ }
88
+ return max;
89
+ };
90
+ return RandomNumUtil;
91
+ }());
92
+ exports.RandomNumUtil = RandomNumUtil;
@@ -1,81 +1,88 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StringUtil = void 0;
4
- /**
5
- * 字符串工具
6
- * @author aonaufly
7
- */
8
- var StringUtil = /** @class */ (function () {
9
- function StringUtil() {
10
- }
11
- /**
12
- * 字符串的格式化 , 使用 {index = 0}的模式
13
- * @param str 源字符串
14
- * @param args 填充参数
15
- */
16
- StringUtil.format = function (str) {
17
- var args = [];
18
- for (var _i = 1; _i < arguments.length; _i++) {
19
- args[_i - 1] = arguments[_i];
20
- }
21
- if (!args || args.length == 0)
22
- return str;
23
- for (var i = 0, j = args.length; i < j; i++) {
24
- str = str.replace("{".concat(i, "}"), args[i]);
25
- }
26
- return str;
27
- };
28
- StringUtil.code2utf8 = function (uni) {
29
- var uni2 = uni.toString(2);
30
- if (uni < 128) {
31
- return uni.toString(16);
32
- }
33
- else if (uni < 2048) {
34
- uni2 = ("00000000000000000" + uni2).slice(-11);
35
- var s1 = parseInt("110" + uni2.substring(0, 5), 2);
36
- var s2 = parseInt("10" + uni2.substring(5), 2);
37
- return s1.toString(16) + "," + s2.toString(16);
38
- }
39
- else {
40
- uni2 = ("00000000000000000" + uni2).slice(-16);
41
- var s1 = parseInt("1110" + uni2.substring(0, 4), 2);
42
- var s2 = parseInt("10" + uni2.substring(4, 10), 2);
43
- var s3 = parseInt("10" + uni2.substring(10), 2);
44
- return s1.toString(16) + "," + s2.toString(16) + "," + s3.toString(16);
45
- }
46
- };
47
- /**
48
- * 将字符串转化成UTF8的Buffer
49
- * @param str 字符串
50
- */
51
- StringUtil.string2UTF8Buffer = function (str) {
52
- var val = "";
53
- for (var i = 0; i < str.length; i++) {
54
- val += "," + StringUtil.code2utf8(str.charCodeAt(i));
55
- }
56
- val += ",00";
57
- // 将16进制转化为ArrayBuffer
58
- return new Uint8Array(val.match(/[\da-f]{2}/gi).map(function (h) {
59
- return parseInt(h, 16);
60
- })).buffer;
61
- };
62
- // /**
63
- // * 将buffer转化成UTF8
64
- // * @param buffer
65
- // */
66
- // public static buffer2UTF8String(buffer: ArrayBuffer): string {
67
- // const encodedString: string = String.fromCharCode.apply(null, new Uint8Array(buffer));
68
- // // const decodedString: string = decodeURIComponent(escape(atob(encodedString)));
69
- // return encodedString;
70
- // }
71
- /* buffer转化成UTF8
72
- * @param buffer
73
- */
74
- StringUtil.buffer2UTF8String = function (buffer) {
75
- var uint8Array = new Uint8Array(buffer);
76
- var data = uint8Array.reduce(function (acc, i) { return (acc += String.fromCharCode.apply(null, [i])); }, "");
77
- return data;
78
- };
79
- return StringUtil;
80
- }());
81
- exports.StringUtil = StringUtil;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StringUtil = void 0;
4
+ /**
5
+ * 字符串工具
6
+ * @author aonaufly
7
+ */
8
+ var StringUtil = /** @class */ (function () {
9
+ function StringUtil() {
10
+ }
11
+ /**
12
+ * 字符串的格式化 , 使用 {index = 0}的模式
13
+ * @param str 源字符串
14
+ * @param args 填充参数
15
+ */
16
+ StringUtil.format = function (str) {
17
+ var args = [];
18
+ for (var _i = 1; _i < arguments.length; _i++) {
19
+ args[_i - 1] = arguments[_i];
20
+ }
21
+ if (!args || args.length == 0)
22
+ return str;
23
+ for (var i = 0, j = args.length; i < j; i++) {
24
+ str = str.replace("{".concat(i, "}"), args[i]);
25
+ }
26
+ return str;
27
+ };
28
+ /**
29
+ * 将字符串中所有的\/替换成/
30
+ */
31
+ StringUtil.replaceBackslash = function (input) {
32
+ // 使用正则表达式替换所有的 \\/ 为 /
33
+ return input.replace(/\\\//g, '/');
34
+ };
35
+ StringUtil.code2utf8 = function (uni) {
36
+ var uni2 = uni.toString(2);
37
+ if (uni < 128) {
38
+ return uni.toString(16);
39
+ }
40
+ else if (uni < 2048) {
41
+ uni2 = ("00000000000000000" + uni2).slice(-11);
42
+ var s1 = parseInt("110" + uni2.substring(0, 5), 2);
43
+ var s2 = parseInt("10" + uni2.substring(5), 2);
44
+ return s1.toString(16) + "," + s2.toString(16);
45
+ }
46
+ else {
47
+ uni2 = ("00000000000000000" + uni2).slice(-16);
48
+ var s1 = parseInt("1110" + uni2.substring(0, 4), 2);
49
+ var s2 = parseInt("10" + uni2.substring(4, 10), 2);
50
+ var s3 = parseInt("10" + uni2.substring(10), 2);
51
+ return s1.toString(16) + "," + s2.toString(16) + "," + s3.toString(16);
52
+ }
53
+ };
54
+ /**
55
+ * 将字符串转化成UTF8的Buffer
56
+ * @param str 字符串
57
+ */
58
+ StringUtil.string2UTF8Buffer = function (str) {
59
+ var val = "";
60
+ for (var i = 0; i < str.length; i++) {
61
+ val += "," + StringUtil.code2utf8(str.charCodeAt(i));
62
+ }
63
+ val += ",00";
64
+ // 将16进制转化为ArrayBuffer
65
+ return new Uint8Array(val.match(/[\da-f]{2}/gi).map(function (h) {
66
+ return parseInt(h, 16);
67
+ })).buffer;
68
+ };
69
+ // /**
70
+ // * 将buffer转化成UTF8
71
+ // * @param buffer
72
+ // */
73
+ // public static buffer2UTF8String(buffer: ArrayBuffer): string {
74
+ // const encodedString: string = String.fromCharCode.apply(null, new Uint8Array(buffer));
75
+ // // const decodedString: string = decodeURIComponent(escape(atob(encodedString)));
76
+ // return encodedString;
77
+ // }
78
+ /* 将buffer转化成UTF8
79
+ * @param buffer
80
+ */
81
+ StringUtil.buffer2UTF8String = function (buffer) {
82
+ var uint8Array = new Uint8Array(buffer);
83
+ var data = uint8Array.reduce(function (acc, i) { return (acc += String.fromCharCode.apply(null, [i])); }, "");
84
+ return data;
85
+ };
86
+ return StringUtil;
87
+ }());
88
+ exports.StringUtil = StringUtil;
@@ -1,21 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UniqueIDUtil = void 0;
4
- /**
5
- * 唯一ID生成器
6
- * @author Aonaufly
7
- */
8
- var UniqueIDUtil = /** @class */ (function () {
9
- function UniqueIDUtil() {
10
- }
11
- /**生成唯一ID值*/
12
- UniqueIDUtil.getUniqueId = function () {
13
- return new Date().getTime() + Math.random().toString(36).substring(2);
14
- };
15
- /**生成复合的Key值*/
16
- UniqueIDUtil.getCompositeKey = function (key, uniqueId) {
17
- return "".concat(key, "-id:").concat(uniqueId);
18
- };
19
- return UniqueIDUtil;
20
- }());
21
- exports.UniqueIDUtil = UniqueIDUtil;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UniqueIDUtil = void 0;
4
+ /**
5
+ * 唯一ID生成器
6
+ * @author Aonaufly
7
+ */
8
+ var UniqueIDUtil = /** @class */ (function () {
9
+ function UniqueIDUtil() {
10
+ }
11
+ /**生成唯一ID值*/
12
+ UniqueIDUtil.getUniqueId = function () {
13
+ return new Date().getTime() + Math.random().toString(36).substring(2);
14
+ };
15
+ /**生成复合的Key值*/
16
+ UniqueIDUtil.getCompositeKey = function (key, uniqueId) {
17
+ return "".concat(key, "-id:").concat(uniqueId);
18
+ };
19
+ return UniqueIDUtil;
20
+ }());
21
+ exports.UniqueIDUtil = UniqueIDUtil;
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
- "name": "light-h5-core-lib",
3
- "version": "2.7.5",
4
- "description": "light core lib",
5
- "main": "./LightCore.js",
6
- "types": "./type/index.d.ts",
7
- "scripts": {
8
- "test": "echo \"Error: no test specified\" && exit 1"
9
- },
10
- "keywords": [
11
- "core",
12
- "h5",
13
- "lib"
14
- ],
15
- "author": "Aonaufly",
16
- "license": "ISC",
17
- "dependencies": {}
2
+ "name": "light-h5-core-lib",
3
+ "version": "2.8.1",
4
+ "description": "light core lib",
5
+ "main": "./LightCore.js",
6
+ "types": "./type/index.d.ts",
7
+ "scripts": {
8
+ "test": "echo \"Error: no test specified\" && exit 1"
9
+ },
10
+ "keywords": [
11
+ "core",
12
+ "h5",
13
+ "lib"
14
+ ],
15
+ "author": "Aonaufly",
16
+ "license": "ISC",
17
+ "dependencies": {}
18
18
  }
package/pool/PoolObj.js CHANGED
@@ -1,79 +1,79 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PoolObj = void 0;
4
- /**
5
- * 对象池(泛型)
6
- * @author aonaufly
7
- */
8
- var PoolObj = /** @class */ (function () {
9
- /**
10
- * @param cap 容量(容积)
11
- */
12
- function PoolObj(cap) {
13
- if (cap === void 0) { cap = 5; }
14
- this._cap = cap;
15
- this._pool = [];
16
- }
17
- PoolObj.prototype.put = function (obj) {
18
- if (!obj || this._pool.length >= this._cap)
19
- return false;
20
- this._pool.push(obj);
21
- return true;
22
- };
23
- PoolObj.prototype.one = function () {
24
- if (this._pool.length == 0)
25
- return null;
26
- return this._pool.shift();
27
- };
28
- Object.defineProperty(PoolObj.prototype, "cap", {
29
- /**
30
- * 获取容量(容积)
31
- */
32
- get: function () {
33
- return this._cap;
34
- },
35
- enumerable: false,
36
- configurable: true
37
- });
38
- Object.defineProperty(PoolObj.prototype, "size", {
39
- /**
40
- * 获取当前数量(已经保存的元素个数)
41
- */
42
- get: function () {
43
- if (!this._pool)
44
- return 0;
45
- return this._pool.length;
46
- },
47
- enumerable: false,
48
- configurable: true
49
- });
50
- /**
51
- * 清理对象池
52
- */
53
- PoolObj.prototype.clear = function () {
54
- if (!this._pool)
55
- return;
56
- if (this._pool.length == 0)
57
- return;
58
- var obj;
59
- for (var i = 0, j = this._pool.length; i < j; i++) {
60
- obj = this._pool[i];
61
- if (obj.destroy) {
62
- obj.destroy();
63
- }
64
- else if (obj.onDestroy) {
65
- obj.onDestroy();
66
- }
67
- obj = null;
68
- }
69
- this._pool.length = 0;
70
- };
71
- PoolObj.prototype.destroy = function (isCleared) {
72
- if (!isCleared) {
73
- this.clear();
74
- }
75
- this._pool && (this._pool = null);
76
- };
77
- return PoolObj;
78
- }());
79
- exports.PoolObj = PoolObj;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PoolObj = void 0;
4
+ /**
5
+ * 对象池(泛型)
6
+ * @author Aonaufly
7
+ */
8
+ var PoolObj = /** @class */ (function () {
9
+ /**
10
+ * @param cap 容量(容积)
11
+ */
12
+ function PoolObj(cap) {
13
+ if (cap === void 0) { cap = 5; }
14
+ this._cap = cap;
15
+ this._pool = [];
16
+ }
17
+ PoolObj.prototype.put = function (obj) {
18
+ if (!obj || this._pool.length >= this._cap)
19
+ return false;
20
+ this._pool.push(obj);
21
+ return true;
22
+ };
23
+ PoolObj.prototype.one = function () {
24
+ if (this._pool.length == 0)
25
+ return null;
26
+ return this._pool.shift();
27
+ };
28
+ Object.defineProperty(PoolObj.prototype, "cap", {
29
+ /**
30
+ * 获取容量(容积)
31
+ */
32
+ get: function () {
33
+ return this._cap;
34
+ },
35
+ enumerable: false,
36
+ configurable: true
37
+ });
38
+ Object.defineProperty(PoolObj.prototype, "size", {
39
+ /**
40
+ * 获取当前数量(已经保存的元素个数)
41
+ */
42
+ get: function () {
43
+ if (!this._pool)
44
+ return 0;
45
+ return this._pool.length;
46
+ },
47
+ enumerable: false,
48
+ configurable: true
49
+ });
50
+ /**
51
+ * 清理对象池
52
+ */
53
+ PoolObj.prototype.clear = function () {
54
+ if (!this._pool)
55
+ return;
56
+ if (this._pool.length == 0)
57
+ return;
58
+ var obj;
59
+ for (var i = 0, j = this._pool.length; i < j; i++) {
60
+ obj = this._pool[i];
61
+ if (obj.destroy) {
62
+ obj.destroy();
63
+ }
64
+ else if (obj.onDestroy) {
65
+ obj.onDestroy();
66
+ }
67
+ obj = null;
68
+ }
69
+ this._pool.length = 0;
70
+ };
71
+ PoolObj.prototype.destroy = function (isCleared) {
72
+ if (!isCleared) {
73
+ this.clear();
74
+ }
75
+ this._pool && (this._pool = null);
76
+ };
77
+ return PoolObj;
78
+ }());
79
+ exports.PoolObj = PoolObj;