@thi.ng/strings 2.1.7 → 3.1.0

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/lib/index.js DELETED
@@ -1,630 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var memoize = require('@thi.ng/memoize');
6
- var hex = require('@thi.ng/hex');
7
- var errors = require('@thi.ng/errors');
8
-
9
- const BOM = "\ufeff";
10
-
11
- const RE = /\x1b\[[0-9;]+m/g;
12
- const stripAnsi = (x) => x.replace(RE, "");
13
- const isAnsi = (x) => /\x1b\[[0-9;]+m/i.test(x);
14
- const isAnsiStart = (x) => /^\x1b\[[0-9;]+m/i.test(x);
15
- const isAnsiEnd = (x) => /\x1b\[[0-9;]+m$/i.test(x);
16
- const lengthAnsi = (x) => stripAnsi(x).length;
17
-
18
- const upper = (x) => x.toUpperCase();
19
- const lower = (x) => x.toLowerCase();
20
- const capitalize = (x) => x[0].toUpperCase() + x.substr(1);
21
- const kebab = (x, delim = "-") => lower(x.replace(
22
- /([a-z0-9\u00e0-\u00fd])([A-Z\u00c0-\u00dd])/g, (_, a, b) => a + delim + b));
23
- const snake = (x) => kebab(x, "_");
24
- const upperSnake = (x) => snake(x).toUpperCase();
25
- const camel = (x, delim = "-") => lower(x).replace(new RegExp(`\\${delim}+(\\w)`, "g"), (_, c) => upper(c));
26
-
27
- const repeat = memoize.memoizeJ((ch, n) => ch.repeat(n));
28
-
29
- const truncate = memoize.memoizeJ((n, suffix = "") => (x) => x.length > n ? x.substr(0, n - suffix.length) + suffix : x);
30
- const truncateRight = truncate;
31
-
32
- const center = memoize.memoizeJ((n, pad = " ") => {
33
- const buf = repeat(String(pad), n);
34
- return (x) => {
35
- if (x == null)
36
- return buf;
37
- x = x.toString();
38
- const r = (n - x.length) / 2;
39
- return x.length < n
40
- ? buf.substr(0, r) +
41
- x +
42
- buf.substr(0, r + ((n & 1) === (x.length & 1) ? 0 : 1))
43
- : truncate(n)(x);
44
- };
45
- });
46
-
47
- const computeCursorPos = (str, pos, delim = "\n", offset = [1, 1]) => {
48
- if (!str.length)
49
- return [1, 1];
50
- pos = Math.min(Math.max(0, pos), str.length);
51
- const lines = str.split(delim);
52
- const n = lines.length;
53
- for (let i = 0; i < n; i++) {
54
- const l = lines[i];
55
- if (pos <= l.length)
56
- return [i + offset[0], pos + offset[1]];
57
- pos -= l.length + 1;
58
- }
59
- return [n + offset[0] - 1, offset[1]];
60
- };
61
-
62
- const radix = memoize.memoizeJ((radix, n, prefix = "") => {
63
- const buf = repeat("0", n);
64
- return (x) => {
65
- x = (x >>> 0).toString(radix);
66
- return prefix + (x.length < n ? buf.substr(x.length) + x : x);
67
- };
68
- });
69
- const B8 = radix(2, 8);
70
- const B16 = radix(2, 16);
71
- const B32 = radix(2, 32);
72
- const U8 = hex.U8;
73
- const U16 = hex.U16;
74
- const U24 = hex.U24;
75
- const U32 = hex.U32;
76
- const U64 = hex.U64HL;
77
-
78
- const ESCAPES = {
79
- 0: "\0",
80
- b: "\b",
81
- t: "\t",
82
- r: "\r",
83
- v: "\v",
84
- f: "\f",
85
- n: "\n",
86
- "'": "'",
87
- '"': '"',
88
- "\\": "\\",
89
- };
90
- const ESCAPES_REV = {
91
- 0: "0",
92
- 8: "b",
93
- 9: "t",
94
- 10: "n",
95
- 11: "v",
96
- 12: "f",
97
- 13: "r",
98
- 33: "'",
99
- 34: '"',
100
- 92: "\\",
101
- };
102
- const escape = (src) => src
103
- .replace(/[\0\b\t\n\v\f\r'"\\]/g, (x) => `\\${ESCAPES_REV[x.charCodeAt(0)]}`)
104
- .replace(/[\ud800-\udfff]{2}/g, (x) => `\\U${U32(x.codePointAt(0))}`)
105
- .replace(/[^\u0020-\u007e]/g, (x) => `\\u${U16(x.charCodeAt(0))}`);
106
- const unescape = (src) => src
107
- .replace(/\\u([0-9a-fA-F]{4})/g, (_, id) => String.fromCharCode(parseInt(id, 16)))
108
- .replace(/\\U([0-9a-fA-F]{8})/g, (_, id) => String.fromCodePoint(parseInt(id, 16)))
109
- .replace(/\\([0btnvfr'"\\])/g, (_, id) => ESCAPES[id]);
110
-
111
- const padLeft = memoize.memoizeJ((n, ch = " ") => {
112
- const buf = repeat(String(ch), n);
113
- return (x, len) => {
114
- if (x == null)
115
- return buf;
116
- x = x.toString();
117
- len = len !== undefined ? len : x.length;
118
- return len < n ? buf.substr(len) + x : x;
119
- };
120
- });
121
- const Z2 = padLeft(2, "0");
122
- const Z3 = padLeft(3, "0");
123
- const Z4 = padLeft(4, "0");
124
-
125
- const float = memoize.memoizeJ((prec, special = false) => special
126
- ? (x) => nanOrInf(x) || x.toFixed(prec)
127
- : (x) => x.toFixed(prec));
128
- const floatFixedWidth = memoize.memoizeJ((width, prec = 3) => {
129
- const l = width - prec - 1;
130
- const pl = Math.pow(10, l);
131
- const pln = -Math.pow(10, l - 1);
132
- const pr = Math.pow(10, -(prec - 1));
133
- const pad = padLeft(width);
134
- return (x) => {
135
- const ax = Math.abs(x);
136
- return pad(nanOrInf(x) ||
137
- (x === 0
138
- ? "0"
139
- : ax < pr || ax >= pl
140
- ? exp(x, width)
141
- : x.toFixed(prec - (x < pln ? 1 : 0))));
142
- };
143
- });
144
- const exp = (x, w) => x.toExponential(Math.max(w -
145
- 4 -
146
- (Math.log(Math.abs(x)) / Math.LN10 >= 10 ? 2 : 1) -
147
- (x < 0 ? 1 : 0), 0));
148
- const nanOrInf = (x) => isNaN(x)
149
- ? "NaN"
150
- : x === Infinity
151
- ? "+∞"
152
- : x === -Infinity
153
- ? "-∞"
154
- : undefined;
155
-
156
- const format = (fmt, ...args) => {
157
- const acc = [];
158
- for (let i = 0, j = 0, n = fmt.length; i < n; i++) {
159
- const f = fmt[i];
160
- const t = typeof f;
161
- acc.push(t === "function" ? f(args[j++]) : t === "object" ? f[args[j++]] : f);
162
- }
163
- return acc.join("");
164
- };
165
- const defFormat = (fmt) => (...args) => format(fmt, ...args);
166
- const ignore = (_) => "";
167
- const str = (x) => String(x);
168
-
169
- function* charRange(from, to) {
170
- let i = typeof from === "string" ? from.charCodeAt(0) : from;
171
- const end = typeof to === "string" ? to.charCodeAt(0) : to;
172
- if (i <= end) {
173
- for (; i <= end; i++) {
174
- yield String.fromCharCode(i);
175
- }
176
- }
177
- else {
178
- for (; i >= end; i--) {
179
- yield String.fromCharCode(i);
180
- }
181
- }
182
- }
183
-
184
- const defGroup = (...xs) => {
185
- const acc = {};
186
- for (let range of xs) {
187
- for (let c of range) {
188
- acc[c] = true;
189
- }
190
- }
191
- return Object.freeze(acc);
192
- };
193
- const WS = Object.freeze({
194
- "\t": true,
195
- "\n": true,
196
- "\v": true,
197
- "\f": true,
198
- "\r": true,
199
- " ": true,
200
- });
201
- const DIGITS = defGroup(charRange("0", "9"));
202
- const HEX = defGroup(charRange("0", "9"), charRange("A", "F"), charRange("a", "f"));
203
- const LOWER = defGroup(charRange("a", "z"));
204
- const UPPER = defGroup(charRange("A", "Z"));
205
- const ALPHA = Object.freeze(Object.assign(Object.assign({}, UPPER), LOWER));
206
- const ALPHA_NUM = Object.freeze(Object.assign(Object.assign(Object.assign({}, ALPHA), DIGITS), { _: true }));
207
- const PUNCTUATION = defGroup(charRange("!", "/"), charRange(":", "@"), charRange("[", "`"), charRange("{", "~"));
208
-
209
- const hstr = (x) => x != null ? ((x = x.toString()), `${x.length}H${x}`) : "";
210
-
211
- const int = (x) => String(Math.trunc(x));
212
- const intLocale = memoize.memoizeJ((locale) => (x) => Math.trunc(x).toLocaleString(locale));
213
-
214
- const TPL = /\{(\d+)\}/g;
215
- const TPL_K = /\{([a-z0-9_.-]+)\}/gi;
216
- const interpolate = (src, ...args) => args.length > 0
217
- ? src.replace(TPL, (_, id) => String(args[parseInt(id, 10)]))
218
- : src;
219
- const interpolateKeys = (src, keys) => src.replace(TPL_K, (_, id) => keys[id] != undefined
220
- ? String(keys[id])
221
- : errors.illegalArgs(`missing key: ${id}`));
222
-
223
- const join = memoize.memoize1((sep) => (x) => x.join(sep));
224
-
225
- const padRight = memoize.memoizeJ((n, ch = " ") => {
226
- const buf = repeat(String(ch), n);
227
- return (x, len) => {
228
- if (x == null)
229
- return buf;
230
- x = x.toString();
231
- len = len !== undefined ? len : x.length;
232
- return len < n ? x + buf.substr(len) : x;
233
- };
234
- });
235
-
236
- const maybeParseInt = (x, defaultVal = 0, radix = 10) => {
237
- const n = parseInt(x, radix);
238
- return isNaN(n) ? defaultVal : n;
239
- };
240
- const maybeParseFloat = (x, defaultVal = 0) => {
241
- const n = parseFloat(x);
242
- return isNaN(n) ? defaultVal : n;
243
- };
244
-
245
- const percent = (prec = 0) => (x) => (x * 100).toFixed(prec) + "%";
246
-
247
- const ruler = (width, major = 5, a = "|", b = "'") => repeat(a + repeat(b, major - 1), Math.ceil(width / major)).substr(0, width);
248
- const grid = (cols, rows, w, h, [a, b, c, d] = "+-| ") => {
249
- const major = ruler(cols * w, w, a, b) + a + "\n";
250
- const minor = ruler(cols * w, w, c, d) + c + "\n";
251
- return repeat(major + repeat(minor, h - 1), rows) + major;
252
- };
253
-
254
- const src = "àáäâãåèéëêìíïîòóöôùúüûñçßÿœæŕśńṕẃǵǹḿǘẍźḧ·/_,:;";
255
- const dest = "aaaaaaeeeeiiiioooouuuuncsyoarsnpwgnmuxzh------";
256
- const re = new RegExp(src.split("").join("|"), "g");
257
- const slugify = (str) => {
258
- return str
259
- .toLowerCase()
260
- .replace(/\s+/g, "-")
261
- .replace(re, (c) => dest[src.indexOf(c)])
262
- .replace(/&+/g, "-and-")
263
- .replace(/[^\w\-]+/g, "")
264
- .replace(/\-{2,}/g, "-")
265
- .replace(/(^-+)|(-+$)/g, "");
266
- };
267
- const slugifyGH = (str) => {
268
- return (str
269
- .toLowerCase()
270
- .replace(/[!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~\u0000-\u001f\u2000-\u206f\u2700-\u27bf\u2e00-\u2e7f]/g, "")
271
- .replace(/\s/g, "-"));
272
- };
273
-
274
- const splice = (src, insert, from, to = from) => {
275
- if (from < 0) {
276
- from += src.length;
277
- }
278
- if (to < 0) {
279
- to += src.length;
280
- }
281
- if (from > to) {
282
- errors.illegalArgs("'from' index must be <= 'to'");
283
- }
284
- to = Math.max(to, 0);
285
- return from <= 0
286
- ? insert + src.substr(to)
287
- : from >= src.length
288
- ? src + insert
289
- : src.substr(0, from) + insert + src.substr(to);
290
- };
291
-
292
- function* split(src, delim = /\r?\n/g, includeDelim = false) {
293
- let i = 0;
294
- const n = src.length;
295
- const include = ~~includeDelim;
296
- const re = typeof delim === "string" ? new RegExp(delim, "g") : delim;
297
- for (; i < n;) {
298
- const m = re.exec(src);
299
- if (!m) {
300
- yield src.substring(i);
301
- return;
302
- }
303
- const len = m[0].length;
304
- yield src.substring(i, m.index + include * len);
305
- i = m.index + len;
306
- }
307
- }
308
-
309
- const stringify = (all = false, indent) => (x) => all || (typeof x !== "string" && typeof x !== "number")
310
- ? JSON.stringify(x, null, indent)
311
- : String(x);
312
-
313
- const nextTab = (x, tabSize) => Math.floor((x + tabSize) / tabSize) * tabSize;
314
- const tabsToSpaces = (src, tabSize = 4) => src
315
- .split(/\r?\n/g)
316
- .map((line) => tabsToSpacesLine(line, tabSize))
317
- .join("\n");
318
- const tabsToSpacesLine = (line, tabSize = 4) => {
319
- let res = "";
320
- let words = line.split(/\t/g);
321
- let n = words.length - 1;
322
- for (let i = 0; i < n; i++) {
323
- const w = words[i];
324
- res += w;
325
- res += repeat(" ", nextTab(res.length, tabSize) - res.length);
326
- }
327
- res += words[n];
328
- return res;
329
- };
330
- const spacesToTabs = (src, tabSize = 4) => src
331
- .split(/\r?\n/g)
332
- .map((line) => spacesToTabsLine(line, tabSize))
333
- .join("\n");
334
- const spacesToTabsLine = (line, tabSize = 4) => {
335
- const re = /\s{2,}/g;
336
- let i = 0;
337
- let res = "";
338
- let m;
339
- while ((m = re.exec(line))) {
340
- const numSpaces = m[0].length;
341
- res += line.substring(i, m.index);
342
- i = m.index;
343
- const end = m.index + numSpaces;
344
- while (i < end) {
345
- const j = nextTab(i, tabSize);
346
- if (j <= end) {
347
- res += "\t";
348
- i = j;
349
- }
350
- else {
351
- res += repeat(" ", end - i);
352
- i = end;
353
- }
354
- }
355
- i = end;
356
- }
357
- return res + line.substr(i);
358
- };
359
-
360
- const trim = memoize.memoize1((chars = " \t\n\r") => {
361
- chars = `(${chars
362
- .split("")
363
- .map((x) => `\\${x}`)
364
- .join("|")})`;
365
- const re = new RegExp(`(^${chars}+)|(${chars}+$)`, "g");
366
- return (x) => x.replace(re, "");
367
- });
368
-
369
- const truncateLeft = memoize.memoizeJ((n, prefix = "") => (x) => x.length > n ? prefix + x.substr(x.length - n + prefix.length) : x);
370
-
371
- const units = memoize.memoizeJ((exp, base, prec = 2) => {
372
- const groups = exp
373
- .map((x) => [
374
- x[0],
375
- x[2] != null ? x[2] : prec,
376
- x[1],
377
- ])
378
- .sort((a, b) => a[0] - b[0]);
379
- return (x) => {
380
- if (x === 0) {
381
- return `0${base}`;
382
- }
383
- const absX = Math.abs(x);
384
- for (let i = groups.length; --i >= 0;) {
385
- const g = groups[i];
386
- if (absX >= g[0] || i === 0) {
387
- return (x / g[0]).toFixed(g[1]) + g[2];
388
- }
389
- }
390
- return "";
391
- };
392
- });
393
- const KB = 1024;
394
- const bits = units([
395
- [1, " bits", 0],
396
- [KB, " Kb"],
397
- [KB ** 2, " Mb"],
398
- [KB ** 3, " Gb"],
399
- ], " bits", 2);
400
- const bytes = units([
401
- [1, " bytes", 0],
402
- [KB, " KB"],
403
- [KB ** 2, " MB"],
404
- [KB ** 3, " GB"],
405
- [KB ** 4, " TB"],
406
- [KB ** 5, " PB"],
407
- ], " bytes", 2);
408
- const seconds = units([
409
- [1e-12, " ps"],
410
- [1e-9, " ns"],
411
- [1e-6, " µs"],
412
- [1e-3, " ms"],
413
- [1, " secs"],
414
- [60, " mins"],
415
- [60 * 60, " hours"],
416
- [24 * 60 * 60, " days"],
417
- ], " secs", 3);
418
- const meters = units([
419
- [1e-12, " pm"],
420
- [1e-9, " nm"],
421
- [1e-6, " µm"],
422
- [1e-3, " mm"],
423
- [1e-2, " cm"],
424
- [1, " m"],
425
- [1e3, " km"],
426
- ], " m", 2);
427
- const grams = units([
428
- [1e-12, " pg"],
429
- [1e-9, " ng"],
430
- [1e-6, " µg"],
431
- [1e-3, " mg"],
432
- [1, " g"],
433
- [1e3, " kg"],
434
- [1e6, " t"],
435
- [1e9, " kt"],
436
- [1e12, " Mt"],
437
- ], " g", 2);
438
-
439
- const uuid = hex.uuid;
440
-
441
- const vector = memoize.memoizeJ((size, prec = 3, d = ",", pre = "[", post = "]") => {
442
- const f = typeof prec === "number" ? float(prec) : prec;
443
- switch (size) {
444
- case 1:
445
- return (v) => `${pre}${f(v[0])}${post}`;
446
- case 2:
447
- return (v) => `${pre}${f(v[0])}${d}${f(v[1])}${post}`;
448
- case 3:
449
- return (v) => `${pre}${f(v[0])}${d}${f(v[1])}${d}${f(v[2])}${post}`;
450
- case 4:
451
- return (v) => `${pre}${f(v[0])}${d}${f(v[1])}${d}${f(v[2])}${d}${f(v[3])}${post}`;
452
- default:
453
- return (v) => {
454
- const res = [];
455
- for (let i = 0; i < v.length; i++) {
456
- res.push(f(v[i]));
457
- }
458
- return `${pre}${res.join(d)}${post}`;
459
- };
460
- }
461
- });
462
-
463
- const wrap = memoize.memoizeJ((pad) => (x) => pad + x + pad);
464
-
465
- class Line {
466
- constructor(word, n) {
467
- this.n = 0;
468
- this.w = [];
469
- word != null && this.add(word, n);
470
- }
471
- add(word, n = word.length) {
472
- this.w.push(word);
473
- this.n += n + ~~(this.n > 0);
474
- return this;
475
- }
476
- toString() {
477
- return this.w.join(" ");
478
- }
479
- }
480
- const SPLIT_PLAIN = {
481
- length: (x) => x.length,
482
- split: (_, max) => max,
483
- };
484
- const SPLIT_ANSI = {
485
- length: lengthAnsi,
486
- split: (x, max) => {
487
- const re = /\x1b\[[0-9;]+m/g;
488
- let i = max;
489
- let match;
490
- while ((match = re.exec(x))) {
491
- if (match.index >= max)
492
- break;
493
- const n = match[0].length;
494
- i += n;
495
- max += n;
496
- }
497
- return i;
498
- },
499
- };
500
- const append = (acc, word, wordLen, width) => {
501
- const curr = acc[acc.length - 1];
502
- curr && width - curr.n > wordLen
503
- ? curr.add(word, wordLen)
504
- : acc.push(new Line(word, wordLen));
505
- };
506
- const wrapWord = (word, { width, min, hard, splitter }, offset = 0, acc = []) => {
507
- let len = splitter.length(word);
508
- let free = width - offset;
509
- if (free < min && free < len) {
510
- free = width;
511
- }
512
- while (hard && len > free) {
513
- const split = splitter.split(word, free);
514
- const chunk = word.substr(0, split);
515
- append(acc, chunk, free, width);
516
- word = word.substr(split);
517
- free = width;
518
- len = splitter.length(word);
519
- }
520
- append(acc, word, len, width);
521
- return acc;
522
- };
523
- const wordWrapLine = (line, opts, acc = []) => {
524
- if (!line.length) {
525
- acc.push(new Line());
526
- return acc;
527
- }
528
- const $opts = Object.assign({ width: 80, min: 4, hard: false, splitter: SPLIT_PLAIN }, opts);
529
- for (let word of split(line, opts.delimWord || /\s/g)) {
530
- const curr = acc[acc.length - 1];
531
- wrapWord(word, $opts, curr && curr.n > 0 ? curr.n + 1 : 0, acc);
532
- }
533
- return acc;
534
- };
535
- const wordWrapLines = (lines, opts) => {
536
- let acc = [];
537
- for (let line of split(lines, opts.delimLine)) {
538
- acc = acc.concat(wordWrapLine(line, opts));
539
- }
540
- return acc;
541
- };
542
- const wordWrap = (str, opts) => wordWrapLines(str, opts).join("\n");
543
-
544
- exports.ALPHA = ALPHA;
545
- exports.ALPHA_NUM = ALPHA_NUM;
546
- exports.B16 = B16;
547
- exports.B32 = B32;
548
- exports.B8 = B8;
549
- exports.BOM = BOM;
550
- exports.DIGITS = DIGITS;
551
- exports.ESCAPES = ESCAPES;
552
- exports.ESCAPES_REV = ESCAPES_REV;
553
- exports.HEX = HEX;
554
- exports.LOWER = LOWER;
555
- exports.PUNCTUATION = PUNCTUATION;
556
- exports.SPLIT_ANSI = SPLIT_ANSI;
557
- exports.SPLIT_PLAIN = SPLIT_PLAIN;
558
- exports.U16 = U16;
559
- exports.U24 = U24;
560
- exports.U32 = U32;
561
- exports.U64 = U64;
562
- exports.U8 = U8;
563
- exports.UPPER = UPPER;
564
- exports.WS = WS;
565
- exports.Z2 = Z2;
566
- exports.Z3 = Z3;
567
- exports.Z4 = Z4;
568
- exports.bits = bits;
569
- exports.bytes = bytes;
570
- exports.camel = camel;
571
- exports.capitalize = capitalize;
572
- exports.center = center;
573
- exports.charRange = charRange;
574
- exports.computeCursorPos = computeCursorPos;
575
- exports.defFormat = defFormat;
576
- exports.escape = escape;
577
- exports.float = float;
578
- exports.floatFixedWidth = floatFixedWidth;
579
- exports.format = format;
580
- exports.grams = grams;
581
- exports.grid = grid;
582
- exports.hstr = hstr;
583
- exports.ignore = ignore;
584
- exports.int = int;
585
- exports.intLocale = intLocale;
586
- exports.interpolate = interpolate;
587
- exports.interpolateKeys = interpolateKeys;
588
- exports.isAnsi = isAnsi;
589
- exports.isAnsiEnd = isAnsiEnd;
590
- exports.isAnsiStart = isAnsiStart;
591
- exports.join = join;
592
- exports.kebab = kebab;
593
- exports.lengthAnsi = lengthAnsi;
594
- exports.lower = lower;
595
- exports.maybeParseFloat = maybeParseFloat;
596
- exports.maybeParseInt = maybeParseInt;
597
- exports.meters = meters;
598
- exports.padLeft = padLeft;
599
- exports.padRight = padRight;
600
- exports.percent = percent;
601
- exports.radix = radix;
602
- exports.repeat = repeat;
603
- exports.ruler = ruler;
604
- exports.seconds = seconds;
605
- exports.slugify = slugify;
606
- exports.slugifyGH = slugifyGH;
607
- exports.snake = snake;
608
- exports.spacesToTabs = spacesToTabs;
609
- exports.spacesToTabsLine = spacesToTabsLine;
610
- exports.splice = splice;
611
- exports.split = split;
612
- exports.str = str;
613
- exports.stringify = stringify;
614
- exports.stripAnsi = stripAnsi;
615
- exports.tabsToSpaces = tabsToSpaces;
616
- exports.tabsToSpacesLine = tabsToSpacesLine;
617
- exports.trim = trim;
618
- exports.truncate = truncate;
619
- exports.truncateLeft = truncateLeft;
620
- exports.truncateRight = truncateRight;
621
- exports.unescape = unescape;
622
- exports.units = units;
623
- exports.upper = upper;
624
- exports.upperSnake = upperSnake;
625
- exports.uuid = uuid;
626
- exports.vector = vector;
627
- exports.wordWrap = wordWrap;
628
- exports.wordWrapLine = wordWrapLine;
629
- exports.wordWrapLines = wordWrapLines;
630
- exports.wrap = wrap;
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../api.js","../ansi.js","../case.js","../repeat.js","../truncate.js","../center.js","../cursor.js","../radix.js","../escape.js","../pad-left.js","../float.js","../format.js","../range.js","../groups.js","../hollerith.js","../int.js","../interpolate.js","../join.js","../pad-right.js","../parse.js","../percent.js","../ruler.js","../slugify.js","../splice.js","../split.js","../stringify.js","../tabs.js","../trim.js","../truncate-left.js","../units.js","../uuid.js","../vector.js","../wrap.js","../word-wrap.js"],"sourcesContent":null,"names":["memoizeJ","$8","$16","$24","$32","U64HL","illegalArgs","memoize1","$uuid"],"mappings":"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"}