@formo/analytics 1.16.7 → 1.16.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.
Files changed (108) hide show
  1. package/dist/cjs/src/FormoAnalytics.d.ts +9 -49
  2. package/dist/cjs/src/FormoAnalytics.d.ts.map +1 -1
  3. package/dist/cjs/src/FormoAnalytics.js +123 -50
  4. package/dist/cjs/src/FormoAnalytics.js.map +1 -1
  5. package/dist/cjs/src/FormoAnalyticsProvider.d.ts +3 -4
  6. package/dist/cjs/src/FormoAnalyticsProvider.d.ts.map +1 -1
  7. package/dist/cjs/src/FormoAnalyticsProvider.js +14 -2
  8. package/dist/cjs/src/FormoAnalyticsProvider.js.map +1 -1
  9. package/dist/cjs/src/constants/base.d.ts +5 -4
  10. package/dist/cjs/src/constants/base.d.ts.map +1 -1
  11. package/dist/cjs/src/constants/base.js +6 -7
  12. package/dist/cjs/src/constants/base.js.map +1 -1
  13. package/dist/cjs/src/lib/event/EventFactory.d.ts +4 -1
  14. package/dist/cjs/src/lib/event/EventFactory.d.ts.map +1 -1
  15. package/dist/cjs/src/lib/event/EventFactory.js +52 -10
  16. package/dist/cjs/src/lib/event/EventFactory.js.map +1 -1
  17. package/dist/cjs/src/lib/event/EventManager.d.ts +2 -1
  18. package/dist/cjs/src/lib/event/EventManager.d.ts.map +1 -1
  19. package/dist/cjs/src/lib/event/EventManager.js +2 -2
  20. package/dist/cjs/src/lib/event/EventManager.js.map +1 -1
  21. package/dist/cjs/src/lib/event/utils.d.ts +1 -1
  22. package/dist/cjs/src/lib/event/utils.d.ts.map +1 -1
  23. package/dist/cjs/src/lib/event/utils.js +3 -4
  24. package/dist/cjs/src/lib/event/utils.js.map +1 -1
  25. package/dist/cjs/src/lib/storage/index.d.ts +2 -0
  26. package/dist/cjs/src/lib/storage/index.d.ts.map +1 -1
  27. package/dist/cjs/src/lib/storage/index.js +18 -1
  28. package/dist/cjs/src/lib/storage/index.js.map +1 -1
  29. package/dist/cjs/src/lib/storage/key.d.ts +9 -0
  30. package/dist/cjs/src/lib/storage/key.d.ts.map +1 -0
  31. package/dist/cjs/src/lib/storage/key.js +15 -0
  32. package/dist/cjs/src/lib/storage/key.js.map +1 -0
  33. package/dist/cjs/src/lib/storage/native.js +1 -1
  34. package/dist/cjs/src/lib/storage/native.js.map +1 -1
  35. package/dist/cjs/src/lib/storage/type.d.ts +4 -0
  36. package/dist/cjs/src/lib/storage/type.d.ts.map +1 -0
  37. package/dist/cjs/src/lib/storage/type.js +3 -0
  38. package/dist/cjs/src/lib/storage/type.js.map +1 -0
  39. package/dist/cjs/src/lib/version.d.ts +1 -1
  40. package/dist/cjs/src/lib/version.js +1 -1
  41. package/dist/cjs/src/types/base.d.ts +44 -0
  42. package/dist/cjs/src/types/base.d.ts.map +1 -1
  43. package/dist/cjs/src/types/events.d.ts +11 -1
  44. package/dist/cjs/src/types/events.d.ts.map +1 -1
  45. package/dist/cjs/src/types/events.js.map +1 -1
  46. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  47. package/dist/esm/src/FormoAnalytics.d.ts +9 -49
  48. package/dist/esm/src/FormoAnalytics.d.ts.map +1 -1
  49. package/dist/esm/src/FormoAnalytics.js +124 -51
  50. package/dist/esm/src/FormoAnalytics.js.map +1 -1
  51. package/dist/esm/src/FormoAnalyticsProvider.d.ts +3 -4
  52. package/dist/esm/src/FormoAnalyticsProvider.d.ts.map +1 -1
  53. package/dist/esm/src/FormoAnalyticsProvider.js +15 -3
  54. package/dist/esm/src/FormoAnalyticsProvider.js.map +1 -1
  55. package/dist/esm/src/constants/base.d.ts +5 -4
  56. package/dist/esm/src/constants/base.d.ts.map +1 -1
  57. package/dist/esm/src/constants/base.js +5 -6
  58. package/dist/esm/src/constants/base.js.map +1 -1
  59. package/dist/esm/src/lib/event/EventFactory.d.ts +4 -1
  60. package/dist/esm/src/lib/event/EventFactory.d.ts.map +1 -1
  61. package/dist/esm/src/lib/event/EventFactory.js +54 -12
  62. package/dist/esm/src/lib/event/EventFactory.js.map +1 -1
  63. package/dist/esm/src/lib/event/EventManager.d.ts +2 -1
  64. package/dist/esm/src/lib/event/EventManager.d.ts.map +1 -1
  65. package/dist/esm/src/lib/event/EventManager.js +2 -2
  66. package/dist/esm/src/lib/event/EventManager.js.map +1 -1
  67. package/dist/esm/src/lib/event/utils.d.ts +1 -1
  68. package/dist/esm/src/lib/event/utils.d.ts.map +1 -1
  69. package/dist/esm/src/lib/event/utils.js +3 -4
  70. package/dist/esm/src/lib/event/utils.js.map +1 -1
  71. package/dist/esm/src/lib/storage/index.d.ts +2 -0
  72. package/dist/esm/src/lib/storage/index.d.ts.map +1 -1
  73. package/dist/esm/src/lib/storage/index.js +2 -0
  74. package/dist/esm/src/lib/storage/index.js.map +1 -1
  75. package/dist/esm/src/lib/storage/key.d.ts +9 -0
  76. package/dist/esm/src/lib/storage/key.d.ts.map +1 -0
  77. package/dist/esm/src/lib/storage/key.js +12 -0
  78. package/dist/esm/src/lib/storage/key.js.map +1 -0
  79. package/dist/esm/src/lib/storage/native.js +1 -1
  80. package/dist/esm/src/lib/storage/native.js.map +1 -1
  81. package/dist/esm/src/lib/storage/type.d.ts +4 -0
  82. package/dist/esm/src/lib/storage/type.d.ts.map +1 -0
  83. package/dist/esm/src/lib/storage/type.js +2 -0
  84. package/dist/esm/src/lib/storage/type.js.map +1 -0
  85. package/dist/esm/src/lib/version.d.ts +1 -1
  86. package/dist/esm/src/lib/version.js +1 -1
  87. package/dist/esm/src/types/base.d.ts +44 -0
  88. package/dist/esm/src/types/base.d.ts.map +1 -1
  89. package/dist/esm/src/types/events.d.ts +11 -1
  90. package/dist/esm/src/types/events.d.ts.map +1 -1
  91. package/dist/esm/src/types/events.js.map +1 -1
  92. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  93. package/dist/index.umd.min.js +1 -1
  94. package/dist/index.umd.min.js.map +1 -1
  95. package/package.json +2 -2
  96. package/src/FormoAnalytics.ts +124 -125
  97. package/src/FormoAnalyticsProvider.tsx +18 -6
  98. package/src/constants/base.ts +5 -12
  99. package/src/lib/event/EventFactory.ts +89 -15
  100. package/src/lib/event/EventManager.ts +3 -2
  101. package/src/lib/event/utils.ts +3 -4
  102. package/src/lib/storage/index.ts +2 -0
  103. package/src/lib/storage/key.ts +16 -0
  104. package/src/lib/storage/native.ts +1 -1
  105. package/src/lib/storage/type.ts +3 -0
  106. package/src/lib/version.ts +1 -1
  107. package/src/types/base.ts +83 -0
  108. package/src/types/events.ts +11 -1
@@ -0,0 +1,16 @@
1
+ import { IStorageKeyManager } from "./type";
2
+
3
+ class StorageKey implements IStorageKeyManager {
4
+ private readonly prefix = "formo";
5
+ private readonly writeKey: string;
6
+
7
+ constructor(writeKey: string) {
8
+ this.writeKey = writeKey;
9
+ }
10
+
11
+ getKey(name: string): string {
12
+ return this.prefix + "_" + this.writeKey + "." + name;
13
+ }
14
+ }
15
+
16
+ export { StorageKey };
@@ -60,7 +60,7 @@ export class NativeStorage {
60
60
 
61
61
  if (value.startsWith(this.json_prefix)) {
62
62
  try {
63
- return JSON.parse(value.slice(7));
63
+ return JSON.parse(value.slice(this.json_prefix.length));
64
64
  } catch (error) {
65
65
  logger.error(
66
66
  `[FORMO_ERROR] ${this.storageName} failed to parse JSON`,
@@ -0,0 +1,3 @@
1
+ export interface IStorageKeyManager {
2
+ getKey(name: string): string;
3
+ }
@@ -1,2 +1,2 @@
1
1
  // Generated by genversion.
2
- export const version = '1.16.6';
2
+ export const version = '1.16.9';
package/src/types/base.ts CHANGED
@@ -1,4 +1,10 @@
1
1
  import { LogLevel } from "../lib";
2
+ import {
3
+ IFormoEventContext,
4
+ IFormoEventProperties,
5
+ SignatureStatus,
6
+ TransactionStatus,
7
+ } from "./events";
2
8
  import { EIP1193Provider } from "./provider";
3
9
 
4
10
  export type Nullable<T> = T | null;
@@ -9,6 +15,83 @@ export type ChainID = number;
9
15
  export type Address = string;
10
16
 
11
17
  export type ValidInputTypes = Uint8Array | bigint | string | number | boolean;
18
+ export interface IFormoAnalytics {
19
+ page(
20
+ category?: string,
21
+ name?: string,
22
+ properties?: IFormoEventProperties,
23
+ context?: IFormoEventContext,
24
+ callback?: (...args: unknown[]) => void
25
+ ): void;
26
+ reset(): void;
27
+ detect(
28
+ params: { rdns: string; providerName: string },
29
+ properties?: IFormoEventProperties,
30
+ context?: IFormoEventContext,
31
+ callback?: (...args: unknown[]) => void
32
+ ): Promise<void>;
33
+ connect(
34
+ params: { chainId: ChainID; address: Address },
35
+ properties?: IFormoEventProperties,
36
+ context?: IFormoEventContext,
37
+ callback?: (...args: unknown[]) => void
38
+ ): Promise<void>;
39
+ disconnect(
40
+ params?: { chainId?: ChainID; address?: Address },
41
+ properties?: IFormoEventProperties,
42
+ context?: IFormoEventContext,
43
+ callback?: (...args: unknown[]) => void
44
+ ): Promise<void>;
45
+ chain(
46
+ params: { chainId: ChainID; address?: Address },
47
+ properties?: IFormoEventProperties,
48
+ context?: IFormoEventContext,
49
+ callback?: (...args: unknown[]) => void
50
+ ): Promise<void>;
51
+ signature(
52
+ params: {
53
+ status: SignatureStatus;
54
+ chainId?: ChainID;
55
+ address: Address;
56
+ message: string;
57
+ signatureHash?: string;
58
+ },
59
+ properties?: IFormoEventProperties,
60
+ context?: IFormoEventContext,
61
+ callback?: (...args: unknown[]) => void
62
+ ): Promise<void>;
63
+ transaction(
64
+ params: {
65
+ status: TransactionStatus;
66
+ chainId: ChainID;
67
+ address: Address;
68
+ data?: string;
69
+ to?: string;
70
+ value?: string;
71
+ transactionHash?: string;
72
+ },
73
+ properties?: IFormoEventProperties,
74
+ context?: IFormoEventContext,
75
+ callback?: (...args: unknown[]) => void
76
+ ): Promise<void>;
77
+ identify(
78
+ params: {
79
+ address: Address;
80
+ providerName?: string;
81
+ userId?: string;
82
+ rdns?: string;
83
+ },
84
+ properties?: IFormoEventProperties,
85
+ context?: IFormoEventContext,
86
+ callback?: (...args: unknown[]) => void
87
+ ): Promise<void>;
88
+ track(
89
+ event: string,
90
+ properties?: IFormoEventProperties,
91
+ context?: IFormoEventContext,
92
+ callback?: (...args: unknown[]) => void
93
+ ): Promise<void>;
94
+ }
12
95
 
13
96
  export interface Options {
14
97
  provider?: EIP1193Provider;
@@ -17,7 +17,17 @@ export interface ICommonProperties {
17
17
 
18
18
  export type IFormoEventProperties = Record<string, unknown>;
19
19
  export type IFormoEventContext = Record<string, unknown>;
20
- export type UTMParameters = Record<string, string>;
20
+ export type UTMParameters = {
21
+ utm_source: string;
22
+ utm_medium: string;
23
+ utm_campaign: string;
24
+ utm_term: string;
25
+ utm_content: string;
26
+ };
27
+ export type ITrafficSource = UTMParameters & {
28
+ ref: string;
29
+ referrer: string;
30
+ };
21
31
 
22
32
  export interface IFormoEvent extends ICommonProperties {
23
33
  context: Nullable<IFormoEventContext>;