@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.
- package/.eslintcache +1 -0
- package/dist/cjs/generated-types.d.ts +3 -0
- package/dist/cjs/generated-types.js +3 -0
- package/dist/cjs/generated-types.js.map +1 -0
- package/dist/cjs/index.d.ts +12 -0
- package/dist/cjs/index.js +72 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/trackCustomEvent/generated-types.d.ts +10 -0
- package/dist/cjs/trackCustomEvent/generated-types.js +3 -0
- package/dist/cjs/trackCustomEvent/generated-types.js.map +1 -0
- package/dist/cjs/trackCustomEvent/index.d.ts +7 -0
- package/dist/cjs/trackCustomEvent/index.js +38 -0
- package/dist/cjs/trackCustomEvent/index.js.map +1 -0
- package/dist/cjs/trackCustomer/generated-types.d.ts +21 -0
- package/dist/cjs/trackCustomer/generated-types.js +3 -0
- package/dist/cjs/trackCustomer/generated-types.js.map +1 -0
- package/dist/cjs/trackCustomer/index.d.ts +7 -0
- package/dist/cjs/trackCustomer/index.js +41 -0
- package/dist/cjs/trackCustomer/index.js.map +1 -0
- package/dist/cjs/trackPage/generated-types.d.ts +5 -0
- package/dist/cjs/trackPage/generated-types.js +3 -0
- package/dist/cjs/trackPage/generated-types.js.map +1 -0
- package/dist/cjs/trackPage/index.d.ts +9 -0
- package/dist/cjs/trackPage/index.js +45 -0
- package/dist/cjs/trackPage/index.js.map +1 -0
- package/dist/cjs/trackPurchase/generated-types.d.ts +32 -0
- package/dist/cjs/trackPurchase/generated-types.js +3 -0
- package/dist/cjs/trackPurchase/generated-types.js.map +1 -0
- package/dist/cjs/trackPurchase/index.d.ts +8 -0
- package/dist/cjs/trackPurchase/index.js +61 -0
- package/dist/cjs/trackPurchase/index.js.map +1 -0
- package/dist/cjs/trackSignUp/generated-types.d.ts +18 -0
- package/dist/cjs/trackSignUp/generated-types.js +3 -0
- package/dist/cjs/trackSignUp/generated-types.js.map +1 -0
- package/dist/cjs/trackSignUp/index.d.ts +8 -0
- package/dist/cjs/trackSignUp/index.js +40 -0
- package/dist/cjs/trackSignUp/index.js.map +1 -0
- package/dist/cjs/types.d.ts +3 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/generated-types.d.ts +3 -0
- package/dist/esm/generated-types.js +2 -0
- package/dist/esm/generated-types.js.map +1 -0
- package/dist/esm/index.d.ts +12 -0
- package/dist/esm/index.js +68 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/trackCustomEvent/generated-types.d.ts +10 -0
- package/dist/esm/trackCustomEvent/generated-types.js +2 -0
- package/dist/esm/trackCustomEvent/generated-types.js.map +1 -0
- package/dist/esm/trackCustomEvent/index.d.ts +7 -0
- package/dist/esm/trackCustomEvent/index.js +35 -0
- package/dist/esm/trackCustomEvent/index.js.map +1 -0
- package/dist/esm/trackCustomer/generated-types.d.ts +21 -0
- package/dist/esm/trackCustomer/generated-types.js +2 -0
- package/dist/esm/trackCustomer/generated-types.js.map +1 -0
- package/dist/esm/trackCustomer/index.d.ts +7 -0
- package/dist/esm/trackCustomer/index.js +38 -0
- package/dist/esm/trackCustomer/index.js.map +1 -0
- package/dist/esm/trackPage/generated-types.d.ts +5 -0
- package/dist/esm/trackPage/generated-types.js +2 -0
- package/dist/esm/trackPage/generated-types.js.map +1 -0
- package/dist/esm/trackPage/index.d.ts +9 -0
- package/dist/esm/trackPage/index.js +42 -0
- package/dist/esm/trackPage/index.js.map +1 -0
- package/dist/esm/trackPurchase/generated-types.d.ts +32 -0
- package/dist/esm/trackPurchase/generated-types.js +2 -0
- package/dist/esm/trackPurchase/generated-types.js.map +1 -0
- package/dist/esm/trackPurchase/index.d.ts +8 -0
- package/dist/esm/trackPurchase/index.js +58 -0
- package/dist/esm/trackPurchase/index.js.map +1 -0
- package/dist/esm/trackSignUp/generated-types.d.ts +18 -0
- package/dist/esm/trackSignUp/generated-types.js +2 -0
- package/dist/esm/trackSignUp/generated-types.js.map +1 -0
- package/dist/esm/trackSignUp/index.d.ts +8 -0
- package/dist/esm/trackSignUp/index.js +37 -0
- package/dist/esm/trackSignUp/index.js.map +1 -0
- package/dist/esm/types.d.ts +3 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- 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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -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;
|