@opfr/utils-lang 0.2.2 → 0.3.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/dist/array.d.ts +1 -0
- package/dist/array.d.ts.map +1 -1
- package/dist/array.js +65 -0
- package/dist/array.js.map +1 -0
- package/dist/common.js +14 -0
- package/dist/common.js.map +1 -0
- package/dist/date.js +56 -0
- package/dist/date.js.map +1 -0
- package/dist/duration.js +34 -0
- package/dist/duration.js.map +1 -0
- package/dist/function.js +4 -0
- package/dist/function.js.map +1 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +1443 -1646
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/index.umd.js +6 -6
- package/dist/locales/fr.js +85 -0
- package/dist/locales/fr.js.map +1 -0
- package/dist/number.js +23 -0
- package/dist/number.js.map +1 -0
- package/dist/object.d.ts +1 -0
- package/dist/object.d.ts.map +1 -1
- package/dist/object.js +25 -0
- package/dist/object.js.map +1 -0
- package/dist/string.js +62 -0
- package/dist/string.js.map +1 -0
- package/package.json +3 -3
- package/dist/emojis.d.ts +0 -206
- package/dist/emojis.d.ts.map +0 -1
package/dist/array.d.ts
CHANGED
|
@@ -18,4 +18,5 @@ export type RangeParams = {
|
|
|
18
18
|
step?: number;
|
|
19
19
|
};
|
|
20
20
|
export declare const range: ({ start, stop, step }: RangeParams) => number[];
|
|
21
|
+
export declare const arrayToRecord: <TKey extends string | number, TValue>(array: [TKey, TValue][]) => Record<TKey, TValue>;
|
|
21
22
|
//# sourceMappingURL=array.d.ts.map
|
package/dist/array.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,aAAc,CAAC,EAAE,YAAY,MAAM,KAAG,CAAC,EAAE,EAQ7D,CAAC;AAEF,eAAO,MAAM,OAAO,uDACX,CAAC,EAAE,WACD,CAAC,KAAK,CAAC,mBASjB,CAAC;AAEF,eAAO,MAAM,MAAM,uDACV,CAAC,EAAE,WACD,CAAC,KAAK,CAAC,KACf,CAAC,EAMH,CAAC;AAEF,eAAO,MAAM,iBAAiB,cACpB,CAAC,EAAE,UACH,CAAC,EAAE,YACF,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM,KACjC,CAAC,EAEH,CAAC;AAEF,eAAO,MAAM,OAAO,aACX,CAAC,EAAE,WACD,CAAC,EAAE,YACH,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM,KACjC,CAAC,EAEH,CAAC;AAEF,eAAO,MAAM,MAAM,uDACV,CAAC,EAAE,WACD,CAAC,KAAK,CAAC,KACf,CAAC,EAEH,CAAC;AAEF,eAAO,MAAM,OAAO,aAAc,CAAC,EAAE,QAMpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,aAC1B,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,KAC9B,CAAC,EAAmE,CAAC;AAExE,eAAO,MAAM,SAAS,aAAc,CAAC,EAAE,WAAW,CAAC,WAAW,OAAO,KAAG,CAAC,EAGxE,CAAC;AAEF,eAAO,MAAM,cAAc,aAClB,CAAC,EAAE,WACD,CAAC,WACD,OAAO,KACf,CAAC,EAA+C,CAAC;AAEpD,eAAO,MAAM,cAAc,aAClB,CAAC,EAAE,YACA,CAAC,EAAE,WACJ,OAAO,KACf,CAAC,EAAqD,CAAC;AAE1D,eAAO,MAAM,QAAQ,eAAgB,CAAC,WAAW,OAAO,KAAG,CAAC,EAClC,CAAC;AAE3B,eAAO,MAAM,aAAa,gBAAiB,CAAC,EAAE,WAAW,OAAO,KAAG,CAAC,EAC3C,CAAC;AAE1B,eAAO,MAAM,QAAQ,aAAc,CAAC,EAAE,KAAG,CACF,CAAC;AAExC,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,KAAK,0BAAmC,WAAW,KAAG,MAAM,EAexE,CAAC"}
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,aAAc,CAAC,EAAE,YAAY,MAAM,KAAG,CAAC,EAAE,EAQ7D,CAAC;AAEF,eAAO,MAAM,OAAO,uDACX,CAAC,EAAE,WACD,CAAC,KAAK,CAAC,mBASjB,CAAC;AAEF,eAAO,MAAM,MAAM,uDACV,CAAC,EAAE,WACD,CAAC,KAAK,CAAC,KACf,CAAC,EAMH,CAAC;AAEF,eAAO,MAAM,iBAAiB,cACpB,CAAC,EAAE,UACH,CAAC,EAAE,YACF,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM,KACjC,CAAC,EAEH,CAAC;AAEF,eAAO,MAAM,OAAO,aACX,CAAC,EAAE,WACD,CAAC,EAAE,YACH,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM,KACjC,CAAC,EAEH,CAAC;AAEF,eAAO,MAAM,MAAM,uDACV,CAAC,EAAE,WACD,CAAC,KAAK,CAAC,KACf,CAAC,EAEH,CAAC;AAEF,eAAO,MAAM,OAAO,aAAc,CAAC,EAAE,QAMpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,aAC1B,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,KAC9B,CAAC,EAAmE,CAAC;AAExE,eAAO,MAAM,SAAS,aAAc,CAAC,EAAE,WAAW,CAAC,WAAW,OAAO,KAAG,CAAC,EAGxE,CAAC;AAEF,eAAO,MAAM,cAAc,aAClB,CAAC,EAAE,WACD,CAAC,WACD,OAAO,KACf,CAAC,EAA+C,CAAC;AAEpD,eAAO,MAAM,cAAc,aAClB,CAAC,EAAE,YACA,CAAC,EAAE,WACJ,OAAO,KACf,CAAC,EAAqD,CAAC;AAE1D,eAAO,MAAM,QAAQ,eAAgB,CAAC,WAAW,OAAO,KAAG,CAAC,EAClC,CAAC;AAE3B,eAAO,MAAM,aAAa,gBAAiB,CAAC,EAAE,WAAW,OAAO,KAAG,CAAC,EAC3C,CAAC;AAE1B,eAAO,MAAM,QAAQ,aAAc,CAAC,EAAE,KAAG,CACF,CAAC;AAExC,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,KAAK,0BAAmC,WAAW,KAAG,MAAM,EAexE,CAAC;AAEF,eAAO,MAAM,aAAa,gDACjB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,KACtB,OAAO,IAAI,EAAE,MAAM,CAAyD,CAAC"}
|
package/dist/array.js
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { randomBetween } from 'number';
|
|
2
|
+
export const paginate = (array, pageSize) => {
|
|
3
|
+
return array.reduce((acc, val, i) => {
|
|
4
|
+
const idx = Math.floor(i / pageSize);
|
|
5
|
+
const page = acc[idx] || (acc[idx] = []);
|
|
6
|
+
page.push(val);
|
|
7
|
+
return acc;
|
|
8
|
+
}, []);
|
|
9
|
+
};
|
|
10
|
+
export const groupBy = (array, key) => {
|
|
11
|
+
return array.reduce((acc, v) => {
|
|
12
|
+
(acc[key(v)] = acc[key(v)] || []).push(v);
|
|
13
|
+
return acc;
|
|
14
|
+
}, {});
|
|
15
|
+
};
|
|
16
|
+
export const sortBy = (array, key) => {
|
|
17
|
+
return [...array].sort((a, b) => {
|
|
18
|
+
if (key(a) < key(b))
|
|
19
|
+
return -1;
|
|
20
|
+
if (key(a) > key(b))
|
|
21
|
+
return 1;
|
|
22
|
+
return 0;
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
export const mutuallyInclusive = (array1, array2, key = i => i) => {
|
|
26
|
+
return array1.filter(e => array2.some(f => key(f) === key(e)));
|
|
27
|
+
};
|
|
28
|
+
export const exclude = (array, exclude, key = i => i) => {
|
|
29
|
+
return array.filter(e => !exclude.some(f => key(f) === key(e)));
|
|
30
|
+
};
|
|
31
|
+
export const unique = (array, key) => {
|
|
32
|
+
return [...new Set(array.map(e => key(e)))];
|
|
33
|
+
};
|
|
34
|
+
export const shuffle = (array) => {
|
|
35
|
+
for (let i = array.length - 1; i > 0; i--) {
|
|
36
|
+
const j = Math.floor(Math.random() * (i + 1));
|
|
37
|
+
[array[i], array[j]] = [array[j], array[i]];
|
|
38
|
+
}
|
|
39
|
+
return array;
|
|
40
|
+
};
|
|
41
|
+
export const filterNullAndUndefined = (array) => array.filter((e) => e !== null && e !== undefined);
|
|
42
|
+
export const includeIf = (array, element, include) => [
|
|
43
|
+
...array,
|
|
44
|
+
...insertIf(element, include),
|
|
45
|
+
];
|
|
46
|
+
export const includeBeginIf = (array, element, include) => [...insertIf(element, include), ...array];
|
|
47
|
+
export const includeArrayIf = (array, elements, include) => [...array, ...insertArrayIf(elements, include)];
|
|
48
|
+
export const insertIf = (element, include) => include ? [element] : [];
|
|
49
|
+
export const insertArrayIf = (elements, include) => include ? elements : [];
|
|
50
|
+
export const pickFrom = (array) => array[randomBetween(0, array.length)];
|
|
51
|
+
export const range = ({ start = 0, stop, step = 1 }) => {
|
|
52
|
+
if (step === 0) {
|
|
53
|
+
throw new RangeError('step cannot be equal to 0');
|
|
54
|
+
}
|
|
55
|
+
const isEmpty = (step > 0 && start >= stop) || (step < 0 && start <= stop);
|
|
56
|
+
if (isEmpty)
|
|
57
|
+
return [];
|
|
58
|
+
const result = [];
|
|
59
|
+
for (let i = start; step > 0 ? i < stop : i > stop; i += step) {
|
|
60
|
+
result.push(i);
|
|
61
|
+
}
|
|
62
|
+
return result;
|
|
63
|
+
};
|
|
64
|
+
export const arrayToRecord = (array) => Object.fromEntries(array);
|
|
65
|
+
//# sourceMappingURL=array.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"array.js","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"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"}
|
package/dist/common.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { isString } from 'string';
|
|
2
|
+
export const isDefined = (value) => {
|
|
3
|
+
return value !== undefined && value !== null;
|
|
4
|
+
};
|
|
5
|
+
export const isJSON = (json) => {
|
|
6
|
+
if (!isString(json)) {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
return /^[\],:{}\s]*$/.test(json
|
|
10
|
+
.replace(/\\["\\\/bfnrtu]/g, '@')
|
|
11
|
+
.replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, ']')
|
|
12
|
+
.replace(/(?:^|:|,)(?:\s*\[)+/g, ''));
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAI,KAAQ,EAA2B,EAAE;IAChE,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAa,EAAW,EAAE;IAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,CACzB,IAAI;SACD,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC;SAChC,OAAO,CACN,kEAAkE,EAClE,GAAG,CACJ;SACA,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CACvC,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/date.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
import fr from './locales/fr';
|
|
3
|
+
import { capitalizeAllWords } from './string';
|
|
4
|
+
moment.locale('fr', fr);
|
|
5
|
+
export const isValidDate = (date) => {
|
|
6
|
+
return new Date(date).toString() !== 'Invalid Date';
|
|
7
|
+
};
|
|
8
|
+
export const dateDiff = (date1, date2) => {
|
|
9
|
+
return Math.abs(Math.ceil((date2.getTime() - date1.getTime()) / (1000 * 60 * 60 * 24)));
|
|
10
|
+
};
|
|
11
|
+
export const formatDate = (date) => {
|
|
12
|
+
return capitalizeAllWords(moment(date).format('DD MMMM YYYY'));
|
|
13
|
+
};
|
|
14
|
+
export const formatDateWithDay = (date) => {
|
|
15
|
+
return capitalizeAllWords(moment(date).format('dddd DD MMMM YYYY'));
|
|
16
|
+
};
|
|
17
|
+
export const sameDay = (d1, d2, compareYear = true) => {
|
|
18
|
+
return ((compareYear ? d1.getFullYear() === d2.getFullYear() : true) &&
|
|
19
|
+
d1.getMonth() === d2.getMonth() &&
|
|
20
|
+
d1.getDate() === d2.getDate());
|
|
21
|
+
};
|
|
22
|
+
export const yesterday = () => {
|
|
23
|
+
return moment().locale('fr').subtract(1, 'days').toDate();
|
|
24
|
+
};
|
|
25
|
+
export const precise = (timestamp) => {
|
|
26
|
+
const parts = [];
|
|
27
|
+
const duration = moment.duration(timestamp);
|
|
28
|
+
if (!duration || duration.toISOString() === 'P0D')
|
|
29
|
+
return;
|
|
30
|
+
if (duration.years() >= 1) {
|
|
31
|
+
const years = Math.floor(duration.years());
|
|
32
|
+
parts.push(years + ' ' + (years > 1 ? 'années' : 'année'));
|
|
33
|
+
}
|
|
34
|
+
if (duration.months() >= 1) {
|
|
35
|
+
const months = Math.floor(duration.months());
|
|
36
|
+
parts.push(months + ' mois');
|
|
37
|
+
}
|
|
38
|
+
if (duration.days() >= 1) {
|
|
39
|
+
const days = Math.floor(duration.days());
|
|
40
|
+
parts.push(days + ' ' + (days > 1 ? 'jours' : 'jour'));
|
|
41
|
+
}
|
|
42
|
+
if (duration.hours() >= 1) {
|
|
43
|
+
const hours = Math.floor(duration.hours());
|
|
44
|
+
parts.push(hours + ' ' + (hours > 1 ? 'heures' : 'heure'));
|
|
45
|
+
}
|
|
46
|
+
if (duration.minutes() >= 1) {
|
|
47
|
+
const minutes = Math.floor(duration.minutes());
|
|
48
|
+
parts.push(minutes + ' ' + (minutes > 1 ? 'minutes' : 'minute'));
|
|
49
|
+
}
|
|
50
|
+
if (duration.seconds() >= 1) {
|
|
51
|
+
const seconds = Math.floor(duration.seconds());
|
|
52
|
+
parts.push(seconds + ' ' + (seconds > 1 ? 'secondes' : 'seconde'));
|
|
53
|
+
}
|
|
54
|
+
return parts.join(', ');
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=date.js.map
|
package/dist/date.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date.js","sourceRoot":"","sources":["../src/date.ts"],"names":[],"mappings":"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"}
|
package/dist/duration.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const REGEXP = /^([1-9][0-9]?)([hmd])$/i;
|
|
2
|
+
export const isDuration = (str) => {
|
|
3
|
+
return !!str && REGEXP.test(str);
|
|
4
|
+
};
|
|
5
|
+
export const durationToMs = (str) => {
|
|
6
|
+
const result = REGEXP.exec(str);
|
|
7
|
+
if (!result) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
const [, time, scale] = result;
|
|
11
|
+
const nb = parseInt(time, 10);
|
|
12
|
+
const min = 1000 * 60;
|
|
13
|
+
if (scale === 'm')
|
|
14
|
+
return min * nb;
|
|
15
|
+
if (scale === 'h')
|
|
16
|
+
return min * 60 * nb;
|
|
17
|
+
if (scale === 'd')
|
|
18
|
+
return min * 60 * 24 * nb;
|
|
19
|
+
};
|
|
20
|
+
export const formatDuration = (str) => {
|
|
21
|
+
const result = REGEXP.exec(str);
|
|
22
|
+
if (!result) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
const [, time, scale] = result;
|
|
26
|
+
const nb = parseInt(time, 10);
|
|
27
|
+
if (scale === 'm')
|
|
28
|
+
return `${nb} minute${nb > 1 ? 's' : ''}`;
|
|
29
|
+
if (scale === 'h')
|
|
30
|
+
return `${nb} heure${nb > 1 ? 's' : ''}`;
|
|
31
|
+
if (scale === 'd')
|
|
32
|
+
return `${nb} jour${nb > 1 ? 's' : ''}`;
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../src/duration.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,GAAG,yBAAyB,CAAC;AAEzC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAkB,EAAW,EAAE;IACxD,OAAO,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE;IAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC;IAC/B,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IAEtB,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,GAAG,GAAG,EAAE,CAAC;IACnC,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC;IACxC,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,EAAE;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC;IAC/B,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAE9B,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC7D,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC5D,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC7D,CAAC,CAAC"}
|
package/dist/function.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function.js","sourceRoot":"","sources":["../src/function.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAW,EAAkB,EAAE;IACxD,OAAO,OAAO,EAAE,KAAK,UAAU,CAAC;AAClC,CAAC,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
|