@power-plant/schema 0.0.27 → 0.0.28

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.
@@ -1,4 +1,4 @@
1
- import { U as JsonSchemaType, a as JsonSchema } from "./types-BhEdUeyR.cjs";
1
+ import { U as JsonSchemaType, a as JsonSchema } from "./types--ig4SQ4Y.cjs";
2
2
  //#region src/codegen.d.ts
3
3
  /**
4
4
  * Stringifies a value for generated TypeScript code.
@@ -1,4 +1,4 @@
1
- import { U as JsonSchemaType, a as JsonSchema } from "./types-BMC57p-g.mjs";
1
+ import { U as JsonSchemaType, a as JsonSchema } from "./types-CINa5E2f.mjs";
2
2
  //#region src/codegen.d.ts
3
3
  /**
4
4
  * Stringifies a value for generated TypeScript code.
package/dist/index.cjs CHANGED
@@ -213,16 +213,15 @@ function resolveCompilerOptions(system, tsconfig, fs) {
213
213
  delete options.declarationMap;
214
214
  return options;
215
215
  }
216
- function createProgramFromFileSystem(rootFile, options) {
217
- const projectRoot = options.cwd ?? (0, node_path.dirname)(rootFile);
218
- const createSystem = _typescript_vfs.createFSBackedSystem;
216
+ function createProgramFromFileSystem(file, options) {
217
+ const projectRoot = options.cwd ?? (0, _stryke_path_find.findFilePath)(file);
219
218
  const createHost = _typescript_vfs.createVirtualCompilerHost;
220
- const system = createSystem(/* @__PURE__ */ new Map(), projectRoot, typescript.default);
219
+ const system = (0, _typescript_vfs.createFSBackedSystem)(/* @__PURE__ */ new Map(), projectRoot, typescript.default);
221
220
  if (options.fs) bindFileSystemToSystem(system, options.fs);
222
221
  const compilerOptions = resolveCompilerOptions(system, options.tsconfig, options.fs);
223
222
  const { compilerHost } = createHost(system, compilerOptions, typescript.default);
224
223
  return typescript.default.createProgram({
225
- rootNames: [rootFile],
224
+ rootNames: [file],
226
225
  options: compilerOptions,
227
226
  host: compilerHost
228
227
  });
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SchemaSourceVariant, A as JsonSchemaNumberFormat, B as JsonSchemaString, C as JsonSchemaMap, D as JsonSchemaNull, E as JsonSchemaNever, F as JsonSchemaRecord, G as JsonSchemaUnion, H as JsonSchemaTuple, I as JsonSchemaRecordPropertyNames, J as SchemaConfigVariant, K as JsonSchemaUnknown, L as JsonSchemaRef, M as JsonSchemaOf, N as JsonSchemaPrimitiveType, O as JsonSchemaNullable, P as JsonSchemaPrimitiveUnion, Q as SchemaSourceConfig, R as JsonSchemaSchemaSource, S as JsonSchemaLogicKeywords, T as JsonSchemaNativeEnum, U as JsonSchemaType, V as JsonSchemaStringFormat, W as JsonSchemaUndefined, X as SchemaEnvelopeOf, Y as SchemaEnvelope, Z as SchemaSource, _ as JsonSchemaInteger, a as JsonSchema, at as ValibotSchema, b as JsonSchemaLike, c as JsonSchemaAnyOf, ct as JSON_SCHEMA_METADATA_KEYS, d as JsonSchemaBoolean, dt as JsonSchemaTypeNames, et as SpecOf, f as JsonSchemaConditionalKeywords, ft as SCHEMA_ARRAY_CONCAT_KEYWORDS, g as JsonSchemaEnum, h as JsonSchemaDecimalFormat, i as InferExtractOptions, it as UntypedSchemaSource, j as JsonSchemaObject, k as JsonSchemaNumber, l as JsonSchemaArray, lt as JSON_SCHEMA_PRIMITIVE_TYPES, m as JsonSchemaDecimal, mt as SCHEMA_SINGLE_KEYWORDS, n as BaseSchemaSource, nt as UntypedConfigObject, o as JsonSchemaAllOf, ot as ValibotSchemaSource, p as JsonSchemaDate, pt as SCHEMA_RECORD_KEYWORDS, q as SchemaConfig, r as ExtractedSchemaEnvelope, rt as UntypedSchema, s as JsonSchemaAny, st as Zod3SchemaSource, t as BaseExtractOptions, tt as StandardSchemaSchemaSource, u as JsonSchemaBigint, ut as JSON_SCHEMA_TYPES, v as JsonSchemaIntegerFormat, w as JsonSchemaMetadataKeywords, x as JsonSchemaLiteral, y as JsonSchemaKeywords, z as JsonSchemaSet } from "./types-BhEdUeyR.cjs";
1
+ import { $ as SchemaSourceVariant, A as JsonSchemaNumberFormat, B as JsonSchemaString, C as JsonSchemaMap, D as JsonSchemaNull, E as JsonSchemaNever, F as JsonSchemaRecord, G as JsonSchemaUnion, H as JsonSchemaTuple, I as JsonSchemaRecordPropertyNames, J as SchemaConfigVariant, K as JsonSchemaUnknown, L as JsonSchemaRef, M as JsonSchemaOf, N as JsonSchemaPrimitiveType, O as JsonSchemaNullable, P as JsonSchemaPrimitiveUnion, Q as SchemaSourceConfig, R as JsonSchemaSchemaSource, S as JsonSchemaLogicKeywords, T as JsonSchemaNativeEnum, U as JsonSchemaType, V as JsonSchemaStringFormat, W as JsonSchemaUndefined, X as SchemaEnvelopeOf, Y as SchemaEnvelope, Z as SchemaSource, _ as JsonSchemaInteger, a as JsonSchema, at as ValibotSchema, b as JsonSchemaLike, c as JsonSchemaAnyOf, ct as JSON_SCHEMA_METADATA_KEYS, d as JsonSchemaBoolean, dt as JsonSchemaTypeNames, et as SpecOf, f as JsonSchemaConditionalKeywords, ft as SCHEMA_ARRAY_CONCAT_KEYWORDS, g as JsonSchemaEnum, h as JsonSchemaDecimalFormat, i as InferExtractOptions, it as UntypedSchemaSource, j as JsonSchemaObject, k as JsonSchemaNumber, l as JsonSchemaArray, lt as JSON_SCHEMA_PRIMITIVE_TYPES, m as JsonSchemaDecimal, mt as SCHEMA_SINGLE_KEYWORDS, n as BaseSchemaSource, nt as UntypedConfigObject, o as JsonSchemaAllOf, ot as ValibotSchemaSource, p as JsonSchemaDate, pt as SCHEMA_RECORD_KEYWORDS, q as SchemaConfig, r as ExtractedSchemaEnvelope, rt as UntypedSchema, s as JsonSchemaAny, st as Zod3SchemaSource, t as BaseExtractOptions, tt as StandardSchemaSchemaSource, u as JsonSchemaBigint, ut as JSON_SCHEMA_TYPES, v as JsonSchemaIntegerFormat, w as JsonSchemaMetadataKeywords, x as JsonSchemaLiteral, y as JsonSchemaKeywords, z as JsonSchemaSet } from "./types--ig4SQ4Y.cjs";
2
2
  import { n as createStoragePromises, r as normalizeKey, t as mapStorageToFileSystem } from "./index-ldf5lukz.cjs";
3
3
  import { StandardSchemaV1 } from "@standard-schema/spec";
4
4
  import { InferLoadOptions } from "@stryke/resolve/types";
@@ -92,6 +92,7 @@ declare function extractSource(variant: SchemaSourceVariant, input: SchemaSource
92
92
  */
93
93
  declare function extractTSType(input: FileReferenceInput, options?: InferLoadOptions<typeof input> & {
94
94
  tsconfig?: string;
95
+ cwd?: string;
95
96
  }): Promise<JsonSchema>;
96
97
  /**
97
98
  * Extracts a JSON Schema from a given schema definition input, which can be a Zod schema, a Valibot schema, any Standard JSON Schema type, a plain JSON Schema object, an untyped schema, or a {@link FileReferenceInput} to an exported TypeScript type definition or any of the previous options. If the input is a {@link FileReferenceInput} (e.g. a file path with an export), the source code will be bundled with [esbuild](esbuild.github.io) using [ts-json-schema-generator](https://github.com/vega/ts-json-schema-generator) to obtain the actual schema definition before extraction.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/compatibility.ts","../src/extract.ts","../src/helpers.ts","../src/metadata.ts","../src/type-checks.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/compatibility.ts","../src/extract.ts","../src/helpers.ts","../src/metadata.ts","../src/type-checks.ts"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as SchemaSourceVariant, A as JsonSchemaNumberFormat, B as JsonSchemaString, C as JsonSchemaMap, D as JsonSchemaNull, E as JsonSchemaNever, F as JsonSchemaRecord, G as JsonSchemaUnion, H as JsonSchemaTuple, I as JsonSchemaRecordPropertyNames, J as SchemaConfigVariant, K as JsonSchemaUnknown, L as JsonSchemaRef, M as JsonSchemaOf, N as JsonSchemaPrimitiveType, O as JsonSchemaNullable, P as JsonSchemaPrimitiveUnion, Q as SchemaSourceConfig, R as JsonSchemaSchemaSource, S as JsonSchemaLogicKeywords, T as JsonSchemaNativeEnum, U as JsonSchemaType, V as JsonSchemaStringFormat, W as JsonSchemaUndefined, X as SchemaEnvelopeOf, Y as SchemaEnvelope, Z as SchemaSource, _ as JsonSchemaInteger, a as JsonSchema, at as ValibotSchema, b as JsonSchemaLike, c as JsonSchemaAnyOf, ct as JSON_SCHEMA_METADATA_KEYS, d as JsonSchemaBoolean, dt as JsonSchemaTypeNames, et as SpecOf, f as JsonSchemaConditionalKeywords, ft as SCHEMA_ARRAY_CONCAT_KEYWORDS, g as JsonSchemaEnum, h as JsonSchemaDecimalFormat, i as InferExtractOptions, it as UntypedSchemaSource, j as JsonSchemaObject, k as JsonSchemaNumber, l as JsonSchemaArray, lt as JSON_SCHEMA_PRIMITIVE_TYPES, m as JsonSchemaDecimal, mt as SCHEMA_SINGLE_KEYWORDS, n as BaseSchemaSource, nt as UntypedConfigObject, o as JsonSchemaAllOf, ot as ValibotSchemaSource, p as JsonSchemaDate, pt as SCHEMA_RECORD_KEYWORDS, q as SchemaConfig, r as ExtractedSchemaEnvelope, rt as UntypedSchema, s as JsonSchemaAny, st as Zod3SchemaSource, t as BaseExtractOptions, tt as StandardSchemaSchemaSource, u as JsonSchemaBigint, ut as JSON_SCHEMA_TYPES, v as JsonSchemaIntegerFormat, w as JsonSchemaMetadataKeywords, x as JsonSchemaLiteral, y as JsonSchemaKeywords, z as JsonSchemaSet } from "./types-BMC57p-g.mjs";
1
+ import { $ as SchemaSourceVariant, A as JsonSchemaNumberFormat, B as JsonSchemaString, C as JsonSchemaMap, D as JsonSchemaNull, E as JsonSchemaNever, F as JsonSchemaRecord, G as JsonSchemaUnion, H as JsonSchemaTuple, I as JsonSchemaRecordPropertyNames, J as SchemaConfigVariant, K as JsonSchemaUnknown, L as JsonSchemaRef, M as JsonSchemaOf, N as JsonSchemaPrimitiveType, O as JsonSchemaNullable, P as JsonSchemaPrimitiveUnion, Q as SchemaSourceConfig, R as JsonSchemaSchemaSource, S as JsonSchemaLogicKeywords, T as JsonSchemaNativeEnum, U as JsonSchemaType, V as JsonSchemaStringFormat, W as JsonSchemaUndefined, X as SchemaEnvelopeOf, Y as SchemaEnvelope, Z as SchemaSource, _ as JsonSchemaInteger, a as JsonSchema, at as ValibotSchema, b as JsonSchemaLike, c as JsonSchemaAnyOf, ct as JSON_SCHEMA_METADATA_KEYS, d as JsonSchemaBoolean, dt as JsonSchemaTypeNames, et as SpecOf, f as JsonSchemaConditionalKeywords, ft as SCHEMA_ARRAY_CONCAT_KEYWORDS, g as JsonSchemaEnum, h as JsonSchemaDecimalFormat, i as InferExtractOptions, it as UntypedSchemaSource, j as JsonSchemaObject, k as JsonSchemaNumber, l as JsonSchemaArray, lt as JSON_SCHEMA_PRIMITIVE_TYPES, m as JsonSchemaDecimal, mt as SCHEMA_SINGLE_KEYWORDS, n as BaseSchemaSource, nt as UntypedConfigObject, o as JsonSchemaAllOf, ot as ValibotSchemaSource, p as JsonSchemaDate, pt as SCHEMA_RECORD_KEYWORDS, q as SchemaConfig, r as ExtractedSchemaEnvelope, rt as UntypedSchema, s as JsonSchemaAny, st as Zod3SchemaSource, t as BaseExtractOptions, tt as StandardSchemaSchemaSource, u as JsonSchemaBigint, ut as JSON_SCHEMA_TYPES, v as JsonSchemaIntegerFormat, w as JsonSchemaMetadataKeywords, x as JsonSchemaLiteral, y as JsonSchemaKeywords, z as JsonSchemaSet } from "./types-CINa5E2f.mjs";
2
2
  import { n as createStoragePromises, r as normalizeKey, t as mapStorageToFileSystem } from "./index-C7q4X7Bo.mjs";
3
3
  import { BaseSchema } from "valibot";
4
4
  import { StandardSchemaV1 } from "@standard-schema/spec";
@@ -92,6 +92,7 @@ declare function extractSource(variant: SchemaSourceVariant, input: SchemaSource
92
92
  */
93
93
  declare function extractTSType(input: FileReferenceInput, options?: InferLoadOptions<typeof input> & {
94
94
  tsconfig?: string;
95
+ cwd?: string;
95
96
  }): Promise<JsonSchema>;
96
97
  /**
97
98
  * Extracts a JSON Schema from a given schema definition input, which can be a Zod schema, a Valibot schema, any Standard JSON Schema type, a plain JSON Schema object, an untyped schema, or a {@link FileReferenceInput} to an exported TypeScript type definition or any of the previous options. If the input is a {@link FileReferenceInput} (e.g. a file path with an export), the source code will be bundled with [esbuild](esbuild.github.io) using [ts-json-schema-generator](https://github.com/vega/ts-json-schema-generator) to obtain the actual schema definition before extraction.
package/dist/index.mjs CHANGED
@@ -9,7 +9,7 @@ import { resolveSafe } from "@stryke/fs/resolve";
9
9
  import { murmurhash } from "@stryke/hash";
10
10
  import { deepClone } from "@stryke/helpers/deep-clone";
11
11
  import { isStandardJsonSchema } from "@stryke/json";
12
- import { findFileExtensionSafe } from "@stryke/path/find";
12
+ import { findFileExtensionSafe, findFilePath } from "@stryke/path/find";
13
13
  import { VALID_OBJECT_SOURCE_EXTENSIONS } from "@stryke/resolve/constants";
14
14
  import { loadSafe } from "@stryke/resolve/load";
15
15
  import { list } from "@stryke/string-format/list";
@@ -210,16 +210,15 @@ function resolveCompilerOptions(system, tsconfig, fs) {
210
210
  delete options.declarationMap;
211
211
  return options;
212
212
  }
213
- function createProgramFromFileSystem(rootFile, options) {
214
- const projectRoot = options.cwd ?? dirname(rootFile);
215
- const createSystem = createFSBackedSystem;
213
+ function createProgramFromFileSystem(file, options) {
214
+ const projectRoot = options.cwd ?? findFilePath(file);
216
215
  const createHost = createVirtualCompilerHost;
217
- const system = createSystem(/* @__PURE__ */ new Map(), projectRoot, ts);
216
+ const system = createFSBackedSystem(/* @__PURE__ */ new Map(), projectRoot, ts);
218
217
  if (options.fs) bindFileSystemToSystem(system, options.fs);
219
218
  const compilerOptions = resolveCompilerOptions(system, options.tsconfig, options.fs);
220
219
  const { compilerHost } = createHost(system, compilerOptions, ts);
221
220
  return ts.createProgram({
222
- rootNames: [rootFile],
221
+ rootNames: [file],
223
222
  options: compilerOptions,
224
223
  host: compilerHost
225
224
  });
@@ -1,9 +1,9 @@
1
- import { BaseIssue, BaseSchema } from "valibot";
2
1
  import { StandardJSONSchemaV1 } from "@standard-schema/spec";
3
2
  import { InferLoadOptions, LoadReference } from "@stryke/resolve/types";
4
3
  import { Config } from "ts-json-schema-generator/dist/src/Config.js";
5
4
  import { Storage } from "unstorage";
6
5
  import { InputObject, Schema } from "untyped";
6
+ import { BaseIssue, BaseSchema } from "valibot";
7
7
  import * as z3 from "zod/v3";
8
8
  //#region src/constants.d.ts
9
9
  declare const JsonSchemaTypeNames: {
@@ -1209,6 +1209,10 @@ type BaseExtractOptions = {
1209
1209
  * An optional storage instance to use for caching schema extraction results. If provided, the storage instance will be used to store and retrieve cached schema extraction results, which can improve performance by avoiding redundant schema extraction operations. If not provided, the default storage mechanism will be used.
1210
1210
  */
1211
1211
  storage?: Storage;
1212
+ /**
1213
+ * An optional working directory to use for resolving file references. If provided, the working directory will be used to resolve file references, which can improve performance by avoiding redundant file resolution operations. If not provided, the current working directory will be used.
1214
+ */
1215
+ cwd?: string;
1212
1216
  } & Omit<Config, "path" | "type">;
1213
1217
  type InferExtractOptions<T extends SchemaConfig> = (T extends LoadReference ? Omit<InferLoadOptions<T>, "fs"> : {}) & BaseExtractOptions;
1214
1218
  /**
@@ -1333,4 +1337,4 @@ declare module "zod" {
1333
1337
  }
1334
1338
  //#endregion
1335
1339
  export { SchemaSourceVariant as $, JsonSchemaNumberFormat as A, JsonSchemaString as B, JsonSchemaMap as C, JsonSchemaNull as D, JsonSchemaNever as E, JsonSchemaRecord as F, JsonSchemaUnion as G, JsonSchemaTuple as H, JsonSchemaRecordPropertyNames as I, SchemaConfigVariant as J, JsonSchemaUnknown as K, JsonSchemaRef as L, JsonSchemaOf as M, JsonSchemaPrimitiveType as N, JsonSchemaNullable as O, JsonSchemaPrimitiveUnion as P, SchemaSourceConfig as Q, JsonSchemaSchemaSource as R, JsonSchemaLogicKeywords as S, JsonSchemaNativeEnum as T, JsonSchemaType as U, JsonSchemaStringFormat as V, JsonSchemaUndefined as W, SchemaEnvelopeOf as X, SchemaEnvelope as Y, SchemaSource as Z, JsonSchemaInteger as _, JsonSchema as a, ValibotSchema as at, JsonSchemaLike as b, JsonSchemaAnyOf as c, JSON_SCHEMA_METADATA_KEYS as ct, JsonSchemaBoolean as d, JsonSchemaTypeNames as dt, SpecOf as et, JsonSchemaConditionalKeywords as f, SCHEMA_ARRAY_CONCAT_KEYWORDS as ft, JsonSchemaEnum as g, JsonSchemaDecimalFormat as h, InferExtractOptions as i, UntypedSchemaSource as it, JsonSchemaObject as j, JsonSchemaNumber as k, JsonSchemaArray as l, JSON_SCHEMA_PRIMITIVE_TYPES as lt, JsonSchemaDecimal as m, SCHEMA_SINGLE_KEYWORDS as mt, BaseSchemaSource as n, UntypedConfigObject as nt, JsonSchemaAllOf as o, ValibotSchemaSource as ot, JsonSchemaDate as p, SCHEMA_RECORD_KEYWORDS as pt, SchemaConfig as q, ExtractedSchemaEnvelope as r, UntypedSchema as rt, JsonSchemaAny as s, Zod3SchemaSource as st, BaseExtractOptions as t, StandardSchemaSchemaSource as tt, JsonSchemaBigint as u, JSON_SCHEMA_TYPES as ut, JsonSchemaIntegerFormat as v, JsonSchemaMetadataKeywords as w, JsonSchemaLiteral as x, JsonSchemaKeywords as y, JsonSchemaSet as z };
1336
- //# sourceMappingURL=types-BMC57p-g.d.mts.map
1340
+ //# sourceMappingURL=types--ig4SQ4Y.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-BhEdUeyR.d.cts","names":[],"sources":["../src/constants.ts","../src/types.ts"],"mappings":"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"}
1
+ {"version":3,"file":"types--ig4SQ4Y.d.cts","names":[],"sources":["../src/constants.ts","../src/types.ts"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
+ import { BaseIssue, BaseSchema } from "valibot";
1
2
  import { StandardJSONSchemaV1 } from "@standard-schema/spec";
2
3
  import { InferLoadOptions, LoadReference } from "@stryke/resolve/types";
3
4
  import { Config } from "ts-json-schema-generator/dist/src/Config.js";
4
5
  import { Storage } from "unstorage";
5
6
  import { InputObject, Schema } from "untyped";
6
- import { BaseIssue, BaseSchema } from "valibot";
7
7
  import * as z3 from "zod/v3";
8
8
  //#region src/constants.d.ts
9
9
  declare const JsonSchemaTypeNames: {
@@ -1209,6 +1209,10 @@ type BaseExtractOptions = {
1209
1209
  * An optional storage instance to use for caching schema extraction results. If provided, the storage instance will be used to store and retrieve cached schema extraction results, which can improve performance by avoiding redundant schema extraction operations. If not provided, the default storage mechanism will be used.
1210
1210
  */
1211
1211
  storage?: Storage;
1212
+ /**
1213
+ * An optional working directory to use for resolving file references. If provided, the working directory will be used to resolve file references, which can improve performance by avoiding redundant file resolution operations. If not provided, the current working directory will be used.
1214
+ */
1215
+ cwd?: string;
1212
1216
  } & Omit<Config, "path" | "type">;
1213
1217
  type InferExtractOptions<T extends SchemaConfig> = (T extends LoadReference ? Omit<InferLoadOptions<T>, "fs"> : {}) & BaseExtractOptions;
1214
1218
  /**
@@ -1333,4 +1337,4 @@ declare module "zod" {
1333
1337
  }
1334
1338
  //#endregion
1335
1339
  export { SchemaSourceVariant as $, JsonSchemaNumberFormat as A, JsonSchemaString as B, JsonSchemaMap as C, JsonSchemaNull as D, JsonSchemaNever as E, JsonSchemaRecord as F, JsonSchemaUnion as G, JsonSchemaTuple as H, JsonSchemaRecordPropertyNames as I, SchemaConfigVariant as J, JsonSchemaUnknown as K, JsonSchemaRef as L, JsonSchemaOf as M, JsonSchemaPrimitiveType as N, JsonSchemaNullable as O, JsonSchemaPrimitiveUnion as P, SchemaSourceConfig as Q, JsonSchemaSchemaSource as R, JsonSchemaLogicKeywords as S, JsonSchemaNativeEnum as T, JsonSchemaType as U, JsonSchemaStringFormat as V, JsonSchemaUndefined as W, SchemaEnvelopeOf as X, SchemaEnvelope as Y, SchemaSource as Z, JsonSchemaInteger as _, JsonSchema as a, ValibotSchema as at, JsonSchemaLike as b, JsonSchemaAnyOf as c, JSON_SCHEMA_METADATA_KEYS as ct, JsonSchemaBoolean as d, JsonSchemaTypeNames as dt, SpecOf as et, JsonSchemaConditionalKeywords as f, SCHEMA_ARRAY_CONCAT_KEYWORDS as ft, JsonSchemaEnum as g, JsonSchemaDecimalFormat as h, InferExtractOptions as i, UntypedSchemaSource as it, JsonSchemaObject as j, JsonSchemaNumber as k, JsonSchemaArray as l, JSON_SCHEMA_PRIMITIVE_TYPES as lt, JsonSchemaDecimal as m, SCHEMA_SINGLE_KEYWORDS as mt, BaseSchemaSource as n, UntypedConfigObject as nt, JsonSchemaAllOf as o, ValibotSchemaSource as ot, JsonSchemaDate as p, SCHEMA_RECORD_KEYWORDS as pt, SchemaConfig as q, ExtractedSchemaEnvelope as r, UntypedSchema as rt, JsonSchemaAny as s, Zod3SchemaSource as st, BaseExtractOptions as t, StandardSchemaSchemaSource as tt, JsonSchemaBigint as u, JSON_SCHEMA_TYPES as ut, JsonSchemaIntegerFormat as v, JsonSchemaMetadataKeywords as w, JsonSchemaLiteral as x, JsonSchemaKeywords as y, JsonSchemaSet as z };
1336
- //# sourceMappingURL=types-BhEdUeyR.d.cts.map
1340
+ //# sourceMappingURL=types-CINa5E2f.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-CINa5E2f.d.mts","names":[],"sources":["../src/constants.ts","../src/types.ts"],"mappings":""}
@@ -1,4 +1,4 @@
1
- import { a as JsonSchema } from "./types-BhEdUeyR.cjs";
1
+ import { a as JsonSchema } from "./types--ig4SQ4Y.cjs";
2
2
  import * as v from "valibot";
3
3
  //#region src/valibot.d.ts
4
4
  declare const referenceSchema: v.ObjectSchema<{
@@ -1,4 +1,4 @@
1
- import { a as JsonSchema } from "./types-BMC57p-g.mjs";
1
+ import { a as JsonSchema } from "./types-CINa5E2f.mjs";
2
2
  import * as v from "valibot";
3
3
  //#region src/valibot.d.ts
4
4
  declare const referenceSchema: v.ObjectSchema<{
package/dist/zod.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { Y as SchemaEnvelope, a as JsonSchema } from "./types-BhEdUeyR.cjs";
1
+ import { Y as SchemaEnvelope, a as JsonSchema } from "./types--ig4SQ4Y.cjs";
2
2
  import * as z from "zod/mini";
3
3
  import * as z4 from "zod/v4";
4
4
  //#region src/zod.d.ts
package/dist/zod.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { Y as SchemaEnvelope, a as JsonSchema } from "./types-BMC57p-g.mjs";
1
+ import { Y as SchemaEnvelope, a as JsonSchema } from "./types-CINa5E2f.mjs";
2
2
  import * as z from "zod/mini";
3
3
  import * as z4 from "zod/v4";
4
4
  //#region src/zod.d.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@power-plant/schema",
3
- "version": "0.0.27",
3
+ "version": "0.0.28",
4
4
  "private": false,
5
5
  "description": "A Power Plant utility package to help managing schemas.",
6
6
  "keywords": [
@@ -142,9 +142,9 @@
142
142
  "untyped": "^1.5.2"
143
143
  },
144
144
  "devDependencies": {
145
- "@powerlines/plugin-tsdown": "^0.1.551",
145
+ "@powerlines/plugin-tsdown": "^0.1.552",
146
146
  "@types/node": "^25.9.5",
147
- "powerlines": "^0.47.150",
147
+ "powerlines": "^0.47.151",
148
148
  "valibot": "^1.4.2",
149
149
  "zod": "^4.4.3"
150
150
  },
@@ -157,5 +157,5 @@
157
157
  "zod": { "optional": true }
158
158
  },
159
159
  "publishConfig": { "access": "public" },
160
- "gitHead": "bffc1c94df9b5df1a071759e31324755b7c93a73"
160
+ "gitHead": "ac566f959bb90c0ea2812e4996e24e6173de52a1"
161
161
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-BMC57p-g.d.mts","names":[],"sources":["../src/constants.ts","../src/types.ts"],"mappings":""}