diginext-utils 1.2.4 → 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 (81) hide show
  1. package/dist/Checker.js +7 -8
  2. package/dist/Checker.mjs +25 -0
  3. package/dist/EventDispatcher.js +20 -19
  4. package/dist/EventDispatcher.mjs +51 -0
  5. package/dist/FileUpload.js +24 -29
  6. package/dist/FileUpload.mjs +60 -0
  7. package/dist/Slug.js +286 -340
  8. package/dist/Slug.mjs +327 -0
  9. package/dist/Timer.js +8 -11
  10. package/dist/Timer.mjs +2 -0
  11. package/dist/Validation.js +11 -19
  12. package/dist/Validation.mjs +33 -0
  13. package/dist/array.js +100 -203
  14. package/dist/array.mjs +3 -0
  15. package/dist/backend/file/createDir.js +13 -13
  16. package/dist/backend/file/createDir.mjs +13 -0
  17. package/dist/backend/file/fileMove.js +14 -14
  18. package/dist/backend/file/fileMove.mjs +29 -0
  19. package/dist/backend/file/findFilesByExt.js +22 -22
  20. package/dist/backend/file/findFilesByExt.mjs +40 -0
  21. package/dist/chunk-5AL36RZR.mjs +47 -0
  22. package/dist/chunk-7IYY7BKN.mjs +136 -0
  23. package/dist/chunk-ACLBWYEO.mjs +85 -0
  24. package/dist/chunk-AHFJBIQJ.mjs +9 -0
  25. package/dist/chunk-AKU6F3WT.mjs +9 -0
  26. package/dist/chunk-FOWYH6LL.mjs +32 -0
  27. package/dist/chunk-FTE6FZSH.mjs +17 -0
  28. package/dist/chunk-JKYSZLBF.mjs +27 -0
  29. package/dist/chunk-LXQIKFED.mjs +13 -0
  30. package/dist/chunk-Q5R25OIS.mjs +185 -0
  31. package/dist/chunk-R2BH5I6O.mjs +9 -0
  32. package/dist/chunk-UKRVCU5M.mjs +166 -0
  33. package/dist/chunk-VFKAZAWF.mjs +40 -0
  34. package/dist/chunk-VZGV2BTL.mjs +27 -0
  35. package/dist/chunk-Y4ZTQWPA.mjs +68 -0
  36. package/dist/color.js +44 -61
  37. package/dist/color.mjs +62 -0
  38. package/dist/console/enableConsole.js +14 -11
  39. package/dist/console/enableConsole.mjs +2 -0
  40. package/dist/console/index.js +14 -11
  41. package/dist/console/index.mjs +2 -0
  42. package/dist/device/browser.js +29 -27
  43. package/dist/device/browser.mjs +2 -0
  44. package/dist/device/camera.js +65 -125
  45. package/dist/device/camera.mjs +3 -0
  46. package/dist/device.js +76 -181
  47. package/dist/device.mjs +2 -0
  48. package/dist/index.js +879 -135
  49. package/dist/index.mjs +14 -0
  50. package/dist/math/diffDate.js +8 -15
  51. package/dist/math/diffDate.mjs +10 -0
  52. package/dist/math/positiveNumber.js +24 -10
  53. package/dist/math/positiveNumber.mjs +16 -0
  54. package/dist/math.js +27 -217
  55. package/dist/math.mjs +2 -0
  56. package/dist/object.js +33 -36
  57. package/dist/object.mjs +2 -0
  58. package/dist/permission/requestCamera.js +14 -37
  59. package/dist/permission/requestCamera.mjs +2 -0
  60. package/dist/permission/requestDeviceOrientationControl.js +161 -20
  61. package/dist/permission/requestDeviceOrientationControl.mjs +3 -0
  62. package/dist/string/formatNumber.js +27 -18
  63. package/dist/string/formatNumber.mjs +10 -0
  64. package/dist/string/generatePassword.js +25 -23
  65. package/dist/string/generatePassword.mjs +16 -0
  66. package/dist/string/generateUUID.js +11 -17
  67. package/dist/string/generateUUID.mjs +14 -0
  68. package/dist/string/name/en.js +6 -14
  69. package/dist/string/name/en.mjs +17 -0
  70. package/dist/string/name/vi.js +29 -22
  71. package/dist/string/name/vi.mjs +20 -0
  72. package/dist/string/random.js +16 -30
  73. package/dist/string/random.mjs +2 -0
  74. package/dist/string/trimNull.js +14 -14
  75. package/dist/string/trimNull.mjs +14 -0
  76. package/dist/string/url.js +45 -74
  77. package/dist/string/url.mjs +3 -0
  78. package/dist/string.js +43 -394
  79. package/dist/string.mjs +3 -0
  80. package/package.json +23 -28
  81. package/dist/backend/zip/extractZip.js +0 -59
package/dist/Slug.js CHANGED
@@ -1,345 +1,288 @@
1
- "use strict";
1
+ 'use strict';
2
2
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.makeSlug = void 0;
7
- require("core-js/modules/es.regexp.exec.js");
8
- require("core-js/modules/es.string.replace.js");
9
- require("core-js/modules/es.regexp.constructor.js");
10
- require("core-js/modules/es.regexp.to-string.js");
11
- /**
12
- * Create a web friendly URL slug from a string.
13
- *
14
- * Requires XRegExp (http://xregexp.com) with unicode add-ons for UTF-8 support.
15
- *
16
- * Although supported, transliteration is discouraged because
17
- * 1) most web browsers support UTF-8 characters in URLs
18
- * 2) transliteration causes a loss of information
19
- *
20
- * @author Sean Murphy <sean@iamseanmurphy.com>
21
- * @copyright Copyright 2012 Sean Murphy. All rights reserved.
22
- * @license http://creativecommons.org/publicdomain/zero/1.0/
23
- *
24
- */
25
- /**
26
- *
27
- * @param {string} s
28
- * @param {Object} opt
29
- * @return {string}
30
- */
31
- const makeSlug = function makeSlug(s) {
32
- let opt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
33
- // s = String(s);
34
- // opt = Object(opt);
3
+ Object.defineProperty(exports, '__esModule', { value: true });
35
4
 
5
+ // src/Slug.ts
6
+ var makeSlug = (s, opt = {}) => {
36
7
  var defaults = {
37
8
  delimiter: "-",
38
- limit: undefined,
39
9
  lowercase: true,
40
10
  replacements: {},
41
11
  transliterate: typeof XRegExp === "undefined" ? true : false
42
12
  };
43
-
44
- // Merge options
45
13
  for (var k in defaults) {
46
14
  if (!opt.hasOwnProperty(k)) {
47
15
  opt[k] = defaults[k];
48
16
  }
49
17
  }
50
18
  var char_map = {
51
- // Latin
52
- À: "A",
53
- Á: "A",
54
- Â: "A",
55
- Ã: "A",
56
- Ä: "A",
57
- Å: "A",
58
- Æ: "AE",
59
- Ç: "C",
60
- È: "E",
61
- É: "E",
62
- Ê: "E",
63
- Ë: "E",
64
- Ì: "I",
65
- Í: "I",
66
- Î: "I",
67
- Ï: "I",
68
- Ð: "D",
69
- Ñ: "N",
70
- Ò: "O",
71
- Ó: "O",
72
- Ô: "O",
73
- Õ: "O",
74
- Ö: "O",
75
- Ő: "O",
76
- Ø: "O",
77
- Ù: "U",
78
- Ú: "U",
79
- Û: "U",
80
- Ü: "U",
81
- Ű: "U",
82
- Ý: "Y",
83
- Þ: "TH",
84
- ß: "ss",
85
- à: "a",
86
- á: "a",
87
- â: "a",
88
- ã: "a",
89
- ä: "a",
90
- å: "a",
91
- æ: "ae",
92
- ç: "c",
93
- è: "e",
94
- é: "e",
95
- ê: "e",
96
- ë: "e",
97
- ì: "i",
98
- í: "i",
99
- î: "i",
100
- ï: "i",
101
- ð: "d",
102
- ñ: "n",
103
- ò: "o",
104
- ó: "o",
105
- ô: "o",
106
- õ: "o",
107
- ö: "o",
108
- ő: "o",
109
- ø: "o",
110
- ù: "u",
111
- ú: "u",
112
- û: "u",
113
- ü: "u",
114
- ű: "u",
115
- ý: "y",
116
- þ: "th",
117
- ÿ: "y",
118
- // Latin symbols
119
- "©": "(c)",
120
- // Greek
121
- Α: "A",
122
- Β: "B",
123
- Γ: "G",
124
- Δ: "D",
125
- Ε: "E",
126
- Ζ: "Z",
127
- Η: "H",
128
- Θ: "8",
129
- Ι: "I",
130
- Κ: "K",
131
- Λ: "L",
132
- Μ: "M",
133
- Ν: "N",
134
- Ξ: "3",
135
- Ο: "O",
136
- Π: "P",
137
- Ρ: "R",
138
- Σ: "S",
139
- Τ: "T",
140
- Υ: "Y",
141
- Φ: "F",
142
- Χ: "X",
143
- Ψ: "PS",
144
- Ω: "W",
145
- Ά: "A",
146
- Έ: "E",
147
- Ί: "I",
148
- Ό: "O",
149
- Ύ: "Y",
150
- Ή: "H",
151
- Ώ: "W",
152
- Ϊ: "I",
153
- Ϋ: "Y",
154
- α: "a",
155
- β: "b",
156
- γ: "g",
157
- δ: "d",
158
- ε: "e",
159
- ζ: "z",
160
- η: "h",
161
- θ: "8",
162
- ι: "i",
163
- κ: "k",
164
- λ: "l",
165
- μ: "m",
166
- ν: "n",
167
- ξ: "3",
168
- ο: "o",
169
- π: "p",
170
- ρ: "r",
171
- σ: "s",
172
- τ: "t",
173
- υ: "y",
174
- φ: "f",
175
- χ: "x",
176
- ψ: "ps",
177
- ω: "w",
178
- ά: "a",
179
- έ: "e",
180
- ί: "i",
181
- ό: "o",
182
- ύ: "y",
183
- ή: "h",
184
- ώ: "w",
185
- ς: "s",
186
- ϊ: "i",
187
- ΰ: "y",
188
- ϋ: "y",
189
- ΐ: "i",
190
- // Turkish
191
- Ş: "S",
192
- İ: "I",
193
- Ç: "C",
194
- Ü: "U",
195
- Ö: "O",
196
- Ğ: "G",
197
- ş: "s",
198
- ı: "i",
199
- ç: "c",
200
- ü: "u",
201
- ö: "o",
202
- ğ: "g",
203
- // Russian
204
- А: "A",
205
- Б: "B",
206
- В: "V",
207
- Г: "G",
208
- Д: "D",
209
- Е: "E",
210
- Ё: "Yo",
211
- Ж: "Zh",
212
- З: "Z",
213
- И: "I",
214
- Й: "J",
215
- К: "K",
216
- Л: "L",
217
- М: "M",
218
- Н: "N",
219
- О: "O",
220
- П: "P",
221
- Р: "R",
222
- С: "S",
223
- Т: "T",
224
- У: "U",
225
- Ф: "F",
226
- Х: "H",
227
- Ц: "C",
228
- Ч: "Ch",
229
- Ш: "Sh",
230
- Щ: "Sh",
231
- Ъ: "",
232
- Ы: "Y",
233
- Ь: "",
234
- Э: "E",
235
- Ю: "Yu",
236
- Я: "Ya",
237
- а: "a",
238
- б: "b",
239
- в: "v",
240
- г: "g",
241
- д: "d",
242
- е: "e",
243
- ё: "yo",
244
- ж: "zh",
245
- з: "z",
246
- и: "i",
247
- й: "j",
248
- к: "k",
249
- л: "l",
250
- м: "m",
251
- н: "n",
252
- о: "o",
253
- п: "p",
254
- р: "r",
255
- с: "s",
256
- т: "t",
257
- у: "u",
258
- ф: "f",
259
- х: "h",
260
- ц: "c",
261
- ч: "ch",
262
- ш: "sh",
263
- щ: "sh",
264
- ъ: "",
265
- ы: "y",
266
- ь: "",
267
- э: "e",
268
- ю: "yu",
269
- я: "ya",
270
- // Ukrainian
271
- Є: "Ye",
272
- І: "I",
273
- Ї: "Yi",
274
- Ґ: "G",
275
- є: "ye",
276
- і: "i",
277
- ї: "yi",
278
- ґ: "g",
279
- // Czech
280
- Č: "C",
281
- Ď: "D",
282
- Ě: "E",
283
- Ň: "N",
284
- Ř: "R",
285
- Š: "S",
286
- Ť: "T",
287
- Ů: "U",
288
- Ž: "Z",
289
- č: "c",
290
- ď: "d",
291
- ě: "e",
292
- ň: "n",
293
- ř: "r",
294
- š: "s",
295
- ť: "t",
296
- ů: "u",
297
- ž: "z",
298
- // Polish
299
- Ą: "A",
300
- Ć: "C",
301
- Ę: "e",
302
- Ł: "L",
303
- Ń: "N",
304
- Ó: "o",
305
- Ś: "S",
306
- Ź: "Z",
307
- Ż: "Z",
308
- ą: "a",
309
- ć: "c",
310
- ę: "e",
311
- ł: "l",
312
- ń: "n",
313
- ó: "o",
314
- ś: "s",
315
- ź: "z",
316
- ż: "z",
317
- // Latvian
318
- Ā: "A",
319
- Č: "C",
320
- Ē: "E",
321
- Ģ: "G",
322
- Ī: "i",
323
- Ķ: "k",
324
- Ļ: "L",
325
- Ņ: "N",
326
- Š: "S",
327
- Ū: "u",
328
- Ž: "Z",
329
- ā: "a",
330
- č: "c",
331
- ē: "e",
332
- ģ: "g",
333
- ī: "i",
334
- ķ: "k",
335
- ļ: "l",
336
- ņ: "n",
337
- š: "s",
338
- ū: "u",
339
- ž: "z"
19
+ \u00C0: "A",
20
+ \u00C1: "A",
21
+ \u00C2: "A",
22
+ \u00C3: "A",
23
+ \u00C4: "A",
24
+ \u00C5: "A",
25
+ \u00C6: "AE",
26
+ \u00C7: "C",
27
+ \u00C8: "E",
28
+ \u00C9: "E",
29
+ \u00CA: "E",
30
+ \u00CB: "E",
31
+ \u00CC: "I",
32
+ \u00CD: "I",
33
+ \u00CE: "I",
34
+ \u00CF: "I",
35
+ \u00D0: "D",
36
+ \u00D1: "N",
37
+ \u00D2: "O",
38
+ \u00D3: "O",
39
+ \u00D4: "O",
40
+ \u00D5: "O",
41
+ \u00D6: "O",
42
+ \u0150: "O",
43
+ \u00D8: "O",
44
+ \u00D9: "U",
45
+ \u00DA: "U",
46
+ \u00DB: "U",
47
+ \u00DC: "U",
48
+ \u0170: "U",
49
+ \u00DD: "Y",
50
+ \u00DE: "TH",
51
+ \u00DF: "ss",
52
+ \u00E0: "a",
53
+ \u00E1: "a",
54
+ \u00E2: "a",
55
+ \u00E3: "a",
56
+ \u00E4: "a",
57
+ \u00E5: "a",
58
+ \u00E6: "ae",
59
+ \u00E7: "c",
60
+ \u00E8: "e",
61
+ \u00E9: "e",
62
+ \u00EA: "e",
63
+ \u00EB: "e",
64
+ \u00EC: "i",
65
+ \u00ED: "i",
66
+ \u00EE: "i",
67
+ \u00EF: "i",
68
+ \u00F0: "d",
69
+ \u00F1: "n",
70
+ \u00F2: "o",
71
+ \u00F3: "o",
72
+ \u00F4: "o",
73
+ \u00F5: "o",
74
+ \u00F6: "o",
75
+ \u0151: "o",
76
+ \u00F8: "o",
77
+ \u00F9: "u",
78
+ \u00FA: "u",
79
+ \u00FB: "u",
80
+ \u00FC: "u",
81
+ \u0171: "u",
82
+ \u00FD: "y",
83
+ \u00FE: "th",
84
+ \u00FF: "y",
85
+ "\xA9": "(c)",
86
+ \u0391: "A",
87
+ \u0392: "B",
88
+ \u0393: "G",
89
+ \u0394: "D",
90
+ \u0395: "E",
91
+ \u0396: "Z",
92
+ \u0397: "H",
93
+ \u0398: "8",
94
+ \u0399: "I",
95
+ \u039A: "K",
96
+ \u039B: "L",
97
+ \u039C: "M",
98
+ \u039D: "N",
99
+ \u039E: "3",
100
+ \u039F: "O",
101
+ \u03A0: "P",
102
+ \u03A1: "R",
103
+ \u03A3: "S",
104
+ \u03A4: "T",
105
+ \u03A5: "Y",
106
+ \u03A6: "F",
107
+ \u03A7: "X",
108
+ \u03A8: "PS",
109
+ \u03A9: "W",
110
+ \u0386: "A",
111
+ \u0388: "E",
112
+ \u038A: "I",
113
+ \u038C: "O",
114
+ \u038E: "Y",
115
+ \u0389: "H",
116
+ \u038F: "W",
117
+ \u03AA: "I",
118
+ \u03AB: "Y",
119
+ \u03B1: "a",
120
+ \u03B2: "b",
121
+ \u03B3: "g",
122
+ \u03B4: "d",
123
+ \u03B5: "e",
124
+ \u03B6: "z",
125
+ \u03B7: "h",
126
+ \u03B8: "8",
127
+ \u03B9: "i",
128
+ \u03BA: "k",
129
+ \u03BB: "l",
130
+ \u03BC: "m",
131
+ \u03BD: "n",
132
+ \u03BE: "3",
133
+ \u03BF: "o",
134
+ \u03C0: "p",
135
+ \u03C1: "r",
136
+ \u03C3: "s",
137
+ \u03C4: "t",
138
+ \u03C5: "y",
139
+ \u03C6: "f",
140
+ \u03C7: "x",
141
+ \u03C8: "ps",
142
+ \u03C9: "w",
143
+ \u03AC: "a",
144
+ \u03AD: "e",
145
+ \u03AF: "i",
146
+ \u03CC: "o",
147
+ \u03CD: "y",
148
+ \u03AE: "h",
149
+ \u03CE: "w",
150
+ \u03C2: "s",
151
+ \u03CA: "i",
152
+ \u03B0: "y",
153
+ \u03CB: "y",
154
+ \u0390: "i",
155
+ \u015E: "S",
156
+ \u0130: "I",
157
+ \u011E: "G",
158
+ \u015F: "s",
159
+ \u0131: "i",
160
+ \u011F: "g",
161
+ \u0410: "A",
162
+ \u0411: "B",
163
+ \u0412: "V",
164
+ \u0413: "G",
165
+ \u0414: "D",
166
+ \u0415: "E",
167
+ \u0401: "Yo",
168
+ \u0416: "Zh",
169
+ \u0417: "Z",
170
+ \u0418: "I",
171
+ \u0419: "J",
172
+ \u041A: "K",
173
+ \u041B: "L",
174
+ \u041C: "M",
175
+ \u041D: "N",
176
+ \u041E: "O",
177
+ \u041F: "P",
178
+ \u0420: "R",
179
+ \u0421: "S",
180
+ \u0422: "T",
181
+ \u0423: "U",
182
+ \u0424: "F",
183
+ \u0425: "H",
184
+ \u0426: "C",
185
+ \u0427: "Ch",
186
+ \u0428: "Sh",
187
+ \u0429: "Sh",
188
+ \u042A: "",
189
+ \u042B: "Y",
190
+ \u042C: "",
191
+ \u042D: "E",
192
+ \u042E: "Yu",
193
+ \u042F: "Ya",
194
+ \u0430: "a",
195
+ \u0431: "b",
196
+ \u0432: "v",
197
+ \u0433: "g",
198
+ \u0434: "d",
199
+ \u0435: "e",
200
+ \u0451: "yo",
201
+ \u0436: "zh",
202
+ \u0437: "z",
203
+ \u0438: "i",
204
+ \u0439: "j",
205
+ \u043A: "k",
206
+ \u043B: "l",
207
+ \u043C: "m",
208
+ \u043D: "n",
209
+ \u043E: "o",
210
+ \u043F: "p",
211
+ \u0440: "r",
212
+ \u0441: "s",
213
+ \u0442: "t",
214
+ \u0443: "u",
215
+ \u0444: "f",
216
+ \u0445: "h",
217
+ \u0446: "c",
218
+ \u0447: "ch",
219
+ \u0448: "sh",
220
+ \u0449: "sh",
221
+ \u044A: "",
222
+ \u044B: "y",
223
+ \u044C: "",
224
+ \u044D: "e",
225
+ \u044E: "yu",
226
+ \u044F: "ya",
227
+ \u0404: "Ye",
228
+ \u0406: "I",
229
+ \u0407: "Yi",
230
+ \u0490: "G",
231
+ \u0454: "ye",
232
+ \u0456: "i",
233
+ \u0457: "yi",
234
+ \u0491: "g",
235
+ \u010C: "C",
236
+ \u010E: "D",
237
+ \u011A: "E",
238
+ \u0147: "N",
239
+ \u0158: "R",
240
+ \u0160: "S",
241
+ \u0164: "T",
242
+ \u016E: "U",
243
+ \u017D: "Z",
244
+ \u010D: "c",
245
+ \u010F: "d",
246
+ \u011B: "e",
247
+ \u0148: "n",
248
+ \u0159: "r",
249
+ \u0161: "s",
250
+ \u0165: "t",
251
+ \u016F: "u",
252
+ \u017E: "z",
253
+ \u0104: "A",
254
+ \u0106: "C",
255
+ \u0118: "e",
256
+ \u0141: "L",
257
+ \u0143: "N",
258
+ \u015A: "S",
259
+ \u0179: "Z",
260
+ \u017B: "Z",
261
+ \u0105: "a",
262
+ \u0107: "c",
263
+ \u0119: "e",
264
+ \u0142: "l",
265
+ \u0144: "n",
266
+ \u015B: "s",
267
+ \u017A: "z",
268
+ \u017C: "z",
269
+ \u0100: "A",
270
+ \u0112: "E",
271
+ \u0122: "G",
272
+ \u012A: "i",
273
+ \u0136: "k",
274
+ \u013B: "L",
275
+ \u0145: "N",
276
+ \u016A: "u",
277
+ \u0101: "a",
278
+ \u0113: "e",
279
+ \u0123: "g",
280
+ \u012B: "i",
281
+ \u0137: "k",
282
+ \u013C: "l",
283
+ \u0146: "n",
284
+ \u016B: "u"
340
285
  };
341
-
342
- // Vietnamese
343
286
  s = s.replace(/á|à|ả|ạ|ã|ă|ắ|ằ|ẳ|ẵ|ặ|â|ấ|ầ|ẩ|ẫ|ậ/gi, "a");
344
287
  s = s.replace(/é|è|ẻ|ẽ|ẹ|ê|ế|ề|ể|ễ|ệ/gi, "e");
345
288
  s = s.replace(/i|í|ì|ỉ|ĩ|ị/gi, "i");
@@ -353,31 +296,34 @@ const makeSlug = function makeSlug(s) {
353
296
  s = s.replace(/\-\-/gi, "-");
354
297
  s = "@" + s + "@";
355
298
  s = s.replace(/\@\-|\-\@|\@/gi, "");
356
-
357
- // Make custom replacements
358
299
  for (var k in opt.replacements) {
359
300
  s = s.replace(RegExp(k, "g"), opt.replacements[k]);
360
301
  }
361
-
362
- // Transliterate characters to ASCII
363
302
  if (opt.transliterate) {
364
303
  for (var k in char_map) {
365
304
  s = s.replace(RegExp(k, "g"), char_map[k]);
366
305
  }
367
306
  }
368
-
369
- // Replace non-alphanumeric characters with our delimiter
370
307
  var alnum = typeof XRegExp === "undefined" ? RegExp("[^a-z0-9]+", "ig") : XRegExp("[^\\p{L}\\p{N}]+", "ig");
371
308
  s = s.replace(alnum, opt.delimiter);
372
-
373
- // Remove duplicate delimiters
374
309
  s = s.replace(RegExp("[" + opt.delimiter + "]{2,}", "g"), opt.delimiter);
375
-
376
- // Truncate slug to max. characters
377
310
  s = s.substring(0, opt.limit);
378
-
379
- // Remove delimiter from ends
380
311
  s = s.replace(RegExp("(^" + opt.delimiter + "|" + opt.delimiter + "$)", "g"), "");
381
312
  return opt.lowercase ? s.toLowerCase() : s;
382
313
  };
383
- exports.makeSlug = makeSlug;
314
+ /**
315
+ * Create a web friendly URL slug from a string.
316
+ *
317
+ * Requires XRegExp (http://xregexp.com) with unicode add-ons for UTF-8 support.
318
+ *
319
+ * Although supported, transliteration is discouraged because
320
+ * 1) most web browsers support UTF-8 characters in URLs
321
+ * 2) transliteration causes a loss of information
322
+ *
323
+ * @author Sean Murphy <sean@iamseanmurphy.com>
324
+ * @copyright Copyright 2012 Sean Murphy. All rights reserved.
325
+ * @license http://creativecommons.org/publicdomain/zero/1.0/
326
+ *
327
+ */
328
+
329
+ exports.makeSlug = makeSlug;