@voiceflow/common 7.9.0 → 7.10.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/build/{constants → common/constants}/environment.d.ts +0 -0
- package/build/{constants → common/constants}/environment.js +0 -0
- package/build/common/constants/environment.js.map +1 -0
- package/build/{constants → common/constants}/index.d.ts +0 -0
- package/build/{constants → common/constants}/index.js +0 -0
- package/build/common/constants/index.js.map +1 -0
- package/build/{constants → common/constants}/intent.d.ts +0 -0
- package/build/{constants → common/constants}/intent.js +0 -0
- package/build/{constants → common/constants}/intent.js.map +1 -1
- package/build/{constants → common/constants}/regexp.d.ts +0 -0
- package/build/{constants → common/constants}/regexp.js +0 -0
- package/build/common/constants/regexp.js.map +1 -0
- package/build/{constants → common/constants}/slot.d.ts +0 -0
- package/build/{constants → common/constants}/slot.js +0 -0
- package/build/common/constants/slot.js.map +1 -0
- package/build/{crypto → common/crypto}/base64.d.ts +0 -0
- package/build/{crypto → common/crypto}/base64.js +0 -0
- package/build/common/crypto/base64.js.map +1 -0
- package/build/{crypto → common/crypto}/index.d.ts +0 -0
- package/build/{crypto → common/crypto}/index.js +0 -0
- package/build/common/crypto/index.js.map +1 -0
- package/build/{crypto → common/crypto}/synchronous.d.ts +0 -0
- package/build/{crypto → common/crypto}/synchronous.js +0 -0
- package/build/common/crypto/synchronous.js.map +1 -0
- package/build/{index.d.ts → common/index.d.ts} +0 -0
- package/build/{index.js → common/index.js} +0 -0
- package/build/common/index.js.map +1 -0
- package/build/{types.d.ts → common/types.d.ts} +0 -0
- package/build/{types.js → common/types.js} +0 -0
- package/build/common/types.js.map +1 -0
- package/build/{utils → common/utils}/array.d.ts +0 -0
- package/build/{utils → common/utils}/array.js +0 -0
- package/build/common/utils/array.js.map +1 -0
- package/build/{utils → common/utils}/emails.d.ts +0 -0
- package/build/{utils → common/utils}/emails.js +0 -0
- package/build/common/utils/emails.js.map +1 -0
- package/build/{utils → common/utils}/functional.d.ts +0 -0
- package/build/{utils → common/utils}/functional.js +0 -0
- package/build/common/utils/functional.js.map +1 -0
- package/build/{utils → common/utils}/generate.d.ts +0 -0
- package/build/{utils → common/utils}/generate.js +0 -0
- package/build/common/utils/generate.js.map +1 -0
- package/build/{utils → common/utils}/id.d.ts +0 -0
- package/build/{utils → common/utils}/id.js +0 -0
- package/build/common/utils/id.js.map +1 -0
- package/build/{utils → common/utils}/index.d.ts +0 -0
- package/build/{utils → common/utils}/index.js +0 -0
- package/build/common/utils/index.js.map +1 -0
- package/build/{utils → common/utils}/intent.d.ts +0 -0
- package/build/{utils → common/utils}/intent.js +0 -0
- package/build/common/utils/intent.js.map +1 -0
- package/build/{utils → common/utils}/mathjs.d.ts +0 -0
- package/build/{utils → common/utils}/mathjs.js +0 -0
- package/build/common/utils/mathjs.js.map +1 -0
- package/build/{utils → common/utils}/normalized.d.ts +0 -0
- package/build/{utils → common/utils}/normalized.js +0 -0
- package/build/common/utils/normalized.js.map +1 -0
- package/build/{utils → common/utils}/number.d.ts +0 -0
- package/build/{utils → common/utils}/number.js +0 -0
- package/build/common/utils/number.js.map +1 -0
- package/build/{utils → common/utils}/object.d.ts +0 -0
- package/build/{utils → common/utils}/object.js +0 -0
- package/build/common/utils/object.js.map +1 -0
- package/build/{utils → common/utils}/promise.d.ts +0 -0
- package/build/{utils → common/utils}/promise.js +0 -0
- package/build/common/utils/promise.js.map +1 -0
- package/build/{utils → common/utils}/protocol.d.ts +0 -0
- package/build/{utils → common/utils}/protocol.js +0 -0
- package/build/common/utils/protocol.js.map +1 -0
- package/build/{utils → common/utils}/string.d.ts +0 -0
- package/build/{utils → common/utils}/string.js +0 -0
- package/build/common/utils/string.js.map +1 -0
- package/build/{utils → common/utils}/time.d.ts +0 -0
- package/build/{utils → common/utils}/time.js +0 -0
- package/build/common/utils/time.js.map +1 -0
- package/build/{utils → common/utils}/timezones.d.ts +0 -0
- package/build/{utils → common/utils}/timezones.js +0 -0
- package/build/common/utils/timezones.js.map +1 -0
- package/build/{utils → common/utils}/variables.d.ts +0 -0
- package/build/{utils → common/utils}/variables.js +0 -0
- package/build/common/utils/variables.js.map +1 -0
- package/build/esm/constants/environment.d.ts +9 -0
- package/build/esm/constants/environment.js +11 -0
- package/build/esm/constants/environment.js.map +1 -0
- package/build/esm/constants/index.d.ts +4 -0
- package/build/esm/constants/index.js +5 -0
- package/build/esm/constants/index.js.map +1 -0
- package/build/esm/constants/intent.d.ts +4 -0
- package/build/esm/constants/intent.js +2 -0
- package/build/esm/constants/intent.js.map +1 -0
- package/build/esm/constants/regexp.d.ts +10 -0
- package/build/esm/constants/regexp.js +16 -0
- package/build/esm/constants/regexp.js.map +1 -0
- package/build/esm/constants/slot.d.ts +9 -0
- package/build/esm/constants/slot.js +7 -0
- package/build/esm/constants/slot.js.map +1 -0
- package/build/esm/crypto/base64.d.ts +7 -0
- package/build/esm/crypto/base64.js +18 -0
- package/build/esm/crypto/base64.js.map +1 -0
- package/build/esm/crypto/index.d.ts +2 -0
- package/build/esm/crypto/index.js +3 -0
- package/build/esm/crypto/index.js.map +1 -0
- package/build/esm/crypto/synchronous.d.ts +16 -0
- package/build/esm/crypto/synchronous.js +39 -0
- package/build/esm/crypto/synchronous.js.map +1 -0
- package/build/esm/index.d.ts +5 -0
- package/build/esm/index.js +7 -0
- package/build/esm/index.js.map +1 -0
- package/build/esm/types.d.ts +29 -0
- package/build/esm/types.js +2 -0
- package/build/esm/types.js.map +1 -0
- package/build/esm/utils/array.d.ts +25 -0
- package/build/esm/utils/array.js +80 -0
- package/build/esm/utils/array.js.map +1 -0
- package/build/esm/utils/emails.d.ts +2 -0
- package/build/esm/utils/emails.js +4 -0
- package/build/esm/utils/emails.js.map +1 -0
- package/build/esm/utils/functional.d.ts +23 -0
- package/build/esm/utils/functional.js +20 -0
- package/build/esm/utils/functional.js.map +1 -0
- package/build/esm/utils/generate.d.ts +12 -0
- package/build/esm/utils/generate.js +31 -0
- package/build/esm/utils/generate.js.map +1 -0
- package/build/esm/utils/id.d.ts +3 -0
- package/build/esm/utils/id.js +5 -0
- package/build/esm/utils/id.js.map +1 -0
- package/build/esm/utils/index.d.ts +18 -0
- package/build/esm/utils/index.js +20 -0
- package/build/esm/utils/index.js.map +1 -0
- package/build/esm/utils/intent.d.ts +17 -0
- package/build/esm/utils/intent.js +34 -0
- package/build/esm/utils/intent.js.map +1 -0
- package/build/esm/utils/mathjs.d.ts +1 -0
- package/build/esm/utils/mathjs.js +59 -0
- package/build/esm/utils/mathjs.js.map +1 -0
- package/build/esm/utils/normalized.d.ts +45 -0
- package/build/esm/utils/normalized.js +70 -0
- package/build/esm/utils/normalized.js.map +1 -0
- package/build/esm/utils/number.d.ts +4 -0
- package/build/esm/utils/number.js +6 -0
- package/build/esm/utils/number.js.map +1 -0
- package/build/esm/utils/object.d.ts +8 -0
- package/build/esm/utils/object.js +77 -0
- package/build/esm/utils/object.js.map +1 -0
- package/build/esm/utils/promise.d.ts +8 -0
- package/build/esm/utils/promise.js +16 -0
- package/build/esm/utils/promise.js.map +1 -0
- package/build/esm/utils/protocol.d.ts +11 -0
- package/build/esm/utils/protocol.js +17 -0
- package/build/esm/utils/protocol.js.map +1 -0
- package/build/esm/utils/string.d.ts +6 -0
- package/build/esm/utils/string.js +11 -0
- package/build/esm/utils/string.js.map +1 -0
- package/build/esm/utils/time.d.ts +3 -0
- package/build/esm/utils/time.js +64 -0
- package/build/esm/utils/time.js.map +1 -0
- package/build/esm/utils/timezones.d.ts +1 -0
- package/build/esm/utils/timezones.js +2030 -0
- package/build/{utils → esm/utils}/timezones.js.map +1 -1
- package/build/esm/utils/variables.d.ts +7 -0
- package/build/esm/utils/variables.js +57 -0
- package/build/esm/utils/variables.js.map +1 -0
- package/package.json +8 -6
- package/build/constants/environment.js.map +0 -1
- package/build/constants/index.js.map +0 -1
- package/build/constants/regexp.js.map +0 -1
- package/build/constants/slot.js.map +0 -1
- package/build/crypto/base64.js.map +0 -1
- package/build/crypto/index.js.map +0 -1
- package/build/crypto/synchronous.js.map +0 -1
- package/build/index.js.map +0 -1
- package/build/types.js.map +0 -1
- package/build/utils/array.js.map +0 -1
- package/build/utils/emails.js.map +0 -1
- package/build/utils/functional.js.map +0 -1
- package/build/utils/generate.js.map +0 -1
- package/build/utils/id.js.map +0 -1
- package/build/utils/index.js.map +0 -1
- package/build/utils/intent.js.map +0 -1
- package/build/utils/mathjs.js.map +0 -1
- package/build/utils/normalized.js.map +0 -1
- package/build/utils/number.js.map +0 -1
- package/build/utils/object.js.map +0 -1
- package/build/utils/promise.js.map +0 -1
- package/build/utils/protocol.js.map +0 -1
- package/build/utils/string.js.map +0 -1
- package/build/utils/time.js.map +0 -1
- package/build/utils/variables.js.map +0 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const NON_ALPHANUMERIC_REGEXP: RegExp;
|
|
2
|
+
export declare const convertToWord: (value: number) => string;
|
|
3
|
+
export declare const isInRange: (target: number, min: number, max: number) => boolean;
|
|
4
|
+
export declare const clamp: (value: number, min: number, max: number) => number;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import numberToWords from 'number-to-words/src';
|
|
2
|
+
export const NON_ALPHANUMERIC_REGEXP = /\W/g;
|
|
3
|
+
export const convertToWord = (value) => numberToWords.toWords(value).replace(NON_ALPHANUMERIC_REGEXP, ' ');
|
|
4
|
+
export const isInRange = (target, min, max) => target >= min && target <= max;
|
|
5
|
+
export const clamp = (value, min, max) => Math.max(Math.min(value, max), min);
|
|
6
|
+
//# sourceMappingURL=number.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"number.js","sourceRoot":"","sources":["../../../src/utils/number.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAE7C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;AAE3H,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,GAAW,EAAE,GAAW,EAAW,EAAE,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC;AAE/G,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW,EAAU,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const getKeys: <T>(obj: T) => (keyof T)[];
|
|
2
|
+
export declare const pick: <T, K extends keyof T>(obj: T, keys: K[]) => Pick<T, K>;
|
|
3
|
+
export declare const hasProperty: <T, K extends keyof T>(obj: T, key: string | K) => obj is T & Record<K, unknown>;
|
|
4
|
+
export declare const getIn: <T, K extends keyof T>(rawObj: T, key: string | string[] | K, def?: any, index?: number) => rawObj is T & Record<K, unknown>;
|
|
5
|
+
export declare const setIn: (obj: Record<string, unknown>, path: any, value: any) => any;
|
|
6
|
+
export declare const filterEntries: (obj: Record<string, any>, predicate: any) => any;
|
|
7
|
+
export declare const getDiff: (object: Record<string, any>, base: Record<string, any>) => unknown;
|
|
8
|
+
export declare const getTopLevelDiff: (object: any, base: any) => unknown;
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import _cloneDeep from 'lodash/cloneDeep';
|
|
2
|
+
import _isObject from 'lodash/isObject';
|
|
3
|
+
import _toPath from 'lodash/toPath';
|
|
4
|
+
import _transform from 'lodash/transform';
|
|
5
|
+
export const getKeys = (obj) => Object.keys(obj);
|
|
6
|
+
export const pick = (obj, keys) => keys.reduce((acc, key) => Object.assign(acc, { [key]: obj[key] }), {});
|
|
7
|
+
export const hasProperty = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key);
|
|
8
|
+
export const getIn = (rawObj, key, def, index = 0) => {
|
|
9
|
+
const path = _toPath(key);
|
|
10
|
+
let obj = rawObj;
|
|
11
|
+
let i = index;
|
|
12
|
+
while (obj && i < path.length) {
|
|
13
|
+
obj = obj[path[i++]];
|
|
14
|
+
}
|
|
15
|
+
return obj === undefined ? def : obj;
|
|
16
|
+
};
|
|
17
|
+
export const setIn = (obj, path, value) => {
|
|
18
|
+
const res = {};
|
|
19
|
+
const pathArray = _toPath(path);
|
|
20
|
+
let resVal = res;
|
|
21
|
+
let i = 0;
|
|
22
|
+
for (; i < pathArray.length - 1; i++) {
|
|
23
|
+
const currentPath = pathArray[i];
|
|
24
|
+
const currentObj = getIn(obj, pathArray.slice(0, i + 1));
|
|
25
|
+
if (resVal[currentPath]) {
|
|
26
|
+
resVal = resVal[currentPath];
|
|
27
|
+
}
|
|
28
|
+
else if (currentObj) {
|
|
29
|
+
resVal[currentPath] = _cloneDeep(currentObj);
|
|
30
|
+
resVal = resVal[currentPath];
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
const nextPath = pathArray[i + 1];
|
|
34
|
+
resVal[currentPath] = +nextPath >= 0 ? [] : {};
|
|
35
|
+
resVal = resVal[currentPath];
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if ((i === 0 ? obj : resVal)[pathArray[i]] === value) {
|
|
39
|
+
return obj;
|
|
40
|
+
}
|
|
41
|
+
if (value === undefined) {
|
|
42
|
+
delete resVal[pathArray[i]];
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
resVal[pathArray[i]] = value;
|
|
46
|
+
}
|
|
47
|
+
const result = Object.assign(Object.assign({}, obj), res);
|
|
48
|
+
if (i === 0 && value === undefined) {
|
|
49
|
+
delete result[pathArray[i]];
|
|
50
|
+
}
|
|
51
|
+
return result;
|
|
52
|
+
};
|
|
53
|
+
export const filterEntries = (obj, predicate) => Object.entries(obj).reduce((acc, [key, value]) => {
|
|
54
|
+
if (predicate(key, value)) {
|
|
55
|
+
acc[key] = value;
|
|
56
|
+
}
|
|
57
|
+
return acc;
|
|
58
|
+
}, {});
|
|
59
|
+
export const getDiff = (object, base) => {
|
|
60
|
+
const changes = (object, base) => _transform(object, (result, value, key) => {
|
|
61
|
+
if (value !== base[key]) {
|
|
62
|
+
// eslint-disable-next-line no-param-reassign
|
|
63
|
+
result[key] = _isObject(value) && _isObject(base[key]) ? changes(value, base[key]) : value;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
return changes(object, base);
|
|
67
|
+
};
|
|
68
|
+
export const getTopLevelDiff = (object, base) => {
|
|
69
|
+
const changes = (object, base) => _transform(object, (result, value, key) => {
|
|
70
|
+
if (value !== base[key]) {
|
|
71
|
+
// eslint-disable-next-line no-param-reassign
|
|
72
|
+
result[key] = value;
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
return changes(object, base);
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=object.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/utils/object.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const delay: <T extends unknown = boolean>(timeout: number, value?: T) => Promise<T>;
|
|
2
|
+
export declare const rejectIn: (timeout: number) => Promise<never>;
|
|
3
|
+
interface ControlledPromise<T> extends Promise<T> {
|
|
4
|
+
reject: (reason?: any) => void;
|
|
5
|
+
resolve: (value: T) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const createControlledPromise: <T>() => ControlledPromise<T>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export const delay = (timeout, value = true) => new Promise((resolve) => setTimeout(resolve.bind(null, value), timeout));
|
|
2
|
+
export const rejectIn = (timeout) =>
|
|
3
|
+
// eslint-disable-next-line promise/param-names
|
|
4
|
+
new Promise((_resolve, reject) => setTimeout(() => reject(new Error('Rejected by timeout!')), timeout));
|
|
5
|
+
export const createControlledPromise = () => {
|
|
6
|
+
let res;
|
|
7
|
+
let rej;
|
|
8
|
+
const promise = new Promise((resolve, reject) => {
|
|
9
|
+
res = resolve;
|
|
10
|
+
rej = reject;
|
|
11
|
+
});
|
|
12
|
+
promise.reject = rej;
|
|
13
|
+
promise.resolve = res;
|
|
14
|
+
return promise;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=promise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promise.js","sourceRoot":"","sources":["../../../src/utils/promise.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,CAA0B,OAAe,EAAE,QAAW,IAAS,EAAc,EAAE,CAClG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAkB,EAAE;AAC1D,+CAA+C;AAC/C,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAOjH,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAA4B,EAAE;IACnE,IAAI,GAAuB,CAAC;IAC5B,IAAI,GAA2B,CAAC;IAEhC,MAAM,OAAO,GAAyB,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACvE,GAAG,GAAG,OAAO,CAAC;QACd,GAAG,GAAG,MAAM,CAAC;IACf,CAAC,CAAyB,CAAC;IAE3B,OAAO,CAAC,MAAM,GAAG,GAAI,CAAC;IACtB,OAAO,CAAC,OAAO,GAAG,GAAI,CAAC;IAEvB,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const createAction: import("typescript-fsa").ActionCreatorFactory;
|
|
2
|
+
export declare const typeFactory: (...parts: string[]) => (name: string) => string;
|
|
3
|
+
export declare class Channel<K extends string> {
|
|
4
|
+
variables: K[];
|
|
5
|
+
build: (params: Record<K, string>) => string;
|
|
6
|
+
constructor(variables: K[], build: (params: Record<K, string>) => string);
|
|
7
|
+
buildMatcher(): string;
|
|
8
|
+
extend<L extends string>(variables: L[], build: (params: Record<L, string>) => string): Channel<K | L>;
|
|
9
|
+
}
|
|
10
|
+
export declare type ChannelParams<T extends Channel<string>> = T extends Channel<infer R> ? Record<R, string> : never;
|
|
11
|
+
export declare const createChannel: <K extends string>(variables: K[], build: (params: Record<K, string>) => string) => Channel<K>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import actionCreatorFactory from 'typescript-fsa';
|
|
2
|
+
export const createAction = actionCreatorFactory();
|
|
3
|
+
export const typeFactory = (...parts) => (name) => [...parts, name].join('.');
|
|
4
|
+
export class Channel {
|
|
5
|
+
constructor(variables, build) {
|
|
6
|
+
this.variables = variables;
|
|
7
|
+
this.build = build;
|
|
8
|
+
}
|
|
9
|
+
buildMatcher() {
|
|
10
|
+
return this.build(this.variables.reduce((acc, key) => Object.assign(acc, { [key]: `:${key}` }), {}));
|
|
11
|
+
}
|
|
12
|
+
extend(variables, build) {
|
|
13
|
+
return new Channel([...this.variables, ...variables], (params) => `${this.build(params)}/${build(params)}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export const createChannel = (variables, build) => new Channel(variables, build);
|
|
17
|
+
//# sourceMappingURL=protocol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/utils/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,YAAY,GAAG,oBAAoB,EAAE,CAAC;AAEnD,MAAM,CAAC,MAAM,WAAW,GACtB,CAAC,GAAG,KAAe,EAAE,EAAE,CACvB,CAAC,IAAY,EAAU,EAAE,CACvB,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/B,MAAM,OAAO,OAAO;IAClB,YAAmB,SAAc,EAAS,KAA4C;QAAnE,cAAS,GAAT,SAAS,CAAK;QAAS,UAAK,GAAL,KAAK,CAAuC;IAAG,CAAC;IAE1F,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC,EAAE,EAAuB,CAAC,CAAC,CAAC;IAC5H,CAAC;IAED,MAAM,CAAmB,SAAc,EAAE,KAA4C;QACnF,OAAO,IAAI,OAAO,CAAQ,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrH,CAAC;CACF;AAID,MAAM,CAAC,MAAM,aAAa,GAAG,CAAmB,SAAc,EAAE,KAA4C,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const capitalizeFirstLetter: (value: string) => string;
|
|
2
|
+
export declare const capitalizeAllWords: (value: string) => string;
|
|
3
|
+
export declare const arrayStringReplace: (targetString: string, newString: string, stringArray: string[]) => string[];
|
|
4
|
+
export declare const stripHTMLTags: (str: string) => string;
|
|
5
|
+
export declare const removeTrailingUnderscores: (str: string) => string;
|
|
6
|
+
export declare const conditionalReplace: (base: string, pattern: RegExp, value?: string | undefined) => string;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const TAGS_REGEXP = /(<([^>]+)>)/gi;
|
|
2
|
+
const TRAILING_UNDERSCORES_REGEXP = /^_+|_+$/g;
|
|
3
|
+
export const capitalizeFirstLetter = (value) => value.charAt(0).toUpperCase() + value.slice(1);
|
|
4
|
+
export const capitalizeAllWords = (value) => value.split(' ').map(capitalizeFirstLetter).join(' ');
|
|
5
|
+
export const arrayStringReplace = (targetString, newString, stringArray) => stringArray.map((string) => string.replace(targetString, newString));
|
|
6
|
+
export const stripHTMLTags = (str) => str.replace(TAGS_REGEXP, '');
|
|
7
|
+
export const removeTrailingUnderscores = (str) => str.replace(TRAILING_UNDERSCORES_REGEXP, '');
|
|
8
|
+
export const conditionalReplace = (base, pattern, value) => {
|
|
9
|
+
return value ? base.replace(pattern, value) : base;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.js","sourceRoot":"","sources":["../../../src/utils/string.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,eAAe,CAAC;AACpC,MAAM,2BAA2B,GAAG,UAAU,CAAC;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAE/G,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEnH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,YAAoB,EAAE,SAAiB,EAAE,WAAqB,EAAY,EAAE,CAC7G,WAAW,CAAC,GAAG,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AAEnF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;AAE/G,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,KAAc,EAAE,EAAE;IAClF,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACrD,CAAC,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import dayjs from 'dayjs';
|
|
2
|
+
import advancedFormat from 'dayjs/plugin/advancedFormat';
|
|
3
|
+
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
4
|
+
import duration from 'dayjs/plugin/duration';
|
|
5
|
+
import minMax from 'dayjs/plugin/minMax';
|
|
6
|
+
import relativeTime from 'dayjs/plugin/relativeTime';
|
|
7
|
+
import updateLocale from 'dayjs/plugin/updateLocale';
|
|
8
|
+
import utc from 'dayjs/plugin/utc';
|
|
9
|
+
dayjs.extend(utc);
|
|
10
|
+
dayjs.extend(duration);
|
|
11
|
+
dayjs.extend(relativeTime);
|
|
12
|
+
dayjs.extend(customParseFormat);
|
|
13
|
+
dayjs.extend(minMax);
|
|
14
|
+
dayjs.extend(advancedFormat);
|
|
15
|
+
dayjs.extend(updateLocale);
|
|
16
|
+
// https://day.js.org/docs/en/customization/relative-time
|
|
17
|
+
dayjs.updateLocale('en', {
|
|
18
|
+
relativeTime: {
|
|
19
|
+
future: 'in %s',
|
|
20
|
+
past: '%s ago',
|
|
21
|
+
s: 'seconds',
|
|
22
|
+
m: 'a minute',
|
|
23
|
+
mm: '%d minutes',
|
|
24
|
+
h: 'an hour',
|
|
25
|
+
hh: '%d hours',
|
|
26
|
+
d: 'a day',
|
|
27
|
+
dd: '%d days',
|
|
28
|
+
M: 'a month',
|
|
29
|
+
MM: '%d months',
|
|
30
|
+
y: 'a year',
|
|
31
|
+
yy: '%d years',
|
|
32
|
+
},
|
|
33
|
+
});
|
|
34
|
+
export const getCurrentTimestamp = () => Math.floor(Date.now() / 1000);
|
|
35
|
+
export const getTimeDuration = (pastTime) => {
|
|
36
|
+
const diff = dayjs().utc().diff(pastTime);
|
|
37
|
+
return dayjs.duration(diff).humanize();
|
|
38
|
+
};
|
|
39
|
+
export const getAbbrevatedFormat = (time) => time
|
|
40
|
+
.split(' ')
|
|
41
|
+
.map((str) => {
|
|
42
|
+
if (str.includes('day')) {
|
|
43
|
+
return 'd';
|
|
44
|
+
}
|
|
45
|
+
if (str.includes('hour')) {
|
|
46
|
+
return 'hr';
|
|
47
|
+
}
|
|
48
|
+
if (str.includes('minute')) {
|
|
49
|
+
return 'm';
|
|
50
|
+
}
|
|
51
|
+
if (str.includes('second')) {
|
|
52
|
+
return 's';
|
|
53
|
+
}
|
|
54
|
+
if (str.includes('a')) {
|
|
55
|
+
return '1';
|
|
56
|
+
}
|
|
57
|
+
if (str.includes('a') || str.includes('few')) {
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
return str;
|
|
61
|
+
})
|
|
62
|
+
.filter(Boolean)
|
|
63
|
+
.join('');
|
|
64
|
+
//# sourceMappingURL=time.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"","sources":["../../../src/utils/time.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAC/D,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,GAAG,MAAM,kBAAkB,CAAC;AAEnC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAClB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACvB,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAC3B,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAChC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACrB,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;AAC7B,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAE3B,yDAAyD;AACzD,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE;IACvB,YAAY,EAAE;QACZ,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,QAAQ;QACd,CAAC,EAAE,SAAS;QACZ,CAAC,EAAE,UAAU;QACb,EAAE,EAAE,YAAY;QAChB,CAAC,EAAE,SAAS;QACZ,EAAE,EAAE,UAAU;QACd,CAAC,EAAE,OAAO;QACV,EAAE,EAAE,SAAS;QACb,CAAC,EAAE,SAAS;QACZ,EAAE,EAAE,WAAW;QACf,CAAC,EAAE,QAAQ;QACX,EAAE,EAAE,UAAU;KACf;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;AAEvE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAyB,EAAE,EAAE;IAC3D,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE1C,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;AACzC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE,CAClD,IAAI;KACD,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE;IACnB,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QACvB,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QACxB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC1B,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC1B,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACrB,OAAO,GAAG,CAAC;KACZ;IACD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QAC5C,OAAO,IAAI,CAAC;KACb;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;KACD,MAAM,CAAC,OAAO,CAAC;KACf,IAAI,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const TIMEZONES: string[];
|