From a7ce5f081c3bcf33e0aaae9f3bd913781c08d7b8 Mon Sep 17 00:00:00 2001 From: Erik Marks Date: Wed, 15 May 2024 14:00:24 -0700 Subject: [PATCH] refactor: Move pet name parsing to store.js --- packages/cli/src/commands/store.js | 17 ++++++++++------- packages/cli/src/endo.js | 3 +-- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/packages/cli/src/commands/store.js b/packages/cli/src/commands/store.js index ccf4e30654..c42cad028e 100644 --- a/packages/cli/src/commands/store.js +++ b/packages/cli/src/commands/store.js @@ -7,6 +7,7 @@ import { makeReaderRef } from '@endo/daemon'; import { E } from '@endo/far'; import { withEndoAgent } from '../context.js'; +import { parsePetNamePath } from '../pet-name.js'; /** * @param {Array} arrays @@ -72,32 +73,34 @@ export const store = async ({ )})`; } + const parsedName = parsePetNamePath(name); + await withEndoAgent(agentNames, { os, process }, async ({ agent }) => { if (storeText !== undefined) { - await E(agent).storeValue(storeText, name); + await E(agent).storeValue(storeText, parsedName); } else if (storeJson !== undefined) { - await E(agent).storeValue(JSON.parse(storeJson), name); + await E(agent).storeValue(JSON.parse(storeJson), parsedName); } else if (storeBigInt !== undefined) { - await E(agent).storeValue(BigInt(storeBigInt), name); + await E(agent).storeValue(BigInt(storeBigInt), parsedName); } else if (storeTextStdin !== undefined) { const reader = makeNodeReader(process.stdin); const bytes = await asyncConcat(reader); const text = new TextDecoder().decode(bytes); - await E(agent).storeValue(text, name); + await E(agent).storeValue(text, parsedName); } else if (storeJsonStdin !== undefined) { const reader = makeNodeReader(process.stdin); const bytes = await asyncConcat(reader); const text = new TextDecoder().decode(bytes); - await E(agent).storeValue(JSON.parse(text), name); + await E(agent).storeValue(JSON.parse(text), parsedName); } else if (storeStdin !== undefined) { const reader = makeNodeReader(process.stdin); const readerRef = makeReaderRef(reader); - await E(agent).storeBlob(readerRef, name); + await E(agent).storeBlob(readerRef, parsedName); } else if (storePath !== undefined) { const nodeReadStream = fs.createReadStream(storePath); const reader = makeNodeReader(nodeReadStream); const readerRef = makeReaderRef(reader); - await E(agent).storeBlob(readerRef, name); + await E(agent).storeBlob(readerRef, parsedName); } }); }; diff --git a/packages/cli/src/endo.js b/packages/cli/src/endo.js index 9d320f9d6b..a5592e2dc0 100644 --- a/packages/cli/src/endo.js +++ b/packages/cli/src/endo.js @@ -12,7 +12,6 @@ import url from 'url'; import { Command } from 'commander'; import { prompt } from './prompt.js'; -import { parsePetNamePath } from './pet-name.js'; const packageDescriptorPath = url.fileURLToPath( new URL('../package.json', import.meta.url), @@ -371,7 +370,7 @@ export const main = async rawArgs => { storeJson, storeJsonStdin, storeBigInt, - name: parsePetNamePath(name), + name, agentNames, }); });