@graphprotocol/grc-20 0.5.4 → 0.6.0
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 +4 -4
- package/dist/abis.d.ts +7 -0
- package/dist/abis.d.ts.map +1 -0
- package/dist/abis.js +7 -0
- package/dist/abis.js.map +1 -0
- package/dist/constants.d.ts +7 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +8 -0
- package/dist/constants.js.map +1 -0
- package/dist/contracts.d.ts +29 -0
- package/dist/contracts.d.ts.map +1 -0
- package/dist/contracts.js +29 -0
- package/dist/contracts.js.map +1 -0
- package/dist/index.d.ts +61 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +61 -0
- package/dist/index.js.map +1 -0
- package/dist/proto.d.ts +15 -0
- package/dist/proto.d.ts.map +1 -0
- package/dist/proto.js +15 -0
- package/dist/proto.js.map +1 -0
- package/dist/src/abis/dao.d.ts +899 -0
- package/dist/src/abis/dao.d.ts.map +1 -0
- package/dist/src/abis/dao.js +1159 -0
- package/dist/src/abis/dao.js.map +1 -0
- package/dist/src/abis/governance-setup.d.ts +351 -0
- package/dist/src/abis/governance-setup.d.ts.map +1 -0
- package/dist/src/abis/governance-setup.js +461 -0
- package/dist/src/abis/governance-setup.js.map +1 -0
- package/dist/src/abis/index.d.ts +10 -0
- package/dist/src/abis/index.d.ts.map +1 -0
- package/dist/src/abis/index.js +10 -0
- package/dist/src/abis/index.js.map +1 -0
- package/dist/src/abis/main-voting.d.ts +1443 -0
- package/dist/src/abis/main-voting.d.ts.map +1 -0
- package/dist/src/abis/main-voting.js +1866 -0
- package/dist/src/abis/main-voting.js.map +1 -0
- package/dist/src/abis/member-access.d.ts +567 -0
- package/dist/src/abis/member-access.d.ts.map +1 -0
- package/dist/src/abis/member-access.js +735 -0
- package/dist/src/abis/member-access.js.map +1 -0
- package/dist/src/abis/personal-space-admin-setup.d.ts +259 -0
- package/dist/src/abis/personal-space-admin-setup.d.ts.map +1 -0
- package/dist/src/abis/personal-space-admin-setup.js +340 -0
- package/dist/src/abis/personal-space-admin-setup.js.map +1 -0
- package/dist/src/abis/personal-space-admin.d.ts +408 -0
- package/dist/src/abis/personal-space-admin.d.ts.map +1 -0
- package/dist/src/abis/personal-space-admin.js +526 -0
- package/dist/src/abis/personal-space-admin.js.map +1 -0
- package/dist/src/abis/plugin-setup-processor.d.ts +998 -0
- package/dist/src/abis/plugin-setup-processor.d.ts.map +1 -0
- package/dist/src/abis/plugin-setup-processor.js +1293 -0
- package/dist/src/abis/plugin-setup-processor.js.map +1 -0
- package/dist/src/abis/space-setup.d.ts +294 -0
- package/dist/src/abis/space-setup.d.ts.map +1 -0
- package/dist/src/abis/space-setup.js +387 -0
- package/dist/src/abis/space-setup.js.map +1 -0
- package/dist/src/abis/space.d.ts +263 -0
- package/dist/src/abis/space.d.ts.map +1 -0
- package/dist/src/abis/space.js +340 -0
- package/dist/src/abis/space.js.map +1 -0
- package/dist/src/account.d.ts +8 -0
- package/dist/src/account.d.ts.map +1 -0
- package/dist/src/account.js +8 -0
- package/dist/src/account.js.map +1 -0
- package/dist/src/blocks.d.ts +22 -0
- package/dist/src/blocks.d.ts.map +1 -0
- package/dist/src/blocks.js +22 -0
- package/dist/src/blocks.js.map +1 -0
- package/dist/src/core/account.d.ts +28 -0
- package/dist/src/core/account.d.ts.map +1 -0
- package/dist/src/core/account.js +70 -0
- package/dist/src/core/account.js.map +1 -0
- package/dist/src/core/account.test.d.ts +2 -0
- package/dist/src/core/account.test.d.ts.map +1 -0
- package/dist/src/core/account.test.js +25 -0
- package/dist/src/core/account.test.js.map +1 -0
- package/dist/src/core/base58.d.ts +43 -0
- package/dist/src/core/base58.d.ts.map +1 -0
- package/dist/src/core/base58.js +68 -0
- package/dist/src/core/base58.js.map +1 -0
- package/dist/src/core/base58.test.d.ts +2 -0
- package/dist/src/core/base58.test.d.ts.map +1 -0
- package/dist/src/core/base58.test.js +17 -0
- package/dist/src/core/base58.test.js.map +1 -0
- package/dist/src/core/blocks/data.d.ts +34 -0
- package/dist/src/core/blocks/data.d.ts.map +1 -0
- package/dist/src/core/blocks/data.js +71 -0
- package/dist/src/core/blocks/data.js.map +1 -0
- package/dist/src/core/blocks/data.test.d.ts +2 -0
- package/dist/src/core/blocks/data.test.d.ts.map +1 -0
- package/dist/src/core/blocks/data.test.js +58 -0
- package/dist/src/core/blocks/data.test.js.map +1 -0
- package/dist/src/core/blocks/image.d.ts +15 -0
- package/dist/src/core/blocks/image.d.ts.map +1 -0
- package/dist/src/core/blocks/image.js +15 -0
- package/dist/src/core/blocks/image.js.map +1 -0
- package/dist/src/core/blocks/text.d.ts +31 -0
- package/dist/src/core/blocks/text.d.ts.map +1 -0
- package/dist/src/core/blocks/text.js +52 -0
- package/dist/src/core/blocks/text.js.map +1 -0
- package/dist/src/core/blocks/text.test.d.ts +2 -0
- package/dist/src/core/blocks/text.test.d.ts.map +1 -0
- package/dist/src/core/blocks/text.test.js +29 -0
- package/dist/src/core/blocks/text.test.js.map +1 -0
- package/dist/src/core/get-checksum-address.d.ts +10 -0
- package/dist/src/core/get-checksum-address.d.ts.map +1 -0
- package/dist/src/core/get-checksum-address.js +20 -0
- package/dist/src/core/get-checksum-address.js.map +1 -0
- package/dist/src/core/ids/content.d.ts +59 -0
- package/dist/src/core/ids/content.d.ts.map +1 -0
- package/dist/src/core/ids/content.js +59 -0
- package/dist/src/core/ids/content.js.map +1 -0
- package/dist/src/core/ids/network.d.ts +4 -0
- package/dist/src/core/ids/network.d.ts.map +1 -0
- package/dist/src/core/ids/network.js +4 -0
- package/dist/src/core/ids/network.js.map +1 -0
- package/dist/src/core/ids/system.d.ts +212 -0
- package/dist/src/core/ids/system.d.ts.map +1 -0
- package/dist/src/core/ids/system.js +220 -0
- package/dist/src/core/ids/system.js.map +1 -0
- package/dist/src/core/image.d.ts +27 -0
- package/dist/src/core/image.d.ts.map +1 -0
- package/dist/src/core/image.js +47 -0
- package/dist/src/core/image.js.map +1 -0
- package/dist/src/core/image.test.d.ts +2 -0
- package/dist/src/core/image.test.d.ts.map +1 -0
- package/dist/src/core/image.test.js +26 -0
- package/dist/src/core/image.test.js.map +1 -0
- package/dist/src/core/position.d.ts +12 -0
- package/dist/src/core/position.d.ts.map +1 -0
- package/dist/src/core/position.js +12 -0
- package/dist/src/core/position.js.map +1 -0
- package/dist/src/core/relation.d.ts +88 -0
- package/dist/src/core/relation.d.ts.map +1 -0
- package/dist/src/core/relation.js +89 -0
- package/dist/src/core/relation.js.map +1 -0
- package/dist/src/core/relation.test.d.ts +2 -0
- package/dist/src/core/relation.test.d.ts.map +1 -0
- package/dist/src/core/relation.test.js +45 -0
- package/dist/src/core/relation.test.js.map +1 -0
- package/dist/src/core/scheme.d.ts +78 -0
- package/dist/src/core/scheme.d.ts.map +1 -0
- package/dist/src/core/scheme.js +99 -0
- package/dist/src/core/scheme.js.map +1 -0
- package/dist/src/core/scheme.test.d.ts +2 -0
- package/dist/src/core/scheme.test.d.ts.map +1 -0
- package/dist/src/core/scheme.test.js +34 -0
- package/dist/src/core/scheme.test.js.map +1 -0
- package/dist/src/core/triple.d.ts +50 -0
- package/dist/src/core/triple.d.ts.map +1 -0
- package/dist/src/core/triple.js +56 -0
- package/dist/src/core/triple.js.map +1 -0
- package/dist/src/core/triple.test.d.ts +2 -0
- package/dist/src/core/triple.test.d.ts.map +1 -0
- package/dist/src/core/triple.test.js +37 -0
- package/dist/src/core/triple.test.js.map +1 -0
- package/dist/src/encodings/get-accept-editor-arguments.d.ts +11 -0
- package/dist/src/encodings/get-accept-editor-arguments.d.ts.map +1 -0
- package/dist/src/encodings/get-accept-editor-arguments.js +23 -0
- package/dist/src/encodings/get-accept-editor-arguments.js.map +1 -0
- package/dist/src/encodings/get-accept-subspace-arguments.d.ts +11 -0
- package/dist/src/encodings/get-accept-subspace-arguments.d.ts.map +1 -0
- package/dist/src/encodings/get-accept-subspace-arguments.js +23 -0
- package/dist/src/encodings/get-accept-subspace-arguments.js.map +1 -0
- package/dist/src/encodings/get-calldata-for-space-governance-type.d.ts +8 -0
- package/dist/src/encodings/get-calldata-for-space-governance-type.d.ts.map +1 -0
- package/dist/src/encodings/get-calldata-for-space-governance-type.js +19 -0
- package/dist/src/encodings/get-calldata-for-space-governance-type.js.map +1 -0
- package/dist/src/encodings/get-process-geo-proposal-arguments.d.ts +7 -0
- package/dist/src/encodings/get-process-geo-proposal-arguments.d.ts.map +1 -0
- package/dist/src/encodings/get-process-geo-proposal-arguments.js +23 -0
- package/dist/src/encodings/get-process-geo-proposal-arguments.js.map +1 -0
- package/dist/src/encodings/get-remove-editor-arguments.d.ts +11 -0
- package/dist/src/encodings/get-remove-editor-arguments.d.ts.map +1 -0
- package/dist/src/encodings/get-remove-editor-arguments.js +23 -0
- package/dist/src/encodings/get-remove-editor-arguments.js.map +1 -0
- package/dist/src/encodings/get-remove-subspace-arguments.d.ts +11 -0
- package/dist/src/encodings/get-remove-subspace-arguments.d.ts.map +1 -0
- package/dist/src/encodings/get-remove-subspace-arguments.js +23 -0
- package/dist/src/encodings/get-remove-subspace-arguments.js.map +1 -0
- package/dist/src/encodings/index.d.ts +7 -0
- package/dist/src/encodings/index.d.ts.map +1 -0
- package/dist/src/encodings/index.js +7 -0
- package/dist/src/encodings/index.js.map +1 -0
- package/dist/src/id.d.ts +21 -0
- package/dist/src/id.d.ts.map +1 -0
- package/dist/src/id.js +36 -0
- package/dist/src/id.js.map +1 -0
- package/dist/src/id.test.d.ts +2 -0
- package/dist/src/id.test.d.ts.map +1 -0
- package/dist/src/id.test.js +11 -0
- package/dist/src/id.test.js.map +1 -0
- package/dist/src/image.d.ts +8 -0
- package/dist/src/image.d.ts.map +1 -0
- package/dist/src/image.js +8 -0
- package/dist/src/image.js.map +1 -0
- package/dist/src/ipfs.d.ts +32 -0
- package/dist/src/ipfs.d.ts.map +1 -0
- package/dist/src/ipfs.js +54 -0
- package/dist/src/ipfs.js.map +1 -0
- package/dist/src/position.d.ts +7 -0
- package/dist/src/position.d.ts.map +1 -0
- package/dist/src/position.js +7 -0
- package/dist/src/position.js.map +1 -0
- package/dist/src/proto/edit.d.ts +9 -0
- package/dist/src/proto/edit.d.ts.map +1 -0
- package/dist/src/proto/edit.js +54 -0
- package/dist/src/proto/edit.js.map +1 -0
- package/dist/src/proto/edit.test.d.ts +2 -0
- package/dist/src/proto/edit.test.d.ts.map +1 -0
- package/dist/src/proto/edit.test.js +182 -0
- package/dist/src/proto/edit.test.js.map +1 -0
- package/dist/src/proto/gen/src/proto/ipfs_pb.d.ts +412 -0
- package/dist/src/proto/gen/src/proto/ipfs_pb.d.ts.map +1 -0
- package/dist/src/proto/gen/src/proto/ipfs_pb.js +612 -0
- package/dist/src/proto/gen/src/proto/ipfs_pb.js.map +1 -0
- package/dist/src/proto/index.d.ts +2 -0
- package/dist/src/proto/index.d.ts.map +1 -0
- package/dist/src/proto/index.js +2 -0
- package/dist/src/proto/index.js.map +1 -0
- package/dist/src/relation.d.ts +7 -0
- package/dist/src/relation.d.ts.map +1 -0
- package/dist/src/relation.js +7 -0
- package/dist/src/relation.js.map +1 -0
- package/dist/src/scheme.d.ts +7 -0
- package/dist/src/scheme.d.ts.map +1 -0
- package/dist/src/scheme.js +7 -0
- package/dist/src/scheme.js.map +1 -0
- package/dist/src/system-ids.d.ts +9 -0
- package/dist/src/system-ids.d.ts.map +1 -0
- package/dist/src/system-ids.js +9 -0
- package/dist/src/system-ids.js.map +1 -0
- package/dist/src/triple.d.ts +7 -0
- package/dist/src/triple.d.ts.map +1 -0
- package/dist/src/triple.js +7 -0
- package/dist/src/triple.js.map +1 -0
- package/dist/src/types.d.ts +92 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +13 -0
- package/dist/src/types.js.map +1 -0
- package/package.json +12 -13
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { encodeFunctionData, stringToHex } from 'viem';
|
|
2
|
+
import { MainVotingAbi } from '../abis/index.js';
|
|
3
|
+
import { VoteOption } from '../types.js';
|
|
4
|
+
export function getAcceptEditorArguments({ votingPluginAddress, ipfsUri, editorAddress, }) {
|
|
5
|
+
return [
|
|
6
|
+
stringToHex(ipfsUri),
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
to: votingPluginAddress,
|
|
10
|
+
value: BigInt(0),
|
|
11
|
+
data: encodeFunctionData({
|
|
12
|
+
abi: MainVotingAbi,
|
|
13
|
+
functionName: 'addEditor',
|
|
14
|
+
args: [editorAddress],
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
BigInt(0),
|
|
19
|
+
VoteOption.None,
|
|
20
|
+
true,
|
|
21
|
+
];
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=get-accept-editor-arguments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-accept-editor-arguments.js","sourceRoot":"","sources":["../../../src/encodings/get-accept-editor-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,wBAAwB,CAAC,EACvC,mBAAmB,EACnB,OAAO,EACP,aAAa,GAKd;IACC,OAAO;QACL,WAAW,CAAC,OAAO,CAAC;QACpB;YACE;gBACE,EAAE,EAAE,mBAAmB;gBACvB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,aAAa;oBAClB,YAAY,EAAE,WAAW;oBACzB,IAAI,EAAE,CAAC,aAAa,CAAC;iBACtB,CAAC;aACH;SACF;QACD,MAAM,CAAC,CAAC,CAAC;QACT,UAAU,CAAC,IAAI;QACf,IAAI;KACI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { VoteOption } from '../types.js';
|
|
2
|
+
export declare function getAcceptSubspaceArguments({ spacePluginAddress, ipfsUri, subspaceToAccept, }: {
|
|
3
|
+
spacePluginAddress: `0x${string}`;
|
|
4
|
+
ipfsUri: `ipfs://${string}`;
|
|
5
|
+
subspaceToAccept: `0x${string}`;
|
|
6
|
+
}): readonly [`0x${string}`, readonly [{
|
|
7
|
+
readonly to: `0x${string}`;
|
|
8
|
+
readonly value: bigint;
|
|
9
|
+
readonly data: `0x${string}`;
|
|
10
|
+
}], bigint, VoteOption.Yes, true];
|
|
11
|
+
//# sourceMappingURL=get-accept-subspace-arguments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-accept-subspace-arguments.d.ts","sourceRoot":"","sources":["../../../src/encodings/get-accept-subspace-arguments.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,wBAAgB,0BAA0B,CAAC,EACzC,kBAAkB,EAClB,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,kBAAkB,EAAE,KAAK,MAAM,EAAE,CAAC;IAClC,OAAO,EAAE,UAAU,MAAM,EAAE,CAAC;IAC5B,gBAAgB,EAAE,KAAK,MAAM,EAAE,CAAC;CACjC;;;;kCAkBA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { encodeFunctionData, stringToHex } from 'viem';
|
|
2
|
+
import { SpaceAbi } from '../abis/index.js';
|
|
3
|
+
import { VoteOption } from '../types.js';
|
|
4
|
+
export function getAcceptSubspaceArguments({ spacePluginAddress, ipfsUri, subspaceToAccept, }) {
|
|
5
|
+
return [
|
|
6
|
+
stringToHex(ipfsUri),
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
to: spacePluginAddress,
|
|
10
|
+
value: BigInt(0),
|
|
11
|
+
data: encodeFunctionData({
|
|
12
|
+
abi: SpaceAbi,
|
|
13
|
+
functionName: 'acceptSubspace',
|
|
14
|
+
args: [subspaceToAccept],
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
BigInt(0),
|
|
19
|
+
VoteOption.Yes,
|
|
20
|
+
true,
|
|
21
|
+
];
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=get-accept-subspace-arguments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-accept-subspace-arguments.js","sourceRoot":"","sources":["../../../src/encodings/get-accept-subspace-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,0BAA0B,CAAC,EACzC,kBAAkB,EAClB,OAAO,EACP,gBAAgB,GAKjB;IACC,OAAO;QACL,WAAW,CAAC,OAAO,CAAC;QACpB;YACE;gBACE,EAAE,EAAE,kBAAkB;gBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,gBAAgB;oBAC9B,IAAI,EAAE,CAAC,gBAAgB,CAAC;iBACzB,CAAC;aACH;SACF;QACD,MAAM,CAAC,CAAC,CAAC;QACT,UAAU,CAAC,GAAG;QACd,IAAI;KACI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type GovernanceTypeCalldataArgs = {
|
|
2
|
+
type: 'PUBLIC' | 'PERSONAL';
|
|
3
|
+
cid: string;
|
|
4
|
+
spacePluginAddress: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function getCalldataForSpaceGovernanceType(args: GovernanceTypeCalldataArgs): `0x${string}`;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=get-calldata-for-space-governance-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-calldata-for-space-governance-type.d.ts","sourceRoot":"","sources":["../../../src/encodings/get-calldata-for-space-governance-type.ts"],"names":[],"mappings":"AAIA,KAAK,0BAA0B,GAAG;IAChC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,0BAA0B,iBAejF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { encodeFunctionData, stringToHex } from 'viem';
|
|
2
|
+
import { MainVotingAbi, PersonalSpaceAdminAbi } from '../abis/index.js';
|
|
3
|
+
export function getCalldataForSpaceGovernanceType(args) {
|
|
4
|
+
switch (args.type) {
|
|
5
|
+
case 'PUBLIC':
|
|
6
|
+
return encodeFunctionData({
|
|
7
|
+
functionName: 'proposeEdits',
|
|
8
|
+
abi: MainVotingAbi,
|
|
9
|
+
args: [stringToHex(args.cid), args.cid, args.spacePluginAddress],
|
|
10
|
+
});
|
|
11
|
+
case 'PERSONAL':
|
|
12
|
+
return encodeFunctionData({
|
|
13
|
+
functionName: 'submitEdits',
|
|
14
|
+
abi: PersonalSpaceAdminAbi,
|
|
15
|
+
args: [args.cid, args.spacePluginAddress],
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=get-calldata-for-space-governance-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-calldata-for-space-governance-type.js","sourceRoot":"","sources":["../../../src/encodings/get-calldata-for-space-governance-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAQxE,MAAM,UAAU,iCAAiC,CAAC,IAAgC;IAChF,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,kBAAkB,CAAC;gBACxB,YAAY,EAAE,cAAc;gBAC5B,GAAG,EAAE,aAAa;gBAClB,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,kBAAmC,CAAC;aAClF,CAAC,CAAC;QACL,KAAK,UAAU;YACb,OAAO,kBAAkB,CAAC;gBACxB,YAAY,EAAE,aAAa;gBAC3B,GAAG,EAAE,qBAAqB;gBAC1B,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,kBAAmC,CAAC;aAC3D,CAAC,CAAC;IACP,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { VoteOption } from '../types.js';
|
|
2
|
+
export declare function getProcessGeoProposalArguments(spacePluginAddress: `0x${string}`, ipfsUri: `ipfs://${string}`): readonly [`0x${string}`, readonly [{
|
|
3
|
+
readonly to: `0x${string}`;
|
|
4
|
+
readonly value: bigint;
|
|
5
|
+
readonly data: `0x${string}`;
|
|
6
|
+
}], bigint, VoteOption.Yes, true];
|
|
7
|
+
//# sourceMappingURL=get-process-geo-proposal-arguments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-process-geo-proposal-arguments.d.ts","sourceRoot":"","sources":["../../../src/encodings/get-process-geo-proposal-arguments.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,wBAAgB,8BAA8B,CAAC,kBAAkB,EAAE,KAAK,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,MAAM,EAAE;;;;kCAkB5G"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { encodeFunctionData, stringToHex } from 'viem';
|
|
2
|
+
import { SpaceAbi } from '../abis/index.js';
|
|
3
|
+
import { VoteOption } from '../types.js';
|
|
4
|
+
export function getProcessGeoProposalArguments(spacePluginAddress, ipfsUri) {
|
|
5
|
+
return [
|
|
6
|
+
stringToHex(ipfsUri),
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
to: spacePluginAddress,
|
|
10
|
+
value: BigInt(0),
|
|
11
|
+
data: encodeFunctionData({
|
|
12
|
+
abi: SpaceAbi,
|
|
13
|
+
functionName: 'publishEdits',
|
|
14
|
+
args: [ipfsUri],
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
BigInt(0),
|
|
19
|
+
VoteOption.Yes,
|
|
20
|
+
true,
|
|
21
|
+
];
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=get-process-geo-proposal-arguments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-process-geo-proposal-arguments.js","sourceRoot":"","sources":["../../../src/encodings/get-process-geo-proposal-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,8BAA8B,CAAC,kBAAiC,EAAE,OAA2B;IAC3G,OAAO;QACL,WAAW,CAAC,OAAO,CAAC;QACpB;YACE;gBACE,EAAE,EAAE,kBAAkB;gBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,cAAc;oBAC5B,IAAI,EAAE,CAAC,OAAO,CAAC;iBAChB,CAAC;aACH;SACF;QACD,MAAM,CAAC,CAAC,CAAC;QACT,UAAU,CAAC,GAAG;QACd,IAAI;KACI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { VoteOption } from '../types.js';
|
|
2
|
+
export declare function getRemoveEditorArguments({ votingPluginAddress, ipfsUri, editorAddress, }: {
|
|
3
|
+
votingPluginAddress: `0x${string}`;
|
|
4
|
+
ipfsUri: `ipfs://${string}`;
|
|
5
|
+
editorAddress: `0x${string}`;
|
|
6
|
+
}): readonly [`0x${string}`, readonly [{
|
|
7
|
+
readonly to: `0x${string}`;
|
|
8
|
+
readonly value: bigint;
|
|
9
|
+
readonly data: `0x${string}`;
|
|
10
|
+
}], bigint, VoteOption.Yes, true];
|
|
11
|
+
//# sourceMappingURL=get-remove-editor-arguments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-remove-editor-arguments.d.ts","sourceRoot":"","sources":["../../../src/encodings/get-remove-editor-arguments.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,wBAAgB,wBAAwB,CAAC,EACvC,mBAAmB,EACnB,OAAO,EACP,aAAa,GACd,EAAE;IACD,mBAAmB,EAAE,KAAK,MAAM,EAAE,CAAC;IACnC,OAAO,EAAE,UAAU,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,KAAK,MAAM,EAAE,CAAC;CAC9B;;;;kCAkBA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { encodeFunctionData, stringToHex } from 'viem';
|
|
2
|
+
import { MainVotingAbi } from '../abis/index.js';
|
|
3
|
+
import { VoteOption } from '../types.js';
|
|
4
|
+
export function getRemoveEditorArguments({ votingPluginAddress, ipfsUri, editorAddress, }) {
|
|
5
|
+
return [
|
|
6
|
+
stringToHex(ipfsUri),
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
to: votingPluginAddress,
|
|
10
|
+
value: BigInt(0),
|
|
11
|
+
data: encodeFunctionData({
|
|
12
|
+
abi: MainVotingAbi,
|
|
13
|
+
functionName: 'removeMember',
|
|
14
|
+
args: [editorAddress],
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
BigInt(0),
|
|
19
|
+
VoteOption.Yes,
|
|
20
|
+
true,
|
|
21
|
+
];
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=get-remove-editor-arguments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-remove-editor-arguments.js","sourceRoot":"","sources":["../../../src/encodings/get-remove-editor-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,wBAAwB,CAAC,EACvC,mBAAmB,EACnB,OAAO,EACP,aAAa,GAKd;IACC,OAAO;QACL,WAAW,CAAC,OAAO,CAAC;QACpB;YACE;gBACE,EAAE,EAAE,mBAAmB;gBACvB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,aAAa;oBAClB,YAAY,EAAE,cAAc;oBAC5B,IAAI,EAAE,CAAC,aAAa,CAAC;iBACtB,CAAC;aACH;SACF;QACD,MAAM,CAAC,CAAC,CAAC;QACT,UAAU,CAAC,GAAG;QACd,IAAI;KACI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { VoteOption } from '../types.js';
|
|
2
|
+
export declare function getRemoveSubspaceArguments({ spacePluginAddress, ipfsUri, subspaceToAccept, }: {
|
|
3
|
+
spacePluginAddress: `0x${string}`;
|
|
4
|
+
ipfsUri: `ipfs://${string}`;
|
|
5
|
+
subspaceToAccept: `0x${string}`;
|
|
6
|
+
}): readonly [`0x${string}`, readonly [{
|
|
7
|
+
readonly to: `0x${string}`;
|
|
8
|
+
readonly value: bigint;
|
|
9
|
+
readonly data: `0x${string}`;
|
|
10
|
+
}], bigint, VoteOption.Yes, true];
|
|
11
|
+
//# sourceMappingURL=get-remove-subspace-arguments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-remove-subspace-arguments.d.ts","sourceRoot":"","sources":["../../../src/encodings/get-remove-subspace-arguments.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,wBAAgB,0BAA0B,CAAC,EACzC,kBAAkB,EAClB,OAAO,EACP,gBAAgB,GACjB,EAAE;IACD,kBAAkB,EAAE,KAAK,MAAM,EAAE,CAAC;IAClC,OAAO,EAAE,UAAU,MAAM,EAAE,CAAC;IAC5B,gBAAgB,EAAE,KAAK,MAAM,EAAE,CAAC;CACjC;;;;kCAkBA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { encodeFunctionData, stringToHex } from 'viem';
|
|
2
|
+
import { SpaceAbi } from '../abis/index.js';
|
|
3
|
+
import { VoteOption } from '../types.js';
|
|
4
|
+
export function getRemoveSubspaceArguments({ spacePluginAddress, ipfsUri, subspaceToAccept, }) {
|
|
5
|
+
return [
|
|
6
|
+
stringToHex(ipfsUri),
|
|
7
|
+
[
|
|
8
|
+
{
|
|
9
|
+
to: spacePluginAddress,
|
|
10
|
+
value: BigInt(0),
|
|
11
|
+
data: encodeFunctionData({
|
|
12
|
+
abi: SpaceAbi,
|
|
13
|
+
functionName: 'removeSubspace',
|
|
14
|
+
args: [subspaceToAccept],
|
|
15
|
+
}),
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
BigInt(0),
|
|
19
|
+
VoteOption.Yes,
|
|
20
|
+
true,
|
|
21
|
+
];
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=get-remove-subspace-arguments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-remove-subspace-arguments.js","sourceRoot":"","sources":["../../../src/encodings/get-remove-subspace-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,0BAA0B,CAAC,EACzC,kBAAkB,EAClB,OAAO,EACP,gBAAgB,GAKjB;IACC,OAAO;QACL,WAAW,CAAC,OAAO,CAAC;QACpB;YACE;gBACE,EAAE,EAAE,kBAAkB;gBACtB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChB,IAAI,EAAE,kBAAkB,CAAC;oBACvB,GAAG,EAAE,QAAQ;oBACb,YAAY,EAAE,gBAAgB;oBAC9B,IAAI,EAAE,CAAC,gBAAgB,CAAC;iBACzB,CAAC;aACH;SACF;QACD,MAAM,CAAC,CAAC,CAAC;QACT,UAAU,CAAC,GAAG;QACd,IAAI;KACI,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './get-process-geo-proposal-arguments.js';
|
|
2
|
+
export * from './get-accept-subspace-arguments.js';
|
|
3
|
+
export * from './get-remove-subspace-arguments.js';
|
|
4
|
+
export * from './get-accept-editor-arguments.js';
|
|
5
|
+
export * from './get-remove-editor-arguments.js';
|
|
6
|
+
export * from './get-calldata-for-space-governance-type.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/encodings/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,6CAA6C,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './get-process-geo-proposal-arguments.js';
|
|
2
|
+
export * from './get-accept-subspace-arguments.js';
|
|
3
|
+
export * from './get-remove-subspace-arguments.js';
|
|
4
|
+
export * from './get-accept-editor-arguments.js';
|
|
5
|
+
export * from './get-remove-editor-arguments.js';
|
|
6
|
+
export * from './get-calldata-for-space-governance-type.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/encodings/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,6CAA6C,CAAC"}
|
package/dist/src/id.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides utility functions for working knowledge graph
|
|
3
|
+
* identifiers in TypeScript.
|
|
4
|
+
*
|
|
5
|
+
* @since 0.0.6
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Generates a globally unique knowledge graph identifier.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```
|
|
12
|
+
* import { ID } from '@graphprotocol/grc-20'
|
|
13
|
+
*
|
|
14
|
+
* const id = ID.generate();
|
|
15
|
+
* console.log(id) // Gw9uTVTnJdhtczyuzBkL3X
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* @returns base58 encoded v4 UUID
|
|
19
|
+
*/
|
|
20
|
+
export declare function generate(): string;
|
|
21
|
+
//# sourceMappingURL=id.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../src/id.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;;;;;;;;;GAYG;AACH,wBAAgB,QAAQ,IAAI,MAAM,CAejC"}
|
package/dist/src/id.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides utility functions for working knowledge graph
|
|
3
|
+
* identifiers in TypeScript.
|
|
4
|
+
*
|
|
5
|
+
* @since 0.0.6
|
|
6
|
+
*/
|
|
7
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
8
|
+
import { encodeBase58 } from './core/base58.js';
|
|
9
|
+
/**
|
|
10
|
+
* Generates a globally unique knowledge graph identifier.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```
|
|
14
|
+
* import { ID } from '@graphprotocol/grc-20'
|
|
15
|
+
*
|
|
16
|
+
* const id = ID.generate();
|
|
17
|
+
* console.log(id) // Gw9uTVTnJdhtczyuzBkL3X
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @returns base58 encoded v4 UUID
|
|
21
|
+
*/
|
|
22
|
+
export function generate() {
|
|
23
|
+
const uuid = uuidv4();
|
|
24
|
+
const stripped = uuid.replaceAll(/-/g, '');
|
|
25
|
+
const id = encodeBase58(stripped);
|
|
26
|
+
// In extremely rare occasions the id generator may result in ids that are
|
|
27
|
+
// 21 characters instead of 22. Theoretically the smallest length the id can
|
|
28
|
+
// generate is 16 characters, but only in specifically engineered cases.
|
|
29
|
+
//
|
|
30
|
+
// If this occurs we can generate again until we get a valid id.
|
|
31
|
+
if (id.length === 22) {
|
|
32
|
+
return id;
|
|
33
|
+
}
|
|
34
|
+
return generate();
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=id.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.js","sourceRoot":"","sources":["../../src/id.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,QAAQ;IACtB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;IACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC3C,MAAM,EAAE,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAElC,0EAA0E;IAC1E,4EAA4E;IAC5E,wEAAwE;IACxE,EAAE;IACF,gEAAgE;IAChE,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,QAAQ,EAAE,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.test.d.ts","sourceRoot":"","sources":["../../src/id.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { expect, it } from 'vitest';
|
|
2
|
+
import { BASE58_ALLOWED_CHARS } from './core/base58.js';
|
|
3
|
+
import { generate } from './id.js';
|
|
4
|
+
// @NOTE this would be a good candidate for DST-style tests
|
|
5
|
+
it('should generate valid base58 encoded id with length of 22', () => {
|
|
6
|
+
const id = generate();
|
|
7
|
+
expect(id).toBeTypeOf('string');
|
|
8
|
+
expect(id.length).toBe(22);
|
|
9
|
+
expect(id.split('').every(char => BASE58_ALLOWED_CHARS.includes(char))).toBe(true);
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=id.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.test.js","sourceRoot":"","sources":["../../src/id.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,2DAA2D;AAC3D,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;IACnE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrF,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../src/image.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/image.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,KAAK,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides utility functions for interacting with the default
|
|
3
|
+
* IPFS gateway in TypeScript.
|
|
4
|
+
*
|
|
5
|
+
* @since 0.1.1
|
|
6
|
+
*/
|
|
7
|
+
import type { Op } from './types.js';
|
|
8
|
+
type PublishEditProposalArgs = {
|
|
9
|
+
name: string;
|
|
10
|
+
ops: Op[];
|
|
11
|
+
author: string;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Generates correct protobuf encoding for an Edit and uploads it to IPFS.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { IPFS } from '@graphprotocol/grc-20';
|
|
19
|
+
*
|
|
20
|
+
* const cid = await IPFS.publishEdit({
|
|
21
|
+
* name: 'Edit name',
|
|
22
|
+
* ops: ops,
|
|
23
|
+
* author: '0x000000000000000000000000000000000000',
|
|
24
|
+
* });
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* @param args arguments for publishing an edit to IPFS {@link PublishEditProposalArgs}
|
|
28
|
+
* @returns IPFS CID representing the edit prefixed with `ipfs://`
|
|
29
|
+
*/
|
|
30
|
+
export declare function publishEdit(args: PublishEditProposalArgs): Promise<string>;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=ipfs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ipfs.d.ts","sourceRoot":"","sources":["../../src/ipfs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAMrC,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,EAAE,EAAE,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CA+BhF"}
|
package/dist/src/ipfs.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This module provides utility functions for interacting with the default
|
|
3
|
+
* IPFS gateway in TypeScript.
|
|
4
|
+
*
|
|
5
|
+
* @since 0.1.1
|
|
6
|
+
*/
|
|
7
|
+
import { Micro } from 'effect';
|
|
8
|
+
import { EditProposal } from '../proto.js';
|
|
9
|
+
class IpfsUploadError extends Error {
|
|
10
|
+
_tag = 'IpfsUploadError';
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Generates correct protobuf encoding for an Edit and uploads it to IPFS.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* import { IPFS } from '@graphprotocol/grc-20';
|
|
18
|
+
*
|
|
19
|
+
* const cid = await IPFS.publishEdit({
|
|
20
|
+
* name: 'Edit name',
|
|
21
|
+
* ops: ops,
|
|
22
|
+
* author: '0x000000000000000000000000000000000000',
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @param args arguments for publishing an edit to IPFS {@link PublishEditProposalArgs}
|
|
27
|
+
* @returns IPFS CID representing the edit prefixed with `ipfs://`
|
|
28
|
+
*/
|
|
29
|
+
export async function publishEdit(args) {
|
|
30
|
+
const { name, ops, author } = args;
|
|
31
|
+
const edit = EditProposal.encode({ name, ops, author });
|
|
32
|
+
const blob = new Blob([edit], { type: 'application/octet-stream' });
|
|
33
|
+
const formData = new FormData();
|
|
34
|
+
formData.append('file', blob);
|
|
35
|
+
const upload = Micro.gen(function* () {
|
|
36
|
+
const result = yield* Micro.tryPromise({
|
|
37
|
+
try: () => fetch('https://api-testnet.grc-20.thegraph.com/ipfs/upload-edit', {
|
|
38
|
+
method: 'POST',
|
|
39
|
+
body: formData,
|
|
40
|
+
}),
|
|
41
|
+
catch: error => new IpfsUploadError(`Could not upload edit to IPFS: ${error}`),
|
|
42
|
+
});
|
|
43
|
+
const maybeCid = yield* Micro.tryPromise({
|
|
44
|
+
try: async () => {
|
|
45
|
+
const { cid } = await result.json();
|
|
46
|
+
return cid;
|
|
47
|
+
},
|
|
48
|
+
catch: error => new IpfsUploadError(`Could not parse response from IPFS: ${error}`),
|
|
49
|
+
});
|
|
50
|
+
return maybeCid;
|
|
51
|
+
});
|
|
52
|
+
return await Micro.runPromise(upload);
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=ipfs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ipfs.js","sourceRoot":"","sources":["../../src/ipfs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,MAAM,eAAgB,SAAQ,KAAK;IACxB,IAAI,GAAG,iBAAiB,CAAC;CACnC;AAQD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAA6B;IAC7D,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEnC,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;IAExD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE9B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;YACrC,GAAG,EAAE,GAAG,EAAE,CACR,KAAK,CAAC,0DAA0D,EAAE;gBAChE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,QAAQ;aACf,CAAC;YACJ,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,kCAAkC,KAAK,EAAE,CAAC;SAC/E,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;YACvC,GAAG,EAAE,KAAK,IAAI,EAAE;gBACd,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpC,OAAO,GAAG,CAAC;YACb,CAAC;YACD,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,eAAe,CAAC,uCAAuC,KAAK,EAAE,CAAC;SACpF,CAAC,CAAC;QAEH,OAAO,QAA8B,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../src/position.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"position.js","sourceRoot":"","sources":["../../src/position.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../src/proto/edit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAGtC,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,EAAE,EAAE,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,oBAAoB,GAAG,UAAU,CAS9E"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { generate } from '../id.js';
|
|
2
|
+
import { ActionType, Edit, Entity, Op as OpBinary, OpType, Relation, Triple } from './gen/src/proto/ipfs_pb.js';
|
|
3
|
+
export function encode({ name, ops, author }) {
|
|
4
|
+
return new Edit({
|
|
5
|
+
type: ActionType.ADD_EDIT,
|
|
6
|
+
version: '1.0.0',
|
|
7
|
+
id: generate(),
|
|
8
|
+
name,
|
|
9
|
+
ops: opsToBinary(ops),
|
|
10
|
+
authors: [author],
|
|
11
|
+
}).toBinary();
|
|
12
|
+
}
|
|
13
|
+
function opsToBinary(ops) {
|
|
14
|
+
return ops.map(o => {
|
|
15
|
+
switch (o.type) {
|
|
16
|
+
case 'CREATE_RELATION':
|
|
17
|
+
return new OpBinary({
|
|
18
|
+
type: OpType.CREATE_RELATION,
|
|
19
|
+
relation: Relation.fromJson(o.relation),
|
|
20
|
+
});
|
|
21
|
+
case 'DELETE_RELATION':
|
|
22
|
+
return new OpBinary({
|
|
23
|
+
type: OpType.DELETE_RELATION,
|
|
24
|
+
relation: Relation.fromJson({
|
|
25
|
+
id: o.relation.id,
|
|
26
|
+
}),
|
|
27
|
+
});
|
|
28
|
+
case 'SET_BATCH_TRIPLE':
|
|
29
|
+
return new OpBinary({
|
|
30
|
+
type: OpType.SET_TRIPLE_BATCH,
|
|
31
|
+
entity: Entity.fromJson(o.entity),
|
|
32
|
+
triples: o.triples.map(t => Triple.fromJson(t)),
|
|
33
|
+
});
|
|
34
|
+
case 'DELETE_ENTITY':
|
|
35
|
+
return new OpBinary({
|
|
36
|
+
type: OpType.DELETE_ENTITY,
|
|
37
|
+
entity: Entity.fromJson({
|
|
38
|
+
id: o.entity.id,
|
|
39
|
+
}),
|
|
40
|
+
});
|
|
41
|
+
case 'SET_TRIPLE':
|
|
42
|
+
return new OpBinary({
|
|
43
|
+
type: OpType.SET_TRIPLE,
|
|
44
|
+
triple: Triple.fromJson(o.triple), // janky but works
|
|
45
|
+
});
|
|
46
|
+
case 'DELETE_TRIPLE':
|
|
47
|
+
return new OpBinary({
|
|
48
|
+
type: OpType.DELETE_TRIPLE,
|
|
49
|
+
triple: Triple.fromJson(o.triple), // janky but works
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../src/proto/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAQhH,MAAM,UAAU,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAwB;IAChE,OAAO,IAAI,IAAI,CAAC;QACd,IAAI,EAAE,UAAU,CAAC,QAAQ;QACzB,OAAO,EAAE,OAAO;QAChB,EAAE,EAAE,QAAQ,EAAE;QACd,IAAI;QACJ,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC;QACrB,OAAO,EAAE,CAAC,MAAM,CAAC;KAClB,CAAC,CAAC,QAAQ,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,GAAS;IAC5B,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACjB,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,iBAAiB;gBACpB,OAAO,IAAI,QAAQ,CAAC;oBAClB,IAAI,EAAE,MAAM,CAAC,eAAe;oBAC5B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;iBACxC,CAAC,CAAC;YACL,KAAK,iBAAiB;gBACpB,OAAO,IAAI,QAAQ,CAAC;oBAClB,IAAI,EAAE,MAAM,CAAC,eAAe;oBAC5B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;wBAC1B,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE;qBAClB,CAAC;iBACH,CAAC,CAAC;YACL,KAAK,kBAAkB;gBACrB,OAAO,IAAI,QAAQ,CAAC;oBAClB,IAAI,EAAE,MAAM,CAAC,gBAAgB;oBAC7B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;oBACjC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;iBAChD,CAAC,CAAC;YACL,KAAK,eAAe;gBAClB,OAAO,IAAI,QAAQ,CAAC;oBAClB,IAAI,EAAE,MAAM,CAAC,aAAa;oBAC1B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC;wBACtB,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE;qBAChB,CAAC;iBACH,CAAC,CAAC;YACL,KAAK,YAAY;gBACf,OAAO,IAAI,QAAQ,CAAC;oBAClB,IAAI,EAAE,MAAM,CAAC,UAAU;oBACvB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,kBAAkB;iBACtD,CAAC,CAAC;YACL,KAAK,eAAe;gBAClB,OAAO,IAAI,QAAQ,CAAC;oBAClB,IAAI,EAAE,MAAM,CAAC,aAAa;oBAC1B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,kBAAkB;iBACtD,CAAC,CAAC;QACP,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.test.d.ts","sourceRoot":"","sources":["../../../src/proto/edit.test.ts"],"names":[],"mappings":""}
|