@jakubmazanec/zod-utils 2.0.13 → 3.0.0-next.ee433a8c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/types/Json.d.ts +2 -2
- package/build/types/Json.js +1 -1
- package/build/types/Json.js.map +2 -2
- package/build/types/PackageJson.d.ts +107 -427
- package/build/types/PackageJson.js +17 -10
- package/build/types/PackageJson.js.map +2 -2
- package/build/types/TsconfigJson.d.ts +221 -506
- package/build/types/TsconfigJson.js +2 -2
- package/build/types/TsconfigJson.js.map +2 -2
- package/build/utils/readFile.d.ts +2 -2
- package/build/utils/readFile.js.map +2 -2
- package/build/utils/readJson.d.ts +2 -2
- package/build/utils/readJson.js.map +2 -2
- package/build/utils.d.ts +0 -1
- package/build/utils.js +0 -1
- package/build/utils.js.map +2 -2
- package/package.json +3 -3
- package/source/types/Json.ts +2 -2
- package/source/types/PackageJson.ts +20 -11
- package/source/types/TsconfigJson.ts +2 -2
- package/source/utils/readFile.ts +3 -5
- package/source/utils/readJson.ts +3 -4
- package/source/utils.ts +0 -1
- package/build/utils/zodIssuesToString.d.ts +0 -2
- package/build/utils/zodIssuesToString.js +0 -32
- package/build/utils/zodIssuesToString.js.map +0 -7
- package/source/utils/zodIssuesToString.ts +0 -52
|
@@ -166,7 +166,7 @@ let libSchema = z.enum([
|
|
|
166
166
|
]);
|
|
167
167
|
let pluginSchema = z.object({
|
|
168
168
|
name: z.string().optional()
|
|
169
|
-
}).strict().and(z.record(z.unknown()));
|
|
169
|
+
}).strict().and(z.record(z.string(), z.unknown()));
|
|
170
170
|
let importsNotUsedAsValuesSchema = z.enum(["remove", "preserve", "error"]);
|
|
171
171
|
let fallbackPollingSchema = z.enum([
|
|
172
172
|
"fixedPollingInterval",
|
|
@@ -262,7 +262,7 @@ let compilerOptionsSchema = z.object({
|
|
|
262
262
|
noUnusedParameters: z.boolean().optional(),
|
|
263
263
|
outDir: z.string().optional(),
|
|
264
264
|
outFile: z.string().optional(),
|
|
265
|
-
paths: z.record(z.string().array()).optional(),
|
|
265
|
+
paths: z.record(z.string(), z.string().array()).optional(),
|
|
266
266
|
plugins: pluginSchema.array().optional(),
|
|
267
267
|
preserveConstEnums: z.boolean().optional(),
|
|
268
268
|
preserveSymlinks: z.boolean().optional(),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../source/types/TsconfigJson.ts"],
|
|
4
|
-
"sourcesContent": ["import * as z from 'zod';\n\nlet jsxSchema = z.enum(['preserve', 'react', 'react-jsx', 'react-jsxdev', 'react-native']);\n\nlet moduleSchema = z.enum([\n 'CommonJS',\n 'AMD',\n 'System',\n 'UMD',\n 'ES6',\n 'ES2015',\n 'ES2020',\n 'ESNext',\n 'None',\n 'commonjs',\n 'amd',\n 'system',\n 'umd',\n 'es6',\n 'es2015',\n 'es2020',\n 'esnext',\n 'none',\n]);\n\nlet newLineSchema = z.enum(['CRLF', 'LF', 'crlf', 'lf']);\n\nlet targetSchema = z.enum([\n 'ES3',\n 'ES5',\n 'ES6',\n 'ES2015',\n 'ES2016',\n 'ES2017',\n 'ES2018',\n 'ES2019',\n 'ES2020',\n 'ES2021',\n 'ESNext',\n 'es3',\n 'es5',\n 'es6',\n 'es2015',\n 'es2016',\n 'es2017',\n 'es2018',\n 'es2019',\n 'es2020',\n 'es2021',\n 'esnext',\n]);\n\nlet libSchema = z.enum([\n 'ES5',\n 'ES6',\n 'ES7',\n 'ES2015',\n 'ES2015.Collection',\n 'ES2015.Core',\n 'ES2015.Generator',\n 'ES2015.Iterable',\n 'ES2015.Promise',\n 'ES2015.Proxy',\n 'ES2015.Reflect',\n 'ES2015.Symbol.WellKnown',\n 'ES2015.Symbol',\n 'ES2016',\n 'ES2016.Array.Include',\n 'ES2017',\n 'ES2017.Intl',\n 'ES2017.Object',\n 'ES2017.SharedMemory',\n 'ES2017.String',\n 'ES2017.TypedArrays',\n 'ES2018',\n 'ES2018.AsyncGenerator',\n 'ES2018.AsyncIterable',\n 'ES2018.Intl',\n 'ES2018.Promise',\n 'ES2018.Regexp',\n 'ES2019',\n 'ES2019.Array',\n 'ES2019.Object',\n 'ES2019.String',\n 'ES2019.Symbol',\n 'ES2020',\n 'ES2020.BigInt',\n 'ES2020.Promise',\n 'ES2020.String',\n 'ES2020.Symbol.WellKnown',\n 'ES2020.SharedMemory',\n 'ES2020.Intl',\n 'ES2021',\n 'ES2021.Promise',\n 'ES2021.String',\n 'ES2021.WeakRef',\n 'ESNext',\n 'ESNext.Array',\n 'ESNext.AsyncIterable',\n 'ESNext.BigInt',\n 'ESNext.Intl',\n 'ESNext.Promise',\n 'ESNext.String',\n 'ESNext.Symbol',\n 'ESNext.WeakRef',\n 'DOM',\n 'DOM.Iterable',\n 'ScriptHost',\n 'WebWorker',\n 'WebWorker.ImportScripts',\n 'WebWorker.Iterable',\n 'es5',\n 'es6',\n 'es7',\n 'es2015',\n 'es2015.collection',\n 'es2015.core',\n 'es2015.generator',\n 'es2015.iterable',\n 'es2015.promise',\n 'es2015.proxy',\n 'es2015.reflect',\n 'es2015.symbol.wellknown',\n 'es2015.symbol',\n 'es2016',\n 'es2016.array.include',\n 'es2017',\n 'es2017.intl',\n 'es2017.object',\n 'es2017.sharedmemory',\n 'es2017.string',\n 'es2017.typedarrays',\n 'es2018',\n 'es2018.asyncgenerator',\n 'es2018.asynciterable',\n 'es2018.intl',\n 'es2018.promise',\n 'es2018.regexp',\n 'es2019',\n 'es2019.array',\n 'es2019.object',\n 'es2019.string',\n 'es2019.symbol',\n 'es2020',\n 'es2020.bigint',\n 'es2020.promise',\n 'es2020.string',\n 'es2020.symbol.wellknown',\n 'es2020.sharedmemory',\n 'es2020.intl',\n 'es2021',\n 'es2021.promise',\n 'es2021.string',\n 'es2021.weakref',\n 'esnext',\n 'esnext.array',\n 'esnext.asynciterable',\n 'esnext.bigint',\n 'esnext.intl',\n 'esnext.promise',\n 'esnext.string',\n 'esnext.symbol',\n 'esnext.weakref',\n 'dom',\n 'dom.iterable',\n 'scripthost',\n 'webworker',\n 'webworker.importscripts',\n 'webworker.iterable',\n]);\n\nlet pluginSchema = z\n .object({\n name: z.string().optional(),\n })\n .strict()\n .and(z.record(z.unknown()));\n\nlet importsNotUsedAsValuesSchema = z.enum(['remove', 'preserve', 'error']);\n\nlet fallbackPollingSchema = z.enum([\n 'fixedPollingInterval',\n 'priorityPollingInterval',\n 'dynamicPriorityPolling',\n 'fixedInterval',\n 'priorityInterval',\n 'dynamicPriority',\n 'fixedChunkSize',\n]);\n\nlet watchDirectory = z.enum([\n 'useFsEvents',\n 'fixedPollingInterval',\n 'dynamicPriorityPolling',\n 'fixedChunkSizePolling',\n]);\n\nlet watchFileSchema = z.enum([\n 'fixedPollingInterval',\n 'priorityPollingInterval',\n 'dynamicPriorityPolling',\n 'useFsEvents',\n 'useFsEventsOnParentDirectory',\n 'fixedChunkSizePolling',\n]);\n\nlet compilerOptionsSchema = z\n .object({\n allowJs: z.boolean().optional(),\n allowSyntheticDefaultImports: z.boolean().optional(),\n allowUmdGlobalAccess: z.boolean().optional(),\n allowUnreachableCode: z.boolean().optional(),\n allowUnusedLabels: z.boolean().optional(),\n alwaysStrict: z.boolean().optional(),\n assumeChangesOnlyAffectDirectDependencies: z.boolean().optional(),\n baseUrl: z.string().optional(),\n charset: z.string().optional(),\n checkJs: z.boolean().optional(),\n composite: z.boolean().optional(),\n declaration: z.boolean().optional(),\n declarationDir: z.string().optional(),\n declarationMap: z.boolean().optional(),\n diagnostics: z.boolean().optional(),\n disableReferencedProjectLoad: z.boolean().optional(),\n disableSizeLimit: z.boolean().optional(),\n disableSolutionSearching: z.boolean().optional(),\n disableSourceOfProjectReferenceRedirect: z.boolean().optional(),\n downlevelIteration: z.boolean().optional(),\n emitBOM: z.boolean().optional(),\n emitDeclarationOnly: z.boolean().optional(),\n emitDecoratorMetadata: z.boolean().optional(),\n esModuleInterop: z.boolean().optional(),\n exactOptionalPropertyTypes: z.boolean().optional(),\n experimentalDecorators: z.boolean().optional(),\n explainFiles: z.boolean().optional(),\n extendedDiagnostics: z.boolean().optional(),\n fallbackPolling: fallbackPollingSchema.optional(),\n forceConsistentCasingInFileNames: z.boolean().optional(),\n generateCpuProfile: z.string().optional(),\n importHelpers: z.boolean().optional(),\n importsNotUsedAsValues: importsNotUsedAsValuesSchema.optional(),\n incremental: z.boolean().optional(),\n inlineSourceMap: z.boolean().optional(),\n inlineSources: z.boolean().optional(),\n isolatedModules: z.boolean().optional(),\n jsx: jsxSchema.optional(),\n jsxFactory: z.string().optional(),\n jsxFragmentFactory: z.string().optional(),\n jsxImportSource: z.string().optional(),\n keyofStringsOnly: z.boolean().optional(),\n lib: libSchema.array().optional(),\n listEmittedFiles: z.boolean().optional(),\n listFiles: z.boolean().optional(),\n listFilesOnly: z.boolean().optional(),\n mapRoot: z.string().optional(),\n maxNodeModuleJsDepth: z.number().optional(),\n module: moduleSchema.optional(),\n moduleResolution: z.enum(['classic', 'node']).optional(),\n newLine: newLineSchema.optional(),\n noEmit: z.boolean().optional(),\n noEmitHelpers: z.boolean().optional(),\n noEmitOnError: z.boolean().optional(),\n noErrorTruncation: z.boolean().optional(),\n noFallthroughCasesInSwitch: z.boolean().optional(),\n noImplicitAny: z.boolean().optional(),\n noImplicitOverride: z.boolean().optional(),\n noImplicitReturns: z.boolean().optional(),\n noImplicitThis: z.boolean().optional(),\n noImplicitUseStrict: z.boolean().optional(),\n noLib: z.boolean().optional(),\n noPropertyAccessFromIndexSignature: z.boolean().optional(),\n noResolve: z.boolean().optional(),\n noStrictGenericChecks: z.boolean().optional(),\n noUncheckedIndexedAccess: z.boolean().optional(),\n noUnusedLocals: z.boolean().optional(),\n noUnusedParameters: z.boolean().optional(),\n outDir: z.string().optional(),\n outFile: z.string().optional(),\n paths: z.record(z.string().array()).optional(),\n plugins: pluginSchema.array().optional(),\n preserveConstEnums: z.boolean().optional(),\n preserveSymlinks: z.boolean().optional(),\n preserveWatchOutput: z.boolean().optional(),\n pretty: z.boolean().optional(),\n reactNamespace: z.string().optional(),\n removeComments: z.boolean().optional(),\n resolveJsonModule: z.boolean().optional(),\n rootDir: z.string().optional(),\n rootDirs: z.string().array().optional(),\n skipDefaultLibCheck: z.boolean().optional(),\n skipLibCheck: z.boolean().optional(),\n sourceMap: z.boolean().optional(),\n sourceRoot: z.string().optional(),\n strict: z.boolean().optional(),\n strictBindCallApply: z.boolean().optional(),\n strictFunctionTypes: z.boolean().optional(),\n strictNullChecks: z.boolean().optional(),\n strictPropertyInitialization: z.boolean().optional(),\n stripInternal: z.boolean().optional(),\n suppressExcessPropertyErrors: z.boolean().optional(),\n suppressImplicitAnyIndexErrors: z.boolean().optional(),\n target: targetSchema.optional(),\n traceResolution: z.boolean().optional(),\n tsBuildInfoFile: z.string().optional(),\n typeRoots: z.string().array().optional(),\n types: z.string().array().optional(),\n useDefineForClassFields: z.boolean().optional(),\n useUnknownInCatchVariables: z.boolean().optional(),\n watch: z.boolean().optional(),\n watchDirectory: watchDirectory.optional(),\n watchFile: watchFileSchema.optional(),\n })\n .strict();\n\nlet typeAcquisitionSchema = z\n .object({\n enable: z.boolean().optional(),\n include: z.string().array().optional(),\n exclude: z.string().array().optional(),\n })\n .strict();\n\nlet referencesSchema = z\n .object({\n path: z.string(),\n\n originalPath: z.string().optional(),\n prepend: z.boolean().optional(),\n circular: z.boolean().optional(),\n })\n .strict();\n\nexport const tsconfigJsonSchema = z\n .object({\n compileOnSave: z.boolean().optional(),\n compilerOptions: compilerOptionsSchema.optional(),\n exclude: z.string().array().optional(),\n extends: z.string().optional(),\n files: z.string().array().optional(),\n include: z.string().array().optional(),\n references: referencesSchema.array().optional(),\n typeAcquisition: typeAcquisitionSchema.optional(),\n })\n .strict();\n\nexport type TsconfigJson = z.infer<typeof tsconfigJsonSchema>;\n"],
|
|
5
|
-
"mappings": ";AAAA,YAAY,OAAO;AAEnB,IAAI,YAAY,EAAE,KAAK,CAAC,YAAY,SAAS,aAAa,gBAAgB,cAAc,CAAC;AAEzF,IAAI,eAAe,EAAE,KAAK;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,IAAI,gBAAgB,EAAE,KAAK,CAAC,QAAQ,MAAM,QAAQ,IAAI,CAAC;AAEvD,IAAI,eAAe,EAAE,KAAK;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,IAAI,YAAY,EAAE,KAAK;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,IAAI,eAAe,EAChB,OAAO;AAAA,EACN,MAAM,EAAE,OAAO,EAAE,SAAS;AAC5B,CAAC,EACA,OAAO,EACP,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;
|
|
4
|
+
"sourcesContent": ["import * as z from 'zod';\n\nlet jsxSchema = z.enum(['preserve', 'react', 'react-jsx', 'react-jsxdev', 'react-native']);\n\nlet moduleSchema = z.enum([\n 'CommonJS',\n 'AMD',\n 'System',\n 'UMD',\n 'ES6',\n 'ES2015',\n 'ES2020',\n 'ESNext',\n 'None',\n 'commonjs',\n 'amd',\n 'system',\n 'umd',\n 'es6',\n 'es2015',\n 'es2020',\n 'esnext',\n 'none',\n]);\n\nlet newLineSchema = z.enum(['CRLF', 'LF', 'crlf', 'lf']);\n\nlet targetSchema = z.enum([\n 'ES3',\n 'ES5',\n 'ES6',\n 'ES2015',\n 'ES2016',\n 'ES2017',\n 'ES2018',\n 'ES2019',\n 'ES2020',\n 'ES2021',\n 'ESNext',\n 'es3',\n 'es5',\n 'es6',\n 'es2015',\n 'es2016',\n 'es2017',\n 'es2018',\n 'es2019',\n 'es2020',\n 'es2021',\n 'esnext',\n]);\n\nlet libSchema = z.enum([\n 'ES5',\n 'ES6',\n 'ES7',\n 'ES2015',\n 'ES2015.Collection',\n 'ES2015.Core',\n 'ES2015.Generator',\n 'ES2015.Iterable',\n 'ES2015.Promise',\n 'ES2015.Proxy',\n 'ES2015.Reflect',\n 'ES2015.Symbol.WellKnown',\n 'ES2015.Symbol',\n 'ES2016',\n 'ES2016.Array.Include',\n 'ES2017',\n 'ES2017.Intl',\n 'ES2017.Object',\n 'ES2017.SharedMemory',\n 'ES2017.String',\n 'ES2017.TypedArrays',\n 'ES2018',\n 'ES2018.AsyncGenerator',\n 'ES2018.AsyncIterable',\n 'ES2018.Intl',\n 'ES2018.Promise',\n 'ES2018.Regexp',\n 'ES2019',\n 'ES2019.Array',\n 'ES2019.Object',\n 'ES2019.String',\n 'ES2019.Symbol',\n 'ES2020',\n 'ES2020.BigInt',\n 'ES2020.Promise',\n 'ES2020.String',\n 'ES2020.Symbol.WellKnown',\n 'ES2020.SharedMemory',\n 'ES2020.Intl',\n 'ES2021',\n 'ES2021.Promise',\n 'ES2021.String',\n 'ES2021.WeakRef',\n 'ESNext',\n 'ESNext.Array',\n 'ESNext.AsyncIterable',\n 'ESNext.BigInt',\n 'ESNext.Intl',\n 'ESNext.Promise',\n 'ESNext.String',\n 'ESNext.Symbol',\n 'ESNext.WeakRef',\n 'DOM',\n 'DOM.Iterable',\n 'ScriptHost',\n 'WebWorker',\n 'WebWorker.ImportScripts',\n 'WebWorker.Iterable',\n 'es5',\n 'es6',\n 'es7',\n 'es2015',\n 'es2015.collection',\n 'es2015.core',\n 'es2015.generator',\n 'es2015.iterable',\n 'es2015.promise',\n 'es2015.proxy',\n 'es2015.reflect',\n 'es2015.symbol.wellknown',\n 'es2015.symbol',\n 'es2016',\n 'es2016.array.include',\n 'es2017',\n 'es2017.intl',\n 'es2017.object',\n 'es2017.sharedmemory',\n 'es2017.string',\n 'es2017.typedarrays',\n 'es2018',\n 'es2018.asyncgenerator',\n 'es2018.asynciterable',\n 'es2018.intl',\n 'es2018.promise',\n 'es2018.regexp',\n 'es2019',\n 'es2019.array',\n 'es2019.object',\n 'es2019.string',\n 'es2019.symbol',\n 'es2020',\n 'es2020.bigint',\n 'es2020.promise',\n 'es2020.string',\n 'es2020.symbol.wellknown',\n 'es2020.sharedmemory',\n 'es2020.intl',\n 'es2021',\n 'es2021.promise',\n 'es2021.string',\n 'es2021.weakref',\n 'esnext',\n 'esnext.array',\n 'esnext.asynciterable',\n 'esnext.bigint',\n 'esnext.intl',\n 'esnext.promise',\n 'esnext.string',\n 'esnext.symbol',\n 'esnext.weakref',\n 'dom',\n 'dom.iterable',\n 'scripthost',\n 'webworker',\n 'webworker.importscripts',\n 'webworker.iterable',\n]);\n\nlet pluginSchema = z\n .object({\n name: z.string().optional(),\n })\n .strict()\n .and(z.record(z.string(), z.unknown()));\n\nlet importsNotUsedAsValuesSchema = z.enum(['remove', 'preserve', 'error']);\n\nlet fallbackPollingSchema = z.enum([\n 'fixedPollingInterval',\n 'priorityPollingInterval',\n 'dynamicPriorityPolling',\n 'fixedInterval',\n 'priorityInterval',\n 'dynamicPriority',\n 'fixedChunkSize',\n]);\n\nlet watchDirectory = z.enum([\n 'useFsEvents',\n 'fixedPollingInterval',\n 'dynamicPriorityPolling',\n 'fixedChunkSizePolling',\n]);\n\nlet watchFileSchema = z.enum([\n 'fixedPollingInterval',\n 'priorityPollingInterval',\n 'dynamicPriorityPolling',\n 'useFsEvents',\n 'useFsEventsOnParentDirectory',\n 'fixedChunkSizePolling',\n]);\n\nlet compilerOptionsSchema = z\n .object({\n allowJs: z.boolean().optional(),\n allowSyntheticDefaultImports: z.boolean().optional(),\n allowUmdGlobalAccess: z.boolean().optional(),\n allowUnreachableCode: z.boolean().optional(),\n allowUnusedLabels: z.boolean().optional(),\n alwaysStrict: z.boolean().optional(),\n assumeChangesOnlyAffectDirectDependencies: z.boolean().optional(),\n baseUrl: z.string().optional(),\n charset: z.string().optional(),\n checkJs: z.boolean().optional(),\n composite: z.boolean().optional(),\n declaration: z.boolean().optional(),\n declarationDir: z.string().optional(),\n declarationMap: z.boolean().optional(),\n diagnostics: z.boolean().optional(),\n disableReferencedProjectLoad: z.boolean().optional(),\n disableSizeLimit: z.boolean().optional(),\n disableSolutionSearching: z.boolean().optional(),\n disableSourceOfProjectReferenceRedirect: z.boolean().optional(),\n downlevelIteration: z.boolean().optional(),\n emitBOM: z.boolean().optional(),\n emitDeclarationOnly: z.boolean().optional(),\n emitDecoratorMetadata: z.boolean().optional(),\n esModuleInterop: z.boolean().optional(),\n exactOptionalPropertyTypes: z.boolean().optional(),\n experimentalDecorators: z.boolean().optional(),\n explainFiles: z.boolean().optional(),\n extendedDiagnostics: z.boolean().optional(),\n fallbackPolling: fallbackPollingSchema.optional(),\n forceConsistentCasingInFileNames: z.boolean().optional(),\n generateCpuProfile: z.string().optional(),\n importHelpers: z.boolean().optional(),\n importsNotUsedAsValues: importsNotUsedAsValuesSchema.optional(),\n incremental: z.boolean().optional(),\n inlineSourceMap: z.boolean().optional(),\n inlineSources: z.boolean().optional(),\n isolatedModules: z.boolean().optional(),\n jsx: jsxSchema.optional(),\n jsxFactory: z.string().optional(),\n jsxFragmentFactory: z.string().optional(),\n jsxImportSource: z.string().optional(),\n keyofStringsOnly: z.boolean().optional(),\n lib: libSchema.array().optional(),\n listEmittedFiles: z.boolean().optional(),\n listFiles: z.boolean().optional(),\n listFilesOnly: z.boolean().optional(),\n mapRoot: z.string().optional(),\n maxNodeModuleJsDepth: z.number().optional(),\n module: moduleSchema.optional(),\n moduleResolution: z.enum(['classic', 'node']).optional(),\n newLine: newLineSchema.optional(),\n noEmit: z.boolean().optional(),\n noEmitHelpers: z.boolean().optional(),\n noEmitOnError: z.boolean().optional(),\n noErrorTruncation: z.boolean().optional(),\n noFallthroughCasesInSwitch: z.boolean().optional(),\n noImplicitAny: z.boolean().optional(),\n noImplicitOverride: z.boolean().optional(),\n noImplicitReturns: z.boolean().optional(),\n noImplicitThis: z.boolean().optional(),\n noImplicitUseStrict: z.boolean().optional(),\n noLib: z.boolean().optional(),\n noPropertyAccessFromIndexSignature: z.boolean().optional(),\n noResolve: z.boolean().optional(),\n noStrictGenericChecks: z.boolean().optional(),\n noUncheckedIndexedAccess: z.boolean().optional(),\n noUnusedLocals: z.boolean().optional(),\n noUnusedParameters: z.boolean().optional(),\n outDir: z.string().optional(),\n outFile: z.string().optional(),\n paths: z.record(z.string(), z.string().array()).optional(),\n plugins: pluginSchema.array().optional(),\n preserveConstEnums: z.boolean().optional(),\n preserveSymlinks: z.boolean().optional(),\n preserveWatchOutput: z.boolean().optional(),\n pretty: z.boolean().optional(),\n reactNamespace: z.string().optional(),\n removeComments: z.boolean().optional(),\n resolveJsonModule: z.boolean().optional(),\n rootDir: z.string().optional(),\n rootDirs: z.string().array().optional(),\n skipDefaultLibCheck: z.boolean().optional(),\n skipLibCheck: z.boolean().optional(),\n sourceMap: z.boolean().optional(),\n sourceRoot: z.string().optional(),\n strict: z.boolean().optional(),\n strictBindCallApply: z.boolean().optional(),\n strictFunctionTypes: z.boolean().optional(),\n strictNullChecks: z.boolean().optional(),\n strictPropertyInitialization: z.boolean().optional(),\n stripInternal: z.boolean().optional(),\n suppressExcessPropertyErrors: z.boolean().optional(),\n suppressImplicitAnyIndexErrors: z.boolean().optional(),\n target: targetSchema.optional(),\n traceResolution: z.boolean().optional(),\n tsBuildInfoFile: z.string().optional(),\n typeRoots: z.string().array().optional(),\n types: z.string().array().optional(),\n useDefineForClassFields: z.boolean().optional(),\n useUnknownInCatchVariables: z.boolean().optional(),\n watch: z.boolean().optional(),\n watchDirectory: watchDirectory.optional(),\n watchFile: watchFileSchema.optional(),\n })\n .strict();\n\nlet typeAcquisitionSchema = z\n .object({\n enable: z.boolean().optional(),\n include: z.string().array().optional(),\n exclude: z.string().array().optional(),\n })\n .strict();\n\nlet referencesSchema = z\n .object({\n path: z.string(),\n\n originalPath: z.string().optional(),\n prepend: z.boolean().optional(),\n circular: z.boolean().optional(),\n })\n .strict();\n\nexport const tsconfigJsonSchema = z\n .object({\n compileOnSave: z.boolean().optional(),\n compilerOptions: compilerOptionsSchema.optional(),\n exclude: z.string().array().optional(),\n extends: z.string().optional(),\n files: z.string().array().optional(),\n include: z.string().array().optional(),\n references: referencesSchema.array().optional(),\n typeAcquisition: typeAcquisitionSchema.optional(),\n })\n .strict();\n\nexport type TsconfigJson = z.infer<typeof tsconfigJsonSchema>;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { type If } from '@jakubmazanec/ts-utils';
|
|
2
2
|
import { type PathLike } from 'node:fs';
|
|
3
3
|
import fs from 'node:fs/promises';
|
|
4
|
-
import { type z, type ZodError, type
|
|
4
|
+
import { type z, type ZodError, type ZodType } from 'zod';
|
|
5
5
|
export interface ReadFileOptions {
|
|
6
6
|
parser?: (rawString: string) => unknown;
|
|
7
7
|
throwOnZodError?: boolean;
|
|
8
8
|
}
|
|
9
|
-
export declare function readFile<S extends
|
|
9
|
+
export declare function readFile<S extends ZodType, O extends ReadFileOptions | undefined = undefined>(path: fs.FileHandle | PathLike, schema: S, options?: O): Promise<O extends undefined ? z.infer<S> | ZodError<z.infer<S>> : If<NonNullable<O>['throwOnZodError'], true, z.infer<S>, z.infer<S> | ZodError<z.infer<S>>>>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../source/utils/readFile.ts"],
|
|
4
|
-
"sourcesContent": ["import {type If} from '@jakubmazanec/ts-utils';\nimport {type PathLike} from 'node:fs';\nimport fs from 'node:fs/promises';\nimport {type z, type ZodError, type
|
|
5
|
-
"mappings": ";AAEA,OAAO,QAAQ;AAmBf,sBAAsB,SACpB,MACA,QACA,SACA;AACA,MAAI,aAAa,SAAS,UAAU,KAAK;AACzC,MAAI,UAAU,WAAW,MAAM,GAAG,SAAS,MAAM,EAAC,UAAU,OAAM,CAAC,CAAC;AAEpE,MAAI,SAAS,iBAAiB;
|
|
4
|
+
"sourcesContent": ["import {type If} from '@jakubmazanec/ts-utils';\nimport {type PathLike} from 'node:fs';\nimport fs from 'node:fs/promises';\nimport {type z, type ZodError, type ZodType} from 'zod';\n\nexport interface ReadFileOptions {\n parser?: (rawString: string) => unknown;\n throwOnZodError?: boolean;\n}\n\nexport async function readFile<\n S extends ZodType,\n O extends ReadFileOptions | undefined = undefined,\n>(\n path: fs.FileHandle | PathLike,\n schema: S,\n options?: O,\n): Promise<\n O extends undefined ? z.infer<S> | ZodError<z.infer<S>>\n : If<NonNullable<O>['throwOnZodError'], true, z.infer<S>, z.infer<S> | ZodError<z.infer<S>>>\n>;\nexport async function readFile(\n path: fs.FileHandle | PathLike,\n schema: ZodType,\n options?: ReadFileOptions,\n) {\n let fileParser = options?.parser ?? JSON.parse;\n let rawJson = fileParser(await fs.readFile(path, {encoding: 'utf8'})) as unknown;\n\n if (options?.throwOnZodError) {\n return schema.parse(rawJson);\n }\n\n let result = schema.safeParse(rawJson);\n\n return result.success ? result.data : result.error;\n}\n"],
|
|
5
|
+
"mappings": ";AAEA,OAAO,QAAQ;AAmBf,sBAAsB,SACpB,MACA,QACA,SACA;AACA,MAAI,aAAa,SAAS,UAAU,KAAK;AACzC,MAAI,UAAU,WAAW,MAAM,GAAG,SAAS,MAAM,EAAC,UAAU,OAAM,CAAC,CAAC;AAEpE,MAAI,SAAS,iBAAiB;AAC5B,WAAO,OAAO,MAAM,OAAO;AAAA,EAC7B;AAEA,MAAI,SAAS,OAAO,UAAU,OAAO;AAErC,SAAO,OAAO,UAAU,OAAO,OAAO,OAAO;AAC/C;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type If } from '@jakubmazanec/ts-utils';
|
|
2
2
|
import { type PathLike } from 'node:fs';
|
|
3
3
|
import type fs from 'node:fs/promises';
|
|
4
|
-
import { type z, type ZodError, type
|
|
4
|
+
import { type z, type ZodError, type ZodType } from 'zod';
|
|
5
5
|
export interface ReadJsonOptions {
|
|
6
6
|
throwOnZodError?: boolean;
|
|
7
7
|
}
|
|
8
|
-
export declare function readJson<S extends
|
|
8
|
+
export declare function readJson<S extends ZodType, O extends ReadJsonOptions | undefined = undefined>(path: fs.FileHandle | PathLike, schema: S, options?: O): Promise<O extends undefined ? z.infer<S> | ZodError<z.infer<S>> : If<NonNullable<O>['throwOnZodError'], true, z.infer<S>, z.infer<S> | ZodError<z.infer<S>>>>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../source/utils/readJson.ts"],
|
|
4
|
-
"sourcesContent": ["import {type If} from '@jakubmazanec/ts-utils';\nimport {type PathLike} from 'node:fs';\nimport type fs from 'node:fs/promises';\nimport {type z, type ZodError, type
|
|
5
|
-
"mappings": ";AAKA,SAAQ,gBAAe;AAiBvB,sBAAsB,SACpB,MACA,QACA,SACA;
|
|
4
|
+
"sourcesContent": ["import {type If} from '@jakubmazanec/ts-utils';\nimport {type PathLike} from 'node:fs';\nimport type fs from 'node:fs/promises';\nimport {type z, type ZodError, type ZodType} from 'zod';\n\nimport {readFile} from './readFile.js';\n\nexport interface ReadJsonOptions {\n throwOnZodError?: boolean;\n}\n\nexport async function readJson<\n S extends ZodType,\n O extends ReadJsonOptions | undefined = undefined,\n>(\n path: fs.FileHandle | PathLike,\n schema: S,\n options?: O,\n): Promise<\n O extends undefined ? z.infer<S> | ZodError<z.infer<S>>\n : If<NonNullable<O>['throwOnZodError'], true, z.infer<S>, z.infer<S> | ZodError<z.infer<S>>>\n>;\nexport async function readJson(\n path: fs.FileHandle | PathLike,\n schema: ZodType,\n options?: ReadJsonOptions,\n) {\n return readFile(path, schema, options);\n}\n"],
|
|
5
|
+
"mappings": ";AAKA,SAAQ,gBAAe;AAiBvB,sBAAsB,SACpB,MACA,QACA,SACA;AACA,SAAO,SAAS,MAAM,QAAQ,OAAO;AACvC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/build/utils.d.ts
CHANGED
package/build/utils.js
CHANGED
package/build/utils.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../source/utils.ts"],
|
|
4
|
-
"sourcesContent": ["export * from './utils/is.js';\nexport * from './utils/isPackageJson.js';\nexport * from './utils/isTsconfigJson.js';\nexport * from './utils/readFile.js';\nexport * from './utils/readJson.js';\nexport * from './utils/readPackageJson.js';\
|
|
5
|
-
"mappings": ";AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;
|
|
4
|
+
"sourcesContent": ["export * from './utils/is.js';\nexport * from './utils/isPackageJson.js';\nexport * from './utils/isTsconfigJson.js';\nexport * from './utils/readFile.js';\nexport * from './utils/readJson.js';\nexport * from './utils/readPackageJson.js';\n"],
|
|
5
|
+
"mappings": ";AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jakubmazanec/zod-utils",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0-next.ee433a8c",
|
|
4
4
|
"description": "Collection of Zod schemas and utilities.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -45,10 +45,10 @@
|
|
|
45
45
|
"typedoc-plugin-markdown": "^4.7.0",
|
|
46
46
|
"typescript": "^5.8.3",
|
|
47
47
|
"vitest": "^3.2.4",
|
|
48
|
-
"zod": "^
|
|
48
|
+
"zod": "^4.0.17"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"zod": "
|
|
51
|
+
"zod": "4.x"
|
|
52
52
|
},
|
|
53
53
|
"packageManager": "npm@11.3.0",
|
|
54
54
|
"engines": {
|
package/source/types/Json.ts
CHANGED
|
@@ -4,8 +4,8 @@ const literalSchema = z.union([z.string(), z.number(), z.boolean(), z.null()]);
|
|
|
4
4
|
|
|
5
5
|
type Literal = z.infer<typeof literalSchema>;
|
|
6
6
|
|
|
7
|
-
export const jsonSchema: z.
|
|
8
|
-
z.union([literalSchema, z.array(jsonSchema), z.record(jsonSchema)]),
|
|
7
|
+
export const jsonSchema: z.ZodType<Json> = z.lazy(() =>
|
|
8
|
+
z.union([literalSchema, z.array(jsonSchema), z.record(z.string(), jsonSchema)]),
|
|
9
9
|
);
|
|
10
10
|
|
|
11
11
|
export type Json = Json[] | Literal | {[key: string]: Json};
|
|
@@ -28,7 +28,7 @@ const packageJsonPublishConfigSchema = z.intersection(
|
|
|
28
28
|
registry: z.string().optional(),
|
|
29
29
|
tag: z.string().optional(),
|
|
30
30
|
}),
|
|
31
|
-
z.record(z.unknown()),
|
|
31
|
+
z.record(z.string(), z.unknown()),
|
|
32
32
|
);
|
|
33
33
|
|
|
34
34
|
const packageJsonPersonSchema = z.union([
|
|
@@ -64,7 +64,7 @@ const packageJsonDirectoryLocationsSchema = z
|
|
|
64
64
|
.strict();
|
|
65
65
|
|
|
66
66
|
const packageJsonScriptsSchema = z.intersection(
|
|
67
|
-
z.record(z.string()),
|
|
67
|
+
z.record(z.string(), z.string()),
|
|
68
68
|
z.object({
|
|
69
69
|
prepublish: z.string().optional(),
|
|
70
70
|
prepare: z.string().optional(),
|
|
@@ -97,7 +97,7 @@ const packageJsonScriptsSchema = z.intersection(
|
|
|
97
97
|
}),
|
|
98
98
|
);
|
|
99
99
|
|
|
100
|
-
const packageJsonDependenciesSchema = z.record(z.string());
|
|
100
|
+
const packageJsonDependenciesSchema = z.record(z.string(), z.string());
|
|
101
101
|
|
|
102
102
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars -- needed
|
|
103
103
|
const packageJsonExportConditionSchema = z.union([
|
|
@@ -118,7 +118,7 @@ const packageJsonExportConditionSchema = z.union([
|
|
|
118
118
|
|
|
119
119
|
type PackageJsonExportCondition = z.infer<typeof packageJsonExportConditionSchema>;
|
|
120
120
|
|
|
121
|
-
const packageJsonExportsSchema: z.
|
|
121
|
+
const packageJsonExportsSchema: z.ZodType<PackageJsonExports> = z.lazy(() =>
|
|
122
122
|
z.union([
|
|
123
123
|
z.string().array(),
|
|
124
124
|
z.string(),
|
|
@@ -134,7 +134,7 @@ const packageJsonExportsSchema: z.ZodSchema<PackageJsonExports> = z.lazy(() =>
|
|
|
134
134
|
'react-native': z.union([packageJsonExportsSchema, z.null()]).optional(),
|
|
135
135
|
require: z.union([packageJsonExportsSchema, z.null()]).optional(),
|
|
136
136
|
}),
|
|
137
|
-
z.record(z.union([packageJsonExportsSchema, z.null()])),
|
|
137
|
+
z.record(z.string(), z.union([packageJsonExportsSchema, z.null()])),
|
|
138
138
|
]),
|
|
139
139
|
);
|
|
140
140
|
|
|
@@ -163,7 +163,7 @@ export const packageJsonSchema = z.object({
|
|
|
163
163
|
type: z.union([z.literal('commonjs'), z.literal('module')]).optional(),
|
|
164
164
|
main: z.string().optional(),
|
|
165
165
|
exports: packageJsonExportsSchema.optional(),
|
|
166
|
-
bin: z.union([z.record(z.string()), z.string()]).optional(),
|
|
166
|
+
bin: z.union([z.record(z.string(), z.string()), z.string()]).optional(),
|
|
167
167
|
man: z.union([z.string().array(), z.string()]).optional(),
|
|
168
168
|
directories: packageJsonDirectoryLocationsSchema.optional(),
|
|
169
169
|
repository: z
|
|
@@ -179,13 +179,14 @@ export const packageJsonSchema = z.object({
|
|
|
179
179
|
])
|
|
180
180
|
.optional(),
|
|
181
181
|
scripts: packageJsonScriptsSchema.optional(),
|
|
182
|
-
config: z.record(z.unknown()).optional(),
|
|
182
|
+
config: z.record(z.string(), z.unknown()).optional(),
|
|
183
183
|
dependencies: packageJsonDependenciesSchema.optional(),
|
|
184
184
|
devDependencies: packageJsonDependenciesSchema.optional(),
|
|
185
185
|
optionalDependencies: packageJsonDependenciesSchema.optional(),
|
|
186
186
|
peerDependencies: packageJsonDependenciesSchema.optional(),
|
|
187
187
|
peerDependenciesMeta: z
|
|
188
188
|
.record(
|
|
189
|
+
z.string(),
|
|
189
190
|
z.object({
|
|
190
191
|
optional: z.boolean(),
|
|
191
192
|
}),
|
|
@@ -194,14 +195,22 @@ export const packageJsonSchema = z.object({
|
|
|
194
195
|
bundledDependencies: packageJsonBundledDependenciesSchema,
|
|
195
196
|
bundleDependencies: packageJsonBundledDependenciesSchema,
|
|
196
197
|
overrides: z
|
|
197
|
-
.record(
|
|
198
|
+
.record(
|
|
199
|
+
z.string(),
|
|
200
|
+
z.union([
|
|
201
|
+
z.string(),
|
|
202
|
+
z.record(z.string(), z.union([z.string(), z.record(z.string(), z.unknown())])),
|
|
203
|
+
]),
|
|
204
|
+
)
|
|
198
205
|
.optional(),
|
|
199
206
|
|
|
200
207
|
funding: z.union([packageJsonFundingSchema.array(), packageJsonFundingSchema]).optional(),
|
|
201
208
|
|
|
202
209
|
module: z.string().optional(),
|
|
203
|
-
esnext: z.union([z.string(), z.record(z.string())]).optional(),
|
|
204
|
-
browser: z
|
|
210
|
+
esnext: z.union([z.string(), z.record(z.string(), z.string())]).optional(),
|
|
211
|
+
browser: z
|
|
212
|
+
.union([z.string(), z.record(z.string(), z.union([z.string(), z.literal(false)]))])
|
|
213
|
+
.optional(),
|
|
205
214
|
sideEffects: z.union([z.string().array(), z.boolean()]).optional(),
|
|
206
215
|
|
|
207
216
|
engines: z
|
|
@@ -210,7 +219,7 @@ export const packageJsonSchema = z.object({
|
|
|
210
219
|
node: z.string().optional(),
|
|
211
220
|
npm: z.string().optional(),
|
|
212
221
|
}),
|
|
213
|
-
z.record(z.string()),
|
|
222
|
+
z.record(z.string(), z.string()),
|
|
214
223
|
)
|
|
215
224
|
.optional(),
|
|
216
225
|
|
|
@@ -174,7 +174,7 @@ let pluginSchema = z
|
|
|
174
174
|
name: z.string().optional(),
|
|
175
175
|
})
|
|
176
176
|
.strict()
|
|
177
|
-
.and(z.record(z.unknown()));
|
|
177
|
+
.and(z.record(z.string(), z.unknown()));
|
|
178
178
|
|
|
179
179
|
let importsNotUsedAsValuesSchema = z.enum(['remove', 'preserve', 'error']);
|
|
180
180
|
|
|
@@ -276,7 +276,7 @@ let compilerOptionsSchema = z
|
|
|
276
276
|
noUnusedParameters: z.boolean().optional(),
|
|
277
277
|
outDir: z.string().optional(),
|
|
278
278
|
outFile: z.string().optional(),
|
|
279
|
-
paths: z.record(z.string().array()).optional(),
|
|
279
|
+
paths: z.record(z.string(), z.string().array()).optional(),
|
|
280
280
|
plugins: pluginSchema.array().optional(),
|
|
281
281
|
preserveConstEnums: z.boolean().optional(),
|
|
282
282
|
preserveSymlinks: z.boolean().optional(),
|
package/source/utils/readFile.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {type If} from '@jakubmazanec/ts-utils';
|
|
2
2
|
import {type PathLike} from 'node:fs';
|
|
3
3
|
import fs from 'node:fs/promises';
|
|
4
|
-
import {type z, type ZodError, type
|
|
4
|
+
import {type z, type ZodError, type ZodType} from 'zod';
|
|
5
5
|
|
|
6
6
|
export interface ReadFileOptions {
|
|
7
7
|
parser?: (rawString: string) => unknown;
|
|
@@ -9,7 +9,7 @@ export interface ReadFileOptions {
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export async function readFile<
|
|
12
|
-
S extends
|
|
12
|
+
S extends ZodType,
|
|
13
13
|
O extends ReadFileOptions | undefined = undefined,
|
|
14
14
|
>(
|
|
15
15
|
path: fs.FileHandle | PathLike,
|
|
@@ -21,19 +21,17 @@ export async function readFile<
|
|
|
21
21
|
>;
|
|
22
22
|
export async function readFile(
|
|
23
23
|
path: fs.FileHandle | PathLike,
|
|
24
|
-
schema:
|
|
24
|
+
schema: ZodType,
|
|
25
25
|
options?: ReadFileOptions,
|
|
26
26
|
) {
|
|
27
27
|
let fileParser = options?.parser ?? JSON.parse;
|
|
28
28
|
let rawJson = fileParser(await fs.readFile(path, {encoding: 'utf8'})) as unknown;
|
|
29
29
|
|
|
30
30
|
if (options?.throwOnZodError) {
|
|
31
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-return -- return type is actually defined via the function overload above
|
|
32
31
|
return schema.parse(rawJson);
|
|
33
32
|
}
|
|
34
33
|
|
|
35
34
|
let result = schema.safeParse(rawJson);
|
|
36
35
|
|
|
37
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-return -- return type is actually defined via the function overload above
|
|
38
36
|
return result.success ? result.data : result.error;
|
|
39
37
|
}
|
package/source/utils/readJson.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {type If} from '@jakubmazanec/ts-utils';
|
|
2
2
|
import {type PathLike} from 'node:fs';
|
|
3
3
|
import type fs from 'node:fs/promises';
|
|
4
|
-
import {type z, type ZodError, type
|
|
4
|
+
import {type z, type ZodError, type ZodType} from 'zod';
|
|
5
5
|
|
|
6
6
|
import {readFile} from './readFile.js';
|
|
7
7
|
|
|
@@ -10,7 +10,7 @@ export interface ReadJsonOptions {
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
export async function readJson<
|
|
13
|
-
S extends
|
|
13
|
+
S extends ZodType,
|
|
14
14
|
O extends ReadJsonOptions | undefined = undefined,
|
|
15
15
|
>(
|
|
16
16
|
path: fs.FileHandle | PathLike,
|
|
@@ -22,9 +22,8 @@ export async function readJson<
|
|
|
22
22
|
>;
|
|
23
23
|
export async function readJson(
|
|
24
24
|
path: fs.FileHandle | PathLike,
|
|
25
|
-
schema:
|
|
25
|
+
schema: ZodType,
|
|
26
26
|
options?: ReadJsonOptions,
|
|
27
27
|
) {
|
|
28
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-return -- return type is actually defined via the function overload above
|
|
29
28
|
return readFile(path, schema, options);
|
|
30
29
|
}
|
package/source/utils.ts
CHANGED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
import * as z from "zod";
|
|
3
|
-
function zodIssuePathToText(zodIssuePath) {
|
|
4
|
-
return zodIssuePath.length > 0 ? ` at path "${zodIssuePath.join(".")}"` : "";
|
|
5
|
-
}
|
|
6
|
-
function zodIssueToString(zodIssue) {
|
|
7
|
-
if (zodIssue.code === z.ZodIssueCode.invalid_type) {
|
|
8
|
-
return `Expected "${zodIssue.expected}" but received "${zodIssue.received}"${zodIssuePathToText(
|
|
9
|
-
zodIssue.path
|
|
10
|
-
)}`;
|
|
11
|
-
}
|
|
12
|
-
if (zodIssue.code === z.ZodIssueCode.unrecognized_keys) {
|
|
13
|
-
return `Unrecognized ${zodIssue.keys.length >= 2 ? "keys" : "key"} ${zodIssue.keys.map((key) => `"${key}"`).join(", ")}${zodIssuePathToText(zodIssue.path)}`;
|
|
14
|
-
}
|
|
15
|
-
if (zodIssue.code === z.ZodIssueCode.invalid_union) {
|
|
16
|
-
return `Invalid union: ${zodIssue.unionErrors.map(
|
|
17
|
-
(unionError) => unionError.issues.map((issue) => {
|
|
18
|
-
let zodIssueString = [...zodIssueToString(issue)];
|
|
19
|
-
zodIssueString[0] &&= zodIssueString[0].toLowerCase();
|
|
20
|
-
return zodIssueString.join("");
|
|
21
|
-
}).join(", ")
|
|
22
|
-
).join("; ")}`;
|
|
23
|
-
}
|
|
24
|
-
if (zodIssue.code === z.ZodIssueCode.invalid_enum_value) {
|
|
25
|
-
return `Expected ${zodIssue.options.length === 1 ? `"${zodIssue.options[0]}"` : `${zodIssue.options.map((option) => `"${option}"`).slice(0, -1).join(", ")} or "${zodIssue.options.at(-1)}"`}${zodIssuePathToText(zodIssue.path)}`;
|
|
26
|
-
}
|
|
27
|
-
return `${zodIssue.message}${zodIssuePathToText(zodIssue.path)}`;
|
|
28
|
-
}
|
|
29
|
-
export function zodIssuesToStrings(zodIssues) {
|
|
30
|
-
return zodIssues.map((zodIssue) => zodIssueToString(zodIssue));
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=zodIssuesToString.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../source/utils/zodIssuesToString.ts"],
|
|
4
|
-
"sourcesContent": ["import * as z from 'zod';\n\nfunction zodIssuePathToText(zodIssuePath: Array<number | string>): string {\n return zodIssuePath.length > 0 ? ` at path \"${zodIssuePath.join('.')}\"` : '';\n}\n\nfunction zodIssueToString(zodIssue: z.ZodIssue): string {\n if (zodIssue.code === z.ZodIssueCode.invalid_type) {\n return `Expected \"${zodIssue.expected}\" but received \"${zodIssue.received}\"${zodIssuePathToText(\n zodIssue.path,\n )}`;\n }\n\n if (zodIssue.code === z.ZodIssueCode.unrecognized_keys) {\n return `Unrecognized ${zodIssue.keys.length >= 2 ? 'keys' : 'key'} ${zodIssue.keys\n .map((key) => `\"${key}\"`)\n .join(', ')}${zodIssuePathToText(zodIssue.path)}`;\n }\n\n if (zodIssue.code === z.ZodIssueCode.invalid_union) {\n return `Invalid union: ${zodIssue.unionErrors\n .map((unionError) =>\n unionError.issues\n .map((issue) => {\n let zodIssueString = [...zodIssueToString(issue)];\n\n zodIssueString[0] &&= zodIssueString[0].toLowerCase();\n\n return zodIssueString.join('');\n })\n .join(', '),\n )\n .join('; ')}`;\n }\n\n if (zodIssue.code === z.ZodIssueCode.invalid_enum_value) {\n return `Expected ${\n zodIssue.options.length === 1 ?\n `\"${zodIssue.options[0]}\"`\n : `${zodIssue.options\n .map((option) => `\"${option}\"`)\n .slice(0, -1)\n .join(', ')} or \"${zodIssue.options.at(-1)}\"`\n }${zodIssuePathToText(zodIssue.path)}`;\n }\n\n return `${zodIssue.message}${zodIssuePathToText(zodIssue.path)}`;\n}\n\nexport function zodIssuesToStrings(zodIssues: z.ZodIssue[]): string[] {\n return zodIssues.map((zodIssue) => zodIssueToString(zodIssue));\n}\n"],
|
|
5
|
-
"mappings": ";AAAA,YAAY,OAAO;AAEnB,SAAS,mBAAmB,cAA8C;AACxE,SAAO,aAAa,SAAS,IAAI,aAAa,aAAa,KAAK,GAAG,CAAC,MAAM;AAC5E;AAEA,SAAS,iBAAiB,UAA8B;AACtD,MAAI,SAAS,SAAS,EAAE,aAAa,cAAc;AACjD,WAAO,aAAa,SAAS,QAAQ,mBAAmB,SAAS,QAAQ,IAAI;AAAA,MAC3E,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AAEA,MAAI,SAAS,SAAS,EAAE,aAAa,mBAAmB;AACtD,WAAO,gBAAgB,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,IAAI,SAAS,KAC3E,IAAI,CAAC,QAAQ,IAAI,GAAG,GAAG,EACvB,KAAK,IAAI,CAAC,GAAG,mBAAmB,SAAS,IAAI,CAAC;AAAA,EACnD;AAEA,MAAI,SAAS,SAAS,EAAE,aAAa,eAAe;AAClD,WAAO,kBAAkB,SAAS,YAC/B;AAAA,MAAI,CAAC,eACJ,WAAW,OACR,IAAI,CAAC,UAAU;AACd,YAAI,iBAAiB,CAAC,GAAG,iBAAiB,KAAK,CAAC;AAEhD,uBAAe,CAAC,MAAM,eAAe,CAAC,EAAE,YAAY;AAEpD,eAAO,eAAe,KAAK,EAAE;AAAA,MAC/B,CAAC,EACA,KAAK,IAAI;AAAA,IACd,EACC,KAAK,IAAI,CAAC;AAAA,EACf;AAEA,MAAI,SAAS,SAAS,EAAE,aAAa,oBAAoB;AACvD,WAAO,YACL,SAAS,QAAQ,WAAW,IAC1B,IAAI,SAAS,QAAQ,CAAC,CAAC,MACvB,GAAG,SAAS,QACT,IAAI,CAAC,WAAW,IAAI,MAAM,GAAG,EAC7B,MAAM,GAAG,EAAE,EACX,KAAK,IAAI,CAAC,QAAQ,SAAS,QAAQ,GAAG,EAAE,CAAC,GAChD,GAAG,mBAAmB,SAAS,IAAI,CAAC;AAAA,EACtC;AAEA,SAAO,GAAG,SAAS,OAAO,GAAG,mBAAmB,SAAS,IAAI,CAAC;AAChE;AAEO,gBAAS,mBAAmB,WAAmC;AACpE,SAAO,UAAU,IAAI,CAAC,aAAa,iBAAiB,QAAQ,CAAC;AAC/D;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import * as z from 'zod';
|
|
2
|
-
|
|
3
|
-
function zodIssuePathToText(zodIssuePath: Array<number | string>): string {
|
|
4
|
-
return zodIssuePath.length > 0 ? ` at path "${zodIssuePath.join('.')}"` : '';
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
function zodIssueToString(zodIssue: z.ZodIssue): string {
|
|
8
|
-
if (zodIssue.code === z.ZodIssueCode.invalid_type) {
|
|
9
|
-
return `Expected "${zodIssue.expected}" but received "${zodIssue.received}"${zodIssuePathToText(
|
|
10
|
-
zodIssue.path,
|
|
11
|
-
)}`;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
if (zodIssue.code === z.ZodIssueCode.unrecognized_keys) {
|
|
15
|
-
return `Unrecognized ${zodIssue.keys.length >= 2 ? 'keys' : 'key'} ${zodIssue.keys
|
|
16
|
-
.map((key) => `"${key}"`)
|
|
17
|
-
.join(', ')}${zodIssuePathToText(zodIssue.path)}`;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
if (zodIssue.code === z.ZodIssueCode.invalid_union) {
|
|
21
|
-
return `Invalid union: ${zodIssue.unionErrors
|
|
22
|
-
.map((unionError) =>
|
|
23
|
-
unionError.issues
|
|
24
|
-
.map((issue) => {
|
|
25
|
-
let zodIssueString = [...zodIssueToString(issue)];
|
|
26
|
-
|
|
27
|
-
zodIssueString[0] &&= zodIssueString[0].toLowerCase();
|
|
28
|
-
|
|
29
|
-
return zodIssueString.join('');
|
|
30
|
-
})
|
|
31
|
-
.join(', '),
|
|
32
|
-
)
|
|
33
|
-
.join('; ')}`;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
if (zodIssue.code === z.ZodIssueCode.invalid_enum_value) {
|
|
37
|
-
return `Expected ${
|
|
38
|
-
zodIssue.options.length === 1 ?
|
|
39
|
-
`"${zodIssue.options[0]}"`
|
|
40
|
-
: `${zodIssue.options
|
|
41
|
-
.map((option) => `"${option}"`)
|
|
42
|
-
.slice(0, -1)
|
|
43
|
-
.join(', ')} or "${zodIssue.options.at(-1)}"`
|
|
44
|
-
}${zodIssuePathToText(zodIssue.path)}`;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
return `${zodIssue.message}${zodIssuePathToText(zodIssue.path)}`;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export function zodIssuesToStrings(zodIssues: z.ZodIssue[]): string[] {
|
|
51
|
-
return zodIssues.map((zodIssue) => zodIssueToString(zodIssue));
|
|
52
|
-
}
|