schemastore-to-typescript 1.2.1 → 1.3.0

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/CHANGELOG.json CHANGED
@@ -2,7 +2,57 @@
2
2
  "name": "schemastore-to-typescript",
3
3
  "entries": [
4
4
  {
5
- "date": "Sun, 01 Nov 2026 02:53:18 GMT",
5
+ "date": "Sun, 01 Nov 2026 16:58:53 GMT",
6
+ "version": "1.3.0",
7
+ "tag": "schemastore-to-typescript_v1.3.0",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "author": "filip.dupanovic@gmail.com",
12
+ "package": "schemastore-to-typescript",
13
+ "commit": "afaf67fe0c1f1c826292bed5a8c6f85d06d544db",
14
+ "comment": "Add an option to keep null in jsii mode"
15
+ },
16
+ {
17
+ "author": "filip.dupanovic@gmail.com",
18
+ "package": "schemastore-to-typescript",
19
+ "commit": "afaf67fe0c1f1c826292bed5a8c6f85d06d544db",
20
+ "comment": "Name the only object among the alternatives without its position in jsii mode"
21
+ }
22
+ ],
23
+ "patch": [
24
+ {
25
+ "author": "filip.dupanovic@gmail.com",
26
+ "package": "schemastore-to-typescript",
27
+ "commit": "afaf67fe0c1f1c826292bed5a8c6f85d06d544db",
28
+ "comment": "Keep the value type of a map that refers to a definition in jsii mode"
29
+ }
30
+ ]
31
+ }
32
+ },
33
+ {
34
+ "date": "Sun, 01 Nov 2026 09:09:47 GMT",
35
+ "version": "1.2.2",
36
+ "tag": "schemastore-to-typescript_v1.2.2",
37
+ "comments": {
38
+ "patch": [
39
+ {
40
+ "author": "filip.dupanovic@gmail.com",
41
+ "package": "schemastore-to-typescript",
42
+ "commit": "cea22d7ae879167f60f7d6a60273e0835bafb7d2",
43
+ "comment": "Keep a reference to a definition whole when jsii mode drops null beside it"
44
+ },
45
+ {
46
+ "author": "email not defined",
47
+ "package": "schemastore-to-typescript",
48
+ "commit": "cea22d7ae879167f60f7d6a60273e0835bafb7d2",
49
+ "comment": "Update dependency @langri-sha/projen-project to v0.48.1"
50
+ }
51
+ ]
52
+ }
53
+ },
54
+ {
55
+ "date": "Sun, 01 Nov 2026 02:53:26 GMT",
6
56
  "version": "1.2.1",
7
57
  "tag": "schemastore-to-typescript_v1.2.1",
8
58
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,34 @@
1
1
  # Change Log - schemastore-to-typescript
2
2
 
3
- <!-- This log was last generated on Sun, 01 Nov 2026 02:53:18 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Sun, 01 Nov 2026 16:58:53 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 1.3.0
8
+
9
+ Sun, 01 Nov 2026 16:58:53 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Add an option to keep null in jsii mode (filip.dupanovic@gmail.com)
14
+ - Name the only object among the alternatives without its position in jsii mode (filip.dupanovic@gmail.com)
15
+
16
+ ### Patches
17
+
18
+ - Keep the value type of a map that refers to a definition in jsii mode (filip.dupanovic@gmail.com)
19
+
20
+ ## 1.2.2
21
+
22
+ Sun, 01 Nov 2026 09:09:47 GMT
23
+
24
+ ### Patches
25
+
26
+ - Keep a reference to a definition whole when jsii mode drops null beside it (filip.dupanovic@gmail.com)
27
+ - Update dependency @langri-sha/projen-project to v0.48.1
28
+
7
29
  ## 1.2.1
8
30
 
9
- Sun, 01 Nov 2026 02:53:18 GMT
31
+ Sun, 01 Nov 2026 02:53:26 GMT
10
32
 
11
33
  ### Patches
12
34
 
package/dist/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import * as fs from 'node:fs/promises';
3
3
  import * as path from 'node:path';
4
- import { Command } from 'commander';
4
+ import { Command, Option } from 'commander';
5
5
  import createDebug from 'debug';
6
6
  import esMain from 'es-main';
7
7
  import { compile } from './index.js';
@@ -13,11 +13,16 @@ export const program = new Command()
13
13
  .argument('[output]', 'Path to output the TypeScript definition')
14
14
  .option('-n, --no-cache', 'Skip caching requests')
15
15
  .option('--jsii', 'Emit typings that jsii can compile')
16
+ .addOption(new Option('--keep-null', 'Keep null in jsii mode, for a jsii build with strictNullChecks off, and write any for unknown').implies({ jsii: true }))
16
17
  .option('--type-name <name>', 'Name the root interface')
17
18
  .showHelpAfterError()
18
- .action(async (schema, output, { cache, jsii, typeName }) => {
19
+ .action(async (schema, output, { cache, jsii, keepNull, typeName }) => {
19
20
  output ??= `${schema}.d.ts`;
20
- const compiled = await compile(schema, cache, { jsii, typeName });
21
+ const compiled = await compile(schema, cache, {
22
+ jsii,
23
+ keepNull,
24
+ typeName,
25
+ });
21
26
  await fs.writeFile(
22
27
  // Using `process.cwd()` as escape hatch for `process.chdir()` not being
23
28
  // available in workers. See: https://github.com/vitest-dev/vitest/issues/1436.
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,WAAW,MAAM,OAAO,CAAA;AAC/B,OAAO,MAAM,MAAM,SAAS,CAAA;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEpC,MAAM,KAAK,GAAG,WAAW,CAAC,4BAA4B,CAAC,CAAA;AAEvD,MAAM,CAAC,MAAM,OAAO,GAAY,IAAI,OAAO,EAAE;KAC1C,IAAI,CAAC,2BAA2B,CAAC;KACjC,WAAW,CAAC,8DAA8D,CAAC;KAC3E,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAChD,QAAQ,CAAC,UAAU,EAAE,0CAA0C,CAAC;KAChE,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;KACjD,MAAM,CAAC,QAAQ,EAAE,oCAAoC,CAAC;KACtD,MAAM,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;KACvD,kBAAkB,EAAE;KACpB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC1D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAA;IAE3B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;IACjE,MAAM,EAAE,CAAC,SAAS;IAChB,wEAAwE;IACxE,+EAA+E;IAC/E,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,EACnC,QAAQ,CACT,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,OAAO;SACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;SACxB,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,WAAW,MAAM,OAAO,CAAA;AAC/B,OAAO,MAAM,MAAM,SAAS,CAAA;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEpC,MAAM,KAAK,GAAG,WAAW,CAAC,4BAA4B,CAAC,CAAA;AAEvD,MAAM,CAAC,MAAM,OAAO,GAAY,IAAI,OAAO,EAAE;KAC1C,IAAI,CAAC,2BAA2B,CAAC;KACjC,WAAW,CAAC,8DAA8D,CAAC;KAC3E,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAChD,QAAQ,CAAC,UAAU,EAAE,0CAA0C,CAAC;KAChE,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;KACjD,MAAM,CAAC,QAAQ,EAAE,oCAAoC,CAAC;KACtD,SAAS,CACR,IAAI,MAAM,CACR,aAAa,EACb,+FAA+F,CAChG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAC1B;KACA,MAAM,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;KACvD,kBAAkB,EAAE;KACpB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IACpE,MAAM,KAAK,GAAG,MAAM,OAAO,CAAA;IAE3B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE;QAC5C,IAAI;QACJ,QAAQ;QACR,QAAQ;KACT,CAAC,CAAA;IACF,MAAM,EAAE,CAAC,SAAS;IAChB,wEAAwE;IACxE,+EAA+E;IAC/E,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,EACnC,QAAQ,CACT,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB,KAAK,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,OAAO;SACJ,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;SACxB,IAAI,CAAC,GAAG,EAAE;QACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;AACN,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,9 +3,18 @@ export interface CompileOptions {
3
3
  * Emit typings that jsii compiles when they are part of a package's API.
4
4
  */
5
5
  jsii?: boolean;
6
+ /**
7
+ * Leave `null` in the types, as the default output has it, and write `any`
8
+ * where it has `unknown`. jsii only accepts such a type when the consumer's
9
+ * build sets `strictNullChecks: false` in its own tsconfig (`jsii.tsconfig`)
10
+ * with `jsii.validateTsconfig` set to `minimal`, since jsii's generated
11
+ * tsconfig and its stricter checks require `true`. jsii then reads `T | null`
12
+ * as `T`, and would read `unknown` as a JSON object. Implies `jsii`.
13
+ */
14
+ keepNull?: boolean;
6
15
  /**
7
16
  * Name the root interface, instead of the catalog's name for the schema.
8
17
  */
9
18
  typeName?: string;
10
19
  }
11
- export declare const compile: (name: string, cache?: boolean, { jsii, typeName }?: CompileOptions) => Promise<string>;
20
+ export declare const compile: (name: string, cache?: boolean, { jsii, keepNull, typeName }?: CompileOptions) => Promise<string>;
package/dist/index.js CHANGED
@@ -113,7 +113,7 @@ const sanitizeSchema = (node, isRoot = true) => {
113
113
  }
114
114
  return sanitized;
115
115
  };
116
- export const compile = async (name, cache = true, { jsii = false, typeName } = {}) => {
116
+ export const compile = async (name, cache = true, { jsii = false, keepNull = false, typeName } = {}) => {
117
117
  const catalogUrl = 'https://www.schemastore.org/api/json/catalog.json';
118
118
  let catalog;
119
119
  let schema;
@@ -190,9 +190,11 @@ export const compile = async (name, cache = true, { jsii = false, typeName } = {
190
190
  await flushCache();
191
191
  }
192
192
  const normalized = sanitizeSchema(normalizeSchema(schema));
193
- if (!jsii) {
193
+ if (!jsii && !keepNull) {
194
194
  return compileSource(normalized, name);
195
195
  }
196
- return jsiiTypings(await compileSource(jsiiSchema(normalized), name, jsiiCompilerOptions));
196
+ return jsiiTypings(await compileSource(jsiiSchema(normalized, { keepNull }), name, keepNull
197
+ ? { ...jsiiCompilerOptions, unknownAny: false }
198
+ : jsiiCompilerOptions));
197
199
  };
198
200
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/jsii.d.ts CHANGED
@@ -3,9 +3,11 @@ export declare const compilerOptions: Partial<Options>;
3
3
  /**
4
4
  * Reshapes a schema so the typings `json-schema-to-typescript` writes for it
5
5
  * stay within what jsii accepts: no `null`, no intersections, no named maps
6
- * and no inline objects.
6
+ * and no inline objects. `null` stays when `keepNull` is set.
7
7
  */
8
- export declare const jsiiSchema: (schema: JSONSchema) => JSONSchema;
8
+ export declare const jsiiSchema: (schema: JSONSchema, { keepNull }?: {
9
+ keepNull?: boolean;
10
+ }) => JSONSchema;
9
11
  /**
10
12
  * jsii requires a struct's members to be `readonly` (JSII3008). Only the
11
13
  * members of exported interfaces are rewritten: after `jsiiSchema` there is no
package/dist/jsii.js CHANGED
@@ -61,7 +61,9 @@ const stripNull = (node) => {
61
61
  if (remaining.length === 0) {
62
62
  return rest;
63
63
  }
64
- if (remaining.length === 1 && isObject(remaining[0])) {
64
+ if (remaining.length === 1 &&
65
+ isObject(remaining[0]) &&
66
+ remaining[0].$ref === undefined) {
65
67
  return { ...remaining[0], ...rest };
66
68
  }
67
69
  return { ...rest, [keyword]: remaining };
@@ -207,10 +209,11 @@ const isMap = (node) => isObject(node) &&
207
209
  /**
208
210
  * A named interface cannot be a map (JSII1999), but a map type can stand in
209
211
  * a member's type. Restate every member-less object as one, without the name
210
- * that would hoist it back into an interface.
212
+ * that would hoist it back into an interface, except a reference, whose
213
+ * definition already gives the values.
211
214
  */
212
215
  const mapify = (node) => {
213
- if (!isMap(node)) {
216
+ if (!isMap(node) || typeof node.$ref === 'string') {
214
217
  return node;
215
218
  }
216
219
  const patterns = isObject(node.patternProperties)
@@ -285,6 +288,19 @@ const inlineMaps = (document) => {
285
288
  * spelled in capitals alone, such as `SDK`.
286
289
  */
287
290
  const isShouting = (name) => /^[A-Z0-9]+$/.test(name) && /[A-Z].*[A-Z]/.test(name);
291
+ /**
292
+ * An alternative that becomes an interface of its own: an object with members
293
+ * or none at all, or an array, map or union that holds one. When only one is,
294
+ * nothing but its position among the alternatives would tell it from the
295
+ * others, and a name that depends on the position changes whenever one is
296
+ * added. A reference is not one, since its definition is named already.
297
+ */
298
+ const isStructural = (member) => isObject(member) &&
299
+ (hasMembers(member) ||
300
+ isClosed(member) ||
301
+ isStructural(member.items) ||
302
+ isStructural(member.additionalProperties) ||
303
+ ['anyOf', 'oneOf'].some((keyword) => Array.isArray(member[keyword]) && member[keyword].some(isStructural)));
288
304
  const isClosed = (node) => node.type === 'object' && node.additionalProperties === false;
289
305
  const pascal = (text) => text
290
306
  .split(/[^A-Za-z0-9]+/)
@@ -368,7 +384,8 @@ const nameInlineObjects = (document) => {
368
384
  child(node.additionalProperties, 'Value');
369
385
  for (const keyword of ['anyOf', 'oneOf']) {
370
386
  if (Array.isArray(node[keyword])) {
371
- node[keyword].forEach((member, index) => child(member, `Option${index + 1}`));
387
+ const only = node[keyword].filter(isStructural).length === 1 && !taken.has(self);
388
+ node[keyword].forEach((member, index) => child(member, only ? '' : `Option${index + 1}`));
372
389
  }
373
390
  }
374
391
  };
@@ -378,15 +395,19 @@ const nameInlineObjects = (document) => {
378
395
  /**
379
396
  * Reshapes a schema so the typings `json-schema-to-typescript` writes for it
380
397
  * stay within what jsii accepts: no `null`, no intersections, no named maps
381
- * and no inline objects.
398
+ * and no inline objects. `null` stays when `keepNull` is set.
382
399
  */
383
- export const jsiiSchema = (schema) => {
400
+ export const jsiiSchema = (schema, { keepNull = false } = {}) => {
384
401
  if (!isObject(schema)) {
385
402
  return schema;
386
403
  }
387
404
  let document = structuredClone(schema);
388
- document = mapSchema(document, stripNull);
389
- document = mapSchema(document, unnull);
405
+ // shortcut: a member that only allows null, and type ['object', 'null'] with
406
+ // members, still fail jsii under keepNull; handle them when a schema needs it.
407
+ if (!keepNull) {
408
+ document = mapSchema(document, stripNull);
409
+ document = mapSchema(document, unnull);
410
+ }
390
411
  document = mapSchema(document, flatten(document));
391
412
  document = mapSchema(document, untuple);
392
413
  document = mapSchema(document, mapify);
package/dist/jsii.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"jsii.js","sourceRoot":"","sources":["../src/jsii.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsii.js","sourceRoot":"","sources":["../src/jsii.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "schemastore-to-typescript",
3
- "version": "1.2.1",
3
+ "version": "1.3.0",
4
4
  "description": "Fetch JSON schemas from the JSON Schema Store catalog and compile them to TypeScript typings",
5
5
  "keywords": [
6
6
  "cli",
@@ -50,10 +50,10 @@
50
50
  "keyv-file": "5.3.5"
51
51
  },
52
52
  "devDependencies": {
53
- "@langri-sha/eslint-config": "0.11.0",
53
+ "@langri-sha/eslint-config": "0.12.0",
54
54
  "@langri-sha/lint-staged": "0.9.11",
55
55
  "@langri-sha/prettier": "0.4.11",
56
- "@langri-sha/projen-project": "0.48.0",
56
+ "@langri-sha/projen-project": "0.48.1",
57
57
  "@langri-sha/tsconfig": "1.1.1",
58
58
  "@langri-sha/vitest": "0.2.3",
59
59
  "@types/debug": "4.1.13",
package/readme.md CHANGED
@@ -64,6 +64,17 @@ The mode changes the shape of types only as far as jsii requires:
64
64
  the typings as they are, tagged `@jsii ignore`, so the assembly leaves them
65
65
  out
66
66
 
67
+ Pass `--keep-null` (`keepNull: true`), which implies `--jsii`, when `null` means
68
+ something in the schema, such as Renovate's use of it to clear an inherited
69
+ value. Types keep their `| null`, as in the default output, and `unknown` is
70
+ written `any`. jsii rejects such a type unless the jsii build sets
71
+ `strictNullChecks: false` in its own tsconfig (`jsii.tsconfig`), with
72
+ `jsii.validateTsconfig` set to `minimal`, since jsii's generated tsconfig and
73
+ its stricter checks require `true`. jsii then reads `T | null` as `T`, and would
74
+ read `unknown` as a JSON object, which is why the option writes `any`. A member
75
+ that can only be `null`, and `type: ['object', 'null']` with members, still fail
76
+ jsii.
77
+
67
78
  ## Contributing
68
79
 
69
80
  See [CONTRIBUTING.md] in `langri-sha/github`.