schemastore-to-typescript 1.2.2 → 1.4.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,127 @@
2
2
  "name": "schemastore-to-typescript",
3
3
  "entries": [
4
4
  {
5
- "date": "Sun, 01 Nov 2026 09:09:37 GMT",
5
+ "date": "Mon, 09 Nov 2026 14:18:17 GMT",
6
+ "version": "1.4.0",
7
+ "tag": "schemastore-to-typescript_v1.4.0",
8
+ "comments": {
9
+ "none": [
10
+ {
11
+ "author": "filip.dupanovic@gmail.com",
12
+ "package": "schemastore-to-typescript",
13
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
14
+ "comment": "Upgrade @langri-sha/projen-project to 0.51.0"
15
+ },
16
+ {
17
+ "author": "filip.dupanovic@gmail.com",
18
+ "package": "schemastore-to-typescript",
19
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
20
+ "comment": "Upgrade to TypeScript 6"
21
+ }
22
+ ],
23
+ "minor": [
24
+ {
25
+ "author": "filip.dupanovic@gmail.com",
26
+ "package": "schemastore-to-typescript",
27
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
28
+ "comment": "Compile a schema from its https URL, as well as from its catalog name"
29
+ }
30
+ ],
31
+ "patch": [
32
+ {
33
+ "author": "email not defined",
34
+ "package": "schemastore-to-typescript",
35
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
36
+ "comment": "Update dependency @langri-sha/projen-project to v0.49.0"
37
+ },
38
+ {
39
+ "author": "email not defined",
40
+ "package": "schemastore-to-typescript",
41
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
42
+ "comment": "Update dependency @langri-sha/tsconfig to v3"
43
+ },
44
+ {
45
+ "author": "email not defined",
46
+ "package": "schemastore-to-typescript",
47
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
48
+ "comment": "Update dependency @langri-sha/projen-project to v0.49.2"
49
+ },
50
+ {
51
+ "author": "email not defined",
52
+ "package": "schemastore-to-typescript",
53
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
54
+ "comment": "Update dependency @langri-sha/tsconfig to v2"
55
+ },
56
+ {
57
+ "author": "email not defined",
58
+ "package": "schemastore-to-typescript",
59
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
60
+ "comment": "Update dependency @langri-sha/projen-project to v0.48.2"
61
+ },
62
+ {
63
+ "author": "email not defined",
64
+ "package": "schemastore-to-typescript",
65
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
66
+ "comment": "Update dependency pnpm to v12.18.0"
67
+ },
68
+ {
69
+ "author": "email not defined",
70
+ "package": "schemastore-to-typescript",
71
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
72
+ "comment": "Update dependency got to v16.2.0"
73
+ },
74
+ {
75
+ "author": "email not defined",
76
+ "package": "schemastore-to-typescript",
77
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
78
+ "comment": "Update dependency @langri-sha/projen-project to v0.48.3"
79
+ },
80
+ {
81
+ "author": "email not defined",
82
+ "package": "schemastore-to-typescript",
83
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
84
+ "comment": "Update dependency pnpm to v12.17.0"
85
+ },
86
+ {
87
+ "author": "email not defined",
88
+ "package": "schemastore-to-typescript",
89
+ "commit": "299736e72267bac65189693fb68ed6b734030060",
90
+ "comment": "Update dependency @langri-sha/projen-project to v0.52.0"
91
+ }
92
+ ]
93
+ }
94
+ },
95
+ {
96
+ "date": "Sun, 01 Nov 2026 16:59:00 GMT",
97
+ "version": "1.3.0",
98
+ "tag": "schemastore-to-typescript_v1.3.0",
99
+ "comments": {
100
+ "minor": [
101
+ {
102
+ "author": "filip.dupanovic@gmail.com",
103
+ "package": "schemastore-to-typescript",
104
+ "commit": "afaf67fe0c1f1c826292bed5a8c6f85d06d544db",
105
+ "comment": "Add an option to keep null in jsii mode"
106
+ },
107
+ {
108
+ "author": "filip.dupanovic@gmail.com",
109
+ "package": "schemastore-to-typescript",
110
+ "commit": "afaf67fe0c1f1c826292bed5a8c6f85d06d544db",
111
+ "comment": "Name the only object among the alternatives without its position in jsii mode"
112
+ }
113
+ ],
114
+ "patch": [
115
+ {
116
+ "author": "filip.dupanovic@gmail.com",
117
+ "package": "schemastore-to-typescript",
118
+ "commit": "afaf67fe0c1f1c826292bed5a8c6f85d06d544db",
119
+ "comment": "Keep the value type of a map that refers to a definition in jsii mode"
120
+ }
121
+ ]
122
+ }
123
+ },
124
+ {
125
+ "date": "Sun, 01 Nov 2026 09:09:47 GMT",
6
126
  "version": "1.2.2",
7
127
  "tag": "schemastore-to-typescript_v1.2.2",
8
128
  "comments": {
package/CHANGELOG.md CHANGED
@@ -1,12 +1,46 @@
1
1
  # Change Log - schemastore-to-typescript
2
2
 
3
- <!-- This log was last generated on Sun, 01 Nov 2026 09:09:37 GMT and should not be manually modified. -->
3
+ <!-- This log was last generated on Mon, 09 Nov 2026 14:18:17 GMT and should not be manually modified. -->
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## 1.4.0
8
+
9
+ Mon, 09 Nov 2026 14:18:17 GMT
10
+
11
+ ### Minor changes
12
+
13
+ - Compile a schema from its https URL, as well as from its catalog name (filip.dupanovic@gmail.com)
14
+
15
+ ### Patches
16
+
17
+ - Update dependency @langri-sha/projen-project to v0.49.0
18
+ - Update dependency @langri-sha/tsconfig to v3
19
+ - Update dependency @langri-sha/projen-project to v0.49.2
20
+ - Update dependency @langri-sha/tsconfig to v2
21
+ - Update dependency @langri-sha/projen-project to v0.48.2
22
+ - Update dependency pnpm to v12.18.0
23
+ - Update dependency got to v16.2.0
24
+ - Update dependency @langri-sha/projen-project to v0.48.3
25
+ - Update dependency pnpm to v12.17.0
26
+ - Update dependency @langri-sha/projen-project to v0.52.0
27
+
28
+ ## 1.3.0
29
+
30
+ Sun, 01 Nov 2026 16:59:00 GMT
31
+
32
+ ### Minor changes
33
+
34
+ - Add an option to keep null in jsii mode (filip.dupanovic@gmail.com)
35
+ - Name the only object among the alternatives without its position in jsii mode (filip.dupanovic@gmail.com)
36
+
37
+ ### Patches
38
+
39
+ - Keep the value type of a map that refers to a definition in jsii mode (filip.dupanovic@gmail.com)
40
+
7
41
  ## 1.2.2
8
42
 
9
- Sun, 01 Nov 2026 09:09:37 GMT
43
+ Sun, 01 Nov 2026 09:09:47 GMT
10
44
 
11
45
  ### Patches
12
46
 
package/dist/cli.js CHANGED
@@ -1,23 +1,29 @@
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
+ import { isSchemaUrl, urlName } from './url.js';
7
8
  import { compile } from './index.js';
8
9
  const debug = createDebug('schema-store-to-typescript');
9
10
  export const program = new Command()
10
11
  .name('schemastore-to-typescript')
11
12
  .description('Compile a JSON schema store schema to TypeScript definitions')
12
- .argument('<schema>', 'JSON schema store schema')
13
+ .argument('<schema>', 'JSON schema store schema name, or the https URL of a JSON schema')
13
14
  .argument('[output]', 'Path to output the TypeScript definition')
14
15
  .option('-n, --no-cache', 'Skip caching requests')
15
16
  .option('--jsii', 'Emit typings that jsii can compile')
17
+ .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
18
  .option('--type-name <name>', 'Name the root interface')
17
19
  .showHelpAfterError()
18
- .action(async (schema, output, { cache, jsii, typeName }) => {
19
- output ??= `${schema}.d.ts`;
20
- const compiled = await compile(schema, cache, { jsii, typeName });
20
+ .action(async (schema, output, { cache, jsii, keepNull, typeName }) => {
21
+ output ??= `${isSchemaUrl(schema) ? urlName(schema) : schema}.d.ts`;
22
+ const compiled = await compile(schema, cache, {
23
+ jsii,
24
+ keepNull,
25
+ typeName,
26
+ });
21
27
  await fs.writeFile(
22
28
  // Using `process.cwd()` as escape hatch for `process.chdir()` not being
23
29
  // 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,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAE/C,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,CACP,UAAU,EACV,kEAAkE,CACnE;KACA,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,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAA;IAEnE,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
@@ -4,8 +4,18 @@ export interface CompileOptions {
4
4
  */
5
5
  jsii?: boolean;
6
6
  /**
7
- * Name the root interface, instead of the catalog's name for the schema.
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;
15
+ /**
16
+ * Name the root interface, instead of the catalog's name for the schema, or
17
+ * the name of the file of a schema given by its URL.
8
18
  */
9
19
  typeName?: string;
10
20
  }
11
- export declare const compile: (name: string, cache?: boolean, { jsii, typeName }?: CompileOptions) => Promise<string>;
21
+ export declare const compile: (name: string, cache?: boolean, { jsii, keepNull, typeName }?: CompileOptions) => Promise<string>;
package/dist/index.js CHANGED
@@ -7,6 +7,7 @@ import Keyv from 'keyv';
7
7
  import { KeyvFile } from 'keyv-file';
8
8
  import { compilerOptions as jsiiCompilerOptions, jsiiSchema, jsiiTypings, } from './jsii.js';
9
9
  import { normalizeSchema } from './normalize.js';
10
+ import { isSchemaUrl, urlName } from './url.js';
10
11
  const debug = createDebug('schema-store-to-typescript');
11
12
  const paths = envPaths('schemastore-to-typescript');
12
13
  const store = new KeyvFile({
@@ -113,7 +114,7 @@ const sanitizeSchema = (node, isRoot = true) => {
113
114
  }
114
115
  return sanitized;
115
116
  };
116
- export const compile = async (name, cache = true, { jsii = false, typeName } = {}) => {
117
+ export const compile = async (name, cache = true, { jsii = false, keepNull = false, typeName } = {}) => {
117
118
  const catalogUrl = 'https://www.schemastore.org/api/json/catalog.json';
118
119
  let catalog;
119
120
  let schema;
@@ -146,53 +147,60 @@ export const compile = async (name, cache = true, { jsii = false, typeName } = {
146
147
  throw e;
147
148
  }
148
149
  };
149
- try {
150
- // First, fetch the catalog
151
- catalog = await fetchWithRetry(catalogUrl);
152
- }
153
- catch (e) {
154
- debug(e);
155
- if (e instanceof HTTPError) {
156
- throw new Error(`Couldn't retrieve catalog from ${catalogUrl}. [${e.code}]`, { cause: e });
150
+ let catalogSchema;
151
+ if (!isSchemaUrl(name)) {
152
+ try {
153
+ // First, fetch the catalog
154
+ catalog = await fetchWithRetry(catalogUrl);
155
+ }
156
+ catch (e) {
157
+ debug(e);
158
+ if (e instanceof HTTPError) {
159
+ throw new Error(`Couldn't retrieve catalog from ${catalogUrl}. [${e.code}]`, { cause: e });
160
+ }
161
+ throw e;
162
+ }
163
+ const schemaMap = new Map();
164
+ for (const schema of catalog.schemas) {
165
+ schemaMap.set(schema.name.toLowerCase(), schema);
166
+ }
167
+ catalogSchema = schemaMap.get(name.toLowerCase());
168
+ if (!catalogSchema) {
169
+ throw new Error(`Couldn't find schema ${name} in the catalog. Are you sure it exists?`);
157
170
  }
158
- throw e;
159
- }
160
- const schemaMap = new Map();
161
- for (const schema of catalog.schemas) {
162
- schemaMap.set(schema.name.toLowerCase(), schema);
163
- }
164
- const catalogSchema = schemaMap.get(name.toLowerCase());
165
- if (!catalogSchema) {
166
- throw new Error(`Couldn't find schema ${name} in the catalog. Are you sure it exists?`);
167
171
  }
172
+ const schemaUrl = catalogSchema?.url ?? name;
168
173
  try {
169
174
  // Fetch the actual schema from the found URL
170
- debug(`Fetching schema from: ${catalogSchema.url}`);
171
- schema = await fetchWithRetry(catalogSchema.url);
175
+ debug(`Fetching schema from: ${schemaUrl}`);
176
+ schema = await fetchWithRetry(schemaUrl);
172
177
  if (typeof schema === 'object' && schema !== null) {
173
- schema.title = typeName ?? catalogSchema.name;
178
+ schema.title = typeName ?? catalogSchema?.name ?? urlName(name);
174
179
  }
175
180
  }
176
181
  catch (e) {
177
182
  debug(e);
178
183
  if (e instanceof HTTPError) {
179
184
  if (e.response.statusCode === 404) {
180
- throw new Error(`Couldn't find schema ${name} at ${catalogSchema.url}. Are you sure it exists?`, { cause: e });
185
+ throw new Error(`Couldn't find schema ${name}${catalogSchema ? ` at ${schemaUrl}` : ''}. Are you sure it exists?`, { cause: e });
181
186
  }
182
- throw new Error(`Couldn't retrieve schema from ${catalogSchema.url}. [${e.code}] Status: ${e.response.statusCode}`, { cause: e });
187
+ throw new Error(`Couldn't retrieve schema from ${schemaUrl}. [${e.code}] Status: ${e.response.statusCode}`, { cause: e });
183
188
  }
184
189
  if (e instanceof Error && e.message.includes('is not valid JSON')) {
185
- throw new Error(`Failed to parse JSON from ${catalogSchema.url}. The server might be returning invalid or compressed content. Error: ${e.message}`, { cause: e });
190
+ throw new Error(`Failed to parse JSON from ${schemaUrl}. The server might be returning invalid or compressed content. Error: ${e.message}`, { cause: e });
186
191
  }
187
192
  throw e;
188
193
  }
189
194
  if (cache) {
190
195
  await flushCache();
191
196
  }
197
+ const schemaName = catalogSchema ? name : urlName(name);
192
198
  const normalized = sanitizeSchema(normalizeSchema(schema));
193
- if (!jsii) {
194
- return compileSource(normalized, name);
199
+ if (!jsii && !keepNull) {
200
+ return compileSource(normalized, schemaName);
195
201
  }
196
- return jsiiTypings(await compileSource(jsiiSchema(normalized), name, jsiiCompilerOptions));
202
+ return jsiiTypings(await compileSource(jsiiSchema(normalized, { keepNull }), schemaName, keepNull
203
+ ? { ...jsiiCompilerOptions, unknownAny: false }
204
+ : jsiiCompilerOptions));
197
205
  };
198
206
  //# 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
@@ -209,10 +209,11 @@ const isMap = (node) => isObject(node) &&
209
209
  /**
210
210
  * A named interface cannot be a map (JSII1999), but a map type can stand in
211
211
  * a member's type. Restate every member-less object as one, without the name
212
- * 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.
213
214
  */
214
215
  const mapify = (node) => {
215
- if (!isMap(node)) {
216
+ if (!isMap(node) || typeof node.$ref === 'string') {
216
217
  return node;
217
218
  }
218
219
  const patterns = isObject(node.patternProperties)
@@ -287,6 +288,19 @@ const inlineMaps = (document) => {
287
288
  * spelled in capitals alone, such as `SDK`.
288
289
  */
289
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)));
290
304
  const isClosed = (node) => node.type === 'object' && node.additionalProperties === false;
291
305
  const pascal = (text) => text
292
306
  .split(/[^A-Za-z0-9]+/)
@@ -370,7 +384,8 @@ const nameInlineObjects = (document) => {
370
384
  child(node.additionalProperties, 'Value');
371
385
  for (const keyword of ['anyOf', 'oneOf']) {
372
386
  if (Array.isArray(node[keyword])) {
373
- 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}`));
374
389
  }
375
390
  }
376
391
  };
@@ -380,15 +395,19 @@ const nameInlineObjects = (document) => {
380
395
  /**
381
396
  * Reshapes a schema so the typings `json-schema-to-typescript` writes for it
382
397
  * stay within what jsii accepts: no `null`, no intersections, no named maps
383
- * and no inline objects.
398
+ * and no inline objects. `null` stays when `keepNull` is set.
384
399
  */
385
- export const jsiiSchema = (schema) => {
400
+ export const jsiiSchema = (schema, { keepNull = false } = {}) => {
386
401
  if (!isObject(schema)) {
387
402
  return schema;
388
403
  }
389
404
  let document = structuredClone(schema);
390
- document = mapSchema(document, stripNull);
391
- 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
+ }
392
411
  document = mapSchema(document, flatten(document));
393
412
  document = mapSchema(document, untuple);
394
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/dist/url.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const isSchemaUrl: (schema: string) => boolean;
2
+ export declare const urlName: (url: string) => string;
package/dist/url.js ADDED
@@ -0,0 +1,4 @@
1
+ import * as path from 'node:path';
2
+ export const isSchemaUrl = (schema) => /^https:\/\//i.test(schema);
3
+ export const urlName = (url) => path.posix.basename(new URL(url).pathname).replace(/\.[^.]*$/, '');
4
+ //# sourceMappingURL=url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url.js","sourceRoot":"","sources":["../src/url.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAW,EAAE,CACrD,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAE7B,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAW,EAAU,EAAE,CAC7C,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "schemastore-to-typescript",
3
- "version": "1.2.2",
3
+ "version": "1.4.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",
@@ -44,32 +44,32 @@
44
44
  "debug": "4.4.3",
45
45
  "env-paths": "4.0.0",
46
46
  "es-main": "1.4.0",
47
- "got": "16.1.0",
47
+ "got": "16.2.0",
48
48
  "json-schema-to-typescript": "16.0.0",
49
49
  "keyv": "5.6.0",
50
50
  "keyv-file": "5.3.5"
51
51
  },
52
52
  "devDependencies": {
53
- "@langri-sha/eslint-config": "0.12.0",
53
+ "@langri-sha/eslint-config": "0.13.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.1",
57
- "@langri-sha/tsconfig": "1.1.1",
56
+ "@langri-sha/projen-project": "0.52.0",
57
+ "@langri-sha/tsconfig": "3.0.0",
58
58
  "@langri-sha/vitest": "0.2.3",
59
59
  "@types/debug": "4.1.13",
60
60
  "@types/node": "24.19.2",
61
61
  "beachball": "2.66.0",
62
- "eslint": "10.13.0",
62
+ "eslint": "10.14.0",
63
63
  "husky": "9.1.7",
64
64
  "lint-staged": "17.6.0",
65
65
  "prettier": "3.9.9",
66
66
  "projen": "0.104.1",
67
- "skills": "1.7.4",
67
+ "skills": "1.7.6",
68
68
  "tsx": "4.23.15",
69
- "typescript": "5.9.3",
69
+ "typescript": "6.0.3",
70
70
  "vitest": "5.0.5"
71
71
  },
72
- "packageManager": "pnpm@12.16.1",
72
+ "packageManager": "pnpm@12.18.0",
73
73
  "devEngines": {
74
74
  "runtime": {
75
75
  "name": "node",
package/readme.md CHANGED
@@ -26,6 +26,18 @@ schemastore-to-typescript 'cargo manifest' src/cargo.ts
26
26
 
27
27
  Downloads are cached; pass `--no-cache` to skip the cache.
28
28
 
29
+ An `https` URL takes the place of the name, to compile a schema at a fixed
30
+ location, such as a file of a tagged release, without the catalog. The options
31
+ apply as they do to a name, and the output defaults to `<file>.d.ts`. Without
32
+ `--type-name`, the root interface takes the name of its file, so pass
33
+ `--type-name` for a URL that pins a version. Only the schema itself goes through
34
+ the cache. A `$ref` to another document is left to the compiler: an absolute URL
35
+ is fetched live and a relative path is read from the working directory.
36
+
37
+ ```sh
38
+ schemastore-to-typescript https://unpkg.com/renovate@44.168.4/renovate-schema.json src/renovate.ts
39
+ ```
40
+
29
41
  The same is available as a function, which resolves to the generated module and
30
42
  takes `false` as its second argument to skip the cache:
31
43
 
@@ -35,6 +47,8 @@ import { compile } from 'schemastore-to-typescript'
35
47
  const typings = await compile('swcrc')
36
48
  ```
37
49
 
50
+ It takes a URL where the name goes, as the command does.
51
+
38
52
  ## Usage with jsii
39
53
 
40
54
  Typings exported from the API of a [jsii] package have to fit what jsii can
@@ -64,6 +78,17 @@ The mode changes the shape of types only as far as jsii requires:
64
78
  the typings as they are, tagged `@jsii ignore`, so the assembly leaves them
65
79
  out
66
80
 
81
+ Pass `--keep-null` (`keepNull: true`), which implies `--jsii`, when `null` means
82
+ something in the schema, such as Renovate's use of it to clear an inherited
83
+ value. Types keep their `| null`, as in the default output, and `unknown` is
84
+ written `any`. jsii rejects such a type unless the jsii build sets
85
+ `strictNullChecks: false` in its own tsconfig (`jsii.tsconfig`), with
86
+ `jsii.validateTsconfig` set to `minimal`, since jsii's generated tsconfig and
87
+ its stricter checks require `true`. jsii then reads `T | null` as `T`, and would
88
+ read `unknown` as a JSON object, which is why the option writes `any`. A member
89
+ that can only be `null`, and `type: ['object', 'null']` with members, still fail
90
+ jsii.
91
+
67
92
  ## Contributing
68
93
 
69
94
  See [CONTRIBUTING.md] in `langri-sha/github`.