@vrplatform/log 2.0.53 → 2.0.55

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 (55) hide show
  1. package/build/main/tracking/_intercom.d.ts +109 -0
  2. package/build/main/tracking/_intercom.js +139 -0
  3. package/build/main/tracking/_intercom.js.map +1 -0
  4. package/build/main/tracking/eventTypes.d.ts +16 -0
  5. package/build/main/{type.js → tracking/eventTypes.js} +1 -1
  6. package/build/main/tracking/eventTypes.js.map +1 -0
  7. package/build/main/tracking/index.d.ts +1 -0
  8. package/build/main/tracking/index.js +41 -14
  9. package/build/main/tracking/index.js.map +1 -1
  10. package/build/main/tracking/intercom.d.ts +109 -0
  11. package/build/main/tracking/intercom.js +139 -0
  12. package/build/main/tracking/intercom.js.map +1 -0
  13. package/build/module/tracking/_intercom.d.ts +109 -0
  14. package/build/module/tracking/_intercom.js +136 -0
  15. package/build/module/tracking/_intercom.js.map +1 -0
  16. package/build/module/tracking/eventTypes.d.ts +16 -0
  17. package/build/module/tracking/eventTypes.js +2 -0
  18. package/build/module/tracking/eventTypes.js.map +1 -0
  19. package/build/module/tracking/index.d.ts +1 -0
  20. package/build/module/tracking/index.js +38 -14
  21. package/build/module/tracking/index.js.map +1 -1
  22. package/build/module/tracking/intercom.d.ts +109 -0
  23. package/build/module/tracking/intercom.js +136 -0
  24. package/build/module/tracking/intercom.js.map +1 -0
  25. package/package.json +3 -2
  26. package/src/tracking/index.ts +45 -15
  27. package/build/main/baselog.d.ts +0 -19
  28. package/build/main/baselog.js +0 -137
  29. package/build/main/baselog.js.map +0 -1
  30. package/build/main/color.d.ts +0 -54
  31. package/build/main/color.js +0 -371
  32. package/build/main/color.js.map +0 -1
  33. package/build/main/common.d.ts +0 -29
  34. package/build/main/common.js +0 -86
  35. package/build/main/common.js.map +0 -1
  36. package/build/main/index.spec.d.ts +0 -0
  37. package/build/main/index.spec.js +0 -2
  38. package/build/main/index.spec.js.map +0 -1
  39. package/build/main/type.d.ts +0 -39
  40. package/build/main/type.js.map +0 -1
  41. package/build/module/baselog.d.ts +0 -19
  42. package/build/module/baselog.js +0 -120
  43. package/build/module/baselog.js.map +0 -1
  44. package/build/module/color.d.ts +0 -54
  45. package/build/module/color.js +0 -375
  46. package/build/module/color.js.map +0 -1
  47. package/build/module/common.d.ts +0 -29
  48. package/build/module/common.js +0 -80
  49. package/build/module/common.js.map +0 -1
  50. package/build/module/index.spec.d.ts +0 -0
  51. package/build/module/index.spec.js +0 -2
  52. package/build/module/index.spec.js.map +0 -1
  53. package/build/module/type.d.ts +0 -39
  54. package/build/module/type.js +0 -2
  55. package/build/module/type.js.map +0 -1
@@ -0,0 +1,109 @@
1
+ import type { Log } from '../log';
2
+ export declare class IntercomAPI {
3
+ constructor(token: string, log?: Log);
4
+ private headers;
5
+ private log?;
6
+ private fetch;
7
+ getUserByUserId(userId: string): Promise<{
8
+ type: "list";
9
+ data: {
10
+ id: string;
11
+ }[] | undefined;
12
+ total_count: 0;
13
+ pages: {
14
+ type: "pages";
15
+ page: 1;
16
+ per_page: 10;
17
+ total_pages: 0;
18
+ };
19
+ } | undefined>;
20
+ createUser({ data, userId, }: {
21
+ userId: string;
22
+ data: {
23
+ email: string;
24
+ name: string;
25
+ custom_attributes: Record<string, any>;
26
+ };
27
+ }): Promise<unknown>;
28
+ updateUser({ data, contactId, }: {
29
+ contactId: string;
30
+ data: {
31
+ email?: string;
32
+ name?: string;
33
+ custom_attributes: Record<string, any>;
34
+ [key: string]: any;
35
+ };
36
+ }): Promise<unknown>;
37
+ deleteUser(intercom_contact_id: string): Promise<{
38
+ id: "6657adf56abd0167d9419d1c";
39
+ external_id: "70";
40
+ type: "contact";
41
+ deleted: true;
42
+ } | undefined>;
43
+ createCompanyUser(data: {
44
+ intercom_contact_id: string;
45
+ intercom_company_id: string;
46
+ }): Promise<unknown>;
47
+ deleteCompanyUser({ intercom_company_id, intercom_contact_id, }: {
48
+ intercom_contact_id: string;
49
+ intercom_company_id: string;
50
+ }): Promise<{
51
+ id: "6657adc96abd0167d9419ca7";
52
+ } | undefined>;
53
+ trackEvent(data: {
54
+ user_id: string;
55
+ event_name: string;
56
+ metadata: Record<string, any>;
57
+ }): Promise<unknown>;
58
+ getCompanyByTenantId(tenantId: string): Promise<{
59
+ type: "list";
60
+ data: [{
61
+ type: "company";
62
+ company_id: "remote_companies_scroll_2";
63
+ id: "664df5436abd01f7945e1a78";
64
+ app_id: "this_is_an_id111_that_should_be_at_least_";
65
+ name: "IntercomQATest1";
66
+ remote_created_at: 1716385091;
67
+ created_at: 1716385091;
68
+ updated_at: 1716385091;
69
+ monthly_spend: 0;
70
+ session_count: 0;
71
+ user_count: 4;
72
+ tags: {
73
+ type: "tag.list";
74
+ tags: [];
75
+ };
76
+ segments: {
77
+ type: "segment.list";
78
+ segments: [];
79
+ };
80
+ custom_attributes: Record<string, string>;
81
+ }] | undefined;
82
+ pages: {
83
+ type: "pages";
84
+ next: null;
85
+ page: 1;
86
+ per_page: 15;
87
+ total_pages: 1;
88
+ };
89
+ total_count: 1;
90
+ } | undefined>;
91
+ createCompany({ data, tenantId, }: {
92
+ tenantId: string;
93
+ data: {
94
+ name: string;
95
+ remote_created_at: number;
96
+ custom_attributes: Record<string, any>;
97
+ };
98
+ }): Promise<unknown>;
99
+ updateCompany({ data, companyId, }: {
100
+ companyId: string;
101
+ data: Record<string, any>;
102
+ }): Promise<unknown>;
103
+ deleteCompany(intercom_company_id: string): Promise<{
104
+ id: "6657adc96abd0167d9419ca7";
105
+ object: "company";
106
+ deleted: true;
107
+ } | undefined>;
108
+ }
109
+ export declare function useIntercom(token: string, log?: Log): IntercomAPI;
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IntercomAPI = void 0;
4
+ exports.useIntercom = useIntercom;
5
+ class IntercomAPI {
6
+ constructor(token, log) {
7
+ this.headers = {
8
+ 'Content-Type': 'application/json',
9
+ Accept: 'application/json',
10
+ 'Intercom-Version': '2.11',
11
+ Authorization: `Bearer ${token}`,
12
+ };
13
+ this.log = log;
14
+ }
15
+ async fetch(path, options) {
16
+ if (options?.data) {
17
+ options.body = JSON.stringify(options.data);
18
+ options.data = undefined;
19
+ }
20
+ try {
21
+ const result = await fetch(`https://api.intercom.io${path}`, {
22
+ method: 'GET',
23
+ headers: this.headers,
24
+ ...options,
25
+ });
26
+ if (!result.ok) {
27
+ this.log?.info('Failed to fetch from Intercom', {
28
+ result: {
29
+ status: result.status,
30
+ statusText: result.statusText,
31
+ body: await result.text(),
32
+ },
33
+ });
34
+ if (result.status === 404)
35
+ return undefined;
36
+ if (result.status === 429) {
37
+ console.log('Intercom rate limit exceeded, waiting for 1 minute');
38
+ // X-RateLimit-Reset: 1487332520 => timestamp from header response when resetting
39
+ const reset = Number(result.headers.get('X-RateLimit-Reset'));
40
+ if (reset) {
41
+ const now = Math.floor(Date.now() / 1000);
42
+ const wait = reset - now + 1;
43
+ console.log(`Waiting for ${wait} seconds`);
44
+ await new Promise((resolve) => setTimeout(resolve, wait * 1000));
45
+ return await this.fetch(path, options);
46
+ }
47
+ }
48
+ }
49
+ return result.status === 202 ? {} : (await result.json());
50
+ }
51
+ catch (error) {
52
+ this.log?.error(error);
53
+ return undefined;
54
+ }
55
+ }
56
+ // User
57
+ async getUserByUserId(userId) {
58
+ return await this.fetch('/contacts/search', {
59
+ method: 'POST',
60
+ data: {
61
+ query: {
62
+ field: 'external_id',
63
+ operator: '=',
64
+ value: userId,
65
+ },
66
+ },
67
+ });
68
+ }
69
+ async createUser({ data, userId, }) {
70
+ return await this.fetch('/contacts', {
71
+ method: 'POST',
72
+ data: { ...data, external_id: userId },
73
+ });
74
+ }
75
+ async updateUser({ data, contactId, }) {
76
+ return await this.fetch(`/contacts/${contactId}`, {
77
+ method: 'PUT',
78
+ data,
79
+ });
80
+ }
81
+ async deleteUser(intercom_contact_id) {
82
+ return await this.fetch(`/contacts/${intercom_contact_id}`, {
83
+ method: 'DELETE',
84
+ });
85
+ }
86
+ async createCompanyUser(data) {
87
+ return await this.fetch(`/contacts/${data.intercom_contact_id}/companies`, {
88
+ method: 'POST',
89
+ data: {
90
+ id: data.intercom_company_id,
91
+ },
92
+ });
93
+ }
94
+ async deleteCompanyUser({ intercom_company_id, intercom_contact_id, }) {
95
+ return await this.fetch(`/contacts/${intercom_contact_id}/companies/${intercom_company_id}`, {
96
+ method: 'DELETE',
97
+ });
98
+ }
99
+ async trackEvent(data) {
100
+ return await this.fetch('/events', {
101
+ method: 'POST',
102
+ data: {
103
+ created_at: Math.floor(new Date().getTime() / 1000), // to seconds
104
+ ...data,
105
+ },
106
+ });
107
+ }
108
+ // Company
109
+ async getCompanyByTenantId(tenantId) {
110
+ return await this.fetch(`/companies?company_id=${tenantId}`, {
111
+ method: 'GET',
112
+ });
113
+ }
114
+ async createCompany({ data, tenantId, }) {
115
+ return await this.fetch('/companies', {
116
+ method: 'POST',
117
+ data: {
118
+ ...data,
119
+ company_id: tenantId,
120
+ },
121
+ });
122
+ }
123
+ async updateCompany({ data, companyId, }) {
124
+ return await this.fetch(`/companies/${companyId}`, {
125
+ method: 'PUT',
126
+ data,
127
+ });
128
+ }
129
+ async deleteCompany(intercom_company_id) {
130
+ return await this.fetch(`/companies/${intercom_company_id}`, {
131
+ method: 'DELETE',
132
+ });
133
+ }
134
+ }
135
+ exports.IntercomAPI = IntercomAPI;
136
+ function useIntercom(token, log) {
137
+ return new IntercomAPI(token, log);
138
+ }
139
+ //# sourceMappingURL=_intercom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_intercom.js","sourceRoot":"src/","sources":["tracking/_intercom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ type AuthEvent = 'account_signin_completed' | 'account_signup_code_requested' | 'account_signup_code_completed' | 'account_signup_code_failed' | 'account_signup_completed' | 'account_password_reset_requested' | 'account_password_reset_failed' | 'account_password_reset_completed' | 'account_invitation_accepted' | 'account_signed_out';
2
+ type TeamEvent = 'team_added' | 'team_info_updated' | 'team_deleted' | 'team_member_removed';
3
+ type ConnectionEvent = 'connection_created' | 'connection_reconnected' | 'connection_deleted' | 'connection_requested';
4
+ type OwnershipEvent = 'ownership_created' | 'ownership_updated' | 'ownership_deleted';
5
+ type OwnerEvent = 'owner_created' | 'owner_updated' | 'owner_deleted' | 'owner_tax_info_modal_opened' | 'owner_tax_info_modal_submitted';
6
+ type SetupEvent = 'setup_classes_set' | 'setup_accounting_version_completed' | 'setup_accounting_config_completed' | 'setup_owner_imported' | 'setup_listing_imported';
7
+ type AutomationEvent = 'automation_created' | 'automation_updated' | 'automation_deleted';
8
+ type TaxStatementEvent = 'tax_statement_preview_opened' | 'tax_statement_downloaded';
9
+ type GLOwnerStatementEvent = 'gl_owner_statement_preview_opened' | 'gl_owner_statement_downloaded';
10
+ type HyperlineEvent = 'hyperline_invoice_ready' | 'hyperline_invoice_settled' | 'hyperline_trial_started' | 'hyperline_trial_ended' | 'hyperline_subscription_activated' | 'hyperline_subscription_cancelled' | 'hyperline_subscription_created' | 'hyperline_subscription_errored' | 'hyperline_subscription_paused' | 'hyperline_subscription_voided' | 'hyperline_subscription_charged' | 'hyperline_customer_created' | 'hyperline_customer_updated' | 'hyperline_payment_method_created' | 'hyperline_payment_method_errored' | 'hyperline_payment_method_deleted';
11
+ type ListingEvent = 'listing_activated' | 'listing_deactivated';
12
+ type ReportEvent = 'listings_reported';
13
+ type UserEvent = 'update_refresh_accepted' | 'owner_statement_opened';
14
+ type TestEvent = 'test_event' | 'test_error';
15
+ export type TrackingEvent = AuthEvent | TeamEvent | ConnectionEvent | OwnershipEvent | OwnerEvent | SetupEvent | AutomationEvent | TaxStatementEvent | GLOwnerStatementEvent | HyperlineEvent | UserEvent | ListingEvent | ReportEvent | TestEvent;
16
+ export {};
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=type.js.map
3
+ //# sourceMappingURL=eventTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventTypes.js","sourceRoot":"src/","sources":["tracking/eventTypes.ts"],"names":[],"mappings":""}
@@ -99,6 +99,7 @@ export type UseTracking = {
99
99
  INTERCOM_TOKEN?: string;
100
100
  HASURA_GRAPHQL_ADMIN_SECRET?: string;
101
101
  HASURA_ADMIN_SECRET?: string;
102
+ MIXPANEL_TOKEN?: string;
102
103
  } & LogBindings;
103
104
  debugging?: boolean;
104
105
  };
@@ -13,10 +13,14 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
13
13
  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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
16
19
  Object.defineProperty(exports, "__esModule", { value: true });
17
20
  exports.useTracking = void 0;
18
21
  const graphql_1 = require("@finalytic/graphql");
19
22
  const intercom_client_1 = require("intercom-client");
23
+ const mixpanel_browser_1 = __importDefault(require("mixpanel-browser"));
20
24
  const log_1 = require("../log");
21
25
  const utils_1 = require("../utils");
22
26
  const convertValuesToString_1 = require("../utils/convertValuesToString");
@@ -31,15 +35,14 @@ const useTracking = ({ dataset, env, name }, isDev) => {
31
35
  : undefined;
32
36
  const log = (0, log_1.useLog)({ name, dataset, env });
33
37
  const intercom = env.INTERCOM_TOKEN
34
- ? new intercom_client_1.Intercom({
35
- accessToken: env.INTERCOM_TOKEN,
36
- // fetcher: (args) =>
37
- // fetcher({
38
- // ...args,
39
- // headers: { ...args.headers, accept: 'application/json' },
40
- // }),
41
- })
38
+ ? new intercom_client_1.Intercom({ accessToken: env.INTERCOM_TOKEN })
42
39
  : undefined;
40
+ if (env.MIXPANEL_TOKEN)
41
+ mixpanel_browser_1.default.init(env.MIXPANEL_TOKEN, {
42
+ debug: true,
43
+ track_pageview: true,
44
+ persistence: 'localStorage',
45
+ });
43
46
  return {
44
47
  // General
45
48
  track: async ({ userId, anonymousId, groupId, event, packageName, properties,
@@ -53,10 +56,18 @@ const useTracking = ({ dataset, env, name }, isDev) => {
53
56
  tenantId: groupId,
54
57
  userId: userId,
55
58
  props: properties,
56
- // createdAt: timestamp,
57
59
  packageName,
58
60
  },
59
61
  }).id);
62
+ // track mixpanel event
63
+ if (env.MIXPANEL_TOKEN)
64
+ mixpanel_browser_1.default.track(event, {
65
+ tenant: [groupId], // assign to group
66
+ tenantId: groupId,
67
+ userId: userId,
68
+ packageName,
69
+ ...properties,
70
+ });
60
71
  if (userId) {
61
72
  try {
62
73
  await intercom?.dataEvents.create({
@@ -76,15 +87,25 @@ const useTracking = ({ dataset, env, name }, isDev) => {
76
87
  identify: async ({ traits, userId }) => {
77
88
  if (isDev || (0, utils_1.isTest)(userId))
78
89
  return;
90
+ const name = traits?.name ||
91
+ (traits?.firstName
92
+ ? `${traits.firstName} ${traits.lastName}`
93
+ : traits?.lastName);
94
+ // upsert mixpanel user
95
+ if (env.MIXPANEL_TOKEN) {
96
+ mixpanel_browser_1.default.identify(userId);
97
+ mixpanel_browser_1.default.people.set({
98
+ $name: name,
99
+ $email: traits?.email,
100
+ ...traits,
101
+ });
102
+ }
79
103
  // upsert intercom user
80
104
  try {
81
105
  const data = {
82
106
  external_id: userId,
83
107
  email: traits?.email,
84
- name: traits?.name ||
85
- (traits?.firstName
86
- ? `${traits.firstName} ${traits.lastName}`
87
- : traits?.lastName),
108
+ name,
88
109
  avatar: traits?.avatar,
89
110
  signed_up_at: traits?.createdAt
90
111
  ? Math.floor(new Date(traits.createdAt).getTime() / 1000)
@@ -118,6 +139,9 @@ const useTracking = ({ dataset, env, name }, isDev) => {
118
139
  // add teamId to traits
119
140
  if (!traits?.teamId)
120
141
  traits.teamId = groupId;
142
+ // upsert mixpanel group
143
+ if (env.MIXPANEL_TOKEN)
144
+ mixpanel_browser_1.default.set_group('tenant', groupId);
121
145
  let intercomCompany;
122
146
  try {
123
147
  const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
@@ -186,7 +210,10 @@ const useTracking = ({ dataset, env, name }, isDev) => {
186
210
  }
187
211
  }
188
212
  },
189
- shutdown: async () => log?.flush(),
213
+ shutdown: async () => {
214
+ log?.flush();
215
+ mixpanel_browser_1.default.reset();
216
+ },
190
217
  // export dependencies
191
218
  intercom,
192
219
  log,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["tracking/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["tracking/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ import type { Log } from '../log';
2
+ export declare class IntercomAPI {
3
+ constructor(token: string, log?: Log);
4
+ private headers;
5
+ private log?;
6
+ private fetch;
7
+ getUserByUserId(userId: string): Promise<{
8
+ type: "list";
9
+ data: {
10
+ id: string;
11
+ }[] | undefined;
12
+ total_count: 0;
13
+ pages: {
14
+ type: "pages";
15
+ page: 1;
16
+ per_page: 10;
17
+ total_pages: 0;
18
+ };
19
+ } | undefined>;
20
+ createUser({ data, userId, }: {
21
+ userId: string;
22
+ data: {
23
+ email: string;
24
+ name: string;
25
+ custom_attributes: Record<string, any>;
26
+ };
27
+ }): Promise<unknown>;
28
+ updateUser({ data, contactId, }: {
29
+ contactId: string;
30
+ data: {
31
+ email?: string;
32
+ name?: string;
33
+ custom_attributes: Record<string, any>;
34
+ [key: string]: any;
35
+ };
36
+ }): Promise<unknown>;
37
+ deleteUser(intercom_contact_id: string): Promise<{
38
+ id: "6657adf56abd0167d9419d1c";
39
+ external_id: "70";
40
+ type: "contact";
41
+ deleted: true;
42
+ } | undefined>;
43
+ createCompanyUser(data: {
44
+ intercom_contact_id: string;
45
+ intercom_company_id: string;
46
+ }): Promise<unknown>;
47
+ deleteCompanyUser({ intercom_company_id, intercom_contact_id, }: {
48
+ intercom_contact_id: string;
49
+ intercom_company_id: string;
50
+ }): Promise<{
51
+ id: "6657adc96abd0167d9419ca7";
52
+ } | undefined>;
53
+ trackEvent(data: {
54
+ user_id: string;
55
+ event_name: string;
56
+ metadata: Record<string, any>;
57
+ }): Promise<unknown>;
58
+ getCompanyByTenantId(tenantId: string): Promise<{
59
+ type: "list";
60
+ data: [{
61
+ type: "company";
62
+ company_id: "remote_companies_scroll_2";
63
+ id: "664df5436abd01f7945e1a78";
64
+ app_id: "this_is_an_id111_that_should_be_at_least_";
65
+ name: "IntercomQATest1";
66
+ remote_created_at: 1716385091;
67
+ created_at: 1716385091;
68
+ updated_at: 1716385091;
69
+ monthly_spend: 0;
70
+ session_count: 0;
71
+ user_count: 4;
72
+ tags: {
73
+ type: "tag.list";
74
+ tags: [];
75
+ };
76
+ segments: {
77
+ type: "segment.list";
78
+ segments: [];
79
+ };
80
+ custom_attributes: Record<string, string>;
81
+ }] | undefined;
82
+ pages: {
83
+ type: "pages";
84
+ next: null;
85
+ page: 1;
86
+ per_page: 15;
87
+ total_pages: 1;
88
+ };
89
+ total_count: 1;
90
+ } | undefined>;
91
+ createCompany({ data, tenantId, }: {
92
+ tenantId: string;
93
+ data: {
94
+ name: string;
95
+ remote_created_at: number;
96
+ custom_attributes: Record<string, any>;
97
+ };
98
+ }): Promise<unknown>;
99
+ updateCompany({ data, companyId, }: {
100
+ companyId: string;
101
+ data: Record<string, any>;
102
+ }): Promise<unknown>;
103
+ deleteCompany(intercom_company_id: string): Promise<{
104
+ id: "6657adc96abd0167d9419ca7";
105
+ object: "company";
106
+ deleted: true;
107
+ } | undefined>;
108
+ }
109
+ export declare function useIntercom(token: string, log?: Log): IntercomAPI;