@lifi/sdk-provider-solana 4.0.0-alpha.21 → 4.0.0-alpha.22

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 (35) hide show
  1. package/dist/cjs/SolanaProvider.js +1 -0
  2. package/dist/cjs/SolanaProvider.js.map +1 -1
  3. package/dist/cjs/core/SolanaStepExecutor.d.ts +1 -0
  4. package/dist/cjs/core/SolanaStepExecutor.js +3 -0
  5. package/dist/cjs/core/SolanaStepExecutor.js.map +1 -1
  6. package/dist/cjs/core/tasks/SolanaStandardWaitForTransactionTask.js +14 -12
  7. package/dist/cjs/core/tasks/SolanaStandardWaitForTransactionTask.js.map +1 -1
  8. package/dist/cjs/types.d.ts +3 -0
  9. package/dist/cjs/types.js.map +1 -1
  10. package/dist/cjs/version.d.ts +1 -1
  11. package/dist/cjs/version.js +1 -1
  12. package/dist/esm/SolanaProvider.js +1 -0
  13. package/dist/esm/SolanaProvider.js.map +1 -1
  14. package/dist/esm/core/SolanaStepExecutor.d.ts +1 -0
  15. package/dist/esm/core/SolanaStepExecutor.js +3 -0
  16. package/dist/esm/core/SolanaStepExecutor.js.map +1 -1
  17. package/dist/esm/core/tasks/SolanaStandardWaitForTransactionTask.js +14 -12
  18. package/dist/esm/core/tasks/SolanaStandardWaitForTransactionTask.js.map +1 -1
  19. package/dist/esm/types.d.ts +3 -0
  20. package/dist/esm/types.js.map +1 -1
  21. package/dist/esm/version.d.ts +1 -1
  22. package/dist/esm/version.js +1 -1
  23. package/dist/types/SolanaProvider.d.ts.map +1 -1
  24. package/dist/types/core/SolanaStepExecutor.d.ts +1 -0
  25. package/dist/types/core/SolanaStepExecutor.d.ts.map +1 -1
  26. package/dist/types/core/tasks/SolanaStandardWaitForTransactionTask.d.ts.map +1 -1
  27. package/dist/types/types.d.ts +3 -0
  28. package/dist/types/types.d.ts.map +1 -1
  29. package/dist/types/version.d.ts +1 -1
  30. package/package.json +3 -3
  31. package/src/SolanaProvider.ts +1 -0
  32. package/src/core/SolanaStepExecutor.ts +3 -0
  33. package/src/core/tasks/SolanaStandardWaitForTransactionTask.ts +25 -23
  34. package/src/types.ts +3 -0
  35. package/src/version.ts +1 -1
@@ -23,6 +23,7 @@ function SolanaProvider(options) {
23
23
  const executor = new SolanaStepExecutor_js_1.SolanaStepExecutor({
24
24
  wallet,
25
25
  routeId: options.routeId,
26
+ skipSimulation: _options.skipSimulation,
26
27
  executionOptions: {
27
28
  ...options.executionOptions,
28
29
  },
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../src/SolanaProvider.ts"],"names":[],"mappings":";;AAYA,wCAqCC;AAjDD,mCAKkB;AAClB,qCAAuC;AACvC,uEAAgE;AAChE,+EAAwE;AACxE,wEAAiE;AAGjE,SAAgB,cAAc,CAC5B,OAA+B;IAE/B,MAAM,QAAQ,GAA0B,OAAO,IAAI,EAAE,CAAA;IACrD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,eAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS,EAAT,eAAS;QACT,cAAc,EAAE,8CAAoB;QACpC,UAAU,EAAE,sCAAgB;QAC5B,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,mBAAa,CACrB,mBAAa,CAAC,WAAW,EACzB,8CAA8C,CAC/C,CAAA;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAA;YAEzC,MAAM,QAAQ,GAAG,IAAI,0CAAkB,CAAC;gBACtC,MAAM;gBACN,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;iBAC5B;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA8B;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../src/SolanaProvider.ts"],"names":[],"mappings":";;AAYA,wCAsCC;AAlDD,mCAKkB;AAClB,qCAAuC;AACvC,uEAAgE;AAChE,+EAAwE;AACxE,wEAAiE;AAGjE,SAAgB,cAAc,CAC5B,OAA+B;IAE/B,MAAM,QAAQ,GAA0B,OAAO,IAAI,EAAE,CAAA;IACrD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,eAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS,EAAT,eAAS;QACT,cAAc,EAAE,8CAAoB;QACpC,UAAU,EAAE,sCAAgB;QAC5B,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,mBAAa,CACrB,mBAAa,CAAC,WAAW,EACzB,8CAA8C,CAC/C,CAAA;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAA;YAEzC,MAAM,QAAQ,GAAG,IAAI,0CAAkB,CAAC;gBACtC,MAAM;gBACN,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,cAAc,EAAE,QAAQ,CAAC,cAAc;gBACvC,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;iBAC5B;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA8B;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -2,6 +2,7 @@ import { BaseStepExecutor, type ExecutionAction, type LiFiStepExtended, type SDK
2
2
  import type { SolanaStepExecutorContext, SolanaStepExecutorOptions } from '../types.js';
3
3
  export declare class SolanaStepExecutor extends BaseStepExecutor {
4
4
  private wallet;
5
+ private skipSimulation;
5
6
  constructor(options: SolanaStepExecutorOptions);
6
7
  getWalletAccount: (step: LiFiStepExtended) => import("@wallet-standard/base").WalletAccount;
7
8
  parseErrors: (error: Error, step?: LiFiStepExtended, action?: ExecutionAction) => Promise<SDKError>;
@@ -7,9 +7,11 @@ const SolanaSignAndExecuteTask_js_1 = require("./tasks/SolanaSignAndExecuteTask.
7
7
  const SolanaWaitForTransactionTask_js_1 = require("./tasks/SolanaWaitForTransactionTask.js");
8
8
  class SolanaStepExecutor extends sdk_1.BaseStepExecutor {
9
9
  wallet;
10
+ skipSimulation;
10
11
  constructor(options) {
11
12
  super(options);
12
13
  this.wallet = options.wallet;
14
+ this.skipSimulation = options.skipSimulation ?? false;
13
15
  }
14
16
  getWalletAccount = (step) => {
15
17
  const account = this.wallet.accounts.find((account) => account.address === step.action.fromAddress);
@@ -26,6 +28,7 @@ class SolanaStepExecutor extends sdk_1.BaseStepExecutor {
26
28
  ...baseContext,
27
29
  wallet: this.wallet,
28
30
  walletAccount,
31
+ skipSimulation: this.skipSimulation,
29
32
  };
30
33
  };
31
34
  createPipeline = (context) => {
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaStepExecutor.js","sourceRoot":"","sources":["../../../src/core/SolanaStepExecutor.ts"],"names":[],"mappings":";;;AAAA,mCAYkB;AAElB,yEAAkE;AAKlE,qFAA8E;AAC9E,6FAAsF;AAEtF,MAAa,kBAAmB,SAAQ,sBAAgB;IAC9C,MAAM,CAAQ;IAEtB,YAAY,OAAkC;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAC9B,CAAC;IAED,gBAAgB,GAAG,CAAC,IAAsB,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CACzD,CAAA;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,sBAAgB,CACxB,mBAAa,CAAC,4BAA4B,EAC1C,mHAAmH,CACpH,CAAA;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAEQ,WAAW,GAAG,CACrB,KAAY,EACZ,IAAuB,EACvB,MAAwB,EACL,EAAE,CAAC,IAAA,wCAAiB,EAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IAErD,aAAa,GAAG,KAAK,EAC5B,WAAoC,EACA,EAAE;QACtC,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;QAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAEjD,OAAO;YACL,GAAG,WAAW;YACd,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa;SACd,CAAA;IACH,CAAC,CAAA;IAEQ,cAAc,GAAG,CAAC,OAAkC,EAAE,EAAE;QAC/D,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAA;QAE3C,MAAM,KAAK,GAAG;YACZ,IAAI,sBAAgB,EAAE;YACtB,IAAI,4BAAsB,EAAE;YAC5B,IAAI,sDAAwB,EAAE;YAC9B,IAAI,8DAA4B,EAAE;YAClC,IAAI,kCAA4B,CAC9B,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAC/C;SACF,CAAA;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CACtD,IAAI,EACJ,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAA;QAED,MAAM,QAAQ,GACZ,kBAAkB,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,KAAK,MAAM;YACjE,CAAC,CAAC,kCAA4B,CAAC,IAAI;YACnC,CAAC,CAAC,sBAAgB,CAAC,IAAI,CAAA;QAE3B,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,CAC7C,CAAA;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAE9C,OAAO,IAAI,kBAAY,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC,CAAA;CACF;AA1ED,gDA0EC"}
1
+ {"version":3,"file":"SolanaStepExecutor.js","sourceRoot":"","sources":["../../../src/core/SolanaStepExecutor.ts"],"names":[],"mappings":";;;AAAA,mCAYkB;AAElB,yEAAkE;AAKlE,qFAA8E;AAC9E,6FAAsF;AAEtF,MAAa,kBAAmB,SAAQ,sBAAgB;IAC9C,MAAM,CAAQ;IACd,cAAc,CAAS;IAE/B,YAAY,OAAkC;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,KAAK,CAAA;IACvD,CAAC;IAED,gBAAgB,GAAG,CAAC,IAAsB,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CACzD,CAAA;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,sBAAgB,CACxB,mBAAa,CAAC,4BAA4B,EAC1C,mHAAmH,CACpH,CAAA;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAEQ,WAAW,GAAG,CACrB,KAAY,EACZ,IAAuB,EACvB,MAAwB,EACL,EAAE,CAAC,IAAA,wCAAiB,EAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IAErD,aAAa,GAAG,KAAK,EAC5B,WAAoC,EACA,EAAE;QACtC,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;QAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAEjD,OAAO;YACL,GAAG,WAAW;YACd,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa;YACb,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAA;IACH,CAAC,CAAA;IAEQ,cAAc,GAAG,CAAC,OAAkC,EAAE,EAAE;QAC/D,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAA;QAE3C,MAAM,KAAK,GAAG;YACZ,IAAI,sBAAgB,EAAE;YACtB,IAAI,4BAAsB,EAAE;YAC5B,IAAI,sDAAwB,EAAE;YAC9B,IAAI,8DAA4B,EAAE;YAClC,IAAI,kCAA4B,CAC9B,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAC/C;SACF,CAAA;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CACtD,IAAI,EACJ,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAA;QAED,MAAM,QAAQ,GACZ,kBAAkB,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,KAAK,MAAM;YACjE,CAAC,CAAC,kCAA4B,CAAC,IAAI;YACnC,CAAC,CAAC,sBAAgB,CAAC,IAAI,CAAA;QAE3B,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,CAC7C,CAAA;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAE9C,OAAO,IAAI,kBAAY,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC,CAAA;CACF;AA7ED,gDA6EC"}
@@ -18,18 +18,20 @@ class SolanaStandardWaitForTransactionTask extends sdk_1.BaseStepExecutionTask {
18
18
  }
19
19
  const signedTransaction = signedTransactions[0];
20
20
  const encodedTransaction = (0, kit_1.getBase64EncodedWireTransaction)(signedTransaction);
21
- const simulationResult = await (0, utils_js_1.callSolanaRpcsWithRetry)(client, (connection) => connection
22
- .simulateTransaction(encodedTransaction, {
23
- commitment: 'confirmed',
24
- replaceRecentBlockhash: true,
25
- encoding: 'base64',
26
- })
27
- .send());
28
- if (simulationResult.value.err) {
29
- const errorMessage = typeof simulationResult.value.err === 'object'
30
- ? JSON.stringify(simulationResult.value.err, (_, v) => typeof v === 'bigint' ? v.toString() : v)
31
- : simulationResult.value.err;
32
- throw new sdk_1.TransactionError(sdk_1.LiFiErrorCode.TransactionSimulationFailed, `Transaction simulation failed: ${errorMessage}`, new Error(errorMessage));
21
+ if (!context.skipSimulation) {
22
+ const simulationResult = await (0, utils_js_1.callSolanaRpcsWithRetry)(client, (connection) => connection
23
+ .simulateTransaction(encodedTransaction, {
24
+ commitment: 'confirmed',
25
+ replaceRecentBlockhash: true,
26
+ encoding: 'base64',
27
+ })
28
+ .send());
29
+ if (simulationResult.value.err) {
30
+ const errorMessage = typeof simulationResult.value.err === 'object'
31
+ ? JSON.stringify(simulationResult.value.err, (_, v) => typeof v === 'bigint' ? v.toString() : v)
32
+ : simulationResult.value.err;
33
+ throw new sdk_1.TransactionError(sdk_1.LiFiErrorCode.TransactionSimulationFailed, `Transaction simulation failed: ${errorMessage}`, new Error(errorMessage));
34
+ }
33
35
  }
34
36
  const result = await (0, sendAndConfirmTransaction_js_1.sendAndConfirmTransaction)(client, signedTransaction);
35
37
  if (!result.signatureResult) {
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaStandardWaitForTransactionTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/SolanaStandardWaitForTransactionTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SolanaStandardWaitForTransactionTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/SolanaStandardWaitForTransactionTask.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { Transaction } from '@solana/kit';
3
3
  import type { Wallet, WalletAccount } from '@wallet-standard/base';
4
4
  export interface SolanaProviderOptions {
5
5
  getWallet?: () => Promise<Wallet>;
6
+ skipSimulation?: boolean;
6
7
  }
7
8
  export interface SolanaTaskContext {
8
9
  signedTransactions?: Transaction[];
@@ -10,6 +11,7 @@ export interface SolanaTaskContext {
10
11
  export interface SolanaStepExecutorContext extends StepExecutorContext, SolanaTaskContext {
11
12
  wallet: Wallet;
12
13
  walletAccount: WalletAccount;
14
+ skipSimulation: boolean;
13
15
  }
14
16
  export interface SolanaSDKProvider extends SDKProvider {
15
17
  setOptions(options: SolanaProviderOptions): void;
@@ -17,4 +19,5 @@ export interface SolanaSDKProvider extends SDKProvider {
17
19
  export declare function isSolanaProvider(provider: SDKProvider): provider is SolanaSDKProvider;
18
20
  export interface SolanaStepExecutorOptions extends StepExecutorOptions {
19
21
  wallet: Wallet;
22
+ skipSimulation?: boolean;
20
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;AA4BA,4CAIC;AAhCD,mCAKkB;AAuBlB,SAAgB,gBAAgB,CAC9B,QAAqB;IAErB,OAAO,QAAQ,CAAC,IAAI,KAAK,eAAS,CAAC,GAAG,CAAA;AACxC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;AA8BA,4CAIC;AAlCD,mCAKkB;AAyBlB,SAAgB,gBAAgB,CAC9B,QAAqB;IAErB,OAAO,QAAQ,CAAC,IAAI,KAAK,eAAS,CAAC,GAAG,CAAA;AACxC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  export declare const name = "@lifi/sdk-provider-solana";
2
- export declare const version = "4.0.0-alpha.21";
2
+ export declare const version = "4.0.0-alpha.22";
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = exports.name = void 0;
4
4
  exports.name = '@lifi/sdk-provider-solana';
5
- exports.version = '4.0.0-alpha.21';
5
+ exports.version = '4.0.0-alpha.22';
6
6
  //# sourceMappingURL=version.js.map
@@ -20,6 +20,7 @@ export function SolanaProvider(options) {
20
20
  const executor = new SolanaStepExecutor({
21
21
  wallet,
22
22
  routeId: options.routeId,
23
+ skipSimulation: _options.skipSimulation,
23
24
  executionOptions: {
24
25
  ...options.executionOptions,
25
26
  },
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../src/SolanaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,aAAa,EACb,aAAa,GAEd,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAGjE,MAAM,UAAU,cAAc,CAC5B,OAA+B;IAE/B,MAAM,QAAQ,GAA0B,OAAO,IAAI,EAAE,CAAA;IACrD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS;QACT,cAAc,EAAE,oBAAoB;QACpC,UAAU,EAAE,gBAAgB;QAC5B,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,aAAa,CACrB,aAAa,CAAC,WAAW,EACzB,8CAA8C,CAC/C,CAAA;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAA;YAEzC,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC;gBACtC,MAAM;gBACN,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;iBAC5B;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA8B;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"SolanaProvider.js","sourceRoot":"","sources":["../../src/SolanaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,aAAa,EACb,aAAa,GAEd,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAGjE,MAAM,UAAU,cAAc,CAC5B,OAA+B;IAE/B,MAAM,QAAQ,GAA0B,OAAO,IAAI,EAAE,CAAA;IACrD,OAAO;QACL,IAAI,IAAI;YACN,OAAO,SAAS,CAAC,GAAG,CAAA;QACtB,CAAC;QACD,SAAS;QACT,cAAc,EAAE,oBAAoB;QACpC,UAAU,EAAE,gBAAgB;QAC5B,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,aAAa,CACrB,aAAa,CAAC,WAAW,EACzB,8CAA8C,CAC/C,CAAA;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAA;YAEzC,MAAM,QAAQ,GAAG,IAAI,kBAAkB,CAAC;gBACtC,MAAM;gBACN,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,cAAc,EAAE,QAAQ,CAAC,cAAc;gBACvC,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;iBAC5B;aACF,CAAC,CAAA;YAEF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA8B;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -2,6 +2,7 @@ import { BaseStepExecutor, type ExecutionAction, type LiFiStepExtended, type SDK
2
2
  import type { SolanaStepExecutorContext, SolanaStepExecutorOptions } from '../types.js';
3
3
  export declare class SolanaStepExecutor extends BaseStepExecutor {
4
4
  private wallet;
5
+ private skipSimulation;
5
6
  constructor(options: SolanaStepExecutorOptions);
6
7
  getWalletAccount: (step: LiFiStepExtended) => import("@wallet-standard/base").WalletAccount;
7
8
  parseErrors: (error: Error, step?: LiFiStepExtended, action?: ExecutionAction) => Promise<SDKError>;
@@ -4,9 +4,11 @@ import { SolanaSignAndExecuteTask } from './tasks/SolanaSignAndExecuteTask.js';
4
4
  import { SolanaWaitForTransactionTask } from './tasks/SolanaWaitForTransactionTask.js';
5
5
  export class SolanaStepExecutor extends BaseStepExecutor {
6
6
  wallet;
7
+ skipSimulation;
7
8
  constructor(options) {
8
9
  super(options);
9
10
  this.wallet = options.wallet;
11
+ this.skipSimulation = options.skipSimulation ?? false;
10
12
  }
11
13
  getWalletAccount = (step) => {
12
14
  const account = this.wallet.accounts.find((account) => account.address === step.action.fromAddress);
@@ -23,6 +25,7 @@ export class SolanaStepExecutor extends BaseStepExecutor {
23
25
  ...baseContext,
24
26
  wallet: this.wallet,
25
27
  walletAccount,
28
+ skipSimulation: this.skipSimulation,
26
29
  };
27
30
  };
28
31
  createPipeline = (context) => {
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaStepExecutor.js","sourceRoot":"","sources":["../../../src/core/SolanaStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAEhB,aAAa,EAEb,sBAAsB,EAGtB,YAAY,EACZ,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAKlE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAA;AAEtF,MAAM,OAAO,kBAAmB,SAAQ,gBAAgB;IAC9C,MAAM,CAAQ;IAEtB,YAAY,OAAkC;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAC9B,CAAC;IAED,gBAAgB,GAAG,CAAC,IAAsB,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CACzD,CAAA;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,4BAA4B,EAC1C,mHAAmH,CACpH,CAAA;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAEQ,WAAW,GAAG,CACrB,KAAY,EACZ,IAAuB,EACvB,MAAwB,EACL,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IAErD,aAAa,GAAG,KAAK,EAC5B,WAAoC,EACA,EAAE;QACtC,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;QAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAEjD,OAAO;YACL,GAAG,WAAW;YACd,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa;SACd,CAAA;IACH,CAAC,CAAA;IAEQ,cAAc,GAAG,CAAC,OAAkC,EAAE,EAAE;QAC/D,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAA;QAE3C,MAAM,KAAK,GAAG;YACZ,IAAI,gBAAgB,EAAE;YACtB,IAAI,sBAAsB,EAAE;YAC5B,IAAI,wBAAwB,EAAE;YAC9B,IAAI,4BAA4B,EAAE;YAClC,IAAI,4BAA4B,CAC9B,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAC/C;SACF,CAAA;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CACtD,IAAI,EACJ,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAA;QAED,MAAM,QAAQ,GACZ,kBAAkB,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,KAAK,MAAM;YACjE,CAAC,CAAC,4BAA4B,CAAC,IAAI;YACnC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAA;QAE3B,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,CAC7C,CAAA;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAE9C,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC,CAAA;CACF"}
1
+ {"version":3,"file":"SolanaStepExecutor.js","sourceRoot":"","sources":["../../../src/core/SolanaStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAEhB,aAAa,EAEb,sBAAsB,EAGtB,YAAY,EACZ,gBAAgB,EAChB,4BAA4B,GAC7B,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAKlE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAA;AAEtF,MAAM,OAAO,kBAAmB,SAAQ,gBAAgB;IAC9C,MAAM,CAAQ;IACd,cAAc,CAAS;IAE/B,YAAY,OAAkC;QAC5C,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,KAAK,CAAA;IACvD,CAAC;IAED,gBAAgB,GAAG,CAAC,IAAsB,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CACvC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,CACzD,CAAA;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,4BAA4B,EAC1C,mHAAmH,CACpH,CAAA;QACH,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAEQ,WAAW,GAAG,CACrB,KAAY,EACZ,IAAuB,EACvB,MAAwB,EACL,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;IAErD,aAAa,GAAG,KAAK,EAC5B,WAAoC,EACA,EAAE;QACtC,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAA;QAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAEjD,OAAO;YACL,GAAG,WAAW;YACd,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa;YACb,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAA;IACH,CAAC,CAAA;IAEQ,cAAc,GAAG,CAAC,OAAkC,EAAE,EAAE;QAC/D,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAA;QAE3C,MAAM,KAAK,GAAG;YACZ,IAAI,gBAAgB,EAAE;YACtB,IAAI,sBAAsB,EAAE;YAC5B,IAAI,wBAAwB,EAAE;YAC9B,IAAI,4BAA4B,EAAE;YAClC,IAAI,4BAA4B,CAC9B,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAC/C;SACF,CAAA;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CACtD,IAAI,EACJ,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAA;QAED,MAAM,QAAQ,GACZ,kBAAkB,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,KAAK,MAAM;YACjE,CAAC,CAAC,4BAA4B,CAAC,IAAI;YACnC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAA;QAE3B,MAAM,cAAc,GAAG,KAAK,CAAC,SAAS,CACpC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,CAC7C,CAAA;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAE9C,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,CAAA;IACrC,CAAC,CAAA;CACF"}
@@ -16,18 +16,20 @@ export class SolanaStandardWaitForTransactionTask extends BaseStepExecutionTask
16
16
  // Use regular transaction submission
17
17
  const signedTransaction = signedTransactions[0];
18
18
  const encodedTransaction = getBase64EncodedWireTransaction(signedTransaction);
19
- const simulationResult = await callSolanaRpcsWithRetry(client, (connection) => connection
20
- .simulateTransaction(encodedTransaction, {
21
- commitment: 'confirmed',
22
- replaceRecentBlockhash: true,
23
- encoding: 'base64',
24
- })
25
- .send());
26
- if (simulationResult.value.err) {
27
- const errorMessage = typeof simulationResult.value.err === 'object'
28
- ? JSON.stringify(simulationResult.value.err, (_, v) => typeof v === 'bigint' ? v.toString() : v)
29
- : simulationResult.value.err;
30
- throw new TransactionError(LiFiErrorCode.TransactionSimulationFailed, `Transaction simulation failed: ${errorMessage}`, new Error(errorMessage));
19
+ if (!context.skipSimulation) {
20
+ const simulationResult = await callSolanaRpcsWithRetry(client, (connection) => connection
21
+ .simulateTransaction(encodedTransaction, {
22
+ commitment: 'confirmed',
23
+ replaceRecentBlockhash: true,
24
+ encoding: 'base64',
25
+ })
26
+ .send());
27
+ if (simulationResult.value.err) {
28
+ const errorMessage = typeof simulationResult.value.err === 'object'
29
+ ? JSON.stringify(simulationResult.value.err, (_, v) => typeof v === 'bigint' ? v.toString() : v)
30
+ : simulationResult.value.err;
31
+ throw new TransactionError(LiFiErrorCode.TransactionSimulationFailed, `Transaction simulation failed: ${errorMessage}`, new Error(errorMessage));
32
+ }
31
33
  }
32
34
  const result = await sendAndConfirmTransaction(client, signedTransaction);
33
35
  if (!result.signatureResult) {
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaStandardWaitForTransactionTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/SolanaStandardWaitForTransactionTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SolanaStandardWaitForTransactionTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/SolanaStandardWaitForTransactionTask.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { Transaction } from '@solana/kit';
3
3
  import type { Wallet, WalletAccount } from '@wallet-standard/base';
4
4
  export interface SolanaProviderOptions {
5
5
  getWallet?: () => Promise<Wallet>;
6
+ skipSimulation?: boolean;
6
7
  }
7
8
  export interface SolanaTaskContext {
8
9
  signedTransactions?: Transaction[];
@@ -10,6 +11,7 @@ export interface SolanaTaskContext {
10
11
  export interface SolanaStepExecutorContext extends StepExecutorContext, SolanaTaskContext {
11
12
  wallet: Wallet;
12
13
  walletAccount: WalletAccount;
14
+ skipSimulation: boolean;
13
15
  }
14
16
  export interface SolanaSDKProvider extends SDKProvider {
15
17
  setOptions(options: SolanaProviderOptions): void;
@@ -17,4 +19,5 @@ export interface SolanaSDKProvider extends SDKProvider {
17
19
  export declare function isSolanaProvider(provider: SDKProvider): provider is SolanaSDKProvider;
18
20
  export interface SolanaStepExecutorOptions extends StepExecutorOptions {
19
21
  wallet: Wallet;
22
+ skipSimulation?: boolean;
20
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,GAIV,MAAM,WAAW,CAAA;AAuBlB,MAAM,UAAU,gBAAgB,CAC9B,QAAqB;IAErB,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAAA;AACxC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,GAIV,MAAM,WAAW,CAAA;AAyBlB,MAAM,UAAU,gBAAgB,CAC9B,QAAqB;IAErB,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAAA;AACxC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  export declare const name = "@lifi/sdk-provider-solana";
2
- export declare const version = "4.0.0-alpha.21";
2
+ export declare const version = "4.0.0-alpha.22";
@@ -1,3 +1,3 @@
1
1
  export const name = '@lifi/sdk-provider-solana';
2
- export const version = '4.0.0-alpha.21';
2
+ export const version = '4.0.0-alpha.22';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaProvider.d.ts","sourceRoot":"","sources":["../../src/SolanaProvider.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE1E,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,iBAAiB,CAmCnB"}
1
+ {"version":3,"file":"SolanaProvider.d.ts","sourceRoot":"","sources":["../../src/SolanaProvider.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAE1E,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,qBAAqB,GAC9B,iBAAiB,CAoCnB"}
@@ -2,6 +2,7 @@ import { BaseStepExecutor, type ExecutionAction, type LiFiStepExtended, type SDK
2
2
  import type { SolanaStepExecutorContext, SolanaStepExecutorOptions } from '../types.js';
3
3
  export declare class SolanaStepExecutor extends BaseStepExecutor {
4
4
  private wallet;
5
+ private skipSimulation;
5
6
  constructor(options: SolanaStepExecutorOptions);
6
7
  getWalletAccount: (step: LiFiStepExtended) => import("@wallet-standard/base").WalletAccount;
7
8
  parseErrors: (error: Error, step?: LiFiStepExtended, action?: ExecutionAction) => Promise<SDKError>;
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaStepExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/SolanaStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,KAAK,eAAe,EAEpB,KAAK,gBAAgB,EAErB,KAAK,QAAQ,EACb,KAAK,uBAAuB,EAC5B,YAAY,EAGb,MAAM,WAAW,CAAA;AAGlB,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAIpB,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAO,CAAC,MAAM,CAAQ;gBAEV,OAAO,EAAE,yBAAyB;IAK9C,gBAAgB,GAAI,MAAM,gBAAgB,mDAazC;IAEQ,WAAW,GAClB,OAAO,KAAK,EACZ,OAAO,gBAAgB,EACvB,SAAS,eAAe,KACvB,OAAO,CAAC,QAAQ,CAAC,CAA0C;IAErD,aAAa,GACpB,aAAa,uBAAuB,KACnC,OAAO,CAAC,yBAAyB,CAAC,CAUpC;IAEQ,cAAc,GAAI,SAAS,yBAAyB,kBA8B5D;CACF"}
1
+ {"version":3,"file":"SolanaStepExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/SolanaStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,KAAK,eAAe,EAEpB,KAAK,gBAAgB,EAErB,KAAK,QAAQ,EACb,KAAK,uBAAuB,EAC5B,YAAY,EAGb,MAAM,WAAW,CAAA;AAGlB,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,aAAa,CAAA;AAIpB,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,cAAc,CAAS;gBAEnB,OAAO,EAAE,yBAAyB;IAM9C,gBAAgB,GAAI,MAAM,gBAAgB,mDAazC;IAEQ,WAAW,GAClB,OAAO,KAAK,EACZ,OAAO,gBAAgB,EACvB,SAAS,eAAe,KACvB,OAAO,CAAC,QAAQ,CAAC,CAA0C;IAErD,aAAa,GACpB,aAAa,uBAAuB,KACnC,OAAO,CAAC,yBAAyB,CAAC,CAWpC;IAEQ,cAAc,GAAI,SAAS,yBAAyB,kBA8B5D;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"SolanaStandardWaitForTransactionTask.d.ts","sourceRoot":"","sources":["../../../../src/core/tasks/SolanaStandardWaitForTransactionTask.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,UAAU,EAEhB,MAAM,WAAW,CAAA;AAIlB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAA;AAE/D,qBAAa,oCAAqC,SAAQ,qBAAqB;IACvE,GAAG,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;CAoGnE"}
1
+ {"version":3,"file":"SolanaStandardWaitForTransactionTask.d.ts","sourceRoot":"","sources":["../../../../src/core/tasks/SolanaStandardWaitForTransactionTask.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,UAAU,EAEhB,MAAM,WAAW,CAAA;AAIlB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAA;AAE/D,qBAAa,oCAAqC,SAAQ,qBAAqB;IACvE,GAAG,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;CAsGnE"}
@@ -3,6 +3,7 @@ import type { Transaction } from '@solana/kit';
3
3
  import type { Wallet, WalletAccount } from '@wallet-standard/base';
4
4
  export interface SolanaProviderOptions {
5
5
  getWallet?: () => Promise<Wallet>;
6
+ skipSimulation?: boolean;
6
7
  }
7
8
  export interface SolanaTaskContext {
8
9
  signedTransactions?: Transaction[];
@@ -10,6 +11,7 @@ export interface SolanaTaskContext {
10
11
  export interface SolanaStepExecutorContext extends StepExecutorContext, SolanaTaskContext {
11
12
  wallet: Wallet;
12
13
  walletAccount: WalletAccount;
14
+ skipSimulation: boolean;
13
15
  }
14
16
  export interface SolanaSDKProvider extends SDKProvider {
15
17
  setOptions(options: SolanaProviderOptions): void;
@@ -17,5 +19,6 @@ export interface SolanaSDKProvider extends SDKProvider {
17
19
  export declare function isSolanaProvider(provider: SDKProvider): provider is SolanaSDKProvider;
18
20
  export interface SolanaStepExecutorOptions extends StepExecutorOptions {
19
21
  wallet: Wallet;
22
+ skipSimulation?: boolean;
20
23
  }
21
24
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAA;AAClB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAElE,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,CAAC,EAAE,WAAW,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,yBACf,SAAQ,mBAAmB,EACzB,iBAAiB;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,aAAa,CAAA;CAC7B;AAED,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAA;CACjD;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,WAAW,GACpB,QAAQ,IAAI,iBAAiB,CAE/B;AAED,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,MAAM,EAAE,MAAM,CAAA;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,WAAW,CAAA;AAClB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAElE,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACjC,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,kBAAkB,CAAC,EAAE,WAAW,EAAE,CAAA;CACnC;AAED,MAAM,WAAW,yBACf,SAAQ,mBAAmB,EACzB,iBAAiB;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,aAAa,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAA;CACxB;AAED,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAA;CACjD;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,WAAW,GACpB,QAAQ,IAAI,iBAAiB,CAE/B;AAED,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB"}
@@ -1,3 +1,3 @@
1
1
  export declare const name = "@lifi/sdk-provider-solana";
2
- export declare const version = "4.0.0-alpha.21";
2
+ export declare const version = "4.0.0-alpha.22";
3
3
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/sdk-provider-solana",
3
- "version": "4.0.0-alpha.21",
3
+ "version": "4.0.0-alpha.22",
4
4
  "description": "LI.FI Solana SDK Provider for Any-to-Any Cross-Chain-Swap",
5
5
  "homepage": "https://github.com/lifinance/sdk",
6
6
  "bugs": {
@@ -28,10 +28,10 @@
28
28
  "./package.json": "./package.json"
29
29
  },
30
30
  "dependencies": {
31
- "@solana/kit": "^6.1.0",
31
+ "@solana/kit": "^6.3.0",
32
32
  "@solana/wallet-standard-features": "^1.3.0",
33
33
  "@wallet-standard/base": "^1.1.0",
34
- "@lifi/sdk": "4.0.0-alpha.21"
34
+ "@lifi/sdk": "4.0.0-alpha.22"
35
35
  },
36
36
  "publishConfig": {
37
37
  "access": "public"
@@ -36,6 +36,7 @@ export function SolanaProvider(
36
36
  const executor = new SolanaStepExecutor({
37
37
  wallet,
38
38
  routeId: options.routeId,
39
+ skipSimulation: _options.skipSimulation,
39
40
  executionOptions: {
40
41
  ...options.executionOptions,
41
42
  },
@@ -22,10 +22,12 @@ import { SolanaWaitForTransactionTask } from './tasks/SolanaWaitForTransactionTa
22
22
 
23
23
  export class SolanaStepExecutor extends BaseStepExecutor {
24
24
  private wallet: Wallet
25
+ private skipSimulation: boolean
25
26
 
26
27
  constructor(options: SolanaStepExecutorOptions) {
27
28
  super(options)
28
29
  this.wallet = options.wallet
30
+ this.skipSimulation = options.skipSimulation ?? false
29
31
  }
30
32
 
31
33
  getWalletAccount = (step: LiFiStepExtended) => {
@@ -60,6 +62,7 @@ export class SolanaStepExecutor extends BaseStepExecutor {
60
62
  ...baseContext,
61
63
  wallet: this.wallet,
62
64
  walletAccount,
65
+ skipSimulation: this.skipSimulation,
63
66
  }
64
67
  }
65
68
 
@@ -46,30 +46,32 @@ export class SolanaStandardWaitForTransactionTask extends BaseStepExecutionTask
46
46
  const encodedTransaction =
47
47
  getBase64EncodedWireTransaction(signedTransaction)
48
48
 
49
- const simulationResult = await callSolanaRpcsWithRetry(
50
- client,
51
- (connection) =>
52
- connection
53
- .simulateTransaction(encodedTransaction, {
54
- commitment: 'confirmed',
55
- replaceRecentBlockhash: true,
56
- encoding: 'base64',
57
- })
58
- .send()
59
- )
60
-
61
- if (simulationResult.value.err) {
62
- const errorMessage =
63
- typeof simulationResult.value.err === 'object'
64
- ? JSON.stringify(simulationResult.value.err, (_, v) =>
65
- typeof v === 'bigint' ? v.toString() : v
66
- )
67
- : simulationResult.value.err
68
- throw new TransactionError(
69
- LiFiErrorCode.TransactionSimulationFailed,
70
- `Transaction simulation failed: ${errorMessage}`,
71
- new Error(errorMessage)
49
+ if (!context.skipSimulation) {
50
+ const simulationResult = await callSolanaRpcsWithRetry(
51
+ client,
52
+ (connection) =>
53
+ connection
54
+ .simulateTransaction(encodedTransaction, {
55
+ commitment: 'confirmed',
56
+ replaceRecentBlockhash: true,
57
+ encoding: 'base64',
58
+ })
59
+ .send()
72
60
  )
61
+
62
+ if (simulationResult.value.err) {
63
+ const errorMessage =
64
+ typeof simulationResult.value.err === 'object'
65
+ ? JSON.stringify(simulationResult.value.err, (_, v) =>
66
+ typeof v === 'bigint' ? v.toString() : v
67
+ )
68
+ : simulationResult.value.err
69
+ throw new TransactionError(
70
+ LiFiErrorCode.TransactionSimulationFailed,
71
+ `Transaction simulation failed: ${errorMessage}`,
72
+ new Error(errorMessage)
73
+ )
74
+ }
73
75
  }
74
76
 
75
77
  const result = await sendAndConfirmTransaction(client, signedTransaction)
package/src/types.ts CHANGED
@@ -9,6 +9,7 @@ import type { Wallet, WalletAccount } from '@wallet-standard/base'
9
9
 
10
10
  export interface SolanaProviderOptions {
11
11
  getWallet?: () => Promise<Wallet>
12
+ skipSimulation?: boolean
12
13
  }
13
14
 
14
15
  export interface SolanaTaskContext {
@@ -20,6 +21,7 @@ export interface SolanaStepExecutorContext
20
21
  SolanaTaskContext {
21
22
  wallet: Wallet
22
23
  walletAccount: WalletAccount
24
+ skipSimulation: boolean
23
25
  }
24
26
 
25
27
  export interface SolanaSDKProvider extends SDKProvider {
@@ -34,4 +36,5 @@ export function isSolanaProvider(
34
36
 
35
37
  export interface SolanaStepExecutorOptions extends StepExecutorOptions {
36
38
  wallet: Wallet
39
+ skipSimulation?: boolean
37
40
  }
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export const name = '@lifi/sdk-provider-solana'
2
- export const version = '4.0.0-alpha.21'
2
+ export const version = '4.0.0-alpha.22'