@swapper-finance/deposit-sdk 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -187,6 +187,91 @@ Removes the iframe and cleans up event listeners.
187
187
  swapper.destroy();
188
188
  ```
189
189
 
190
+ ## Widget Events
191
+
192
+ The widget emits structured events via `postMessage` that you can listen to through the SDK. This lets you react to user actions like completed transactions.
193
+
194
+ ### Event Envelope
195
+
196
+ Every event posted from the iframe follows this shape:
197
+
198
+ ```typescript
199
+ interface SwapperWidgetEvent {
200
+ type: "SWAPPER_EVENT"; // discriminator
201
+ version: "1.0"; // protocol version
202
+ name: WidgetEventName; // e.g. "transaction_success"
203
+ timestamp: string; // ISO 8601
204
+ payload: WidgetEventPayload; // event-specific data
205
+ }
206
+ ```
207
+
208
+ ### Listening with `on()` / `off()`
209
+
210
+ ```typescript
211
+ import { SwapperIframe, WidgetEventName } from '@swapper-finance/deposit-sdk';
212
+ import type { TransactionSuccessPayload } from '@swapper-finance/deposit-sdk';
213
+
214
+ const swapper = new SwapperIframe({
215
+ container: '#swapper-container',
216
+ integratorId: 'your-integrator-id',
217
+ dstChainId: '8453',
218
+ dstTokenAddr: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
219
+ depositWalletAddress: '0x2A018F2506acaEEE2C10632514Fc5DCa9eE2c28A',
220
+ });
221
+
222
+ // Listen for a specific event
223
+ swapper.on(WidgetEventName.TRANSACTION_SUCCESS, (event) => {
224
+ const payload = event.data as TransactionSuccessPayload;
225
+ console.log('Transaction succeeded:', payload.txHash);
226
+ console.log('Deposit option:', payload.depositOption); // "walletDeposit" | "transferCrypto" | "depositWithCash"
227
+ });
228
+
229
+ // Listen for all events with wildcard
230
+ swapper.on('*', (event) => {
231
+ console.log('Widget event:', event.type, event.data);
232
+ });
233
+
234
+ // Remove a specific handler
235
+ const handler = (event) => { /* ... */ };
236
+ swapper.on(WidgetEventName.TRANSACTION_SUCCESS, handler);
237
+ swapper.off(WidgetEventName.TRANSACTION_SUCCESS, handler);
238
+ ```
239
+
240
+ ### Listening with `window.addEventListener`
241
+
242
+ You can also listen for events directly on the window. Each event is a `MessageEvent` containing a `SwapperWidgetEvent` envelope:
243
+
244
+ ```typescript
245
+ import { WIDGET_EVENT_PROTOCOL_VERSION, WidgetEventName } from '@swapper-finance/deposit-sdk';
246
+ import type { SwapperWidgetEvent, TransactionSuccessPayload } from '@swapper-finance/deposit-sdk';
247
+
248
+ window.addEventListener('message', (event: MessageEvent) => {
249
+ if (event.data?.type !== 'SWAPPER_EVENT') return;
250
+
251
+ const message = event.data as SwapperWidgetEvent;
252
+
253
+ if (message.version !== WIDGET_EVENT_PROTOCOL_VERSION) return;
254
+
255
+ if (message.name === WidgetEventName.TRANSACTION_SUCCESS) {
256
+ const payload = message.payload as TransactionSuccessPayload;
257
+ console.log('Tx hash:', payload.txHash);
258
+ console.log('Explorer:', payload.explorerUrl);
259
+ }
260
+ });
261
+ ```
262
+
263
+ ### `TransactionSuccessPayload`
264
+
265
+ | Field | Type | Required | Description |
266
+ |------------------|-------------------|----------|---------------------------------------|
267
+ | `depositOption` | `DepositFlowType` | Yes | `"walletDeposit"`, `"transferCrypto"`, or `"depositWithCash"` |
268
+ | `txHash` | `string` | No | Transaction hash |
269
+ | `explorerUrl` | `string` | No | Link to block explorer |
270
+ | `tokenSymbol` | `string` | No | Token symbol (e.g. `"USDC"`) |
271
+ | `tokenAddress` | `string` | No | Token contract address |
272
+ | `chainId` | `string` | No | Chain ID of the transaction |
273
+ | `amountReceived` | `string` | No | Amount received |
274
+
190
275
  ## Modal API Reference
191
276
 
192
277
  ### Opening a Modal
@@ -1 +1 @@
1
- {"version":3,"file":"SwapperIframe.d.ts","sourceRoot":"","sources":["../src/SwapperIframe.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EAEnB,aAAa,EACb,YAAY,EACZ,sBAAsB,EAEvB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAuB,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAUjE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAAoD;IACzE,OAAO,CAAC,eAAe,CAAC,CAAgC;IACxD,OAAO,CAAC,cAAc,CAAC,CAAwB;gBAMnC,OAAO,EAAE,oBAAoB;IA+DzC,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,YAAY;IAsFpB,OAAO,CAAC,oBAAoB;IAoCrB,KAAK,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAoB5C,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAelD,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAQzC,yBAAyB,CAAC,mBAAmB,EAAE,YAAY,EAAE,GAAG,IAAI;IAQpE,6BAA6B,CAClC,uBAAuB,EAAE,sBAAsB,EAAE,GAChD,IAAI;IAQA,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAOjD,OAAO,CAAC,WAAW;IAUZ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAYzD,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAa1D,SAAS,IAAI,iBAAiB;IAO9B,SAAS,IAAI,aAAa;IAS1B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAgCxC,OAAO,IAAI,IAAI;CAmBvB"}
1
+ {"version":3,"file":"SwapperIframe.d.ts","sourceRoot":"","sources":["../src/SwapperIframe.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EAEnB,aAAa,EACb,YAAY,EACZ,sBAAsB,EAIvB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAuB,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAUjE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAAoD;IACzE,OAAO,CAAC,eAAe,CAAC,CAAgC;IACxD,OAAO,CAAC,cAAc,CAAC,CAAwB;gBAMnC,OAAO,EAAE,oBAAoB;IA+DzC,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,YAAY;IAsFpB,OAAO,CAAC,oBAAoB;IAqErB,KAAK,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAoB5C,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI;IAelD,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAQzC,yBAAyB,CAAC,mBAAmB,EAAE,YAAY,EAAE,GAAG,IAAI;IAQpE,6BAA6B,CAClC,uBAAuB,EAAE,sBAAsB,EAAE,GAChD,IAAI;IAQA,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAOjD,OAAO,CAAC,WAAW;IAUZ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAYzD,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAa1D,SAAS,IAAI,iBAAiB;IAO9B,SAAS,IAAI,aAAa;IAS1B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAgCxC,OAAO,IAAI,IAAI;CAmBvB"}
@@ -1,3 +1,4 @@
1
+ import { WIDGET_EVENT_PROTOCOL_VERSION, } from "./types";
1
2
  import { SwapperWalletProvider } from "./SwapperWalletProvider";
2
3
  import { createSwapperSigner } from "./adapters";
3
4
  const DEFAULT_IFRAME_URL = "https://deposit.swapper.finance/";
@@ -123,6 +124,28 @@ export class SwapperIframe {
123
124
  if (event.origin !== iframeOrigin) {
124
125
  return;
125
126
  }
127
+ if (event.data &&
128
+ typeof event.data === "object" &&
129
+ event.data.type === "SWAPPER_EVENT") {
130
+ const envelope = event.data;
131
+ if (envelope.version !== WIDGET_EVENT_PROTOCOL_VERSION) {
132
+ console.warn(`[SwapperIframe] Received widget event with unsupported protocol version ${envelope.version} (expected ${WIDGET_EVENT_PROTOCOL_VERSION})`);
133
+ return;
134
+ }
135
+ const swapperEvent = {
136
+ type: envelope.name,
137
+ data: envelope.payload,
138
+ };
139
+ const handlers = this.eventHandlers.get(swapperEvent.type);
140
+ if (handlers) {
141
+ handlers.forEach((handler) => handler(swapperEvent));
142
+ }
143
+ const wildcardHandlers = this.eventHandlers.get("*");
144
+ if (wildcardHandlers) {
145
+ wildcardHandlers.forEach((handler) => handler(swapperEvent));
146
+ }
147
+ return;
148
+ }
126
149
  if (event.data && typeof event.data === "object") {
127
150
  const swapperEvent = {
128
151
  type: event.data.type,
@@ -1 +1 @@
1
- {"version":3,"file":"SwapperIframe.js","sourceRoot":"","sources":["../src/SwapperIframe.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAkB,MAAM,YAAY,CAAC;AAKjE,MAAM,kBAAkB,GAAG,kCAAkC,CAAC;AAK9D,MAAM,OAAO,aAAa;IAYxB,YAAY,OAA6B;QARjC,kBAAa,GAA0C,IAAI,GAAG,EAAE,CAAC;QASvE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAE7B,IAAI,CAAC,MAAM,GAAG;YACZ,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;YACxD,UAAU,EAAE,OAAO,CAAC,UAAU;SAC/B,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC;QACzD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAEpD,IAAI,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAG1D,MAAM,oBAAoB,GAAG,CAAC,EAAqB,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBACnF,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE,CAC/C,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAE9B,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;qBACpD,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE;oBAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAqB,CAAC;wBAC9C,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,YAAY;wBACZ,oBAAoB;wBACpB,oBAAoB;wBACpB,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;qBAClC,CAAC,CAAC;gBACL,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,OAAO,CAAC,KAAK,CAAC,uDAAuD,EAAE,GAAG,CAAC,CAAC;gBAC9E,CAAC,CAAC,CAAC;YACP,CAAC;iBAAM,CAAC;gBAEN,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAqB,CAAC;oBAC9C,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,YAAY;oBACZ,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB;oBACzD,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB;oBACzD,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;iBACxC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAKO,cAAc,CAAC,MAAqB;QAC1C,MAAM,QAAQ,GAAG;YACf,cAAc;YACd,YAAY;YACZ,cAAc;YACd,sBAAsB;SACvB,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,KAA4B,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAKO,YAAY,CAAC,OAA6B;QAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAGhD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC/D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3D,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC/D,GAAG,CAAC,YAAY,CAAC,GAAG,CAClB,sBAAsB,EACtB,IAAI,CAAC,MAAM,CAAC,oBAAoB,CACjC,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;YACpC,GAAG,CAAC,YAAY,CAAC,GAAG,CAClB,qBAAqB,EACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAChD,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;YACxC,GAAG,CAAC,YAAY,CAAC,GAAG,CAClB,yBAAyB,EACzB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CACpD,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC3B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC7D,CAAC;QAGD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEjD,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAG5B,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,gBAAgB,EAAE,KAAK,IAAI,MAAM,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,MAAM,IAAI,OAAO,CAAC;QAClE,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,gBAAgB,EAAE,KAAK,IAAI,wBAAwB,CAAC;QAG3E,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QACpD,MAAM,YAAY,GAAG,gCAAgC,YAAY,EAAE,CAAC;QACpE,MAAM,eAAe,GAAG,OAAO,CAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE,CAAC;QAC9D,MAAM,gBAAgB,GAAG,eAAe;YACtC,CAAC,CAAC,GAAG,YAAY,IAAI,eAAe,EAAE;YACtC,CAAC,CAAC,YAAY,CAAC;QACjB,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAG/C,MAAM,cAAc,GAClB,sGAAsG,CAAC;QACzG,MAAM,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,EAAE,OAAO,IAAI,EAAE,CAAC;QAClE,MAAM,kBAAkB,GAAG,iBAAiB;YAC1C,CAAC,CAAC,GAAG,cAAc,IAAI,iBAAiB,EAAE;YAC1C,CAAC,CAAC,cAAc,CAAC;QACnB,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAGnD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAChE,IACE,KAAK;oBACL,GAAG,KAAK,OAAO;oBACf,GAAG,KAAK,QAAQ;oBAChB,GAAG,KAAK,OAAO;oBACf,GAAG,KAAK,OAAO;oBACf,GAAG,KAAK,SAAS,EACjB,CAAC;oBACD,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAKO,oBAAoB;QAC1B,IAAI,CAAC,eAAe,GAAG,CAAC,KAAmB,EAAE,EAAE;YAE7C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YACpD,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBAClC,OAAO;YACT,CAAC;YAGD,IAAI,KAAK,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjD,MAAM,YAAY,GAAiB;oBACjC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI;iBACtB,CAAC;gBAGF,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC3D,IAAI,QAAQ,EAAE,CAAC;oBACb,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;gBACvD,CAAC;gBAGD,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrD,IAAI,gBAAgB,EAAE,CAAC;oBACrB,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3D,CAAC;IAMM,KAAK,CAAC,SAA+B;QAC1C,MAAM,gBAAgB,GACpB,OAAO,SAAS,KAAK,QAAQ;YAC3B,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAc,SAAS,CAAC;YAChD,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,wBAAwB,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBACpE,EAAE,CACH,CAAC;QACJ,CAAC;QAED,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAMM,YAAY,CAAC,MAA8B;QAEhD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;QAG5C,IAAI,CAAC,WAAW,CAAC;YACf,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;IAMM,YAAY,CAAC,MAAqB;QACvC,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAChC,CAAC;IAMM,yBAAyB,CAAC,mBAAmC;QAClE,IAAI,CAAC,YAAY,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC7C,CAAC;IAMM,6BAA6B,CAClC,uBAAiD;QAEjD,IAAI,CAAC,YAAY,CAAC,EAAE,uBAAuB,EAAE,CAAC,CAAC;IACjD,CAAC;IAMM,gBAAgB,CAAC,UAAkB;QACxC,IAAI,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IACpC,CAAC;IAKO,WAAW,CAAC,OAAgB;QAClC,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;IAOM,EAAE,CAAC,SAAiB,EAAE,OAA4B;QACvD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAOM,GAAG,CAAC,SAAiB,EAAE,OAA4B;QACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzB,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAKM,SAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAKM,SAAS;QACd,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAOM,YAAY,CAAC,SAAoB;QACtC,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAG9C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAClC,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QACpD,MAAM,oBAAoB,GAAG,CAAC,EAAqB,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACnF,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE,CAC/C,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE9B,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;aACpD,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE;YAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAqB,CAAC;gBAC9C,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY;gBACZ,oBAAoB;gBACpB,oBAAoB;gBACpB,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;aAClC,CAAC,CAAC;QACL,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,GAAG,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACP,CAAC;IAKM,OAAO;QACZ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAClC,CAAC;QAGD,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9D,CAAC;QAGD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAG3B,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"SwapperIframe.js","sourceRoot":"","sources":["../src/SwapperIframe.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,8 +2,8 @@ export { SwapperIframe } from "./SwapperIframe";
2
2
  export { SwapperModal, openSwapperModal } from "./SwapperModal";
3
3
  export type { SwapperModalOptions } from "./SwapperModal";
4
4
  export { SwapperWalletProvider } from "./SwapperWalletProvider";
5
- export { ThemeMode, ComponentStyles, SwapperStyles, SupportedDepositOption, ContractCallType, ContractCall, SwapperConfig, SwapperIframeOptions, SwapperEvent, SwapperEventHandler, SWAPPER_WALLET_MSGS, } from "./types";
6
- export type { WalletReadyMessage, WalletConnectMessage, WalletDisconnectMessage, WalletChainChangedMessage, WalletTransaction, TxRequestMessage, TxResponseMessage, ChainSwitchRequestMessage, ChainSwitchResponseMessage, TransactionRequestHandler, ChainSwitchRequestHandler, SwapperWalletProviderOptions, SwapperSigner, } from "./types";
5
+ export { ThemeMode, ComponentStyles, SwapperStyles, SupportedDepositOption, ContractCallType, ContractCall, SwapperConfig, SwapperIframeOptions, SwapperEvent, SwapperEventHandler, SWAPPER_WALLET_MSGS, WIDGET_EVENT_PROTOCOL_VERSION, WidgetEventName, } from "./types";
6
+ export type { WalletReadyMessage, WalletConnectMessage, WalletDisconnectMessage, WalletChainChangedMessage, WalletTransaction, TxRequestMessage, TxResponseMessage, ChainSwitchRequestMessage, ChainSwitchResponseMessage, TransactionRequestHandler, ChainSwitchRequestHandler, SwapperWalletProviderOptions, SwapperSigner, SwapperWidgetEvent, TransactionSuccessPayload, WidgetEventPayload, DepositFlowType, } from "./types";
7
7
  export { approve, transfer, transferFrom, approveBalance, transferBalance, } from "./helpers";
8
8
  export { createSwapperSigner, EthersV5SignerAdapter, EthersV6SignerAdapter, ViemSignerAdapter, } from "./adapters";
9
9
  export type { AnySigner, EthersV5SignerLike, EthersV6SignerLike, ViemWalletClientLike, } from "./adapters";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,SAAS,EACT,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAEL,OAAO,EACP,QAAQ,EACR,YAAY,EAEZ,cAAc,EACd,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,SAAS,EACT,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,6BAA6B,EAC7B,eAAe,GAChB,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,EACzB,yBAAyB,EACzB,4BAA4B,EAC5B,aAAa,EACb,kBAAkB,EAClB,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,GAChB,MAAM,SAAS,CAAC;AACjB,OAAO,EAEL,OAAO,EACP,QAAQ,EACR,YAAY,EAEZ,cAAc,EACd,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export { SwapperIframe } from "./SwapperIframe";
2
2
  export { SwapperModal, openSwapperModal } from "./SwapperModal";
3
3
  export { SwapperWalletProvider } from "./SwapperWalletProvider";
4
- export { ContractCallType, SWAPPER_WALLET_MSGS, } from "./types";
4
+ export { ContractCallType, SWAPPER_WALLET_MSGS, WIDGET_EVENT_PROTOCOL_VERSION, WidgetEventName, } from "./types";
5
5
  export { approve, transfer, transferFrom, approveBalance, transferBalance, } from "./helpers";
6
6
  export { createSwapperSigner, EthersV5SignerAdapter, EthersV6SignerAdapter, ViemSignerAdapter, } from "./adapters";
7
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAKL,gBAAgB,EAMhB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AAgBjB,OAAO,EAEL,OAAO,EACP,QAAQ,EACR,YAAY,EAEZ,cAAc,EACd,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEhE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAKL,gBAAgB,EAMhB,mBAAmB,EACnB,6BAA6B,EAC7B,eAAe,GAChB,MAAM,SAAS,CAAC;AAoBjB,OAAO,EAEL,OAAO,EACP,QAAQ,EACR,YAAY,EAEZ,cAAc,EACd,eAAe,GAChB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";var SwapperSDK=(()=>{var C=Object.defineProperty;var W=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var O=(i,e)=>{for(var t in e)C(i,t,{get:e[t],enumerable:!0})},N=(i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of _(e))!M.call(i,r)&&r!==t&&C(i,r,{get:()=>e[r],enumerable:!(n=W(e,r))||n.enumerable});return i};var k=i=>N(C({},"__esModule",{value:!0}),i);var G={};O(G,{ContractCallType:()=>w,EthersV5SignerAdapter:()=>g,EthersV6SignerAdapter:()=>u,SWAPPER_WALLET_MSGS:()=>o,SwapperIframe:()=>h,SwapperModal:()=>S,SwapperWalletProvider:()=>d,ViemSignerAdapter:()=>f,approve:()=>L,approveBalance:()=>R,createSwapperSigner:()=>m,openSwapperModal:()=>A,transfer:()=>I,transferBalance:()=>P,transferFrom:()=>b});var w=(r=>(r[r.DEFAULT=0]="DEFAULT",r[r.FULL_TOKEN_BALANCE=1]="FULL_TOKEN_BALANCE",r[r.FULL_NATIVE_BALANCE=2]="FULL_NATIVE_BALANCE",r[r.COLLECT_TOKEN_BALANCE=3]="COLLECT_TOKEN_BALANCE",r))(w||{});var o={WALLET_READY:"SWAPPER_WALLET_READY",WALLET_CONNECT:"SWAPPER_WALLET_CONNECT",WALLET_DISCONNECT:"SWAPPER_WALLET_DISCONNECT",WALLET_CHAIN_CHANGED:"SWAPPER_WALLET_CHAIN_CHANGED",TX_REQUEST:"SWAPPER_TX_REQUEST",TX_RESPONSE:"SWAPPER_TX_RESPONSE",CHAIN_SWITCH_REQUEST:"SWAPPER_CHAIN_SWITCH_REQUEST",CHAIN_SWITCH_RESPONSE:"SWAPPER_CHAIN_SWITCH_RESPONSE"};var H="https://deposit.swapper.finance";function q(i,e){if(e)return e;try{return new URL(i.src).origin}catch{return H}}var d=class{constructor(e){this.isReady=!1;this.isConnected=!1;this.iframe=e.iframe,this.iframeOrigin=q(e.iframe,e.iframeOrigin),this.onTransactionRequest=e.onTransactionRequest,this.onChainSwitchRequest=e.onChainSwitchRequest,this.autoConnectConfig=e.autoConnect,this.messageListener=this.handleMessage.bind(this),window.addEventListener("message",this.messageListener)}handleMessage(e){if(e.origin!==this.iframeOrigin||!e.data||typeof e.data!="object")return;let{type:t}=e.data;switch(t){case o.WALLET_READY:this.isReady=!0,this.autoConnectConfig&&this.connectWallet(this.autoConnectConfig.address,this.autoConnectConfig.chainId);break;case o.TX_REQUEST:this.handleTxRequest(e.data);break;case o.CHAIN_SWITCH_REQUEST:this.handleChainSwitchRequest(e.data);break}}async handleTxRequest(e){try{let t=await this.onTransactionRequest(e.transaction);this.postMessage({type:o.TX_RESPONSE,requestId:e.requestId,hash:t.hash})}catch(t){this.postMessage({type:o.TX_RESPONSE,requestId:e.requestId,error:t instanceof Error?t.message:String(t)})}}async handleChainSwitchRequest(e){try{await this.onChainSwitchRequest(Number(e.chainId)),this.chainId=Number(e.chainId),this.postMessage({type:o.CHAIN_SWITCH_RESPONSE,requestId:e.requestId}),this.postMessage({type:o.WALLET_CHAIN_CHANGED,chainId:e.chainId})}catch(t){this.postMessage({type:o.CHAIN_SWITCH_RESPONSE,requestId:e.requestId,error:t instanceof Error?t.message:String(t)})}}postMessage(e){this.iframe.contentWindow?.postMessage(e,this.iframeOrigin)}connectWallet(e,t){this.isConnected=!0,this.address=e,this.chainId=t,this.postMessage({type:o.WALLET_CONNECT,address:e,chainId:String(t)})}disconnectWallet(){this.isConnected=!1,this.address=void 0,this.chainId=void 0,this.postMessage({type:o.WALLET_DISCONNECT})}notifyChainChanged(e){this.chainId=e,this.postMessage({type:o.WALLET_CHAIN_CHANGED,chainId:String(e)})}setAutoConnect(e){this.autoConnectConfig=e,e&&this.isReady&&this.connectWallet(e.address,e.chainId)}getIsReady(){return this.isReady}getIsConnected(){return this.isConnected}getAddress(){return this.address}getChainId(){return this.chainId}destroy(){window.removeEventListener("message",this.messageListener),this.isReady=!1,this.isConnected=!1,this.address=void 0,this.chainId=void 0,this.autoConnectConfig=void 0}};var g=class{constructor(e){this.signer=e}async getAddress(){return this.signer.getAddress()}async getChainId(){return this.signer.getChainId()}async sendTransaction(e){return{hash:(await this.signer.sendTransaction({to:e.to,data:e.data,value:e.value,gasLimit:e.gasLimit})).hash}}async switchChain(e){let t="0x"+Number(e).toString(16);if(this.signer.provider&&"send"in this.signer.provider)await this.signer.provider.send("wallet_switchEthereumChain",[{chainId:t}]);else throw new Error("Provider does not support wallet_switchEthereumChain")}},u=class{constructor(e){this.signer=e}async getAddress(){return this.signer.getAddress()}async getChainId(){let e=await this.signer.provider.getNetwork();return Number(e.chainId)}async sendTransaction(e){return{hash:(await this.signer.sendTransaction({to:e.to,data:e.data,value:e.value,gasLimit:e.gasLimit})).hash}}async switchChain(e){let t="0x"+Number(e).toString(16);await this.signer.provider.send("wallet_switchEthereumChain",[{chainId:t}])}},f=class{constructor(e){this.client=e}async getAddress(){let[e]=await this.client.getAddresses();if(!e)throw new Error("No account found in WalletClient");return e}async getChainId(){return this.client.getChainId()}async sendTransaction(e){let[t]=await this.client.getAddresses();if(!t)throw new Error("No account found");return{hash:await this.client.sendTransaction({account:t,to:e.to,data:e.data,value:e.value?BigInt(e.value):void 0,gas:e.gasLimit?BigInt(e.gasLimit):void 0,chain:void 0})}}async switchChain(e){await this.client.switchChain({id:e})}};function U(i){return typeof i=="object"&&i!==null&&typeof i.getAddresses=="function"}function D(i){return typeof i=="object"&&i!==null&&typeof i.getAddress=="function"&&typeof i.sendTransaction=="function"&&i.provider!=null&&typeof i.provider.getNetwork=="function"&&!("getChainId"in i)}function V(i){return typeof i=="object"&&i!==null&&typeof i.getAddress=="function"&&typeof i.getChainId=="function"&&typeof i.sendTransaction=="function"&&!("getAddresses"in i)}function F(i){return typeof i=="object"&&i!==null&&typeof i.getAddress=="function"&&typeof i.getChainId=="function"&&typeof i.sendTransaction=="function"&&typeof i.switchChain=="function"}function m(i){if(U(i))return new f(i);if(D(i))return new u(i);if(V(i))return new g(i);if(F(i))return i;throw new Error("Unsupported signer type. Expected an ethers v5 Signer, ethers v6 Signer, viem WalletClient, or an object implementing the SwapperSigner interface.")}var B="https://deposit.swapper.finance/",h=class{constructor(e){this.eventHandlers=new Map;if(this.validateConfig(e),this.config={integratorId:e.integratorId,dstChainId:e.dstChainId,dstTokenAddr:e.dstTokenAddr,depositWalletAddress:e.depositWalletAddress,styles:e.styles,customContractCalls:e.customContractCalls,supportedDepositOptions:e.supportedDepositOptions,webhookUrl:e.webhookUrl},this.iframeUrl=e.iframeUrl||B,this.iframe=this.createIframe(e),this.setupMessageListener(),e.container&&this.mount(e.container),e.wallet){let t=new URL(this.iframeUrl).origin;if("signer"in e.wallet){let n=m(e.wallet.signer),r=s=>n.sendTransaction(s),a=s=>n.switchChain(s);Promise.all([n.getAddress(),n.getChainId()]).then(([s,l])=>{this.walletProvider=new d({iframe:this.iframe,iframeOrigin:t,onTransactionRequest:r,onChainSwitchRequest:a,autoConnect:{address:s,chainId:l}})}).catch(s=>{console.error("[SwapperIframe] Failed to initialize wallet provider:",s)})}else this.walletProvider=new d({iframe:this.iframe,iframeOrigin:t,onTransactionRequest:e.wallet.onTransactionRequest,onChainSwitchRequest:e.wallet.onChainSwitchRequest,autoConnect:e.wallet.autoConnect})}}validateConfig(e){let t=["integratorId","dstChainId","dstTokenAddr","depositWalletAddress"];for(let n of t)if(!e[n])throw new Error(`Missing required parameter: ${n}`)}createIframe(e){let t=document.createElement("iframe"),n=new URL(this.iframeUrl);n.searchParams.set("integratorId",this.config.integratorId),n.searchParams.set("dstChainId",this.config.dstChainId),n.searchParams.set("dstTokenAddr",this.config.dstTokenAddr),n.searchParams.set("depositWalletAddress",this.config.depositWalletAddress),this.config.styles&&n.searchParams.set("styles",JSON.stringify(this.config.styles)),this.config.customContractCalls&&n.searchParams.set("customContractCalls",JSON.stringify(this.config.customContractCalls)),this.config.supportedDepositOptions&&n.searchParams.set("supportedDepositOptions",JSON.stringify(this.config.supportedDepositOptions)),this.config.webhookUrl&&n.searchParams.set("webhookUrl",this.config.webhookUrl),n.searchParams.set("t",Date.now().toString()),t.src=n.toString(),t.style.border="none",t.style.width=e.iframeAttributes?.width||"100%",t.style.height=e.iframeAttributes?.height||"560px",t.title=e.iframeAttributes?.title||"Swapper Deposit Widget";let a=`camera; clipboard-write self ${new URL(this.iframeUrl).origin}`,s=e.iframeAttributes?.allow||"",l=s?`${a} ${s}`:a;t.setAttribute("allow",l);let y="allow-forms allow-modals allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts",v=e.iframeAttributes?.sandbox||"",x=v?`${y} ${v}`:y;return t.setAttribute("sandbox",x),e.iframeAttributes&&Object.entries(e.iframeAttributes).forEach(([c,T])=>{T&&c!=="width"&&c!=="height"&&c!=="title"&&c!=="allow"&&c!=="sandbox"&&t.setAttribute(c,T)}),t}setupMessageListener(){this.messageListener=e=>{let t=new URL(this.iframeUrl).origin;if(e.origin===t&&e.data&&typeof e.data=="object"){let n={type:e.data.type,data:e.data.data},r=this.eventHandlers.get(n.type);r&&r.forEach(s=>s(n));let a=this.eventHandlers.get("*");a&&a.forEach(s=>s(n))}},window.addEventListener("message",this.messageListener)}mount(e){let t=typeof e=="string"?document.querySelector(e):e;if(!t)throw new Error(`Container not found: ${typeof e=="string"?e:"provided element"}`);t.appendChild(this.iframe)}updateConfig(e){this.config={...this.config,...e},this.sendMessage({type:"SWAPPER_CONFIG",config:e})}updateStyles(e){this.updateConfig({styles:e})}updateCustomContractCalls(e){this.updateConfig({customContractCalls:e})}updateSupportedDepositOptions(e){this.updateConfig({supportedDepositOptions:e})}updateWebhookUrl(e){this.updateConfig({webhookUrl:e})}sendMessage(e){let t=new URL(this.iframeUrl).origin;this.iframe.contentWindow?.postMessage(e,t)}on(e,t){this.eventHandlers.has(e)||this.eventHandlers.set(e,new Set),this.eventHandlers.get(e).add(t)}off(e,t){let n=this.eventHandlers.get(e);n&&(n.delete(t),n.size===0&&this.eventHandlers.delete(e))}getIframe(){return this.iframe}getConfig(){return{...this.config}}updateSigner(e){let t=m(e);this.walletProvider&&(this.walletProvider.destroy(),this.walletProvider=void 0);let n=new URL(this.iframeUrl).origin,r=s=>t.sendTransaction(s),a=s=>t.switchChain(s);Promise.all([t.getAddress(),t.getChainId()]).then(([s,l])=>{this.walletProvider=new d({iframe:this.iframe,iframeOrigin:n,onTransactionRequest:r,onChainSwitchRequest:a,autoConnect:{address:s,chainId:l}})}).catch(s=>{console.error("[SwapperIframe] Failed to update wallet provider:",s)})}destroy(){this.walletProvider&&(this.walletProvider.destroy(),this.walletProvider=void 0),this.messageListener&&window.removeEventListener("message",this.messageListener),this.eventHandlers.clear(),this.iframe.parentNode&&this.iframe.parentNode.removeChild(this.iframe)}};var S=class{constructor(e){this.iframe=null;this.overlay=null;this.modalContainer=null;this.iframeContainer=null;this.isOpen=!1;this.options=e}open(){this.isOpen||(this.createModal(),this.isOpen=!0)}close(){this.isOpen&&(this.destroyModal(),this.isOpen=!1,this.options.onClose&&this.options.onClose())}isModalOpen(){return this.isOpen}getIframe(){return this.iframe}createModal(){let e=this.options.modalStyle||{},t=this.options.styles||{};if(this.overlay=document.createElement("div"),this.overlay.style.cssText=`
2
+ position: fixed;
3
+ top: 0;
4
+ left: 0;
5
+ width: 100vw;
6
+ height: 100vh;
7
+ background: ${e.overlayColor||"rgba(0, 0, 0, 0.7)"};
8
+ z-index: ${e.zIndex||1e4};
9
+ display: flex;
10
+ align-items: center;
11
+ justify-content: center;
12
+ animation: swapper-fade-in 0.2s ease-out;
13
+ `,!document.getElementById("swapper-modal-styles")){let r=document.createElement("style");r.id="swapper-modal-styles",r.textContent=`
14
+ @keyframes swapper-fade-in {
15
+ from { opacity: 0; }
16
+ to { opacity: 1; }
17
+ }
18
+ @keyframes swapper-scale-in {
19
+ from {
20
+ transform: scale(0.95);
21
+ opacity: 0;
22
+ }
23
+ to {
24
+ transform: scale(1);
25
+ opacity: 1;
26
+ }
27
+ }
28
+ `,document.head.appendChild(r)}this.overlay.addEventListener("click",r=>{r.target===this.overlay&&this.close()});let n=r=>{r.key==="Escape"&&(this.close(),document.removeEventListener("keydown",n))};if(document.addEventListener("keydown",n),this.modalContainer=document.createElement("div"),this.modalContainer.style.cssText=`
29
+ position: relative;
30
+ width: ${e.width||"450px"};
31
+ height: ${e.height||"560px"};
32
+ background: ${t.themeMode==="light"?"#ffffff":"#111111"};
33
+ border-radius: 30px;
34
+ overflow: hidden;
35
+ animation: swapper-scale-in 0.3s ease-out;
36
+ `,e.showCloseButton===!0){let r=document.createElement("button");r.innerHTML="\xD7",r.style.cssText=`
37
+ position: absolute;
38
+ top: 12px;
39
+ right: 12px;
40
+ width: 32px;
41
+ height: 32px;
42
+ border: none;
43
+ background: rgba(0, 0, 0, 0.5);
44
+ color: white;
45
+ font-size: 24px;
46
+ line-height: 1;
47
+ border-radius: 50%;
48
+ cursor: pointer;
49
+ z-index: ${(e.zIndex||1e4)+1};
50
+ display: flex;
51
+ align-items: center;
52
+ justify-content: center;
53
+ transition: background 0.2s ease;
54
+ `,r.onmouseover=()=>{r.style.background="rgba(0, 0, 0, 0.7)"},r.onmouseout=()=>{r.style.background="rgba(0, 0, 0, 0.5)"},r.onclick=()=>this.close(),this.modalContainer.appendChild(r)}this.iframeContainer=document.createElement("div"),this.iframeContainer.style.cssText=`
55
+ width: 100%;
56
+ height: 100%;
57
+ `,this.modalContainer.appendChild(this.iframeContainer),this.overlay.appendChild(this.modalContainer),document.body.appendChild(this.overlay),document.body.style.overflow="hidden",this.iframe=new h({container:this.iframeContainer,integratorId:this.options.integratorId,dstChainId:this.options.dstChainId,dstTokenAddr:this.options.dstTokenAddr,depositWalletAddress:this.options.depositWalletAddress,styles:this.options.styles,customContractCalls:this.options.customContractCalls,supportedDepositOptions:this.options.supportedDepositOptions,webhookUrl:this.options.webhookUrl,wallet:this.options.wallet,iframeUrl:this.options.iframeUrl,iframeAttributes:{...this.options.iframeAttributes,width:"100%",height:"100%"}})}destroyModal(){this.iframe&&(this.iframe.destroy(),this.iframe=null),this.overlay&&this.overlay.parentNode&&this.overlay.parentNode.removeChild(this.overlay),document.body.style.overflow="",this.overlay=null,this.modalContainer=null,this.iframeContainer=null}destroy(){this.close()}};function A(i){let e=new S(i);return e.open(),e}var E=class{encodeApprove(e,t){let n="0x095ea7b3",r=e.slice(2).padStart(64,"0"),a=BigInt(t).toString(16).padStart(64,"0");return n+r+a}encodeTransfer(e,t){let n="0xa9059cbb",r=e.slice(2).padStart(64,"0"),a=BigInt(t).toString(16).padStart(64,"0");return n+r+a}encodeTransferFrom(e,t,n){let r="0x23b872dd",a=e.slice(2).padStart(64,"0"),s=t.slice(2).padStart(64,"0"),l=BigInt(n).toString(16).padStart(64,"0");return r+a+s+l}encodeBalancePayload(e,t){let n=e.slice(2).padStart(64,"0"),r=BigInt(t).toString(16).padStart(64,"0");return"0x"+n+r}},p=new E;function L(i,e,t){return{callType:0,target:i,value:"0",callData:p.encodeApprove(e,t),payload:"0x"}}function I(i,e,t){return{callType:0,target:i,value:"0",callData:p.encodeTransfer(e,t),payload:"0x"}}function b(i,e,t,n){return{callType:0,target:i,value:"0",callData:p.encodeTransferFrom(e,t,n),payload:"0x"}}function R(i,e){return{callType:1,target:i,value:"0",callData:p.encodeApprove(e,"0"),payload:p.encodeBalancePayload(i,"1")}}function P(i,e){return{callType:1,target:i,value:"0",callData:p.encodeTransfer(e,"0"),payload:p.encodeBalancePayload(i,"1")}}return k(G);})();
@@ -3,4 +3,26 @@ export interface SwapperEvent {
3
3
  data?: unknown;
4
4
  }
5
5
  export type SwapperEventHandler = (event: SwapperEvent) => void;
6
+ export declare const WIDGET_EVENT_PROTOCOL_VERSION: "1.0";
7
+ export type DepositFlowType = "walletDeposit" | "transferCrypto" | "depositWithCash";
8
+ export declare enum WidgetEventName {
9
+ TRANSACTION_SUCCESS = "transaction_success"
10
+ }
11
+ export interface TransactionSuccessPayload {
12
+ depositOption: DepositFlowType;
13
+ txHash?: string;
14
+ explorerUrl?: string;
15
+ tokenSymbol?: string;
16
+ tokenAddress?: string;
17
+ chainId?: string;
18
+ amountReceived?: string;
19
+ }
20
+ export type WidgetEventPayload = TransactionSuccessPayload;
21
+ export interface SwapperWidgetEvent {
22
+ type: "SWAPPER_EVENT";
23
+ version: typeof WIDGET_EVENT_PROTOCOL_VERSION;
24
+ name: WidgetEventName;
25
+ timestamp: string;
26
+ payload: WidgetEventPayload;
27
+ }
6
28
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;AAKhE,eAAO,MAAM,6BAA6B,EAAG,KAAc,CAAC;AAK5D,MAAM,MAAM,eAAe,GACvB,eAAe,GACf,gBAAgB,GAChB,iBAAiB,CAAC;AAKtB,oBAAY,eAAe;IACzB,mBAAmB,wBAAwB;CAC5C;AAKD,MAAM,WAAW,yBAAyB;IACxC,aAAa,EAAE,eAAe,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAKD,MAAM,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAK3D,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,OAAO,6BAA6B,CAAC;IAC9C,IAAI,EAAE,eAAe,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,kBAAkB,CAAC;CAC7B"}
@@ -1,2 +1,6 @@
1
- export {};
1
+ export const WIDGET_EVENT_PROTOCOL_VERSION = "1.0";
2
+ export var WidgetEventName;
3
+ (function (WidgetEventName) {
4
+ WidgetEventName["TRANSACTION_SUCCESS"] = "transaction_success";
5
+ })(WidgetEventName || (WidgetEventName = {}));
2
6
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAc,CAAC;AAa5D,MAAM,CAAN,IAAY,eAEX;AAFD,WAAY,eAAe;IACzB,8DAA2C,CAAA;AAC7C,CAAC,EAFW,eAAe,KAAf,eAAe,QAE1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swapper-finance/deposit-sdk",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Easy iframe embedding for Swapper deposit widget with full TypeScript support",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -30,7 +30,9 @@
30
30
  "web3"
31
31
  ],
32
32
  "devDependencies": {
33
+ "@rollup/plugin-typescript": "^12.3.0",
33
34
  "terser": "^5.27.0",
35
+ "tslib": "^2.8.1",
34
36
  "typescript": "^5.3.3"
35
37
  },
36
38
  "engines": {