@qumra/web-pixels-extension 1.0.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 (49) hide show
  1. package/dist/globals.d.ts +6 -0
  2. package/dist/globals.d.ts.map +1 -0
  3. package/dist/globals.js +2 -0
  4. package/dist/globals.js.map +1 -0
  5. package/dist/index.d.ts +4 -0
  6. package/dist/index.d.ts.map +1 -0
  7. package/dist/index.js +3 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/register.d.ts +5 -0
  10. package/dist/register.d.ts.map +1 -0
  11. package/dist/register.js +3 -0
  12. package/dist/register.js.map +1 -0
  13. package/dist/types/EventBus.d.ts +17 -0
  14. package/dist/types/EventBus.d.ts.map +1 -0
  15. package/dist/types/EventBus.js +2 -0
  16. package/dist/types/EventBus.js.map +1 -0
  17. package/dist/types/ExtensionApi.d.ts +18 -0
  18. package/dist/types/ExtensionApi.d.ts.map +1 -0
  19. package/dist/types/ExtensionApi.js +2 -0
  20. package/dist/types/ExtensionApi.js.map +1 -0
  21. package/dist/types/PixelEvents.d.ts +657 -0
  22. package/dist/types/PixelEvents.d.ts.map +1 -0
  23. package/dist/types/PixelEvents.js +22 -0
  24. package/dist/types/PixelEvents.js.map +1 -0
  25. package/dist/types/PrivacyApi.d.ts +24 -0
  26. package/dist/types/PrivacyApi.d.ts.map +1 -0
  27. package/dist/types/PrivacyApi.js +6 -0
  28. package/dist/types/PrivacyApi.js.map +1 -0
  29. package/dist/types/PublicApi.d.ts +8 -0
  30. package/dist/types/PublicApi.d.ts.map +1 -0
  31. package/dist/types/PublicApi.js +2 -0
  32. package/dist/types/PublicApi.js.map +1 -0
  33. package/dist/types/RegisterInit.d.ts +27 -0
  34. package/dist/types/RegisterInit.d.ts.map +1 -0
  35. package/dist/types/RegisterInit.js +2 -0
  36. package/dist/types/RegisterInit.js.map +1 -0
  37. package/dist/types/VisitorApi.d.ts +11 -0
  38. package/dist/types/VisitorApi.d.ts.map +1 -0
  39. package/dist/types/VisitorApi.js +2 -0
  40. package/dist/types/VisitorApi.js.map +1 -0
  41. package/dist/types/WebPixelsManager.d.ts +33 -0
  42. package/dist/types/WebPixelsManager.d.ts.map +1 -0
  43. package/dist/types/WebPixelsManager.js +2 -0
  44. package/dist/types/WebPixelsManager.js.map +1 -0
  45. package/dist/types/index.d.ts +9 -0
  46. package/dist/types/index.d.ts.map +1 -0
  47. package/dist/types/index.js +6 -0
  48. package/dist/types/index.js.map +1 -0
  49. package/package.json +46 -0
@@ -0,0 +1,6 @@
1
+ import { ExtensionApi } from './types/index.js';
2
+ export declare const EXTENSION_POINT = "WebPixel::Render";
3
+ export interface QumraGlobal {
4
+ extend(extensionPoint: typeof EXTENSION_POINT, extend: (api: ExtensionApi) => void): void;
5
+ }
6
+ //# sourceMappingURL=globals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../src/globals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,eAAO,MAAM,eAAe,qBAAqB,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,MAAM,CACJ,cAAc,EAAE,OAAO,eAAe,EACtC,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,GAClC,IAAI,CAAC;CACT"}
@@ -0,0 +1,2 @@
1
+ export const EXTENSION_POINT = 'WebPixel::Render';
2
+ //# sourceMappingURL=globals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.js","sourceRoot":"","sources":["../src/globals.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { register } from './register.js';
2
+ export type { QumraGlobal } from './globals.js';
3
+ export * from './types/index.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,YAAY,EAAC,WAAW,EAAC,MAAM,cAAc,CAAC;AAC9C,cAAc,kBAAkB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ export { register } from './register.js';
2
+ export * from './types/index.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { ExtensionApi } from './types/index.js';
2
+ type Register = (extend: (api: ExtensionApi) => void) => void;
3
+ export declare const register: Register;
4
+ export {};
5
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAI9C,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,KAAK,IAAI,CAAC;AAE9D,eAAO,MAAM,QAAQ,EAAE,QACgB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { EXTENSION_POINT } from './globals.js';
2
+ export const register = (extend) => qumra.extend(EXTENSION_POINT, extend);
3
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,eAAe,EAAC,MAAM,cAAc,CAAC;AAO1D,MAAM,CAAC,MAAM,QAAQ,GAAa,CAAC,MAAM,EAAE,EAAE,CAC3C,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ export type PublisherData<P> = P extends {
2
+ data: infer T;
3
+ } ? T : never;
4
+ export type PublisherCustomData<P> = P extends {
5
+ customData: infer T;
6
+ } ? T : never;
7
+ export interface PublisherOptions extends Record<string, unknown> {
8
+ extension?: {
9
+ extensionId: string;
10
+ appId: string;
11
+ type: string;
12
+ };
13
+ eventId?: string;
14
+ }
15
+ export type SubscriberCallback<T, U = void> = (event: T) => U;
16
+ export type SubscriberOptions = Record<string, any>;
17
+ //# sourceMappingURL=EventBus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../../src/types/EventBus.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,SAAS;IAAC,IAAI,EAAE,MAAM,CAAC,CAAA;CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACrE,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS;IAAC,UAAU,EAAE,MAAM,CAAC,CAAA;CAAC,GAChE,CAAC,GACD,KAAK,CAAC;AAEV,MAAM,WAAW,gBAAiB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC/D,SAAS,CAAC,EAAE;QACV,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=EventBus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventBus.js","sourceRoot":"","sources":["../../src/types/EventBus.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import type { Browser } from './PixelEvents.js';
2
+ import type { Events } from './WebPixelsManager.js';
3
+ import type { RegisterInit } from './RegisterInit.js';
4
+ import type { CustomerPrivacyEventBus } from './PrivacyApi.js';
5
+ import type { SubscriberCallback, SubscriberOptions } from './EventBus.js';
6
+ export interface ExtensionApi {
7
+ readonly settings: Record<string, any>;
8
+ readonly analytics: {
9
+ subscribe<K extends string>(name: K, callback: SubscriberCallback<Events[K]>, options?: SubscriberOptions): () => boolean;
10
+ };
11
+ readonly browser: Browser;
12
+ readonly init: RegisterInit;
13
+ readonly _pixelInfo: any;
14
+ readonly customerPrivacy: {
15
+ readonly subscribe: CustomerPrivacyEventBus['subscribe'];
16
+ };
17
+ }
18
+ //# sourceMappingURL=ExtensionApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtensionApi.d.ts","sourceRoot":"","sources":["../../src/types/ExtensionApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAClD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAC,uBAAuB,EAAC,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAC,kBAAkB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAEzE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE;QAClB,SAAS,CAAC,CAAC,SAAS,MAAM,EACxB,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EACvC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,MAAM,OAAO,CAAC;KAClB,CAAC;IACF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC;IACzB,QAAQ,CAAC,eAAe,EAAE;QACxB,QAAQ,CAAC,SAAS,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;KAC1D,CAAC;CACH"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ExtensionApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtensionApi.js","sourceRoot":"","sources":["../../src/types/ExtensionApi.ts"],"names":[],"mappings":""}
@@ -0,0 +1,657 @@
1
+ export declare enum EventType {
2
+ Standard = "standard",
3
+ Custom = "custom",
4
+ Dom = "dom"
5
+ }
6
+ export declare enum AlertDisplayedType {
7
+ CheckoutError = "CHECKOUT_ERROR",
8
+ ContactError = "CONTACT_ERROR",
9
+ DeliveryError = "DELIVERY_ERROR",
10
+ DiscountError = "DISCOUNT_ERROR",
11
+ InputInvalid = "INPUT_INVALID",
12
+ InputRequired = "INPUT_REQUIRED",
13
+ InventoryError = "INVENTORY_ERROR",
14
+ MerchandiseError = "MERCHANDISE_ERROR",
15
+ PaymentError = "PAYMENT_ERROR"
16
+ }
17
+ /** The client-side ID of the customer, provided by Qumra */
18
+ export type ClientId = string;
19
+ /** The ID of the customer event */
20
+ export type Id = string;
21
+ /** The timestamp in ISO 8601 format */
22
+ export type Timestamp = string;
23
+ /** The name of the customer event */
24
+ export type Name = string;
25
+ /** Free-form data for custom events */
26
+ export type CustomData = Record<string, unknown>;
27
+ /** Free-form event data */
28
+ export type Data = Record<string, unknown>;
29
+ /** A monetary value with currency. */
30
+ export interface MoneyV2 {
31
+ /** The decimal money amount. */
32
+ amount: number;
33
+ /** The three-letter currency code (ISO 4217), e.g. "SAR", "USD". */
34
+ currencyCode: string;
35
+ }
36
+ /** A percentage discount value. */
37
+ export interface PricingPercentageValue {
38
+ percentage: number;
39
+ }
40
+ /** A mailing address for customers and shipping. */
41
+ export interface MailingAddress {
42
+ address1: string | null;
43
+ address2: string | null;
44
+ city: string | null;
45
+ country: string | null;
46
+ countryCode: string | null;
47
+ firstName: string | null;
48
+ lastName: string | null;
49
+ phone: string | null;
50
+ province: string | null;
51
+ provinceCode: string | null;
52
+ zip: string | null;
53
+ }
54
+ /** A country. */
55
+ export interface Country {
56
+ /** The ISO-3166-1 code, e.g. "SA". */
57
+ isoCode: string | null;
58
+ }
59
+ /** A language. */
60
+ export interface Language {
61
+ /** The BCP-47 language tag, e.g. "ar-SA". */
62
+ isoCode: string;
63
+ }
64
+ /** A market region. */
65
+ export interface Market {
66
+ handle: string | null;
67
+ id: string | null;
68
+ }
69
+ /** Localization information. */
70
+ export interface Localization {
71
+ country: Country;
72
+ language: Language;
73
+ market: Market;
74
+ }
75
+ /** A snapshot of browser location properties. */
76
+ export interface Location {
77
+ hash: string;
78
+ host: string;
79
+ hostname: string;
80
+ href: string;
81
+ origin: string;
82
+ pathname: string;
83
+ port: string;
84
+ protocol: string;
85
+ search: string;
86
+ }
87
+ /** An image resource. */
88
+ export interface Image {
89
+ src: string | null;
90
+ }
91
+ /** Custom attributes associated with cart or checkout. */
92
+ export interface Attribute {
93
+ key: string;
94
+ value: string;
95
+ }
96
+ /** Line item custom properties. */
97
+ export interface Property {
98
+ key: string;
99
+ value: string;
100
+ }
101
+ /** A customer account. */
102
+ export interface Customer {
103
+ email: string | null;
104
+ firstName: string | null;
105
+ id: string;
106
+ lastName: string | null;
107
+ ordersCount: number | null;
108
+ phone: string | null;
109
+ }
110
+ /** A product in the store. */
111
+ export interface Product {
112
+ id: string | null;
113
+ title: string;
114
+ type: string | null;
115
+ untranslatedTitle: string | null;
116
+ url: string | null;
117
+ vendor: string;
118
+ }
119
+ /** A product variant (size, color, etc.). */
120
+ export interface ProductVariant {
121
+ id: string | null;
122
+ image: Image | null;
123
+ price: MoneyV2;
124
+ product: Product;
125
+ sku: string | null;
126
+ title: string | null;
127
+ untranslatedTitle: string | null;
128
+ }
129
+ /** Payment settings for the shop. */
130
+ export interface ShopPaymentSettings {
131
+ currencyCode: string;
132
+ }
133
+ /** The shop/store information. */
134
+ export interface Shop {
135
+ countryCode: string;
136
+ myQumraDomain: string;
137
+ name: string;
138
+ paymentSettings: ShopPaymentSettings;
139
+ storefrontUrl: string | null;
140
+ }
141
+ /** The estimated costs for the cart. */
142
+ export interface CartCost {
143
+ totalAmount: MoneyV2;
144
+ }
145
+ /** Cost of a single cart line. */
146
+ export interface CartLineCost {
147
+ totalAmount: MoneyV2;
148
+ }
149
+ /** A single item in the cart. */
150
+ export interface CartLine {
151
+ cost: CartLineCost;
152
+ merchandise: ProductVariant;
153
+ quantity: number;
154
+ }
155
+ /** A cart with items the customer intends to purchase. */
156
+ export interface Cart {
157
+ attributes: Attribute[];
158
+ cost: CartCost;
159
+ id: string | null;
160
+ lines: CartLine[];
161
+ totalQuantity: number;
162
+ }
163
+ /** Represents how products can be sold (e.g. subscriptions). */
164
+ export interface SellingPlan {
165
+ id: string;
166
+ name: string;
167
+ }
168
+ /** Association between a variant and a selling plan. */
169
+ export interface SellingPlanAllocation {
170
+ sellingPlan: SellingPlan;
171
+ }
172
+ /** Information about a discount application. */
173
+ export interface DiscountApplication {
174
+ allocationMethod: string;
175
+ targetSelection: string;
176
+ targetType: string;
177
+ title: string;
178
+ type: string;
179
+ value: MoneyV2 | PricingPercentageValue;
180
+ }
181
+ /** A discount allocation on a line item. */
182
+ export interface DiscountAllocation {
183
+ amount: MoneyV2;
184
+ discountApplication: DiscountApplication;
185
+ }
186
+ /** A delivery option. */
187
+ export interface DeliveryOption {
188
+ cost: MoneyV2 | null;
189
+ costAfterDiscounts: MoneyV2 | null;
190
+ description: string | null;
191
+ handle: string;
192
+ title: string | null;
193
+ type: string;
194
+ }
195
+ /** Delivery information. */
196
+ export interface Delivery {
197
+ selectedDeliveryOptions: DeliveryOption[];
198
+ }
199
+ /** A shipping rate. */
200
+ export interface ShippingRate {
201
+ price: MoneyV2;
202
+ }
203
+ /** Payment method details. */
204
+ export interface TransactionPaymentMethod {
205
+ name: string;
206
+ type: string;
207
+ }
208
+ /** A transaction associated with checkout or order. */
209
+ export interface Transaction {
210
+ amount: MoneyV2;
211
+ gateway: string;
212
+ paymentMethod: TransactionPaymentMethod;
213
+ }
214
+ /** The customer that placed the order. */
215
+ export interface OrderCustomer {
216
+ id: string | null;
217
+ isFirstOrder: boolean | null;
218
+ }
219
+ /** A completed order. */
220
+ export interface Order {
221
+ customer: OrderCustomer | null;
222
+ id: string | null;
223
+ }
224
+ /** A single checkout line item. */
225
+ export interface CheckoutLineItem {
226
+ discountAllocations: DiscountAllocation[];
227
+ finalLinePrice: MoneyV2;
228
+ id: string | null;
229
+ properties: Property[];
230
+ quantity: number;
231
+ sellingPlanAllocation: SellingPlanAllocation | null;
232
+ title: string | null;
233
+ variant: ProductVariant | null;
234
+ }
235
+ /** The full checkout object. */
236
+ export interface Checkout {
237
+ attributes: Attribute[];
238
+ billingAddress: MailingAddress | null;
239
+ buyerAcceptsEmailMarketing: boolean;
240
+ buyerAcceptsSmsMarketing: boolean;
241
+ currencyCode: string | null;
242
+ delivery: Delivery | null;
243
+ discountApplications: DiscountApplication[];
244
+ discountsAmount: MoneyV2 | null;
245
+ email: string | null;
246
+ lineItems: CheckoutLineItem[];
247
+ localization: Localization;
248
+ order: Order | null;
249
+ phone: string | null;
250
+ shippingAddress: MailingAddress | null;
251
+ shippingLine: ShippingRate | null;
252
+ smsMarketingPhone: string | null;
253
+ subtotalPrice: MoneyV2 | null;
254
+ token: string | null;
255
+ totalPrice: MoneyV2 | null;
256
+ totalTax: MoneyV2;
257
+ transactions: Transaction[];
258
+ }
259
+ /** A product collection. */
260
+ export interface Collection {
261
+ id: string;
262
+ productVariants: ProductVariant[];
263
+ title: string;
264
+ }
265
+ /** Search result metadata. */
266
+ export interface SearchResult {
267
+ productVariants: ProductVariant[];
268
+ query: string;
269
+ }
270
+ export interface PurchasingCompanyCompany {
271
+ externalId: string | null;
272
+ id: string;
273
+ name: string;
274
+ }
275
+ export interface PurchasingCompanyLocation {
276
+ externalId: string | null;
277
+ id: string;
278
+ name: string;
279
+ }
280
+ export interface PurchasingCompany {
281
+ company: PurchasingCompanyCompany;
282
+ location: PurchasingCompanyLocation;
283
+ }
284
+ /** An alert displayed to the buyer. */
285
+ export interface AlertDisplayed {
286
+ message: string;
287
+ target: string;
288
+ type: AlertDisplayedType;
289
+ value: string | null;
290
+ }
291
+ export interface Screen {
292
+ height: number;
293
+ width: number;
294
+ }
295
+ export interface WebPixelsDocument {
296
+ characterSet: string;
297
+ location: Location;
298
+ referrer: string;
299
+ title: string;
300
+ }
301
+ export interface WebPixelsNavigator {
302
+ cookieEnabled: boolean;
303
+ language: string;
304
+ languages: ReadonlyArray<string>;
305
+ userAgent: string;
306
+ }
307
+ export interface WebPixelsWindow {
308
+ innerHeight: number;
309
+ innerWidth: number;
310
+ location: Location;
311
+ origin: string;
312
+ outerHeight: number;
313
+ outerWidth: number;
314
+ pageXOffset: number;
315
+ pageYOffset: number;
316
+ screen: Screen;
317
+ screenX: number;
318
+ screenY: number;
319
+ scrollX: number;
320
+ scrollY: number;
321
+ }
322
+ /** A snapshot of browser properties at the time of the event. */
323
+ export interface Context {
324
+ document: WebPixelsDocument;
325
+ navigator: WebPixelsNavigator;
326
+ window: WebPixelsWindow;
327
+ }
328
+ export interface GenericElement {
329
+ href: string | null;
330
+ id: string | null;
331
+ name: string | null;
332
+ tagName: string | null;
333
+ type: string | null;
334
+ value: string | null;
335
+ }
336
+ export interface InputElement {
337
+ id: string | null;
338
+ name: string | null;
339
+ tagName: string | null;
340
+ type: string | null;
341
+ value: string | null;
342
+ }
343
+ export interface FormElement {
344
+ action: string | null;
345
+ elements: InputElement[];
346
+ id: string | null;
347
+ }
348
+ export interface MouseEventData {
349
+ clientX: number;
350
+ clientY: number;
351
+ element: GenericElement;
352
+ movementX: number;
353
+ movementY: number;
354
+ offsetX: number;
355
+ offsetY: number;
356
+ pageX: number;
357
+ pageY: number;
358
+ screenX: number;
359
+ screenY: number;
360
+ }
361
+ export interface BrowserCookie {
362
+ get: (name?: string) => Promise<string>;
363
+ set: (cookieOrName: string, value?: string) => Promise<string>;
364
+ }
365
+ export interface BrowserLocalStorage {
366
+ clear: () => Promise<ReturnType<WindowLocalStorage['localStorage']['clear']>>;
367
+ getItem: (key: string) => Promise<ReturnType<WindowLocalStorage['localStorage']['getItem']>>;
368
+ key: (index: number) => Promise<ReturnType<WindowLocalStorage['localStorage']['key']>>;
369
+ length: () => Promise<WindowLocalStorage['localStorage']['length']>;
370
+ removeItem: (key: string) => Promise<ReturnType<WindowLocalStorage['localStorage']['removeItem']>>;
371
+ setItem: (key: string, value: any) => Promise<ReturnType<WindowLocalStorage['localStorage']['setItem']>>;
372
+ }
373
+ export interface BrowserSessionStorage {
374
+ clear: () => Promise<ReturnType<WindowSessionStorage['sessionStorage']['clear']>>;
375
+ getItem: (key: string) => Promise<ReturnType<WindowSessionStorage['sessionStorage']['getItem']>>;
376
+ key: (index: number) => Promise<ReturnType<WindowSessionStorage['sessionStorage']['key']>>;
377
+ length: () => Promise<WindowSessionStorage['sessionStorage']['length']>;
378
+ removeItem: (key: string) => Promise<ReturnType<WindowSessionStorage['sessionStorage']['removeItem']>>;
379
+ setItem: (key: string, value: any) => Promise<ReturnType<WindowSessionStorage['sessionStorage']['setItem']>>;
380
+ }
381
+ export interface Browser {
382
+ cookie: BrowserCookie;
383
+ localStorage: BrowserLocalStorage;
384
+ /** @deprecated Use fetch with `keepalive: true` instead. */
385
+ sendBeacon: (url: string, body?: string) => Promise<boolean>;
386
+ sessionStorage: BrowserSessionStorage;
387
+ }
388
+ export interface PixelEventsPageViewedData {
389
+ }
390
+ export interface PixelEventsPageViewed {
391
+ clientId: ClientId;
392
+ context: Context;
393
+ data: PixelEventsPageViewedData;
394
+ id: Id;
395
+ name: 'page_viewed';
396
+ seq: number;
397
+ timestamp: Timestamp;
398
+ type: EventType.Standard;
399
+ }
400
+ export interface PixelEventsProductViewedData {
401
+ productVariant: ProductVariant;
402
+ }
403
+ export interface PixelEventsProductViewed {
404
+ clientId: ClientId;
405
+ context: Context;
406
+ data: PixelEventsProductViewedData;
407
+ id: Id;
408
+ name: 'product_viewed';
409
+ seq: number;
410
+ timestamp: Timestamp;
411
+ type: EventType.Standard;
412
+ }
413
+ export interface PixelEventsProductAddedToCartData {
414
+ cartLine: CartLine | null;
415
+ }
416
+ export interface PixelEventsProductAddedToCart {
417
+ clientId: ClientId;
418
+ context: Context;
419
+ data: PixelEventsProductAddedToCartData;
420
+ id: Id;
421
+ name: 'product_added_to_cart';
422
+ seq: number;
423
+ timestamp: Timestamp;
424
+ type: EventType.Standard;
425
+ }
426
+ export interface PixelEventsProductRemovedFromCartData {
427
+ cartLine: CartLine | null;
428
+ }
429
+ export interface PixelEventsProductRemovedFromCart {
430
+ clientId: ClientId;
431
+ context: Context;
432
+ data: PixelEventsProductRemovedFromCartData;
433
+ id: Id;
434
+ name: 'product_removed_from_cart';
435
+ seq: number;
436
+ timestamp: Timestamp;
437
+ type: EventType.Standard;
438
+ }
439
+ export interface PixelEventsCartViewedData {
440
+ cart: Cart | null;
441
+ }
442
+ export interface PixelEventsCartViewed {
443
+ clientId: ClientId;
444
+ context: Context;
445
+ data: PixelEventsCartViewedData;
446
+ id: Id;
447
+ name: 'cart_viewed';
448
+ seq: number;
449
+ timestamp: Timestamp;
450
+ type: EventType.Standard;
451
+ }
452
+ export interface PixelEventsCheckoutStartedData {
453
+ checkout: Checkout;
454
+ }
455
+ export interface PixelEventsCheckoutStarted {
456
+ clientId: ClientId;
457
+ context: Context;
458
+ data: PixelEventsCheckoutStartedData;
459
+ id: Id;
460
+ name: 'checkout_started';
461
+ seq: number;
462
+ timestamp: Timestamp;
463
+ type: EventType.Standard;
464
+ }
465
+ export interface PixelEventsCheckoutCompletedData {
466
+ checkout: Checkout;
467
+ }
468
+ export interface PixelEventsCheckoutCompleted {
469
+ clientId: ClientId;
470
+ context: Context;
471
+ data: PixelEventsCheckoutCompletedData;
472
+ id: Id;
473
+ name: 'checkout_completed';
474
+ seq: number;
475
+ timestamp: Timestamp;
476
+ type: EventType.Standard;
477
+ }
478
+ export interface PixelEventsCheckoutAddressInfoSubmittedData {
479
+ checkout: Checkout;
480
+ }
481
+ export interface PixelEventsCheckoutAddressInfoSubmitted {
482
+ clientId: ClientId;
483
+ context: Context;
484
+ data: PixelEventsCheckoutAddressInfoSubmittedData;
485
+ id: Id;
486
+ name: 'checkout_address_info_submitted';
487
+ seq: number;
488
+ timestamp: Timestamp;
489
+ type: EventType.Standard;
490
+ }
491
+ export interface PixelEventsCheckoutContactInfoSubmittedData {
492
+ checkout: Checkout;
493
+ }
494
+ export interface PixelEventsCheckoutContactInfoSubmitted {
495
+ clientId: ClientId;
496
+ context: Context;
497
+ data: PixelEventsCheckoutContactInfoSubmittedData;
498
+ id: Id;
499
+ name: 'checkout_contact_info_submitted';
500
+ seq: number;
501
+ timestamp: Timestamp;
502
+ type: EventType.Standard;
503
+ }
504
+ export interface PixelEventsCheckoutShippingInfoSubmittedData {
505
+ checkout: Checkout;
506
+ }
507
+ export interface PixelEventsCheckoutShippingInfoSubmitted {
508
+ clientId: ClientId;
509
+ context: Context;
510
+ data: PixelEventsCheckoutShippingInfoSubmittedData;
511
+ id: Id;
512
+ name: 'checkout_shipping_info_submitted';
513
+ seq: number;
514
+ timestamp: Timestamp;
515
+ type: EventType.Standard;
516
+ }
517
+ export interface PixelEventsPaymentInfoSubmittedData {
518
+ checkout: Checkout;
519
+ }
520
+ export interface PixelEventsPaymentInfoSubmitted {
521
+ clientId: ClientId;
522
+ context: Context;
523
+ data: PixelEventsPaymentInfoSubmittedData;
524
+ id: Id;
525
+ name: 'payment_info_submitted';
526
+ seq: number;
527
+ timestamp: Timestamp;
528
+ type: EventType.Standard;
529
+ }
530
+ export interface PixelEventsCollectionViewedData {
531
+ collection: Collection;
532
+ }
533
+ export interface PixelEventsCollectionViewed {
534
+ clientId: ClientId;
535
+ context: Context;
536
+ data: PixelEventsCollectionViewedData;
537
+ id: Id;
538
+ name: 'collection_viewed';
539
+ seq: number;
540
+ timestamp: Timestamp;
541
+ type: EventType.Standard;
542
+ }
543
+ export interface PixelEventsSearchSubmittedData {
544
+ searchResult: SearchResult;
545
+ }
546
+ export interface PixelEventsSearchSubmitted {
547
+ clientId: ClientId;
548
+ context: Context;
549
+ data: PixelEventsSearchSubmittedData;
550
+ id: Id;
551
+ name: 'search_submitted';
552
+ seq: number;
553
+ timestamp: Timestamp;
554
+ type: EventType.Standard;
555
+ }
556
+ export interface PixelEventsAlertDisplayedData {
557
+ alert: AlertDisplayed;
558
+ }
559
+ export interface PixelEventsAlertDisplayed {
560
+ clientId: ClientId;
561
+ context: Context;
562
+ data: PixelEventsAlertDisplayedData;
563
+ id: Id;
564
+ name: 'alert_displayed';
565
+ seq: number;
566
+ timestamp: Timestamp;
567
+ type: EventType.Standard;
568
+ }
569
+ export interface PixelEventsClicked {
570
+ clientId: ClientId;
571
+ data: MouseEventData;
572
+ id: Id;
573
+ name: 'clicked';
574
+ seq: number;
575
+ timestamp: Timestamp;
576
+ type: EventType.Dom;
577
+ }
578
+ export interface PixelEventsFormSubmittedData {
579
+ element: FormElement;
580
+ }
581
+ export interface PixelEventsFormSubmitted {
582
+ clientId: ClientId;
583
+ data: PixelEventsFormSubmittedData;
584
+ id: Id;
585
+ name: 'form_submitted';
586
+ seq: number;
587
+ timestamp: Timestamp;
588
+ type: EventType.Dom;
589
+ }
590
+ export interface PixelEventsInputChangedData {
591
+ element: InputElement;
592
+ }
593
+ export interface PixelEventsInputChanged {
594
+ clientId: ClientId;
595
+ data: PixelEventsInputChangedData;
596
+ id: Id;
597
+ name: 'input_changed';
598
+ seq: number;
599
+ timestamp: Timestamp;
600
+ type: EventType.Dom;
601
+ }
602
+ export interface PixelEventsInputFocusedData {
603
+ element: InputElement;
604
+ }
605
+ export interface PixelEventsInputFocused {
606
+ clientId: ClientId;
607
+ data: PixelEventsInputFocusedData;
608
+ id: Id;
609
+ name: 'input_focused';
610
+ seq: number;
611
+ timestamp: Timestamp;
612
+ type: EventType.Dom;
613
+ }
614
+ export interface PixelEventsInputBlurredData {
615
+ element: InputElement;
616
+ }
617
+ export interface PixelEventsInputBlurred {
618
+ clientId: ClientId;
619
+ data: PixelEventsInputBlurredData;
620
+ id: Id;
621
+ name: 'input_blurred';
622
+ seq: number;
623
+ timestamp: Timestamp;
624
+ type: EventType.Dom;
625
+ }
626
+ export interface CustomEvent {
627
+ clientId: ClientId;
628
+ context: Context;
629
+ customData: CustomData | null;
630
+ id: Id;
631
+ name: string;
632
+ seq: number;
633
+ timestamp: Timestamp;
634
+ type: EventType.Custom;
635
+ }
636
+ export interface PixelEvents {
637
+ page_viewed: PixelEventsPageViewed;
638
+ product_viewed: PixelEventsProductViewed;
639
+ product_added_to_cart: PixelEventsProductAddedToCart;
640
+ product_removed_from_cart: PixelEventsProductRemovedFromCart;
641
+ cart_viewed: PixelEventsCartViewed;
642
+ checkout_started: PixelEventsCheckoutStarted;
643
+ checkout_completed: PixelEventsCheckoutCompleted;
644
+ checkout_address_info_submitted: PixelEventsCheckoutAddressInfoSubmitted;
645
+ checkout_contact_info_submitted: PixelEventsCheckoutContactInfoSubmitted;
646
+ checkout_shipping_info_submitted: PixelEventsCheckoutShippingInfoSubmitted;
647
+ payment_info_submitted: PixelEventsPaymentInfoSubmitted;
648
+ collection_viewed: PixelEventsCollectionViewed;
649
+ search_submitted: PixelEventsSearchSubmitted;
650
+ alert_displayed: PixelEventsAlertDisplayed;
651
+ clicked: PixelEventsClicked;
652
+ form_submitted: PixelEventsFormSubmitted;
653
+ input_changed: PixelEventsInputChanged;
654
+ input_focused: PixelEventsInputFocused;
655
+ input_blurred: PixelEventsInputBlurred;
656
+ }
657
+ //# sourceMappingURL=PixelEvents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PixelEvents.d.ts","sourceRoot":"","sources":["../../src/types/PixelEvents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ // ============================================================================
2
+ // Enums
3
+ // ============================================================================
4
+ export var EventType;
5
+ (function (EventType) {
6
+ EventType["Standard"] = "standard";
7
+ EventType["Custom"] = "custom";
8
+ EventType["Dom"] = "dom";
9
+ })(EventType || (EventType = {}));
10
+ export var AlertDisplayedType;
11
+ (function (AlertDisplayedType) {
12
+ AlertDisplayedType["CheckoutError"] = "CHECKOUT_ERROR";
13
+ AlertDisplayedType["ContactError"] = "CONTACT_ERROR";
14
+ AlertDisplayedType["DeliveryError"] = "DELIVERY_ERROR";
15
+ AlertDisplayedType["DiscountError"] = "DISCOUNT_ERROR";
16
+ AlertDisplayedType["InputInvalid"] = "INPUT_INVALID";
17
+ AlertDisplayedType["InputRequired"] = "INPUT_REQUIRED";
18
+ AlertDisplayedType["InventoryError"] = "INVENTORY_ERROR";
19
+ AlertDisplayedType["MerchandiseError"] = "MERCHANDISE_ERROR";
20
+ AlertDisplayedType["PaymentError"] = "PAYMENT_ERROR";
21
+ })(AlertDisplayedType || (AlertDisplayedType = {}));
22
+ //# sourceMappingURL=PixelEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PixelEvents.js","sourceRoot":"","sources":["../../src/types/PixelEvents.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,8BAAiB,CAAA;IACjB,wBAAW,CAAA;AACb,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAED,MAAM,CAAN,IAAY,kBAUX;AAVD,WAAY,kBAAkB;IAC5B,sDAAgC,CAAA;IAChC,oDAA8B,CAAA;IAC9B,sDAAgC,CAAA;IAChC,sDAAgC,CAAA;IAChC,oDAA8B,CAAA;IAC9B,sDAAgC,CAAA;IAChC,wDAAkC,CAAA;IAClC,4DAAsC,CAAA;IACtC,oDAA8B,CAAA;AAChC,CAAC,EAVW,kBAAkB,KAAlB,kBAAkB,QAU7B"}
@@ -0,0 +1,24 @@
1
+ import type { PublisherOptions, SubscriberCallback, SubscriberOptions } from './EventBus.js';
2
+ export declare const TrackingEvents: {
3
+ readonly ANALYTICS_DECLINED: "analyticsConsentDeclined";
4
+ readonly ANALYTICS_ACCEPTED: "analyticsConsentAccepted";
5
+ readonly CONSENT_COLLECTED: "visitorConsentCollected";
6
+ };
7
+ export type TrackingEventsType = typeof TrackingEvents[keyof typeof TrackingEvents];
8
+ export type ConsentTrackingEventName = `${TrackingEventsType}`;
9
+ export type ConsentEvents = {
10
+ [K in ConsentTrackingEventName]: CustomerPrivacyPayload;
11
+ };
12
+ export interface CustomerPrivacyPayload {
13
+ customerPrivacy: {
14
+ analyticsProcessingAllowed: boolean;
15
+ marketingAllowed: boolean;
16
+ preferencesProcessingAllowed: boolean;
17
+ saleOfDataAllowed: boolean;
18
+ };
19
+ }
20
+ export interface CustomerPrivacyEventBus {
21
+ publish<K extends keyof ConsentEvents>(name: K, payload: CustomerPrivacyPayload, options?: PublisherOptions): boolean;
22
+ subscribe<K extends keyof ConsentEvents>(name: K, callback: SubscriberCallback<CustomerPrivacyPayload>, options?: SubscriberOptions): () => boolean;
23
+ }
24
+ //# sourceMappingURL=PrivacyApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrivacyApi.d.ts","sourceRoot":"","sources":["../../src/types/PrivacyApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC5B,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAErD,MAAM,MAAM,wBAAwB,GAAG,GAAG,kBAAkB,EAAE,CAAC;AAE/D,MAAM,MAAM,aAAa,GAAG;KACzB,CAAC,IAAI,wBAAwB,GAAG,sBAAsB;CACxD,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE;QACf,0BAA0B,EAAE,OAAO,CAAC;QACpC,gBAAgB,EAAE,OAAO,CAAC;QAC1B,4BAA4B,EAAE,OAAO,CAAC;QACtC,iBAAiB,EAAE,OAAO,CAAC;KAC5B,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,CAAC,SAAS,MAAM,aAAa,EACnC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;IACX,SAAS,CAAC,CAAC,SAAS,MAAM,aAAa,EACrC,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,EACpD,OAAO,CAAC,EAAE,iBAAiB,GAC1B,MAAM,OAAO,CAAC;CAClB"}
@@ -0,0 +1,6 @@
1
+ export const TrackingEvents = {
2
+ ANALYTICS_DECLINED: 'analyticsConsentDeclined',
3
+ ANALYTICS_ACCEPTED: 'analyticsConsentAccepted',
4
+ CONSENT_COLLECTED: 'visitorConsentCollected',
5
+ };
6
+ //# sourceMappingURL=PrivacyApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrivacyApi.js","sourceRoot":"","sources":["../../src/types/PrivacyApi.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,kBAAkB,EAAE,0BAA0B;IAC9C,kBAAkB,EAAE,0BAA0B;IAC9C,iBAAiB,EAAE,yBAAyB;CACpC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { WebPixelsManager } from './WebPixelsManager.js';
2
+ import type { VisitorApi } from './VisitorApi.js';
3
+ export interface PublicApi {
4
+ publish: WebPixelsManager['publish'];
5
+ publishCustomEvent: WebPixelsManager['publishCustomEvent'];
6
+ visitor: VisitorApi['visitor'];
7
+ }
8
+ //# sourceMappingURL=PublicApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublicApi.d.ts","sourceRoot":"","sources":["../../src/types/PublicApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAEhD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACrC,kBAAkB,EAAE,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;IAC3D,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;CAChC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=PublicApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublicApi.js","sourceRoot":"","sources":["../../src/types/PublicApi.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ import type { Context, Cart, Shop, Checkout, Customer, ProductVariant, PurchasingCompany } from './PixelEvents.js';
2
+ /** Data passed to the register function's init object. */
3
+ export interface RegisterInit {
4
+ context: Context;
5
+ data: {
6
+ customer: Partial<Customer> | null;
7
+ cart: Partial<Cart> | null;
8
+ shop: Shop;
9
+ purchasingCompany: PurchasingCompany | null;
10
+ };
11
+ customerPrivacy: {
12
+ analyticsProcessingAllowed: boolean;
13
+ marketingAllowed: boolean;
14
+ preferencesProcessingAllowed: boolean;
15
+ saleOfDataAllowed: boolean;
16
+ };
17
+ }
18
+ /** Data received by the web-pixels-manager from the backend. */
19
+ export interface InitData {
20
+ customer?: Customer;
21
+ cart?: Cart;
22
+ shop: Shop;
23
+ checkout?: Checkout;
24
+ productVariants?: ProductVariant[];
25
+ purchasingCompany?: PurchasingCompany;
26
+ }
27
+ //# sourceMappingURL=RegisterInit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterInit.d.ts","sourceRoot":"","sources":["../../src/types/RegisterInit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,0DAA0D;AAC1D,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACnC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC3B,IAAI,EAAE,IAAI,CAAC;QACX,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAC;KAC7C,CAAC;IACF,eAAe,EAAE;QACf,0BAA0B,EAAE,OAAO,CAAC;QACpC,gBAAgB,EAAE,OAAO,CAAC;QAC1B,4BAA4B,EAAE,OAAO,CAAC;QACtC,iBAAiB,EAAE,OAAO,CAAC;KAC5B,CAAC;CACH;AAED,gEAAgE;AAChE,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IACnC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RegisterInit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegisterInit.js","sourceRoot":"","sources":["../../src/types/RegisterInit.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ export interface VisitorParams {
2
+ phone?: string;
3
+ email?: string;
4
+ }
5
+ export interface VisitorOptions {
6
+ appId?: string;
7
+ }
8
+ export interface VisitorApi {
9
+ visitor(params: VisitorParams, options?: VisitorOptions): boolean;
10
+ }
11
+ //# sourceMappingURL=VisitorApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisitorApi.d.ts","sourceRoot":"","sources":["../../src/types/VisitorApi.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;CACnE"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=VisitorApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisitorApi.js","sourceRoot":"","sources":["../../src/types/VisitorApi.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ import type { PublisherCustomData, PublisherData, PublisherOptions, SubscriberCallback, SubscriberOptions } from './EventBus.js';
2
+ import type { PixelEvents, CustomEvent, EventType } from './PixelEvents.js';
3
+ export type SchemaVersion = 'v1';
4
+ export type PixelEventName = keyof PixelEvents;
5
+ export type EventNameOfType<T extends EventType> = {
6
+ [K in PixelEventName]: PixelEvents[K] extends {
7
+ type: T;
8
+ } ? K : never;
9
+ }[PixelEventName];
10
+ export type StandardEventName = EventNameOfType<EventType.Standard>;
11
+ export type StandardEvent = PixelEvents[StandardEventName];
12
+ export type DomEventName = EventNameOfType<EventType.Dom>;
13
+ export type DomEvent = PixelEvents[DomEventName];
14
+ export interface StandardEvents extends PixelEvents {
15
+ all_events: StandardEvent | CustomEvent | DomEvent;
16
+ all_standard_events: StandardEvent;
17
+ all_custom_events: CustomEvent;
18
+ all_dom_events: DomEvent;
19
+ }
20
+ export type DomEvents = {
21
+ [key in DomEventName]: PixelEvents[key];
22
+ };
23
+ export interface CustomEvents {
24
+ [key: string]: CustomEvent;
25
+ }
26
+ export type Events = StandardEvents & CustomEvents;
27
+ export interface WebPixelsManager {
28
+ publish<K extends StandardEventName>(name: K, payload: PublisherData<PixelEvents[K]>, options?: PublisherOptions): boolean;
29
+ publishCustomEvent(name: string, payload?: PublisherCustomData<CustomEvent>, options?: PublisherOptions): boolean;
30
+ publishDomEvent<K extends DomEventName>(name: K, payload: PublisherData<PixelEvents[K]>, options?: PublisherOptions): boolean;
31
+ subscribe<K extends string>(name: K, callback: SubscriberCallback<Events[K]>, options?: SubscriberOptions): () => boolean;
32
+ }
33
+ //# sourceMappingURL=WebPixelsManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebPixelsManager.d.ts","sourceRoot":"","sources":["../../src/types/WebPixelsManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAC;AAE1E,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC;AAEjC,MAAM,MAAM,cAAc,GAAG,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,SAAS,IAAI;KAChD,CAAC,IAAI,cAAc,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS;QAAC,IAAI,EAAE,CAAC,CAAA;KAAC,GAAG,CAAC,GAAG,KAAK;CACpE,CAAC,cAAc,CAAC,CAAC;AAElB,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AACpE,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;AAE3D,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC1D,MAAM,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;AAEjD,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,UAAU,EAAE,aAAa,GAAG,WAAW,GAAG,QAAQ,CAAC;IACnD,mBAAmB,EAAE,aAAa,CAAC;IACnC,iBAAiB,EAAE,WAAW,CAAC;IAC/B,cAAc,EAAE,QAAQ,CAAC;CAC1B;AAED,MAAM,MAAM,SAAS,GAAG;KACrB,GAAG,IAAI,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC;CACxC,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;CAC5B;AAED,MAAM,MAAM,MAAM,GAAG,cAAc,GAAG,YAAY,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,CAAC,SAAS,iBAAiB,EACjC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EACtC,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;IACX,kBAAkB,CAChB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;IACX,eAAe,CAAC,CAAC,SAAS,YAAY,EACpC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EACtC,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC;IACX,SAAS,CAAC,CAAC,SAAS,MAAM,EACxB,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EACvC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,MAAM,OAAO,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=WebPixelsManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebPixelsManager.js","sourceRoot":"","sources":["../../src/types/WebPixelsManager.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ export type { ExtensionApi } from './ExtensionApi.js';
2
+ export type { RegisterInit, InitData } from './RegisterInit.js';
3
+ export type { PublicApi } from './PublicApi.js';
4
+ export * from './PixelEvents.js';
5
+ export * from './EventBus.js';
6
+ export * from './WebPixelsManager.js';
7
+ export * from './PrivacyApi.js';
8
+ export * from './VisitorApi.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAC,YAAY,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAC9C,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './PixelEvents.js';
2
+ export * from './EventBus.js';
3
+ export * from './WebPixelsManager.js';
4
+ export * from './PrivacyApi.js';
5
+ export * from './VisitorApi.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAGA,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "@qumra/web-pixels-extension",
3
+ "version": "1.0.0",
4
+ "description": "Provides tools to author Web Pixels extensions for the Qumra platform",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "type": "module",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ }
13
+ },
14
+ "scripts": {
15
+ "build": "tsc",
16
+ "clean": "rm -rf dist",
17
+ "prepublishOnly": "npm run build"
18
+ },
19
+ "devDependencies": {
20
+ "@types/node": "^25.0.9",
21
+ "typescript": "^5.0.0"
22
+ },
23
+ "files": [
24
+ "dist",
25
+ "LICENSE",
26
+ "README.md"
27
+ ],
28
+ "sideEffects": false,
29
+ "keywords": [
30
+ "qumra",
31
+ "web-pixels",
32
+ "pixels",
33
+ "analytics",
34
+ "tracking",
35
+ "extensions"
36
+ ],
37
+ "author": "Qumra <dev@qumra.cloud>",
38
+ "license": "ISC",
39
+ "homepage": "https://docs.qumra.cloud",
40
+ "publishConfig": {
41
+ "access": "public"
42
+ },
43
+ "engines": {
44
+ "node": ">=18"
45
+ }
46
+ }