@wandzai/utils 1.0.58-interactions-close-btn-2 → 1.0.58-interactions-close-btn-4

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 (56) hide show
  1. package/package.json +1 -1
  2. package/src/cache.d.ts +1 -0
  3. package/src/cache.js +6 -0
  4. package/src/cache.js.map +1 -0
  5. package/src/common.d.ts +16 -0
  6. package/src/common.js +93 -0
  7. package/src/common.js.map +1 -0
  8. package/src/date.d.ts +7 -0
  9. package/src/date.js +34 -0
  10. package/src/date.js.map +1 -0
  11. package/src/encrypt-decrypt.d.ts +2 -0
  12. package/src/encrypt-decrypt.js +17 -0
  13. package/src/encrypt-decrypt.js.map +1 -0
  14. package/src/gzip.d.ts +1 -0
  15. package/src/gzip.js +22 -0
  16. package/src/gzip.js.map +1 -0
  17. package/src/hash.d.ts +1 -0
  18. package/src/hash.js +17 -0
  19. package/src/hash.js.map +1 -0
  20. package/src/http.d.ts +5 -0
  21. package/src/http.js +47 -0
  22. package/src/http.js.map +1 -0
  23. package/src/index.js +30 -0
  24. package/src/index.js.map +1 -0
  25. package/src/interactions.d.ts +5 -0
  26. package/src/{interactions.ts → interactions.js} +31 -35
  27. package/src/interactions.js.map +1 -0
  28. package/src/mysql.d.ts +1 -0
  29. package/src/mysql.js +19 -0
  30. package/src/mysql.js.map +1 -0
  31. package/src/numeric.d.ts +2 -0
  32. package/src/numeric.js +14 -0
  33. package/src/numeric.js.map +1 -0
  34. package/src/schedule.d.ts +8 -0
  35. package/src/schedule.js +31 -0
  36. package/src/schedule.js.map +1 -0
  37. package/src/snowflake.d.ts +3 -0
  38. package/src/snowflake.js +31 -0
  39. package/src/snowflake.js.map +1 -0
  40. package/src/wandz.d.ts +17 -0
  41. package/src/wandz.js +118 -0
  42. package/src/wandz.js.map +1 -0
  43. package/src/cache.ts +0 -1
  44. package/src/common.ts +0 -104
  45. package/src/date.ts +0 -37
  46. package/src/encrypt-decrypt.ts +0 -14
  47. package/src/gzip.ts +0 -30
  48. package/src/hash.ts +0 -12
  49. package/src/http.ts +0 -64
  50. package/src/mysql.ts +0 -14
  51. package/src/numeric.ts +0 -9
  52. package/src/schedule.ts +0 -35
  53. package/src/snowflake.ts +0 -23
  54. package/src/wandz.ts +0 -132
  55. package/tsconfig.lib.json +0 -9
  56. /package/src/{index.ts → index.d.ts} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wandzai/utils",
3
- "version": "1.0.58-interactions-close-btn-2",
3
+ "version": "1.0.58-interactions-close-btn-4",
4
4
  "description": "Common used utilities library",
5
5
  "main": "src/index",
6
6
  "scripts": {
package/src/cache.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare const cacheKeyBuilder: (cacheKey: string, identifiers: any) => string;
package/src/cache.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cacheKeyBuilder = void 0;
4
+ const cacheKeyBuilder = (cacheKey, identifiers) => `${cacheKey}${JSON.stringify(identifiers)}`;
5
+ exports.cacheKeyBuilder = cacheKeyBuilder;
6
+ //# sourceMappingURL=cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../../libs/utils/src/cache.ts"],"names":[],"mappings":";;;AAAO,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,WAAgB,EAAU,EAAE,CAAC,GAAG,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;AAA9G,QAAA,eAAe,mBAA+F"}
@@ -0,0 +1,16 @@
1
+ export declare const fakeDelay: (milliSec: number) => Promise<unknown>;
2
+ export declare const convertCamelCaseToUnderscore: (term: string) => string;
3
+ export declare const convertUnderscoreToCamelCase: (underscoreString: string) => string;
4
+ export declare const convertUnderscoreToCamelCaseObj: (obj: Record<string, any>) => Record<string, any>;
5
+ export declare const convertCamelCaseToUnderscoreObj: (obj: Record<string, any>) => Record<string, any>;
6
+ export declare const kebabToDisplayName: (kebabCase: string) => string;
7
+ export declare const stringifyWithSingleQuotes: (arr: any[]) => string;
8
+ export declare const upperCaseFirstChar: (word: string) => string;
9
+ export declare const upperCaseFirstCharOfEachWord: (str: string) => string;
10
+ export declare const upperCaseFirstCharOfEachWordSplitBySpace: (str: string) => string;
11
+ export declare const jsonToConsistentString: (jsonObj: any) => string;
12
+ export declare const booleanStringToBoolean: (value: string) => value is "true";
13
+ export declare const booleanStringToNumber: (value: string) => 1 | 0;
14
+ export declare const normalizeSfResponseObjKeys: (obj: Record<string, any>) => {
15
+ [k: string]: any;
16
+ };
package/src/common.js ADDED
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeSfResponseObjKeys = exports.booleanStringToNumber = exports.booleanStringToBoolean = exports.jsonToConsistentString = exports.upperCaseFirstCharOfEachWordSplitBySpace = exports.upperCaseFirstCharOfEachWord = exports.upperCaseFirstChar = exports.stringifyWithSingleQuotes = exports.kebabToDisplayName = exports.convertCamelCaseToUnderscoreObj = exports.convertUnderscoreToCamelCaseObj = exports.convertUnderscoreToCamelCase = exports.convertCamelCaseToUnderscore = exports.fakeDelay = void 0;
4
+ const fakeDelay = (milliSec) => new Promise((resolve) => {
5
+ setTimeout(resolve, milliSec);
6
+ });
7
+ exports.fakeDelay = fakeDelay;
8
+ const convertCamelCaseToUnderscore = (term) => term
9
+ .split(/\.?(?=[A-Z])/)
10
+ .join('_')
11
+ .toLowerCase();
12
+ exports.convertCamelCaseToUnderscore = convertCamelCaseToUnderscore;
13
+ const convertUnderscoreToCamelCase = (underscoreString) => {
14
+ return underscoreString.replace(/_([a-z])/g, (_match, group) => {
15
+ return group.toUpperCase();
16
+ });
17
+ };
18
+ exports.convertUnderscoreToCamelCase = convertUnderscoreToCamelCase;
19
+ const convertUnderscoreToCamelCaseObj = (obj) => {
20
+ return Object.keys(obj).reduce((acc, key) => {
21
+ acc[(0, exports.convertUnderscoreToCamelCase)(key)] = obj[key];
22
+ return acc;
23
+ }, {});
24
+ };
25
+ exports.convertUnderscoreToCamelCaseObj = convertUnderscoreToCamelCaseObj;
26
+ const convertCamelCaseToUnderscoreObj = (obj) => {
27
+ return Object.keys(obj).reduce((acc, key) => {
28
+ acc[(0, exports.convertCamelCaseToUnderscore)(key)] = obj[key];
29
+ return acc;
30
+ }, {});
31
+ };
32
+ exports.convertCamelCaseToUnderscoreObj = convertCamelCaseToUnderscoreObj;
33
+ const kebabToDisplayName = (kebabCase) => kebabCase
34
+ .split('-')
35
+ .map(word => word.charAt(0).toUpperCase() + word.slice(1))
36
+ .join(' ');
37
+ exports.kebabToDisplayName = kebabToDisplayName;
38
+ const stringifyWithSingleQuotes = (arr) => {
39
+ return JSON.stringify(arr, (key, value) => {
40
+ if (typeof value === 'string') {
41
+ return `'${value}'`;
42
+ }
43
+ return value;
44
+ })
45
+ .replace(/"([^"]+)":/g, "'$1':")
46
+ .replace(/"/g, '');
47
+ };
48
+ exports.stringifyWithSingleQuotes = stringifyWithSingleQuotes;
49
+ const upperCaseFirstChar = (word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
50
+ exports.upperCaseFirstChar = upperCaseFirstChar;
51
+ const upperCaseFirstCharOfEachWord = (str) => {
52
+ return (str || '').replace(/\b\w/g, function (match) {
53
+ return match.toUpperCase();
54
+ });
55
+ };
56
+ exports.upperCaseFirstCharOfEachWord = upperCaseFirstCharOfEachWord;
57
+ const upperCaseFirstCharOfEachWordSplitBySpace = (str) => {
58
+ return (str || '').split(' ').map(exports.upperCaseFirstChar).join(' ');
59
+ };
60
+ exports.upperCaseFirstCharOfEachWordSplitBySpace = upperCaseFirstCharOfEachWordSplitBySpace;
61
+ const jsonToConsistentString = (jsonObj) => {
62
+ function sortObject(obj) {
63
+ if (obj === null || typeof obj !== 'object') {
64
+ return obj;
65
+ }
66
+ if (Array.isArray(obj)) {
67
+ return obj.map(sortObject);
68
+ }
69
+ const sortedKeys = Object.keys(obj).sort();
70
+ const sortedObj = {};
71
+ for (const key of sortedKeys) {
72
+ sortedObj[key] = sortObject(obj[key]);
73
+ }
74
+ return sortedObj;
75
+ }
76
+ const sortedJsonObj = sortObject(jsonObj);
77
+ return JSON.stringify(sortedJsonObj);
78
+ };
79
+ exports.jsonToConsistentString = jsonToConsistentString;
80
+ const booleanStringToBoolean = (value) => value === 'true';
81
+ exports.booleanStringToBoolean = booleanStringToBoolean;
82
+ const booleanStringToNumber = (value) => (0, exports.booleanStringToBoolean)(value) ? 1 : 0;
83
+ exports.booleanStringToNumber = booleanStringToNumber;
84
+ const normalizeSfResponseObjKeys = (obj) => {
85
+ return Object.fromEntries(Object.entries(obj).map(([key, value]) => [
86
+ key
87
+ .toLowerCase()
88
+ .replace(/_([a-z])/g, (_, char) => char.toUpperCase()),
89
+ value
90
+ ]));
91
+ };
92
+ exports.normalizeSfResponseObjKeys = normalizeSfResponseObjKeys;
93
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../libs/utils/src/common.ts"],"names":[],"mappings":"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"}
package/src/date.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import { TimeUnits } from '@wandzai/wandz-interfaces';
2
+ export declare const formatDateYearMonthDay: (date: string | Date) => string;
3
+ export declare const calcDatesRange: (range: number) => {
4
+ startDate: string;
5
+ endDate: string;
6
+ };
7
+ export declare const getTimeDifference: (date: Date, timeUnit: TimeUnits) => number;
package/src/date.js ADDED
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTimeDifference = exports.calcDatesRange = exports.formatDateYearMonthDay = void 0;
4
+ const wandz_interfaces_1 = require("@wandzai/wandz-interfaces");
5
+ const formatDateYearMonthDay = (date) => new Date(date).toLocaleDateString('en-CA', { year: 'numeric', month: '2-digit', day: '2-digit' });
6
+ exports.formatDateYearMonthDay = formatDateYearMonthDay;
7
+ const calcDatesRange = (range) => {
8
+ const today = new Date();
9
+ const startDate = new Date(today);
10
+ startDate.setDate(today.getDate() - range);
11
+ return {
12
+ startDate: (0, exports.formatDateYearMonthDay)(startDate),
13
+ endDate: (0, exports.formatDateYearMonthDay)(today),
14
+ };
15
+ };
16
+ exports.calcDatesRange = calcDatesRange;
17
+ const getTimeDifference = (date, timeUnit) => {
18
+ const now = new Date();
19
+ const timeDifference = now.getTime() - date.getTime();
20
+ switch (timeUnit) {
21
+ case wandz_interfaces_1.TimeUnits.Hours:
22
+ return timeDifference / (1000 * 60 * 60);
23
+ case wandz_interfaces_1.TimeUnits.Minutes:
24
+ return timeDifference / (1000 * 60);
25
+ case wandz_interfaces_1.TimeUnits.Seconds:
26
+ return timeDifference / 1000;
27
+ case wandz_interfaces_1.TimeUnits.Days:
28
+ return timeDifference / (1000 * 60 * 60 * 24);
29
+ default:
30
+ return timeDifference;
31
+ }
32
+ };
33
+ exports.getTimeDifference = getTimeDifference;
34
+ //# sourceMappingURL=date.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.js","sourceRoot":"","sources":["../../../../libs/utils/src/date.ts"],"names":[],"mappings":";;;AAAA,gEAAoD;AAE7C,MAAM,sBAAsB,GAAG,CAAC,IAAmB,EAAE,EAAE,CAC5D,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;AADvF,QAAA,sBAAsB,0BACiE;AAE7F,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE;IAC9C,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;IAE3C,OAAO;QACL,SAAS,EAAE,IAAA,8BAAsB,EAAC,SAAS,CAAC;QAC5C,OAAO,EAAE,IAAA,8BAAsB,EAAC,KAAK,CAAC;KACvC,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,cAAc,kBASzB;AAEK,MAAM,iBAAiB,GAAG,CAAC,IAAU,EAAE,QAAmB,EAAU,EAAE;IAE3E,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAGvB,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAGtD,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,4BAAS,CAAC,KAAK;YAClB,OAAO,cAAc,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAC3C,KAAK,4BAAS,CAAC,OAAO;YACpB,OAAO,cAAc,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACtC,KAAK,4BAAS,CAAC,OAAO;YACpB,OAAO,cAAc,GAAG,IAAI,CAAC;QAC/B,KAAK,4BAAS,CAAC,IAAI;YACjB,OAAO,cAAc,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAChD;YACE,OAAO,cAAc,CAAC;IAC1B,CAAC;AACH,CAAC,CAAC;AApBW,QAAA,iBAAiB,qBAoB5B"}
@@ -0,0 +1,2 @@
1
+ export declare const encryptData: (data: any) => string;
2
+ export declare const decryptData: (data: string) => any;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decryptData = exports.encryptData = void 0;
4
+ const CryptoJS = require('crypto-js');
5
+ const key = '66807eb6-f5c0-4245-8e4c-0c5d3f80f203';
6
+ const encryptData = (data) => {
7
+ const encryptedData = CryptoJS.RC4.encrypt(JSON.stringify(data), key).toString();
8
+ return encodeURIComponent(encryptedData);
9
+ };
10
+ exports.encryptData = encryptData;
11
+ const decryptData = (data) => {
12
+ const decodedEncrypted = decodeURIComponent(data);
13
+ const bytes = CryptoJS.RC4.decrypt(decodedEncrypted, key);
14
+ return JSON.parse(bytes.toString(CryptoJS.enc.Utf8));
15
+ };
16
+ exports.decryptData = decryptData;
17
+ //# sourceMappingURL=encrypt-decrypt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encrypt-decrypt.js","sourceRoot":"","sources":["../../../../libs/utils/src/encrypt-decrypt.ts"],"names":[],"mappings":";;;AAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AACtC,MAAM,GAAG,GAAG,sCAAsC,CAAC;AAE5C,MAAM,WAAW,GAAG,CAAC,IAAS,EAAU,EAAE;IAC/C,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IAEjF,OAAO,kBAAkB,CAAC,aAAa,CAAC,CAAC;AAC3C,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB;AAEK,MAAM,WAAW,GAAG,CAAC,IAAY,EAAO,EAAE;IAC/C,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC,CAAC;AAJW,QAAA,WAAW,eAItB"}
package/src/gzip.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare function gzipFile(fileIn: string, fileOut: string): Promise<void>;
package/src/gzip.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.gzipFile = gzipFile;
4
+ const zlib_1 = require("zlib");
5
+ const fs_1 = require("fs");
6
+ function gzipFile(fileIn, fileOut) {
7
+ return new Promise((resolve, reject) => {
8
+ const inp = (0, fs_1.createReadStream)(fileIn);
9
+ const out = (0, fs_1.createWriteStream)(fileOut);
10
+ const gzip = (0, zlib_1.createGzip)();
11
+ inp
12
+ .pipe(gzip)
13
+ .pipe(out)
14
+ .on('finish', function () {
15
+ resolve();
16
+ })
17
+ .on('error', function (err) {
18
+ reject(err);
19
+ });
20
+ });
21
+ }
22
+ //# sourceMappingURL=gzip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gzip.js","sourceRoot":"","sources":["../../../../libs/utils/src/gzip.ts"],"names":[],"mappings":";;AAaA,4BAgBC;AAxBD,+BAAgC;AAChC,2BAAuD;AAOvD,SAAgB,QAAQ,CAAC,MAAc,EAAE,OAAe;IACtD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,GAAG,GAAG,IAAA,qBAAgB,EAAC,MAAM,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAA,sBAAiB,EAAC,OAAO,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,IAAA,iBAAU,GAAE,CAAC;QAE1B,GAAG;aACA,IAAI,CAAC,IAAI,CAAC;aACV,IAAI,CAAC,GAAG,CAAC;aACT,EAAE,CAAC,QAAQ,EAAE;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;aACD,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG;YACxB,MAAM,CAAC,GAAG,CAAC,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC"}
package/src/hash.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare const hashData: (strToHash: string, specificSalt: string) => string;
package/src/hash.js ADDED
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hashData = void 0;
4
+ const hmacSHA512 = require('crypto-js/hmac-sha512');
5
+ const Base64 = require('crypto-js/enc-base64');
6
+ const hashData = (strToHash, specificSalt) => {
7
+ try {
8
+ const saltPrefix = 'YvSmHe0x5FC90fmk';
9
+ const salt = `${saltPrefix}-${specificSalt.toLowerCase()}`;
10
+ return Base64.stringify(hmacSHA512(strToHash, salt)).replaceAll('+', '');
11
+ }
12
+ catch (error) {
13
+ console.error('Error:', error.message);
14
+ }
15
+ };
16
+ exports.hashData = hashData;
17
+ //# sourceMappingURL=hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../../libs/utils/src/hash.ts"],"names":[],"mappings":";;;AAAA,MAAM,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACpD,MAAM,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAExC,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAAE,YAAoB,EAAU,EAAE;IAC1E,IAAI,CAAC;QACH,MAAM,UAAU,GAAW,kBAAkB,CAAC;QAC9C,MAAM,IAAI,GAAW,GAAG,UAAU,IAAI,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;QACnE,OAAO,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;AACH,CAAC,CAAC;AARW,QAAA,QAAQ,YAQnB"}
package/src/http.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ import { Request } from 'express';
2
+ export declare function getIpFromHttpRequest(req: Request): string;
3
+ export declare function buildUriBodyString(queryParams: Record<string, any>): string;
4
+ export declare function getEncodedQueryParams(fullUrl: string): object;
5
+ export declare function buildQueryString(params: Record<string, any>): string;
package/src/http.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getIpFromHttpRequest = getIpFromHttpRequest;
4
+ exports.buildUriBodyString = buildUriBodyString;
5
+ exports.getEncodedQueryParams = getEncodedQueryParams;
6
+ exports.buildQueryString = buildQueryString;
7
+ const querystring = require("querystring");
8
+ function getIpFromHttpRequest(req) {
9
+ return req.headers['x-forwarded-for']
10
+ ? String(req.headers['x-forwarded-for']).split(',')[0].trim()
11
+ : req.socket.remoteAddress;
12
+ }
13
+ function buildUriBodyString(queryParams) {
14
+ return Object.keys(queryParams)
15
+ .map((key) => `${encodeURIComponent(key)}=${encodeURIComponent(JSON.stringify(queryParams[key]))}`)
16
+ .join('&');
17
+ }
18
+ function getEncodedQueryParams(fullUrl) {
19
+ const queryStringStartIndex = fullUrl.indexOf('?');
20
+ if (queryStringStartIndex === -1) {
21
+ return {};
22
+ }
23
+ const queryString = fullUrl.substring(queryStringStartIndex + 1);
24
+ const data = querystring.parse(queryString);
25
+ return Object.keys(data).reduce((acc, key) => {
26
+ try {
27
+ acc[key] = JSON.parse(data[key]);
28
+ }
29
+ catch (e) {
30
+ acc[key] = data[key];
31
+ }
32
+ return acc;
33
+ }, {});
34
+ }
35
+ function buildQueryString(params) {
36
+ const queryParams = new URLSearchParams();
37
+ Object.entries(params).forEach(([key, value]) => {
38
+ if (typeof value === 'object') {
39
+ queryParams.append(key, JSON.stringify(value));
40
+ }
41
+ else {
42
+ queryParams.append(key, String(value));
43
+ }
44
+ });
45
+ return queryParams.toString();
46
+ }
47
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../libs/utils/src/http.ts"],"names":[],"mappings":";;AAOA,oDAIC;AAED,gDAIC;AAQD,sDAkBC;AAQD,4CAYC;AA9DD,2CAA2C;AAM3C,SAAgB,oBAAoB,CAAC,GAAY;IAC/C,OAAO,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACnC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QAC7D,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;AAC/B,CAAC;AAED,SAAgB,kBAAkB,CAAC,WAAgC;IACjE,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;SAC5B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;SAClG,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAQD,SAAgB,qBAAqB,CAAC,OAAe;IACnD,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,IAAI,qBAAqB,KAAK,CAAC,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAE5C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC3C,IAAI,CAAC;YAEH,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAW,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAQD,SAAgB,gBAAgB,CAAC,MAA2B;IAC1D,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;IAE1C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC;AAChC,CAAC"}
package/src/index.js ADDED
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./http"), exports);
18
+ __exportStar(require("./gzip"), exports);
19
+ __exportStar(require("./date"), exports);
20
+ __exportStar(require("./hash"), exports);
21
+ __exportStar(require("./numeric"), exports);
22
+ __exportStar(require("./common"), exports);
23
+ __exportStar(require("./wandz"), exports);
24
+ __exportStar(require("./encrypt-decrypt"), exports);
25
+ __exportStar(require("./mysql"), exports);
26
+ __exportStar(require("./snowflake"), exports);
27
+ __exportStar(require("./schedule"), exports);
28
+ __exportStar(require("./cache"), exports);
29
+ __exportStar(require("./interactions"), exports);
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/utils/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,yCAAuB;AACvB,yCAAuB;AACvB,yCAAuB;AACvB,4CAA0B;AAC1B,2CAAyB;AACzB,0CAAwB;AACxB,oDAAkC;AAClC,0CAAwB;AACxB,8CAA4B;AAC5B,6CAA2B;AAC3B,0CAAwB;AACxB,iDAA+B"}
@@ -0,0 +1,5 @@
1
+ import { Devices, IInteraction } from "@wandzai/wandz-interfaces";
2
+ export declare const getCloseButton: (interaction: IInteraction, deviceType: Devices.PC | Devices.MOB, btnClassName?: string, btnId?: string, tagType?: string) => {
3
+ html: string;
4
+ styles: string;
5
+ };
@@ -1,45 +1,39 @@
1
- import {Devices, IInteraction, IInteractionCloseButtonConfig} from "@wandzai/wandz-interfaces";
2
-
3
-
4
- const btnSvg = '<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.87097 0.366057C10.3591 -0.121966 11.1504 -0.122072 11.6385 0.366057C12.1261 0.854212 12.1264 1.64566 11.6385 2.13363L7.76941 6.0018L11.6385 9.87094L11.7245 9.96567C12.1243 10.4566 12.0959 11.1811 11.6385 11.6385C11.1811 12.096 10.4567 12.1243 9.96569 11.7245L9.87097 11.6385L6.00085 7.76938L2.13366 11.6375C1.64563 12.1255 0.85426 12.1253 0.366085 11.6375C-0.121993 11.1494 -0.122063 10.3581 0.366085 9.86996L4.23327 6.0018L0.366085 2.13461C-0.12203 1.64652 -0.121894 0.855216 0.366085 0.367033C0.854135 -0.121035 1.64547 -0.121806 2.13366 0.366057L6.00183 4.23422L9.87097 0.366057Z" fill="#2F2F2F"/></svg>'
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCloseButton = void 0;
4
+ const wandz_interfaces_1 = require("@wandzai/wandz-interfaces");
5
+ const btnSvg = '<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.87097 0.366057C10.3591 -0.121966 11.1504 -0.122072 11.6385 0.366057C12.1261 0.854212 12.1264 1.64566 11.6385 2.13363L7.76941 6.0018L11.6385 9.87094L11.7245 9.96567C12.1243 10.4566 12.0959 11.1811 11.6385 11.6385C11.1811 12.096 10.4567 12.1243 9.96569 11.7245L9.87097 11.6385L6.00085 7.76938L2.13366 11.6375C1.64563 12.1255 0.85426 12.1253 0.366085 11.6375C-0.121993 11.1494 -0.122063 10.3581 0.366085 9.86996L4.23327 6.0018L0.366085 2.13461C-0.12203 1.64652 -0.121894 0.855216 0.366085 0.367033C0.854135 -0.121035 1.64547 -0.121806 2.13366 0.366057L6.00183 4.23422L9.87097 0.366057Z" fill="#2F2F2F"/></svg>';
5
6
  const DEFAULTS = {
6
- OFFSET: 8,
7
- SIZE: 12,
8
- COLOR: '#000000',
9
- PADDING: 10,
7
+ OFFSET: 8,
8
+ SIZE: 12,
9
+ COLOR: '#000000',
10
+ PADDING: 10,
10
11
  };
11
-
12
- export const getCloseButton = (
13
- interaction: IInteraction,
14
- deviceType: Devices.PC | Devices.MOB,
15
- btnClassName: string = 'exit-btn',
16
- btnId: string = 'wandz-interaction-close-btn',
17
- tagType: string = 'span',
18
- ) => {
19
- let config = interaction.closeButtonConfig?.[deviceType] || interaction.closeButtonConfig?.[Devices.PC];
20
- if (!config) {
21
- config = {
22
- color: interaction.closeButtonColor || DEFAULTS.COLOR,
23
- size: DEFAULTS.SIZE,
24
- offsetX: DEFAULTS.OFFSET,
25
- offsetY: DEFAULTS.OFFSET,
26
- } as IInteractionCloseButtonConfig;
27
- }
28
- let extraStyles = '';
29
- const backgroundConfig = config.background;
30
- if (backgroundConfig) {
31
- extraStyles = `
12
+ const getCloseButton = (interaction, deviceType, btnClassName = 'exit-btn', btnId = 'wandz-interaction-close-btn', tagType = 'span') => {
13
+ let config = interaction.closeButtonConfig?.[deviceType] || interaction.closeButtonConfig?.[wandz_interfaces_1.Devices.PC];
14
+ if (!config) {
15
+ config = {
16
+ color: interaction.closeButtonColor || DEFAULTS.COLOR,
17
+ size: DEFAULTS.SIZE,
18
+ offsetX: DEFAULTS.OFFSET,
19
+ offsetY: DEFAULTS.OFFSET,
20
+ };
21
+ }
22
+ let extraStyles = '';
23
+ const backgroundConfig = config.background;
24
+ if (backgroundConfig) {
25
+ extraStyles = `
32
26
  #${btnId} {
33
27
  width: ${config.size + DEFAULTS.PADDING * 2}px;
34
28
  height: ${config.size + DEFAULTS.PADDING * 2}px;
35
29
  background-color: ${backgroundConfig.color};
36
30
  border-radius: ${backgroundConfig.radius}px;
37
31
  box-shadow: inset 0 0 0 1.5px ${backgroundConfig.borderColor};
38
- }`
39
- }
40
- return {
41
- html: `<${tagType} id="${btnId}" class="${btnClassName}">${btnSvg}</${tagType}>`,
42
- styles: `
32
+ }`;
33
+ }
34
+ return {
35
+ html: `<${tagType} id="${btnId}" class="${btnClassName}">${btnSvg}</${tagType}>`,
36
+ styles: `
43
37
  #${btnId} {
44
38
  position: absolute;
45
39
  top: ${config.offsetY}px;
@@ -75,5 +69,7 @@ export const getCloseButton = (
75
69
  }
76
70
  ${extraStyles}
77
71
  `,
78
- };
72
+ };
79
73
  };
74
+ exports.getCloseButton = getCloseButton;
75
+ //# sourceMappingURL=interactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactions.js","sourceRoot":"","sources":["../../../../libs/utils/src/interactions.ts"],"names":[],"mappings":";;;AAAA,gEAA+F;AAG/F,MAAM,MAAM,GAAG,2sBAA2sB,CAAA;AAC1tB,MAAM,QAAQ,GAAG;IACf,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,EAAE;CACZ,CAAC;AAEK,MAAM,cAAc,GAAG,CAC5B,WAAyB,EACzB,UAAoC,EACpC,eAAuB,UAAU,EACjC,QAAgB,6BAA6B,EAC7C,UAAkB,MAAM,EACtB,EAAE;IACJ,IAAI,MAAM,GAAG,WAAW,CAAC,iBAAiB,EAAE,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC,0BAAO,CAAC,EAAE,CAAC,CAAC;IACxG,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG;YACP,KAAK,EAAE,WAAW,CAAC,gBAAgB,IAAI,QAAQ,CAAC,KAAK;YACrD,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO,EAAE,QAAQ,CAAC,MAAM;YACxB,OAAO,EAAE,QAAQ,CAAC,MAAM;SACQ,CAAC;IACrC,CAAC;IACD,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC;IAC3C,IAAI,gBAAgB,EAAE,CAAC;QACrB,WAAW,GAAG;GACf,KAAK;aACK,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC;cACjC,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC,OAAO,GAAG,CAAC;wBACxB,gBAAgB,CAAC,KAAK;qBACzB,gBAAgB,CAAC,MAAM;oCACR,gBAAgB,CAAC,WAAW;EAC9D,CAAA;IACA,CAAC;IACD,OAAO;QACL,IAAI,EAAE,IAAI,OAAO,QAAQ,KAAK,YAAY,YAAY,KAAK,MAAM,KAAK,OAAO,GAAG;QAChF,MAAM,EAAE;GACT,KAAK;;WAEG,MAAM,CAAC,OAAO;aACZ,MAAM,CAAC,OAAO;mBACR,MAAM,CAAC,IAAI;;;;;;;GAO3B,KAAK;cACM,MAAM,CAAC,IAAI;aACZ,MAAM,CAAC,IAAI;;GAErB,KAAK;YACI,MAAM,CAAC,KAAK;;GAErB,KAAK;;;;;;;;;;;;GAYL,KAAK;;;EAGN,WAAW;CACZ;KACE,CAAC;AACJ,CAAC,CAAC;AAnEW,QAAA,cAAc,kBAmEzB"}
package/src/mysql.d.ts ADDED
@@ -0,0 +1 @@
1
+ export declare const buildMysqlProcedureString: (procedure: string, params: any[]) => string;
package/src/mysql.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildMysqlProcedureString = void 0;
4
+ const formatParamValue = (value) => {
5
+ if (typeof value === 'object') {
6
+ return `'${JSON.stringify(value)}'`;
7
+ }
8
+ else if (typeof value === 'string') {
9
+ return `'${value}'`;
10
+ }
11
+ else {
12
+ return value;
13
+ }
14
+ };
15
+ const buildMysqlProcedureString = (procedure, params) => {
16
+ return `CALL ${procedure}(${params.map((v) => formatParamValue(v)).join(',')});`;
17
+ };
18
+ exports.buildMysqlProcedureString = buildMysqlProcedureString;
19
+ //# sourceMappingURL=mysql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mysql.js","sourceRoot":"","sources":["../../../../libs/utils/src/mysql.ts"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAU,EAAE;IAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAE9B,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC;IACtC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,yBAAyB,GAAG,CAAC,SAAiB,EAAE,MAAa,EAAU,EAAE;IACpF,OAAO,QAAQ,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnF,CAAC,CAAC;AAFW,QAAA,yBAAyB,6BAEpC"}
@@ -0,0 +1,2 @@
1
+ export declare const getRandomIntInclusive: (minVal: number, maxVal: number) => number;
2
+ export declare const getRandomFloatInclusive: (minVal: number, maxVal: number) => number;
package/src/numeric.js ADDED
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRandomFloatInclusive = exports.getRandomIntInclusive = void 0;
4
+ const getRandomIntInclusive = (minVal, maxVal) => {
5
+ const min = Math.ceil(minVal);
6
+ const max = Math.floor(maxVal);
7
+ return Math.floor(Math.random() * (max - min + 1)) + min;
8
+ };
9
+ exports.getRandomIntInclusive = getRandomIntInclusive;
10
+ const getRandomFloatInclusive = (minVal, maxVal) => {
11
+ return Number((Math.random() * (minVal - maxVal + 1) + minVal).toFixed(2));
12
+ };
13
+ exports.getRandomFloatInclusive = getRandomFloatInclusive;
14
+ //# sourceMappingURL=numeric.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numeric.js","sourceRoot":"","sources":["../../../../libs/utils/src/numeric.ts"],"names":[],"mappings":";;;AAAO,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,MAAc,EAAE,EAAE;IACtE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC3D,CAAC,CAAC;AAJW,QAAA,qBAAqB,yBAIhC;AAEK,MAAM,uBAAuB,GAAG,CAAC,MAAc,EAAE,MAAc,EAAE,EAAE;IACxE,OAAO,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC;AAFW,QAAA,uBAAuB,2BAElC"}
@@ -0,0 +1,8 @@
1
+ import * as dayjs from 'dayjs';
2
+ export { dayjs };
3
+ export declare const nowInUTC: (asDate?: boolean) => Date | dayjs.Dayjs;
4
+ export declare const isInPast: (date: Date | string) => boolean;
5
+ export declare const isSameDate: (date1: Date | string, date2: Date | string) => boolean;
6
+ export declare const getHourOfUTCDate: (date: Date | string) => number;
7
+ export declare const formatUTCDateWithTimezone: (date: Date | string, timezone: string, format: string) => string;
8
+ export declare const getTimezoneOffsetInHours: (region: string) => number;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTimezoneOffsetInHours = exports.formatUTCDateWithTimezone = exports.getHourOfUTCDate = exports.isSameDate = exports.isInPast = exports.nowInUTC = exports.dayjs = void 0;
4
+ const dayjs = require("dayjs");
5
+ exports.dayjs = dayjs;
6
+ const utc = require("dayjs/plugin/utc");
7
+ const timezone = require("dayjs/plugin/timezone");
8
+ dayjs.extend(utc);
9
+ dayjs.extend(timezone);
10
+ const nowInUTC = (asDate = true) => asDate ? dayjs().utc().toDate() : dayjs().utc();
11
+ exports.nowInUTC = nowInUTC;
12
+ const isInPast = (date) => dayjs.utc(date).isBefore((0, exports.nowInUTC)());
13
+ exports.isInPast = isInPast;
14
+ const isSameDate = (date1, date2) => dayjs(date1).isSame(dayjs(date2), 'day');
15
+ exports.isSameDate = isSameDate;
16
+ const getHourOfUTCDate = (date) => dayjs.utc(date).hour();
17
+ exports.getHourOfUTCDate = getHourOfUTCDate;
18
+ const formatUTCDateWithTimezone = (date, timezone, format) => {
19
+ return dayjs
20
+ .utc(date)
21
+ .tz(timezone)
22
+ .format(format);
23
+ };
24
+ exports.formatUTCDateWithTimezone = formatUTCDateWithTimezone;
25
+ const getTimezoneOffsetInHours = (region) => {
26
+ const nowInTimezone = dayjs().tz(region);
27
+ const offsetInHours = nowInTimezone.utcOffset() / 60;
28
+ return parseFloat(offsetInHours.toFixed(1));
29
+ };
30
+ exports.getTimezoneOffsetInHours = getTimezoneOffsetInHours;
31
+ //# sourceMappingURL=schedule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../../../libs/utils/src/schedule.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAMtB,sBAAK;AALd,wCAAwC;AACxC,kDAAkD;AAElD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAClB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAGhB,MAAM,QAAQ,GAAG,CAAC,SAAkB,IAAI,EAAsB,EAAE,CACrE,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC;AADrC,QAAA,QAAQ,YAC6B;AAE3C,MAAM,QAAQ,GAAG,CAAC,IAAmB,EAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAA,gBAAQ,GAAE,CAAC,CAAC;AAAlF,QAAA,QAAQ,YAA0E;AAExF,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAE,KAAoB,EAAW,EAAE,CAChF,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;AAD9B,QAAA,UAAU,cACoB;AAEpC,MAAM,gBAAgB,GAAG,CAAC,IAAmB,EAAU,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AAA3E,QAAA,gBAAgB,oBAA2D;AAEjF,MAAM,yBAAyB,GAAG,CAAC,IAAmB,EAAE,QAAgB,EAAE,MAAc,EAAU,EAAE;IACzG,OAAO,KAAK;SACT,GAAG,CAAC,IAAI,CAAC;SACT,EAAE,CAAC,QAAQ,CAAC;SACZ,MAAM,CAAC,MAAM,CAAC,CAAC;AACpB,CAAC,CAAC;AALW,QAAA,yBAAyB,6BAKpC;AAEK,MAAM,wBAAwB,GAAG,CAAC,MAAc,EAAU,EAAE;IAEjE,MAAM,aAAa,GAAG,KAAK,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAGzC,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC;IAGrD,OAAO,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC;AATW,QAAA,wBAAwB,4BASnC"}
@@ -0,0 +1,3 @@
1
+ export declare const buildComplexTypedProcedure: (procedure: string, params: {
2
+ [paramName: string]: any;
3
+ }) => string;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildComplexTypedProcedure = void 0;
4
+ const formatParamValue = (value) => {
5
+ if (Array.isArray(value)) {
6
+ return `[${value.map(formatParamValue).join(',')}]`;
7
+ }
8
+ else if (typeof value === 'boolean') {
9
+ return value ? 'TRUE' : 'FALSE';
10
+ }
11
+ else if (typeof value === 'number') {
12
+ return value.toString();
13
+ }
14
+ else if (value === null) {
15
+ return 'NULL';
16
+ }
17
+ else if (typeof value === 'object') {
18
+ const content = Object.entries(value).map(([key, value]) => {
19
+ return `'${key}', ${formatParamValue(value)}`;
20
+ }).join(',');
21
+ return `object_construct(${content})`;
22
+ }
23
+ else {
24
+ return `'${value}'`;
25
+ }
26
+ };
27
+ const buildComplexTypedProcedure = (procedure, params) => `CALL ${procedure}(${Object.entries(params)
28
+ .map(([paramName, paramValue]) => `${paramName} => ${formatParamValue(paramValue)}`)
29
+ .join(', ')})`;
30
+ exports.buildComplexTypedProcedure = buildComplexTypedProcedure;
31
+ //# sourceMappingURL=snowflake.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snowflake.js","sourceRoot":"","sources":["../../../../libs/utils/src/snowflake.ts"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAU,EAAE;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACtD,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAClC,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;SAAM,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACzD,OAAO,IAAI,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,oBAAoB,OAAO,GAAG,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,0BAA0B,GAAG,CAAC,SAAiB,EAAE,MAAoC,EAAU,EAAE,CAC5G,QAAQ,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;KACxC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,OAAO,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;KACnF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAHN,QAAA,0BAA0B,8BAGpB"}