@swype-org/react-sdk 0.1.259 → 0.1.260

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.cjs CHANGED
@@ -2060,143 +2060,143 @@ function isGuestPreauthCompletedTransferPinPhase(phase) {
2060
2060
  }
2061
2061
  }
2062
2062
  function resolvePhase(state) {
2063
- const p = state.phase;
2063
+ const currentPhase = state.phase;
2064
2064
  const transferCompleted = state.transfer?.status === "COMPLETED";
2065
2065
  const needsPasskeyBootstrap = state.privyAuthenticated && !state.activeCredentialId;
2066
- const guestPreauthPin = transferCompleted && state.guestPreauthorizing && !state.verificationTarget && isGuestPreauthCompletedTransferPinPhase(p);
2066
+ const guestPreauthPinsCurrentPhase = transferCompleted && state.guestPreauthorizing && !state.verificationTarget && isGuestPreauthCompletedTransferPinPhase(currentPhase);
2067
2067
  const guestPostPayLogin = transferCompleted && state.isGuestFlow && state.guestPreauthSessionId != null && !state.guestPreauthorizing && !state.verificationTarget && !state.privyAuthenticated;
2068
- const pinSubflow = !state.loginRequested && (p.step === "token-picker" || p.step === "one-tap-setup" || p.step === "select-source" || p.step === "confirm-sign" || p.step === "guest-token-picker");
2069
- const guestTokenPicker = state.isGuestFlow && state.selectedProviderId != null && !state.transfer && !state.guestPreauthAccountId;
2070
- const walletPickerSwitch = p.step === "wallet-picker" && p.reason === "switch" && !state.creatingTransfer && !(state.mobileFlow && state.deeplinkUri);
2071
- const passkeyBlock = state.passkeyConfigLoaded && !state.activeCredentialId;
2072
- const passkeyVerify = passkeyBlock && state.knownCredentialIds.length > 0 && state.passkeyPopupNeeded;
2073
- const c1 = state.guestPreauthSetupCompletePending && state.privyReady && state.privyAuthenticated;
2074
- const c2 = !c1 && guestPreauthPin;
2075
- const c3 = !c1 && !c2 && guestPostPayLogin;
2076
- const c4 = !c1 && !c2 && !c3 && transferCompleted && !state.verificationTarget && !needsPasskeyBootstrap;
2077
- const c5 = !c1 && !c2 && !c3 && !c4 && state.transfer?.status === "FAILED";
2078
- const c6 = !c1 && !c2 && !c3 && !c4 && !c5 && (state.creatingTransfer || isTransferAwaitingCompletion(state.transfer));
2079
- const c7 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && pinSubflow;
2080
- const c8 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && state.mobileFlow && state.deeplinkUri != null;
2081
- const c9 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && p.step === "wallet-setup" && p.mobile == null && state.guestPreauthorizing;
2082
- const c10 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && guestTokenPicker;
2083
- const c11 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && walletPickerSwitch;
2084
- const c12 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !state.privyReady;
2085
- const c13 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && state.privyAuthenticated && !state.activeCredentialId && !state.passkeyConfigLoaded;
2086
- const c14 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && state.verificationTarget != null && !state.privyAuthenticated;
2087
- const c15 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && state.loginRequested;
2088
- const c16 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && !c15 && passkeyVerify;
2089
- const c17 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && !c15 && !c16 && passkeyBlock;
2090
- const c18 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && !c15 && !c16 && !c17 && state.loadingData && state.activeCredentialId != null && hasActiveWallet(state.accounts);
2091
- const c19 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && !c15 && !c16 && !c17 && !c18 && state.activeCredentialId != null && !hasActiveWallet(state.accounts) && !state.mobileFlow;
2092
- const c20 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && !c15 && !c16 && !c17 && !c18 && !c19 && state.activeCredentialId != null && hasActiveWallet(state.accounts) && !state.loadingData;
2093
- const c21 = !c1 && !c2 && !c3 && !c4 && !c5 && !c6 && !c7 && !c8 && !c9 && !c10 && !c11 && !c12 && !c13 && !c14 && !c15 && !c16 && !c17 && !c18 && !c19 && !c20 && state.isGuestFlow;
2094
- const flags = [
2095
- c1,
2096
- c2,
2097
- c3,
2098
- c4,
2099
- c5,
2100
- c6,
2101
- c7,
2102
- c8,
2103
- c9,
2104
- c10,
2105
- c11,
2106
- c12,
2107
- c13,
2108
- c14,
2109
- c15,
2110
- c16,
2111
- c17,
2112
- c18,
2113
- c19,
2114
- c20,
2115
- c21
2068
+ const isFundingSourceSubflow = !state.loginRequested && (currentPhase.step === "token-picker" || currentPhase.step === "one-tap-setup" || currentPhase.step === "select-source" || currentPhase.step === "confirm-sign" || currentPhase.step === "guest-token-picker");
2069
+ const guestTokenPickerEligible = state.isGuestFlow && state.selectedProviderId != null && !state.transfer && !state.guestPreauthAccountId;
2070
+ const walletPickerSwitchEligible = currentPhase.step === "wallet-picker" && currentPhase.reason === "switch" && !state.creatingTransfer && !(state.mobileFlow && state.deeplinkUri);
2071
+ const missingActivePasskeyCredential = state.passkeyConfigLoaded && !state.activeCredentialId;
2072
+ const shouldPromptPasskeyVerification = missingActivePasskeyCredential && state.knownCredentialIds.length > 0 && state.passkeyPopupNeeded;
2073
+ const branchGuestSetupComplete = state.guestPreauthSetupCompletePending && state.privyReady && state.privyAuthenticated;
2074
+ const branchKeepGuestPreauthPin = !branchGuestSetupComplete && guestPreauthPinsCurrentPhase;
2075
+ const branchGuestPostPayLogin = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && guestPostPayLogin;
2076
+ const branchCompleted = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && transferCompleted && !state.verificationTarget && !needsPasskeyBootstrap;
2077
+ const branchFailed = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && state.transfer?.status === "FAILED";
2078
+ const branchProcessing = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && (state.creatingTransfer || isTransferAwaitingCompletion(state.transfer));
2079
+ const branchKeepFundingSubflow = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && isFundingSourceSubflow;
2080
+ const branchMobileWalletSetup = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && state.mobileFlow && state.deeplinkUri != null;
2081
+ const branchKeepGuestWalletSetup = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && currentPhase.step === "wallet-setup" && currentPhase.mobile == null && state.guestPreauthorizing;
2082
+ const branchGuestTokenPicker = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && guestTokenPickerEligible;
2083
+ const branchKeepWalletPickerSwitch = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && walletPickerSwitchEligible;
2084
+ const branchInitializingPrivy = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !state.privyReady;
2085
+ const branchInitializingPasskeyConfig = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && state.privyAuthenticated && !state.activeCredentialId && !state.passkeyConfigLoaded;
2086
+ const branchOtpVerify = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && state.verificationTarget != null && !state.privyAuthenticated;
2087
+ const branchLoginRequested = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && state.loginRequested;
2088
+ const branchPasskeyVerify = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && !branchLoginRequested && shouldPromptPasskeyVerification;
2089
+ const branchPasskeyCreate = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && !branchLoginRequested && !branchPasskeyVerify && missingActivePasskeyCredential;
2090
+ const branchDataLoading = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && !branchLoginRequested && !branchPasskeyVerify && !branchPasskeyCreate && state.loadingData && state.activeCredentialId != null && hasActiveWallet(state.accounts);
2091
+ const branchWalletPickerLink = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && !branchLoginRequested && !branchPasskeyVerify && !branchPasskeyCreate && !branchDataLoading && state.activeCredentialId != null && !hasActiveWallet(state.accounts) && !state.mobileFlow;
2092
+ const branchDeposit = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && !branchLoginRequested && !branchPasskeyVerify && !branchPasskeyCreate && !branchDataLoading && !branchWalletPickerLink && state.activeCredentialId != null && hasActiveWallet(state.accounts) && !state.loadingData;
2093
+ const branchWalletPickerGuestEntry = !branchGuestSetupComplete && !branchKeepGuestPreauthPin && !branchGuestPostPayLogin && !branchCompleted && !branchFailed && !branchProcessing && !branchKeepFundingSubflow && !branchMobileWalletSetup && !branchKeepGuestWalletSetup && !branchGuestTokenPicker && !branchKeepWalletPickerSwitch && !branchInitializingPrivy && !branchInitializingPasskeyConfig && !branchOtpVerify && !branchLoginRequested && !branchPasskeyVerify && !branchPasskeyCreate && !branchDataLoading && !branchWalletPickerLink && !branchDeposit && state.isGuestFlow;
2094
+ const exclusiveBranchFlags = [
2095
+ branchGuestSetupComplete,
2096
+ branchKeepGuestPreauthPin,
2097
+ branchGuestPostPayLogin,
2098
+ branchCompleted,
2099
+ branchFailed,
2100
+ branchProcessing,
2101
+ branchKeepFundingSubflow,
2102
+ branchMobileWalletSetup,
2103
+ branchKeepGuestWalletSetup,
2104
+ branchGuestTokenPicker,
2105
+ branchKeepWalletPickerSwitch,
2106
+ branchInitializingPrivy,
2107
+ branchInitializingPasskeyConfig,
2108
+ branchOtpVerify,
2109
+ branchLoginRequested,
2110
+ branchPasskeyVerify,
2111
+ branchPasskeyCreate,
2112
+ branchDataLoading,
2113
+ branchWalletPickerLink,
2114
+ branchDeposit,
2115
+ branchWalletPickerGuestEntry
2116
2116
  ];
2117
- const matchCount = flags.filter(Boolean).length;
2117
+ const matchCount = exclusiveBranchFlags.filter(Boolean).length;
2118
2118
  if (matchCount > 1) {
2119
2119
  console.error("resolvePhase: multiple exclusive branches matched", {
2120
- flags: {
2121
- c1,
2122
- c2,
2123
- c3,
2124
- c4,
2125
- c5,
2126
- c6,
2127
- c7,
2128
- c8,
2129
- c9,
2130
- c10,
2131
- c11,
2132
- c12,
2133
- c13,
2134
- c14,
2135
- c15,
2136
- c16,
2137
- c17,
2138
- c18,
2139
- c19,
2140
- c20,
2141
- c21
2120
+ branches: {
2121
+ branchGuestSetupComplete,
2122
+ branchKeepGuestPreauthPin,
2123
+ branchGuestPostPayLogin,
2124
+ branchCompleted,
2125
+ branchFailed,
2126
+ branchProcessing,
2127
+ branchKeepFundingSubflow,
2128
+ branchMobileWalletSetup,
2129
+ branchKeepGuestWalletSetup,
2130
+ branchGuestTokenPicker,
2131
+ branchKeepWalletPickerSwitch,
2132
+ branchInitializingPrivy,
2133
+ branchInitializingPasskeyConfig,
2134
+ branchOtpVerify,
2135
+ branchLoginRequested,
2136
+ branchPasskeyVerify,
2137
+ branchPasskeyCreate,
2138
+ branchDataLoading,
2139
+ branchWalletPickerLink,
2140
+ branchDeposit,
2141
+ branchWalletPickerGuestEntry
2142
2142
  }
2143
2143
  });
2144
2144
  }
2145
- let resolved;
2146
- if (c1) {
2147
- resolved = { step: "guest-setup-complete" };
2148
- } else if (c2) {
2149
- resolved = p;
2150
- } else if (c3) {
2151
- resolved = { step: "login" };
2152
- } else if (c4) {
2153
- resolved = { step: "completed", transfer: state.transfer };
2154
- } else if (c5) {
2155
- resolved = {
2145
+ let nextPhase;
2146
+ if (branchGuestSetupComplete) {
2147
+ nextPhase = { step: "guest-setup-complete" };
2148
+ } else if (branchKeepGuestPreauthPin) {
2149
+ nextPhase = currentPhase;
2150
+ } else if (branchGuestPostPayLogin) {
2151
+ nextPhase = { step: "login" };
2152
+ } else if (branchCompleted) {
2153
+ nextPhase = { step: "completed", transfer: state.transfer };
2154
+ } else if (branchFailed) {
2155
+ nextPhase = {
2156
2156
  step: "failed",
2157
2157
  transfer: state.transfer,
2158
2158
  error: state.error ?? "Transfer failed."
2159
2159
  };
2160
- } else if (c6) {
2161
- resolved = { step: "processing", transfer: state.transfer };
2162
- } else if (c7) {
2163
- resolved = p;
2164
- } else if (c8) {
2165
- resolved = {
2160
+ } else if (branchProcessing) {
2161
+ nextPhase = { step: "processing", transfer: state.transfer };
2162
+ } else if (branchKeepFundingSubflow) {
2163
+ nextPhase = currentPhase;
2164
+ } else if (branchMobileWalletSetup) {
2165
+ nextPhase = {
2166
2166
  step: "wallet-setup",
2167
2167
  mobile: { deeplinkUri: state.deeplinkUri, providerId: state.selectedProviderId },
2168
2168
  accountId: null
2169
2169
  };
2170
- } else if (c9) {
2171
- resolved = p;
2172
- } else if (c10) {
2173
- resolved = { step: "guest-token-picker" };
2174
- } else if (c11) {
2175
- resolved = p;
2176
- } else if (c12) {
2177
- resolved = { step: "initializing" };
2178
- } else if (c13) {
2179
- resolved = { step: "initializing" };
2180
- } else if (c14) {
2181
- resolved = { step: "otp-verify", target: state.verificationTarget };
2182
- } else if (c15) {
2183
- resolved = { step: "login" };
2184
- } else if (c16) {
2185
- resolved = { step: "passkey-verify" };
2186
- } else if (c17) {
2187
- resolved = { step: "passkey-create", popupFallback: state.passkeyPopupNeeded };
2188
- } else if (c18) {
2189
- resolved = { step: "data-loading" };
2190
- } else if (c19) {
2191
- resolved = { step: "wallet-picker", reason: "link" };
2192
- } else if (c20) {
2193
- resolved = { step: "deposit" };
2194
- } else if (c21) {
2195
- resolved = { step: "wallet-picker", reason: "guest-entry" };
2170
+ } else if (branchKeepGuestWalletSetup) {
2171
+ nextPhase = currentPhase;
2172
+ } else if (branchGuestTokenPicker) {
2173
+ nextPhase = { step: "guest-token-picker" };
2174
+ } else if (branchKeepWalletPickerSwitch) {
2175
+ nextPhase = currentPhase;
2176
+ } else if (branchInitializingPrivy) {
2177
+ nextPhase = { step: "initializing" };
2178
+ } else if (branchInitializingPasskeyConfig) {
2179
+ nextPhase = { step: "initializing" };
2180
+ } else if (branchOtpVerify) {
2181
+ nextPhase = { step: "otp-verify", target: state.verificationTarget };
2182
+ } else if (branchLoginRequested) {
2183
+ nextPhase = { step: "login" };
2184
+ } else if (branchPasskeyVerify) {
2185
+ nextPhase = { step: "passkey-verify" };
2186
+ } else if (branchPasskeyCreate) {
2187
+ nextPhase = { step: "passkey-create", popupFallback: state.passkeyPopupNeeded };
2188
+ } else if (branchDataLoading) {
2189
+ nextPhase = { step: "data-loading" };
2190
+ } else if (branchWalletPickerLink) {
2191
+ nextPhase = { step: "wallet-picker", reason: "link" };
2192
+ } else if (branchDeposit) {
2193
+ nextPhase = { step: "deposit" };
2194
+ } else if (branchWalletPickerGuestEntry) {
2195
+ nextPhase = { step: "wallet-picker", reason: "guest-entry" };
2196
2196
  } else {
2197
- resolved = { step: "wallet-picker", reason: "entry" };
2197
+ nextPhase = { step: "wallet-picker", reason: "entry" };
2198
2198
  }
2199
- return resolved;
2199
+ return nextPhase;
2200
2200
  }
2201
2201
 
2202
2202
  // src/paymentReducer.ts