mazey 3.3.0 → 3.3.2
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/README.md +28 -24
- package/examples/index.ts +18 -0
- package/lib/index.d.ts +12 -3
- package/lib/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +12 -3
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
English | [简体中文](
|
|
1
|
+
English | [简体中文](https://github.com/mazeyqian/mazey/blob/master/README_CN.md)
|
|
2
2
|
|
|
3
3
|
# mazey
|
|
4
4
|
|
|
@@ -10,7 +10,7 @@ English | [简体中文](./README_CN.md)
|
|
|
10
10
|
[l-image]: https://img.shields.io/npm/l/mazey
|
|
11
11
|
[l-url]: https://github.com/mazeyqian/mazey
|
|
12
12
|
|
|
13
|
-
Mazey's functional library for daily front-end work. There are already many excellent libraries for front-end development, but
|
|
13
|
+
Mazey's functional library for daily front-end work. There are already many excellent libraries for front-end development, but creating a file named `utils.js` or `common.js` is generally used to supply common functions in projects. It's boring to copy similar functions among projects again and again. To save time, I will consistently update the library during my worklife.
|
|
14
14
|
|
|
15
15
|
## Install
|
|
16
16
|
|
|
@@ -30,9 +30,7 @@ Of course, you can also download this file and serve it yourself.
|
|
|
30
30
|
|
|
31
31
|
## Usage
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
#### Load JavaScript
|
|
33
|
+
Example: Use a function to load JavaScript script.
|
|
36
34
|
|
|
37
35
|
Import from [npm](https://www.npmjs.com/package/mazey).
|
|
38
36
|
|
|
@@ -40,21 +38,21 @@ Import from [npm](https://www.npmjs.com/package/mazey).
|
|
|
40
38
|
import { loadScript } from 'mazey';
|
|
41
39
|
|
|
42
40
|
loadScript(
|
|
43
|
-
'http://example.com/js/plugin
|
|
41
|
+
'http://example.com/static/js/plugin-2.1.1.min.js',
|
|
44
42
|
{
|
|
45
|
-
id: 'iamid', // Optional
|
|
46
|
-
timeout: 5000, // Optional
|
|
47
|
-
isDefer: false, // Optional
|
|
43
|
+
id: 'iamid', // (Optional) script ID, default none
|
|
44
|
+
timeout: 5000, // (Optional) timeout, default `5000`
|
|
45
|
+
isDefer: false, // (Optional) defer, default `false`
|
|
48
46
|
}
|
|
49
47
|
)
|
|
50
48
|
.then(
|
|
51
49
|
res => {
|
|
52
|
-
console.log(`Load JavaScript
|
|
50
|
+
console.log(`Load JavaScript script: ${res}`);
|
|
53
51
|
}
|
|
54
52
|
)
|
|
55
53
|
.catch(
|
|
56
54
|
err => {
|
|
57
|
-
console.error(`Load JavaScript
|
|
55
|
+
console.error(`Load JavaScript script: ${err.message}`)
|
|
58
56
|
}
|
|
59
57
|
);
|
|
60
58
|
```
|
|
@@ -65,26 +63,31 @@ Import from CDN.
|
|
|
65
63
|
<script type="text/javascript" src="//i.mazey.net/mazey/lib/mazey.min.js"></script>
|
|
66
64
|
<script>
|
|
67
65
|
mazey.loadScript(
|
|
68
|
-
'http://example.com/js/plugin
|
|
66
|
+
'http://example.com/static/js/plugin-2.1.1.min.js',
|
|
69
67
|
{
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
isDefer: false, // Optional, defer, default `false`
|
|
68
|
+
timeout: 3000, // (Optional) timeout, default `5000`
|
|
69
|
+
isDefer: true, // (Optional) defer, default `false`
|
|
73
70
|
}
|
|
74
71
|
)
|
|
75
72
|
.then(
|
|
76
73
|
res => {
|
|
77
|
-
console.log(`Load JavaScript
|
|
74
|
+
console.log(`Load JavaScript script: ${res}`);
|
|
78
75
|
}
|
|
79
76
|
)
|
|
80
77
|
.catch(
|
|
81
78
|
err => {
|
|
82
|
-
console.error(`Load JavaScript
|
|
79
|
+
console.error(`Load JavaScript script: ${err.message}`)
|
|
83
80
|
}
|
|
84
81
|
);
|
|
85
82
|
</script>
|
|
86
83
|
```
|
|
87
84
|
|
|
85
|
+
## API Examples
|
|
86
|
+
|
|
87
|
+
There ara some usage cases maintained by hand below. For more latest information, please check the [documentation](https://i.mazey.net/mazey/docs/modules/_index_.html).
|
|
88
|
+
|
|
89
|
+
### Load Resource
|
|
90
|
+
|
|
88
91
|
#### Load CSS
|
|
89
92
|
|
|
90
93
|
```
|
|
@@ -132,7 +135,7 @@ import { debounce } from 'mazey';
|
|
|
132
135
|
|
|
133
136
|
const foo = debounce(() => {
|
|
134
137
|
console.log('The debounced function will only be invoked in 1000 milliseconds, the other invoking will disappear during the wait time.');
|
|
135
|
-
}, 1000,
|
|
138
|
+
}, 1000, true);
|
|
136
139
|
```
|
|
137
140
|
|
|
138
141
|
#### Throttle
|
|
@@ -142,7 +145,7 @@ import { throttle } from 'mazey';
|
|
|
142
145
|
|
|
143
146
|
const foo = throttle(() => {
|
|
144
147
|
console.log('The function will be invoked at most once per every wait 1000 milliseconds.');
|
|
145
|
-
}, 1000, { leading: true })
|
|
148
|
+
}, 1000, { leading: true });
|
|
146
149
|
```
|
|
147
150
|
|
|
148
151
|
#### Check Number
|
|
@@ -516,17 +519,18 @@ myConsole.info('I am number.', 123, 456); // MazeyLog: I am number. 123 456
|
|
|
516
519
|
myConsole.info('I am object.', { a: 123, b: 456}); // MazeyLog: I am object. {a: 123, b: 456}
|
|
517
520
|
```
|
|
518
521
|
|
|
519
|
-
[More API>>](https://mazey.cn/docs/mazey/modules/_index_.html)
|
|
520
|
-
|
|
521
522
|
## Develop
|
|
522
523
|
|
|
523
524
|
```
|
|
524
525
|
# dev
|
|
525
|
-
npm run dev
|
|
526
|
+
npm run dev;
|
|
526
527
|
|
|
527
528
|
# build
|
|
528
|
-
npm run build
|
|
529
|
+
npm run build;
|
|
529
530
|
|
|
530
531
|
# documentation
|
|
531
|
-
npm run docs
|
|
532
|
+
npm run docs;
|
|
533
|
+
|
|
534
|
+
# test
|
|
535
|
+
npm run test;
|
|
532
536
|
```
|
package/examples/index.ts
CHANGED
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
getFileSize,
|
|
12
12
|
isSupportWebp,
|
|
13
13
|
genHashCode,
|
|
14
|
+
debounce,
|
|
14
15
|
} from '../src/index';
|
|
15
16
|
|
|
16
17
|
// Sync
|
|
@@ -29,4 +30,21 @@ console.log('Generate a Hash from a string:', genHashCode('123'));
|
|
|
29
30
|
// Async
|
|
30
31
|
(async () => {
|
|
31
32
|
console.log('Detect webp support:', await isSupportWebp());
|
|
33
|
+
|
|
34
|
+
// debounce
|
|
35
|
+
console.log('Test debounce - begin');
|
|
36
|
+
const c = debounce(() => {
|
|
37
|
+
console.log('Test debounce - fun myself');
|
|
38
|
+
}, 3000, true);
|
|
39
|
+
console.log('Test debounce - invoke first');
|
|
40
|
+
c();
|
|
41
|
+
setTimeout(() => {
|
|
42
|
+
c();
|
|
43
|
+
console.log('Test debounce - 2000ms second');
|
|
44
|
+
}, 2000);
|
|
45
|
+
setTimeout(() => {
|
|
46
|
+
c();
|
|
47
|
+
console.log('Test debounce - 10000ms third');
|
|
48
|
+
}, 10000);
|
|
49
|
+
console.log('Test debounce - end');
|
|
32
50
|
})();
|
package/lib/index.d.ts
CHANGED
|
@@ -138,9 +138,10 @@ export declare function addClass(obj: any, cls: string): void;
|
|
|
138
138
|
export declare function removeClass(obj: any, cls: string): void;
|
|
139
139
|
/**
|
|
140
140
|
* EN: Throttle
|
|
141
|
+
*
|
|
141
142
|
* ZH: 节流
|
|
142
143
|
*
|
|
143
|
-
*
|
|
144
|
+
* Reference: [Lodash](https://lodash.com/docs/4.17.15#throttle)
|
|
144
145
|
*/
|
|
145
146
|
export declare function throttle(func: any, wait: number, options?: {
|
|
146
147
|
leading?: boolean;
|
|
@@ -150,6 +151,14 @@ export declare function throttle(func: any, wait: number, options?: {
|
|
|
150
151
|
* EN: Debounce
|
|
151
152
|
*
|
|
152
153
|
* ZH: 去抖
|
|
154
|
+
*
|
|
155
|
+
* Usage:
|
|
156
|
+
*
|
|
157
|
+
* ```
|
|
158
|
+
* const foo = debounce(() => {
|
|
159
|
+
* console.log('The debounced function will only be invoked in 1000 milliseconds, the other invoking will disappear during the wait time.');
|
|
160
|
+
* }, 1000, true);
|
|
161
|
+
* ```
|
|
153
162
|
*/
|
|
154
163
|
export declare function debounce(func: any, wait: number, immediate?: any): any;
|
|
155
164
|
/**
|
|
@@ -414,13 +423,13 @@ export declare function getFileSize(size: number): string;
|
|
|
414
423
|
/**
|
|
415
424
|
* Detect webp support.
|
|
416
425
|
*
|
|
417
|
-
*
|
|
426
|
+
* Reference: [Detect WEBP Support with JavaScript](https://davidwalsh.name/detect-webp)
|
|
418
427
|
*/
|
|
419
428
|
export declare function isSupportWebp(): Promise<boolean>;
|
|
420
429
|
/**
|
|
421
430
|
* Generate a Hash Code from a string.
|
|
422
431
|
*
|
|
423
|
-
*
|
|
432
|
+
* Reference: [Generate a Hash from string in Javascript](https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript-jquery)
|
|
424
433
|
*/
|
|
425
434
|
export declare function genHashCode(str: string): number;
|
|
426
435
|
export {};
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAqB5E;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA8B9E;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQnD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAmBzE;AAED;;;;;;;GAOG;AACF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQnF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,WAAe,GAAG,MAAM,CAOnE;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAG9D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAG9D;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQzC;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM3C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,CAE5C;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CASjD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAI,GAAG,MAAM,CAM5C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAI,GAAG,MAAM,CAG/C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,MAAM,CAQ/D;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,SAAI,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CASzC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CASvD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CASpD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAQvD;AAED
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -347,9 +347,10 @@ export function removeClass(obj: any, cls: string): void {
|
|
|
347
347
|
|
|
348
348
|
/**
|
|
349
349
|
* EN: Throttle
|
|
350
|
+
*
|
|
350
351
|
* ZH: 节流
|
|
351
352
|
*
|
|
352
|
-
*
|
|
353
|
+
* Reference: [Lodash](https://lodash.com/docs/4.17.15#throttle)
|
|
353
354
|
*/
|
|
354
355
|
export function throttle(func: any, wait: number, options: { leading?: boolean; trailing?: boolean; } = {}): any {
|
|
355
356
|
options = Object.assign(
|
|
@@ -402,6 +403,14 @@ export function throttle(func: any, wait: number, options: { leading?: boolean;
|
|
|
402
403
|
* EN: Debounce
|
|
403
404
|
*
|
|
404
405
|
* ZH: 去抖
|
|
406
|
+
*
|
|
407
|
+
* Usage:
|
|
408
|
+
*
|
|
409
|
+
* ```
|
|
410
|
+
* const foo = debounce(() => {
|
|
411
|
+
* console.log('The debounced function will only be invoked in 1000 milliseconds, the other invoking will disappear during the wait time.');
|
|
412
|
+
* }, 1000, true);
|
|
413
|
+
* ```
|
|
405
414
|
*/
|
|
406
415
|
export function debounce(func: any, wait: number, immediate?: any): any {
|
|
407
416
|
let context: any = null;
|
|
@@ -1563,7 +1572,7 @@ export function getFileSize(size: number): string {
|
|
|
1563
1572
|
/**
|
|
1564
1573
|
* Detect webp support.
|
|
1565
1574
|
*
|
|
1566
|
-
*
|
|
1575
|
+
* Reference: [Detect WEBP Support with JavaScript](https://davidwalsh.name/detect-webp)
|
|
1567
1576
|
*/
|
|
1568
1577
|
export function isSupportWebp(): Promise<boolean> {
|
|
1569
1578
|
const fn = (resolve: (v: boolean) => void) => {
|
|
@@ -1582,7 +1591,7 @@ export function isSupportWebp(): Promise<boolean> {
|
|
|
1582
1591
|
/**
|
|
1583
1592
|
* Generate a Hash Code from a string.
|
|
1584
1593
|
*
|
|
1585
|
-
*
|
|
1594
|
+
* Reference: [Generate a Hash from string in Javascript](https://stackoverflow.com/questions/7616461/generate-a-hash-from-string-in-javascript-jquery)
|
|
1586
1595
|
*/
|
|
1587
1596
|
export function genHashCode(str: string): number {
|
|
1588
1597
|
let hash = 0, i, chr;
|