diff --git a/.changeset/fix-prettier-dynamic-import.md b/.changeset/fix-prettier-dynamic-import.md new file mode 100644 index 00000000..5bef7a4b --- /dev/null +++ b/.changeset/fix-prettier-dynamic-import.md @@ -0,0 +1,6 @@ +--- +"@adobe/spectrum-tokens": patch +--- + +Use dynamic import for prettier in writeJson so the package loads without prettier +when used outside the monorepo (e.g. spectrum-design-data-mcp via npx). diff --git a/packages/tokens/index.js b/packages/tokens/index.js index 51ce111a..fe9ce8c2 100644 --- a/packages/tokens/index.js +++ b/packages/tokens/index.js @@ -16,7 +16,6 @@ import { basename, resolve } from "path"; import { readFile } from "fs/promises"; import * as url from "url"; import { writeFile } from "fs/promises"; -import { format } from "prettier"; export const __dirname = url.fileURLToPath(new URL(".", import.meta.url)); @@ -28,6 +27,7 @@ export const readJson = async (fileName) => JSON.parse(await readFile(fileName, "utf8")); export const writeJson = async (fileName, jsonData) => { + const { format } = await import("prettier"); await writeFile( fileName, await format(JSON.stringify(jsonData), { parser: "json-stringify" }),