@metriport/shared 0.7.6 → 0.7.7-alpha.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.
@@ -0,0 +1,10 @@
1
+ export declare enum EnvType {
2
+ production = "production",
3
+ sandbox = "sandbox",
4
+ staging = "staging",
5
+ development = "dev"
6
+ }
7
+ export declare const getEnvVar: (varName: string) => string | undefined;
8
+ export declare const getEnvVarOrFail: (varName: string) => string;
9
+ export declare function getEnvType(): EnvType;
10
+ //# sourceMappingURL=env-var.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-var.d.ts","sourceRoot":"","sources":["../../src/common/env-var.ts"],"names":[],"mappings":"AAEA,oBAAY,OAAO;IACjB,UAAU,eAAe;IACzB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,WAAW,QAAQ;CACpB;AAED,eAAO,MAAM,SAAS,YAAa,MAAM,KAAG,MAAM,GAAG,SAAiC,CAAC;AAEvF,eAAO,MAAM,eAAe,YAAa,MAAM,KAAG,MAMjD,CAAC;AAEF,wBAAgB,UAAU,IAAI,OAAO,CAOpC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEnvType = exports.getEnvVarOrFail = exports.getEnvVar = exports.EnvType = void 0;
4
+ const metriport_error_1 = require("../error/metriport-error");
5
+ var EnvType;
6
+ (function (EnvType) {
7
+ EnvType["production"] = "production";
8
+ EnvType["sandbox"] = "sandbox";
9
+ EnvType["staging"] = "staging";
10
+ EnvType["development"] = "dev";
11
+ })(EnvType = exports.EnvType || (exports.EnvType = {}));
12
+ const getEnvVar = (varName) => process.env[varName];
13
+ exports.getEnvVar = getEnvVar;
14
+ const getEnvVarOrFail = (varName) => {
15
+ const value = (0, exports.getEnvVar)(varName);
16
+ if (!value || value.trim().length < 1) {
17
+ throw new Error(`Missing ${varName} env var`);
18
+ }
19
+ return value;
20
+ };
21
+ exports.getEnvVarOrFail = getEnvVarOrFail;
22
+ function getEnvType() {
23
+ const envType = (0, exports.getEnvVarOrFail)("ENV_TYPE");
24
+ const envTypeValues = Object.values(EnvType).map(v => v.toString());
25
+ if (!envTypeValues.includes(envType)) {
26
+ throw new metriport_error_1.MetriportError(`Invalid ENV_TYPE`, undefined, { envType });
27
+ }
28
+ return envType;
29
+ }
30
+ exports.getEnvType = getEnvType;
31
+ //# sourceMappingURL=env-var.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env-var.js","sourceRoot":"","sources":["../../src/common/env-var.ts"],"names":[],"mappings":";;;AAAA,8DAA0D;AAE1D,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,oCAAyB,CAAA;IACzB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;AACrB,CAAC,EALW,OAAO,GAAP,eAAO,KAAP,eAAO,QAKlB;AAEM,MAAM,SAAS,GAAG,CAAC,OAAe,EAAsB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAA1E,QAAA,SAAS,aAAiE;AAEhF,MAAM,eAAe,GAAG,CAAC,OAAe,EAAU,EAAE;IACzD,MAAM,KAAK,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,UAAU,CAAC,CAAC;KAC/C;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEF,SAAgB,UAAU;IACxB,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,UAAU,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QACpC,MAAM,IAAI,gCAAc,CAAC,kBAAkB,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;KACtE;IACD,OAAO,OAAkB,CAAC;AAC5B,CAAC;AAPD,gCAOC"}
@@ -0,0 +1,5 @@
1
+ import { MetriportError } from "./metriport-error";
2
+ export declare class BadRequestError extends MetriportError {
3
+ constructor(message?: string, cause?: unknown, additionalInfo?: Record<string, string | number | undefined | null>);
4
+ }
5
+ //# sourceMappingURL=bad-request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bad-request.d.ts","sourceRoot":"","sources":["../../src/error/bad-request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAInD,qBAAa,eAAgB,SAAQ,cAAc;gBAE/C,OAAO,SAAmE,EAC1E,KAAK,CAAC,EAAE,OAAO,EACf,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;CAMtE"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BadRequestError = void 0;
7
+ const http_status_1 = __importDefault(require("http-status"));
8
+ const metriport_error_1 = require("./metriport-error");
9
+ const numericStatus = http_status_1.default.BAD_REQUEST;
10
+ class BadRequestError extends metriport_error_1.MetriportError {
11
+ constructor(message = "Unexpected issue with the request - check inputs and try again", cause, additionalInfo) {
12
+ super(message, cause, additionalInfo);
13
+ this.status = numericStatus;
14
+ this.name = this.constructor.name;
15
+ }
16
+ }
17
+ exports.BadRequestError = BadRequestError;
18
+ //# sourceMappingURL=bad-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bad-request.js","sourceRoot":"","sources":["../../src/error/bad-request.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAqC;AACrC,uDAAmD;AAEnD,MAAM,aAAa,GAAG,qBAAU,CAAC,WAAW,CAAC;AAE7C,MAAa,eAAgB,SAAQ,gCAAc;IACjD,YACE,OAAO,GAAG,gEAAgE,EAC1E,KAAe,EACf,cAAmE;QAEnE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AAVD,0CAUC"}
@@ -0,0 +1,8 @@
1
+ export type AdditionalInfo = Record<string, string | number | undefined | null>;
2
+ export declare class MetriportError extends Error {
3
+ readonly cause?: unknown;
4
+ readonly additionalInfo?: AdditionalInfo | undefined;
5
+ status: number;
6
+ constructor(message: string, cause?: unknown, additionalInfo?: AdditionalInfo | undefined);
7
+ }
8
+ //# sourceMappingURL=metriport-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metriport-error.d.ts","sourceRoot":"","sources":["../../src/error/metriport-error.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,CAAC;AAEhF,qBAAa,cAAe,SAAQ,KAAK;IAEV,QAAQ,CAAC,KAAK,CAAC;IAAW,QAAQ,CAAC,cAAc,CAAC;IAD/E,MAAM,EAAE,MAAM,CAAgC;gBAClC,OAAO,EAAE,MAAM,EAAW,KAAK,CAAC,SAAS,EAAW,cAAc,CAAC,4BAAgB;CAIhG"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MetriportError = void 0;
7
+ const http_status_1 = __importDefault(require("http-status"));
8
+ class MetriportError extends Error {
9
+ constructor(message, cause, additionalInfo) {
10
+ super(message);
11
+ this.cause = cause;
12
+ this.additionalInfo = additionalInfo;
13
+ this.status = http_status_1.default.INTERNAL_SERVER_ERROR;
14
+ this.cause = cause;
15
+ }
16
+ }
17
+ exports.MetriportError = MetriportError;
18
+ //# sourceMappingURL=metriport-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metriport-error.js","sourceRoot":"","sources":["../../src/error/metriport-error.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAiC;AAIjC,MAAa,cAAe,SAAQ,KAAK;IAEvC,YAAY,OAAe,EAAW,KAAe,EAAW,cAA+B;QAC7F,KAAK,CAAC,OAAO,CAAC,CAAC;QADqB,UAAK,GAAL,KAAK,CAAU;QAAW,mBAAc,GAAd,cAAc,CAAiB;QAD/F,WAAM,GAAW,qBAAM,CAAC,qBAAqB,CAAC;QAG5C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAND,wCAMC"}
@@ -0,0 +1,5 @@
1
+ import { AdditionalInfo, MetriportError } from "./metriport-error";
2
+ export declare class NotFoundError extends MetriportError {
3
+ constructor(message?: string, cause?: unknown, additionalInfo?: AdditionalInfo);
4
+ }
5
+ //# sourceMappingURL=not-found.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-found.d.ts","sourceRoot":"","sources":["../../src/error/not-found.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAInE,qBAAa,aAAc,SAAQ,cAAc;gBAE7C,OAAO,SAA0C,EACjD,KAAK,CAAC,EAAE,OAAO,EACf,cAAc,CAAC,EAAE,cAAc;CAMlC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.NotFoundError = void 0;
7
+ const http_status_1 = __importDefault(require("http-status"));
8
+ const metriport_error_1 = require("./metriport-error");
9
+ const numericStatus = http_status_1.default.NOT_FOUND;
10
+ class NotFoundError extends metriport_error_1.MetriportError {
11
+ constructor(message = "Could not find the requested resource", cause, additionalInfo) {
12
+ super(message, cause, additionalInfo);
13
+ this.status = numericStatus;
14
+ this.name = this.constructor.name;
15
+ }
16
+ }
17
+ exports.NotFoundError = NotFoundError;
18
+ //# sourceMappingURL=not-found.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-found.js","sourceRoot":"","sources":["../../src/error/not-found.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAqC;AACrC,uDAAmE;AAEnE,MAAM,aAAa,GAAG,qBAAU,CAAC,SAAS,CAAC;AAE3C,MAAa,aAAc,SAAQ,gCAAc;IAC/C,YACE,OAAO,GAAG,uCAAuC,EACjD,KAAe,EACf,cAA+B;QAE/B,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AAVD,sCAUC"}
@@ -0,0 +1,8 @@
1
+ export type ErrorToStringOptions = {
2
+ detailed: boolean;
3
+ };
4
+ export declare function errorToString(err: unknown, options?: ErrorToStringOptions): string;
5
+ export declare function genericErrorToString(err: unknown): string;
6
+ export declare function detailedErrorToString(err: any): string;
7
+ export declare function getErrorMessage(error: unknown): string;
8
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/error/shared.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,oBAAoB,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC;AAEzD,wBAAgB,aAAa,CAC3B,GAAG,EAAE,OAAO,EACZ,OAAO,GAAE,oBAAyC,GACjD,MAAM,CAKR;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAEzD;AAGD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAYtD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,UAE7C"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getErrorMessage = exports.detailedErrorToString = exports.genericErrorToString = exports.errorToString = void 0;
4
+ const node_util_1 = require("node:util");
5
+ function errorToString(err, options = { detailed: true }) {
6
+ if (options.detailed) {
7
+ return detailedErrorToString(err);
8
+ }
9
+ return genericErrorToString(err);
10
+ }
11
+ exports.errorToString = errorToString;
12
+ function genericErrorToString(err) {
13
+ return err["message"] ?? String(err); // eslint-disable-line @typescript-eslint/no-explicit-any
14
+ }
15
+ exports.genericErrorToString = genericErrorToString;
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ function detailedErrorToString(err) {
18
+ const thisErrorMessage = err.message;
19
+ // this can lead to multi-line
20
+ const additionalInfo = err.additionalInfo
21
+ ? (0, node_util_1.inspect)(err.additionalInfo, { compact: true, breakLength: undefined })
22
+ : undefined;
23
+ const causeMessage = err.cause ? detailedErrorToString(err.cause) : undefined;
24
+ return (`${thisErrorMessage}` +
25
+ `${additionalInfo ? ` (${additionalInfo})` : ""}` +
26
+ `${causeMessage ? `; caused by ${causeMessage}` : ""}`);
27
+ }
28
+ exports.detailedErrorToString = detailedErrorToString;
29
+ function getErrorMessage(error) {
30
+ return errorToString(error);
31
+ }
32
+ exports.getErrorMessage = getErrorMessage;
33
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/error/shared.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AAIpC,SAAgB,aAAa,CAC3B,GAAY,EACZ,UAAgC,EAAE,QAAQ,EAAE,IAAI,EAAE;IAElD,IAAI,OAAO,CAAC,QAAQ,EAAE;QACpB,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC;KACnC;IACD,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC;AACnC,CAAC;AARD,sCAQC;AAED,SAAgB,oBAAoB,CAAC,GAAY;IAC/C,OAAQ,GAAW,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,yDAAyD;AAC1G,CAAC;AAFD,oDAEC;AAED,8DAA8D;AAC9D,SAAgB,qBAAqB,CAAC,GAAQ;IAC5C,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC;IACrC,8BAA8B;IAC9B,MAAM,cAAc,GAAG,GAAG,CAAC,cAAc;QACvC,CAAC,CAAC,IAAA,mBAAO,EAAC,GAAG,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;QACxE,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,OAAO,CACL,GAAG,gBAAgB,EAAE;QACrB,GAAG,cAAc,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACjD,GAAG,YAAY,CAAC,CAAC,CAAC,eAAe,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACvD,CAAC;AACJ,CAAC;AAZD,sDAYC;AAED,SAAgB,eAAe,CAAC,KAAc;IAC5C,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAFD,0CAEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metriport/shared",
3
- "version": "0.7.6",
3
+ "version": "0.7.7-alpha.0",
4
4
  "description": "Common code shared across packages - by Metriport Inc.",
5
5
  "author": "Metriport Inc. <contact@metriport.com>",
6
6
  "homepage": "https://metriport.com/",
@@ -54,5 +54,5 @@
54
54
  "devDependencies": {
55
55
  "@faker-js/faker": "^8.0.2"
56
56
  },
57
- "gitHead": "5f4357457a57c01983434ad6bc070035cb0abeb9"
57
+ "gitHead": "d17a30ff8ba0f11f976d836425718b8a8480d4d6"
58
58
  }