@jentic/arazzo-parser 1.0.0-alpha.5 → 1.0.0-alpha.7
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 +12 -0
- package/README.md +285 -43
- package/dist/jentic-arazzo-parser.browser.js +66722 -43659
- package/dist/jentic-arazzo-parser.browser.min.js +1 -1
- package/package.json +17 -10
- package/src/index.cjs +7 -147
- package/src/index.mjs +2 -143
- package/src/parse-arazzo.cjs +204 -0
- package/src/parse-arazzo.mjs +197 -0
- package/src/parse-openapi.cjs +239 -0
- package/src/parse-openapi.mjs +232 -0
- package/src/resolve/resolvers/memory/index.cjs +29 -0
- package/src/resolve/resolvers/memory/index.mjs +25 -0
- package/types/arazzo-parser.d.ts +41 -7
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Resolver, ResolverError } from '@speclynx/apidom-reference/configuration/empty';
|
|
2
|
+
/**
|
|
3
|
+
* @public
|
|
4
|
+
*/
|
|
5
|
+
class MemoryResolver extends Resolver {
|
|
6
|
+
constructor() {
|
|
7
|
+
super({
|
|
8
|
+
name: 'memory'
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
canRead(file) {
|
|
12
|
+
return file.uri.startsWith('memory://') && this.document !== undefined;
|
|
13
|
+
}
|
|
14
|
+
async read(file) {
|
|
15
|
+
try {
|
|
16
|
+
const encoder = new TextEncoder();
|
|
17
|
+
return encoder.encode(this.document);
|
|
18
|
+
} catch (error) {
|
|
19
|
+
throw new ResolverError(`Error opening file "${file.uri}"`, {
|
|
20
|
+
cause: error
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export default MemoryResolver;
|
package/types/arazzo-parser.d.ts
CHANGED
|
@@ -1,22 +1,40 @@
|
|
|
1
1
|
import type { ApiDOMReferenceOptions } from '@speclynx/apidom-reference';
|
|
2
2
|
import { ParseResultElement } from '@speclynx/apidom-datamodel';
|
|
3
|
+
import type { PartialDeep } from 'type-fest';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Options for parsing Arazzo Documents.
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export declare type ArazzoOptions = PartialDeep<ApiDOMReferenceOptions>;
|
|
3
10
|
|
|
4
11
|
/**
|
|
5
12
|
* Default reference options for parsing Arazzo Documents.
|
|
6
13
|
* @public
|
|
7
14
|
*/
|
|
8
|
-
export declare const
|
|
15
|
+
export declare const defaultArazzoOptions: ArazzoOptions;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Default reference options for parsing OpenAPI Documents.
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
export declare const defaultOpenAPIOptions: OpenAPIOptions;
|
|
9
22
|
|
|
10
|
-
|
|
23
|
+
/**
|
|
24
|
+
* Options for parsing OpenAPI Documents.
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export declare type OpenAPIOptions = PartialDeep<ApiDOMReferenceOptions>;
|
|
11
28
|
|
|
12
29
|
/**
|
|
13
30
|
* Parses an Arazzo Document from an object.
|
|
14
31
|
* @param source - The Arazzo Document as a plain object
|
|
15
32
|
* @param options - Reference options (uses defaultOptions when not provided)
|
|
16
33
|
* @returns A promise that resolves to the parsed Arazzo Document as ApiDOM data model
|
|
34
|
+
* @throws ParseError - When parsing fails for any reason. The original error is available via the `cause` property.
|
|
17
35
|
* @public
|
|
18
36
|
*/
|
|
19
|
-
export declare function
|
|
37
|
+
export declare function parseArazzo(source: Record<string, unknown>, options?: ArazzoOptions): Promise<ParseResultElement>;
|
|
20
38
|
|
|
21
39
|
/**
|
|
22
40
|
* Parses an Arazzo Document from a string or URI.
|
|
@@ -26,10 +44,26 @@ export declare function parse(source: Record<string, unknown>, options?: Options
|
|
|
26
44
|
* @throws ParseError - When parsing fails for any reason. The original error is available via the `cause` property.
|
|
27
45
|
* @public
|
|
28
46
|
*/
|
|
29
|
-
export declare function
|
|
47
|
+
export declare function parseArazzo(source: string, options?: ArazzoOptions): Promise<ParseResultElement>;
|
|
30
48
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
49
|
+
/**
|
|
50
|
+
* Parses an OpenAPI Document from an object.
|
|
51
|
+
* @param source - The OpenAPI Document as a plain object
|
|
52
|
+
* @param options - Reference options (uses defaultOptions when not provided)
|
|
53
|
+
* @returns A promise that resolves to the parsed OpenAPI Document as ApiDOM data model
|
|
54
|
+
* @throws ParseError - When parsing fails for any reason. The original error is available via the `cause` property.
|
|
55
|
+
* @public
|
|
56
|
+
*/
|
|
57
|
+
export declare function parseOpenAPI(source: Record<string, unknown>, options?: OpenAPIOptions): Promise<ParseResultElement>;
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Parses an OpenAPI Document from a string or URI.
|
|
61
|
+
* @param source - The OpenAPI Document as string content, or a file system path / HTTP(S) URL
|
|
62
|
+
* @param options - Reference options (uses defaultOptions when not provided)
|
|
63
|
+
* @returns A promise that resolves to the parsed OpenAPI Document as ApiDOM data model
|
|
64
|
+
* @throws ParseError - When parsing fails for any reason. The original error is available via the `cause` property.
|
|
65
|
+
* @public
|
|
66
|
+
*/
|
|
67
|
+
export declare function parseOpenAPI(source: string, options?: OpenAPIOptions): Promise<ParseResultElement>;
|
|
34
68
|
|
|
35
69
|
export { }
|