@segment/analytics-browser-actions-facebook-conversions-api-web 1.0.1-staging-0104ee0bb.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/README.md +31 -0
  2. package/dist/cjs/generated-types.d.ts +5 -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 +11 -0
  6. package/dist/cjs/index.js +191 -0
  7. package/dist/cjs/index.js.map +1 -0
  8. package/dist/cjs/init-script.d.ts +2 -0
  9. package/dist/cjs/init-script.js +41 -0
  10. package/dist/cjs/init-script.js.map +1 -0
  11. package/dist/cjs/send/constants.d.ts +3 -0
  12. package/dist/cjs/send/constants.js +484 -0
  13. package/dist/cjs/send/constants.js.map +1 -0
  14. package/dist/cjs/send/depends-on.d.ts +5 -0
  15. package/dist/cjs/send/depends-on.js +46 -0
  16. package/dist/cjs/send/depends-on.js.map +1 -0
  17. package/dist/cjs/send/fields.d.ts +39 -0
  18. package/dist/cjs/send/fields.js +383 -0
  19. package/dist/cjs/send/fields.js.map +1 -0
  20. package/dist/cjs/send/generated-types.d.ts +43 -0
  21. package/dist/cjs/send/generated-types.js +3 -0
  22. package/dist/cjs/send/generated-types.js.map +1 -0
  23. package/dist/cjs/send/index.d.ts +6 -0
  24. package/dist/cjs/send/index.js +37 -0
  25. package/dist/cjs/send/index.js.map +1 -0
  26. package/dist/cjs/send/utils.d.ts +8 -0
  27. package/dist/cjs/send/utils.js +79 -0
  28. package/dist/cjs/send/utils.js.map +1 -0
  29. package/dist/cjs/send/validate.d.ts +2 -0
  30. package/dist/cjs/send/validate.js +12 -0
  31. package/dist/cjs/send/validate.js.map +1 -0
  32. package/dist/cjs/types.d.ts +132 -0
  33. package/dist/cjs/types.js +30 -0
  34. package/dist/cjs/types.js.map +1 -0
  35. package/dist/esm/generated-types.d.ts +5 -0
  36. package/dist/esm/generated-types.js +2 -0
  37. package/dist/esm/generated-types.js.map +1 -0
  38. package/dist/esm/index.d.ts +11 -0
  39. package/dist/esm/index.js +187 -0
  40. package/dist/esm/index.js.map +1 -0
  41. package/dist/esm/init-script.d.ts +2 -0
  42. package/dist/esm/init-script.js +38 -0
  43. package/dist/esm/init-script.js.map +1 -0
  44. package/dist/esm/send/constants.d.ts +3 -0
  45. package/dist/esm/send/constants.js +481 -0
  46. package/dist/esm/send/constants.js.map +1 -0
  47. package/dist/esm/send/depends-on.d.ts +5 -0
  48. package/dist/esm/send/depends-on.js +41 -0
  49. package/dist/esm/send/depends-on.js.map +1 -0
  50. package/dist/esm/send/fields.d.ts +39 -0
  51. package/dist/esm/send/fields.js +380 -0
  52. package/dist/esm/send/fields.js.map +1 -0
  53. package/dist/esm/send/generated-types.d.ts +43 -0
  54. package/dist/esm/send/generated-types.js +2 -0
  55. package/dist/esm/send/generated-types.js.map +1 -0
  56. package/dist/esm/send/index.d.ts +6 -0
  57. package/dist/esm/send/index.js +35 -0
  58. package/dist/esm/send/index.js.map +1 -0
  59. package/dist/esm/send/utils.d.ts +8 -0
  60. package/dist/esm/send/utils.js +74 -0
  61. package/dist/esm/send/utils.js.map +1 -0
  62. package/dist/esm/send/validate.d.ts +2 -0
  63. package/dist/esm/send/validate.js +9 -0
  64. package/dist/esm/send/validate.js.map +1 -0
  65. package/dist/esm/types.d.ts +132 -0
  66. package/dist/esm/types.js +27 -0
  67. package/dist/esm/types.js.map +1 -0
  68. package/dist/tsconfig.tsbuildinfo +1 -0
  69. package/package.json +25 -0
  70. package/src/generated-types.ts +16 -0
  71. package/src/index.ts +205 -0
  72. package/src/init-script.ts +40 -0
  73. package/src/send/constants.ts +482 -0
  74. package/src/send/depends-on.ts +47 -0
  75. package/src/send/fields.ts +400 -0
  76. package/src/send/generated-types.ts +150 -0
  77. package/src/send/index.ts +64 -0
  78. package/src/send/utils.ts +90 -0
  79. package/src/send/validate.ts +15 -0
  80. package/src/types.ts +117 -0
  81. package/tsconfig.json +9 -0
@@ -0,0 +1,132 @@
1
+ export type FBStandardEventType = 'PageView' | 'ViewContent' | 'Search' | 'AddToCart' | 'AddToWishlist' | 'InitiateCheckout' | 'AddPaymentInfo' | 'Purchase' | 'Lead' | 'CompleteRegistration' | 'Contact' | 'CustomizeProduct' | 'Donate' | 'FindLocation' | 'Schedule' | 'StartTrial' | 'SubmitApplication' | 'Subscribe';
2
+ export type FBNonStandardEventType = 'CustomEvent';
3
+ export type FieldName = 'content_category' | 'content_ids' | 'content_name' | 'content_type' | 'contents' | 'currency' | 'num_items' | 'predicted_ltv' | 'status' | 'value';
4
+ export type FBClient = {
5
+ (command: 'init', pixelId: string): void;
6
+ (command: 'trackSingle', pixelId: string, event: FBStandardEventType, params?: FBEvent, options?: Options): void;
7
+ (command: 'trackSingleCustom', pixelId: string, event: string, params?: FBEvent, options?: Options): void;
8
+ (command: 'track', event: FBStandardEventType, params?: FBEvent): void;
9
+ (command: 'trackCustom', event: string, params?: FBEvent): void;
10
+ };
11
+ export type FBEvent = {
12
+ content_category?: string;
13
+ content_ids?: string[];
14
+ content_name?: string;
15
+ content_type?: string;
16
+ contents?: {
17
+ id: string;
18
+ quantity: number;
19
+ item_price?: number;
20
+ [k: string]: unknown;
21
+ }[];
22
+ currency?: string;
23
+ delivery_category?: string;
24
+ num_items?: number;
25
+ value?: number;
26
+ custom_data?: {
27
+ [k: string]: unknown;
28
+ };
29
+ };
30
+ export declare const ACTION_SOURCES: {
31
+ readonly email: "email";
32
+ readonly website: "website";
33
+ readonly app: "app";
34
+ readonly phone_call: "phone_call";
35
+ readonly chat: "chat";
36
+ readonly physical_store: "physical_store";
37
+ readonly system_generated: "system_generated";
38
+ readonly other: "other";
39
+ };
40
+ export type ActionSource = typeof ACTION_SOURCES[keyof typeof ACTION_SOURCES];
41
+ export type Options = {
42
+ eventID?: string;
43
+ eventSourceUrl?: string;
44
+ userData?: UserData;
45
+ actionSource?: ActionSource;
46
+ };
47
+ export type UserData = {
48
+ external_id?: string;
49
+ em?: string;
50
+ ph?: string;
51
+ fn?: string;
52
+ ln?: string;
53
+ ge?: string;
54
+ db?: string;
55
+ ct?: string;
56
+ st?: string;
57
+ zp?: string;
58
+ country?: string;
59
+ };
60
+ export declare const LDU: {
61
+ readonly Disabled: {
62
+ readonly key: "Disabled";
63
+ readonly state: undefined;
64
+ readonly country: undefined;
65
+ };
66
+ readonly GeolocationLogic: {
67
+ readonly key: "GeolocationLogic";
68
+ readonly state: 0;
69
+ readonly country: 0;
70
+ };
71
+ readonly California: {
72
+ readonly key: "California";
73
+ readonly state: 1000;
74
+ readonly country: 1;
75
+ };
76
+ readonly Colorado: {
77
+ readonly key: "Colorado";
78
+ readonly state: 1001;
79
+ readonly country: 1;
80
+ };
81
+ readonly Connecticut: {
82
+ readonly key: "Connecticut";
83
+ readonly state: 1002;
84
+ readonly country: 1;
85
+ };
86
+ readonly Florida: {
87
+ readonly key: "Florida";
88
+ readonly state: 1003;
89
+ readonly country: 1;
90
+ };
91
+ readonly Oregon: {
92
+ readonly key: "Oregon";
93
+ readonly state: 1004;
94
+ readonly country: 1;
95
+ };
96
+ readonly Texas: {
97
+ readonly key: "Texas";
98
+ readonly state: 1005;
99
+ readonly country: 1;
100
+ };
101
+ readonly Montana: {
102
+ readonly key: "Montana";
103
+ readonly state: 1006;
104
+ readonly country: 1;
105
+ };
106
+ readonly Delaware: {
107
+ readonly key: "Delaware";
108
+ readonly state: 1007;
109
+ readonly country: 1;
110
+ };
111
+ readonly Nebraska: {
112
+ readonly key: "Nebraska";
113
+ readonly state: 1008;
114
+ readonly country: 1;
115
+ };
116
+ readonly NewHampshire: {
117
+ readonly key: "NewHampshire";
118
+ readonly state: 1009;
119
+ readonly country: 1;
120
+ };
121
+ readonly NewJersey: {
122
+ readonly key: "NewJersey";
123
+ readonly state: 1010;
124
+ readonly country: 1;
125
+ };
126
+ readonly Minnesota: {
127
+ readonly key: "Minnesota";
128
+ readonly state: 1011;
129
+ readonly country: 1;
130
+ };
131
+ };
132
+ export type LDU = typeof LDU[keyof typeof LDU];
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LDU = exports.ACTION_SOURCES = void 0;
4
+ exports.ACTION_SOURCES = {
5
+ email: 'email',
6
+ website: 'website',
7
+ app: 'app',
8
+ phone_call: 'phone_call',
9
+ chat: 'chat',
10
+ physical_store: 'physical_store',
11
+ system_generated: 'system_generated',
12
+ other: 'other'
13
+ };
14
+ exports.LDU = {
15
+ Disabled: { key: 'Disabled', state: undefined, country: undefined },
16
+ GeolocationLogic: { key: 'GeolocationLogic', state: 0, country: 0 },
17
+ California: { key: 'California', state: 1000, country: 1 },
18
+ Colorado: { key: 'Colorado', state: 1001, country: 1 },
19
+ Connecticut: { key: 'Connecticut', state: 1002, country: 1 },
20
+ Florida: { key: 'Florida', state: 1003, country: 1 },
21
+ Oregon: { key: 'Oregon', state: 1004, country: 1 },
22
+ Texas: { key: 'Texas', state: 1005, country: 1 },
23
+ Montana: { key: 'Montana', state: 1006, country: 1 },
24
+ Delaware: { key: 'Delaware', state: 1007, country: 1 },
25
+ Nebraska: { key: 'Nebraska', state: 1008, country: 1 },
26
+ NewHampshire: { key: 'NewHampshire', state: 1009, country: 1 },
27
+ NewJersey: { key: 'NewJersey', state: 1010, country: 1 },
28
+ Minnesota: { key: 'Minnesota', state: 1011, country: 1 }
29
+ };
30
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AA+Da,QAAA,cAAc,GAAG;IAC5B,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;IAClB,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,MAAM;IACZ,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,KAAK,EAAE,OAAO;CACN,CAAA;AA2BG,QAAA,GAAG,GAAG;IACjB,QAAQ,EAAE,EAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAC;IACjE,gBAAgB,EAAE,EAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC;IACjE,UAAU,EAAE,EAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IACxD,QAAQ,EAAE,EAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IACpD,WAAW,EAAE,EAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IAC1D,OAAO,EAAE,EAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IAClD,MAAM,EAAE,EAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IAChD,KAAK,EAAE,EAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IAC9C,OAAO,EAAE,EAAC,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IAClD,QAAQ,EAAE,EAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IACpD,QAAQ,EAAE,EAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IACpD,YAAY,EAAE,EAAC,GAAG,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IAC5D,SAAS,EAAE,EAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;IACtD,SAAS,EAAE,EAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAC;CAC9C,CAAA"}
@@ -0,0 +1,5 @@
1
+ export interface Settings {
2
+ pixelId: string;
3
+ disablePushState?: boolean;
4
+ ldu: string;
5
+ }
@@ -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,11 @@
1
+ import type { Settings } from './generated-types';
2
+ import type { BrowserDestinationDefinition } from '@segment/browser-destination-runtime/types';
3
+ import { FBClient } from './types';
4
+ declare global {
5
+ interface Window {
6
+ fbq: FBClient;
7
+ }
8
+ }
9
+ export declare const destination: BrowserDestinationDefinition<Settings, FBClient>;
10
+ declare const _default: import("@segment/browser-destination-runtime/types").PluginFactory;
11
+ export default _default;
@@ -0,0 +1,187 @@
1
+ import { browserDestination } from '@segment/browser-destination-runtime/shim';
2
+ import send from './send';
3
+ import { initScript } from './init-script';
4
+ import { LDU } from './types';
5
+ import { defaultValues } from '@segment/actions-core';
6
+ export const destination = {
7
+ name: 'Facebook Conversions Api Web',
8
+ slug: 'actions-facebook-conversions-api-web',
9
+ mode: 'device',
10
+ description: 'Send events to Facebook Conversions API from the browser.',
11
+ settings: {
12
+ pixelId: {
13
+ description: 'The Pixel ID associated with your Facebook Pixel.',
14
+ label: 'Pixel ID',
15
+ type: 'string',
16
+ required: true
17
+ },
18
+ disablePushState: {
19
+ description: "If set to true, prevents Facebook Pixel from sending PageView events on history state changes. Set to true if you want to trigger PageView events manually via the pageView Action.",
20
+ label: 'Disable Push State',
21
+ type: 'boolean'
22
+ },
23
+ ldu: {
24
+ label: 'Limited Data User (LDU)',
25
+ description: 'Specify if and how Limited Data Use should apply.',
26
+ type: 'string',
27
+ required: true,
28
+ choices: [
29
+ { label: 'LDU disabled', value: LDU.Disabled.key },
30
+ { label: "LDU enabled - Use Meta Geolocation Logic", value: LDU.GeolocationLogic.key },
31
+ { label: 'LDU enabled - California only', value: LDU.California.key },
32
+ { label: 'LDU enabled - Colorado only', value: LDU.Colorado.key },
33
+ { label: 'LDU enabled - Connecticut only', value: LDU.Connecticut.key },
34
+ { label: 'LDU enabled - Florida only', value: LDU.Florida.key },
35
+ { label: 'LDU enabled - Oregon only', value: LDU.Oregon.key },
36
+ { label: 'LDU enabled - Texas only', value: LDU.Texas.key },
37
+ { label: 'LDU enabled - Montana only', value: LDU.Montana.key },
38
+ { label: 'LDU enabled - Delaware only', value: LDU.Delaware.key },
39
+ { label: 'LDU enabled - Nebraska only', value: LDU.Nebraska.key },
40
+ { label: 'LDU enabled - New Hampshire only', value: LDU.NewHampshire.key },
41
+ { label: 'LDU enabled - New Jersey only', value: LDU.NewJersey.key },
42
+ { label: 'LDU enabled - Minnesota only', value: LDU.Minnesota.key }
43
+ ],
44
+ default: LDU.Disabled.key
45
+ }
46
+ },
47
+ initialize: async ({ settings }, deps) => {
48
+ const { pixelId, disablePushState, ldu } = settings;
49
+ initScript(pixelId, ldu, disablePushState);
50
+ await deps.resolveWhen(() => typeof window.fbq === 'function', 100);
51
+ return window.fbq;
52
+ },
53
+ actions: {
54
+ send
55
+ },
56
+ presets: [
57
+ {
58
+ name: 'AddPaymentInfo',
59
+ subscribe: 'event = "Payment Info Entered"',
60
+ partnerAction: 'send',
61
+ mapping: {
62
+ ...defaultValues(send.fields),
63
+ event_config: {
64
+ event_name: 'AddPaymentInfo',
65
+ custom_event_name: null,
66
+ show_fields: false
67
+ }
68
+ },
69
+ type: 'automatic'
70
+ },
71
+ {
72
+ name: 'AddToCart',
73
+ subscribe: 'event = "Product Added"',
74
+ partnerAction: 'send',
75
+ mapping: {
76
+ ...defaultValues(send.fields),
77
+ event_config: {
78
+ event_name: 'AddToCart',
79
+ custom_event_name: null,
80
+ show_fields: false
81
+ },
82
+ content: {
83
+ id: { '@path': '$.properties.product_id' },
84
+ quantity: { '@path': '$.properties.quantity' },
85
+ item_price: { '@path': '$.properties.price' }
86
+ }
87
+ },
88
+ type: 'automatic'
89
+ },
90
+ {
91
+ name: 'AddToWishlist',
92
+ subscribe: 'event = "Product Added To Wishlist"',
93
+ partnerAction: 'send',
94
+ mapping: {
95
+ ...defaultValues(send.fields),
96
+ event_config: {
97
+ event_name: 'AddToWishlist',
98
+ custom_event_name: null,
99
+ show_fields: false
100
+ },
101
+ content: {
102
+ id: { '@path': '$.properties.product_id' },
103
+ quantity: { '@path': '$.properties.quantity' },
104
+ item_price: { '@path': '$.properties.price' }
105
+ }
106
+ },
107
+ type: 'automatic'
108
+ },
109
+ {
110
+ name: 'CompleteRegistration',
111
+ subscribe: 'event = "Signed Up"',
112
+ partnerAction: 'send',
113
+ mapping: {
114
+ ...defaultValues(send.fields),
115
+ event_config: {
116
+ event_name: 'CompleteRegistration',
117
+ custom_event_name: null,
118
+ show_fields: false
119
+ }
120
+ },
121
+ type: 'automatic'
122
+ },
123
+ {
124
+ name: 'InitiateCheckout',
125
+ subscribe: 'event = "Checkout Started"',
126
+ partnerAction: 'send',
127
+ mapping: {
128
+ ...defaultValues(send.fields),
129
+ event_config: {
130
+ event_name: 'InitiateCheckout',
131
+ custom_event_name: null,
132
+ show_fields: false
133
+ }
134
+ },
135
+ type: 'automatic'
136
+ },
137
+ {
138
+ name: 'Purchase',
139
+ subscribe: 'event = "Order Completed"',
140
+ partnerAction: 'send',
141
+ mapping: {
142
+ ...defaultValues(send.fields),
143
+ event_config: {
144
+ event_name: 'Purchase',
145
+ custom_event_name: null,
146
+ show_fields: false
147
+ }
148
+ },
149
+ type: 'automatic'
150
+ },
151
+ {
152
+ name: 'Search',
153
+ subscribe: 'event = "Products Searched"',
154
+ partnerAction: 'send',
155
+ mapping: {
156
+ ...defaultValues(send.fields),
157
+ event_config: {
158
+ event_name: 'Search',
159
+ custom_event_name: null,
160
+ show_fields: false
161
+ }
162
+ },
163
+ type: 'automatic'
164
+ },
165
+ {
166
+ name: 'ViewContent',
167
+ subscribe: 'event = "Product Viewed"',
168
+ partnerAction: 'send',
169
+ mapping: {
170
+ ...defaultValues(send.fields),
171
+ event_config: {
172
+ event_name: 'ViewContent',
173
+ custom_event_name: null,
174
+ show_fields: false
175
+ },
176
+ content: {
177
+ id: { '@path': '$.properties.product_id' },
178
+ quantity: { '@path': '$.properties.quantity' },
179
+ item_price: { '@path': '$.properties.price' }
180
+ }
181
+ },
182
+ type: 'automatic'
183
+ }
184
+ ]
185
+ };
186
+ export default browserDestination(destination);
187
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAA;AAC9E,OAAO,IAAI,MAAM,QAAQ,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAY,GAAG,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAQrD,MAAM,CAAC,MAAM,WAAW,GAAqD;IAC3E,IAAI,EAAE,8BAA8B;IACpC,IAAI,EAAE,sCAAsC;IAC5C,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,2DAA2D;IACxE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,WAAW,EAAE,mDAAmD;YAChE,KAAK,EAAE,UAAU;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACf;QACD,gBAAgB,EAAE;YAChB,WAAW,EAAE,qLAAqL;YAClM,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,SAAS;SAChB;QACD,GAAG,EAAE;YACH,KAAK,EAAE,yBAAyB;YAChC,WAAW,EAAE,mDAAmD;YAChE,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAC;gBACjD,EAAE,KAAK,EAAE,0CAA0C,EAAE,KAAK,EAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE;gBACtF,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE;gBACrE,EAAE,KAAK,EAAE,6BAA6B,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACjE,EAAE,KAAK,EAAE,gCAAgC,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE;gBACvE,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC/D,EAAE,KAAK,EAAE,2BAA2B,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE;gBAC7D,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC3D,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC/D,EAAE,KAAK,EAAE,6BAA6B,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACjE,EAAE,KAAK,EAAE,6BAA6B,EAAE,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACjE,EAAE,KAAK,EAAE,kCAAkC,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE;gBAC1E,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACpE,EAAE,KAAK,EAAE,8BAA8B,EAAE,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;aACpE;YACD,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG;SAC1B;KACF;IACD,UAAU,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE;QACvC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAA;QACnD,UAAU,CAAC,OAAO,EAAE,GAAuB,EAAE,gBAAgB,CAAC,CAAA;QAC9D,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU,EAAE,GAAG,CAAC,CAAA;QACnE,OAAO,MAAM,CAAC,GAAG,CAAA;IACnB,CAAC;IAED,OAAO,EAAE;QACP,IAAI;KACL;IACD,OAAO,EAAE;QACP;YACE,IAAI,EAAE,gBAAgB;YACtB,SAAS,EAAE,gCAAgC;YAC3C,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,gBAAgB;oBAC5B,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,yBAAyB;YACpC,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,WAAW;oBACvB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;gBACD,OAAO,EAAE;oBACP,EAAE,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC1C,QAAQ,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC9C,UAAU,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBAC9C;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,eAAe;YACrB,SAAS,EAAE,qCAAqC;YAChD,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,eAAe;oBAC3B,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;gBACD,OAAO,EAAE;oBACP,EAAE,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC1C,QAAQ,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC9C,UAAU,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBAC9C;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,SAAS,EAAE,qBAAqB;YAChC,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,sBAAsB;oBAClC,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,SAAS,EAAE,4BAA4B;YACvC,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,kBAAkB;oBAC9B,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,2BAA2B;YACtC,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,UAAU;oBACtB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,6BAA6B;YACxC,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,QAAQ;oBACpB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;aACF;YACD,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,aAAa;YACnB,SAAS,EAAE,0BAA0B;YACrC,aAAa,EAAE,MAAM;YACrB,OAAO,EACP;gBACE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,YAAY,EAAE;oBACZ,UAAU,EAAE,aAAa;oBACzB,iBAAiB,EAAE,IAAI;oBACvB,WAAW,EAAE,KAAK;iBACnB;gBACD,OAAO,EAAE;oBACP,EAAE,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC1C,QAAQ,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC9C,UAAU,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBAC9C;aACF;YACD,IAAI,EAAE,WAAW;SAClB;KACF;CACF,CAAA;AAED,eAAe,kBAAkB,CAAC,WAAW,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { LDU } from './types';
2
+ export declare function initScript(pixelId: string, ldu: keyof typeof LDU, disablePushState?: boolean): void;
@@ -0,0 +1,38 @@
1
+ import { LDU } from './types';
2
+ import { getLDU } from './send/utils';
3
+ export function initScript(pixelId, ldu, disablePushState) {
4
+ (function (f, b, e, v, n, t, s) {
5
+ if (f.fbq)
6
+ return;
7
+ n = f.fbq = function () {
8
+ n.callMethod ?
9
+ n.callMethod.apply(n, arguments) : n.queue.push(arguments);
10
+ };
11
+ if (!f._fbq)
12
+ f._fbq = n;
13
+ n.push = n;
14
+ n.loaded = true;
15
+ n.version = '2.0';
16
+ n.queue = [];
17
+ t = b.createElement(e);
18
+ t.async = true;
19
+ t.src = v;
20
+ s = b.getElementsByTagName(e)[0];
21
+ s.parentNode.insertBefore(t, s);
22
+ })(window, document, 'script', 'https://connect.facebook.net/en_US/fbevents.js');
23
+ if (ldu === LDU.Disabled.key) {
24
+ window.fbq('dataProcessingOptions', []);
25
+ }
26
+ else {
27
+ const lduObj = getLDU(ldu);
28
+ window.fbq('dataProcessingOptions', ['LDU'], lduObj.country, lduObj.state);
29
+ }
30
+ window.fbq('init', pixelId);
31
+ if (typeof disablePushState === 'boolean' && disablePushState === false) {
32
+ window.fbq.disablePushState = false;
33
+ }
34
+ else {
35
+ window.fbq('track', 'PageView');
36
+ }
37
+ }
38
+ //# sourceMappingURL=init-script.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-script.js","sourceRoot":"","sources":["../../src/init-script.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,UAAU,UAAU,CAAC,OAAe,EAAE,GAAqB,EAAE,gBAA0B;IAC3F,CAAC,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,GAAG;YAAE,OAAO;QAClB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG;YACV,CAAC,CAAC,UAAU,CAAC,CAAC;gBACZ,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/D,CAAC,CAAC;QACF,IAAI,CAAC,CAAC,CAAC,IAAI;YAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QACxB,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QACX,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACb,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;QACf,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACV,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,gDAAgD,CAAC,CAAC;IAEjF,IAAG,GAAG,KAAK,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;SACI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;QAC1B,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3B,IAAG,OAAO,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,KAAK,EAAE,CAAC;QAEvE,MAAM,CAAC,GAAG,CAAC,gBAAgB,GAAG,KAAK,CAAA;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACjC,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const CURRENCY_ISO_CODES: Set<string>;
2
+ export declare const US_STATE_CODES: Map<string, string>;
3
+ export declare const COUNTRY_CODES: Map<string, string>;