@geoprotocol/geo-sdk 0.18.3 → 0.19.1

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 (360) hide show
  1. package/README.md +995 -372
  2. package/dist/contracts.d.ts +0 -11
  3. package/dist/contracts.d.ts.map +1 -1
  4. package/dist/contracts.js +0 -11
  5. package/dist/contracts.js.map +1 -1
  6. package/dist/index.d.ts +8 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +8 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/lite.d.ts +2 -0
  11. package/dist/lite.d.ts.map +1 -1
  12. package/dist/lite.js +2 -0
  13. package/dist/lite.js.map +1 -1
  14. package/dist/src/abis/dao-space-factory.d.ts +43 -6
  15. package/dist/src/abis/dao-space-factory.d.ts.map +1 -1
  16. package/dist/src/abis/dao-space-factory.js +38 -27
  17. package/dist/src/abis/dao-space-factory.js.map +1 -1
  18. package/dist/src/abis/dao-space-v2.test.d.ts +2 -0
  19. package/dist/src/abis/dao-space-v2.test.d.ts.map +1 -0
  20. package/dist/src/abis/dao-space-v2.test.js +67 -0
  21. package/dist/src/abis/dao-space-v2.test.js.map +1 -0
  22. package/dist/src/abis/dao-space.d.ts +98 -7
  23. package/dist/src/abis/dao-space.d.ts.map +1 -1
  24. package/dist/src/abis/dao-space.js +61 -99
  25. package/dist/src/abis/dao-space.js.map +1 -1
  26. package/dist/src/abis/index.d.ts +2 -2
  27. package/dist/src/abis/index.d.ts.map +1 -1
  28. package/dist/src/abis/index.js +2 -2
  29. package/dist/src/abis/index.js.map +1 -1
  30. package/dist/src/abis/space-registry.d.ts +26 -0
  31. package/dist/src/abis/space-registry.d.ts.map +1 -1
  32. package/dist/src/abis/space-registry.js +33 -0
  33. package/dist/src/abis/space-registry.js.map +1 -1
  34. package/dist/src/api-surface.e2e.test.d.ts +2 -0
  35. package/dist/src/api-surface.e2e.test.d.ts.map +1 -0
  36. package/dist/src/api-surface.e2e.test.js +1206 -0
  37. package/dist/src/api-surface.e2e.test.js.map +1 -0
  38. package/dist/src/client/api.d.ts +86 -0
  39. package/dist/src/client/api.d.ts.map +1 -0
  40. package/dist/src/client/api.js +169 -0
  41. package/dist/src/client/api.js.map +1 -0
  42. package/dist/src/client/comments.d.ts +59 -0
  43. package/dist/src/client/comments.d.ts.map +1 -0
  44. package/dist/src/client/comments.js +96 -0
  45. package/dist/src/client/comments.js.map +1 -0
  46. package/dist/src/client/context.d.ts +20 -0
  47. package/dist/src/client/context.d.ts.map +1 -0
  48. package/dist/src/client/context.js +20 -0
  49. package/dist/src/client/context.js.map +1 -0
  50. package/dist/src/client/dao-spaces.d.ts +408 -0
  51. package/dist/src/client/dao-spaces.d.ts.map +1 -0
  52. package/dist/src/client/dao-spaces.js +626 -0
  53. package/dist/src/client/dao-spaces.js.map +1 -0
  54. package/dist/src/client/dao-spaces.test.d.ts +2 -0
  55. package/dist/src/client/dao-spaces.test.d.ts.map +1 -0
  56. package/dist/src/client/dao-spaces.test.js +497 -0
  57. package/dist/src/client/dao-spaces.test.js.map +1 -0
  58. package/dist/src/client/edits.d.ts +100 -0
  59. package/dist/src/client/edits.d.ts.map +1 -0
  60. package/dist/src/client/edits.js +131 -0
  61. package/dist/src/client/edits.js.map +1 -0
  62. package/dist/src/client/edits.test.d.ts +2 -0
  63. package/dist/src/client/edits.test.d.ts.map +1 -0
  64. package/dist/src/client/edits.test.js +98 -0
  65. package/dist/src/client/edits.test.js.map +1 -0
  66. package/dist/src/client/entities.d.ts +23 -0
  67. package/dist/src/client/entities.d.ts.map +1 -0
  68. package/dist/src/client/entities.js +88 -0
  69. package/dist/src/client/entities.js.map +1 -0
  70. package/dist/src/client/entity-votes.d.ts +141 -0
  71. package/dist/src/client/entity-votes.d.ts.map +1 -0
  72. package/dist/src/client/entity-votes.js +168 -0
  73. package/dist/src/client/entity-votes.js.map +1 -0
  74. package/dist/src/client/entity-votes.test.d.ts +2 -0
  75. package/dist/src/client/entity-votes.test.d.ts.map +1 -0
  76. package/dist/src/client/entity-votes.test.js +93 -0
  77. package/dist/src/client/entity-votes.test.js.map +1 -0
  78. package/dist/src/client/graph-workflows.test.d.ts +2 -0
  79. package/dist/src/client/graph-workflows.test.d.ts.map +1 -0
  80. package/dist/src/client/graph-workflows.test.js +83 -0
  81. package/dist/src/client/graph-workflows.test.js.map +1 -0
  82. package/dist/src/client/images-storage.test.d.ts +2 -0
  83. package/dist/src/client/images-storage.test.d.ts.map +1 -0
  84. package/dist/src/client/images-storage.test.js +52 -0
  85. package/dist/src/client/images-storage.test.js.map +1 -0
  86. package/dist/src/client/images.d.ts +35 -0
  87. package/dist/src/client/images.d.ts.map +1 -0
  88. package/dist/src/client/images.js +90 -0
  89. package/dist/src/client/images.js.map +1 -0
  90. package/dist/src/client/personal-spaces.d.ts +229 -0
  91. package/dist/src/client/personal-spaces.d.ts.map +1 -0
  92. package/dist/src/client/personal-spaces.js +278 -0
  93. package/dist/src/client/personal-spaces.js.map +1 -0
  94. package/dist/src/client/spaces.test.d.ts +2 -0
  95. package/dist/src/client/spaces.test.d.ts.map +1 -0
  96. package/dist/src/client/spaces.test.js +175 -0
  97. package/dist/src/client/spaces.test.js.map +1 -0
  98. package/dist/src/client/storage.d.ts +52 -0
  99. package/dist/src/client/storage.d.ts.map +1 -0
  100. package/dist/src/client/storage.js +53 -0
  101. package/dist/src/client/storage.js.map +1 -0
  102. package/dist/src/client.d.ts +338 -0
  103. package/dist/src/client.d.ts.map +1 -0
  104. package/dist/src/client.js +494 -0
  105. package/dist/src/client.js.map +1 -0
  106. package/dist/src/client.test.d.ts +2 -0
  107. package/dist/src/client.test.d.ts.map +1 -0
  108. package/dist/src/client.test.js +125 -0
  109. package/dist/src/client.test.js.map +1 -0
  110. package/dist/src/contracts-v2/local-geobrowser.e2e.test.d.ts +2 -0
  111. package/dist/src/contracts-v2/local-geobrowser.e2e.test.d.ts.map +1 -0
  112. package/dist/src/contracts-v2/local-geobrowser.e2e.test.js +239 -0
  113. package/dist/src/contracts-v2/local-geobrowser.e2e.test.js.map +1 -0
  114. package/dist/src/dao-space/constants.d.ts +16 -3
  115. package/dist/src/dao-space/constants.d.ts.map +1 -1
  116. package/dist/src/dao-space/constants.js +16 -5
  117. package/dist/src/dao-space/constants.js.map +1 -1
  118. package/dist/src/dao-space/create-space.d.ts +1 -31
  119. package/dist/src/dao-space/create-space.d.ts.map +1 -1
  120. package/dist/src/dao-space/create-space.js +5 -70
  121. package/dist/src/dao-space/create-space.js.map +1 -1
  122. package/dist/src/dao-space/execute-proposal.d.ts +1 -22
  123. package/dist/src/dao-space/execute-proposal.d.ts.map +1 -1
  124. package/dist/src/dao-space/execute-proposal.js +12 -59
  125. package/dist/src/dao-space/execute-proposal.js.map +1 -1
  126. package/dist/src/dao-space/index.d.ts +2 -1
  127. package/dist/src/dao-space/index.d.ts.map +1 -1
  128. package/dist/src/dao-space/index.js +1 -0
  129. package/dist/src/dao-space/index.js.map +1 -1
  130. package/dist/src/dao-space/propose-add-editor.d.ts +1 -20
  131. package/dist/src/dao-space/propose-add-editor.d.ts.map +1 -1
  132. package/dist/src/dao-space/propose-add-editor.js +12 -87
  133. package/dist/src/dao-space/propose-add-editor.js.map +1 -1
  134. package/dist/src/dao-space/propose-add-editor.test.js +16 -4
  135. package/dist/src/dao-space/propose-add-editor.test.js.map +1 -1
  136. package/dist/src/dao-space/propose-add-member.d.ts +1 -20
  137. package/dist/src/dao-space/propose-add-member.d.ts.map +1 -1
  138. package/dist/src/dao-space/propose-add-member.js +12 -87
  139. package/dist/src/dao-space/propose-add-member.js.map +1 -1
  140. package/dist/src/dao-space/propose-add-member.test.js +13 -0
  141. package/dist/src/dao-space/propose-add-member.test.js.map +1 -1
  142. package/dist/src/dao-space/propose-edit.d.ts +1 -30
  143. package/dist/src/dao-space/propose-edit.d.ts.map +1 -1
  144. package/dist/src/dao-space/propose-edit.js +12 -108
  145. package/dist/src/dao-space/propose-edit.js.map +1 -1
  146. package/dist/src/dao-space/propose-edit.test.js +53 -1
  147. package/dist/src/dao-space/propose-edit.test.js.map +1 -1
  148. package/dist/src/dao-space/propose-remove-editor.d.ts +1 -22
  149. package/dist/src/dao-space/propose-remove-editor.d.ts.map +1 -1
  150. package/dist/src/dao-space/propose-remove-editor.js +12 -94
  151. package/dist/src/dao-space/propose-remove-editor.js.map +1 -1
  152. package/dist/src/dao-space/propose-remove-editor.test.js +24 -11
  153. package/dist/src/dao-space/propose-remove-editor.test.js.map +1 -1
  154. package/dist/src/dao-space/propose-remove-member.d.ts +1 -22
  155. package/dist/src/dao-space/propose-remove-member.d.ts.map +1 -1
  156. package/dist/src/dao-space/propose-remove-member.js +12 -94
  157. package/dist/src/dao-space/propose-remove-member.js.map +1 -1
  158. package/dist/src/dao-space/propose-remove-member.test.js +19 -0
  159. package/dist/src/dao-space/propose-remove-member.test.js.map +1 -1
  160. package/dist/src/dao-space/propose-request-membership.d.ts.map +1 -1
  161. package/dist/src/dao-space/propose-request-membership.js +4 -4
  162. package/dist/src/dao-space/propose-request-membership.js.map +1 -1
  163. package/dist/src/dao-space/propose-update-voting-settings.d.ts +8 -0
  164. package/dist/src/dao-space/propose-update-voting-settings.d.ts.map +1 -0
  165. package/dist/src/dao-space/propose-update-voting-settings.js +19 -0
  166. package/dist/src/dao-space/propose-update-voting-settings.js.map +1 -0
  167. package/dist/src/dao-space/propose-update-voting-settings.test.d.ts +2 -0
  168. package/dist/src/dao-space/propose-update-voting-settings.test.d.ts.map +1 -0
  169. package/dist/src/dao-space/propose-update-voting-settings.test.js +118 -0
  170. package/dist/src/dao-space/propose-update-voting-settings.test.js.map +1 -0
  171. package/dist/src/dao-space/types.d.ts +72 -11
  172. package/dist/src/dao-space/types.d.ts.map +1 -1
  173. package/dist/src/dao-space/vote-proposal.d.ts +1 -24
  174. package/dist/src/dao-space/vote-proposal.d.ts.map +1 -1
  175. package/dist/src/dao-space/vote-proposal.js +12 -64
  176. package/dist/src/dao-space/vote-proposal.js.map +1 -1
  177. package/dist/src/dao-space/vote-proposal.test.js +54 -0
  178. package/dist/src/dao-space/vote-proposal.test.js.map +1 -1
  179. package/dist/src/e2e-test-environment.d.ts +26 -0
  180. package/dist/src/e2e-test-environment.d.ts.map +1 -0
  181. package/dist/src/e2e-test-environment.js +150 -0
  182. package/dist/src/e2e-test-environment.js.map +1 -0
  183. package/dist/src/encoding.d.ts +3 -0
  184. package/dist/src/encoding.d.ts.map +1 -1
  185. package/dist/src/encoding.js +3 -0
  186. package/dist/src/encoding.js.map +1 -1
  187. package/dist/src/encodings/get-create-dao-space-calldata.d.ts +34 -97
  188. package/dist/src/encodings/get-create-dao-space-calldata.d.ts.map +1 -1
  189. package/dist/src/encodings/get-create-dao-space-calldata.js +66 -109
  190. package/dist/src/encodings/get-create-dao-space-calldata.js.map +1 -1
  191. package/dist/src/encodings/get-create-dao-space-calldata.test.js +90 -23
  192. package/dist/src/encodings/get-create-dao-space-calldata.test.js.map +1 -1
  193. package/dist/src/encodings/get-create-personal-space-calldata.d.ts +2 -0
  194. package/dist/src/encodings/get-create-personal-space-calldata.d.ts.map +1 -1
  195. package/dist/src/encodings/get-create-personal-space-calldata.js +2 -0
  196. package/dist/src/encodings/get-create-personal-space-calldata.js.map +1 -1
  197. package/dist/src/full-flow-test.test.js +5 -2
  198. package/dist/src/full-flow-test.test.js.map +1 -1
  199. package/dist/src/graph/comment-utils.d.ts +4 -0
  200. package/dist/src/graph/comment-utils.d.ts.map +1 -1
  201. package/dist/src/graph/comment-utils.js +4 -0
  202. package/dist/src/graph/comment-utils.js.map +1 -1
  203. package/dist/src/graph/constants.d.ts +12 -3
  204. package/dist/src/graph/constants.d.ts.map +1 -1
  205. package/dist/src/graph/constants.js +11 -5
  206. package/dist/src/graph/constants.js.map +1 -1
  207. package/dist/src/graph/create-comment.d.ts +3 -22
  208. package/dist/src/graph/create-comment.d.ts.map +1 -1
  209. package/dist/src/graph/create-comment.js +6 -136
  210. package/dist/src/graph/create-comment.js.map +1 -1
  211. package/dist/src/graph/create-comment.test.js +19 -8
  212. package/dist/src/graph/create-comment.test.js.map +1 -1
  213. package/dist/src/graph/create-entity.d.ts +2 -0
  214. package/dist/src/graph/create-entity.d.ts.map +1 -1
  215. package/dist/src/graph/create-entity.js +2 -0
  216. package/dist/src/graph/create-entity.js.map +1 -1
  217. package/dist/src/graph/create-image.d.ts +2 -21
  218. package/dist/src/graph/create-image.d.ts.map +1 -1
  219. package/dist/src/graph/create-image.js +7 -69
  220. package/dist/src/graph/create-image.js.map +1 -1
  221. package/dist/src/graph/create-property.d.ts +2 -0
  222. package/dist/src/graph/create-property.d.ts.map +1 -1
  223. package/dist/src/graph/create-property.js +2 -0
  224. package/dist/src/graph/create-property.js.map +1 -1
  225. package/dist/src/graph/create-proposal-review.d.ts +1 -27
  226. package/dist/src/graph/create-proposal-review.d.ts.map +1 -1
  227. package/dist/src/graph/create-proposal-review.js +4 -61
  228. package/dist/src/graph/create-proposal-review.js.map +1 -1
  229. package/dist/src/graph/create-relation.d.ts +2 -0
  230. package/dist/src/graph/create-relation.d.ts.map +1 -1
  231. package/dist/src/graph/create-relation.js +2 -0
  232. package/dist/src/graph/create-relation.js.map +1 -1
  233. package/dist/src/graph/create-type.d.ts +2 -0
  234. package/dist/src/graph/create-type.d.ts.map +1 -1
  235. package/dist/src/graph/create-type.js +2 -0
  236. package/dist/src/graph/create-type.js.map +1 -1
  237. package/dist/src/graph/delete-entity.d.ts +2 -14
  238. package/dist/src/graph/delete-entity.d.ts.map +1 -1
  239. package/dist/src/graph/delete-entity.js +5 -78
  240. package/dist/src/graph/delete-entity.js.map +1 -1
  241. package/dist/src/graph/delete-entity.test.js +7 -0
  242. package/dist/src/graph/delete-entity.test.js.map +1 -1
  243. package/dist/src/graph/delete-relation.d.ts +2 -0
  244. package/dist/src/graph/delete-relation.d.ts.map +1 -1
  245. package/dist/src/graph/delete-relation.js +2 -0
  246. package/dist/src/graph/delete-relation.js.map +1 -1
  247. package/dist/src/graph/entity-vote.d.ts +3 -3
  248. package/dist/src/graph/entity-vote.d.ts.map +1 -1
  249. package/dist/src/graph/entity-vote.js +21 -46
  250. package/dist/src/graph/entity-vote.js.map +1 -1
  251. package/dist/src/graph/update-comment.d.ts +3 -0
  252. package/dist/src/graph/update-comment.d.ts.map +1 -1
  253. package/dist/src/graph/update-comment.js +3 -0
  254. package/dist/src/graph/update-comment.js.map +1 -1
  255. package/dist/src/graph/update-entity.d.ts +2 -0
  256. package/dist/src/graph/update-entity.d.ts.map +1 -1
  257. package/dist/src/graph/update-entity.js +2 -0
  258. package/dist/src/graph/update-entity.js.map +1 -1
  259. package/dist/src/graph/update-proposal-review.d.ts +2 -27
  260. package/dist/src/graph/update-proposal-review.d.ts.map +1 -1
  261. package/dist/src/graph/update-proposal-review.js +4 -50
  262. package/dist/src/graph/update-proposal-review.js.map +1 -1
  263. package/dist/src/graph/update-relation.d.ts +2 -0
  264. package/dist/src/graph/update-relation.d.ts.map +1 -1
  265. package/dist/src/graph/update-relation.js +2 -0
  266. package/dist/src/graph/update-relation.js.map +1 -1
  267. package/dist/src/ipfs-core.d.ts +42 -0
  268. package/dist/src/ipfs-core.d.ts.map +1 -0
  269. package/dist/src/ipfs-core.js +165 -0
  270. package/dist/src/ipfs-core.js.map +1 -0
  271. package/dist/src/ipfs-core.test.d.ts +2 -0
  272. package/dist/src/ipfs-core.test.d.ts.map +1 -0
  273. package/dist/src/ipfs-core.test.js +56 -0
  274. package/dist/src/ipfs-core.test.js.map +1 -0
  275. package/dist/src/ipfs.d.ts +7 -52
  276. package/dist/src/ipfs.d.ts.map +1 -1
  277. package/dist/src/ipfs.js +27 -170
  278. package/dist/src/ipfs.js.map +1 -1
  279. package/dist/src/legacy-api-surface.e2e.test.d.ts +2 -0
  280. package/dist/src/legacy-api-surface.e2e.test.d.ts.map +1 -0
  281. package/dist/src/legacy-api-surface.e2e.test.js +860 -0
  282. package/dist/src/legacy-api-surface.e2e.test.js.map +1 -0
  283. package/dist/src/networks.d.ts +46 -0
  284. package/dist/src/networks.d.ts.map +1 -0
  285. package/dist/src/networks.js +90 -0
  286. package/dist/src/networks.js.map +1 -0
  287. package/dist/src/ops/comments.d.ts +80 -0
  288. package/dist/src/ops/comments.d.ts.map +1 -0
  289. package/dist/src/ops/comments.js +142 -0
  290. package/dist/src/ops/comments.js.map +1 -0
  291. package/dist/src/ops/entities.d.ts +50 -0
  292. package/dist/src/ops/entities.d.ts.map +1 -0
  293. package/dist/src/ops/entities.js +51 -0
  294. package/dist/src/ops/entities.js.map +1 -0
  295. package/dist/src/ops/index.d.ts +7 -0
  296. package/dist/src/ops/index.d.ts.map +1 -0
  297. package/dist/src/ops/index.js +7 -0
  298. package/dist/src/ops/index.js.map +1 -0
  299. package/dist/src/ops/index.test.d.ts +2 -0
  300. package/dist/src/ops/index.test.d.ts.map +1 -0
  301. package/dist/src/ops/index.test.js +115 -0
  302. package/dist/src/ops/index.test.js.map +1 -0
  303. package/dist/src/ops/properties.d.ts +20 -0
  304. package/dist/src/ops/properties.d.ts.map +1 -0
  305. package/dist/src/ops/properties.js +20 -0
  306. package/dist/src/ops/properties.js.map +1 -0
  307. package/dist/src/ops/proposal-reviews.d.ts +43 -0
  308. package/dist/src/ops/proposal-reviews.d.ts.map +1 -0
  309. package/dist/src/ops/proposal-reviews.js +103 -0
  310. package/dist/src/ops/proposal-reviews.js.map +1 -0
  311. package/dist/src/ops/relations.d.ts +57 -0
  312. package/dist/src/ops/relations.d.ts.map +1 -0
  313. package/dist/src/ops/relations.js +59 -0
  314. package/dist/src/ops/relations.js.map +1 -0
  315. package/dist/src/ops/types.d.ts +20 -0
  316. package/dist/src/ops/types.d.ts.map +1 -0
  317. package/dist/src/ops/types.js +20 -0
  318. package/dist/src/ops/types.js.map +1 -0
  319. package/dist/src/personal-space/constants.d.ts +1 -0
  320. package/dist/src/personal-space/constants.d.ts.map +1 -1
  321. package/dist/src/personal-space/constants.js +1 -0
  322. package/dist/src/personal-space/constants.js.map +1 -1
  323. package/dist/src/personal-space/create-space.d.ts +3 -20
  324. package/dist/src/personal-space/create-space.d.ts.map +1 -1
  325. package/dist/src/personal-space/create-space.js +5 -21
  326. package/dist/src/personal-space/create-space.js.map +1 -1
  327. package/dist/src/personal-space/has-space.d.ts +9 -2
  328. package/dist/src/personal-space/has-space.d.ts.map +1 -1
  329. package/dist/src/personal-space/has-space.js +9 -13
  330. package/dist/src/personal-space/has-space.js.map +1 -1
  331. package/dist/src/personal-space/has-space.test.d.ts +2 -0
  332. package/dist/src/personal-space/has-space.test.d.ts.map +1 -0
  333. package/dist/src/personal-space/has-space.test.js +30 -0
  334. package/dist/src/personal-space/has-space.test.js.map +1 -0
  335. package/dist/src/personal-space/publish-edit.d.ts +1 -22
  336. package/dist/src/personal-space/publish-edit.d.ts.map +1 -1
  337. package/dist/src/personal-space/publish-edit.js +10 -64
  338. package/dist/src/personal-space/publish-edit.js.map +1 -1
  339. package/dist/src/personal-space/types.d.ts +4 -1
  340. package/dist/src/personal-space/types.d.ts.map +1 -1
  341. package/dist/src/smart-wallet.d.ts +2 -4
  342. package/dist/src/smart-wallet.d.ts.map +1 -1
  343. package/dist/src/smart-wallet.js +6 -9
  344. package/dist/src/smart-wallet.js.map +1 -1
  345. package/dist/src/types.d.ts +25 -0
  346. package/dist/src/types.d.ts.map +1 -1
  347. package/dist/src/types.js.map +1 -1
  348. package/package.json +14 -1
  349. package/dist/proto.d.ts +0 -5
  350. package/dist/proto.d.ts.map +0 -1
  351. package/dist/proto.js +0 -5
  352. package/dist/proto.js.map +0 -1
  353. package/dist/src/graph/create-space.d.ts +0 -37
  354. package/dist/src/graph/create-space.d.ts.map +0 -1
  355. package/dist/src/graph/create-space.js +0 -67
  356. package/dist/src/graph/create-space.js.map +0 -1
  357. package/dist/src/proto/index.d.ts +0 -7
  358. package/dist/src/proto/index.d.ts.map +0 -1
  359. package/dist/src/proto/index.js +0 -7
  360. package/dist/src/proto/index.js.map +0 -1
@@ -0,0 +1,239 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { createPublicClient, decodeAbiParameters, decodeFunctionData, encodeFunctionData, hexToString, http, } from 'viem';
3
+ import { describe, expect, it, vi } from 'vitest';
4
+ import { DaoSpaceAbi, DaoSpaceFactoryAbi, SpaceRegistryAbi } from '../abis/index.js';
5
+ import { createGeoClient } from '../client.js';
6
+ import { bytes16ToBytes32LeftAligned, EDITS_PUBLISHED_ACTION, EMPTY_TOPIC, PROPOSAL_CREATED_ACTION, PROPOSAL_VOTED_ACTION, VOTE_OPTION_VALUES, } from '../dao-space/constants.js';
7
+ import { getCreateDaoSpaceCalldata } from '../encodings/get-create-dao-space-calldata.js';
8
+ import { defineGeoNetworkConfig } from '../networks.js';
9
+ import * as Ops from '../ops/index.js';
10
+ const deploymentsPath = process.env.GEO_LOCAL_GEOBROWSER_DEPLOYMENTS;
11
+ const localGeobrowserPath = process.env.GEO_LOCAL_GEOBROWSER_PATH;
12
+ const deployments = deploymentsPath
13
+ ? JSON.parse(readFileSync(deploymentsPath, 'utf8'))
14
+ : undefined;
15
+ const localRpcUrl = deployments?.rpcUrl ?? process.env.GEO_LOCAL_GEOBROWSER_RPC_URL;
16
+ const describeLocal = deployments ? describe : describe.skip;
17
+ const describeLocalRpc = deployments && localRpcUrl ? describe : describe.skip;
18
+ const describeLocalSource = localGeobrowserPath ? describe : describe.skip;
19
+ function readDeployments() {
20
+ if (!deployments) {
21
+ throw new Error('Set GEO_LOCAL_GEOBROWSER_DEPLOYMENTS to the local-geobrowser .deployments.json path.');
22
+ }
23
+ return deployments;
24
+ }
25
+ function readLocalContractSource(relativePath) {
26
+ if (!localGeobrowserPath) {
27
+ throw new Error('Set GEO_LOCAL_GEOBROWSER_PATH to the local-geobrowser checkout path.');
28
+ }
29
+ return readFileSync(`${localGeobrowserPath}/contracts/src/${relativePath}`, 'utf8');
30
+ }
31
+ function localNetwork(deployments) {
32
+ return defineGeoNetworkConfig({
33
+ id: 'LOCAL_GEOBROWSER',
34
+ name: 'Local Geobrowser',
35
+ apiOrigin: process.env.GEO_LOCAL_GEOBROWSER_API_ORIGIN ?? 'http://localhost:3000',
36
+ chain: {
37
+ id: Number(process.env.GEO_LOCAL_GEOBROWSER_CHAIN_ID ?? 31337),
38
+ name: 'Anvil',
39
+ rpcUrl: deployments.rpcUrl ?? process.env.GEO_LOCAL_GEOBROWSER_RPC_URL,
40
+ },
41
+ contracts: {
42
+ SPACE_REGISTRY_ADDRESS: deployments.spaceRegistry,
43
+ DAO_SPACE_FACTORY_ADDRESS: deployments.daoSpaceFactory,
44
+ },
45
+ });
46
+ }
47
+ describeLocal('local-geobrowser contracts v2 calldata', () => {
48
+ const editorSpaceId = '0x11111111111111111111111111111111';
49
+ const daoSpaceId = '0x22222222222222222222222222222222';
50
+ const proposalId = '0x33333333333333333333333333333333';
51
+ const cid = 'ipfs://bafkreigwfjixq5cm3s4youhshorkpqh3ykpviyv76c2ei6gaalujtlqz5i';
52
+ const authorId = '5cade5757ecd41ae83481b22ffc2f94e';
53
+ const votingSettings = {
54
+ partialPercentageSupportThreshold: 50,
55
+ universalPercentageSupportThreshold: 90,
56
+ flatSupportThreshold: 1,
57
+ quorum: 1,
58
+ durationInDays: 2,
59
+ disableFastPathAccessForNewMembers: true,
60
+ executionGracePeriodInDays: 14,
61
+ };
62
+ it('builds a custom network from local-geobrowser deployments', () => {
63
+ const deployments = readDeployments();
64
+ const network = localNetwork(deployments);
65
+ expect(network.contracts?.SPACE_REGISTRY_ADDRESS).toBe(deployments.spaceRegistry);
66
+ expect(network.contracts?.DAO_SPACE_FACTORY_ADDRESS).toBe(deployments.daoSpaceFactory);
67
+ });
68
+ it('decodes DAO creation calldata against the v2 factory ABI', () => {
69
+ const calldata = getCreateDaoSpaceCalldata({
70
+ votingSettings,
71
+ initialEditorSpaceIds: [editorSpaceId],
72
+ initialMemberSpaceIds: [editorSpaceId],
73
+ initialEditsContentUri: cid,
74
+ initialTopicId: '9f9e7d45-5b11-4d6b-9c5d-9567eeb3a001',
75
+ });
76
+ const decoded = decodeFunctionData({
77
+ abi: DaoSpaceFactoryAbi,
78
+ data: calldata,
79
+ });
80
+ const [settings, initialEditors, initialMembers, initialEditContentUri, initialEditMetadata, initialTopicId] = decoded.args;
81
+ expect(decoded.functionName).toBe('createDAOSpaceProxy');
82
+ expect(decoded.args).toHaveLength(6);
83
+ expect(settings.partialPercentageSupportThreshold).toBe(5000000n);
84
+ expect(settings.universalPercentageSupportThreshold).toBe(9000000n);
85
+ expect(settings.executionGracePeriod).toBe(1209600n);
86
+ expect(initialEditors).toEqual([editorSpaceId]);
87
+ expect(initialMembers).toEqual([editorSpaceId]);
88
+ expect(hexToString(initialEditContentUri)).toBe(cid);
89
+ expect(initialEditMetadata).toBe('0x');
90
+ expect(initialTopicId).toBe('0x9f9e7d455b114d6b9c5d9567eeb3a001');
91
+ });
92
+ it('decodes DAO proposal and versioned vote calldata against local v2 ABIs', async () => {
93
+ const deployments = readDeployments();
94
+ const network = localNetwork(deployments);
95
+ const geo = createGeoClient({ network });
96
+ const fetch = vi.fn().mockResolvedValue(new Response(JSON.stringify({ cid })));
97
+ const geoWithFetch = createGeoClient({ network, fetch });
98
+ const updateSettings = geo.daoSpaces.proposeUpdateVotingSettings({
99
+ authorSpaceId: editorSpaceId,
100
+ spaceId: daoSpaceId,
101
+ daoSpaceAddress: deployments.daoSpace,
102
+ proposalId,
103
+ votingSettings,
104
+ });
105
+ const decodedProposal = decodeFunctionData({
106
+ abi: SpaceRegistryAbi,
107
+ data: updateSettings.calldata,
108
+ });
109
+ const [, , proposalAction, proposalTopic, proposalData] = decodedProposal.args;
110
+ const [, votingMode, actions] = decodeAbiParameters([
111
+ { type: 'bytes16', name: 'proposalId' },
112
+ { type: 'uint8', name: 'votingMode' },
113
+ {
114
+ type: 'tuple[]',
115
+ name: 'actions',
116
+ components: [
117
+ { type: 'address', name: 'to' },
118
+ { type: 'uint256', name: 'value' },
119
+ { type: 'bytes', name: 'data' },
120
+ ],
121
+ },
122
+ ], proposalData);
123
+ const decodedAction = decodeFunctionData({
124
+ abi: DaoSpaceAbi,
125
+ data: actions[0]?.data ?? '0x',
126
+ });
127
+ expect(updateSettings.to).toBe(deployments.spaceRegistry);
128
+ expect(proposalAction).toBe(PROPOSAL_CREATED_ACTION);
129
+ expect(proposalTopic).toBe(bytes16ToBytes32LeftAligned(proposalId));
130
+ expect(votingMode).toBe(0);
131
+ expect(actions[0]?.to).toBe(deployments.daoSpace);
132
+ expect(decodedAction.functionName).toBe('updateVotingSettings');
133
+ const { ops } = Ops.entities.create({ name: 'Local v2 edit entity' });
134
+ const editProposal = await geoWithFetch.daoSpaces.proposeEdit({
135
+ name: 'Local v2 edit',
136
+ ops,
137
+ author: authorId,
138
+ daoSpaceAddress: deployments.daoSpace,
139
+ callerSpaceId: editorSpaceId,
140
+ daoSpaceId,
141
+ proposalId,
142
+ });
143
+ const decodedEditProposal = decodeFunctionData({
144
+ abi: SpaceRegistryAbi,
145
+ data: editProposal.calldata,
146
+ });
147
+ const [, , editProposalAction, , editProposalData] = decodedEditProposal.args;
148
+ const [, editVotingMode, editActions] = decodeAbiParameters([
149
+ { type: 'bytes16', name: 'proposalId' },
150
+ { type: 'uint8', name: 'votingMode' },
151
+ {
152
+ type: 'tuple[]',
153
+ name: 'actions',
154
+ components: [
155
+ { type: 'address', name: 'to' },
156
+ { type: 'uint256', name: 'value' },
157
+ { type: 'bytes', name: 'data' },
158
+ ],
159
+ },
160
+ ], editProposalData);
161
+ const decodedEditAction = decodeFunctionData({
162
+ abi: DaoSpaceAbi,
163
+ data: editActions[0]?.data ?? '0x',
164
+ });
165
+ const [editContentUri, editMetadata] = decodeAbiParameters([
166
+ { type: 'bytes', name: 'editsContentUri' },
167
+ { type: 'bytes', name: 'editsMetadata' },
168
+ ], decodedEditAction.args?.[2]);
169
+ expect(editProposalAction).toBe(PROPOSAL_CREATED_ACTION);
170
+ expect(editVotingMode).toBe(1);
171
+ expect(editActions[0]?.to).toBe(deployments.daoSpace);
172
+ expect(decodedEditAction.functionName).toBe('ping');
173
+ expect(decodedEditAction.args?.[0]).toBe(EDITS_PUBLISHED_ACTION);
174
+ expect(decodedEditAction.args?.[1]).toBe(EMPTY_TOPIC);
175
+ expect(hexToString(editContentUri)).toBe(cid);
176
+ expect(editMetadata).toBe('0x');
177
+ const vote = geo.daoSpaces.voteProposal({
178
+ authorSpaceId: editorSpaceId,
179
+ spaceId: daoSpaceId,
180
+ proposalId,
181
+ versionId: 2,
182
+ vote: 'YES',
183
+ });
184
+ const decodedVote = decodeFunctionData({
185
+ abi: SpaceRegistryAbi,
186
+ data: vote.calldata,
187
+ });
188
+ const [, , voteAction, voteTopic, voteData] = decodedVote.args;
189
+ const [decodedProposalId, versionId, voteOption] = decodeAbiParameters([
190
+ { type: 'bytes16', name: 'proposalId' },
191
+ { type: 'uint8', name: 'versionId' },
192
+ { type: 'uint8', name: 'voteOption' },
193
+ ], voteData);
194
+ expect(vote.to).toBe(deployments.spaceRegistry);
195
+ expect(voteAction).toBe(PROPOSAL_VOTED_ACTION);
196
+ expect(voteTopic).toBe(bytes16ToBytes32LeftAligned(proposalId));
197
+ expect(decodedProposalId).toBe(proposalId);
198
+ expect(versionId).toBe(2);
199
+ expect(voteOption).toBe(VOTE_OPTION_VALUES.YES);
200
+ });
201
+ });
202
+ describeLocalSource('local-geobrowser contracts v2 source compatibility', () => {
203
+ it('confirms edit publishing is a DAO ping fast-path action in local contracts', () => {
204
+ const daoSpaceSource = readLocalContractSource('contracts/DAOSpace.sol');
205
+ const actionsSource = readLocalContractSource('ActionsConstants.sol');
206
+ expect(actionsSource).toContain("EDITS_PUBLISHED = keccak256('GOVERNANCE.EDITS_PUBLISHED')");
207
+ expect(daoSpaceSource).toContain('$_.actionIsFastPathValid[IDAOSpace.ping.selector] = true;');
208
+ expect(daoSpaceSource).not.toContain('actionIsFastPathValid[IDAOSpace.publish.selector]');
209
+ expect(daoSpaceSource).toContain("_ping(ActionsConstants.EDITS_PUBLISHED, '', _publishEditsData)");
210
+ });
211
+ });
212
+ describeLocalRpc('local-geobrowser deployed contracts v2 compatibility', () => {
213
+ it('checks the deployed DAO fast-path selector allowlist', async () => {
214
+ const deployments = readDeployments();
215
+ if (!localRpcUrl) {
216
+ throw new Error('Set GEO_LOCAL_GEOBROWSER_RPC_URL or deployments.rpcUrl for local-geobrowser RPC checks.');
217
+ }
218
+ const publicClient = createPublicClient({ transport: http(localRpcUrl) });
219
+ const pingSelector = encodeFunctionData({
220
+ abi: DaoSpaceAbi,
221
+ functionName: 'ping',
222
+ args: [EDITS_PUBLISHED_ACTION, EMPTY_TOPIC, '0x'],
223
+ }).slice(0, 10);
224
+ const publishSelector = '0x6b47f61a';
225
+ await expect(publicClient.readContract({
226
+ address: deployments.daoSpace,
227
+ abi: DaoSpaceAbi,
228
+ functionName: 'actionIsFastPathValid',
229
+ args: [pingSelector],
230
+ })).resolves.toBe(true);
231
+ await expect(publicClient.readContract({
232
+ address: deployments.daoSpace,
233
+ abi: DaoSpaceAbi,
234
+ functionName: 'actionIsFastPathValid',
235
+ args: [publishSelector],
236
+ })).resolves.toBe(false);
237
+ });
238
+ });
239
+ //# sourceMappingURL=local-geobrowser.e2e.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-geobrowser.e2e.test.js","sourceRoot":"","sources":["../../../src/contracts-v2/local-geobrowser.e2e.test.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
- import { TESTNET } from '../../contracts.js';
1
+ import type { Networkish } from '../types.js';
2
2
  /**
3
3
  * Action hash for GOVERNANCE.PROPOSAL_CREATED
4
4
  * Used when creating proposals via SpaceRegistry.enter()
5
5
  */
6
6
  export declare const PROPOSAL_CREATED_ACTION: `0x${string}`;
7
+ /**
8
+ * Action hash for GOVERNANCE.PROPOSAL_UPDATED
9
+ * Used when publishing a new version of an existing proposal.
10
+ */
11
+ export declare const PROPOSAL_UPDATED_ACTION: `0x${string}`;
7
12
  /**
8
13
  * Action hash for GOVERNANCE.PROPOSAL_VOTED
9
14
  * Used when voting on proposals via SpaceRegistry.enter()
@@ -19,6 +24,11 @@ export declare const MEMBERSHIP_REQUESTED_ACTION: `0x${string}`;
19
24
  * Used when executing a passed proposal via SpaceRegistry.enter()
20
25
  */
21
26
  export declare const PROPOSAL_EXECUTED_ACTION: `0x${string}`;
27
+ /**
28
+ * Action hash for GOVERNANCE.EDITS_PUBLISHED
29
+ * Used by DAO edit proposals through DAOSpace.ping().
30
+ */
31
+ export declare const EDITS_PUBLISHED_ACTION: `0x${string}`;
22
32
  /**
23
33
  * Maps VoteOption strings to their on-chain uint8 values (IDAOSpace.VoteOption enum).
24
34
  */
@@ -59,8 +69,11 @@ export declare function toBytes16(hex32: `0x${string}`): `0x${string}`;
59
69
  * Converts a bytes16 hex string to bytes32 (left-aligned, right-padded with zeros).
60
70
  */
61
71
  export declare function bytes16ToBytes32LeftAligned(bytes16Hex: `0x${string}`): `0x${string}`;
72
+ export type DaoSpaceContractAddresses = {
73
+ SPACE_REGISTRY_ADDRESS: `0x${string}`;
74
+ };
62
75
  /**
63
- * Get Contract Addresses based on Network
76
+ * Get contract addresses based on network.
64
77
  */
65
- export declare function getContractAddressesBasedOnNetwork(network: 'TESTNET' | 'MAINNET'): typeof TESTNET;
78
+ export declare function getContractAddressesBasedOnNetwork(network: Networkish): DaoSpaceContractAddresses;
66
79
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/dao-space/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,eAAkD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,eAAgD,CAAC;AAEnF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,eAAsD,CAAC;AAE/F;;;GAGG;AACH,eAAO,MAAM,wBAAwB,eAAmD,CAAC;AAEzF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW,EAAG,oEAA6E,CAAC;AAEzG;;GAEG;AACH,eAAO,MAAM,eAAe,EAAG,IAAa,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAwB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAwB,CAAC;AAEvD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAE3D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,MAAM,EAAE,GAAG,KAAK,MAAM,EAAE,CAI7D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,KAAK,MAAM,EAAE,GAAG,KAAK,MAAM,EAAE,CAIpF;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,OAAO,CAGjG"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/dao-space/constants.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,eAAkD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,eAAkD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,eAAgD,CAAC;AAEnF;;;GAGG;AACH,eAAO,MAAM,2BAA2B,eAAsD,CAAC;AAE/F;;;GAGG;AACH,eAAO,MAAM,wBAAwB,eAAmD,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,eAAiD,CAAC;AAErF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,WAAW,EAAG,oEAA6E,CAAC;AAEzG;;GAEG;AACH,eAAO,MAAM,eAAe,EAAG,IAAa,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAwB,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,iBAAiB,QAAwB,CAAC;AAEvD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAE3D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,MAAM,EAAE,GAAG,KAAK,MAAM,EAAE,CAI7D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,KAAK,MAAM,EAAE,GAAG,KAAK,MAAM,EAAE,CAIpF;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,sBAAsB,EAAE,KAAK,MAAM,EAAE,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,UAAU,GAAG,yBAAyB,CAKjG"}
@@ -1,10 +1,15 @@
1
1
  import { keccak256, toHex } from 'viem';
2
- import { TESTNET } from '../../contracts.js';
2
+ import { requireGeoContract, resolveGeoNetwork } from '../networks.js';
3
3
  /**
4
4
  * Action hash for GOVERNANCE.PROPOSAL_CREATED
5
5
  * Used when creating proposals via SpaceRegistry.enter()
6
6
  */
7
7
  export const PROPOSAL_CREATED_ACTION = keccak256(toHex('GOVERNANCE.PROPOSAL_CREATED'));
8
+ /**
9
+ * Action hash for GOVERNANCE.PROPOSAL_UPDATED
10
+ * Used when publishing a new version of an existing proposal.
11
+ */
12
+ export const PROPOSAL_UPDATED_ACTION = keccak256(toHex('GOVERNANCE.PROPOSAL_UPDATED'));
8
13
  /**
9
14
  * Action hash for GOVERNANCE.PROPOSAL_VOTED
10
15
  * Used when voting on proposals via SpaceRegistry.enter()
@@ -20,6 +25,11 @@ export const MEMBERSHIP_REQUESTED_ACTION = keccak256(toHex('GOVERNANCE.MEMBERSHI
20
25
  * Used when executing a passed proposal via SpaceRegistry.enter()
21
26
  */
22
27
  export const PROPOSAL_EXECUTED_ACTION = keccak256(toHex('GOVERNANCE.PROPOSAL_EXECUTED'));
28
+ /**
29
+ * Action hash for GOVERNANCE.EDITS_PUBLISHED
30
+ * Used by DAO edit proposals through DAOSpace.ping().
31
+ */
32
+ export const EDITS_PUBLISHED_ACTION = keccak256(toHex('GOVERNANCE.EDITS_PUBLISHED'));
23
33
  /**
24
34
  * Maps VoteOption strings to their on-chain uint8 values (IDAOSpace.VoteOption enum).
25
35
  */
@@ -75,11 +85,12 @@ export function bytes16ToBytes32LeftAligned(bytes16Hex) {
75
85
  return `0x${s.slice(2)}${'0'.repeat(32)}`;
76
86
  }
77
87
  /**
78
- * Get Contract Addresses based on Network
88
+ * Get contract addresses based on network.
79
89
  */
80
90
  export function getContractAddressesBasedOnNetwork(network) {
81
- if (network === 'MAINNET')
82
- throw Error('MAINNET not supported yet');
83
- return TESTNET;
91
+ const config = resolveGeoNetwork(network);
92
+ return {
93
+ SPACE_REGISTRY_ADDRESS: requireGeoContract(config, 'SPACE_REGISTRY_ADDRESS'),
94
+ };
84
95
  }
85
96
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dao-space/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;AAEvF;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,SAAS,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;AAEnF;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,SAAS,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;AAE/F;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,SAAS,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;AAEzF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,EAAE,CAAC;IACN,EAAE,EAAE,CAAC;IACL,OAAO,EAAE,CAAC;CACF,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,oEAA6E,CAAC;AAEzG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAa,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AAEvD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AAEvD;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAkB,CAAC;AAC1E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAAoB;IAC5C,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAC9B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;IAC3E,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAmB,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,UAAyB;IACnE,MAAM,CAAC,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;IACtF,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAmB,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kCAAkC,CAAC,OAA8B;IAC/E,IAAI,OAAO,KAAK,SAAS;QAAE,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACpE,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dao-space/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGvE;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;AAEvF;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,SAAS,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;AAEvF;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,SAAS,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;AAEnF;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,SAAS,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;AAE/F;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,SAAS,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;AAEzF;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,SAAS,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;AAErF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,GAAG,EAAE,CAAC;IACN,EAAE,EAAE,CAAC;IACL,OAAO,EAAE,CAAC;CACF,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,oEAA6E,CAAC;AAEzG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAa,CAAC;AAE7C;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AAEvD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AAEvD;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAkB,CAAC;AAC1E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAAoB;IAC5C,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAC9B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;IAC3E,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAmB,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,UAAyB;IACnE,MAAM,CAAC,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;IACtF,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAmB,CAAC;AAC7D,CAAC;AAMD;;GAEG;AACH,MAAM,UAAU,kCAAkC,CAAC,OAAmB;IACpE,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO;QACL,sBAAsB,EAAE,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,CAAC;KAC7E,CAAC;AACJ,CAAC"}
@@ -2,37 +2,7 @@ import type { CreateSpaceParams, CreateSpaceResult } from './types.js';
2
2
  /**
3
3
  * Get the target address and calldata for creating a DAO space.
4
4
  *
5
- * This function creates the space entity, uploads the initial edit to IPFS,
6
- * and returns everything needed to submit a transaction that creates
7
- * a DAO space on the DAO Space Factory contract.
8
- *
9
- * @param params - The parameters for creating the DAO space
10
- * @returns Object containing `to` (contract address), `calldata` for the transaction,
11
- * `spaceEntityId` for the generated space entity, and `cid` for the IPFS content
12
- *
13
- * @example
14
- * ```ts
15
- * import { daoSpace } from '@geoprotocol/geo-sdk';
16
- * import { createWalletClient, http } from 'viem';
17
- *
18
- * const { to, calldata, spaceEntityId, cid } = await daoSpace.createSpace({
19
- * name: 'My DAO Space',
20
- * votingSettings: {
21
- * slowPathPercentageThreshold: 50, // 50% approval needed
22
- * fastPathFlatThreshold: 3, // 3 editors for fast path
23
- * quorum: 2, // minimum 2 editors must vote
24
- * durationInDays: 7, // 7 day voting period
25
- * },
26
- * initialEditorSpaceIds: ['0x01234567890abcdef01234567890abcd'],
27
- * author: 'your-personal-space-id',
28
- * });
29
- *
30
- * // Using viem
31
- * const hash = await walletClient.sendTransaction({
32
- * to,
33
- * data: calldata,
34
- * });
35
- * ```
5
+ * @deprecated Use `createGeoClient({ network }).daoSpaces.create(...)`.
36
6
  */
37
7
  export declare function createSpace(params: CreateSpaceParams): Promise<CreateSpaceResult>;
38
8
  //# sourceMappingURL=create-space.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-space.d.ts","sourceRoot":"","sources":["../../../src/dao-space/create-space.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAyCvF"}
1
+ {"version":3,"file":"create-space.d.ts","sourceRoot":"","sources":["../../../src/dao-space/create-space.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEvE;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAGvF"}
@@ -1,77 +1,12 @@
1
- import { TESTNET } from '../../contracts.js';
2
- import { SPACE_TYPE } from '../core/ids/system.js';
3
- import { getCreateDaoSpaceCalldata } from '../encodings/index.js';
4
- import { createEntity } from '../graph/create-entity.js';
5
- import * as IdUtils from '../id-utils.js';
6
- import { publishEdit } from '../ipfs.js';
1
+ import { createGeoClient } from '../client.js';
2
+ import { resolveGeoNetwork } from '../networks.js';
7
3
  /**
8
4
  * Get the target address and calldata for creating a DAO space.
9
5
  *
10
- * This function creates the space entity, uploads the initial edit to IPFS,
11
- * and returns everything needed to submit a transaction that creates
12
- * a DAO space on the DAO Space Factory contract.
13
- *
14
- * @param params - The parameters for creating the DAO space
15
- * @returns Object containing `to` (contract address), `calldata` for the transaction,
16
- * `spaceEntityId` for the generated space entity, and `cid` for the IPFS content
17
- *
18
- * @example
19
- * ```ts
20
- * import { daoSpace } from '@geoprotocol/geo-sdk';
21
- * import { createWalletClient, http } from 'viem';
22
- *
23
- * const { to, calldata, spaceEntityId, cid } = await daoSpace.createSpace({
24
- * name: 'My DAO Space',
25
- * votingSettings: {
26
- * slowPathPercentageThreshold: 50, // 50% approval needed
27
- * fastPathFlatThreshold: 3, // 3 editors for fast path
28
- * quorum: 2, // minimum 2 editors must vote
29
- * durationInDays: 7, // 7 day voting period
30
- * },
31
- * initialEditorSpaceIds: ['0x01234567890abcdef01234567890abcd'],
32
- * author: 'your-personal-space-id',
33
- * });
34
- *
35
- * // Using viem
36
- * const hash = await walletClient.sendTransaction({
37
- * to,
38
- * data: calldata,
39
- * });
40
- * ```
6
+ * @deprecated Use `createGeoClient({ network }).daoSpaces.create(...)`.
41
7
  */
42
8
  export async function createSpace(params) {
43
- const { name, author, ops: additionalOps = [], network = 'TESTNET' } = params;
44
- // Generate a space entity ID
45
- const spaceEntityId = IdUtils.generate();
46
- // Create ops for the space entity with name and type
47
- const ops = [];
48
- const { ops: createSpaceEntityOps } = createEntity({
49
- id: spaceEntityId,
50
- name,
51
- types: [SPACE_TYPE],
52
- });
53
- ops.push(...createSpaceEntityOps);
54
- // Add any additional ops
55
- ops.push(...additionalOps);
56
- // Upload ops to IPFS
57
- const { cid } = await publishEdit({
58
- name: `Create DAO Space: ${name}`,
59
- ops,
60
- author,
61
- network,
62
- });
63
- const calldata = getCreateDaoSpaceCalldata({
64
- votingSettings: params.votingSettings,
65
- initialEditorSpaceIds: params.initialEditorSpaceIds,
66
- initialMemberSpaceIds: params.initialMemberSpaceIds ?? [],
67
- initialEditsContentUri: cid,
68
- initialTopicId: params.initialTopicId,
69
- });
70
- return {
71
- to: TESTNET.DAO_SPACE_FACTORY_ADDRESS,
72
- calldata,
73
- spaceEntityId,
74
- cid,
75
- };
9
+ const { network = 'TESTNET', ...args } = params;
10
+ return createGeoClient({ network: resolveGeoNetwork(network) }).daoSpaces.create(args);
76
11
  }
77
12
  //# sourceMappingURL=create-space.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-space.js","sourceRoot":"","sources":["../../../src/dao-space/create-space.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAyB;IACzD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,EAAE,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC;IAE9E,6BAA6B;IAC7B,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEzC,qDAAqD;IACrD,MAAM,GAAG,GAAS,EAAE,CAAC;IAErB,MAAM,EAAE,GAAG,EAAE,oBAAoB,EAAE,GAAG,YAAY,CAAC;QACjD,EAAE,EAAE,aAAa;QACjB,IAAI;QACJ,KAAK,EAAE,CAAC,UAAU,CAAC;KACpB,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;IAElC,yBAAyB;IACzB,GAAG,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IAE3B,qBAAqB;IACrB,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC;QAChC,IAAI,EAAE,qBAAqB,IAAI,EAAE;QACjC,GAAG;QACH,MAAM;QACN,OAAO;KACR,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,yBAAyB,CAAC;QACzC,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;QACnD,qBAAqB,EAAE,MAAM,CAAC,qBAAqB,IAAI,EAAE;QACzD,sBAAsB,EAAE,GAAG;QAC3B,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC,CAAC;IAEH,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,yBAAyB;QACrC,QAAQ;QACR,aAAa;QACb,GAAG;KACJ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-space.js","sourceRoot":"","sources":["../../../src/dao-space/create-space.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGnD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAyB;IACzD,MAAM,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAChD,OAAO,eAAe,CAAC,EAAE,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACzF,CAAC"}
@@ -2,28 +2,7 @@ import type { ExecuteProposalParams, ExecuteProposalResult } from './types.js';
2
2
  /**
3
3
  * Creates an execute transaction for a passed DAO space proposal.
4
4
  *
5
- * This function:
6
- * 1. Validates the author, DAO space, and proposal IDs
7
- * 2. Encodes the proposal ID as the data payload
8
- * 3. Encodes the SpaceRegistry's `enter()` call with the `PROPOSAL_EXECUTED` action
9
- *
10
- * Anyone can execute a proposal once it has passed the support threshold.
11
- *
12
- * @param params - The parameters for executing a proposal
13
- * @returns Object containing `to` (Space Registry address) and `calldata`
14
- *
15
- * @example
16
- * ```ts
17
- * import { daoSpace } from '@geoprotocol/geo-sdk';
18
- *
19
- * const { to, calldata } = daoSpace.executeProposal({
20
- * authorSpaceId: '0xAuthorBytes16SpaceId...',
21
- * spaceId: '0xDAOBytes16SpaceId...',
22
- * proposalId: '0xProposalBytes16Id...',
23
- * });
24
- *
25
- * await walletClient.sendTransaction({ to, data: calldata });
26
- * ```
5
+ * @deprecated Use `createGeoClient({ network }).daoSpaces.executeProposal(...)`.
27
6
  */
28
7
  export declare function executeProposal(params: ExecuteProposalParams): ExecuteProposalResult;
29
8
  //# sourceMappingURL=execute-proposal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execute-proposal.d.ts","sourceRoot":"","sources":["../../../src/dao-space/execute-proposal.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,qBAAqB,CA2CpF"}
1
+ {"version":3,"file":"execute-proposal.d.ts","sourceRoot":"","sources":["../../../src/dao-space/execute-proposal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/E;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,qBAAqB,CAapF"}
@@ -1,69 +1,22 @@
1
- import { encodeAbiParameters, encodeFunctionData } from 'viem';
2
- import { TESTNET } from '../../contracts.js';
3
- import { SpaceRegistryAbi } from '../abis/index.js';
4
- import { bytes16ToBytes32LeftAligned, EMPTY_SIGNATURE, ensure0xPrefix, isBytes16Hex, PROPOSAL_EXECUTED_ACTION, } from './constants.js';
1
+ import { createGeoClient } from '../client.js';
2
+ import { resolveGeoNetwork } from '../networks.js';
3
+ import { ensure0xPrefix, isBytes16Hex } from './constants.js';
5
4
  /**
6
5
  * Creates an execute transaction for a passed DAO space proposal.
7
6
  *
8
- * This function:
9
- * 1. Validates the author, DAO space, and proposal IDs
10
- * 2. Encodes the proposal ID as the data payload
11
- * 3. Encodes the SpaceRegistry's `enter()` call with the `PROPOSAL_EXECUTED` action
12
- *
13
- * Anyone can execute a proposal once it has passed the support threshold.
14
- *
15
- * @param params - The parameters for executing a proposal
16
- * @returns Object containing `to` (Space Registry address) and `calldata`
17
- *
18
- * @example
19
- * ```ts
20
- * import { daoSpace } from '@geoprotocol/geo-sdk';
21
- *
22
- * const { to, calldata } = daoSpace.executeProposal({
23
- * authorSpaceId: '0xAuthorBytes16SpaceId...',
24
- * spaceId: '0xDAOBytes16SpaceId...',
25
- * proposalId: '0xProposalBytes16Id...',
26
- * });
27
- *
28
- * await walletClient.sendTransaction({ to, data: calldata });
29
- * ```
7
+ * @deprecated Use `createGeoClient({ network }).daoSpaces.executeProposal(...)`.
30
8
  */
31
9
  export function executeProposal(params) {
32
- const { authorSpaceId: rawAuthorSpaceId, spaceId: rawSpaceId, proposalId: rawProposalId } = params;
33
- // Ensure 0x prefix on all IDs
34
- const authorSpaceId = ensure0xPrefix(rawAuthorSpaceId);
35
- const spaceId = ensure0xPrefix(rawSpaceId);
36
- const proposalId = ensure0xPrefix(rawProposalId);
37
- // Validate inputs
38
- if (!isBytes16Hex(authorSpaceId)) {
39
- throw new Error(`authorSpaceId must be bytes16 hex (32 hex chars). Received: ${rawAuthorSpaceId}`);
10
+ const { network = 'TESTNET', ...args } = params;
11
+ if (!isBytes16Hex(ensure0xPrefix(args.authorSpaceId))) {
12
+ throw new Error(`authorSpaceId must be bytes16 hex (32 hex chars). Received: ${args.authorSpaceId}`);
40
13
  }
41
- if (!isBytes16Hex(spaceId)) {
42
- throw new Error(`spaceId must be bytes16 hex (32 hex chars). Received: ${rawSpaceId}`);
14
+ if (!isBytes16Hex(ensure0xPrefix(args.spaceId))) {
15
+ throw new Error(`spaceId must be bytes16 hex (32 hex chars). Received: ${args.spaceId}`);
43
16
  }
44
- if (!isBytes16Hex(proposalId)) {
45
- throw new Error(`proposalId must be bytes16 hex (32 hex chars). Received: ${rawProposalId}`);
17
+ if (!isBytes16Hex(ensure0xPrefix(args.proposalId))) {
18
+ throw new Error(`proposalId must be bytes16 hex (32 hex chars). Received: ${args.proposalId}`);
46
19
  }
47
- // Convert proposalId to bytes32 for the topic (left-aligned)
48
- const topic = bytes16ToBytes32LeftAligned(proposalId);
49
- // Encode the execute data: proposalId (matches the contract's abi.decode format)
50
- const data = encodeAbiParameters([{ type: 'bytes16', name: 'proposalId' }], [proposalId]);
51
- // Encode the SpaceRegistry.enter() call
52
- const calldata = encodeFunctionData({
53
- abi: SpaceRegistryAbi,
54
- functionName: 'enter',
55
- args: [
56
- authorSpaceId, // fromSpaceId
57
- spaceId, // toSpaceId
58
- PROPOSAL_EXECUTED_ACTION, // action
59
- topic, // topic (proposalId left-aligned to bytes32)
60
- data, // data (encoded proposalId)
61
- EMPTY_SIGNATURE, // signature (unused when msg.sender == fromSpace)
62
- ],
63
- });
64
- return {
65
- to: TESTNET.SPACE_REGISTRY_ADDRESS,
66
- calldata,
67
- };
20
+ return createGeoClient({ network: resolveGeoNetwork(network) }).daoSpaces.executeProposal(args);
68
21
  }
69
22
  //# sourceMappingURL=execute-proposal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"execute-proposal.js","sourceRoot":"","sources":["../../../src/dao-space/execute-proposal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,cAAc,EACd,YAAY,EACZ,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAGxB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,eAAe,CAAC,MAA6B;IAC3D,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEnG,8BAA8B;IAC9B,MAAM,aAAa,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;IAEjD,kBAAkB;IAClB,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,+DAA+D,gBAAgB,EAAE,CAAC,CAAC;IACrG,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,yDAAyD,UAAU,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,4DAA4D,aAAa,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,6DAA6D;IAC7D,MAAM,KAAK,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;IAEtD,iFAAiF;IACjF,MAAM,IAAI,GAAG,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAE1F,wCAAwC;IACxC,MAAM,QAAQ,GAAG,kBAAkB,CAAC;QAClC,GAAG,EAAE,gBAAgB;QACrB,YAAY,EAAE,OAAO;QACrB,IAAI,EAAE;YACJ,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,YAAY;YACrB,wBAAwB,EAAE,SAAS;YACnC,KAAK,EAAE,6CAA6C;YACpD,IAAI,EAAE,4BAA4B;YAClC,eAAe,EAAE,kDAAkD;SACpE;KACF,CAAC,CAAC;IAEH,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,sBAAsB;QAClC,QAAQ;KACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"execute-proposal.js","sourceRoot":"","sources":["../../../src/dao-space/execute-proposal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9D;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAA6B;IAC3D,MAAM,EAAE,OAAO,GAAG,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAChD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,+DAA+D,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IACvG,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,yDAAyD,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC,4DAA4D,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACjG,CAAC;IAED,OAAO,eAAe,CAAC,EAAE,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AAClG,CAAC"}