@nexus-cross/crossx-sdk-core 2.2.4 → 2.3.0-beta.2

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 (194) hide show
  1. package/dist/adapters/chain/RemoteChainRegistryAdapter.d.ts +0 -1
  2. package/dist/adapters/confirmation/BridgeConfirmationAdapter.d.ts +1 -1
  3. package/dist/adapters/confirmation/BrowserConfirmationAdapter.d.ts +1 -1
  4. package/dist/adapters/crypto/JoseCryptoAdapter.d.ts +0 -1
  5. package/dist/adapters/index.d.ts +0 -1
  6. package/dist/adapters/oauth/BrowserOAuthAdapter.d.ts +0 -1
  7. package/dist/adapters/storage/IndexedDBStorageAdapter.d.ts +0 -1
  8. package/dist/adapters/storage/LocalStorageAdapter.d.ts +0 -1
  9. package/dist/adapters/transport/FetchTransportAdapter.d.ts +0 -1
  10. package/dist/adapters/wallet/MockWalletProviderAdapter.d.ts +0 -1
  11. package/dist/adapters/wallet/RNBridgeWalletProviderAdapter.d.ts +13 -2
  12. package/dist/adapters/wallet/RemoteWalletProviderAdapter.d.ts +0 -1
  13. package/dist/adapters/wallet/types.d.ts +0 -1
  14. package/dist/core/config/environments.d.ts +0 -1
  15. package/dist/core/constants.d.ts +1 -2
  16. package/dist/core/i18n/index.d.ts +0 -1
  17. package/dist/core/i18n/messages.en.d.ts +0 -1
  18. package/dist/core/i18n/messages.ko.d.ts +0 -1
  19. package/dist/core/i18n/types.d.ts +4 -1
  20. package/dist/core/index.d.ts +0 -1
  21. package/dist/core/ports/ChainRegistryPort.d.ts +0 -1
  22. package/dist/core/ports/ConfirmationPort.d.ts +5 -1
  23. package/dist/core/ports/CryptoPort.d.ts +0 -1
  24. package/dist/core/ports/LoggerPort.d.ts +0 -1
  25. package/dist/core/ports/OAuthPort.d.ts +0 -1
  26. package/dist/core/ports/StoragePort.d.ts +0 -1
  27. package/dist/core/ports/TransportPort.d.ts +0 -1
  28. package/dist/core/ports/WalletProviderPort.d.ts +0 -1
  29. package/dist/core/ports/index.d.ts +0 -1
  30. package/dist/core/services/JsonRpcService.d.ts +0 -1
  31. package/dist/core/services/PasswordMemoryStore.d.ts +0 -1
  32. package/dist/core/services/PinMemoryStore.d.ts +0 -1
  33. package/dist/core/services/RNBridgeBootstrapService.d.ts +19 -1
  34. package/dist/core/services/TokenMemoryStore.d.ts +0 -1
  35. package/dist/core/services/TypedEventEmitter.d.ts +0 -1
  36. package/dist/core/types/caip.d.ts +0 -1
  37. package/dist/core/types/chain.d.ts +0 -1
  38. package/dist/core/types/connectOtherWallet.d.ts +0 -1
  39. package/dist/core/types/errors.d.ts +0 -1
  40. package/dist/core/types/events.d.ts +0 -1
  41. package/dist/core/types/index.d.ts +0 -1
  42. package/dist/core/types/internal.d.ts +0 -1
  43. package/dist/core/types/prepare.d.ts +0 -1
  44. package/dist/core/types/rn-bridge.d.ts +9 -1
  45. package/dist/core/types/tokenHistory.d.ts +0 -1
  46. package/dist/core/usecases/MigrateWalletUseCase.d.ts +0 -1
  47. package/dist/core/usecases/SignInUseCase.d.ts +8 -2
  48. package/dist/core/usecases/SignOutUseCase.d.ts +0 -1
  49. package/dist/core/usecases/index.d.ts +0 -1
  50. package/dist/core/utils/apiUrl.d.ts +0 -1
  51. package/dist/core/utils/logger.d.ts +0 -1
  52. package/dist/core/utils/parseOAuthDeeplink.d.ts +0 -1
  53. package/dist/core/utils/resolveConnectOtherWallets.d.ts +0 -1
  54. package/dist/crossx.global +716 -258
  55. package/dist/index.cjs +834 -376
  56. package/dist/index.d.ts +0 -1
  57. package/dist/index.js +3472 -4472
  58. package/dist/sdk/CROSSxSDK.d.ts +16 -2
  59. package/dist/sdk/EthereumProvider.d.ts +0 -1
  60. package/dist/sdk/factory.d.ts +0 -1
  61. package/dist/sdk/services/AddressResolverService.d.ts +0 -1
  62. package/dist/sdk/services/AuthGuardService.d.ts +0 -1
  63. package/dist/sdk/services/MigrationOrchestrator.d.ts +0 -1
  64. package/dist/sdk/services/PinOrchestrator.d.ts +0 -1
  65. package/dist/sdk/services/SessionOrchestrator.d.ts +0 -1
  66. package/dist/sdk/services/SignatureVerifier.d.ts +0 -1
  67. package/dist/sdk/services/SigningOrchestrator.d.ts +0 -1
  68. package/dist/sdk/services/StateManager.d.ts +0 -1
  69. package/dist/sdk/services/TokenHistoryService.d.ts +0 -1
  70. package/dist/sdk/services/TransactionLifecycleService.d.ts +0 -1
  71. package/dist/sdk/services/WalletCreationService.d.ts +1 -1
  72. package/dist/sdk/services/WalletLifecycleService.d.ts +0 -1
  73. package/dist/sdk/services/index.d.ts +0 -1
  74. package/dist/sdk/utils/amount.d.ts +0 -1
  75. package/dist/sdk/utils/auth.d.ts +0 -1
  76. package/dist/sdk/utils/signature.d.ts +0 -1
  77. package/dist/sdk/utils/typedData.d.ts +0 -1
  78. package/package.json +2 -1
  79. package/dist/__tests__/adapters/BrowserConfirmationAdapter.test.d.ts +0 -2
  80. package/dist/__tests__/adapters/BrowserConfirmationAdapter.test.d.ts.map +0 -1
  81. package/dist/__tests__/adapters/BrowserOAuthAdapter.test.d.ts +0 -2
  82. package/dist/__tests__/adapters/BrowserOAuthAdapter.test.d.ts.map +0 -1
  83. package/dist/__tests__/adapters/IndexedDBStorageAdapter.test.d.ts +0 -2
  84. package/dist/__tests__/adapters/IndexedDBStorageAdapter.test.d.ts.map +0 -1
  85. package/dist/__tests__/adapters/RemoteWalletProviderAdapter.test.d.ts +0 -2
  86. package/dist/__tests__/adapters/RemoteWalletProviderAdapter.test.d.ts.map +0 -1
  87. package/dist/__tests__/mocks/MockChainRegistryPort.d.ts +0 -9
  88. package/dist/__tests__/mocks/MockChainRegistryPort.d.ts.map +0 -1
  89. package/dist/__tests__/mocks/MockCryptoPort.d.ts +0 -15
  90. package/dist/__tests__/mocks/MockCryptoPort.d.ts.map +0 -1
  91. package/dist/__tests__/mocks/MockOAuthPort.d.ts +0 -11
  92. package/dist/__tests__/mocks/MockOAuthPort.d.ts.map +0 -1
  93. package/dist/__tests__/mocks/MockStoragePort.d.ts +0 -18
  94. package/dist/__tests__/mocks/MockStoragePort.d.ts.map +0 -1
  95. package/dist/__tests__/mocks/MockTransportPort.d.ts +0 -19
  96. package/dist/__tests__/mocks/MockTransportPort.d.ts.map +0 -1
  97. package/dist/__tests__/mocks/MockWalletProviderPort.d.ts +0 -44
  98. package/dist/__tests__/mocks/MockWalletProviderPort.d.ts.map +0 -1
  99. package/dist/__tests__/sdk/CROSSxSDK.test.d.ts +0 -2
  100. package/dist/__tests__/sdk/CROSSxSDK.test.d.ts.map +0 -1
  101. package/dist/__tests__/sdk/EthereumProvider.test.d.ts +0 -2
  102. package/dist/__tests__/sdk/EthereumProvider.test.d.ts.map +0 -1
  103. package/dist/__tests__/sdk/walletChanged.test.d.ts +0 -8
  104. package/dist/__tests__/sdk/walletChanged.test.d.ts.map +0 -1
  105. package/dist/__tests__/services/AddressResolverService.test.d.ts +0 -2
  106. package/dist/__tests__/services/AddressResolverService.test.d.ts.map +0 -1
  107. package/dist/__tests__/services/AuthGuardService.test.d.ts +0 -2
  108. package/dist/__tests__/services/AuthGuardService.test.d.ts.map +0 -1
  109. package/dist/__tests__/services/StateManager.test.d.ts +0 -2
  110. package/dist/__tests__/services/StateManager.test.d.ts.map +0 -1
  111. package/dist/__tests__/services/TokenMemoryStore.test.d.ts +0 -2
  112. package/dist/__tests__/services/TokenMemoryStore.test.d.ts.map +0 -1
  113. package/dist/__tests__/services/TransactionLifecycleService.test.d.ts +0 -2
  114. package/dist/__tests__/services/TransactionLifecycleService.test.d.ts.map +0 -1
  115. package/dist/__tests__/usecases/SignInUseCase.test.d.ts +0 -2
  116. package/dist/__tests__/usecases/SignInUseCase.test.d.ts.map +0 -1
  117. package/dist/__tests__/usecases/SignOutUseCase.test.d.ts +0 -2
  118. package/dist/__tests__/usecases/SignOutUseCase.test.d.ts.map +0 -1
  119. package/dist/__tests__/utils/parseOAuthDeeplink.test.d.ts +0 -20
  120. package/dist/__tests__/utils/parseOAuthDeeplink.test.d.ts.map +0 -1
  121. package/dist/adapters/chain/RemoteChainRegistryAdapter.d.ts.map +0 -1
  122. package/dist/adapters/confirmation/BridgeConfirmationAdapter.d.ts.map +0 -1
  123. package/dist/adapters/confirmation/BrowserConfirmationAdapter.d.ts.map +0 -1
  124. package/dist/adapters/crypto/JoseCryptoAdapter.d.ts.map +0 -1
  125. package/dist/adapters/index.d.ts.map +0 -1
  126. package/dist/adapters/oauth/BrowserOAuthAdapter.d.ts.map +0 -1
  127. package/dist/adapters/storage/IndexedDBStorageAdapter.d.ts.map +0 -1
  128. package/dist/adapters/storage/LocalStorageAdapter.d.ts.map +0 -1
  129. package/dist/adapters/transport/FetchTransportAdapter.d.ts.map +0 -1
  130. package/dist/adapters/wallet/MockWalletProviderAdapter.d.ts.map +0 -1
  131. package/dist/adapters/wallet/RNBridgeWalletProviderAdapter.d.ts.map +0 -1
  132. package/dist/adapters/wallet/RemoteWalletProviderAdapter.d.ts.map +0 -1
  133. package/dist/adapters/wallet/types.d.ts.map +0 -1
  134. package/dist/core/config/environments.d.ts.map +0 -1
  135. package/dist/core/constants.d.ts.map +0 -1
  136. package/dist/core/i18n/index.d.ts.map +0 -1
  137. package/dist/core/i18n/messages.en.d.ts.map +0 -1
  138. package/dist/core/i18n/messages.ko.d.ts.map +0 -1
  139. package/dist/core/i18n/types.d.ts.map +0 -1
  140. package/dist/core/index.d.ts.map +0 -1
  141. package/dist/core/ports/ChainRegistryPort.d.ts.map +0 -1
  142. package/dist/core/ports/ConfirmationPort.d.ts.map +0 -1
  143. package/dist/core/ports/CryptoPort.d.ts.map +0 -1
  144. package/dist/core/ports/LoggerPort.d.ts.map +0 -1
  145. package/dist/core/ports/OAuthPort.d.ts.map +0 -1
  146. package/dist/core/ports/StoragePort.d.ts.map +0 -1
  147. package/dist/core/ports/TransportPort.d.ts.map +0 -1
  148. package/dist/core/ports/WalletProviderPort.d.ts.map +0 -1
  149. package/dist/core/ports/index.d.ts.map +0 -1
  150. package/dist/core/services/JsonRpcService.d.ts.map +0 -1
  151. package/dist/core/services/PasswordMemoryStore.d.ts.map +0 -1
  152. package/dist/core/services/PinMemoryStore.d.ts.map +0 -1
  153. package/dist/core/services/RNBridgeBootstrapService.d.ts.map +0 -1
  154. package/dist/core/services/TokenMemoryStore.d.ts.map +0 -1
  155. package/dist/core/services/TypedEventEmitter.d.ts.map +0 -1
  156. package/dist/core/types/caip.d.ts.map +0 -1
  157. package/dist/core/types/chain.d.ts.map +0 -1
  158. package/dist/core/types/connectOtherWallet.d.ts.map +0 -1
  159. package/dist/core/types/errors.d.ts.map +0 -1
  160. package/dist/core/types/events.d.ts.map +0 -1
  161. package/dist/core/types/index.d.ts.map +0 -1
  162. package/dist/core/types/internal.d.ts.map +0 -1
  163. package/dist/core/types/prepare.d.ts.map +0 -1
  164. package/dist/core/types/rn-bridge.d.ts.map +0 -1
  165. package/dist/core/types/tokenHistory.d.ts.map +0 -1
  166. package/dist/core/usecases/MigrateWalletUseCase.d.ts.map +0 -1
  167. package/dist/core/usecases/SignInUseCase.d.ts.map +0 -1
  168. package/dist/core/usecases/SignOutUseCase.d.ts.map +0 -1
  169. package/dist/core/usecases/index.d.ts.map +0 -1
  170. package/dist/core/utils/apiUrl.d.ts.map +0 -1
  171. package/dist/core/utils/logger.d.ts.map +0 -1
  172. package/dist/core/utils/parseOAuthDeeplink.d.ts.map +0 -1
  173. package/dist/core/utils/resolveConnectOtherWallets.d.ts.map +0 -1
  174. package/dist/index.d.ts.map +0 -1
  175. package/dist/sdk/CROSSxSDK.d.ts.map +0 -1
  176. package/dist/sdk/EthereumProvider.d.ts.map +0 -1
  177. package/dist/sdk/factory.d.ts.map +0 -1
  178. package/dist/sdk/services/AddressResolverService.d.ts.map +0 -1
  179. package/dist/sdk/services/AuthGuardService.d.ts.map +0 -1
  180. package/dist/sdk/services/MigrationOrchestrator.d.ts.map +0 -1
  181. package/dist/sdk/services/PinOrchestrator.d.ts.map +0 -1
  182. package/dist/sdk/services/SessionOrchestrator.d.ts.map +0 -1
  183. package/dist/sdk/services/SignatureVerifier.d.ts.map +0 -1
  184. package/dist/sdk/services/SigningOrchestrator.d.ts.map +0 -1
  185. package/dist/sdk/services/StateManager.d.ts.map +0 -1
  186. package/dist/sdk/services/TokenHistoryService.d.ts.map +0 -1
  187. package/dist/sdk/services/TransactionLifecycleService.d.ts.map +0 -1
  188. package/dist/sdk/services/WalletCreationService.d.ts.map +0 -1
  189. package/dist/sdk/services/WalletLifecycleService.d.ts.map +0 -1
  190. package/dist/sdk/services/index.d.ts.map +0 -1
  191. package/dist/sdk/utils/amount.d.ts.map +0 -1
  192. package/dist/sdk/utils/auth.d.ts.map +0 -1
  193. package/dist/sdk/utils/signature.d.ts.map +0 -1
  194. package/dist/sdk/utils/typedData.d.ts.map +0 -1
@@ -29,4 +29,3 @@ export declare class RemoteChainRegistryAdapter implements ChainRegistryPort {
29
29
  private static fallbackChains;
30
30
  private static mapErrorCode;
31
31
  }
32
- //# sourceMappingURL=RemoteChainRegistryAdapter.d.ts.map
@@ -51,6 +51,7 @@ export declare class BridgeConfirmationAdapter implements ConfirmationPort {
51
51
  index: number;
52
52
  name?: string;
53
53
  } | null>;
54
+ showWalletCreatedPrompt(): Promise<void>;
54
55
  showPinSetupPrompt(options?: {
55
56
  errorMessage?: string;
56
57
  }): Promise<string | null>;
@@ -77,4 +78,3 @@ export declare class BridgeConfirmationAdapter implements ConfirmationPort {
77
78
  setMessages(messages: any): void;
78
79
  setPinKeyboard(option: PinKeyboardOption | undefined): void;
79
80
  }
80
- //# sourceMappingURL=BridgeConfirmationAdapter.d.ts.map
@@ -44,6 +44,7 @@ export declare class BrowserConfirmationAdapter implements ConfirmationPort {
44
44
  index: number;
45
45
  name?: string;
46
46
  } | null>;
47
+ showWalletCreatedPrompt(): Promise<void>;
47
48
  /**
48
49
  * `onAddWallet()` 실패 시 모달에 표시할 사용자 안내 문자열을 결정합니다.
49
50
  * - `ADDRESS_LIMIT_EXCEEDED` (-10036): 한도 안내 (`{limit}` 치환)
@@ -133,4 +134,3 @@ export declare class BrowserConfirmationAdapter implements ConfirmationPort {
133
134
  showTransactionProgress(pending: TransactionPendingDetails, receiptPromise: Promise<TransactionCompleteDetails>): Promise<void>;
134
135
  requestConfirmation(details: ConfirmationDetails): Promise<boolean>;
135
136
  }
136
- //# sourceMappingURL=BrowserConfirmationAdapter.d.ts.map
@@ -15,4 +15,3 @@ export declare class JoseCryptoAdapter implements CryptoPort {
15
15
  */
16
16
  recoverPersonalSignSigner(message: string, signature: string): string;
17
17
  }
18
- //# sourceMappingURL=JoseCryptoAdapter.d.ts.map
@@ -7,4 +7,3 @@ export * from './crypto/JoseCryptoAdapter';
7
7
  export * from './transport/FetchTransportAdapter';
8
8
  export * from './oauth/BrowserOAuthAdapter';
9
9
  export * from './wallet/MockWalletProviderAdapter';
10
- //# sourceMappingURL=index.d.ts.map
@@ -12,4 +12,3 @@ export declare class BrowserOAuthAdapter implements OAuthPort {
12
12
  private static verifyIdTokenNonce;
13
13
  openAuth(config: OAuthConfig): Promise<OAuthResult>;
14
14
  }
15
- //# sourceMappingURL=BrowserOAuthAdapter.d.ts.map
@@ -29,4 +29,3 @@ export declare class IndexedDBStorageAdapter implements StoragePort {
29
29
  */
30
30
  static isAvailable(): boolean;
31
31
  }
32
- //# sourceMappingURL=IndexedDBStorageAdapter.d.ts.map
@@ -7,4 +7,3 @@ export declare class LocalStorageAdapter implements StoragePort {
7
7
  remove(key: string): Promise<void>;
8
8
  clear(): Promise<void>;
9
9
  }
10
- //# sourceMappingURL=LocalStorageAdapter.d.ts.map
@@ -4,4 +4,3 @@ export declare class FetchTransportAdapter implements TransportPort {
4
4
  request<T = any>(request: TransportRequest): Promise<TransportResponse<T>>;
5
5
  private _doRequest;
6
6
  }
7
- //# sourceMappingURL=FetchTransportAdapter.d.ts.map
@@ -78,4 +78,3 @@ export declare class MockWalletProviderAdapter implements WalletProviderPort {
78
78
  private generateMockEvmAddress;
79
79
  private generateMockSignature;
80
80
  }
81
- //# sourceMappingURL=MockWalletProviderAdapter.d.ts.map
@@ -12,6 +12,12 @@ export declare class RNBridgeWalletProviderAdapter implements WalletProviderPort
12
12
  * false 반환 시 모든 sign/send 가 inner wallet provider 로 위임됨 (일반 OAuth flow).
13
13
  */
14
14
  private readonly isAuthenticatedViaRNBridge;
15
+ /**
16
+ * RN bridge 세션 TTL(absolute/idle) 검증 + 활동 시각 갱신.
17
+ * native 위임 직전 호출하며, 세션 만료 시 SESSION_EXPIRED 를 throw 한다.
18
+ * 만료된 세션이 sign/send 에 사용되는 것을 차단한다.
19
+ */
20
+ private readonly assertBridgeSessionActive;
15
21
  checkWallet?: () => Promise<WalletCheckResult>;
16
22
  prepare?: (action: PrepareAction, context: PrepareContext) => Promise<PrepareResult>;
17
23
  migrateWallet?: (pin: string, sub: string) => Promise<WalletData>;
@@ -32,7 +38,13 @@ export declare class RNBridgeWalletProviderAdapter implements WalletProviderPort
32
38
  * 이 SDK 세션이 RN bridge 자동 로그인으로 인증된 경우만 true.
33
39
  * false 반환 시 모든 sign/send 가 inner wallet provider 로 위임됨 (일반 OAuth flow).
34
40
  */
35
- isAuthenticatedViaRNBridge: () => boolean);
41
+ isAuthenticatedViaRNBridge: () => boolean,
42
+ /**
43
+ * RN bridge 세션 TTL(absolute/idle) 검증 + 활동 시각 갱신.
44
+ * native 위임 직전 호출하며, 세션 만료 시 SESSION_EXPIRED 를 throw 한다.
45
+ * 만료된 세션이 sign/send 에 사용되는 것을 차단한다.
46
+ */
47
+ assertBridgeSessionActive?: () => void);
36
48
  /** native delegation 가능 여부 (인증 + bridge 메서드 존재) 한 번에 판정 */
37
49
  private shouldUseBridge;
38
50
  signMessage(userId: string, chainId: string, message: string, index?: number, uuid?: string, from?: string): Promise<SignResponse>;
@@ -52,4 +64,3 @@ export declare class RNBridgeWalletProviderAdapter implements WalletProviderPort
52
64
  setOnUnauthorized(callback: () => void): void;
53
65
  setTokenRefresher(refresher: () => Promise<boolean>): void;
54
66
  }
55
- //# sourceMappingURL=RNBridgeWalletProviderAdapter.d.ts.map
@@ -122,4 +122,3 @@ export declare class RemoteWalletProviderAdapter implements WalletProviderPort {
122
122
  private static mapGatewayError;
123
123
  private static getGatewayErrorMessage;
124
124
  }
125
- //# sourceMappingURL=RemoteWalletProviderAdapter.d.ts.map
@@ -180,4 +180,3 @@ export interface PrepareResp {
180
180
  uuid: string;
181
181
  expiresAt: string;
182
182
  }
183
- //# sourceMappingURL=types.d.ts.map
@@ -26,4 +26,3 @@ export declare const ENVIRONMENTS: Record<SDKEnvironment, EnvironmentUrls>;
26
26
  * 3. production 기본값
27
27
  */
28
28
  export declare function resolveEndpoints(): EnvironmentUrls;
29
- //# sourceMappingURL=environments.d.ts.map
@@ -37,5 +37,4 @@ export declare const CHAIN_FALLBACK_RETRY_MS: number;
37
37
  */
38
38
  export declare const MNEMONIC_ADDRESS_LIMIT = 100;
39
39
  /** Token History API clientVersion (registerTokenHistory 호출 시 전송) */
40
- export declare const SDK_CLIENT_VERSION = "crossx-sdk-js/2.2.4";
41
- //# sourceMappingURL=constants.d.ts.map
40
+ export declare const SDK_CLIENT_VERSION = "crossx-sdk-js/2.3.0";
@@ -21,4 +21,3 @@ export declare function resolveMessages(locale?: SDKLocale, overrides?: Partial<
21
21
  * @param locale `applyLocale()` 이후의 런타임 locale 또는 `SDKConfig.locale`
22
22
  */
23
23
  export declare function resolveLocaleCode(locale?: SDKLocale): SDKLocale;
24
- //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,3 @@
1
1
  import { SDKMessages } from './types';
2
2
 
3
3
  export declare const MESSAGES_EN: SDKMessages;
4
- //# sourceMappingURL=messages.en.d.ts.map
@@ -1,4 +1,3 @@
1
1
  import { SDKMessages } from './types';
2
2
 
3
3
  export declare const MESSAGES_KO: SDKMessages;
4
- //# sourceMappingURL=messages.ko.d.ts.map
@@ -17,6 +17,8 @@ export interface SDKMessages {
17
17
  /** dApp 이름 뒤에 붙는 전송 승인 요청 문구. EN: " wants your permission to approve the following transaction." */
18
18
  send_tx_permission_text: string;
19
19
  send_tx_approve_button: string;
20
+ /** approve/permit 계열이 아닌 일반 트랜잭션의 확인 버튼. EN: "Confirm" */
21
+ send_tx_confirm_button: string;
20
22
  tx_pending: string;
21
23
  tx_success: string;
22
24
  tx_failed: string;
@@ -75,6 +77,8 @@ export interface SDKMessages {
75
77
  * 사용자는 Add 버튼을 다시 눌러 재시도할 수 있습니다.
76
78
  */
77
79
  wallet_selector_add_error_generic: string;
80
+ wallet_created_title: string;
81
+ wallet_created_button: string;
78
82
  pin_notice_header_subtitle: string;
79
83
  pin_notice_title: string;
80
84
  pin_notice_description: string;
@@ -126,4 +130,3 @@ export interface SDKMessages {
126
130
  /** 세션 알림 모달 오른쪽 버튼 (재로그인) */
127
131
  session_alert_sign_in_again_button: string;
128
132
  }
129
- //# sourceMappingURL=types.d.ts.map
@@ -7,4 +7,3 @@ export * from './types/errors';
7
7
  export * from './ports';
8
8
  export * from './usecases';
9
9
  export * from './i18n';
10
- //# sourceMappingURL=index.d.ts.map
@@ -15,4 +15,3 @@ export interface ChainRegistryPort {
15
15
  */
16
16
  getChain(chainId: string): Promise<ChainInfo>;
17
17
  }
18
- //# sourceMappingURL=ChainRegistryPort.d.ts.map
@@ -147,6 +147,11 @@ export interface ConfirmationPort {
147
147
  index: number;
148
148
  name?: string;
149
149
  } | null>;
150
+ /**
151
+ * 새 지갑 생성 완료 안내 UI를 표시합니다.
152
+ * 구현체가 없으면 SDK는 이 단계를 건너뜁니다.
153
+ */
154
+ showWalletCreatedPrompt?(): Promise<void>;
150
155
  /**
151
156
  * PIN 최초 설정 UI를 표시합니다. (Create PIN)
152
157
  * PIN Setup Notice 동의 화면 이후 6자리 숫자 키패드 입력을 포함합니다.
@@ -212,4 +217,3 @@ export interface ConfirmationPort {
212
217
  setMessages(messages: SDKMessages): void;
213
218
  }
214
219
  export {};
215
- //# sourceMappingURL=ConfirmationPort.d.ts.map
@@ -45,4 +45,3 @@ export interface CryptoPort {
45
45
  */
46
46
  setJWKSEndpoint?(url: string): void;
47
47
  }
48
- //# sourceMappingURL=CryptoPort.d.ts.map
@@ -20,4 +20,3 @@ export interface LoggerPort {
20
20
  warn(...args: unknown[]): void;
21
21
  error(...args: unknown[]): void;
22
22
  }
23
- //# sourceMappingURL=LoggerPort.d.ts.map
@@ -28,4 +28,3 @@ export interface OAuthConfig {
28
28
  width?: number;
29
29
  height?: number;
30
30
  }
31
- //# sourceMappingURL=OAuthPort.d.ts.map
@@ -22,4 +22,3 @@ export interface StoragePort {
22
22
  */
23
23
  clear(): Promise<void>;
24
24
  }
25
- //# sourceMappingURL=StoragePort.d.ts.map
@@ -25,4 +25,3 @@ export interface TransportPort {
25
25
  */
26
26
  request<T = any>(request: TransportRequest): Promise<TransportResponse<T>>;
27
27
  }
28
- //# sourceMappingURL=TransportPort.d.ts.map
@@ -143,4 +143,3 @@ export interface SignResponse {
143
143
  txHash?: string;
144
144
  publicKey?: string;
145
145
  }
146
- //# sourceMappingURL=WalletProviderPort.d.ts.map
@@ -10,4 +10,3 @@ export * from './OAuthPort';
10
10
  export * from './ConfirmationPort';
11
11
  export * from './LoggerPort';
12
12
  export * from './ChainRegistryPort';
13
- //# sourceMappingURL=index.d.ts.map
@@ -16,4 +16,3 @@ export declare class JsonRpcService {
16
16
  */
17
17
  call(method: string, params: unknown[], chainId: string): Promise<unknown>;
18
18
  }
19
- //# sourceMappingURL=JsonRpcService.d.ts.map
@@ -40,4 +40,3 @@ export declare class PasswordMemoryStore {
40
40
  /** 비밀번호가 저장되어 있는지 여부를 반환합니다. */
41
41
  has(): boolean;
42
42
  }
43
- //# sourceMappingURL=PasswordMemoryStore.d.ts.map
@@ -40,4 +40,3 @@ export declare class PinMemoryStore {
40
40
  /** PIN이 저장되어 있는지 여부를 반환합니다. */
41
41
  has(): boolean;
42
42
  }
43
- //# sourceMappingURL=PinMemoryStore.d.ts.map
@@ -45,14 +45,32 @@ export declare class RNBridgeBootstrapService {
45
45
  * Request fresh Firebase ID token (after access token expiry)
46
46
  */
47
47
  requestFreshFirebaseIdToken(): Promise<NativeFirebaseIdTokenResult>;
48
+ /**
49
+ * Request Firebase ID token for restoring an already approved bridge session.
50
+ *
51
+ * Native must not show consent UI for this RPC. If native has no stored Connect
52
+ * approval for the dapp origin + wallet, the request is treated as session expired.
53
+ */
54
+ requestFirebaseIdTokenForSessionRestore(): Promise<NativeFirebaseIdTokenResult>;
48
55
  /**
49
56
  * Get current context
50
57
  */
51
58
  getContext(): RNBridgeBootstrapContext | null;
52
59
  /**
53
60
  * Check if bridge is still active
61
+ * - absolute TTL: activatedAt 기준 절대 만료
62
+ * - idle TTL: lastActivityAt 기준 유휴 만료
54
63
  */
55
64
  isActive(): boolean;
65
+ /**
66
+ * 마지막 활동 시각 갱신 — idle TTL 윈도우를 연장한다.
67
+ * token/sign/send 요청 성공 시 호출한다.
68
+ */
69
+ touchActivity(): void;
70
+ /**
71
+ * 세션이 유효한지 검증한다. 만료 시 context 를 무효화하고 SESSION_EXPIRED 를 throw 한다.
72
+ * token/sign/send 등 인증된 요청 경로 진입 시 반드시 호출해야 한다.
73
+ */
74
+ assertActive(): void;
56
75
  }
57
76
  export {};
58
- //# sourceMappingURL=RNBridgeBootstrapService.d.ts.map
@@ -22,4 +22,3 @@ export declare class TokenMemoryStore {
22
22
  */
23
23
  isExpiringSoon(bufferMs?: number): boolean;
24
24
  }
25
- //# sourceMappingURL=TokenMemoryStore.d.ts.map
@@ -20,4 +20,3 @@ export declare class TypedEventEmitter<EventMap extends {
20
20
  protected removeAllListeners(): void;
21
21
  }
22
22
  export {};
23
- //# sourceMappingURL=TypedEventEmitter.d.ts.map
@@ -116,4 +116,3 @@ export declare function normalizeChainId(chainId: string): string;
116
116
  * ChainId 문자열이 Legacy 형식인지 확인
117
117
  */
118
118
  export declare function isLegacyChainId(chainId: string): boolean;
119
- //# sourceMappingURL=caip.d.ts.map
@@ -172,4 +172,3 @@ export interface TransactionReceipt {
172
172
  transactionIndex: string;
173
173
  type: string;
174
174
  }
175
- //# sourceMappingURL=chain.d.ts.map
@@ -14,4 +14,3 @@ export declare enum ConnectOtherWalletItem {
14
14
  */
15
15
  export declare const CONNECT_OTHER_WALLET_DISPLAY_ORDER: readonly ConnectOtherWalletItem[];
16
16
  export declare function getConnectOtherWalletLabel(id: ConnectOtherWalletItem): string;
17
- //# sourceMappingURL=connectOtherWallet.d.ts.map
@@ -123,4 +123,3 @@ export declare class CROSSxError extends Error {
123
123
  details: unknown;
124
124
  };
125
125
  }
126
- //# sourceMappingURL=errors.d.ts.map
@@ -28,4 +28,3 @@ export interface SDKEventMap {
28
28
  initialized: InitializedEvent;
29
29
  connectExternalWallet: ConnectExternalWalletEvent;
30
30
  }
31
- //# sourceMappingURL=events.d.ts.map
@@ -496,4 +496,3 @@ export interface TransactionWithReceipt {
496
496
  txHash: string;
497
497
  receipt: import('./chain').TransactionReceipt;
498
498
  }
499
- //# sourceMappingURL=index.d.ts.map
@@ -67,4 +67,3 @@ export interface OAuthUserInfo extends UserInfo {
67
67
  signInProvider?: string;
68
68
  providerSub?: string;
69
69
  }
70
- //# sourceMappingURL=internal.d.ts.map
@@ -18,4 +18,3 @@ export interface PrepareResult {
18
18
  uuid: string;
19
19
  expiresAt: string;
20
20
  }
21
- //# sourceMappingURL=prepare.d.ts.map
@@ -212,6 +212,10 @@ export interface RNBridge {
212
212
  * Request fresh Firebase ID token (refresh after expiry)
213
213
  */
214
214
  requestFreshFirebaseIdToken(): Promise<NativeFirebaseIdTokenResult>;
215
+ /**
216
+ * Restore an existing bridge-authenticated session without showing native consent UI.
217
+ */
218
+ requestFirebaseIdTokenForSessionRestore?(): Promise<NativeFirebaseIdTokenResult>;
215
219
  /**
216
220
  * Request user confirmation for signing/transaction
217
221
  */
@@ -267,9 +271,13 @@ export interface RNBridgeBootstrapContext {
267
271
  idleTtlMs: number;
268
272
  protocolVersion: number;
269
273
  activatedAt: number;
274
+ /**
275
+ * 마지막 활동(token/sign/send 요청) 시각 (epoch ms).
276
+ * idleTtlMs 만료 판정에 사용한다. 활동마다 갱신된다.
277
+ */
278
+ lastActivityAt: number;
270
279
  /** Native wallet의 active address (handshake 응답에서 전달) */
271
280
  walletAddress?: string;
272
281
  /** Native wallet의 active wallet 라벨 (handshake 응답에서 전달) */
273
282
  walletName?: string;
274
283
  }
275
- //# sourceMappingURL=rn-bridge.d.ts.map
@@ -71,4 +71,3 @@ export interface RegisterTokenHistoryRequest {
71
71
  /** 클라이언트 버전 (필수, 최대 64자) */
72
72
  clientVersion: string;
73
73
  }
74
- //# sourceMappingURL=tokenHistory.d.ts.map
@@ -7,4 +7,3 @@ export declare class MigrateWalletUseCase {
7
7
  constructor(storage: StoragePort, walletProvider: WalletProviderPort);
8
8
  execute(pin: string, sub: string): Promise<MigrateResult>;
9
9
  }
10
- //# sourceMappingURL=MigrateWalletUseCase.d.ts.map
@@ -22,6 +22,7 @@ export declare class SignInUseCase {
22
22
  private readonly STORAGE_KEY_ACCESS_TOKEN;
23
23
  private readonly STORAGE_KEY_REFRESH_TOKEN;
24
24
  private readonly STORAGE_KEY_USER;
25
+ private readonly STORAGE_KEY_RN_BRIDGE_SESSION;
25
26
  constructor(config: InternalSDKConfig, storage: StoragePort, crypto: CryptoPort, oauth: OAuthPort, transport: TransportPort, walletProvider: WalletProviderPort, tokenStore: TokenMemoryStore,
26
27
  /** RN Bridge fresh token request callback — optional */
27
28
  requestFreshTokenFromBridge?: (() => Promise<{
@@ -45,16 +46,22 @@ export declare class SignInUseCase {
45
46
  * 이미 발급된 토큰이 있으면 confirm 다이얼로그를 다시 띄우지 않게 합니다.
46
47
  */
47
48
  hasValidStoredAccessToken(): Promise<boolean>;
49
+ /** 만료 여부와 무관하게 저장된 access_token 존재 여부만 확인합니다. */
50
+ hasStoredAccessToken(): Promise<boolean>;
48
51
  /**
49
52
  * 저장된 세션이 RN Bridge 자동 로그인으로 만들어진 것인지 판별합니다.
50
53
  *
51
54
  * RN Bridge 모드는 design 상 access_token 만 저장하고 refresh_token 은 저장하지 않습니다.
52
- * 따라서 (valid access_token 존재) + (refresh_token 부재) 조합이면 RN Bridge 세션입니다.
55
+ * 따라서 marker 또는 (access_token 존재) + (refresh_token 부재) 조합이면 RN Bridge 세션입니다.
53
56
  * OAuth 모드는 access_token + refresh_token 둘 다 저장하므로 false 가 됩니다.
54
57
  *
58
+ * access_token 이 만료된 직후에도 bridge session restore 경로를 선택해야 하므로
59
+ * 여기서는 access_token 유효성 검사를 하지 않습니다.
60
+ *
55
61
  * 이 정보는 native sign delegation 활성화 여부 결정에 사용됩니다 (CROSSxSDK._isAuthenticatedViaRNBridge).
56
62
  */
57
63
  hasStoredRNBridgeSession(): Promise<boolean>;
64
+ clearStoredRNBridgeSession(): Promise<void>;
58
65
  /**
59
66
  * 서버 응답에서 에러 코드를 추출합니다.
60
67
  * 이중 래핑 구조: { code: 200, data: { code: 1001, message: "..." } }
@@ -181,4 +188,3 @@ export declare class SignInUseCase {
181
188
  private migrateStorageKeys;
182
189
  private loadWallet;
183
190
  }
184
- //# sourceMappingURL=SignInUseCase.d.ts.map
@@ -12,4 +12,3 @@ export declare class SignOutUseCase {
12
12
  constructor(config: InternalSDKConfig, storage: StoragePort, tokenStore: TokenMemoryStore);
13
13
  execute(): Promise<void>;
14
14
  }
15
- //# sourceMappingURL=SignOutUseCase.d.ts.map
@@ -5,4 +5,3 @@
5
5
  export * from './SignInUseCase';
6
6
  export * from './SignOutUseCase';
7
7
  export * from './MigrateWalletUseCase';
8
- //# sourceMappingURL=index.d.ts.map
@@ -13,4 +13,3 @@
13
13
  * // => 'https://dev-cross-auth.crosstoken.io/cross-auth/user/profile'
14
14
  */
15
15
  export declare function getApiUrl(baseUrl: string, endpoint: string): string;
16
- //# sourceMappingURL=apiUrl.d.ts.map
@@ -18,4 +18,3 @@ export declare const logger: {
18
18
  warn(...args: unknown[]): void;
19
19
  error(...args: unknown[]): void;
20
20
  };
21
- //# sourceMappingURL=logger.d.ts.map
@@ -67,4 +67,3 @@ export interface DeeplinkOAuthData {
67
67
  * @throws 디코딩/파싱 실패 시 Error
68
68
  */
69
69
  export declare function parseOAuthDeeplink(input: string): OAuthDeeplinkResult;
70
- //# sourceMappingURL=parseOAuthDeeplink.d.ts.map
@@ -12,4 +12,3 @@ type ConnectOtherWalletsConfig = {
12
12
  */
13
13
  export declare function resolveConnectOtherWalletsList(config: ConnectOtherWalletsConfig): ConnectOtherWalletItem[];
14
14
  export {};
15
- //# sourceMappingURL=resolveConnectOtherWallets.d.ts.map