@metriport/commonwell-sdk 6.2.4 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/client/commonwell-api.d.ts +18 -7
  2. package/dist/client/commonwell-api.d.ts.map +1 -1
  3. package/dist/client/commonwell.d.ts +22 -13
  4. package/dist/client/commonwell.d.ts.map +1 -1
  5. package/dist/client/commonwell.js +48 -18
  6. package/dist/client/commonwell.js.map +1 -1
  7. package/dist/common/util.d.ts +39 -17
  8. package/dist/common/util.d.ts.map +1 -1
  9. package/dist/common/util.js +36 -39
  10. package/dist/common/util.js.map +1 -1
  11. package/dist/common/validate-npi.d.ts +1 -10
  12. package/dist/common/validate-npi.d.ts.map +1 -1
  13. package/dist/common/validate-npi.js +2 -38
  14. package/dist/common/validate-npi.js.map +1 -1
  15. package/dist/index.d.ts +1 -1
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +4 -3
  18. package/dist/index.js.map +1 -1
  19. package/dist/models/address.d.ts +12 -9
  20. package/dist/models/address.d.ts.map +1 -1
  21. package/dist/models/address.js +3 -0
  22. package/dist/models/address.js.map +1 -1
  23. package/dist/models/contact.d.ts +2 -2
  24. package/dist/models/demographics.d.ts +34 -40
  25. package/dist/models/demographics.d.ts.map +1 -1
  26. package/dist/models/demographics.js +29 -47
  27. package/dist/models/demographics.js.map +1 -1
  28. package/dist/models/document.d.ts +1924 -1575
  29. package/dist/models/document.d.ts.map +1 -1
  30. package/dist/models/document.js +24 -22
  31. package/dist/models/document.js.map +1 -1
  32. package/dist/models/facility.d.ts +16 -16
  33. package/dist/models/identifier.d.ts +15 -73
  34. package/dist/models/identifier.d.ts.map +1 -1
  35. package/dist/models/identifier.js +3 -14
  36. package/dist/models/identifier.js.map +1 -1
  37. package/dist/models/patient.d.ts +2124 -787
  38. package/dist/models/patient.d.ts.map +1 -1
  39. package/dist/models/patient.js +38 -13
  40. package/dist/models/patient.js.map +1 -1
  41. package/dist/models/reference.d.ts +24 -24
  42. package/package.json +2 -2
@@ -1,11 +1,2 @@
1
- /**
2
- * @deprecated Use @metriport/shared instead.
3
- * Checks if the specified 10 digit NPI is valid as per ISO standard mod 10 Luhn algorithm.
4
- *
5
- * See: https://www.cms.gov/Regulations-and-Guidance/Administrative-Simplification/NationalProvIdentStand/Downloads/NPIcheckdigit.pdf
6
- *
7
- * @param npi The npi number to validate, must be 10 digits.
8
- * @returns true if valid; false otherwise.
9
- */
10
- export declare function validateNPI(npi: string): boolean;
1
+ export { validateNPI } from "@metriport/shared";
11
2
  //# sourceMappingURL=validate-npi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-npi.d.ts","sourceRoot":"","sources":["../../src/common/validate-npi.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAiChD"}
1
+ {"version":3,"file":"validate-npi.d.ts","sourceRoot":"","sources":["../../src/common/validate-npi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,42 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.validateNPI = void 0;
4
- /**
5
- * @deprecated Use @metriport/shared instead.
6
- * Checks if the specified 10 digit NPI is valid as per ISO standard mod 10 Luhn algorithm.
7
- *
8
- * See: https://www.cms.gov/Regulations-and-Guidance/Administrative-Simplification/NationalProvIdentStand/Downloads/NPIcheckdigit.pdf
9
- *
10
- * @param npi The npi number to validate, must be 10 digits.
11
- * @returns true if valid; false otherwise.
12
- */
13
- function validateNPI(npi) {
14
- if (!npi || npi.length !== 10) {
15
- return false;
16
- }
17
- const firstNPIDigit = parseInt(npi.charAt(0), 10);
18
- if (firstNPIDigit !== 1 && firstNPIDigit !== 2) {
19
- return false;
20
- }
21
- let sum = 0;
22
- let shouldDouble = true;
23
- for (let i = 0; i < npi.length - 1; i++) {
24
- let digit = parseInt(npi.charAt(i), 10);
25
- if (shouldDouble) {
26
- digit *= 2;
27
- if (digit > 9) {
28
- digit -= 9;
29
- }
30
- }
31
- sum += digit;
32
- shouldDouble = !shouldDouble;
33
- }
34
- // account for NPI prefix
35
- sum += 24;
36
- const diffFromNextTens = 10 - (sum % 10);
37
- const checkDigit = diffFromNextTens % 10;
38
- const lastNPIDigit = parseInt(npi.charAt(npi.length - 1), 10);
39
- return checkDigit === lastNPIDigit;
40
- }
41
- exports.validateNPI = validateNPI;
4
+ var shared_1 = require("@metriport/shared");
5
+ Object.defineProperty(exports, "validateNPI", { enumerable: true, get: function () { return shared_1.validateNPI; } });
42
6
  //# sourceMappingURL=validate-npi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate-npi.js","sourceRoot":"","sources":["../../src/common/validate-npi.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;GAQG;AACH,SAAgB,WAAW,CAAC,GAAW;IACrC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IACD,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,EAAE;QAC9C,OAAO,KAAK,CAAC;KACd;IAED,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAExC,IAAI,YAAY,EAAE;YAChB,KAAK,IAAI,CAAC,CAAC;YACX,IAAI,KAAK,GAAG,CAAC,EAAE;gBACb,KAAK,IAAI,CAAC,CAAC;aACZ;SACF;QAED,GAAG,IAAI,KAAK,CAAC;QACb,YAAY,GAAG,CAAC,YAAY,CAAC;KAC9B;IAED,yBAAyB;IACzB,GAAG,IAAI,EAAE,CAAC;IAEV,MAAM,gBAAgB,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;IACzC,MAAM,UAAU,GAAG,gBAAgB,GAAG,EAAE,CAAC;IAEzC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9D,OAAO,UAAU,KAAK,YAAY,CAAC;AACrC,CAAC;AAjCD,kCAiCC"}
1
+ {"version":3,"file":"validate-npi.js","sourceRoot":"","sources":["../../src/common/validate-npi.ts"],"names":[],"mappings":";;;AAAA,4CAAgD;AAAvC,qGAAA,WAAW,OAAA"}
package/dist/index.d.ts CHANGED
@@ -5,7 +5,7 @@ export { CommonWellMember } from "./client/commonwell-member";
5
5
  export { CommonWellMemberAPI, MemberRequestMetadata } from "./client/commonwell-member-api";
6
6
  export { CommonwellError } from "./common/commonwell-error";
7
7
  export { makeJwt } from "./common/make-jwt";
8
- export { buildBaseQueryMeta, decodeCwPatientId, getPatientIdTrailingSlash, getPatientStrongIds, } from "./common/util";
8
+ export { buildBaseQueryMeta, decodeCwPatientId, encodeCwPatientId, encodePatientIdForDocumentExchange, getCwPatientIdFromLinks, } from "./common/util";
9
9
  export { validateNPI } from "./common/validate-npi";
10
10
  export * from "./models/address";
11
11
  export * from "./models/certificates";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,kCAAkC,EAClC,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.validateNPI = exports.getPatientStrongIds = exports.getPatientIdTrailingSlash = exports.decodeCwPatientId = exports.buildBaseQueryMeta = exports.makeJwt = exports.CommonwellError = exports.CommonWellMember = exports.CommonWell = exports.APIMode = void 0;
17
+ exports.validateNPI = exports.getCwPatientIdFromLinks = exports.encodePatientIdForDocumentExchange = exports.encodeCwPatientId = exports.decodeCwPatientId = exports.buildBaseQueryMeta = exports.makeJwt = exports.CommonwellError = exports.CommonWellMember = exports.CommonWell = exports.APIMode = void 0;
18
18
  var common_1 = require("./client/common");
19
19
  Object.defineProperty(exports, "APIMode", { enumerable: true, get: function () { return common_1.APIMode; } });
20
20
  var commonwell_1 = require("./client/commonwell");
@@ -28,8 +28,9 @@ Object.defineProperty(exports, "makeJwt", { enumerable: true, get: function () {
28
28
  var util_1 = require("./common/util");
29
29
  Object.defineProperty(exports, "buildBaseQueryMeta", { enumerable: true, get: function () { return util_1.buildBaseQueryMeta; } });
30
30
  Object.defineProperty(exports, "decodeCwPatientId", { enumerable: true, get: function () { return util_1.decodeCwPatientId; } });
31
- Object.defineProperty(exports, "getPatientIdTrailingSlash", { enumerable: true, get: function () { return util_1.getPatientIdTrailingSlash; } });
32
- Object.defineProperty(exports, "getPatientStrongIds", { enumerable: true, get: function () { return util_1.getPatientStrongIds; } });
31
+ Object.defineProperty(exports, "encodeCwPatientId", { enumerable: true, get: function () { return util_1.encodeCwPatientId; } });
32
+ Object.defineProperty(exports, "encodePatientIdForDocumentExchange", { enumerable: true, get: function () { return util_1.encodePatientIdForDocumentExchange; } });
33
+ Object.defineProperty(exports, "getCwPatientIdFromLinks", { enumerable: true, get: function () { return util_1.getCwPatientIdFromLinks; } });
33
34
  var validate_npi_1 = require("./common/validate-npi");
34
35
  Object.defineProperty(exports, "validateNPI", { enumerable: true, get: function () { return validate_npi_1.validateNPI; } });
35
36
  __exportStar(require("./models/address"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAA6D;AAApD,iGAAA,OAAO,OAAA;AAChB,kDAAiD;AAAxC,wGAAA,UAAU,OAAA;AAEnB,gEAA8D;AAArD,qHAAA,gBAAgB,OAAA;AAEzB,8DAA4D;AAAnD,mHAAA,eAAe,OAAA;AACxB,8CAA4C;AAAnC,mGAAA,OAAO,OAAA;AAChB,sCAKuB;AAJrB,0GAAA,kBAAkB,OAAA;AAClB,yGAAA,iBAAiB,OAAA;AACjB,iHAAA,yBAAyB,OAAA;AACzB,2GAAA,mBAAmB,OAAA;AAErB,sDAAoD;AAA3C,2GAAA,WAAW,OAAA;AACpB,mDAAiC;AACjC,wDAAsC;AACtC,mDAAiC;AACjC,wDAAsC;AACtC,oDAAkC;AAClC,sDAAoC;AACpC,sDAAoC;AACpC,wDAAsC;AACtC,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0CAA6D;AAApD,iGAAA,OAAO,OAAA;AAChB,kDAAiD;AAAxC,wGAAA,UAAU,OAAA;AAEnB,gEAA8D;AAArD,qHAAA,gBAAgB,OAAA;AAEzB,8DAA4D;AAAnD,mHAAA,eAAe,OAAA;AACxB,8CAA4C;AAAnC,mGAAA,OAAO,OAAA;AAChB,sCAMuB;AALrB,0GAAA,kBAAkB,OAAA;AAClB,yGAAA,iBAAiB,OAAA;AACjB,yGAAA,iBAAiB,OAAA;AACjB,0HAAA,kCAAkC,OAAA;AAClC,+GAAA,uBAAuB,OAAA;AAEzB,sDAAoD;AAA3C,2GAAA,WAAW,OAAA;AACpB,mDAAiC;AACjC,wDAAsC;AACtC,mDAAiC;AACjC,wDAAsC;AACtC,oDAAkC;AAClC,sDAAoC;AACpC,sDAAoC;AACpC,wDAAsC;AACtC,mDAAiC"}
@@ -5,7 +5,10 @@ import { z } from "zod";
5
5
  */
6
6
  export declare enum AddressUseCodes {
7
7
  home = "home",
8
- old = "old"
8
+ work = "work",
9
+ temp = "temp",
10
+ old = "old",
11
+ billing = "billing"
9
12
  }
10
13
  export declare const addressUseCodesSchema: z.ZodEffects<z.ZodNativeEnum<typeof AddressUseCodes>, AddressUseCodes, unknown>;
11
14
  export declare enum AddressTypeCodes {
@@ -35,27 +38,27 @@ export declare const addressSchema: z.ZodObject<{
35
38
  }, "strip", z.ZodTypeAny, {
36
39
  postalCode: string;
37
40
  type?: AddressTypeCodes | null | undefined;
41
+ line?: string[] | null | undefined;
42
+ city?: string | null | undefined;
43
+ state?: string | null | undefined;
44
+ country?: string | null | undefined;
38
45
  use?: AddressUseCodes | null | undefined;
39
46
  period?: {
40
47
  start?: string | null | undefined;
41
48
  end?: string | null | undefined;
42
49
  } | null | undefined;
43
- line?: string[] | null | undefined;
44
- city?: string | null | undefined;
45
- state?: string | null | undefined;
46
- country?: string | null | undefined;
47
50
  }, {
48
51
  postalCode: string;
49
52
  type?: unknown;
53
+ line?: string[] | null | undefined;
54
+ city?: string | null | undefined;
55
+ state?: unknown;
56
+ country?: unknown;
50
57
  use?: unknown;
51
58
  period?: {
52
59
  start?: unknown;
53
60
  end?: unknown;
54
61
  } | null | undefined;
55
- line?: string[] | null | undefined;
56
- city?: string | null | undefined;
57
- state?: unknown;
58
- country?: unknown;
59
62
  }>;
60
63
  export type Address = z.infer<typeof addressSchema>;
61
64
  export declare function normalizeStatePreprocess(arg: unknown): unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../src/models/address.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;GAGG;AACH,oBAAY,eAAe;IACzB,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ;AACD,eAAO,MAAM,qBAAqB,iFAA8D,CAAC;AAEjG,oBAAY,gBAAgB;IAC1B,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AACD,eAAO,MAAM,sBAAsB,mFAA+D,CAAC;AAInG,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAI9D"}
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../src/models/address.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;GAGG;AACH,oBAAY,eAAe;IACzB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,OAAO,YAAY;CACpB;AACD,eAAO,MAAM,qBAAqB,iFAA8D,CAAC;AAEjG,oBAAY,gBAAgB;IAC1B,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AACD,eAAO,MAAM,sBAAsB,mFAA+D,CAAC;AAInG,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAI9D"}
@@ -12,7 +12,10 @@ const period_1 = require("./period");
12
12
  var AddressUseCodes;
13
13
  (function (AddressUseCodes) {
14
14
  AddressUseCodes["home"] = "home";
15
+ AddressUseCodes["work"] = "work";
16
+ AddressUseCodes["temp"] = "temp";
15
17
  AddressUseCodes["old"] = "old";
18
+ AddressUseCodes["billing"] = "billing";
16
19
  })(AddressUseCodes = exports.AddressUseCodes || (exports.AddressUseCodes = {}));
17
20
  exports.addressUseCodesSchema = zod_1.z.preprocess(shared_1.zodToLowerCase, zod_1.z.nativeEnum(AddressUseCodes));
18
21
  var AddressTypeCodes;
@@ -1 +1 @@
1
- {"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/models/address.ts"],"names":[],"mappings":";;;AAAA,8CAAmE;AACnE,6BAAwB;AACxB,uCAA6D;AAC7D,qCAAwC;AAExC;;;GAGG;AACH,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,8BAAW,CAAA;AACb,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B;AACY,QAAA,qBAAqB,GAAG,OAAC,CAAC,UAAU,CAAC,uBAAc,EAAE,OAAC,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;AAEjG,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,iCAAa,CAAA;AACf,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B;AACY,QAAA,sBAAsB,GAAG,OAAC,CAAC,UAAU,CAAC,uBAAc,EAAE,OAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAEnG,oBAAoB;AACpB,gGAAgG;AACnF,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;IACnC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC1B,KAAK,EAAE,OAAC,CAAC,UAAU,CAAC,wBAAwB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACnE,OAAO,EAAE,kCAA4B;IACrC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,GAAG,EAAE,kCAA4B,CAAC,IAAI,CAAC,6BAAqB,CAAC,OAAO,EAAE,CAAC;IACvE,IAAI,EAAE,kCAA4B,CAAC,IAAI,CAAC,8BAAsB,CAAC,OAAO,EAAE,CAAC;IACzE,MAAM,EAAE,qBAAY,CAAC,OAAO,EAAE;CAC/B,CAAC,CAAC;AAGH,SAAgB,wBAAwB,CAAC,GAAY;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAAE,OAAO,SAAS,CAAC;IAChG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAA,uBAAc,EAAC,GAAG,CAAC,CAAC;IACxD,OAAO,SAAS,CAAC;AACnB,CAAC;AAJD,4DAIC"}
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/models/address.ts"],"names":[],"mappings":";;;AAAA,8CAAmE;AACnE,6BAAwB;AACxB,uCAA6D;AAC7D,qCAAwC;AAExC;;;GAGG;AACH,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,gCAAa,CAAA;IACb,gCAAa,CAAA;IACb,8BAAW,CAAA;IACX,sCAAmB,CAAA;AACrB,CAAC,EANW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAM1B;AACY,QAAA,qBAAqB,GAAG,OAAC,CAAC,UAAU,CAAC,uBAAc,EAAE,OAAC,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;AAEjG,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,iCAAa,CAAA;AACf,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B;AACY,QAAA,sBAAsB,GAAG,OAAC,CAAC,UAAU,CAAC,uBAAc,EAAE,OAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAEnG,oBAAoB;AACpB,gGAAgG;AACnF,QAAA,aAAa,GAAG,OAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;IACnC,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;IAC1B,KAAK,EAAE,OAAC,CAAC,UAAU,CAAC,wBAAwB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACnE,OAAO,EAAE,kCAA4B;IACrC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IACtB,GAAG,EAAE,kCAA4B,CAAC,IAAI,CAAC,6BAAqB,CAAC,OAAO,EAAE,CAAC;IACvE,IAAI,EAAE,kCAA4B,CAAC,IAAI,CAAC,8BAAsB,CAAC,OAAO,EAAE,CAAC;IACzE,MAAM,EAAE,qBAAY,CAAC,OAAO,EAAE;CAC/B,CAAC,CAAC;AAGH,SAAgB,wBAAwB,CAAC,GAAY;IACnD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAAE,OAAO,SAAS,CAAC;IAChG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAA,uBAAc,EAAC,GAAG,CAAC,CAAC;IACxD,OAAO,SAAS,CAAC;AACnB,CAAC;AAJD,4DAIC"}
@@ -41,20 +41,20 @@ export declare const contactSchema: z.ZodObject<{
41
41
  }>>>;
42
42
  }, "strip", z.ZodTypeAny, {
43
43
  value?: string | null | undefined;
44
- system?: ContactSystemCodes | null | undefined;
45
44
  use?: ContactUseCodes | null | undefined;
46
45
  period?: {
47
46
  start?: string | null | undefined;
48
47
  end?: string | null | undefined;
49
48
  } | null | undefined;
49
+ system?: ContactSystemCodes | null | undefined;
50
50
  }, {
51
51
  value?: string | null | undefined;
52
- system?: unknown;
53
52
  use?: unknown;
54
53
  period?: {
55
54
  start?: unknown;
56
55
  end?: unknown;
57
56
  } | null | undefined;
57
+ system?: unknown;
58
58
  }>;
59
59
  export type Contact = z.infer<typeof contactSchema>;
60
60
  //# sourceMappingURL=contact.d.ts.map
@@ -1,17 +1,12 @@
1
1
  import { z } from "zod";
2
2
  /** @see https://hl7.org/fhir/R4/valueset-administrative-gender.html */
3
3
  export declare enum GenderCodes {
4
- F = "female",
5
- M = "male",
6
- O = "other",
7
- U = "unknown"
4
+ F = "F",
5
+ M = "M",
6
+ O = "O",
7
+ U = "U"
8
8
  }
9
- export declare enum GenderCodesBackwardsCompatible {
10
- UN = "UN",
11
- UNKNOWN = "unknown",
12
- UNK = "unknown"
13
- }
14
- export declare const genderCodesSchema: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodNativeEnum<typeof GenderCodes>, z.ZodNativeEnum<typeof GenderCodesBackwardsCompatible>]>, z.ZodEnum<[string, ...string[]]>]>, string, string>, string, unknown>;
9
+ export declare const genderCodesSchema: z.ZodEffects<z.ZodOptional<z.ZodNativeEnum<typeof GenderCodes>>, GenderCodes | undefined, unknown>;
15
10
  export type Gender = z.infer<typeof genderCodesSchema>;
16
11
  export declare const birthDateSchema: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodString]>, string, string>;
17
12
  export declare const demographicsSchema: z.ZodObject<{
@@ -35,22 +30,22 @@ export declare const demographicsSchema: z.ZodObject<{
35
30
  value: string;
36
31
  system: string;
37
32
  type?: "SS" | "DL" | "PPN" | "BRN" | "MR" | "MCN" | "EN" | "TAX" | "NIIP" | "PRN" | "MD" | "DR" | "ACSN" | "UDI" | "SNO" | "SB" | "PLAC" | "FILL" | "IAL2" | "IAL3" | null | undefined;
38
- use?: "usual" | "official" | "temp" | "secondary" | "old" | null | undefined;
39
- assigner?: string | null | undefined;
33
+ use?: "temp" | "old" | "usual" | "official" | "secondary" | null | undefined;
40
34
  period?: {
41
35
  start?: string | null | undefined;
42
36
  end?: string | null | undefined;
43
37
  } | null | undefined;
38
+ assigner?: string | null | undefined;
44
39
  }, {
45
40
  value: string;
46
41
  system: string;
47
42
  type?: unknown;
48
43
  use?: unknown;
49
- assigner?: unknown;
50
44
  period?: {
51
45
  start?: unknown;
52
46
  end?: unknown;
53
47
  } | null | undefined;
48
+ assigner?: unknown;
54
49
  }>, "many">;
55
50
  name: z.ZodArray<z.ZodObject<{
56
51
  given: z.ZodArray<z.ZodString, "many">;
@@ -92,7 +87,7 @@ export declare const demographicsSchema: z.ZodObject<{
92
87
  prefix?: unknown;
93
88
  suffix?: unknown;
94
89
  }>, "many">;
95
- gender: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodUnion<[z.ZodNativeEnum<typeof GenderCodes>, z.ZodNativeEnum<typeof GenderCodesBackwardsCompatible>]>, z.ZodEnum<[string, ...string[]]>]>, string, string>, string, unknown>>>;
90
+ gender: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodOptional<z.ZodNativeEnum<typeof GenderCodes>>, GenderCodes | undefined, unknown>>>;
96
91
  birthDate: z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodString]>, string, string>;
97
92
  address: z.ZodArray<z.ZodObject<{
98
93
  line: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
@@ -115,27 +110,27 @@ export declare const demographicsSchema: z.ZodObject<{
115
110
  }, "strip", z.ZodTypeAny, {
116
111
  postalCode: string;
117
112
  type?: import("./address").AddressTypeCodes | null | undefined;
113
+ line?: string[] | null | undefined;
114
+ city?: string | null | undefined;
115
+ state?: string | null | undefined;
116
+ country?: string | null | undefined;
118
117
  use?: import("./address").AddressUseCodes | null | undefined;
119
118
  period?: {
120
119
  start?: string | null | undefined;
121
120
  end?: string | null | undefined;
122
121
  } | null | undefined;
123
- line?: string[] | null | undefined;
124
- city?: string | null | undefined;
125
- state?: string | null | undefined;
126
- country?: string | null | undefined;
127
122
  }, {
128
123
  postalCode: string;
129
124
  type?: unknown;
125
+ line?: string[] | null | undefined;
126
+ city?: string | null | undefined;
127
+ state?: unknown;
128
+ country?: unknown;
130
129
  use?: unknown;
131
130
  period?: {
132
131
  start?: unknown;
133
132
  end?: unknown;
134
133
  } | null | undefined;
135
- line?: string[] | null | undefined;
136
- city?: string | null | undefined;
137
- state?: unknown;
138
- country?: unknown;
139
134
  }>, "many">;
140
135
  telecom: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
141
136
  value: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -153,32 +148,32 @@ export declare const demographicsSchema: z.ZodObject<{
153
148
  }>>>;
154
149
  }, "strip", z.ZodTypeAny, {
155
150
  value?: string | null | undefined;
156
- system?: import("./contact").ContactSystemCodes | null | undefined;
157
151
  use?: import("./contact").ContactUseCodes | null | undefined;
158
152
  period?: {
159
153
  start?: string | null | undefined;
160
154
  end?: string | null | undefined;
161
155
  } | null | undefined;
156
+ system?: import("./contact").ContactSystemCodes | null | undefined;
162
157
  }, {
163
158
  value?: string | null | undefined;
164
- system?: unknown;
165
159
  use?: unknown;
166
160
  period?: {
167
161
  start?: unknown;
168
162
  end?: unknown;
169
163
  } | null | undefined;
164
+ system?: unknown;
170
165
  }>, "many">>>;
171
166
  }, "strip", z.ZodTypeAny, {
172
167
  identifier: {
173
168
  value: string;
174
169
  system: string;
175
170
  type?: "SS" | "DL" | "PPN" | "BRN" | "MR" | "MCN" | "EN" | "TAX" | "NIIP" | "PRN" | "MD" | "DR" | "ACSN" | "UDI" | "SNO" | "SB" | "PLAC" | "FILL" | "IAL2" | "IAL3" | null | undefined;
176
- use?: "usual" | "official" | "temp" | "secondary" | "old" | null | undefined;
177
- assigner?: string | null | undefined;
171
+ use?: "temp" | "old" | "usual" | "official" | "secondary" | null | undefined;
178
172
  period?: {
179
173
  start?: string | null | undefined;
180
174
  end?: string | null | undefined;
181
175
  } | null | undefined;
176
+ assigner?: string | null | undefined;
182
177
  }[];
183
178
  name: {
184
179
  family: string[];
@@ -196,25 +191,25 @@ export declare const demographicsSchema: z.ZodObject<{
196
191
  address: {
197
192
  postalCode: string;
198
193
  type?: import("./address").AddressTypeCodes | null | undefined;
194
+ line?: string[] | null | undefined;
195
+ city?: string | null | undefined;
196
+ state?: string | null | undefined;
197
+ country?: string | null | undefined;
199
198
  use?: import("./address").AddressUseCodes | null | undefined;
200
199
  period?: {
201
200
  start?: string | null | undefined;
202
201
  end?: string | null | undefined;
203
202
  } | null | undefined;
204
- line?: string[] | null | undefined;
205
- city?: string | null | undefined;
206
- state?: string | null | undefined;
207
- country?: string | null | undefined;
208
203
  }[];
209
- gender?: string | null | undefined;
204
+ gender?: GenderCodes | null | undefined;
210
205
  telecom?: {
211
206
  value?: string | null | undefined;
212
- system?: import("./contact").ContactSystemCodes | null | undefined;
213
207
  use?: import("./contact").ContactUseCodes | null | undefined;
214
208
  period?: {
215
209
  start?: string | null | undefined;
216
210
  end?: string | null | undefined;
217
211
  } | null | undefined;
212
+ system?: import("./contact").ContactSystemCodes | null | undefined;
218
213
  }[] | null | undefined;
219
214
  }, {
220
215
  identifier: {
@@ -222,11 +217,11 @@ export declare const demographicsSchema: z.ZodObject<{
222
217
  system: string;
223
218
  type?: unknown;
224
219
  use?: unknown;
225
- assigner?: unknown;
226
220
  period?: {
227
221
  start?: unknown;
228
222
  end?: unknown;
229
223
  } | null | undefined;
224
+ assigner?: unknown;
230
225
  }[];
231
226
  name: {
232
227
  family: string[];
@@ -244,28 +239,27 @@ export declare const demographicsSchema: z.ZodObject<{
244
239
  address: {
245
240
  postalCode: string;
246
241
  type?: unknown;
242
+ line?: string[] | null | undefined;
243
+ city?: string | null | undefined;
244
+ state?: unknown;
245
+ country?: unknown;
247
246
  use?: unknown;
248
247
  period?: {
249
248
  start?: unknown;
250
249
  end?: unknown;
251
250
  } | null | undefined;
252
- line?: string[] | null | undefined;
253
- city?: string | null | undefined;
254
- state?: unknown;
255
- country?: unknown;
256
251
  }[];
257
252
  gender?: unknown;
258
253
  telecom?: {
259
254
  value?: string | null | undefined;
260
- system?: unknown;
261
255
  use?: unknown;
262
256
  period?: {
263
257
  start?: unknown;
264
258
  end?: unknown;
265
259
  } | null | undefined;
260
+ system?: unknown;
266
261
  }[] | null | undefined;
267
262
  }>;
268
263
  export type Demographics = z.infer<typeof demographicsSchema>;
269
- export declare function fhirGenderToCommonwell(gender: Gender): string;
270
- export declare function coerceGender(value: string): string;
264
+ export declare function coerceGender(value: unknown): GenderCodes;
271
265
  //# sourceMappingURL=demographics.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"demographics.d.ts","sourceRoot":"","sources":["../../src/models/demographics.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,uEAAuE;AACvE,oBAAY,WAAW;IACrB,CAAC,WAAW;IACZ,CAAC,SAAS;IACV,CAAC,UAAU;IACX,CAAC,YAAY;CACd;AACD,oBAAY,8BAA8B;IACxC,EAAE,OAAO;IACT,OAAO,YAAY;IACnB,GAAG,YAAY;CAChB;AACD,eAAO,MAAM,iBAAiB,wNAO7B,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEvD,eAAO,MAAM,eAAe,sEAAsE,CAAC;AAInG,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAgB7D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWlD"}
1
+ {"version":3,"file":"demographics.d.ts","sourceRoot":"","sources":["../../src/models/demographics.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,uEAAuE;AACvE,oBAAY,WAAW;IACrB,CAAC,MAAM;IACP,CAAC,MAAM;IACP,CAAC,MAAM;IACP,CAAC,MAAM;CACR;AAGD,eAAO,MAAM,iBAAiB,oGAG7B,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEvD,eAAO,MAAM,eAAe,sEAAsE,CAAC;AAInG,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAyBxD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.coerceGender = exports.fhirGenderToCommonwell = exports.demographicsSchema = exports.birthDateSchema = exports.genderCodesSchema = exports.GenderCodesBackwardsCompatible = exports.GenderCodes = void 0;
3
+ exports.coerceGender = exports.demographicsSchema = exports.birthDateSchema = exports.genderCodesSchema = exports.GenderCodes = void 0;
4
4
  const shared_1 = require("@metriport/shared");
5
5
  const zod_1 = require("zod");
6
6
  const address_1 = require("./address");
@@ -10,22 +10,13 @@ const identifier_1 = require("./identifier");
10
10
  /** @see https://hl7.org/fhir/R4/valueset-administrative-gender.html */
11
11
  var GenderCodes;
12
12
  (function (GenderCodes) {
13
- GenderCodes["F"] = "female";
14
- GenderCodes["M"] = "male";
15
- GenderCodes["O"] = "other";
16
- GenderCodes["U"] = "unknown";
13
+ GenderCodes["F"] = "F";
14
+ GenderCodes["M"] = "M";
15
+ GenderCodes["O"] = "O";
16
+ GenderCodes["U"] = "U";
17
17
  })(GenderCodes = exports.GenderCodes || (exports.GenderCodes = {}));
18
- var GenderCodesBackwardsCompatible;
19
- (function (GenderCodesBackwardsCompatible) {
20
- GenderCodesBackwardsCompatible["UN"] = "UN";
21
- GenderCodesBackwardsCompatible["UNKNOWN"] = "unknown";
22
- GenderCodesBackwardsCompatible["UNK"] = "unknown";
23
- })(GenderCodesBackwardsCompatible = exports.GenderCodesBackwardsCompatible || (exports.GenderCodesBackwardsCompatible = {}));
24
- exports.genderCodesSchema = zod_1.z.preprocess(shared_1.zodToLowerCase, zod_1.z
25
- .nativeEnum(GenderCodes)
26
- .or(zod_1.z.nativeEnum(GenderCodesBackwardsCompatible))
27
- .or(zod_1.z.enum(Object.keys(GenderCodes).map(k => k.toLowerCase())))
28
- .transform(coerceGender));
18
+ const preprocessGender = (v) => (v == null || v === "" ? undefined : coerceGender(v));
19
+ exports.genderCodesSchema = zod_1.z.preprocess(preprocessGender, zod_1.z.nativeEnum(GenderCodes).optional());
29
20
  exports.birthDateSchema = shared_1.isoDateSchema.or(shared_1.usDateSchema).transform(shared_1.dateStringToIsoDateString);
30
21
  // The demographic details for a Person.
31
22
  // See: https://specification.commonwellalliance.org/services/rest-api-reference (8.4.8 Demographics)
@@ -37,39 +28,30 @@ exports.demographicsSchema = zod_1.z.object({
37
28
  address: zod_1.z.array(address_1.addressSchema).min(1),
38
29
  telecom: zod_1.z.array(contact_1.contactSchema).nullish(),
39
30
  });
40
- function fhirGenderToCommonwell(gender) {
41
- switch (gender) {
42
- case GenderCodes.F:
43
- return "F";
44
- case GenderCodes.M:
45
- return "M";
46
- case GenderCodes.O:
47
- case GenderCodesBackwardsCompatible.UN:
48
- return "O";
49
- case GenderCodes.U:
50
- case GenderCodesBackwardsCompatible.UNKNOWN:
51
- case GenderCodesBackwardsCompatible.UNK:
52
- return "U";
31
+ function coerceGender(value) {
32
+ if (typeof value !== "string") {
33
+ throw new shared_1.MetriportError(`Invalid gender`, undefined, { value: String(value) });
34
+ }
35
+ const v = value.toLowerCase().trim();
36
+ switch (v) {
37
+ case "f":
38
+ case "female":
39
+ return GenderCodes.F;
40
+ case "m":
41
+ case "male":
42
+ return GenderCodes.M;
43
+ case "o":
44
+ case "other":
45
+ case "un":
46
+ case "undifferentiated":
47
+ return GenderCodes.O;
48
+ case "u":
49
+ case "unk":
50
+ case "unknown":
51
+ return GenderCodes.U;
53
52
  default:
54
- throw new Error(`Unknown gender: ${gender}`);
53
+ throw new shared_1.MetriportError(`Invalid gender`, undefined, { value });
55
54
  }
56
55
  }
57
- exports.fhirGenderToCommonwell = fhirGenderToCommonwell;
58
- function coerceGender(value) {
59
- if (typeof value !== "string")
60
- throw new shared_1.MetriportError(`Invalid gender`, undefined, { value });
61
- const v = value.toLowerCase();
62
- if (v === "f" || v === "female")
63
- return GenderCodes.F;
64
- if (v === "m" || v === "male")
65
- return GenderCodes.M;
66
- if (v === "o" || v === "other")
67
- return GenderCodes.O;
68
- if (v === "un" || v === "undifferentiated")
69
- return GenderCodes.O;
70
- if (v === "u" || v === "unk" || v === "unknown")
71
- return GenderCodes.U;
72
- throw new shared_1.MetriportError(`Invalid gender`, undefined, { value });
73
- }
74
56
  exports.coerceGender = coerceGender;
75
57
  //# sourceMappingURL=demographics.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"demographics.js","sourceRoot":"","sources":["../../src/models/demographics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"demographics.js","sourceRoot":"","sources":["../../src/models/demographics.ts"],"names":[],"mappings":";;;AAAA,8CAK2B;AAC3B,6BAAwB;AACxB,uCAA0C;AAC1C,uCAA0C;AAC1C,6CAA+C;AAC/C,6CAAuD;AAEvD,uEAAuE;AACvE,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,sBAAO,CAAA;IACP,sBAAO,CAAA;IACP,sBAAO,CAAA;IACP,sBAAO,CAAA;AACT,CAAC,EALW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAKtB;AAED,MAAM,gBAAgB,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAClF,QAAA,iBAAiB,GAAG,OAAC,CAAC,UAAU,CAC3C,gBAAgB,EAChB,OAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CACrC,CAAC;AAIW,QAAA,eAAe,GAAG,sBAAa,CAAC,EAAE,CAAC,qBAAY,CAAC,CAAC,SAAS,CAAC,kCAAyB,CAAC,CAAC;AAEnG,wCAAwC;AACxC,qGAAqG;AACxF,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,OAAC,CAAC,KAAK,CAAC,oCAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,MAAM,EAAE,yBAAiB,CAAC,OAAO,EAAE;IACnC,SAAS,EAAE,uBAAe;IAC1B,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,uBAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,uBAAa,CAAC,CAAC,OAAO,EAAE;CAC1C,CAAC,CAAC;AAGH,SAAgB,YAAY,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,MAAM,IAAI,uBAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;KACjF;IACD,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IAErC,QAAQ,CAAC,EAAE;QACT,KAAK,GAAG,CAAC;QACT,KAAK,QAAQ;YACX,OAAO,WAAW,CAAC,CAAC,CAAC;QACvB,KAAK,GAAG,CAAC;QACT,KAAK,MAAM;YACT,OAAO,WAAW,CAAC,CAAC,CAAC;QACvB,KAAK,GAAG,CAAC;QACT,KAAK,OAAO,CAAC;QACb,KAAK,IAAI,CAAC;QACV,KAAK,kBAAkB;YACrB,OAAO,WAAW,CAAC,CAAC,CAAC;QACvB,KAAK,GAAG,CAAC;QACT,KAAK,KAAK,CAAC;QACX,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,CAAC,CAAC;QACvB;YACE,MAAM,IAAI,uBAAc,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;KACpE;AACH,CAAC;AAzBD,oCAyBC"}