@onramper/onramper-react-native 1.0.1
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/CHANGELOG.md +21 -0
- package/LICENSE +202 -0
- package/NOTICE +5 -0
- package/OnramperReactNative.podspec +36 -0
- package/README.md +114 -0
- package/app.plugin.js +51 -0
- package/ios/Frameworks/LICENSE +202 -0
- package/ios/Frameworks/NOTICE +5 -0
- package/ios/Frameworks/OnramperSDK.xcframework/Info.plist +48 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/Info.plist +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios.swiftinterface +548 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/OnramperSDK +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/OnramperSDK_OnramperSDK.bundle/Info.plist +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/OnramperSDK_OnramperSDK.bundle/PrivacyInfo.xcprivacy +27 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/PrivacyInfo.xcprivacy +27 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/dSYMs/OnramperSDK.framework.dSYM/Contents/Info.plist +20 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/DWARF/OnramperSDK +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/Relocations/aarch64/OnramperSDK.yml +2518 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Info.plist +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface +548 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +548 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/OnramperSDK +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/OnramperSDK_OnramperSDK.bundle/Info.plist +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/OnramperSDK_OnramperSDK.bundle/PrivacyInfo.xcprivacy +27 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/PrivacyInfo.xcprivacy +27 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Info.plist +20 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/DWARF/OnramperSDK +0 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/Relocations/aarch64/OnramperSDK.yml +2518 -0
- package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/Relocations/x86_64/OnramperSDK.yml +2487 -0
- package/ios/HybridOnramperCheckoutButton.swift +112 -0
- package/ios/HybridOnramperNitro.swift +194 -0
- package/ios/OnramperCheckoutBridge.swift +88 -0
- package/ios/OnramperSDKBridge.swift +185 -0
- package/ios/PreparedIntentRegistry.swift +78 -0
- package/lib/commonjs/OnramperCheckoutButtonView.js +16 -0
- package/lib/commonjs/OnramperCheckoutButtonView.js.map +1 -0
- package/lib/commonjs/OnramperClient.js +161 -0
- package/lib/commonjs/OnramperClient.js.map +1 -0
- package/lib/commonjs/OnramperNative.js +22 -0
- package/lib/commonjs/OnramperNative.js.map +1 -0
- package/lib/commonjs/errors.js +35 -0
- package/lib/commonjs/errors.js.map +1 -0
- package/lib/commonjs/events.js +6 -0
- package/lib/commonjs/events.js.map +1 -0
- package/lib/commonjs/generated/OnramperCheckoutButtonConfig.json +10 -0
- package/lib/commonjs/index.js +27 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/specs/OnramperCheckoutButton.nitro.js +6 -0
- package/lib/commonjs/specs/OnramperCheckoutButton.nitro.js.map +1 -0
- package/lib/commonjs/specs/OnramperNitro.nitro.js +6 -0
- package/lib/commonjs/specs/OnramperNitro.nitro.js.map +1 -0
- package/lib/commonjs/types.js +6 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/OnramperCheckoutButtonView.js +11 -0
- package/lib/module/OnramperCheckoutButtonView.js.map +1 -0
- package/lib/module/OnramperClient.js +156 -0
- package/lib/module/OnramperClient.js.map +1 -0
- package/lib/module/OnramperNative.js +18 -0
- package/lib/module/OnramperNative.js.map +1 -0
- package/lib/module/errors.js +30 -0
- package/lib/module/errors.js.map +1 -0
- package/lib/module/events.js +4 -0
- package/lib/module/events.js.map +1 -0
- package/lib/module/generated/OnramperCheckoutButtonConfig.json +10 -0
- package/lib/module/index.js +8 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/specs/OnramperCheckoutButton.nitro.js +4 -0
- package/lib/module/specs/OnramperCheckoutButton.nitro.js.map +1 -0
- package/lib/module/specs/OnramperNitro.nitro.js +4 -0
- package/lib/module/specs/OnramperNitro.nitro.js.map +1 -0
- package/lib/module/types.js +4 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/src/OnramperCheckoutButtonView.d.ts +9 -0
- package/lib/typescript/commonjs/src/OnramperCheckoutButtonView.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/OnramperClient.d.ts +49 -0
- package/lib/typescript/commonjs/src/OnramperClient.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/OnramperNative.d.ts +9 -0
- package/lib/typescript/commonjs/src/OnramperNative.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/errors.d.ts +13 -0
- package/lib/typescript/commonjs/src/errors.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/events.d.ts +48 -0
- package/lib/typescript/commonjs/src/events.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +9 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/specs/OnramperCheckoutButton.nitro.d.ts +10 -0
- package/lib/typescript/commonjs/src/specs/OnramperCheckoutButton.nitro.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/specs/OnramperNitro.nitro.d.ts +39 -0
- package/lib/typescript/commonjs/src/specs/OnramperNitro.nitro.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/types.d.ts +127 -0
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/src/OnramperCheckoutButtonView.d.ts +9 -0
- package/lib/typescript/module/src/OnramperCheckoutButtonView.d.ts.map +1 -0
- package/lib/typescript/module/src/OnramperClient.d.ts +49 -0
- package/lib/typescript/module/src/OnramperClient.d.ts.map +1 -0
- package/lib/typescript/module/src/OnramperNative.d.ts +9 -0
- package/lib/typescript/module/src/OnramperNative.d.ts.map +1 -0
- package/lib/typescript/module/src/errors.d.ts +13 -0
- package/lib/typescript/module/src/errors.d.ts.map +1 -0
- package/lib/typescript/module/src/events.d.ts +48 -0
- package/lib/typescript/module/src/events.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +9 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -0
- package/lib/typescript/module/src/specs/OnramperCheckoutButton.nitro.d.ts +10 -0
- package/lib/typescript/module/src/specs/OnramperCheckoutButton.nitro.d.ts.map +1 -0
- package/lib/typescript/module/src/specs/OnramperNitro.nitro.d.ts +39 -0
- package/lib/typescript/module/src/specs/OnramperNitro.nitro.d.ts.map +1 -0
- package/lib/typescript/module/src/types.d.ts +127 -0
- package/lib/typescript/module/src/types.d.ts.map +1 -0
- package/nitro.json +19 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/ios/OnramperReactNative+autolinking.rb +62 -0
- package/nitrogen/generated/ios/OnramperReactNative-Swift-Cxx-Bridge.cpp +107 -0
- package/nitrogen/generated/ios/OnramperReactNative-Swift-Cxx-Bridge.hpp +299 -0
- package/nitrogen/generated/ios/OnramperReactNative-Swift-Cxx-Umbrella.hpp +60 -0
- package/nitrogen/generated/ios/OnramperReactNativeAutolinking.mm +41 -0
- package/nitrogen/generated/ios/OnramperReactNativeAutolinking.swift +38 -0
- package/nitrogen/generated/ios/c++/HybridOnramperCheckoutButtonSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridOnramperCheckoutButtonSpecSwift.hpp +81 -0
- package/nitrogen/generated/ios/c++/HybridOnramperNitroSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridOnramperNitroSpecSwift.hpp +150 -0
- package/nitrogen/generated/ios/c++/views/HybridOnramperCheckoutButtonComponent.mm +122 -0
- package/nitrogen/generated/ios/swift/Func_std__shared_ptr_Promise_std__shared_ptr_Promise_NitroSessionCredentials____.swift +61 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_NitroSessionCredentials.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_PreparedIntentResult.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__shared_ptr_Promise_NitroSessionCredentials__.swift +66 -0
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridOnramperCheckoutButtonSpec.swift +55 -0
- package/nitrogen/generated/ios/swift/HybridOnramperCheckoutButtonSpec_cxx.swift +156 -0
- package/nitrogen/generated/ios/swift/HybridOnramperNitroSpec.swift +63 -0
- package/nitrogen/generated/ios/swift/HybridOnramperNitroSpec_cxx.swift +309 -0
- package/nitrogen/generated/ios/swift/NitroSessionCredentials.swift +34 -0
- package/nitrogen/generated/ios/swift/OnramperNitroConfig.swift +49 -0
- package/nitrogen/generated/ios/swift/PreparedIntentResult.swift +34 -0
- package/nitrogen/generated/shared/c++/HybridOnramperCheckoutButtonSpec.cpp +22 -0
- package/nitrogen/generated/shared/c++/HybridOnramperCheckoutButtonSpec.hpp +63 -0
- package/nitrogen/generated/shared/c++/HybridOnramperNitroSpec.cpp +29 -0
- package/nitrogen/generated/shared/c++/HybridOnramperNitroSpec.hpp +80 -0
- package/nitrogen/generated/shared/c++/NitroSessionCredentials.hpp +87 -0
- package/nitrogen/generated/shared/c++/OnramperNitroConfig.hpp +99 -0
- package/nitrogen/generated/shared/c++/PreparedIntentResult.hpp +87 -0
- package/nitrogen/generated/shared/c++/views/HybridOnramperCheckoutButtonComponent.cpp +83 -0
- package/nitrogen/generated/shared/c++/views/HybridOnramperCheckoutButtonComponent.hpp +111 -0
- package/nitrogen/generated/shared/json/OnramperCheckoutButtonConfig.json +10 -0
- package/package.json +107 -0
- package/src/OnramperCheckoutButtonView.tsx +15 -0
- package/src/OnramperClient.ts +170 -0
- package/src/OnramperNative.ts +19 -0
- package/src/errors.ts +69 -0
- package/src/events.ts +23 -0
- package/src/generated/OnramperCheckoutButtonConfig.json +10 -0
- package/src/index.ts +30 -0
- package/src/specs/OnramperCheckoutButton.nitro.ts +16 -0
- package/src/specs/OnramperNitro.nitro.ts +60 -0
- package/src/types.ts +133 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { OnramperCheckoutButtonMethods, OnramperCheckoutButtonProps } from './specs/OnramperCheckoutButton.nitro';
|
|
2
|
+
export type { OnramperCheckoutButtonProps as OnramperCheckoutButtonViewProps };
|
|
3
|
+
/**
|
|
4
|
+
* Native checkout button. Renders the SwiftUI `OnramperCheckoutButton` that
|
|
5
|
+
* `OnramperClient.getCheckoutRequirements()` prepared, addressed by `intentHandle`.
|
|
6
|
+
* Standard view props (e.g. `style`) are supported via `HybridViewProps`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const OnramperCheckoutButtonView: import("react-native-nitro-modules").ReactNativeView<OnramperCheckoutButtonProps, OnramperCheckoutButtonMethods>;
|
|
9
|
+
//# sourceMappingURL=OnramperCheckoutButtonView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperCheckoutButtonView.d.ts","sourceRoot":"","sources":["../../../../src/OnramperCheckoutButtonView.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAEvH,YAAY,EAAE,2BAA2B,IAAI,+BAA+B,EAAE,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,kHAGtC,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import { OnramperError } from './errors';
|
|
3
|
+
import type { EventName, EventPayload } from './events';
|
|
4
|
+
import type { CheckoutButtonStyle, CheckoutRequest, OnramperConfiguration, OnramperState, QuoteResponse, SessionCredentials } from './types';
|
|
5
|
+
export interface GetCheckoutRequirementsResult {
|
|
6
|
+
/** A native checkout button element to render. Tapping it drives login, finalize, and the payment webview internally. */
|
|
7
|
+
button: ReactElement;
|
|
8
|
+
/** The quote (rate, fees, payout) returned with the checkout intent. */
|
|
9
|
+
quote: QuoteResponse;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Typed, public entry point to the Onramper SDK. Wraps the native Nitro hybrid
|
|
13
|
+
* object: state and checkout events arrive as JSON strings over single native
|
|
14
|
+
* callbacks and are parsed here into the typed `OnramperState` / `CheckoutEvent`
|
|
15
|
+
* unions, then fanned out to any number of listeners.
|
|
16
|
+
*/
|
|
17
|
+
export declare class OnramperClient {
|
|
18
|
+
state: OnramperState;
|
|
19
|
+
lastError: OnramperError | null;
|
|
20
|
+
private readonly native;
|
|
21
|
+
private readonly stateListeners;
|
|
22
|
+
private readonly eventListeners;
|
|
23
|
+
private readonly configured;
|
|
24
|
+
constructor(config: OnramperConfiguration);
|
|
25
|
+
initialize(creds: SessionCredentials): Promise<void>;
|
|
26
|
+
reset(): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Signs the OnramperID user out by clearing stored OIDC tokens. The next
|
|
29
|
+
* checkout that requires user_info will re-trigger the login flow. Also
|
|
30
|
+
* resets in-flight checkout state. Does NOT clear the partner-scoped SDK
|
|
31
|
+
* session — re-calling `initialize` is only needed if that session expired.
|
|
32
|
+
*/
|
|
33
|
+
signOut(): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Fetches checkout requirements + quote and returns a native checkout button
|
|
36
|
+
* to render plus the quote. The button handles login / finalize / webview
|
|
37
|
+
* internally; outcomes surface via the event stream (`addEventListener`).
|
|
38
|
+
*/
|
|
39
|
+
getCheckoutRequirements(request: CheckoutRequest, buttonStyle?: CheckoutButtonStyle): Promise<GetCheckoutRequirementsResult>;
|
|
40
|
+
/** Discards a prepared intent (e.g. if the user navigates away before checkout). */
|
|
41
|
+
cancelPreparedIntent(intentHandle: string): Promise<void>;
|
|
42
|
+
/** Subscribe to state changes. Returns an unsubscribe function. */
|
|
43
|
+
addStateListener(fn: (state: OnramperState) => void): () => void;
|
|
44
|
+
/** Subscribe to a specific checkout event. Returns an unsubscribe function. */
|
|
45
|
+
addEventListener<K extends EventName>(name: K, fn: (e: EventPayload<K>) => void): () => void;
|
|
46
|
+
/** Tear down: clears JS listeners and releases the native callbacks + SDK client. */
|
|
47
|
+
destroy(): void;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=OnramperClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperClient.d.ts","sourceRoot":"","sources":["../../../../src/OnramperClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,OAAO,CAAC;AAIzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAiB,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,6BAA6B;IAC5C,yHAAyH;IACzH,MAAM,EAAE,YAAY,CAAC;IACrB,wEAAwE;IACxE,KAAK,EAAE,aAAa,CAAC;CACtB;AAED;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,KAAK,EAAE,aAAa,CAAoB;IACxC,SAAS,EAAE,aAAa,GAAG,IAAI,CAAQ;IAGvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAI5E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;gBAE/B,MAAM,EAAE,qBAAqB;IAyCnC,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASpD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAS9B;;;;OAIG;IACG,uBAAuB,CAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,GAAE,mBAAwB,GACpC,OAAO,CAAC,6BAA6B,CAAC;IAezC,oFAAoF;IACpF,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,MAAM,IAAI;IAOhE,+EAA+E;IAC/E,gBAAgB,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAU5F,qFAAqF;IACrF,OAAO,IAAI,IAAI;CAKhB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { OnramperNitro } from './specs/OnramperNitro.nitro';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a fresh native Onramper Nitro hybrid object. Each `OnramperClient`
|
|
4
|
+
* owns its own instance, so its listeners and the underlying SDK client are
|
|
5
|
+
* isolated per client and torn down by `destroy()` → `dispose()`.
|
|
6
|
+
*/
|
|
7
|
+
export declare function createOnramperNative(): OnramperNitro;
|
|
8
|
+
export type { OnramperNitro };
|
|
9
|
+
//# sourceMappingURL=OnramperNative.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperNative.d.ts","sourceRoot":"","sources":["../../../../src/OnramperNative.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,aAAa,CAOpD;AAED,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type OnramperErrorCode = 'notInitialized' | 'initializationFailed' | 'attestationFailed' | 'invalidStateTransition' | 'invalidState' | 'networkError' | 'decodingError' | 'timeout' | 'requirementNotSatisfied' | 'amountOutOfRange' | 'oidcFlowCancelled' | 'oidcTokenExchangeFailed' | 'oidcFlowFailed' | 'userTokenInvalid' | 'userTokenRefreshFailed' | 'webviewLoadFailed' | 'deepLinkFailed' | 'invalidRequest' | 'quoteUnavailable' | 'checkoutForbidden' | 'temporaryFailure' | 'unrecoverable' | 'configurationError' | 'deviceBlocked' | 'securityStorageFailed' | 'securityTrustFailed' | 'platformUnsupported' | 'intentInvalidated' | 'intentAlreadyConsumed' | 'clientAlreadyConfigured' | 'sessionExpirationHandlerFailed';
|
|
2
|
+
export interface OnramperErrorPayload {
|
|
3
|
+
code: OnramperErrorCode;
|
|
4
|
+
message: string;
|
|
5
|
+
info?: Record<string, unknown>;
|
|
6
|
+
}
|
|
7
|
+
export declare class OnramperError extends Error implements OnramperErrorPayload {
|
|
8
|
+
readonly code: OnramperErrorCode;
|
|
9
|
+
readonly info?: Record<string, unknown>;
|
|
10
|
+
constructor(payload: OnramperErrorPayload);
|
|
11
|
+
static from(value: unknown): OnramperError;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAEzB,gBAAgB,GAChB,sBAAsB,GACtB,mBAAmB,GACnB,wBAAwB,GACxB,cAAc,GACd,cAAc,GACd,eAAe,GACf,SAAS,GACT,yBAAyB,GACzB,kBAAkB,GAClB,mBAAmB,GACnB,yBAAyB,GACzB,gBAAgB,GAChB,kBAAkB,GAClB,wBAAwB,GACxB,mBAAmB,GACnB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,eAAe,GACf,oBAAoB,GACpB,eAAe,GACf,uBAAuB,GACvB,qBAAqB,GAErB,qBAAqB,GACrB,mBAAmB,GACnB,uBAAuB,GACvB,yBAAyB,GACzB,gCAAgC,CAAC;AAErC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,qBAAa,aAAc,SAAQ,KAAM,YAAW,oBAAoB;IACtE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAE5B,OAAO,EAAE,oBAAoB;IAOzC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa;CAgB3C"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { OnramperErrorPayload } from './errors';
|
|
2
|
+
import type { CheckoutFinalizeResponse, CheckoutRequirement, OnramperState, RenderType } from './types';
|
|
3
|
+
export type CheckoutEvent = {
|
|
4
|
+
type: 'stateChanged';
|
|
5
|
+
state: OnramperState;
|
|
6
|
+
} | {
|
|
7
|
+
type: 'checkoutStarted';
|
|
8
|
+
intentId: string;
|
|
9
|
+
} | {
|
|
10
|
+
type: 'loginRequired';
|
|
11
|
+
requirements: CheckoutRequirement[];
|
|
12
|
+
} | {
|
|
13
|
+
type: 'readyToCheckout';
|
|
14
|
+
} | {
|
|
15
|
+
type: 'requirementSatisfied';
|
|
16
|
+
requirementType: string;
|
|
17
|
+
} | {
|
|
18
|
+
type: 'checkoutFinalized';
|
|
19
|
+
response: CheckoutFinalizeResponse;
|
|
20
|
+
} | {
|
|
21
|
+
type: 'renderingStarted';
|
|
22
|
+
url: string;
|
|
23
|
+
renderType: RenderType;
|
|
24
|
+
} | {
|
|
25
|
+
type: 'completed';
|
|
26
|
+
checkoutId: string;
|
|
27
|
+
} | {
|
|
28
|
+
type: 'failed';
|
|
29
|
+
error: OnramperErrorPayload;
|
|
30
|
+
} | {
|
|
31
|
+
type: 'cancelled';
|
|
32
|
+
} | {
|
|
33
|
+
type: 'providerReady';
|
|
34
|
+
} | {
|
|
35
|
+
type: 'paymentAuthorized';
|
|
36
|
+
} | {
|
|
37
|
+
type: 'paymentProcessing';
|
|
38
|
+
} | {
|
|
39
|
+
type: 'paymentCancelled';
|
|
40
|
+
} | {
|
|
41
|
+
type: 'providerError';
|
|
42
|
+
reason: string;
|
|
43
|
+
};
|
|
44
|
+
export type EventName = CheckoutEvent['type'];
|
|
45
|
+
export type EventPayload<K extends EventName> = Extract<CheckoutEvent, {
|
|
46
|
+
type: K;
|
|
47
|
+
}>;
|
|
48
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAExG,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,YAAY,EAAE,mBAAmB,EAAE,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,QAAQ,EAAE,wBAAwB,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,oBAAoB,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GAErB;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI,OAAO,CAAC,aAAa,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { OnramperClient } from './OnramperClient';
|
|
2
|
+
export type { GetCheckoutRequirementsResult } from './OnramperClient';
|
|
3
|
+
export { OnramperCheckoutButtonView } from './OnramperCheckoutButtonView';
|
|
4
|
+
export type { OnramperCheckoutButtonViewProps } from './OnramperCheckoutButtonView';
|
|
5
|
+
export { OnramperError } from './errors';
|
|
6
|
+
export type { OnramperErrorCode, OnramperErrorPayload } from './errors';
|
|
7
|
+
export type { CheckoutButtonStyle, CheckoutFinalizeResponse, CheckoutRequest, CheckoutPaymentType, CheckoutRequirement, HeadlessCheckoutData, OnramperConfiguration, OnramperEnvironment, OnramperLogLevel, OnramperState, OnramperTheme, QuoteError, QuoteResponse, RenderType, SessionCredentials, ToSItem, TransactionType, UserInfoField, WalletInfo, } from './types';
|
|
8
|
+
export type { CheckoutEvent, EventName, EventPayload } from './events';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,YAAY,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACxE,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,eAAe,EACf,aAAa,EACb,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HybridView, HybridViewMethods, HybridViewProps } from 'react-native-nitro-modules';
|
|
2
|
+
export interface OnramperCheckoutButtonProps extends HybridViewProps {
|
|
3
|
+
intentHandle: string;
|
|
4
|
+
}
|
|
5
|
+
export interface OnramperCheckoutButtonMethods extends HybridViewMethods {
|
|
6
|
+
}
|
|
7
|
+
export type OnramperCheckoutButton = HybridView<OnramperCheckoutButtonProps, OnramperCheckoutButtonMethods, {
|
|
8
|
+
ios: 'swift';
|
|
9
|
+
}>;
|
|
10
|
+
//# sourceMappingURL=OnramperCheckoutButton.nitro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperCheckoutButton.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/specs/OnramperCheckoutButton.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAKjG,MAAM,WAAW,2BAA4B,SAAQ,eAAe;IAClE,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,6BAA8B,SAAQ,iBAAiB;CAAG;AAE3E,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAC7C,2BAA2B,EAC3B,6BAA6B,EAC7B;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CACjB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { HybridObject } from 'react-native-nitro-modules';
|
|
2
|
+
export interface OnramperNitroConfig {
|
|
3
|
+
apiKey: string;
|
|
4
|
+
clientId: string;
|
|
5
|
+
environment: string;
|
|
6
|
+
theme: string;
|
|
7
|
+
logLevel: string;
|
|
8
|
+
}
|
|
9
|
+
export interface NitroSessionCredentials {
|
|
10
|
+
sessionId: string;
|
|
11
|
+
sessionToken: string;
|
|
12
|
+
}
|
|
13
|
+
export interface PreparedIntentResult {
|
|
14
|
+
intentHandle: string;
|
|
15
|
+
quoteJson: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Native bridge to OnramperSDK's `OnramperClient`. The public, typed JS API
|
|
19
|
+
* (`OnramperClient`) wraps this.
|
|
20
|
+
*
|
|
21
|
+
* State and checkout events are delivered as JSON strings (the SDK's
|
|
22
|
+
* `OnramperState`/`CheckoutEvent` are non-Codable Swift enums; the Swift side
|
|
23
|
+
* hand-maps each case to a dict and JSON-encodes it). The JS wrapper parses
|
|
24
|
+
* them back into the fully-typed `OnramperState`/`CheckoutEvent` unions.
|
|
25
|
+
*/
|
|
26
|
+
export interface OnramperNitro extends HybridObject<{
|
|
27
|
+
ios: 'swift';
|
|
28
|
+
}> {
|
|
29
|
+
configure(config: OnramperNitroConfig): Promise<void>;
|
|
30
|
+
initialize(sessionId: string, sessionToken: string): Promise<void>;
|
|
31
|
+
reset(): Promise<void>;
|
|
32
|
+
signOut(): Promise<void>;
|
|
33
|
+
getCheckoutRequirements(requestJson: string, styleJson: string): Promise<PreparedIntentResult>;
|
|
34
|
+
cancelPreparedIntent(intentHandle: string): Promise<void>;
|
|
35
|
+
setStateListener(onState: (stateJson: string) => void): void;
|
|
36
|
+
setEventListener(onEvent: (eventJson: string) => void): void;
|
|
37
|
+
setSessionExpirationHandler(handler: () => Promise<NitroSessionCredentials>): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=OnramperNitro.nitro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperNitro.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/specs/OnramperNitro.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI/D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAc,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC;IACnE,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAMzB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC/F,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG1D,gBAAgB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7D,gBAAgB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAI7D,2BAA2B,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;CAKpF"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import type { OnramperErrorPayload } from './errors';
|
|
2
|
+
export type OnramperEnvironment = 'development' | 'production';
|
|
3
|
+
export type OnramperLogLevel = 'off' | 'error' | 'info' | 'debug';
|
|
4
|
+
export type OnramperTheme = 'system' | 'light' | 'dark';
|
|
5
|
+
export type TransactionType = 'buy' | 'sell';
|
|
6
|
+
export interface SessionCredentials {
|
|
7
|
+
sessionId: string;
|
|
8
|
+
sessionToken: string;
|
|
9
|
+
}
|
|
10
|
+
export interface OnramperConfiguration {
|
|
11
|
+
apiKey: string;
|
|
12
|
+
clientId: string;
|
|
13
|
+
environment: OnramperEnvironment;
|
|
14
|
+
theme?: OnramperTheme;
|
|
15
|
+
logLevel?: OnramperLogLevel;
|
|
16
|
+
/**
|
|
17
|
+
* Called by the SDK when the session token expires and needs to be re-issued.
|
|
18
|
+
*
|
|
19
|
+
* May be synchronous or async — under the hood the bridge uses an event
|
|
20
|
+
* round-trip (`onSessionExpired` → `provideSessionCredentials`) so Promises
|
|
21
|
+
* are awaited normally. Throw or reject to signal that no fresh credentials
|
|
22
|
+
* are available; the SDK will surface `userTokenRefreshFailed`.
|
|
23
|
+
*/
|
|
24
|
+
onSessionExpired: () => SessionCredentials | Promise<SessionCredentials>;
|
|
25
|
+
}
|
|
26
|
+
export interface WalletInfo {
|
|
27
|
+
network: string;
|
|
28
|
+
address: string;
|
|
29
|
+
memo?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface CheckoutRequest {
|
|
32
|
+
source: string;
|
|
33
|
+
destination?: string;
|
|
34
|
+
amount: number;
|
|
35
|
+
type: TransactionType;
|
|
36
|
+
country?: string;
|
|
37
|
+
subdivision?: string;
|
|
38
|
+
paymentMethod: string;
|
|
39
|
+
wallet: WalletInfo;
|
|
40
|
+
onlyOnramps?: string[];
|
|
41
|
+
}
|
|
42
|
+
export interface QuoteResponse {
|
|
43
|
+
quoteId?: string;
|
|
44
|
+
ramp?: string;
|
|
45
|
+
rate?: number;
|
|
46
|
+
networkFee?: number;
|
|
47
|
+
transactionFee?: number;
|
|
48
|
+
payout?: number;
|
|
49
|
+
paymentMethod?: string;
|
|
50
|
+
recommendations?: string[];
|
|
51
|
+
errors?: QuoteError[];
|
|
52
|
+
}
|
|
53
|
+
export interface QuoteError {
|
|
54
|
+
type: string;
|
|
55
|
+
message: string;
|
|
56
|
+
}
|
|
57
|
+
export interface CheckoutButtonStyle {
|
|
58
|
+
backgroundColor?: string;
|
|
59
|
+
foregroundColor?: string;
|
|
60
|
+
borderRadius?: number;
|
|
61
|
+
}
|
|
62
|
+
export type RenderType = 'webview' | 'deeplink';
|
|
63
|
+
export type CheckoutPaymentType = 'applepay' | 'revolutpay';
|
|
64
|
+
export interface HeadlessCheckoutData {
|
|
65
|
+
checkoutPaymentType: CheckoutPaymentType;
|
|
66
|
+
url: string;
|
|
67
|
+
renderType: RenderType;
|
|
68
|
+
}
|
|
69
|
+
export interface CheckoutFinalizeResponse {
|
|
70
|
+
headlessCheckoutId: string;
|
|
71
|
+
headlessCheckoutData: HeadlessCheckoutData;
|
|
72
|
+
}
|
|
73
|
+
export type CheckoutRequirement = {
|
|
74
|
+
type: 'tos';
|
|
75
|
+
providerId: string;
|
|
76
|
+
items: ToSItem[];
|
|
77
|
+
} | {
|
|
78
|
+
type: 'amount_limit';
|
|
79
|
+
providerId: string;
|
|
80
|
+
minAmountLimit?: number;
|
|
81
|
+
maxAmountLimit?: number;
|
|
82
|
+
} | {
|
|
83
|
+
type: 'user_info';
|
|
84
|
+
providerId: string;
|
|
85
|
+
fields: UserInfoField[];
|
|
86
|
+
};
|
|
87
|
+
export interface ToSItem {
|
|
88
|
+
type: 'tos' | 'privacy_policy' | 'user_agreement';
|
|
89
|
+
required: boolean;
|
|
90
|
+
satisfied: boolean;
|
|
91
|
+
url?: string;
|
|
92
|
+
content?: string;
|
|
93
|
+
}
|
|
94
|
+
export interface UserInfoField {
|
|
95
|
+
type: string;
|
|
96
|
+
required: boolean;
|
|
97
|
+
}
|
|
98
|
+
export type OnramperState = {
|
|
99
|
+
kind: 'idle';
|
|
100
|
+
} | {
|
|
101
|
+
kind: 'initializing';
|
|
102
|
+
} | {
|
|
103
|
+
kind: 'ready';
|
|
104
|
+
} | {
|
|
105
|
+
kind: 'checkoutPreparing';
|
|
106
|
+
} | {
|
|
107
|
+
kind: 'requireLogin';
|
|
108
|
+
requirements: CheckoutRequirement[];
|
|
109
|
+
} | {
|
|
110
|
+
kind: 'authenticating';
|
|
111
|
+
} | {
|
|
112
|
+
kind: 'readyToCheckout';
|
|
113
|
+
} | {
|
|
114
|
+
kind: 'finalizing';
|
|
115
|
+
} | {
|
|
116
|
+
kind: 'rendering';
|
|
117
|
+
url: string;
|
|
118
|
+
renderType: RenderType;
|
|
119
|
+
paymentType: CheckoutPaymentType;
|
|
120
|
+
} | {
|
|
121
|
+
kind: 'completed';
|
|
122
|
+
} | {
|
|
123
|
+
kind: 'failed';
|
|
124
|
+
error: OnramperErrorPayload;
|
|
125
|
+
};
|
|
126
|
+
export type { OnramperErrorPayload };
|
|
127
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { OnramperCheckoutButtonMethods, OnramperCheckoutButtonProps } from './specs/OnramperCheckoutButton.nitro';
|
|
2
|
+
export type { OnramperCheckoutButtonProps as OnramperCheckoutButtonViewProps };
|
|
3
|
+
/**
|
|
4
|
+
* Native checkout button. Renders the SwiftUI `OnramperCheckoutButton` that
|
|
5
|
+
* `OnramperClient.getCheckoutRequirements()` prepared, addressed by `intentHandle`.
|
|
6
|
+
* Standard view props (e.g. `style`) are supported via `HybridViewProps`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const OnramperCheckoutButtonView: import("react-native-nitro-modules").ReactNativeView<OnramperCheckoutButtonProps, OnramperCheckoutButtonMethods>;
|
|
9
|
+
//# sourceMappingURL=OnramperCheckoutButtonView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperCheckoutButtonView.d.ts","sourceRoot":"","sources":["../../../../src/OnramperCheckoutButtonView.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAEvH,YAAY,EAAE,2BAA2B,IAAI,+BAA+B,EAAE,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,kHAGtC,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { type ReactElement } from 'react';
|
|
2
|
+
import { OnramperError } from './errors';
|
|
3
|
+
import type { EventName, EventPayload } from './events';
|
|
4
|
+
import type { CheckoutButtonStyle, CheckoutRequest, OnramperConfiguration, OnramperState, QuoteResponse, SessionCredentials } from './types';
|
|
5
|
+
export interface GetCheckoutRequirementsResult {
|
|
6
|
+
/** A native checkout button element to render. Tapping it drives login, finalize, and the payment webview internally. */
|
|
7
|
+
button: ReactElement;
|
|
8
|
+
/** The quote (rate, fees, payout) returned with the checkout intent. */
|
|
9
|
+
quote: QuoteResponse;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Typed, public entry point to the Onramper SDK. Wraps the native Nitro hybrid
|
|
13
|
+
* object: state and checkout events arrive as JSON strings over single native
|
|
14
|
+
* callbacks and are parsed here into the typed `OnramperState` / `CheckoutEvent`
|
|
15
|
+
* unions, then fanned out to any number of listeners.
|
|
16
|
+
*/
|
|
17
|
+
export declare class OnramperClient {
|
|
18
|
+
state: OnramperState;
|
|
19
|
+
lastError: OnramperError | null;
|
|
20
|
+
private readonly native;
|
|
21
|
+
private readonly stateListeners;
|
|
22
|
+
private readonly eventListeners;
|
|
23
|
+
private readonly configured;
|
|
24
|
+
constructor(config: OnramperConfiguration);
|
|
25
|
+
initialize(creds: SessionCredentials): Promise<void>;
|
|
26
|
+
reset(): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Signs the OnramperID user out by clearing stored OIDC tokens. The next
|
|
29
|
+
* checkout that requires user_info will re-trigger the login flow. Also
|
|
30
|
+
* resets in-flight checkout state. Does NOT clear the partner-scoped SDK
|
|
31
|
+
* session — re-calling `initialize` is only needed if that session expired.
|
|
32
|
+
*/
|
|
33
|
+
signOut(): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Fetches checkout requirements + quote and returns a native checkout button
|
|
36
|
+
* to render plus the quote. The button handles login / finalize / webview
|
|
37
|
+
* internally; outcomes surface via the event stream (`addEventListener`).
|
|
38
|
+
*/
|
|
39
|
+
getCheckoutRequirements(request: CheckoutRequest, buttonStyle?: CheckoutButtonStyle): Promise<GetCheckoutRequirementsResult>;
|
|
40
|
+
/** Discards a prepared intent (e.g. if the user navigates away before checkout). */
|
|
41
|
+
cancelPreparedIntent(intentHandle: string): Promise<void>;
|
|
42
|
+
/** Subscribe to state changes. Returns an unsubscribe function. */
|
|
43
|
+
addStateListener(fn: (state: OnramperState) => void): () => void;
|
|
44
|
+
/** Subscribe to a specific checkout event. Returns an unsubscribe function. */
|
|
45
|
+
addEventListener<K extends EventName>(name: K, fn: (e: EventPayload<K>) => void): () => void;
|
|
46
|
+
/** Tear down: clears JS listeners and releases the native callbacks + SDK client. */
|
|
47
|
+
destroy(): void;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=OnramperClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperClient.d.ts","sourceRoot":"","sources":["../../../../src/OnramperClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,OAAO,CAAC;AAIzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAiB,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,6BAA6B;IAC5C,yHAAyH;IACzH,MAAM,EAAE,YAAY,CAAC;IACrB,wEAAwE;IACxE,KAAK,EAAE,aAAa,CAAC;CACtB;AAED;;;;;GAKG;AACH,qBAAa,cAAc;IACzB,KAAK,EAAE,aAAa,CAAoB;IACxC,SAAS,EAAE,aAAa,GAAG,IAAI,CAAQ;IAGvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAI5E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;gBAE/B,MAAM,EAAE,qBAAqB;IAyCnC,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASpD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAS9B;;;;OAIG;IACG,uBAAuB,CAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,GAAE,mBAAwB,GACpC,OAAO,CAAC,6BAA6B,CAAC;IAezC,oFAAoF;IACpF,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,MAAM,IAAI;IAOhE,+EAA+E;IAC/E,gBAAgB,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI;IAU5F,qFAAqF;IACrF,OAAO,IAAI,IAAI;CAKhB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { OnramperNitro } from './specs/OnramperNitro.nitro';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a fresh native Onramper Nitro hybrid object. Each `OnramperClient`
|
|
4
|
+
* owns its own instance, so its listeners and the underlying SDK client are
|
|
5
|
+
* isolated per client and torn down by `destroy()` → `dispose()`.
|
|
6
|
+
*/
|
|
7
|
+
export declare function createOnramperNative(): OnramperNitro;
|
|
8
|
+
export type { OnramperNitro };
|
|
9
|
+
//# sourceMappingURL=OnramperNative.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperNative.d.ts","sourceRoot":"","sources":["../../../../src/OnramperNative.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,aAAa,CAOpD;AAED,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type OnramperErrorCode = 'notInitialized' | 'initializationFailed' | 'attestationFailed' | 'invalidStateTransition' | 'invalidState' | 'networkError' | 'decodingError' | 'timeout' | 'requirementNotSatisfied' | 'amountOutOfRange' | 'oidcFlowCancelled' | 'oidcTokenExchangeFailed' | 'oidcFlowFailed' | 'userTokenInvalid' | 'userTokenRefreshFailed' | 'webviewLoadFailed' | 'deepLinkFailed' | 'invalidRequest' | 'quoteUnavailable' | 'checkoutForbidden' | 'temporaryFailure' | 'unrecoverable' | 'configurationError' | 'deviceBlocked' | 'securityStorageFailed' | 'securityTrustFailed' | 'platformUnsupported' | 'intentInvalidated' | 'intentAlreadyConsumed' | 'clientAlreadyConfigured' | 'sessionExpirationHandlerFailed';
|
|
2
|
+
export interface OnramperErrorPayload {
|
|
3
|
+
code: OnramperErrorCode;
|
|
4
|
+
message: string;
|
|
5
|
+
info?: Record<string, unknown>;
|
|
6
|
+
}
|
|
7
|
+
export declare class OnramperError extends Error implements OnramperErrorPayload {
|
|
8
|
+
readonly code: OnramperErrorCode;
|
|
9
|
+
readonly info?: Record<string, unknown>;
|
|
10
|
+
constructor(payload: OnramperErrorPayload);
|
|
11
|
+
static from(value: unknown): OnramperError;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAEzB,gBAAgB,GAChB,sBAAsB,GACtB,mBAAmB,GACnB,wBAAwB,GACxB,cAAc,GACd,cAAc,GACd,eAAe,GACf,SAAS,GACT,yBAAyB,GACzB,kBAAkB,GAClB,mBAAmB,GACnB,yBAAyB,GACzB,gBAAgB,GAChB,kBAAkB,GAClB,wBAAwB,GACxB,mBAAmB,GACnB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,eAAe,GACf,oBAAoB,GACpB,eAAe,GACf,uBAAuB,GACvB,qBAAqB,GAErB,qBAAqB,GACrB,mBAAmB,GACnB,uBAAuB,GACvB,yBAAyB,GACzB,gCAAgC,CAAC;AAErC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,qBAAa,aAAc,SAAQ,KAAM,YAAW,oBAAoB;IACtE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAE5B,OAAO,EAAE,oBAAoB;IAOzC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa;CAgB3C"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { OnramperErrorPayload } from './errors';
|
|
2
|
+
import type { CheckoutFinalizeResponse, CheckoutRequirement, OnramperState, RenderType } from './types';
|
|
3
|
+
export type CheckoutEvent = {
|
|
4
|
+
type: 'stateChanged';
|
|
5
|
+
state: OnramperState;
|
|
6
|
+
} | {
|
|
7
|
+
type: 'checkoutStarted';
|
|
8
|
+
intentId: string;
|
|
9
|
+
} | {
|
|
10
|
+
type: 'loginRequired';
|
|
11
|
+
requirements: CheckoutRequirement[];
|
|
12
|
+
} | {
|
|
13
|
+
type: 'readyToCheckout';
|
|
14
|
+
} | {
|
|
15
|
+
type: 'requirementSatisfied';
|
|
16
|
+
requirementType: string;
|
|
17
|
+
} | {
|
|
18
|
+
type: 'checkoutFinalized';
|
|
19
|
+
response: CheckoutFinalizeResponse;
|
|
20
|
+
} | {
|
|
21
|
+
type: 'renderingStarted';
|
|
22
|
+
url: string;
|
|
23
|
+
renderType: RenderType;
|
|
24
|
+
} | {
|
|
25
|
+
type: 'completed';
|
|
26
|
+
checkoutId: string;
|
|
27
|
+
} | {
|
|
28
|
+
type: 'failed';
|
|
29
|
+
error: OnramperErrorPayload;
|
|
30
|
+
} | {
|
|
31
|
+
type: 'cancelled';
|
|
32
|
+
} | {
|
|
33
|
+
type: 'providerReady';
|
|
34
|
+
} | {
|
|
35
|
+
type: 'paymentAuthorized';
|
|
36
|
+
} | {
|
|
37
|
+
type: 'paymentProcessing';
|
|
38
|
+
} | {
|
|
39
|
+
type: 'paymentCancelled';
|
|
40
|
+
} | {
|
|
41
|
+
type: 'providerError';
|
|
42
|
+
reason: string;
|
|
43
|
+
};
|
|
44
|
+
export type EventName = CheckoutEvent['type'];
|
|
45
|
+
export type EventPayload<K extends EventName> = Extract<CheckoutEvent, {
|
|
46
|
+
type: K;
|
|
47
|
+
}>;
|
|
48
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAExG,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,aAAa,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,YAAY,EAAE,mBAAmB,EAAE,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GACzD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,QAAQ,EAAE,wBAAwB,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,oBAAoB,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GAErB;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI,OAAO,CAAC,aAAa,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { OnramperClient } from './OnramperClient';
|
|
2
|
+
export type { GetCheckoutRequirementsResult } from './OnramperClient';
|
|
3
|
+
export { OnramperCheckoutButtonView } from './OnramperCheckoutButtonView';
|
|
4
|
+
export type { OnramperCheckoutButtonViewProps } from './OnramperCheckoutButtonView';
|
|
5
|
+
export { OnramperError } from './errors';
|
|
6
|
+
export type { OnramperErrorCode, OnramperErrorPayload } from './errors';
|
|
7
|
+
export type { CheckoutButtonStyle, CheckoutFinalizeResponse, CheckoutRequest, CheckoutPaymentType, CheckoutRequirement, HeadlessCheckoutData, OnramperConfiguration, OnramperEnvironment, OnramperLogLevel, OnramperState, OnramperTheme, QuoteError, QuoteResponse, RenderType, SessionCredentials, ToSItem, TransactionType, UserInfoField, WalletInfo, } from './types';
|
|
8
|
+
export type { CheckoutEvent, EventName, EventPayload } from './events';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,YAAY,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACxE,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,OAAO,EACP,eAAe,EACf,aAAa,EACb,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HybridView, HybridViewMethods, HybridViewProps } from 'react-native-nitro-modules';
|
|
2
|
+
export interface OnramperCheckoutButtonProps extends HybridViewProps {
|
|
3
|
+
intentHandle: string;
|
|
4
|
+
}
|
|
5
|
+
export interface OnramperCheckoutButtonMethods extends HybridViewMethods {
|
|
6
|
+
}
|
|
7
|
+
export type OnramperCheckoutButton = HybridView<OnramperCheckoutButtonProps, OnramperCheckoutButtonMethods, {
|
|
8
|
+
ios: 'swift';
|
|
9
|
+
}>;
|
|
10
|
+
//# sourceMappingURL=OnramperCheckoutButton.nitro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperCheckoutButton.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/specs/OnramperCheckoutButton.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAKjG,MAAM,WAAW,2BAA4B,SAAQ,eAAe;IAClE,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,6BAA8B,SAAQ,iBAAiB;CAAG;AAE3E,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAC7C,2BAA2B,EAC3B,6BAA6B,EAC7B;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CACjB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { HybridObject } from 'react-native-nitro-modules';
|
|
2
|
+
export interface OnramperNitroConfig {
|
|
3
|
+
apiKey: string;
|
|
4
|
+
clientId: string;
|
|
5
|
+
environment: string;
|
|
6
|
+
theme: string;
|
|
7
|
+
logLevel: string;
|
|
8
|
+
}
|
|
9
|
+
export interface NitroSessionCredentials {
|
|
10
|
+
sessionId: string;
|
|
11
|
+
sessionToken: string;
|
|
12
|
+
}
|
|
13
|
+
export interface PreparedIntentResult {
|
|
14
|
+
intentHandle: string;
|
|
15
|
+
quoteJson: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Native bridge to OnramperSDK's `OnramperClient`. The public, typed JS API
|
|
19
|
+
* (`OnramperClient`) wraps this.
|
|
20
|
+
*
|
|
21
|
+
* State and checkout events are delivered as JSON strings (the SDK's
|
|
22
|
+
* `OnramperState`/`CheckoutEvent` are non-Codable Swift enums; the Swift side
|
|
23
|
+
* hand-maps each case to a dict and JSON-encodes it). The JS wrapper parses
|
|
24
|
+
* them back into the fully-typed `OnramperState`/`CheckoutEvent` unions.
|
|
25
|
+
*/
|
|
26
|
+
export interface OnramperNitro extends HybridObject<{
|
|
27
|
+
ios: 'swift';
|
|
28
|
+
}> {
|
|
29
|
+
configure(config: OnramperNitroConfig): Promise<void>;
|
|
30
|
+
initialize(sessionId: string, sessionToken: string): Promise<void>;
|
|
31
|
+
reset(): Promise<void>;
|
|
32
|
+
signOut(): Promise<void>;
|
|
33
|
+
getCheckoutRequirements(requestJson: string, styleJson: string): Promise<PreparedIntentResult>;
|
|
34
|
+
cancelPreparedIntent(intentHandle: string): Promise<void>;
|
|
35
|
+
setStateListener(onState: (stateJson: string) => void): void;
|
|
36
|
+
setEventListener(onEvent: (eventJson: string) => void): void;
|
|
37
|
+
setSessionExpirationHandler(handler: () => Promise<NitroSessionCredentials>): void;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=OnramperNitro.nitro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnramperNitro.nitro.d.ts","sourceRoot":"","sources":["../../../../../src/specs/OnramperNitro.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI/D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAID,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAc,SAAQ,YAAY,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,CAAC;IACnE,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAMzB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC/F,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG1D,gBAAgB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAC7D,gBAAgB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAAC;IAI7D,2BAA2B,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;CAKpF"}
|