@ominity/api-typescript 1.1.5 → 1.1.6
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/README.md +1 -0
- package/dist/commonjs/index.d.ts +1 -0
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +1 -0
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/lib/config.d.ts +3 -3
- package/dist/commonjs/lib/config.js +1 -1
- package/dist/commonjs/sdk/index.d.ts +1 -0
- package/dist/commonjs/sdk/index.d.ts.map +1 -1
- package/dist/commonjs/sdk/index.js +1 -0
- package/dist/commonjs/sdk/index.js.map +1 -1
- package/dist/commonjs/sdk/sdk.d.ts +3 -0
- package/dist/commonjs/sdk/sdk.d.ts.map +1 -1
- package/dist/commonjs/sdk/sdk.js +4 -0
- package/dist/commonjs/sdk/sdk.js.map +1 -1
- package/dist/commonjs/sdk/tracking/events.d.ts +27 -0
- package/dist/commonjs/sdk/tracking/events.d.ts.map +1 -0
- package/dist/commonjs/sdk/tracking/events.js +137 -0
- package/dist/commonjs/sdk/tracking/events.js.map +1 -0
- package/dist/commonjs/sdk/tracking/index.d.ts +12 -0
- package/dist/commonjs/sdk/tracking/index.d.ts.map +1 -0
- package/dist/commonjs/sdk/tracking/index.js +35 -0
- package/dist/commonjs/sdk/tracking/index.js.map +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/config.d.ts +3 -3
- package/dist/esm/lib/config.js +1 -1
- package/dist/esm/sdk/index.d.ts +1 -0
- package/dist/esm/sdk/index.d.ts.map +1 -1
- package/dist/esm/sdk/index.js +1 -0
- package/dist/esm/sdk/index.js.map +1 -1
- package/dist/esm/sdk/sdk.d.ts +3 -0
- package/dist/esm/sdk/sdk.d.ts.map +1 -1
- package/dist/esm/sdk/sdk.js +4 -0
- package/dist/esm/sdk/sdk.js.map +1 -1
- package/dist/esm/sdk/tracking/events.d.ts +27 -0
- package/dist/esm/sdk/tracking/events.d.ts.map +1 -0
- package/dist/esm/sdk/tracking/events.js +133 -0
- package/dist/esm/sdk/tracking/events.js.map +1 -0
- package/dist/esm/sdk/tracking/index.d.ts +12 -0
- package/dist/esm/sdk/tracking/index.d.ts.map +1 -0
- package/dist/esm/sdk/tracking/index.js +31 -0
- package/dist/esm/sdk/tracking/index.js.map +1 -0
- package/jsr.json +1 -1
- package/package.json +1 -1
- package/src/index.ts +1 -0
- package/src/lib/config.ts +1 -1
- package/src/sdk/index.ts +1 -0
- package/src/sdk/sdk.ts +6 -0
- package/src/sdk/tracking/events.ts +200 -0
- package/src/sdk/tracking/index.ts +34 -0
package/README.md
CHANGED
|
@@ -149,6 +149,7 @@ Typed operations are being added. Current namespaces:
|
|
|
149
149
|
- `commerce`
|
|
150
150
|
- `cms`
|
|
151
151
|
- `settings`
|
|
152
|
+
- `tracking` (front-end event capture via `/tracking/events`)
|
|
152
153
|
- `http` (generic client for unimplemented endpoints)
|
|
153
154
|
|
|
154
155
|
Use `ominity.http` for endpoints that are not yet implemented in the SDK.
|
package/dist/commonjs/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC"}
|
package/dist/commonjs/index.js
CHANGED
|
@@ -45,4 +45,5 @@ __exportStar(require("./core.js"), exports);
|
|
|
45
45
|
__exportStar(require("./funcs/index.js"), exports);
|
|
46
46
|
__exportStar(require("./sdk/modules.js"), exports);
|
|
47
47
|
__exportStar(require("./sdk/sdk.js"), exports);
|
|
48
|
+
__exportStar(require("./sdk/tracking/index.js"), exports);
|
|
48
49
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAgC;AAChC,wDAAwC;AACxC,yCAA2C;AAAlC,qGAAA,UAAU,OAAA;AAEnB,4CAA0B;AAC1B,mDAAiC;AACjC,mDAAiC;AACjC,+CAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kDAAgC;AAChC,wDAAwC;AACxC,yCAA2C;AAAlC,qGAAA,UAAU,OAAA;AAEnB,4CAA0B;AAC1B,mDAAiC;AACjC,mDAAiC;AACjC,+CAA6B;AAC7B,0DAAwC"}
|
|
@@ -42,12 +42,12 @@ export type SDKOptions = {
|
|
|
42
42
|
debugLogger?: Logger;
|
|
43
43
|
};
|
|
44
44
|
export declare function serverURLFromOptions(options: SDKOptions): URL | null;
|
|
45
|
-
export declare const SDK_VERSION = "1.1.
|
|
45
|
+
export declare const SDK_VERSION = "1.1.6";
|
|
46
46
|
export declare const SDK_METADATA: {
|
|
47
47
|
readonly language: "typescript";
|
|
48
48
|
readonly openapiDocVersion: "manual";
|
|
49
|
-
readonly sdkVersion: "1.1.
|
|
49
|
+
readonly sdkVersion: "1.1.6";
|
|
50
50
|
readonly genVersion: "manual";
|
|
51
|
-
readonly userAgent: "ominity-sdk/typescript 1.1.
|
|
51
|
+
readonly userAgent: "ominity-sdk/typescript 1.1.6";
|
|
52
52
|
};
|
|
53
53
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -23,7 +23,7 @@ function applyApiVersion(url, apiVersion) {
|
|
|
23
23
|
url.pathname = `${currentPath}${versionSuffix}`;
|
|
24
24
|
return url;
|
|
25
25
|
}
|
|
26
|
-
exports.SDK_VERSION = "1.1.
|
|
26
|
+
exports.SDK_VERSION = "1.1.6";
|
|
27
27
|
exports.SDK_METADATA = {
|
|
28
28
|
language: "typescript",
|
|
29
29
|
openapiDocVersion: "manual",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC"}
|
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./sdk.js"), exports);
|
|
18
|
+
__exportStar(require("./tracking/index.js"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,2CAAyB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,2CAAyB;AACzB,sDAAoC"}
|
|
@@ -9,6 +9,7 @@ import { OAuth2 } from "./oauth2.js";
|
|
|
9
9
|
import { Settings } from "./settings/index.js";
|
|
10
10
|
import { Users } from "./users/index.js";
|
|
11
11
|
import { Admins } from "./admins.js";
|
|
12
|
+
import { Tracking } from "./tracking/index.js";
|
|
12
13
|
import type { SDKOptions } from "../lib/config.js";
|
|
13
14
|
import type { OminityModuleInput, OminityModules } from "./modules.js";
|
|
14
15
|
export type OminityOptions = SDKOptions & {
|
|
@@ -28,6 +29,8 @@ export declare class Ominity extends ClientSDK {
|
|
|
28
29
|
get settings(): Settings;
|
|
29
30
|
private _http?;
|
|
30
31
|
get http(): Http;
|
|
32
|
+
private _tracking?;
|
|
33
|
+
get tracking(): Tracking;
|
|
31
34
|
private _localization?;
|
|
32
35
|
get localization(): Localization;
|
|
33
36
|
private _oauth2?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,qBAAa,OAAQ,SAAQ,SAAS;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAwB;gBAEnD,OAAO,GAAE,cAAmB;IAWxC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;IAO3C,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,OAAO,CAAC,GAAG,CAAC,CAAK;IACjB,IAAI,EAAE,IAAI,EAAE,CAEX;IAED,OAAO,CAAC,MAAM,CAAC,CAAQ;IACvB,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,qBAAa,OAAQ,SAAQ,SAAS;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAwB;gBAEnD,OAAO,GAAE,cAAmB;IAWxC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;IAO3C,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,OAAO,CAAC,GAAG,CAAC,CAAK;IACjB,IAAI,EAAE,IAAI,EAAE,CAEX;IAED,OAAO,CAAC,MAAM,CAAC,CAAQ;IACvB,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}
|
package/dist/commonjs/sdk/sdk.js
CHANGED
|
@@ -12,6 +12,7 @@ const oauth2_js_1 = require("./oauth2.js");
|
|
|
12
12
|
const index_js_5 = require("./settings/index.js");
|
|
13
13
|
const index_js_6 = require("./users/index.js");
|
|
14
14
|
const admins_js_1 = require("./admins.js");
|
|
15
|
+
const index_js_7 = require("./tracking/index.js");
|
|
15
16
|
class Ominity extends sdks_js_1.ClientSDK {
|
|
16
17
|
constructor(options = {}) {
|
|
17
18
|
const { modules, ...sdkOptions } = options;
|
|
@@ -44,6 +45,9 @@ class Ominity extends sdks_js_1.ClientSDK {
|
|
|
44
45
|
get http() {
|
|
45
46
|
return (this._http ?? (this._http = new http_js_1.Http(this._options)));
|
|
46
47
|
}
|
|
48
|
+
get tracking() {
|
|
49
|
+
return (this._tracking ?? (this._tracking = new index_js_7.Tracking(this.http)));
|
|
50
|
+
}
|
|
47
51
|
get localization() {
|
|
48
52
|
return (this._localization ?? (this._localization = new index_js_4.Localization(this._options)));
|
|
49
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":";;;AACA,4CAA2C;AAC3C,6CAAqC;AACrC,kDAA+C;AAC/C,kDAA+C;AAC/C,uCAAiC;AACjC,sDAAuD;AACvD,mCAA6B;AAC7B,2CAAqC;AACrC,kDAA+C;AAC/C,+CAAyC;AACzC,2CAAqC;
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { RequestOptions } from "../../lib/sdks.js";
|
|
2
|
+
import { Http } from "../http.js";
|
|
3
|
+
export type TrackingEventName = "page_view" | "product_view" | "cart_view" | "add_to_cart" | "remove_from_cart" | "checkout_started" | "purchase" | "button_click" | string;
|
|
4
|
+
export type TrackingEventMetadata = Readonly<Record<string, unknown>>;
|
|
5
|
+
export type TrackingEventUtm = Readonly<Record<string, string>>;
|
|
6
|
+
export interface TrackEventRequest {
|
|
7
|
+
readonly event: TrackingEventName;
|
|
8
|
+
readonly timestamp?: string | Date;
|
|
9
|
+
readonly title?: string;
|
|
10
|
+
readonly url?: string;
|
|
11
|
+
readonly metadata?: TrackingEventMetadata;
|
|
12
|
+
readonly visitorId?: string;
|
|
13
|
+
readonly userId?: number;
|
|
14
|
+
readonly referrer?: string;
|
|
15
|
+
readonly utm?: TrackingEventUtm;
|
|
16
|
+
}
|
|
17
|
+
export interface TrackEventResponse {
|
|
18
|
+
readonly success: boolean;
|
|
19
|
+
readonly visitorId: string;
|
|
20
|
+
}
|
|
21
|
+
export declare class TrackingEvents {
|
|
22
|
+
#private;
|
|
23
|
+
constructor(http: Http);
|
|
24
|
+
create(request: TrackEventRequest, options?: RequestOptions): Promise<TrackEventResponse>;
|
|
25
|
+
track(request: TrackEventRequest, options?: RequestOptions): Promise<TrackEventResponse>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/sdk/tracking/events.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,MAAM,MAAM,iBAAiB,GACzB,WAAW,GACX,cAAc,GACd,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,kBAAkB,GAClB,UAAU,GACV,cAAc,GACd,MAAM,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AA0ID,qBAAa,cAAc;;gBAGb,IAAI,EAAE,IAAI;IAIhB,MAAM,CACV,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,kBAAkB,CAAC;IASxB,KAAK,CACT,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,kBAAkB,CAAC;CAG/B"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Tracking Events SDK.
|
|
4
|
+
*/
|
|
5
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
6
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
7
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
8
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
9
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _TrackingEvents_http;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.TrackingEvents = void 0;
|
|
19
|
+
function asNonEmptyString(value) {
|
|
20
|
+
if (typeof value !== "string") {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const trimmed = value.trim();
|
|
24
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
25
|
+
}
|
|
26
|
+
function asValidDate(value) {
|
|
27
|
+
if (!Number.isFinite(value.getTime())) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
return value;
|
|
31
|
+
}
|
|
32
|
+
function normalizeTimestamp(value) {
|
|
33
|
+
if (value instanceof Date) {
|
|
34
|
+
const parsed = asValidDate(value);
|
|
35
|
+
if (parsed) {
|
|
36
|
+
return parsed.toISOString();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else if (typeof value === "string") {
|
|
40
|
+
const trimmed = value.trim();
|
|
41
|
+
if (trimmed.length > 0) {
|
|
42
|
+
return trimmed;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return new Date().toISOString();
|
|
46
|
+
}
|
|
47
|
+
function normalizeUtm(value) {
|
|
48
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const normalized = {};
|
|
52
|
+
for (const [key, raw] of Object.entries(value)) {
|
|
53
|
+
const trimmed = asNonEmptyString(raw);
|
|
54
|
+
if (trimmed) {
|
|
55
|
+
normalized[key] = trimmed;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return Object.keys(normalized).length > 0 ? normalized : undefined;
|
|
59
|
+
}
|
|
60
|
+
function normalizeMetadata(value) {
|
|
61
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
return value;
|
|
65
|
+
}
|
|
66
|
+
function normalizeTrackEventPayload(input) {
|
|
67
|
+
const eventName = asNonEmptyString(input.event);
|
|
68
|
+
if (!eventName) {
|
|
69
|
+
throw new Error("Tracking event name is required.");
|
|
70
|
+
}
|
|
71
|
+
const payload = {
|
|
72
|
+
event: eventName,
|
|
73
|
+
timestamp: normalizeTimestamp(input.timestamp),
|
|
74
|
+
};
|
|
75
|
+
const title = asNonEmptyString(input.title);
|
|
76
|
+
if (title) {
|
|
77
|
+
payload.title = title;
|
|
78
|
+
}
|
|
79
|
+
const url = asNonEmptyString(input.url);
|
|
80
|
+
if (url) {
|
|
81
|
+
payload.url = url;
|
|
82
|
+
}
|
|
83
|
+
const metadata = normalizeMetadata(input.metadata);
|
|
84
|
+
if (metadata) {
|
|
85
|
+
payload.metadata = metadata;
|
|
86
|
+
}
|
|
87
|
+
const visitorId = asNonEmptyString(input.visitorId);
|
|
88
|
+
if (visitorId) {
|
|
89
|
+
payload.visitorId = visitorId;
|
|
90
|
+
}
|
|
91
|
+
if (typeof input.userId === "number" && Number.isFinite(input.userId)) {
|
|
92
|
+
payload.userId = Math.trunc(input.userId);
|
|
93
|
+
}
|
|
94
|
+
const referrer = asNonEmptyString(input.referrer);
|
|
95
|
+
if (referrer) {
|
|
96
|
+
payload.referrer = referrer;
|
|
97
|
+
}
|
|
98
|
+
const utm = normalizeUtm(input.utm);
|
|
99
|
+
if (utm) {
|
|
100
|
+
payload.utm = utm;
|
|
101
|
+
}
|
|
102
|
+
return payload;
|
|
103
|
+
}
|
|
104
|
+
function asRecord(value) {
|
|
105
|
+
if (typeof value === "object" && value !== null) {
|
|
106
|
+
return value;
|
|
107
|
+
}
|
|
108
|
+
return {};
|
|
109
|
+
}
|
|
110
|
+
function normalizeTrackEventResponse(payload) {
|
|
111
|
+
const record = asRecord(payload);
|
|
112
|
+
const visitorId = asNonEmptyString(record["visitorId"]) ?? "";
|
|
113
|
+
const success = record["success"] === true;
|
|
114
|
+
return {
|
|
115
|
+
success,
|
|
116
|
+
visitorId,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
class TrackingEvents {
|
|
120
|
+
constructor(http) {
|
|
121
|
+
_TrackingEvents_http.set(this, void 0);
|
|
122
|
+
__classPrivateFieldSet(this, _TrackingEvents_http, http, "f");
|
|
123
|
+
}
|
|
124
|
+
async create(request, options) {
|
|
125
|
+
const response = await __classPrivateFieldGet(this, _TrackingEvents_http, "f").post("/tracking/events", {
|
|
126
|
+
...options,
|
|
127
|
+
json: normalizeTrackEventPayload(request),
|
|
128
|
+
});
|
|
129
|
+
return normalizeTrackEventResponse(await response.json());
|
|
130
|
+
}
|
|
131
|
+
async track(request, options) {
|
|
132
|
+
return this.create(request, options);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
exports.TrackingEvents = TrackingEvents;
|
|
136
|
+
_TrackingEvents_http = new WeakMap();
|
|
137
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/sdk/tracking/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Http } from "../http.js";
|
|
2
|
+
import { TrackingEvents } from "./events.js";
|
|
3
|
+
export { TrackingEvents, };
|
|
4
|
+
export type { TrackEventRequest, TrackEventResponse, TrackingEventMetadata, TrackingEventName, TrackingEventUtm, } from "./events.js";
|
|
5
|
+
export declare class Tracking {
|
|
6
|
+
#private;
|
|
7
|
+
constructor(http: Http);
|
|
8
|
+
private _events?;
|
|
9
|
+
get events(): TrackingEvents;
|
|
10
|
+
track(...args: Parameters<TrackingEvents["track"]>): ReturnType<TrackingEvents["track"]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/tracking/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EACL,cAAc,GACf,CAAC;AACF,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,qBAAa,QAAQ;;gBAGP,IAAI,EAAE,IAAI;IAItB,OAAO,CAAC,OAAO,CAAC,CAAiB;IACjC,IAAI,MAAM,IAAI,cAAc,CAE3B;IAEK,KAAK,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;CAG/F"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* SDK module: Tracking
|
|
4
|
+
*/
|
|
5
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
6
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
7
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
8
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
9
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
10
|
+
};
|
|
11
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
12
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
13
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
14
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
15
|
+
};
|
|
16
|
+
var _Tracking_http;
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.Tracking = exports.TrackingEvents = void 0;
|
|
19
|
+
const events_js_1 = require("./events.js");
|
|
20
|
+
Object.defineProperty(exports, "TrackingEvents", { enumerable: true, get: function () { return events_js_1.TrackingEvents; } });
|
|
21
|
+
class Tracking {
|
|
22
|
+
constructor(http) {
|
|
23
|
+
_Tracking_http.set(this, void 0);
|
|
24
|
+
__classPrivateFieldSet(this, _Tracking_http, http, "f");
|
|
25
|
+
}
|
|
26
|
+
get events() {
|
|
27
|
+
return (this._events ?? (this._events = new events_js_1.TrackingEvents(__classPrivateFieldGet(this, _Tracking_http, "f"))));
|
|
28
|
+
}
|
|
29
|
+
async track(...args) {
|
|
30
|
+
return this.events.track(...args);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.Tracking = Tracking;
|
|
34
|
+
_Tracking_http = new WeakMap();
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/sdk/tracking/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;AAGH,2CAA6C;AAG3C,+FAHO,0BAAc,OAGP;AAUhB,MAAa,QAAQ;IAGnB,YAAY,IAAU;QAFb,iCAAY;QAGnB,uBAAA,IAAI,kBAAS,IAAI,MAAA,CAAC;IACpB,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,CAAC,IAAI,CAAC,OAAO,KAAZ,IAAI,CAAC,OAAO,GAAK,IAAI,0BAAc,CAAC,uBAAA,IAAI,sBAAM,CAAC,EAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAG,IAAyC;QACtD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACpC,CAAC;CACF;AAfD,4BAeC"}
|
package/dist/esm/index.d.ts
CHANGED
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChE,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC"}
|
package/dist/esm/index.js
CHANGED
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC"}
|
package/dist/esm/lib/config.d.ts
CHANGED
|
@@ -42,12 +42,12 @@ export type SDKOptions = {
|
|
|
42
42
|
debugLogger?: Logger;
|
|
43
43
|
};
|
|
44
44
|
export declare function serverURLFromOptions(options: SDKOptions): URL | null;
|
|
45
|
-
export declare const SDK_VERSION = "1.1.
|
|
45
|
+
export declare const SDK_VERSION = "1.1.6";
|
|
46
46
|
export declare const SDK_METADATA: {
|
|
47
47
|
readonly language: "typescript";
|
|
48
48
|
readonly openapiDocVersion: "manual";
|
|
49
|
-
readonly sdkVersion: "1.1.
|
|
49
|
+
readonly sdkVersion: "1.1.6";
|
|
50
50
|
readonly genVersion: "manual";
|
|
51
|
-
readonly userAgent: "ominity-sdk/typescript 1.1.
|
|
51
|
+
readonly userAgent: "ominity-sdk/typescript 1.1.6";
|
|
52
52
|
};
|
|
53
53
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/esm/lib/config.js
CHANGED
|
@@ -19,7 +19,7 @@ function applyApiVersion(url, apiVersion) {
|
|
|
19
19
|
url.pathname = `${currentPath}${versionSuffix}`;
|
|
20
20
|
return url;
|
|
21
21
|
}
|
|
22
|
-
export const SDK_VERSION = "1.1.
|
|
22
|
+
export const SDK_VERSION = "1.1.6";
|
|
23
23
|
export const SDK_METADATA = {
|
|
24
24
|
language: "typescript",
|
|
25
25
|
openapiDocVersion: "manual",
|
package/dist/esm/sdk/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC"}
|
package/dist/esm/sdk/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdk/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC"}
|
package/dist/esm/sdk/sdk.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { OAuth2 } from "./oauth2.js";
|
|
|
9
9
|
import { Settings } from "./settings/index.js";
|
|
10
10
|
import { Users } from "./users/index.js";
|
|
11
11
|
import { Admins } from "./admins.js";
|
|
12
|
+
import { Tracking } from "./tracking/index.js";
|
|
12
13
|
import type { SDKOptions } from "../lib/config.js";
|
|
13
14
|
import type { OminityModuleInput, OminityModules } from "./modules.js";
|
|
14
15
|
export type OminityOptions = SDKOptions & {
|
|
@@ -28,6 +29,8 @@ export declare class Ominity extends ClientSDK {
|
|
|
28
29
|
get settings(): Settings;
|
|
29
30
|
private _http?;
|
|
30
31
|
get http(): Http;
|
|
32
|
+
private _tracking?;
|
|
33
|
+
get tracking(): Tracking;
|
|
31
34
|
private _localization?;
|
|
32
35
|
get localization(): Localization;
|
|
33
36
|
private _oauth2?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,qBAAa,OAAQ,SAAQ,SAAS;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAwB;gBAEnD,OAAO,GAAE,cAAmB;IAWxC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;IAO3C,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,OAAO,CAAC,GAAG,CAAC,CAAK;IACjB,IAAI,EAAE,IAAI,EAAE,CAEX;IAED,OAAO,CAAC,MAAM,CAAC,CAAQ;IACvB,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,OAAO,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;CAC1D,CAAC;AAEF,qBAAa,OAAQ,SAAQ,SAAS;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAwB;gBAEnD,OAAO,GAAE,cAAmB;IAWxC,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;IAO3C,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,IAAI,IAAI,IAAI,IAAI,CAEf;IAED,OAAO,CAAC,SAAS,CAAC,CAAW;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,IAAI,YAAY,IAAI,YAAY,CAE/B;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,OAAO,CAAC,GAAG,CAAC,CAAK;IACjB,IAAI,EAAE,IAAI,EAAE,CAEX;IAED,OAAO,CAAC,MAAM,CAAC,CAAQ;IACvB,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,IAAI,MAAM,IAAI,MAAM,CAEnB;CACF"}
|
package/dist/esm/sdk/sdk.js
CHANGED
|
@@ -9,6 +9,7 @@ import { OAuth2 } from "./oauth2.js";
|
|
|
9
9
|
import { Settings } from "./settings/index.js";
|
|
10
10
|
import { Users } from "./users/index.js";
|
|
11
11
|
import { Admins } from "./admins.js";
|
|
12
|
+
import { Tracking } from "./tracking/index.js";
|
|
12
13
|
export class Ominity extends ClientSDK {
|
|
13
14
|
constructor(options = {}) {
|
|
14
15
|
const { modules, ...sdkOptions } = options;
|
|
@@ -41,6 +42,9 @@ export class Ominity extends ClientSDK {
|
|
|
41
42
|
get http() {
|
|
42
43
|
return (this._http ?? (this._http = new Http(this._options)));
|
|
43
44
|
}
|
|
45
|
+
get tracking() {
|
|
46
|
+
return (this._tracking ?? (this._tracking = new Tracking(this.http)));
|
|
47
|
+
}
|
|
44
48
|
get localization() {
|
|
45
49
|
return (this._localization ?? (this._localization = new Localization(this._options)));
|
|
46
50
|
}
|
package/dist/esm/sdk/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../../src/sdk/sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { RequestOptions } from "../../lib/sdks.js";
|
|
2
|
+
import { Http } from "../http.js";
|
|
3
|
+
export type TrackingEventName = "page_view" | "product_view" | "cart_view" | "add_to_cart" | "remove_from_cart" | "checkout_started" | "purchase" | "button_click" | string;
|
|
4
|
+
export type TrackingEventMetadata = Readonly<Record<string, unknown>>;
|
|
5
|
+
export type TrackingEventUtm = Readonly<Record<string, string>>;
|
|
6
|
+
export interface TrackEventRequest {
|
|
7
|
+
readonly event: TrackingEventName;
|
|
8
|
+
readonly timestamp?: string | Date;
|
|
9
|
+
readonly title?: string;
|
|
10
|
+
readonly url?: string;
|
|
11
|
+
readonly metadata?: TrackingEventMetadata;
|
|
12
|
+
readonly visitorId?: string;
|
|
13
|
+
readonly userId?: number;
|
|
14
|
+
readonly referrer?: string;
|
|
15
|
+
readonly utm?: TrackingEventUtm;
|
|
16
|
+
}
|
|
17
|
+
export interface TrackEventResponse {
|
|
18
|
+
readonly success: boolean;
|
|
19
|
+
readonly visitorId: string;
|
|
20
|
+
}
|
|
21
|
+
export declare class TrackingEvents {
|
|
22
|
+
#private;
|
|
23
|
+
constructor(http: Http);
|
|
24
|
+
create(request: TrackEventRequest, options?: RequestOptions): Promise<TrackEventResponse>;
|
|
25
|
+
track(request: TrackEventRequest, options?: RequestOptions): Promise<TrackEventResponse>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/sdk/tracking/events.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,MAAM,MAAM,iBAAiB,GACzB,WAAW,GACX,cAAc,GACd,WAAW,GACX,aAAa,GACb,kBAAkB,GAClB,kBAAkB,GAClB,UAAU,GACV,cAAc,GACd,MAAM,CAAC;AAEX,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AA0ID,qBAAa,cAAc;;gBAGb,IAAI,EAAE,IAAI;IAIhB,MAAM,CACV,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,kBAAkB,CAAC;IASxB,KAAK,CACT,OAAO,EAAE,iBAAiB,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,kBAAkB,CAAC;CAG/B"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Tracking Events SDK.
|
|
3
|
+
*/
|
|
4
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
5
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
6
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
7
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
8
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
9
|
+
};
|
|
10
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
11
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
12
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
13
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
14
|
+
};
|
|
15
|
+
var _TrackingEvents_http;
|
|
16
|
+
function asNonEmptyString(value) {
|
|
17
|
+
if (typeof value !== "string") {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const trimmed = value.trim();
|
|
21
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
22
|
+
}
|
|
23
|
+
function asValidDate(value) {
|
|
24
|
+
if (!Number.isFinite(value.getTime())) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
return value;
|
|
28
|
+
}
|
|
29
|
+
function normalizeTimestamp(value) {
|
|
30
|
+
if (value instanceof Date) {
|
|
31
|
+
const parsed = asValidDate(value);
|
|
32
|
+
if (parsed) {
|
|
33
|
+
return parsed.toISOString();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
else if (typeof value === "string") {
|
|
37
|
+
const trimmed = value.trim();
|
|
38
|
+
if (trimmed.length > 0) {
|
|
39
|
+
return trimmed;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return new Date().toISOString();
|
|
43
|
+
}
|
|
44
|
+
function normalizeUtm(value) {
|
|
45
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const normalized = {};
|
|
49
|
+
for (const [key, raw] of Object.entries(value)) {
|
|
50
|
+
const trimmed = asNonEmptyString(raw);
|
|
51
|
+
if (trimmed) {
|
|
52
|
+
normalized[key] = trimmed;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return Object.keys(normalized).length > 0 ? normalized : undefined;
|
|
56
|
+
}
|
|
57
|
+
function normalizeMetadata(value) {
|
|
58
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
return value;
|
|
62
|
+
}
|
|
63
|
+
function normalizeTrackEventPayload(input) {
|
|
64
|
+
const eventName = asNonEmptyString(input.event);
|
|
65
|
+
if (!eventName) {
|
|
66
|
+
throw new Error("Tracking event name is required.");
|
|
67
|
+
}
|
|
68
|
+
const payload = {
|
|
69
|
+
event: eventName,
|
|
70
|
+
timestamp: normalizeTimestamp(input.timestamp),
|
|
71
|
+
};
|
|
72
|
+
const title = asNonEmptyString(input.title);
|
|
73
|
+
if (title) {
|
|
74
|
+
payload.title = title;
|
|
75
|
+
}
|
|
76
|
+
const url = asNonEmptyString(input.url);
|
|
77
|
+
if (url) {
|
|
78
|
+
payload.url = url;
|
|
79
|
+
}
|
|
80
|
+
const metadata = normalizeMetadata(input.metadata);
|
|
81
|
+
if (metadata) {
|
|
82
|
+
payload.metadata = metadata;
|
|
83
|
+
}
|
|
84
|
+
const visitorId = asNonEmptyString(input.visitorId);
|
|
85
|
+
if (visitorId) {
|
|
86
|
+
payload.visitorId = visitorId;
|
|
87
|
+
}
|
|
88
|
+
if (typeof input.userId === "number" && Number.isFinite(input.userId)) {
|
|
89
|
+
payload.userId = Math.trunc(input.userId);
|
|
90
|
+
}
|
|
91
|
+
const referrer = asNonEmptyString(input.referrer);
|
|
92
|
+
if (referrer) {
|
|
93
|
+
payload.referrer = referrer;
|
|
94
|
+
}
|
|
95
|
+
const utm = normalizeUtm(input.utm);
|
|
96
|
+
if (utm) {
|
|
97
|
+
payload.utm = utm;
|
|
98
|
+
}
|
|
99
|
+
return payload;
|
|
100
|
+
}
|
|
101
|
+
function asRecord(value) {
|
|
102
|
+
if (typeof value === "object" && value !== null) {
|
|
103
|
+
return value;
|
|
104
|
+
}
|
|
105
|
+
return {};
|
|
106
|
+
}
|
|
107
|
+
function normalizeTrackEventResponse(payload) {
|
|
108
|
+
const record = asRecord(payload);
|
|
109
|
+
const visitorId = asNonEmptyString(record["visitorId"]) ?? "";
|
|
110
|
+
const success = record["success"] === true;
|
|
111
|
+
return {
|
|
112
|
+
success,
|
|
113
|
+
visitorId,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
export class TrackingEvents {
|
|
117
|
+
constructor(http) {
|
|
118
|
+
_TrackingEvents_http.set(this, void 0);
|
|
119
|
+
__classPrivateFieldSet(this, _TrackingEvents_http, http, "f");
|
|
120
|
+
}
|
|
121
|
+
async create(request, options) {
|
|
122
|
+
const response = await __classPrivateFieldGet(this, _TrackingEvents_http, "f").post("/tracking/events", {
|
|
123
|
+
...options,
|
|
124
|
+
json: normalizeTrackEventPayload(request),
|
|
125
|
+
});
|
|
126
|
+
return normalizeTrackEventResponse(await response.json());
|
|
127
|
+
}
|
|
128
|
+
async track(request, options) {
|
|
129
|
+
return this.create(request, options);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
_TrackingEvents_http = new WeakMap();
|
|
133
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/sdk/tracking/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Http } from "../http.js";
|
|
2
|
+
import { TrackingEvents } from "./events.js";
|
|
3
|
+
export { TrackingEvents, };
|
|
4
|
+
export type { TrackEventRequest, TrackEventResponse, TrackingEventMetadata, TrackingEventName, TrackingEventUtm, } from "./events.js";
|
|
5
|
+
export declare class Tracking {
|
|
6
|
+
#private;
|
|
7
|
+
constructor(http: Http);
|
|
8
|
+
private _events?;
|
|
9
|
+
get events(): TrackingEvents;
|
|
10
|
+
track(...args: Parameters<TrackingEvents["track"]>): ReturnType<TrackingEvents["track"]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sdk/tracking/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EACL,cAAc,GACf,CAAC;AACF,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,qBAAa,QAAQ;;gBAGP,IAAI,EAAE,IAAI;IAItB,OAAO,CAAC,OAAO,CAAC,CAAiB;IACjC,IAAI,MAAM,IAAI,cAAc,CAE3B;IAEK,KAAK,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;CAG/F"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SDK module: Tracking
|
|
3
|
+
*/
|
|
4
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
5
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
6
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
7
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
8
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
9
|
+
};
|
|
10
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
11
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
12
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
13
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
14
|
+
};
|
|
15
|
+
var _Tracking_http;
|
|
16
|
+
import { TrackingEvents } from "./events.js";
|
|
17
|
+
export { TrackingEvents, };
|
|
18
|
+
export class Tracking {
|
|
19
|
+
constructor(http) {
|
|
20
|
+
_Tracking_http.set(this, void 0);
|
|
21
|
+
__classPrivateFieldSet(this, _Tracking_http, http, "f");
|
|
22
|
+
}
|
|
23
|
+
get events() {
|
|
24
|
+
return (this._events ?? (this._events = new TrackingEvents(__classPrivateFieldGet(this, _Tracking_http, "f"))));
|
|
25
|
+
}
|
|
26
|
+
async track(...args) {
|
|
27
|
+
return this.events.track(...args);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
_Tracking_http = new WeakMap();
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/sdk/tracking/index.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EACL,cAAc,GACf,CAAC;AASF,MAAM,OAAO,QAAQ;IAGnB,YAAY,IAAU;QAFb,iCAAY;QAGnB,uBAAA,IAAI,kBAAS,IAAI,MAAA,CAAC;IACpB,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,CAAC,IAAI,CAAC,OAAO,KAAZ,IAAI,CAAC,OAAO,GAAK,IAAI,cAAc,CAAC,uBAAA,IAAI,sBAAM,CAAC,EAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAG,IAAyC;QACtD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACpC,CAAC;CACF"}
|
package/jsr.json
CHANGED
package/package.json
CHANGED
package/src/index.ts
CHANGED
package/src/lib/config.ts
CHANGED
package/src/sdk/index.ts
CHANGED
package/src/sdk/sdk.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { OAuth2 } from "./oauth2.js";
|
|
|
10
10
|
import { Settings } from "./settings/index.js";
|
|
11
11
|
import { Users } from "./users/index.js";
|
|
12
12
|
import { Admins } from "./admins.js";
|
|
13
|
+
import { Tracking } from "./tracking/index.js";
|
|
13
14
|
import type { SDKOptions } from "../lib/config.js";
|
|
14
15
|
import type {
|
|
15
16
|
OminityModuleInput,
|
|
@@ -66,6 +67,11 @@ export class Ominity extends ClientSDK {
|
|
|
66
67
|
return (this._http ??= new Http(this._options));
|
|
67
68
|
}
|
|
68
69
|
|
|
70
|
+
private _tracking?: Tracking;
|
|
71
|
+
get tracking(): Tracking {
|
|
72
|
+
return (this._tracking ??= new Tracking(this.http));
|
|
73
|
+
}
|
|
74
|
+
|
|
69
75
|
private _localization?: Localization;
|
|
70
76
|
get localization(): Localization {
|
|
71
77
|
return (this._localization ??= new Localization(this._options));
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Tracking Events SDK.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { RequestOptions } from "../../lib/sdks.js";
|
|
6
|
+
import { Http } from "../http.js";
|
|
7
|
+
|
|
8
|
+
export type TrackingEventName =
|
|
9
|
+
| "page_view"
|
|
10
|
+
| "product_view"
|
|
11
|
+
| "cart_view"
|
|
12
|
+
| "add_to_cart"
|
|
13
|
+
| "remove_from_cart"
|
|
14
|
+
| "checkout_started"
|
|
15
|
+
| "purchase"
|
|
16
|
+
| "button_click"
|
|
17
|
+
| string;
|
|
18
|
+
|
|
19
|
+
export type TrackingEventMetadata = Readonly<Record<string, unknown>>;
|
|
20
|
+
export type TrackingEventUtm = Readonly<Record<string, string>>;
|
|
21
|
+
|
|
22
|
+
export interface TrackEventRequest {
|
|
23
|
+
readonly event: TrackingEventName;
|
|
24
|
+
readonly timestamp?: string | Date;
|
|
25
|
+
readonly title?: string;
|
|
26
|
+
readonly url?: string;
|
|
27
|
+
readonly metadata?: TrackingEventMetadata;
|
|
28
|
+
readonly visitorId?: string;
|
|
29
|
+
readonly userId?: number;
|
|
30
|
+
readonly referrer?: string;
|
|
31
|
+
readonly utm?: TrackingEventUtm;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface TrackEventResponse {
|
|
35
|
+
readonly success: boolean;
|
|
36
|
+
readonly visitorId: string;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
type MutableTrackingPayload = {
|
|
40
|
+
event: string;
|
|
41
|
+
timestamp: string;
|
|
42
|
+
title?: string;
|
|
43
|
+
url?: string;
|
|
44
|
+
metadata?: TrackingEventMetadata;
|
|
45
|
+
visitorId?: string;
|
|
46
|
+
userId?: number;
|
|
47
|
+
referrer?: string;
|
|
48
|
+
utm?: TrackingEventUtm;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
function asNonEmptyString(value: unknown): string | undefined {
|
|
52
|
+
if (typeof value !== "string") {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
const trimmed = value.trim();
|
|
57
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function asValidDate(value: Date): Date | undefined {
|
|
61
|
+
if (!Number.isFinite(value.getTime())) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return value;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function normalizeTimestamp(value: string | Date | undefined): string {
|
|
69
|
+
if (value instanceof Date) {
|
|
70
|
+
const parsed = asValidDate(value);
|
|
71
|
+
if (parsed) {
|
|
72
|
+
return parsed.toISOString();
|
|
73
|
+
}
|
|
74
|
+
} else if (typeof value === "string") {
|
|
75
|
+
const trimmed = value.trim();
|
|
76
|
+
if (trimmed.length > 0) {
|
|
77
|
+
return trimmed;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
return new Date().toISOString();
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function normalizeUtm(value: unknown): TrackingEventUtm | undefined {
|
|
85
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
const normalized: Record<string, string> = {};
|
|
90
|
+
for (const [key, raw] of Object.entries(value)) {
|
|
91
|
+
const trimmed = asNonEmptyString(raw);
|
|
92
|
+
if (trimmed) {
|
|
93
|
+
normalized[key] = trimmed;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
return Object.keys(normalized).length > 0 ? normalized : undefined;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
function normalizeMetadata(value: unknown): TrackingEventMetadata | undefined {
|
|
101
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
return value as TrackingEventMetadata;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function normalizeTrackEventPayload(input: TrackEventRequest): MutableTrackingPayload {
|
|
109
|
+
const eventName = asNonEmptyString(input.event);
|
|
110
|
+
if (!eventName) {
|
|
111
|
+
throw new Error("Tracking event name is required.");
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
const payload: MutableTrackingPayload = {
|
|
115
|
+
event: eventName,
|
|
116
|
+
timestamp: normalizeTimestamp(input.timestamp),
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
const title = asNonEmptyString(input.title);
|
|
120
|
+
if (title) {
|
|
121
|
+
payload.title = title;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const url = asNonEmptyString(input.url);
|
|
125
|
+
if (url) {
|
|
126
|
+
payload.url = url;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
const metadata = normalizeMetadata(input.metadata);
|
|
130
|
+
if (metadata) {
|
|
131
|
+
payload.metadata = metadata;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
const visitorId = asNonEmptyString(input.visitorId);
|
|
135
|
+
if (visitorId) {
|
|
136
|
+
payload.visitorId = visitorId;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
if (typeof input.userId === "number" && Number.isFinite(input.userId)) {
|
|
140
|
+
payload.userId = Math.trunc(input.userId);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
const referrer = asNonEmptyString(input.referrer);
|
|
144
|
+
if (referrer) {
|
|
145
|
+
payload.referrer = referrer;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
const utm = normalizeUtm(input.utm);
|
|
149
|
+
if (utm) {
|
|
150
|
+
payload.utm = utm;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
return payload;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
function asRecord(value: unknown): Record<string, unknown> {
|
|
157
|
+
if (typeof value === "object" && value !== null) {
|
|
158
|
+
return value as Record<string, unknown>;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
return {};
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
function normalizeTrackEventResponse(payload: unknown): TrackEventResponse {
|
|
165
|
+
const record = asRecord(payload);
|
|
166
|
+
const visitorId = asNonEmptyString(record["visitorId"]) ?? "";
|
|
167
|
+
const success = record["success"] === true;
|
|
168
|
+
|
|
169
|
+
return {
|
|
170
|
+
success,
|
|
171
|
+
visitorId,
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
export class TrackingEvents {
|
|
176
|
+
readonly #http: Http;
|
|
177
|
+
|
|
178
|
+
constructor(http: Http) {
|
|
179
|
+
this.#http = http;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
async create(
|
|
183
|
+
request: TrackEventRequest,
|
|
184
|
+
options?: RequestOptions,
|
|
185
|
+
): Promise<TrackEventResponse> {
|
|
186
|
+
const response = await this.#http.post("/tracking/events", {
|
|
187
|
+
...options,
|
|
188
|
+
json: normalizeTrackEventPayload(request),
|
|
189
|
+
});
|
|
190
|
+
|
|
191
|
+
return normalizeTrackEventResponse(await response.json());
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
async track(
|
|
195
|
+
request: TrackEventRequest,
|
|
196
|
+
options?: RequestOptions,
|
|
197
|
+
): Promise<TrackEventResponse> {
|
|
198
|
+
return this.create(request, options);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* SDK module: Tracking
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { Http } from "../http.js";
|
|
6
|
+
import { TrackingEvents } from "./events.js";
|
|
7
|
+
|
|
8
|
+
export {
|
|
9
|
+
TrackingEvents,
|
|
10
|
+
};
|
|
11
|
+
export type {
|
|
12
|
+
TrackEventRequest,
|
|
13
|
+
TrackEventResponse,
|
|
14
|
+
TrackingEventMetadata,
|
|
15
|
+
TrackingEventName,
|
|
16
|
+
TrackingEventUtm,
|
|
17
|
+
} from "./events.js";
|
|
18
|
+
|
|
19
|
+
export class Tracking {
|
|
20
|
+
readonly #http: Http;
|
|
21
|
+
|
|
22
|
+
constructor(http: Http) {
|
|
23
|
+
this.#http = http;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
private _events?: TrackingEvents;
|
|
27
|
+
get events(): TrackingEvents {
|
|
28
|
+
return (this._events ??= new TrackingEvents(this.#http));
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
async track(...args: Parameters<TrackingEvents["track"]>): ReturnType<TrackingEvents["track"]> {
|
|
32
|
+
return this.events.track(...args);
|
|
33
|
+
}
|
|
34
|
+
}
|