utils-lib-js 2.0.0 → 2.0.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.
Files changed (57) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +1 -1
  3. package/package.json +13 -12
  4. package/rollup.config.js +1 -0
  5. package/dist/bundle/animate.d.ts +0 -25
  6. package/dist/bundle/array.d.ts +0 -10
  7. package/dist/bundle/base.d.ts +0 -15
  8. package/dist/bundle/element.d.ts +0 -6
  9. package/dist/bundle/event.d.ts +0 -14
  10. package/dist/bundle/function.d.ts +0 -12
  11. package/dist/bundle/index.d.ts +0 -64
  12. package/dist/bundle/index.js +0 -1
  13. package/dist/bundle/log.d.ts +0 -8
  14. package/dist/bundle/object.d.ts +0 -32
  15. package/dist/bundle/static.d.ts +0 -16
  16. package/dist/bundle/storage.d.ts +0 -9
  17. package/dist/bundle/types.d.ts +0 -68
  18. package/dist/cjs/animate.d.ts +0 -25
  19. package/dist/cjs/array.d.ts +0 -10
  20. package/dist/cjs/base.d.ts +0 -15
  21. package/dist/cjs/element.d.ts +0 -6
  22. package/dist/cjs/event.d.ts +0 -14
  23. package/dist/cjs/function.d.ts +0 -12
  24. package/dist/cjs/index.d.ts +0 -64
  25. package/dist/cjs/index.js +0 -917
  26. package/dist/cjs/log.d.ts +0 -8
  27. package/dist/cjs/object.d.ts +0 -32
  28. package/dist/cjs/package.json +0 -3
  29. package/dist/cjs/static.d.ts +0 -16
  30. package/dist/cjs/storage.d.ts +0 -9
  31. package/dist/cjs/types.d.ts +0 -68
  32. package/dist/esm/animate.d.ts +0 -25
  33. package/dist/esm/array.d.ts +0 -10
  34. package/dist/esm/base.d.ts +0 -15
  35. package/dist/esm/element.d.ts +0 -6
  36. package/dist/esm/event.d.ts +0 -14
  37. package/dist/esm/function.d.ts +0 -12
  38. package/dist/esm/index.d.ts +0 -64
  39. package/dist/esm/index.js +0 -865
  40. package/dist/esm/log.d.ts +0 -8
  41. package/dist/esm/object.d.ts +0 -32
  42. package/dist/esm/static.d.ts +0 -16
  43. package/dist/esm/storage.d.ts +0 -9
  44. package/dist/esm/types.d.ts +0 -68
  45. package/dist/umd/animate.d.ts +0 -25
  46. package/dist/umd/array.d.ts +0 -10
  47. package/dist/umd/base.d.ts +0 -15
  48. package/dist/umd/element.d.ts +0 -6
  49. package/dist/umd/event.d.ts +0 -14
  50. package/dist/umd/function.d.ts +0 -12
  51. package/dist/umd/index.d.ts +0 -64
  52. package/dist/umd/index.js +0 -923
  53. package/dist/umd/log.d.ts +0 -8
  54. package/dist/umd/object.d.ts +0 -32
  55. package/dist/umd/static.d.ts +0 -16
  56. package/dist/umd/storage.d.ts +0 -9
  57. package/dist/umd/types.d.ts +0 -68
package/dist/esm/index.js DELETED
@@ -1,865 +0,0 @@
1
- /******************************************************************************
2
- Copyright (c) Microsoft Corporation.
3
-
4
- Permission to use, copy, modify, and/or distribute this software for any
5
- purpose with or without fee is hereby granted.
6
-
7
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
9
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
11
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
- PERFORMANCE OF THIS SOFTWARE.
14
- ***************************************************************************** */
15
-
16
- var __assign$1 = function() {
17
- __assign$1 = Object.assign || function __assign(t) {
18
- for (var s, i = 1, n = arguments.length; i < n; i++) {
19
- s = arguments[i];
20
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
21
- }
22
- return t;
23
- };
24
- return __assign$1.apply(this, arguments);
25
- };
26
-
27
- function __spreadArray(to, from, pack) {
28
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
29
- if (ar || !(i in from)) {
30
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
31
- ar[i] = from[i];
32
- }
33
- }
34
- return to.concat(ar || Array.prototype.slice.call(from));
35
- }
36
-
37
- var types;
38
- (function (types) {
39
- types["[object Array]"] = "array";
40
- types["[object Object]"] = "object";
41
- types["[object Function]"] = "function";
42
- types["[object Set]"] = "set";
43
- types["[object Map]"] = "map";
44
- types["[object WeakMap]"] = "weakMap";
45
- types["[object WeakSet]"] = "weakSet";
46
- types["[object Date]"] = "date";
47
- types["[object RegExp]"] = "regExp";
48
- types["[object Math]"] = "math";
49
- })(types || (types = {}));
50
- var __static = { types: types };
51
-
52
- var randomNum = function (min, max, bool) {
53
- if (bool === void 0) { bool = false; }
54
- return Math.floor(Math.random() * (max - min + (bool ? 1 : 0)) + min);
55
- };
56
- var urlSplit = function (url) {
57
- var result = {};
58
- if (!url.includes("?")) {
59
- return result;
60
- }
61
- var params = url.split("?")[1].split("&");
62
- params.forEach(function (i) {
63
- var key = i.split("=")[0];
64
- result[key] = i.split("=")[1];
65
- });
66
- return result;
67
- };
68
- var urlJoin = function (url, query) {
69
- if (query === void 0) { query = {}; }
70
- var queryObject = Object.keys(query);
71
- if (queryObject.length === 0)
72
- return url;
73
- var params = queryObject.map(function (i) { return "".concat(i, "=").concat(query[i]); });
74
- return "".concat(url).concat(url.includes("?") ? "&" : '?').concat(params.join("&"));
75
- };
76
- var getType = function (data) {
77
- var type = typeof data;
78
- if (data === null) {
79
- return "null";
80
- }
81
- else if (type === "object") {
82
- var key = Object.prototype.toString.call(data);
83
- return types[key];
84
- }
85
- return type;
86
- };
87
- var getTypeByList = function (data, whiteList) {
88
- if (whiteList === void 0) { whiteList = []; }
89
- var __type = getType(data);
90
- return whiteList.indexOf(__type) > 0;
91
- };
92
- var base = {
93
- randomNum: randomNum,
94
- urlSplit: urlSplit,
95
- urlJoin: urlJoin,
96
- getType: getType,
97
- getTypeByList: getTypeByList,
98
- };
99
-
100
- var getValue = function (object, key, defaultValue) {
101
- if (defaultValue === void 0) { defaultValue = ''; }
102
- var paths = key.split('.');
103
- for (var _i = 0, paths_1 = paths; _i < paths_1.length; _i++) {
104
- var i = paths_1[_i];
105
- object = object[i];
106
- if (object === undefined) {
107
- return defaultValue;
108
- }
109
- }
110
- return object;
111
- };
112
- var setValue = function (object, key, value) {
113
- if (value === void 0) { value = {}; }
114
- var paths = key.split('.');
115
- var last = paths[paths.length - 1];
116
- var _object = object;
117
- for (var _i = 0, paths_2 = paths; _i < paths_2.length; _i++) {
118
- var i = paths_2[_i];
119
- if (typeof _object !== "object" && _object !== undefined) {
120
- return object;
121
- }
122
- !_object && (_object = {});
123
- !_object[i] && (_object[i] = {});
124
- last === i && (_object[last] = value);
125
- _object = _object[i];
126
- }
127
- return object;
128
- };
129
- var mixIn = function (target, source, overwrite) {
130
- var _a;
131
- if (source === void 0) { source = {}; }
132
- if (overwrite === void 0) { overwrite = false; }
133
- for (var k in source) {
134
- for (var key in source[k]) {
135
- var proto = (_a = target.prototype) !== null && _a !== void 0 ? _a : target;
136
- if (target[key] === undefined || overwrite) {
137
- proto[key] = source[k][key];
138
- }
139
- }
140
- }
141
- return target;
142
- };
143
- var enumInversion = function (target) {
144
- for (var key in target) {
145
- var _key = target[key];
146
- if (typeof _key === "string" && !!!target[_key]) {
147
- target[_key] = key;
148
- }
149
- }
150
- return target;
151
- };
152
- var isNotObject = function (source, type) { return (typeof source !== "object" || type === 'null'); };
153
- var cloneDeep = function (target) {
154
- var __type = getType(target);
155
- if (isNotObject(target, __type))
156
- return target;
157
- var __init = createObjectVariable(__type, target);
158
- if (__type === "map") {
159
- target.forEach(function (value, key) {
160
- __init.set(key, cloneDeep(value));
161
- });
162
- }
163
- else if (__type === "set") {
164
- target.forEach(function (value) {
165
- __init.add(cloneDeep(value));
166
- });
167
- }
168
- else {
169
- Reflect.ownKeys(target).forEach(function (keys) {
170
- var desc = target[keys];
171
- __init[keys] = cloneDeep(desc);
172
- });
173
- }
174
- return __init;
175
- };
176
- var createObjectVariable = function (type, source) {
177
- if (source === void 0) { source = {}; }
178
- switch (type) {
179
- case "array":
180
- return [];
181
- case "function":
182
- return source;
183
- case "set":
184
- return new Set();
185
- case "map":
186
- return new Map();
187
- case "date":
188
- return new Date(source);
189
- case "regExp":
190
- return new RegExp(source);
191
- case "math":
192
- return Math;
193
- default:
194
- return {};
195
- }
196
- };
197
- var createObject = function (source) {
198
- function F() { }
199
- F.prototype = source;
200
- return new F();
201
- };
202
- var inherit = function (source, target) {
203
- if (target === void 0) { target = function () { }; }
204
- target.prototype = createObject(source.prototype);
205
- target.prototype.super = source;
206
- target.prototype.constructor = target;
207
- return target;
208
- };
209
- var getInstance = function (classProto, overwrite) {
210
- if (overwrite === void 0) { overwrite = false; }
211
- var params = [];
212
- for (var _i = 2; _i < arguments.length; _i++) {
213
- params[_i - 2] = arguments[_i];
214
- }
215
- if (!classProto._instance || overwrite) {
216
- classProto._instance = new (classProto.bind.apply(classProto, __spreadArray([void 0], params, false)))();
217
- }
218
- return classProto._instance;
219
- };
220
- var classDecorator = function (params) {
221
- return function (target) {
222
- for (var key in params) {
223
- if (!!!Reflect.has(target.prototype, key)) {
224
- target.prototype[key] = params[key];
225
- }
226
- }
227
- };
228
- };
229
- var stringToJson = function (target) {
230
- if (getType(target) !== "string")
231
- return null;
232
- try {
233
- return JSON.parse(target);
234
- }
235
- catch (error) {
236
- return null;
237
- }
238
- };
239
- var jsonToString = function (target) {
240
- if (!getTypeByList(target, ["array", "object", "set", "map"]))
241
- return "";
242
- try {
243
- return JSON.stringify(target);
244
- }
245
- catch (error) {
246
- return "";
247
- }
248
- };
249
- var isWindow = function (win) {
250
- return win && win === win.window;
251
- };
252
- var object = {
253
- getValue: getValue,
254
- setValue: setValue,
255
- mixIn: mixIn,
256
- enumInversion: enumInversion,
257
- isNotObject: isNotObject,
258
- cloneDeep: cloneDeep,
259
- createObjectVariable: createObjectVariable,
260
- createObject: createObject,
261
- inherit: inherit,
262
- getInstance: getInstance,
263
- classDecorator: classDecorator,
264
- stringToJson: stringToJson,
265
- jsonToString: jsonToString,
266
- isWindow: isWindow,
267
- };
268
-
269
- var arrayRandom = function (arr) { return arr.sort(function () { return Math.random() - 0.5; }); };
270
- var arrayUniq = function (arr) { return Array.from(new Set(arr)); };
271
- var arrayDemote = function (arr, result) {
272
- if (result === void 0) { result = []; }
273
- arr.forEach(function (i) { return getType(i) === "array" ? arrayDemote(i, result) : result.push(i); });
274
- return result;
275
- };
276
- var array = {
277
- arrayRandom: arrayRandom,
278
- arrayUniq: arrayUniq,
279
- arrayDemote: arrayDemote
280
- };
281
-
282
- var _this = undefined;
283
- var throttle = function (fn, time) {
284
- var _timer = null;
285
- return function () {
286
- var args = [];
287
- for (var _i = 0; _i < arguments.length; _i++) {
288
- args[_i] = arguments[_i];
289
- }
290
- if (_timer)
291
- return;
292
- _timer = setTimeout(function () {
293
- fn.call.apply(fn, __spreadArray([_this], args, false));
294
- _timer = null;
295
- }, time);
296
- };
297
- };
298
- var debounce = function (fn, time) {
299
- var _timer = null;
300
- return function () {
301
- var args = [];
302
- for (var _i = 0; _i < arguments.length; _i++) {
303
- args[_i] = arguments[_i];
304
- }
305
- if (_timer) {
306
- clearTimeout(_timer);
307
- _timer = null;
308
- }
309
- _timer = setTimeout(function () {
310
- fn.call.apply(fn, __spreadArray([_this], args, false));
311
- }, time);
312
- };
313
- };
314
- var defer = function (timer) {
315
- if (timer === void 0) { timer = 0; }
316
- var resolve, reject;
317
- if (timer > 0)
318
- setTimeout(reject, timer);
319
- return {
320
- promise: new Promise(function (_resolve, _reject) {
321
- resolve = _resolve;
322
- reject = _reject;
323
- }),
324
- resolve: resolve,
325
- reject: reject
326
- };
327
- };
328
- var catchAwait = function (defer) { return defer.then(function (res) { return [null, res]; }).catch(function (err) { return [err]; }); };
329
- var __function = {
330
- throttle: throttle,
331
- debounce: debounce,
332
- defer: defer,
333
- catchAwait: catchAwait,
334
- };
335
-
336
- var createElement = function (_a) {
337
- var _b, _c;
338
- var ele = _a.ele, style = _a.style, attr = _a.attr, parent = _a.parent;
339
- var element = ele instanceof HTMLElement ? ele : document.createElement(ele !== null && ele !== void 0 ? ele : 'div');
340
- style && ((_b = Object.keys(style)) === null || _b === void 0 ? void 0 : _b.forEach(function (key) { return element.style[key] = style[key]; }));
341
- attr && ((_c = Object.keys(attr)) === null || _c === void 0 ? void 0 : _c.forEach(function (key) { return element[key] = attr[key]; }));
342
- parent && parent.appendChild(element);
343
- return element;
344
- };
345
- var element = {
346
- createElement: createElement
347
- };
348
-
349
- var addHandler = function (ele, type, handler) {
350
- if (ele.addEventListener) {
351
- ele.addEventListener(type, handler, false);
352
- }
353
- else {
354
- ele["on" + type] = handler;
355
- }
356
- };
357
- var stopBubble = function (event) {
358
- event = event || window.event;
359
- if (event.stopPropagation) {
360
- event.stopPropagation();
361
- }
362
- else {
363
- event.cancelBubble = false;
364
- }
365
- };
366
- var stopDefault = function (event) {
367
- event = event || window.event;
368
- if (event.preventDefault) {
369
- event.preventDefault();
370
- }
371
- else {
372
- event.returnValue = false;
373
- }
374
- };
375
- var removeHandler = function (ele, type, handler) {
376
- if (ele.removeEventListener) {
377
- ele.removeEventListener(type, handler, false);
378
- }
379
- else {
380
- ele["on" + type] = null;
381
- }
382
- };
383
- var dispatchEvent = function (ele, data) {
384
- var evts = new Event(data);
385
- ele.dispatchEvent(evts);
386
- };
387
- var event = {
388
- addHandler: addHandler,
389
- stopBubble: stopBubble,
390
- stopDefault: stopDefault,
391
- removeHandler: removeHandler,
392
- dispatchEvent: dispatchEvent,
393
- };
394
-
395
- var setStorage = function (key, val) {
396
- try {
397
- localStorage.setItem(key, JSON.stringify(val));
398
- }
399
- catch (error) {
400
- console.error(error);
401
- }
402
- };
403
- var getStorage = function (key) {
404
- try {
405
- var str = localStorage.getItem(key);
406
- if (str === null || str === undefined) {
407
- return null;
408
- }
409
- return JSON.parse(str);
410
- }
411
- catch (error) {
412
- console.error(error);
413
- return null;
414
- }
415
- };
416
- var clearStorage = function (key) {
417
- try {
418
- key && localStorage.removeItem(key);
419
- !key && localStorage.clear();
420
- }
421
- catch (error) {
422
- console.error(error);
423
- }
424
- };
425
- var storage = {
426
- setStorage: setStorage,
427
- getStorage: getStorage,
428
- clearStorage: clearStorage
429
- };
430
-
431
- var logOneLine = function (str, overwrite, warp) {
432
- if (overwrite === void 0) { overwrite = false; }
433
- if (warp === void 0) { warp = true; }
434
- if (overwrite) {
435
- process.stdout.clearLine(0);
436
- process.stdout.cursorTo(0);
437
- }
438
- process.stdout.write(str);
439
- warp && process.stdout.write("\n");
440
- };
441
- var renderLoop = function (str) { return logOneLine(str, true, false); };
442
- var defaultLoopList = ["\\", "|", "/", "\u2014", "\u2014"];
443
- var logLoop = function (opts) {
444
- var _a;
445
- if (opts === void 0) { opts = {}; }
446
- var _b = opts.loopList, loopList = _b === void 0 ? defaultLoopList : _b, _c = opts.isStop, isStop = _c === void 0 ? false : _c, _d = opts.timer, timer = _d === void 0 ? 100 : _d;
447
- var _e = opts.index, index = _e === void 0 ? 0 : _e;
448
- var len = (_a = loopList === null || loopList === void 0 ? void 0 : loopList.length) !== null && _a !== void 0 ? _a : 0;
449
- if (!!!len)
450
- return opts;
451
- if (isStop)
452
- return renderLoop("\n");
453
- if (index >= len - 1)
454
- index = 0;
455
- var str = loopList[index++];
456
- renderLoop(str);
457
- setTimeout(function () {
458
- opts.index = index;
459
- logLoop(opts);
460
- }, timer);
461
- return opts;
462
- };
463
- var log = {
464
- logOneLine: logOneLine,
465
- logLoop: logLoop
466
- };
467
-
468
- var AnimateFrame = (function () {
469
- function AnimateFrame(fn) {
470
- this.fn = fn;
471
- this.id = null;
472
- this.duration = Infinity;
473
- this.isActive = false;
474
- }
475
- AnimateFrame.prototype.start = function (duration) {
476
- if (this.isActive)
477
- return;
478
- this.duration = duration !== null && duration !== void 0 ? duration : Infinity;
479
- this.isActive = true;
480
- this.animate();
481
- };
482
- AnimateFrame.prototype.stop = function () {
483
- this.isActive = false;
484
- cancelAnimationFrame(this.id);
485
- };
486
- AnimateFrame.prototype.animate = function (timer) {
487
- if (timer === void 0) { timer = 0; }
488
- if (this.isActive && this.duration-- > 0) {
489
- this.fn(timer);
490
- this.id = requestAnimationFrame(this.animate.bind(this));
491
- }
492
- };
493
- return AnimateFrame;
494
- }());
495
- function quadraticBezier(_x, _y, t) {
496
- var mt = 1 - t;
497
- var t2 = t * t;
498
- var x = 2 * mt * t * _x + t2;
499
- var y = 2 * mt * t * _y + t2;
500
- return [x, y];
501
- }
502
- function cubicBezier(_x1, _y1, _x2, _y2, t) {
503
- var cx = 3 * _x1;
504
- var cy = 3 * _y1;
505
- var bx = 3 * (_x2 - _x1) - cx;
506
- var by = 3 * (_y2 - _y1) - cy;
507
- var ax = 1 - cx - bx;
508
- var ay = 1 - cy - by;
509
- var x = ax * Math.pow(t, 3) + bx * Math.pow(t, 2) + cx * t;
510
- var y = ay * Math.pow(t, 3) + by * Math.pow(t, 2) + cy * t;
511
- return [x, y];
512
- }
513
- function factorial(n) {
514
- if (n === 0 || n === 1) {
515
- return 1;
516
- }
517
- return n * factorial(n - 1);
518
- }
519
- function combination(n, k) {
520
- return factorial(n) / (factorial(k) * factorial(n - k));
521
- }
522
- function NBezier(points, t) {
523
- var n = points.length - 1;
524
- var result = [0, 0];
525
- for (var i = 0; i <= n; i++) {
526
- var coefficient = combination(n, i) * Math.pow(1 - t, n - i) * Math.pow(t, i);
527
- result[0] += coefficient * points[i][0];
528
- result[1] += coefficient * points[i][1];
529
- }
530
- return result;
531
- }
532
- var animate = {
533
- AnimateFrame: AnimateFrame,
534
- quadraticBezier: quadraticBezier,
535
- cubicBezier: cubicBezier,
536
- factorial: factorial,
537
- combination: combination,
538
- NBezier: NBezier,
539
- };
540
-
541
- var MessageCenter = (function () {
542
- function MessageCenter(options) {
543
- if (options === void 0) { options = {}; }
544
- this.options = options;
545
- this.events = {};
546
- }
547
- MessageCenter.prototype.on = function (type, handler) {
548
- this.checkHandler(type, handler);
549
- var fns = this.getHandler(type, []);
550
- fns.push(handler);
551
- return this;
552
- };
553
- MessageCenter.prototype.emit = function (type, data) {
554
- if (this.has(type)) {
555
- this.runHandler(type, data);
556
- }
557
- return this;
558
- };
559
- MessageCenter.prototype.un = function (type, handler) {
560
- this.unHandler(type, handler);
561
- return this;
562
- };
563
- MessageCenter.prototype.once = function (type, handler) {
564
- var _this = this;
565
- this.checkHandler(type, handler);
566
- var fn = function () {
567
- var args = [];
568
- for (var _i = 0; _i < arguments.length; _i++) {
569
- args[_i] = arguments[_i];
570
- }
571
- _this.un(type, fn);
572
- return handler.apply(void 0, args);
573
- };
574
- this.on(type, fn);
575
- return this;
576
- };
577
- MessageCenter.prototype.clear = function () {
578
- this.events = {};
579
- return this;
580
- };
581
- MessageCenter.prototype.has = function (type) {
582
- return !!this.getHandler(type);
583
- };
584
- MessageCenter.prototype.getHandler = function (type, defaultVal) {
585
- var _a;
586
- typeof defaultVal === "object" && (this.events[type] = (_a = this.events[type]) !== null && _a !== void 0 ? _a : defaultVal);
587
- return this.events[type];
588
- };
589
- MessageCenter.prototype.handlerLength = function (type) {
590
- var _a, _b;
591
- return (_b = (_a = this.getHandler(type)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
592
- };
593
- MessageCenter.prototype.watch = function (type, handler) {
594
- var _this = this;
595
- this.checkHandler(type, handler);
596
- var fn = function () {
597
- var args = [];
598
- for (var _i = 0; _i < arguments.length; _i++) {
599
- args[_i] = arguments[_i];
600
- }
601
- _this.emit(_this.prefixStr(type), handler.apply(void 0, args));
602
- };
603
- this.on(type, fn);
604
- return this;
605
- };
606
- MessageCenter.prototype.invoke = function (type, data) {
607
- var _this = this;
608
- return new Promise(function (resolve) {
609
- _this.once(_this.prefixStr(type), resolve);
610
- _this.emit(type, data);
611
- });
612
- };
613
- MessageCenter.prototype.runHandler = function (type, data) {
614
- var _fns = this.getHandler(type);
615
- for (var _i = 0, _fns_1 = _fns; _i < _fns_1.length; _i++) {
616
- var fn = _fns_1[_i];
617
- fn && fn(data);
618
- }
619
- };
620
- MessageCenter.prototype.unHandler = function (type, handler) {
621
- var _fns = this.getHandler(type);
622
- !handler && (this.events[type] = []);
623
- handler && this.checkHandler(type, handler);
624
- for (var i = 0; i < _fns.length; i++) {
625
- if (_fns && _fns[i] === handler) {
626
- _fns[i] = null;
627
- }
628
- }
629
- };
630
- MessageCenter.prototype.prefixStr = function (str) {
631
- return "@".concat(str);
632
- };
633
- MessageCenter.prototype.checkHandler = function (type, handler) {
634
- var _a = this.options, _b = _a.blackList, blackList = _b === void 0 ? [] : _b, _c = _a.maxLen, maxLen = _c === void 0 ? Infinity : _c;
635
- var len = this.handlerLength(type);
636
- if ((type === null || type === void 0 ? void 0 : type.length) === 0) {
637
- throw new Error('type.length can not be 0');
638
- }
639
- if (!handler || !type) {
640
- throw new ReferenceError('type or handler is not defined');
641
- }
642
- if (typeof handler !== 'function' || typeof type !== 'string') {
643
- throw new TypeError("".concat(handler, " is not a function or ").concat(type, " is not a string"));
644
- }
645
- if (blackList.includes(type)) {
646
- throw new Error("".concat(type, " is not allow"));
647
- }
648
- if (maxLen <= len) {
649
- throw new Error("the number of ".concat(type, " must be less than ").concat(maxLen));
650
- }
651
- };
652
- MessageCenter.Instance = function (Fn) {
653
- if (!Fn._instance) {
654
- Object.defineProperty(Fn, "_instance", {
655
- value: new Fn()
656
- });
657
- }
658
- return Fn._instance;
659
- };
660
- return MessageCenter;
661
- }());
662
- var messageCenter = MessageCenter.Instance(MessageCenter);
663
- var decoratorMessageCenter = function (target) {
664
- if (!target.prototype.messageCenter) {
665
- target.prototype.messageCenter = new MessageCenter();
666
- }
667
- return target;
668
- };
669
-
670
- var __assign = (undefined && undefined.__assign) || function () {
671
- __assign = Object.assign || function(t) {
672
- for (var s, i = 1, n = arguments.length; i < n; i++) {
673
- s = arguments[i];
674
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
675
- t[p] = s[p];
676
- }
677
- return t;
678
- };
679
- return __assign.apply(this, arguments);
680
- };
681
- var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
682
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
683
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
684
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
685
- return c > 3 && r && Object.defineProperty(target, key, r), r;
686
- };
687
- var __metadata = (undefined && undefined.__metadata) || function (k, v) {
688
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
689
- };
690
- var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
691
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
692
- return new (P || (P = Promise))(function (resolve, reject) {
693
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
694
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
695
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
696
- step((generator = generator.apply(thisArg, _arguments || [])).next());
697
- });
698
- };
699
- var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
700
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
701
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
702
- function verb(n) { return function (v) { return step([n, v]); }; }
703
- function step(op) {
704
- if (f) throw new TypeError("Generator is already executing.");
705
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
706
- 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;
707
- if (y = 0, t) op = [op[0] & 2, t.value];
708
- switch (op[0]) {
709
- case 0: case 1: t = op; break;
710
- case 4: _.label++; return { value: op[1], done: false };
711
- case 5: _.label++; y = op[1]; op = [0]; continue;
712
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
713
- default:
714
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
715
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
716
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
717
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
718
- if (t[2]) _.ops.pop();
719
- _.trys.pop(); continue;
720
- }
721
- op = body.call(thisArg, _);
722
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
723
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
724
- }
725
- };
726
- var TaskQueue = (function () {
727
- function TaskQueue(props) {
728
- var _this = this;
729
- this.fix = "@~&$";
730
- this.init = function () {
731
- _this.messageCenter.on("push:handler", _this.run);
732
- _this.messageCenter.on("run:success:handler", _this.run);
733
- _this.messageCenter.on("run:success:handler", _this.finish);
734
- _this.messageCenter.on("run:error:handler", _this.run);
735
- _this.messageCenter.on("run:error:handler", _this.finish);
736
- };
737
- this.defineProps = function (props, key) {
738
- Object.defineProperty(_this, key, { value: props });
739
- };
740
- this.push = function (queue) {
741
- var _a;
742
- _this.checkHandler(queue);
743
- var resolve = (_a = _this.defer(), _a.resolve), reject = _a.reject, promise = _a.promise;
744
- var queueName = _this.fixStr(queue.name);
745
- _this.queues = _this.queues.concat(queue.children.map(function (defer) { return ({ defer: defer, name: queueName }); }));
746
- _this.queueTemp[queueName] = __assign(__assign({}, queue), { result: [] });
747
- _this.messageCenter.emit("push:handler", reject);
748
- _this.messageCenter.on(queueName, resolve);
749
- return promise;
750
- };
751
- this.unshift = function (length) {
752
- return _this.queues.splice(0, length);
753
- };
754
- this.run = function (_a) {
755
- var reject = _a.reject;
756
- return __awaiter(_this, void 0, void 0, function () {
757
- var queues, res, error_1;
758
- var _b, _c;
759
- return __generator(this, function (_d) {
760
- switch (_d.label) {
761
- case 0:
762
- if (this.stateProxy() === 'pending')
763
- return [2, void 0];
764
- if (this.queues.length === 0)
765
- return [2, this.stateProxy("idle")];
766
- this.stateProxy("pending");
767
- queues = this.unshift((_c = (_b = this.props) === null || _b === void 0 ? void 0 : _b.maxLen) !== null && _c !== void 0 ? _c : 10);
768
- _d.label = 1;
769
- case 1:
770
- _d.trys.push([1, 3, , 4]);
771
- return [4, Promise.all(queues.map(function (item, i) { return item.defer().catch(function (error) { return error; }); }))];
772
- case 2:
773
- res = _d.sent();
774
- return [2, this.handlerSuccess({ res: res, queues: queues })];
775
- case 3:
776
- error_1 = _d.sent();
777
- return [2, this.handlerError({ reject: reject, error: error_1, queues: queues })];
778
- case 4: return [2];
779
- }
780
- });
781
- });
782
- };
783
- this.clear = function () {
784
- _this.queues = [];
785
- _this.queueTemp = {};
786
- _this.props = null;
787
- _this.stateProxy("idle");
788
- _this.messageCenter.clear();
789
- };
790
- this.finish = function (_a) {
791
- var _b = _a.res, res = _b === void 0 ? [] : _b, queues = _a.queues, _c = _a.error, error = _c === void 0 ? 'err' : _c;
792
- var queueTemp = _this.queueTemp;
793
- queues.forEach(function (it, i) {
794
- var _a, _b, _c;
795
- var item = queueTemp[it.name];
796
- item === null || item === void 0 ? void 0 : item.result.push((_a = res[i]) !== null && _a !== void 0 ? _a : error);
797
- if (((_b = item === null || item === void 0 ? void 0 : item.result) === null || _b === void 0 ? void 0 : _b.length) === ((_c = item === null || item === void 0 ? void 0 : item.children) === null || _c === void 0 ? void 0 : _c.length)) {
798
- _this.messageCenter.emit(it.name, item === null || item === void 0 ? void 0 : item.result);
799
- queueTemp[it.name] = null;
800
- }
801
- });
802
- };
803
- this.handlerSuccess = function (data) {
804
- _this.stateProxy("fulfilled");
805
- return _this.messageCenter.emit("run:success:handler", data);
806
- };
807
- this.handlerError = function (data) {
808
- var reject = data.reject, error = data.error;
809
- _this.stateProxy("rejected");
810
- reject && typeof reject === "function" && reject(error);
811
- return _this.messageCenter.emit("run:error:handler", data);
812
- };
813
- this.stateProxy = function (state) {
814
- state && (_this.state = state);
815
- return _this.state;
816
- };
817
- this.defer = function () {
818
- var resolve, reject;
819
- return {
820
- promise: new Promise(function (_resolve, _reject) {
821
- resolve = _resolve;
822
- reject = _reject;
823
- }),
824
- resolve: resolve,
825
- reject: reject
826
- };
827
- };
828
- this.clear();
829
- props && this.defineProps(props, "props");
830
- this.init();
831
- }
832
- TaskQueue.prototype.checkHandler = function (queue) {
833
- var _a, _b;
834
- if (!queue) {
835
- throw new ReferenceError('queue is not defined');
836
- }
837
- if (!(queue.children instanceof Array) || typeof queue !== "object") {
838
- throw new TypeError("queue should be an object and queue.children should be an array");
839
- }
840
- var noFn = function (i) { return !i || typeof i !== "function"; };
841
- if (((_a = queue.children) === null || _a === void 0 ? void 0 : _a.length) === 0)
842
- throw new Error('queue.children.length can not be 0');
843
- if ((_b = queue.children) === null || _b === void 0 ? void 0 : _b.find(function (i) { return noFn(i); }))
844
- throw new Error('queueList should have defer');
845
- };
846
- TaskQueue.prototype.fixStr = function (str) {
847
- return "".concat(this.fix).concat(str);
848
- };
849
- TaskQueue = __decorate([
850
- decoratorMessageCenter,
851
- __metadata("design:paramtypes", [Object])
852
- ], TaskQueue);
853
- return TaskQueue;
854
- }());
855
- var decoratorTaskQueue = function (opts) {
856
- return function (target) {
857
- if (!target.prototype.taskQueue) {
858
- target.prototype.taskQueue = new TaskQueue(opts);
859
- }
860
- };
861
- };
862
-
863
- var index = __assign$1(__assign$1(__assign$1(__assign$1(__assign$1(__assign$1(__assign$1(__assign$1(__assign$1(__assign$1(__assign$1({}, object), base), array), __function), element), __static), event), storage), log), animate), { eventMessageCenter: MessageCenter, taskQueueLib: TaskQueue });
864
-
865
- export { AnimateFrame, MessageCenter, NBezier, TaskQueue, addHandler, arrayDemote, arrayRandom, arrayUniq, catchAwait, classDecorator, clearStorage, cloneDeep, combination, createElement, createObject, createObjectVariable, cubicBezier, debounce, decoratorMessageCenter, decoratorTaskQueue, index as default, defer, dispatchEvent, enumInversion, factorial, getInstance, getStorage, getType, getTypeByList, getValue, inherit, isNotObject, isWindow, jsonToString, logLoop, logOneLine, messageCenter, mixIn, quadraticBezier, randomNum, removeHandler, setStorage, setValue, stopBubble, stopDefault, stringToJson, throttle, types, urlJoin, urlSplit };