@show-karma/karma-gap-sdk 0.4.15 → 0.4.16

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 (188) hide show
  1. package/.cursorrules +43 -0
  2. package/core/abi/AirdropNFT.json +1 -1
  3. package/core/abi/Allo.json +860 -860
  4. package/core/abi/AlloRegistry.json +578 -578
  5. package/core/abi/CommunityResolverABI.json +506 -506
  6. package/core/abi/Donations.json +251 -251
  7. package/core/abi/EAS.json +1 -1
  8. package/core/abi/MultiAttester.json +746 -746
  9. package/core/abi/ProjectResolver.json +574 -574
  10. package/core/abi/SchemaRegistry.json +1 -1
  11. package/core/abi/index.ts +21 -0
  12. package/core/class/AllGapSchemas.ts +21 -0
  13. package/core/class/Attestation.ts +429 -0
  14. package/core/class/Fetcher.ts +224 -0
  15. package/core/class/GAP.ts +481 -0
  16. package/core/class/GapSchema.ts +93 -0
  17. package/core/class/Gelato/{Gelato.js → Gelato.ts} +23 -0
  18. package/core/class/GrantProgramRegistry/Allo.ts +188 -0
  19. package/core/class/GrantProgramRegistry/AlloRegistry.ts +101 -0
  20. package/core/class/GraphQL/AxiosGQL.ts +29 -0
  21. package/core/class/GraphQL/EASClient.ts +34 -0
  22. package/core/class/GraphQL/GapEasClient.ts +869 -0
  23. package/core/class/Schema.ts +659 -0
  24. package/core/class/SchemaError.ts +42 -0
  25. package/core/class/contract/GapContract.ts +457 -0
  26. package/core/class/entities/Community.ts +148 -0
  27. package/core/class/entities/ContributorProfile.ts +108 -0
  28. package/core/class/entities/Grant.ts +321 -0
  29. package/core/class/entities/GrantUpdate.ts +187 -0
  30. package/core/class/entities/MemberOf.ts +52 -0
  31. package/core/class/entities/Milestone.ts +898 -0
  32. package/core/class/entities/Project.ts +672 -0
  33. package/core/class/entities/ProjectImpact.ts +170 -0
  34. package/core/class/entities/ProjectMilestone.ts +254 -0
  35. package/core/class/entities/ProjectPointer.ts +39 -0
  36. package/core/class/entities/ProjectUpdate.ts +176 -0
  37. package/core/class/entities/Track.ts +32 -0
  38. package/core/class/karma-indexer/GapIndexerClient.ts +383 -0
  39. package/core/class/karma-indexer/api/GapIndexerApi.ts +446 -0
  40. package/core/class/karma-indexer/api/types.ts +313 -0
  41. package/core/class/remote-storage/IpfsStorage.ts +76 -0
  42. package/core/class/remote-storage/RemoteStorage.ts +65 -0
  43. package/core/class/types/allo.ts +93 -0
  44. package/core/class/types/attestations.ts +223 -0
  45. package/core/consts.ts +775 -0
  46. package/core/scripts/create-grant.ts +102 -0
  47. package/core/scripts/create-program.ts +43 -0
  48. package/core/scripts/create-schemas.ts +65 -0
  49. package/core/scripts/deploy.ts +65 -0
  50. package/core/scripts/index.ts +1 -0
  51. package/core/scripts/milestone-multi-grants.ts +125 -0
  52. package/core/shared/types.ts +13 -0
  53. package/core/types.ts +224 -0
  54. package/core/utils/gelato/send-gelato-txn.ts +114 -0
  55. package/core/utils/gelato/sponsor-handler.ts +77 -0
  56. package/core/utils/gelato/watch-gelato-txn.ts +67 -0
  57. package/core/utils/get-date.ts +3 -0
  58. package/core/utils/get-ipfs-data.ts +13 -0
  59. package/core/utils/get-web3-provider.ts +18 -0
  60. package/core/utils/gql-queries.ts +133 -0
  61. package/core/utils/map-filter.ts +21 -0
  62. package/core/utils/serialize-bigint.ts +7 -0
  63. package/core/utils/to-unix.ts +18 -0
  64. package/create-community-example.ts +119 -0
  65. package/csv-upload/README.md +74 -0
  66. package/csv-upload/config.ts +41 -0
  67. package/csv-upload/example.csv +2 -0
  68. package/csv-upload/keys.example.json +8 -0
  69. package/csv-upload/scripts/run.ts +417 -0
  70. package/csv-upload/types.ts +39 -0
  71. package/docs/.gitkeep +0 -0
  72. package/docs/images/attestation-architecture.png +0 -0
  73. package/docs/images/dfd-get-projects.png +0 -0
  74. package/gap-schema.yaml +155 -0
  75. package/milestone-workflow-example.ts +353 -0
  76. package/package.json +45 -39
  77. package/readme.md +872 -0
  78. package/schemas/.gitkeep +0 -0
  79. package/schemas/GAP-schemas-1692135812877.json +33 -0
  80. package/test-file-indexer-api.ts +25 -0
  81. package/tsconfig.json +26 -0
  82. package/core/abi/index.d.ts +0 -1114
  83. package/core/abi/index.js +0 -26
  84. package/core/class/AllGapSchemas.d.ts +0 -9
  85. package/core/class/AllGapSchemas.js +0 -19
  86. package/core/class/Attestation.d.ts +0 -173
  87. package/core/class/Attestation.js +0 -333
  88. package/core/class/Fetcher.d.ts +0 -175
  89. package/core/class/Fetcher.js +0 -13
  90. package/core/class/GAP.d.ts +0 -254
  91. package/core/class/GAP.js +0 -289
  92. package/core/class/GapSchema.d.ts +0 -34
  93. package/core/class/GapSchema.js +0 -62
  94. package/core/class/GrantProgramRegistry/Allo.d.ts +0 -17
  95. package/core/class/GrantProgramRegistry/Allo.js +0 -137
  96. package/core/class/GrantProgramRegistry/AlloRegistry.d.ts +0 -15
  97. package/core/class/GrantProgramRegistry/AlloRegistry.js +0 -70
  98. package/core/class/GraphQL/AxiosGQL.d.ts +0 -6
  99. package/core/class/GraphQL/AxiosGQL.js +0 -25
  100. package/core/class/GraphQL/EASClient.d.ts +0 -16
  101. package/core/class/GraphQL/EASClient.js +0 -26
  102. package/core/class/GraphQL/GapEasClient.d.ts +0 -71
  103. package/core/class/GraphQL/GapEasClient.js +0 -451
  104. package/core/class/GraphQL/index.js +0 -19
  105. package/core/class/Schema.d.ts +0 -233
  106. package/core/class/Schema.js +0 -488
  107. package/core/class/SchemaError.d.ts +0 -30
  108. package/core/class/SchemaError.js +0 -39
  109. package/core/class/contract/GapContract.d.ts +0 -102
  110. package/core/class/contract/GapContract.js +0 -285
  111. package/core/class/entities/Community.d.ts +0 -34
  112. package/core/class/entities/Community.js +0 -109
  113. package/core/class/entities/ContributorProfile.d.ts +0 -41
  114. package/core/class/entities/ContributorProfile.js +0 -69
  115. package/core/class/entities/Grant.d.ts +0 -54
  116. package/core/class/entities/Grant.js +0 -223
  117. package/core/class/entities/GrantUpdate.d.ts +0 -40
  118. package/core/class/entities/GrantUpdate.js +0 -114
  119. package/core/class/entities/MemberOf.d.ts +0 -11
  120. package/core/class/entities/MemberOf.js +0 -33
  121. package/core/class/entities/Milestone.d.ts +0 -168
  122. package/core/class/entities/Milestone.js +0 -657
  123. package/core/class/entities/Project.d.ts +0 -92
  124. package/core/class/entities/Project.js +0 -418
  125. package/core/class/entities/ProjectImpact.d.ts +0 -50
  126. package/core/class/entities/ProjectImpact.js +0 -112
  127. package/core/class/entities/ProjectMilestone.d.ts +0 -60
  128. package/core/class/entities/ProjectMilestone.js +0 -174
  129. package/core/class/entities/ProjectPointer.d.ts +0 -12
  130. package/core/class/entities/ProjectPointer.js +0 -22
  131. package/core/class/entities/ProjectUpdate.d.ts +0 -50
  132. package/core/class/entities/ProjectUpdate.js +0 -110
  133. package/core/class/entities/Track.d.ts +0 -16
  134. package/core/class/entities/Track.js +0 -21
  135. package/core/class/entities/index.js +0 -26
  136. package/core/class/index.js +0 -26
  137. package/core/class/karma-indexer/GapIndexerClient.d.ts +0 -66
  138. package/core/class/karma-indexer/GapIndexerClient.js +0 -207
  139. package/core/class/karma-indexer/api/GapIndexerApi.d.ts +0 -73
  140. package/core/class/karma-indexer/api/GapIndexerApi.js +0 -256
  141. package/core/class/karma-indexer/api/types.d.ts +0 -295
  142. package/core/class/karma-indexer/api/types.js +0 -2
  143. package/core/class/remote-storage/IpfsStorage.d.ts +0 -23
  144. package/core/class/remote-storage/IpfsStorage.js +0 -56
  145. package/core/class/remote-storage/RemoteStorage.d.ts +0 -41
  146. package/core/class/remote-storage/RemoteStorage.js +0 -38
  147. package/core/class/types/allo.d.ts +0 -78
  148. package/core/class/types/allo.js +0 -2
  149. package/core/class/types/attestations.d.ts +0 -168
  150. package/core/class/types/attestations.js +0 -66
  151. package/core/consts.d.ts +0 -48
  152. package/core/consts.js +0 -641
  153. package/core/index.js +0 -24
  154. package/core/shared/types.d.ts +0 -6
  155. package/core/shared/types.js +0 -2
  156. package/core/types.d.ts +0 -131
  157. package/core/types.js +0 -13
  158. package/core/utils/gelato/index.js +0 -19
  159. package/core/utils/gelato/send-gelato-txn.d.ts +0 -55
  160. package/core/utils/gelato/send-gelato-txn.js +0 -100
  161. package/core/utils/gelato/sponsor-handler.d.ts +0 -9
  162. package/core/utils/gelato/sponsor-handler.js +0 -60
  163. package/core/utils/gelato/watch-gelato-txn.d.ts +0 -7
  164. package/core/utils/gelato/watch-gelato-txn.js +0 -63
  165. package/core/utils/get-date.d.ts +0 -1
  166. package/core/utils/get-date.js +0 -7
  167. package/core/utils/get-ipfs-data.d.ts +0 -1
  168. package/core/utils/get-ipfs-data.js +0 -20
  169. package/core/utils/get-web3-provider.d.ts +0 -2
  170. package/core/utils/get-web3-provider.js +0 -18
  171. package/core/utils/gql-queries.d.ts +0 -12
  172. package/core/utils/gql-queries.js +0 -90
  173. package/core/utils/index.js +0 -23
  174. package/core/utils/map-filter.d.ts +0 -8
  175. package/core/utils/map-filter.js +0 -20
  176. package/core/utils/serialize-bigint.d.ts +0 -1
  177. package/core/utils/serialize-bigint.js +0 -8
  178. package/core/utils/to-unix.d.ts +0 -1
  179. package/core/utils/to-unix.js +0 -25
  180. package/index.js +0 -17
  181. /package/core/class/GraphQL/{index.d.ts → index.ts} +0 -0
  182. /package/core/class/entities/{index.d.ts → index.ts} +0 -0
  183. /package/core/class/{index.d.ts → index.ts} +0 -0
  184. /package/core/{index.d.ts → index.ts} +0 -0
  185. /package/core/utils/gelato/{index.d.ts → index.ts} +0 -0
  186. /package/core/utils/{index.d.ts → index.ts} +0 -0
  187. /package/{core/class/Gelato/Gelato.d.ts → csv-upload/.gitkeep} +0 -0
  188. /package/{index.d.ts → index.ts} +0 -0
package/core/consts.ts ADDED
@@ -0,0 +1,775 @@
1
+ import {
2
+ EASNetworkConfig,
3
+ SchemaInterface,
4
+ TNetwork,
5
+ TSchemaName,
6
+ } from "./types";
7
+
8
+ const oldStatusSchema = [
9
+ { type: "string", name: "type", value: null },
10
+ { type: "string", name: "reason", value: null },
11
+ ]
12
+
13
+ /**
14
+ * Schemas that should use default EAS attestation
15
+ * instead of the custom contract.
16
+ */
17
+ export const useDefaultAttestation: TSchemaName[] = [
18
+ "MilestoneApproved",
19
+ "MilestoneCompleted",
20
+ "GrantVerified",
21
+ "Community",
22
+ "GrantUpdateStatus",
23
+ "ProjectUpdateStatus",
24
+ ];
25
+
26
+ export const chainIdToNetwork = {
27
+ 11155420: "optimism-sepolia",
28
+ 42161: "arbitrum",
29
+ 10: "optimism",
30
+ 11155111: "sepolia",
31
+ 84532: "base-sepolia",
32
+ 42220: "celo",
33
+ 1328: "sei-testnet",
34
+ 1329: "sei",
35
+ 1135: "lisk",
36
+ 534352: "scroll",
37
+ };
38
+
39
+ export const nullRef =
40
+ "0x0000000000000000000000000000000000000000000000000000000000000000";
41
+
42
+ // TODO: Remove null resolver and change usage to zero address
43
+ export const nullResolver = "0x0000000000000000000000000000000000000000";
44
+
45
+ export const zeroAddress = nullResolver;
46
+ // resolver for dependents = 0xed081ABE885bc3575f810c904052A1f685A85903
47
+ /**
48
+ * The networks that are supported by the EAS
49
+ */
50
+ export const Networks: Record<TNetwork, EASNetworkConfig> = {
51
+ optimism: {
52
+ chainId: 10,
53
+ url: "https://optimism.easscan.org/graphql",
54
+ rpcUrl:
55
+ "https://opt-mainnet.g.alchemy.com/v2/fx2SlVDrPbXwPMQT4v0lRT1PABA16Myl",
56
+ contracts: {
57
+ eas: "0x4200000000000000000000000000000000000021",
58
+ schema: "0x4200000000000000000000000000000000000020",
59
+ multicall: "0xd2eD366393FDfd243931Fe48e9fb65A192B0018c", //proxy,
60
+ projectResolver: "0x7177AdC0f924b695C0294A40C4C5FEFf5EE1E141",
61
+ communityResolver: "0x6dC1D6b864e8BEf815806f9e4677123496e12026",
62
+ donations: "0x021896771412C1D3f31BC7B01fFA3a6A17c5dA30",
63
+ airdropNFT: "0x2bB9aB0084477c1306A7da80f5DCDdBca4139112",
64
+ },
65
+ schemas: {
66
+ Community:
67
+ "0x721c17b065dccc5c916e0c2708d0ef50f1810591b76d0402ff6fe5accbd8488f",
68
+ Details:
69
+ "0x70a3f615f738fc6a4f56100692ada93d947c028b840940d97af7e7d6f0fa0577",
70
+ Grant:
71
+ "0x12837231f48acbca4e1e7f4416f684f3353bd4d71d4f03a09d29e5ffa6f21a50",
72
+ GrantVerified:
73
+ "0xdc3f4d0938b1d029d825c01b3c53ad955e0ef3eabc1f57c1ebde90de2bf527ae",
74
+ MemberOf:
75
+ "0x7fbb8a65924d8ad2ae12356e04b1418043e8361ba3b1b6c917de2e23df3ec81c",
76
+ MilestoneApproved:
77
+ "0xdc3f4d0938b1d029d825c01b3c53ad955e0ef3eabc1f57c1ebde90de2bf527ae",
78
+ MilestoneCompleted:
79
+ "0xdc3f4d0938b1d029d825c01b3c53ad955e0ef3eabc1f57c1ebde90de2bf527ae",
80
+ GrantUpdateStatus:
81
+ "0xdc3f4d0938b1d029d825c01b3c53ad955e0ef3eabc1f57c1ebde90de2bf527ae",
82
+ Project:
83
+ "0x5b873b6e7a16207b526dde366e8164e95bcda2f009272306519667c5e94d2191",
84
+ ProjectUpdateStatus:
85
+ "0xdc3f4d0938b1d029d825c01b3c53ad955e0ef3eabc1f57c1ebde90de2bf527ae",
86
+ ProjectMilestoneStatus:
87
+ "0xdc3f4d0938b1d029d825c01b3c53ad955e0ef3eabc1f57c1ebde90de2bf527ae",
88
+ ContributorProfile: "0x3b4d5890c1613be229b9f0f20e8244e1b46dab4d01fc18373d2570483c552ce4"
89
+ },
90
+ oldSchemas: [
91
+ {
92
+ name: "GrantVerified",
93
+ uid: "0x13adc8df8a7324b1651e8bcec948b3e2d4fcfa2a88a52136206cb9ea44836e93",
94
+ raw: oldStatusSchema
95
+ },
96
+ {
97
+ name: "MilestoneApproved",
98
+ uid: "0x13adc8df8a7324b1651e8bcec948b3e2d4fcfa2a88a52136206cb9ea44836e93",
99
+ raw: oldStatusSchema
100
+ },
101
+ {
102
+ name: "MilestoneCompleted",
103
+ uid: "0x13adc8df8a7324b1651e8bcec948b3e2d4fcfa2a88a52136206cb9ea44836e93",
104
+ raw: oldStatusSchema
105
+ },
106
+ {
107
+ name: "GrantUpdateStatus",
108
+ uid: "0x13adc8df8a7324b1651e8bcec948b3e2d4fcfa2a88a52136206cb9ea44836e93",
109
+ raw: oldStatusSchema
110
+ },
111
+ {
112
+ name: "ProjectUpdateStatus",
113
+ uid: "0x13adc8df8a7324b1651e8bcec948b3e2d4fcfa2a88a52136206cb9ea44836e93",
114
+ raw: oldStatusSchema
115
+ },
116
+ ]
117
+ },
118
+ "optimism-sepolia": {
119
+ chainId: 11155420,
120
+ url: "https://optimism-sepolia.easscan.org/graphql",
121
+ rpcUrl:
122
+ "https://opt-sepolia.g.alchemy.com/v2/9FEqTNKmgO7X7ll92ALJrEih7Jjhldf-",
123
+ contracts: {
124
+ communityResolver: "0xa5B7bbFD545A1a816aa8cBE28a1F0F2Cca58363d",
125
+ eas: "0x4200000000000000000000000000000000000021",
126
+ multicall: "0xC891F8eBA218f5034bf3a472528408BE19E1130E",
127
+ projectResolver: "0x832931F23ea4e3c70957DA71a7eB50F5B7efA93D",
128
+ schema: "0x4200000000000000000000000000000000000020",
129
+ donations: "0x3caF83Ed040501f1f439fb22E198bB5a67Bc2884",
130
+ airdropNFT: "0x57d6A954E051145D7E9dD81decaeA6d7Feb640ee",
131
+ },
132
+ schemas: {
133
+ Community:
134
+ "0x314bb1c3c9b5311c1b813a3ad123b6ac5a03902b987795056dd2e4ff38e833ea",
135
+ Details:
136
+ "0xd193e75f420a69910f98fa79cacdfd9d0dcbf5933edce8f8bde9a10bd204d996",
137
+ Grant:
138
+ "0x181beb00ef05cf99caa2e4192369232f210c2764f26e238d962112bf592e9cce",
139
+ GrantVerified:
140
+ "0x6f8e6a1394bdc398f8d93a99b0ecca326d04470a4f0ee5c379bb85a458a322e4",
141
+ MemberOf:
142
+ "0x611f9655188f372e27dce116a803fa9081ca3e2907986368d54fcad538ca3853",
143
+ MilestoneApproved:
144
+ "0x6f8e6a1394bdc398f8d93a99b0ecca326d04470a4f0ee5c379bb85a458a322e4",
145
+ MilestoneCompleted:
146
+ "0x6f8e6a1394bdc398f8d93a99b0ecca326d04470a4f0ee5c379bb85a458a322e4",
147
+ GrantUpdateStatus:
148
+ "0x6f8e6a1394bdc398f8d93a99b0ecca326d04470a4f0ee5c379bb85a458a322e4",
149
+ Project:
150
+ "0xf9bbd118dd100459a7d093403af21c6e7f847fd7f331b7a4e6bfb94a1366bd76",
151
+ ProjectUpdateStatus:
152
+ "0x6f8e6a1394bdc398f8d93a99b0ecca326d04470a4f0ee5c379bb85a458a322e4",
153
+ ProjectMilestoneStatus:
154
+ "0x6f8e6a1394bdc398f8d93a99b0ecca326d04470a4f0ee5c379bb85a458a322e4",
155
+ ContributorProfile:
156
+ "0x18f95014ea1249287fa962a42bc5a1d023b42133ee28ec90730939ec082f8daf"
157
+ },
158
+ oldSchemas: [
159
+ {
160
+ name: "GrantVerified",
161
+ uid: "0xf9ec600d61d88614c863365a79715a7ba29781ec67643ffeb9222dd8873ee3fa",
162
+ raw: oldStatusSchema
163
+ },
164
+ {
165
+ name: "MilestoneApproved",
166
+ uid: "0xf9ec600d61d88614c863365a79715a7ba29781ec67643ffeb9222dd8873ee3fa",
167
+ raw: oldStatusSchema
168
+ },
169
+ {
170
+ name: "MilestoneCompleted",
171
+ uid: "0xf9ec600d61d88614c863365a79715a7ba29781ec67643ffeb9222dd8873ee3fa",
172
+ raw: oldStatusSchema
173
+ },
174
+ {
175
+ name: "GrantUpdateStatus",
176
+ uid: "0xf9ec600d61d88614c863365a79715a7ba29781ec67643ffeb9222dd8873ee3fa",
177
+ raw: oldStatusSchema
178
+ },
179
+ {
180
+ name: "ProjectUpdateStatus",
181
+ uid: "0xf9ec600d61d88614c863365a79715a7ba29781ec67643ffeb9222dd8873ee3fa",
182
+ raw: oldStatusSchema
183
+ },
184
+ ]
185
+ },
186
+ arbitrum: {
187
+ chainId: 42161,
188
+ url: "https://arbitrum.easscan.org/graphql",
189
+ rpcUrl:
190
+ "https://arb-mainnet.g.alchemy.com/v2/okcKBSKXvLuSCbas6QWGvKuh-IcHHSOr",
191
+ contracts: {
192
+ eas: "0xbD75f629A22Dc1ceD33dDA0b68c546A1c035c458",
193
+ schema: "0xA310da9c5B885E7fb3fbA9D66E9Ba6Df512b78eB",
194
+ multicall: "0x6dC1D6b864e8BEf815806f9e4677123496e12026", //proxy,
195
+ projectResolver: "0x28BE0b0515be8BB8822aF1467A6613795E74717b",
196
+ communityResolver: "0xD534C4704F82494aBbc901560046fB62Ac63E9C4",
197
+ donations: "0x475F3E915601d975c792E6116791FBe9ACdBE902",
198
+ airdropNFT: "0xe957aFd24F91e6A14F4d47E801d70b876176772a",
199
+ },
200
+ schemas: {
201
+ Community:
202
+ "0xc604f0661cfd522583835ed2b2c644b80e068139d287f93c7f1680888894bacc",
203
+ Details:
204
+ "0x16bfe4783b7a9c743c401222c56a07ecb77ed42afc84b61ff1f62f5936c0b9d7",
205
+ Grant:
206
+ "0xea02ab33f9f4c92ba02c9bb21614b7410b98c940a0d8eb8ad3a20204d8b4bda5",
207
+ GrantVerified:
208
+ "0x93391c496898c63995f23797835c8e0468be338f0dbc2df62edfd70856cde1d4",
209
+ MemberOf:
210
+ "0x5f430aec9d04f0dcb3729775c5dfe10752e436469a7607f8c64ae44ef996e477",
211
+ MilestoneApproved:
212
+ "0x93391c496898c63995f23797835c8e0468be338f0dbc2df62edfd70856cde1d4",
213
+ MilestoneCompleted:
214
+ "0x93391c496898c63995f23797835c8e0468be338f0dbc2df62edfd70856cde1d4",
215
+ GrantUpdateStatus:
216
+ "0x93391c496898c63995f23797835c8e0468be338f0dbc2df62edfd70856cde1d4",
217
+ Project:
218
+ "0xac2a06e955a7e25e6729efe1a6532237e3435b21ccd3dc827ae3c94e624d25b3",
219
+ ProjectUpdateStatus:
220
+ "0x93391c496898c63995f23797835c8e0468be338f0dbc2df62edfd70856cde1d4",
221
+ ProjectMilestoneStatus:
222
+ "0x93391c496898c63995f23797835c8e0468be338f0dbc2df62edfd70856cde1d4",
223
+ ContributorProfile: "0xb2c86dba2ae6850162914ba13ccfb7ac51dd0cbdf96cac38ec41386bad3a3720"
224
+ },
225
+ oldSchemas: [
226
+ {
227
+ name: "GrantVerified",
228
+ uid: "0xd25ccdfbf87659a9081681eb90598d8b944ed28544da7d57c3ccbe6e6422cc15",
229
+ raw: oldStatusSchema
230
+ },
231
+ {
232
+ name: "MilestoneApproved",
233
+ uid: "0xd25ccdfbf87659a9081681eb90598d8b944ed28544da7d57c3ccbe6e6422cc15",
234
+ raw: oldStatusSchema
235
+ },
236
+ {
237
+ name: "MilestoneCompleted",
238
+ uid: "0xd25ccdfbf87659a9081681eb90598d8b944ed28544da7d57c3ccbe6e6422cc15",
239
+ raw: oldStatusSchema
240
+ },
241
+ {
242
+ name: "GrantUpdateStatus",
243
+ uid: "0xd25ccdfbf87659a9081681eb90598d8b944ed28544da7d57c3ccbe6e6422cc15",
244
+ raw: oldStatusSchema
245
+ },
246
+ {
247
+ name: "ProjectUpdateStatus",
248
+ uid: "0xd25ccdfbf87659a9081681eb90598d8b944ed28544da7d57c3ccbe6e6422cc15",
249
+ raw: oldStatusSchema
250
+ },
251
+ ]
252
+ },
253
+ sepolia: {
254
+ chainId: 11155111,
255
+ url: "https://sepolia.easscan.org/graphql",
256
+ rpcUrl:
257
+ "https://eth-sepolia.g.alchemy.com/v2/_M6YQg_DoVKuMisaFHSVZL-EcdkTbhUi",
258
+ contracts: {
259
+ eas: "0xC2679fBD37d54388Ce493F1DB75320D236e1815e",
260
+ schema: "0x0a7E2Ff54e76B8E6659aedc9103FB21c038050D0",
261
+ multicall: "0xec8d7BFe344790FD860920C41B46B259c005727A",
262
+ projectResolver: "0x099787D5a5aC92779A519CfD925ACB0Dc7E8bd23",
263
+ communityResolver: "0xa9E55D9F52d7B47792d2Db15F6A9674c56ccc5C9",
264
+ donations: "0xb2021F7550b8B07cA71696159B592C1F713593e4",
265
+ airdropNFT: "0x11f48e68Ff894D417956839263337a2989822703",
266
+ },
267
+ schemas: {
268
+ Community:
269
+ "0xf3d790c7fdab6c1b1f25ffcc9289e5be2792eb596d2851a4d059c8aae1bc8b2e", //test with resolver
270
+ // "0x1954572e3fe21bf4334afdaf1358ed7098af1ed136e76dc93c2fdc25e83934c1", // original without resolver
271
+ Details:
272
+ "0x2c270e35bfcdc4d611f0e9d3d2ab6924ec6c673505abc22a1dd07e19b67211af",
273
+ Grant:
274
+ "0x09697aeeb3ae71de1cc19e388fd74264f11af5fba3016094764553ac341fdc72", // with communityUID/resolver
275
+ GrantVerified:
276
+ "0x0be8952e2dd74ffd63a02f4d55b20b603fe7a60130cb9d70de31feb9c52fdd37",
277
+ MemberOf:
278
+ "0xdd87b3500457931252424f4439365534ba72a367503a8805ff3482353fb90301",
279
+ MilestoneApproved:
280
+ "0xcdef0e492d2e7ad25d0b0fdb868f6dcd1f5e5c30e42fd5fa0debdc12f7618322",
281
+ MilestoneCompleted:
282
+ "0xcdef0e492d2e7ad25d0b0fdb868f6dcd1f5e5c30e42fd5fa0debdc12f7618322",
283
+ GrantUpdateStatus:
284
+ "0xcdef0e492d2e7ad25d0b0fdb868f6dcd1f5e5c30e42fd5fa0debdc12f7618322",
285
+ Project:
286
+ "0xec77990a252b54b17673955c774b9712766de5eecb22ca5aa2c440e0e93257fb",
287
+ ProjectUpdateStatus:
288
+ "0xcdef0e492d2e7ad25d0b0fdb868f6dcd1f5e5c30e42fd5fa0debdc12f7618322",
289
+ ProjectMilestoneStatus:
290
+ "0xcdef0e492d2e7ad25d0b0fdb868f6dcd1f5e5c30e42fd5fa0debdc12f7618322",
291
+ ContributorProfile: "0x"
292
+ },
293
+ },
294
+ "base-sepolia": {
295
+ chainId: 84532,
296
+ url: "https://base-sepolia.easscan.org/graphql",
297
+ rpcUrl: "https://sepolia.base.org",
298
+ contracts: {
299
+ eas: "0x4200000000000000000000000000000000000021",
300
+ schema: "0x4200000000000000000000000000000000000020",
301
+ multicall: "0x4Ca7230fB6b78875bdd1B1e4F665B7B7f1891239",
302
+ projectResolver: "0xC891F8eBA218f5034bf3a472528408BE19E1130E",
303
+ communityResolver: "0x009dC7dF3Ea3b23CE80Fd3Ba811d5bA5675934A1",
304
+ donations: "0x61eD6D070EE996698fB35B909e45111402336645",
305
+ airdropNFT: "0xa9c31794385A217832D4C8E200CfA6A8da9c7B32",
306
+ },
307
+ schemas: {
308
+ Community:
309
+ "0xe130107659909d20cbd75a2c82e1988b09b1c08fd39ad6f4397ce27c089e0e95",
310
+ Details:
311
+ "0x9b06f811608d135f913c18295486693fe626f35e213a7d132be87b1f952e508c",
312
+ Grant:
313
+ "0x2fb93aac9ef8450a5f615ac6916684d50978ea2a405ac5f918d6d9f367366a78",
314
+ GrantVerified:
315
+ "0xe9cce07bd9295aafc78faa7afdd88a6fad6fd61834a048fb8c3dbc86cb471f81",
316
+ MemberOf:
317
+ "0x857398d86e2d31bec5af882b950ee7b00d1fefefba2432737ab28b68ee041eb8",
318
+ MilestoneApproved:
319
+ "0xe9cce07bd9295aafc78faa7afdd88a6fad6fd61834a048fb8c3dbc86cb471f81",
320
+ MilestoneCompleted:
321
+ "0xe9cce07bd9295aafc78faa7afdd88a6fad6fd61834a048fb8c3dbc86cb471f81",
322
+ GrantUpdateStatus:
323
+ "0xe9cce07bd9295aafc78faa7afdd88a6fad6fd61834a048fb8c3dbc86cb471f81",
324
+ Project:
325
+ "0x5ddd6b7a11406771308431ca9bd146cc717848b74b52993a532dc1aad0ccc83f",
326
+ ProjectUpdateStatus:
327
+ "0xe9cce07bd9295aafc78faa7afdd88a6fad6fd61834a048fb8c3dbc86cb471f81",
328
+ ProjectMilestoneStatus:
329
+ "0xe9cce07bd9295aafc78faa7afdd88a6fad6fd61834a048fb8c3dbc86cb471f81",
330
+ ContributorProfile: "0x18a987f800645fb6ae7fa0398da5cf5a67c866b0628774f16f485b320111416a"
331
+ },
332
+ },
333
+ celo: {
334
+ chainId: 42220,
335
+ url: "https://celo.easscan.org/graphql",
336
+ rpcUrl: "https://forno.celo.org",
337
+ contracts: {
338
+ eas: "0x72E1d8ccf5299fb36fEfD8CC4394B8ef7e98Af92",
339
+ schema: "0x5ece93bE4BDCF293Ed61FA78698B594F2135AF34",
340
+ multicall: "0x8791Ac8c099314bB1D1514D76de13a1E80275950",
341
+ projectResolver: "0x6dC1D6b864e8BEf815806f9e4677123496e12026",
342
+ communityResolver: "0xfddb660F2F1C27d219372210745BB9f73431856E",
343
+ donations: "0xf373467c21841DF20529FAA8bE49381106DBc258",
344
+ airdropNFT: "0x884F839fA169B5ECfF5d65CA600C2B43C1F6f668",
345
+ },
346
+ schemas: {
347
+ Community:
348
+ "0x3c2231024f4f17f3718b5bd9ed9ff29cc323dea5449f9ceba11a9888bfbdd0e1",
349
+ Details:
350
+ "0x9895e82115987d8e3e02b35ced92e6a0509293890333f58f50ec291b34853dac",
351
+ Grant:
352
+ "0x7afa603a89cee2d8f93d30007e2c64efddc6509fd76aa95d2ccd97b6e34acc71",
353
+ GrantVerified:
354
+ "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088",
355
+ MemberOf:
356
+ "0xb4186a2401f40a4c78768941ef9140e1fbe5fe595053a65d44f31d6df180b712",
357
+ MilestoneApproved:
358
+ "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088",
359
+ MilestoneCompleted:
360
+ "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088",
361
+ GrantUpdateStatus:
362
+ "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088",
363
+ Project:
364
+ "0xf3f753b41e04d1052b5a5ec7624d1dfdb6c2da288a985120e477ddbcac071022",
365
+ ProjectUpdateStatus:
366
+ "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088",
367
+ ProjectMilestoneStatus:
368
+ "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088",
369
+ ContributorProfile: "0x349e661a7546b08be1f1f6a738fbde4af2be7549e7817d26f06e0c53c3544108"
370
+ },
371
+ oldSchemas: [
372
+ {
373
+ name: "GrantVerified",
374
+ uid: "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
375
+ raw: oldStatusSchema
376
+ },
377
+ {
378
+ name: "MilestoneApproved",
379
+ uid: "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
380
+ raw: oldStatusSchema
381
+ },
382
+ {
383
+ name: "MilestoneCompleted",
384
+ uid: "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
385
+ raw: oldStatusSchema
386
+ },
387
+ {
388
+ name: "GrantUpdateStatus",
389
+ uid: "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
390
+ raw: oldStatusSchema
391
+ },
392
+ {
393
+ name: "ProjectUpdateStatus",
394
+ uid: "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
395
+ raw: oldStatusSchema
396
+ },
397
+ ]
398
+ },
399
+ sei: {
400
+ chainId: 1329,
401
+ url: "https://sei.easscan.org/graphql",
402
+ rpcUrl: "https://muddy-orbital-arrow.sei-pacific.quiknode.pro/594552c3ab4ed4106b40402c16dba137ab279d40",
403
+ contracts: {
404
+ eas: "0x391020888b0adBA584A67693458b374e4141f838",
405
+ schema: "0x80A4B50f549a8271e10A6C8e79172cb56f35fD57",
406
+ multicall: "0xB80D85690747C3E2ceCc0f8529594C6602b642D5",
407
+ projectResolver: "0x96f36F25C6bD648d9bdBbd8C3E029CfB2394754d",
408
+ communityResolver: "0x61d519C99279DC91fC2FC56B177f42B90B35050E",
409
+ donations: "0xB80D85690747C3E2ceCc0f8529594C6602b642D5",
410
+ airdropNFT: "0xfced53EA1b05F0ef10f86757933cbD4A4e6D9c6e",
411
+ },
412
+ schemas: {
413
+ Community:
414
+ "0x57dee0b7e1aa8e5c6280c27fecf2edeb225f1b87b47e2750f9dc7eaebe57a2ba",
415
+ Details:
416
+ "0x1b4365b92aa47de3f67cdfb53127518381c1e66e0d9e0f8a15bbfa7250950967",
417
+ Grant:
418
+ "0xe9030dc574039832103dd5939f9dd214340602d2af4bbf1c8b2666e720ed0bf6",
419
+ GrantVerified:
420
+ "0xc3b9bee0be3a6ea92f76fa459922a088824e29798becdc82d81f6b2309442563",
421
+ MemberOf:
422
+ "0xb7278b94cea2b9f1a8fdd1c4bb52ed66906516a0ff9d59d0f80daffcf147ea5d",
423
+ MilestoneApproved:
424
+ "0xc3b9bee0be3a6ea92f76fa459922a088824e29798becdc82d81f6b2309442563",
425
+ MilestoneCompleted:
426
+ "0xc3b9bee0be3a6ea92f76fa459922a088824e29798becdc82d81f6b2309442563",
427
+ GrantUpdateStatus:
428
+ "0xc3b9bee0be3a6ea92f76fa459922a088824e29798becdc82d81f6b2309442563",
429
+ Project:
430
+ "0xf6b89107f8096220051240b89a48abb66e0a23e529c914953b80f5a2bc5ea44c",
431
+ ProjectUpdateStatus:
432
+ "0xc3b9bee0be3a6ea92f76fa459922a088824e29798becdc82d81f6b2309442563",
433
+ ProjectMilestoneStatus:
434
+ "0xc3b9bee0be3a6ea92f76fa459922a088824e29798becdc82d81f6b2309442563",
435
+ ContributorProfile: "0x3d26bc89de1e6b5c6d4430758ed2b595d9265a392e735c6f3cd795e8c200d744"
436
+ },
437
+ oldSchemas: [
438
+ {
439
+ name: "GrantVerified",
440
+ uid: "0x6edc90af92553109cfed1292a67a75b34e41880bd8a61e9d05db0473b69a2f9e",
441
+ raw: oldStatusSchema
442
+ },
443
+ {
444
+ name: "MilestoneApproved",
445
+ uid: "0x6edc90af92553109cfed1292a67a75b34e41880bd8a61e9d05db0473b69a2f9e",
446
+ raw: oldStatusSchema
447
+ },
448
+ {
449
+ name: "MilestoneCompleted",
450
+ uid: "0x6edc90af92553109cfed1292a67a75b34e41880bd8a61e9d05db0473b69a2f9e",
451
+ raw: oldStatusSchema
452
+ },
453
+ {
454
+ name: "GrantUpdateStatus",
455
+ uid: "0x6edc90af92553109cfed1292a67a75b34e41880bd8a61e9d05db0473b69a2f9e",
456
+ raw: oldStatusSchema
457
+ },
458
+ {
459
+ name: "ProjectUpdateStatus",
460
+ uid: "0x6edc90af92553109cfed1292a67a75b34e41880bd8a61e9d05db0473b69a2f9e",
461
+ raw: oldStatusSchema
462
+ },
463
+ ]
464
+ },
465
+ "sei-testnet": {
466
+ chainId: 1328,
467
+ url: "https://sei-testnet.easscan.org/graphql",
468
+ rpcUrl: "https://evm-rpc-testnet.sei-apis.com",
469
+ contracts: {
470
+ eas: "0x4F166ed0A038ECdEEefa7Dc508f15991762974Fe",
471
+ schema: "0x906a57aCa067178e76e6eBDF4C7b26CBcAEC0Edd",
472
+ multicall: "0x0bB232f1b137fB55CB6af92c218A1cD63445a2E9",
473
+ projectResolver: "0xdA2c62101851365EEdC5A1f7087d92Ffde7345B4",
474
+ communityResolver: "0x50fb4a65CE924D29b9AC8C508c376a5a21Fda1BC",
475
+ donations: "0xB80D85690747C3E2ceCc0f8529594C6602b642D5",
476
+ airdropNFT: "0x00933B581765d638369cd8A10a4583c275a857A6",
477
+ },
478
+ schemas: {
479
+ Community:
480
+ "0x968fe3d635bbf22b6253596df6290d1b6da1f192da9e2b5b41ae3595a965dbc2",
481
+ Details:
482
+ "0x76f38d22f88a0df52a8ff0763e1c0af912b0822e758be2e0c9cded91aef71d22",
483
+ Grant:
484
+ "0xfd5af4f0abd2875c64d2fed8be07bc1dfa5192a49e1a80587b0f12cae8d5173f",
485
+ GrantVerified:
486
+ "0xb25551d21dc886be83a07c241c46de318704cb6f485191fdedcf80f4b8b28188",
487
+ MemberOf:
488
+ "0x222fa508c0cdb5954905dd30611a940f6402da2b3c49ce0c88d33e22f72121e7",
489
+ MilestoneApproved:
490
+ "0xb25551d21dc886be83a07c241c46de318704cb6f485191fdedcf80f4b8b28188",
491
+ MilestoneCompleted:
492
+ "0xb25551d21dc886be83a07c241c46de318704cb6f485191fdedcf80f4b8b28188",
493
+ GrantUpdateStatus:
494
+ "0xb25551d21dc886be83a07c241c46de318704cb6f485191fdedcf80f4b8b28188",
495
+ Project:
496
+ "0x9de9294fbb62391b393332a33bfc28b4e0e728dd094aee4bda3955df62f8401a5",
497
+ ProjectUpdateStatus:
498
+ "0xb25551d21dc886be83a07c241c46de318704cb6f485191fdedcf80f4b8b28188",
499
+ ProjectMilestoneStatus:
500
+ "0xb25551d21dc886be83a07c241c46de318704cb6f485191fdedcf80f4b8b28188",
501
+ ContributorProfile: "0x"
502
+ },
503
+ },
504
+ lisk: {
505
+ chainId: 1135,
506
+ url: "https://lisk.easscan.org/graphql",
507
+ rpcUrl:
508
+ "https://lisk.drpc.org",
509
+ contracts: {
510
+ eas: "0x4200000000000000000000000000000000000021",
511
+ schema: "0x4200000000000000000000000000000000000020",
512
+ multicall: "0x28BE0b0515be8BB8822aF1467A6613795E74717b", //proxy,
513
+ projectResolver: "0x6dC1D6b864e8BEf815806f9e4677123496e12026",
514
+ communityResolver: "0xfddb660F2F1C27d219372210745BB9f73431856E",
515
+ donations: "0x28BE0b0515be8BB8822aF1467A6613795E74717b",
516
+ airdropNFT: null,
517
+ },
518
+ schemas: {
519
+ Community:
520
+ "0x3c2231024f4f17f3718b5bd9ed9ff29cc323dea5449f9ceba11a9888bfbdd0e1",
521
+ Details:
522
+ "0x16bfe4783b7a9c743c401222c56a07ecb77ed42afc84b61ff1f62f5936c0b9d7",
523
+ Grant:
524
+ "0xea02ab33f9f4c92ba02c9bb21614b7410b98c940a0d8eb8ad3a20204d8b4bda5",
525
+ GrantVerified:
526
+ "0xd88faddf8df50a07a4130fbe2131354831261440b2ca695c4e9b8f2ca9985346",
527
+ MemberOf:
528
+ "0x5f430aec9d04f0dcb3729775c5dfe10752e436469a7607f8c64ae44ef996e477",
529
+ MilestoneApproved:
530
+ "0xd88faddf8df50a07a4130fbe2131354831261440b2ca695c4e9b8f2ca9985346",
531
+ MilestoneCompleted:
532
+ "0xd88faddf8df50a07a4130fbe2131354831261440b2ca695c4e9b8f2ca9985346",
533
+ GrantUpdateStatus:
534
+ "0xd88faddf8df50a07a4130fbe2131354831261440b2ca695c4e9b8f2ca9985346",
535
+ Project:
536
+ "0xf3f753b41e04d1052b5a5ec7624d1dfdb6c2da288a985120e477ddbcac071022",
537
+ ProjectUpdateStatus:
538
+ "0xd88faddf8df50a07a4130fbe2131354831261440b2ca695c4e9b8f2ca9985346",
539
+ ProjectMilestoneStatus:
540
+ "0xd88faddf8df50a07a4130fbe2131354831261440b2ca695c4e9b8f2ca9985346",
541
+ ContributorProfile: "0x80f0701853e862d920f87e8ae5b359a1625ad417a9523af2ed12bc3504b04088"
542
+ },
543
+ },
544
+ scroll: {
545
+ chainId: 534352,
546
+ url: "https://scroll.easscan.org/graphql",
547
+ rpcUrl: "https://scroll-mainnet.g.alchemy.com/v2/SsQRSwtqtBMGmXQCDH9lYb4U8p9QnqXK",
548
+ contracts: {
549
+ eas: "0xC47300428b6AD2c7D03BB76D05A176058b47E6B0",
550
+ schema: "0xD2CDF46556543316e7D34e8eDc4624e2bB95e3B6",
551
+ multicall: "0x8791Ac8c099314bB1D1514D76de13a1E80275950", //proxy,
552
+ projectResolver: "0xAFaE7aA6118D75Fe7FDB3eF8c1623cAaF8C8a653",
553
+ communityResolver: "0xfddb660F2F1C27d219372210745BB9f73431856E",
554
+ donations: "0x8791Ac8c099314bB1D1514D76de13a1E80275950",
555
+ airdropNFT: null,
556
+ },
557
+ schemas: {
558
+ Community:
559
+ "0x3c2231024f4f17f3718b5bd9ed9ff29cc323dea5449f9ceba11a9888bfbdd0e1",
560
+ Details:
561
+ "0x9895e82115987d8e3e02b35ced92e6a0509293890333f58f50ec291b34853dac",
562
+ Grant:
563
+ "0x7afa603a89cee2d8f93d30007e2c64efddc6509fd76aa95d2ccd97b6e34acc71",
564
+ GrantVerified:
565
+ "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
566
+ MemberOf:
567
+ "0xb4186a2401f40a4c78768941ef9140e1fbe5fe595053a65d44f31d6df180b712",
568
+ MilestoneApproved:
569
+ "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
570
+ MilestoneCompleted:
571
+ "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
572
+ GrantUpdateStatus:
573
+ "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
574
+ Project:
575
+ "0x672fbaa8a1fb6e1f73a89c84a8e97a808da0750003a9d1d18aba3d39fa165945",
576
+ ProjectUpdateStatus:
577
+ "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
578
+ ProjectMilestoneStatus:
579
+ "0xf45fdf2c064073f0623416571c2746085d785cde5a57fd0696ff88bdf78bcbdc",
580
+ ContributorProfile: null
581
+ },
582
+ },
583
+ };
584
+
585
+ const DetailsSchema = [{ type: "string", name: "json", value: null }];
586
+
587
+
588
+ /**
589
+ * Mounts the schemas for the given network and return all the settings
590
+ * @param network
591
+ * @returns
592
+ */
593
+ export const MountEntities = (
594
+ network: EASNetworkConfig
595
+ ): Record<TSchemaName, SchemaInterface<TSchemaName>> => ({
596
+ Community: {
597
+ name: "Community",
598
+ schema: [{ type: "bool", name: "community", value: true }],
599
+ uid: network.schemas.Community,
600
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "Community")?.map(s => ({uid: s.uid, raw: s.raw}))
601
+ },
602
+ CommunityDetails: {
603
+ name: "CommunityDetails",
604
+ schema: DetailsSchema,
605
+ uid: network.schemas.Details,
606
+ references: "Community",
607
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "CommunityDetails")?.map(s => ({uid: s.uid, raw: s.raw}))
608
+ },
609
+ Project: {
610
+ name: "Project",
611
+ schema: [{ type: "bool", name: "project", value: true }],
612
+ uid: network.schemas.Project,
613
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "Project")?.map(s => ({uid: s.uid, raw: s.raw}))
614
+ },
615
+ ProjectDetails: {
616
+ name: "ProjectDetails",
617
+ schema: DetailsSchema,
618
+ uid: network.schemas.Details,
619
+ references: "Project",
620
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectDetails")?.map(s => ({uid: s.uid, raw: s.raw}))
621
+ },
622
+ MemberOf: {
623
+ name: "MemberOf",
624
+ schema: [{ type: "bool", name: "memberOf", value: true }],
625
+ uid: network.schemas.MemberOf,
626
+ references: "Project",
627
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "MemberOf")?.map(s => ({uid: s.uid, raw: s.raw}))
628
+ },
629
+ MemberDetails: {
630
+ name: "MemberDetails",
631
+ schema: DetailsSchema,
632
+ uid: network.schemas.Details,
633
+ references: "MemberOf",
634
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "MemberDetails")?.map(s => ({uid: s.uid, raw: s.raw}))
635
+ },
636
+ Grant: {
637
+ name: "Grant",
638
+ schema: [{ type: "bytes32", name: "communityUID", value: true }],
639
+ // schema: [{ type: "bool", name: "grant", value: true }],
640
+ uid: network.schemas.Grant,
641
+ references: "Project",
642
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "Grant")?.map(s => ({uid: s.uid, raw: s.raw}))
643
+ },
644
+ GrantDetails: {
645
+ name: "GrantDetails",
646
+ schema: DetailsSchema,
647
+ uid: network.schemas.Details,
648
+ references: "Grant",
649
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "GrantDetails")?.map(s => ({uid: s.uid, raw: s.raw}))
650
+ },
651
+ GrantVerified: {
652
+ name: "GrantVerified",
653
+ schema: DetailsSchema,
654
+ uid: network.schemas.GrantVerified,
655
+ references: "Grant",
656
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "GrantVerified")?.map(s => ({uid: s.uid, raw: s.raw}))
657
+ },
658
+ Milestone: {
659
+ name: "Milestone",
660
+ schema: DetailsSchema,
661
+ uid: network.schemas.Details,
662
+ references: "Grant",
663
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "Milestone")?.map(s => ({uid: s.uid, raw: s.raw}))
664
+ },
665
+ MilestoneApproved: {
666
+ name: "MilestoneApproved",
667
+ schema: DetailsSchema,
668
+ uid: network.schemas.MilestoneApproved,
669
+ references: "Milestone",
670
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "MilestoneApproved")?.map(s => ({uid: s.uid, raw: s.raw}))
671
+ },
672
+ MilestoneCompleted: {
673
+ name: "MilestoneCompleted",
674
+ schema: DetailsSchema,
675
+ uid: network.schemas.MilestoneCompleted,
676
+ references: "Milestone",
677
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "MilestoneCompleted")?.map(s => ({uid: s.uid, raw: s.raw}))
678
+ },
679
+ Details: {
680
+ schema: DetailsSchema,
681
+ name: " schema",
682
+ uid: network.schemas.Details,
683
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "DetailsSchema")?.map(s => ({uid: s.uid, raw: s.raw}))
684
+ },
685
+ ProjectImpact: {
686
+ name: "ProjectImpact",
687
+ schema: DetailsSchema,
688
+ uid: network.schemas.Details,
689
+ references: "Project",
690
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectImpact")?.map(s => ({uid: s.uid, raw: s.raw}))
691
+ },
692
+ GrantUpdate: {
693
+ name: "GrantUpdate",
694
+ schema: DetailsSchema,
695
+ uid: network.schemas.Details,
696
+ references: "Grant",
697
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "GrantUpdate")?.map(s => ({uid: s.uid, raw: s.raw}))
698
+ },
699
+ GrantUpdateStatus: {
700
+ name: "GrantUpdateStatus",
701
+ schema: DetailsSchema,
702
+ uid: network.schemas.GrantUpdateStatus,
703
+ references: "GrantUpdate",
704
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "GrantUpdateStatus")?.map(s => ({uid: s.uid, raw: s.raw}))
705
+ },
706
+ ProjectEndorsement: {
707
+ name: "ProjectEndorsement",
708
+ schema: DetailsSchema,
709
+ uid: network.schemas.Details,
710
+ references: "Project",
711
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectEndorsement")?.map(s => ({uid: s.uid, raw: s.raw}))
712
+ },
713
+ ProjectUpdate: {
714
+ name: "ProjectUpdate",
715
+ schema: DetailsSchema,
716
+ uid: network.schemas.Details,
717
+ references: "Project",
718
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectUpdate")?.map(s => ({uid: s.uid, raw: s.raw}))
719
+ },
720
+ ProjectUpdateStatus: {
721
+ name: "ProjectUpdateStatus",
722
+ schema: DetailsSchema,
723
+ uid: network.schemas.ProjectUpdateStatus,
724
+ references: "ProjectUpdate",
725
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectUpdateStatus")?.map(s => ({uid: s.uid, raw: s.raw}))
726
+ },
727
+ ProjectPointer: {
728
+ name: "ProjectPointer",
729
+ schema: DetailsSchema,
730
+ uid: network.schemas.Details,
731
+ references: "Project",
732
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectPointer")?.map(s => ({uid: s.uid, raw: s.raw}))
733
+ },
734
+ ProjectMilestone: {
735
+ name: "ProjectMilestone",
736
+ schema: DetailsSchema,
737
+ uid: network.schemas.Details,
738
+ references: "Project",
739
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectMilestone")?.map(s => ({uid: s.uid, raw: s.raw}))
740
+ },
741
+ ProjectMilestoneStatus: {
742
+ name: "ProjectMilestoneStatus",
743
+ schema: DetailsSchema,
744
+ uid: network.schemas.ProjectUpdateStatus,
745
+ references: "ProjectMilestone",
746
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ProjectMilestoneStatus")?.map(s => ({uid: s.uid, raw: s.raw}))
747
+ },
748
+ ContributorProfile: {
749
+ name: "ContributorProfile",
750
+ schema: DetailsSchema,
751
+ uid: network.schemas.ContributorProfile,
752
+ oldSchemas: network.oldSchemas?.filter(s => s.name === "ContributorProfile")?.map(s => ({uid: s.uid, raw: s.raw}))
753
+ },
754
+ });
755
+
756
+ export const alloSupportedNetworks = {
757
+ mainnet: [1, 10, 250, 42220, 42161, 8453, 137, 43114, 534352],
758
+ testnet: [11155111, 11155420, 4002, 44787, 421614, 80001, 43113],
759
+ };
760
+
761
+ export const AlloContracts = {
762
+ registry: "0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3",
763
+ alloProxy: "0x1133eA7Af70876e64665ecD07C0A0476d09465a1",
764
+ alloImplementation: "0xB087535DB0df98fC4327136e897A5985E5Cfbd66",
765
+ strategy: {
766
+ DonationVotingMerkleDistributionDirectTransferStrategy:
767
+ "0x787eC93Dd71a90563979417879F5a3298389227f",
768
+ DirectGrantsSimpleStrategy: "0x8564d522b19836b7f5b4324e7ee8cb41810e9f9e",
769
+ RFPSimpleStrategy: "0xc0379c3e6e3140cae35588c09e081f2d8529c7e3",
770
+ RFPCommitteeStrategy: "0x8def91f220f3d1c16d406097ffb0daee0732772f",
771
+ QVSimple: "0xa9e9110fe3b4b169b2ca0e8825c7ce76eb0b9438",
772
+ },
773
+ factory: "0xE195743480D1591B79106FF9B296A0cD38aDa807",
774
+ };
775
+