@backstage/backend-openapi-utils 0.0.2-next.0 → 0.0.2
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.md +16 -0
- package/README.md +2 -2
- package/dist/index.d.ts +1 -7
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @backstage/backend-openapi-utils
|
|
2
2
|
|
|
3
|
+
## 0.0.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- fe16bd39e83: Use permalinks for links including a line number reference
|
|
8
|
+
- 27956d78671: Adjusted README accordingly after the generated output now has a `.generated.ts` extension
|
|
9
|
+
- 021cfbb5152: Corrected resolution of parameter nested schema to use central schemas.
|
|
10
|
+
- 799c33047ed: Updated README to reflect changes in `@backstage/repo-tools`.
|
|
11
|
+
|
|
12
|
+
## 0.0.2-next.1
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- fe16bd39e83: Use permalinks for links including a line number reference
|
|
17
|
+
- 021cfbb5152: Corrected resolution of parameter nested schema to use central schemas.
|
|
18
|
+
|
|
3
19
|
## 0.0.2-next.0
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ This package is meant to provide a typed Express router for an OpenAPI spec. Bas
|
|
|
8
8
|
|
|
9
9
|
### Configuration
|
|
10
10
|
|
|
11
|
-
1. Run `yarn --cwd <package-dir> backstage-cli package schema
|
|
11
|
+
1. Run `yarn --cwd <package-dir> backstage-cli package schema openapi generate` to translate your `src/schema/openapi.yaml` to a new Typescript file in `src/schema/openapi.generated.ts`. The command will try to execute both a lint and prettier step on the generated file, where applicable.
|
|
12
12
|
|
|
13
13
|
2. In your plugin's `src/service/createRouter.ts`,
|
|
14
14
|
|
|
@@ -42,4 +42,4 @@ Router() as ApiRouter<DeepWriteable<typeof spec>>
|
|
|
42
42
|
|
|
43
43
|
### Runtime validation
|
|
44
44
|
|
|
45
|
-
Using a package like [`express-openapi-validator`](https://www.npmjs.com/package/express-openapi-validator), would allow us to remove [validation of request bodies with `AJV`](https://github.com/backstage/backstage/blob/
|
|
45
|
+
Using a package like [`express-openapi-validator`](https://www.npmjs.com/package/express-openapi-validator), would allow us to remove [validation of request bodies with `AJV`](https://github.com/backstage/backstage/blob/e0506af8fc54074a160fb91c83d6cae8172d3bb3/plugins/catalog-backend/src/service/util.ts#L58). However, `AJV` currently doesn't have support for OpenAPI 3.1 and `express-openapi-validator` enforces full URL matching for paths, meaning it cannot be mounted at the router level.
|
package/dist/index.d.ts
CHANGED
|
@@ -287,11 +287,7 @@ type DocParameters<Doc extends RequiredDoc, Path extends Extract<keyof Doc['path
|
|
|
287
287
|
/**
|
|
288
288
|
* @public
|
|
289
289
|
*/
|
|
290
|
-
type
|
|
291
|
-
/**
|
|
292
|
-
* @public
|
|
293
|
-
*/
|
|
294
|
-
type ParameterSchema<Doc extends RequiredDoc, Schema extends ImmutableParameterObject['schema']> = ResolveDocParameterSchema<Doc, Schema> extends infer R ? R extends ImmutableSchemaObject ? R extends JSONSchema7 ? FromSchema<R> : never : never : never;
|
|
290
|
+
type ParameterSchema<Doc extends RequiredDoc, Schema extends ImmutableParameterObject['schema']> = SchemaRef<Doc, Schema> extends infer R ? R extends ImmutableSchemaObject ? R extends JSONSchema7 ? FromSchema<R> : never : never : never;
|
|
295
291
|
/**
|
|
296
292
|
* @public
|
|
297
293
|
*/
|
|
@@ -438,7 +434,6 @@ type index_d_ImmutablePathObject = ImmutablePathObject;
|
|
|
438
434
|
type index_d_ImmutableSchemaObject = ImmutableSchemaObject;
|
|
439
435
|
type index_d_DocParameter<Doc extends RequiredDoc, Path extends Extract<keyof Doc['paths'], string>, Method extends keyof Doc['paths'][Path], Parameter extends keyof Doc['paths'][Path][Method]['parameters']> = DocParameter<Doc, Path, Method, Parameter>;
|
|
440
436
|
type index_d_DocParameters<Doc extends RequiredDoc, Path extends Extract<keyof Doc['paths'], string>, Method extends keyof Doc['paths'][Path]> = DocParameters<Doc, Path, Method>;
|
|
441
|
-
type index_d_ResolveDocParameterSchema<Doc extends RequiredDoc, Schema extends ImmutableParameterObject['schema']> = ResolveDocParameterSchema<Doc, Schema>;
|
|
442
437
|
type index_d_ParameterSchema<Doc extends RequiredDoc, Schema extends ImmutableParameterObject['schema']> = ParameterSchema<Doc, Schema>;
|
|
443
438
|
type index_d_MapToSchema<Doc extends RequiredDoc, T extends Record<string, ImmutableParameterObject>> = MapToSchema<Doc, T>;
|
|
444
439
|
type index_d_ParametersSchema<Doc extends RequiredDoc, Path extends Extract<keyof Doc['paths'], string>, Method extends keyof Doc['paths'][Path], FilterType extends ImmutableParameterObject> = ParametersSchema<Doc, Path, Method, FilterType>;
|
|
@@ -504,7 +499,6 @@ declare namespace index_d {
|
|
|
504
499
|
index_d_ImmutableSchemaObject as ImmutableSchemaObject,
|
|
505
500
|
index_d_DocParameter as DocParameter,
|
|
506
501
|
index_d_DocParameters as DocParameters,
|
|
507
|
-
index_d_ResolveDocParameterSchema as ResolveDocParameterSchema,
|
|
508
502
|
index_d_ParameterSchema as ParameterSchema,
|
|
509
503
|
index_d_MapToSchema as MapToSchema,
|
|
510
504
|
index_d_ParametersSchema as ParametersSchema,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@backstage/backend-openapi-utils",
|
|
3
3
|
"description": "OpenAPI typescript support.",
|
|
4
|
-
"version": "0.0.2
|
|
4
|
+
"version": "0.0.2",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"license": "Apache-2.0",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"postpack": "backstage-cli package postpack"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@backstage/cli": "^0.22.7
|
|
27
|
+
"@backstage/cli": "^0.22.7"
|
|
28
28
|
},
|
|
29
29
|
"files": [
|
|
30
30
|
"dist"
|