@onramper/onramper-react-native 1.2.0 → 1.2.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.
Files changed (45) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +9 -0
  3. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  4. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios.swiftinterface +12 -1
  5. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/OnramperSDK.framework/OnramperSDK +0 -0
  6. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/DWARF/OnramperSDK +0 -0
  7. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/Relocations/aarch64/OnramperSDK.yml +2240 -2234
  8. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  9. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface +12 -1
  10. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  11. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/Modules/OnramperSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +12 -1
  12. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/OnramperSDK.framework/OnramperSDK +0 -0
  13. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/DWARF/OnramperSDK +0 -0
  14. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/Relocations/aarch64/OnramperSDK.yml +2240 -2234
  15. package/ios/Frameworks/OnramperSDK.xcframework/ios-arm64_x86_64-simulator/dSYMs/OnramperSDK.framework.dSYM/Contents/Resources/Relocations/x86_64/OnramperSDK.yml +2206 -2200
  16. package/ios/HybridOnramperNitro.swift +12 -0
  17. package/lib/commonjs/OnramperClient.js +35 -1
  18. package/lib/commonjs/OnramperClient.js.map +1 -1
  19. package/lib/module/OnramperClient.js +35 -1
  20. package/lib/module/OnramperClient.js.map +1 -1
  21. package/lib/typescript/commonjs/src/OnramperClient.d.ts +5 -0
  22. package/lib/typescript/commonjs/src/OnramperClient.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/src/specs/OnramperNitro.nitro.d.ts +1 -0
  24. package/lib/typescript/commonjs/src/specs/OnramperNitro.nitro.d.ts.map +1 -1
  25. package/lib/typescript/commonjs/src/types.d.ts +2 -0
  26. package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
  27. package/lib/typescript/module/src/OnramperClient.d.ts +5 -0
  28. package/lib/typescript/module/src/OnramperClient.d.ts.map +1 -1
  29. package/lib/typescript/module/src/specs/OnramperNitro.nitro.d.ts +1 -0
  30. package/lib/typescript/module/src/specs/OnramperNitro.nitro.d.ts.map +1 -1
  31. package/lib/typescript/module/src/types.d.ts +2 -0
  32. package/lib/typescript/module/src/types.d.ts.map +1 -1
  33. package/nitrogen/generated/ios/OnramperReactNative-Swift-Cxx-Bridge.cpp +8 -0
  34. package/nitrogen/generated/ios/OnramperReactNative-Swift-Cxx-Bridge.hpp +38 -0
  35. package/nitrogen/generated/ios/OnramperReactNative-Swift-Cxx-Umbrella.hpp +1 -0
  36. package/nitrogen/generated/ios/c++/HybridOnramperNitroSpecSwift.hpp +7 -0
  37. package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +53 -0
  38. package/nitrogen/generated/ios/swift/HybridOnramperNitroSpec.swift +1 -0
  39. package/nitrogen/generated/ios/swift/HybridOnramperNitroSpec_cxx.swift +22 -0
  40. package/nitrogen/generated/shared/c++/HybridOnramperNitroSpec.cpp +1 -0
  41. package/nitrogen/generated/shared/c++/HybridOnramperNitroSpec.hpp +2 -0
  42. package/package.json +2 -2
  43. package/src/OnramperClient.ts +38 -1
  44. package/src/specs/OnramperNitro.nitro.ts +2 -0
  45. package/src/types.ts +2 -0
@@ -11,10 +11,12 @@ import SwiftUI
11
11
  final class HybridOnramperNitro: HybridOnramperNitroSpec {
12
12
  private var client: OnramperClient?
13
13
  private var stateObservation: AnyCancellable?
14
+ private var transactionIdObservation: AnyCancellable?
14
15
  private var eventTask: Task<Void, Never>?
15
16
 
16
17
  private var onState: ((String) -> Void)?
17
18
  private var onEvent: ((String) -> Void)?
19
+ private var onTransactionId: ((String?) -> Void)?
18
20
  // Nitro wraps a callback's return value in a Promise; our callback already
19
21
  // returns Promise<NitroSessionCredentials>, hence the doubly-nested Promise.
20
22
  private var sessionHandler: (() -> Promise<Promise<NitroSessionCredentials>>)?
@@ -33,6 +35,10 @@ final class HybridOnramperNitro: HybridOnramperNitroSpec {
33
35
  self.onEvent = onEvent
34
36
  }
35
37
 
38
+ func setTransactionIdListener(onTransactionId: @escaping (String?) -> Void) {
39
+ self.onTransactionId = onTransactionId
40
+ }
41
+
36
42
  func setSessionExpirationHandler(handler: @escaping () -> Promise<Promise<NitroSessionCredentials>>) {
37
43
  self.sessionHandler = handler
38
44
  }
@@ -96,6 +102,9 @@ final class HybridOnramperNitro: HybridOnramperNitroSpec {
96
102
  stateObservation = client.$state.sink { [weak self] state in
97
103
  self?.onState?(jsonString(state.toJSDict()))
98
104
  }
105
+ transactionIdObservation = client.$currentTransactionId.sink { [weak self] transactionId in
106
+ self?.onTransactionId?(transactionId)
107
+ }
99
108
  // `events` is a computed AsyncStream that captures a single continuation, so
100
109
  // access it exactly once here. CheckoutEvent is Sendable → safe to iterate
101
110
  // off the main actor.
@@ -199,10 +208,13 @@ final class HybridOnramperNitro: HybridOnramperNitroSpec {
199
208
  func dispose() {
200
209
  stateObservation?.cancel()
201
210
  stateObservation = nil
211
+ transactionIdObservation?.cancel()
212
+ transactionIdObservation = nil
202
213
  eventTask?.cancel()
203
214
  eventTask = nil
204
215
  onState = nil
205
216
  onEvent = nil
217
+ onTransactionId = nil
206
218
  sessionHandler = nil
207
219
  lastPreparedHandle = nil
208
220
  client = nil
@@ -19,11 +19,13 @@ class OnramperClient {
19
19
  kind: 'idle'
20
20
  };
21
21
  lastError = null;
22
+ currentTransactionId = null;
22
23
 
23
24
  // Each client owns its own native instance (and thus its own SDK client).
24
25
  native = (0, _OnramperNative.createOnramperNative)();
25
26
  stateListeners = new Set();
26
27
  eventListeners = new Set();
28
+ transactionIdListeners = new Set();
27
29
 
28
30
  // Resolved when the constructor-issued configure() completes. Public methods
29
31
  // that need the native client await this first.
@@ -37,11 +39,21 @@ class OnramperClient {
37
39
  for (const fn of this.stateListeners) fn(s);
38
40
  });
39
41
 
40
- // Single native checkout-event callback → fan out to listeners.
42
+ // Single native checkout-event callback → keep the transaction ID mirror
43
+ // synchronized at finalization, then fan out to checkout listeners.
41
44
  this.native.setEventListener(json => {
42
45
  const e = JSON.parse(json);
46
+ if (e.type === 'checkoutFinalized') {
47
+ this.updateCurrentTransactionId(e.response.onramperTransactionId);
48
+ }
43
49
  for (const fn of this.eventListeners) fn(e);
44
50
  });
51
+ this.native.setTransactionIdListener(transactionId => {
52
+ // The SDK transiently publishes nil while re-preparing after the payment
53
+ // sheet is dismissed. The finalized transaction ID remains durable across
54
+ // that attempt change; only explicit reset()/signOut() clear the JS mirror.
55
+ if (transactionId !== undefined) this.updateCurrentTransactionId(transactionId);
56
+ });
45
57
 
46
58
  // The SDK calls this when its session expires; return fresh credentials.
47
59
  // Nitro stores the async callback natively and awaits it directly — no
@@ -68,6 +80,17 @@ class OnramperClient {
68
80
  // before calling initialize(). The error still surfaces via initialize().
69
81
  this.configured.catch(() => undefined);
70
82
  }
83
+ updateCurrentTransactionId(next) {
84
+ if (next === this.currentTransactionId) return;
85
+ this.currentTransactionId = next;
86
+ for (const fn of [...this.transactionIdListeners]) {
87
+ try {
88
+ fn(next);
89
+ } catch (error) {
90
+ console.error('Onramper transaction ID listener threw:', error);
91
+ }
92
+ }
93
+ }
71
94
  async initialize(creds) {
72
95
  try {
73
96
  await this.configured;
@@ -80,6 +103,7 @@ class OnramperClient {
80
103
  try {
81
104
  await this.configured;
82
105
  await this.native.reset();
106
+ this.updateCurrentTransactionId(null);
83
107
  } catch (e) {
84
108
  throw _errors.OnramperError.from(e);
85
109
  }
@@ -95,6 +119,7 @@ class OnramperClient {
95
119
  try {
96
120
  await this.configured;
97
121
  await this.native.signOut();
122
+ this.updateCurrentTransactionId(null);
98
123
  } catch (e) {
99
124
  throw _errors.OnramperError.from(e);
100
125
  }
@@ -149,6 +174,14 @@ class OnramperClient {
149
174
  };
150
175
  }
151
176
 
177
+ /** Subscribe to the durable Onramper transaction ID. Successful reset/signOut publish null. */
178
+ addTransactionIdListener(fn) {
179
+ this.transactionIdListeners.add(fn);
180
+ return () => {
181
+ this.transactionIdListeners.delete(fn);
182
+ };
183
+ }
184
+
152
185
  /** Subscribe to a specific checkout event. Returns an unsubscribe function. */
153
186
  addEventListener(name, fn) {
154
187
  const wrapper = e => {
@@ -164,6 +197,7 @@ class OnramperClient {
164
197
  destroy() {
165
198
  this.stateListeners.clear();
166
199
  this.eventListeners.clear();
200
+ this.transactionIdListeners.clear();
167
201
  this.native.dispose();
168
202
  }
169
203
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_OnramperCheckoutButtonView","_OnramperNative","_errors","OnramperClient","state","kind","lastError","native","createOnramperNative","stateListeners","Set","eventListeners","constructor","config","setStateListener","json","s","JSON","parse","OnramperError","from","error","fn","setEventListener","e","setSessionExpirationHandler","creds","onSessionExpired","sessionId","sessionToken","configured","configure","apiKey","clientId","environment","theme","logLevel","catch","err","undefined","initialize","reset","signOut","getCheckoutRequirements","request","buttonStyle","prefill","result","stringify","quote","quoteJson","button","createElement","OnramperCheckoutButtonView","intentHandle","style","width","minHeight","cancelPreparedIntent","addStateListener","add","delete","addEventListener","name","wrapper","type","destroy","clear","dispose","exports"],"sourceRoot":"../../src","sources":["OnramperClient.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_OnramperCheckoutButtonView","_OnramperNative","_errors","OnramperClient","state","kind","lastError","currentTransactionId","native","createOnramperNative","stateListeners","Set","eventListeners","transactionIdListeners","constructor","config","setStateListener","json","s","JSON","parse","OnramperError","from","error","fn","setEventListener","e","type","updateCurrentTransactionId","response","onramperTransactionId","setTransactionIdListener","transactionId","undefined","setSessionExpirationHandler","creds","onSessionExpired","sessionId","sessionToken","configured","configure","apiKey","clientId","environment","theme","logLevel","catch","err","next","console","initialize","reset","signOut","getCheckoutRequirements","request","buttonStyle","prefill","result","stringify","quote","quoteJson","button","createElement","OnramperCheckoutButtonView","intentHandle","style","width","minHeight","cancelPreparedIntent","addStateListener","add","delete","addTransactionIdListener","addEventListener","name","wrapper","destroy","clear","dispose","exports"],"sourceRoot":"../../src","sources":["OnramperClient.ts"],"mappings":"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","ignoreList":[]}
@@ -15,11 +15,13 @@ export class OnramperClient {
15
15
  kind: 'idle'
16
16
  };
17
17
  lastError = null;
18
+ currentTransactionId = null;
18
19
 
19
20
  // Each client owns its own native instance (and thus its own SDK client).
20
21
  native = createOnramperNative();
21
22
  stateListeners = new Set();
22
23
  eventListeners = new Set();
24
+ transactionIdListeners = new Set();
23
25
 
24
26
  // Resolved when the constructor-issued configure() completes. Public methods
25
27
  // that need the native client await this first.
@@ -33,11 +35,21 @@ export class OnramperClient {
33
35
  for (const fn of this.stateListeners) fn(s);
34
36
  });
35
37
 
36
- // Single native checkout-event callback → fan out to listeners.
38
+ // Single native checkout-event callback → keep the transaction ID mirror
39
+ // synchronized at finalization, then fan out to checkout listeners.
37
40
  this.native.setEventListener(json => {
38
41
  const e = JSON.parse(json);
42
+ if (e.type === 'checkoutFinalized') {
43
+ this.updateCurrentTransactionId(e.response.onramperTransactionId);
44
+ }
39
45
  for (const fn of this.eventListeners) fn(e);
40
46
  });
47
+ this.native.setTransactionIdListener(transactionId => {
48
+ // The SDK transiently publishes nil while re-preparing after the payment
49
+ // sheet is dismissed. The finalized transaction ID remains durable across
50
+ // that attempt change; only explicit reset()/signOut() clear the JS mirror.
51
+ if (transactionId !== undefined) this.updateCurrentTransactionId(transactionId);
52
+ });
41
53
 
42
54
  // The SDK calls this when its session expires; return fresh credentials.
43
55
  // Nitro stores the async callback natively and awaits it directly — no
@@ -64,6 +76,17 @@ export class OnramperClient {
64
76
  // before calling initialize(). The error still surfaces via initialize().
65
77
  this.configured.catch(() => undefined);
66
78
  }
79
+ updateCurrentTransactionId(next) {
80
+ if (next === this.currentTransactionId) return;
81
+ this.currentTransactionId = next;
82
+ for (const fn of [...this.transactionIdListeners]) {
83
+ try {
84
+ fn(next);
85
+ } catch (error) {
86
+ console.error('Onramper transaction ID listener threw:', error);
87
+ }
88
+ }
89
+ }
67
90
  async initialize(creds) {
68
91
  try {
69
92
  await this.configured;
@@ -76,6 +99,7 @@ export class OnramperClient {
76
99
  try {
77
100
  await this.configured;
78
101
  await this.native.reset();
102
+ this.updateCurrentTransactionId(null);
79
103
  } catch (e) {
80
104
  throw OnramperError.from(e);
81
105
  }
@@ -91,6 +115,7 @@ export class OnramperClient {
91
115
  try {
92
116
  await this.configured;
93
117
  await this.native.signOut();
118
+ this.updateCurrentTransactionId(null);
94
119
  } catch (e) {
95
120
  throw OnramperError.from(e);
96
121
  }
@@ -145,6 +170,14 @@ export class OnramperClient {
145
170
  };
146
171
  }
147
172
 
173
+ /** Subscribe to the durable Onramper transaction ID. Successful reset/signOut publish null. */
174
+ addTransactionIdListener(fn) {
175
+ this.transactionIdListeners.add(fn);
176
+ return () => {
177
+ this.transactionIdListeners.delete(fn);
178
+ };
179
+ }
180
+
148
181
  /** Subscribe to a specific checkout event. Returns an unsubscribe function. */
149
182
  addEventListener(name, fn) {
150
183
  const wrapper = e => {
@@ -160,6 +193,7 @@ export class OnramperClient {
160
193
  destroy() {
161
194
  this.stateListeners.clear();
162
195
  this.eventListeners.clear();
196
+ this.transactionIdListeners.clear();
163
197
  this.native.dispose();
164
198
  }
165
199
  }
@@ -1 +1 @@
1
- {"version":3,"names":["createElement","OnramperCheckoutButtonView","createOnramperNative","OnramperError","OnramperClient","state","kind","lastError","native","stateListeners","Set","eventListeners","constructor","config","setStateListener","json","s","JSON","parse","from","error","fn","setEventListener","e","setSessionExpirationHandler","creds","onSessionExpired","sessionId","sessionToken","configured","configure","apiKey","clientId","environment","theme","logLevel","catch","err","undefined","initialize","reset","signOut","getCheckoutRequirements","request","buttonStyle","prefill","result","stringify","quote","quoteJson","button","intentHandle","style","width","minHeight","cancelPreparedIntent","addStateListener","add","delete","addEventListener","name","wrapper","type","destroy","clear","dispose"],"sourceRoot":"../../src","sources":["OnramperClient.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createElement","OnramperCheckoutButtonView","createOnramperNative","OnramperError","OnramperClient","state","kind","lastError","currentTransactionId","native","stateListeners","Set","eventListeners","transactionIdListeners","constructor","config","setStateListener","json","s","JSON","parse","from","error","fn","setEventListener","e","type","updateCurrentTransactionId","response","onramperTransactionId","setTransactionIdListener","transactionId","undefined","setSessionExpirationHandler","creds","onSessionExpired","sessionId","sessionToken","configured","configure","apiKey","clientId","environment","theme","logLevel","catch","err","next","console","initialize","reset","signOut","getCheckoutRequirements","request","buttonStyle","prefill","result","stringify","quote","quoteJson","button","intentHandle","style","width","minHeight","cancelPreparedIntent","addStateListener","add","delete","addTransactionIdListener","addEventListener","name","wrapper","destroy","clear","dispose"],"sourceRoot":"../../src","sources":["OnramperClient.ts"],"mappings":"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","ignoreList":[]}
@@ -17,11 +17,14 @@ export interface GetCheckoutRequirementsResult {
17
17
  export declare class OnramperClient {
18
18
  state: OnramperState;
19
19
  lastError: OnramperError | null;
20
+ currentTransactionId: string | null;
20
21
  private readonly native;
21
22
  private readonly stateListeners;
22
23
  private readonly eventListeners;
24
+ private readonly transactionIdListeners;
23
25
  private readonly configured;
24
26
  constructor(config: OnramperConfiguration);
27
+ private updateCurrentTransactionId;
25
28
  initialize(creds: SessionCredentials): Promise<void>;
26
29
  reset(): Promise<void>;
27
30
  /**
@@ -51,6 +54,8 @@ export declare class OnramperClient {
51
54
  cancelPreparedIntent(intentHandle: string): Promise<void>;
52
55
  /** Subscribe to state changes. Returns an unsubscribe function. */
53
56
  addStateListener(fn: (state: OnramperState) => void): () => void;
57
+ /** Subscribe to the durable Onramper transaction ID. Successful reset/signOut publish null. */
58
+ addTransactionIdListener(fn: (transactionId: string | null) => void): () => void;
54
59
  /** Subscribe to a specific checkout event. Returns an unsubscribe function. */
55
60
  addEventListener<K extends EventName>(name: K, fn: (e: EventPayload<K>) => void): () => void;
56
61
  /** Tear down: clears JS listeners and releases the native callbacks + SDK client. */
@@ -1 +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,mBAAmB,EACnB,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;;;;;;;;;;;;;;OAcG;IACG,uBAAuB,CAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,GAAE,mBAAwB,EACrC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,6BAA6B,CAAC;IAmBzC,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"}
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,mBAAmB,EACnB,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;IACvC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqD;IAI5F,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;gBAE/B,MAAM,EAAE,qBAAqB;IAoDzC,OAAO,CAAC,0BAA0B;IAa5B,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASpD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5B;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B;;;;;;;;;;;;;;OAcG;IACG,uBAAuB,CAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,GAAE,mBAAwB,EACrC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,6BAA6B,CAAC;IAmBzC,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,+FAA+F;IAC/F,wBAAwB,CAAC,EAAE,EAAE,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,MAAM,IAAI;IAOhF,+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;CAMhB"}
@@ -34,6 +34,7 @@ export interface OnramperNitro extends HybridObject<{
34
34
  cancelPreparedIntent(intentHandle: string): Promise<void>;
35
35
  setStateListener(onState: (stateJson: string) => void): void;
36
36
  setEventListener(onEvent: (eventJson: string) => void): void;
37
+ setTransactionIdListener(onTransactionId: (transactionId: string | undefined) => void): void;
37
38
  setSessionExpirationHandler(handler: () => Promise<NitroSessionCredentials>): void;
38
39
  }
39
40
  //# sourceMappingURL=OnramperNitro.nitro.d.ts.map
@@ -1 +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;IASzB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACpH,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"}
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;IASzB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACpH,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;IAE7D,wBAAwB,CAAC,eAAe,EAAE,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,GAAG,IAAI,CAAC;IAI7F,2BAA2B,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;CAKpF"}
@@ -70,6 +70,8 @@ export interface HeadlessCheckoutData {
70
70
  }
71
71
  export interface CheckoutFinalizeResponse {
72
72
  headlessCheckoutId: string;
73
+ /** Durable Onramper transaction identifier for support, reconciliation, and status lookups. */
74
+ onramperTransactionId: string;
73
75
  headlessCheckoutData: HeadlessCheckoutData;
74
76
  }
75
77
  export type CheckoutRequirement = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
@@ -17,11 +17,14 @@ export interface GetCheckoutRequirementsResult {
17
17
  export declare class OnramperClient {
18
18
  state: OnramperState;
19
19
  lastError: OnramperError | null;
20
+ currentTransactionId: string | null;
20
21
  private readonly native;
21
22
  private readonly stateListeners;
22
23
  private readonly eventListeners;
24
+ private readonly transactionIdListeners;
23
25
  private readonly configured;
24
26
  constructor(config: OnramperConfiguration);
27
+ private updateCurrentTransactionId;
25
28
  initialize(creds: SessionCredentials): Promise<void>;
26
29
  reset(): Promise<void>;
27
30
  /**
@@ -51,6 +54,8 @@ export declare class OnramperClient {
51
54
  cancelPreparedIntent(intentHandle: string): Promise<void>;
52
55
  /** Subscribe to state changes. Returns an unsubscribe function. */
53
56
  addStateListener(fn: (state: OnramperState) => void): () => void;
57
+ /** Subscribe to the durable Onramper transaction ID. Successful reset/signOut publish null. */
58
+ addTransactionIdListener(fn: (transactionId: string | null) => void): () => void;
54
59
  /** Subscribe to a specific checkout event. Returns an unsubscribe function. */
55
60
  addEventListener<K extends EventName>(name: K, fn: (e: EventPayload<K>) => void): () => void;
56
61
  /** Tear down: clears JS listeners and releases the native callbacks + SDK client. */
@@ -1 +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,aAAU,CAAC;AACzC,OAAO,KAAK,EAAiB,SAAS,EAAE,YAAY,EAAE,MAAM,aAAU,CAAC;AACvE,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAS,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;;;;;;;;;;;;;;OAcG;IACG,uBAAuB,CAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,GAAE,mBAAwB,EACrC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,6BAA6B,CAAC;IAmBzC,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"}
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,aAAU,CAAC;AACzC,OAAO,KAAK,EAAiB,SAAS,EAAE,YAAY,EAAE,MAAM,aAAU,CAAC;AACvE,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EACnB,MAAM,YAAS,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;IACvC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG3C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqD;IAI5F,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;gBAE/B,MAAM,EAAE,qBAAqB;IAoDzC,OAAO,CAAC,0BAA0B;IAa5B,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IASpD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAU5B;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B;;;;;;;;;;;;;;OAcG;IACG,uBAAuB,CAC3B,OAAO,EAAE,eAAe,EACxB,WAAW,GAAE,mBAAwB,EACrC,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,6BAA6B,CAAC;IAmBzC,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,+FAA+F;IAC/F,wBAAwB,CAAC,EAAE,EAAE,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,MAAM,IAAI;IAOhF,+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;CAMhB"}
@@ -34,6 +34,7 @@ export interface OnramperNitro extends HybridObject<{
34
34
  cancelPreparedIntent(intentHandle: string): Promise<void>;
35
35
  setStateListener(onState: (stateJson: string) => void): void;
36
36
  setEventListener(onEvent: (eventJson: string) => void): void;
37
+ setTransactionIdListener(onTransactionId: (transactionId: string | undefined) => void): void;
37
38
  setSessionExpirationHandler(handler: () => Promise<NitroSessionCredentials>): void;
38
39
  }
39
40
  //# sourceMappingURL=OnramperNitro.nitro.d.ts.map
@@ -1 +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;IASzB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACpH,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"}
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;IASzB,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACpH,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;IAE7D,wBAAwB,CAAC,eAAe,EAAE,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,GAAG,IAAI,CAAC;IAI7F,2BAA2B,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC;CAKpF"}
@@ -70,6 +70,8 @@ export interface HeadlessCheckoutData {
70
70
  }
71
71
  export interface CheckoutFinalizeResponse {
72
72
  headlessCheckoutId: string;
73
+ /** Durable Onramper transaction identifier for support, reconciliation, and status lookups. */
74
+ onramperTransactionId: string;
73
75
  headlessCheckoutData: HeadlessCheckoutData;
74
76
  }
75
77
  export type CheckoutRequirement = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,14 @@ namespace margelo::nitro::onramper::bridge::swift {
63
63
  };
64
64
  }
65
65
 
66
+ // pragma MARK: std::function<void(const std::optional<std::string>& /* transactionId */)>
67
+ Func_void_std__optional_std__string_ create_Func_void_std__optional_std__string_(void* NON_NULL swiftClosureWrapper) noexcept {
68
+ auto swiftClosure = OnramperReactNative::Func_void_std__optional_std__string_::fromUnsafe(swiftClosureWrapper);
69
+ return [swiftClosure = std::move(swiftClosure)](const std::optional<std::string>& transactionId) mutable -> void {
70
+ swiftClosure.call(transactionId);
71
+ };
72
+ }
73
+
66
74
  // pragma MARK: std::function<void(const NitroSessionCredentials& /* result */)>
67
75
  Func_void_NitroSessionCredentials create_Func_void_NitroSessionCredentials(void* NON_NULL swiftClosureWrapper) noexcept {
68
76
  auto swiftClosure = OnramperReactNative::Func_void_NitroSessionCredentials::fromUnsafe(swiftClosureWrapper);
@@ -34,6 +34,7 @@ namespace OnramperReactNative { class HybridOnramperNitroSpec_cxx; }
34
34
  #include <exception>
35
35
  #include <functional>
36
36
  #include <memory>
37
+ #include <optional>
37
38
  #include <string>
38
39
 
39
40
  /**
@@ -166,6 +167,43 @@ namespace margelo::nitro::onramper::bridge::swift {
166
167
  return Func_void_std__string_Wrapper(std::move(value));
167
168
  }
168
169
 
170
+ // pragma MARK: std::optional<std::string>
171
+ /**
172
+ * Specialized version of `std::optional<std::string>`.
173
+ */
174
+ using std__optional_std__string_ = std::optional<std::string>;
175
+ inline std::optional<std::string> create_std__optional_std__string_(const std::string& value) noexcept {
176
+ return std::optional<std::string>(value);
177
+ }
178
+ inline bool has_value_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
179
+ return optional.has_value();
180
+ }
181
+ inline std::string get_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
182
+ return optional.value();
183
+ }
184
+
185
+ // pragma MARK: std::function<void(const std::optional<std::string>& /* transactionId */)>
186
+ /**
187
+ * Specialized version of `std::function<void(const std::optional<std::string>&)>`.
188
+ */
189
+ using Func_void_std__optional_std__string_ = std::function<void(const std::optional<std::string>& /* transactionId */)>;
190
+ /**
191
+ * Wrapper class for a `std::function<void(const std::optional<std::string>& / * transactionId * /)>`, this can be used from Swift.
192
+ */
193
+ class Func_void_std__optional_std__string__Wrapper final {
194
+ public:
195
+ explicit Func_void_std__optional_std__string__Wrapper(std::function<void(const std::optional<std::string>& /* transactionId */)>&& func): _function(std::make_unique<std::function<void(const std::optional<std::string>& /* transactionId */)>>(std::move(func))) {}
196
+ inline void call(std::optional<std::string> transactionId) const noexcept {
197
+ _function->operator()(transactionId);
198
+ }
199
+ private:
200
+ std::unique_ptr<std::function<void(const std::optional<std::string>& /* transactionId */)>> _function;
201
+ } SWIFT_NONCOPYABLE;
202
+ Func_void_std__optional_std__string_ create_Func_void_std__optional_std__string_(void* NON_NULL swiftClosureWrapper) noexcept;
203
+ inline Func_void_std__optional_std__string__Wrapper wrap_Func_void_std__optional_std__string_(Func_void_std__optional_std__string_ value) noexcept {
204
+ return Func_void_std__optional_std__string__Wrapper(std::move(value));
205
+ }
206
+
169
207
  // pragma MARK: std::shared_ptr<Promise<NitroSessionCredentials>>
170
208
  /**
171
209
  * Specialized version of `std::shared_ptr<Promise<NitroSessionCredentials>>`.
@@ -30,6 +30,7 @@ namespace margelo::nitro::onramper { struct PreparedIntentResult; }
30
30
  #include <exception>
31
31
  #include <functional>
32
32
  #include <memory>
33
+ #include <optional>
33
34
  #include <string>
34
35
 
35
36
  // C++ helpers for Swift
@@ -24,6 +24,7 @@ namespace margelo::nitro::onramper { struct NitroSessionCredentials; }
24
24
  #include <string>
25
25
  #include "PreparedIntentResult.hpp"
26
26
  #include <functional>
27
+ #include <optional>
27
28
  #include "NitroSessionCredentials.hpp"
28
29
 
29
30
  #include "OnramperReactNative-Swift-Cxx-Umbrella.hpp"
@@ -136,6 +137,12 @@ namespace margelo::nitro::onramper {
136
137
  std::rethrow_exception(__result.error());
137
138
  }
138
139
  }
140
+ inline void setTransactionIdListener(const std::function<void(const std::optional<std::string>& /* transactionId */)>& onTransactionId) override {
141
+ auto __result = _swiftPart.setTransactionIdListener(onTransactionId);
142
+ if (__result.hasError()) [[unlikely]] {
143
+ std::rethrow_exception(__result.error());
144
+ }
145
+ }
139
146
  inline void setSessionExpirationHandler(const std::function<std::shared_ptr<Promise<std::shared_ptr<Promise<NitroSessionCredentials>>>>()>& handler) override {
140
147
  auto __result = _swiftPart.setSessionExpirationHandler(handler);
141
148
  if (__result.hasError()) [[unlikely]] {
@@ -0,0 +1,53 @@
1
+ ///
2
+ /// Func_void_std__optional_std__string_.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ import NitroModules
9
+
10
+ /**
11
+ * Wraps a Swift `(_ transactionId: String?) -> Void` as a class.
12
+ * This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
13
+ */
14
+ public final class Func_void_std__optional_std__string_ {
15
+ public typealias bridge = margelo.nitro.onramper.bridge.swift
16
+
17
+ private let closure: (_ transactionId: String?) -> Void
18
+
19
+ public init(_ closure: @escaping (_ transactionId: String?) -> Void) {
20
+ self.closure = closure
21
+ }
22
+
23
+ @inline(__always)
24
+ public func call(transactionId: bridge.std__optional_std__string_) -> Void {
25
+ self.closure({ () -> String? in
26
+ if bridge.has_value_std__optional_std__string_(transactionId) {
27
+ let __unwrapped = bridge.get_std__optional_std__string_(transactionId)
28
+ return String(__unwrapped)
29
+ } else {
30
+ return nil
31
+ }
32
+ }())
33
+ }
34
+
35
+ /**
36
+ * Casts this instance to a retained unsafe raw pointer.
37
+ * This acquires one additional strong reference on the object!
38
+ */
39
+ @inline(__always)
40
+ public func toUnsafe() -> UnsafeMutableRawPointer {
41
+ return Unmanaged.passRetained(self).toOpaque()
42
+ }
43
+
44
+ /**
45
+ * Casts an unsafe pointer to a `Func_void_std__optional_std__string_`.
46
+ * The pointer has to be a retained opaque `Unmanaged<Func_void_std__optional_std__string_>`.
47
+ * This removes one strong reference from the object!
48
+ */
49
+ @inline(__always)
50
+ public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_std__optional_std__string_ {
51
+ return Unmanaged<Func_void_std__optional_std__string_>.fromOpaque(pointer).takeRetainedValue()
52
+ }
53
+ }
@@ -21,6 +21,7 @@ public protocol HybridOnramperNitroSpec_protocol: HybridObject {
21
21
  func cancelPreparedIntent(intentHandle: String) throws -> Promise<Void>
22
22
  func setStateListener(onState: @escaping (_ stateJson: String) -> Void) throws -> Void
23
23
  func setEventListener(onEvent: @escaping (_ eventJson: String) -> Void) throws -> Void
24
+ func setTransactionIdListener(onTransactionId: @escaping (_ transactionId: String?) -> Void) throws -> Void
24
25
  func setSessionExpirationHandler(handler: @escaping () -> Promise<Promise<NitroSessionCredentials>>) throws -> Void
25
26
  }
26
27