shopkit-analytics 1.1.1 → 1.1.3

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.
@@ -1,4 +1,4 @@
1
- export { B as BaseAdapter, d as GoogleAdapter, G as GoogleAdapterConfig, i as KwikCheckoutAdapter, b as KwikCheckoutConfig, h as KwikPassAdapter, K as KwikPassConfig, e as MoengageAdapter, a as MoengageAdapterConfig, c as MultiPixelAdapter, M as MultiPixelAdapterConfig, f as PostHogAdapter, P as PostHogAdapterConfig, g as ShopifyAdapter, S as ShopifyAdapterConfig } from '../index-BgLdfy-M.mjs';
1
+ export { B as BaseAdapter, c as GoogleAdapter, G as GoogleAdapterConfig, d as MoengageAdapter, a as MoengageAdapterConfig, b as MultiPixelAdapter, M as MultiPixelAdapterConfig, e as PostHogAdapter, P as PostHogAdapterConfig, f as ShopifyAdapter, S as ShopifyAdapterConfig } from '../index-fYvOG_to.mjs';
2
2
  import '../types.mjs';
3
3
  import '../subscriber-90r_t90W.mjs';
4
4
  import '../types-BBZbvq9-.mjs';
@@ -1,4 +1,4 @@
1
- export { B as BaseAdapter, d as GoogleAdapter, G as GoogleAdapterConfig, i as KwikCheckoutAdapter, b as KwikCheckoutConfig, h as KwikPassAdapter, K as KwikPassConfig, e as MoengageAdapter, a as MoengageAdapterConfig, c as MultiPixelAdapter, M as MultiPixelAdapterConfig, f as PostHogAdapter, P as PostHogAdapterConfig, g as ShopifyAdapter, S as ShopifyAdapterConfig } from '../index-C3YOamdo.js';
1
+ export { B as BaseAdapter, c as GoogleAdapter, G as GoogleAdapterConfig, d as MoengageAdapter, a as MoengageAdapterConfig, b as MultiPixelAdapter, M as MultiPixelAdapterConfig, e as PostHogAdapter, P as PostHogAdapterConfig, f as ShopifyAdapter, S as ShopifyAdapterConfig } from '../index-B-TnPt4F.js';
2
2
  import '../types.js';
3
3
  import '../subscriber-AtiHiP3i.js';
4
4
  import '../types-BBZbvq9-.js';
@@ -32,8 +32,6 @@ var adapters_exports = {};
32
32
  __export(adapters_exports, {
33
33
  BaseAdapter: () => BaseAdapter,
34
34
  GoogleAdapter: () => GoogleAdapter,
35
- KwikCheckoutAdapter: () => KwikCheckoutAdapter,
36
- KwikPassAdapter: () => KwikPassAdapter,
37
35
  MoengageAdapter: () => MoengageAdapter,
38
36
  MultiPixelAdapter: () => MultiPixelAdapter,
39
37
  PostHogAdapter: () => PostHogAdapter,
@@ -464,15 +462,14 @@ var MultiPixelAdapter = class extends BaseAdapter {
464
462
  if (this.shouldSkipEvent(event.type)) {
465
463
  return;
466
464
  }
467
- if (!event.eventId) {
468
- event.eventId = generateEventId(event.type);
469
- }
470
- if (!event.timestamp) {
471
- event.timestamp = Date.now();
472
- }
473
- await this.trackClientSide(event, adapterParams);
465
+ const transformEvent = {
466
+ ...event,
467
+ eventId: event.eventId || generateEventId(event.type),
468
+ timestamp: Date.now()
469
+ };
470
+ await this.trackClientSide(transformEvent, adapterParams);
474
471
  if (this.pixels.some((pixel) => pixel.config.enableCAPI)) {
475
- await this.trackServerSide(event, adapterParams);
472
+ await this.trackServerSide(transformEvent, adapterParams);
476
473
  }
477
474
  }
478
475
  /**
@@ -497,11 +494,12 @@ var MultiPixelAdapter = class extends BaseAdapter {
497
494
  if (!eventName) {
498
495
  return;
499
496
  }
500
- if (event.eventId) {
501
- window.fbq?.("track", eventName, enhancedParams, {
502
- eventID: event.eventId
503
- });
504
- }
497
+ console.log("@@@ trackClientSide", eventName, enhancedParams, {
498
+ eventID: event.eventId
499
+ });
500
+ window.fbq("track", eventName, enhancedParams, {
501
+ eventID: event.eventId
502
+ });
505
503
  }
506
504
  /**
507
505
  * Track event on server-side for all enabled pixels
@@ -528,6 +526,7 @@ var MultiPixelAdapter = class extends BaseAdapter {
528
526
  name: pixel.config.name
529
527
  }))
530
528
  };
529
+ console.log("@@@ trackServerSide", payload);
531
530
  const endpoint = this.getConfig("capiEndpoint", "/api/events/multi");
532
531
  const response = await fetch(endpoint, {
533
532
  method: "POST",
@@ -1579,366 +1578,10 @@ var ShopifyAdapter = class extends BaseAdapter {
1579
1578
  }
1580
1579
  }
1581
1580
  };
1582
-
1583
- // src/adapters/kwikpass-adapter.ts
1584
- var KwikPassAdapter = class extends BaseAdapter {
1585
- constructor(config = {}) {
1586
- super(config);
1587
- this.name = "KwikPass";
1588
- this.enableKwikPassEvents = config.enableKwikPassEvents ?? true;
1589
- this.initializeLogger();
1590
- }
1591
- /**
1592
- * Initialize the KwikPass adapter
1593
- */
1594
- async initialize() {
1595
- try {
1596
- if (typeof window !== "undefined") {
1597
- }
1598
- this.initialized = true;
1599
- } catch (error) {
1600
- this.logger.error(
1601
- "Failed to initialize KwikPass adapter",
1602
- error
1603
- );
1604
- throw error;
1605
- }
1606
- }
1607
- /**
1608
- * Track an event using KwikPass
1609
- * @param event The event to track
1610
- * @param adapterParams Optional adapter-specific parameters
1611
- */
1612
- async trackEvent(event, adapterParams) {
1613
- if (!this.initialized || typeof window === "undefined") {
1614
- this.logger.warn(
1615
- "KwikPass adapter not initialized or not in browser environment"
1616
- );
1617
- return;
1618
- }
1619
- if (!this.enableKwikPassEvents) {
1620
- return;
1621
- }
1622
- const affiliateParams = this.enhanceWithAffiliateParams(event);
1623
- const enhancedEvent = this.enhanceWithExperimentParams(affiliateParams);
1624
- try {
1625
- switch (event.type) {
1626
- case "product_view_kp" /* PRODUCT_VIEW_KP */:
1627
- this.trackProductView(enhancedEvent, adapterParams);
1628
- break;
1629
- case "collection_view_kp" /* COLLECTION_VIEW_KP */:
1630
- this.trackCollectionView(enhancedEvent, adapterParams);
1631
- break;
1632
- case "page_view_kp" /* PAGE_VIEW_KP */:
1633
- this.trackPageView(enhancedEvent, adapterParams);
1634
- break;
1635
- default:
1636
- this.logger.warn("Event not supported", { eventType: event.type });
1637
- break;
1638
- }
1639
- } catch (error) {
1640
- this.logger.error("Error tracking KwikPass event", error, {
1641
- eventType: event.type
1642
- });
1643
- }
1644
- }
1645
- /**
1646
- * Send event to KwikPass platform
1647
- */
1648
- sendKwikPassEvent(type, eventData, adapterParams) {
1649
- const customEventType = this.getEventName(adapterParams, type);
1650
- const enhancedEventData = this.mergeEventData(eventData, adapterParams);
1651
- if (typeof window !== "undefined") {
1652
- const customEvent = new CustomEvent(`page_view_kp`, {
1653
- detail: {
1654
- type: customEventType,
1655
- detail: enhancedEventData
1656
- }
1657
- });
1658
- window.dispatchEvent(customEvent);
1659
- }
1660
- }
1661
- /**
1662
- * Track collection view event
1663
- */
1664
- trackCollectionView(event, adapterParams) {
1665
- this.sendKwikPassEvent(
1666
- "collection",
1667
- {
1668
- product_id: event.productId,
1669
- product_name: event.productName,
1670
- price: event.price,
1671
- currency: event.currency,
1672
- category: event.category,
1673
- timestamp: event.timestamp || Date.now()
1674
- },
1675
- adapterParams
1676
- );
1677
- }
1678
- /**
1679
- * Track product view event
1680
- */
1681
- trackProductView(event, adapterParams) {
1682
- this.sendKwikPassEvent(
1683
- "product",
1684
- {
1685
- product_id: event.productId,
1686
- product_name: event.productName,
1687
- price: event.price,
1688
- currency: event.currency,
1689
- category: event.category,
1690
- timestamp: event.timestamp || Date.now()
1691
- },
1692
- adapterParams
1693
- );
1694
- }
1695
- /**
1696
- * Track page view event
1697
- */
1698
- trackPageView(event, adapterParams) {
1699
- this.sendKwikPassEvent(
1700
- "other",
1701
- {
1702
- path: event.path,
1703
- title: event.title,
1704
- referrer: event.referrer,
1705
- timestamp: event.timestamp || Date.now()
1706
- },
1707
- adapterParams
1708
- );
1709
- }
1710
- };
1711
-
1712
- // src/adapters/kwik-checkout-adapter.ts
1713
- var KwikCheckoutAdapter = class extends BaseAdapter {
1714
- constructor(config) {
1715
- super(config);
1716
- this.name = "KwikCheckout";
1717
- this.mid = config.mid || "";
1718
- this.environment = config.environment || "production";
1719
- this.storeId = config.storeId || "";
1720
- this.initializeLogger();
1721
- }
1722
- /**
1723
- * Initialize the GoKwik adapter
1724
- */
1725
- async initialize() {
1726
- try {
1727
- if (typeof window !== "undefined") {
1728
- }
1729
- this.initialized = true;
1730
- } catch (error) {
1731
- this.logger.error("Failed to initialize GoKwik adapter", error);
1732
- throw error;
1733
- }
1734
- }
1735
- /**
1736
- * Track an event using GoKwik
1737
- * @param event The event to track
1738
- * @param adapterParams Optional adapter-specific parameters
1739
- */
1740
- async trackEvent(event, adapterParams) {
1741
- if (!event.eventId) {
1742
- event.eventId = generateEventId(event.type);
1743
- }
1744
- if (!event.timestamp) {
1745
- event.timestamp = Date.now();
1746
- }
1747
- await this.trackClientSide(event, adapterParams);
1748
- }
1749
- /**
1750
- * Check if the adapter is enabled
1751
- */
1752
- isEnabled() {
1753
- return this.initialized && typeof window !== "undefined";
1754
- }
1755
- /**
1756
- * Track event on client-side (browser GoKwik)
1757
- */
1758
- async trackClientSide(event, adapterParams) {
1759
- if (!this.initialized || typeof window === "undefined") {
1760
- this.logger.warn(
1761
- "Cannot track client-side event, adapter not initialized or not in browser environment",
1762
- {
1763
- eventType: event.type
1764
- }
1765
- );
1766
- return;
1767
- }
1768
- const { eventName, enhancedParams } = this.formatEventPayload(
1769
- event,
1770
- adapterParams
1771
- );
1772
- if (!eventName) {
1773
- return;
1774
- }
1775
- const finalParams = {
1776
- ...enhancedParams,
1777
- ...event.eventId && { event_id: event.eventId }
1778
- };
1779
- this.sendGoKwikEvent(eventName, finalParams);
1780
- }
1781
- /**
1782
- * Utility function to format event payload for client-side tracking
1783
- */
1784
- formatEventPayload(event, adapterParams) {
1785
- let baseParams = {};
1786
- let eventName = "";
1787
- switch (event.type) {
1788
- case "started_checkout_gk" /* STARTED_CHECKOUT_GK */:
1789
- eventName = this.getEventName(adapterParams, "started_checkout");
1790
- baseParams = {
1791
- cart_value: event.cartValue,
1792
- currency: event.currency,
1793
- timestamp: event.timestamp || Date.now()
1794
- };
1795
- break;
1796
- case "mobile_added_gk" /* MOBILE_ADDED_GK */:
1797
- eventName = this.getEventName(adapterParams, "mobile_added");
1798
- baseParams = {
1799
- mobile: event.mobile,
1800
- timestamp: event.timestamp || Date.now()
1801
- };
1802
- break;
1803
- case "address_selected_gk" /* ADDRESS_SELECTED_GK */:
1804
- eventName = this.getEventName(adapterParams, "address_selected");
1805
- baseParams = {
1806
- address_id: event.addressId,
1807
- timestamp: event.timestamp || Date.now()
1808
- };
1809
- break;
1810
- case "address_completed_gk" /* ADDRESS_COMPLETED_GK */:
1811
- eventName = this.getEventName(adapterParams, "address_completed");
1812
- baseParams = {
1813
- address_id: event.addressId,
1814
- timestamp: event.timestamp || Date.now()
1815
- };
1816
- break;
1817
- case "address_added_gk" /* ADDRESS_ADDED_GK */:
1818
- eventName = this.getEventName(adapterParams, "address_added");
1819
- baseParams = {
1820
- address_id: event.addressId,
1821
- timestamp: event.timestamp || Date.now()
1822
- };
1823
- break;
1824
- case "pin_code_added_gk" /* PIN_CODE_ADDED_GK */:
1825
- eventName = this.getEventName(adapterParams, "pin_code_added");
1826
- baseParams = {
1827
- pin_code: event.pinCode,
1828
- timestamp: event.timestamp || Date.now()
1829
- };
1830
- break;
1831
- case "payment_method_selected_gk" /* PAYMENT_METHOD_SELECTED_GK */:
1832
- eventName = this.getEventName(adapterParams, "payment_method_selected");
1833
- baseParams = {
1834
- payment_method: event.paymentMethod,
1835
- timestamp: event.timestamp || Date.now()
1836
- };
1837
- break;
1838
- case "payment_completed_gk" /* PAYMENT_COMPLETED_GK */:
1839
- eventName = this.getEventName(adapterParams, "payment_completed");
1840
- baseParams = {
1841
- amount: event.amount,
1842
- currency: event.currency,
1843
- timestamp: event.timestamp || Date.now()
1844
- };
1845
- break;
1846
- case "order_success" /* ORDER_SUCCESS */:
1847
- eventName = this.getEventName(adapterParams, "order_success");
1848
- baseParams = {
1849
- order_id: event.orderId,
1850
- amount: event.amount,
1851
- currency: event.currency,
1852
- timestamp: event.timestamp || Date.now()
1853
- };
1854
- break;
1855
- case "order_completed" /* ORDER_COMPLETED */:
1856
- eventName = this.getEventName(adapterParams, "order_completed");
1857
- baseParams = {
1858
- order_id: event.orderId,
1859
- amount: event.amount,
1860
- currency: event.currency,
1861
- timestamp: event.timestamp || Date.now()
1862
- };
1863
- break;
1864
- case "cart_viewed" /* CART_VIEWED */:
1865
- eventName = this.getEventName(adapterParams, "cart_viewed");
1866
- baseParams = {
1867
- cart_id: event.cartId,
1868
- products: event.products,
1869
- timestamp: event.timestamp || Date.now()
1870
- };
1871
- break;
1872
- case "initiate_checkout" /* INITIATE_CHECKOUT */:
1873
- eventName = this.getEventName(adapterParams, "checkout_started");
1874
- baseParams = {
1875
- cart_value: event.cartValue,
1876
- currency: event.currency,
1877
- item_count: event.itemCount,
1878
- items: event.items,
1879
- timestamp: event.timestamp || Date.now()
1880
- };
1881
- break;
1882
- case "purchase" /* PURCHASE */:
1883
- eventName = this.getEventName(adapterParams, "checkout_completed");
1884
- baseParams = {
1885
- order_id: event.orderId,
1886
- cart_value: event.cartValue,
1887
- currency: event.currency,
1888
- item_count: event.itemCount,
1889
- items: event.items,
1890
- timestamp: event.timestamp || Date.now()
1891
- };
1892
- break;
1893
- case "add_payment_info" /* ADD_PAYMENT_INFO */:
1894
- eventName = this.getEventName(adapterParams, "add_payment_info");
1895
- baseParams = {
1896
- cart_value: event.cartValue,
1897
- currency: event.currency,
1898
- item_count: event.itemCount,
1899
- payment_type: event.paymentType,
1900
- items: event.items,
1901
- timestamp: event.timestamp || Date.now()
1902
- };
1903
- break;
1904
- default:
1905
- this.logger.warn(`Skipping unknown event type: ${event.type}`);
1906
- return { eventName: "", enhancedParams: {} };
1907
- }
1908
- const affiliateParams = this.enhanceWithAffiliateParams(baseParams);
1909
- const experimentParams = this.enhanceWithExperimentParams(affiliateParams);
1910
- const enhancedParams = this.mergeEventData(experimentParams, adapterParams);
1911
- return { eventName, enhancedParams };
1912
- }
1913
- /**
1914
- * Send event to GoKwik platform
1915
- */
1916
- sendGoKwikEvent(eventName, eventData) {
1917
- try {
1918
- if (typeof window !== "undefined" && window.gokwikSdk) {
1919
- window.gokwikSdk.track?.(eventName, eventData);
1920
- } else {
1921
- if (typeof window !== "undefined") {
1922
- const customEvent = new CustomEvent(`gokwik_${eventName}`, {
1923
- detail: eventData
1924
- });
1925
- window.dispatchEvent(customEvent);
1926
- }
1927
- }
1928
- } catch (error) {
1929
- this.logger.error(
1930
- `Error sending GoKwik event ${eventName}`,
1931
- error
1932
- );
1933
- }
1934
- }
1935
- };
1936
1581
  // Annotate the CommonJS export names for ESM import in node:
1937
1582
  0 && (module.exports = {
1938
1583
  BaseAdapter,
1939
1584
  GoogleAdapter,
1940
- KwikCheckoutAdapter,
1941
- KwikPassAdapter,
1942
1585
  MoengageAdapter,
1943
1586
  MultiPixelAdapter,
1944
1587
  PostHogAdapter,