1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const error_1 = require("./error");
|
4 | const serializer_1 = require("./serializer");
|
5 | const json_1 = require("./serializers/json");
|
6 | const dts_1 = require("./serializers/dts");
|
7 | class UnknownMimetype extends error_1.JsonSchemaErrorBase {
|
8 | }
|
9 | exports.UnknownMimetype = UnknownMimetype;
|
10 | function createSerializerFromMimetype(mimetype, writer, ...opts) {
|
11 | let Klass = null;
|
12 | switch (mimetype) {
|
13 | case 'application/json':
|
14 | Klass = json_1.JsonSerializer;
|
15 | break;
|
16 | case 'text/json':
|
17 | Klass = json_1.JsonSerializer;
|
18 | break;
|
19 | case 'text/x.typescript':
|
20 | Klass = dts_1.DTsSerializer;
|
21 | break;
|
22 | case 'text/x.dts':
|
23 | Klass = dts_1.DTsSerializer;
|
24 | break;
|
25 | default: throw new UnknownMimetype();
|
26 | }
|
27 | return new Klass(writer, ...opts);
|
28 | }
|
29 | exports.createSerializerFromMimetype = createSerializerFromMimetype;
|
30 | serializer_1.Serializer.fromMimetype = createSerializerFromMimetype;
|
31 |
|
\ | No newline at end of file |