@passkeyme/react-auth 2.2.2 → 2.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -6474,7 +6474,8 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6474
6474
  authenticatedUser: null,
6475
6475
  });
6476
6476
  // Track if we've already processed the callback to prevent loops
6477
- const [callbackProcessed, setCallbackProcessed] = React.useState(false);
6477
+ // Using useRef instead of useState to avoid triggering re-renders when marked as processed
6478
+ const callbackProcessedRef = React.useRef(false);
6478
6479
  // Get effective passkey configuration (merge config with props)
6479
6480
  const effectivePasskeyConfig = {
6480
6481
  promptRegistration: (_d = (_b = (_a = passkey === null || passkey === void 0 ? void 0 : passkey.promptRegistration) !== null && _a !== void 0 ? _a : config.autoPromptPasskeyRegistration) !== null && _b !== void 0 ? _b : (_c = config.passkey) === null || _c === void 0 ? void 0 : _c.autoPromptRegistration) !== null && _d !== void 0 ? _d : true, // Default to true
@@ -6708,7 +6709,7 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6708
6709
  };
6709
6710
  React.useEffect(() => {
6710
6711
  // Don't process callback again if we've already done it
6711
- if (callbackProcessed)
6712
+ if (callbackProcessedRef.current)
6712
6713
  return;
6713
6714
  const processCallback = async () => {
6714
6715
  try {
@@ -6728,7 +6729,7 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6728
6729
  if (error) {
6729
6730
  const errorMessage = errorDescription || error || "Authentication failed";
6730
6731
  updateState({ loading: false, error: errorMessage, success: false });
6731
- setCallbackProcessed(true);
6732
+ callbackProcessedRef.current = true;
6732
6733
  if (onError) {
6733
6734
  onError(errorMessage);
6734
6735
  }
@@ -6766,6 +6767,8 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6766
6767
  showPasskeyPrompt: shouldPrompt,
6767
6768
  });
6768
6769
  debugLog(config, "CallbackHandler", "Token flow - updated state, showPasskeyPrompt:", shouldPrompt);
6770
+ // Mark callback as processed to prevent re-execution
6771
+ callbackProcessedRef.current = true;
6769
6772
  if (!shouldPrompt) {
6770
6773
  // Proceed with normal redirect
6771
6774
  proceedWithRedirect();
@@ -6778,7 +6781,7 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6778
6781
  error: errorMessage,
6779
6782
  success: false,
6780
6783
  });
6781
- setCallbackProcessed(true);
6784
+ callbackProcessedRef.current = true;
6782
6785
  if (onError) {
6783
6786
  onError(errorMessage);
6784
6787
  }
@@ -6815,6 +6818,8 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6815
6818
  showPasskeyPrompt: shouldPrompt,
6816
6819
  });
6817
6820
  debugLog(config, "CallbackHandler", "OAuth code flow - updated state, showPasskeyPrompt:", shouldPrompt);
6821
+ // Mark callback as processed to prevent re-execution
6822
+ callbackProcessedRef.current = true;
6818
6823
  if (!shouldPrompt) {
6819
6824
  // Proceed with normal redirect
6820
6825
  proceedWithRedirect();
@@ -6827,7 +6832,7 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6827
6832
  error: errorMessage,
6828
6833
  success: false,
6829
6834
  });
6830
- setCallbackProcessed(true);
6835
+ callbackProcessedRef.current = true;
6831
6836
  if (onError) {
6832
6837
  onError(errorMessage);
6833
6838
  }
@@ -6845,7 +6850,7 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6845
6850
  if (!token && !code) {
6846
6851
  const errorMessage = "No authentication token or code received";
6847
6852
  updateState({ loading: false, error: errorMessage, success: false });
6848
- setCallbackProcessed(true);
6853
+ callbackProcessedRef.current = true;
6849
6854
  if (onError) {
6850
6855
  onError(errorMessage);
6851
6856
  }
@@ -6858,12 +6863,12 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6858
6863
  }
6859
6864
  }
6860
6865
  // Mark as processed if we got here
6861
- setCallbackProcessed(true);
6866
+ callbackProcessedRef.current = true;
6862
6867
  }
6863
6868
  catch (err) {
6864
6869
  const errorMessage = err instanceof Error ? err.message : "Authentication failed";
6865
6870
  updateState({ loading: false, error: errorMessage, success: false });
6866
- setCallbackProcessed(true);
6871
+ callbackProcessedRef.current = true;
6867
6872
  if (onError) {
6868
6873
  onError(errorMessage);
6869
6874
  }
@@ -6878,7 +6883,6 @@ const PasskeymeCallbackHandler = ({ loadingComponent: LoadingComponent, errorCom
6878
6883
  };
6879
6884
  processCallback();
6880
6885
  }, [
6881
- callbackProcessed,
6882
6886
  handleCallback,
6883
6887
  handleTokenCallback,
6884
6888
  onError,