@lidofinance/lido-csm-sdk 2.0.0-alpha.46 → 2.0.0-alpha.48

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 (59) hide show
  1. package/dist/bond-sdk/bond-sdk.cjs +5 -3
  2. package/dist/bond-sdk/bond-sdk.cjs.map +1 -1
  3. package/dist/bond-sdk/bond-sdk.d.cts.map +1 -1
  4. package/dist/bond-sdk/bond-sdk.d.mts.map +1 -1
  5. package/dist/bond-sdk/bond-sdk.mjs +5 -3
  6. package/dist/bond-sdk/bond-sdk.mjs.map +1 -1
  7. package/dist/common/constants/index.d.cts +1 -1
  8. package/dist/common/constants/index.d.mts +1 -1
  9. package/dist/common/constants/links.cjs +2 -0
  10. package/dist/common/constants/links.cjs.map +1 -1
  11. package/dist/common/constants/links.d.cts +2 -1
  12. package/dist/common/constants/links.d.cts.map +1 -1
  13. package/dist/common/constants/links.d.mts +2 -1
  14. package/dist/common/constants/links.d.mts.map +1 -1
  15. package/dist/common/constants/links.mjs +2 -1
  16. package/dist/common/constants/links.mjs.map +1 -1
  17. package/dist/common/utils/index.d.cts +1 -1
  18. package/dist/common/utils/index.d.mts +1 -1
  19. package/dist/common/utils/on-error.cjs +7 -0
  20. package/dist/common/utils/on-error.cjs.map +1 -1
  21. package/dist/common/utils/on-error.d.cts +2 -1
  22. package/dist/common/utils/on-error.d.cts.map +1 -1
  23. package/dist/common/utils/on-error.d.mts +2 -1
  24. package/dist/common/utils/on-error.d.mts.map +1 -1
  25. package/dist/common/utils/on-error.mjs +7 -1
  26. package/dist/common/utils/on-error.mjs.map +1 -1
  27. package/dist/common.cjs +2 -0
  28. package/dist/common.d.cts +3 -3
  29. package/dist/common.d.mts +3 -3
  30. package/dist/common.mjs +3 -3
  31. package/dist/core-sdk/core-sdk.cjs +3 -1
  32. package/dist/core-sdk/core-sdk.cjs.map +1 -1
  33. package/dist/core-sdk/core-sdk.d.cts +67 -66
  34. package/dist/core-sdk/core-sdk.d.cts.map +1 -1
  35. package/dist/core-sdk/core-sdk.d.mts +67 -66
  36. package/dist/core-sdk/core-sdk.d.mts.map +1 -1
  37. package/dist/core-sdk/core-sdk.mjs +4 -2
  38. package/dist/core-sdk/core-sdk.mjs.map +1 -1
  39. package/dist/core-sdk/types.d.cts +1 -0
  40. package/dist/core-sdk/types.d.cts.map +1 -1
  41. package/dist/core-sdk/types.d.mts +1 -0
  42. package/dist/core-sdk/types.d.mts.map +1 -1
  43. package/dist/discovery-sdk/discovery-sdk.cjs +2 -1
  44. package/dist/discovery-sdk/discovery-sdk.cjs.map +1 -1
  45. package/dist/discovery-sdk/discovery-sdk.d.cts.map +1 -1
  46. package/dist/discovery-sdk/discovery-sdk.d.mts.map +1 -1
  47. package/dist/discovery-sdk/discovery-sdk.mjs +2 -1
  48. package/dist/discovery-sdk/discovery-sdk.mjs.map +1 -1
  49. package/dist/index.cjs +2 -0
  50. package/dist/index.d.cts +3 -3
  51. package/dist/index.d.mts +3 -3
  52. package/dist/index.mjs +3 -3
  53. package/dist/keys-sdk/keys-sdk.cjs +3 -2
  54. package/dist/keys-sdk/keys-sdk.cjs.map +1 -1
  55. package/dist/keys-sdk/keys-sdk.d.cts.map +1 -1
  56. package/dist/keys-sdk/keys-sdk.d.mts.map +1 -1
  57. package/dist/keys-sdk/keys-sdk.mjs +3 -2
  58. package/dist/keys-sdk/keys-sdk.mjs.map +1 -1
  59. package/package.json +1 -1
@@ -91,7 +91,7 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError("Cannot use
91
91
  var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
92
92
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
93
93
  var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
94
- var _claimBondWstETH_dec, _claimBondStETH_dec, _claimBondUnstETH_dec, _pullRewards_dec, _unlockExpiredLock_dec, _compensateLockedBond_dec, _addBondWstETH_dec, _addBondStETH_dec, _addBondETH_dec, _getBondSummary_dec, _a, _init;
94
+ var _claimBond_dec, _claimBondWstETH_dec, _claimBondStETH_dec, _claimBondUnstETH_dec, _pullRewards_dec, _unlockExpiredLock_dec, _compensateLockedBond_dec, _addBond_dec, _addBondWstETH_dec, _addBondStETH_dec, _addBondETH_dec, _getBondSummary_dec, _a, _init;
95
95
  var BondSDK = class extends (_a = require_csm_sdk_module.CsmSDKModule, _getBondSummary_dec = [require_logger.Logger("Views:"), require_error_handler.ErrorHandler()], _addBondETH_dec = [
96
96
  require_access.Access({ level: require_access_types.AccessLevel.ANYONE }),
97
97
  require_logger.Logger("Call:"),
@@ -104,7 +104,7 @@ var BondSDK = class extends (_a = require_csm_sdk_module.CsmSDKModule, _getBondS
104
104
  require_access.Access({ level: require_access_types.AccessLevel.ANYONE }),
105
105
  require_logger.Logger("Call:"),
106
106
  require_error_handler.ErrorHandler()
107
- ], _compensateLockedBond_dec = [
107
+ ], _addBond_dec = [require_access.Access({ level: require_access_types.AccessLevel.ANYONE })], _compensateLockedBond_dec = [
108
108
  require_access.Access({ level: require_access_types.AccessLevel.MANAGER }),
109
109
  require_logger.Logger("Call:"),
110
110
  require_error_handler.ErrorHandler()
@@ -128,7 +128,7 @@ var BondSDK = class extends (_a = require_csm_sdk_module.CsmSDKModule, _getBondS
128
128
  require_access.Access({ level: require_access_types.AccessLevel.CLAIMER }),
129
129
  require_logger.Logger("Call:"),
130
130
  require_error_handler.ErrorHandler()
131
- ], _a) {
131
+ ], _claimBond_dec = [require_access.Access({ level: require_access_types.AccessLevel.CLAIMER })], _a) {
132
132
  constructor() {
133
133
  super(...arguments);
134
134
  __runInitializers(_init, 5, this);
@@ -281,12 +281,14 @@ __decorateElement(_init, 1, "getBondSummary", _getBondSummary_dec, BondSDK);
281
281
  __decorateElement(_init, 1, "addBondETH", _addBondETH_dec, BondSDK);
282
282
  __decorateElement(_init, 1, "addBondStETH", _addBondStETH_dec, BondSDK);
283
283
  __decorateElement(_init, 1, "addBondWstETH", _addBondWstETH_dec, BondSDK);
284
+ __decorateElement(_init, 1, "addBond", _addBond_dec, BondSDK);
284
285
  __decorateElement(_init, 1, "compensateLockedBond", _compensateLockedBond_dec, BondSDK);
285
286
  __decorateElement(_init, 1, "unlockExpiredLock", _unlockExpiredLock_dec, BondSDK);
286
287
  __decorateElement(_init, 1, "pullRewards", _pullRewards_dec, BondSDK);
287
288
  __decorateElement(_init, 1, "claimBondUnstETH", _claimBondUnstETH_dec, BondSDK);
288
289
  __decorateElement(_init, 1, "claimBondStETH", _claimBondStETH_dec, BondSDK);
289
290
  __decorateElement(_init, 1, "claimBondWstETH", _claimBondWstETH_dec, BondSDK);
291
+ __decorateElement(_init, 1, "claimBond", _claimBond_dec, BondSDK);
290
292
  __decoratorMetadata(_init, BondSDK);
291
293
  //#endregion
292
294
  exports.BondSDK = BondSDK;
@@ -1 +1 @@
1
- {"version":3,"file":"bond-sdk.cjs","names":["permit"],"sources":["../../src/bond-sdk/bond-sdk.ts"],"sourcesContent":["import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module';\nimport {\n Access,\n AccessLevel,\n ErrorHandler,\n Logger,\n} from '../common/decorators/index';\nimport {\n CONTRACT_NAMES,\n ERROR_CODE,\n NodeOperatorId,\n SDKError,\n TOKENS,\n WithToken,\n} from '../common/index';\nimport { parseClaimProps } from '../common/utils/parse-claim-props';\nimport { prepCall, TxSDK } from '../tx-sdk/index';\nimport { parseCoverReceiptEvents } from './parse-cover-receipt-events';\nimport {\n AddBondProps,\n AddBondResult,\n ClaimBondProps,\n CompensateLockedBondProps,\n PullRewardsProps,\n UnlockExpiredLockProps,\n} from './types';\n\nexport class BondSDK extends CsmSDKModule<{ tx: TxSDK }> {\n private get accountingContract() {\n return this.core.getContract(CONTRACT_NAMES.accounting);\n }\n\n private get moduleContract() {\n return this.core.contractBaseModule;\n }\n\n @Logger('Views:')\n @ErrorHandler()\n private async getBondSummary(id: NodeOperatorId): Promise<AddBondResult> {\n // TODO: review for CM\n const [current, required] =\n await this.accountingContract.read.getBondSummary([id]);\n return { current, required };\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(\n this.accountingContract,\n 'depositETH',\n [nodeOperatorId],\n amount,\n ),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondStETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.steth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositStETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondWstETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.wsteth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositWstETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n public async addBond(props: WithToken<AddBondProps>) {\n const { token } = props;\n switch (token) {\n case TOKENS.eth:\n return this.addBondETH(props);\n case TOKENS.steth:\n return this.addBondStETH(props);\n case TOKENS.wsteth:\n return this.addBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n\n @Access({ level: AccessLevel.MANAGER })\n @Logger('Call:')\n @ErrorHandler()\n public async compensateLockedBond(props: CompensateLockedBondProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.moduleContract, 'compensateGeneralDelayedPenalty', [\n nodeOperatorId,\n ]),\n decodeResult: (receipt) => parseCoverReceiptEvents(receipt),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async unlockExpiredLock(props: UnlockExpiredLockProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'unlockExpiredLock', [\n nodeOperatorId,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async pullRewards(props: PullRewardsProps) {\n const { nodeOperatorId, shares, proof, ...rest } = parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'pullAndSplitFeeRewards', [\n nodeOperatorId,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondUnstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsUnstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondStETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsStETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondWstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsWstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n public async claimBond(props: WithToken<ClaimBondProps>) {\n const { token, amount } = props;\n\n switch (true) {\n case amount === 0n:\n return this.pullRewards(props);\n case token === TOKENS.eth:\n return this.claimBondUnstETH(props);\n case token === TOKENS.steth:\n return this.claimBondStETH(props);\n case token === TOKENS.wsteth:\n return this.claimBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"bond-sdk.cjs","names":["permit"],"sources":["../../src/bond-sdk/bond-sdk.ts"],"sourcesContent":["import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module';\nimport {\n Access,\n AccessLevel,\n ErrorHandler,\n Logger,\n} from '../common/decorators/index';\nimport {\n CONTRACT_NAMES,\n ERROR_CODE,\n NodeOperatorId,\n SDKError,\n TOKENS,\n WithToken,\n} from '../common/index';\nimport { parseClaimProps } from '../common/utils/parse-claim-props';\nimport { prepCall, TxSDK } from '../tx-sdk/index';\nimport { parseCoverReceiptEvents } from './parse-cover-receipt-events';\nimport {\n AddBondProps,\n AddBondResult,\n ClaimBondProps,\n CompensateLockedBondProps,\n PullRewardsProps,\n UnlockExpiredLockProps,\n} from './types';\n\nexport class BondSDK extends CsmSDKModule<{ tx: TxSDK }> {\n private get accountingContract() {\n return this.core.getContract(CONTRACT_NAMES.accounting);\n }\n\n private get moduleContract() {\n return this.core.contractBaseModule;\n }\n\n @Logger('Views:')\n @ErrorHandler()\n private async getBondSummary(id: NodeOperatorId): Promise<AddBondResult> {\n // TODO: review for CM\n const [current, required] =\n await this.accountingContract.read.getBondSummary([id]);\n return { current, required };\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(\n this.accountingContract,\n 'depositETH',\n [nodeOperatorId],\n amount,\n ),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondStETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.steth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositStETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondWstETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.wsteth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositWstETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n public async addBond(props: WithToken<AddBondProps>) {\n const { token } = props;\n switch (token) {\n case TOKENS.eth:\n return this.addBondETH(props);\n case TOKENS.steth:\n return this.addBondStETH(props);\n case TOKENS.wsteth:\n return this.addBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n\n @Access({ level: AccessLevel.MANAGER })\n @Logger('Call:')\n @ErrorHandler()\n public async compensateLockedBond(props: CompensateLockedBondProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.moduleContract, 'compensateGeneralDelayedPenalty', [\n nodeOperatorId,\n ]),\n decodeResult: (receipt) => parseCoverReceiptEvents(receipt),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async unlockExpiredLock(props: UnlockExpiredLockProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'unlockExpiredLock', [\n nodeOperatorId,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async pullRewards(props: PullRewardsProps) {\n const { nodeOperatorId, shares, proof, ...rest } = parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'pullAndSplitFeeRewards', [\n nodeOperatorId,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondUnstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsUnstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondStETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsStETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondWstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsWstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n public async claimBond(props: WithToken<ClaimBondProps>) {\n const { token, amount } = props;\n\n switch (true) {\n case amount === 0n:\n return this.pullRewards(props);\n case token === TOKENS.eth:\n return this.claimBondUnstETH(props);\n case token === TOKENS.steth:\n return this.claimBondStETH(props);\n case token === TOKENS.wsteth:\n return this.claimBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bond-sdk.d.cts","names":[],"sources":["../../src/bond-sdk/bond-sdk.ts"],"mappings":";;;;;;;cA2Ba,OAAA,SAAgB,YAAA;EAAe,EAAA,EAAI,KAAA;AAAA;EAAA,YAClC,kBAAA,CAAA;EAAA,YAIA,cAAA,CAAA;EAAA,QAME,cAAA;EAUD,UAAA,CAAW,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmB9B,YAAA,CAAa,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmBhC,aAAA,CAAc,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAgBjC,OAAA,CAAQ,KAAA,EAAO,SAAA,CAAU,YAAA,IAAa,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAoBtC,oBAAA,CAAqB,KAAA,EAAO,yBAAA,GAAyB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAgBrD,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAe/C,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAiBnC,gBAAA,CAAiB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBtC,cAAA,CAAe,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBpC,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAgBrC,SAAA,CAAU,KAAA,EAAO,SAAA,CAAU,cAAA,IAAe,OAAA,CAAhB,iCAAA,CAAgB,iBAAA;AAAA"}
1
+ {"version":3,"file":"bond-sdk.d.cts","names":[],"sources":["../../src/bond-sdk/bond-sdk.ts"],"mappings":";;;;;;;cA2Ba,OAAA,SAAgB,YAAA;EAAe,EAAA,EAAI,KAAA;AAAA;EAAA,YAClC,kBAAA,CAAA;EAAA,YAIA,cAAA,CAAA;EAAA,QAME,cAAA;EAUD,UAAA,CAAW,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmB9B,YAAA,CAAa,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmBhC,aAAA,CAAc,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAiBjC,OAAA,CAAQ,KAAA,EAAO,SAAA,CAAU,YAAA,IAAa,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAoBtC,oBAAA,CAAqB,KAAA,EAAO,yBAAA,GAAyB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAgBrD,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAe/C,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAiBnC,gBAAA,CAAiB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBtC,cAAA,CAAe,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBpC,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAiBrC,SAAA,CAAU,KAAA,EAAO,SAAA,CAAU,cAAA,IAAe,OAAA,CAAhB,iCAAA,CAAgB,iBAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"bond-sdk.d.mts","names":[],"sources":["../../src/bond-sdk/bond-sdk.ts"],"mappings":";;;;;;;cA2Ba,OAAA,SAAgB,YAAA;EAAe,EAAA,EAAI,KAAA;AAAA;EAAA,YAClC,kBAAA,CAAA;EAAA,YAIA,cAAA,CAAA;EAAA,QAME,cAAA;EAUD,UAAA,CAAW,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmB9B,YAAA,CAAa,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmBhC,aAAA,CAAc,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAgBjC,OAAA,CAAQ,KAAA,EAAO,SAAA,CAAU,YAAA,IAAa,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAoBtC,oBAAA,CAAqB,KAAA,EAAO,yBAAA,GAAyB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAgBrD,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAe/C,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAiBnC,gBAAA,CAAiB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBtC,cAAA,CAAe,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBpC,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAgBrC,SAAA,CAAU,KAAA,EAAO,SAAA,CAAU,cAAA,IAAe,OAAA,CAAhB,iCAAA,CAAgB,iBAAA;AAAA"}
1
+ {"version":3,"file":"bond-sdk.d.mts","names":[],"sources":["../../src/bond-sdk/bond-sdk.ts"],"mappings":";;;;;;;cA2Ba,OAAA,SAAgB,YAAA;EAAe,EAAA,EAAI,KAAA;AAAA;EAAA,YAClC,kBAAA,CAAA;EAAA,YAIA,cAAA,CAAA;EAAA,QAME,cAAA;EAUD,UAAA,CAAW,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmB9B,YAAA,CAAa,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAmBhC,aAAA,CAAc,KAAA,EAAO,YAAA,GAAY,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAiBjC,OAAA,CAAQ,KAAA,EAAO,SAAA,CAAU,YAAA,IAAa,OAAA,CAAA,iCAAA,CAAA,iBAAA,CAAA,aAAA;EAoBtC,oBAAA,CAAqB,KAAA,EAAO,yBAAA,GAAyB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAgBrD,iBAAA,CAAkB,KAAA,EAAO,sBAAA,GAAsB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAe/C,WAAA,CAAY,KAAA,EAAO,gBAAA,GAAgB,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAiBnC,gBAAA,CAAiB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBtC,cAAA,CAAe,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAmBpC,eAAA,CAAgB,KAAA,EAAO,cAAA,GAAc,OAAA,CAAA,iCAAA,CAAA,iBAAA;EAiBrC,SAAA,CAAU,KAAA,EAAO,SAAA,CAAU,cAAA,IAAe,OAAA,CAAhB,iCAAA,CAAgB,iBAAA;AAAA"}
@@ -91,7 +91,7 @@ var __privateIn = (member, obj) => Object(obj) !== obj ? __typeError("Cannot use
91
91
  var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
92
92
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
93
93
  var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
94
- var _claimBondWstETH_dec, _claimBondStETH_dec, _claimBondUnstETH_dec, _pullRewards_dec, _unlockExpiredLock_dec, _compensateLockedBond_dec, _addBondWstETH_dec, _addBondStETH_dec, _addBondETH_dec, _getBondSummary_dec, _a, _init;
94
+ var _claimBond_dec, _claimBondWstETH_dec, _claimBondStETH_dec, _claimBondUnstETH_dec, _pullRewards_dec, _unlockExpiredLock_dec, _compensateLockedBond_dec, _addBond_dec, _addBondWstETH_dec, _addBondStETH_dec, _addBondETH_dec, _getBondSummary_dec, _a, _init;
95
95
  var BondSDK = class extends (_a = CsmSDKModule, _getBondSummary_dec = [Logger("Views:"), ErrorHandler()], _addBondETH_dec = [
96
96
  Access({ level: AccessLevel.ANYONE }),
97
97
  Logger("Call:"),
@@ -104,7 +104,7 @@ var BondSDK = class extends (_a = CsmSDKModule, _getBondSummary_dec = [Logger("V
104
104
  Access({ level: AccessLevel.ANYONE }),
105
105
  Logger("Call:"),
106
106
  ErrorHandler()
107
- ], _compensateLockedBond_dec = [
107
+ ], _addBond_dec = [Access({ level: AccessLevel.ANYONE })], _compensateLockedBond_dec = [
108
108
  Access({ level: AccessLevel.MANAGER }),
109
109
  Logger("Call:"),
110
110
  ErrorHandler()
@@ -128,7 +128,7 @@ var BondSDK = class extends (_a = CsmSDKModule, _getBondSummary_dec = [Logger("V
128
128
  Access({ level: AccessLevel.CLAIMER }),
129
129
  Logger("Call:"),
130
130
  ErrorHandler()
131
- ], _a) {
131
+ ], _claimBond_dec = [Access({ level: AccessLevel.CLAIMER })], _a) {
132
132
  constructor() {
133
133
  super(...arguments);
134
134
  __runInitializers(_init, 5, this);
@@ -281,12 +281,14 @@ __decorateElement(_init, 1, "getBondSummary", _getBondSummary_dec, BondSDK);
281
281
  __decorateElement(_init, 1, "addBondETH", _addBondETH_dec, BondSDK);
282
282
  __decorateElement(_init, 1, "addBondStETH", _addBondStETH_dec, BondSDK);
283
283
  __decorateElement(_init, 1, "addBondWstETH", _addBondWstETH_dec, BondSDK);
284
+ __decorateElement(_init, 1, "addBond", _addBond_dec, BondSDK);
284
285
  __decorateElement(_init, 1, "compensateLockedBond", _compensateLockedBond_dec, BondSDK);
285
286
  __decorateElement(_init, 1, "unlockExpiredLock", _unlockExpiredLock_dec, BondSDK);
286
287
  __decorateElement(_init, 1, "pullRewards", _pullRewards_dec, BondSDK);
287
288
  __decorateElement(_init, 1, "claimBondUnstETH", _claimBondUnstETH_dec, BondSDK);
288
289
  __decorateElement(_init, 1, "claimBondStETH", _claimBondStETH_dec, BondSDK);
289
290
  __decorateElement(_init, 1, "claimBondWstETH", _claimBondWstETH_dec, BondSDK);
291
+ __decorateElement(_init, 1, "claimBond", _claimBond_dec, BondSDK);
290
292
  __decoratorMetadata(_init, BondSDK);
291
293
  //#endregion
292
294
  export { BondSDK };
@@ -1 +1 @@
1
- {"version":3,"file":"bond-sdk.mjs","names":["permit"],"sources":["../../src/bond-sdk/bond-sdk.ts"],"sourcesContent":["import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module';\nimport {\n Access,\n AccessLevel,\n ErrorHandler,\n Logger,\n} from '../common/decorators/index';\nimport {\n CONTRACT_NAMES,\n ERROR_CODE,\n NodeOperatorId,\n SDKError,\n TOKENS,\n WithToken,\n} from '../common/index';\nimport { parseClaimProps } from '../common/utils/parse-claim-props';\nimport { prepCall, TxSDK } from '../tx-sdk/index';\nimport { parseCoverReceiptEvents } from './parse-cover-receipt-events';\nimport {\n AddBondProps,\n AddBondResult,\n ClaimBondProps,\n CompensateLockedBondProps,\n PullRewardsProps,\n UnlockExpiredLockProps,\n} from './types';\n\nexport class BondSDK extends CsmSDKModule<{ tx: TxSDK }> {\n private get accountingContract() {\n return this.core.getContract(CONTRACT_NAMES.accounting);\n }\n\n private get moduleContract() {\n return this.core.contractBaseModule;\n }\n\n @Logger('Views:')\n @ErrorHandler()\n private async getBondSummary(id: NodeOperatorId): Promise<AddBondResult> {\n // TODO: review for CM\n const [current, required] =\n await this.accountingContract.read.getBondSummary([id]);\n return { current, required };\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(\n this.accountingContract,\n 'depositETH',\n [nodeOperatorId],\n amount,\n ),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondStETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.steth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositStETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondWstETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.wsteth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositWstETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n public async addBond(props: WithToken<AddBondProps>) {\n const { token } = props;\n switch (token) {\n case TOKENS.eth:\n return this.addBondETH(props);\n case TOKENS.steth:\n return this.addBondStETH(props);\n case TOKENS.wsteth:\n return this.addBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n\n @Access({ level: AccessLevel.MANAGER })\n @Logger('Call:')\n @ErrorHandler()\n public async compensateLockedBond(props: CompensateLockedBondProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.moduleContract, 'compensateGeneralDelayedPenalty', [\n nodeOperatorId,\n ]),\n decodeResult: (receipt) => parseCoverReceiptEvents(receipt),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async unlockExpiredLock(props: UnlockExpiredLockProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'unlockExpiredLock', [\n nodeOperatorId,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async pullRewards(props: PullRewardsProps) {\n const { nodeOperatorId, shares, proof, ...rest } = parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'pullAndSplitFeeRewards', [\n nodeOperatorId,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondUnstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsUnstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondStETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsStETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondWstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsWstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n public async claimBond(props: WithToken<ClaimBondProps>) {\n const { token, amount } = props;\n\n switch (true) {\n case amount === 0n:\n return this.pullRewards(props);\n case token === TOKENS.eth:\n return this.claimBondUnstETH(props);\n case token === TOKENS.steth:\n return this.claimBondStETH(props);\n case token === TOKENS.wsteth:\n return this.claimBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAA,sBAAA,qBAAA,uBAAA,kBAAA,wBAAA,2BAAA,oBAAA,mBAAA,iBAAA,qBAAA,IAAA;AA2BO,IAAM,UAAN,eAAsB,KAAA,cAS3B,sBAAA,CAAC,OAAO,SAAQ,EACf,cAAa,CAAA,EAQd,kBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,QAAQ,CAAA;CACpC,OAAO,QAAO;CACd,cAAa;CAAA,EAiBd,oBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,QAAQ,CAAA;CACpC,OAAO,QAAO;CACd,cAAa;CAAA,EAiBd,qBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,QAAQ,CAAA;CACpC,OAAO,QAAO;CACd,cAAa;CAAA,EAkCd,4BAAA;CAAC,OAAO,EAAE,OAAO,YAAY,SAAS,CAAA;CACrC,OAAO,QAAO;CACd,cAAa;CAAA,EAcd,yBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,QAAQ,CAAA;CACpC,OAAO,QAAO;CACd,cAAa;CAAA,EAad,mBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,QAAQ,CAAA;CACpC,OAAO,QAAO;CACd,cAAa;CAAA,EAed,wBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,SAAS,CAAA;CACrC,OAAO,QAAO;CACd,cAAa;CAAA,EAiBd,sBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,SAAS,CAAA;CACrC,OAAO,QAAO;CACd,cAAa;CAAA,EAiBd,uBAAA;CAAC,OAAO,EAAE,OAAO,YAAY,SAAS,CAAA;CACrC,OAAO,QAAO;CACd,cAAa;CAAA,EApLa,IAA4B;CAAlD,cAAA;AAAA,QAAA,GAAA,UAAA;AAAA,oBAAA,OAAA,GAAA,KAAA;;CACL,IAAY,qBAAqB;AAC/B,SAAO,KAAK,KAAK,YAAY,eAAe,WAAU;;CAGxD,IAAY,iBAAiB;AAC3B,SAAO,KAAK,KAAK;;CAKnB,MAAc,eAAe,IAA4C;EAEvE,MAAM,CAAC,SAAS,YACd,MAAM,KAAK,mBAAmB,KAAK,eAAe,CAAC,GAAG,CAAA;AACxD,SAAO;GAAE;GAAS;GAAS;;CAM7B,MAAa,WAAW,OAAqB;EAC3C,MAAM,EAAE,gBAAgB,QAAQ,QAAQ,GAAG,SAAS;AAEpD,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SACE,KAAK,oBACL,cACA,CAAC,eAAc,EACf,OACF;GACF,oBAAoB,KAAK,eAAe,eAAc;GACvD,CAAA;;CAMH,MAAa,aAAa,OAAqB;EAC7C,MAAM,EAAE,gBAAgB,QAAQ,QAAQ,GAAG,SAAS;AAEpD,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,OAAO;IAAE,OAAO,OAAO;IAAO;IAAQ;IAAO;GAC7C,OAAO,EAAE,QAAAA,cACP,SAAS,KAAK,oBAAoB,gBAAgB;IAChD;IACA;IACAA;IACD,CAAA;GACH,oBAAoB,KAAK,eAAe,eAAc;GACvD,CAAA;;CAMH,MAAa,cAAc,OAAqB;EAC9C,MAAM,EAAE,gBAAgB,QAAQ,QAAQ,GAAG,SAAS;AAEpD,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,OAAO;IAAE,OAAO,OAAO;IAAQ;IAAQ;IAAO;GAC9C,OAAO,EAAE,QAAAA,cACP,SAAS,KAAK,oBAAoB,iBAAiB;IACjD;IACA;IACAA;IACD,CAAA;GACH,oBAAoB,KAAK,eAAe,eAAc;GACvD,CAAA;;CAGH,MAAa,QAAQ,OAAgC;EACnD,MAAM,EAAE,UAAU;AAClB,UAAQ,OAAR;GACE,KAAK,OAAO,IACV,QAAO,KAAK,WAAW,MAAK;GAC9B,KAAK,OAAO,MACV,QAAO,KAAK,aAAa,MAAK;GAChC,KAAK,OAAO,OACV,QAAO,KAAK,cAAc,MAAK;GACjC,QACE,OAAM,IAAI,SAAS;IACjB,SAAS;IACT,MAAM,WAAW;IAClB,CAAA;;;CAOP,MAAa,qBAAqB,OAAkC;EAClE,MAAM,EAAE,gBAAgB,GAAG,SAAS;AAEpC,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SAAS,KAAK,gBAAgB,mCAAmC,CAC/D,eACD,CAAA;GACH,eAAe,YAAY,wBAAwB,QAAO;GAC3D,CAAA;;CAMH,MAAa,kBAAkB,OAA+B;EAC5D,MAAM,EAAE,gBAAgB,GAAG,SAAS;AAEpC,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SAAS,KAAK,oBAAoB,qBAAqB,CACrD,eACD,CAAA;GACJ,CAAA;;CAMH,MAAa,YAAY,OAAyB;EAChD,MAAM,EAAE,gBAAgB,QAAQ,OAAO,GAAG,SAAS,gBAAgB,MAAK;AAExE,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SAAS,KAAK,oBAAoB,0BAA0B;IAC1D;IACA;IACA;IACD,CAAA;GACJ,CAAA;;CAMH,MAAa,iBAAiB,OAAuB;EACnD,MAAM,EAAE,gBAAgB,QAAQ,QAAQ,OAAO,GAAG,SAChD,gBAAgB,MAAK;AAEvB,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SAAS,KAAK,oBAAoB,uBAAuB;IACvD;IACA;IACA;IACA;IACD,CAAA;GACJ,CAAA;;CAMH,MAAa,eAAe,OAAuB;EACjD,MAAM,EAAE,gBAAgB,QAAQ,QAAQ,OAAO,GAAG,SAChD,gBAAgB,MAAK;AAEvB,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SAAS,KAAK,oBAAoB,qBAAqB;IACrD;IACA;IACA;IACA;IACD,CAAA;GACJ,CAAA;;CAMH,MAAa,gBAAgB,OAAuB;EAClD,MAAM,EAAE,gBAAgB,QAAQ,QAAQ,OAAO,GAAG,SAChD,gBAAgB,MAAK;AAEvB,SAAO,KAAK,IAAI,GAAG,QAAQ;GACzB,GAAG;GACH,YACE,SAAS,KAAK,oBAAoB,sBAAsB;IACtD;IACA;IACA;IACA;IACD,CAAA;GACJ,CAAA;;CAGH,MAAa,UAAU,OAAkC;EACvD,MAAM,EAAE,OAAO,WAAW;AAE1B,UAAQ,MAAR;GACE,KAAK,WAAW,GACd,QAAO,KAAK,YAAY,MAAK;GAC/B,KAAK,UAAU,OAAO,IACpB,QAAO,KAAK,iBAAiB,MAAK;GACpC,KAAK,UAAU,OAAO,MACpB,QAAO,KAAK,eAAe,MAAK;GAClC,KAAK,UAAU,OAAO,OACpB,QAAO,KAAK,gBAAgB,MAAK;GACnC,QACE,OAAM,IAAI,SAAS;IACjB,SAAS;IACT,MAAM,WAAW;IAClB,CAAA;;;;AArNF,QAAA,iBAAA,GAAA;AAWL,kBAAA,OAAA,GAAc,kBAFd,qBATW,QAAA;AAqBX,kBAAA,OAAA,GAAa,cAHb,iBAlBW,QAAA;AAwCX,kBAAA,OAAA,GAAa,gBAHb,mBArCW,QAAA;AA2DX,kBAAA,OAAA,GAAa,iBAHb,oBAxDW,QAAA;AA+FX,kBAAA,OAAA,GAAa,wBAHb,2BA5FW,QAAA;AA+GX,kBAAA,OAAA,GAAa,qBAHb,wBA5GW,QAAA;AA8HX,kBAAA,OAAA,GAAa,eAHb,kBA3HW,QAAA;AA+IX,kBAAA,OAAA,GAAa,oBAHb,uBA5IW,QAAA;AAkKX,kBAAA,OAAA,GAAa,kBAHb,qBA/JW,QAAA;AAqLX,kBAAA,OAAA,GAAa,mBAHb,sBAlLW,QAAA;AAAN,oBAAA,OAAM,QAAA"}
1
+ {"version":3,"file":"bond-sdk.mjs","names":["permit"],"sources":["../../src/bond-sdk/bond-sdk.ts"],"sourcesContent":["import { CsmSDKModule } from '../common/class-primitives/csm-sdk-module';\nimport {\n Access,\n AccessLevel,\n ErrorHandler,\n Logger,\n} from '../common/decorators/index';\nimport {\n CONTRACT_NAMES,\n ERROR_CODE,\n NodeOperatorId,\n SDKError,\n TOKENS,\n WithToken,\n} from '../common/index';\nimport { parseClaimProps } from '../common/utils/parse-claim-props';\nimport { prepCall, TxSDK } from '../tx-sdk/index';\nimport { parseCoverReceiptEvents } from './parse-cover-receipt-events';\nimport {\n AddBondProps,\n AddBondResult,\n ClaimBondProps,\n CompensateLockedBondProps,\n PullRewardsProps,\n UnlockExpiredLockProps,\n} from './types';\n\nexport class BondSDK extends CsmSDKModule<{ tx: TxSDK }> {\n private get accountingContract() {\n return this.core.getContract(CONTRACT_NAMES.accounting);\n }\n\n private get moduleContract() {\n return this.core.contractBaseModule;\n }\n\n @Logger('Views:')\n @ErrorHandler()\n private async getBondSummary(id: NodeOperatorId): Promise<AddBondResult> {\n // TODO: review for CM\n const [current, required] =\n await this.accountingContract.read.getBondSummary([id]);\n return { current, required };\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(\n this.accountingContract,\n 'depositETH',\n [nodeOperatorId],\n amount,\n ),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondStETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.steth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositStETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async addBondWstETH(props: AddBondProps) {\n const { nodeOperatorId, amount, permit, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n spend: { token: TOKENS.wsteth, amount, permit },\n call: ({ permit }) =>\n prepCall(this.accountingContract, 'depositWstETH', [\n nodeOperatorId,\n amount,\n permit,\n ]),\n decodeResult: () => this.getBondSummary(nodeOperatorId),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n public async addBond(props: WithToken<AddBondProps>) {\n const { token } = props;\n switch (token) {\n case TOKENS.eth:\n return this.addBondETH(props);\n case TOKENS.steth:\n return this.addBondStETH(props);\n case TOKENS.wsteth:\n return this.addBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n\n @Access({ level: AccessLevel.MANAGER })\n @Logger('Call:')\n @ErrorHandler()\n public async compensateLockedBond(props: CompensateLockedBondProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.moduleContract, 'compensateGeneralDelayedPenalty', [\n nodeOperatorId,\n ]),\n decodeResult: (receipt) => parseCoverReceiptEvents(receipt),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async unlockExpiredLock(props: UnlockExpiredLockProps) {\n const { nodeOperatorId, ...rest } = props;\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'unlockExpiredLock', [\n nodeOperatorId,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.ANYONE })\n @Logger('Call:')\n @ErrorHandler()\n public async pullRewards(props: PullRewardsProps) {\n const { nodeOperatorId, shares, proof, ...rest } = parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'pullAndSplitFeeRewards', [\n nodeOperatorId,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondUnstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsUnstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondStETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsStETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n @Logger('Call:')\n @ErrorHandler()\n public async claimBondWstETH(props: ClaimBondProps) {\n const { nodeOperatorId, amount, shares, proof, ...rest } =\n parseClaimProps(props);\n\n return this.bus.tx.perform({\n ...rest,\n call: () =>\n prepCall(this.accountingContract, 'claimRewardsWstETH', [\n nodeOperatorId,\n amount,\n shares,\n proof,\n ]),\n });\n }\n\n @Access({ level: AccessLevel.CLAIMER })\n public async claimBond(props: WithToken<ClaimBondProps>) {\n const { token, amount } = props;\n\n switch (true) {\n case amount === 0n:\n return this.pullRewards(props);\n case token === TOKENS.eth:\n return this.claimBondUnstETH(props);\n case token === TOKENS.steth:\n return this.claimBondStETH(props);\n case token === TOKENS.wsteth:\n return this.claimBondWstETH(props);\n default:\n throw new SDKError({\n message: 'unsupported token',\n code: ERROR_CODE.INVALID_ARGUMENT,\n });\n }\n }\n}\n"],"mappings":"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"}
@@ -6,7 +6,7 @@ import { PerSupportedChain, SUPPORTED_CHAINS } from "./supported-chains.cjs";
6
6
  import { COMMON_ADDRESSES, MODULE_CONFIG, ModuleConfig } from "./module-config.cjs";
7
7
  import { CONTRACT_BASE_ABI } from "./contract-abi.cjs";
8
8
  import { EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, KEY_STATUS, PUBKEY_LENGTH_BYTES, SIGNATURE_LENGTH_BYTES } from "./keys.cjs";
9
- import { EXTERNAL_LINKS, LINK_TYPE } from "./links.cjs";
9
+ import { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE } from "./links.cjs";
10
10
  import { OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID } from "./operator-types.cjs";
11
11
  import { ROLES } from "./roles.cjs";
12
12
  import { STETH_ROUNDING_THRESHOLD, TOKENS } from "./tokens.cjs";
@@ -6,7 +6,7 @@ import { PerSupportedChain, SUPPORTED_CHAINS } from "./supported-chains.mjs";
6
6
  import { COMMON_ADDRESSES, MODULE_CONFIG, ModuleConfig } from "./module-config.mjs";
7
7
  import { CONTRACT_BASE_ABI } from "./contract-abi.mjs";
8
8
  import { EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, KEY_STATUS, PUBKEY_LENGTH_BYTES, SIGNATURE_LENGTH_BYTES } from "./keys.mjs";
9
- import { EXTERNAL_LINKS, LINK_TYPE } from "./links.mjs";
9
+ import { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE } from "./links.mjs";
10
10
  import { OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID } from "./operator-types.mjs";
11
11
  import { ROLES } from "./roles.mjs";
12
12
  import { STETH_ROUNDING_THRESHOLD, TOKENS } from "./tokens.mjs";
@@ -1,6 +1,7 @@
1
1
  require("../../_virtual/_rolldown/runtime.cjs");
2
2
  let _lidofinance_lido_ethereum_sdk = require("@lidofinance/lido-ethereum-sdk");
3
3
  //#region src/common/constants/links.ts
4
+ const DEFAULT_IPFS_GATEWAYS = ["https://ipfs.io/ipfs/{cid}", "https://gateway.pinata.cloud/ipfs/{cid}"];
4
5
  var LINK_TYPE = /* @__PURE__ */ ((LINK_TYPE2) => {
5
6
  LINK_TYPE2["icsTree"] = "icsTree";
6
7
  LINK_TYPE2["curatedGateTree"] = "curatedGateTree";
@@ -24,6 +25,7 @@ const EXTERNAL_LINKS = {
24
25
  }
25
26
  };
26
27
  //#endregion
28
+ exports.DEFAULT_IPFS_GATEWAYS = DEFAULT_IPFS_GATEWAYS;
27
29
  exports.EXTERNAL_LINKS = EXTERNAL_LINKS;
28
30
  exports.LINK_TYPE = LINK_TYPE;
29
31
 
@@ -1 +1 @@
1
- {"version":3,"file":"links.cjs","names":["LINK_TYPE"],"sources":["../../../src/common/constants/links.ts"],"sourcesContent":["import { CHAINS } from '@lidofinance/lido-ethereum-sdk';\nimport { PerSupportedChain } from './supported-chains';\n\nexport enum LINK_TYPE {\n icsTree = 'icsTree',\n curatedGateTree = 'curatedGateTree',\n rewardsTree = 'rewardsTree',\n keysApi = 'keysApi',\n feesMonitoringApi = 'feesMonitoringApi',\n}\n\nexport const EXTERNAL_LINKS: PerSupportedChain<{\n [key2 in LINK_TYPE]?: string;\n}> = {\n [CHAINS.Mainnet]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/mainnet/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/mainnet/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api.lido.fi',\n [LINK_TYPE.feesMonitoringApi]: 'https://api-fees-monitoring.lido.fi',\n },\n [CHAINS.Hoodi]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/hoodi/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/hoodi/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api-hoodi.testnet.fi',\n [LINK_TYPE.feesMonitoringApi]:\n 'https://api-fees-monitoring-hoodi.testnet.fi',\n },\n};\n"],"mappings":";;;AAGO,IAAK,YAAL,kBAAKA,eAAL;AACLA,YAAA,aAAU;AACVA,YAAA,qBAAkB;AAClBA,YAAA,iBAAc;AACdA,YAAA,aAAU;AACVA,YAAA,uBAAoB;AALV,QAAAA;GAAA,aAAA,EAAA,CAAA;AAQL,MAAM,iBAER;EACF,+BAAA,OAAO,UAAU;GACf,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBAA8B;EACjC;EACC,+BAAA,OAAO,QAAQ;GACb,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBACC;EACJ;CACF"}
1
+ {"version":3,"file":"links.cjs","names":["LINK_TYPE"],"sources":["../../../src/common/constants/links.ts"],"sourcesContent":["import { CHAINS } from '@lidofinance/lido-ethereum-sdk';\nimport { PerSupportedChain } from './supported-chains';\n\nexport const DEFAULT_IPFS_GATEWAYS = [\n 'https://ipfs.io/ipfs/{cid}',\n 'https://gateway.pinata.cloud/ipfs/{cid}',\n];\n\nexport enum LINK_TYPE {\n icsTree = 'icsTree',\n curatedGateTree = 'curatedGateTree',\n rewardsTree = 'rewardsTree',\n keysApi = 'keysApi',\n feesMonitoringApi = 'feesMonitoringApi',\n}\n\nexport const EXTERNAL_LINKS: PerSupportedChain<{\n [key2 in LINK_TYPE]?: string;\n}> = {\n [CHAINS.Mainnet]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/mainnet/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/mainnet/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api.lido.fi',\n [LINK_TYPE.feesMonitoringApi]: 'https://api-fees-monitoring.lido.fi',\n },\n [CHAINS.Hoodi]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/hoodi/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/hoodi/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api-hoodi.testnet.fi',\n [LINK_TYPE.feesMonitoringApi]:\n 'https://api-fees-monitoring-hoodi.testnet.fi',\n },\n};\n"],"mappings":";;;AAGO,MAAM,wBAAwB,CACnC,8BACA,0CACF;AAEO,IAAK,YAAL,kBAAKA,eAAL;AACLA,YAAA,aAAU;AACVA,YAAA,qBAAkB;AAClBA,YAAA,iBAAc;AACdA,YAAA,aAAU;AACVA,YAAA,uBAAoB;AALV,QAAAA;GAAA,aAAA,EAAA,CAAA;AAQL,MAAM,iBAER;EACF,+BAAA,OAAO,UAAU;GACf,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBAA8B;EACjC;EACC,+BAAA,OAAO,QAAQ;GACb,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBACC;EACJ;CACF"}
@@ -1,6 +1,7 @@
1
1
  import { PerSupportedChain } from "./supported-chains.cjs";
2
2
 
3
3
  //#region src/common/constants/links.d.ts
4
+ declare const DEFAULT_IPFS_GATEWAYS: string[];
4
5
  declare enum LINK_TYPE {
5
6
  icsTree = "icsTree",
6
7
  curatedGateTree = "curatedGateTree",
@@ -10,5 +11,5 @@ declare enum LINK_TYPE {
10
11
  }
11
12
  declare const EXTERNAL_LINKS: PerSupportedChain<{ [key2 in LINK_TYPE]?: string }>;
12
13
  //#endregion
13
- export { EXTERNAL_LINKS, LINK_TYPE };
14
+ export { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE };
14
15
  //# sourceMappingURL=links.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"links.d.cts","names":[],"sources":["../../../src/common/constants/links.ts"],"mappings":";;;aAGY,SAAA;EACV,OAAA;EACA,eAAA;EACA,WAAA;EACA,OAAA;EACA,iBAAA;AAAA;AAAA,cAGW,cAAA,EAAgB,iBAAA,YAClB,SAAA"}
1
+ {"version":3,"file":"links.d.cts","names":[],"sources":["../../../src/common/constants/links.ts"],"mappings":";;;cAGa,qBAAA;AAAA,aAKD,SAAA;EACV,OAAA;EACA,eAAA;EACA,WAAA;EACA,OAAA;EACA,iBAAA;AAAA;AAAA,cAGW,cAAA,EAAgB,iBAAA,YAClB,SAAA"}
@@ -1,6 +1,7 @@
1
1
  import { PerSupportedChain } from "./supported-chains.mjs";
2
2
 
3
3
  //#region src/common/constants/links.d.ts
4
+ declare const DEFAULT_IPFS_GATEWAYS: string[];
4
5
  declare enum LINK_TYPE {
5
6
  icsTree = "icsTree",
6
7
  curatedGateTree = "curatedGateTree",
@@ -10,5 +11,5 @@ declare enum LINK_TYPE {
10
11
  }
11
12
  declare const EXTERNAL_LINKS: PerSupportedChain<{ [key2 in LINK_TYPE]?: string }>;
12
13
  //#endregion
13
- export { EXTERNAL_LINKS, LINK_TYPE };
14
+ export { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE };
14
15
  //# sourceMappingURL=links.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"links.d.mts","names":[],"sources":["../../../src/common/constants/links.ts"],"mappings":";;;aAGY,SAAA;EACV,OAAA;EACA,eAAA;EACA,WAAA;EACA,OAAA;EACA,iBAAA;AAAA;AAAA,cAGW,cAAA,EAAgB,iBAAA,YAClB,SAAA"}
1
+ {"version":3,"file":"links.d.mts","names":[],"sources":["../../../src/common/constants/links.ts"],"mappings":";;;cAGa,qBAAA;AAAA,aAKD,SAAA;EACV,OAAA;EACA,eAAA;EACA,WAAA;EACA,OAAA;EACA,iBAAA;AAAA;AAAA,cAGW,cAAA,EAAgB,iBAAA,YAClB,SAAA"}
@@ -1,5 +1,6 @@
1
1
  import { CHAINS } from "@lidofinance/lido-ethereum-sdk";
2
2
  //#region src/common/constants/links.ts
3
+ const DEFAULT_IPFS_GATEWAYS = ["https://ipfs.io/ipfs/{cid}", "https://gateway.pinata.cloud/ipfs/{cid}"];
3
4
  var LINK_TYPE = /* @__PURE__ */ ((LINK_TYPE2) => {
4
5
  LINK_TYPE2["icsTree"] = "icsTree";
5
6
  LINK_TYPE2["curatedGateTree"] = "curatedGateTree";
@@ -23,6 +24,6 @@ const EXTERNAL_LINKS = {
23
24
  }
24
25
  };
25
26
  //#endregion
26
- export { EXTERNAL_LINKS, LINK_TYPE };
27
+ export { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE };
27
28
 
28
29
  //# sourceMappingURL=links.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"links.mjs","names":["LINK_TYPE"],"sources":["../../../src/common/constants/links.ts"],"sourcesContent":["import { CHAINS } from '@lidofinance/lido-ethereum-sdk';\nimport { PerSupportedChain } from './supported-chains';\n\nexport enum LINK_TYPE {\n icsTree = 'icsTree',\n curatedGateTree = 'curatedGateTree',\n rewardsTree = 'rewardsTree',\n keysApi = 'keysApi',\n feesMonitoringApi = 'feesMonitoringApi',\n}\n\nexport const EXTERNAL_LINKS: PerSupportedChain<{\n [key2 in LINK_TYPE]?: string;\n}> = {\n [CHAINS.Mainnet]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/mainnet/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/mainnet/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api.lido.fi',\n [LINK_TYPE.feesMonitoringApi]: 'https://api-fees-monitoring.lido.fi',\n },\n [CHAINS.Hoodi]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/hoodi/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/hoodi/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api-hoodi.testnet.fi',\n [LINK_TYPE.feesMonitoringApi]:\n 'https://api-fees-monitoring-hoodi.testnet.fi',\n },\n};\n"],"mappings":";;AAGO,IAAK,YAAL,kBAAKA,eAAL;AACLA,YAAA,aAAU;AACVA,YAAA,qBAAkB;AAClBA,YAAA,iBAAc;AACdA,YAAA,aAAU;AACVA,YAAA,uBAAoB;AALV,QAAAA;GAAA,aAAA,EAAA,CAAA;AAQL,MAAM,iBAER;EACF,OAAO,UAAU;GACf,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBAA8B;EACjC;EACC,OAAO,QAAQ;GACb,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBACC;EACJ;CACF"}
1
+ {"version":3,"file":"links.mjs","names":["LINK_TYPE"],"sources":["../../../src/common/constants/links.ts"],"sourcesContent":["import { CHAINS } from '@lidofinance/lido-ethereum-sdk';\nimport { PerSupportedChain } from './supported-chains';\n\nexport const DEFAULT_IPFS_GATEWAYS = [\n 'https://ipfs.io/ipfs/{cid}',\n 'https://gateway.pinata.cloud/ipfs/{cid}',\n];\n\nexport enum LINK_TYPE {\n icsTree = 'icsTree',\n curatedGateTree = 'curatedGateTree',\n rewardsTree = 'rewardsTree',\n keysApi = 'keysApi',\n feesMonitoringApi = 'feesMonitoringApi',\n}\n\nexport const EXTERNAL_LINKS: PerSupportedChain<{\n [key2 in LINK_TYPE]?: string;\n}> = {\n [CHAINS.Mainnet]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/mainnet/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/mainnet/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api.lido.fi',\n [LINK_TYPE.feesMonitoringApi]: 'https://api-fees-monitoring.lido.fi',\n },\n [CHAINS.Hoodi]: {\n [LINK_TYPE.icsTree]:\n 'https://raw.githubusercontent.com/lidofinance/community-staking-module/refs/heads/main/artifacts/hoodi/ics/merkle-tree.json',\n [LINK_TYPE.rewardsTree]:\n 'https://raw.githubusercontent.com/lidofinance/csm-rewards/hoodi/tree.json',\n [LINK_TYPE.keysApi]: 'https://keys-api-hoodi.testnet.fi',\n [LINK_TYPE.feesMonitoringApi]:\n 'https://api-fees-monitoring-hoodi.testnet.fi',\n },\n};\n"],"mappings":";;AAGO,MAAM,wBAAwB,CACnC,8BACA,0CACF;AAEO,IAAK,YAAL,kBAAKA,eAAL;AACLA,YAAA,aAAU;AACVA,YAAA,qBAAkB;AAClBA,YAAA,iBAAc;AACdA,YAAA,aAAU;AACVA,YAAA,uBAAoB;AALV,QAAAA;GAAA,aAAA,EAAA,CAAA;AAQL,MAAM,iBAER;EACF,OAAO,UAAU;GACf,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBAA8B;EACjC;EACC,OAAO,QAAQ;GACb,YACC;GACD,gBACC;GACD,YAAoB;GACpB,sBACC;EACJ;CACF"}
@@ -13,7 +13,7 @@ import { StandardMerkleTreeData, createMerkleTreeSchema } from "./create-merkle-
13
13
  import { fetchTree, parseTree, verifyRoot } from "./fetch-tree.cjs";
14
14
  import { isDefined, isNotUnique, isPropsDefined, isUnique } from "./is-defined.cjs";
15
15
  import { isHexadecimalString, normalizeTrimHex, toHexString, trimHexPrefix } from "./is-hexadecimal-string.cjs";
16
- import { onError, onVersionError } from "./on-error.cjs";
16
+ import { onError, onRevertEmptyList, onVersionError } from "./on-error.cjs";
17
17
  import { isCapabilitySupported } from "./is-capability-supported.cjs";
18
18
  import { parseNodeOperatorAddedEvents } from "./parse-node-operator-added-events.cjs";
19
19
  import { parseCuratedModuleNodeOperatorAddedEvents } from "./parse-curated-module-node-operator-added-events.cjs";
@@ -13,7 +13,7 @@ import { StandardMerkleTreeData, createMerkleTreeSchema } from "./create-merkle-
13
13
  import { fetchTree, parseTree, verifyRoot } from "./fetch-tree.mjs";
14
14
  import { isDefined, isNotUnique, isPropsDefined, isUnique } from "./is-defined.mjs";
15
15
  import { isHexadecimalString, normalizeTrimHex, toHexString, trimHexPrefix } from "./is-hexadecimal-string.mjs";
16
- import { onError, onVersionError } from "./on-error.mjs";
16
+ import { onError, onRevertEmptyList, onVersionError } from "./on-error.mjs";
17
17
  import { isCapabilitySupported } from "./is-capability-supported.mjs";
18
18
  import { parseNodeOperatorAddedEvents } from "./parse-node-operator-added-events.mjs";
19
19
  import { parseCuratedModuleNodeOperatorAddedEvents } from "./parse-curated-module-node-operator-added-events.mjs";
@@ -14,8 +14,15 @@ const onVersionError = (err) => {
14
14
  }
15
15
  throw err;
16
16
  };
17
+ const onRevertEmptyList = (err) => {
18
+ if (err instanceof viem.BaseError) {
19
+ if (err.walk((err2) => err2 instanceof viem.ContractFunctionRevertedError) instanceof viem.ContractFunctionRevertedError) return [];
20
+ }
21
+ throw err;
22
+ };
17
23
  //#endregion
18
24
  exports.onError = onError;
25
+ exports.onRevertEmptyList = onRevertEmptyList;
19
26
  exports.onVersionError = onVersionError;
20
27
 
21
28
  //# sourceMappingURL=on-error.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"on-error.cjs","names":["err"],"sources":["../../../src/common/utils/on-error.ts"],"sourcesContent":["import {\n BaseError,\n ContractFunctionRevertedError,\n ContractFunctionZeroDataError,\n} from 'viem';\n\nexport const onError = (err: unknown) => {\n if (err instanceof BaseError) {\n const emptyError = err.walk(\n (err) => err instanceof ContractFunctionZeroDataError,\n );\n if (emptyError instanceof ContractFunctionZeroDataError) {\n return [null, null];\n }\n }\n\n throw err;\n};\n\nexport const onVersionError = (err: unknown) => {\n if (err instanceof BaseError) {\n const revertError = err.walk(\n (err) =>\n err instanceof ContractFunctionRevertedError ||\n err instanceof ContractFunctionZeroDataError,\n );\n if (\n revertError instanceof ContractFunctionRevertedError ||\n revertError instanceof ContractFunctionZeroDataError\n ) {\n return 0n;\n }\n }\n\n throw err;\n};\n"],"mappings":";;;AAMO,MAAM,WAAW,QAAiB;AACvC,KAAI,eAAe,KAAA;MACE,IAAI,MACpBA,SAAQA,gBAAe,KAAA,8BAC1B,YAC0B,KAAA,8BACxB,QAAO,CAAC,MAAM,KAAI;;AAItB,OAAM;;AAGD,MAAM,kBAAkB,QAAiB;AAC9C,KAAI,eAAe,KAAA,WAAW;EAC5B,MAAM,cAAc,IAAI,MACrBA,SACCA,gBAAe,KAAA,iCACfA,gBAAe,KAAA,8BACnB;AACA,MACE,uBAAuB,KAAA,iCACvB,uBAAuB,KAAA,8BAEvB,QAAO;;AAIX,OAAM"}
1
+ {"version":3,"file":"on-error.cjs","names":["err"],"sources":["../../../src/common/utils/on-error.ts"],"sourcesContent":["import {\n BaseError,\n ContractFunctionRevertedError,\n ContractFunctionZeroDataError,\n} from 'viem';\n\nexport const onError = (err: unknown) => {\n if (err instanceof BaseError) {\n const emptyError = err.walk(\n (err) => err instanceof ContractFunctionZeroDataError,\n );\n if (emptyError instanceof ContractFunctionZeroDataError) {\n return [null, null];\n }\n }\n\n throw err;\n};\n\nexport const onVersionError = (err: unknown) => {\n if (err instanceof BaseError) {\n const revertError = err.walk(\n (err) =>\n err instanceof ContractFunctionRevertedError ||\n err instanceof ContractFunctionZeroDataError,\n );\n if (\n revertError instanceof ContractFunctionRevertedError ||\n revertError instanceof ContractFunctionZeroDataError\n ) {\n return 0n;\n }\n }\n\n throw err;\n};\n\nexport const onRevertEmptyList = <T>(err: unknown): T[] => {\n if (err instanceof BaseError) {\n const revertError = err.walk(\n (err) => err instanceof ContractFunctionRevertedError,\n );\n if (revertError instanceof ContractFunctionRevertedError) {\n return [];\n }\n }\n\n throw err;\n};\n"],"mappings":";;;AAMO,MAAM,WAAW,QAAiB;AACvC,KAAI,eAAe,KAAA;MACE,IAAI,MACpBA,SAAQA,gBAAe,KAAA,8BAC1B,YAC0B,KAAA,8BACxB,QAAO,CAAC,MAAM,KAAI;;AAItB,OAAM;;AAGD,MAAM,kBAAkB,QAAiB;AAC9C,KAAI,eAAe,KAAA,WAAW;EAC5B,MAAM,cAAc,IAAI,MACrBA,SACCA,gBAAe,KAAA,iCACfA,gBAAe,KAAA,8BACnB;AACA,MACE,uBAAuB,KAAA,iCACvB,uBAAuB,KAAA,8BAEvB,QAAO;;AAIX,OAAM;;AAGD,MAAM,qBAAwB,QAAsB;AACzD,KAAI,eAAe,KAAA;MACG,IAAI,MACrBA,SAAQA,gBAAe,KAAA,8BAC1B,YAC2B,KAAA,8BACzB,QAAO,EAAC;;AAIZ,OAAM"}
@@ -1,6 +1,7 @@
1
1
  //#region src/common/utils/on-error.d.ts
2
2
  declare const onError: (err: unknown) => null[];
3
3
  declare const onVersionError: (err: unknown) => bigint;
4
+ declare const onRevertEmptyList: <T>(err: unknown) => T[];
4
5
  //#endregion
5
- export { onError, onVersionError };
6
+ export { onError, onRevertEmptyList, onVersionError };
6
7
  //# sourceMappingURL=on-error.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"on-error.d.cts","names":[],"sources":["../../../src/common/utils/on-error.ts"],"mappings":";cAMa,OAAA,GAAW,GAAA;AAAA,cAaX,cAAA,GAAkB,GAAA"}
1
+ {"version":3,"file":"on-error.d.cts","names":[],"sources":["../../../src/common/utils/on-error.ts"],"mappings":";cAMa,OAAA,GAAW,GAAA;AAAA,cAaX,cAAA,GAAkB,GAAA;AAAA,cAkBlB,iBAAA,MAAwB,GAAA,cAAe,CAAA"}
@@ -1,6 +1,7 @@
1
1
  //#region src/common/utils/on-error.d.ts
2
2
  declare const onError: (err: unknown) => null[];
3
3
  declare const onVersionError: (err: unknown) => bigint;
4
+ declare const onRevertEmptyList: <T>(err: unknown) => T[];
4
5
  //#endregion
5
- export { onError, onVersionError };
6
+ export { onError, onRevertEmptyList, onVersionError };
6
7
  //# sourceMappingURL=on-error.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"on-error.d.mts","names":[],"sources":["../../../src/common/utils/on-error.ts"],"mappings":";cAMa,OAAA,GAAW,GAAA;AAAA,cAaX,cAAA,GAAkB,GAAA"}
1
+ {"version":3,"file":"on-error.d.mts","names":[],"sources":["../../../src/common/utils/on-error.ts"],"mappings":";cAMa,OAAA,GAAW,GAAA;AAAA,cAaX,cAAA,GAAkB,GAAA;AAAA,cAkBlB,iBAAA,MAAwB,GAAA,cAAe,CAAA"}
@@ -13,7 +13,13 @@ const onVersionError = (err) => {
13
13
  }
14
14
  throw err;
15
15
  };
16
+ const onRevertEmptyList = (err) => {
17
+ if (err instanceof BaseError) {
18
+ if (err.walk((err2) => err2 instanceof ContractFunctionRevertedError) instanceof ContractFunctionRevertedError) return [];
19
+ }
20
+ throw err;
21
+ };
16
22
  //#endregion
17
- export { onError, onVersionError };
23
+ export { onError, onRevertEmptyList, onVersionError };
18
24
 
19
25
  //# sourceMappingURL=on-error.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"on-error.mjs","names":["err"],"sources":["../../../src/common/utils/on-error.ts"],"sourcesContent":["import {\n BaseError,\n ContractFunctionRevertedError,\n ContractFunctionZeroDataError,\n} from 'viem';\n\nexport const onError = (err: unknown) => {\n if (err instanceof BaseError) {\n const emptyError = err.walk(\n (err) => err instanceof ContractFunctionZeroDataError,\n );\n if (emptyError instanceof ContractFunctionZeroDataError) {\n return [null, null];\n }\n }\n\n throw err;\n};\n\nexport const onVersionError = (err: unknown) => {\n if (err instanceof BaseError) {\n const revertError = err.walk(\n (err) =>\n err instanceof ContractFunctionRevertedError ||\n err instanceof ContractFunctionZeroDataError,\n );\n if (\n revertError instanceof ContractFunctionRevertedError ||\n revertError instanceof ContractFunctionZeroDataError\n ) {\n return 0n;\n }\n }\n\n throw err;\n};\n"],"mappings":";;AAMO,MAAM,WAAW,QAAiB;AACvC,KAAI,eAAe;MACE,IAAI,MACpBA,SAAQA,gBAAe,8BAC1B,YAC0B,8BACxB,QAAO,CAAC,MAAM,KAAI;;AAItB,OAAM;;AAGD,MAAM,kBAAkB,QAAiB;AAC9C,KAAI,eAAe,WAAW;EAC5B,MAAM,cAAc,IAAI,MACrBA,SACCA,gBAAe,iCACfA,gBAAe,8BACnB;AACA,MACE,uBAAuB,iCACvB,uBAAuB,8BAEvB,QAAO;;AAIX,OAAM"}
1
+ {"version":3,"file":"on-error.mjs","names":["err"],"sources":["../../../src/common/utils/on-error.ts"],"sourcesContent":["import {\n BaseError,\n ContractFunctionRevertedError,\n ContractFunctionZeroDataError,\n} from 'viem';\n\nexport const onError = (err: unknown) => {\n if (err instanceof BaseError) {\n const emptyError = err.walk(\n (err) => err instanceof ContractFunctionZeroDataError,\n );\n if (emptyError instanceof ContractFunctionZeroDataError) {\n return [null, null];\n }\n }\n\n throw err;\n};\n\nexport const onVersionError = (err: unknown) => {\n if (err instanceof BaseError) {\n const revertError = err.walk(\n (err) =>\n err instanceof ContractFunctionRevertedError ||\n err instanceof ContractFunctionZeroDataError,\n );\n if (\n revertError instanceof ContractFunctionRevertedError ||\n revertError instanceof ContractFunctionZeroDataError\n ) {\n return 0n;\n }\n }\n\n throw err;\n};\n\nexport const onRevertEmptyList = <T>(err: unknown): T[] => {\n if (err instanceof BaseError) {\n const revertError = err.walk(\n (err) => err instanceof ContractFunctionRevertedError,\n );\n if (revertError instanceof ContractFunctionRevertedError) {\n return [];\n }\n }\n\n throw err;\n};\n"],"mappings":";;AAMO,MAAM,WAAW,QAAiB;AACvC,KAAI,eAAe;MACE,IAAI,MACpBA,SAAQA,gBAAe,8BAC1B,YAC0B,8BACxB,QAAO,CAAC,MAAM,KAAI;;AAItB,OAAM;;AAGD,MAAM,kBAAkB,QAAiB;AAC9C,KAAI,eAAe,WAAW;EAC5B,MAAM,cAAc,IAAI,MACrBA,SACCA,gBAAe,iCACfA,gBAAe,8BACnB;AACA,MACE,uBAAuB,iCACvB,uBAAuB,8BAEvB,QAAO;;AAIX,OAAM;;AAGD,MAAM,qBAAwB,QAAsB;AACzD,KAAI,eAAe;MACG,IAAI,MACrBA,SAAQA,gBAAe,8BAC1B,YAC2B,8BACzB,QAAO,EAAC;;AAIZ,OAAM"}
package/dist/common.cjs CHANGED
@@ -50,6 +50,7 @@ exports.CONTRACT_NAMES = require_contract_names.CONTRACT_NAMES;
50
50
  exports.CURATED_GATES = require_contract_names.CURATED_GATES;
51
51
  exports.CsmSDKModule = require_csm_sdk_module.CsmSDKModule;
52
52
  exports.DEFAULT_CLEAN_MAX_ITEMS = require_base.DEFAULT_CLEAN_MAX_ITEMS;
53
+ exports.DEFAULT_IPFS_GATEWAYS = require_links.DEFAULT_IPFS_GATEWAYS;
53
54
  exports.EJECTABLE_EPOCH_COUNT = require_keys.EJECTABLE_EPOCH_COUNT;
54
55
  exports.EJECT_FEE_MIN_LIMIT = require_keys.EJECT_FEE_MIN_LIMIT;
55
56
  exports.EJECT_FEE_MULTIPLIEER = require_keys.EJECT_FEE_MULTIPLIEER;
@@ -97,6 +98,7 @@ exports.isUnique = require_is_defined.isUnique;
97
98
  exports.isValidIpfsCid = require_is_valid_ipfs_cid.isValidIpfsCid;
98
99
  exports.normalizeTrimHex = require_is_hexadecimal_string.normalizeTrimHex;
99
100
  exports.onError = require_on_error.onError;
101
+ exports.onRevertEmptyList = require_on_error.onRevertEmptyList;
100
102
  exports.onVersionError = require_on_error.onVersionError;
101
103
  exports.parseClaimProps = require_parse_claim_props.parseClaimProps;
102
104
  exports.parseCuratedModuleNodeOperatorAddedEvents = require_parse_curated_module_node_operator_added_events.parseCuratedModuleNodeOperatorAddedEvents;
package/dist/common.d.cts CHANGED
@@ -6,7 +6,7 @@ import { PerSupportedChain, SUPPORTED_CHAINS } from "./common/constants/supporte
6
6
  import { COMMON_ADDRESSES, MODULE_CONFIG, ModuleConfig } from "./common/constants/module-config.cjs";
7
7
  import { CONTRACT_BASE_ABI } from "./common/constants/contract-abi.cjs";
8
8
  import { EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, KEY_STATUS, PUBKEY_LENGTH_BYTES, SIGNATURE_LENGTH_BYTES } from "./common/constants/keys.cjs";
9
- import { EXTERNAL_LINKS, LINK_TYPE } from "./common/constants/links.cjs";
9
+ import { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE } from "./common/constants/links.cjs";
10
10
  import { OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID } from "./common/constants/operator-types.cjs";
11
11
  import { ROLES } from "./common/constants/roles.cjs";
12
12
  import { STETH_ROUNDING_THRESHOLD, TOKENS } from "./common/constants/tokens.cjs";
@@ -28,7 +28,7 @@ import { StandardMerkleTreeData, createMerkleTreeSchema } from "./common/utils/c
28
28
  import { fetchTree, parseTree, verifyRoot } from "./common/utils/fetch-tree.cjs";
29
29
  import { isDefined, isNotUnique, isPropsDefined, isUnique } from "./common/utils/is-defined.cjs";
30
30
  import { isHexadecimalString, normalizeTrimHex, toHexString, trimHexPrefix } from "./common/utils/is-hexadecimal-string.cjs";
31
- import { onError, onVersionError } from "./common/utils/on-error.cjs";
31
+ import { onError, onRevertEmptyList, onVersionError } from "./common/utils/on-error.cjs";
32
32
  import { isCapabilitySupported } from "./common/utils/is-capability-supported.cjs";
33
33
  import { parseNodeOperatorAddedEvents } from "./common/utils/parse-node-operator-added-events.cjs";
34
34
  import { parseCuratedModuleNodeOperatorAddedEvents } from "./common/utils/parse-curated-module-node-operator-added-events.cjs";
@@ -39,4 +39,4 @@ import { getCurveIdByOperatorType, getOperatorTypeByCurveId } from "./common/uti
39
39
  import { ERROR_CODE, SDKError, SDKErrorProps, invariant, invariantArgument, withSDKError } from "./common/utils/sdk-error.cjs";
40
40
  import { decodeRevertData } from "./common/utils/decode-revert-data.cjs";
41
41
  import { CsmSDKModule, CsmSDKProps } from "./common/class-primitives/csm-sdk-module.cjs";
42
- export { AccessCondition, AccessLevel, AddressTreeLeaf, BondBalance, CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT, COMMON_ADDRESSES, CONTRACT_BASE_ABI, CONTRACT_NAMES, CURATED_GATES, CanPerformContext, CanPerformResult, CsmSDKModule, CsmSDKProps, DEFAULT_CLEAN_MAX_ITEMS, DepositDataKey, EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, EMPTY_PERMIT, ERROR_CODE, EXTERNAL_LINKS, Erc20Tokens, FetchFn, KEY_STATUS, LINK_TYPE, MAX_BLOCKS_DEPTH_TWO_WEEKS, MODULE_CONFIG, MODULE_CONTRACT, MODULE_NAME, MethodAccess, ModuleConfig, NodeOperator, NodeOperatorId, NodeOperatorInvite, NodeOperatorInviteInfo, NodeOperatorShortInfo, OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID, PERCENT_BASIS, PUBKEY_LENGTH_BYTES, ParseFn, PerModule, PerSupportedChain, PerToken, PermitSignatureShort, Proof, PublicMethods, ROLES, RewardProof, Rewards, SDKError, SDKErrorProps, SIGNATURE_LENGTH_BYTES, STETH_ROUNDING_THRESHOLD, SUPPORTED_CHAINS, SUPPORTED_CONTRACT_VERSIONS, StandardMerkleTreeData, TOKENS, ValidateFn, WithToken, bigIntRange, clearEmptyAddress, compareLowercase, createMerkleTreeSchema, decodeRevertData, fetchJson, fetchOneOf, fetchTree, fetchWithFallback, findAddressProof, getCurveIdByOperatorType, getOperatorTypeByCurveId, invariant, invariantArgument, isBigint, isCapabilitySupported, isDefined, isHexadecimalString, isNotUnique, isPropsDefined, isUnique, isValidIpfsCid, normalizeTrimHex, onError, onVersionError, parseClaimProps, parseCuratedModuleNodeOperatorAddedEvents, parseDepositData, parseNodeOperatorAddedEvents, parseTree, parseValue, requestWithBlockStep, resolveAccess, sortByBlockNumber, sortRewardsByRefSlot, splitKeys, toHexString, trimHexPrefix, verifyRoot, withSDKError };
42
+ export { AccessCondition, AccessLevel, AddressTreeLeaf, BondBalance, CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT, COMMON_ADDRESSES, CONTRACT_BASE_ABI, CONTRACT_NAMES, CURATED_GATES, CanPerformContext, CanPerformResult, CsmSDKModule, CsmSDKProps, DEFAULT_CLEAN_MAX_ITEMS, DEFAULT_IPFS_GATEWAYS, DepositDataKey, EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, EMPTY_PERMIT, ERROR_CODE, EXTERNAL_LINKS, Erc20Tokens, FetchFn, KEY_STATUS, LINK_TYPE, MAX_BLOCKS_DEPTH_TWO_WEEKS, MODULE_CONFIG, MODULE_CONTRACT, MODULE_NAME, MethodAccess, ModuleConfig, NodeOperator, NodeOperatorId, NodeOperatorInvite, NodeOperatorInviteInfo, NodeOperatorShortInfo, OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID, PERCENT_BASIS, PUBKEY_LENGTH_BYTES, ParseFn, PerModule, PerSupportedChain, PerToken, PermitSignatureShort, Proof, PublicMethods, ROLES, RewardProof, Rewards, SDKError, SDKErrorProps, SIGNATURE_LENGTH_BYTES, STETH_ROUNDING_THRESHOLD, SUPPORTED_CHAINS, SUPPORTED_CONTRACT_VERSIONS, StandardMerkleTreeData, TOKENS, ValidateFn, WithToken, bigIntRange, clearEmptyAddress, compareLowercase, createMerkleTreeSchema, decodeRevertData, fetchJson, fetchOneOf, fetchTree, fetchWithFallback, findAddressProof, getCurveIdByOperatorType, getOperatorTypeByCurveId, invariant, invariantArgument, isBigint, isCapabilitySupported, isDefined, isHexadecimalString, isNotUnique, isPropsDefined, isUnique, isValidIpfsCid, normalizeTrimHex, onError, onRevertEmptyList, onVersionError, parseClaimProps, parseCuratedModuleNodeOperatorAddedEvents, parseDepositData, parseNodeOperatorAddedEvents, parseTree, parseValue, requestWithBlockStep, resolveAccess, sortByBlockNumber, sortRewardsByRefSlot, splitKeys, toHexString, trimHexPrefix, verifyRoot, withSDKError };
package/dist/common.d.mts CHANGED
@@ -6,7 +6,7 @@ import { PerSupportedChain, SUPPORTED_CHAINS } from "./common/constants/supporte
6
6
  import { COMMON_ADDRESSES, MODULE_CONFIG, ModuleConfig } from "./common/constants/module-config.mjs";
7
7
  import { CONTRACT_BASE_ABI } from "./common/constants/contract-abi.mjs";
8
8
  import { EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, KEY_STATUS, PUBKEY_LENGTH_BYTES, SIGNATURE_LENGTH_BYTES } from "./common/constants/keys.mjs";
9
- import { EXTERNAL_LINKS, LINK_TYPE } from "./common/constants/links.mjs";
9
+ import { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE } from "./common/constants/links.mjs";
10
10
  import { OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID } from "./common/constants/operator-types.mjs";
11
11
  import { ROLES } from "./common/constants/roles.mjs";
12
12
  import { STETH_ROUNDING_THRESHOLD, TOKENS } from "./common/constants/tokens.mjs";
@@ -28,7 +28,7 @@ import { StandardMerkleTreeData, createMerkleTreeSchema } from "./common/utils/c
28
28
  import { fetchTree, parseTree, verifyRoot } from "./common/utils/fetch-tree.mjs";
29
29
  import { isDefined, isNotUnique, isPropsDefined, isUnique } from "./common/utils/is-defined.mjs";
30
30
  import { isHexadecimalString, normalizeTrimHex, toHexString, trimHexPrefix } from "./common/utils/is-hexadecimal-string.mjs";
31
- import { onError, onVersionError } from "./common/utils/on-error.mjs";
31
+ import { onError, onRevertEmptyList, onVersionError } from "./common/utils/on-error.mjs";
32
32
  import { isCapabilitySupported } from "./common/utils/is-capability-supported.mjs";
33
33
  import { parseNodeOperatorAddedEvents } from "./common/utils/parse-node-operator-added-events.mjs";
34
34
  import { parseCuratedModuleNodeOperatorAddedEvents } from "./common/utils/parse-curated-module-node-operator-added-events.mjs";
@@ -39,4 +39,4 @@ import { getCurveIdByOperatorType, getOperatorTypeByCurveId } from "./common/uti
39
39
  import { ERROR_CODE, SDKError, SDKErrorProps, invariant, invariantArgument, withSDKError } from "./common/utils/sdk-error.mjs";
40
40
  import { decodeRevertData } from "./common/utils/decode-revert-data.mjs";
41
41
  import { CsmSDKModule, CsmSDKProps } from "./common/class-primitives/csm-sdk-module.mjs";
42
- export { AccessCondition, AccessLevel, AddressTreeLeaf, BondBalance, CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT, COMMON_ADDRESSES, CONTRACT_BASE_ABI, CONTRACT_NAMES, CURATED_GATES, CanPerformContext, CanPerformResult, CsmSDKModule, CsmSDKProps, DEFAULT_CLEAN_MAX_ITEMS, DepositDataKey, EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, EMPTY_PERMIT, ERROR_CODE, EXTERNAL_LINKS, Erc20Tokens, FetchFn, KEY_STATUS, LINK_TYPE, MAX_BLOCKS_DEPTH_TWO_WEEKS, MODULE_CONFIG, MODULE_CONTRACT, MODULE_NAME, MethodAccess, ModuleConfig, NodeOperator, NodeOperatorId, NodeOperatorInvite, NodeOperatorInviteInfo, NodeOperatorShortInfo, OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID, PERCENT_BASIS, PUBKEY_LENGTH_BYTES, ParseFn, PerModule, PerSupportedChain, PerToken, PermitSignatureShort, Proof, PublicMethods, ROLES, RewardProof, Rewards, SDKError, SDKErrorProps, SIGNATURE_LENGTH_BYTES, STETH_ROUNDING_THRESHOLD, SUPPORTED_CHAINS, SUPPORTED_CONTRACT_VERSIONS, StandardMerkleTreeData, TOKENS, ValidateFn, WithToken, bigIntRange, clearEmptyAddress, compareLowercase, createMerkleTreeSchema, decodeRevertData, fetchJson, fetchOneOf, fetchTree, fetchWithFallback, findAddressProof, getCurveIdByOperatorType, getOperatorTypeByCurveId, invariant, invariantArgument, isBigint, isCapabilitySupported, isDefined, isHexadecimalString, isNotUnique, isPropsDefined, isUnique, isValidIpfsCid, normalizeTrimHex, onError, onVersionError, parseClaimProps, parseCuratedModuleNodeOperatorAddedEvents, parseDepositData, parseNodeOperatorAddedEvents, parseTree, parseValue, requestWithBlockStep, resolveAccess, sortByBlockNumber, sortRewardsByRefSlot, splitKeys, toHexString, trimHexPrefix, verifyRoot, withSDKError };
42
+ export { AccessCondition, AccessLevel, AddressTreeLeaf, BondBalance, CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT, COMMON_ADDRESSES, CONTRACT_BASE_ABI, CONTRACT_NAMES, CURATED_GATES, CanPerformContext, CanPerformResult, CsmSDKModule, CsmSDKProps, DEFAULT_CLEAN_MAX_ITEMS, DEFAULT_IPFS_GATEWAYS, DepositDataKey, EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, EMPTY_PERMIT, ERROR_CODE, EXTERNAL_LINKS, Erc20Tokens, FetchFn, KEY_STATUS, LINK_TYPE, MAX_BLOCKS_DEPTH_TWO_WEEKS, MODULE_CONFIG, MODULE_CONTRACT, MODULE_NAME, MethodAccess, ModuleConfig, NodeOperator, NodeOperatorId, NodeOperatorInvite, NodeOperatorInviteInfo, NodeOperatorShortInfo, OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID, PERCENT_BASIS, PUBKEY_LENGTH_BYTES, ParseFn, PerModule, PerSupportedChain, PerToken, PermitSignatureShort, Proof, PublicMethods, ROLES, RewardProof, Rewards, SDKError, SDKErrorProps, SIGNATURE_LENGTH_BYTES, STETH_ROUNDING_THRESHOLD, SUPPORTED_CHAINS, SUPPORTED_CONTRACT_VERSIONS, StandardMerkleTreeData, TOKENS, ValidateFn, WithToken, bigIntRange, clearEmptyAddress, compareLowercase, createMerkleTreeSchema, decodeRevertData, fetchJson, fetchOneOf, fetchTree, fetchWithFallback, findAddressProof, getCurveIdByOperatorType, getOperatorTypeByCurveId, invariant, invariantArgument, isBigint, isCapabilitySupported, isDefined, isHexadecimalString, isNotUnique, isPropsDefined, isUnique, isValidIpfsCid, normalizeTrimHex, onError, onRevertEmptyList, onVersionError, parseClaimProps, parseCuratedModuleNodeOperatorAddedEvents, parseDepositData, parseNodeOperatorAddedEvents, parseTree, parseValue, requestWithBlockStep, resolveAccess, sortByBlockNumber, sortRewardsByRefSlot, splitKeys, toHexString, trimHexPrefix, verifyRoot, withSDKError };
package/dist/common.mjs CHANGED
@@ -20,7 +20,7 @@ import { fetchJson, fetchOneOf, fetchWithFallback } from "./common/utils/fetch-j
20
20
  import { fetchTree, parseTree, verifyRoot } from "./common/utils/fetch-tree.mjs";
21
21
  import { isDefined, isNotUnique, isPropsDefined, isUnique } from "./common/utils/is-defined.mjs";
22
22
  import { isHexadecimalString, normalizeTrimHex, toHexString, trimHexPrefix } from "./common/utils/is-hexadecimal-string.mjs";
23
- import { onError, onVersionError } from "./common/utils/on-error.mjs";
23
+ import { onError, onRevertEmptyList, onVersionError } from "./common/utils/on-error.mjs";
24
24
  import { isCapabilitySupported } from "./common/utils/is-capability-supported.mjs";
25
25
  import { parseNodeOperatorAddedEvents } from "./common/utils/parse-node-operator-added-events.mjs";
26
26
  import { parseCuratedModuleNodeOperatorAddedEvents } from "./common/utils/parse-curated-module-node-operator-added-events.mjs";
@@ -32,10 +32,10 @@ import { DEFAULT_CLEAN_MAX_ITEMS, MAX_BLOCKS_DEPTH_TWO_WEEKS, PERCENT_BASIS } fr
32
32
  import { CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT } from "./common/constants/cache-durations.mjs";
33
33
  import { MODULE_CONTRACT, MODULE_NAME } from "./common/constants/module-name.mjs";
34
34
  import { COMMON_ADDRESSES, MODULE_CONFIG } from "./common/constants/module-config.mjs";
35
- import { EXTERNAL_LINKS, LINK_TYPE } from "./common/constants/links.mjs";
35
+ import { DEFAULT_IPFS_GATEWAYS, EXTERNAL_LINKS, LINK_TYPE } from "./common/constants/links.mjs";
36
36
  import { OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID } from "./common/constants/operator-types.mjs";
37
37
  import { EMPTY_PERMIT } from "./common/constants/permit.mjs";
38
38
  import { ROLES } from "./common/constants/roles.mjs";
39
39
  import { SUPPORTED_CHAINS } from "./common/constants/supported-chains.mjs";
40
40
  import { getCurveIdByOperatorType, getOperatorTypeByCurveId } from "./common/utils/operator-type-utils.mjs";
41
- export { AccessLevel, CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT, COMMON_ADDRESSES, CONTRACT_BASE_ABI, CONTRACT_NAMES, CURATED_GATES, CsmSDKModule, DEFAULT_CLEAN_MAX_ITEMS, EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, EMPTY_PERMIT, ERROR_CODE, EXTERNAL_LINKS, KEY_STATUS, LINK_TYPE, MAX_BLOCKS_DEPTH_TWO_WEEKS, MODULE_CONFIG, MODULE_CONTRACT, MODULE_NAME, OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID, PERCENT_BASIS, PUBKEY_LENGTH_BYTES, ROLES, SDKError, SIGNATURE_LENGTH_BYTES, STETH_ROUNDING_THRESHOLD, SUPPORTED_CHAINS, SUPPORTED_CONTRACT_VERSIONS, TOKENS, bigIntRange, clearEmptyAddress, compareLowercase, createMerkleTreeSchema, decodeRevertData, fetchJson, fetchOneOf, fetchTree, fetchWithFallback, findAddressProof, getCurveIdByOperatorType, getOperatorTypeByCurveId, invariant, invariantArgument, isBigint, isCapabilitySupported, isDefined, isHexadecimalString, isNotUnique, isPropsDefined, isUnique, isValidIpfsCid, normalizeTrimHex, onError, onVersionError, parseClaimProps, parseCuratedModuleNodeOperatorAddedEvents, parseDepositData, parseNodeOperatorAddedEvents, parseTree, parseValue, requestWithBlockStep, resolveAccess, sortByBlockNumber, sortRewardsByRefSlot, splitKeys, toHexString, trimHexPrefix, verifyRoot, withSDKError };
41
+ export { AccessLevel, CACHE_IMMUTABLE, CACHE_LONG, CACHE_MID, CACHE_SHORT, COMMON_ADDRESSES, CONTRACT_BASE_ABI, CONTRACT_NAMES, CURATED_GATES, CsmSDKModule, DEFAULT_CLEAN_MAX_ITEMS, DEFAULT_IPFS_GATEWAYS, EJECTABLE_EPOCH_COUNT, EJECT_FEE_MIN_LIMIT, EJECT_FEE_MULTIPLIEER, EMPTY_PERMIT, ERROR_CODE, EXTERNAL_LINKS, KEY_STATUS, LINK_TYPE, MAX_BLOCKS_DEPTH_TWO_WEEKS, MODULE_CONFIG, MODULE_CONTRACT, MODULE_NAME, OPERATOR_TYPE, OPERATOR_TYPE_CURVE_ID, PERCENT_BASIS, PUBKEY_LENGTH_BYTES, ROLES, SDKError, SIGNATURE_LENGTH_BYTES, STETH_ROUNDING_THRESHOLD, SUPPORTED_CHAINS, SUPPORTED_CONTRACT_VERSIONS, TOKENS, bigIntRange, clearEmptyAddress, compareLowercase, createMerkleTreeSchema, decodeRevertData, fetchJson, fetchOneOf, fetchTree, fetchWithFallback, findAddressProof, getCurveIdByOperatorType, getOperatorTypeByCurveId, invariant, invariantArgument, isBigint, isCapabilitySupported, isDefined, isHexadecimalString, isNotUnique, isPropsDefined, isUnique, isValidIpfsCid, normalizeTrimHex, onError, onRevertEmptyList, onVersionError, parseClaimProps, parseCuratedModuleNodeOperatorAddedEvents, parseDepositData, parseNodeOperatorAddedEvents, parseTree, parseValue, requestWithBlockStep, resolveAccess, sortByBlockNumber, sortRewardsByRefSlot, splitKeys, toHexString, trimHexPrefix, verifyRoot, withSDKError };
@@ -112,6 +112,7 @@ var CoreSDK = class extends (_a = require_csm_sdk_cacheable.CsmSDKCacheable, _ge
112
112
  __publicField(this, "maxEventBlocksRange");
113
113
  __publicField(this, "skipHistoricalCalls");
114
114
  __publicField(this, "moduleName");
115
+ __publicField(this, "ipfsGateways");
115
116
  this.core = props.core;
116
117
  this.contractAddresses = props.contractAddresses;
117
118
  this.moduleId = props.moduleId;
@@ -122,6 +123,7 @@ var CoreSDK = class extends (_a = require_csm_sdk_cacheable.CsmSDKCacheable, _ge
122
123
  this.deploymentBlockNumber = props.deploymentBlockNumber ?? 0n;
123
124
  this.skipHistoricalCalls = props.skipHistoricalCalls ?? false;
124
125
  this.moduleName = props.moduleName ?? require_module_name.MODULE_NAME.CSM;
126
+ this.ipfsGateways = props.ipfsGateways ?? [];
125
127
  }
126
128
  get cacheVersion() {
127
129
  return this._cacheVersion;
@@ -214,7 +216,7 @@ var CoreSDK = class extends (_a = require_csm_sdk_cacheable.CsmSDKCacheable, _ge
214
216
  }
215
217
  getIpfsUrls(cid) {
216
218
  if (!require_is_valid_ipfs_cid.isValidIpfsCid(cid)) return [];
217
- return [`https://ipfs.io/ipfs/${cid}`, `https://gateway.pinata.cloud/ipfs/${cid}`];
219
+ return [...this.ipfsGateways, ...require_links.DEFAULT_IPFS_GATEWAYS].map((gateway) => gateway.includes("{cid}") ? gateway.replace("{cid}", cid) : `${gateway}${cid}`);
218
220
  }
219
221
  };
220
222
  _init = __decoratorStart(_a);