@repobit/dex-target 0.1.1 → 1.1.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.
@@ -0,0 +1,53 @@
1
+ import { AlloyFunction, ConfigMbox, MboxParameters, MboxProfileParameters } from "./typeDefinitions";
2
+ declare global {
3
+ interface Window {
4
+ alloyProxy: AlloyFunction;
5
+ BD: {
6
+ Target: Target;
7
+ };
8
+ }
9
+ }
10
+ export default abstract class Target {
11
+ private static urlParameters;
12
+ private static cachedMboxes;
13
+ private static _configMbox;
14
+ private static controller;
15
+ /** get an object containing all the url query parameters */
16
+ private static getUrlParameters;
17
+ static get configMbox(): Promise<Partial<{
18
+ promotion: string;
19
+ products: {
20
+ [key: string]: {
21
+ [key: `${number}-${number}`]: Partial<{
22
+ extraParameters: {
23
+ key: string;
24
+ value: string;
25
+ }[];
26
+ price: number;
27
+ discountedPrice: number;
28
+ buyLink: string;
29
+ }>;
30
+ };
31
+ };
32
+ useGeoIpPricing: boolean;
33
+ }> | undefined>;
34
+ /** add adobe_mc parameter at the end of the url */
35
+ static appendVisitorIDsTo(url: string): Promise<string>;
36
+ /** abort all the Target calls for casese where Target does not load */
37
+ static abort(): void;
38
+ static getOffers(param: {
39
+ mboxNames: "config-mbox";
40
+ parameters?: MboxParameters;
41
+ profileParameters?: MboxProfileParameters;
42
+ }): Promise<ConfigMbox | undefined>;
43
+ static getOffers(param: {
44
+ mboxNames: string;
45
+ parameters?: MboxParameters;
46
+ profileParameters?: MboxProfileParameters;
47
+ }): Promise<object | undefined>;
48
+ static getOffers(param: {
49
+ mboxNames: string[];
50
+ parameters?: MboxParameters;
51
+ profileParameters?: MboxProfileParameters;
52
+ }): Promise<Record<string, object | undefined>>;
53
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,103 @@
1
+ export type MboxProfileParameters = {
2
+ [key: `profile.${string}`]: string;
3
+ };
4
+ export type MboxParameters = {
5
+ [key: string]: string;
6
+ };
7
+ export type URLParameters = {
8
+ [key: string]: string;
9
+ };
10
+ export type SendEventCall = [
11
+ "sendEvent",
12
+ {
13
+ decisionScopes: string[];
14
+ data: {
15
+ "__adobe": {
16
+ "target": {
17
+ [key: string]: string;
18
+ };
19
+ };
20
+ };
21
+ renderDecisions?: boolean;
22
+ }
23
+ ];
24
+ export type AppendIdentityToUrlCall = [
25
+ "appendIdentityToUrl",
26
+ {
27
+ url: string;
28
+ }
29
+ ];
30
+ type AlloyResponseDecision = {
31
+ id: string;
32
+ scope: string;
33
+ items: {
34
+ data: {
35
+ content: object;
36
+ format: string;
37
+ id: string;
38
+ };
39
+ id: string;
40
+ meta: Partial<{
41
+ "activity.name": string;
42
+ "experience.name": string;
43
+ [key: string]: string;
44
+ }>;
45
+ schema: string;
46
+ }[];
47
+ scopeDetails: Partial<{
48
+ activity: {
49
+ id: string;
50
+ };
51
+ characteristics: {
52
+ analyticsToken: string;
53
+ eventToken: string;
54
+ };
55
+ correlationID: string;
56
+ decisionProvider: string;
57
+ experience: {
58
+ id: string;
59
+ };
60
+ strategies: {
61
+ step: string;
62
+ trafficTpye: string;
63
+ }[];
64
+ }>;
65
+ };
66
+ type AlloyResponsePropositions = AlloyResponseDecision & {
67
+ renderAttempted: boolean;
68
+ };
69
+ export type AlloySendEventResponse = {
70
+ decisions: AlloyResponseDecision[];
71
+ propositions: AlloyResponsePropositions[];
72
+ destinations: object[];
73
+ };
74
+ export type AlloyAppendIdentityToUrlResponse = {
75
+ url: string;
76
+ };
77
+ export type AlloyFunction = {
78
+ (...args: SendEventCall): Promise<AlloySendEventResponse>;
79
+ (...args: AppendIdentityToUrlCall): Promise<AlloyAppendIdentityToUrlResponse>;
80
+ q: Array<[
81
+ resolve: Function,
82
+ reject: Function,
83
+ args: SendEventCall | AppendIdentityToUrlCall
84
+ ]>;
85
+ };
86
+ export type ConfigMbox = Partial<{
87
+ promotion: string;
88
+ products: {
89
+ [key: string]: {
90
+ [key: `${number}-${number}`]: Partial<{
91
+ extraParameters: {
92
+ key: string;
93
+ value: string;
94
+ }[];
95
+ price: number;
96
+ discountedPrice: number;
97
+ buyLink: string;
98
+ }>;
99
+ };
100
+ };
101
+ useGeoIpPricing: boolean;
102
+ }>;
103
+ export {};
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=typeDefinitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeDefinitions.js","sourceRoot":"","sources":["../src/typeDefinitions.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@repobit/dex-target",
3
- "version": "0.1.1",
3
+ "version": "1.1.2",
4
4
  "description": "Client for Adobe Target",
5
5
  "author": "Constantin Ioan Mihai <iconstantin@bitdefender.com>",
6
6
  "homepage": "https://github.com/bitdefender/dex-core#readme",
7
- "license": "ISC",
7
+ "license": "MIT",
8
8
  "main": "dist/index.js",
9
9
  "directories": {
10
10
  "src": "src",
11
11
  "test": "__tests__"
12
12
  },
13
13
  "files": [
14
- "lib"
14
+ "dist"
15
15
  ],
16
16
  "publishConfig": {
17
17
  "access": "public"
@@ -43,5 +43,5 @@
43
43
  "typescript": "^5.7.3",
44
44
  "typescript-eslint": "^8.23.0"
45
45
  },
46
- "gitHead": "cd71918c424b27465fd18f056b4b44052ad975b8"
46
+ "gitHead": "44258c2a9373c41b59aa4c79a4b0720008cad3db"
47
47
  }