Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | 1x 1x 1x 1x 1x 1x 1x 1x 1x | import { Metadata } from "./metadata.js"; import { pinJSON, serializeIndexedMap, IndexedMapSerialized, } from "@silvana-one/storage"; import { Field } from "o1js"; export async function pinMetadata(metadata: Metadata): Promise<{ name: string; ipfsHash: string; metadataRoot: Field; privateMetadata: string; serializedMap: IndexedMapSerialized; }> { const privateMetadata = JSON.stringify(metadata.toJSON(true), null, 2); const ipfsHash: string | undefined = await pinJSON({ data: metadata.toJSON(false), name: "nft-metadata", }); if (!ipfsHash) throw new Error("Failed to pin metadata"); return { name: metadata.name, ipfsHash, metadataRoot: metadata.map.root, privateMetadata, serializedMap: serializeIndexedMap(metadata.map), }; } |