@marketrix.ai/widget 1.0.17 → 1.0.18

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 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAYjD,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACtF,OAAO,EAIL,gBAAgB,EASjB,MAAM,mBAAmB,CAAC;AAoF3B,eAAO,MAAM,UAAU,GACrB,QAAQ,eAAe,EACvB,YAAY,WAAW,KACtB,OAAO,CAAC,IAAI,CA+Gd,CAAC;AAKF,eAAO,MAAM,aAAa,QAAO,IAwBhC,CAAC;AAGF,eAAO,MAAM,qBAAqB,GAAU,WAAW,OAAO,CAAC,eAAe,CAAC,KAAG,OAAO,CAAC,IAAI,CAW7F,CAAC;AAGF,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA0E1D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,eAAe,KAAG,OAAO,CAAC,IAAI,CA4CvE,CAAC;AAcF,YAAY,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC7C,YAAY,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,WAAW,GACZ,MAAM,SAAS,CAAC;;;0BAjEyB,eAAe,KAAG,OAAO,CAAC,IAAI,CAAC;yBArP/D,eAAe,cACX,WAAW,KACtB,OAAO,CAAC,IAAI,CAAC;yBAoHiB,IAAI;uCA2BkB,OAAO,CAAC,eAAe,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC;;;AAwK/F,wBAOE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAYjD,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACtF,OAAO,EAIL,gBAAgB,EAUjB,MAAM,mBAAmB,CAAC;AAoF3B,eAAO,MAAM,UAAU,GACrB,QAAQ,eAAe,EACvB,YAAY,WAAW,KACtB,OAAO,CAAC,IAAI,CAuHd,CAAC;AAKF,eAAO,MAAM,aAAa,QAAO,IAwBhC,CAAC;AAGF,eAAO,MAAM,qBAAqB,GAAU,WAAW,OAAO,CAAC,eAAe,CAAC,KAAG,OAAO,CAAC,IAAI,CAW7F,CAAC;AAGF,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA0E1D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,eAAe,KAAG,OAAO,CAAC,IAAI,CAkDvE,CAAC;AAcF,YAAY,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAC7C,YAAY,EACV,eAAe,EACf,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,WAAW,GACZ,MAAM,SAAS,CAAC;;;0BAvEyB,eAAe,KAAG,OAAO,CAAC,IAAI,CAAC;yBA7P/D,eAAe,cACX,WAAW,KACtB,OAAO,CAAC,IAAI,CAAC;yBA4HiB,IAAI;uCA2BkB,OAAO,CAAC,eAAe,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC;;;AA8K/F,wBAOE"}
package/dist/index.mjs CHANGED
@@ -38579,6 +38579,7 @@ const shadowStyles = "/*! tailwindcss v4.1.18 | MIT License | https://tailwindcs
38579
38579
  let widgetInstance = null;
38580
38580
  let currentConfig = null;
38581
38581
  let loaderInstance = null;
38582
+ let programmaticInitInProgress = false;
38582
38583
  let widgetInstanceCounter = 0;
38583
38584
  const generateContainerId = () => {
38584
38585
  return `marketrix-widget-container-${++widgetInstanceCounter}`;
@@ -38665,6 +38666,12 @@ const clearWidgetState = () => {
38665
38666
  widgetInstance = null;
38666
38667
  currentConfig = null;
38667
38668
  };
38669
+ const setProgrammaticInitInProgress = (inProgress) => {
38670
+ programmaticInitInProgress = inProgress;
38671
+ };
38672
+ const isProgrammaticInitInProgress = () => {
38673
+ return programmaticInitInProgress;
38674
+ };
38668
38675
  const showWidgetSettingsLoader = (message) => {
38669
38676
  if (typeof window === "undefined" || typeof document === "undefined") {
38670
38677
  return;
@@ -38730,6 +38737,12 @@ const autoInitializeWidget = (retryCount = 0) => {
38730
38737
  setTimeout(() => autoInitializeWidget(retryCount + 1), delay);
38731
38738
  return;
38732
38739
  }
38740
+ if (isWidgetInitialized() || isProgrammaticInitInProgress()) {
38741
+ console.log(
38742
+ "[AutoInit] Script tag not found, but widget is initialized or programmatic init is in progress. Skipping error message."
38743
+ );
38744
+ return;
38745
+ }
38733
38746
  console.error("[AutoInit] Script tag not found after all retries");
38734
38747
  console.error(
38735
38748
  "[AutoInit] Available scripts:",
@@ -38802,6 +38815,12 @@ const autoInitializeWidget = (retryCount = 0) => {
38802
38815
  console.error("[AutoInit] Failed to initialize widget:", error);
38803
38816
  });
38804
38817
  } else {
38818
+ if (isWidgetInitialized() || isProgrammaticInitInProgress()) {
38819
+ console.log(
38820
+ "[AutoInit] Missing required attributes, but widget is initialized or programmatic init is in progress. Skipping error message."
38821
+ );
38822
+ return;
38823
+ }
38805
38824
  console.error("[AutoInit] Missing required attributes:", {
38806
38825
  hasMtxId: !!mtxId,
38807
38826
  hasMtxKey: !!mtxKey,
@@ -38879,8 +38898,10 @@ async function initializeWidgetWithConfig(config, validationResult) {
38879
38898
  }
38880
38899
  }
38881
38900
  const initWidget = async (config, container) => {
38901
+ setProgrammaticInitInProgress(true);
38882
38902
  if (isWidgetInitialized()) {
38883
38903
  console.warn("Marketrix Widget: already initialized");
38904
+ setProgrammaticInitInProgress(false);
38884
38905
  return;
38885
38906
  }
38886
38907
  if (config.mtxApiHost) {
@@ -38894,6 +38915,7 @@ const initWidget = async (config, container) => {
38894
38915
  showWidgetSettingsLoader(
38895
38916
  validationResult.error || "Widget validation failed. Please check your configuration."
38896
38917
  );
38918
+ setProgrammaticInitInProgress(false);
38897
38919
  return;
38898
38920
  }
38899
38921
  let finalConfig;
@@ -38902,6 +38924,7 @@ const initWidget = async (config, container) => {
38902
38924
  } catch (error) {
38903
38925
  const errorMessage = error instanceof Error ? error.message : "Failed to initialize widget";
38904
38926
  showWidgetSettingsLoader(errorMessage);
38927
+ setProgrammaticInitInProgress(false);
38905
38928
  return;
38906
38929
  }
38907
38930
  setCurrentConfig(finalConfig);
@@ -38909,6 +38932,7 @@ const initWidget = async (config, container) => {
38909
38932
  const { mountEl } = createWidgetContainer(container, containerId);
38910
38933
  const instance = mountWidgetToContainer(mountEl, finalConfig);
38911
38934
  setWidgetInstance(instance);
38935
+ setProgrammaticInitInProgress(false);
38912
38936
  try {
38913
38937
  if (sessionRecorder && isRecordingInitialized) {
38914
38938
  console.warn(
@@ -39040,6 +39064,7 @@ const MarketrixWidget = ({ settings, container }) => {
39040
39064
  return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { ref: containerRef, style: { width: "100%", height: "100%", position: "relative" } });
39041
39065
  };
39042
39066
  const mountWidget = async (config) => {
39067
+ setProgrammaticInitInProgress(true);
39043
39068
  const container = config.container;
39044
39069
  if ("settings" in config && config.settings !== void 0) {
39045
39070
  const previewConfig = config;
@@ -39050,6 +39075,7 @@ const mountWidget = async (config) => {
39050
39075
  const { mountEl } = createWidgetContainer(container, containerId);
39051
39076
  const instance = mountWidgetToContainer(mountEl, finalConfig);
39052
39077
  setWidgetInstance(instance);
39078
+ setProgrammaticInitInProgress(false);
39053
39079
  } else if ("mtxId" in config && config.mtxId !== void 0 && config.mtxKey !== void 0) {
39054
39080
  const prodConfig = config;
39055
39081
  const { mtxId, mtxKey, container: _container, ...restConfig } = prodConfig;
@@ -39073,6 +39099,7 @@ const mountWidget = async (config) => {
39073
39099
  container
39074
39100
  );
39075
39101
  } else {
39102
+ setProgrammaticInitInProgress(false);
39076
39103
  throw new Error(
39077
39104
  "Invalid configuration: provide either settings (preview), mtxId+mtxKey (production), or mtxApp+mtxAgent (dev)"
39078
39105
  );