@geoprotocol/geo-sdk 0.19.0 → 0.19.2
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.
- package/README.md +2 -2
- package/dist/src/client/dao-spaces.d.ts +2 -2
- package/dist/src/client/dao-spaces.js +2 -2
- package/dist/src/client.d.ts +2 -6
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/client.js +1 -1
- package/dist/src/client.js.map +1 -1
- package/dist/src/e2e-api-surface.test.js +2 -2
- package/dist/src/e2e-api-surface.test.js.map +1 -1
- package/dist/src/e2e-legacy-api-surface.test.js +2 -2
- package/dist/src/e2e-legacy-api-surface.test.js.map +1 -1
- package/dist/src/encodings/get-create-dao-space-calldata.d.ts +16 -6
- package/dist/src/encodings/get-create-dao-space-calldata.d.ts.map +1 -1
- package/dist/src/encodings/get-create-dao-space-calldata.js +24 -6
- package/dist/src/encodings/get-create-dao-space-calldata.js.map +1 -1
- package/dist/src/encodings/get-create-dao-space-calldata.test.js +48 -11
- package/dist/src/encodings/get-create-dao-space-calldata.test.js.map +1 -1
- package/package.json +1 -1
- package/dist/proto.d.ts +0 -5
- package/dist/proto.d.ts.map +0 -1
- package/dist/proto.js +0 -5
- package/dist/proto.js.map +0 -1
- package/dist/src/abis/dao-space-v2.test.d.ts +0 -2
- package/dist/src/abis/dao-space-v2.test.d.ts.map +0 -1
- package/dist/src/abis/dao-space-v2.test.js +0 -67
- package/dist/src/abis/dao-space-v2.test.js.map +0 -1
- package/dist/src/client/proposals.d.ts +0 -185
- package/dist/src/client/proposals.d.ts.map +0 -1
- package/dist/src/client/proposals.js +0 -294
- package/dist/src/client/proposals.js.map +0 -1
- package/dist/src/client/proposals.test.d.ts +0 -2
- package/dist/src/client/proposals.test.d.ts.map +0 -1
- package/dist/src/client/proposals.test.js +0 -243
- package/dist/src/client/proposals.test.js.map +0 -1
- package/dist/src/contracts-v2/abis.d.ts +0 -196
- package/dist/src/contracts-v2/abis.d.ts.map +0 -1
- package/dist/src/contracts-v2/abis.js +0 -110
- package/dist/src/contracts-v2/abis.js.map +0 -1
- package/dist/src/contracts-v2/actions.d.ts +0 -56
- package/dist/src/contracts-v2/actions.d.ts.map +0 -1
- package/dist/src/contracts-v2/actions.js +0 -83
- package/dist/src/contracts-v2/actions.js.map +0 -1
- package/dist/src/contracts-v2/encoding.d.ts +0 -80
- package/dist/src/contracts-v2/encoding.d.ts.map +0 -1
- package/dist/src/contracts-v2/encoding.js +0 -193
- package/dist/src/contracts-v2/encoding.js.map +0 -1
- package/dist/src/contracts-v2/encoding.test.d.ts +0 -2
- package/dist/src/contracts-v2/encoding.test.d.ts.map +0 -1
- package/dist/src/contracts-v2/encoding.test.js +0 -93
- package/dist/src/contracts-v2/encoding.test.js.map +0 -1
- package/dist/src/contracts-v2/local-geobrowser.e2e.test.d.ts +0 -2
- package/dist/src/contracts-v2/local-geobrowser.e2e.test.d.ts.map +0 -1
- package/dist/src/contracts-v2/local-geobrowser.e2e.test.js +0 -239
- package/dist/src/contracts-v2/local-geobrowser.e2e.test.js.map +0 -1
- package/dist/src/contracts-v2/voting-settings.d.ts +0 -48
- package/dist/src/contracts-v2/voting-settings.d.ts.map +0 -1
- package/dist/src/contracts-v2/voting-settings.js +0 -69
- package/dist/src/contracts-v2/voting-settings.js.map +0 -1
- package/dist/src/dao-space/propose-update-voting-settings.d.ts +0 -8
- package/dist/src/dao-space/propose-update-voting-settings.d.ts.map +0 -1
- package/dist/src/dao-space/propose-update-voting-settings.js +0 -19
- package/dist/src/dao-space/propose-update-voting-settings.js.map +0 -1
- package/dist/src/dao-space/propose-update-voting-settings.test.d.ts +0 -2
- package/dist/src/dao-space/propose-update-voting-settings.test.d.ts.map +0 -1
- package/dist/src/dao-space/propose-update-voting-settings.test.js +0 -118
- package/dist/src/dao-space/propose-update-voting-settings.test.js.map +0 -1
- package/dist/src/e2e/local-geobrowser.d.ts +0 -9
- package/dist/src/e2e/local-geobrowser.d.ts.map +0 -1
- package/dist/src/e2e/local-geobrowser.js +0 -35
- package/dist/src/e2e/local-geobrowser.js.map +0 -1
- package/dist/src/e2e/v2-contracts.test.d.ts +0 -2
- package/dist/src/e2e/v2-contracts.test.d.ts.map +0 -1
- package/dist/src/e2e/v2-contracts.test.js +0 -25
- package/dist/src/e2e/v2-contracts.test.js.map +0 -1
- package/dist/src/e2e-flows.test.d.ts +0 -2
- package/dist/src/e2e-flows.test.d.ts.map +0 -1
- package/dist/src/e2e-flows.test.js +0 -445
- package/dist/src/e2e-flows.test.js.map +0 -1
- package/dist/src/graph/create-space.d.ts +0 -37
- package/dist/src/graph/create-space.d.ts.map +0 -1
- package/dist/src/graph/create-space.js +0 -67
- package/dist/src/graph/create-space.js.map +0 -1
- package/dist/src/ops/images.d.ts +0 -37
- package/dist/src/ops/images.d.ts.map +0 -1
- package/dist/src/ops/images.js +0 -69
- package/dist/src/ops/images.js.map +0 -1
- package/dist/src/proto/index.d.ts +0 -7
- package/dist/src/proto/index.d.ts.map +0 -1
- package/dist/src/proto/index.js +0 -7
- package/dist/src/proto/index.js.map +0 -1
|
@@ -1,445 +0,0 @@
|
|
|
1
|
-
import { createPublicClient, createWalletClient, http } from 'viem';
|
|
2
|
-
import { privateKeyToAccount } from 'viem/accounts';
|
|
3
|
-
import { expect, it } from 'vitest';
|
|
4
|
-
import { SpaceRegistryAbi } from './abis/index.js';
|
|
5
|
-
import { createGeoClient } from './client.js';
|
|
6
|
-
import { DESCRIPTION_PROPERTY, RELATION_TYPE, REPLY_TO_PROPERTY } from './core/ids/system.js';
|
|
7
|
-
import { toGrcId } from './id-utils.js';
|
|
8
|
-
import { GeoTestnetConfig } from './networks.js';
|
|
9
|
-
import * as Ops from './ops/index.js';
|
|
10
|
-
const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
|
|
11
|
-
const EMPTY_SPACE_ID = '0x00000000000000000000000000000000';
|
|
12
|
-
const replyToGrcId = toGrcId(REPLY_TO_PROPERTY);
|
|
13
|
-
const geo = createGeoClient({ network: GeoTestnetConfig });
|
|
14
|
-
function requireTestnetContract(name) {
|
|
15
|
-
const address = GeoTestnetConfig.contracts?.[name];
|
|
16
|
-
if (!address) {
|
|
17
|
-
throw new Error(`GeoTestnetConfig is missing ${name}`);
|
|
18
|
-
}
|
|
19
|
-
return address;
|
|
20
|
-
}
|
|
21
|
-
function requireTestnetRpcUrl() {
|
|
22
|
-
const rpcUrl = GeoTestnetConfig.chain?.rpcUrl;
|
|
23
|
-
if (!rpcUrl) {
|
|
24
|
-
throw new Error('GeoTestnetConfig is missing an RPC URL');
|
|
25
|
-
}
|
|
26
|
-
return rpcUrl;
|
|
27
|
-
}
|
|
28
|
-
function createTestnetChain(rpcUrl) {
|
|
29
|
-
const chainConfig = GeoTestnetConfig.chain;
|
|
30
|
-
if (!chainConfig) {
|
|
31
|
-
throw new Error('GeoTestnetConfig is missing chain config');
|
|
32
|
-
}
|
|
33
|
-
return {
|
|
34
|
-
id: chainConfig.id,
|
|
35
|
-
name: chainConfig.name,
|
|
36
|
-
nativeCurrency: {
|
|
37
|
-
name: 'Ethereum',
|
|
38
|
-
symbol: 'ETH',
|
|
39
|
-
decimals: 18,
|
|
40
|
-
},
|
|
41
|
-
rpcUrls: {
|
|
42
|
-
default: {
|
|
43
|
-
http: [rpcUrl],
|
|
44
|
-
},
|
|
45
|
-
public: {
|
|
46
|
-
http: [rpcUrl],
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
function filterReplyToRelations(ops) {
|
|
52
|
-
return ops.filter((op) => op.type === 'createRelation' &&
|
|
53
|
-
'relationType' in op &&
|
|
54
|
-
op.relationType.every((b, i) => b === replyToGrcId[i]));
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Converts a bytes16 hex space ID to a UUID string without dashes.
|
|
58
|
-
*/
|
|
59
|
-
function hexToUuid(hex) {
|
|
60
|
-
return hex.slice(2, 34).toLowerCase();
|
|
61
|
-
}
|
|
62
|
-
async function getSpaceIdHex(publicClient, address) {
|
|
63
|
-
return (await publicClient.readContract({
|
|
64
|
-
address: requireTestnetContract('SPACE_REGISTRY_ADDRESS'),
|
|
65
|
-
abi: SpaceRegistryAbi,
|
|
66
|
-
functionName: 'addressToSpaceId',
|
|
67
|
-
args: [address],
|
|
68
|
-
}));
|
|
69
|
-
}
|
|
70
|
-
async function ensurePersonalSpace({ accountAddress, account, publicClient, walletClient, }) {
|
|
71
|
-
let spaceIdHex = await getSpaceIdHex(publicClient, accountAddress);
|
|
72
|
-
if (spaceIdHex.toLowerCase() === EMPTY_SPACE_ID.toLowerCase()) {
|
|
73
|
-
console.log('Creating personal space...');
|
|
74
|
-
const createSpace = geo.personalSpaces.create({
|
|
75
|
-
name: 'E2E Personal Space',
|
|
76
|
-
accountAddress,
|
|
77
|
-
});
|
|
78
|
-
const createSpaceTxHash = await walletClient.sendTransaction({
|
|
79
|
-
account,
|
|
80
|
-
chain: walletClient.chain ?? null,
|
|
81
|
-
to: createSpace.to,
|
|
82
|
-
value: 0n,
|
|
83
|
-
data: createSpace.calldata,
|
|
84
|
-
});
|
|
85
|
-
console.log('createSpaceTxHash', createSpaceTxHash);
|
|
86
|
-
await publicClient.waitForTransactionReceipt({ hash: createSpaceTxHash });
|
|
87
|
-
spaceIdHex = await getSpaceIdHex(publicClient, accountAddress);
|
|
88
|
-
if (spaceIdHex.toLowerCase() !== EMPTY_SPACE_ID.toLowerCase()) {
|
|
89
|
-
const spaceId = hexToUuid(spaceIdHex);
|
|
90
|
-
const publishProfile = await geo.personalSpaces.publishEdit({
|
|
91
|
-
name: 'Create personal space profile',
|
|
92
|
-
spaceId,
|
|
93
|
-
author: spaceId,
|
|
94
|
-
ops: createSpace.ops,
|
|
95
|
-
});
|
|
96
|
-
const publishProfileTxHash = await walletClient.sendTransaction({
|
|
97
|
-
account,
|
|
98
|
-
chain: walletClient.chain ?? null,
|
|
99
|
-
to: publishProfile.to,
|
|
100
|
-
value: 0n,
|
|
101
|
-
data: publishProfile.calldata,
|
|
102
|
-
});
|
|
103
|
-
console.log('publishProfileTxHash', publishProfileTxHash);
|
|
104
|
-
await publicClient.waitForTransactionReceipt({ hash: publishProfileTxHash });
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
if (spaceIdHex.toLowerCase() === EMPTY_SPACE_ID.toLowerCase()) {
|
|
108
|
-
throw new Error(`Failed to create personal space for address ${accountAddress}`);
|
|
109
|
-
}
|
|
110
|
-
return {
|
|
111
|
-
spaceIdHex,
|
|
112
|
-
spaceId: hexToUuid(spaceIdHex),
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
async function setupWallet() {
|
|
116
|
-
const privateKey = process.env.PRIVATE_KEY;
|
|
117
|
-
if (!privateKey) {
|
|
118
|
-
throw new Error('PRIVATE_KEY environment variable is required. Run `pnpm create-private-key` to generate one.');
|
|
119
|
-
}
|
|
120
|
-
if (!privateKey.startsWith('0x')) {
|
|
121
|
-
throw new Error('PRIVATE_KEY must be a hex string starting with 0x.');
|
|
122
|
-
}
|
|
123
|
-
const rpcUrl = requireTestnetRpcUrl();
|
|
124
|
-
const addressPrivateKey = privateKey;
|
|
125
|
-
const account = privateKeyToAccount(addressPrivateKey);
|
|
126
|
-
console.log('address', account.address);
|
|
127
|
-
const chain = createTestnetChain(rpcUrl);
|
|
128
|
-
const walletClient = createWalletClient({
|
|
129
|
-
account,
|
|
130
|
-
chain,
|
|
131
|
-
transport: http(rpcUrl),
|
|
132
|
-
});
|
|
133
|
-
const publicClient = createPublicClient({
|
|
134
|
-
chain,
|
|
135
|
-
transport: http(rpcUrl),
|
|
136
|
-
});
|
|
137
|
-
return {
|
|
138
|
-
account,
|
|
139
|
-
publicClient,
|
|
140
|
-
walletClient,
|
|
141
|
-
};
|
|
142
|
-
}
|
|
143
|
-
it.skip('should create a space and publish an edit with the new APIs', async () => {
|
|
144
|
-
const { account, publicClient, walletClient } = await setupWallet();
|
|
145
|
-
const { spaceId, spaceIdHex } = await ensurePersonalSpace({
|
|
146
|
-
accountAddress: account.address,
|
|
147
|
-
account,
|
|
148
|
-
publicClient,
|
|
149
|
-
walletClient,
|
|
150
|
-
});
|
|
151
|
-
console.log('spaceId (UUID)', spaceId);
|
|
152
|
-
const spaceAddress = (await publicClient.readContract({
|
|
153
|
-
address: requireTestnetContract('SPACE_REGISTRY_ADDRESS'),
|
|
154
|
-
abi: SpaceRegistryAbi,
|
|
155
|
-
functionName: 'spaceIdToAddress',
|
|
156
|
-
args: [spaceIdHex],
|
|
157
|
-
}));
|
|
158
|
-
if (spaceAddress.toLowerCase() === ZERO_ADDRESS.toLowerCase()) {
|
|
159
|
-
throw new Error(`Space ${spaceId} not found in registry (spaceIdHex=${spaceIdHex})`);
|
|
160
|
-
}
|
|
161
|
-
console.log('spaceAddress', spaceAddress);
|
|
162
|
-
const { ops, id: entityId } = Ops.entities.create({
|
|
163
|
-
name: 'Test Entity',
|
|
164
|
-
description: 'Created via new API e2e flow test',
|
|
165
|
-
});
|
|
166
|
-
console.log('entityId', entityId);
|
|
167
|
-
const { ops: unsetDescriptionOps } = Ops.entities.update({
|
|
168
|
-
id: entityId,
|
|
169
|
-
unset: [{ property: DESCRIPTION_PROPERTY }],
|
|
170
|
-
});
|
|
171
|
-
const { cid, editId, to, calldata } = await geo.personalSpaces.publishEdit({
|
|
172
|
-
name: 'Test Edit',
|
|
173
|
-
spaceId,
|
|
174
|
-
ops: [...ops, ...unsetDescriptionOps],
|
|
175
|
-
author: spaceId,
|
|
176
|
-
});
|
|
177
|
-
console.log('cid', cid);
|
|
178
|
-
console.log('editId', editId);
|
|
179
|
-
const publishTxHash = await walletClient.sendTransaction({
|
|
180
|
-
account,
|
|
181
|
-
chain: walletClient.chain ?? null,
|
|
182
|
-
to,
|
|
183
|
-
data: calldata,
|
|
184
|
-
});
|
|
185
|
-
console.log('publishTxHash', publishTxHash);
|
|
186
|
-
const publishReceipt = await publicClient.waitForTransactionReceipt({
|
|
187
|
-
hash: publishTxHash,
|
|
188
|
-
});
|
|
189
|
-
console.log('publishReceipt status', publishReceipt.status);
|
|
190
|
-
if (publishReceipt.status === 'reverted') {
|
|
191
|
-
throw new Error(`Publish transaction reverted: ${publishTxHash}`);
|
|
192
|
-
}
|
|
193
|
-
console.log('Successfully published edit to space', spaceId);
|
|
194
|
-
}, 60000);
|
|
195
|
-
it.skip('should create a DAO space and propose an edit with the new APIs', async () => {
|
|
196
|
-
const { account, publicClient, walletClient } = await setupWallet();
|
|
197
|
-
const { spaceIdHex } = await ensurePersonalSpace({
|
|
198
|
-
accountAddress: account.address,
|
|
199
|
-
account,
|
|
200
|
-
publicClient,
|
|
201
|
-
walletClient,
|
|
202
|
-
});
|
|
203
|
-
console.log('Personal space ID (to use as editor):', spaceIdHex);
|
|
204
|
-
console.log('Creating DAO space...');
|
|
205
|
-
const { to, calldata, spaceEntityId, cid } = await geo.daoSpaces.create({
|
|
206
|
-
name: 'Test DAO Space',
|
|
207
|
-
votingSettings: {
|
|
208
|
-
partialPercentageSupportThreshold: 50,
|
|
209
|
-
universalPercentageSupportThreshold: 90,
|
|
210
|
-
flatSupportThreshold: 1,
|
|
211
|
-
quorum: 1,
|
|
212
|
-
durationInDays: 2,
|
|
213
|
-
disableFastPathAccessForNewMembers: true,
|
|
214
|
-
executionGracePeriodInDays: 14,
|
|
215
|
-
},
|
|
216
|
-
initialEditorSpaceIds: [spaceIdHex],
|
|
217
|
-
author: hexToUuid(spaceIdHex),
|
|
218
|
-
});
|
|
219
|
-
console.log('spaceEntityId:', spaceEntityId);
|
|
220
|
-
console.log('cid:', cid);
|
|
221
|
-
console.log('to:', to);
|
|
222
|
-
const createDaoSpaceTxHash = await walletClient.sendTransaction({
|
|
223
|
-
account,
|
|
224
|
-
chain: walletClient.chain ?? null,
|
|
225
|
-
to,
|
|
226
|
-
value: 0n,
|
|
227
|
-
data: calldata,
|
|
228
|
-
});
|
|
229
|
-
console.log('createDaoSpaceTxHash', createDaoSpaceTxHash);
|
|
230
|
-
const receipt = await publicClient.waitForTransactionReceipt({
|
|
231
|
-
hash: createDaoSpaceTxHash,
|
|
232
|
-
});
|
|
233
|
-
console.log('receipt status', receipt.status);
|
|
234
|
-
if (receipt.status === 'reverted') {
|
|
235
|
-
throw new Error(`DAO space creation transaction reverted: ${createDaoSpaceTxHash}`);
|
|
236
|
-
}
|
|
237
|
-
console.log('Successfully created DAO space');
|
|
238
|
-
const daoSpaceAddress = receipt.logs.find(log => log.address.toLowerCase() !== to.toLowerCase())?.address;
|
|
239
|
-
if (!daoSpaceAddress) {
|
|
240
|
-
throw new Error('Could not find DAO space address in transaction logs');
|
|
241
|
-
}
|
|
242
|
-
console.log('daoSpaceAddress:', daoSpaceAddress);
|
|
243
|
-
const daoSpaceIdHex = await getSpaceIdHex(publicClient, daoSpaceAddress);
|
|
244
|
-
console.log('daoSpaceIdHex:', daoSpaceIdHex);
|
|
245
|
-
if (daoSpaceIdHex.toLowerCase() === EMPTY_SPACE_ID.toLowerCase()) {
|
|
246
|
-
throw new Error('DAO space was not registered in the Space Registry');
|
|
247
|
-
}
|
|
248
|
-
console.log('Proposing edit to DAO space...');
|
|
249
|
-
const { ops, id: entityId } = Ops.entities.create({
|
|
250
|
-
name: 'DAO Entity',
|
|
251
|
-
description: 'Created via DAO space proposal',
|
|
252
|
-
});
|
|
253
|
-
console.log('entityId:', entityId);
|
|
254
|
-
const personalSpaceId = hexToUuid(spaceIdHex);
|
|
255
|
-
const { editId, cid: proposalCid, to: proposalTo, calldata: proposalCalldata, proposalId, } = await geo.daoSpaces.proposeEdit({
|
|
256
|
-
name: 'Add new entity to DAO space',
|
|
257
|
-
ops,
|
|
258
|
-
author: personalSpaceId,
|
|
259
|
-
daoSpaceAddress,
|
|
260
|
-
callerSpaceId: spaceIdHex,
|
|
261
|
-
daoSpaceId: daoSpaceIdHex,
|
|
262
|
-
votingMode: 'FAST',
|
|
263
|
-
});
|
|
264
|
-
console.log('editId:', editId);
|
|
265
|
-
console.log('proposalCid:', proposalCid);
|
|
266
|
-
console.log('proposalId:', proposalId.slice(2));
|
|
267
|
-
const proposeTxHash = await walletClient.sendTransaction({
|
|
268
|
-
account,
|
|
269
|
-
chain: walletClient.chain ?? null,
|
|
270
|
-
to: proposalTo,
|
|
271
|
-
data: proposalCalldata,
|
|
272
|
-
});
|
|
273
|
-
console.log('proposeTxHash:', proposeTxHash);
|
|
274
|
-
const proposeReceipt = await publicClient.waitForTransactionReceipt({
|
|
275
|
-
hash: proposeTxHash,
|
|
276
|
-
});
|
|
277
|
-
console.log('proposeReceipt status:', proposeReceipt.status);
|
|
278
|
-
if (proposeReceipt.status === 'reverted') {
|
|
279
|
-
throw new Error(`Propose edit transaction reverted: ${proposeTxHash}`);
|
|
280
|
-
}
|
|
281
|
-
console.log('Successfully proposed edit to DAO space');
|
|
282
|
-
console.log('Proposal ID:', proposalId.slice(2));
|
|
283
|
-
}, 120000);
|
|
284
|
-
it.skip('should create an entity and then delete it with the new APIs', async () => {
|
|
285
|
-
const { account, publicClient, walletClient } = await setupWallet();
|
|
286
|
-
const { spaceId } = await ensurePersonalSpace({
|
|
287
|
-
accountAddress: account.address,
|
|
288
|
-
account,
|
|
289
|
-
publicClient,
|
|
290
|
-
walletClient,
|
|
291
|
-
});
|
|
292
|
-
console.log('spaceId (UUID)', spaceId);
|
|
293
|
-
const { ops: createOps, id: entityId } = Ops.entities.create({
|
|
294
|
-
name: 'Entity to Delete',
|
|
295
|
-
description: 'This entity will be deleted',
|
|
296
|
-
});
|
|
297
|
-
const { ops: relationOps, id: relationId } = Ops.relations.create({
|
|
298
|
-
fromEntity: entityId,
|
|
299
|
-
toEntity: '3dd25afe17ff40f290bd9f63799cd299',
|
|
300
|
-
type: RELATION_TYPE,
|
|
301
|
-
});
|
|
302
|
-
console.log('entityId', entityId);
|
|
303
|
-
console.log('relationId', relationId);
|
|
304
|
-
const { cid: createCid, editId: createEditId, to: createTo, calldata: createCalldata, } = await geo.personalSpaces.publishEdit({
|
|
305
|
-
name: 'Create Entity',
|
|
306
|
-
spaceId,
|
|
307
|
-
ops: [...createOps, ...relationOps],
|
|
308
|
-
author: spaceId,
|
|
309
|
-
});
|
|
310
|
-
console.log('create cid', createCid);
|
|
311
|
-
console.log('create editId', createEditId);
|
|
312
|
-
const createTxHash = await walletClient.sendTransaction({
|
|
313
|
-
account,
|
|
314
|
-
chain: walletClient.chain ?? null,
|
|
315
|
-
to: createTo,
|
|
316
|
-
data: createCalldata,
|
|
317
|
-
});
|
|
318
|
-
console.log('createTxHash', createTxHash);
|
|
319
|
-
const createReceipt = await publicClient.waitForTransactionReceipt({
|
|
320
|
-
hash: createTxHash,
|
|
321
|
-
});
|
|
322
|
-
console.log('createReceipt status', createReceipt.status);
|
|
323
|
-
if (createReceipt.status === 'reverted') {
|
|
324
|
-
throw new Error(`Create transaction reverted: ${createTxHash}`);
|
|
325
|
-
}
|
|
326
|
-
console.log('Successfully created entity', entityId);
|
|
327
|
-
await new Promise(resolve => setTimeout(resolve, 4000));
|
|
328
|
-
const { ops: deleteOps } = await geo.entities.delete({
|
|
329
|
-
id: entityId,
|
|
330
|
-
spaceId,
|
|
331
|
-
});
|
|
332
|
-
console.log('deleteOps count', deleteOps.length);
|
|
333
|
-
if (deleteOps.length === 0) {
|
|
334
|
-
console.log('No ops to delete (entity may not have been indexed yet)');
|
|
335
|
-
return;
|
|
336
|
-
}
|
|
337
|
-
const { cid: deleteCid, editId: deleteEditId, to: deleteTo, calldata: deleteCalldata, } = await geo.personalSpaces.publishEdit({
|
|
338
|
-
name: 'Delete Entity',
|
|
339
|
-
spaceId,
|
|
340
|
-
ops: deleteOps,
|
|
341
|
-
author: spaceId,
|
|
342
|
-
});
|
|
343
|
-
console.log('delete cid', deleteCid);
|
|
344
|
-
console.log('delete editId', deleteEditId);
|
|
345
|
-
const deleteTxHash = await walletClient.sendTransaction({
|
|
346
|
-
account,
|
|
347
|
-
chain: walletClient.chain ?? null,
|
|
348
|
-
to: deleteTo,
|
|
349
|
-
data: deleteCalldata,
|
|
350
|
-
});
|
|
351
|
-
console.log('deleteTxHash', deleteTxHash);
|
|
352
|
-
const deleteReceipt = await publicClient.waitForTransactionReceipt({
|
|
353
|
-
hash: deleteTxHash,
|
|
354
|
-
});
|
|
355
|
-
console.log('deleteReceipt status', deleteReceipt.status);
|
|
356
|
-
if (deleteReceipt.status === 'reverted') {
|
|
357
|
-
throw new Error(`Delete transaction reverted: ${deleteTxHash}`);
|
|
358
|
-
}
|
|
359
|
-
console.log('Successfully deleted entity', entityId);
|
|
360
|
-
}, 120000);
|
|
361
|
-
it.skip('should create an entity, comment on it, and comment on the comment with correct reply-to chains with the new APIs', async () => {
|
|
362
|
-
const { account, publicClient, walletClient } = await setupWallet();
|
|
363
|
-
const { spaceId } = await ensurePersonalSpace({
|
|
364
|
-
accountAddress: account.address,
|
|
365
|
-
account,
|
|
366
|
-
publicClient,
|
|
367
|
-
walletClient,
|
|
368
|
-
});
|
|
369
|
-
console.log('spaceId (UUID)', spaceId);
|
|
370
|
-
const { ops: entityOps, id: entityId } = Ops.entities.create({
|
|
371
|
-
name: 'Entity with Comments',
|
|
372
|
-
description: 'This entity will have comments',
|
|
373
|
-
});
|
|
374
|
-
console.log('entityId', entityId);
|
|
375
|
-
const { ops: commentAOps, id: commentAId } = await geo.comments.create({
|
|
376
|
-
content: 'This is Comment A on the entity',
|
|
377
|
-
replyTo: { entityId, spaceId },
|
|
378
|
-
});
|
|
379
|
-
console.log('commentAId', commentAId);
|
|
380
|
-
const commentAReplyTos = filterReplyToRelations(commentAOps);
|
|
381
|
-
console.log('Comment A reply-to count:', commentAReplyTos.length);
|
|
382
|
-
expect(commentAReplyTos).toHaveLength(1);
|
|
383
|
-
const { cid: cid1, to: to1, calldata: calldata1, } = await geo.personalSpaces.publishEdit({
|
|
384
|
-
name: 'Create Entity and Comment A',
|
|
385
|
-
spaceId,
|
|
386
|
-
ops: [...entityOps, ...commentAOps],
|
|
387
|
-
author: spaceId,
|
|
388
|
-
});
|
|
389
|
-
console.log('cid1', cid1);
|
|
390
|
-
const tx1Hash = await walletClient.sendTransaction({
|
|
391
|
-
account,
|
|
392
|
-
chain: walletClient.chain ?? null,
|
|
393
|
-
to: to1,
|
|
394
|
-
data: calldata1,
|
|
395
|
-
});
|
|
396
|
-
console.log('tx1Hash', tx1Hash);
|
|
397
|
-
const receipt1 = await publicClient.waitForTransactionReceipt({
|
|
398
|
-
hash: tx1Hash,
|
|
399
|
-
});
|
|
400
|
-
console.log('receipt1 status', receipt1.status);
|
|
401
|
-
if (receipt1.status === 'reverted') {
|
|
402
|
-
throw new Error(`First publish transaction reverted: ${tx1Hash}`);
|
|
403
|
-
}
|
|
404
|
-
await new Promise(resolve => setTimeout(resolve, 4000));
|
|
405
|
-
const { ops: commentBOps, id: commentBId } = await geo.comments.create({
|
|
406
|
-
content: 'This is Comment B on Comment A',
|
|
407
|
-
replyTo: { entityId: commentAId, spaceId },
|
|
408
|
-
});
|
|
409
|
-
console.log('commentBId', commentBId);
|
|
410
|
-
const commentBReplyTos = filterReplyToRelations(commentBOps);
|
|
411
|
-
console.log('Comment B reply-to count:', commentBReplyTos.length);
|
|
412
|
-
expect(commentBReplyTos).toHaveLength(2);
|
|
413
|
-
const { cid: cid2, to: to2, calldata: calldata2, } = await geo.personalSpaces.publishEdit({
|
|
414
|
-
name: 'Create Comment B',
|
|
415
|
-
spaceId,
|
|
416
|
-
ops: commentBOps,
|
|
417
|
-
author: spaceId,
|
|
418
|
-
});
|
|
419
|
-
console.log('cid2', cid2);
|
|
420
|
-
const tx2Hash = await walletClient.sendTransaction({
|
|
421
|
-
account,
|
|
422
|
-
chain: walletClient.chain ?? null,
|
|
423
|
-
to: to2,
|
|
424
|
-
data: calldata2,
|
|
425
|
-
});
|
|
426
|
-
console.log('tx2Hash', tx2Hash);
|
|
427
|
-
const receipt2 = await publicClient.waitForTransactionReceipt({
|
|
428
|
-
hash: tx2Hash,
|
|
429
|
-
});
|
|
430
|
-
console.log('receipt2 status', receipt2.status);
|
|
431
|
-
if (receipt2.status === 'reverted') {
|
|
432
|
-
throw new Error(`Second publish transaction reverted: ${tx2Hash}`);
|
|
433
|
-
}
|
|
434
|
-
await new Promise(resolve => setTimeout(resolve, 4000));
|
|
435
|
-
const { ops: commentCOps, id: commentCId } = await geo.comments.create({
|
|
436
|
-
content: 'This is Comment C on Comment B',
|
|
437
|
-
replyTo: { entityId: commentBId, spaceId },
|
|
438
|
-
});
|
|
439
|
-
console.log('commentCId', commentCId);
|
|
440
|
-
const commentCReplyTos = filterReplyToRelations(commentCOps);
|
|
441
|
-
console.log('Comment C reply-to count:', commentCReplyTos.length);
|
|
442
|
-
expect(commentCReplyTos).toHaveLength(3);
|
|
443
|
-
console.log('Successfully verified comment reply-to chain accumulation');
|
|
444
|
-
}, 180000);
|
|
445
|
-
//# sourceMappingURL=e2e-flows.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"e2e-flows.test.js","sourceRoot":"","sources":["../../src/e2e-flows.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,kBAAkB,EAAE,kBAAkB,EAAY,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1F,OAAO,EAA0B,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AAEtC,MAAM,YAAY,GAAG,4CAAmD,CAAC;AACzE,MAAM,cAAc,GAAG,oCAA2C,CAAC;AACnE,MAAM,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEhD,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAE3D,SAAS,sBAAsB,CAAC,IAA4D;IAC1F,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC;IAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO;QACL,EAAE,EAAE,WAAW,CAAC,EAAE;QAClB,IAAI,EAAE,WAAW,CAAC,IAAI;QACtB,cAAc,EAAE;YACd,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAE;SACb;QACD,OAAO,EAAE;YACP,OAAO,EAAE;gBACP,IAAI,EAAE,CAAC,MAAM,CAAC;aACf;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,MAAM,CAAC;aACf;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAS;IACvC,OAAO,GAAG,CAAC,MAAM,CACf,CAAC,EAAE,EAAwB,EAAE,CAC3B,EAAE,CAAC,IAAI,KAAK,gBAAgB;QAC5B,cAAc,IAAI,EAAE;QACnB,EAAqB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAC,GAAQ;IACzB,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,YAAmD,EAAE,OAAY;IAC5F,OAAO,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QACtC,OAAO,EAAE,sBAAsB,CAAC,wBAAwB,CAAC;QACzD,GAAG,EAAE,gBAAgB;QACrB,YAAY,EAAE,kBAAkB;QAChC,IAAI,EAAE,CAAC,OAAO,CAAC;KAChB,CAAC,CAAQ,CAAC;AACb,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,YAAY,EACZ,YAAY,GAMb;IACC,IAAI,UAAU,GAAG,MAAM,aAAa,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAEnE,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAE1C,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC;YAC5C,IAAI,EAAE,oBAAoB;YAC1B,cAAc;SACf,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;YAC3D,OAAO;YACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;YACjC,EAAE,EAAE,WAAW,CAAC,EAAE;YAClB,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,WAAW,CAAC,QAAQ;SAC3B,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;QACpD,MAAM,YAAY,CAAC,yBAAyB,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC1E,UAAU,GAAG,MAAM,aAAa,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAE/D,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;YAC9D,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;gBAC1D,IAAI,EAAE,+BAA+B;gBACrC,OAAO;gBACP,MAAM,EAAE,OAAO;gBACf,GAAG,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;gBAC9D,OAAO;gBACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;gBACjC,EAAE,EAAE,cAAc,CAAC,EAAE;gBACrB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,cAAc,CAAC,QAAQ;aAC9B,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;YAC1D,MAAM,YAAY,CAAC,yBAAyB,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,+CAA+C,cAAc,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,OAAO;QACL,UAAU;QACV,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,8FAA8F,CAAC,CAAC;IAClH,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC;IACtC,MAAM,iBAAiB,GAAG,UAA2B,CAAC;IACtD,MAAM,OAAO,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAExC,MAAM,KAAK,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,OAAO;QACP,KAAK;QACL,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;KACxB,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK;QACL,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;KACxB,CAAC,CAAC;IAEH,OAAO;QACL,OAAO;QACP,YAAY;QACZ,YAAY;KACb,CAAC;AACJ,CAAC;AAED,EAAE,CAAC,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;IAChF,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;IACpE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,mBAAmB,CAAC;QACxD,cAAc,EAAE,OAAO,CAAC,OAAO;QAC/B,OAAO;QACP,YAAY;QACZ,YAAY;KACb,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAEvC,MAAM,YAAY,GAAG,CAAC,MAAM,YAAY,CAAC,YAAY,CAAC;QACpD,OAAO,EAAE,sBAAsB,CAAC,wBAAwB,CAAC;QACzD,GAAG,EAAE,gBAAgB;QACrB,YAAY,EAAE,kBAAkB;QAChC,IAAI,EAAE,CAAC,UAAU,CAAC;KACnB,CAAC,CAAQ,CAAC;IAEX,IAAI,YAAY,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,sCAAsC,UAAU,GAAG,CAAC,CAAC;IACvF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAE1C,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChD,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,mCAAmC;KACjD,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAElC,MAAM,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvD,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;KAC5C,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACzE,IAAI,EAAE,WAAW;QACjB,OAAO;QACP,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,GAAG,mBAAmB,CAAC;QACrC,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxB,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAE9B,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QACvD,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE;QACF,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAE5C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QAClE,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAE5D,IAAI,cAAc,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,iCAAiC,aAAa,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC,EAAE,KAAK,CAAC,CAAC;AAEV,EAAE,CAAC,IAAI,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;IACpF,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;IACpE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,mBAAmB,CAAC;QAC/C,cAAc,EAAE,OAAO,CAAC,OAAO;QAC/B,OAAO;QACP,YAAY;QACZ,YAAY;KACb,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,UAAU,CAAC,CAAC;IAEjE,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC;QACtE,IAAI,EAAE,gBAAgB;QACtB,cAAc,EAAE;YACd,iCAAiC,EAAE,EAAE;YACrC,mCAAmC,EAAE,EAAE;YACvC,oBAAoB,EAAE,CAAC;YACvB,MAAM,EAAE,CAAC;YACT,cAAc,EAAE,CAAC;YACjB,kCAAkC,EAAE,IAAI;YACxC,0BAA0B,EAAE,EAAE;SAC/B;QACD,qBAAqB,EAAE,CAAC,UAAU,CAAC;QACnC,MAAM,EAAE,SAAS,CAAC,UAAU,CAAC;KAC9B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEvB,MAAM,oBAAoB,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QAC9D,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE;QACF,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QAC3D,IAAI,EAAE,oBAAoB;KAC3B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9C,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,4CAA4C,oBAAoB,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAE9C,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,OAAc,CAAC;IAEjH,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;IAEjD,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAE7C,IAAI,aAAa,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAE9C,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAChD,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,gCAAgC;KAC9C,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAEnC,MAAM,eAAe,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;IAE9C,MAAM,EACJ,MAAM,EACN,GAAG,EAAE,WAAW,EAChB,EAAE,EAAE,UAAU,EACd,QAAQ,EAAE,gBAAgB,EAC1B,UAAU,GACX,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC;QAClC,IAAI,EAAE,6BAA6B;QACnC,GAAG;QACH,MAAM,EAAE,eAAe;QACvB,eAAe;QACf,aAAa,EAAE,UAAU;QACzB,UAAU,EAAE,aAAa;QACzB,UAAU,EAAE,MAAM;KACnB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhD,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QACvD,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IAE7C,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QAClE,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAE7D,IAAI,cAAc,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,sCAAsC,aAAa,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC,EAAE,MAAM,CAAC,CAAC;AAEX,EAAE,CAAC,IAAI,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;IACjF,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;IACpE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,mBAAmB,CAAC;QAC5C,cAAc,EAAE,OAAO,CAAC,OAAO;QAC/B,OAAO;QACP,YAAY;QACZ,YAAY;KACb,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAEvC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC3D,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,6BAA6B;KAC3C,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC;QAChE,UAAU,EAAE,QAAQ;QACpB,QAAQ,EAAE,kCAAkC;QAC5C,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAEtC,MAAM,EACJ,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,EACpB,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,cAAc,GACzB,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACvC,IAAI,EAAE,eAAe;QACrB,OAAO;QACP,GAAG,EAAE,CAAC,GAAG,SAAS,EAAE,GAAG,WAAW,CAAC;QACnC,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAE3C,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QACtD,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,cAAc;KACrB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAE1C,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QACjE,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAE1D,IAAI,aAAa,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,QAAQ,CAAC,CAAC;IAErD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAExD,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnD,EAAE,EAAE,QAAQ;QACZ,OAAO;KACR,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO;IACT,CAAC;IAED,MAAM,EACJ,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,EACpB,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,cAAc,GACzB,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACvC,IAAI,EAAE,eAAe;QACrB,OAAO;QACP,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAE3C,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QACtD,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,cAAc;KACrB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAE1C,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QACjE,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAE1D,IAAI,aAAa,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,6BAA6B,EAAE,QAAQ,CAAC,CAAC;AACvD,CAAC,EAAE,MAAM,CAAC,CAAC;AAEX,EAAE,CAAC,IAAI,CAAC,mHAAmH,EAAE,KAAK,IAAI,EAAE;IACtI,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,WAAW,EAAE,CAAC;IACpE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,mBAAmB,CAAC;QAC5C,cAAc,EAAE,OAAO,CAAC,OAAO;QAC/B,OAAO;QACP,YAAY;QACZ,YAAY;KACb,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAEvC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC3D,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,gCAAgC;KAC9C,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAElC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrE,OAAO,EAAE,iCAAiC;QAC1C,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;KAC/B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAEtC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAEzC,MAAM,EACJ,GAAG,EAAE,IAAI,EACT,EAAE,EAAE,GAAG,EACP,QAAQ,EAAE,SAAS,GACpB,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACvC,IAAI,EAAE,6BAA6B;QACnC,OAAO;QACP,GAAG,EAAE,CAAC,GAAG,SAAS,EAAE,GAAG,WAAW,CAAC;QACnC,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE1B,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QACjD,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEhC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QAC5D,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,uCAAuC,OAAO,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAExD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrE,OAAO,EAAE,gCAAgC;QACzC,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE;KAC3C,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAEtC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAEzC,MAAM,EACJ,GAAG,EAAE,IAAI,EACT,EAAE,EAAE,GAAG,EACP,QAAQ,EAAE,SAAS,GACpB,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC;QACvC,IAAI,EAAE,kBAAkB;QACxB,OAAO;QACP,GAAG,EAAE,WAAW;QAChB,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE1B,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC;QACjD,OAAO;QACP,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI;QACjC,EAAE,EAAE,GAAG;QACP,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEhC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,yBAAyB,CAAC;QAC5D,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAExD,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrE,OAAO,EAAE,gCAAgC;QACzC,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE;KAC3C,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAEtC,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClE,MAAM,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;AAC3E,CAAC,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import type { Op } from '@geoprotocol/grc-20';
|
|
2
|
-
import { Id } from '../id.js';
|
|
3
|
-
import type { Network } from '../types.js';
|
|
4
|
-
type CreateSpaceParams = {
|
|
5
|
-
editorAddress: string;
|
|
6
|
-
name: string;
|
|
7
|
-
network?: Network;
|
|
8
|
-
ops?: Op[];
|
|
9
|
-
spaceEntityId?: string;
|
|
10
|
-
/**
|
|
11
|
-
* Select which contracts to deploy based on the governance type.
|
|
12
|
-
* If no governance type is provided it defaults to PERSONAL
|
|
13
|
-
*/
|
|
14
|
-
governanceType?: 'PUBLIC' | 'PERSONAL';
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Creates a space with the given name and editor address.
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```ts
|
|
21
|
-
* const { id } = await createSpace({
|
|
22
|
-
* editorAddress: '0x1234567890123456789012345678901234567890',
|
|
23
|
-
* name: 'My Space',
|
|
24
|
-
* network: 'TESTNET', // optional, defaults to 'TESTNET'
|
|
25
|
-
* spaceEntityId: '1234567890123456789012345678901234567890', // optional
|
|
26
|
-
* governanceType: 'PUBLIC', // optional, defaults to 'PERSONAL'
|
|
27
|
-
* ops: [], // optional
|
|
28
|
-
* });
|
|
29
|
-
* ```
|
|
30
|
-
* @param params – {@link CreateSpaceParams}
|
|
31
|
-
* @returns – {@link Id}
|
|
32
|
-
*/
|
|
33
|
-
export declare const createSpace: (params: CreateSpaceParams) => Promise<{
|
|
34
|
-
id: Id;
|
|
35
|
-
}>;
|
|
36
|
-
export {};
|
|
37
|
-
//# sourceMappingURL=create-space.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create-space.d.ts","sourceRoot":"","sources":["../../../src/graph/create-space.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,KAAK,iBAAiB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,cAAc,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CACxC,CAAC;AAkBF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GAAU,QAAQ,iBAAiB;;EAsD1D,CAAC"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { IdUtils } from '../../index.js';
|
|
2
|
-
import { Id } from '../id.js';
|
|
3
|
-
import { getApiOrigin } from './constants.js';
|
|
4
|
-
/**
|
|
5
|
-
* Creates a space with the given name and editor address.
|
|
6
|
-
*
|
|
7
|
-
* @example
|
|
8
|
-
* ```ts
|
|
9
|
-
* const { id } = await createSpace({
|
|
10
|
-
* editorAddress: '0x1234567890123456789012345678901234567890',
|
|
11
|
-
* name: 'My Space',
|
|
12
|
-
* network: 'TESTNET', // optional, defaults to 'TESTNET'
|
|
13
|
-
* spaceEntityId: '1234567890123456789012345678901234567890', // optional
|
|
14
|
-
* governanceType: 'PUBLIC', // optional, defaults to 'PERSONAL'
|
|
15
|
-
* ops: [], // optional
|
|
16
|
-
* });
|
|
17
|
-
* ```
|
|
18
|
-
* @param params – {@link CreateSpaceParams}
|
|
19
|
-
* @returns – {@link Id}
|
|
20
|
-
*/
|
|
21
|
-
export const createSpace = async (params) => {
|
|
22
|
-
const network = params.network ?? 'TESTNET';
|
|
23
|
-
const governanceType = params.governanceType ?? 'PERSONAL';
|
|
24
|
-
const apiHost = getApiOrigin(network);
|
|
25
|
-
const formData = new FormData();
|
|
26
|
-
formData.append('name', params.name);
|
|
27
|
-
formData.append('editorAddress', params.editorAddress);
|
|
28
|
-
if (params.spaceEntityId) {
|
|
29
|
-
formData.append('spaceEntityId', params.spaceEntityId);
|
|
30
|
-
}
|
|
31
|
-
if (params.ops) {
|
|
32
|
-
formData.append('ops', JSON.stringify(params.ops));
|
|
33
|
-
}
|
|
34
|
-
let url = `${apiHost}/deploy`;
|
|
35
|
-
const deployParams = governanceType === 'PERSONAL'
|
|
36
|
-
? {
|
|
37
|
-
spaceName: params.name,
|
|
38
|
-
ops: params.ops,
|
|
39
|
-
spaceEntityId: params.spaceEntityId,
|
|
40
|
-
initialEditorAddress: params.editorAddress,
|
|
41
|
-
}
|
|
42
|
-
: {
|
|
43
|
-
spaceName: params.name,
|
|
44
|
-
ops: params.ops,
|
|
45
|
-
spaceEntityId: params.spaceEntityId,
|
|
46
|
-
initialEditorAddresses: [params.editorAddress],
|
|
47
|
-
};
|
|
48
|
-
if (governanceType === 'PERSONAL') {
|
|
49
|
-
url = `${url}/personal`;
|
|
50
|
-
}
|
|
51
|
-
if (governanceType === 'PUBLIC') {
|
|
52
|
-
url = `${url}/public`;
|
|
53
|
-
}
|
|
54
|
-
const result = await fetch(url, {
|
|
55
|
-
method: 'POST',
|
|
56
|
-
body: JSON.stringify(deployParams),
|
|
57
|
-
headers: {
|
|
58
|
-
'Content-Type': 'application/json',
|
|
59
|
-
},
|
|
60
|
-
});
|
|
61
|
-
const jsonResult = await result.json();
|
|
62
|
-
if (!jsonResult || !jsonResult.spaceId || !IdUtils.isValid(jsonResult.spaceId)) {
|
|
63
|
-
throw new Error(`Failed to create space: ${JSON.stringify(jsonResult)}`);
|
|
64
|
-
}
|
|
65
|
-
return { id: Id(jsonResult.spaceId) };
|
|
66
|
-
};
|
|
67
|
-
//# sourceMappingURL=create-space.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create-space.js","sourceRoot":"","sources":["../../../src/graph/create-space.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAgC9C;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,MAAyB,EAAE,EAAE;IAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;IAC5C,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,UAAU,CAAC;IAC3D,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;QACzB,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QACf,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,GAAG,GAAG,GAAG,OAAO,SAAS,CAAC;IAE9B,MAAM,YAAY,GAChB,cAAc,KAAK,UAAU;QAC3B,CAAC,CAAC;YACE,SAAS,EAAE,MAAM,CAAC,IAAI;YACtB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,oBAAoB,EAAE,MAAM,CAAC,aAAa;SAC3C;QACH,CAAC,CAAC;YACE,SAAS,EAAE,MAAM,CAAC,IAAI;YACtB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,sBAAsB,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;SAC/C,CAAC;IAER,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;QAClC,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,cAAc,KAAK,QAAQ,EAAE,CAAC;QAChC,GAAG,GAAG,GAAG,GAAG,SAAS,CAAC;IACxB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;QAClC,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;AACxC,CAAC,CAAC"}
|
package/dist/src/ops/images.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Id } from '../id.js';
|
|
2
|
-
import type { CreateImageResult } from '../types.js';
|
|
3
|
-
export type CreateImageOpsParams = {
|
|
4
|
-
/** Uploaded IPFS URI for the image file. */
|
|
5
|
-
cid: string;
|
|
6
|
-
/** Optional image dimensions. */
|
|
7
|
-
dimensions?: {
|
|
8
|
-
width: number;
|
|
9
|
-
height: number;
|
|
10
|
-
};
|
|
11
|
-
/** Optional name value for the image entity. */
|
|
12
|
-
name?: string;
|
|
13
|
-
/** Optional description value for the image entity. */
|
|
14
|
-
description?: string;
|
|
15
|
-
/** Optional image entity ID. Generated when omitted. */
|
|
16
|
-
id?: Id | string;
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Builds image entity ops from an image CID and optional metadata.
|
|
20
|
-
*
|
|
21
|
-
* @example
|
|
22
|
-
* ```ts
|
|
23
|
-
* import { images } from '@geoprotocol/geo-sdk/ops';
|
|
24
|
-
*
|
|
25
|
-
* const { id, ops } = images.create({
|
|
26
|
-
* cid: 'ipfs://baf...',
|
|
27
|
-
* name: 'Cover image',
|
|
28
|
-
* dimensions: { width: 1200, height: 630 },
|
|
29
|
-
* });
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* @param params Uploaded CID, optional dimensions, optional metadata, and optional entity ID.
|
|
33
|
-
* @returns Image entity ID, CID, dimensions, and create ops.
|
|
34
|
-
* @throws When the optional image entity ID is invalid.
|
|
35
|
-
*/
|
|
36
|
-
export declare const create: ({ cid, dimensions, name, description, id: providedId, }: CreateImageOpsParams) => CreateImageResult;
|
|
37
|
-
//# sourceMappingURL=images.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../../src/ops/images.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAE9B,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,aAAa,CAAC;AAGtE,MAAM,MAAM,oBAAoB,GAAG;IACjC,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,UAAU,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,EAAE,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,MAAM,GAAI,yDAMpB,oBAAoB,KAAG,iBAkDzB,CAAC"}
|