@latticexyz/world-modules 2.0.0-transaction-context-324984c5 → 2.0.1-main-4a6b4598

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 (393) hide show
  1. package/dist/mud.config.d.ts +700 -222
  2. package/dist/mud.config.js +1 -1
  3. package/dist/mud.config.js.map +1 -1
  4. package/out/AccessControl.sol/AccessControl.json +1 -1
  5. package/out/AccessControlLib.sol/AccessControlLib.json +1 -1
  6. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json +0 -13
  7. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json.d.ts +0 -13
  8. package/out/AccessManagementSystem.sol/AccessManagementSystem.json +1 -1
  9. package/out/AddressArray.sol/AddressArray.json +1 -1
  10. package/out/Allowances.sol/Allowances.json +1 -1
  11. package/out/ArrayLib.sol/ArrayLib.json +1 -1
  12. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json +0 -24
  13. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json.d.ts +0 -24
  14. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.json +1 -1
  15. package/out/Balances.sol/Balances.json +1 -1
  16. package/out/Base.sol/CommonBase.json +1 -1
  17. package/out/Base.sol/ScriptBase.json +1 -1
  18. package/out/Base.sol/TestBase.json +1 -1
  19. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json +0 -13
  20. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json.d.ts +0 -13
  21. package/out/BatchCallSystem.sol/BatchCallSystem.json +1 -1
  22. package/out/Bool.sol/Bool.json +1 -1
  23. package/out/Bytes.sol/Bytes.json +1 -1
  24. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.abi.json +0 -13
  25. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.abi.json.d.ts +0 -13
  26. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +1 -1
  27. package/out/CallboundDelegations.sol/CallboundDelegations.json +1 -1
  28. package/out/DecodeSlice.sol/DecodeSlice.json +1 -1
  29. package/out/Delegation.sol/Delegation.json +1 -1
  30. package/out/DelegationControl.sol/DelegationControl.abi.json +0 -13
  31. package/out/DelegationControl.sol/DelegationControl.abi.json.d.ts +0 -13
  32. package/out/DelegationControl.sol/DelegationControl.json +1 -1
  33. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json +0 -13
  34. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json.d.ts +0 -13
  35. package/out/DelegationControlMock.sol/DelegationControlMock.json +1 -1
  36. package/out/ERC165Checker.sol/ERC165Checker.json +1 -1
  37. package/out/ERC20.t.sol/ERC20Test.json +1 -1
  38. package/out/ERC20Metadata.sol/ERC20Metadata.json +1 -1
  39. package/out/ERC20Module.sol/ERC20Module.abi.json +10 -23
  40. package/out/ERC20Module.sol/ERC20Module.abi.json.d.ts +10 -23
  41. package/out/ERC20Module.sol/ERC20Module.json +1 -1
  42. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.abi.json +10 -10
  43. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.abi.json.d.ts +10 -10
  44. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.json +1 -1
  45. package/out/ERC20Registry.sol/ERC20Registry.json +1 -1
  46. package/out/ERC20System.sol/ERC20System.abi.json +0 -13
  47. package/out/ERC20System.sol/ERC20System.abi.json.d.ts +0 -13
  48. package/out/ERC20System.sol/ERC20System.json +1 -1
  49. package/out/ERC721.t.sol/ERC721Recipient.json +1 -1
  50. package/out/ERC721.t.sol/ERC721Test.json +1 -1
  51. package/out/ERC721.t.sol/ERC721TokenReceiver.json +1 -1
  52. package/out/ERC721.t.sol/NonERC721Recipient.json +1 -1
  53. package/out/ERC721.t.sol/RevertingERC721Recipient.json +1 -1
  54. package/out/ERC721.t.sol/WrongReturnDataERC721Recipient.json +1 -1
  55. package/out/ERC721Metadata.sol/ERC721Metadata.json +1 -1
  56. package/out/ERC721Module.sol/ERC721Module.abi.json +10 -23
  57. package/out/ERC721Module.sol/ERC721Module.abi.json.d.ts +10 -23
  58. package/out/ERC721Module.sol/ERC721Module.json +1 -1
  59. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.abi.json +10 -10
  60. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.abi.json.d.ts +10 -10
  61. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.json +1 -1
  62. package/out/ERC721Registry.sol/ERC721Registry.json +1 -1
  63. package/out/ERC721System.sol/ERC721System.abi.json +0 -13
  64. package/out/ERC721System.sol/ERC721System.abi.json.d.ts +0 -13
  65. package/out/ERC721System.sol/ERC721System.json +1 -1
  66. package/out/EchoSubscriber.sol/EchoSubscriber.abi.json +4 -4
  67. package/out/EchoSubscriber.sol/EchoSubscriber.abi.json.d.ts +4 -4
  68. package/out/EchoSubscriber.sol/EchoSubscriber.json +1 -1
  69. package/out/EncodeArray.sol/EncodeArray.json +1 -1
  70. package/out/EncodedLengths.sol/EncodedLengthsInstance.json +1 -0
  71. package/out/EncodedLengths.sol/EncodedLengthsLib.json +1 -0
  72. package/out/FieldLayout.sol/FieldLayoutInstance.json +1 -1
  73. package/out/FieldLayout.sol/FieldLayoutLib.abi.json +1 -88
  74. package/out/FieldLayout.sol/FieldLayoutLib.json +1 -1
  75. package/out/FieldLayoutEncodeHelper.sol/FieldLayoutEncodeHelper.json +1 -1
  76. package/out/FunctionSelectors.sol/FunctionSelectors.json +1 -1
  77. package/out/FunctionSignatures.sol/FunctionSignatures.json +1 -1
  78. package/out/GasReporter.sol/GasReporter.json +1 -1
  79. package/out/Hook.sol/HookInstance.json +1 -1
  80. package/out/Hook.sol/HookLib.json +1 -1
  81. package/out/Hooks.sol/Hooks.json +1 -1
  82. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +1 -1
  83. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +1 -1
  84. package/out/IBaseWorld.sol/IBaseWorld.abi.json +171 -16
  85. package/out/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +171 -16
  86. package/out/IBaseWorld.sol/IBaseWorld.json +1 -1
  87. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +1 -1
  88. package/out/IDelegationControl.sol/IDelegationControl.abi.json +0 -13
  89. package/out/IDelegationControl.sol/IDelegationControl.abi.json.d.ts +0 -13
  90. package/out/IDelegationControl.sol/IDelegationControl.json +1 -1
  91. package/out/IERC20.sol/IERC20.json +1 -1
  92. package/out/IERC20Errors.sol/IERC20Errors.json +1 -1
  93. package/out/IERC20Events.sol/IERC20Events.json +1 -1
  94. package/out/IERC20Mintable.sol/IERC20Mintable.json +1 -1
  95. package/out/IERC20System.sol/IERC20System.json +1 -1
  96. package/out/IERC721.sol/IERC721.json +1 -1
  97. package/out/IERC721Errors.sol/IERC721Errors.json +1 -1
  98. package/out/IERC721Events.sol/IERC721Events.json +1 -1
  99. package/out/IERC721Metadata.sol/IERC721Metadata.json +1 -1
  100. package/out/IERC721Mintable.sol/IERC721Mintable.json +1 -1
  101. package/out/IERC721Receiver.sol/IERC721Receiver.json +1 -1
  102. package/out/{PackedCounter.sol/PackedCounterInstance.abi.json → IEncodedLengthsErrors.sol/IEncodedLengthsErrors.abi.json} +1 -1
  103. package/out/{PackedCounter.sol/PackedCounterInstance.abi.json.d.ts → IEncodedLengthsErrors.sol/IEncodedLengthsErrors.abi.json.d.ts} +1 -1
  104. package/out/IEncodedLengthsErrors.sol/IEncodedLengthsErrors.json +1 -0
  105. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json +88 -0
  106. package/out/{FieldLayout.sol/FieldLayoutLib.abi.json.d.ts → IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json.d.ts} +7 -7
  107. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.json +1 -0
  108. package/out/IModule.sol/IModule.json +1 -1
  109. package/out/IModuleErrors.sol/IModuleErrors.abi.json +28 -0
  110. package/out/IModuleErrors.sol/IModuleErrors.abi.json.d.ts +28 -0
  111. package/out/IModuleErrors.sol/IModuleErrors.json +1 -0
  112. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +1 -1
  113. package/out/IMulticall3.sol/IMulticall3.json +1 -1
  114. package/out/IPuppetFactorySystem.sol/IPuppetFactorySystem.json +1 -1
  115. package/out/IRegistrationSystem.sol/IRegistrationSystem.json +1 -1
  116. package/out/ISchemaErrors.sol/ISchemaErrors.abi.json +18 -0
  117. package/out/{Schema.sol/SchemaLib.abi.json.d.ts → ISchemaErrors.sol/ISchemaErrors.abi.json.d.ts} +2 -2
  118. package/out/ISchemaErrors.sol/ISchemaErrors.json +1 -0
  119. package/out/ISliceErrors.sol/ISliceErrors.abi.json +23 -0
  120. package/out/ISliceErrors.sol/ISliceErrors.json +1 -0
  121. package/out/IStore.sol/IStore.abi.json +145 -5
  122. package/out/IStore.sol/IStore.abi.json.d.ts +145 -5
  123. package/out/IStore.sol/IStore.json +1 -1
  124. package/out/IStoreErrors.sol/IStoreErrors.json +1 -1
  125. package/out/IStoreEvents.sol/IStoreEvents.abi.json +21 -2
  126. package/out/IStoreEvents.sol/IStoreEvents.abi.json.d.ts +21 -2
  127. package/out/IStoreEvents.sol/IStoreEvents.json +1 -1
  128. package/out/IStoreHook.sol/IStoreHook.abi.json +4 -4
  129. package/out/IStoreHook.sol/IStoreHook.abi.json.d.ts +4 -4
  130. package/out/IStoreHook.sol/IStoreHook.json +1 -1
  131. package/out/{IStoreData.sol/IStoreData.abi.json → IStoreKernel.sol/IStoreKernel.abi.json} +347 -5
  132. package/out/{IStoreData.sol/IStoreData.abi.json.d.ts → IStoreKernel.sol/IStoreKernel.abi.json.d.ts} +347 -5
  133. package/out/IStoreKernel.sol/IStoreKernel.json +1 -0
  134. package/out/IStoreRead.sol/IStoreRead.abi.json +2 -2
  135. package/out/IStoreRead.sol/IStoreRead.abi.json.d.ts +2 -2
  136. package/out/IStoreRead.sol/IStoreRead.json +1 -1
  137. package/out/IStoreRegistration.sol/IStoreRegistration.json +1 -1
  138. package/out/IStoreWrite.sol/IStoreWrite.abi.json +22 -3
  139. package/out/IStoreWrite.sol/IStoreWrite.abi.json.d.ts +22 -3
  140. package/out/IStoreWrite.sol/IStoreWrite.json +1 -1
  141. package/out/ISystemHook.sol/ISystemHook.json +1 -1
  142. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json +0 -13
  143. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json.d.ts +0 -13
  144. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +1 -1
  145. package/out/IWorldErrors.sol/IWorldErrors.abi.json +0 -11
  146. package/out/IWorldErrors.sol/IWorldErrors.abi.json.d.ts +0 -11
  147. package/out/IWorldErrors.sol/IWorldErrors.json +1 -1
  148. package/out/IWorldEvents.sol/IWorldEvents.abi.json +15 -0
  149. package/out/IWorldEvents.sol/IWorldEvents.abi.json.d.ts +15 -0
  150. package/out/IWorldEvents.sol/IWorldEvents.json +1 -0
  151. package/out/IWorldKernel.sol/IWorldCall.json +1 -1
  152. package/out/IWorldKernel.sol/IWorldKernel.abi.json +26 -11
  153. package/out/IWorldKernel.sol/IWorldKernel.abi.json.d.ts +26 -11
  154. package/out/IWorldKernel.sol/IWorldKernel.json +1 -1
  155. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +1 -1
  156. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json +3 -3
  157. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json.d.ts +3 -3
  158. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +1 -1
  159. package/out/InitModule.sol/InitModule.abi.json +10 -23
  160. package/out/InitModule.sol/InitModule.abi.json.d.ts +10 -23
  161. package/out/InitModule.sol/InitModule.json +1 -1
  162. package/out/InitModuleAddress.sol/InitModuleAddress.json +1 -1
  163. package/out/InstalledModules.sol/InstalledModules.json +1 -1
  164. package/out/KeysInTable.sol/KeysInTable.json +1 -1
  165. package/out/KeysInTableHook.sol/KeysInTableHook.abi.json +13 -7
  166. package/out/KeysInTableHook.sol/KeysInTableHook.abi.json.d.ts +13 -7
  167. package/out/KeysInTableHook.sol/KeysInTableHook.json +1 -1
  168. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json +0 -29
  169. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json.d.ts +0 -29
  170. package/out/KeysInTableModule.sol/KeysInTableModule.json +1 -1
  171. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.abi.json +6 -6
  172. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.abi.json.d.ts +6 -6
  173. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.json +1 -1
  174. package/out/KeysWithValue.sol/KeysWithValue.json +1 -1
  175. package/out/KeysWithValueHook.sol/KeysWithValueHook.abi.json +12 -6
  176. package/out/KeysWithValueHook.sol/KeysWithValueHook.abi.json.d.ts +12 -6
  177. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1 -1
  178. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json +0 -29
  179. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json.d.ts +0 -29
  180. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +1 -1
  181. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.abi.json +6 -6
  182. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.abi.json.d.ts +6 -6
  183. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.json +1 -1
  184. package/out/LimitedCallContext.sol/LimitedCallContext.json +1 -1
  185. package/out/Memory.sol/Memory.json +1 -1
  186. package/out/Module.sol/Module.abi.json +0 -13
  187. package/out/Module.sol/Module.abi.json.d.ts +0 -13
  188. package/out/Module.sol/Module.json +1 -1
  189. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json +0 -13
  190. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json.d.ts +0 -13
  191. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +1 -1
  192. package/out/NamespaceDelegationControl.sol/NamespaceDelegationControl.json +1 -1
  193. package/out/NamespaceOwner.sol/NamespaceOwner.json +1 -1
  194. package/out/OperatorApproval.sol/OperatorApproval.json +1 -1
  195. package/out/Owners.sol/Owners.json +1 -1
  196. package/out/Puppet.sol/Puppet.json +1 -1
  197. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.abi.json +0 -13
  198. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.abi.json.d.ts +0 -13
  199. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.json +1 -1
  200. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.abi.json +0 -13
  201. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.abi.json.d.ts +0 -13
  202. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.json +1 -1
  203. package/out/PuppetMaster.sol/PuppetMaster.json +1 -1
  204. package/out/PuppetModule.sol/PuppetModule.abi.json +10 -23
  205. package/out/PuppetModule.sol/PuppetModule.abi.json.d.ts +10 -23
  206. package/out/PuppetModule.sol/PuppetModule.json +1 -1
  207. package/out/PuppetModule.t.sol/PuppetModuleTest.json +1 -1
  208. package/out/PuppetModule.t.sol/PuppetTestSystem.abi.json +0 -13
  209. package/out/PuppetModule.t.sol/PuppetTestSystem.abi.json.d.ts +0 -13
  210. package/out/PuppetModule.t.sol/PuppetTestSystem.json +1 -1
  211. package/out/PuppetRegistry.sol/PuppetRegistry.json +1 -1
  212. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json +31 -49
  213. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json.d.ts +31 -49
  214. package/out/RegistrationSystem.sol/RegistrationSystem.json +1 -1
  215. package/out/ResourceAccess.sol/ResourceAccess.json +1 -1
  216. package/out/ResourceId.sol/ResourceIdInstance.json +1 -1
  217. package/out/ResourceId.sol/ResourceIdLib.json +1 -1
  218. package/out/ResourceIds.sol/ResourceIds.json +1 -1
  219. package/out/RevertSubscriber.sol/RevertSubscriber.abi.json +4 -4
  220. package/out/RevertSubscriber.sol/RevertSubscriber.abi.json.d.ts +4 -4
  221. package/out/RevertSubscriber.sol/RevertSubscriber.json +1 -1
  222. package/out/Schema.sol/SchemaInstance.json +1 -1
  223. package/out/Schema.sol/SchemaLib.abi.json +1 -18
  224. package/out/Schema.sol/SchemaLib.json +1 -1
  225. package/out/SchemaEncodeHelper.sol/SchemaEncodeHelper.json +1 -1
  226. package/out/Slice.sol/SliceInstance.json +1 -1
  227. package/out/Slice.sol/SliceLib.abi.json +1 -23
  228. package/out/Slice.sol/SliceLib.json +1 -1
  229. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json +10 -23
  230. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json.d.ts +10 -23
  231. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +1 -1
  232. package/out/StandardDelegationsModule.t.sol/StandardDelegationsModuleTest.json +1 -1
  233. package/out/StdAssertions.sol/StdAssertions.json +1 -1
  234. package/out/StdChains.sol/StdChains.json +1 -1
  235. package/out/StdCheats.sol/StdCheats.json +1 -1
  236. package/out/StdCheats.sol/StdCheatsSafe.json +1 -1
  237. package/out/StdError.sol/stdError.json +1 -1
  238. package/out/StdInvariant.sol/StdInvariant.json +1 -1
  239. package/out/StdJson.sol/stdJson.json +1 -1
  240. package/out/StdMath.sol/stdMath.json +1 -1
  241. package/out/StdStorage.sol/stdStorage.json +1 -1
  242. package/out/StdStorage.sol/stdStorageSafe.json +1 -1
  243. package/out/StdStyle.sol/StdStyle.json +1 -1
  244. package/out/StdUtils.sol/StdUtils.json +1 -1
  245. package/out/Storage.sol/Storage.json +1 -1
  246. package/out/StoreCore.sol/StoreCore.abi.json +1 -132
  247. package/out/StoreCore.sol/StoreCore.json +1 -1
  248. package/out/StoreCore.sol/StoreCoreInternal.json +1 -1
  249. package/out/StoreHook.sol/StoreHook.abi.json +4 -4
  250. package/out/StoreHook.sol/StoreHook.abi.json.d.ts +4 -4
  251. package/out/StoreHook.sol/StoreHook.json +1 -1
  252. package/out/StoreHooks.sol/StoreHooks.json +1 -1
  253. package/out/{StoreData.sol/StoreData.abi.json → StoreKernel.sol/StoreKernel.abi.json} +299 -5
  254. package/out/{StoreData.sol/StoreData.abi.json.d.ts → StoreKernel.sol/StoreKernel.abi.json.d.ts} +299 -5
  255. package/out/StoreKernel.sol/StoreKernel.json +1 -0
  256. package/out/StoreRead.sol/StoreRead.abi.json +2 -2
  257. package/out/StoreRead.sol/StoreRead.abi.json.d.ts +2 -2
  258. package/out/StoreRead.sol/StoreRead.json +1 -1
  259. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json +28 -46
  260. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json.d.ts +28 -46
  261. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +1 -1
  262. package/out/StoreSwitch.sol/StoreSwitch.json +1 -1
  263. package/out/System.sol/System.abi.json +0 -13
  264. package/out/System.sol/System.abi.json.d.ts +0 -13
  265. package/out/System.sol/System.json +1 -1
  266. package/out/SystemCall.sol/SystemCall.json +1 -1
  267. package/out/SystemHook.sol/SystemHook.json +1 -1
  268. package/out/SystemHooks.sol/SystemHooks.json +1 -1
  269. package/out/SystemRegistry.sol/SystemRegistry.json +1 -1
  270. package/out/SystemSwitch.sol/SystemSwitch.json +1 -1
  271. package/out/SystemSwitch.t.sol/EchoSystem.abi.json +0 -13
  272. package/out/SystemSwitch.t.sol/EchoSystem.abi.json.d.ts +0 -13
  273. package/out/SystemSwitch.t.sol/EchoSystem.json +1 -1
  274. package/out/SystemSwitch.t.sol/SystemSwitchTest.abi.json +0 -16
  275. package/out/SystemSwitch.t.sol/SystemSwitchTest.abi.json.d.ts +0 -16
  276. package/out/SystemSwitch.t.sol/SystemSwitchTest.json +1 -1
  277. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.abi.json +0 -13
  278. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.abi.json.d.ts +0 -13
  279. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.json +1 -1
  280. package/out/SystemboundDelegations.sol/SystemboundDelegations.json +1 -1
  281. package/out/Systems.sol/Systems.json +1 -1
  282. package/out/Tables.sol/Tables.json +1 -1
  283. package/out/Test.sol/Test.json +1 -1
  284. package/out/TightCoder.sol/TightCoder.json +1 -1
  285. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.abi.json +0 -13
  286. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.abi.json.d.ts +0 -13
  287. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +1 -1
  288. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1 -1
  289. package/out/TokenApproval.sol/TokenApproval.json +1 -1
  290. package/out/TokenURI.sol/TokenURI.json +1 -1
  291. package/out/TotalSupply.sol/TotalSupply.json +1 -1
  292. package/out/TwoFields.sol/TwoFields.json +1 -1
  293. package/out/UniqueEntity.sol/UniqueEntity.json +1 -1
  294. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json +10 -23
  295. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json.d.ts +10 -23
  296. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +1 -1
  297. package/out/UniqueEntityModule.t.sol/UniqueEntityModuleTest.json +1 -1
  298. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json +0 -13
  299. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json.d.ts +0 -13
  300. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.json +1 -1
  301. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.abi.json +0 -13
  302. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.abi.json.d.ts +0 -13
  303. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +1 -1
  304. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +1 -1
  305. package/out/UserDelegationControl.sol/UserDelegationControl.json +1 -1
  306. package/out/Vm.sol/Vm.json +1 -1
  307. package/out/Vm.sol/VmSafe.json +1 -1
  308. package/out/World.sol/World.abi.json +232 -127
  309. package/out/World.sol/World.abi.json.d.ts +232 -127
  310. package/out/World.sol/World.json +1 -1
  311. package/out/World.t.sol/EchoSystemHook.json +1 -1
  312. package/out/World.t.sol/IWorldTestSystem.json +1 -1
  313. package/out/World.t.sol/PayableFallbackSystem.abi.json +0 -13
  314. package/out/World.t.sol/PayableFallbackSystem.abi.json.d.ts +0 -13
  315. package/out/World.t.sol/PayableFallbackSystem.json +1 -1
  316. package/out/World.t.sol/RevertSystemHook.json +1 -1
  317. package/out/World.t.sol/WorldTest.abi.json +7 -7
  318. package/out/World.t.sol/WorldTest.abi.json.d.ts +7 -7
  319. package/out/World.t.sol/WorldTest.json +1 -1
  320. package/out/World.t.sol/WorldTestSystem.abi.json +1 -14
  321. package/out/World.t.sol/WorldTestSystem.abi.json.d.ts +1 -14
  322. package/out/World.t.sol/WorldTestSystem.json +1 -1
  323. package/out/WorldContext.sol/WorldContextConsumer.abi.json +0 -13
  324. package/out/WorldContext.sol/WorldContextConsumer.abi.json.d.ts +0 -13
  325. package/out/WorldContext.sol/WorldContextConsumer.json +1 -1
  326. package/out/WorldContext.sol/WorldContextConsumerLib.json +1 -1
  327. package/out/WorldContext.sol/WorldContextProviderLib.json +1 -1
  328. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json +12 -30
  329. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json.d.ts +12 -30
  330. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1 -1
  331. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +1 -1
  332. package/out/WorldResourceId.sol/WorldResourceIdLib.json +1 -1
  333. package/out/console.sol/console.json +1 -1
  334. package/out/console2.sol/console2.json +1 -1
  335. package/out/constants.sol/LayoutOffsets.json +1 -1
  336. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json +174 -19
  337. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +174 -19
  338. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +1 -1
  339. package/out/query.t.sol/QueryTest.abi.json +6 -6
  340. package/out/query.t.sol/QueryTest.abi.json.d.ts +6 -6
  341. package/out/query.t.sol/QueryTest.json +1 -1
  342. package/out/safeconsole.sol/safeconsole.json +1 -1
  343. package/out/src/IERC165.sol/IERC165.json +1 -1
  344. package/out/tables/Balances.sol/Balances.json +1 -1
  345. package/out/test.sol/DSTest.json +1 -1
  346. package/out/world/src/IERC165.sol/IERC165.json +1 -1
  347. package/package.json +8 -9
  348. package/src/index.sol +5 -5
  349. package/src/interfaces/IBaseWorld.sol +2 -3
  350. package/src/interfaces/IERC20System.sol +1 -0
  351. package/src/interfaces/IPuppetFactorySystem.sol +1 -0
  352. package/src/modules/erc20-puppet/ERC20Module.sol +1 -3
  353. package/src/modules/erc20-puppet/tables/Allowances.sol +13 -43
  354. package/src/modules/erc20-puppet/tables/ERC20Metadata.sol +24 -54
  355. package/src/modules/erc20-puppet/tables/ERC20Registry.sol +13 -42
  356. package/src/modules/erc20-puppet/tables/TotalSupply.sol +13 -41
  357. package/src/modules/erc721-puppet/ERC721Module.sol +1 -3
  358. package/src/modules/erc721-puppet/IERC721Metadata.sol +1 -0
  359. package/src/modules/erc721-puppet/IERC721Receiver.sol +1 -0
  360. package/src/modules/erc721-puppet/tables/ERC721Metadata.sol +23 -53
  361. package/src/modules/erc721-puppet/tables/ERC721Registry.sol +13 -42
  362. package/src/modules/erc721-puppet/tables/OperatorApproval.sol +13 -43
  363. package/src/modules/erc721-puppet/tables/Owners.sol +13 -42
  364. package/src/modules/erc721-puppet/tables/TokenApproval.sol +13 -42
  365. package/src/modules/erc721-puppet/tables/TokenURI.sol +15 -44
  366. package/src/modules/keysintable/KeysInTableHook.sol +3 -3
  367. package/src/modules/keysintable/KeysInTableModule.sol +13 -13
  368. package/src/modules/keysintable/query.sol +7 -7
  369. package/src/modules/keysintable/tables/KeysInTable.sol +47 -63
  370. package/src/modules/keysintable/tables/UsedKeysIndex.sol +25 -57
  371. package/src/modules/keyswithvalue/KeysWithValueHook.sol +5 -5
  372. package/src/modules/keyswithvalue/KeysWithValueModule.sol +3 -3
  373. package/src/modules/keyswithvalue/getKeysWithValue.sol +3 -3
  374. package/src/modules/keyswithvalue/tables/KeysWithValue.sol +16 -45
  375. package/src/modules/puppet/tables/PuppetRegistry.sol +13 -42
  376. package/src/modules/std-delegations/tables/CallboundDelegations.sol +15 -48
  377. package/src/modules/std-delegations/tables/SystemboundDelegations.sol +15 -47
  378. package/src/modules/std-delegations/tables/TimeboundDelegations.sol +15 -46
  379. package/src/modules/tokens/tables/Balances.sol +13 -42
  380. package/src/modules/uniqueentity/tables/UniqueEntity.sol +14 -42
  381. package/src/utils/AccessControlLib.sol +1 -0
  382. package/src/utils/SystemSwitch.sol +1 -0
  383. package/ts/scripts/tablegen.ts +2 -2
  384. package/ts/scripts/worldgen.ts +6 -5
  385. package/out/IStoreData.sol/IStoreData.json +0 -1
  386. package/out/PackedCounter.sol/PackedCounterInstance.json +0 -1
  387. package/out/PackedCounter.sol/PackedCounterLib.json +0 -1
  388. package/out/StoreCore.sol/StoreCore.abi.json.d.ts +0 -132
  389. package/out/StoreData.sol/StoreData.json +0 -1
  390. package/out/TransactionContext.sol/TransactionContext.json +0 -1
  391. /package/out/{PackedCounter.sol/PackedCounterLib.abi.json → EncodedLengths.sol/EncodedLengthsInstance.abi.json} +0 -0
  392. /package/out/{TransactionContext.sol/TransactionContext.abi.json → EncodedLengths.sol/EncodedLengthsLib.abi.json} +0 -0
  393. /package/out/{Slice.sol/SliceLib.abi.json.d.ts → ISliceErrors.sol/ISliceErrors.abi.json.d.ts} +0 -0
@@ -184,7 +184,7 @@
184
184
  {
185
185
  "name": "encodedLengths",
186
186
  "type": "bytes32",
187
- "internalType": "PackedCounter"
187
+ "internalType": "EncodedLengths"
188
188
  },
189
189
  {
190
190
  "name": "dynamicData",
@@ -294,6 +294,19 @@
294
294
  "outputs": [],
295
295
  "stateMutability": "nonpayable"
296
296
  },
297
+ {
298
+ "type": "event",
299
+ "name": "HelloStore",
300
+ "inputs": [
301
+ {
302
+ "name": "storeVersion",
303
+ "type": "bytes32",
304
+ "indexed": true,
305
+ "internalType": "bytes32"
306
+ }
307
+ ],
308
+ "anonymous": false
309
+ },
297
310
  {
298
311
  "type": "event",
299
312
  "name": "Store_DeleteRecord",
@@ -339,7 +352,7 @@
339
352
  "name": "encodedLengths",
340
353
  "type": "bytes32",
341
354
  "indexed": false,
342
- "internalType": "PackedCounter"
355
+ "internalType": "EncodedLengths"
343
356
  },
344
357
  {
345
358
  "name": "dynamicData",
@@ -366,6 +379,12 @@
366
379
  "indexed": false,
367
380
  "internalType": "bytes32[]"
368
381
  },
382
+ {
383
+ "name": "dynamicFieldIndex",
384
+ "type": "uint8",
385
+ "indexed": false,
386
+ "internalType": "uint8"
387
+ },
369
388
  {
370
389
  "name": "start",
371
390
  "type": "uint48",
@@ -382,7 +401,7 @@
382
401
  "name": "encodedLengths",
383
402
  "type": "bytes32",
384
403
  "indexed": false,
385
- "internalType": "PackedCounter"
404
+ "internalType": "EncodedLengths"
386
405
  },
387
406
  {
388
407
  "name": "data",
@@ -184,7 +184,7 @@ declare const abi: [
184
184
  {
185
185
  "name": "encodedLengths",
186
186
  "type": "bytes32",
187
- "internalType": "PackedCounter"
187
+ "internalType": "EncodedLengths"
188
188
  },
189
189
  {
190
190
  "name": "dynamicData",
@@ -294,6 +294,19 @@ declare const abi: [
294
294
  "outputs": [],
295
295
  "stateMutability": "nonpayable"
296
296
  },
297
+ {
298
+ "type": "event",
299
+ "name": "HelloStore",
300
+ "inputs": [
301
+ {
302
+ "name": "storeVersion",
303
+ "type": "bytes32",
304
+ "indexed": true,
305
+ "internalType": "bytes32"
306
+ }
307
+ ],
308
+ "anonymous": false
309
+ },
297
310
  {
298
311
  "type": "event",
299
312
  "name": "Store_DeleteRecord",
@@ -339,7 +352,7 @@ declare const abi: [
339
352
  "name": "encodedLengths",
340
353
  "type": "bytes32",
341
354
  "indexed": false,
342
- "internalType": "PackedCounter"
355
+ "internalType": "EncodedLengths"
343
356
  },
344
357
  {
345
358
  "name": "dynamicData",
@@ -366,6 +379,12 @@ declare const abi: [
366
379
  "indexed": false,
367
380
  "internalType": "bytes32[]"
368
381
  },
382
+ {
383
+ "name": "dynamicFieldIndex",
384
+ "type": "uint8",
385
+ "indexed": false,
386
+ "internalType": "uint8"
387
+ },
369
388
  {
370
389
  "name": "start",
371
390
  "type": "uint48",
@@ -382,7 +401,7 @@ declare const abi: [
382
401
  "name": "encodedLengths",
383
402
  "type": "bytes32",
384
403
  "indexed": false,
385
- "internalType": "PackedCounter"
404
+ "internalType": "EncodedLengths"
386
405
  },
387
406
  {
388
407
  "name": "data",
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"deleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"popFromDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"byteLengthToPop","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pushToDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"dataToPush","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"PackedCounter"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Store_DeleteRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"deleteRecord(bytes32,bytes32[])":"505a181d","popFromDynamicField(bytes32,bytes32[],uint8,uint256)":"d9c03a04","pushToDynamicField(bytes32,bytes32[],uint8,bytes)":"150f3262","setDynamicField(bytes32,bytes32[],uint8,bytes)":"ef6ea862","setField(bytes32,bytes32[],uint8,bytes)":"114a7266","setField(bytes32,bytes32[],uint8,bytes,bytes32)":"3708196e","setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":"298314fb","setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":"390baae0","spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":"c0a2895a","spliceStaticData(bytes32,bytes32[],uint48,bytes)":"b047c1eb"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Store_DeleteRecord(bytes32,bytes32[])\":{\"params\":{\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is deleted.\"}},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceDynamicData(bytes32,bytes32[],uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"events\":{\"Store_DeleteRecord(bytes32,bytes32[])\":{\"notice\":\"Emitted when a record is deleted from the store.\"},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":\"IStoreWrite\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf\",\"dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1\",\"dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263\",\"dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6\",\"dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2\",\"dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false}],"type":"event","name":"Store_DeleteRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"deleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"byteLengthToPop","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"popFromDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"dataToPush","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"pushToDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setStaticField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceStaticData"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/store/src/IStoreWrite.sol":"IStoreWrite"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728","urls":["bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf","dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f","urls":["bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1","dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc","urls":["bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263","dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e","urls":["bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6","dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50","urls":["bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2","dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN"],"license":"MIT"}},"version":1},"id":13}
1
+ {"abi":[{"type":"function","name":"deleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"popFromDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"byteLengthToPop","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"pushToDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"dataToPush","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"data","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"spliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"HelloStore","inputs":[{"name":"storeVersion","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"Store_DeleteRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"deleteCount","type":"uint40","indexed":false,"internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"deleteRecord(bytes32,bytes32[])":"505a181d","popFromDynamicField(bytes32,bytes32[],uint8,uint256)":"d9c03a04","pushToDynamicField(bytes32,bytes32[],uint8,bytes)":"150f3262","setDynamicField(bytes32,bytes32[],uint8,bytes)":"ef6ea862","setField(bytes32,bytes32[],uint8,bytes)":"114a7266","setField(bytes32,bytes32[],uint8,bytes,bytes32)":"3708196e","setRecord(bytes32,bytes32[],bytes,bytes32,bytes)":"298314fb","setStaticField(bytes32,bytes32[],uint8,bytes,bytes32)":"390baae0","spliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes)":"c0a2895a","spliceStaticData(bytes32,bytes32[],uint48,bytes)":"b047c1eb"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"storeVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloStore\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"events\":{\"HelloStore(bytes32)\":{\"params\":{\"storeVersion\":\"The protocol version of the Store.\"}},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"params\":{\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is deleted.\"}},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is set.\"}},\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"params\":{\"data\":\"The data to insert into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the splice operation.\",\"dynamicFieldIndex\":\"The index of the dynamic field to splice data, relative to the start of the dynamic fields. (Dynamic field index = field index - number of static fields)\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{},\"title\":\"IStoreWrite\",\"version\":1},\"userdoc\":{\"events\":{\"HelloStore(bytes32)\":{\"notice\":\"Emitted when the Store is created.\"},\"Store_DeleteRecord(bytes32,bytes32[])\":{\"notice\":\"Emitted when a record is deleted from the store.\"},\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceDynamicData(bytes32,bytes32[],uint8,uint48,uint40,bytes32,bytes)\":{\"notice\":\"Emitted when dynamic data in the store is spliced.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":\"IStoreWrite\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x167af6321dc89c2e5850e31949b1d64ab70bb1cc809daa54a030e8ff30f35411\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e4b1a2d5da7e4f79349f5257a62b4c6ffe110d6e18fe407099aec71a2f3b2539\",\"dweb:/ipfs/QmQXqehp55UecYyuYTiPBKSnuedqYybXfCCjoPPrZ2hnRw\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes32","name":"storeVersion","type":"bytes32","indexed":true}],"type":"event","name":"HelloStore","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false}],"type":"event","name":"Store_DeleteRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"uint40","name":"deleteCount","type":"uint40","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceDynamicData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function","name":"deleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"byteLengthToPop","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"popFromDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"dataToPush","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"pushToDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setDynamicField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"setRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setStaticField"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"spliceStaticData"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/store/src/IStoreWrite.sol":"IStoreWrite"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x167af6321dc89c2e5850e31949b1d64ab70bb1cc809daa54a030e8ff30f35411","urls":["bzz-raw://e4b1a2d5da7e4f79349f5257a62b4c6ffe110d6e18fe407099aec71a2f3b2539","dweb:/ipfs/QmQXqehp55UecYyuYTiPBKSnuedqYybXfCCjoPPrZ2hnRw"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"}},"version":1},"id":18}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"onAfterCallSystem","inputs":[{"name":"msgSender","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onBeforeCallSystem","inputs":[{"name":"msgSender","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceID","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"onAfterCallSystem(address,bytes32,bytes)":"973d8f99","onBeforeCallSystem(address,bytes32,bytes)":"c3323031","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onAfterCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onBeforeCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface defining system hooks for external functionality. Provides pre and post hooks that can be triggered before and after a system call respectively. This interface adheres to the ERC-165 standard for determining interface support.\",\"kind\":\"dev\",\"methods\":{\"onAfterCallSystem(address,bytes32,bytes)\":{\"details\":\"Provides the ability to add custom logic or checks after a system call completes.\",\"params\":{\"callData\":\"Data that was sent as part of the system call.\",\"msgSender\":\"The original sender of the system call.\",\"systemId\":\"The identifier for the system that was called.\"}},\"onBeforeCallSystem(address,bytes32,bytes)\":{\"details\":\"Provides the ability to add custom logic or checks before a system is invoked.\",\"params\":{\"callData\":\"Data being sent as part of the system call.\",\"msgSender\":\"The original sender of the system call.\",\"systemId\":\"The identifier for the system being called.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"title\":\"ISystemHook\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"onAfterCallSystem(address,bytes32,bytes)\":{\"notice\":\"Executes after a system call.\"},\"onBeforeCallSystem(address,bytes32,bytes)\":{\"notice\":\"Executes before a system call.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/ISystemHook.sol\":\"ISystemHook\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55\",\"dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb\",\"dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc\",\"dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74\",\"dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d\",\"dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"msgSender","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onAfterCallSystem"},{"inputs":[{"internalType":"address","name":"msgSender","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onBeforeCallSystem"},{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"onAfterCallSystem(address,bytes32,bytes)":{"details":"Provides the ability to add custom logic or checks after a system call completes.","params":{"callData":"Data that was sent as part of the system call.","msgSender":"The original sender of the system call.","systemId":"The identifier for the system that was called."}},"onBeforeCallSystem(address,bytes32,bytes)":{"details":"Provides the ability to add custom logic or checks before a system is invoked.","params":{"callData":"Data being sent as part of the system call.","msgSender":"The original sender of the system call.","systemId":"The identifier for the system being called."}},"supportsInterface(bytes4)":{"details":"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.","params":{"interfaceID":"The interface identifier, as specified in ERC-165."},"returns":{"_0":"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"onAfterCallSystem(address,bytes32,bytes)":{"notice":"Executes after a system call."},"onBeforeCallSystem(address,bytes32,bytes)":{"notice":"Executes before a system call."},"supportsInterface(bytes4)":{"notice":"Query if a contract implements an interface."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/world/src/ISystemHook.sol":"ISystemHook"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd","urls":["bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55","dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554","urls":["bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb","dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc","urls":["bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc","dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd","urls":["bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74","dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed","urls":["bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d","dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12"],"license":"MIT"}},"version":1},"id":49}
1
+ {"abi":[{"type":"function","name":"onAfterCallSystem","inputs":[{"name":"msgSender","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onBeforeCallSystem","inputs":[{"name":"msgSender","type":"address","internalType":"address"},{"name":"systemId","type":"bytes32","internalType":"ResourceId"},{"name":"callData","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceID","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"onAfterCallSystem(address,bytes32,bytes)":"973d8f99","onBeforeCallSystem(address,bytes32,bytes)":"c3323031","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onAfterCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onBeforeCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"Interface defining system hooks for external functionality. Provides pre and post hooks that can be triggered before and after a system call respectively. This interface adheres to the ERC-165 standard for determining interface support.\",\"kind\":\"dev\",\"methods\":{\"onAfterCallSystem(address,bytes32,bytes)\":{\"details\":\"Provides the ability to add custom logic or checks after a system call completes.\",\"params\":{\"callData\":\"Data that was sent as part of the system call.\",\"msgSender\":\"The original sender of the system call.\",\"systemId\":\"The identifier for the system that was called.\"}},\"onBeforeCallSystem(address,bytes32,bytes)\":{\"details\":\"Provides the ability to add custom logic or checks before a system is invoked.\",\"params\":{\"callData\":\"Data being sent as part of the system call.\",\"msgSender\":\"The original sender of the system call.\",\"systemId\":\"The identifier for the system being called.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"title\":\"ISystemHook\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"onAfterCallSystem(address,bytes32,bytes)\":{\"notice\":\"Executes after a system call.\"},\"onBeforeCallSystem(address,bytes32,bytes)\":{\"notice\":\"Executes before a system call.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/ISystemHook.sol\":\"ISystemHook\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x167af6321dc89c2e5850e31949b1d64ab70bb1cc809daa54a030e8ff30f35411\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e4b1a2d5da7e4f79349f5257a62b4c6ffe110d6e18fe407099aec71a2f3b2539\",\"dweb:/ipfs/QmQXqehp55UecYyuYTiPBKSnuedqYybXfCCjoPPrZ2hnRw\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f\",\"dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"msgSender","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onAfterCallSystem"},{"inputs":[{"internalType":"address","name":"msgSender","type":"address"},{"internalType":"ResourceId","name":"systemId","type":"bytes32"},{"internalType":"bytes","name":"callData","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onBeforeCallSystem"},{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"onAfterCallSystem(address,bytes32,bytes)":{"details":"Provides the ability to add custom logic or checks after a system call completes.","params":{"callData":"Data that was sent as part of the system call.","msgSender":"The original sender of the system call.","systemId":"The identifier for the system that was called."}},"onBeforeCallSystem(address,bytes32,bytes)":{"details":"Provides the ability to add custom logic or checks before a system is invoked.","params":{"callData":"Data being sent as part of the system call.","msgSender":"The original sender of the system call.","systemId":"The identifier for the system being called."}},"supportsInterface(bytes4)":{"details":"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.","params":{"interfaceID":"The interface identifier, as specified in ERC-165."},"returns":{"_0":"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"onAfterCallSystem(address,bytes32,bytes)":{"notice":"Executes after a system call."},"onBeforeCallSystem(address,bytes32,bytes)":{"notice":"Executes before a system call."},"supportsInterface(bytes4)":{"notice":"Query if a contract implements an interface."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/world/src/ISystemHook.sol":"ISystemHook"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x167af6321dc89c2e5850e31949b1d64ab70bb1cc809daa54a030e8ff30f35411","urls":["bzz-raw://e4b1a2d5da7e4f79349f5257a62b4c6ffe110d6e18fe407099aec71a2f3b2539","dweb:/ipfs/QmQXqehp55UecYyuYTiPBKSnuedqYybXfCCjoPPrZ2hnRw"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721","urls":["bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f","dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee","urls":["bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea","dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"}},"version":1},"id":54}
@@ -1,17 +1,4 @@
1
1
  [
2
- {
3
- "type": "function",
4
- "name": "_initialMsgSender",
5
- "inputs": [],
6
- "outputs": [
7
- {
8
- "name": "",
9
- "type": "address",
10
- "internalType": "address"
11
- }
12
- ],
13
- "stateMutability": "view"
14
- },
15
2
  {
16
3
  "type": "function",
17
4
  "name": "_msgSender",
@@ -1,17 +1,4 @@
1
1
  declare const abi: [
2
- {
3
- "type": "function",
4
- "name": "_initialMsgSender",
5
- "inputs": [],
6
- "outputs": [
7
- {
8
- "name": "",
9
- "type": "address",
10
- "internalType": "address"
11
- }
12
- ],
13
- "stateMutability": "view"
14
- },
15
2
  {
16
3
  "type": "function",
17
4
  "name": "_msgSender",
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"_initialMsgSender","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceID","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"_initialMsgSender()":"9081c758","_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"_initialMsgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This contract should only be used for contracts without their own storage, like Systems.\",\"kind\":\"dev\",\"methods\":{\"_initialMsgSender()\":{\"returns\":{\"_0\":\"The `msg.sender` that made the first call to World in this transaction\"}},\"_msgSender()\":{\"returns\":{\"_0\":\"The address of the `msg.sender` that called the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"_0\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"title\":\"WorldContextConsumer - Extracting trusted context values from appended calldata.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"_initialMsgSender()\":{\"notice\":\"Extract the `msg.sender` from TransactionContext (mutex in World.sol on `call` and `callFrom` methods)\"},\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"notice\":\"This contract is designed to extract trusted context values (like msg.sender and msg.value) from the appended calldata. It provides mechanisms similar to EIP-2771 (https://eips.ethereum.org/EIPS/eip-2771), but allowing any contract to be the trusted forwarder.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":\"IWorldContextConsumer\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0x61392feda0588aba0f72be7c44c65d9115604b5f3d61a79a716d2cc78906bb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7cd374cc3c8b05140aa54d712cbd541a51fc7cb4065f7bfc172f64169c1a818a\",\"dweb:/ipfs/QmcsHDhXQFUDB5vf8kES61teypHLuMxNdheat9TN8wY9so\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"_initialMsgSender","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"_initialMsgSender()":{"returns":{"_0":"The `msg.sender` that made the first call to World in this transaction"}},"_msgSender()":{"returns":{"_0":"The address of the `msg.sender` that called the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"_0":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"supportsInterface(bytes4)":{"details":"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.","params":{"interfaceID":"The interface identifier, as specified in ERC-165."},"returns":{"_0":"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"_initialMsgSender()":{"notice":"Extract the `msg.sender` from TransactionContext (mutex in World.sol on `call` and `callFrom` methods)"},"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"supportsInterface(bytes4)":{"notice":"Query if a contract implements an interface."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":"IWorldContextConsumer"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0x61392feda0588aba0f72be7c44c65d9115604b5f3d61a79a716d2cc78906bb01","urls":["bzz-raw://7cd374cc3c8b05140aa54d712cbd541a51fc7cb4065f7bfc172f64169c1a818a","dweb:/ipfs/QmcsHDhXQFUDB5vf8kES61teypHLuMxNdheat9TN8wY9so"],"license":"MIT"}},"version":1},"id":50}
1
+ {"abi":[{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceID","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"This contract should only be used for contracts without their own storage, like Systems.\",\"kind\":\"dev\",\"methods\":{\"_msgSender()\":{\"returns\":{\"_0\":\"The address of the `msg.sender` that called the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"_0\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"title\":\"WorldContextConsumer - Extracting trusted context values from appended calldata.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"notice\":\"This contract is designed to extract trusted context values (like msg.sender and msg.value) from the appended calldata. It provides mechanisms similar to EIP-2771 (https://eips.ethereum.org/EIPS/eip-2771), but allowing any contract to be the trusted forwarder.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":\"IWorldContextConsumer\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255\",\"dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceID","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"_0":"The address of the `msg.sender` that called the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"_0":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"supportsInterface(bytes4)":{"details":"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.","params":{"interfaceID":"The interface identifier, as specified in ERC-165."},"returns":{"_0":"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"supportsInterface(bytes4)":{"notice":"Query if a contract implements an interface."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":"IWorldContextConsumer"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299","urls":["bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255","dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x"],"license":"MIT"}},"version":1},"id":55}
@@ -47,17 +47,6 @@
47
47
  }
48
48
  ]
49
49
  },
50
- {
51
- "type": "error",
52
- "name": "World_DirectCallToSystemForbidden",
53
- "inputs": [
54
- {
55
- "name": "caller",
56
- "type": "address",
57
- "internalType": "address"
58
- }
59
- ]
60
- },
61
50
  {
62
51
  "type": "error",
63
52
  "name": "World_FunctionSelectorAlreadyExists",
@@ -47,17 +47,6 @@ declare const abi: [
47
47
  }
48
48
  ]
49
49
  },
50
- {
51
- "type": "error",
52
- "name": "World_DirectCallToSystemForbidden",
53
- "inputs": [
54
- {
55
- "name": "caller",
56
- "type": "address",
57
- "internalType": "address"
58
- }
59
- ]
60
- },
61
50
  {
62
51
  "type": "error",
63
52
  "name": "World_FunctionSelectorAlreadyExists",