lens-modules 3.1.6 → 3.1.7

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 (144) hide show
  1. package/LICENSE +674 -19
  2. package/contracts/actions/account/TippingAccountAction.sol +1 -2
  3. package/contracts/actions/account/base/BaseAccountAction.sol +1 -2
  4. package/contracts/actions/account/base/OwnableMetadataBasedAccountAction.sol +1 -2
  5. package/contracts/actions/base/BaseAction.sol +1 -2
  6. package/contracts/actions/post/TippingPostAction.sol +1 -2
  7. package/contracts/actions/post/base/BasePostAction.sol +1 -2
  8. package/contracts/actions/post/base/OwnableMetadataBasedPostAction.sol +1 -2
  9. package/contracts/actions/post/collect/IERC7572.sol +1 -2
  10. package/contracts/actions/post/collect/ISimpleCollectAction.sol +1 -2
  11. package/contracts/actions/post/collect/LensCollectedPost.sol +1 -2
  12. package/contracts/actions/post/collect/SimpleCollectAction.sol +1 -2
  13. package/contracts/core/access/AccessControlled.sol +1 -2
  14. package/contracts/core/access/Ownable.sol +1 -2
  15. package/contracts/core/access/RoleBasedAccessControl.sol +1 -2
  16. package/contracts/core/base/BaseSource.sol +1 -2
  17. package/contracts/core/base/LensERC721.sol +1 -2
  18. package/contracts/core/base/RuleBasedPrimitive.sol +1 -2
  19. package/contracts/core/interfaces/IAccessControl.sol +1 -2
  20. package/contracts/core/interfaces/IAccessControlled.sol +1 -2
  21. package/contracts/core/interfaces/IAccountGroupAdditionSettings.sol +1 -2
  22. package/contracts/core/interfaces/IERC4906Events.sol +1 -2
  23. package/contracts/core/interfaces/IERC721Namespace.sol +1 -2
  24. package/contracts/core/interfaces/IFeed.sol +1 -2
  25. package/contracts/core/interfaces/IFeedRule.sol +1 -2
  26. package/contracts/core/interfaces/IFollowRule.sol +1 -2
  27. package/contracts/core/interfaces/IGraph.sol +1 -2
  28. package/contracts/core/interfaces/IGraphRule.sol +1 -2
  29. package/contracts/core/interfaces/IGroup.sol +1 -2
  30. package/contracts/core/interfaces/IGroupRule.sol +1 -2
  31. package/contracts/core/interfaces/ILock.sol +1 -2
  32. package/contracts/core/interfaces/IMetadataBased.sol +1 -2
  33. package/contracts/core/interfaces/INamespace.sol +1 -2
  34. package/contracts/core/interfaces/INamespaceRule.sol +1 -2
  35. package/contracts/core/interfaces/IOwnable.sol +1 -2
  36. package/contracts/core/interfaces/IPostRule.sol +1 -2
  37. package/contracts/core/interfaces/IRequestBasedGroupRule.sol +1 -2
  38. package/contracts/core/interfaces/IRoleBasedAccessControl.sol +1 -2
  39. package/contracts/core/interfaces/ISource.sol +1 -2
  40. package/contracts/core/interfaces/ITokenURIProvider.sol +1 -2
  41. package/contracts/core/interfaces/IVersionedBeacon.sol +1 -2
  42. package/contracts/core/libraries/AccessControlLib.sol +1 -2
  43. package/contracts/core/libraries/CallLib.sol +1 -2
  44. package/contracts/core/libraries/EIP712EncodingLib.sol +1 -2
  45. package/contracts/core/libraries/KeyValueLib.sol +1 -2
  46. package/contracts/core/libraries/KeyValueStorageLib.sol +1 -2
  47. package/contracts/core/libraries/RulesLib.sol +1 -2
  48. package/contracts/core/primitives/feed/Feed.sol +1 -2
  49. package/contracts/core/primitives/feed/FeedCore.sol +1 -2
  50. package/contracts/core/primitives/feed/RuleBasedFeed.sol +1 -2
  51. package/contracts/core/primitives/graph/Graph.sol +1 -2
  52. package/contracts/core/primitives/graph/GraphCore.sol +1 -2
  53. package/contracts/core/primitives/graph/RuleBasedGraph.sol +1 -2
  54. package/contracts/core/primitives/group/Group.sol +1 -2
  55. package/contracts/core/primitives/group/GroupCore.sol +1 -2
  56. package/contracts/core/primitives/group/RuleBasedGroup.sol +1 -2
  57. package/contracts/core/primitives/namespace/LensUsernameTokenURIProvider.sol +1 -2
  58. package/contracts/core/primitives/namespace/Namespace.sol +1 -2
  59. package/contracts/core/primitives/namespace/NamespaceCore.sol +1 -2
  60. package/contracts/core/primitives/namespace/RuleBasedNamespace.sol +1 -2
  61. package/contracts/core/types/Constants.sol +1 -2
  62. package/contracts/core/types/Errors.sol +1 -2
  63. package/contracts/core/types/Events.sol +1 -2
  64. package/contracts/core/types/Types.sol +1 -2
  65. package/contracts/core/upgradeability/Beacon.sol +1 -2
  66. package/contracts/core/upgradeability/BeaconProxy.sol +1 -2
  67. package/contracts/core/upgradeability/EmptyImplementation.sol +1 -2
  68. package/contracts/core/upgradeability/Initializable.sol +1 -2
  69. package/contracts/core/upgradeability/LegacyBeaconProxy.sol +1 -2
  70. package/contracts/core/upgradeability/LensCreate2.sol +1 -2
  71. package/contracts/core/upgradeability/Lock.sol +1 -2
  72. package/contracts/core/upgradeability/ProxyAdmin.sol +1 -2
  73. package/contracts/extensions/access/OwnerAdminOnlyAccessControl.sol +1 -2
  74. package/contracts/extensions/access/PermissionlessAccessControl.sol +1 -2
  75. package/contracts/extensions/account/Account.sol +1 -2
  76. package/contracts/extensions/account/IAccount.sol +1 -2
  77. package/contracts/extensions/actions/ActionHub.sol +1 -2
  78. package/contracts/extensions/factories/AccessControlFactory.sol +1 -2
  79. package/contracts/extensions/factories/AccountFactory.sol +1 -2
  80. package/contracts/extensions/factories/AppFactory.sol +1 -2
  81. package/contracts/extensions/factories/FeedFactory.sol +1 -2
  82. package/contracts/extensions/factories/GraphFactory.sol +1 -2
  83. package/contracts/extensions/factories/GroupFactory.sol +1 -2
  84. package/contracts/extensions/factories/LensFactory.sol +1 -2
  85. package/contracts/extensions/factories/NamespaceFactory.sol +1 -2
  86. package/contracts/extensions/factories/PrimitiveFactory.sol +1 -2
  87. package/contracts/extensions/fees/LensFees.sol +1 -2
  88. package/contracts/extensions/fees/LensNativePaymentHelper.sol +1 -2
  89. package/contracts/extensions/fees/LensPaymentHandler.sol +1 -2
  90. package/contracts/extensions/fees/LensRulePaymentHandler.sol +1 -2
  91. package/contracts/extensions/misc/TokenDistributor.sol +1 -2
  92. package/contracts/extensions/primitives/app/App.sol +1 -2
  93. package/contracts/extensions/primitives/app/AppCore.sol +1 -2
  94. package/contracts/extensions/primitives/app/IApp.sol +1 -2
  95. package/contracts/migration/WhitelistedAddresses.sol +1 -2
  96. package/contracts/migration/factories/MigrationAccessControlFactory.sol +1 -2
  97. package/contracts/migration/factories/MigrationAccountFactory.sol +1 -2
  98. package/contracts/migration/factories/MigrationAppFactory.sol +1 -2
  99. package/contracts/migration/factories/MigrationFeedFactory.sol +1 -2
  100. package/contracts/migration/factories/MigrationGraphFactory.sol +1 -2
  101. package/contracts/migration/factories/MigrationLensFactory.sol +1 -2
  102. package/contracts/migration/factories/MigrationNamespaceFactory.sol +1 -2
  103. package/contracts/migration/primitives/MigrationAccount.sol +1 -2
  104. package/contracts/migration/primitives/MigrationApp.sol +1 -2
  105. package/contracts/migration/primitives/MigrationFeed.sol +1 -2
  106. package/contracts/migration/primitives/MigrationGraph.sol +1 -2
  107. package/contracts/migration/primitives/MigrationNamespace.sol +1 -2
  108. package/contracts/rules/AccountBlockingRule.sol +1 -2
  109. package/contracts/rules/base/OwnableMetadataBasedRule.sol +1 -2
  110. package/contracts/rules/base/RestrictedSignersRule.sol +1 -2
  111. package/contracts/rules/base/SimplePaymentRule.sol +1 -2
  112. package/contracts/rules/base/TokenGatedRule.sol +1 -2
  113. package/contracts/rules/base/TrustBasedRule.sol +1 -2
  114. package/contracts/rules/feed/GroupGatedFeedRule.sol +1 -2
  115. package/contracts/rules/feed/RestrictedSignersFeedRule.sol +1 -2
  116. package/contracts/rules/feed/SimplePaymentFeedRule.sol +1 -2
  117. package/contracts/rules/feed/TokenGatedFeedRule.sol +1 -2
  118. package/contracts/rules/follow/SimplePaymentFollowRule.sol +1 -2
  119. package/contracts/rules/follow/TokenGatedFollowRule.sol +1 -2
  120. package/contracts/rules/graph/GroupGatedGraphRule.sol +1 -2
  121. package/contracts/rules/graph/RestrictedSignersGraphRule.sol +1 -2
  122. package/contracts/rules/graph/TokenGatedGraphRule.sol +1 -2
  123. package/contracts/rules/group/AdditionRemovalPidGroupRule.sol +1 -2
  124. package/contracts/rules/group/BanMemberGroupRule.sol +1 -2
  125. package/contracts/rules/group/MembershipApprovalGroupRule.sol +1 -2
  126. package/contracts/rules/group/SimplePaymentGroupRule.sol +1 -2
  127. package/contracts/rules/group/TokenGatedGroupRule.sol +1 -2
  128. package/contracts/rules/namespace/SimplePaymentNamespaceRule.sol +1 -2
  129. package/contracts/rules/namespace/TokenGatedNamespaceRule.sol +1 -2
  130. package/contracts/rules/namespace/UsernameCharsetNamespaceRule.sol +1 -2
  131. package/contracts/rules/namespace/UsernameLengthNamespaceRule.sol +1 -2
  132. package/contracts/rules/namespace/UsernamePricePerLengthNamespaceRule.sol +1 -2
  133. package/contracts/rules/namespace/UsernameReservedNamespaceRule.sol +1 -2
  134. package/contracts/rules/namespace/UsernameSimpleCharsetNamespaceRule.sol +1 -2
  135. package/contracts/rules/post/FollowersOnlyPostRule.sol +1 -2
  136. package/dist/index.cjs +1 -1
  137. package/dist/index.d.cts +0 -2
  138. package/dist/index.d.ts +0 -2
  139. package/dist/index.js +1 -1
  140. package/package.json +2 -2
  141. package/dist/utils.cjs +0 -1
  142. package/dist/utils.d.cts +0 -31
  143. package/dist/utils.d.ts +0 -31
  144. package/dist/utils.js +0 -1
package/dist/utils.d.ts DELETED
@@ -1,31 +0,0 @@
1
- import { Hex } from 'viem';
2
-
3
- interface DecodedAction {
4
- target: string;
5
- contractType?: string;
6
- action: string;
7
- data?: Hex;
8
- parameters?: Record<string, any>;
9
- rawData?: string;
10
- selector?: string;
11
- error?: string;
12
- transactionIndex?: number;
13
- }
14
- interface DecodedTransaction {
15
- type?: string;
16
- target?: string;
17
- value?: string;
18
- data?: string;
19
- transactions?: Transaction[];
20
- decodedActions: DecodedAction[];
21
- error?: string;
22
- calldata?: string;
23
- }
24
- interface Transaction {
25
- target: string;
26
- value: string;
27
- data: string;
28
- }
29
- declare function decodeDelegatedTransaction(calldata: Hex): DecodedTransaction;
30
-
31
- export { decodeDelegatedTransaction };
package/dist/utils.js DELETED
@@ -1 +0,0 @@
1
- import{decodeFunctionData,parseAbi}from"viem";import{accountAbi,feedAbi,graphAbi,groupAbi,namespaceAbi,appAbi}from"./abis";const functionMap=new Map;function addFunctionsToMap(abi,contractName){abi.forEach(item=>{if(item.type==="function"&&item.name){functionMap.set(item.name,{abi:[item],contractName,functionName:item.name})}})}addFunctionsToMap([...accountAbi],"Account");addFunctionsToMap([...feedAbi],"Feed");addFunctionsToMap([...graphAbi],"Graph");addFunctionsToMap([...groupAbi],"Group");addFunctionsToMap([...namespaceAbi],"Namespace");addFunctionsToMap([...appAbi],"App");function decodeDelegatedTransaction(calldata){try{try{const executeTransactionAbi=parseAbi(["function executeTransaction(address target, uint256 value, bytes data) returns (bytes)"]);const decoded=decodeFunctionData({abi:executeTransactionAbi,data:calldata});if(decoded.functionName==="executeTransaction"){const result={type:"executeTransaction",target:decoded.args[0],value:decoded.args[1].toString(),data:decoded.args[2],decodedActions:[]};const innerAction=decodeInnerAction(decoded.args[0],decoded.args[2]);if(innerAction){result.decodedActions.push(innerAction)}return result}}catch{}try{const executeTransactionsAbi=parseAbi(["function executeTransactions((address target, uint256 value, bytes data)[] transactions) returns (bytes[])"]);const decoded=decodeFunctionData({abi:executeTransactionsAbi,data:calldata});if(decoded.functionName==="executeTransactions"){const result={type:"executeTransactions",transactions:decoded.args[0].map(tx=>({target:tx.target,value:tx.value.toString(),data:tx.data})),decodedActions:[]};decoded.args[0].forEach((tx,index)=>{const innerAction=decodeInnerAction(tx.target,tx.data);if(innerAction){result.decodedActions.push({transactionIndex:index,...innerAction})}});return result}}catch{}return{error:"Could not decode as executeTransaction or executeTransactions",calldata,decodedActions:[]}}catch(error){return{error:`Decoding failed: ${error.message}`,calldata,decodedActions:[]}}}function decodeInnerAction(target,data){try{if(!data||data==="0x"){return{target,action:"raw_transaction",data:data||"0x"}}const selector=data.slice(0,10);const commonFunctions=["createPost","follow","unfollow","addToGroup","removeFromGroup","createGraph","createGroup","createFeed","createApp","mintUsername","tip","collect"];for(const funcName of commonFunctions){if(functionMap.has(funcName)){try{const{abi,contractName}=functionMap.get(funcName);const decoded=decodeFunctionData({abi,data});if(decoded.functionName===funcName){return{target,contractType:contractName,action:funcName,parameters:formatParameters([...decoded.args],abi[0].inputs||[]),rawData:data}}}catch{}}}const abiSets=[{abi:feedAbi,name:"Feed"},{abi:graphAbi,name:"Graph"},{abi:groupAbi,name:"Group"},{abi:namespaceAbi,name:"Namespace"},{abi:appAbi,name:"App"},{abi:accountAbi,name:"Account"}];for(const{abi,name}of abiSets){if(!abi||!abi.length)continue;try{const decoded=decodeFunctionData({abi,data});return{target,contractType:name,action:decoded.functionName,parameters:formatParameters([...decoded.args],abi.filter(item=>item.type==="function").find(item=>item.name===decoded.functionName)?.inputs||[]),rawData:data}}catch{}}return{target,action:"unknown_function",selector,data,error:"Could not decode function call"}}catch(error){return{target,action:"decode_error",error:error.message,data}}}function formatParameters(args,inputs){if(!args||!inputs)return{};const formatted={};inputs.forEach((input,index)=>{if(index>=args.length)return;const value=args[index];try{if(input.type==="address"){formatted[input.name]=value}else if(input.type.includes("uint")||input.type.includes("int")){formatted[input.name]=typeof value==="bigint"?value.toString():String(value)}else if(input.type==="bool"){formatted[input.name]=Boolean(value)}else if(input.type==="string"){formatted[input.name]=String(value)}else if(input.type==="bytes"||input.type.startsWith("bytes")){formatted[input.name]=value}else if(input.type==="tuple"){formatted[input.name]=formatTupleParameters(value,input.components||[])}else if(input.type==="tuple[]"){formatted[input.name]=Array.isArray(value)?value.map(v=>formatTupleParameters(v,input.components||[])):[]}else if(input.type.includes("[]")){formatted[input.name]=Array.isArray(value)?value.map(v=>typeof v==="bigint"?v.toString():v):value}else{formatted[input.name]=value}}catch(error){formatted[input.name]=`<formatting error: ${error.message}>`}});return formatted}function formatTupleParameters(tupleValue,components){if(!tupleValue||!components)return{};const formatted={};components.forEach((component,index)=>{const value=tupleValue[component.name]!==void 0?tupleValue[component.name]:tupleValue[index];try{if(component.type==="address"){formatted[component.name]=value}else if(component.type.includes("uint")||component.type.includes("int")){formatted[component.name]=typeof value==="bigint"?value.toString():String(value)}else if(component.type==="bool"){formatted[component.name]=Boolean(value)}else if(component.type==="string"){formatted[component.name]=String(value)}else if(component.type==="bytes"||component.type.startsWith("bytes")){formatted[component.name]=value}else if(component.type==="tuple"){formatted[component.name]=formatTupleParameters(value,component.components||[])}else if(component.type==="tuple[]"){formatted[component.name]=Array.isArray(value)?value.map(v=>formatTupleParameters(v,component.components||[])):[]}else if(component.type.includes("[]")){formatted[component.name]=Array.isArray(value)?value.map(v=>typeof v==="bigint"?v.toString():v):value}else{formatted[component.name]=value}}catch(error){formatted[component.name]=`<formatting error: ${error.message}>`}});return formatted}export{decodeDelegatedTransaction};