saasco-sdk 0.1.17 → 0.1.19

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/index.cjs.js CHANGED
@@ -2,11 +2,41 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib = require('tslib');
6
5
  var uuid = require('@lukeed/uuid');
7
6
  var zod = require('zod');
7
+ var react = require('react');
8
8
 
9
- var version = "0.1.17";
9
+ /******************************************************************************
10
+ Copyright (c) Microsoft Corporation.
11
+
12
+ Permission to use, copy, modify, and/or distribute this software for any
13
+ purpose with or without fee is hereby granted.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
16
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
17
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
18
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
19
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
20
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
21
+ PERFORMANCE OF THIS SOFTWARE.
22
+ ***************************************************************************** */
23
+
24
+ function __awaiter(thisArg, _arguments, P, generator) {
25
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
26
+ return new (P || (P = Promise))(function (resolve, reject) {
27
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
28
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
29
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
30
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
31
+ });
32
+ }
33
+
34
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
35
+ var e = new Error(message);
36
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
37
+ };
38
+
39
+ var version = "0.1.19";
10
40
 
11
41
  const timezones = {
12
42
  'Asia/Barnaul': 'RU',
@@ -665,7 +695,7 @@ class Saasco {
665
695
  // This should only be called when distinctId is null and there is an existing userId.
666
696
  // This means the user has logged out and we should reset the session and anonymous IDs
667
697
  const userIdChangedToNull = distinctId === null && !!getUserId();
668
- if (userIdChangedToNull) this.log('User ID change to null. Session reset');
698
+ if (userIdChangedToNull) this.log('User logged out');
669
699
  const reset = userIdChangedToNull;
670
700
  setSessionId({
671
701
  reset
@@ -677,7 +707,7 @@ class Saasco {
677
707
  setUserId(distinctId);
678
708
  // No distinctId provided so we don't track the user
679
709
  if (!distinctId) return Promise.resolve({
680
- success: false,
710
+ success: true,
681
711
  message: 'No distinctId provided'
682
712
  });
683
713
  const data = {
@@ -692,6 +722,16 @@ class Saasco {
692
722
  };
693
723
  return this.doRequest('identify', data);
694
724
  }
725
+ /**
726
+ * This should only be called when the user logs out
727
+ * It will reset the session, anonymous id, and user id
728
+ *
729
+ * All events after calling reset will be tracked as a new user
730
+ *
731
+ */
732
+ logout() {
733
+ this.identify(null);
734
+ }
695
735
  /**
696
736
  * Handles sending data to the Saasco API
697
737
  * If you have a proxy set up, it will send the data to the proxy and you can handle forawrding the data to the Saasco events API
@@ -699,7 +739,7 @@ class Saasco {
699
739
  * @param data
700
740
  */
701
741
  doRequest(path, data) {
702
- return tslib.__awaiter(this, void 0, void 0, function* () {
742
+ return __awaiter(this, void 0, void 0, function* () {
703
743
  const base = this.config.proxy || 'https://www.saasco.com/api/';
704
744
  const url = `${base}${path}`;
705
745
  const logMessage = data.action === 'Page View' ? `Page View ${window.location.pathname}` // if its a page view, include pathname in console log
@@ -1141,6 +1181,7 @@ const reservedPropertiesSchema = zod.z.object({
1141
1181
  // Default Properties
1142
1182
  $id: zod.z.string().nullish(),
1143
1183
  $lastSeen: zod.z.string().nullish(),
1184
+ $lastIdentifiedAt: zod.z.string().nullish(),
1144
1185
  $unsubscribed: zod.z.boolean().nullish(),
1145
1186
  $unsubscribeReason: zod.z.enum(['manual', 'complained', 'bounced']).nullish(),
1146
1187
  // Stripe Properties
@@ -1193,7 +1234,26 @@ const latestIdentifiesResponseSchema = tinyBirdBaseSchema.extend({
1193
1234
  }))
1194
1235
  });
1195
1236
 
1237
+ function SaascoProvider({
1238
+ projectId,
1239
+ debug = false,
1240
+ enabled = true,
1241
+ proxy
1242
+ }) {
1243
+ react.useEffect(() => {
1244
+ const saasco = new Saasco({
1245
+ projectId,
1246
+ debug,
1247
+ enabled,
1248
+ proxy
1249
+ });
1250
+ saasco.init();
1251
+ }, [projectId, debug, enabled, proxy]);
1252
+ return null;
1253
+ }
1254
+
1196
1255
  exports.Saasco = Saasco;
1256
+ exports.SaascoProvider = SaascoProvider;
1197
1257
  exports.TinybirdJobResponseSchema = TinybirdJobResponseSchema;
1198
1258
  exports.analyticsEventSchema = analyticsEventSchema;
1199
1259
  exports.analyticsUserRawSchema = analyticsUserRawSchema;
package/index.esm.js CHANGED
@@ -1,8 +1,38 @@
1
- import { __awaiter } from 'tslib';
2
1
  import { v4 } from '@lukeed/uuid';
3
2
  import { z } from 'zod';
3
+ import { useEffect } from 'react';
4
4
 
5
- var version = "0.1.17";
5
+ /******************************************************************************
6
+ Copyright (c) Microsoft Corporation.
7
+
8
+ Permission to use, copy, modify, and/or distribute this software for any
9
+ purpose with or without fee is hereby granted.
10
+
11
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
12
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
13
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
14
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
15
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
16
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17
+ PERFORMANCE OF THIS SOFTWARE.
18
+ ***************************************************************************** */
19
+
20
+ function __awaiter(thisArg, _arguments, P, generator) {
21
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
22
+ return new (P || (P = Promise))(function (resolve, reject) {
23
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
24
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
25
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
26
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
27
+ });
28
+ }
29
+
30
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
31
+ var e = new Error(message);
32
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
33
+ };
34
+
35
+ var version = "0.1.19";
6
36
 
7
37
  const timezones = {
8
38
  'Asia/Barnaul': 'RU',
@@ -661,7 +691,7 @@ class Saasco {
661
691
  // This should only be called when distinctId is null and there is an existing userId.
662
692
  // This means the user has logged out and we should reset the session and anonymous IDs
663
693
  const userIdChangedToNull = distinctId === null && !!getUserId();
664
- if (userIdChangedToNull) this.log('User ID change to null. Session reset');
694
+ if (userIdChangedToNull) this.log('User logged out');
665
695
  const reset = userIdChangedToNull;
666
696
  setSessionId({
667
697
  reset
@@ -673,7 +703,7 @@ class Saasco {
673
703
  setUserId(distinctId);
674
704
  // No distinctId provided so we don't track the user
675
705
  if (!distinctId) return Promise.resolve({
676
- success: false,
706
+ success: true,
677
707
  message: 'No distinctId provided'
678
708
  });
679
709
  const data = {
@@ -688,6 +718,16 @@ class Saasco {
688
718
  };
689
719
  return this.doRequest('identify', data);
690
720
  }
721
+ /**
722
+ * This should only be called when the user logs out
723
+ * It will reset the session, anonymous id, and user id
724
+ *
725
+ * All events after calling reset will be tracked as a new user
726
+ *
727
+ */
728
+ logout() {
729
+ this.identify(null);
730
+ }
691
731
  /**
692
732
  * Handles sending data to the Saasco API
693
733
  * If you have a proxy set up, it will send the data to the proxy and you can handle forawrding the data to the Saasco events API
@@ -1137,6 +1177,7 @@ const reservedPropertiesSchema = z.object({
1137
1177
  // Default Properties
1138
1178
  $id: z.string().nullish(),
1139
1179
  $lastSeen: z.string().nullish(),
1180
+ $lastIdentifiedAt: z.string().nullish(),
1140
1181
  $unsubscribed: z.boolean().nullish(),
1141
1182
  $unsubscribeReason: z.enum(['manual', 'complained', 'bounced']).nullish(),
1142
1183
  // Stripe Properties
@@ -1189,4 +1230,22 @@ const latestIdentifiesResponseSchema = tinyBirdBaseSchema.extend({
1189
1230
  }))
1190
1231
  });
1191
1232
 
1192
- export { Saasco, TinybirdJobResponseSchema, analyticsEventSchema, analyticsUserRawSchema, analyticsUserSchema, baseTopRequestSchema, browserContextSchema, coerceReservedProperties, contactPropertiesSchema, createTrackedEventTypeSchema, currentUsersRequestSchema, currentUsersResponseSchema, getAnalyticsUserParamsSchema, getBrowserContext, idenfitySchema, kpiSchema, kpisRequestSchema, kpisResponseSchema, latestEventItemSchema, latestEventsRequestSchema, latestEventsResponseSchema, latestIdentifiesRequestSchema, latestIdentifiesResponseSchema, listUsersParamsSchema, reservedPropertiesSchema, serverContextSchema, tbAny, timezones, tinyBirdBaseSchema, topActionsResponseSchema, topBrowsersResponseSchema, topDevicesResponseSchema, topLocationsResponseSchema, topPagesResponseSchema, topSourcesResponseSchema, topSourcesSchema, trackedEventSchema, trackedEventTypesSchema, userEventsResponseSchema };
1233
+ function SaascoProvider({
1234
+ projectId,
1235
+ debug = false,
1236
+ enabled = true,
1237
+ proxy
1238
+ }) {
1239
+ useEffect(() => {
1240
+ const saasco = new Saasco({
1241
+ projectId,
1242
+ debug,
1243
+ enabled,
1244
+ proxy
1245
+ });
1246
+ saasco.init();
1247
+ }, [projectId, debug, enabled, proxy]);
1248
+ return null;
1249
+ }
1250
+
1251
+ export { Saasco, SaascoProvider, TinybirdJobResponseSchema, analyticsEventSchema, analyticsUserRawSchema, analyticsUserSchema, baseTopRequestSchema, browserContextSchema, coerceReservedProperties, contactPropertiesSchema, createTrackedEventTypeSchema, currentUsersRequestSchema, currentUsersResponseSchema, getAnalyticsUserParamsSchema, getBrowserContext, idenfitySchema, kpiSchema, kpisRequestSchema, kpisResponseSchema, latestEventItemSchema, latestEventsRequestSchema, latestEventsResponseSchema, latestIdentifiesRequestSchema, latestIdentifiesResponseSchema, listUsersParamsSchema, reservedPropertiesSchema, serverContextSchema, tbAny, timezones, tinyBirdBaseSchema, topActionsResponseSchema, topBrowsersResponseSchema, topDevicesResponseSchema, topLocationsResponseSchema, topPagesResponseSchema, topSourcesResponseSchema, topSourcesSchema, trackedEventSchema, trackedEventTypesSchema, userEventsResponseSchema };
package/package.json CHANGED
@@ -1,11 +1,16 @@
1
1
  {
2
2
  "name": "saasco-sdk",
3
- "version": "0.1.17",
3
+ "version": "0.1.19",
4
4
  "dependencies": {
5
- "tslib": "^2.3.0",
6
5
  "@lukeed/uuid": "^2.0.1",
7
6
  "zod": "^3.22.4"
8
7
  },
8
+ "peerDependencies": {
9
+ "react": "^18.0.0"
10
+ },
11
+ "devDependencies": {
12
+ "tslib": "^2.3.0"
13
+ },
9
14
  "main": "./index.cjs.js",
10
15
  "typings": "./src/index.d.ts",
11
16
  "module": "./index.esm.js"
package/src/index.d.ts CHANGED
@@ -4,3 +4,4 @@ export * from './lib/getBrowserContext';
4
4
  export * from './lib/timezones';
5
5
  export * from './lib/tracking';
6
6
  export * from './lib/types';
7
+ export * from './lib/nextjs';
@@ -71,6 +71,14 @@ export declare class Saasco {
71
71
  identify(distinctId: string | number | null, properties?: Record<string, any>, context?: {
72
72
  active?: boolean;
73
73
  }): Promise<DoRequestResponse>;
74
+ /**
75
+ * This should only be called when the user logs out
76
+ * It will reset the session, anonymous id, and user id
77
+ *
78
+ * All events after calling reset will be tracked as a new user
79
+ *
80
+ */
81
+ logout(): void;
74
82
  /**
75
83
  * Handles sending data to the Saasco API
76
84
  * If you have a proxy set up, it will send the data to the proxy and you can handle forawrding the data to the Saasco events API
@@ -0,0 +1,7 @@
1
+ export type SaascoProviderProps = {
2
+ projectId: string;
3
+ debug?: boolean;
4
+ enabled?: boolean;
5
+ proxy?: string;
6
+ };
7
+ export declare function SaascoProvider({ projectId, debug, enabled, proxy, }: SaascoProviderProps): React.ReactElement | null;
@@ -0,0 +1 @@
1
+ export * from './SaascoProvider';
@@ -1232,6 +1232,7 @@ export declare const reservedPropertiesSchema: z.ZodObject<{
1232
1232
  website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1233
1233
  $id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1234
1234
  $lastSeen: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1235
+ $lastIdentifiedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1235
1236
  $unsubscribed: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1236
1237
  $unsubscribeReason: z.ZodOptional<z.ZodNullable<z.ZodEnum<["manual", "complained", "bounced"]>>>;
1237
1238
  $stripeCustomerId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1256,6 +1257,7 @@ export declare const reservedPropertiesSchema: z.ZodObject<{
1256
1257
  website?: string | null | undefined;
1257
1258
  $id?: string | null | undefined;
1258
1259
  $lastSeen?: string | null | undefined;
1260
+ $lastIdentifiedAt?: string | null | undefined;
1259
1261
  $unsubscribed?: boolean | null | undefined;
1260
1262
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1261
1263
  $stripeCustomerId?: string | null | undefined;
@@ -1280,6 +1282,7 @@ export declare const reservedPropertiesSchema: z.ZodObject<{
1280
1282
  website?: string | null | undefined;
1281
1283
  $id?: string | null | undefined;
1282
1284
  $lastSeen?: string | null | undefined;
1285
+ $lastIdentifiedAt?: string | null | undefined;
1283
1286
  $unsubscribed?: boolean | null | undefined;
1284
1287
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1285
1288
  $stripeCustomerId?: string | null | undefined;
@@ -1306,6 +1309,7 @@ export declare const contactPropertiesSchema: z.ZodIntersection<z.ZodOptional<z.
1306
1309
  website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1307
1310
  $id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1308
1311
  $lastSeen: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1312
+ $lastIdentifiedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1309
1313
  $unsubscribed: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1310
1314
  $unsubscribeReason: z.ZodOptional<z.ZodNullable<z.ZodEnum<["manual", "complained", "bounced"]>>>;
1311
1315
  $stripeCustomerId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1330,6 +1334,7 @@ export declare const contactPropertiesSchema: z.ZodIntersection<z.ZodOptional<z.
1330
1334
  website?: string | null | undefined;
1331
1335
  $id?: string | null | undefined;
1332
1336
  $lastSeen?: string | null | undefined;
1337
+ $lastIdentifiedAt?: string | null | undefined;
1333
1338
  $unsubscribed?: boolean | null | undefined;
1334
1339
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1335
1340
  $stripeCustomerId?: string | null | undefined;
@@ -1354,6 +1359,7 @@ export declare const contactPropertiesSchema: z.ZodIntersection<z.ZodOptional<z.
1354
1359
  website?: string | null | undefined;
1355
1360
  $id?: string | null | undefined;
1356
1361
  $lastSeen?: string | null | undefined;
1362
+ $lastIdentifiedAt?: string | null | undefined;
1357
1363
  $unsubscribed?: boolean | null | undefined;
1358
1364
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1359
1365
  $stripeCustomerId?: string | null | undefined;
@@ -1411,6 +1417,7 @@ export declare const analyticsUserSchema: z.ZodIntersection<z.ZodObject<Omit<{
1411
1417
  website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1412
1418
  $id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1413
1419
  $lastSeen: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1420
+ $lastIdentifiedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1414
1421
  $unsubscribed: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1415
1422
  $unsubscribeReason: z.ZodOptional<z.ZodNullable<z.ZodEnum<["manual", "complained", "bounced"]>>>;
1416
1423
  $stripeCustomerId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1435,6 +1442,7 @@ export declare const analyticsUserSchema: z.ZodIntersection<z.ZodObject<Omit<{
1435
1442
  website?: string | null | undefined;
1436
1443
  $id?: string | null | undefined;
1437
1444
  $lastSeen?: string | null | undefined;
1445
+ $lastIdentifiedAt?: string | null | undefined;
1438
1446
  $unsubscribed?: boolean | null | undefined;
1439
1447
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1440
1448
  $stripeCustomerId?: string | null | undefined;
@@ -1459,6 +1467,7 @@ export declare const analyticsUserSchema: z.ZodIntersection<z.ZodObject<Omit<{
1459
1467
  website?: string | null | undefined;
1460
1468
  $id?: string | null | undefined;
1461
1469
  $lastSeen?: string | null | undefined;
1470
+ $lastIdentifiedAt?: string | null | undefined;
1462
1471
  $unsubscribed?: boolean | null | undefined;
1463
1472
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1464
1473
  $stripeCustomerId?: string | null | undefined;
@@ -1485,6 +1494,7 @@ export declare const analyticsUserSchema: z.ZodIntersection<z.ZodObject<Omit<{
1485
1494
  website?: string | null | undefined;
1486
1495
  $id?: string | null | undefined;
1487
1496
  $lastSeen?: string | null | undefined;
1497
+ $lastIdentifiedAt?: string | null | undefined;
1488
1498
  $unsubscribed?: boolean | null | undefined;
1489
1499
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1490
1500
  $stripeCustomerId?: string | null | undefined;
@@ -1511,6 +1521,7 @@ export declare const analyticsUserSchema: z.ZodIntersection<z.ZodObject<Omit<{
1511
1521
  website?: string | null | undefined;
1512
1522
  $id?: string | null | undefined;
1513
1523
  $lastSeen?: string | null | undefined;
1524
+ $lastIdentifiedAt?: string | null | undefined;
1514
1525
  $unsubscribed?: boolean | null | undefined;
1515
1526
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1516
1527
  $stripeCustomerId?: string | null | undefined;
@@ -1567,6 +1578,7 @@ export declare const idenfitySchema: z.ZodObject<{
1567
1578
  website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1568
1579
  $id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1569
1580
  $lastSeen: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1581
+ $lastIdentifiedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1570
1582
  $unsubscribed: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1571
1583
  $unsubscribeReason: z.ZodOptional<z.ZodNullable<z.ZodEnum<["manual", "complained", "bounced"]>>>;
1572
1584
  $stripeCustomerId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1591,6 +1603,7 @@ export declare const idenfitySchema: z.ZodObject<{
1591
1603
  website?: string | null | undefined;
1592
1604
  $id?: string | null | undefined;
1593
1605
  $lastSeen?: string | null | undefined;
1606
+ $lastIdentifiedAt?: string | null | undefined;
1594
1607
  $unsubscribed?: boolean | null | undefined;
1595
1608
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1596
1609
  $stripeCustomerId?: string | null | undefined;
@@ -1615,6 +1628,7 @@ export declare const idenfitySchema: z.ZodObject<{
1615
1628
  website?: string | null | undefined;
1616
1629
  $id?: string | null | undefined;
1617
1630
  $lastSeen?: string | null | undefined;
1631
+ $lastIdentifiedAt?: string | null | undefined;
1618
1632
  $unsubscribed?: boolean | null | undefined;
1619
1633
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1620
1634
  $stripeCustomerId?: string | null | undefined;
@@ -1650,6 +1664,7 @@ export declare const idenfitySchema: z.ZodObject<{
1650
1664
  website?: string | null | undefined;
1651
1665
  $id?: string | null | undefined;
1652
1666
  $lastSeen?: string | null | undefined;
1667
+ $lastIdentifiedAt?: string | null | undefined;
1653
1668
  $unsubscribed?: boolean | null | undefined;
1654
1669
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1655
1670
  $stripeCustomerId?: string | null | undefined;
@@ -1685,6 +1700,7 @@ export declare const idenfitySchema: z.ZodObject<{
1685
1700
  website?: string | null | undefined;
1686
1701
  $id?: string | null | undefined;
1687
1702
  $lastSeen?: string | null | undefined;
1703
+ $lastIdentifiedAt?: string | null | undefined;
1688
1704
  $unsubscribed?: boolean | null | undefined;
1689
1705
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1690
1706
  $stripeCustomerId?: string | null | undefined;
@@ -1760,6 +1776,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1760
1776
  website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1761
1777
  $id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1762
1778
  $lastSeen: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1779
+ $lastIdentifiedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1763
1780
  $unsubscribed: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1764
1781
  $unsubscribeReason: z.ZodOptional<z.ZodNullable<z.ZodEnum<["manual", "complained", "bounced"]>>>;
1765
1782
  $stripeCustomerId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1784,6 +1801,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1784
1801
  website?: string | null | undefined;
1785
1802
  $id?: string | null | undefined;
1786
1803
  $lastSeen?: string | null | undefined;
1804
+ $lastIdentifiedAt?: string | null | undefined;
1787
1805
  $unsubscribed?: boolean | null | undefined;
1788
1806
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1789
1807
  $stripeCustomerId?: string | null | undefined;
@@ -1808,6 +1826,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1808
1826
  website?: string | null | undefined;
1809
1827
  $id?: string | null | undefined;
1810
1828
  $lastSeen?: string | null | undefined;
1829
+ $lastIdentifiedAt?: string | null | undefined;
1811
1830
  $unsubscribed?: boolean | null | undefined;
1812
1831
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1813
1832
  $stripeCustomerId?: string | null | undefined;
@@ -1834,6 +1853,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1834
1853
  website?: string | null | undefined;
1835
1854
  $id?: string | null | undefined;
1836
1855
  $lastSeen?: string | null | undefined;
1856
+ $lastIdentifiedAt?: string | null | undefined;
1837
1857
  $unsubscribed?: boolean | null | undefined;
1838
1858
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1839
1859
  $stripeCustomerId?: string | null | undefined;
@@ -1860,6 +1880,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1860
1880
  website?: string | null | undefined;
1861
1881
  $id?: string | null | undefined;
1862
1882
  $lastSeen?: string | null | undefined;
1883
+ $lastIdentifiedAt?: string | null | undefined;
1863
1884
  $unsubscribed?: boolean | null | undefined;
1864
1885
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1865
1886
  $stripeCustomerId?: string | null | undefined;
@@ -1898,6 +1919,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1898
1919
  website?: string | null | undefined;
1899
1920
  $id?: string | null | undefined;
1900
1921
  $lastSeen?: string | null | undefined;
1922
+ $lastIdentifiedAt?: string | null | undefined;
1901
1923
  $unsubscribed?: boolean | null | undefined;
1902
1924
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1903
1925
  $stripeCustomerId?: string | null | undefined;
@@ -1936,6 +1958,7 @@ export declare const latestIdentifiesResponseSchema: z.ZodObject<z.objectUtil.ex
1936
1958
  website?: string | null | undefined;
1937
1959
  $id?: string | null | undefined;
1938
1960
  $lastSeen?: string | null | undefined;
1961
+ $lastIdentifiedAt?: string | null | undefined;
1939
1962
  $unsubscribed?: boolean | null | undefined;
1940
1963
  $unsubscribeReason?: "manual" | "complained" | "bounced" | null | undefined;
1941
1964
  $stripeCustomerId?: string | null | undefined;