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 +121 -1
- package/CHANGELOG.md +36 -2
- package/dist/cli.js +11 -5
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +12 -2
- package/dist/index.js +35 -27
- package/dist/index.js.map +1 -1
- package/dist/jsii.d.ts +4 -2
- package/dist/jsii.js +26 -7
- package/dist/jsii.js.map +1 -1
- package/dist/url.d.ts +2 -0
- package/dist/url.js +4 -0
- package/dist/url.js.map +1 -0
- package/package.json +9 -9
- package/readme.md +25 -0
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,127 @@
|
|
|
2
2
|
"name": "schemastore-to-typescript",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
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
|
|
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:
|
|
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, {
|
|
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;
|
|
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
|
-
*
|
|
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
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
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: ${
|
|
171
|
-
schema = await fetchWithRetry(
|
|
175
|
+
debug(`Fetching schema from: ${schemaUrl}`);
|
|
176
|
+
schema = await fetchWithRetry(schemaUrl);
|
|
172
177
|
if (typeof schema === 'object' && schema !== null) {
|
|
173
|
-
schema.title = typeName ?? catalogSchema
|
|
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 ${
|
|
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 ${
|
|
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 ${
|
|
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,
|
|
199
|
+
if (!jsii && !keepNull) {
|
|
200
|
+
return compileSource(normalized, schemaName);
|
|
195
201
|
}
|
|
196
|
-
return jsiiTypings(await compileSource(jsiiSchema(normalized),
|
|
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":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,WAAW,MAAM,OAAO,CAAA;AAC/B,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,GAAG,EAAE,EAAE,SAAS,EAAE,MAAM,KAAK,CAAA;AACpC,OAAO,EAEL,OAAO,IAAI,aAAa,GACzB,MAAM,2BAA2B,CAAA;AAClC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,OAAO,EACL,eAAe,IAAI,mBAAmB,EACtC,UAAU,EACV,WAAW,GACZ,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;
|
|
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
|
|
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].
|
|
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
|
-
|
|
391
|
-
|
|
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
package/dist/url.js
ADDED
package/dist/url.js.map
ADDED
|
@@ -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.
|
|
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.
|
|
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.
|
|
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.
|
|
57
|
-
"@langri-sha/tsconfig": "
|
|
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.
|
|
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.
|
|
67
|
+
"skills": "1.7.6",
|
|
68
68
|
"tsx": "4.23.15",
|
|
69
|
-
"typescript": "
|
|
69
|
+
"typescript": "6.0.3",
|
|
70
70
|
"vitest": "5.0.5"
|
|
71
71
|
},
|
|
72
|
-
"packageManager": "pnpm@12.
|
|
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`.
|