sablier 3.9.0 → 3.11.0

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 (84) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/abi/airdrops/v1.3/SablierMerkleLockup.json +13 -153
  3. package/dist/cjs/evm/comptroller/deployments.js +1 -1
  4. package/dist/cjs/evm/comptroller/deployments.js.map +1 -1
  5. package/dist/cjs/evm/comptroller/index.js +2 -2
  6. package/dist/cjs/evm/comptroller/index.js.map +1 -1
  7. package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/abi/ERC1967Proxy.js.map +1 -1
  8. package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/abi/SablierComptroller.js.map +1 -1
  9. package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/abi.js.map +1 -1
  10. package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/index.js.map +1 -1
  11. package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/manifest.js.map +1 -1
  12. package/dist/cjs/evm/contracts/names.js +1 -1
  13. package/dist/cjs/evm/contracts/names.js.map +1 -1
  14. package/dist/cjs/evm/helpers.js +3 -1
  15. package/dist/cjs/evm/helpers.js.map +1 -1
  16. package/dist/cjs/evm/index.js +3 -1
  17. package/dist/cjs/evm/index.js.map +1 -1
  18. package/dist/cjs/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.js +11 -75
  19. package/dist/cjs/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.js.map +1 -1
  20. package/dist/cjs/evm/releases/features.js +48 -9
  21. package/dist/cjs/evm/releases/features.js.map +1 -1
  22. package/dist/cjs/evm/types.js.map +1 -1
  23. package/dist/esm/evm/comptroller/deployments.js +1 -1
  24. package/dist/esm/evm/comptroller/deployments.js.map +1 -1
  25. package/dist/esm/evm/comptroller/index.js +2 -2
  26. package/dist/esm/evm/comptroller/index.js.map +1 -1
  27. package/dist/esm/evm/comptroller/{v2.0 → v1.1}/abi/ERC1967Proxy.js.map +1 -1
  28. package/dist/esm/evm/comptroller/{v2.0 → v1.1}/abi/SablierComptroller.js.map +1 -1
  29. package/dist/esm/evm/comptroller/{v2.0 → v1.1}/abi.js.map +1 -1
  30. package/dist/esm/evm/comptroller/{v2.0 → v1.1}/index.js.map +1 -1
  31. package/dist/esm/evm/comptroller/{v2.0 → v1.1}/manifest.js.map +1 -1
  32. package/dist/esm/evm/contracts/names.js +2 -2
  33. package/dist/esm/evm/contracts/names.js.map +1 -1
  34. package/dist/esm/evm/helpers.js +1 -1
  35. package/dist/esm/evm/helpers.js.map +1 -1
  36. package/dist/esm/evm/index.js +1 -1
  37. package/dist/esm/evm/index.js.map +1 -1
  38. package/dist/esm/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.js +11 -75
  39. package/dist/esm/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.js.map +1 -1
  40. package/dist/esm/evm/releases/features.js +46 -9
  41. package/dist/esm/evm/releases/features.js.map +1 -1
  42. package/dist/esm/evm/types.js.map +1 -1
  43. package/dist/types/evm/comptroller/index.d.ts +1 -1
  44. package/dist/types/evm/comptroller/{v2.0 → v1.1}/abi/ERC1967Proxy.d.ts.map +1 -1
  45. package/dist/types/evm/comptroller/{v2.0 → v1.1}/abi/SablierComptroller.d.ts.map +1 -1
  46. package/dist/types/evm/comptroller/{v2.0 → v1.1}/abi.d.ts.map +1 -1
  47. package/dist/types/evm/comptroller/{v2.0 → v1.1}/index.d.ts.map +1 -1
  48. package/dist/types/evm/comptroller/{v2.0 → v1.1}/manifest.d.ts.map +1 -1
  49. package/dist/types/evm/contracts/index.d.ts +1 -1
  50. package/dist/types/evm/contracts/names.d.ts +3 -3
  51. package/dist/types/evm/helpers.d.ts +1 -1
  52. package/dist/types/evm/helpers.d.ts.map +1 -1
  53. package/dist/types/evm/index.d.ts +1 -1
  54. package/dist/types/evm/index.d.ts.map +1 -1
  55. package/dist/types/evm/releases/airdrops/index.d.ts +13 -121
  56. package/dist/types/evm/releases/airdrops/index.d.ts.map +1 -1
  57. package/dist/types/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.d.ts +13 -121
  58. package/dist/types/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.d.ts.map +1 -1
  59. package/dist/types/evm/releases/airdrops/v1.3/abi.d.ts +13 -121
  60. package/dist/types/evm/releases/airdrops/v1.3/abi.d.ts.map +1 -1
  61. package/dist/types/evm/releases/airdrops/v1.3/index.d.ts +13 -121
  62. package/dist/types/evm/releases/airdrops/v1.3/index.d.ts.map +1 -1
  63. package/dist/types/evm/releases/features.d.ts +23 -0
  64. package/dist/types/evm/releases/features.d.ts.map +1 -1
  65. package/dist/types/evm/types.d.ts +4 -0
  66. package/dist/types/evm/types.d.ts.map +1 -1
  67. package/package.json +3 -3
  68. /package/abi/comptroller/{v2.0 → v1.1}/ERC1967Proxy.json +0 -0
  69. /package/abi/comptroller/{v2.0 → v1.1}/SablierComptroller.json +0 -0
  70. /package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/abi/ERC1967Proxy.js +0 -0
  71. /package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/abi/SablierComptroller.js +0 -0
  72. /package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/abi.js +0 -0
  73. /package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/index.js +0 -0
  74. /package/dist/cjs/evm/comptroller/{v2.0 → v1.1}/manifest.js +0 -0
  75. /package/dist/esm/evm/comptroller/{v2.0 → v1.1}/abi/ERC1967Proxy.js +0 -0
  76. /package/dist/esm/evm/comptroller/{v2.0 → v1.1}/abi/SablierComptroller.js +0 -0
  77. /package/dist/esm/evm/comptroller/{v2.0 → v1.1}/abi.js +0 -0
  78. /package/dist/esm/evm/comptroller/{v2.0 → v1.1}/index.js +0 -0
  79. /package/dist/esm/evm/comptroller/{v2.0 → v1.1}/manifest.js +0 -0
  80. /package/dist/types/evm/comptroller/{v2.0 → v1.1}/abi/ERC1967Proxy.d.ts +0 -0
  81. /package/dist/types/evm/comptroller/{v2.0 → v1.1}/abi/SablierComptroller.d.ts +0 -0
  82. /package/dist/types/evm/comptroller/{v2.0 → v1.1}/abi.d.ts +0 -0
  83. /package/dist/types/evm/comptroller/{v2.0 → v1.1}/index.d.ts +0 -0
  84. /package/dist/types/evm/comptroller/{v2.0 → v1.1}/manifest.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"names.js","sourceRoot":"","sources":["../../../../src/evm/contracts/names.ts"],"names":[],"mappings":";;;;;;AAAA,yFAAqE;AACrE,yFAAqE;AACrE,+FAAwE;AACxE,+FAAwE;AACxE,+FAAwE;AACxE,+FAAwE;AACxE,+FAAwE;AACxE,0FAA8D;AAC9D,2FAAgE;AAChE,4FAAgE;AAChE,4FAAgE;AAChE,4FAAgE;AAChE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AAiEpE,SAAS,OAAO,CAAC,QAA8B;IAC7C,IAAI,MAAM,IAAI,QAAQ,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QAClD,MAAM,cAAc,GAAG,QAAyC,CAAC;QACjE,OAAO,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;IACjE,CAAC;IACD,OAAO,EAAE,GAAG,QAAQ,EAA4B,CAAC;AACnD,CAAC;AAUD,SAAS,QAAQ;IACf,MAAM,SAAS,GAAG;QAChB,qBAAY;QACZ,qBAAY;QACZ,qBAAY;QACZ,qBAAY;QACZ,qBAAY;QACZ,qBAAO;QACP,qBAAe;QACf,qBAAe;QACf,qBAAQ;QACR,sBAAQ;QACR,sBAAQ;QACR,sBAAQ;QACR,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;KACX,CAAC;IAEF,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,SAAS,CAAkB,CAAC;AAC1D,CAAC;AAEY,QAAA,KAAK,GAAG,QAAQ,EAAE,CAAC","sourcesContent":["import comptrollerV1_0 from \"@/src/evm/comptroller/v1.0/manifest.js\";\nimport comptrollerV2_0 from \"@/src/evm/comptroller/v2.0/manifest.js\";\nimport airdropsV1_1 from \"@/src/evm/releases/airdrops/v1.1/manifest.js\";\nimport airdropsV1_2 from \"@/src/evm/releases/airdrops/v1.2/manifest.js\";\nimport airdropsV1_3 from \"@/src/evm/releases/airdrops/v1.3/manifest.js\";\nimport airdropsV2_0 from \"@/src/evm/releases/airdrops/v2.0/manifest.js\";\nimport airdropsV3_0 from \"@/src/evm/releases/airdrops/v3.0/manifest.js\";\nimport bobV1_0 from \"@/src/evm/releases/bob/v1.0/manifest.js\";\nimport flowV1_0 from \"@/src/evm/releases/flow/v1.0/manifest.js\";\nimport flowV1_1 from \"@/src/evm/releases/flow/v1.1/manifest.js\";\nimport flowV2_0 from \"@/src/evm/releases/flow/v2.0/manifest.js\";\nimport flowV3_0 from \"@/src/evm/releases/flow/v3.0/manifest.js\";\nimport legacyV1_0 from \"@/src/evm/releases/legacy/v1.0/manifest.js\";\nimport legacyV1_1 from \"@/src/evm/releases/legacy/v1.1/manifest.js\";\nimport lockupV1_0 from \"@/src/evm/releases/lockup/v1.0/manifest.js\";\nimport lockupV1_1 from \"@/src/evm/releases/lockup/v1.1/manifest.js\";\nimport lockupV1_2 from \"@/src/evm/releases/lockup/v1.2/manifest.js\";\nimport lockupV2_0 from \"@/src/evm/releases/lockup/v2.0/manifest.js\";\nimport lockupV3_0 from \"@/src/evm/releases/lockup/v3.0/manifest.js\";\nimport lockupV4_0 from \"@/src/evm/releases/lockup/v4.0/manifest.js\";\nimport type { Sablier } from \"@/src/types.js\";\n\n/**\n * Works at compile-time!\n */\ntype LeafKeys<T> = keyof T;\n\ntype A1_1 = LeafKeys<typeof airdropsV1_1>;\ntype A1_2 = LeafKeys<typeof airdropsV1_2>;\ntype A1_3 = LeafKeys<typeof airdropsV1_3>;\ntype A2_0 = LeafKeys<typeof airdropsV2_0>;\n\ntype B1_0 = LeafKeys<typeof bobV1_0>;\n\ntype C1_0 = LeafKeys<typeof comptrollerV1_0>;\ntype C2_0 = LeafKeys<typeof comptrollerV2_0>;\n\ntype F1_0 = LeafKeys<typeof flowV1_0>;\ntype F1_1 = LeafKeys<typeof flowV1_1>;\ntype F2_0 = LeafKeys<typeof flowV2_0>;\n\ntype LEGACY_1_0 = LeafKeys<typeof legacyV1_0>;\ntype LEGACY_1_1 = LeafKeys<typeof legacyV1_1>;\n\ntype L1_0 = LeafKeys<typeof lockupV1_0.core> | LeafKeys<typeof lockupV1_0.periphery>;\ntype L1_1 = LeafKeys<typeof lockupV1_1.core> | LeafKeys<typeof lockupV1_1.periphery>;\ntype L1_2 = LeafKeys<typeof lockupV1_2.core> | LeafKeys<typeof lockupV1_2.periphery>;\ntype L2_0 = LeafKeys<typeof lockupV2_0>;\ntype L3_0 = LeafKeys<typeof lockupV3_0>;\n\n// Final exported type: only these known keys allowed\ntype ContractNames = Record<\n /** Airdrops */\n | A1_1\n | A1_2\n | A1_3\n | A2_0\n\n /** Bob */\n | B1_0\n\n /** Comptroller */\n | C1_0\n | C2_0\n\n /** Flow */\n | F1_0\n | F1_1\n | F2_0\n\n /** Legacy */\n | LEGACY_1_0\n | LEGACY_1_1\n\n /** Lockup */\n | L1_0\n | L1_1\n | L1_2\n | L2_0\n | L3_0,\n /** Other */\n string\n>;\n\nfunction flatten(manifest: Sablier.EVM.Manifest): Record<string, string> {\n if (\"core\" in manifest && \"periphery\" in manifest) {\n const lockupManifest = manifest as Sablier.EVM.Manifest.LockupV1;\n return { ...lockupManifest.core, ...lockupManifest.periphery };\n }\n return { ...manifest } as Record<string, string>;\n}\n\n/**\n * Flatten & merge across all releases\n * @example\n * ```ts\n * const lockupName = names.SABLIER_LOCKUP; // \"SablierLockup\"\n * const flowName = names.SABLIER_FLOW; //\"SablierFlow\"\n * ```\n */\nfunction getNames(): ContractNames {\n const manifests = [\n airdropsV1_1,\n airdropsV1_2,\n airdropsV1_3,\n airdropsV2_0,\n airdropsV3_0,\n bobV1_0,\n comptrollerV1_0,\n comptrollerV2_0,\n flowV1_0,\n flowV1_1,\n flowV2_0,\n flowV3_0,\n legacyV1_0,\n legacyV1_1,\n lockupV1_0,\n lockupV1_1,\n lockupV1_2,\n lockupV2_0,\n lockupV3_0,\n lockupV4_0,\n ];\n\n const flattened = manifests.map(flatten);\n return Object.assign({}, ...flattened) as ContractNames;\n}\n\nexport const names = getNames();\n"]}
1
+ {"version":3,"file":"names.js","sourceRoot":"","sources":["../../../../src/evm/contracts/names.ts"],"names":[],"mappings":";;;;;;AAAA,yFAAqE;AACrE,yFAAqE;AACrE,+FAAwE;AACxE,+FAAwE;AACxE,+FAAwE;AACxE,+FAAwE;AACxE,+FAAwE;AACxE,0FAA8D;AAC9D,2FAAgE;AAChE,4FAAgE;AAChE,4FAAgE;AAChE,4FAAgE;AAChE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AACpE,8FAAoE;AAiEpE,SAAS,OAAO,CAAC,QAA8B;IAC7C,IAAI,MAAM,IAAI,QAAQ,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QAClD,MAAM,cAAc,GAAG,QAAyC,CAAC;QACjE,OAAO,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;IACjE,CAAC;IACD,OAAO,EAAE,GAAG,QAAQ,EAA4B,CAAC;AACnD,CAAC;AAUD,SAAS,QAAQ;IACf,MAAM,SAAS,GAAG;QAChB,qBAAY;QACZ,qBAAY;QACZ,qBAAY;QACZ,qBAAY;QACZ,qBAAY;QACZ,qBAAO;QACP,qBAAe;QACf,qBAAe;QACf,qBAAQ;QACR,sBAAQ;QACR,sBAAQ;QACR,sBAAQ;QACR,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;QACV,sBAAU;KACX,CAAC;IAEF,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,SAAS,CAAkB,CAAC;AAC1D,CAAC;AAEY,QAAA,KAAK,GAAG,QAAQ,EAAE,CAAC","sourcesContent":["import comptrollerV1_0 from \"@/src/evm/comptroller/v1.0/manifest.js\";\nimport comptrollerV1_1 from \"@/src/evm/comptroller/v1.1/manifest.js\";\nimport airdropsV1_1 from \"@/src/evm/releases/airdrops/v1.1/manifest.js\";\nimport airdropsV1_2 from \"@/src/evm/releases/airdrops/v1.2/manifest.js\";\nimport airdropsV1_3 from \"@/src/evm/releases/airdrops/v1.3/manifest.js\";\nimport airdropsV2_0 from \"@/src/evm/releases/airdrops/v2.0/manifest.js\";\nimport airdropsV3_0 from \"@/src/evm/releases/airdrops/v3.0/manifest.js\";\nimport bobV1_0 from \"@/src/evm/releases/bob/v1.0/manifest.js\";\nimport flowV1_0 from \"@/src/evm/releases/flow/v1.0/manifest.js\";\nimport flowV1_1 from \"@/src/evm/releases/flow/v1.1/manifest.js\";\nimport flowV2_0 from \"@/src/evm/releases/flow/v2.0/manifest.js\";\nimport flowV3_0 from \"@/src/evm/releases/flow/v3.0/manifest.js\";\nimport legacyV1_0 from \"@/src/evm/releases/legacy/v1.0/manifest.js\";\nimport legacyV1_1 from \"@/src/evm/releases/legacy/v1.1/manifest.js\";\nimport lockupV1_0 from \"@/src/evm/releases/lockup/v1.0/manifest.js\";\nimport lockupV1_1 from \"@/src/evm/releases/lockup/v1.1/manifest.js\";\nimport lockupV1_2 from \"@/src/evm/releases/lockup/v1.2/manifest.js\";\nimport lockupV2_0 from \"@/src/evm/releases/lockup/v2.0/manifest.js\";\nimport lockupV3_0 from \"@/src/evm/releases/lockup/v3.0/manifest.js\";\nimport lockupV4_0 from \"@/src/evm/releases/lockup/v4.0/manifest.js\";\nimport type { Sablier } from \"@/src/types.js\";\n\n/**\n * Works at compile-time!\n */\ntype LeafKeys<T> = keyof T;\n\ntype A1_1 = LeafKeys<typeof airdropsV1_1>;\ntype A1_2 = LeafKeys<typeof airdropsV1_2>;\ntype A1_3 = LeafKeys<typeof airdropsV1_3>;\ntype A2_0 = LeafKeys<typeof airdropsV2_0>;\n\ntype B1_0 = LeafKeys<typeof bobV1_0>;\n\ntype C1_0 = LeafKeys<typeof comptrollerV1_0>;\ntype C1_1 = LeafKeys<typeof comptrollerV1_1>;\n\ntype F1_0 = LeafKeys<typeof flowV1_0>;\ntype F1_1 = LeafKeys<typeof flowV1_1>;\ntype F2_0 = LeafKeys<typeof flowV2_0>;\n\ntype LEGACY_1_0 = LeafKeys<typeof legacyV1_0>;\ntype LEGACY_1_1 = LeafKeys<typeof legacyV1_1>;\n\ntype L1_0 = LeafKeys<typeof lockupV1_0.core> | LeafKeys<typeof lockupV1_0.periphery>;\ntype L1_1 = LeafKeys<typeof lockupV1_1.core> | LeafKeys<typeof lockupV1_1.periphery>;\ntype L1_2 = LeafKeys<typeof lockupV1_2.core> | LeafKeys<typeof lockupV1_2.periphery>;\ntype L2_0 = LeafKeys<typeof lockupV2_0>;\ntype L3_0 = LeafKeys<typeof lockupV3_0>;\n\n// Final exported type: only these known keys allowed\ntype ContractNames = Record<\n /** Airdrops */\n | A1_1\n | A1_2\n | A1_3\n | A2_0\n\n /** Bob */\n | B1_0\n\n /** Comptroller */\n | C1_0\n | C1_1\n\n /** Flow */\n | F1_0\n | F1_1\n | F2_0\n\n /** Legacy */\n | LEGACY_1_0\n | LEGACY_1_1\n\n /** Lockup */\n | L1_0\n | L1_1\n | L1_2\n | L2_0\n | L3_0,\n /** Other */\n string\n>;\n\nfunction flatten(manifest: Sablier.EVM.Manifest): Record<string, string> {\n if (\"core\" in manifest && \"periphery\" in manifest) {\n const lockupManifest = manifest as Sablier.EVM.Manifest.LockupV1;\n return { ...lockupManifest.core, ...lockupManifest.periphery };\n }\n return { ...manifest } as Record<string, string>;\n}\n\n/**\n * Flatten & merge across all releases\n * @example\n * ```ts\n * const lockupName = names.SABLIER_LOCKUP; // \"SablierLockup\"\n * const flowName = names.SABLIER_FLOW; //\"SablierFlow\"\n * ```\n */\nfunction getNames(): ContractNames {\n const manifests = [\n airdropsV1_1,\n airdropsV1_2,\n airdropsV1_3,\n airdropsV2_0,\n airdropsV3_0,\n bobV1_0,\n comptrollerV1_0,\n comptrollerV1_1,\n flowV1_0,\n flowV1_1,\n flowV2_0,\n flowV3_0,\n legacyV1_0,\n legacyV1_1,\n lockupV1_0,\n lockupV1_1,\n lockupV1_2,\n lockupV2_0,\n lockupV3_0,\n lockupV4_0,\n ];\n\n const flattened = manifests.map(flatten);\n return Object.assign({}, ...flattened) as ContractNames;\n}\n\nexport const names = getNames();\n"]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.usesLockupSplit = exports.supportsLockupShape = exports.supportsLockupPrbProxy = exports.supportsLockupBatch = exports.isEvmReleasePayable = exports.hasSponsor = exports.hasSplitLockupArchitecture = exports.hasSimpleTransfer = exports.hasOnchainMinFee = exports.hasClaimTo = exports.getLockupReleaseFeatures = exports.getFlowReleaseFeatures = exports.getEvmReleaseFeatures = exports.getAirdropsReleaseFeatures = exports.evmReleaseFeatures = void 0;
3
+ exports.usesLockupSplit = exports.usesComptroller = exports.supportsLockupShape = exports.supportsLockupPublicWithdraw = exports.supportsLockupPrbProxy = exports.supportsLockupBatch = exports.isEvmReleasePayable = exports.hasSponsor = exports.hasSplitLockupArchitecture = exports.hasSimpleTransfer = exports.hasOnchainMinFee = exports.hasClaimTo = exports.getLockupReleaseFeatures = exports.getFlowReleaseFeatures = exports.getEvmReleaseFeatures = exports.getAirdropsReleaseFeatures = exports.evmReleaseFeatures = void 0;
4
4
  exports.getContractExplorerURL = getContractExplorerURL;
5
5
  exports.resolveEvmStreamId = resolveEvmStreamId;
6
6
  exports.resolveEvmContractByAlias = resolveEvmContractByAlias;
@@ -22,7 +22,9 @@ Object.defineProperty(exports, "hasSponsor", { enumerable: true, get: function (
22
22
  Object.defineProperty(exports, "isEvmReleasePayable", { enumerable: true, get: function () { return features_js_1.isEvmReleasePayable; } });
23
23
  Object.defineProperty(exports, "supportsLockupBatch", { enumerable: true, get: function () { return features_js_1.supportsLockupBatch; } });
24
24
  Object.defineProperty(exports, "supportsLockupPrbProxy", { enumerable: true, get: function () { return features_js_1.supportsLockupPrbProxy; } });
25
+ Object.defineProperty(exports, "supportsLockupPublicWithdraw", { enumerable: true, get: function () { return features_js_1.supportsLockupPublicWithdraw; } });
25
26
  Object.defineProperty(exports, "supportsLockupShape", { enumerable: true, get: function () { return features_js_1.supportsLockupShape; } });
27
+ Object.defineProperty(exports, "usesComptroller", { enumerable: true, get: function () { return features_js_1.usesComptroller; } });
26
28
  Object.defineProperty(exports, "usesLockupSplit", { enumerable: true, get: function () { return features_js_1.usesLockupSplit; } });
27
29
  function getContractExplorerURL(explorerURL, contractAddress) {
28
30
  return (0, explorer_url_js_1.getContractExplorerURL)(explorerURL, contractAddress);
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/evm/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["// NOTE: evm/index.ts uses explicit named re-exports instead of `export *` for\n// this module. When adding or removing a public export here, mirror the change\n// in evm/index.ts. The \"barrel re-exports every helpers symbol\" test in\n// tests/package-exports.test.ts will catch any drift.\nimport { getContractExplorerURL as getContractExplorerURLInternal } from \"@/src/internal/utils/explorer-url.js\";\nimport type { Sablier, TruncateAddressOptions } from \"@/src/types.js\";\nimport { getAliasCatalog } from \"./contracts/alias-catalog.js\";\nimport { Protocol } from \"./enums.js\";\n\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./releases/features.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupShape,\n usesLockupSplit,\n} from \"./releases/features.js\";\n\n/**\n * Get the explorer URL for a contract. Compatible with Etherscan, Blockscout, etc.\n * @param explorerURL - The base explorer URL, e.g. https://etherscan.io\n * @param contractAddress - The contract object\n * @returns The explorer URL for the contract, e.g. https://etherscan.io/address/0x123...\n */\nexport function getContractExplorerURL(explorerURL: string, contractAddress: Sablier.EVM.Address) {\n return getContractExplorerURLInternal(explorerURL, contractAddress);\n}\n\n/**\n * Constructs a stream/airdrop entity ID for EVM chains in the format used by Sablier indexers.\n * Format: `{contractAddress}-{chainId}-{tokenId}`\n *\n * The contract address is lowercased for normalization, as EVM addresses are case-insensitive.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.tokenId - Stream/airdrop token ID\n * @param opts.protocol - Optional protocol to disambiguate aliases\n * @returns Stream ID in format \"0xabc...-1-123\"\n * @example\n * resolveEvmStreamId({ alias: \"LL2\", chainId: 1, tokenId: 123n })\n * // => \"0xabc...-1-123\"\n */\nexport function resolveEvmStreamId(opts: {\n alias: string;\n chainId: number;\n tokenId: bigint | string | number;\n protocol?: Sablier.EVM.Protocol;\n}): string {\n const { alias, chainId, tokenId, protocol } = opts;\n\n const contract = resolveEvmContractByAlias({ alias, chainId, protocol });\n return `${contract.address.toLowerCase()}-${chainId}-${tokenId}`;\n}\n\n/**\n * Resolves an EVM contract by its alias from the alias catalog.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.protocol - Optional protocol to disambiguate aliases that exist in multiple protocols\n * @returns The resolved contract\n * @throws Error if alias is not found or is ambiguous without protocol specified\n * @example\n * resolveEvmContractByAlias({ alias: \"LL2\", chainId: 1 })\n * // => { address: \"0x...\", name: \"SablierLockupLinear\", ... }\n */\nexport function resolveEvmContractByAlias(opts: {\n alias: string;\n chainId: number;\n protocol?: Sablier.EVM.Protocol;\n}): Sablier.EVM.Contract {\n const { alias, chainId, protocol } = opts;\n const aliasCatalog = getAliasCatalog();\n\n if (protocol) {\n const contract = aliasCatalog[protocol]?.[chainId]?.[alias];\n if (!contract) {\n throw new Error(\n `Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId} for protocol \"${protocol}\"`\n );\n }\n return contract;\n }\n\n const protocols: Sablier.EVM.Protocol[] = [\n Protocol.Airdrops,\n Protocol.Bob,\n Protocol.Flow,\n Protocol.Legacy,\n Protocol.Lockup,\n ];\n\n const matches = protocols\n .map((p) => aliasCatalog[p]?.[chainId]?.[alias])\n .filter(Boolean) as Sablier.EVM.Contract[];\n\n if (matches.length === 0) {\n throw new Error(`Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId}`);\n }\n\n if (matches.length > 1) {\n throw new Error(\n `Sablier SDK: Ambiguous EVM contract alias \"${alias}\" on chain ${chainId}; specify protocol`\n );\n }\n\n return matches[0];\n}\n\n/**\n * Truncate an Ethereum address for display purposes.\n * @param address - The Ethereum address to truncate (0x-prefixed)\n * @param options - Truncation options with start/end character counts (default: 4 each, must be >= 1)\n * @returns Truncated address in format \"0xcafe...beef\" or original if too short\n * @example\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\") // \"0x1234...5678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 6, end: 6 }) // \"0x123456...345678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 2, end: 6 }) // \"0x12...345678\"\n * truncateEvmAddress(\"0x123\") // \"0x123\" (too short, returns original)\n */\nexport function truncateEvmAddress(\n address: Sablier.EVM.Address,\n options?: TruncateAddressOptions\n): string {\n if (!address) {\n return address;\n }\n\n const start = options?.start ?? 4;\n const end = options?.end ?? 4;\n const minLength = 2 + start + end;\n\n if (address.length <= minLength) {\n return address;\n }\n\n const prefix = address.slice(0, 2 + start);\n const suffix = end === 0 ? \"\" : address.slice(-end);\n\n return `${prefix}...${suffix}`;\n}\n"]}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/evm/helpers.ts"],"names":[],"mappings":";;;AAyCA,wDAEC;AAkBD,gDAUC;AAeD,8DAyCC;AAaD,gDAoBC;AA5JD,0EAAgH;AAEhH,mEAA+D;AAC/D,yCAAsC;AAQtC,sDAkBgC;AAjB9B,iHAAA,kBAAkB,OAAA;AAClB,yHAAA,0BAA0B,OAAA;AAC1B,oHAAA,qBAAqB,OAAA;AACrB,qHAAA,sBAAsB,OAAA;AACtB,uHAAA,wBAAwB,OAAA;AACxB,yGAAA,UAAU,OAAA;AACV,+GAAA,gBAAgB,OAAA;AAChB,gHAAA,iBAAiB,OAAA;AACjB,yHAAA,0BAA0B,OAAA;AAC1B,yGAAA,UAAU,OAAA;AACV,kHAAA,mBAAmB,OAAA;AACnB,kHAAA,mBAAmB,OAAA;AACnB,qHAAA,sBAAsB,OAAA;AACtB,2HAAA,4BAA4B,OAAA;AAC5B,kHAAA,mBAAmB,OAAA;AACnB,8GAAA,eAAe,OAAA;AACf,8GAAA,eAAe,OAAA;AASjB,SAAgB,sBAAsB,CAAC,WAAmB,EAAE,eAAoC;IAC9F,OAAO,IAAA,wCAA8B,EAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AACtE,CAAC;AAkBD,SAAgB,kBAAkB,CAAC,IAKlC;IACC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAEnD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IACzE,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;AACnE,CAAC;AAeD,SAAgB,yBAAyB,CAAC,IAIzC;IACC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IAC1C,MAAM,YAAY,GAAG,IAAA,kCAAe,GAAE,CAAC;IAEvC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,4CAA4C,KAAK,cAAc,OAAO,kBAAkB,QAAQ,GAAG,CACpG,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,SAAS,GAA2B;QACxC,mBAAQ,CAAC,QAAQ;QACjB,mBAAQ,CAAC,GAAG;QACZ,mBAAQ,CAAC,IAAI;QACb,mBAAQ,CAAC,MAAM;QACf,mBAAQ,CAAC,MAAM;KAChB,CAAC;IAEF,MAAM,OAAO,GAAG,SAAS;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;SAC/C,MAAM,CAAC,OAAO,CAA2B,CAAC;IAE7C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,4CAA4C,KAAK,cAAc,OAAO,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,8CAA8C,KAAK,cAAc,OAAO,oBAAoB,CAC7F,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAaD,SAAgB,kBAAkB,CAChC,OAA4B,EAC5B,OAAgC;IAEhC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9B,MAAM,SAAS,GAAG,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC;IAElC,IAAI,OAAO,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;IAEpD,OAAO,GAAG,MAAM,MAAM,MAAM,EAAE,CAAC;AACjC,CAAC","sourcesContent":["// NOTE: evm/index.ts uses explicit named re-exports instead of `export *` for\n// this module. When adding or removing a public export here, mirror the change\n// in evm/index.ts. The \"barrel re-exports every helpers symbol\" test in\n// tests/package-exports.test.ts will catch any drift.\nimport { getContractExplorerURL as getContractExplorerURLInternal } from \"@/src/internal/utils/explorer-url.js\";\nimport type { Sablier, TruncateAddressOptions } from \"@/src/types.js\";\nimport { getAliasCatalog } from \"./contracts/alias-catalog.js\";\nimport { Protocol } from \"./enums.js\";\n\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./releases/features.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupPublicWithdraw,\n supportsLockupShape,\n usesComptroller,\n usesLockupSplit,\n} from \"./releases/features.js\";\n\n/**\n * Get the explorer URL for a contract. Compatible with Etherscan, Blockscout, etc.\n * @param explorerURL - The base explorer URL, e.g. https://etherscan.io\n * @param contractAddress - The contract object\n * @returns The explorer URL for the contract, e.g. https://etherscan.io/address/0x123...\n */\nexport function getContractExplorerURL(explorerURL: string, contractAddress: Sablier.EVM.Address) {\n return getContractExplorerURLInternal(explorerURL, contractAddress);\n}\n\n/**\n * Constructs a stream/airdrop entity ID for EVM chains in the format used by Sablier indexers.\n * Format: `{contractAddress}-{chainId}-{tokenId}`\n *\n * The contract address is lowercased for normalization, as EVM addresses are case-insensitive.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.tokenId - Stream/airdrop token ID\n * @param opts.protocol - Optional protocol to disambiguate aliases\n * @returns Stream ID in format \"0xabc...-1-123\"\n * @example\n * resolveEvmStreamId({ alias: \"LL2\", chainId: 1, tokenId: 123n })\n * // => \"0xabc...-1-123\"\n */\nexport function resolveEvmStreamId(opts: {\n alias: string;\n chainId: number;\n tokenId: bigint | string | number;\n protocol?: Sablier.EVM.Protocol;\n}): string {\n const { alias, chainId, tokenId, protocol } = opts;\n\n const contract = resolveEvmContractByAlias({ alias, chainId, protocol });\n return `${contract.address.toLowerCase()}-${chainId}-${tokenId}`;\n}\n\n/**\n * Resolves an EVM contract by its alias from the alias catalog.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.protocol - Optional protocol to disambiguate aliases that exist in multiple protocols\n * @returns The resolved contract\n * @throws Error if alias is not found or is ambiguous without protocol specified\n * @example\n * resolveEvmContractByAlias({ alias: \"LL2\", chainId: 1 })\n * // => { address: \"0x...\", name: \"SablierLockupLinear\", ... }\n */\nexport function resolveEvmContractByAlias(opts: {\n alias: string;\n chainId: number;\n protocol?: Sablier.EVM.Protocol;\n}): Sablier.EVM.Contract {\n const { alias, chainId, protocol } = opts;\n const aliasCatalog = getAliasCatalog();\n\n if (protocol) {\n const contract = aliasCatalog[protocol]?.[chainId]?.[alias];\n if (!contract) {\n throw new Error(\n `Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId} for protocol \"${protocol}\"`\n );\n }\n return contract;\n }\n\n const protocols: Sablier.EVM.Protocol[] = [\n Protocol.Airdrops,\n Protocol.Bob,\n Protocol.Flow,\n Protocol.Legacy,\n Protocol.Lockup,\n ];\n\n const matches = protocols\n .map((p) => aliasCatalog[p]?.[chainId]?.[alias])\n .filter(Boolean) as Sablier.EVM.Contract[];\n\n if (matches.length === 0) {\n throw new Error(`Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId}`);\n }\n\n if (matches.length > 1) {\n throw new Error(\n `Sablier SDK: Ambiguous EVM contract alias \"${alias}\" on chain ${chainId}; specify protocol`\n );\n }\n\n return matches[0];\n}\n\n/**\n * Truncate an Ethereum address for display purposes.\n * @param address - The Ethereum address to truncate (0x-prefixed)\n * @param options - Truncation options with start/end character counts (default: 4 each, must be >= 1)\n * @returns Truncated address in format \"0xcafe...beef\" or original if too short\n * @example\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\") // \"0x1234...5678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 6, end: 6 }) // \"0x123456...345678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 2, end: 6 }) // \"0x12...345678\"\n * truncateEvmAddress(\"0x123\") // \"0x123\" (too short, returns original)\n */\nexport function truncateEvmAddress(\n address: Sablier.EVM.Address,\n options?: TruncateAddressOptions\n): string {\n if (!address) {\n return address;\n }\n\n const start = options?.start ?? 4;\n const end = options?.end ?? 4;\n const minLength = 2 + start + end;\n\n if (address.length <= minLength) {\n return address;\n }\n\n const prefix = address.slice(0, 2 + start);\n const suffix = end === 0 ? \"\" : address.slice(-end);\n\n return `${prefix}...${suffix}`;\n}\n"]}
@@ -36,7 +36,7 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  };
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.usesLockupSplit = exports.truncateEvmAddress = exports.supportsLockupShape = exports.supportsLockupPrbProxy = exports.supportsLockupBatch = exports.resolveEvmStreamId = exports.resolveEvmContractByAlias = exports.isEvmReleasePayable = exports.hasSponsor = exports.hasSplitLockupArchitecture = exports.hasSimpleTransfer = exports.hasOnchainMinFee = exports.hasClaimTo = exports.getLockupReleaseFeatures = exports.getFlowReleaseFeatures = exports.getEvmReleaseFeatures = exports.getContractExplorerURL = exports.getAirdropsReleaseFeatures = exports.evmReleaseFeatures = exports.csv = exports.comptroller = exports.chains = void 0;
39
+ exports.usesLockupSplit = exports.usesComptroller = exports.truncateEvmAddress = exports.supportsLockupShape = exports.supportsLockupPublicWithdraw = exports.supportsLockupPrbProxy = exports.supportsLockupBatch = exports.resolveEvmStreamId = exports.resolveEvmContractByAlias = exports.isEvmReleasePayable = exports.hasSponsor = exports.hasSplitLockupArchitecture = exports.hasSimpleTransfer = exports.hasOnchainMinFee = exports.hasClaimTo = exports.getLockupReleaseFeatures = exports.getFlowReleaseFeatures = exports.getEvmReleaseFeatures = exports.getContractExplorerURL = exports.getAirdropsReleaseFeatures = exports.evmReleaseFeatures = exports.csv = exports.comptroller = exports.chains = void 0;
40
40
  var index_js_1 = require("./chains/index.js");
41
41
  Object.defineProperty(exports, "chains", { enumerable: true, get: function () { return index_js_1.chains; } });
42
42
  __exportStar(require("./compatibility.js"), exports);
@@ -62,8 +62,10 @@ Object.defineProperty(exports, "resolveEvmContractByAlias", { enumerable: true,
62
62
  Object.defineProperty(exports, "resolveEvmStreamId", { enumerable: true, get: function () { return helpers_js_1.resolveEvmStreamId; } });
63
63
  Object.defineProperty(exports, "supportsLockupBatch", { enumerable: true, get: function () { return helpers_js_1.supportsLockupBatch; } });
64
64
  Object.defineProperty(exports, "supportsLockupPrbProxy", { enumerable: true, get: function () { return helpers_js_1.supportsLockupPrbProxy; } });
65
+ Object.defineProperty(exports, "supportsLockupPublicWithdraw", { enumerable: true, get: function () { return helpers_js_1.supportsLockupPublicWithdraw; } });
65
66
  Object.defineProperty(exports, "supportsLockupShape", { enumerable: true, get: function () { return helpers_js_1.supportsLockupShape; } });
66
67
  Object.defineProperty(exports, "truncateEvmAddress", { enumerable: true, get: function () { return helpers_js_1.truncateEvmAddress; } });
68
+ Object.defineProperty(exports, "usesComptroller", { enumerable: true, get: function () { return helpers_js_1.usesComptroller; } });
67
69
  Object.defineProperty(exports, "usesLockupSplit", { enumerable: true, get: function () { return helpers_js_1.usesLockupSplit; } });
68
70
  __exportStar(require("./releases/index.js"), exports);
69
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/evm/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAAlC,kGAAA,MAAM,OAAA;AACf,qDAAmC;AACnC,mDAAqD;AAA5C,uGAAA,WAAW,OAAA;AACpB,uDAAqC;AACrC,sDAAsC;AACtC,6CAA2B;AAe3B,2CAoBsB;AAnBpB,gHAAA,kBAAkB,OAAA;AAClB,wHAAA,0BAA0B,OAAA;AAC1B,oHAAA,sBAAsB,OAAA;AACtB,mHAAA,qBAAqB,OAAA;AACrB,oHAAA,sBAAsB,OAAA;AACtB,sHAAA,wBAAwB,OAAA;AACxB,wGAAA,UAAU,OAAA;AACV,8GAAA,gBAAgB,OAAA;AAChB,+GAAA,iBAAiB,OAAA;AACjB,wHAAA,0BAA0B,OAAA;AAC1B,wGAAA,UAAU,OAAA;AACV,iHAAA,mBAAmB,OAAA;AACnB,uHAAA,yBAAyB,OAAA;AACzB,gHAAA,kBAAkB,OAAA;AAClB,iHAAA,mBAAmB,OAAA;AACnB,oHAAA,sBAAsB,OAAA;AACtB,iHAAA,mBAAmB,OAAA;AACnB,gHAAA,kBAAkB,OAAA;AAClB,6GAAA,eAAe,OAAA;AAEjB,sDAAoC","sourcesContent":["export { chains } from \"./chains/index.js\";\nexport * from \"./compatibility.js\";\nexport { comptroller } from \"./comptroller/index.js\";\nexport * from \"./contracts/index.js\";\nexport * as csv from \"./csv/index.js\";\nexport * from \"./enums.js\";\n// Re-export the release-feature helpers explicitly from the `sablier/evm`\n// entrypoint instead of relying only on `export * from \"./helpers.js\"`.\n//\n// Some downstream type-checkers were able to see simple barrel exports such as\n// `enums`, but failed to resolve these helper names through the extra\n// `evm -> helpers -> releases/features` re-export hop. Listing them here keeps\n// the generated `dist/types/evm/index.d.ts` surface direct and easier for\n// consumers to resolve.\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./helpers.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getContractExplorerURL,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n resolveEvmContractByAlias,\n resolveEvmStreamId,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupShape,\n truncateEvmAddress,\n usesLockupSplit,\n} from \"./helpers.js\";\nexport * from \"./releases/index.js\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/evm/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAAlC,kGAAA,MAAM,OAAA;AACf,qDAAmC;AACnC,mDAAqD;AAA5C,uGAAA,WAAW,OAAA;AACpB,uDAAqC;AACrC,sDAAsC;AACtC,6CAA2B;AAe3B,2CAsBsB;AArBpB,gHAAA,kBAAkB,OAAA;AAClB,wHAAA,0BAA0B,OAAA;AAC1B,oHAAA,sBAAsB,OAAA;AACtB,mHAAA,qBAAqB,OAAA;AACrB,oHAAA,sBAAsB,OAAA;AACtB,sHAAA,wBAAwB,OAAA;AACxB,wGAAA,UAAU,OAAA;AACV,8GAAA,gBAAgB,OAAA;AAChB,+GAAA,iBAAiB,OAAA;AACjB,wHAAA,0BAA0B,OAAA;AAC1B,wGAAA,UAAU,OAAA;AACV,iHAAA,mBAAmB,OAAA;AACnB,uHAAA,yBAAyB,OAAA;AACzB,gHAAA,kBAAkB,OAAA;AAClB,iHAAA,mBAAmB,OAAA;AACnB,oHAAA,sBAAsB,OAAA;AACtB,0HAAA,4BAA4B,OAAA;AAC5B,iHAAA,mBAAmB,OAAA;AACnB,gHAAA,kBAAkB,OAAA;AAClB,6GAAA,eAAe,OAAA;AACf,6GAAA,eAAe,OAAA;AAEjB,sDAAoC","sourcesContent":["export { chains } from \"./chains/index.js\";\nexport * from \"./compatibility.js\";\nexport { comptroller } from \"./comptroller/index.js\";\nexport * from \"./contracts/index.js\";\nexport * as csv from \"./csv/index.js\";\nexport * from \"./enums.js\";\n// Re-export the release-feature helpers explicitly from the `sablier/evm`\n// entrypoint instead of relying only on `export * from \"./helpers.js\"`.\n//\n// Some downstream type-checkers were able to see simple barrel exports such as\n// `enums`, but failed to resolve these helper names through the extra\n// `evm -> helpers -> releases/features` re-export hop. Listing them here keeps\n// the generated `dist/types/evm/index.d.ts` surface direct and easier for\n// consumers to resolve.\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./helpers.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getContractExplorerURL,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n resolveEvmContractByAlias,\n resolveEvmStreamId,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupPublicWithdraw,\n supportsLockupShape,\n truncateEvmAddress,\n usesComptroller,\n usesLockupSplit,\n} from \"./helpers.js\";\nexport * from \"./releases/index.js\";\n"]}
@@ -18,22 +18,22 @@ exports.sablierMerkleLockupAbi = [
18
18
  },
19
19
  {
20
20
  inputs: [],
21
- name: "MERKLE_ROOT",
22
- outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
21
+ name: "FEE",
22
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
23
23
  stateMutability: "view",
24
24
  type: "function",
25
25
  },
26
26
  {
27
27
  inputs: [],
28
- name: "ORACLE",
29
- outputs: [{ internalType: "address", name: "", type: "address" }],
28
+ name: "LOCKUP",
29
+ outputs: [{ internalType: "contract ISablierLockup", name: "", type: "address" }],
30
30
  stateMutability: "view",
31
31
  type: "function",
32
32
  },
33
33
  {
34
34
  inputs: [],
35
- name: "SABLIER_LOCKUP",
36
- outputs: [{ internalType: "contract ISablierLockup", name: "", type: "address" }],
35
+ name: "MERKLE_ROOT",
36
+ outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
37
37
  stateMutability: "view",
38
38
  type: "function",
39
39
  },
@@ -65,13 +65,6 @@ exports.sablierMerkleLockupAbi = [
65
65
  stateMutability: "view",
66
66
  type: "function",
67
67
  },
68
- {
69
- inputs: [],
70
- name: "calculateMinFeeWei",
71
- outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
72
- stateMutability: "view",
73
- type: "function",
74
- },
75
68
  {
76
69
  inputs: [],
77
70
  name: "campaignName",
@@ -91,13 +84,6 @@ exports.sablierMerkleLockupAbi = [
91
84
  stateMutability: "payable",
92
85
  type: "function",
93
86
  },
94
- {
95
- inputs: [{ internalType: "address", name: "recipient", type: "address" }],
96
- name: "claimedStreams",
97
- outputs: [{ internalType: "uint256[]", name: "", type: "uint256[]" }],
98
- stateMutability: "view",
99
- type: "function",
100
- },
101
87
  {
102
88
  inputs: [
103
89
  { internalType: "address", name: "to", type: "address" },
@@ -117,7 +103,7 @@ exports.sablierMerkleLockupAbi = [
117
103
  },
118
104
  {
119
105
  inputs: [],
120
- name: "firstClaimTime",
106
+ name: "getFirstClaimTime",
121
107
  outputs: [{ internalType: "uint40", name: "", type: "uint40" }],
122
108
  stateMutability: "view",
123
109
  type: "function",
@@ -143,23 +129,9 @@ exports.sablierMerkleLockupAbi = [
143
129
  stateMutability: "view",
144
130
  type: "function",
145
131
  },
146
- {
147
- inputs: [{ internalType: "uint256", name: "newMinFeeUSD", type: "uint256" }],
148
- name: "lowerMinFeeUSD",
149
- outputs: [],
150
- stateMutability: "nonpayable",
151
- type: "function",
152
- },
153
132
  {
154
133
  inputs: [],
155
- name: "minFeeUSD",
156
- outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
157
- stateMutability: "view",
158
- type: "function",
159
- },
160
- {
161
- inputs: [],
162
- name: "streamShape",
134
+ name: "shape",
163
135
  outputs: [{ internalType: "string", name: "", type: "string" }],
164
136
  stateMutability: "view",
165
137
  type: "function",
@@ -171,16 +143,6 @@ exports.sablierMerkleLockupAbi = [
171
143
  stateMutability: "nonpayable",
172
144
  type: "function",
173
145
  },
174
- {
175
- anonymous: false,
176
- inputs: [
177
- { indexed: false, internalType: "uint256", name: "index", type: "uint256" },
178
- { indexed: true, internalType: "address", name: "recipient", type: "address" },
179
- { indexed: false, internalType: "uint128", name: "amount", type: "uint128" },
180
- ],
181
- name: "Claim",
182
- type: "event",
183
- },
184
146
  {
185
147
  anonymous: false,
186
148
  inputs: [
@@ -202,16 +164,6 @@ exports.sablierMerkleLockupAbi = [
202
164
  name: "Clawback",
203
165
  type: "event",
204
166
  },
205
- {
206
- anonymous: false,
207
- inputs: [
208
- { indexed: true, internalType: "address", name: "factoryAdmin", type: "address" },
209
- { indexed: false, internalType: "uint256", name: "newMinFeeUSD", type: "uint256" },
210
- { indexed: false, internalType: "uint256", name: "previousMinFeeUSD", type: "uint256" },
211
- ],
212
- name: "LowerMinFeeUSD",
213
- type: "event",
214
- },
215
167
  {
216
168
  anonymous: false,
217
169
  inputs: [
@@ -248,14 +200,6 @@ exports.sablierMerkleLockupAbi = [
248
200
  name: "SablierMerkleBase_CallerNotFactory",
249
201
  type: "error",
250
202
  },
251
- {
252
- inputs: [
253
- { internalType: "address", name: "factoryAdmin", type: "address" },
254
- { internalType: "address", name: "caller", type: "address" },
255
- ],
256
- name: "SablierMerkleBase_CallerNotFactoryAdmin",
257
- type: "error",
258
- },
259
203
  {
260
204
  inputs: [
261
205
  { internalType: "uint256", name: "blockTimestamp", type: "uint256" },
@@ -281,26 +225,18 @@ exports.sablierMerkleLockupAbi = [
281
225
  name: "SablierMerkleBase_FeeTransferFail",
282
226
  type: "error",
283
227
  },
284
- {
285
- inputs: [{ internalType: "uint256", name: "index", type: "uint256" }],
286
- name: "SablierMerkleBase_IndexClaimed",
287
- type: "error",
288
- },
289
228
  {
290
229
  inputs: [
291
230
  { internalType: "uint256", name: "feePaid", type: "uint256" },
292
- { internalType: "uint256", name: "minFeeWei", type: "uint256" },
231
+ { internalType: "uint256", name: "fee", type: "uint256" },
293
232
  ],
294
233
  name: "SablierMerkleBase_InsufficientFeePayment",
295
234
  type: "error",
296
235
  },
297
236
  { inputs: [], name: "SablierMerkleBase_InvalidProof", type: "error" },
298
237
  {
299
- inputs: [
300
- { internalType: "uint256", name: "currentMinFeeUSD", type: "uint256" },
301
- { internalType: "uint256", name: "newMinFeeUSD", type: "uint256" },
302
- ],
303
- name: "SablierMerkleBase_NewMinFeeUSDNotLower",
238
+ inputs: [{ internalType: "uint256", name: "index", type: "uint256" }],
239
+ name: "SablierMerkleBase_StreamClaimed",
304
240
  type: "error",
305
241
  },
306
242
  {
@@ -1 +1 @@
1
- {"version":3,"file":"SablierMerkleLockup.js","sourceRoot":"","sources":["../../../../../../../src/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.ts"],"names":[],"mappings":";;;AAAa,QAAA,sBAAsB,GAAG;IACpC;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjF,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC3D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC3D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACzE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YAC5D,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE;SACtE;QACD,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACzE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QACrE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YACxD,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5E,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1E,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACrE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC3D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC3D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC5E,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC/D,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACxE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3E,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YAC9E,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7E;QACD,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3E,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;YAC9E,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YAC5E,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;SAC9E;QACD,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,OAAO;KACd;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC1E,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YACvE,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7E;QACD,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,OAAO;KACd;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YACjF,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YAClF,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SACxF;QACD,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,OAAO;KACd;IACD;QACE,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7E,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE;SAC9E;QACD,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtE,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACvE,IAAI,EAAE,4BAA4B;QAClC,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,OAAO;KACd;IACD,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE;IACtD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,IAAI,EAAE,oCAAoC;QAC1C,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YAClE,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,IAAI,EAAE,yCAAyC;QAC/C,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE;YACpE,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC/D;QACD,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE;YACpE,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC9D,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE;SACnE;QACD,IAAI,EAAE,sCAAsC;QAC5C,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;YAClE,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SAChE;QACD,IAAI,EAAE,mCAAmC;QACzC,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACrE,IAAI,EAAE,gCAAgC;QACtC,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;SAChE;QACD,IAAI,EAAE,0CAA0C;QAChD,IAAI,EAAE,OAAO;KACd;IACD,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE,IAAI,EAAE,OAAO,EAAE;IACrE;QACE,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE;YACtE,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;SACnE;QACD,IAAI,EAAE,wCAAwC;QAC9C,IAAI,EAAE,OAAO;KACd;IACD;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACrE,IAAI,EAAE,0BAA0B;QAChC,IAAI,EAAE,OAAO;KACd;CACO,CAAC","sourcesContent":["export const sablierMerkleLockupAbi = [\n {\n inputs: [],\n name: \"EXPIRATION\",\n outputs: [{ internalType: \"uint40\", name: \"\", type: \"uint40\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FACTORY\",\n outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"MERKLE_ROOT\",\n outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"ORACLE\",\n outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"SABLIER_LOCKUP\",\n outputs: [{ internalType: \"contract ISablierLockup\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"STREAM_CANCELABLE\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"STREAM_TRANSFERABLE\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"TOKEN\",\n outputs: [{ internalType: \"contract IERC20\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"calculateMinFeeWei\",\n outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"campaignName\",\n outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"index\", type: \"uint256\" },\n { internalType: \"address\", name: \"recipient\", type: \"address\" },\n { internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n { internalType: \"bytes32[]\", name: \"merkleProof\", type: \"bytes32[]\" },\n ],\n name: \"claim\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"recipient\", type: \"address\" }],\n name: \"claimedStreams\",\n outputs: [{ internalType: \"uint256[]\", name: \"\", type: \"uint256[]\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"to\", type: \"address\" },\n { internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n ],\n name: \"clawback\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"factoryAdmin\", type: \"address\" }],\n name: \"collectFees\",\n outputs: [{ internalType: \"uint256\", name: \"feeAmount\", type: \"uint256\" }],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"firstClaimTime\",\n outputs: [{ internalType: \"uint40\", name: \"\", type: \"uint40\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"uint256\", name: \"index\", type: \"uint256\" }],\n name: \"hasClaimed\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"hasExpired\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"ipfsCID\",\n outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"uint256\", name: \"newMinFeeUSD\", type: \"uint256\" }],\n name: \"lowerMinFeeUSD\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"minFeeUSD\",\n outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"streamShape\",\n outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"newAdmin\", type: \"address\" }],\n name: \"transferAdmin\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: false, internalType: \"uint256\", name: \"index\", type: \"uint256\" },\n { indexed: true, internalType: \"address\", name: \"recipient\", type: \"address\" },\n { indexed: false, internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n ],\n name: \"Claim\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: false, internalType: \"uint256\", name: \"index\", type: \"uint256\" },\n { indexed: true, internalType: \"address\", name: \"recipient\", type: \"address\" },\n { indexed: false, internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n { indexed: true, internalType: \"uint256\", name: \"streamId\", type: \"uint256\" },\n ],\n name: \"Claim\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: \"address\", name: \"admin\", type: \"address\" },\n { indexed: true, internalType: \"address\", name: \"to\", type: \"address\" },\n { indexed: false, internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n ],\n name: \"Clawback\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: \"address\", name: \"factoryAdmin\", type: \"address\" },\n { indexed: false, internalType: \"uint256\", name: \"newMinFeeUSD\", type: \"uint256\" },\n { indexed: false, internalType: \"uint256\", name: \"previousMinFeeUSD\", type: \"uint256\" },\n ],\n name: \"LowerMinFeeUSD\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: \"address\", name: \"oldAdmin\", type: \"address\" },\n { indexed: true, internalType: \"address\", name: \"newAdmin\", type: \"address\" },\n ],\n name: \"TransferAdmin\",\n type: \"event\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"target\", type: \"address\" }],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"account\", type: \"address\" }],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"admin\", type: \"address\" },\n { internalType: \"address\", name: \"caller\", type: \"address\" },\n ],\n name: \"CallerNotAdmin\",\n type: \"error\",\n },\n { inputs: [], name: \"FailedInnerCall\", type: \"error\" },\n {\n inputs: [\n { internalType: \"address\", name: \"factory\", type: \"address\" },\n { internalType: \"address\", name: \"caller\", type: \"address\" },\n ],\n name: \"SablierMerkleBase_CallerNotFactory\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"factoryAdmin\", type: \"address\" },\n { internalType: \"address\", name: \"caller\", type: \"address\" },\n ],\n name: \"SablierMerkleBase_CallerNotFactoryAdmin\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"blockTimestamp\", type: \"uint256\" },\n { internalType: \"uint40\", name: \"expiration\", type: \"uint40\" },\n ],\n name: \"SablierMerkleBase_CampaignExpired\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"blockTimestamp\", type: \"uint256\" },\n { internalType: \"uint40\", name: \"expiration\", type: \"uint40\" },\n { internalType: \"uint40\", name: \"firstClaimTime\", type: \"uint40\" },\n ],\n name: \"SablierMerkleBase_ClawbackNotAllowed\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"factoryAdmin\", type: \"address\" },\n { internalType: \"uint256\", name: \"feeAmount\", type: \"uint256\" },\n ],\n name: \"SablierMerkleBase_FeeTransferFail\",\n type: \"error\",\n },\n {\n inputs: [{ internalType: \"uint256\", name: \"index\", type: \"uint256\" }],\n name: \"SablierMerkleBase_IndexClaimed\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"feePaid\", type: \"uint256\" },\n { internalType: \"uint256\", name: \"minFeeWei\", type: \"uint256\" },\n ],\n name: \"SablierMerkleBase_InsufficientFeePayment\",\n type: \"error\",\n },\n { inputs: [], name: \"SablierMerkleBase_InvalidProof\", type: \"error\" },\n {\n inputs: [\n { internalType: \"uint256\", name: \"currentMinFeeUSD\", type: \"uint256\" },\n { internalType: \"uint256\", name: \"newMinFeeUSD\", type: \"uint256\" },\n ],\n name: \"SablierMerkleBase_NewMinFeeUSDNotLower\",\n type: \"error\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"token\", type: \"address\" }],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n] as const;\n"]}
1
+ {"version":3,"file":"SablierMerkleLockup.js","sourceRoot":"","sources":["../../../../../../../src/evm/releases/airdrops/v1.3/abi/SablierMerkleLockup.ts"],"names":[],"mappings":"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","sourcesContent":["export const sablierMerkleLockupAbi = [\n {\n inputs: [],\n name: \"EXPIRATION\",\n outputs: [{ internalType: \"uint40\", name: \"\", type: \"uint40\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FACTORY\",\n outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"FEE\",\n outputs: [{ internalType: \"uint256\", name: \"\", type: \"uint256\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"LOCKUP\",\n outputs: [{ internalType: \"contract ISablierLockup\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"MERKLE_ROOT\",\n outputs: [{ internalType: \"bytes32\", name: \"\", type: \"bytes32\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"STREAM_CANCELABLE\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"STREAM_TRANSFERABLE\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"TOKEN\",\n outputs: [{ internalType: \"contract IERC20\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"admin\",\n outputs: [{ internalType: \"address\", name: \"\", type: \"address\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"campaignName\",\n outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"index\", type: \"uint256\" },\n { internalType: \"address\", name: \"recipient\", type: \"address\" },\n { internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n { internalType: \"bytes32[]\", name: \"merkleProof\", type: \"bytes32[]\" },\n ],\n name: \"claim\",\n outputs: [],\n stateMutability: \"payable\",\n type: \"function\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"to\", type: \"address\" },\n { internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n ],\n name: \"clawback\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"factoryAdmin\", type: \"address\" }],\n name: \"collectFees\",\n outputs: [{ internalType: \"uint256\", name: \"feeAmount\", type: \"uint256\" }],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"getFirstClaimTime\",\n outputs: [{ internalType: \"uint40\", name: \"\", type: \"uint40\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"uint256\", name: \"index\", type: \"uint256\" }],\n name: \"hasClaimed\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"hasExpired\",\n outputs: [{ internalType: \"bool\", name: \"\", type: \"bool\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"ipfsCID\",\n outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [],\n name: \"shape\",\n outputs: [{ internalType: \"string\", name: \"\", type: \"string\" }],\n stateMutability: \"view\",\n type: \"function\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"newAdmin\", type: \"address\" }],\n name: \"transferAdmin\",\n outputs: [],\n stateMutability: \"nonpayable\",\n type: \"function\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: false, internalType: \"uint256\", name: \"index\", type: \"uint256\" },\n { indexed: true, internalType: \"address\", name: \"recipient\", type: \"address\" },\n { indexed: false, internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n { indexed: true, internalType: \"uint256\", name: \"streamId\", type: \"uint256\" },\n ],\n name: \"Claim\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: \"address\", name: \"admin\", type: \"address\" },\n { indexed: true, internalType: \"address\", name: \"to\", type: \"address\" },\n { indexed: false, internalType: \"uint128\", name: \"amount\", type: \"uint128\" },\n ],\n name: \"Clawback\",\n type: \"event\",\n },\n {\n anonymous: false,\n inputs: [\n { indexed: true, internalType: \"address\", name: \"oldAdmin\", type: \"address\" },\n { indexed: true, internalType: \"address\", name: \"newAdmin\", type: \"address\" },\n ],\n name: \"TransferAdmin\",\n type: \"event\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"target\", type: \"address\" }],\n name: \"AddressEmptyCode\",\n type: \"error\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"account\", type: \"address\" }],\n name: \"AddressInsufficientBalance\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"admin\", type: \"address\" },\n { internalType: \"address\", name: \"caller\", type: \"address\" },\n ],\n name: \"CallerNotAdmin\",\n type: \"error\",\n },\n { inputs: [], name: \"FailedInnerCall\", type: \"error\" },\n {\n inputs: [\n { internalType: \"address\", name: \"factory\", type: \"address\" },\n { internalType: \"address\", name: \"caller\", type: \"address\" },\n ],\n name: \"SablierMerkleBase_CallerNotFactory\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"blockTimestamp\", type: \"uint256\" },\n { internalType: \"uint40\", name: \"expiration\", type: \"uint40\" },\n ],\n name: \"SablierMerkleBase_CampaignExpired\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"blockTimestamp\", type: \"uint256\" },\n { internalType: \"uint40\", name: \"expiration\", type: \"uint40\" },\n { internalType: \"uint40\", name: \"firstClaimTime\", type: \"uint40\" },\n ],\n name: \"SablierMerkleBase_ClawbackNotAllowed\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"address\", name: \"factoryAdmin\", type: \"address\" },\n { internalType: \"uint256\", name: \"feeAmount\", type: \"uint256\" },\n ],\n name: \"SablierMerkleBase_FeeTransferFail\",\n type: \"error\",\n },\n {\n inputs: [\n { internalType: \"uint256\", name: \"feePaid\", type: \"uint256\" },\n { internalType: \"uint256\", name: \"fee\", type: \"uint256\" },\n ],\n name: \"SablierMerkleBase_InsufficientFeePayment\",\n type: \"error\",\n },\n { inputs: [], name: \"SablierMerkleBase_InvalidProof\", type: \"error\" },\n {\n inputs: [{ internalType: \"uint256\", name: \"index\", type: \"uint256\" }],\n name: \"SablierMerkleBase_StreamClaimed\",\n type: \"error\",\n },\n {\n inputs: [{ internalType: \"address\", name: \"token\", type: \"address\" }],\n name: \"SafeERC20FailedOperation\",\n type: \"error\",\n },\n] as const;\n"]}
@@ -13,7 +13,9 @@ exports.hasSplitLockupArchitecture = hasSplitLockupArchitecture;
13
13
  exports.isEvmReleasePayable = isEvmReleasePayable;
14
14
  exports.supportsLockupBatch = supportsLockupBatch;
15
15
  exports.supportsLockupPrbProxy = supportsLockupPrbProxy;
16
+ exports.supportsLockupPublicWithdraw = supportsLockupPublicWithdraw;
16
17
  exports.supportsLockupShape = supportsLockupShape;
18
+ exports.usesComptroller = usesComptroller;
17
19
  const enums_js_1 = require("../../evm/enums.js");
18
20
  function deepFreeze(value) {
19
21
  if (typeof value !== "object" || value === null || Object.isFrozen(value)) {
@@ -27,20 +29,30 @@ function deepFreeze(value) {
27
29
  const emptyReleaseFeatures = deepFreeze({});
28
30
  exports.evmReleaseFeatures = deepFreeze({
29
31
  [enums_js_1.Protocol.Airdrops]: {
30
- [enums_js_1.Version.Airdrops.V1_1]: { claimTo: false, payable: false, sponsor: false },
31
- [enums_js_1.Version.Airdrops.V1_2]: { claimTo: false, payable: false, sponsor: false },
32
- [enums_js_1.Version.Airdrops.V1_3]: { claimTo: false, payable: true, sponsor: false },
33
- [enums_js_1.Version.Airdrops.V2_0]: { claimTo: true, payable: true, sponsor: false },
34
- [enums_js_1.Version.Airdrops.V3_0]: { claimTo: true, payable: true, sponsor: true },
32
+ [enums_js_1.Version.Airdrops.V1_1]: { claimTo: false, comptroller: false, payable: false, sponsor: false },
33
+ [enums_js_1.Version.Airdrops.V1_2]: { claimTo: false, comptroller: false, payable: false, sponsor: false },
34
+ [enums_js_1.Version.Airdrops.V1_3]: { claimTo: false, comptroller: false, payable: true, sponsor: false },
35
+ [enums_js_1.Version.Airdrops.V2_0]: { claimTo: true, comptroller: true, payable: true, sponsor: false },
36
+ [enums_js_1.Version.Airdrops.V3_0]: { claimTo: true, comptroller: true, payable: true, sponsor: true },
35
37
  },
36
38
  [enums_js_1.Protocol.Bob]: {
37
39
  [enums_js_1.Version.Bob.V1_0]: emptyReleaseFeatures,
38
40
  },
39
41
  [enums_js_1.Protocol.Flow]: {
40
- [enums_js_1.Version.Flow.V1_0]: { minFee: false, payable: false, simpleTransfer: false },
41
- [enums_js_1.Version.Flow.V1_1]: { minFee: false, payable: true, simpleTransfer: false },
42
- [enums_js_1.Version.Flow.V2_0]: { minFee: true, payable: true, simpleTransfer: true },
43
- [enums_js_1.Version.Flow.V3_0]: { minFee: true, payable: true, simpleTransfer: true },
42
+ [enums_js_1.Version.Flow.V1_0]: {
43
+ comptroller: false,
44
+ minFee: false,
45
+ payable: false,
46
+ simpleTransfer: false,
47
+ },
48
+ [enums_js_1.Version.Flow.V1_1]: {
49
+ comptroller: false,
50
+ minFee: false,
51
+ payable: true,
52
+ simpleTransfer: false,
53
+ },
54
+ [enums_js_1.Version.Flow.V2_0]: { comptroller: true, minFee: true, payable: true, simpleTransfer: true },
55
+ [enums_js_1.Version.Flow.V3_0]: { comptroller: true, minFee: true, payable: true, simpleTransfer: true },
44
56
  },
45
57
  [enums_js_1.Protocol.Legacy]: {
46
58
  [enums_js_1.Version.Legacy.V1_0]: emptyReleaseFeatures,
@@ -49,50 +61,62 @@ exports.evmReleaseFeatures = deepFreeze({
49
61
  [enums_js_1.Protocol.Lockup]: {
50
62
  [enums_js_1.Version.Lockup.V1_0]: {
51
63
  batch: false,
64
+ comptroller: true,
52
65
  legacyAbi: true,
53
66
  minFee: false,
54
67
  payable: false,
55
68
  prbProxy: true,
69
+ publicWithdraw: false,
56
70
  shape: false,
57
71
  },
58
72
  [enums_js_1.Version.Lockup.V1_1]: {
59
73
  batch: false,
74
+ comptroller: true,
60
75
  legacyAbi: true,
61
76
  minFee: false,
62
77
  payable: false,
63
78
  prbProxy: false,
79
+ publicWithdraw: false,
64
80
  shape: false,
65
81
  },
66
82
  [enums_js_1.Version.Lockup.V1_2]: {
67
83
  batch: false,
84
+ comptroller: false,
68
85
  legacyAbi: false,
69
86
  minFee: false,
70
87
  payable: false,
71
88
  prbProxy: false,
89
+ publicWithdraw: true,
72
90
  shape: false,
73
91
  },
74
92
  [enums_js_1.Version.Lockup.V2_0]: {
75
93
  batch: true,
94
+ comptroller: false,
76
95
  legacyAbi: false,
77
96
  minFee: false,
78
97
  payable: true,
79
98
  prbProxy: false,
99
+ publicWithdraw: true,
80
100
  shape: true,
81
101
  },
82
102
  [enums_js_1.Version.Lockup.V3_0]: {
83
103
  batch: true,
104
+ comptroller: true,
84
105
  legacyAbi: false,
85
106
  minFee: true,
86
107
  payable: true,
87
108
  prbProxy: false,
109
+ publicWithdraw: true,
88
110
  shape: true,
89
111
  },
90
112
  [enums_js_1.Version.Lockup.V4_0]: {
91
113
  batch: true,
114
+ comptroller: true,
92
115
  legacyAbi: false,
93
116
  minFee: true,
94
117
  payable: true,
95
118
  prbProxy: false,
119
+ publicWithdraw: true,
96
120
  shape: true,
97
121
  },
98
122
  },
@@ -192,7 +216,22 @@ function supportsLockupBatch(version) {
192
216
  function supportsLockupPrbProxy(version) {
193
217
  return getLockupReleaseFeatures(version)?.prbProxy ?? false;
194
218
  }
219
+ function supportsLockupPublicWithdraw(version) {
220
+ return getLockupReleaseFeatures(version)?.publicWithdraw ?? false;
221
+ }
195
222
  function supportsLockupShape(version) {
196
223
  return getLockupReleaseFeatures(version)?.shape ?? false;
197
224
  }
225
+ function usesComptroller(release) {
226
+ switch (release.protocol) {
227
+ case enums_js_1.Protocol.Airdrops:
228
+ return getAirdropsReleaseFeatures(release.version)?.comptroller ?? false;
229
+ case enums_js_1.Protocol.Flow:
230
+ return getFlowReleaseFeatures(release.version)?.comptroller ?? false;
231
+ case enums_js_1.Protocol.Lockup:
232
+ return getLockupReleaseFeatures(release.version)?.comptroller ?? false;
233
+ default:
234
+ return false;
235
+ }
236
+ }
198
237
  //# sourceMappingURL=features.js.map