@leather.io/analytics 3.6.0 → 3.6.2

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/dist/index.d.ts CHANGED
@@ -254,7 +254,7 @@ declare function configureAnalyticsClient<T extends AnalyticsClientInterface>({
254
254
  defaultProperties: DefaultProperties;
255
255
  defaultTraits?: JsonMap;
256
256
  }): {
257
- track<K extends keyof Events>(event: K, ...properties: undefined extends Events[K] ? [] : [param: Events[K]]): Promise<any>;
257
+ track<K extends keyof Events>(event: K, ...[properties]: Events[K] extends undefined ? [] : [Events[K]]): Promise<any>;
258
258
  untypedTrack(event: string, properties?: JsonMap | Record<string, unknown>): Promise<any>;
259
259
  screen(name: string, properties?: JsonMap | Record<string, unknown>): Promise<any>;
260
260
  group(groupId: string, traits?: JsonMap | Record<string, unknown>): Promise<any>;
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  function AnalyticsClient(config) {
3
3
  const { client: analyticsClient, defaultProperties = {}, defaultTraits = {} } = config;
4
4
  return {
5
- async track(event, ...properties) {
5
+ async track(event, ...[properties]) {
6
6
  return analyticsClient.track(event, { ...properties, ...defaultProperties });
7
7
  },
8
8
  async untypedTrack(event, properties) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client.ts","../src/index.ts"],"sourcesContent":["import { AnalyticsClientConfig, AnalyticsClientInterface, Events, JsonMap } from './types';\n\nexport function AnalyticsClient<T extends AnalyticsClientInterface>(\n config: AnalyticsClientConfig<T>\n) {\n const { client: analyticsClient, defaultProperties = {}, defaultTraits = {} } = config;\n\n return {\n async track<K extends keyof Events>(\n event: K,\n ...properties: undefined extends Events[K] ? [] : [param: Events[K]]\n ) {\n return analyticsClient.track(event, { ...properties, ...defaultProperties });\n },\n\n async untypedTrack(event: string, properties?: JsonMap | Record<string, unknown>) {\n if (event.match(/^[a-zA-Z0-9\\s][a-zA-Z0-9\\s]*$/)) {\n throw new Error('Event must be snake_case');\n }\n return analyticsClient.track(event as any, {\n ...properties,\n ...defaultProperties,\n });\n },\n\n async screen(name: string, properties?: JsonMap | Record<string, unknown>) {\n return analyticsClient.screen(name, { ...properties, ...defaultProperties });\n },\n\n group(groupId: string, traits?: JsonMap | Record<string, unknown>) {\n return analyticsClient.group(groupId, { ...traits, ...defaultTraits });\n },\n\n async identify(userId?: string, traits?: JsonMap | Record<string, unknown>) {\n return await analyticsClient.identify(userId, {\n ...traits,\n ...defaultTraits,\n });\n },\n\n page(category?: string, name?: string, properties?: JsonMap | Record<string, unknown>) {\n if (typeof analyticsClient.page === 'function') {\n return analyticsClient.page(category, name, {\n ...properties,\n ...defaultProperties,\n });\n }\n return Promise.resolve();\n },\n\n get client() {\n return analyticsClient;\n },\n };\n}\n","import { AnalyticsClient } from './client';\nimport { AnalyticsClientInterface, DefaultProperties, JsonMap } from './types';\n\nexport * from './types';\n\nexport function configureAnalyticsClient<T extends AnalyticsClientInterface>({\n client,\n defaultProperties,\n defaultTraits,\n}: {\n client: T;\n defaultProperties: DefaultProperties;\n defaultTraits?: JsonMap;\n}) {\n return AnalyticsClient<T>({ client, defaultProperties, defaultTraits });\n}\n"],"mappings":";AAEO,SAAS,gBACd,QACA;AACA,QAAM,EAAE,QAAQ,iBAAiB,oBAAoB,CAAC,GAAG,gBAAgB,CAAC,EAAE,IAAI;AAEhF,SAAO;AAAA,IACL,MAAM,MACJ,UACG,YACH;AACA,aAAO,gBAAgB,MAAM,OAAO,EAAE,GAAG,YAAY,GAAG,kBAAkB,CAAC;AAAA,IAC7E;AAAA,IAEA,MAAM,aAAa,OAAe,YAAgD;AAChF,UAAI,MAAM,MAAM,+BAA+B,GAAG;AAChD,cAAM,IAAI,MAAM,0BAA0B;AAAA,MAC5C;AACA,aAAO,gBAAgB,MAAM,OAAc;AAAA,QACzC,GAAG;AAAA,QACH,GAAG;AAAA,MACL,CAAC;AAAA,IACH;AAAA,IAEA,MAAM,OAAO,MAAc,YAAgD;AACzE,aAAO,gBAAgB,OAAO,MAAM,EAAE,GAAG,YAAY,GAAG,kBAAkB,CAAC;AAAA,IAC7E;AAAA,IAEA,MAAM,SAAiB,QAA4C;AACjE,aAAO,gBAAgB,MAAM,SAAS,EAAE,GAAG,QAAQ,GAAG,cAAc,CAAC;AAAA,IACvE;AAAA,IAEA,MAAM,SAAS,QAAiB,QAA4C;AAC1E,aAAO,MAAM,gBAAgB,SAAS,QAAQ;AAAA,QAC5C,GAAG;AAAA,QACH,GAAG;AAAA,MACL,CAAC;AAAA,IACH;AAAA,IAEA,KAAK,UAAmB,MAAe,YAAgD;AACrF,UAAI,OAAO,gBAAgB,SAAS,YAAY;AAC9C,eAAO,gBAAgB,KAAK,UAAU,MAAM;AAAA,UAC1C,GAAG;AAAA,UACH,GAAG;AAAA,QACL,CAAC;AAAA,MACH;AACA,aAAO,QAAQ,QAAQ;AAAA,IACzB;AAAA,IAEA,IAAI,SAAS;AACX,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;ACjDO,SAAS,yBAA6D;AAAA,EAC3E;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SAAO,gBAAmB,EAAE,QAAQ,mBAAmB,cAAc,CAAC;AACxE;","names":[]}
1
+ {"version":3,"sources":["../src/client.ts","../src/index.ts"],"sourcesContent":["import { AnalyticsClientConfig, AnalyticsClientInterface, Events, JsonMap } from './types';\n\nexport function AnalyticsClient<T extends AnalyticsClientInterface>(\n config: AnalyticsClientConfig<T>\n) {\n const { client: analyticsClient, defaultProperties = {}, defaultTraits = {} } = config;\n\n return {\n async track<K extends keyof Events>(\n event: K,\n ...[properties]: Events[K] extends undefined ? [] : [Events[K]]\n ) {\n return analyticsClient.track(event, { ...properties, ...defaultProperties });\n },\n\n async untypedTrack(event: string, properties?: JsonMap | Record<string, unknown>) {\n if (event.match(/^[a-zA-Z0-9\\s][a-zA-Z0-9\\s]*$/)) {\n throw new Error('Event must be snake_case');\n }\n return analyticsClient.track(event as any, {\n ...properties,\n ...defaultProperties,\n });\n },\n\n async screen(name: string, properties?: JsonMap | Record<string, unknown>) {\n return analyticsClient.screen(name, { ...properties, ...defaultProperties });\n },\n\n group(groupId: string, traits?: JsonMap | Record<string, unknown>) {\n return analyticsClient.group(groupId, { ...traits, ...defaultTraits });\n },\n\n async identify(userId?: string, traits?: JsonMap | Record<string, unknown>) {\n return await analyticsClient.identify(userId, {\n ...traits,\n ...defaultTraits,\n });\n },\n\n page(category?: string, name?: string, properties?: JsonMap | Record<string, unknown>) {\n if (typeof analyticsClient.page === 'function') {\n return analyticsClient.page(category, name, {\n ...properties,\n ...defaultProperties,\n });\n }\n return Promise.resolve();\n },\n\n get client() {\n return analyticsClient;\n },\n };\n}\n","import { AnalyticsClient } from './client';\nimport { AnalyticsClientInterface, DefaultProperties, JsonMap } from './types';\n\nexport * from './types';\n\nexport function configureAnalyticsClient<T extends AnalyticsClientInterface>({\n client,\n defaultProperties,\n defaultTraits,\n}: {\n client: T;\n defaultProperties: DefaultProperties;\n defaultTraits?: JsonMap;\n}) {\n return AnalyticsClient<T>({ client, defaultProperties, defaultTraits });\n}\n"],"mappings":";AAEO,SAAS,gBACd,QACA;AACA,QAAM,EAAE,QAAQ,iBAAiB,oBAAoB,CAAC,GAAG,gBAAgB,CAAC,EAAE,IAAI;AAEhF,SAAO;AAAA,IACL,MAAM,MACJ,UACG,CAAC,UAAU,GACd;AACA,aAAO,gBAAgB,MAAM,OAAO,EAAE,GAAG,YAAY,GAAG,kBAAkB,CAAC;AAAA,IAC7E;AAAA,IAEA,MAAM,aAAa,OAAe,YAAgD;AAChF,UAAI,MAAM,MAAM,+BAA+B,GAAG;AAChD,cAAM,IAAI,MAAM,0BAA0B;AAAA,MAC5C;AACA,aAAO,gBAAgB,MAAM,OAAc;AAAA,QACzC,GAAG;AAAA,QACH,GAAG;AAAA,MACL,CAAC;AAAA,IACH;AAAA,IAEA,MAAM,OAAO,MAAc,YAAgD;AACzE,aAAO,gBAAgB,OAAO,MAAM,EAAE,GAAG,YAAY,GAAG,kBAAkB,CAAC;AAAA,IAC7E;AAAA,IAEA,MAAM,SAAiB,QAA4C;AACjE,aAAO,gBAAgB,MAAM,SAAS,EAAE,GAAG,QAAQ,GAAG,cAAc,CAAC;AAAA,IACvE;AAAA,IAEA,MAAM,SAAS,QAAiB,QAA4C;AAC1E,aAAO,MAAM,gBAAgB,SAAS,QAAQ;AAAA,QAC5C,GAAG;AAAA,QACH,GAAG;AAAA,MACL,CAAC;AAAA,IACH;AAAA,IAEA,KAAK,UAAmB,MAAe,YAAgD;AACrF,UAAI,OAAO,gBAAgB,SAAS,YAAY;AAC9C,eAAO,gBAAgB,KAAK,UAAU,MAAM;AAAA,UAC1C,GAAG;AAAA,UACH,GAAG;AAAA,QACL,CAAC;AAAA,MACH;AACA,aAAO,QAAQ,QAAQ;AAAA,IACzB;AAAA,IAEA,IAAI,SAAS;AACX,aAAO;AAAA,IACT;AAAA,EACF;AACF;;;ACjDO,SAAS,yBAA6D;AAAA,EAC3E;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SAAO,gBAAmB,EAAE,QAAQ,mBAAmB,cAAc,CAAC;AACxE;","names":[]}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@leather.io/analytics",
3
3
  "author": "Leather.io contact@leather.io",
4
4
  "description": "Analytics package for Leather using Segment",
5
- "version": "3.6.0",
5
+ "version": "3.6.2",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/leather.io/mono/tree/dev/packages/analytics",
8
8
  "repository": {
@@ -25,7 +25,7 @@
25
25
  "tsup": "8.4.0",
26
26
  "typescript": "5.8.3",
27
27
  "vitest": "2.1.9",
28
- "@leather.io/models": "0.32.1"
28
+ "@leather.io/models": "0.34.0"
29
29
  },
30
30
  "files": [
31
31
  "dist"