diginext-utils 2.1.10 → 2.1.12

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 (61) hide show
  1. package/dist/array.d.ts +2 -2
  2. package/dist/array.js +1 -0
  3. package/dist/array.js.map +1 -1
  4. package/dist/color.d.ts +2 -0
  5. package/dist/color.js +7 -1
  6. package/dist/color.js.map +1 -1
  7. package/esm/array.d.ts +2 -2
  8. package/esm/array.js +1 -0
  9. package/esm/array.js.map +1 -1
  10. package/esm/color.d.ts +2 -0
  11. package/esm/color.js +5 -0
  12. package/esm/color.js.map +1 -1
  13. package/package.json +2 -3
  14. package/src/Checker.ts +0 -29
  15. package/src/EventDispatcher.ts +0 -62
  16. package/src/FileUpload.ts +0 -66
  17. package/src/Slug.ts +0 -365
  18. package/src/Timer.ts +0 -7
  19. package/src/Validation.ts +0 -36
  20. package/src/array.ts +0 -285
  21. package/src/color.ts +0 -87
  22. package/src/console/enableConsole.ts +0 -8
  23. package/src/console/index.ts +0 -17
  24. package/src/console/log.ts +0 -39
  25. package/src/device/browser.ts +0 -29
  26. package/src/device/camera.ts +0 -207
  27. package/src/device/index.ts +0 -230
  28. package/src/device/os.ts +0 -29
  29. package/src/file/createDir.ts +0 -14
  30. package/src/file/fileMove.ts +0 -32
  31. package/src/file/findFilesByExt.ts +0 -46
  32. package/src/file/index.ts +0 -7
  33. package/src/gameboi/index.ts +0 -65
  34. package/src/images/index.ts +0 -3
  35. package/src/images/loadImage.ts +0 -16
  36. package/src/images/resize.ts +0 -35
  37. package/src/images/upload.ts +0 -24
  38. package/src/index.ts +0 -39
  39. package/src/json.ts +0 -29
  40. package/src/math/diffDate.ts +0 -10
  41. package/src/math/index.ts +0 -90
  42. package/src/math/positiveNumber.ts +0 -12
  43. package/src/name/en.ts +0 -27
  44. package/src/name/index.ts +0 -8
  45. package/src/name/vi.ts +0 -24
  46. package/src/object.ts +0 -72
  47. package/src/permission/index.ts +0 -6
  48. package/src/permission/requestCamera.ts +0 -43
  49. package/src/permission/requestDeviceOrientationControl.ts +0 -33
  50. package/src/response/index.ts +0 -45
  51. package/src/string/convertPathnameAndQuery.ts +0 -24
  52. package/src/string/formatNumber.ts +0 -12
  53. package/src/string/generatePassword.ts +0 -18
  54. package/src/string/generateUUID.ts +0 -37
  55. package/src/string/getTextBetweenCharByIndex.ts +0 -20
  56. package/src/string/index.ts +0 -181
  57. package/src/string/indexesOf.ts +0 -15
  58. package/src/string/makeDaySlug.ts +0 -40
  59. package/src/string/random.ts +0 -33
  60. package/src/string/trimNull.ts +0 -16
  61. package/src/string/url.ts +0 -80
package/src/Slug.ts DELETED
@@ -1,365 +0,0 @@
1
- /**
2
- * Create a web friendly URL slug from a string.
3
- *
4
- * Requires XRegExp (http://xregexp.com) with unicode add-ons for UTF-8 support.
5
- *
6
- * Although supported, transliteration is discouraged because
7
- * 1) most web browsers support UTF-8 characters in URLs
8
- * 2) transliteration causes a loss of information
9
- *
10
- * @author Sean Murphy <sean@iamseanmurphy.com>
11
- * @copyright Copyright 2012 Sean Murphy. All rights reserved.
12
- * @license http://creativecommons.org/publicdomain/zero/1.0/
13
- *
14
- */
15
- declare var XRegExp: any;
16
-
17
- export const makeSlug = (s: string, opt: { [key: string]: any } = {}) => {
18
- // s = String(s);
19
- // opt = Object(opt);
20
-
21
- var defaults: { [key: string]: any } = {
22
- delimiter: "-",
23
- lowercase: true,
24
- replacements: {},
25
- transliterate: typeof XRegExp === "undefined" ? true : false,
26
- };
27
-
28
- // Merge options
29
- for (var k in defaults) {
30
- if (!opt.hasOwnProperty(k)) {
31
- opt[k] = defaults[k];
32
- }
33
- }
34
-
35
- var char_map: { [key: string]: any } = {
36
- // Latin
37
- À: "A",
38
- Á: "A",
39
- Â: "A",
40
- Ã: "A",
41
- Ä: "A",
42
- Å: "A",
43
- Æ: "AE",
44
- Ç: "C",
45
- È: "E",
46
- É: "E",
47
- Ê: "E",
48
- Ë: "E",
49
- Ì: "I",
50
- Í: "I",
51
- Î: "I",
52
- Ï: "I",
53
- Ð: "D",
54
- Ñ: "N",
55
- Ò: "O",
56
- Ó: "O",
57
- Ô: "O",
58
- Õ: "O",
59
- Ö: "O",
60
- Ő: "O",
61
- Ø: "O",
62
- Ù: "U",
63
- Ú: "U",
64
- Û: "U",
65
- Ü: "U",
66
- Ű: "U",
67
- Ý: "Y",
68
- Þ: "TH",
69
- ß: "ss",
70
- à: "a",
71
- á: "a",
72
- â: "a",
73
- ã: "a",
74
- ä: "a",
75
- å: "a",
76
- æ: "ae",
77
- ç: "c",
78
- è: "e",
79
- é: "e",
80
- ê: "e",
81
- ë: "e",
82
- ì: "i",
83
- í: "i",
84
- î: "i",
85
- ï: "i",
86
- ð: "d",
87
- ñ: "n",
88
- ò: "o",
89
- ó: "o",
90
- ô: "o",
91
- õ: "o",
92
- ö: "o",
93
- ő: "o",
94
- ø: "o",
95
- ù: "u",
96
- ú: "u",
97
- û: "u",
98
- ü: "u",
99
- ű: "u",
100
- ý: "y",
101
- þ: "th",
102
- ÿ: "y",
103
-
104
- // Latin symbols
105
- "©": "(c)",
106
-
107
- // Greek
108
- Α: "A",
109
- Β: "B",
110
- Γ: "G",
111
- Δ: "D",
112
- Ε: "E",
113
- Ζ: "Z",
114
- Η: "H",
115
- Θ: "8",
116
- Ι: "I",
117
- Κ: "K",
118
- Λ: "L",
119
- Μ: "M",
120
- Ν: "N",
121
- Ξ: "3",
122
- Ο: "O",
123
- Π: "P",
124
- Ρ: "R",
125
- Σ: "S",
126
- Τ: "T",
127
- Υ: "Y",
128
- Φ: "F",
129
- Χ: "X",
130
- Ψ: "PS",
131
- Ω: "W",
132
- Ά: "A",
133
- Έ: "E",
134
- Ί: "I",
135
- Ό: "O",
136
- Ύ: "Y",
137
- Ή: "H",
138
- Ώ: "W",
139
- Ϊ: "I",
140
- Ϋ: "Y",
141
- α: "a",
142
- β: "b",
143
- γ: "g",
144
- δ: "d",
145
- ε: "e",
146
- ζ: "z",
147
- η: "h",
148
- θ: "8",
149
- ι: "i",
150
- κ: "k",
151
- λ: "l",
152
- μ: "m",
153
- ν: "n",
154
- ξ: "3",
155
- ο: "o",
156
- π: "p",
157
- ρ: "r",
158
- σ: "s",
159
- τ: "t",
160
- υ: "y",
161
- φ: "f",
162
- χ: "x",
163
- ψ: "ps",
164
- ω: "w",
165
- ά: "a",
166
- έ: "e",
167
- ί: "i",
168
- ό: "o",
169
- ύ: "y",
170
- ή: "h",
171
- ώ: "w",
172
- ς: "s",
173
- ϊ: "i",
174
- ΰ: "y",
175
- ϋ: "y",
176
- ΐ: "i",
177
-
178
- // Turkish
179
- Ş: "S",
180
- İ: "I",
181
- Ğ: "G",
182
- ş: "s",
183
- ı: "i",
184
- ğ: "g",
185
-
186
- // Russian
187
- А: "A",
188
- Б: "B",
189
- В: "V",
190
- Г: "G",
191
- Д: "D",
192
- Е: "E",
193
- Ё: "Yo",
194
- Ж: "Zh",
195
- З: "Z",
196
- И: "I",
197
- Й: "J",
198
- К: "K",
199
- Л: "L",
200
- М: "M",
201
- Н: "N",
202
- О: "O",
203
- П: "P",
204
- Р: "R",
205
- С: "S",
206
- Т: "T",
207
- У: "U",
208
- Ф: "F",
209
- Х: "H",
210
- Ц: "C",
211
- Ч: "Ch",
212
- Ш: "Sh",
213
- Щ: "Sh",
214
- Ъ: "",
215
- Ы: "Y",
216
- Ь: "",
217
- Э: "E",
218
- Ю: "Yu",
219
- Я: "Ya",
220
- а: "a",
221
- б: "b",
222
- в: "v",
223
- г: "g",
224
- д: "d",
225
- е: "e",
226
- ё: "yo",
227
- ж: "zh",
228
- з: "z",
229
- и: "i",
230
- й: "j",
231
- к: "k",
232
- л: "l",
233
- м: "m",
234
- н: "n",
235
- о: "o",
236
- п: "p",
237
- р: "r",
238
- с: "s",
239
- т: "t",
240
- у: "u",
241
- ф: "f",
242
- х: "h",
243
- ц: "c",
244
- ч: "ch",
245
- ш: "sh",
246
- щ: "sh",
247
- ъ: "",
248
- ы: "y",
249
- ь: "",
250
- э: "e",
251
- ю: "yu",
252
- я: "ya",
253
-
254
- // Ukrainian
255
- Є: "Ye",
256
- І: "I",
257
- Ї: "Yi",
258
- Ґ: "G",
259
- є: "ye",
260
- і: "i",
261
- ї: "yi",
262
- ґ: "g",
263
-
264
- // Czech
265
- Č: "C",
266
- Ď: "D",
267
- Ě: "E",
268
- Ň: "N",
269
- Ř: "R",
270
- Š: "S",
271
- Ť: "T",
272
- Ů: "U",
273
- Ž: "Z",
274
- č: "c",
275
- ď: "d",
276
- ě: "e",
277
- ň: "n",
278
- ř: "r",
279
- š: "s",
280
- ť: "t",
281
- ů: "u",
282
- ž: "z",
283
-
284
- // Polish
285
- Ą: "A",
286
- Ć: "C",
287
- Ę: "e",
288
- Ł: "L",
289
- Ń: "N",
290
- Ś: "S",
291
- Ź: "Z",
292
- Ż: "Z",
293
- ą: "a",
294
- ć: "c",
295
- ę: "e",
296
- ł: "l",
297
- ń: "n",
298
- ś: "s",
299
- ź: "z",
300
- ż: "z",
301
-
302
- // Latvian
303
- Ā: "A",
304
- Ē: "E",
305
- Ģ: "G",
306
- Ī: "i",
307
- Ķ: "k",
308
- Ļ: "L",
309
- Ņ: "N",
310
- Ū: "u",
311
- ā: "a",
312
- ē: "e",
313
- ģ: "g",
314
- ī: "i",
315
- ķ: "k",
316
- ļ: "l",
317
- ņ: "n",
318
- ū: "u",
319
- };
320
-
321
- // Vietnamese
322
- s = s.replace(/á|à|ả|ạ|ã|ă|ắ|ằ|ẳ|ẵ|ặ|â|ấ|ầ|ẩ|ẫ|ậ/gi, "a");
323
- s = s.replace(/é|è|ẻ|ẽ|ẹ|ê|ế|ề|ể|ễ|ệ/gi, "e");
324
- s = s.replace(/i|í|ì|ỉ|ĩ|ị/gi, "i");
325
- s = s.replace(/ó|ò|ỏ|õ|ọ|ô|ố|ồ|ổ|ỗ|ộ|ơ|ớ|ờ|ở|ỡ|ợ/gi, "o");
326
- s = s.replace(/ú|ù|ủ|ũ|ụ|ư|ứ|ừ|ử|ữ|ự/gi, "u");
327
- s = s.replace(/ý|ỳ|ỷ|ỹ|ỵ/gi, "y");
328
- s = s.replace(/đ/gi, "d");
329
- s = s.replace(/\-\-\-\-\-/gi, "-");
330
- s = s.replace(/\-\-\-\-/gi, "-");
331
- s = s.replace(/\-\-\-/gi, "-");
332
- s = s.replace(/\-\-/gi, "-");
333
- s = "@" + s + "@";
334
- s = s.replace(/\@\-|\-\@|\@/gi, "");
335
-
336
- // Make custom replacements
337
- for (var k in opt.replacements) {
338
- s = s.replace(RegExp(k, "g"), opt.replacements[k]);
339
- }
340
-
341
- // Transliterate characters to ASCII
342
- if (opt.transliterate) {
343
- for (var k in char_map) {
344
- s = s.replace(RegExp(k, "g"), char_map[k]);
345
- }
346
- }
347
-
348
- // Replace non-alphanumeric characters with our delimiter
349
- var alnum = typeof XRegExp === "undefined" ? RegExp("[^a-z0-9]+", "ig") : XRegExp("[^\\p{L}\\p{N}]+", "ig");
350
- s = s.replace(alnum, opt.delimiter);
351
-
352
- // Remove duplicate delimiters
353
- s = s.replace(RegExp("[" + opt.delimiter + "]{2,}", "g"), opt.delimiter);
354
-
355
- // Truncate slug to max. characters
356
- s = s.substring(0, opt.limit);
357
-
358
- // Remove delimiter from ends
359
- s = s.replace(RegExp("(^" + opt.delimiter + "|" + opt.delimiter + "$)", "g"), "");
360
-
361
- return opt.lowercase ? s.toLowerCase() : s;
362
- };
363
-
364
- const slug = { makeSlug };
365
- export default slug;
package/src/Timer.ts DELETED
@@ -1,7 +0,0 @@
1
- const Timer = {
2
- wait: async (ms: number) => {
3
- return new Promise((resolve) => setTimeout(resolve, ms));
4
- },
5
- };
6
-
7
- export default Timer;
package/src/Validation.ts DELETED
@@ -1,36 +0,0 @@
1
- const Validation = {
2
- imageValidate(file: Blob) {
3
- // console.log("imageValidate")
4
- var maxSize = 10;
5
- var fileSize = 1024 * 1024 * maxSize; // 10mb
6
- var fileTypes = ["image/png", "image/jpeg"];
7
- // var isFileValid = true;
8
- if (!file || fileTypes.indexOf(file.type) < 0) {
9
- alert("Vui lòng upload ảnh đúng định dạng jpg hay png");
10
- return false;
11
- } else if (file.size > fileSize) {
12
- alert("Vui lòng upload ảnh có dung lượng thấp hơn " + maxSize + "mb");
13
- return false;
14
- }
15
- return true;
16
- },
17
-
18
- videoValidate(file: Blob) {
19
- // console.log("videoValidate")
20
-
21
- var maxSize = 15;
22
- var fileSize = 1024 * 1024 * maxSize; // 10mb
23
- var fileTypes = "video";
24
- // console.log(file.type)
25
- // var isFileValid = true;
26
- if (!file || file.type.indexOf(fileTypes) < 0) {
27
- alert("Vui lòng upload video");
28
- return false;
29
- } else if (file.size > fileSize) {
30
- alert("Vui lòng upload video có dung lượng thấp hơn " + maxSize + "mb");
31
- return false;
32
- }
33
- return true;
34
- },
35
- };
36
- export default Validation;
package/src/array.ts DELETED
@@ -1,285 +0,0 @@
1
- import { randInt } from "./math";
2
-
3
- export const sumArray = (array: [], key: string) => {
4
- if (!array) {
5
- console.warn("ARRAY NOT EXITED !");
6
- return 0;
7
- }
8
- if (key) return array.reduce((c, v) => c + v[key], 0);
9
- else return array.reduce((c, v) => c + v, 0);
10
- };
11
-
12
- /**
13
- *
14
- * @param {Array} array
15
- * @param {string} key
16
- * @returns {Number}
17
- */
18
- export const averageArray = (array: [], key: string) => {
19
- if (!array) {
20
- console.warn("ARRAY NOT EXITED !");
21
- return 0;
22
- }
23
- return sumArray(array, key) / array.length || 0;
24
- };
25
-
26
- /**
27
- *
28
- * @param {Array} array
29
- * @param {string} key
30
- * @returns {Number}
31
- */
32
- export const minArray = (array: [], key: string) => {
33
- if (!array) {
34
- console.warn("ARRAY NOT EXITED !");
35
- return 0;
36
- }
37
- if (array.length > 0) {
38
- if (key) return array.reduce((c, v) => (c < v[key] ? c : v[key]));
39
- else return array.reduce((c, v) => (c < v ? c : v));
40
- }
41
- return 0;
42
- };
43
-
44
- /**
45
- *
46
- * @param {Array} array
47
- * @param {string} key
48
- * @returns {Number}
49
- */
50
- export const maxArray = (array: [], key: string) => {
51
- if (!array) {
52
- console.warn("ARRAY NOT EXITED !");
53
- return 0;
54
- }
55
- if (array.length > 0) {
56
- if (key) return array.reduce((c, v) => (c > v[key] ? c : v[key]));
57
- else return array.reduce((c, v) => (c > v ? c : v));
58
- }
59
- return 0;
60
- };
61
-
62
- /**
63
- *
64
- * @param {Array} array
65
- * @param {string} key
66
- * @returns {Array}
67
- */
68
- export const sortElementByString = (array: any, key: string) => {
69
- if (!Array.isArray(array)) return [];
70
- if (key)
71
- return array.sort((x, y) => {
72
- var a = x[key].toUpperCase(),
73
- b = y[key].toUpperCase();
74
- return a == b ? 0 : a > b ? 1 : -1;
75
- });
76
- console.log("NO KEY");
77
- };
78
-
79
- /**
80
- *
81
- * @param {Array} array
82
- * @param {string} key
83
- * @returns {Array}
84
- */
85
- export const sortElementByNumber = (array: any, key: string) => {
86
- if (!Array.isArray(array)) return [];
87
- if (key)
88
- return array.sort((a, b) => {
89
- return a[key] - b[key];
90
- });
91
- console.log("NO KEY");
92
- };
93
-
94
- /**
95
- *
96
- * @param {Array} array
97
- * @returns {any}
98
- */
99
- export const firstElement = (array: any[]) => {
100
- if (array) if (array.length || array.length > 0) return array[0];
101
- return null;
102
- };
103
-
104
- /**
105
- *
106
- * @param {Array} array
107
- * @returns {any}
108
- */
109
- export const lastElement = (array: any[]) => {
110
- if (array) if (array.length || array.length > 0) return array[array.length - 1];
111
- return null;
112
- };
113
-
114
- /**
115
- *
116
- * @param {Array} array
117
- * @returns {any}
118
- */
119
- export const randomIndex = (array: any[]) => {
120
- if (array) return randInt(0, array.length - 1);
121
- return -1;
122
- };
123
-
124
- /**
125
- *
126
- * @param {Array} array
127
- * @returns {any}
128
- */
129
- export const randomElement = (array: any[]) => {
130
- if (array) return array[randomIndex(array)];
131
- return null;
132
- };
133
-
134
- /**
135
- * Remove same elements from 2 arrays
136
- */
137
- export const mergeAndMakeUniqueElement = (list1: any[], list2: any[], key: string) => {
138
- if (!list1 || !list2) return;
139
-
140
- if (key) {
141
- return list1.concat(list2).filter((item, index, self) => {
142
- return self.findIndex((x) => x[key] == item[key]) === index;
143
- });
144
- } else {
145
- return list1.concat(list2).filter((x, index, self) => {
146
- return self.indexOf(x) === index;
147
- });
148
- }
149
- };
150
-
151
- /**
152
- * check target == toMatch
153
- * @param {Array} target
154
- * @param {Array} toMatch
155
- * @returns {Boolean}
156
- */
157
- export const allMatchInArray = (target: any[], toMatch: any[]) => {
158
- if (!target || !toMatch) return false;
159
- const found = toMatch.every((item) => {
160
- return target.includes(item);
161
- });
162
- return found;
163
- };
164
-
165
- export const removeItem = (item: any, array: any[]) => {
166
- const index = array.indexOf(item);
167
- if (index == -1) {
168
- console.warn("[ArrayExtra.removeItem] Item not found.");
169
- return array;
170
- }
171
- array.splice(index, 1);
172
- return array;
173
- };
174
-
175
- export const removeItemByKey = (key: string, value: any, array: any[]) => {
176
- const foundIndex = array.findIndex((item) => {
177
- return item[key] == value;
178
- });
179
-
180
- if (foundIndex < 0) {
181
- console.warn("[ArrayExtra.removeItemByKey] Item not found.", key, value);
182
- return array;
183
- }
184
- array.splice(foundIndex, 1);
185
- return array;
186
- };
187
-
188
- export const getRandom = (array: any[], n: number) => {
189
- var result = new Array(n),
190
- len = array.length,
191
- taken = new Array(len);
192
- if (n > len) throw new RangeError("getRandom: more elements taken than available");
193
- while (n--) {
194
- var x = Math.floor(Math.random() * len);
195
- result[n] = array[x in taken ? taken[x] : x];
196
- taken[x] = --len in taken ? taken[len] : len;
197
- }
198
- return result;
199
- };
200
-
201
- /**
202
- * Get an array with shuffle element
203
- */
204
- export const getHalfRandom = (array: any[], n: number) => {
205
- var n = Math.ceil(array.length / 2);
206
- return getRandom(array, n);
207
- };
208
-
209
- /**
210
- * Make array shuffle itself
211
- */
212
- export const shuffle = (array: any[]) => {
213
- var i = array.length,
214
- j,
215
- temp;
216
-
217
- if (array.length < 1) return array;
218
-
219
- while (--i) {
220
- j = Math.floor(Math.random() * (i + 1));
221
- temp = array[i];
222
- array[i] = array[j];
223
- array[j] = temp;
224
- }
225
- return array;
226
- };
227
-
228
- /**
229
- *
230
- * @param {Array} array
231
- * @param {Number} oldIndex
232
- * @param {Number} newIndex
233
- * @returns {Array}
234
- */
235
- export const moveIndex = (array: any[], oldIndex: number, newIndex: number) => {
236
- if (newIndex >= array.length) {
237
- var k = newIndex - array.length + 1;
238
- while (k--) {
239
- array.push(undefined);
240
- }
241
- }
242
- array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);
243
- return array;
244
- };
245
-
246
- export const moveArray = (array: any[], oldIndex: number, newIndex: number) => {
247
- while (oldIndex < 0) {
248
- oldIndex += array.length;
249
- }
250
- while (newIndex < 0) {
251
- newIndex += array.length;
252
- }
253
- if (newIndex >= array.length) {
254
- var k = newIndex - array.length;
255
- while (k-- + 1) {
256
- array.push(999);
257
- }
258
- }
259
- array.splice(newIndex, 0, array.splice(oldIndex, 1)[0]);
260
- return array;
261
- };
262
-
263
- const xarray = {
264
- sumArray,
265
- averageArray,
266
- minArray,
267
- maxArray,
268
- sortElementByString,
269
- sortElementByNumber,
270
- firstElement,
271
- lastElement,
272
- randomIndex,
273
- randomElement,
274
- mergeAndMakeUniqueElement,
275
- allMatchInArray,
276
- removeItem,
277
- removeItemByKey,
278
- getRandom,
279
- getHalfRandom,
280
- shuffle,
281
- moveIndex,
282
- moveArray,
283
- };
284
-
285
- export default xarray;