From 82d339ecfe0775b697b8e1643451cd3eaf9115c8 Mon Sep 17 00:00:00 2001 From: Stefan Terdell Date: Sun, 26 Nov 2023 08:46:40 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20Fix=20index=20generators?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- createIndex.ts | 10 +++++++-- package.json | 2 +- src/index.ts | 3 +-- test/createIndex.ts | 2 +- test/index.ts | 55 +++++++++++++++++++++++---------------------- 5 files changed, 39 insertions(+), 33 deletions(-) diff --git a/createIndex.ts b/createIndex.ts index 2ac0663..d126fca 100644 --- a/createIndex.ts +++ b/createIndex.ts @@ -1,11 +1,17 @@ import { readdirSync, writeFileSync, statSync } from "fs"; +const ignore = ["src/index.ts"]; + function checkSrcDir(path: string): string[] { const lines: string[] = []; for (const item of readdirSync(path)) { const itemPath = path + "/" + item; + if (ignore.includes(itemPath)) { + continue; + } + if (statSync(itemPath).isDirectory()) { lines.push(...checkSrcDir(itemPath)); } else if (item.endsWith(".ts")) { @@ -20,7 +26,7 @@ const lines = checkSrcDir("src"); lines.push( 'import { zodToJsonSchema } from "./zodToJsonSchema.js"', - "export default zodToJsonSchema", + "export default zodToJsonSchema;", ); -writeFileSync("./src/index.ts", lines.join("\n")); +writeFileSync("./src/index.ts", lines.join(";\n")); diff --git a/package.json b/package.json index 533c9db..ce471f8 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "build:types": "tsc -p tsconfig.types.json", "build:cjs": "tsc -p tsconfig.cjs.json && node postcjs.js", "build:esm": "tsc -p tsconfig.esm.json && node postesm.js", - "build": "npm i && npm test && rimraf ./dist && npm run build:types && npm run build:cjs && npm run build:esm", + "build": "npm i && npm run gen && npm test && rimraf ./dist && npm run build:types && npm run build:cjs && npm run build:esm", "dry": "npm run build && npm pub --dry-run", "test:watch": "tsx watch test/index.ts", "test:gen": "tsx test/createIndex.ts", diff --git a/src/index.ts b/src/index.ts index 66d4788..c0f9bd5 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,4 @@ export * from "./errorMessages.js"; -export * from "./index.js"; export * from "./Options.js"; export * from "./parseDef.js"; export * from "./parsers/any.js"; @@ -35,4 +34,4 @@ export * from "./parsers/unknown.js"; export * from "./Refs.js"; export * from "./zodToJsonSchema.js"; import { zodToJsonSchema } from "./zodToJsonSchema.js"; -export default zodToJsonSchema; +export default zodToJsonSchema; \ No newline at end of file diff --git a/test/createIndex.ts b/test/createIndex.ts index aa40de6..6cf5fe7 100644 --- a/test/createIndex.ts +++ b/test/createIndex.ts @@ -1,4 +1,4 @@ -import { readdirSync, writeFileSync, statSync } from "fs.js"; +import { readdirSync, writeFileSync, statSync } from "fs"; function checkDir(dir: string): string[] { return readdirSync(dir).reduce((a: string[], n) => { diff --git a/test/index.ts b/test/index.ts index 6bf2c27..b4048c7 100644 --- a/test/index.ts +++ b/test/index.ts @@ -1,27 +1,28 @@ -import "./allParsers.test.js"; -import "./meta.test.js"; -import "./openApiMode.test.js"; -import "./parseDef.test.js"; -import "./parsers/array.test.js"; -import "./parsers/bigint.test.js"; -import "./parsers/branded.test.js"; -import "./parsers/date.test.js"; -import "./parsers/default.test.js"; -import "./parsers/effects.test.js"; -import "./parsers/intersection.test.js"; -import "./parsers/map.test.js"; -import "./parsers/nativeEnum.test.js"; -import "./parsers/nullable.test.js"; -import "./parsers/number.test.js"; -import "./parsers/object.test.js"; -import "./parsers/optional.test.js"; -import "./parsers/pipe.test.js"; -import "./parsers/promise.test.js"; -import "./parsers/record.test.js"; -import "./parsers/set.test.js"; -import "./parsers/string.test.js"; -import "./parsers/tuple.test.js"; -import "./parsers/union.test.js"; -import "./readme.test.js"; -import "./references.test.js"; -import "./zodToJsonSchema.test.js"; +import "./allParsers.test.js" +import "./issues.test.js" +import "./meta.test.js" +import "./openApiMode.test.js" +import "./parseDef.test.js" +import "./parsers/array.test.js" +import "./parsers/bigint.test.js" +import "./parsers/branded.test.js" +import "./parsers/date.test.js" +import "./parsers/default.test.js" +import "./parsers/effects.test.js" +import "./parsers/intersection.test.js" +import "./parsers/map.test.js" +import "./parsers/nativeEnum.test.js" +import "./parsers/nullable.test.js" +import "./parsers/number.test.js" +import "./parsers/object.test.js" +import "./parsers/optional.test.js" +import "./parsers/pipe.test.js" +import "./parsers/promise.test.js" +import "./parsers/record.test.js" +import "./parsers/set.test.js" +import "./parsers/string.test.js" +import "./parsers/tuple.test.js" +import "./parsers/union.test.js" +import "./readme.test.js" +import "./references.test.js" +import "./zodToJsonSchema.test.js" \ No newline at end of file