@segment/analytics-browser-actions-friendbuy 1.0.0 → 1.3.0

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 (81) hide show
  1. package/.eslintcache +1 -0
  2. package/dist/cjs/generated-types.d.ts +3 -0
  3. package/dist/cjs/generated-types.js +3 -0
  4. package/dist/cjs/generated-types.js.map +1 -0
  5. package/dist/cjs/index.d.ts +12 -0
  6. package/dist/cjs/index.js +72 -0
  7. package/dist/cjs/index.js.map +1 -0
  8. package/dist/cjs/trackCustomEvent/generated-types.d.ts +10 -0
  9. package/dist/cjs/trackCustomEvent/generated-types.js +3 -0
  10. package/dist/cjs/trackCustomEvent/generated-types.js.map +1 -0
  11. package/dist/cjs/trackCustomEvent/index.d.ts +7 -0
  12. package/dist/cjs/trackCustomEvent/index.js +38 -0
  13. package/dist/cjs/trackCustomEvent/index.js.map +1 -0
  14. package/dist/cjs/trackCustomer/generated-types.d.ts +21 -0
  15. package/dist/cjs/trackCustomer/generated-types.js +3 -0
  16. package/dist/cjs/trackCustomer/generated-types.js.map +1 -0
  17. package/dist/cjs/trackCustomer/index.d.ts +7 -0
  18. package/dist/cjs/trackCustomer/index.js +41 -0
  19. package/dist/cjs/trackCustomer/index.js.map +1 -0
  20. package/dist/cjs/trackPage/generated-types.d.ts +5 -0
  21. package/dist/cjs/trackPage/generated-types.js +3 -0
  22. package/dist/cjs/trackPage/generated-types.js.map +1 -0
  23. package/dist/cjs/trackPage/index.d.ts +9 -0
  24. package/dist/cjs/trackPage/index.js +45 -0
  25. package/dist/cjs/trackPage/index.js.map +1 -0
  26. package/dist/cjs/trackPurchase/generated-types.d.ts +32 -0
  27. package/dist/cjs/trackPurchase/generated-types.js +3 -0
  28. package/dist/cjs/trackPurchase/generated-types.js.map +1 -0
  29. package/dist/cjs/trackPurchase/index.d.ts +8 -0
  30. package/dist/cjs/trackPurchase/index.js +61 -0
  31. package/dist/cjs/trackPurchase/index.js.map +1 -0
  32. package/dist/cjs/trackSignUp/generated-types.d.ts +18 -0
  33. package/dist/cjs/trackSignUp/generated-types.js +3 -0
  34. package/dist/cjs/trackSignUp/generated-types.js.map +1 -0
  35. package/dist/cjs/trackSignUp/index.d.ts +8 -0
  36. package/dist/cjs/trackSignUp/index.js +40 -0
  37. package/dist/cjs/trackSignUp/index.js.map +1 -0
  38. package/dist/cjs/types.d.ts +3 -0
  39. package/dist/cjs/types.js +3 -0
  40. package/dist/cjs/types.js.map +1 -0
  41. package/dist/esm/generated-types.d.ts +3 -0
  42. package/dist/esm/generated-types.js +2 -0
  43. package/dist/esm/generated-types.js.map +1 -0
  44. package/dist/esm/index.d.ts +12 -0
  45. package/dist/esm/index.js +68 -0
  46. package/dist/esm/index.js.map +1 -0
  47. package/dist/esm/trackCustomEvent/generated-types.d.ts +10 -0
  48. package/dist/esm/trackCustomEvent/generated-types.js +2 -0
  49. package/dist/esm/trackCustomEvent/generated-types.js.map +1 -0
  50. package/dist/esm/trackCustomEvent/index.d.ts +7 -0
  51. package/dist/esm/trackCustomEvent/index.js +35 -0
  52. package/dist/esm/trackCustomEvent/index.js.map +1 -0
  53. package/dist/esm/trackCustomer/generated-types.d.ts +21 -0
  54. package/dist/esm/trackCustomer/generated-types.js +2 -0
  55. package/dist/esm/trackCustomer/generated-types.js.map +1 -0
  56. package/dist/esm/trackCustomer/index.d.ts +7 -0
  57. package/dist/esm/trackCustomer/index.js +38 -0
  58. package/dist/esm/trackCustomer/index.js.map +1 -0
  59. package/dist/esm/trackPage/generated-types.d.ts +5 -0
  60. package/dist/esm/trackPage/generated-types.js +2 -0
  61. package/dist/esm/trackPage/generated-types.js.map +1 -0
  62. package/dist/esm/trackPage/index.d.ts +9 -0
  63. package/dist/esm/trackPage/index.js +42 -0
  64. package/dist/esm/trackPage/index.js.map +1 -0
  65. package/dist/esm/trackPurchase/generated-types.d.ts +32 -0
  66. package/dist/esm/trackPurchase/generated-types.js +2 -0
  67. package/dist/esm/trackPurchase/generated-types.js.map +1 -0
  68. package/dist/esm/trackPurchase/index.d.ts +8 -0
  69. package/dist/esm/trackPurchase/index.js +58 -0
  70. package/dist/esm/trackPurchase/index.js.map +1 -0
  71. package/dist/esm/trackSignUp/generated-types.d.ts +18 -0
  72. package/dist/esm/trackSignUp/generated-types.js +2 -0
  73. package/dist/esm/trackSignUp/generated-types.js.map +1 -0
  74. package/dist/esm/trackSignUp/index.d.ts +8 -0
  75. package/dist/esm/trackSignUp/index.js +37 -0
  76. package/dist/esm/trackSignUp/index.js.map +1 -0
  77. package/dist/esm/types.d.ts +3 -0
  78. package/dist/esm/types.js +2 -0
  79. package/dist/esm/types.js.map +1 -0
  80. package/dist/tsconfig.tsbuildinfo +1 -0
  81. package/package.json +6 -5
package/.eslintcache ADDED
@@ -0,0 +1 @@
1
+ [{"/home/kaari/action-destinations/packages/browser-destinations/destinations/friendbuy/src/generated-types.ts":"1","/home/kaari/action-destinations/packages/browser-destinations/destinations/friendbuy/src/index.ts":"2","/home/kaari/action-destinations/packages/browser-destinations/destinations/friendbuy/src/types.ts":"3"},{"size":268,"mtime":1686339431090,"results":"4","hashOfConfig":"5"},{"size":3128,"mtime":1686339475050,"results":"6","hashOfConfig":"5"},{"size":78,"mtime":1686339431100,"results":"7","hashOfConfig":"5"},{"filePath":"8","messages":"9","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"2icqc",{"filePath":"10","messages":"11","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"12","messages":"13","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/home/kaari/action-destinations/packages/browser-destinations/destinations/friendbuy/src/generated-types.ts",[],"/home/kaari/action-destinations/packages/browser-destinations/destinations/friendbuy/src/index.ts",[],"/home/kaari/action-destinations/packages/browser-destinations/destinations/friendbuy/src/types.ts",[]]
@@ -0,0 +1,3 @@
1
+ export interface Settings {
2
+ merchantId: string;
3
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../src/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import type { BrowserDestinationDefinition } from '@segment/browser-destination-runtime/types';
2
+ import type { Settings } from './generated-types';
3
+ import type { FriendbuyAPI } from './types';
4
+ declare global {
5
+ interface Window {
6
+ friendbuyAPI?: FriendbuyAPI;
7
+ friendbuyBaseHost?: string;
8
+ }
9
+ }
10
+ export declare const destination: BrowserDestinationDefinition<Settings, FriendbuyAPI>;
11
+ declare const _default: import("@segment/browser-destination-runtime/types").PluginFactory;
12
+ export default _default;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.destination = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const shim_1 = require("@segment/browser-destination-runtime/shim");
6
+ const actions_core_1 = require("@segment/actions-core");
7
+ const trackCustomer_1 = tslib_1.__importStar(require("./trackCustomer"));
8
+ const trackPurchase_1 = tslib_1.__importStar(require("./trackPurchase"));
9
+ const trackSignUp_1 = tslib_1.__importStar(require("./trackSignUp"));
10
+ const trackPage_1 = tslib_1.__importStar(require("./trackPage"));
11
+ const trackCustomEvent_1 = tslib_1.__importDefault(require("./trackCustomEvent"));
12
+ const actions_shared_1 = require("@segment/actions-shared");
13
+ const presets = [
14
+ {
15
+ name: 'Track Customer',
16
+ subscribe: trackCustomer_1.trackCustomerDefaultSubscription,
17
+ partnerAction: 'trackCustomer',
18
+ mapping: actions_core_1.defaultValues(actions_shared_1.trackCustomerFields)
19
+ },
20
+ {
21
+ name: 'Track Purchase',
22
+ subscribe: trackPurchase_1.trackPurchaseDefaultSubscription,
23
+ partnerAction: 'trackPurchase',
24
+ mapping: actions_core_1.defaultValues(trackPurchase_1.browserTrackPurchaseFields)
25
+ },
26
+ {
27
+ name: 'Track Sign Up',
28
+ subscribe: trackSignUp_1.trackSignUpDefaultSubscription,
29
+ partnerAction: 'trackSignUp',
30
+ mapping: actions_core_1.defaultValues(trackSignUp_1.browserTrackSignUpFields)
31
+ },
32
+ {
33
+ name: 'Track Page',
34
+ subscribe: trackPage_1.trackPageDefaultSubscription,
35
+ partnerAction: 'trackPage',
36
+ mapping: actions_core_1.defaultValues(trackPage_1.trackPageFields)
37
+ }
38
+ ];
39
+ exports.destination = {
40
+ name: 'Friendbuy (Actions)',
41
+ slug: 'actions-friendbuy',
42
+ mode: 'device',
43
+ settings: {
44
+ merchantId: {
45
+ label: 'Friendbuy Merchant ID',
46
+ description: 'Find your Friendbuy Merchant ID by logging in to your [Friendbuy account](https://retailer.friendbuy.io/) and going to Developer Center > Friendbuy Code.',
47
+ type: 'string',
48
+ format: 'uuid',
49
+ required: true
50
+ }
51
+ },
52
+ initialize: async ({ settings }, dependencies) => {
53
+ let friendbuyAPI;
54
+ window.friendbuyAPI = friendbuyAPI = window.friendbuyAPI || [];
55
+ const friendbuyBaseHost = window.friendbuyBaseHost ?? 'fbot.me';
56
+ friendbuyAPI.merchantId = settings.merchantId;
57
+ friendbuyAPI.push(['merchant', settings.merchantId]);
58
+ void dependencies.loadScript(`https://static.${friendbuyBaseHost}/friendbuy.js`);
59
+ void dependencies.loadScript(`https://campaign.${friendbuyBaseHost}/${settings.merchantId}/campaigns.js`);
60
+ return friendbuyAPI;
61
+ },
62
+ presets,
63
+ actions: {
64
+ trackCustomer: trackCustomer_1.default,
65
+ trackPurchase: trackPurchase_1.default,
66
+ trackSignUp: trackSignUp_1.default,
67
+ trackPage: trackPage_1.default,
68
+ trackCustomEvent: trackCustomEvent_1.default
69
+ }
70
+ };
71
+ exports.default = shim_1.browserDestination(exports.destination);
72
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAEA,oEAA8E;AAC9E,wDAAqD;AAIrD,yEAAiF;AACjF,yEAA6G;AAC7G,qEAAqG;AACrG,iEAAsF;AACtF,kFAAiD;AACjD,4DAA6D;AAU7D,MAAM,OAAO,GAAqC;IAChD;QACE,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,gDAAgC;QAC3C,aAAa,EAAE,eAAe;QAC9B,OAAO,EAAE,4BAAa,CAAC,oCAAmB,CAAC;KAC5C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,gDAAgC;QAC3C,aAAa,EAAE,eAAe;QAC9B,OAAO,EAAE,4BAAa,CAAC,0CAA0B,CAAC;KACnD;IACD;QACE,IAAI,EAAE,eAAe;QACrB,SAAS,EAAE,4CAA8B;QACzC,aAAa,EAAE,aAAa;QAC5B,OAAO,EAAE,4BAAa,CAAC,sCAAwB,CAAC;KACjD;IACD;QACE,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,wCAA4B;QACvC,aAAa,EAAE,WAAW;QAC1B,OAAO,EAAE,4BAAa,CAAC,2BAAe,CAAC;KACxC;CACF,CAAA;AAEY,QAAA,WAAW,GAAyD;IAC/E,IAAI,EAAE,qBAAqB;IAC3B,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,QAAQ;IAEd,QAAQ,EAAE;QACR,UAAU,EAAE;YACV,KAAK,EAAE,uBAAuB;YAC9B,WAAW,EACT,2JAA2J;YAC7J,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,IAAI;SACf;KACF;IAED,UAAU,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAoB,EAAE,YAAY,EAAE,EAAE;QACjE,IAAI,YAA0B,CAAA;QAC9B,MAAM,CAAC,YAAY,GAAG,YAAY,GAAG,MAAM,CAAC,YAAY,IAAK,EAA8B,CAAA;QAC3F,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,SAAS,CAAA;QAE/D,YAAY,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAA;QAC7C,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;QAGpD,KAAK,YAAY,CAAC,UAAU,CAAC,kBAAkB,iBAAiB,eAAe,CAAC,CAAA;QAChF,KAAK,YAAY,CAAC,UAAU,CAAC,oBAAoB,iBAAiB,IAAI,QAAQ,CAAC,UAAU,eAAe,CAAC,CAAA;QAEzG,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,OAAO;IACP,OAAO,EAAE;QACP,aAAa,EAAb,uBAAa;QACb,aAAa,EAAb,uBAAa;QACb,WAAW,EAAX,qBAAW;QACX,SAAS,EAAT,mBAAS;QACT,gBAAgB,EAAhB,0BAAgB;KACjB;CACF,CAAA;AAED,kBAAe,yBAAkB,CAAC,mBAAW,CAAC,CAAA"}
@@ -0,0 +1,10 @@
1
+ export interface Payload {
2
+ eventType: string;
3
+ eventProperties: {
4
+ [k: string]: unknown;
5
+ };
6
+ deduplicationId?: string;
7
+ customerId: string;
8
+ anonymousId?: string;
9
+ email?: string;
10
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/trackCustomEvent/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { BrowserActionDefinition } from '@segment/browser-destination-runtime/types';
2
+ import type { FriendbuyAPI } from '../types';
3
+ import type { Settings } from '../generated-types';
4
+ import type { Payload } from './generated-types';
5
+ export declare const browserTrackCustomEventFields: Record<string, import("@segment/actions-core/destination-kittypes").InputField>;
6
+ declare const action: BrowserActionDefinition<Settings, FriendbuyAPI, Payload>;
7
+ export default action;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.browserTrackCustomEventFields = void 0;
4
+ const actions_shared_1 = require("@segment/actions-shared");
5
+ const actions_shared_2 = require("@segment/actions-shared");
6
+ const actions_shared_3 = require("@segment/actions-shared");
7
+ exports.browserTrackCustomEventFields = actions_shared_2.trackCustomEventFields({});
8
+ const trackCustomEventPub = {
9
+ fields: {
10
+ eventType: actions_shared_1.DROP,
11
+ deduplicationId: actions_shared_1.COPY,
12
+ customerId: { name: ['customer', 'id'], convert: actions_shared_3.enjoinString },
13
+ anonymousId: { name: ['customer', 'anonymousId'] },
14
+ email: { name: ['customer', 'email'] },
15
+ isNewCustomer: { name: ['customer', 'isNewCustomer'] },
16
+ loyaltyStatus: { name: ['customer', 'loyaltyStatus'] },
17
+ firstName: { name: ['customer', 'firstName'] },
18
+ lastName: { name: ['customer', 'lastName'] },
19
+ name: { name: ['customer', 'name'] },
20
+ age: { name: ['customer', 'age'], convert: actions_shared_3.enjoinInteger },
21
+ birthday: { name: ['customer', 'birthday'], convert: actions_shared_3.parseDate }
22
+ },
23
+ unmappedFieldObject: actions_shared_1.ROOT
24
+ };
25
+ const action = {
26
+ title: 'Track Custom Event',
27
+ description: 'Record when a customer completes any custom event that you define.',
28
+ platform: 'web',
29
+ fields: exports.browserTrackCustomEventFields,
30
+ perform: (friendbuyAPI, { payload }) => {
31
+ const analyticsPayload = actions_shared_3.moveEventPropertiesToRoot(payload);
32
+ actions_shared_3.addName(analyticsPayload);
33
+ const friendbuyPayload = actions_shared_1.mapEvent(trackCustomEventPub, analyticsPayload);
34
+ friendbuyAPI.push(['track', payload.eventType, friendbuyPayload]);
35
+ }
36
+ };
37
+ exports.default = action;
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/trackCustomEvent/index.ts"],"names":[],"mappings":";;;AAOA,4DAAsF;AACtF,4DAAgE;AAChE,4DAAoH;AAEvG,QAAA,6BAA6B,GAAG,uCAAsB,CAAC,EAAE,CAAC,CAAA;AAEvE,MAAM,mBAAmB,GAAa;IACpC,MAAM,EAAE;QACN,SAAS,EAAE,qBAAI;QACf,eAAe,EAAE,qBAAI;QAGrB,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,6BAA0B,EAAE;QAC7E,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE;QAClD,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE;QACtC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE;QACtD,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE;QACtD,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE;QAC9C,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;QAC5C,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE;QACpC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,8BAA2B,EAAE;QACxE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,0BAAuB,EAAE;KAC/E;IACD,mBAAmB,EAAE,qBAAI;CAC1B,CAAA;AAED,MAAM,MAAM,GAA6D;IACvE,KAAK,EAAE,oBAAoB;IAC3B,WAAW,EAAE,oEAAoE;IAEjF,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,qCAA6B;IAErC,OAAO,EAAE,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,MAAM,gBAAgB,GAAG,0CAAyB,CAAC,OAAsC,CAAC,CAAA;QAC1F,wBAAO,CAAC,gBAAgB,CAAC,CAAA;QACzB,MAAM,gBAAgB,GAAG,yBAAQ,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAA;QACxE,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAA;IACnE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,21 @@
1
+ export interface Payload {
2
+ customerId: string;
3
+ anonymousId?: string;
4
+ email: string;
5
+ firstName?: string;
6
+ lastName?: string;
7
+ name?: string;
8
+ age?: number;
9
+ birthday?: string;
10
+ language?: string;
11
+ addressCountry?: string;
12
+ addressState?: string;
13
+ addressCity?: string;
14
+ addressPostalCode?: string;
15
+ customerSince?: string;
16
+ loyaltyStatus?: string;
17
+ isNewCustomer?: boolean;
18
+ friendbuyAttributes?: {
19
+ [k: string]: unknown;
20
+ };
21
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/trackCustomer/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { BrowserActionDefinition } from '@segment/browser-destination-runtime/types';
2
+ import type { FriendbuyAPI } from '../types';
3
+ import type { Settings } from '../generated-types';
4
+ import type { Payload } from './generated-types';
5
+ export declare const trackCustomerDefaultSubscription = "type = \"identify\"";
6
+ declare const action: BrowserActionDefinition<Settings, FriendbuyAPI, Payload>;
7
+ export default action;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.trackCustomerDefaultSubscription = void 0;
4
+ const actions_shared_1 = require("@segment/actions-shared");
5
+ const actions_shared_2 = require("@segment/actions-shared");
6
+ const actions_shared_3 = require("@segment/actions-shared");
7
+ exports.trackCustomerDefaultSubscription = 'type = "identify"';
8
+ const trackCustomerPub = {
9
+ fields: {
10
+ customerId: { name: 'id', convert: actions_shared_3.enjoinString },
11
+ anonymousID: actions_shared_1.COPY,
12
+ email: actions_shared_1.COPY,
13
+ isNewCustomer: actions_shared_1.COPY,
14
+ loyaltyStatus: actions_shared_1.COPY,
15
+ firstName: actions_shared_1.COPY,
16
+ lastName: actions_shared_1.COPY,
17
+ name: actions_shared_1.COPY,
18
+ age: { convert: actions_shared_3.enjoinInteger },
19
+ birthday: { convert: actions_shared_3.parseDate },
20
+ language: actions_shared_1.COPY,
21
+ addressCountry: { name: 'country' },
22
+ addressState: { name: 'state' },
23
+ addressCity: { name: 'city' },
24
+ addressPostalCode: { name: 'zipCode', convert: actions_shared_3.enjoinString }
25
+ },
26
+ unmappedFieldObject: actions_shared_1.ROOT
27
+ };
28
+ const action = {
29
+ title: 'Track Customer',
30
+ description: 'Create a new customer profile or update an existing customer profile.',
31
+ defaultSubscription: exports.trackCustomerDefaultSubscription,
32
+ platform: 'web',
33
+ fields: actions_shared_2.trackCustomerFields,
34
+ perform: (friendbuyAPI, { payload }) => {
35
+ actions_shared_3.addName(payload);
36
+ const friendbuyPayload = actions_shared_1.mapEvent(trackCustomerPub, payload);
37
+ friendbuyAPI.push(['track', 'customer', friendbuyPayload, true]);
38
+ }
39
+ };
40
+ exports.default = action;
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/trackCustomer/index.ts"],"names":[],"mappings":";;;AAOA,4DAA8D;AAC9D,4DAA6D;AAC7D,4DAAyF;AAG5E,QAAA,gCAAgC,GAAG,mBAAmB,CAAA;AAEnE,MAAM,gBAAgB,GAAa;IACjC,MAAM,EAAE;QACN,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,6BAA0B,EAAE;QAC/D,WAAW,EAAE,qBAAI;QACjB,KAAK,EAAE,qBAAI;QACX,aAAa,EAAE,qBAAI;QACnB,aAAa,EAAE,qBAAI;QACnB,SAAS,EAAE,qBAAI;QACf,QAAQ,EAAE,qBAAI;QACd,IAAI,EAAE,qBAAI;QACV,GAAG,EAAE,EAAE,OAAO,EAAE,8BAA2B,EAAE;QAE7C,QAAQ,EAAE,EAAE,OAAO,EAAE,0BAAuB,EAAE;QAC9C,QAAQ,EAAE,qBAAI;QACd,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QACnC,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC/B,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QAC7B,iBAAiB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,6BAA0B,EAAE;KAC5E;IACD,mBAAmB,EAAE,qBAAI;CAC1B,CAAA;AAED,MAAM,MAAM,GAA6D;IACvE,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,uEAAuE;IACpF,mBAAmB,EAAE,wCAAgC;IACrD,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,oCAAmB;IAE3B,OAAO,EAAE,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,wBAAO,CAAC,OAAO,CAAC,CAAA;QAChB,MAAM,gBAAgB,GAAG,yBAAQ,CAAC,gBAAgB,EAAE,OAAsC,CAAC,CAAA;QAC3F,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAA;IAClE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,5 @@
1
+ export interface Payload {
2
+ name?: string;
3
+ category?: string;
4
+ title?: string;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/trackPage/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import type { InputField } from '@segment/actions-core';
2
+ import type { BrowserActionDefinition } from '@segment/browser-destination-runtime/types';
3
+ import type { FriendbuyAPI } from '../types';
4
+ import type { Settings } from '../generated-types';
5
+ import type { Payload } from './generated-types';
6
+ export declare const trackPageDefaultSubscription = "type = \"page\"";
7
+ export declare const trackPageFields: Record<string, InputField>;
8
+ declare const action: BrowserActionDefinition<Settings, FriendbuyAPI, Payload>;
9
+ export default action;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.trackPageFields = exports.trackPageDefaultSubscription = void 0;
4
+ const actions_shared_1 = require("@segment/actions-shared");
5
+ exports.trackPageDefaultSubscription = 'type = "page"';
6
+ exports.trackPageFields = {
7
+ name: {
8
+ label: 'Page Name',
9
+ description: 'The page name.',
10
+ type: 'string',
11
+ required: false,
12
+ default: { '@path': '$.name' }
13
+ },
14
+ category: {
15
+ label: 'Page Category',
16
+ description: 'The page category.',
17
+ type: 'string',
18
+ required: false,
19
+ default: { '@path': '$.category' }
20
+ },
21
+ title: {
22
+ label: 'Page Title',
23
+ description: 'The page title.',
24
+ type: 'string',
25
+ required: false,
26
+ default: { '@path': '$.properties.title' }
27
+ }
28
+ };
29
+ const action = {
30
+ title: 'Track Page',
31
+ description: 'Record when a customer visits a new page. Allow Friendbuy widget targeting by Page Name instead of URL.',
32
+ defaultSubscription: exports.trackPageDefaultSubscription,
33
+ platform: 'web',
34
+ fields: exports.trackPageFields,
35
+ perform: (friendbuyAPI, data) => {
36
+ const friendbuyPayload = actions_shared_1.createFriendbuyPayload([
37
+ ['name', data.payload.name || 'undefined'],
38
+ ['category', data.payload.category],
39
+ ['title', data.payload.title]
40
+ ]);
41
+ friendbuyAPI.push(['track', 'page', friendbuyPayload, true]);
42
+ }
43
+ };
44
+ exports.default = action;
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/trackPage/index.ts"],"names":[],"mappings":";;;AAMA,4DAAgE;AAEnD,QAAA,4BAA4B,GAAG,eAAe,CAAA;AAG9C,QAAA,eAAe,GAA+B;IACzD,IAAI,EAAE;QACJ,KAAK,EAAE,WAAW;QAClB,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;KAC/B;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,oBAAoB;QACjC,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE;KACnC;IACD,KAAK,EAAE;QACL,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,iBAAiB;QAC9B,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;KAC3C;CACF,CAAA;AAED,MAAM,MAAM,GAA6D;IACvE,KAAK,EAAE,YAAY;IACnB,WAAW,EACT,yGAAyG;IAC3G,mBAAmB,EAAE,oCAA4B;IACjD,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,uBAAe;IAEvB,OAAO,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE;QAK9B,MAAM,gBAAgB,GAAG,uCAAsB,CAAC;YAC9C,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC;YAC1C,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACnC,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;SAC9B,CAAC,CAAA;QACF,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAA;IAC9D,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,32 @@
1
+ export interface Payload {
2
+ orderId: string;
3
+ amount: number;
4
+ currency: string;
5
+ coupon?: string;
6
+ attributionId?: string;
7
+ referralCode?: string;
8
+ giftCardCodes?: string[];
9
+ products?: {
10
+ sku?: string;
11
+ name?: string;
12
+ quantity?: number;
13
+ price: number;
14
+ description?: string;
15
+ category?: string;
16
+ url?: string;
17
+ image_url?: string;
18
+ }[];
19
+ customerId?: string;
20
+ anonymousId?: string;
21
+ email?: string;
22
+ isNewCustomer?: boolean;
23
+ loyaltyStatus?: string;
24
+ firstName?: string;
25
+ lastName?: string;
26
+ name?: string;
27
+ age?: number;
28
+ birthday?: string;
29
+ friendbuyAttributes?: {
30
+ [k: string]: unknown;
31
+ };
32
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/trackPurchase/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import type { BrowserActionDefinition } from '@segment/browser-destination-runtime/types';
2
+ import type { FriendbuyAPI } from '../types';
3
+ import type { Settings } from '../generated-types';
4
+ import type { Payload } from './generated-types';
5
+ export declare const browserTrackPurchaseFields: Record<string, import("@segment/actions-core/destination-kittypes").InputField>;
6
+ export declare const trackPurchaseDefaultSubscription = "event = \"Order Completed\"";
7
+ declare const action: BrowserActionDefinition<Settings, FriendbuyAPI, Payload>;
8
+ export default action;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.trackPurchaseDefaultSubscription = exports.browserTrackPurchaseFields = void 0;
4
+ const actions_shared_1 = require("@segment/actions-shared");
5
+ const actions_shared_2 = require("@segment/actions-shared");
6
+ const actions_shared_3 = require("@segment/actions-shared");
7
+ exports.browserTrackPurchaseFields = actions_shared_2.trackPurchaseFields({});
8
+ exports.trackPurchaseDefaultSubscription = 'event = "Order Completed"';
9
+ const trackPurchasePub = {
10
+ fields: {
11
+ orderId: { name: 'id', convert: actions_shared_3.enjoinString },
12
+ amount: { convert: actions_shared_3.enjoinNumber },
13
+ currency: actions_shared_1.COPY,
14
+ coupon: { name: 'couponCode' },
15
+ attributionId: actions_shared_1.COPY,
16
+ referralCode: actions_shared_1.COPY,
17
+ giftCardCodes: {
18
+ type: 'array'
19
+ },
20
+ products: {
21
+ type: 'array',
22
+ defaultObject: { sku: 'unknown', name: 'unknown', quantity: 1 },
23
+ fields: {
24
+ sku: { convert: actions_shared_3.enjoinString },
25
+ name: actions_shared_1.COPY,
26
+ quantity: { convert: actions_shared_3.enjoinInteger },
27
+ price: { convert: actions_shared_3.enjoinNumber },
28
+ description: actions_shared_1.COPY,
29
+ category: actions_shared_1.COPY,
30
+ url: actions_shared_1.COPY,
31
+ image_url: { name: 'imageUrl' }
32
+ }
33
+ },
34
+ customerId: { name: ['customer', 'id'], convert: actions_shared_3.enjoinString },
35
+ anonymousId: { name: ['customer', 'anonymousId'] },
36
+ email: { name: ['customer', 'email'] },
37
+ isNewCustomer: { name: ['customer', 'isNewCustomer'] },
38
+ loyaltyStatus: { name: ['customer', 'loyaltyStatus'] },
39
+ firstName: { name: ['customer', 'firstName'] },
40
+ lastName: { name: ['customer', 'lastName'] },
41
+ name: { name: ['customer', 'name'] },
42
+ age: { name: ['customer', 'age'], convert: actions_shared_3.enjoinInteger },
43
+ birthday: { name: ['customer', 'birthday'], convert: actions_shared_3.parseDate }
44
+ },
45
+ unmappedFieldObject: actions_shared_1.ROOT,
46
+ finalize: actions_shared_3.removeCustomerIfNoId
47
+ };
48
+ const action = {
49
+ title: 'Track Purchase',
50
+ description: 'Record when a customer makes a purchase.',
51
+ defaultSubscription: exports.trackPurchaseDefaultSubscription,
52
+ platform: 'web',
53
+ fields: exports.browserTrackPurchaseFields,
54
+ perform: (friendbuyAPI, { payload }) => {
55
+ actions_shared_3.addName(payload);
56
+ const friendbuyPayload = actions_shared_1.mapEvent(trackPurchasePub, payload);
57
+ friendbuyAPI.push(['track', 'purchase', friendbuyPayload, true]);
58
+ }
59
+ };
60
+ exports.default = action;
61
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/trackPurchase/index.ts"],"names":[],"mappings":";;;AAOA,4DAA8D;AAC9D,4DAA6D;AAC7D,4DAOgC;AAEnB,QAAA,0BAA0B,GAAG,oCAAmB,CAAC,EAAE,CAAC,CAAA;AAGpD,QAAA,gCAAgC,GAAG,2BAA2B,CAAA;AAE3E,MAAM,gBAAgB,GAAa;IACjC,MAAM,EAAE;QACN,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,6BAA0B,EAAE;QAC5D,MAAM,EAAE,EAAE,OAAO,EAAE,6BAA0B,EAAE;QAC/C,QAAQ,EAAE,qBAAI;QACd,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;QAC9B,aAAa,EAAE,qBAAI;QACnB,YAAY,EAAE,qBAAI;QAClB,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;SACd;QAED,QAAQ,EAAE;YACR,IAAI,EAAE,OAAO;YACb,aAAa,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,EAAE;YAC/D,MAAM,EAAE;gBACN,GAAG,EAAE,EAAE,OAAO,EAAE,6BAA0B,EAAE;gBAC5C,IAAI,EAAE,qBAAI;gBACV,QAAQ,EAAE,EAAE,OAAO,EAAE,8BAA2B,EAAE;gBAClD,KAAK,EAAE,EAAE,OAAO,EAAE,6BAA0B,EAAE;gBAC9C,WAAW,EAAE,qBAAI;gBACjB,QAAQ,EAAE,qBAAI;gBACd,GAAG,EAAE,qBAAI;gBACT,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;aAChC;SACF;QAGD,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,6BAA0B,EAAE;QAC7E,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE;QAClD,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE;QACtC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE;QACtD,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC,EAAE;QACtD,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE;QAC9C,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;QAC5C,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE;QACpC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,8BAA2B,EAAE;QAExE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,0BAAuB,EAAE;KAC/E;IACD,mBAAmB,EAAE,qBAAI;IAIzB,QAAQ,EAAE,qCAAoB;CAC/B,CAAA;AAED,MAAM,MAAM,GAA6D;IACvE,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,0CAA0C;IACvD,mBAAmB,EAAE,wCAAgC;IACrD,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,kCAA0B;IAElC,OAAO,EAAE,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,wBAAO,CAAC,OAAO,CAAC,CAAA;QAChB,MAAM,gBAAgB,GAAG,yBAAQ,CAAC,gBAAgB,EAAE,OAAsC,CAAC,CAAA;QAC3F,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAA;IAClE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,18 @@
1
+ export interface Payload {
2
+ customerId: string;
3
+ anonymousId?: string;
4
+ email: string;
5
+ isNewCustomer?: boolean;
6
+ loyaltyStatus?: string;
7
+ firstName?: string;
8
+ lastName?: string;
9
+ name?: string;
10
+ age?: number;
11
+ birthday?: string;
12
+ coupon?: string;
13
+ attributionId?: string;
14
+ referralCode?: string;
15
+ friendbuyAttributes?: {
16
+ [k: string]: unknown;
17
+ };
18
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../src/trackSignUp/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import type { BrowserActionDefinition } from '@segment/browser-destination-runtime/types';
2
+ import type { FriendbuyAPI } from '../types';
3
+ import type { Settings } from '../generated-types';
4
+ import type { Payload } from './generated-types';
5
+ export declare const browserTrackSignUpFields: Record<string, import("@segment/actions-core/destination-kittypes").InputField>;
6
+ export declare const trackSignUpDefaultSubscription = "event = \"Signed Up\"";
7
+ declare const action: BrowserActionDefinition<Settings, FriendbuyAPI, Payload>;
8
+ export default action;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.trackSignUpDefaultSubscription = exports.browserTrackSignUpFields = void 0;
4
+ const actions_shared_1 = require("@segment/actions-shared");
5
+ const actions_shared_2 = require("@segment/actions-shared");
6
+ const actions_shared_3 = require("@segment/actions-shared");
7
+ exports.browserTrackSignUpFields = actions_shared_2.trackSignUpFields({ requireCustomerId: true, requireEmail: true });
8
+ exports.trackSignUpDefaultSubscription = 'event = "Signed Up"';
9
+ const trackSignUpPub = {
10
+ fields: {
11
+ coupon: { name: 'couponCode' },
12
+ attributionId: actions_shared_1.COPY,
13
+ referralCode: actions_shared_1.COPY,
14
+ customerId: { name: 'id', convert: actions_shared_3.enjoinString },
15
+ anonymousID: actions_shared_1.COPY,
16
+ isNewCustomer: actions_shared_1.COPY,
17
+ loyaltyStatus: actions_shared_1.COPY,
18
+ email: actions_shared_1.COPY,
19
+ firstName: actions_shared_1.COPY,
20
+ lastName: actions_shared_1.COPY,
21
+ name: actions_shared_1.COPY,
22
+ age: { convert: actions_shared_3.enjoinInteger },
23
+ birthday: { convert: actions_shared_3.parseDate }
24
+ },
25
+ unmappedFieldObject: actions_shared_1.ROOT
26
+ };
27
+ const action = {
28
+ title: 'Track Sign Up',
29
+ description: 'Record when a customer signs up for a service.',
30
+ defaultSubscription: exports.trackSignUpDefaultSubscription,
31
+ platform: 'web',
32
+ fields: exports.browserTrackSignUpFields,
33
+ perform: (friendbuyAPI, { payload }) => {
34
+ actions_shared_3.addName(payload);
35
+ const friendbuyPayload = actions_shared_1.mapEvent(trackSignUpPub, payload);
36
+ friendbuyAPI.push(['track', 'sign_up', friendbuyPayload, true]);
37
+ }
38
+ };
39
+ exports.default = action;
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/trackSignUp/index.ts"],"names":[],"mappings":";;;AAOA,4DAA8D;AAC9D,4DAA2D;AAC3D,4DAAyF;AAE5E,QAAA,wBAAwB,GAAG,kCAAiB,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAA;AAG7F,QAAA,8BAA8B,GAAG,qBAAqB,CAAA;AAEnE,MAAM,cAAc,GAAa;IAC/B,MAAM,EAAE;QACN,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;QAC9B,aAAa,EAAE,qBAAI;QACnB,YAAY,EAAE,qBAAI;QAGlB,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,6BAA0B,EAAE;QAC/D,WAAW,EAAE,qBAAI;QACjB,aAAa,EAAE,qBAAI;QACnB,aAAa,EAAE,qBAAI;QACnB,KAAK,EAAE,qBAAI;QACX,SAAS,EAAE,qBAAI;QACf,QAAQ,EAAE,qBAAI;QACd,IAAI,EAAE,qBAAI;QACV,GAAG,EAAE,EAAE,OAAO,EAAE,8BAA2B,EAAE;QAC7C,QAAQ,EAAE,EAAE,OAAO,EAAE,0BAAuB,EAAE;KAC/C;IACD,mBAAmB,EAAE,qBAAI;CAC1B,CAAA;AAED,MAAM,MAAM,GAA6D;IACvE,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,gDAAgD;IAC7D,mBAAmB,EAAE,sCAA8B;IACnD,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,gCAAwB;IAEhC,OAAO,EAAE,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,wBAAO,CAAC,OAAO,CAAC,CAAA;QAChB,MAAM,gBAAgB,GAAG,yBAAQ,CAAC,cAAc,EAAE,OAAsC,CAAC,CAAA;QACzF,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAA;IACjE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,3 @@
1
+ export interface FriendbuyAPI extends Array<unknown> {
2
+ merchantId: string;
3
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export interface Settings {
2
+ merchantId: string;
3
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../src/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import type { BrowserDestinationDefinition } from '@segment/browser-destination-runtime/types';
2
+ import type { Settings } from './generated-types';
3
+ import type { FriendbuyAPI } from './types';
4
+ declare global {
5
+ interface Window {
6
+ friendbuyAPI?: FriendbuyAPI;
7
+ friendbuyBaseHost?: string;
8
+ }
9
+ }
10
+ export declare const destination: BrowserDestinationDefinition<Settings, FriendbuyAPI>;
11
+ declare const _default: import("@segment/browser-destination-runtime/types").PluginFactory;
12
+ export default _default;