@typespec/json-schema 0.46.0-dev.2 → 0.46.0-dev.4
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/dist/src/index.d.ts +10 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +20 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/json-schema-emitter.d.ts.map +1 -1
- package/dist/src/json-schema-emitter.js +24 -6
- package/dist/src/json-schema-emitter.js.map +1 -1
- package/lib/main.tsp +28 -0
- package/package.json +3 -3
package/dist/src/index.d.ts
CHANGED
|
@@ -33,4 +33,14 @@ export declare function $contentSchema(context: DecoratorContext, target: String
|
|
|
33
33
|
export declare function getContentSchema(program: Program, target: Type): any;
|
|
34
34
|
export declare function $prefixItems(context: DecoratorContext, target: Model | ModelProperty, value: Tuple): void;
|
|
35
35
|
export declare function getPrefixItems(program: Program, target: Type): Tuple | undefined;
|
|
36
|
+
export interface ExtensionRecord {
|
|
37
|
+
key: string;
|
|
38
|
+
value: Type;
|
|
39
|
+
}
|
|
40
|
+
export declare function $extension(context: DecoratorContext, target: Type, key: string, value: Type): void;
|
|
41
|
+
export declare function getExtensions(program: Program, target: Type): ExtensionRecord[];
|
|
42
|
+
export declare function $validatesRawJson(context: DecoratorContext, target: Model, value: Type): void;
|
|
43
|
+
export declare namespace $validatesRawJson {
|
|
44
|
+
var namespace: string;
|
|
45
|
+
}
|
|
36
46
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,IAAI,EACJ,KAAK,EACL,aAAa,EACb,SAAS,EACT,OAAO,EACP,MAAM,EACN,aAAa,EACb,KAAK,EACL,IAAI,EACJ,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { typespecTypeToJson, } from "@typespec/compiler";
|
|
1
2
|
import { JsonSchemaEmitter } from "./json-schema-emitter.js";
|
|
2
3
|
import { createStateSymbol } from "./lib.js";
|
|
3
4
|
export { $lib } from "./lib.js";
|
|
@@ -129,4 +130,23 @@ export function $prefixItems(context, target, value) {
|
|
|
129
130
|
export function getPrefixItems(program, target) {
|
|
130
131
|
return program.stateMap(prefixItemsKey).get(target);
|
|
131
132
|
}
|
|
133
|
+
const extensionsKey = createStateSymbol("JsonSchema.extension");
|
|
134
|
+
export function $extension(context, target, key, value) {
|
|
135
|
+
const stateMap = context.program.stateMap(extensionsKey);
|
|
136
|
+
const extensions = stateMap.has(target)
|
|
137
|
+
? stateMap.get(target)
|
|
138
|
+
: stateMap.set(target, []).get(target);
|
|
139
|
+
extensions.push({ key, value });
|
|
140
|
+
}
|
|
141
|
+
export function getExtensions(program, target) {
|
|
142
|
+
var _a;
|
|
143
|
+
return (_a = program.stateMap(extensionsKey).get(target)) !== null && _a !== void 0 ? _a : [];
|
|
144
|
+
}
|
|
145
|
+
export function $validatesRawJson(context, target, value) {
|
|
146
|
+
const [_, diagnostics] = typespecTypeToJson(value, target);
|
|
147
|
+
if (diagnostics.length > 0) {
|
|
148
|
+
context.program.reportDiagnostics(diagnostics);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
$validatesRawJson.namespace = "Private";
|
|
132
152
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-schema-emitter.d.ts","sourceRoot":"","sources":["../../src/json-schema-emitter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,IAAI,EAgBJ,aAAa,EACb,KAAK,EACL,aAAa,EACb,cAAc,EACd,OAAO,EACP,MAAM,EACN,aAAa,EACb,IAAI,
|
|
1
|
+
{"version":3,"file":"json-schema-emitter.d.ts","sourceRoot":"","sources":["../../src/json-schema-emitter.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
4
4
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
5
5
|
};
|
|
6
6
|
var _JsonSchemaEmitter_instances, _JsonSchemaEmitter_seenIds, _JsonSchemaEmitter_requiredModelProperties, _JsonSchemaEmitter_applyConstraints, _JsonSchemaEmitter_scalarBuiltinBaseType, _JsonSchemaEmitter_isStdType, _JsonSchemaEmitter_getCurrentSourceFile, _JsonSchemaEmitter_getDeclId, _JsonSchemaEmitter_checkForDuplicateId, _JsonSchemaEmitter_newFileScope, _JsonSchemaEmitter_fileExtension;
|
|
7
|
-
import { getDeprecated, getDirectoryPath, getDoc, getFormat, getMaxItems, getMaxLength, getMaxValue, getMaxValueExclusive, getMinItems, getMinLength, getMinValue, getMinValueExclusive, getPattern, getRelativePathFromDirectory, getSummary, } from "@typespec/compiler";
|
|
7
|
+
import { getDeprecated, getDirectoryPath, getDoc, getFormat, getMaxItems, getMaxLength, getMaxValue, getMaxValueExclusive, getMinItems, getMinLength, getMinValue, getMinValueExclusive, getPattern, getRelativePathFromDirectory, getSummary, typespecTypeToJson, } from "@typespec/compiler";
|
|
8
8
|
import { ArrayBuilder, ObjectBuilder, Placeholder, TypeEmitter, } from "@typespec/compiler/emitter-framework";
|
|
9
9
|
import yaml from "js-yaml";
|
|
10
|
-
import { findBaseUri, getContains, getContentEncoding, getContentMediaType, getContentSchema, getId, getMaxContains, getMaxProperties, getMinContains, getMinProperties, getMultipleOf, getPrefixItems, getUniqueItems, } from "./index.js";
|
|
10
|
+
import { findBaseUri, getContains, getContentEncoding, getContentMediaType, getContentSchema, getExtensions, getId, getMaxContains, getMaxProperties, getMinContains, getMinProperties, getMultipleOf, getPrefixItems, getUniqueItems, } from "./index.js";
|
|
11
11
|
export class JsonSchemaEmitter extends TypeEmitter {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
@@ -94,19 +94,23 @@ export class JsonSchemaEmitter extends TypeEmitter {
|
|
|
94
94
|
enumValues.add((_a = member.value) !== null && _a !== void 0 ? _a : member.name);
|
|
95
95
|
}
|
|
96
96
|
const enumTypesArray = [...enumTypes];
|
|
97
|
-
|
|
97
|
+
const withConstraints = new ObjectBuilder({
|
|
98
98
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
99
99
|
$id: __classPrivateFieldGet(this, _JsonSchemaEmitter_instances, "m", _JsonSchemaEmitter_getDeclId).call(this, en),
|
|
100
100
|
type: enumTypesArray.length === 1 ? enumTypesArray[0] : enumTypesArray,
|
|
101
101
|
enum: [...enumValues],
|
|
102
|
-
})
|
|
102
|
+
});
|
|
103
|
+
__classPrivateFieldGet(this, _JsonSchemaEmitter_instances, "m", _JsonSchemaEmitter_applyConstraints).call(this, en, withConstraints);
|
|
104
|
+
return this.emitter.result.declaration(name, withConstraints);
|
|
103
105
|
}
|
|
104
106
|
unionDeclaration(union, name) {
|
|
105
|
-
|
|
107
|
+
const withConstraints = new ObjectBuilder({
|
|
106
108
|
$schema: "https://json-schema.org/draft/2020-12/schema",
|
|
107
109
|
$id: __classPrivateFieldGet(this, _JsonSchemaEmitter_instances, "m", _JsonSchemaEmitter_getDeclId).call(this, union),
|
|
108
110
|
anyOf: this.emitter.emitUnionVariants(union),
|
|
109
|
-
})
|
|
111
|
+
});
|
|
112
|
+
__classPrivateFieldGet(this, _JsonSchemaEmitter_instances, "m", _JsonSchemaEmitter_applyConstraints).call(this, union, withConstraints);
|
|
113
|
+
return this.emitter.result.declaration(name, withConstraints);
|
|
110
114
|
}
|
|
111
115
|
unionLiteral(union) {
|
|
112
116
|
this.emitter.getProgram().resolveTypeReference("Cadl.Foo");
|
|
@@ -373,6 +377,7 @@ _JsonSchemaEmitter_seenIds = new WeakMap(), _JsonSchemaEmitter_instances = new W
|
|
|
373
377
|
}
|
|
374
378
|
return requiredProps.length > 0 ? requiredProps : undefined;
|
|
375
379
|
}, _JsonSchemaEmitter_applyConstraints = function _JsonSchemaEmitter_applyConstraints(type, schema) {
|
|
380
|
+
var _a;
|
|
376
381
|
const applyConstraint = (fn, key) => {
|
|
377
382
|
const value = fn(this.emitter.getProgram(), type);
|
|
378
383
|
if (value !== undefined) {
|
|
@@ -424,6 +429,19 @@ _JsonSchemaEmitter_seenIds = new WeakMap(), _JsonSchemaEmitter_instances = new W
|
|
|
424
429
|
}
|
|
425
430
|
schema.set("prefixItems", prefixItemsSchema);
|
|
426
431
|
}
|
|
432
|
+
const extensions = getExtensions(this.emitter.getProgram(), type);
|
|
433
|
+
for (const extension of extensions) {
|
|
434
|
+
// todo: fix up when we have an authoritative way to ask "am I an instantiation of that template"
|
|
435
|
+
if (extension.value.kind === "Model" &&
|
|
436
|
+
extension.value.name === "Json" &&
|
|
437
|
+
((_a = extension.value.namespace) === null || _a === void 0 ? void 0 : _a.name) === "JsonSchema") {
|
|
438
|
+
// we check in a decorator
|
|
439
|
+
schema.set(extension.key, typespecTypeToJson(extension.value.properties.get("value").type, null)[0]);
|
|
440
|
+
}
|
|
441
|
+
else {
|
|
442
|
+
schema.set(extension.key, this.emitter.emitTypeReference(extension.value));
|
|
443
|
+
}
|
|
444
|
+
}
|
|
427
445
|
}, _JsonSchemaEmitter_scalarBuiltinBaseType = function _JsonSchemaEmitter_scalarBuiltinBaseType(scalar) {
|
|
428
446
|
let current = scalar;
|
|
429
447
|
while (current.baseScalar && !__classPrivateFieldGet(this, _JsonSchemaEmitter_instances, "m", _JsonSchemaEmitter_isStdType).call(this, current)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-schema-emitter.js","sourceRoot":"","sources":["../../src/json-schema-emitter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json-schema-emitter.js","sourceRoot":"","sources":["../../src/json-schema-emitter.ts"],"names":[],"mappings":"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"}
|
package/lib/main.tsp
CHANGED
|
@@ -109,6 +109,18 @@ extern dec contentMediaType(target: string | Reflection.ModelProperty, value: va
|
|
|
109
109
|
*/
|
|
110
110
|
extern dec contentSchema(target: string | Reflection.ModelProperty, value: unknown);
|
|
111
111
|
|
|
112
|
+
/**
|
|
113
|
+
* Specify a custom property to add to the emitted schema. Useful for adding custom keywords
|
|
114
|
+
* and other vendor-specific extensions. The value will be converted to a schema unless the parameter
|
|
115
|
+
* is wrapped in the `Json<T>` template. For example, `@extension("x-schema", { x: "value" })` will
|
|
116
|
+
* emit a JSON schema value for `x-schema`, whereas `@extension("x-schema", Json<{x: "value"}>)` will
|
|
117
|
+
* emit the raw JSON code `{x: "value"}`.
|
|
118
|
+
*
|
|
119
|
+
* @param key the name of the keyword of vendor extension, e.g. `x-custom`.
|
|
120
|
+
* @param value the value of the keyword. Will be converted to a schema unless wrapped in Json<T>.
|
|
121
|
+
*/
|
|
122
|
+
extern dec extension(target: unknown, key: valueof string, value: unknown);
|
|
123
|
+
|
|
112
124
|
enum Format {
|
|
113
125
|
dateTime: "date-time",
|
|
114
126
|
date: "date",
|
|
@@ -129,3 +141,19 @@ enum Format {
|
|
|
129
141
|
relativeJsonPointer: "relative-json-pointer",
|
|
130
142
|
regex: "regex",
|
|
131
143
|
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Specify that the provided template argument should be emitted as raw JSON or YAML
|
|
147
|
+
* as opposed to a schema. Use in combination with the @extension decorator. For example,
|
|
148
|
+
* `@extension("x-schema", { x: "value" })` will emit a JSON schema value for `x-schema`,
|
|
149
|
+
* whereas `@extension("x-schema", Json<{x: "value"}>)` will emit the raw JSON code
|
|
150
|
+
* `{x: "value"}`.
|
|
151
|
+
*/
|
|
152
|
+
@Private.validatesRawJson(T)
|
|
153
|
+
model Json<T> {
|
|
154
|
+
value: T;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
namespace Private {
|
|
158
|
+
extern dec validatesRawJson(target: Reflection.Model, value: unknown);
|
|
159
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typespec/json-schema",
|
|
3
|
-
"version": "0.46.0-dev.
|
|
3
|
+
"version": "0.46.0-dev.4",
|
|
4
4
|
"author": "Microsoft Corporation",
|
|
5
5
|
"description": "TypeSpec library for emitting TypeSpec to JSON Schema and converting JSON Schema to TypeSpec",
|
|
6
6
|
"homepage": "https://github.com/microsoft/typespec",
|
|
@@ -45,9 +45,9 @@
|
|
|
45
45
|
"mocha": "~10.2.0",
|
|
46
46
|
"mocha-junit-reporter": "~2.2.0",
|
|
47
47
|
"mocha-multi-reporters": "~1.5.1",
|
|
48
|
-
"c8": "~7.
|
|
48
|
+
"c8": "~7.14.0",
|
|
49
49
|
"rimraf": "~5.0.0",
|
|
50
|
-
"typescript": "~5.
|
|
50
|
+
"typescript": "~5.1.3",
|
|
51
51
|
"ajv": "~8.12.0",
|
|
52
52
|
"@types/js-yaml": "~4.0.1",
|
|
53
53
|
"@typespec/internal-build-utils": "~0.4.2 || >=0.5.0-dev <0.5.0",
|