@xylabs/sdk-react 2.12.8 → 2.12.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/cjs/common/ExperimentsHelper.d.ts +20 -0
  2. package/dist/cjs/common/ExperimentsHelper.js +102 -0
  3. package/dist/cjs/common/ExperimentsHelper.js.map +1 -0
  4. package/dist/cjs/common/index.d.ts +1 -0
  5. package/dist/cjs/common/index.js +5 -0
  6. package/dist/cjs/common/index.js.map +1 -0
  7. package/dist/cjs/components/Experiments/index.d.ts +1 -0
  8. package/dist/cjs/components/Experiments/index.js +1 -0
  9. package/dist/cjs/components/Experiments/index.js.map +1 -1
  10. package/dist/cjs/hooks/useExperiment.d.ts +8 -0
  11. package/dist/cjs/hooks/useExperiment.js +30 -0
  12. package/dist/cjs/hooks/useExperiment.js.map +1 -0
  13. package/dist/cjs/lib/Tracking/Drip/BaseEvent.js +1 -0
  14. package/dist/cjs/lib/Tracking/Drip/BaseEvent.js.map +1 -1
  15. package/dist/cjs/lib/Tracking/Facebook/CustomEvent.d.ts +1 -1
  16. package/dist/cjs/lib/Tracking/Facebook/CustomEvent.js +2 -2
  17. package/dist/cjs/lib/Tracking/Facebook/CustomEvent.js.map +1 -1
  18. package/dist/cjs/lib/Tracking/Facebook/Fbq.d.ts +2 -2
  19. package/dist/cjs/lib/Tracking/Facebook/Fbq.js +4 -4
  20. package/dist/cjs/lib/Tracking/Facebook/Fbq.js.map +1 -1
  21. package/dist/cjs/lib/Tracking/Facebook/StandardEvent.d.ts +1 -1
  22. package/dist/cjs/lib/Tracking/Facebook/StandardEvent.js +2 -2
  23. package/dist/cjs/lib/Tracking/Facebook/StandardEvent.js.map +1 -1
  24. package/dist/cjs/lib/Tracking/Tapjoy/StandardEvents.d.ts +1 -1
  25. package/dist/cjs/lib/Tracking/Tapjoy/StandardEvents.js +2 -2
  26. package/dist/cjs/lib/Tracking/Tapjoy/StandardEvents.js.map +1 -1
  27. package/dist/cjs/lib/Tracking/Xy/BaseEvent.d.ts +1 -1
  28. package/dist/cjs/lib/Tracking/Xy/BaseEvent.js +2 -2
  29. package/dist/cjs/lib/Tracking/Xy/BaseEvent.js.map +1 -1
  30. package/dist/docs.json +15398 -15047
  31. package/dist/esm/common/ExperimentsHelper.d.ts +20 -0
  32. package/dist/esm/common/ExperimentsHelper.js +98 -0
  33. package/dist/esm/common/ExperimentsHelper.js.map +1 -0
  34. package/dist/esm/common/index.d.ts +1 -0
  35. package/dist/esm/common/index.js +2 -0
  36. package/dist/esm/common/index.js.map +1 -0
  37. package/dist/esm/components/Experiments/index.d.ts +1 -0
  38. package/dist/esm/components/Experiments/index.js +1 -0
  39. package/dist/esm/components/Experiments/index.js.map +1 -1
  40. package/dist/esm/hooks/useExperiment.d.ts +8 -0
  41. package/dist/esm/hooks/useExperiment.js +25 -0
  42. package/dist/esm/hooks/useExperiment.js.map +1 -0
  43. package/dist/esm/lib/Tracking/Drip/BaseEvent.js +1 -0
  44. package/dist/esm/lib/Tracking/Drip/BaseEvent.js.map +1 -1
  45. package/dist/esm/lib/Tracking/Facebook/CustomEvent.d.ts +1 -1
  46. package/dist/esm/lib/Tracking/Facebook/CustomEvent.js +2 -2
  47. package/dist/esm/lib/Tracking/Facebook/CustomEvent.js.map +1 -1
  48. package/dist/esm/lib/Tracking/Facebook/Fbq.d.ts +2 -2
  49. package/dist/esm/lib/Tracking/Facebook/Fbq.js +4 -4
  50. package/dist/esm/lib/Tracking/Facebook/Fbq.js.map +1 -1
  51. package/dist/esm/lib/Tracking/Facebook/StandardEvent.d.ts +1 -1
  52. package/dist/esm/lib/Tracking/Facebook/StandardEvent.js +2 -2
  53. package/dist/esm/lib/Tracking/Facebook/StandardEvent.js.map +1 -1
  54. package/dist/esm/lib/Tracking/Tapjoy/StandardEvents.d.ts +1 -1
  55. package/dist/esm/lib/Tracking/Tapjoy/StandardEvents.js +2 -2
  56. package/dist/esm/lib/Tracking/Tapjoy/StandardEvents.js.map +1 -1
  57. package/dist/esm/lib/Tracking/Xy/BaseEvent.d.ts +1 -1
  58. package/dist/esm/lib/Tracking/Xy/BaseEvent.js +2 -2
  59. package/dist/esm/lib/Tracking/Xy/BaseEvent.js.map +1 -1
  60. package/package.json +2 -2
  61. package/src/common/ExperimentsHelper.ts +111 -0
  62. package/src/common/index.ts +1 -0
  63. package/src/components/Experiments/index.tsx +1 -0
  64. package/src/hooks/useExperiment.ts +31 -0
  65. package/src/hooks/useExperiments.stories.tsx +43 -0
  66. package/src/lib/Tracking/Drip/BaseEvent.ts +1 -0
  67. package/src/lib/Tracking/Facebook/CustomEvent.ts +2 -2
  68. package/src/lib/Tracking/Facebook/Fbq.ts +18 -8
  69. package/src/lib/Tracking/Facebook/StandardEvent.ts +2 -2
  70. package/src/lib/Tracking/Tapjoy/StandardEvents.ts +2 -2
  71. package/src/lib/Tracking/Xy/BaseEvent.ts +2 -2
@@ -0,0 +1,20 @@
1
+ import { UserEventHandler } from '@xylabs/pixel';
2
+ import { Log } from '@xylabs/sdk-js';
3
+ import { ReactElement } from 'react';
4
+ import { ExperimentProps, ExperimentsData, OutcomesData, VariantData } from '../components';
5
+ import { UserEventsProps } from '../contexts';
6
+ declare const ExperimentsHelper: {
7
+ buildLocalStorageKey: (localStorageProp: boolean | string) => string;
8
+ calcTotalWeight: (variants: VariantData[]) => number;
9
+ calculateExperiment: (name: string, localStorageProp: string | boolean, variants: VariantData[], userEvents: UserEventHandler<UserEventsProps>) => VariantData | undefined;
10
+ getExperiment: (name: string) => import("../components").ExperimentData;
11
+ getSelectedVariant: (name: string) => VariantData | undefined;
12
+ loadOutcomes: () => OutcomesData;
13
+ makeChildrenArray: (children: ReactElement<ExperimentProps>[] | ReactElement<ExperimentProps>) => ReactElement<ExperimentProps, string | import("react").JSXElementConstructor<any>>[];
14
+ mergeData: (data: {
15
+ [index: string]: string;
16
+ }, log?: Log | undefined) => string;
17
+ saveExperimentRanges: (name: string, totalWeight: number, variants: VariantData[]) => ExperimentsData;
18
+ saveOutcomes: () => void;
19
+ };
20
+ export { ExperimentsHelper };
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExperimentsHelper = void 0;
4
+ const sdk_js_1 = require("@xylabs/sdk-js");
5
+ const components_1 = require("../components");
6
+ const lib_1 = require("../lib");
7
+ const defaultLocalStorageKey = 'testData';
8
+ const experimentsTestData = {};
9
+ let outcomes = {}; //prevent multi-outcome
10
+ // TODO - some expire logic around experiments
11
+ const ExperimentsHelper = {
12
+ buildLocalStorageKey: (localStorageProp) => {
13
+ return localStorageProp === true ? defaultLocalStorageKey : typeof localStorageProp === 'string' ? localStorageProp !== null && localStorageProp !== void 0 ? localStorageProp : defaultLocalStorageKey : '';
14
+ },
15
+ calcTotalWeight: (variants) => {
16
+ return variants.reduce((sum, variant) => {
17
+ return sum + variant.weight;
18
+ }, 0);
19
+ },
20
+ calculateExperiment: (name, localStorageProp, variants, userEvents) => {
21
+ var _a;
22
+ //TODO - user events, it needs to be in the hook, all other compatibility should
23
+ ExperimentsHelper.loadOutcomes();
24
+ const localStorageKey = ExperimentsHelper.buildLocalStorageKey(localStorageProp);
25
+ const totalWeight = ExperimentsHelper.calcTotalWeight(variants);
26
+ ExperimentsHelper.saveExperimentRanges(name, totalWeight, variants);
27
+ const firstTime = name in outcomes;
28
+ let targetWeight = (_a = outcomes[name]) !== null && _a !== void 0 ? _a : Math.random() * totalWeight;
29
+ outcomes[name] = targetWeight;
30
+ ExperimentsHelper.saveOutcomes();
31
+ for (const variant of variants) {
32
+ targetWeight -= variant.weight;
33
+ if (targetWeight > 0)
34
+ continue;
35
+ if (!variant.name) {
36
+ throw new Error('Experiment Elements must have Keys');
37
+ }
38
+ experimentsTestData[name] = variant.name;
39
+ if (firstTime) {
40
+ localStorage.setItem(localStorageKey, ExperimentsHelper.mergeData(experimentsTestData));
41
+ }
42
+ if (userEvents) {
43
+ (0, sdk_js_1.forget)(userEvents.testStarted({ name, variation: variant.name }));
44
+ }
45
+ return variant;
46
+ }
47
+ },
48
+ getExperiment: (name) => {
49
+ ExperimentsHelper.loadOutcomes();
50
+ const experiments = (0, lib_1.getLocalStorageObject)(components_1.ExperimentsLocalStorageKey) || {};
51
+ return experiments[name];
52
+ },
53
+ getSelectedVariant: (name) => {
54
+ const outcomes = ExperimentsHelper.loadOutcomes();
55
+ const experiment = ExperimentsHelper.getExperiment(name);
56
+ let total = 0;
57
+ if (experiment && outcomes) {
58
+ const targetWeight = outcomes[name];
59
+ for (let i = 0; i < experiment.variants.length; i++) {
60
+ const variant = experiment.variants[i];
61
+ total += variant.weight;
62
+ if (total >= targetWeight) {
63
+ return variant;
64
+ }
65
+ }
66
+ }
67
+ },
68
+ loadOutcomes: () => {
69
+ outcomes = (0, lib_1.getLocalStorageObject)(components_1.OutcomesLocalStorageKey);
70
+ return outcomes;
71
+ },
72
+ makeChildrenArray: (children) => {
73
+ if (Array.isArray(children)) {
74
+ return children;
75
+ }
76
+ else {
77
+ return [children];
78
+ }
79
+ },
80
+ mergeData: (data, log) => {
81
+ const dataArray = [];
82
+ for (const key in data) {
83
+ dataArray.push(`${key}-${data[key]}`);
84
+ }
85
+ log === null || log === void 0 ? void 0 : log.info('MergeData', dataArray.join('|'));
86
+ return dataArray.join('|');
87
+ },
88
+ saveExperimentRanges: (name, totalWeight, variants) => {
89
+ const experiments = (0, lib_1.getLocalStorageObject)(components_1.ExperimentsLocalStorageKey) || {};
90
+ experiments[name] = {
91
+ totalWeight,
92
+ variants,
93
+ };
94
+ (0, lib_1.setLocalStorageObject)(components_1.ExperimentsLocalStorageKey, experiments);
95
+ return experiments;
96
+ },
97
+ saveOutcomes: () => {
98
+ (0, lib_1.setLocalStorageObject)(components_1.OutcomesLocalStorageKey, outcomes);
99
+ },
100
+ };
101
+ exports.ExperimentsHelper = ExperimentsHelper;
102
+ //# sourceMappingURL=ExperimentsHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExperimentsHelper.js","sourceRoot":"","sources":["../../../src/common/ExperimentsHelper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './ExperimentsHelper';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./ExperimentsHelper"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,8DAAmC"}
@@ -2,3 +2,4 @@ export * from './Experiment';
2
2
  export * from './Experiments';
3
3
  export * from './ExperimentsDebugger';
4
4
  export * from './ExperimentsProps';
5
+ export * from './models';
@@ -5,4 +5,5 @@ tslib_1.__exportStar(require("./Experiment"), exports);
5
5
  tslib_1.__exportStar(require("./Experiments"), exports);
6
6
  tslib_1.__exportStar(require("./ExperimentsDebugger"), exports);
7
7
  tslib_1.__exportStar(require("./ExperimentsProps"), exports);
8
+ tslib_1.__exportStar(require("./models"), exports);
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Experiments/index.tsx"],"names":[],"mappings":";;;AAAA,uDAA4B;AAC5B,wDAA6B;AAC7B,gEAAqC;AACrC,6DAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Experiments/index.tsx"],"names":[],"mappings":";;;AAAA,uDAA4B;AAC5B,wDAA6B;AAC7B,gEAAqC;AACrC,6DAAkC;AAClC,mDAAwB"}
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ import { VariantData } from '../components';
3
+ declare const selectVariantForExperiment: (name: string, variants: Record<string, ReactNode>, defaultNode: ReactNode) => ReactNode;
4
+ declare const useExperiments: (name: string, experiments: VariantData[]) => {
5
+ experimentName: string;
6
+ selectVariant: (variants: Record<string, ReactNode>, defaultNode: ReactNode) => ReactNode;
7
+ };
8
+ export { selectVariantForExperiment, useExperiments };
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useExperiments = exports.selectVariantForExperiment = void 0;
4
+ const react_1 = require("react");
5
+ const common_1 = require("../common");
6
+ const useUserEvents_1 = require("./useUserEvents");
7
+ const selectVariant = (current) => (variants, defaultNode) => {
8
+ if (current && current in variants) {
9
+ return variants[current];
10
+ }
11
+ return defaultNode;
12
+ };
13
+ const selectVariantForExperiment = (name, variants, defaultNode) => {
14
+ var _a, _b;
15
+ const variant = common_1.ExperimentsHelper.getSelectedVariant(name);
16
+ if (variants[(_a = variant === null || variant === void 0 ? void 0 : variant.name) !== null && _a !== void 0 ? _a : '']) {
17
+ return variants[(_b = variant === null || variant === void 0 ? void 0 : variant.name) !== null && _b !== void 0 ? _b : ''];
18
+ }
19
+ return defaultNode;
20
+ };
21
+ exports.selectVariantForExperiment = selectVariantForExperiment;
22
+ const useExperiments = (name, experiments) => {
23
+ const [activeExperiment] = (0, react_1.useState)(common_1.ExperimentsHelper.calculateExperiment(name, true, experiments, (0, useUserEvents_1.useUserEvents)()));
24
+ return {
25
+ experimentName: name,
26
+ selectVariant: selectVariant(activeExperiment === null || activeExperiment === void 0 ? void 0 : activeExperiment.name),
27
+ };
28
+ };
29
+ exports.useExperiments = useExperiments;
30
+ //# sourceMappingURL=useExperiment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useExperiment.js","sourceRoot":"","sources":["../../../src/hooks/useExperiment.ts"],"names":[],"mappings":";;;AAAA,iCAA2C;AAE3C,sCAA6C;AAE7C,mDAA+C;AAE/C,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,EAAE,CAAC,CAAC,QAAmC,EAAE,WAAsB,EAAE,EAAE;IAC1G,IAAI,OAAO,IAAI,OAAO,IAAI,QAAQ,EAAE;QAClC,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAA;KACzB;IACD,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,CAAC,IAAY,EAAE,QAAmC,EAAE,WAAsB,EAAE,EAAE;;IAC/G,MAAM,OAAO,GAAG,0BAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC1D,IAAI,QAAQ,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE,CAAC,EAAE;QACjC,OAAO,QAAQ,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,EAAE,CAAC,CAAA;KACrC;IACD,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AAWQ,gEAA0B;AATnC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,WAA0B,EAAE,EAAE;IAClE,MAAM,CAAC,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EAAC,0BAAiB,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAA,6BAAa,GAAE,CAAC,CAAC,CAAA;IAEpH,OAAO;QACL,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,aAAa,CAAC,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,CAAC;KACrD,CAAA;AACH,CAAC,CAAA;AAEoC,wCAAc"}
@@ -17,6 +17,7 @@ class DripBaseEvent {
17
17
  payload.push(this.param);
18
18
  }
19
19
  payload.push(data);
20
+ console.log('sdk-react', payload);
20
21
  this.dcq.push(payload);
21
22
  yield (0, sdk_js_1.delay)(0);
22
23
  });
@@ -1 +1 @@
1
- {"version":3,"file":"BaseEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Drip/BaseEvent.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAItC,MAAa,aAAa;IAKxB,YAAY,IAAY,EAAE,KAAc;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;QACxB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC1B,CAAC;IAEY,IAAI,CAAC,IAAO;;YACvB,MAAM,OAAO,GAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;aACzB;YACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAClB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACtB,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA;QAChB,CAAC;KAAA;IAEO,MAAM;QACZ,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAa,CAAA;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,KAAK,CAAC,eAAe,CAAC,CAAA;SAC7B;QACD,OAAO,MAAM,CAAC,IAAsB,CAAA;IACtC,CAAC;IAEO,MAAM;QACZ,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAa,CAAA;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,KAAK,CAAC,eAAe,CAAC,CAAA;SAC7B;QACD,OAAO,MAAM,CAAC,IAAsB,CAAA;IACtC,CAAC;CACF;AAvCD,sCAuCC"}
1
+ {"version":3,"file":"BaseEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Drip/BaseEvent.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAItC,MAAa,aAAa;IAKxB,YAAY,IAAY,EAAE,KAAc;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;QACxB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC1B,CAAC;IAEY,IAAI,CAAC,IAAO;;YACvB,MAAM,OAAO,GAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;aACzB;YACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAClB,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;YACjC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACtB,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA;QAChB,CAAC;KAAA;IAEO,MAAM;QACZ,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAa,CAAA;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,KAAK,CAAC,eAAe,CAAC,CAAA;SAC7B;QACD,OAAO,MAAM,CAAC,IAAsB,CAAA;IACtC,CAAC;IAEO,MAAM;QACZ,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAa,CAAA;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAChB,MAAM,KAAK,CAAC,eAAe,CAAC,CAAA;SAC7B;QACD,OAAO,MAAM,CAAC,IAAsB,CAAA;IACtC,CAAC;CACF;AAxCD,sCAwCC"}
@@ -1,5 +1,5 @@
1
1
  import { FacebookBaseEvent } from './BaseEvent';
2
2
  declare class FacebookCustomEvent<T extends Record<string, unknown>> extends FacebookBaseEvent<T> {
3
- send(data: T): Promise<void>;
3
+ send(data: T, eventId?: string): Promise<void>;
4
4
  }
5
5
  export { FacebookCustomEvent };
@@ -5,9 +5,9 @@ const tslib_1 = require("tslib");
5
5
  const sdk_js_1 = require("@xylabs/sdk-js");
6
6
  const BaseEvent_1 = require("./BaseEvent");
7
7
  class FacebookCustomEvent extends BaseEvent_1.FacebookBaseEvent {
8
- send(data) {
8
+ send(data, eventId) {
9
9
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
10
- this.fbq.trackCustom(this.name, data);
10
+ this.fbq.trackCustom(this.name, data, eventId);
11
11
  yield (0, sdk_js_1.delay)(0); //force async to increase reporting odds
12
12
  });
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CustomEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Facebook/CustomEvent.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAEtC,2CAA+C;AAE/C,MAAM,mBAAuD,SAAQ,6BAAoB;IACjF,IAAI,CAAC,IAAO;;YAChB,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACrC,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA,CAAC,wCAAwC;QACzD,CAAC;KAAA;CACF;AAEQ,kDAAmB"}
1
+ {"version":3,"file":"CustomEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Facebook/CustomEvent.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAEtC,2CAA+C;AAE/C,MAAM,mBAAuD,SAAQ,6BAAoB;IACjF,IAAI,CAAC,IAAO,EAAE,OAAgB;;YAClC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;YAC9C,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA,CAAC,wCAAwC;QACzD,CAAC;KAAA;CACF;AAEQ,kDAAmB"}
@@ -4,7 +4,7 @@ declare class Fbq {
4
4
  private constructor();
5
5
  static instance: Fbq;
6
6
  static init(pixelId: string): Fbq;
7
- track(event: string, data: Record<string, unknown>): void;
8
- trackCustom(event: string, data: Record<string, unknown>): void;
7
+ track(event: string, data: Record<string, unknown>, eventId?: string): void;
8
+ trackCustom(event: string, data: Record<string, unknown>, eventId?: string): void;
9
9
  }
10
10
  export { Fbq };
@@ -26,11 +26,11 @@ class Fbq {
26
26
  }
27
27
  return this.instance;
28
28
  }
29
- track(event, data) {
30
- this.fbq('track', event, Object.assign({}, data));
29
+ track(event, data, eventId) {
30
+ this.fbq('track', event, Object.assign({}, data), { eventId });
31
31
  }
32
- trackCustom(event, data) {
33
- this.fbq('trackCustom', event, Object.assign({}, data));
32
+ trackCustom(event, data, eventId) {
33
+ this.fbq('trackCustom', event, Object.assign({}, data), { eventId });
34
34
  }
35
35
  }
36
36
  exports.Fbq = Fbq;
@@ -1 +1 @@
1
- {"version":3,"file":"Fbq.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Facebook/Fbq.ts"],"names":[],"mappings":";;;AAAA,MAAM,GAAG;IAKP,YAAoB,OAAe;QACjC,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAa,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAEtB,IAAI,CAAC,GAAG,GAAG;YACT,4DAA4D;YAC5D,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACvG,CAAC,CAAA;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAA;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAA;QACtB,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAA;QACxB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAA;QAEnB,0FAA0F;QAC1F,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;QACrB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAA;QAEtB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACzB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAC/B,CAAC;IAGM,MAAM,CAAC,IAAI,CAAC,OAAe;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;SACjC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAa,EAAE,IAA6B;QACvD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,oBAClB,IAAI,EACP,CAAA;IACJ,CAAC;IAEM,WAAW,CAAC,KAAa,EAAE,IAA6B;QAC7D,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,oBACxB,IAAI,EACP,CAAA;IACJ,CAAC;CACF;AAEQ,kBAAG"}
1
+ {"version":3,"file":"Fbq.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Facebook/Fbq.ts"],"names":[],"mappings":";;;AAAA,MAAM,GAAG;IAKP,YAAoB,OAAe;QACjC,8DAA8D;QAC9D,MAAM,MAAM,GAAG,MAAa,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAEtB,IAAI,CAAC,GAAG,GAAG;YACT,4DAA4D;YAC5D,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACvG,CAAC,CAAA;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAA;QACxB,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAA;QACtB,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAA;QACxB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAA;QAEnB,0FAA0F;QAC1F,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;QACrB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAA;QAEtB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACzB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAC/B,CAAC;IAGM,MAAM,CAAC,IAAI,CAAC,OAAe;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;SACjC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,KAAa,EAAE,IAA6B,EAAE,OAAgB;QACzE,IAAI,CAAC,GAAG,CACN,OAAO,EACP,KAAK,oBAEA,IAAI,GAET,EAAE,OAAO,EAAE,CACZ,CAAA;IACH,CAAC;IAEM,WAAW,CAAC,KAAa,EAAE,IAA6B,EAAE,OAAgB;QAC/E,IAAI,CAAC,GAAG,CACN,aAAa,EACb,KAAK,oBAEA,IAAI,GAET,EAAE,OAAO,EAAE,CACZ,CAAA;IACH,CAAC;CACF;AAEQ,kBAAG"}
@@ -1,5 +1,5 @@
1
1
  import { FacebookBaseEvent } from './BaseEvent';
2
2
  declare class FacebookStandardEvent<T extends Record<string, unknown>> extends FacebookBaseEvent<T> {
3
- send(data: T): Promise<void>;
3
+ send(data: T, eventId?: string): Promise<void>;
4
4
  }
5
5
  export { FacebookStandardEvent };
@@ -5,9 +5,9 @@ const tslib_1 = require("tslib");
5
5
  const sdk_js_1 = require("@xylabs/sdk-js");
6
6
  const BaseEvent_1 = require("./BaseEvent");
7
7
  class FacebookStandardEvent extends BaseEvent_1.FacebookBaseEvent {
8
- send(data) {
8
+ send(data, eventId) {
9
9
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
10
- this.fbq.track(this.name, data);
10
+ this.fbq.track(this.name, data, eventId);
11
11
  yield (0, sdk_js_1.delay)(0); //force async to increase reporting odds
12
12
  });
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StandardEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Facebook/StandardEvent.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAEtC,2CAA+C;AAE/C,MAAM,qBAAyD,SAAQ,6BAAoB;IACnF,IAAI,CAAC,IAAO;;YAChB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC/B,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA,CAAC,wCAAwC;QACzD,CAAC;KAAA;CACF;AAEQ,sDAAqB"}
1
+ {"version":3,"file":"StandardEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Facebook/StandardEvent.ts"],"names":[],"mappings":";;;;AAAA,2CAAsC;AAEtC,2CAA+C;AAE/C,MAAM,qBAAyD,SAAQ,6BAAoB;IACnF,IAAI,CAAC,IAAO,EAAE,OAAgB;;YAClC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;YACxC,MAAM,IAAA,cAAK,EAAC,CAAC,CAAC,CAAA,CAAC,wCAAwC;QACzD,CAAC;KAAA;CACF;AAEQ,sDAAqB"}
@@ -1,5 +1,5 @@
1
1
  import { TapjoyStandardEvent } from './StandardEvent';
2
2
  declare class TapjoyStandardEvents<T extends Record<string, unknown>> {
3
- purchase(): TapjoyStandardEvent<T>;
3
+ accountCreated(): TapjoyStandardEvent<T>;
4
4
  }
5
5
  export { TapjoyStandardEvents };
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TapjoyStandardEvents = void 0;
4
4
  const StandardEvent_1 = require("./StandardEvent");
5
5
  class TapjoyStandardEvents {
6
- purchase() {
7
- return new StandardEvent_1.TapjoyStandardEvent('Purchase');
6
+ accountCreated() {
7
+ return new StandardEvent_1.TapjoyStandardEvent('Conversion');
8
8
  }
9
9
  }
10
10
  exports.TapjoyStandardEvents = TapjoyStandardEvents;
@@ -1 +1 @@
1
- {"version":3,"file":"StandardEvents.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Tapjoy/StandardEvents.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AAErD,MAAM,oBAAoB;IACjB,QAAQ;QACb,OAAO,IAAI,mCAAmB,CAAI,UAAU,CAAC,CAAA;IAC/C,CAAC;CACF;AAEQ,oDAAoB"}
1
+ {"version":3,"file":"StandardEvents.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Tapjoy/StandardEvents.ts"],"names":[],"mappings":";;;AAAA,mDAAqD;AAErD,MAAM,oBAAoB;IACjB,cAAc;QACnB,OAAO,IAAI,mCAAmB,CAAI,YAAY,CAAC,CAAA;IACjD,CAAC;CACF;AAEQ,oDAAoB"}
@@ -1,6 +1,6 @@
1
1
  declare class XyBaseEvent<T extends Record<string, unknown>> {
2
2
  private name;
3
3
  constructor(name: string);
4
- send(fields: T): Promise<void>;
4
+ send(fields: T, eventId?: string): Promise<void>;
5
5
  }
6
6
  export { XyBaseEvent };
@@ -7,9 +7,9 @@ class XyBaseEvent {
7
7
  constructor(name) {
8
8
  this.name = name;
9
9
  }
10
- send(fields) {
10
+ send(fields, eventId) {
11
11
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
- yield pixel_1.XyPixel.instance.send(this.name, fields);
12
+ yield pixel_1.XyPixel.instance.send(this.name, fields, eventId);
13
13
  });
14
14
  }
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Xy/BaseEvent.ts"],"names":[],"mappings":";;;;AAAA,yCAAuC;AAEvC,MAAM,WAAW;IAEf,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEK,IAAI,CAAC,MAAS;;YAClB,MAAM,eAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAChD,CAAC;KAAA;CACF;AAEQ,kCAAW"}
1
+ {"version":3,"file":"BaseEvent.js","sourceRoot":"","sources":["../../../../../src/lib/Tracking/Xy/BaseEvent.ts"],"names":[],"mappings":";;;;AAAA,yCAAuC;AAEvC,MAAM,WAAW;IAEf,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAEK,IAAI,CAAC,MAAS,EAAE,OAAgB;;YACpC,MAAM,eAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QACzD,CAAC;KAAA;CACF;AAEQ,kCAAW"}