@adaas/a-utils 0.0.7 → 0.0.9

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/.nvmrc CHANGED
@@ -1 +1 @@
1
- v20.10.0
1
+ v22.20.0
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { A_CommonHelper } from './src/helpers/A_Common.helper';
2
+ export { A_IdentityHelper } from './src/helpers/A_ID.helper';
2
3
  export { A_ScheduleHelper } from './src/helpers/A_Schedule.helper';
3
4
  export { A_Error } from './src/global/A_Error.class';
4
5
  export { A_ServerError } from './src/global/A_ServerError.class';
package/dist/index.js CHANGED
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  // ====================== EXPORTS ======================
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.A_CONSTANTS__ERROR_CODES = exports.A_Polyfills = exports.A_ScheduleObject = exports.ASEID = exports.A_ServerError = exports.A_Error = exports.A_ScheduleHelper = exports.A_CommonHelper = void 0;
4
+ exports.A_CONSTANTS__ERROR_CODES = exports.A_Polyfills = exports.A_ScheduleObject = exports.ASEID = exports.A_ServerError = exports.A_Error = exports.A_ScheduleHelper = exports.A_IdentityHelper = exports.A_CommonHelper = void 0;
5
5
  // --- Helpers ---
6
6
  var A_Common_helper_1 = require("./src/helpers/A_Common.helper");
7
7
  Object.defineProperty(exports, "A_CommonHelper", { enumerable: true, get: function () { return A_Common_helper_1.A_CommonHelper; } });
8
+ var A_ID_helper_1 = require("./src/helpers/A_ID.helper");
9
+ Object.defineProperty(exports, "A_IdentityHelper", { enumerable: true, get: function () { return A_ID_helper_1.A_IdentityHelper; } });
8
10
  var A_Schedule_helper_1 = require("./src/helpers/A_Schedule.helper");
9
11
  Object.defineProperty(exports, "A_ScheduleHelper", { enumerable: true, get: function () { return A_Schedule_helper_1.A_ScheduleHelper; } });
10
12
  // --- Global ---
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA,wDAAwD;;;AAGxD,kBAAkB;AAClB,iEAA+D;AAAtD,iHAAA,cAAc,OAAA;AACvB,qEAAmE;AAA1D,qHAAA,gBAAgB,OAAA;AAGzB,iBAAiB;AACjB,4DAAqD;AAA5C,wGAAA,OAAO,OAAA;AAChB,wEAAiE;AAAxD,oHAAA,aAAa,OAAA;AAEtB,wDAAiD;AAAxC,oGAAA,KAAK,OAAA;AAEd,8EAAuE;AAA9D,0HAAA,gBAAgB,OAAA;AAIzB,wDAEiC;AAD7B,0GAAA,WAAW,OAAA;AAGf,oBAAoB;AACpB,qEAA4E;AAAnE,4HAAA,wBAAwB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA,wDAAwD;;;AAGxD,kBAAkB;AAClB,iEAA+D;AAAtD,iHAAA,cAAc,OAAA;AACvB,yDAA6D;AAApD,+GAAA,gBAAgB,OAAA;AACzB,qEAAmE;AAA1D,qHAAA,gBAAgB,OAAA;AAGzB,iBAAiB;AACjB,4DAAqD;AAA5C,wGAAA,OAAO,OAAA;AAChB,wEAAiE;AAAxD,oHAAA,aAAa,OAAA;AAEtB,wDAAiD;AAAxC,oGAAA,KAAK,OAAA;AAEd,8EAAuE;AAA9D,0HAAA,gBAAgB,OAAA;AAIzB,wDAEiC;AAD7B,0GAAA,WAAW,OAAA;AAGf,oBAAoB;AACpB,qEAA4E;AAAnE,4HAAA,wBAAwB,OAAA"}
@@ -5,9 +5,9 @@ export declare class A_Error extends Error {
5
5
  description: string;
6
6
  originalError?: Error | any;
7
7
  link?: string;
8
- constructor(params: A_TYPES__Error | Error | AxiosError | any);
8
+ constructor(params: A_TYPES__Error | Error | AxiosError | string | any);
9
9
  get id(): string | undefined;
10
- protected identifyErrorType(error: Error | AxiosError | A_TYPES__Error): void;
10
+ protected identifyErrorType(error: Error | AxiosError | A_TYPES__Error | string | any): void;
11
11
  get compilingData(): A_TYPES__Error;
12
12
  toJSON(): A_TYPES__Error;
13
13
  }
@@ -5,7 +5,9 @@ const axios_1 = require("axios");
5
5
  const errors_constants_1 = require("../constants/errors.constants");
6
6
  class A_Error extends Error {
7
7
  constructor(params) {
8
- super((params === null || params === void 0 ? void 0 : params.message) || 'Oops... Something went wrong');
8
+ super(typeof params === 'string'
9
+ ? params :
10
+ (params === null || params === void 0 ? void 0 : params.message) || 'Oops... Something went wrong');
9
11
  this.identifyErrorType(params);
10
12
  }
11
13
  get id() {
@@ -13,6 +15,13 @@ class A_Error extends Error {
13
15
  }
14
16
  identifyErrorType(error) {
15
17
  var _a, _b, _c;
18
+ if (typeof error === 'string') {
19
+ this.message = error;
20
+ this.code = errors_constants_1.A_CONSTANTS__ERROR_CODES.UNEXPECTED_ERROR;
21
+ this.description = 'If you see this error please let us know.';
22
+ this.link = 'https://support.adaas.org/error/' + this.id;
23
+ return;
24
+ }
16
25
  if (error.code &&
17
26
  error.description &&
18
27
  error.serverCode) {
@@ -1 +1 @@
1
- {"version":3,"file":"A_Error.class.js","sourceRoot":"","sources":["../../../src/global/A_Error.class.ts"],"names":[],"mappings":";;;AACA,iCAAmC;AAEnC,oEAAyE;AAGzE,MAAa,OAAQ,SAAQ,KAAK;IAQ9B,YACI,MAAiD;QAEjD,KAAK,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,8BAA8B,CAAC,CAAC;QACzD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEnC,CAAC;IAGD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC;IAGS,iBAAiB,CAAC,KAA0C;;QAElE,IAAK,KAA8B,CAAC,IAAI;YACnC,KAA8B,CAAC,WAAW;YAC1C,KAA8B,CAAC,UAAU,EAAE,CAAC;YAE7C,MAAM,MAAM,GAAG,KAA6B,CAAC;YAE7C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC9B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;YAC1C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAC5B,CAAC;aACI,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,IAAI,GAAG,2CAAwB,CAAC,gBAAgB,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,2CAA2C,CAAC;YAC/D,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAC,EAAE,CAAC;QAG7D,CAAC;aAAM,IAAI,KAAK,YAAY,kBAAU,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,GAAG,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,OAAO,KAAI,KAAK,CAAC,OAAO,CAAC;YAC7D,IAAI,CAAC,IAAI,GAAG,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,IAAI,KAAI,2CAAwB,CAAC,gBAAgB,CAAC;YACnF,IAAI,CAAC,WAAW,GAAG,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,WAAW,KAAI,2CAA2C,CAAC;YACnG,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC;YACpC,IAAI,CAAC,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAC,EAAE,CAAC;QAC7D,CAAC;IACL,CAAC;IAGD,IAAI,aAAa;QACb,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;SACpC,CAAA;IACL,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;CACJ;AAlED,0BAkEC"}
1
+ {"version":3,"file":"A_Error.class.js","sourceRoot":"","sources":["../../../src/global/A_Error.class.ts"],"names":[],"mappings":";;;AACA,iCAAmC;AAEnC,oEAAyE;AAGzE,MAAa,OAAQ,SAAQ,KAAK;IAQ9B,YACI,MAA0D;QAE1D,KAAK,CACD,OAAO,MAAM,KAAK,QAAQ;YACtB,CAAC,CAAC,MAAM,CAAC,CAAC;YACV,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,8BAA8B,CACxD,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEnC,CAAC;IAGD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC;IAGS,iBAAiB,CAAC,KAAyD;;QACjF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,IAAI,GAAG,2CAAwB,CAAC,gBAAgB,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,2CAA2C,CAAC;YAC/D,IAAI,CAAC,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAC,EAAE,CAAC;YACzD,OAAO;QACX,CAAC;QAGD,IAAK,KAA8B,CAAC,IAAI;YACnC,KAA8B,CAAC,WAAW;YAC1C,KAA8B,CAAC,UAAU,EAAE,CAAC;YAE7C,MAAM,MAAM,GAAG,KAA6B,CAAC;YAE7C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC9B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACxB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;YAC1C,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAC5B,CAAC;aACI,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC7B,IAAI,CAAC,IAAI,GAAG,2CAAwB,CAAC,gBAAgB,CAAC;YACtD,IAAI,CAAC,WAAW,GAAG,2CAA2C,CAAC;YAC/D,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAC,EAAE,CAAC;QAG7D,CAAC;aAAM,IAAI,KAAK,YAAY,kBAAU,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,GAAG,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,OAAO,KAAI,KAAK,CAAC,OAAO,CAAC;YAC7D,IAAI,CAAC,IAAI,GAAG,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,IAAI,KAAI,2CAAwB,CAAC,gBAAgB,CAAC;YACnF,IAAI,CAAC,WAAW,GAAG,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,WAAW,KAAI,2CAA2C,CAAC;YACnG,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC;YACpC,IAAI,CAAC,IAAI,GAAG,kCAAkC,GAAG,IAAI,CAAC,EAAE,CAAC;QAC7D,CAAC;IACL,CAAC;IAGD,IAAI,aAAa;QACb,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;SACpC,CAAA;IACL,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;CACJ;AA/ED,0BA+EC"}
@@ -1,6 +1,6 @@
1
1
  import { A_TYPES__DeepPartial } from "../types/A_Common.types";
2
2
  export declare class A_CommonHelper {
3
- static resolve(): Promise<undefined>;
3
+ static resolve(): Promise<void>;
4
4
  static omitArrayProperties<T, S extends string>(array: Array<T>, fields: string[]): Omit<T, S>[];
5
5
  static sanitizeHTML(html: string): string;
6
6
  /**
@@ -33,7 +33,9 @@ export declare class A_CommonHelper {
33
33
  static removeLeadingZeros(formattedNumber: any): string;
34
34
  static toUpperSnakeCase(str: string): string;
35
35
  static toCamelCase(str: string): string;
36
- static isObject(item: any): boolean;
36
+ static toPascalCase(str: string): string;
37
+ static toKebabCase(str: string): string;
38
+ static isObject(item: unknown): item is Record<string, any>;
37
39
  static deepMerge<T = any>(target: any, source: any, visited?: Map<any, any>): T;
38
40
  static deepClone<T>(target: T): T;
39
41
  static deepCloneAndMerge<T>(target: A_TYPES__DeepPartial<T>, source: T): T;
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.A_CommonHelper = void 0;
4
+ const A_Error_class_1 = require("../global/A_Error.class");
4
5
  class A_CommonHelper {
5
6
  static resolve() {
6
- return new Promise((resolve) => resolve(undefined));
7
+ return new Promise((resolve) => resolve());
7
8
  }
8
9
  static omitArrayProperties(array, fields) {
9
10
  return array;
@@ -88,6 +89,17 @@ class A_CommonHelper {
88
89
  static toCamelCase(str) {
89
90
  return str.toLowerCase().replace(/_([a-z])/g, (match, letter) => letter.toUpperCase());
90
91
  }
92
+ static toPascalCase(str) {
93
+ const camelCase = this.toCamelCase(str);
94
+ return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);
95
+ }
96
+ static toKebabCase(str) {
97
+ return str
98
+ .replace(/([a-z])([A-Z])/g, '$1-$2') // Handle lowercase followed by uppercase
99
+ .replace(/[_\s]([A-Z])/g, '-$1') // Handle non-alphabetical followed by uppercase
100
+ .replace(/_/g, '-')
101
+ .toLowerCase();
102
+ }
91
103
  static isObject(item) {
92
104
  return item !== null && typeof item === 'object' && !Array.isArray(item);
93
105
  }
@@ -195,7 +207,7 @@ class A_CommonHelper {
195
207
  return clone;
196
208
  }
197
209
  // For any other cases
198
- throw new Error('Unable to clone the object. Unsupported type.');
210
+ throw new A_Error_class_1.A_Error('Unable to clone the object. Unsupported type.');
199
211
  }
200
212
  }
201
213
  exports.A_CommonHelper = A_CommonHelper;
@@ -1 +1 @@
1
- {"version":3,"file":"A_Common.helper.js","sourceRoot":"","sources":["../../../src/helpers/A_Common.helper.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IAEvB,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAsB,KAAe,EAAE,MAAgB;QAE7E,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,IAAY;QAC5B,wEAAwE;QACxE,MAAM,KAAK,GAAG,iCAAiC,CAAC;QAEhD,gDAAgD;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnC,CAAC;IAKD;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,UAAe,EAAE,WAAgB;QACpD,IAAI,OAAO,GAAG,UAAU,CAAC;QAEzB,+BAA+B;QAC/B,OAAO,OAAO,EAAE,CAAC;YACb,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAGD;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CACjB,KAAQ,EACR,KAAe;QAIf,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAEjD,mDAAmD;QACnD,SAAS,gBAAgB,CAAC,MAAmC,EAAE,QAAkB;YAC7E,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,wDAAwD;gBACxD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;iBAAM,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC9E,4EAA4E;gBAC5E,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,CAAC;QACL,CAAC;QAED,gFAAgF;QAChF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAoB,CAAC;IAChC,CAAC;IAGD;;;;;;OAMG;IACH,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,EAAE;QAC/C,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACnE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,eAAe;QACrC,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,+DAA+D;IAC3G,CAAC;IAID,MAAM,CAAC,gBAAgB,CAAC,GAAW;QAC/B,OAAO,GAAG;aACL,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAE,yCAAyC;aAC9E,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAM,gDAAgD;aACrF,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;aAClB,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,GAAW;QAC1B,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3F,CAAC;IAID,MAAM,CAAC,QAAQ,CAAC,IAAS;QACrB,OAAO,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,SAAS,CAAU,MAAW,EAAE,MAAW,EAAE,UAAU,IAAI,GAAG,EAAY;QAC7E,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;wBACf,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBACrB,CAAC;oBACD,sDAAsD;oBACtD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC5B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC7B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;oBACtD,CAAC;yBAAM,CAAC;wBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3C,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAGD,MAAM,CAAC,SAAS,CAAI,MAAS;QACzB,0CAA0C;QAC1C,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,yDAAyD;QACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,cAAc;QACd,IAAI,MAAM,YAAY,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAM,CAAC;QAC3C,CAAC;QAED,eAAe;QACf,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAiB,CAAC;QACpE,CAAC;QAED,kBAAkB;QAClB,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,gBAAgB;QAChB,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,EAAO,CAAC;YACtB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACvB,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7B,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7C,CAAC;YACL,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,sBAAsB;QACtB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACrE,CAAC;IAGD,MAAM,CAAC,iBAAiB,CAAI,MAA+B,EAAE,MAAS;QAClE,IACI,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC;YACzC,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC;YACzC,OAAO,MAAM,CAAC;QAElB,0CAA0C;QAC1C,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC;YACzC,MAAM,EACR,CAAC;YACC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QAED,yDAAyD;QACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAA;QACjB,CAAC;QAGD,cAAc;QACd,IAAI,MAAM,YAAY,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAM,CAAC;QAC3C,CAAC;QAED,eAAe;QACf,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAiB,CAAC;QACpF,CAAC;QAED,kBAAkB;QAClB,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,gBAAgB;QAChB,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,EAAO,CAAC;YACtB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACvB,IACI,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI;;wBAEpB,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS;oBAEzB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAU,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;;oBAErE,KAAK,CAAC,GAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACxD,CAAC;YAED,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACvB,IACI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS;;wBAEzB,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI;oBAEpB,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;;oBAE9D,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,sBAAsB;QACtB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACrE,CAAC;CACJ;AAzPD,wCAyPC"}
1
+ {"version":3,"file":"A_Common.helper.js","sourceRoot":"","sources":["../../../src/helpers/A_Common.helper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export type A_ID_TYPES__TimeId_Parts = {
2
+ timestamp: Date;
3
+ random: string;
4
+ };
5
+ export declare class A_IdentityHelper {
6
+ /**
7
+ * Generates a short, time-based unique ID.
8
+ * Encodes current time (ms since epoch) and random bits in base36.
9
+ * Example: "mb4f1g-7f9a1c"
10
+ */
11
+ static generateTimeId(parts?: A_ID_TYPES__TimeId_Parts): string;
12
+ /**
13
+ * Parses a short ID back into its parts.
14
+ * Returns an object with the original timestamp (as Date) and random string.
15
+ */
16
+ static parseTimeId(id: string): A_ID_TYPES__TimeId_Parts;
17
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.A_IdentityHelper = void 0;
4
+ class A_IdentityHelper {
5
+ /**
6
+ * Generates a short, time-based unique ID.
7
+ * Encodes current time (ms since epoch) and random bits in base36.
8
+ * Example: "mb4f1g-7f9a1c"
9
+ */
10
+ static generateTimeId(parts = { timestamp: new Date(), random: Math.random().toString(36).slice(2, 8) }) {
11
+ const time = parts.timestamp.getTime().toString(36); // base36-encoded timestamp
12
+ const random = parts.random; // use provided random string
13
+ return `${time}-${random}`;
14
+ }
15
+ /**
16
+ * Parses a short ID back into its parts.
17
+ * Returns an object with the original timestamp (as Date) and random string.
18
+ */
19
+ static parseTimeId(id) {
20
+ const [timePart, randomPart] = id.split('-');
21
+ const timestamp = new Date(parseInt(timePart, 36));
22
+ return { timestamp, random: randomPart };
23
+ }
24
+ }
25
+ exports.A_IdentityHelper = A_IdentityHelper;
26
+ //# sourceMappingURL=A_ID.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A_ID.helper.js","sourceRoot":"","sources":["../../../src/helpers/A_ID.helper.ts"],"names":[],"mappings":";;;AAOA,MAAa,gBAAgB;IACzB;;;;KAIC;IACD,MAAM,CAAC,cAAc,CACjB,QAAkC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAE3G,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,2BAA2B;QAChF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,6BAA6B;QAC1D,OAAO,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,EAAU;QACzB,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QACnD,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC7C,CAAC;CAEJ;AAxBD,4CAwBC"}
package/index.ts CHANGED
@@ -5,6 +5,7 @@
5
5
 
6
6
  // --- Helpers ---
7
7
  export { A_CommonHelper } from './src/helpers/A_Common.helper';
8
+ export { A_IdentityHelper } from './src/helpers/A_ID.helper';
8
9
  export { A_ScheduleHelper } from './src/helpers/A_Schedule.helper';
9
10
 
10
11
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaas/a-utils",
3
- "version": "0.0.7",
3
+ "version": "0.0.9",
4
4
  "description": "A-Utils is a set of utilities that are used across the ADAAS ecosystem. This package is designed to be a collection of utilities that are used across the ADAAS ecosystem.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -13,11 +13,16 @@ export class A_Error extends Error {
13
13
 
14
14
 
15
15
  constructor(
16
- params: A_TYPES__Error | Error | AxiosError | any
16
+ params: A_TYPES__Error | Error | AxiosError | string | any
17
17
  ) {
18
- super(params?.message || 'Oops... Something went wrong');
18
+ super(
19
+ typeof params === 'string'
20
+ ? params :
21
+ params?.message || 'Oops... Something went wrong'
22
+ );
23
+
19
24
  this.identifyErrorType(params);
20
-
25
+
21
26
  }
22
27
 
23
28
 
@@ -26,7 +31,15 @@ export class A_Error extends Error {
26
31
  }
27
32
 
28
33
 
29
- protected identifyErrorType(error: Error | AxiosError | A_TYPES__Error) {
34
+ protected identifyErrorType(error: Error | AxiosError | A_TYPES__Error | string | any) {
35
+ if (typeof error === 'string') {
36
+ this.message = error;
37
+ this.code = A_CONSTANTS__ERROR_CODES.UNEXPECTED_ERROR;
38
+ this.description = 'If you see this error please let us know.';
39
+ this.link = 'https://support.adaas.org/error/' + this.id;
40
+ return;
41
+ }
42
+
30
43
 
31
44
  if ((error as A_TYPES__ServerError).code &&
32
45
  (error as A_TYPES__ServerError).description &&
@@ -1,9 +1,10 @@
1
+ import { A_Error } from "../global/A_Error.class";
1
2
  import { A_TYPES__DeepPartial } from "../types/A_Common.types";
2
3
 
3
4
  export class A_CommonHelper {
4
5
 
5
6
  static resolve() {
6
- return new Promise<undefined>((resolve) => resolve(undefined));
7
+ return new Promise<void>((resolve) => resolve());
7
8
  }
8
9
 
9
10
  static omitArrayProperties<T, S extends string>(array: Array<T>, fields: string[]): Omit<T, S>[] {
@@ -115,8 +116,20 @@ export class A_CommonHelper {
115
116
  }
116
117
 
117
118
 
119
+ static toPascalCase(str: string): string {
120
+ const camelCase = this.toCamelCase(str);
121
+ return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);
122
+ }
118
123
 
119
- static isObject(item: any): boolean {
124
+ static toKebabCase(str: string): string {
125
+ return str
126
+ .replace(/([a-z])([A-Z])/g, '$1-$2') // Handle lowercase followed by uppercase
127
+ .replace(/[_\s]([A-Z])/g, '-$1') // Handle non-alphabetical followed by uppercase
128
+ .replace(/_/g, '-')
129
+ .toLowerCase();
130
+ }
131
+
132
+ static isObject(item: unknown): item is Record<string, any> {
120
133
  return item !== null && typeof item === 'object' && !Array.isArray(item);
121
134
  }
122
135
 
@@ -247,6 +260,6 @@ export class A_CommonHelper {
247
260
  }
248
261
 
249
262
  // For any other cases
250
- throw new Error('Unable to clone the object. Unsupported type.');
263
+ throw new A_Error('Unable to clone the object. Unsupported type.');
251
264
  }
252
265
  }
@@ -0,0 +1,32 @@
1
+
2
+ export type A_ID_TYPES__TimeId_Parts = {
3
+ timestamp: Date;
4
+ random: string;
5
+ }
6
+
7
+
8
+ export class A_IdentityHelper {
9
+ /**
10
+ * Generates a short, time-based unique ID.
11
+ * Encodes current time (ms since epoch) and random bits in base36.
12
+ * Example: "mb4f1g-7f9a1c"
13
+ */
14
+ static generateTimeId(
15
+ parts: A_ID_TYPES__TimeId_Parts = { timestamp: new Date(), random: Math.random().toString(36).slice(2, 8) }
16
+ ): string {
17
+ const time = parts.timestamp.getTime().toString(36); // base36-encoded timestamp
18
+ const random = parts.random; // use provided random string
19
+ return `${time}-${random}`;
20
+ }
21
+
22
+ /**
23
+ * Parses a short ID back into its parts.
24
+ * Returns an object with the original timestamp (as Date) and random string.
25
+ */
26
+ static parseTimeId(id: string): A_ID_TYPES__TimeId_Parts {
27
+ const [timePart, randomPart] = id.split('-');
28
+ const timestamp = new Date(parseInt(timePart, 36));
29
+ return { timestamp, random: randomPart };
30
+ }
31
+
32
+ }
@@ -1,4 +1,5 @@
1
1
  import { A_CommonHelper } from '@adaas/a-utils/helpers/A_Common.helper';
2
+ import { A_IdentityHelper } from '@adaas/a-utils/helpers/A_ID.helper';
2
3
  import { A_ScheduleHelper } from '@adaas/a-utils/helpers/A_Schedule.helper';
3
4
  import { A_TYPES__DeepPartial } from '@adaas/a-utils/types/A_Common.types';
4
5
  import { config } from 'dotenv';
@@ -147,8 +148,6 @@ describe('CommonHelper Tests', () => {
147
148
 
148
149
  const merged = A_CommonHelper.deepCloneAndMerge(t2, t);
149
150
 
150
- console.log('merged: ', merged)
151
-
152
151
  expect(merged.a).toBe('a');
153
152
  expect(merged.b).toBe('bb');
154
153
  expect(merged.c.d).toBe('ddd');
@@ -157,4 +156,18 @@ describe('CommonHelper Tests', () => {
157
156
  expect((merged as any).some.d).toBe('dd');
158
157
  expect(merged.f('names')).toBe('names');
159
158
  });
159
+ it('should generate and then parse Unique time based IDs', async () => {
160
+ const id = A_IdentityHelper.generateTimeId();
161
+ const parts = A_IdentityHelper.parseTimeId(id);
162
+
163
+ expect(id).toBeDefined();
164
+ expect(parts.timestamp).toBeInstanceOf(Date);
165
+ expect(parts.random).toHaveLength(6);
166
+
167
+ // Check that the timestamp is recent (within the last minute)
168
+ const now = Date.now();
169
+ const timestamp = parts.timestamp.getTime();
170
+ expect(timestamp).toBeLessThanOrEqual(now);
171
+ expect(timestamp).toBeGreaterThan(now - 60000); // within the last minute
172
+ });
160
173
  });