@formo/analytics 1.16.2 → 1.16.3

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 (50) hide show
  1. package/dist/cjs/src/FormoAnalytics.d.ts +2 -2
  2. package/dist/cjs/src/FormoAnalytics.d.ts.map +1 -1
  3. package/dist/cjs/src/FormoAnalytics.js +57 -48
  4. package/dist/cjs/src/FormoAnalytics.js.map +1 -1
  5. package/dist/cjs/test/utils/address.spec.d.ts +2 -0
  6. package/dist/cjs/test/utils/address.spec.d.ts.map +1 -0
  7. package/dist/cjs/test/utils/address.spec.js +12 -0
  8. package/dist/cjs/test/utils/address.spec.js.map +1 -0
  9. package/dist/cjs/test/utils/converter.spec.d.ts +2 -0
  10. package/dist/cjs/test/utils/converter.spec.d.ts.map +1 -0
  11. package/dist/cjs/test/utils/converter.spec.js +25 -0
  12. package/dist/cjs/test/utils/converter.spec.js.map +1 -0
  13. package/dist/cjs/test/validators/address.spec.d.ts +2 -0
  14. package/dist/cjs/test/validators/address.spec.d.ts.map +1 -0
  15. package/dist/cjs/test/validators/address.spec.js +14 -0
  16. package/dist/cjs/test/validators/address.spec.js.map +1 -0
  17. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  18. package/dist/esm/src/FormoAnalytics.d.ts +2 -2
  19. package/dist/esm/src/FormoAnalytics.d.ts.map +1 -1
  20. package/dist/esm/src/FormoAnalytics.js +57 -48
  21. package/dist/esm/src/FormoAnalytics.js.map +1 -1
  22. package/dist/esm/test/utils/address.spec.d.ts +2 -0
  23. package/dist/esm/test/utils/address.spec.d.ts.map +1 -0
  24. package/dist/esm/test/utils/address.spec.js +10 -0
  25. package/dist/esm/test/utils/address.spec.js.map +1 -0
  26. package/dist/esm/test/utils/converter.spec.d.ts +2 -0
  27. package/dist/esm/test/utils/converter.spec.d.ts.map +1 -0
  28. package/dist/esm/test/utils/converter.spec.js +23 -0
  29. package/dist/esm/test/utils/converter.spec.js.map +1 -0
  30. package/dist/esm/test/validators/address.spec.d.ts +2 -0
  31. package/dist/esm/test/validators/address.spec.d.ts.map +1 -0
  32. package/dist/esm/test/validators/address.spec.js +12 -0
  33. package/dist/esm/test/validators/address.spec.js.map +1 -0
  34. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  35. package/dist/index.umd.min.js +1 -1
  36. package/dist/index.umd.min.js.map +1 -1
  37. package/package.json +2 -2
  38. package/src/FormoAnalytics.ts +5 -4
  39. package/test/utils/address.spec.ts +14 -0
  40. package/test/utils/converter.spec.ts +31 -0
  41. package/test/validators/address.spec.ts +15 -0
  42. package/dist/cjs/test/lib.spec.d.ts +0 -2
  43. package/dist/cjs/test/lib.spec.d.ts.map +0 -1
  44. package/dist/cjs/test/lib.spec.js +0 -40
  45. package/dist/cjs/test/lib.spec.js.map +0 -1
  46. package/dist/esm/test/lib.spec.d.ts +0 -2
  47. package/dist/esm/test/lib.spec.d.ts.map +0 -1
  48. package/dist/esm/test/lib.spec.js +0 -38
  49. package/dist/esm/test/lib.spec.js.map +0 -1
  50. package/test/lib.spec.ts +0 -55
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@formo/analytics",
3
- "version": "1.16.2",
3
+ "version": "1.16.3",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/getformo/sdk.git"
@@ -87,7 +87,7 @@
87
87
  "size-limit": [
88
88
  {
89
89
  "path": "dist/index.umd.min.js",
90
- "limit": "50 KB"
90
+ "limit": "25 KB"
91
91
  }
92
92
  ],
93
93
  "peerDependencies": {
@@ -54,7 +54,7 @@ interface IFormoAnalytics {
54
54
  transactionHash?: string;
55
55
  }): Promise<void>;
56
56
  identify(
57
- params:
57
+ params?:
58
58
  | {
59
59
  address: Address | null;
60
60
  providerName?: string;
@@ -318,7 +318,7 @@ export class FormoAnalytics implements IFormoAnalytics {
318
318
  * @returns {Promise<void>}
319
319
  */
320
320
  public async identify(
321
- params:
321
+ params?:
322
322
  | {
323
323
  address: Address | null;
324
324
  providerName?: string;
@@ -327,9 +327,10 @@ export class FormoAnalytics implements IFormoAnalytics {
327
327
  }
328
328
  | readonly EIP6963ProviderDetail[]
329
329
  ): Promise<void> {
330
- if (isArray(params)) {
330
+ if (isArray(params) || !params) {
331
+ const providers = isArray(params) ? params : await this.getProviders();
331
332
  try {
332
- for (const eip6963ProviderDetail of params) {
333
+ for (const eip6963ProviderDetail of providers) {
333
334
  if (!eip6963ProviderDetail) continue;
334
335
  const accounts = await this.getAccounts(
335
336
  eip6963ProviderDetail?.provider
@@ -0,0 +1,14 @@
1
+ import { describe, it } from "mocha";
2
+ import { expect } from "chai";
3
+ import { toChecksumAddress } from "../../src/utils";
4
+
5
+ describe("toChecksumAddress", () => {
6
+ it("should return the checksum of the address", () => {
7
+ expect(
8
+ toChecksumAddress("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e")
9
+ ).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
10
+ expect(
11
+ toChecksumAddress("0x82827bc8342a16b681afba6b979e3d1ae5f28a0e")
12
+ ).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
13
+ });
14
+ });
@@ -0,0 +1,31 @@
1
+ import { describe, it } from "mocha";
2
+ import { expect } from "chai";
3
+ import { toSnakeCase } from "../../src/utils";
4
+
5
+ describe("toSnakeCase", () => {
6
+ it("should convert object keys to snake case", () => {
7
+ expect(
8
+ toSnakeCase({ chainId: "12345", hashMessage: "John Doe" })
9
+ ).to.deep.equal({
10
+ chain_id: "12345",
11
+ hash_message: "John Doe",
12
+ });
13
+ });
14
+
15
+ it("should convert object keys to snake case, omitting keys in the omitKeys array", () => {
16
+ expect(
17
+ toSnakeCase(
18
+ {
19
+ chainId: "12345",
20
+ hashMessage: "John Doe",
21
+ "user-agent": "Mozilla/5.0",
22
+ },
23
+ ["user-agent"]
24
+ )
25
+ ).to.deep.equal({
26
+ chain_id: "12345",
27
+ hash_message: "John Doe",
28
+ "user-agent": "Mozilla/5.0",
29
+ });
30
+ });
31
+ });
@@ -0,0 +1,15 @@
1
+ import { expect } from "chai";
2
+ import { describe, it } from "mocha";
3
+ import { isAddress } from "../../src/validators";
4
+
5
+ describe("isAddress", () => {
6
+ it("should return true if the input is a valid ethereum address", () => {
7
+ expect(isAddress("0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC")).to.equal(
8
+ true
9
+ );
10
+ });
11
+
12
+ it("should return false otherwise", () => {
13
+ expect(isAddress("o")).to.equal(false);
14
+ });
15
+ });
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=lib.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.spec.d.ts","sourceRoot":"","sources":["../../../test/lib.spec.ts"],"names":[],"mappings":""}
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var mocha_1 = require("mocha");
4
- var utils_1 = require("../src/utils");
5
- var validators_1 = require("../src/validators");
6
- var chai_1 = require("chai");
7
- (0, mocha_1.describe)("toSnakeCase", function () {
8
- (0, mocha_1.it)("should convert object keys to snake case", function () {
9
- (0, chai_1.expect)((0, utils_1.toSnakeCase)({ chainId: "12345", hashMessage: "John Doe" })).to.deep.equal({
10
- chain_id: "12345",
11
- hash_message: "John Doe",
12
- });
13
- });
14
- (0, mocha_1.it)("should convert object keys to snake case, omitting keys in the omitKeys array", function () {
15
- (0, chai_1.expect)((0, utils_1.toSnakeCase)({
16
- chainId: "12345",
17
- hashMessage: "John Doe",
18
- "user-agent": "Mozilla/5.0",
19
- }, ["user-agent"])).to.deep.equal({
20
- chain_id: "12345",
21
- hash_message: "John Doe",
22
- "user-agent": "Mozilla/5.0",
23
- });
24
- });
25
- });
26
- (0, mocha_1.describe)("isAddress", function () {
27
- (0, mocha_1.it)("should return true if the input is a valid ethereum address", function () {
28
- (0, chai_1.expect)((0, validators_1.isAddress)("0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC")).to.equal(true);
29
- });
30
- (0, mocha_1.it)("should return false otherwise", function () {
31
- (0, chai_1.expect)((0, validators_1.isAddress)("o")).to.equal(false);
32
- });
33
- });
34
- (0, mocha_1.describe)("toChecksumAddress", function () {
35
- (0, mocha_1.it)("should return the checksum of the address", function () {
36
- (0, chai_1.expect)((0, utils_1.toChecksumAddress)("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e")).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
37
- (0, chai_1.expect)((0, utils_1.toChecksumAddress)("0x82827bc8342a16b681afba6b979e3d1ae5f28a0e")).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
38
- });
39
- });
40
- //# sourceMappingURL=lib.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.spec.js","sourceRoot":"","sources":["../../../test/lib.spec.ts"],"names":[],"mappings":";;AAAA,+BAAqC;AACrC,sCAA8D;AAC9D,gDAA8C;AAC9C,6BAA8B;AAE9B,IAAA,gBAAQ,EAAC,aAAa,EAAE;IACtB,IAAA,UAAE,EAAC,0CAA0C,EAAE;QAC7C,IAAA,aAAM,EACJ,IAAA,mBAAW,EAAC,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAC3D,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACd,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,UAAU;SACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,UAAE,EAAC,+EAA+E,EAAE;QAClF,IAAA,aAAM,EACJ,IAAA,mBAAW,EACT;YACE,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,UAAU;YACvB,YAAY,EAAE,aAAa;SAC5B,EACD,CAAC,YAAY,CAAC,CACf,CACF,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACd,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,gBAAQ,EAAC,WAAW,EAAE;IACpB,IAAA,UAAE,EAAC,6DAA6D,EAAE;QAChE,IAAA,aAAM,EAAC,IAAA,sBAAS,EAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CACtE,IAAI,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAA,UAAE,EAAC,+BAA+B,EAAE;QAClC,IAAA,aAAM,EAAC,IAAA,sBAAS,EAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAA,gBAAQ,EAAC,mBAAmB,EAAE;IAC5B,IAAA,UAAE,EAAC,2CAA2C,EAAE;QAC9C,IAAA,aAAM,EACJ,IAAA,yBAAiB,EAAC,4CAA4C,CAAC,CAChE,CAAC,EAAE,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QACzD,IAAA,aAAM,EACJ,IAAA,yBAAiB,EAAC,4CAA4C,CAAC,CAChE,CAAC,EAAE,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=lib.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.spec.d.ts","sourceRoot":"","sources":["../../../test/lib.spec.ts"],"names":[],"mappings":""}
@@ -1,38 +0,0 @@
1
- import { describe, it } from "mocha";
2
- import { toChecksumAddress, toSnakeCase } from "../src/utils";
3
- import { isAddress } from "../src/validators";
4
- import { expect } from "chai";
5
- describe("toSnakeCase", function () {
6
- it("should convert object keys to snake case", function () {
7
- expect(toSnakeCase({ chainId: "12345", hashMessage: "John Doe" })).to.deep.equal({
8
- chain_id: "12345",
9
- hash_message: "John Doe",
10
- });
11
- });
12
- it("should convert object keys to snake case, omitting keys in the omitKeys array", function () {
13
- expect(toSnakeCase({
14
- chainId: "12345",
15
- hashMessage: "John Doe",
16
- "user-agent": "Mozilla/5.0",
17
- }, ["user-agent"])).to.deep.equal({
18
- chain_id: "12345",
19
- hash_message: "John Doe",
20
- "user-agent": "Mozilla/5.0",
21
- });
22
- });
23
- });
24
- describe("isAddress", function () {
25
- it("should return true if the input is a valid ethereum address", function () {
26
- expect(isAddress("0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC")).to.equal(true);
27
- });
28
- it("should return false otherwise", function () {
29
- expect(isAddress("o")).to.equal(false);
30
- });
31
- });
32
- describe("toChecksumAddress", function () {
33
- it("should return the checksum of the address", function () {
34
- expect(toChecksumAddress("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e")).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
35
- expect(toChecksumAddress("0x82827bc8342a16b681afba6b979e3d1ae5f28a0e")).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
36
- });
37
- });
38
- //# sourceMappingURL=lib.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib.spec.js","sourceRoot":"","sources":["../../../test/lib.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,QAAQ,CAAC,aAAa,EAAE;IACtB,EAAE,CAAC,0CAA0C,EAAE;QAC7C,MAAM,CACJ,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAC3D,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACd,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,UAAU;SACzB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE;QAClF,MAAM,CACJ,WAAW,CACT;YACE,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,UAAU;YACvB,YAAY,EAAE,aAAa;SAC5B,EACD,CAAC,YAAY,CAAC,CACf,CACF,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACd,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,WAAW,EAAE;IACpB,EAAE,CAAC,6DAA6D,EAAE;QAChE,MAAM,CAAC,SAAS,CAAC,4CAA4C,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CACtE,IAAI,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE;QAClC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mBAAmB,EAAE;IAC5B,EAAE,CAAC,2CAA2C,EAAE;QAC9C,MAAM,CACJ,iBAAiB,CAAC,4CAA4C,CAAC,CAChE,CAAC,EAAE,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QACzD,MAAM,CACJ,iBAAiB,CAAC,4CAA4C,CAAC,CAChE,CAAC,EAAE,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/test/lib.spec.ts DELETED
@@ -1,55 +0,0 @@
1
- import { describe, it } from "mocha";
2
- import { toChecksumAddress, toSnakeCase } from "../src/utils";
3
- import { isAddress } from "../src/validators";
4
- import { expect } from "chai";
5
-
6
- describe("toSnakeCase", () => {
7
- it("should convert object keys to snake case", () => {
8
- expect(
9
- toSnakeCase({ chainId: "12345", hashMessage: "John Doe" })
10
- ).to.deep.equal({
11
- chain_id: "12345",
12
- hash_message: "John Doe",
13
- });
14
- });
15
-
16
- it("should convert object keys to snake case, omitting keys in the omitKeys array", () => {
17
- expect(
18
- toSnakeCase(
19
- {
20
- chainId: "12345",
21
- hashMessage: "John Doe",
22
- "user-agent": "Mozilla/5.0",
23
- },
24
- ["user-agent"]
25
- )
26
- ).to.deep.equal({
27
- chain_id: "12345",
28
- hash_message: "John Doe",
29
- "user-agent": "Mozilla/5.0",
30
- });
31
- });
32
- });
33
-
34
- describe("isAddress", () => {
35
- it("should return true if the input is a valid ethereum address", () => {
36
- expect(isAddress("0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC")).to.equal(
37
- true
38
- );
39
- });
40
-
41
- it("should return false otherwise", () => {
42
- expect(isAddress("o")).to.equal(false);
43
- });
44
- });
45
-
46
- describe("toChecksumAddress", () => {
47
- it("should return the checksum of the address", () => {
48
- expect(
49
- toChecksumAddress("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e")
50
- ).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
51
- expect(
52
- toChecksumAddress("0x82827bc8342a16b681afba6b979e3d1ae5f28a0e")
53
- ).to.equal("0x82827Bc8342a16b681AfbA6B979E3D1aE5F28a0e");
54
- });
55
- });