@clipboard-health/analytics 0.2.0 → 0.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.
package/package.json CHANGED
@@ -1,17 +1,14 @@
1
1
  {
2
2
  "name": "@clipboard-health/analytics",
3
3
  "description": "Type-safe analytics wrapper around our third-party analytics provider for user identification and event tracking.",
4
- "version": "0.2.0",
4
+ "version": "0.3.0",
5
5
  "bugs": "https://github.com/ClipboardHealth/core-utils/issues",
6
6
  "dependencies": {
7
- "@clipboard-health/util-ts": "3.10.0",
7
+ "@clipboard-health/phone-number": "0.1.0",
8
+ "@clipboard-health/util-ts": "3.11.0",
8
9
  "@segment/analytics-node": "2.3.0",
9
- "libphonenumber-js": "1.12.15",
10
10
  "tslib": "2.8.1"
11
11
  },
12
- "devDependencies": {
13
- "@clipboard-health/testing-core": "0.19.0"
14
- },
15
12
  "keywords": [],
16
13
  "license": "MIT",
17
14
  "main": "./src/index.js",
package/src/index.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export * from "./lib/analytics";
2
- export * from "./lib/formatPhoneAsE164";
package/src/index.js CHANGED
@@ -2,5 +2,4 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./lib/analytics"), exports);
5
- tslib_1.__exportStar(require("./lib/formatPhoneAsE164"), exports);
6
5
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/analytics/src/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,kEAAwC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/analytics/src/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Analytics = void 0;
4
+ const phone_number_1 = require("@clipboard-health/phone-number");
4
5
  const util_ts_1 = require("@clipboard-health/util-ts");
5
6
  const analytics_node_1 = require("@segment/analytics-node");
6
- const formatPhoneAsE164_1 = require("./formatPhoneAsE164");
7
7
  const LOG_PARAMS = {
8
8
  identify: {
9
9
  traceName: "analytics.identify",
@@ -98,17 +98,17 @@ class Analytics {
98
98
  const { logParams, traits } = params;
99
99
  const normalized = { ...traits };
100
100
  if (traits.phone && (0, util_ts_1.isString)(traits.phone)) {
101
- const result = (0, formatPhoneAsE164_1.formatPhoneAsE164)({ phone: traits.phone });
102
- if (util_ts_1.either.isLeft(result)) {
101
+ const result = (0, phone_number_1.formatPhoneNumber)({ phoneNumber: traits.phone, format: "E.164" });
102
+ if ((0, util_ts_1.isFailure)(result)) {
103
103
  this.log({
104
104
  logParams,
105
- message: result.left.issues.map((issue) => issue.message).join(", "),
105
+ message: result.error.issues.map((issue) => issue.message).join(", "),
106
106
  logFunction: this.logger.error,
107
107
  metadata: { traits },
108
108
  });
109
109
  }
110
110
  else {
111
- normalized.phone = result.right;
111
+ normalized.phone = result.value;
112
112
  }
113
113
  }
114
114
  return normalized;
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../../../packages/analytics/src/lib/analytics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../../../packages/analytics/src/lib/analytics.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { either as E, ServiceError } from "@clipboard-health/util-ts";
2
- export declare function formatPhoneAsE164(params: {
3
- phone: string;
4
- }): E.Either<ServiceError, string>;
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatPhoneAsE164 = formatPhoneAsE164;
4
- const util_ts_1 = require("@clipboard-health/util-ts");
5
- const libphonenumber_js_1 = require("libphonenumber-js");
6
- function formatPhoneAsE164(params) {
7
- const { phone } = params;
8
- try {
9
- return util_ts_1.either.right((0, libphonenumber_js_1.parsePhoneNumberWithError)(phone, { defaultCountry: "US" }).format("E.164"));
10
- }
11
- catch {
12
- return util_ts_1.either.left(new util_ts_1.ServiceError({
13
- issues: [{ message: "Invalid phone number", code: "INVALID_PHONE_NUMBER" }],
14
- }));
15
- }
16
- }
17
- //# sourceMappingURL=formatPhoneAsE164.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatPhoneAsE164.js","sourceRoot":"","sources":["../../../../../packages/analytics/src/lib/formatPhoneAsE164.ts"],"names":[],"mappings":";;AAGA,8CAYC;AAfD,uDAAsE;AACtE,yDAA8D;AAE9D,SAAgB,iBAAiB,CAAC,MAAyB;IACzD,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEzB,IAAI,CAAC;QACH,OAAO,gBAAC,CAAC,KAAK,CAAC,IAAA,6CAAyB,EAAC,KAAK,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,gBAAC,CAAC,IAAI,CACX,IAAI,sBAAY,CAAC;YACf,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;SAC5E,CAAC,CACH,CAAC;IACJ,CAAC;AACH,CAAC"}