import fs from 'node:fs'; import { readCanvas, prettyPrintSchema } from '../src/figfile.js'; const [,, canvasPath, outDir] = process.argv; const r = readCanvas(new Uint8Array(fs.readFileSync(canvasPath))); console.log('version', r.version, 'codecs', r.codecs, 'extra chunks', r.extraChunks.length); fs.mkdirSync(outDir, { recursive: true }); fs.writeFileSync(`${outDir}/schema.kiwi.txt`, prettyPrintSchema(r.schema)); const replacer = (k, v) => v instanceof Uint8Array ? `` : v; fs.writeFileSync(`${outDir}/message.json`, JSON.stringify(r.message, replacer, 1)); const m = r.message; console.log('message keys', Object.keys(m), 'type', m.type, 'nodes', m.nodeChanges?.length, 'blobs', m.blobs?.length); const types = {}; for (const n of m.nodeChanges) types[n.type] = (types[n.type] || 0) + 1; console.log(types);